Heim  >  Artikel  >  Zu welchem ​​Protokoll gehört IP in der Computernetzwerkarchitektur?

Zu welchem ​​Protokoll gehört IP in der Computernetzwerkarchitektur?

青灯夜游
青灯夜游Original
2022-08-29 16:12:185430Durchsuche

IP gehört zum „Netzwerkschicht“-Protokoll der Computernetzwerkarchitektur. IP bezieht sich auf das Internet Interconnection Protocol, ein Netzwerkschichtprotokoll im TCP/IP-System. Es kann Informationen über verschiedene Protokolle an die Transportschicht senden, z. B. TCP, UDP usw.; Verbindungsschicht durch Für die Übertragung werden verschiedene Technologien wie Ethernet und Token-Ring-Netzwerke verwendet.

Zu welchem ​​Protokoll gehört IP in der Computernetzwerkarchitektur?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Dell G3-Computer.

ip gehört zum „Netzwerkschicht“-Protokoll der Computernetzwerkarchitektur.

IP-Protokoll-Kurzbeschreibung

IP bezieht sich auf das Internet Interconnection Protocol, die Abkürzung für Internet Protocol. IP ist der Kern der gesamten TCP/IP-Protokollfamilie und die Grundlage des Internets. IP befindet sich in der Netzwerkschicht des TCP/IP-Modells (entspricht der Netzwerkschicht des OSI-Modells). Es kann verschiedene Protokollinformationen für die Transportschicht bereitstellen, z. B. IP-Informationspakete Wird in der Verbindungsschicht platziert und über verschiedene Technologien wie Ethernet- und Token-Ring-Netzwerke übertragen.

Zu welchem ​​Protokoll gehört IP in der Computernetzwerkarchitektur?

Der Zweck des IP-Designs besteht darin, die Skalierbarkeit des Netzwerks zu verbessern: erstens, Internetprobleme zu lösen und die Verbindung großer, heterogener Netzwerke zu realisieren, zweitens, die Kopplungsbeziehung zwischen Netzwerkanwendungen der obersten Ebene zu trennen und zugrunde liegende Netzwerktechnologien, um die unabhängige Entwicklung beider zu erleichtern. Gemäß dem End-to-End-Designprinzip stellt IP nur einen verbindungslosen, unzuverlässigen und bestmöglichen Paketübertragungsdienst zum Host bereit.

Obwohl IPV4 irgendwann durch IPV6 ersetzt wird, ist IPV4 derzeit immer noch die Mainstream-Version des IP-Protokolls, daher werden wir uns auf die IPV4-Version konzentrieren. Beim Erlernen des TCP-Protokolls und der Socket-Programmierung wissen wir, dass wir die IP-Adresse des Hosts benötigen, wenn wir einen Host im gemeinsam genutzten Netzwerk des Internets genau lokalisieren möchten. Der Host verfügt über eine IP-Adresse, kann jedoch keine Routing-Steuerung durchführen (Routing, d. h. ein Gerät wie ein Router verfügt über eine IP-Adresse und kann den Host auch mit dem Internet verbinden). Router werden Knoten genannt.

Wir Normalbürger haben zum Beispiel nur unsere eigene Adresse. Wenn wir einem Freund eine Expresszustellung schicken oder eine Expresszustellung von jemand anderem erhalten möchten, können wir dem Postboten nur die Adresse der anderen Partei oder unsere eigene Adresse mitteilen , wir haben nur die Adresskennung, aber wir können keine Expresszustellung versenden; und der Kurier ist wie ein Router. Er hat auch seine eigene Adresse und kann seine private Expresszustellung erhalten, aber er kann auch verschiedene Expressrouten für den Transport wählen Expresszustellung des Benutzers je nach Zielort. Die folgende Abbildung kann die Rolle des IP-Protokolls in der Netzwerkumgebung deutlich darstellen.

Header-Format des IP-Protokolls (IPV4)

