2009-06-05 12 views
8

In der Praxis, was ist der am besten geeignete Begriff für die Kommunikation über ein Netzwerk in höheren Ebenen Protokolle (die über TCP/IP zum Beispiel) übertragen? Insbesondere beziehe ich mich auf kleine, binäre Dateneinheiten.Protokollterminologie: Nachricht versus Paket

Ich habe beide gesehen "Nachricht" und "Paket" in verschiedenen Client/Server-Bibliotheken, aber ich war in der Community Konsens interessiert.

+1

Ich würde einen einzigen Anruf TCP PDU ein "Segment" nicht "Nachricht" oder "Paket", da TCP verwendet MSS (Max Segment Size) um zu bestimmen, wie viel Daten es über eine IP-PDU-Nutzlast (und wiederum eine Ethernet-PDU-Nutzlast) senden kann. Ethernet-PDUs Ich rufe Datagramme auf, IP-PDUs rufe ich Pakete und TCP/UDP-PDUs rufe ich Segmente an. Ich denke, "Nachricht" wäre gut für über TCP, ich habe das mehrmals gehört. – jwbensley

Antwort

12

Dies sind definitiv Nachrichten. Ein "Paket" ist eine Schicht-3-Protokolleinheit (in ISO-Terminologie), beispielsweise ein IP-Paket; und ein "Datagramm" ist eine Schicht-1 oder Schicht-2-Einheit, wie etwa die mehreren Ethernet-Datagramme, die die Fragmente eines IP-Pakets bilden können.

So kann eine Nachricht über mehrere Pakete verteilt werden, insbesondere wenn Sie ein Streaming-Protokoll wie TCP verwenden und ein Paket möglicherweise auf mehrere Datagramme aufgeteilt ist.

2

Nur meine nehmen. Es hängt wahrscheinlich davon ab, auf welchem ​​Level du arbeitest. Wenn ich an die gesamte Übertragung denke (alle Header, Daten usw.), würde ich das eine Nachricht nennen. Ein Paket, insbesondere in TCP/IP, ist nur ein Teil einer Nachricht. Mehrere Pakete werden über das Netzwerk mit einer gesamten Nachricht übertragen.

1

Ich denke Paket bezieht sich auf die Brocken von Daten auf einer niedrigeren Ebene wie Ethernet übertragen und Nachricht wird für den Informationsaustausch auf höherer Ebene verwendet.

imo bedeuten, dass sie im Grunde das gleiche ...

edit:

Es gibt auch eine andere Terminologie genannt Rahmen, der in RFC 1122, „die Einheit der Übertragung in einem Link-Layer-Protokoll definiert ist, und besteht eines Link-Layer-Headers gefolgt von einem Paket. " [Wikipedia]

0

msgs ist Paket in Network Layer

es ist segement in TCP-Protokoll (Transmission Layer)

wird msgs in HTTP oder FTP (Application Layer)