TCP 시퀀스 카운터 오버플로

TCP 시퀀스 카운터 오버플로

강좌에서 다음과 같은 질문을 받았습니다.

"300Mbps의 사용 가능한 대역폭으로 인터넷을 통해 TCP 연결을 가정합니다. 일부 패킷이 매우 높은 지연으로 전송된다고 가정합니다. 어느 지연 시간에 심각한 문제가 발생할 수 있습니까? 이것이 현실적인 문제입니까?"

나는 ~2분의 지연 시간에 시퀀스 카운터 내에 오버플로가 있을 것이라고 계산했습니다(0으로 시작한다고 가정한 경우). RFC에 따르면 시퀀스 카운터는 0으로 오버플로됩니다. RFC 내에서 "이런 일이 발생하면 어떻게 해야 하는지"를 찾지 못했지만 간과했을 수도 있습니다.

내 질문은: 무슨 일이 일어날까요? 이것은 단순히 TCP의 한계입니까? 해결 방법이 있습니까(더 큰 시퀀스 카운터를 사용하는 것 제외)?

답변1

관련 RFC에서는 이 작업을 올바르게 수행하는 방법(그리고 실제로 문제를 해결하는 방법)을 알려줍니다. 보다http://www.apps.ietf.org/rfc/rfc1323.html섹션 4.

답변2

오버플로 자체는 문제가 되지 않는다고 생각합니다. 현재 수신 창 내부에 있지만 실제로는 4GiB 이전의 시퀀스 번호가 포함된 패킷을 수신할 때만 문제가 발생합니다. 데이터 스트림. 이러한 일이 발생하려면 계산에 따라 패킷이 2분 동안 지연되어야 합니다(그럴듯하게 들림). 실제로는 일반적으로 발생하지 않기 때문에 이런 일이 너무 자주 발생하지 않을 것이라고 생각합니다.저것모든 중간 시스템에 많은 버퍼 공간이 있습니다(4GiB 정도여야 함).

관련 정보