Заголовок TCP совпадает с заголовком TCP?

Итак, действительно ли заголовок TCP - это то же самое, что и сегмент TCP? Я читал эту страницу, где в конце написано:

Хотя может показаться, что в большинстве случаев речь идет о заголовке TCP, мы говорим о заголовке без данных, тогда как сегмент TCP включает в себя данные.

А потом чуть ниже это гласит:

Не забывайте, что "заголовок TCP" - это то же самое, что "сегмент TCP", то есть это информация заголовка TCP плюс данные.

Эти утверждения противоречивы. Что правда?

3 ответа

Решение

Второй абзац неверен. Возможно, целью было сказать пакет, а не заголовок. Эта формулировка будет иметь больше смысла:

помните, что "пакет TCP" - это то же самое, что "сегмент TCP", то есть это информация заголовка TCP плюс данные

Хотя я согласен с ответами, предоставленными kce и kasperd относительно значения и различия между заголовком TCP и сегментом TCP, я добавлю, что AFAIK правильный термин для "пакета" на уровне TCP: TCP Segment, Вот то, что я считаю правильными терминами для данных package на каждом уровне модели OSI:

Уровни с 7 по 5 (приложение, презентация, сессия) = PDU (блок данных протокола)

Уровень 4 (TCP, UDP) = сегмент TCP или датаграмма UDP

Уровень 3 (IP) = Пакет

Уровень 2 (канальный уровень) = кадр (кадр Ethernet)

На уровне 1 данные помещаются on the wire как биты / электронные сигналы

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

Возможно, самая близкая вещь к стандарту - это RFC. В этом случае RFC793, где сегмент и заголовок определены следующим образом:

дейтаграмма

      A message sent in a packet switched computer communications
      network.

заголовок

      Control information at the beginning of a message, segment,
      fragment, packet or block of data.

модуль

      An implementation, usually in software, of a protocol or other
      procedure.

сегмент

      A logical unit of data, in particular a TCP segment is the
      unit of data transferred between a pair of TCP modules.


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

Другие вопросы по тегам