Genauso wie zuvor beim Erlernen der TCP- und UDP-Protokolle. Lassen Sie uns zunächst das Header-Format des IP-Protokolls vorstellen Wenn keine besonderen Umstände vorliegen, sind sie alle 20 Bytes groß, daher fügen wir die beiden oft zusammen und nennen sie TCP/IP-Protokoll. Nachfolgend finden Sie eine detaillierte Einführung zu jedem Feld im IP-Protokoll-Header:

  • 4-stellige Versionsnummer (Version): wird verwendet, um die Version des IP-Protokolls anzugeben. Die Versionsnummer von IPV4 ist 4. Wenn die IP-Nachricht die IPV4-Version ist, ist der Wert dieses Felds 4 und die 4 -stellige Kennung ist 0100. Die Versionsnummer von IPv6 ist 6.
  • 4-Bit-Header-Länge (Internet-Header-Länge): Gibt die Größe des IP-Headers an. Die Einheit ist 4 Bytes, Länge * 4 Bytes, da dieses Feld insgesamt 4 Bits hat und daher das größte ist Der Wert ist 2^4 - 1, also 15, die maximale Länge des IP-Headers beträgt also 15 * 4, was standardmäßig 60 Bytes entspricht. Dieses Feld ist auf 5 eingestellt, sodass der Standard-IP-Header 20 Bytes beträgt.
  • 8-stelliger Diensttyp: Die ersten drei Ziffern stehen für Priorität (veraltet), die vierte Ziffer für minimale Latenz, die fünfte Ziffer für maximalen Durchsatz, die sechste Ziffer für maximale Zuverlässigkeit und die siebte Ziffer für „Bei niedrigsten Kosten“. Diese vier stehen im Konflikt miteinander und Sie können nur einen auswählen. Es muss je nach Situation ausgewählt werden, wenn es sich um eine Remote-Anmeldung wie SSH/TELNET handelt. Wenn es sich um ein FTP-Programm handelt, sollte das 8. Bit ausgewählt werden reserviertes Bit und wird derzeit nicht verwendet, muss mit 0 gefüllt werden.
  • 16-Bit-Gesamtlänge (Gesamtlänge): Gibt an, wie viele Bytes im IP-Header und im darauf folgenden Datenteil vorhanden sind. Dieses Feld hat 16 Bit, sodass die maximale Gesamtlänge des IP-Datagramms 65535 Byte beträgt.
  • 16-Bit-Identifikation (ID): Identifiziert die vom Host gesendete Nachricht eindeutig. Wenn eine IP-Nachricht auf der Datenverbindungsebene fragmentiert ist, sollte dieses Feld in jedem Fragment den gleichen Wert haben. Helfen Sie dem Peer-Host bei der Fragmentierung und Neuzusammensetzung nach dem Empfang.
  • 3-Bit-Flag (Flag): Das erste Bit ist reserviert (reserviert bedeutet, dass es jetzt nicht verwendet wird, aber bei Bedarf in Zukunft verwendet wird) und muss mit 0 gefüllt werden. Das zweite Bit wird verwendet, um anzuzeigen, ob Sharding möglich ist durchgeführt werden, wenn es 0 ist, dann ist die Fragmentierung in Ordnung, wenn es 1 ist, kann es nicht fragmentiert werden. Wenn die Fragmentierung eines IP-Pakets verboten ist und seine Länge größer als die MTU (Maximum Transmission Unit, später ausführlich beschrieben) ist. , das Paket kann nur verworfen werden; wenn das Paket fragmentiert ist und das dritte Bit 1 ist, bedeutet dies, dass es sich um eine Nachricht in der Mitte des Fragments handelt, d. h. es werden später fragmentierte Nachrichten vorhanden sein , es bedeutet, dass dies das letzte Fragment ist.
  • 13-Bit-Fragment-Offset: Dieses Feld gibt den Offset des Fragments relativ zum Anfang der ursprünglichen IP-Nachricht an. Tatsächlich gibt es die Position des aktuellen Fragments in der ursprünglichen Nachricht an Das Fragment ist 0. Da dieses Feld insgesamt 13 Bits hat, kann es bis zu 2^13 oder 8192 relative Positionen darstellen. Die Einheit beträgt 8 Bytes, sie kann also maximal 8192 * 8 = 65536 Bytes darstellen.
  • 8-Bit-Lebensdauer: Die maximale Anzahl von Nachrichten-Hops, damit ein Datagramm sein Ziel erreicht (Hop bezieht sich auf ein Intervall im Netzwerk, und IP-Datenpakete werden zwischen Hops im Netzwerk weitergeleitet), im Allgemeinen jeweils 64 Wenn es eine Route passiert, TTL–, wenn es das Ziel nicht erreicht hat, wenn TTL == 0, dann wird das Paket verworfen. Dieses Feld wird hauptsächlich verwendet, um Routing-Schleifen zu verhindern. Datenpakete werden in einer Schleife weitergeleitet, wodurch Netzwerkressourcen verschwendet werden.
  • 8-Bit-Protokoll (Protokoll): Gibt an, welches Protokoll die obere IP-Schicht ist. Die bekannten Protokolle TCP, UDP, ICMP usw. befinden sich alle in der oberen IP-Schicht.
  • 16-Bit-Header-Prüfsumme: Verwenden Sie CRC zur Überprüfung, um festzustellen, ob der IP-Header beschädigt ist. Er wird nur verworfen, da der IP-Header nicht überprüft wird Der Inhaltsteil Die Überprüfung muss von der oberen Transportschicht (TCP) berücksichtigt werden. Das IP-Protokoll verwirft die Nachricht direkt, solange ein Problem mit dem Header festgestellt wird.
  • 32-Bit-Quell-IP-Adresse (Quelladresse): Gibt die IP des Absenders an.
  • 32-Bit-Ziel-IP-Adresse (Zieladresse): Gibt die IP des Empfängers an.
  • Optionsfeld (Optionen): variable Länge, bis zu 40 Byte.
