19. TCP 혼잡 제어: Reno·CUBIC·BBR과 실시간 게임 트래픽
난이도 중 해설 보기 →
문제
문제 19 — TCP 혼잡 제어: Reno·CUBIC·BBR과 실시간 게임 트래픽
TCP는 네트워크 혼잡을 스스로 감지하고 전송 속도를 조절한다. 대표적인 혼잡 제어 알고리즘인 Reno(계열), CUBIC, BBR의 원리와 차이를 설명하고, 실시간 게임 서버 관점에서 이들이 지연(latency)과 처리량(throughput)에 어떤 영향을 주는지 답하라.
다음을 포함해 설명하라.
-
혼잡 제어의 기본 골격: 슬로우 스타트(slow start), 혼잡 회피(congestion avoidance), 혼잡 윈도우(cwnd), ssthresh의 역할. 흐름 제어(flow control, 수신 윈도우)와 혼잡 제어의 차이.
-
손실 기반(loss-based) vs 지연/대역폭 기반(model-based):
- Reno/NewReno의 AIMD(가법 증가·승법 감소)와 빠른 재전송·빠른 회복.
- CUBIC이 왜 고대역폭·고지연(BDP가 큰) 환경에서 Reno보다 나은지(3차 함수 기반 윈도우 성장, RTT 비의존성).
- BBR이 패킷 손실이 아니라 병목 대역폭·왕복 전파 지연(BtlBw, RTprop)을 추정해 동작하는 방식과, 이것이 버퍼블로트(bufferbloat)에 강한 이유.
-
버퍼블로트와 지연: 손실 기반 알고리즘이 큰 라우터 버퍼를 채워 큐잉 지연을 키우는 문제. 이것이 실시간 게임 입력 지연에 왜 치명적인가.
-
게임 서버에서의 함의: 실시간 게임이 대개 UDP를 쓰는 이유와, 그럼에도 TCP를 쓰는 경로(로그인·상점·다운로드·매치 결과)에서 혼잡 제어 선택이 중요한 이유. 같은 서버에서 대용량 TCP 전송(패치 다운로드)이 실시간 트래픽의 지연에 주는 영향과 완화책(트래픽 분리, ECN, AQM/fq_codel, 별도 연결·QoS).
답안 작성
내 답안 · 자동 저장
직접 답을 작성한 뒤, 위 해설 보기에서 모범답안과 대조하세요.