web-dev-qa-db-de.com

Wie reist ein Paket von einem Computer zum anderen über das Internet, basierend auf dem OSI-Modell

Ich bin mit dem grundlegenden OSI-Modell vertraut, aber ich bin immer wieder verwirrt, wie ein Paket über das Internet von einem Computer zum anderen übertragen wird und welche OSI-Schichten dazu in Frage kommen. Zum Beispiel für die folgende Topologie:

Maschine A <-----> Switch <----> Router <----> Router <----> Router <----> Switch <----> Maschine B

dort, wo die mehreren Router dargestellt werden, um das Internet darzustellen, was auf der Ebene der OSI-Ebene geschieht, wenn Maschine A ein Paket (etwa einen einfachen "ls" -Befehl über FTP) an Maschine B sendet.

Das obige ist nur ein empfohlenes Beispiel, aber wenn irgendjemand dies mit einer anderen Netzwerktopologie erklären kann, ist dies auch in Ordnung. Alles in allem schaue ich mir eine sehr grundlegende Erklärung an, wie das Paket an jedem Knoten (Maschine, Switch, Router usw.) in unterschiedliche OSI-Schichten umgewandelt wird.

23
modest

Router verwenden die IP-Schicht (Schicht 3) und Switches die Datenverbindungsschicht (Schicht 2). Schicht 1 ist die physische 1 und 0, die über ein Kabel geführt wird, Schicht 2 ist die Datenverbindungsschicht, also Protokolle wie Ethernet und Point-To-Point-Protokoll (PPP), die Informationen zwischen MAC-Adressen von und zwischen benachbarten Knoten überträgt und ermöglicht Fehlererkennung und erneute Übertragung. Schicht 3 ist die IP-Schicht, die Informationen darüber enthält, wo sich das Paket im gesamten Netzwerk befindet und nicht nur vom aktuellen Hop.

Die Übertragung würde so gehen: 

Maschine A möchte ein Paket an Maschine B senden. Maschine A kennt die IP-Adresse von Maschine B und legt sie in das Paket der Schicht 3 ab. Maschine A muss jedoch die MAC-Adresse des nächsten Hops im Paket der Schicht 2 platzieren. Wenn dies nicht bekannt ist, sendet es eine so genannte ARP-Anforderung (Address Resolution Protocol, siehe hier: http://www.tildefrugal.net/tech/arp.php ) mit dem Ziel an das Netzwerk IP. Eines davon wird hier passieren:

  1. Die IP ist lokal. Das Gerät mit dieser IP-Adresse antwortet mit seiner MAC-Adresse an den Absender.
  2. Die IP ist nicht lokal. Der Gateway-Router erkennt dies und sendet seine MAC-Adresse.
  3. Die IP ist nicht lokal und das Standard-Gateway und die Subnetzmaske von Machine A sind festgelegt. Verwenden dieser Informationen Maschine A kann die Nichtlokalität der IP-Adresse ermitteln und an die MAC-Adresse des Routers senden (ARPing, falls noch nicht bekannt).

(Wenn Maschine A dies früher herausgefunden hat, befindet sie sich im ARP-Cache, und Maschine A wird dies nur verwenden.) Nun, da die MAC-Adresse gesendet wird, kann das Paket übertragen werden (die physikalische Schicht 1, auf der die eigentliche Datenübertragung stattfindet das Kabel). Die nächste Haltestelle ist der Schalter. Der Switch weiß, an welchem ​​ausgehenden Port die MAC-Adresse, die als Layer-2-Ziel angegeben ist, aktiv ist, da er jede MAC-Adresse aufzeichnet, von der er gesehen wurde, aus der ein Paket stammt, und an welchem ​​Port er sich befand Single Port, garantiert, dass es ankommt.

Somit kommt das Paket am Router an. Das Coole am IP-Modell ist, dass es jede einzelne IP-Adresse im Netzwerk/in die Welt in eine Hierarchie unterteilt. Subnetze können Subnetze per Definition nicht teilweise überlappen, sie enthalten sie entweder vollständig oder sind in ihnen vollständig enthalten. Solange Subnetze dieser Hierarchie folgen, kann der Router eindeutig ermitteln, wo sich jede der 4 Milliarden möglichen IP-Adressen im Netzwerk befindet. Dazu muss er nur prüfen, unter welchem ​​Subnetz die IP in ihrer Tabelle liegt. Das Paket wird dann über diesen Port gesendet.

Wenn das Paket durch die Router des ISPs, die Backbone-Infrastruktur usw. geleitet wird, kommt es beim Router von Machine B an, wo der umgekehrte Vorgang stattfindet. Router B erkennt, dass er für Machine B bestimmt ist, und sendet ihn an. (In ähnlicher Weise muss Router B einen Prozess wie ARP verwenden, um die MAC-Adresse von Maschine B zu finden, falls er nicht bekannt ist.) Der Rest sollte von hier aus trivial sein.

gute referenzen:

https://web.archive.org/web/20120129120350/http://www.tildefrugal.net/tech/arp.php

http://en.wikipedia.org/wiki/Data_link_layer

http://en.wikipedia.org/wiki/Network_switch

http://en.wikipedia.org/wiki/Network_layer

http://en.wikipedia.org/wiki/Routing

http://en.wikipedia.org/wiki/Router_(computing)

http://en.wikipedia.org/wiki/Address_Resolution_Protocol

37
Patashu

Das einzige, was sich über einen Kupferdraht bewegen kann, sind elektrische Impulse ... Die Binärzahl 1 wird durch einen Elektrizitätsimpuls oder keinen Elektrizitätsimpuls für 0 ... dargestellt. Denken Sie daran, dass echte Daten jeglicher Art in Betracht kommen kann nicht über Kupferdraht, Glasfaser oder durch die Luft gesendet werden ... nur eine Darstellung der Daten, die zuvor in eine 1 oder eine 0 umgewandelt wurden, und wird dann auf der empfangenden Seite zurückkonvertiert.

0
Joan Seiler

Das Netzwerkschichtprotokoll überwacht die Übertragung von Paketen von einer Quellmaschine zu einem Ziel. Daten werden in Pakete oder Datagramme bis zu 64 KByte lange vor ihrer Übertragung mit einem Stempel der Ziel-IP-Adresse zerlegt und an das Netzwerk-Gateway weitergeleitet. Ein Gateway kann ein Router sein, um Netzwerke zu verbinden.

0
Phuti Morulane