네트워크 기초

TCP 혼잡 제어의 기본적인 개념으로 올바른 것은?

  1. A수신 측 버퍼의 빈 공간을 송신 측에 알려 버퍼가 넘치지 않게 한다
  2. B패킷 손실 등을 혼잡의 신호로 보고 송신 측이 혼잡 윈도를 줄여 보내는 양을 줄이며, 혼잡이 없으면 조금씩 늘린다
  3. C혼잡한 라우터가 각 송신자에게 보내도 되는 속도를 수치로 지시하고, 송신 측은 그에 따른다
정답과 해설 보기

정답: B. 패킷 손실 등을 혼잡의 신호로 보고 송신 측이 혼잡 윈도를 줄여 보내는 양을 줄이며, 혼잡이 없으면 조금씩 늘린다

네트워크 도중의 라우터가 혼잡해지면 대기열이 길어져 지연이 늘고, 넘친 패킷은 버려집니다. TCP의 송신 측은 ACK가 돌아오지 않는 것이나 중복된 ACK로부터 손실을 추정하여, 스스로 보내는 양(혼잡 윈도)을 줄입니다. 연결을 시작할 때는 슬로 스타트로 1왕복마다 거의 2배로 늘려 비어 있는 대역폭을 재빨리 탐색하고, 그 후에는 조금씩 늘리다가 손실이 생기면 크게 줄입니다(가산적 증가·승산적 감소). 실제로 보낼 수 있는 양은 혼잡 윈도와 수신 윈도 중 작은 쪽으로 정해집니다. 늘리는 방식이나 혼잡을 판단하는 방식이 다른 CUBIC, BBR 등의 방식이 사용되고 있습니다.

이 분야 연습하기 분야로 돌아가기

네트워크 기초의 다른 문제

  1. TCP의 송신 측이 세그먼트가 손실되었다고 판단하여 재전송하는 계기로 올바른 것은?
  2. DNS의 주된 역할로 올바른 것은?
  3. 캐시에 아무것도 들어 있지 않은 풀 서비스 리졸버(캐시 DNS 서버)가 www.example.com의 IP 주소를 알아낼 때 질의하는 순서로 올바른 것은?
  4. DHCP로 단말이 IP 주소를 얻을 때의 메시지 순서로 올바른 것은?
  5. HTTPS(HTTP를 TLS로 보호한 통신)로 보호되는 것으로 올바른 것은?