Warum wird ICMP als Layer 3-Protokoll eingestuft? [geschlossen]

11

ICMP ist im OSI-Modell als Layer-3-Protokoll kategorisiert, entspricht jedoch meines Erachtens nicht der Definition eines Netzwerk-Layer-Protokolls.

Es bietet keine Adressierung oder Paketweiterleitung (es verwendet hierfür IP), daher sendet es lediglich Informationen von einem Knoten zu einem anderen Knoten, wie z. B. ein Transportprotokoll. Warum wird ICMP vor diesem Hintergrund als Layer-3-Protokoll eingestuft?

Robbie Mckennie
quelle
Es kann Ihnen auch sagen, in welche Richtung der Datenverkehr geht, die Existenz von Hosts bestätigen, den Absender über Probleme informieren und vor allem, um zu arbeiten, eine IP-Adresse
benötigen
Ich glaube, all die Dinge, die Sie erwähnt haben, sind bloße Formen bewegender Informationen. Ich bin damit einverstanden, dass es IP benötigt, aber dies ist sicherlich ein Grund dafür, dass es in einer Schicht über IP im Stapel platziert wird.
Robbie Mckennie
1
Es gibt sowieso zu viele Schichten :)
NickW
1
Ich nehme an, ich habe falsch geschrieben, als ich sagte, dass es in der Transportschicht sein sollte. Ich meinte, dass es in der Netzwerkschicht fehl am Platz zu sein scheint. Wie lautet die Erklärung dafür? Natürlich gehe ich davon aus, dass alles einen Grund hat, manchmal irre ich mich.
Robbie Mckennie
7
Es ist wichtig, dass Sie sich darüber im Klaren sind, dass das Internet nicht zur Reinigung in das OSI-Modell passt. Tatsächlich erwähnen RFCs (3439 2.4), dass sie Layering als schädlich betrachten, wenn Menschen versuchen, zu streng damit umzugehen. ICMP ist grundsätzlich für IP erforderlich, daher könnte man argumentieren, dass es Teil von IP ist. ICMP ist im Grunde die Fehlerbenachrichtigungsfunktion von IP. TCP / UDP verwendet IP für Fehlermeldungen (Port nicht erreichbar). PMTU wird von ICMP durchgeführt. ICMP senkt also sicherlich das TCP / UDP. Sie müssen einfach akzeptieren, dass es in TCP / IP keine starren Grenzen zwischen den Ebenen gibt . Es ist nur wichtig, dass etwas funktioniert.
Zoredache

Antworten:

15

ICMP befindet sich tatsächlich an der "Spitze" der Schicht 3. Es verwendet das IP-Protokoll, um Daten an einen Remote-Host zu liefern. Mit anderen Worten, ICMP-Nachrichten müssen in IP-Paketen gekapselt sein.

Betrachten Sie es als ähnlich wie ARP, das als "ganz oben" auf Schicht 2 angesehen werden kann, während das Ethernet-Protokoll zum tatsächlichen Senden von Paketen verwendet wird.

ICMP wird als Teil der IP-Schicht implementiert, sodass die ICMP-Verarbeitung als parallel oder als Teil der IP-Verarbeitung erfolgen kann. Daher wird ICMP im Thema TCP / IP-basiertes Schichtnetzwerk als Schicht-3-Protokoll angezeigt.

@Robbie Mckennie

Zu welcher Schicht ICMP gehört, ist Gegenstand heftiger Debatten. Der ICMP-Header befindet sich genau wie TCP und UDP auf Schicht 4, sodass die Leute argumentieren, dass er zu Schicht 4 gehört. Andere argumentieren jedoch, dass ICMP ein Schicht-3-Protokoll ist, da es IP unterstützt und kein Konzept für Ports hat.

Für mich hängt die Klassifizierung eines Protokolls als zu einer bestimmten Schicht im OSI-Modell gehörend davon ab, wie das Protokoll funktioniert. Ein Beispiel:

BGP wird verwendet, um auf Schicht 3 zu routen, aber BGP selbst wird von TCP (und natürlich IP) übertragen.

cuonglm
quelle
Sie sagen also, es wird aufgrund der Art und Weise, wie es im Stapel verarbeitet wird, als Layer-3-Protokoll klassifiziert, nicht aufgrund dessen, was es tut?
Robbie Mckennie
3
Nein, es funktioniert auf Schicht 3. Für alles, was es tut, ist es auf Schicht 3. Das Wichtigste, was Sie sich fragen sollten,What is the "data unit of layer 4 protocol"?
cuonglm
Ich weiß nicht einmal, was diese Frage bedeutet. Ich habe nur an die Definitionen gedacht, die ich für die verschiedenen Ebenen gelesen habe. Vielleicht ist meine Vorstellung davon, wie das Osi-Ebenenmodell funktioniert, falsch
Robbie Mckennie,
1
Ops, nur ein Hinweis. data unit of layer 1 is bits, data unit of layer 2 is frames, data unit of layer 3 is packets. Was ist mit Schicht 4?
Cuonglm
Um cuonglm zu beantworten: Die PDU von Schicht 4 ist ein "Segment"
lobi
6

ICMP (und ICMPv6, IGMP usw.) verwalten alle die Netzwerkschichtverbindungen. Sie werden (normalerweise) nicht von Endbenutzern verwendet, sondern vom Betriebssystem. Aus diesem Grund gehört es in Schicht 3 (Netzwerk), obwohl es für die Adressierung und Pfadbestimmung (Routing) auf IP angewiesen ist.

Das OSI-Modell wurde größtenteils aus der Perspektive geschrieben, Benutzer (tatsächliche Personen oder Anwendungsserver) zu verbinden. Alle Verwaltungsprotokolle und so weiter passen immer noch in das OSI-Modell, scheinen jedoch nicht ganz mit der Sprache übereinzustimmen, da sie (normalerweise) Benutzer nicht direkt bedienen.

Chris S.
quelle