У меня проблема с MSS и размером окна [дубликат]

Jan 21 2021

Я привел небольшой пример, потому что попытался понять разницу между MSS и размером окна в заголовке TCP, когда мы рассматриваем отправителя и получателя.

Итак, скажем, отправитель и получатель используют один и тот же MSS, который составляет 700 байт, и допустим, что размер окна (в заголовке tcp) составляет 28000 байт как для отправителя, так и для получателя.

Теперь мой вопрос, может ли получатель отправить отправителю полные 28000 байт? Или это будет как-то ограничено / под влиянием MSS с 700 байтами?

Может быть, вы можете дать мне такой простой пример, если бы мой был слишком плох?

Ответы

3 RonMaupin Jan 21 2021 at 04:01

MSS отправляется в квитировании, и это максимальный размер сегмента, который отправляющая сторона получит.

Окно отправляется во всех сегментах, и его отправитель сообщает другой стороне, сколько данных оно примет с другой стороны, даже в нескольких сегментах. Размер окна постоянно регулируется в зависимости от того, что может обработать получатель данных.

Если MSS равен 700, то каждый сегмент может содержать до 680 байтов данных (при условии, что в заголовке нет параметров TCP). с окном 28000 отправитель данных может отправить 41 сегмент из 680 байтов данных (или больше сегментов, если у некоторых или всех сегментов их меньше).