Ergänzung: Fragmentierung und Assemblierung
MTU (Maximum Transmission Unit) ist ein Konzept im MAC-Protokoll unterhalb der IP-Schicht. Wir können das MAC-Protokoll als einige Protokolle der physikalischen Schicht verstehen, die sich im IP-Protokoll befinden. Untere Ebene: Beim Senden von Daten entspricht dies der Verwendung des Befehls

zum Anzeigen der MTU. 用户数据 + 应用层协议报头(如HTTP请求报头)作为有效载荷交给传输层(如TCP协议),TCP协议再将TCP报头 + 应用层传来的数据下交给IP层,IP层再将IP协议首部 + TCP层传来的TCP报文交付给MAC帧。因此每个MAC帧其实是IP协议首部 + IP层的有效载荷。而MAC帧是有长度限制的,所以就要求IP数据报向下交付时并不是随心所欲想发多长就发多长,如果MAC帧要求MTU为1500字节,而IP数据包总长度有2000字节,那么就需要分片,将原有的IP数据包分成两片,依次发送,对端的主机在接收后,由对端的IP层再完成组装。我们在Linux环境下可以使用ifconfig

Zu welchem ​​Protokoll gehört IP in der Computernetzwerkarchitektur?

Fragmentierung und Assemblierung sind für TCP/UDP der oberen Schicht und MAC der unteren Schicht transparent, d. h. weder die obere noch die untere Schicht wissen, dass die IP-Schicht das Datenpaket fragmentiert hat, sodass die Fragmentierungs- und Assemblierungsvorgänge ausgeführt werden Dies geschieht automatisch durch die Sender-IP-Schicht und die empfangende IP-Schicht. Fragmentierung bedeutet jedoch, dass ein Datenelement zur Übertragung in mehrere Datengruppen konvertiert werden muss und die Assemblierung am anderen Ende durchgeführt werden muss. Dies verringert die Effizienz der Netzwerkübertragung erheblich und erhöht das Fehlerrisiko sollte während des Übertragungsprozesses vermieden werden, d. h. Versuchen Sie, keine IP-Datagramme zu senden, die die MTU-Länge überschreiten.

IP-Adresse

Definition der IP-Adresse:

In IPV4 verwenden wir eine 32-Bit-Ganzzahl, um die IP-Adresse darzustellen. Der Computer speichert die IP-Adresse jedoch nicht gut im Binärformat , also verwenden wir Punkte. Zeichnen Sie die IP-Adresse im Dezimalformat auf: Das heißt, wir teilen die 32-Bit-IP-Adresse in 4 Gruppen mit jeweils 8 Ziffern auf, trennen die Gruppen durch „.“ und wandeln dann jede Gruppe in Dezimalzahlen um.

Wir können also direkt berechnen, dass es unter dem IPV4-Standard bis zu 2^32 = 4292967296 IP-Adressen gibt, aber die Zahl, die von Menschen genutzt werden kann, ist weitaus geringer als diese Zahl. (Zum Beispiel sind einige IP-Adressen für spezielle Zwecke reserviert, und einige Geräte wie Router belegen mehrere IP-Adressen.)

Die Zusammensetzung einer IP-Adresse:

Eine IP-Adresse besteht aus einer Netzwerkkennung (Netzwerkadresse) und Eine Host-ID (Host-Adresse) besteht aus zwei Teilen.

Das Finden einer IP-Adresse ist wie das Reisen zu einem bestimmten Ort. Wenn wir beispielsweise zum Platz des Himmlischen Friedens wollen, ist es unmöglich, den Hochgeschwindigkeitszug direkt zum Platz des Himmlischen Friedens zu nehmen. Wir müssen zuerst in Peking ankommen (Zielnetzwerk) und fahren Sie dann durch den Transport innerhalb Pekings und erreichen Sie den Platz des Himmlischen Friedens (Zielhost). Daher sollten wir bei der Auswahl des Routings zuerst das LAN finden, in dem sich der Zielhost befindet, und dann den Zielhost im LAN finden. Diese Methode kann uns helfen, das Ziel-LAN schnell zu finden. Die Suche nach dem Ziel-Host im LAN ist viel schneller als das Finden eines Hosts im riesigen Netzwerk.

