대학교 수업/데이터 통신 네트워크

[데이터 통신 네트워크] TCP/IP의 Congestion Control

Jongung 2022. 6. 23. 13:04

TCP는 체증제어(Congestion Control)을 하는데 다음과 같은 상황에서 발생한다.

  1. 데이터가 많이 몰려 막혔을 때
  2. 어떠한 패킷에 Time out 발생 시
  3. Duplicated ACK가 3개 이상 왔을 때

처리 방법은 대표적으로 3가지가 있다.

첫째, AIMD

AIMD

  • AIMD(Additive Increase / Multicaticve Decrease) 방식은 네트워크에 별 문제가 없을 때 전송속도를 더 빠르게 하려고 한다면 혼잡 윈도우의 크기를 1씩 증가 시키지만 이때 데이터가 유실되거나 응답이 오지 않는 등 혼잡 상태가 발생하면 혼잡 윈도우 크기를 반으로 줄인다.

둘째, Slow Start(SS)

Slow Start

  • AIMD와 비슷한 방식으로 윈도우 크기를 지수함수꼴로 증가 시키다가 혼잡이 감지되면 윈도우 크기를 1로 줄여버리는 방식이다. 윈도우 크기가 시간이 지날 수록 빠르게 증가한다는 장점이 있다.

셋째, Fast Retransmit

  • 여러 데이터를 보냈을 떄 몇개의 ACK만 왓을 경우 time out전에 ACK가 오지 않은 데이터를 재전송 하는 방식이다.