요약
- RFC 6298은 측정된 RTT 대부분이 1초 미만이라는 당시의 관찰에 근거해, TCP 권고 초기 재전송 타임아웃을 3초에서 1초로 낮췄다.
- 3초 미만의 타이머가 SYN 응답을 기다리는 동안 만료되면, 표준은 데이터 전송이 시작되기 전에 3초로 되돌리도록 요구한다.
근거보다 앞선 타이머
TCP는 통상 관측된 왕복 지연시간(RTT)으로부터 재전송 타임아웃을 학습한다. 그러나 연결이 열리는 시점에는 그러한 관측이 존재하지 않는다. 첫 SYN이나 그 응답이 유실되면, 발신자는 경로별 추정치를 참조할 수 없고, 미리 정해진 초기값에 따라 움직여야 한다.
이 값은 실질적인 트레이드오프를 좌우한다. 타이머가 너무 길면 실제 개시 손실이 불필요하게 비싸진다. 타이머가 너무 짧으면 단지 느릴 뿐인 경로에서 재전송을 일으켜, 아무것도 측정하기 전에 중복 SYN을 주입하고 연결을 흔든다. 따라서 초기 RTO는 단순한 성능 상수가 아니라, 결여된 근거 아래에서 행동하기 위한 정책이다.
RFC 2988은 3초를 사용했다. RFC 6298은 권고 초기 설정을 1초로 바꾸면서도, 구현이 1초보다 큰 값으로 더 보수적으로 남을 수 있도록 허용했다. 이 구분이 중요하다. 1초는 무조건적인 MUST가 아니라 SHOULD였다.
측정이 뒷받침한 것
부록 A는 속도를 추상으로 두고 논하지 않았다. 당시 이용 가능한 근거를 기록했다. 대규모 분석에서 관측된 연결 RTT의 97.5% 이상이 1초 미만임이 확인되었다. 또한 핸드셰이크 재전송이 약 2% 수준으로 관측되어, 더 빠른 복구가 무시할 수 없는 연결 집단과 관련됨을 보여주었다.
같은 근거는 불리한 사례도 그대로 보존했다. 관측된 연결의 약 2.5%는 RTT가 1초를 넘었다. 이러한 긴 RTT 경로에서는 1초의 시작 타이머가 연결 수립 과정에서 불필요한 SYN 재전송을 일으킬 수 있었다. 이후의 트레이스 분석에서는 허위 재전송 비중이 대부분의 데이터셋에서 0.1% 미만으로 추정되었으나, Dartmouth 무선 트레이스에서는 약 1.1%였다.
이익 추정치 역시 해당 트레이스 범위로 한정되었다. SYN을 재전송한 연결 중 10% 이상 개선할 것으로 기대되는 비중은 43%에서 87%까지, 50% 이상 개선할 것으로 기대되는 비중은 17%에서 73%까지였다. 이는 2011년 표준 결정의 입력이었으며, 오늘날 인터넷의 측정치가 아니었다.
전진 속에 내장된 후퇴
RFC 6298은 더 짧은 시작점에 두 가지 억제 장치를 결합했다. 첫째, 타임아웃은 여전히 지수적 백오프를 유발했다. 호스트는 RTO를 두 배로 늘려야 했다. 둘째, 3초 미만의 타이머가 발신자가 SYN에 대한 확인을 기다리는 동안 만료되었다면, 핸드셰이크가 완료되고 데이터 전송이 시작될 때 RTO를 3초로 재초기화해야 했다.
이 리셋은 발신자가 허용된 추론을 제어했다. SYN 타임아웃은 손실을 의미할 수도 있지만, 이 경로에는 1초가 너무 짧다는 사실을 드러낼 수도 있다. 표준은 추가 SYN을 받아들이고, RFC 5681에 따라 하나의 세그먼트로 제한된 초기 혼잡 윈도우를 수용했다. 그리고 측정되지 않은 1초 가정이 데이터 단계를 그대로 지배하지 못하도록 막았다.
이 폴백이 모든 긴 경로를 쉽게 만들지는 않았다. RFC 6298은 RTT가 3초를 넘는 경로는 여전히 어려움에 직면할 것이라고 명시했다. 이 표준이 한 일은 기본값을 낮추면서 생긴 새로운 위험의 경계를 설정하는 것이었다.
출처
회원 브리핑
프로필 심층 컨텍스트
올바른 멤버십 등급으로 로그인하면 전체 브리핑과 출처 노트를 볼 수 있습니다.
Strategic Circle 전용
Strategic Circle
모든 독자에게 공개됩니다. 가입 후 로그인하면 프로필 브리핑를 열람할 수 있습니다.
Strategic Circle 가입하기Leadership Alliance 전용
Leadership Alliance
자격을 갖춘 IP 자산 소유자 및 운영진을 위한 콘텐츠입니다. 로그인하면 Leadership Alliance 브리핑을 열람할 수 있습니다.
Leadership Alliance 가입하기





