SYSTEM PROGRAMMING
TCP 를 구성하는 주요 알고리즘
뉴암스테르담
2015. 8. 5. 21:11
TCP 전송 알고리즘 : 전송측은 수신측이 데이터가 수신되었음을 알려오면 (ACK 패킷) 다음 패킷을 전송한다.
슬라이딩 윈도우 ( sliding window ) : 하나의 패킷마다 수신을 체크하는 방법의 비효율을 개선하기 위하여 만들어진 알고리즘으로. 송신측의 윈도우 크기로 정의되는 가변적인 구간 단위로 검사를 수행한다.
일 수신측이 데이터를 일정 크기 이상 받게 되면 검사하는 윈도우의 크기를 늘린다. 반대의 경우는 윈도우의 크기를 줄인다.
윈도우의 크기가 0이 되면 상대방이 데이터 수신 확인 메지시를 보낼 때까지 데이터를 전송하지 않는다.
실리 윈도우 증후군 : 슬라이딩 윈도우 알고리즘에 의하여 수신측에 데이터를 작은 크기로 받게 되면 윈도우의 크기가 작아지는 경우가 자주 발새앟여 데이터 송신의 효율이 떨어지는 현상
Nagle Algorithm : 실리 윈도우 증후군을 회피하기 위하여 수신측의 작은 데이터 수신 확인 메시지 전송을 줄이고 송신측은
전송을 지연시킨다. 따라서, 지연된 전송에 의하여 몇 개의 데이터 블록에 병합되어 전송될 수 있다.