비동기 통신 및 동기 통신
네트워크 통신 과정에서 통신 쌍방은 고도의 협력이 있어야만 데이터를 교환할 수 있다. 신호를 정확하게 해석하기 위해서는 수신기가 언제 신호를 받고 처리해야 하는지 정확히 알아야 하므로 타이밍이 중요하다. 컴퓨터 네트워크에서 타이밍 요소를 비트 동기화라고 합니다. 동기화는 수신자가 발신자가 보낸 각 비트의 시작 및 종료 시간과 속도에 따라 데이터를 수신해야 합니다. 그렇지 않으면 오류가 발생합니다. 일반적으로 동기식 또는 비동기식 전송은 동기식 비트에 사용할 수 있습니다.
1. 비동기 전송: 비동기 전송은 비트를 1 자, 8 비트 이상으로 그룹화합니다. 발신자는 언제든지 이러한 비트 그룹을 보낼 수 있으며 수신자는 언제 도착하는지 결코 알 수 없습니다. 일반적인 예는 컴퓨터 키보드와 호스트 간의 통신입니다. 문자 키, 숫자 키 또는 특수 문자 키를 눌러 8 비트 ASCII 코드를 보냅니다. 키보드는 사용자의 입력 속도에 따라 언제든지 코드를 보낼 수 있습니다. 내부 하드웨어는 언제든지 입력한 문자를 받을 수 있어야 합니다.
비동기 전송에는 수신인이 데이터가 언제 도착하는지 모른다는 잠재적인 문제가 있습니다. 데이터를 감지하고 대응하기 전에 1 위가 통과되었습니다. 마치 누군가가 뜻밖에 뒤에서 다가와 너와 이야기하는 것처럼, 너는 미처 반응하지 못하고 처음 몇 마디를 놓쳤다. 따라서 각 비동기 전송은 시작 비트로 시작되며, 수신자 데이터가 도착했음을 알려 수신인에게 응답, 수신 및 버퍼링 데이터 비트를 제공합니다. 전송이 끝나면 중지 비트는 전송 정보의 종료를 나타냅니다. 전통적으로 유휴 (데이터 전송 없음) 회선은 실제로 바이너리 1 을 나타내는 신호를 전송했습니다. 비동기 전송의 시작 비트는 신호를 0 으로 만들고 다른 비트는 전송된 데이터 정보에 따라 신호를 변경합니다. 마지막으로 정지 비트는 신호를 1 으로 다시 변경하고 다음 시작 비트가 도착할 때까지 신호를 그대로 유지합니다. 예를 들어 키보드의 숫자' 1' 은 8 비트 확장 ASCII 인코딩에 따라' 00 1 1000 1' 을 보내며 8 비트 앞에 1 을 추가해야 합니다
비동기 전송은 상대적으로 쉽습니다. 각 정보에는 "동기화" 정보가 추가되기 때문에 예정된 이동은 큰 축적을 발생시키지 않지만 더 많은 오버헤드가 발생합니다. 위의 예에서 8 비트마다 2 비트를 더 전송하면 총 전송 부하가 25% 증가합니다. 데이터 처리량이 적은 저속 장치에서는 문제가 크지 않지만 데이터 처리량이 많은 고속 장치에서는 25% 의 로드 증가가 상당히 심각합니다. 따라서 비동기식 전송은 저속 장치에 자주 사용됩니다.
동기 전송: 동기 전송은 비트 패킷이 훨씬 큽니다. 각 문자에는 개별적으로 보내는 대신 함께 보내는 자체 시작 비트와 종료 비트가 있습니다. 이러한 조합을 데이터 프레임 또는 간단히 프레임이라고 합니다.
데이터 프레임의 첫 번째 부분에는 위에서 언급한 시작 비트와 유사한 고유한 비트 조합인 동기화 문자 세트가 포함되어 있습니다. 이 조합은 한 프레임이 도착했음을 수신자에게 알리는 데 사용되지만 수신자의 샘플링 속도가 비트의 도착 속도와 일치하도록 보장할 수도 있습니다. 이렇게 하면 발신자와 수신자가 동기화에 들어갈 수 있습니다.
프레임의 마지막 부분은 프레임 끝 태그입니다. 동기화 문자와 마찬가지로 이 문자열은 위에서 언급한 정지 비트와 유사한 유일한 비트 문자열이며 다음 프레임이 시작되기 전에 다가오는 다른 데이터가 없음을 나타냅니다.
동기식 전송은 일반적으로 비동기식 전송보다 훨씬 빠릅니다. 수신자는 각 문자를 시작하고 중지할 필요가 없습니다. 프레임 동기화 문자가 감지되면 다음 데이터가 도착하면 이를 수신합니다. 또한 동기식 전송 오버헤드도 적습니다. 예를 들어 일반적인 프레임에는 500 바이트 (4000 비트) 의 데이터가 있을 수 있으며 100 비트의 오버헤드만 포함될 수 있습니다. 이때 추가된 비트는 전송되는 총 비트 수를 2.5% 증가시켜 비동기 전송 중 25% 의 증가보다 훨씬 작습니다. 데이터 프레임에서 실제 데이터 비트가 증가함에 따라 오버헤드 비트의 비율이 그에 따라 감소합니다. 그러나 데이터 비트가 길수록 데이터를 캐시하는 데 필요한 버퍼가 커져 프레임 크기가 제한됩니다. 또한 프레임이 클수록 전송 미디어를 사용하는 기간이 길어집니다. 극단적인 경우, 이로 인해 다른 사용자가 너무 오래 기다리게 됩니다.
동기화 전송 모드에서 발신자와 수신자의 시계는 균일하고 문자 간 전송은 동기화되며 간격이 없습니다.
비동기 전송 모드에서는 발신자와 수신자의 시계가 정확히 같을 필요는 없으며 문자 간 전송은 비동기적입니다.
동기식 전송과 비동기식 전송의 차이점
1, 비동기 전송은 문자 지향 전송이고, 동기 전송은 비트 지향 전송입니다.
2. 비동기 전송 단위는 문자이고 동기 전송 단위는 프레임입니다.
3. 비동기 전송은 문자 시작 및 종료 코드를 통해 재동기화 기회를 포착하고, 동기 전송은 데이터에서 동기화 정보를 추출하는 것입니다.
4. 비동기 전송은 타이밍 요구 사항이 높지 않으며, 동기 전송은 종종 특정 클럭 라인을 통해 타이밍을 조정합니다.
비동기 전송은 동기 전송보다 비효율적입니다.