Netzwerk-ID: Stellen Sie sicher, dass die beiden miteinander verbundenen Netzwerksegmente unterschiedliche Identitäten haben.

Host-ID: Stellen Sie sicher, dass zwei Hosts im selben Netzwerksegment unterschiedliche Identitäten haben.

Einteilung der IP-Adressen:

IP-Adressen sind in fünf Ebenen unterteilt, nämlich Klasse A, Klasse B, Klasse C, Klasse D und Klasse E (die noch nie verwendet wurden), sodass wir derzeit nur IP sehen können vier Arten von Adressen: A, B, C und D. Grundlage für die Aufteilung sind die Bits vom 1. bis 4. Bit der IP-Adresse.

  • Adresse der Klasse A: 0.0.0.0 ~ 127.255.255.255
  • Adresse der Klasse B: 128.0.0.0 ~ 191.255.255.255
  • Adresse der Klasse C: 192.0.0.0 ~. 2 23.2 55.255.255
  • Adresse der Klasse D : 224.0.0.0 ~ 239.255.255.255
  • Adressen der Klasse E: 240.0.0.0 ~ 247.255.255.255

Wenn wir IP-Adressen der Klasse E nicht berücksichtigen, können wir feststellen, dass es sich um die Netzwerknummern von Adressen der Klassen A, B, C und D handelt Die Anzahl der belegten Bits nimmt allmählich zu, während die Anzahl der vom Host belegten Bits allmählich abnimmt. Dies bedeutet, dass unter den oben genannten vier Adresstypen die Anzahl der Subnetze in einem Adresstyp zunimmt, die Anzahl der Hosts, die im Subnetz verbunden werden können, jedoch immer kleiner wird. Nehmen Sie als Beispiel eine gewöhnliche Universität in China. In der Schule gibt es etwa 30.000 Lehrer und Schüler Um mit dem Netzwerk verbunden zu sein, sollten Sie bei der Beantragung eines Netzwerks 50.000 bis 60.000 IP-Adressen beantragen. Wenn Sie Adressen der Klasse A verwenden, generiert die 24-stellige Hostnummer 2^24 = 16777216 IP-Adressen weit mehr als tatsächlich benötigt wird. Wenn Sie eine Klasse-C-Klasse-B-Adresse verwenden, gibt es nur 2^8 = 256 IP-Adressen, was weit weniger als die erforderliche IP-Adresse ist, daher ist die Klasse-B-Adresse am besten geeignet 2^16 = 65536 IP-Adressen. Dieses Beispiel zeigt uns auch, dass es weder zu viele IP-Adressen geben sollte, was viel Verschwendung verursacht, noch zu wenige, da sonst viele Geräte keine Verbindung zum Netzwerk herstellen können.

Einführung der Subnetzmaske:

Mit der Entwicklung des Internets beginnen sich die Nachteile der Verwendung der ersten vier Ziffern zur Klassifizierung zu zeigen: Das heißt, viele Subnetzantragsteller werden Netzwerkadressen der Klasse B beantragen, weil Klasse A Es gibt Es gibt einfach keine Möglichkeit, es zu verbrauchen, und Kategorie C reicht nicht aus. Dadurch wurden die Netzwerkadressen der Klasse B schnell vergeben. Durch die Beantragung eines Klasse-A-Netzwerks werden viele IP-Adressen verschwendet. Die Leute haben ein neues Aufteilungsschema vorgeschlagen: CIDR (Classless Interdomain Routing)

  • Einführung eines Subnetzmaskencodes zur Unterscheidung der Netzwerknummer und der Hostnummer
  • Die Subnetzmaske ist ebenfalls eine positive 32-Bit-Ganzzahl, endet jedoch normalerweise mit einer Zeichenfolge von 0
  • Die IP-Adresse und die Subnetzmaske werden bearbeitet & und das Ergebnis ist die Netzwerknummer
  • Die Aufteilung der Netzwerknummern und Hostnummern haben nichts damit zu tun, ob die IP-Adresse Klasse A, Klasse B oder Klasse C ist.

Geben Sie zwei Beispiele, um die Aufteilung von Netzwerknummern und Hostnummern durch Subnetzmasken zu verstehen

