Как рассчитать МСС

По умолчанию, когда мы говорим о MSS для TCP Ethernet-пакета 1460 и MTU 1500.

MSS = MTU - 20 (IP-заголовок) - 20 (TCP-заголовок) = 1460

из приведенного выше заголовок TCP рассчитывается без каких-либо options в заголовке TCP. В случае, если какой-либо пакет содержит значение option в заголовке TCP, это уменьшит размер MSS или нет?

Тогда каков будет размер MSS при наличии option в заголовке TCP


person velpandian    schedule 28.03.2014    source источник
comment
Вы сами ответили на свой вопрос. MSS — это MTU за вычетом заголовков IP и TCP. Если заголовок TCP увеличивается, MSS сжимается.   -  person user207421    schedule 24.07.2018


Ответы (2)


Вы правильно думаете, что MSS сжимается при добавлении опций IP/TCP.

MSS = MTU - (20(IP header) + len(IP Options)) - (20(TCP Header) + len(TCP Options))

Другая основная причина, по которой он может быть снижен, заключается в том, что пакет каким-то образом инкапсулируется (IPsec/GTP), поскольку это увеличивает нагрузку на пакет.

person AdamR    schedule 08.02.2019

MSS никак не уменьшится, однако при наличии опций IP, TCP значение MSS будет 1460 только для ethernet. Параметры будут частью части данных отправителя, поэтому отправителю необходимо уменьшить часть данных при добавлении параметров IP или TCP в заголовок. См. следующую страницу

http://tools.ietf.org/html/rfc6691
person velpandian    schedule 11.04.2014