Терминология протокола: сообщение против пакета

На практике, какой термин наиболее подходит для обмена данными, передаваемыми по сети в протоколах более высокого уровня (например, выше TCP / IP)? В частности, я имею в виду небольшие двоичные единицы данных.

Я видел как «сообщение», так и «пакет», упоминаемые в различных клиент-серверных библиотеках, но меня интересовал консенсус сообщества.


person Adam Paynter    schedule 05.06.2009    source источник
comment
Я бы назвал отдельный TCP PDU сегментом, а не сообщением или пакетом, поскольку TCP использует MSS (максимальный размер сегмента), чтобы определить, сколько данных он может отправить через одну полезную нагрузку IP PDU (и, в свою очередь, одну полезную нагрузку Ethernet PDU). PDU Ethernet я называю дейтаграммами, IP PDU я вызываю пакетами и TCP / UDP PDU я называю сегментами. Думаю, сообщение будет нормально для TCP выше, я слышал это несколько раз.   -  person jwbensley    schedule 23.06.2015


Ответы (4)


Это определенно сообщения. «Пакет» - это блок протокола уровня 3 (в терминологии ISO), такой как IP-пакет; а «дейтаграмма» - это блок уровня 1 или уровня 2, например несколько дейтаграмм Ethernet, которые могут составлять фрагменты IP-пакета.

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

person cjs    schedule 05.06.2009

Просто мое мнение. Вероятно, это зависит от того, на каком уровне вы работаете. Когда я думаю обо всей передаче (всех заголовках, данных и т. Д.), Я бы назвал это сообщением. Пакет, особенно в TCP / IP, - это просто часть сообщения. По сети передаются несколько пакетов, составляющих все сообщение.

person AgileJon    schedule 05.06.2009

Я думаю, что пакет относится к фрагментам данных, передаваемых на более низком уровне, таком как Ethernet, а сообщение используется для обмена информацией более высокого уровня.

имо они в основном означают то же самое ...

редактировать:

Существует также другая терминология, называемая кадром, которая определяется в RFC 1122 как «единица передачи в протоколе канального уровня и состоит из заголовка канального уровня, за которым следует пакет». [википедия]

person Flo    schedule 05.06.2009

msgs - это пакет на сетевом уровне

это сегмент в протоколе TCP (уровень передачи)

это сообщения в HTTP или FTP (уровень приложения)

person Hong Cheng    schedule 11.03.2017