Protocol Terminology: Message versus Packet

◇◆丶佛笑我妖孽 提交于 2019-12-06 23:23:56

问题


In practice, what is the most appropriate term for the communications transmitted over a network in higher level protocols (those above TCP/IP, for example)? Specifically, I am referring to small, binary units of data.

I have seen both "message" and "packet" referred to in various client/server libraries, but I was interested in the community's consensus.


回答1:


These are definitely messages. A "packet" is a layer-3 (in ISO terminology) protocol unit, such as an IP packet; and a "datagram" is a layer-1 or layer-2 unit, such as the several Ethernet datagrams that might make up the fragments of an IP packet.

So a message might be split across several packets, particularly if you're using a streaming protocol such as TCP, and a packet might be split across several datagrams.




回答2:


Just my take. It probably depends on what level you are working at. When I think of the entire transmission (all headers, data, etc) I would call that a Message. A packet, especially in TCP/IP, is just a part of a message. Multiple packets are pushed across the network comprising an entire message.




回答3:


I think packet refers to the chunks of data transferred on a lower layer like Ethernet and message is used for higher level information exchange.

imo they basically mean the same...

edit:

There's also another terminology called frame, which is defined in RFC 1122 as "the unit of transmission in a link layer protocol, and consists of a link-layer header followed by a packet." [wikipedia]




回答4:


msgs is packet in Network Layer

it is segement in TCP protocol(Transmission Layer)

it is msgs in HTTP or FTP(Application Layer)



来源:https://stackoverflow.com/questions/955369/protocol-terminology-message-versus-packet

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!