Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Networking 协议术语:消息与数据包_Networking_Protocols_Message_Terminology_Packet - Fatal编程技术网

Networking 协议术语:消息与数据包

Networking 协议术语:消息与数据包,networking,protocols,message,terminology,packet,Networking,Protocols,Message,Terminology,Packet,实际上,在更高级别的协议(例如TCP/IP以上的协议)中,通过网络传输的通信最合适的术语是什么?具体来说,我指的是小的二进制数据单位 我在各种客户机/服务器库中都看到了“message”和“packet”,但我对社区的共识感兴趣。这些肯定是消息。“分组”是第3层(在ISO术语中)协议单元,例如IP分组;“数据报”是一个第1层或第2层单元,例如可能构成IP数据包片段的几个以太网数据报 因此,一条消息可能会被拆分为多个数据包,特别是如果您使用的是TCP之类的流协议,那么一个数据包可能会被拆分为多个数

实际上,在更高级别的协议(例如TCP/IP以上的协议)中,通过网络传输的通信最合适的术语是什么?具体来说,我指的是小的二进制数据单位


我在各种客户机/服务器库中都看到了“message”和“packet”,但我对社区的共识感兴趣。

这些肯定是消息。“分组”是第3层(在ISO术语中)协议单元,例如IP分组;“数据报”是一个第1层或第2层单元,例如可能构成IP数据包片段的几个以太网数据报


因此,一条消息可能会被拆分为多个数据包,特别是如果您使用的是TCP之类的流协议,那么一个数据包可能会被拆分为多个数据报。

仅此而已。这可能取决于你的工作水平。当我想到整个传输(所有头、数据等)时,我会称之为消息。数据包,特别是在TCP/IP中,只是消息的一部分。多个数据包被推送到网络上,包括一条完整的消息。

我认为数据包指的是在较低层(如以太网)上传输的数据块,而消息用于更高级别的信息交换

在我看来,他们的意思基本相同

编辑:


还有另一个称为帧的术语,在RFC1122中定义为“链路层协议中的传输单元,由链路层报头和数据包组成。”[wikipedia]

msgs是网络层的数据包

它是TCP协议(传输层)的一部分


它是HTTP或FTP(应用层)中的msgs

我将单个TCP PDU称为“段”,而不是“消息”或“数据包”,因为TCP使用MSS(最大段大小)来确定它可以通过一个IP PDU有效负载(以及一个以太网PDU有效负载)发送多少数据。以太网PDU I调用数据报、IP PDU I调用数据包和TCP/UDP PDU I调用段。我猜“消息”对于以上TCP来说是合适的,我已经听过好几次了。