Post

신뢰적 데이터 전송의 원리

신뢰적 데이터 전송의 원리

슬라이딩 윈도우

슬라이딩 윈도우는 두개의 네트워크 호스트간의 패킷의 흐름을 제어하기 위한 방법이다.

TCP와 같이 데이터의 전달을 보증하는 프로토콜에서는 패킷 하나하나를 정상적으로 전달되었음을 알리는 확인 신호(ACK)를 받아야하며, 만약 패킷이 중도에 잘못되었거나 분실되어 확인받지 못하는 경우, 해당 패킷을 재전송해야하는 필요가 있다. 슬라이딩 윈도는 일단 ‘윈도(메모리 버퍼의 일정 영역)’에 포함되는 모든 패킷을 전송하고, 그 패킷들의 전달이 확인되는대로 이 윈도를 옆으로 옮김으로서 그 다음 패킷들을 전송하는 방식이다.

슬라이딩 윈도는 아직 확인을 받지 않고도 여러 패킷을 보내는 것을 가능케 하기 때문에, 매번 전송한 패킷에 대한 확인을 받아야만 그 다음 패킷을 전송하는 방법(stop-and-wait)을 사용하는 것보다 훨씬 네트워크를 효율적으로 사용할 수 있다.

출처 : https://ko.wikipedia.org/wiki/슬라이딩_윈도우

Go Back N

absolute

슬라이딩 윈도우 기반의 에러 제어 방식이다. 전송 측에서는 N갱의 프레임을 연속적으로 보낼 수 있지만, 수신 측에서는 오직 순서대로 만 프레임을 수신받을 수 있다. 만약 준간에 하나라도 프레임이 손실되면, 그 이후의 프레임들을 모두 무시되고, 전송 측에서는 손실된 프레임부터 다시 전송하게 된다.

출처 : https://gsbang.tistory.com/entry/Network-Go-Back-N-Automatic-Repeat-reQuest-ARQ

Selective Repeat

Selective Repeat (SR)는 ARQ (Automatic Repeat reQuest) 프로토콜의 한 종류로, 전송 중인 데이터 패킷 중 에러가 발생한 패킷만 재전송하는 방식을 채택하였습니다. 이는 Go-Back-N 방식과는 다르게, 잘못된 패킷만 선택적으로 다시 보내는 방법입니다. 그래서 SR ARQ 방식은 별도의 데이터 재정렬을 수행해야 하며, 이러한 이유로 별도의 버퍼를 필요로 한다.

This post is licensed under CC BY 4.0 by the author.