Заголовок 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", как включить всю дейтаграмму.