Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

Nagle

네트워크 자원은 한정된 자원이다. 한번의 세그먼트로 보낼 수 있는 패킷이 있는데, 이것을 여러개의 세그먼트로 보낸다면 전송효율이 떨어질 것이다. 그렇다면 필요이상의 작은 세그먼트들은 병합해서 보낼 수 있어야 할 것이다.

Nagle 알고리즘은 세그먼트 크기를 구하는 공식에 의해 결정된 크기보다 작은 세그먼트들은 전송된 세그먼트의 수신이 확인되거나 완전한 크기의 세그먼트가 전송될 수 있을 때까지 지연시키는 방법으로 전송효율을 높인다.

전체적으로 전송효율을 높일 수 있지만 완전한 세그먼트가 모일 때까지 지연될 수 있는 점이 단점이 될 수 있다. 예를 들어 반응속도가 중요시한 온라인 게임등에 Nagle알고리즘을 적용시킬 경우 반응속도가 떨어질 수 있다. 이런이유로 서버쪽은 Nagle 알고리즘을 활성화 하고 클라이언트측은 Nagle 알고리즘을 비활성 하는 등의 방법을 사용한다.