ZeroBase/CS

네이글 알고리즘

Red_Horse 2025. 8. 5. 23:18

네이글 알고리즘은 TCP에서 작은 데이터 패킷을 자주 전송할 때 발생하는 네트워크 낭비를 줄이기 위해 고안된 알고리즘입니다.
작은 데이터를 모아 한번에 전송하여 패킷 수 감소네트워크 효율성 향상을 목표로 합니다.

 

작동 방식

  1. 소량의 데이터가 전송 요청되면 즉시 전송하지 않고 버퍼에 저장
  2. 이전 패킷에 대한 ACK 응답이 도착하거나, 버퍼가 가득 찼을 경우패킷 전송

즉, ACK 수신 전에는 새로운 패킷 전송을 지연하여
자잘한 패킷 전송을 방지합니다.

 

장점

항목 설명
네트워크 혼잡 감소 작은 패킷들이 지나치게 많으면 네트워크 장비(라우터 등)의 부담 증가 → 이를 방지
오버헤드 감소 패킷마다 붙는 헤더가 줄어들어 대역폭 효율 상승
전송 효율 향상 같은 대역폭으로 더 많은 유용한 데이터 전송 가능
 

단점

항목 설명
전송 지연 실시간 데이터를 바로 보내지 않고 버퍼에 모아두므로 지연 발생 가능
ACK 의존성 이전 패킷의 ACK가 도착해야 다음 데이터 전송, 결과적으로 지연 심화 가능
 

비적합한 경우 (사용 비권장)

  • 실시간성이 중요한 애플리케이션
    • 온라인 게임
    • VoIP 통화 (음성 채팅)
    • 실시간 채팅 시스템

'ZeroBase > CS' 카테고리의 다른 글

XXS(Cross-Site Scripting)  (0) 2025.08.07
HTTP 멱등성  (1) 2025.08.06
CORS  (1) 2025.08.04
이더넷 프레임  (2) 2025.08.04
웹페이지 응답 및 렌더링 과정  (1) 2025.08.03