Maximum segment size

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

MSS (Maximum segment size) является параметром протокола TCP и определяет максимальный размер полезного блока данных в байтах для TCP пакета (сегмента). Таким образом этот параметр не учитывает длину заголовков TCP и IP.[1] Для установления корректной TCP сессии с удалённым хостом должно соблюдаться следующее условие:

MSS + заголовок TCP + заголовок IP ≤ MTU

Таким образом, максимальный размер MSS = MTU — размер заголовка IPv4 — размер заголовка TCP

Так каждый хост на IPv4 требует доступности для MSS последних 536 октетов (= 576 — 20 — 20) а на IPv6 — 1220 октетов (= 1280 — 40 — 20).

Обычно конкретное значение MSS определяется операционной системой во время TCP рукопожатия с целевым хостом исходя из значений MTU или PMTUD (Path MTU Discovery).[2]

Примечания[править | править вики-текст]

  1. RFC 879, page 2, Section 3, «The MSS counts only data octets in the segment, it does not count the TCP header or the IP header.»
  2. PMTUD, «О PPPoE, MTU и проблеме Path MTU Discovery Black Hole.»