IP-Adresse
Binärer Ausdruck1000 1100 1111 1100 0001 0100 0100 0100Subnetzmaske
140.252.20.68
Binärer Ausdruck1111 1111 1111 1111 1111 1111 0000 00001111 1111 1111 1111 1111 1111 1111 0000
255.255.255.0

Nachdem wir eine bitweise UND-Verknüpfung an der IP-Adresse und der Subnetzmaske durchgeführt haben, erhalten wir 1000 1100 1111 1100 0001 0100 0000 0000 und wandeln es dann in ein Punkt-Dezimalsystem um, das für Benutzer praktisch ist 140.252.20.0, dies ist die Netzwerknummer des Subnetzes. Und die letzten 8 Bits seiner Subnetzmaske sind 0. Dieses Subnetz kann 2^8 = 256 Hosts darstellen, daher ist der Adressbereich dieses Subnetzes <code>140.252.20.0 ~ 140.252.20.2551000 1100 1111 1100 0001 0100 0000 0000,再转化为方便人们使用的点分十进制为140.252.20.0,这就是该子网的网络号了。并且它的子网掩码末尾的8个比特位为0,这个子网可以表示2 ^ 8 = 256台主机,因此这个子网的地址范围是140.252.20.0 ~ 140.252.20.255

例二:
IP地址 二进制表达
140. 252. 20. 68 1000 1100 1111 1100 0001 0100 0100 0100
子网掩码 二进制表达
255.255.255.240 1111 1111 1111 1111 1111 1111 1111 0000

将IP地址与子网掩码进行按位与操作后得到1000 1100 1111 1100 0001 0110 0100 0000,即该子网的网络号,同样转换成常用的点分十进制为140.252.20.64,它的子网掩码末尾的4个比特位为0,这个子网可以表示2 ^ 4 = 16台主机,因此这个子网的地址范围就是140.252.20.64 ~ 140.252.20.79

Beispiel 2:
thehead>
IP-Adresse Binärer Ausdruck
140. 252. 20. 68 1000 1100 1111 1100 0001 0100 0100 0100
Subnetzmaske Binärer Ausdruck
255.255.255.240
Erhalten durch Ausführen einer bitweisen UND-Verknüpfung an der IP-Adresse und der Subnetzmaske 1000 1100 1111 1100 0001 0110 0100 0000, die Netzwerknummer des Subnetzes, wird auch in die häufig verwendete Punkt-Dezimal-Schreibweise in 140.252.20.64 umgewandelt, die seine Subnetzmaske darstellt. Die letzten 4 Bits sind 0. Dies Das Subnetz kann 2^4 = 16 Hosts darstellen, daher ist der Adressbereich dieses Subnetzes 140.252.20.64 ~ 140.252.20.79

Einige spezielle IP-Adressen
  • Legen Sie alle Hostadressen in der IP-Adresse fest auf 0, was der Netzwerknummer des LAN entspricht. Diese IP-Adresse repräsentiert das LAN.
  • Setzen Sie alle Hostadressen in der IP-Adresse auf 1, was zu einer Broadcast-Adresse werden kann. Diese Broadcast-Adresse kann Datenpakete an alle Hosts senden, die über dieselbe Verbindung miteinander verbunden sind. Die IP-Adresse 127.* wird verwendet Zurück zum Test, normalerweise 127.0.0.1
private IP-Adresse und öffentliche IP-Adresse

Wenn eine Universität ein LAN innerhalb des Campus einrichten möchte, realisiert sie nur die Netzwerkkommunikation innerhalb des Campus und kommuniziert nicht mit jeder externen Maschine, dann können theoretisch 2^32 IP-Adressen verwendet werden, da nur in diesem LAN nicht die gleiche IP-Adresse erscheint. Allerdings legt RFC1918 die Spezifikationen für private IP-Adressen beim Aufbau eines LANs fest:

    10.* Die ersten 8 Ziffern sind die Netzwerknummer, mit insgesamt 16.777.216 Adressen
  • 172.16.*~172.31.* Die ersten 12 Ziffern sind die Netzwerknummer mit insgesamt 1.048.576 Adressen
  • 192.168.* Die ersten 16 Ziffern sind die Netzwerknummer, und es gibt insgesamt 65.536 Adressen
IP-Adressen innerhalb des oben genannten Bereichs sind private IPs und IPs außerhalb des oben genannten Bereichs Bereich sind globale IP-Adressen (öffentliche IP-Adressen).

Weitere Informationen zu diesem Thema finden Sie in der Spalte „FAQ

“!

Das obige ist der detaillierte Inhalt vonZu welchem ​​Protokoll gehört IP in der Computernetzwerkarchitektur?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Welches Format hat RMVB?Nächster Artikel:Welches Format hat RMVB?