namespace cpp

C++ lernen, kennen, anwenden

Benutzer-Werkzeuge

Webseiten-Werkzeuge


netzwerk:routing

Kleine Netze, große Netze

Was wollen Sie? Ein Telegramm? Nach Neuyork? Bei dem Wetter?
— Emil Steinberger

Teilnetze

Das Internet (eigentlich Zwischennetz) wird manchmal auch als Netz der Netze bezeichnet. Es verbindet viele Teilnetze miteinander. Einige davon sind lokale Netze (LAN im Unternehmen, zu Hause, im Internetcafé), andere werden als Weitverkehrsnetze (WAN) bezeichnet.

Für lokale Netze wird meist Ethernet (Netzwerkkabel) oder ein Funknetz (WLAN) genutzt. Weitverkehrsnetze setzen verschiedenste Mittel ein (Kupferkabel, Glasfaser, Funk, Satellitenverbindungen). Wer selbst zu Hause einen Internetanschluss hat, kann die Grenze von LAN und WAN leicht ausmachen: den Internet-Router (FritzBox o.ä.). Bei Funknetzen von Smartphones ist das schwieriger, weil nicht sichtbar. Aber auch da klappt die Verbindung zur Außenwelt nur, wenn das Gerät mit einer Antenne in der Nähe (Funkzelle) Kontakt aufnehmen kann. Im Fahrstuhl mit ringsum metallischen Wänden reißt die Verbindung ab, da ein Faradayscher Käfig Funkwellen abschirmt.

Im diesem Abschnitt geht es darum, wie eine Nachricht (IP-Paket) ihren Weg (Route) durch die vielen Netze findet. Als normaler Nutzer setzt man voraus, dass dies funktioniert, weshalb das Internet ab dem Anschlussanbieter (Provider) meist als Wolke dargestellt wird. Wer Netzwerke verwaltet, muss jedoch etwas mehr über das Routing und das Zusammenspiel verschiedener Netze wissen.

Kommunikation im Schloss

Das Schloss von König Gunther hat mehrere abgeschlossene Bereiche: den Hof, von dem aus Türen zum Thronsaal, zur Küche, zur Schmiede und zur Wachstube führen (Bild unten).

König Gunther lässt das Fest im Thronsaal beginnen, der Marschall fordert Tadeus auf, mit seiner Klarinette Musik zu machen, damit Prinzessin Herzelinde und 1 1/2 Ritter Lanze tanzen können.

In der Küche lässt Mister Crabs die Speisen zubereiten. Spongebob, der legendäre Burgerbrater mit dem goldenen Pfannenwender, dreht das Spanferkel am Spieß. Fee Morgaine, eigentlich an König Artus' Hof zu Hause, ist für die Pfefferminzsoße zuständig und Aschenputtel muss Möhren schneiden. "Sollen die Möhren in Scheiben oder Würfel sein?" ruft sie in die Küche. Wer sich für ihre Frage nicht zuständig fühlt, macht einfach seine Arbeit weiter. Mister Crabs antwortet: "Würfel sind festlicher. Und schön gleichmäßig!" Spongebob erinnert daran, dass noch drei Gürkchen auf jeden Teller gehören. Morgaine möchte unbedingt sofort die fein gehäckselte Pfefferminze in ihren Kochkessel werfen.

Währenddessen spielen die Soldaten in der Wachstube Netzpoker. Vom Lärm in den einzelnen Räumen dringt wegen der dicken Mauern nichts nach draußen. Jeder dieser Teilbereiche stellt ein Teilnetz dar, in dem die dortigen Personen direkt und ungestört miteinander kommunizieren können.

Nach dem Tanz werden die Festteilnehmer hungrig. König Gunther spricht: "Lasst den Küchenchef Mister Crabs das Essen auftragen!" Der Marschall ist für Nachrichten zuständig, die an Leute außerhalb des Thronsaales gehen sollen. Da er an der Tür steht, kann er diese Botschaft in den Burghof hinausrufen lassen. Die Wache an der Küchentür erkennt, dass sie dafür zuständig ist, das in die Küche weiterzumelden, wo die Nachricht bei Mister Crabs ankommt. Er wird eine Bestätigungsnachricht über den Burghof an den König zurück schicken und seine Mitarbeiter zur Eile antreiben.

Dieses Weiterleiten von Nachrichten durch mehrere Teilnetze an den Empfänger wird Routing genannt. Die an Türen stehenden Personen (Router) sind gleichzeitig in zwei Netzen und entscheiden anhand ihres Wissens und ihrer Erfahrung (Routing-Tabellen), ob und wohin eine Nachricht weitergegeben werden muss.

Will König Gunther dann noch die aktuelle Schild-Zeitung haben, geht diese Nachricht wiederum über den Marschall in den Burghof. Da aber keiner weiß, wo die Schild-Zeitung liegt, muss ein Bote durch das Schlosstor (den Gateway) zum Kiosk im Dorf (dem Internet-Provider) geschickt werden, der dann die Schild-Zeitung besorgt. Das Tor dient gleichzeitig als Brandmauer (Firewall), damit irre(nde) Reiter wie Otto der Außerfriesische nicht das Fest stören.

Nachdem die Idee der Kommunikation in Teilnetzen (ausgeschmückt nach Jens Gallenbacher: Abenteuer Informatik. Spektrum-Verlag München, Kapitel 6, ISBN 3-8274-1635-3) angekommen ist, kann nun dieses Netz von Netzen etwas genauer unter die Lupe genommen werden.

Supernette Subnetze

IP-Adressen wie 10.0.2.3 (Herzelinde) werden durch eine Netz-Maske wie 255.255.0.0 in einen Netzanteil und einen Geräteanteil unterteilt. Anschaulich wird das, indem man die Nummern als Dualzahlen schreibt:

IP-Adresse: 00001010.00000000.00000010.00000011 = 10.0.2.3
Netz-Maske: 11111111.11111111.00000000.00000000 = 255.255.0.0
            -----------------|----------------- 
                Netzanteil       Geräteteil 

Bitweise Logik blendet die uninteressanten Teile der Adresse aus:

Netzanteil: 00001010.00000000.00000000.00000000 = 10.0.0.0 = ipAdresse UND Maske
Geräteteil: 00000000.00000000.00000010.00000011 =  0.0.2.3 = ipAdresse UND NICHT Maske

Von allen physisch verbundenen Rechnern können nur die miteinander kommunizieren, deren Netzanteil übereinstimmt, sie befinden sich in einem logischen Netz. Mit der Maske 255.255.0.0 gibt es 2 hoch 16 mögliche Adressen in dem Netz 10.0.*.*. Im Schloss würde jeder den Lärm aus allen Bereichen hören, das Netz würde mit Nachrichten verstopfen. Daher wird das Netzmaske des Schlosses auf 24 Bit erweitert:

IP-Adresse: 00001010.00000000.00000010.00000011 = 10.0.2.3
Netz-Maske: 11111111.11111111.11111111.00000000 = 255.255.255.0
            --------------------------|-------- 
                Netzanteil            Geräteteil 

Das Thronsaal-Subnetz 10.0.2.* wird logisch getrennt von den Netzen 10.0.0.* (Hof), 10.0.3.* (Küche), 10.0.4.* (Wachstube) und 10.0.4.* (Schmiede). Der übergreifende Lärm wird so abgeschottet. Allerdings gibt es für jedes Teilnetz nur noch 2 hoch 8 = 256 Geräteadressen, was für einzelne Zimmer (eine kleine Abteilung oder ein Großraumbüro) durchaus ausreichend sein kann. Die kompakte Schreibweise 10.0.2.0/24 weist auf die Anzahl der Einser-Bits in der Netzmaske hin.

Einige IP-Adressen haben besondere Bedeutung: 0.0.0.0 (bzw. Nullen im Geräteteil) steht für das aktuelle Netz, 255.255.255.255 (bzw. Einsen im Geräteteil) dient als Rundruf-Adresse: "An alle". Ein Rundruf ist notwendig, um z.B. eine Netzadresse dynamisch über DHCP beziehen zu können.

Für Netze wie das Schlossnetz, dessen Rechner nicht direkt mit dem Internet verbunden sind, sind besondere, private Adressbereiche reserviert: 10.*.*.*/8, 172.16.*.*/12 bis 172.31.*.*/12 und 192.168.*.*/16. Deren Zugang zum öffentlichen Internet wird durch einen Internet-Router hergestellt.

Routing

Die logische Trennung der Netze unterbindet die Kommunikation zwischen diesen, um den Lärm einzuschränken. Allerdings könnte König Gunther so dem Koch nicht mitteilen, das Essen aufzutragen. Hierzu müssen einzelne Rechner (Router), die in mindestens zwei Netzen liegen, beauftragt werden, Nachrichten in andere Netze weiterzuleiten. Die Regeln für die Weiterleitung werden in Routing-Tabellen festgelegt. Für den Marschall könnte diese so aussehen:

Nachricht von Nachricht an weiterleiten an
10.0.2.* 10.0.3.* 10.0.0.3 (Küchentür)
10.0.2.* 10.0.4.* 10.0.0.4 (Wachstube)
10.0.2.* 10.0.5.* 10.0.0.5 (Schmiede)
10.0.2.* andere 10.0.0.1 (Schlosstor)
irgendwem 10.0.2.* Empfänger im Thronsaal

Von diesen Regeln greift immer die genaueste. Die Nachricht an den Chefkoch wird von der ersten Regel erfasst. Die Bestellung der Schildzeitung gehorcht der allgemeiner gefassten Regel, diese zum Schlosstor zu schicken. Die Rückmeldung des Kochs an den König wird von der letzten Regel erfasst. Eine Nachricht vom Wachhauptmann 10.0.4.1 an den Schmied 10.0.5.1 wird vom Marschall ignoriert und nicht in den Thronsaal geleitet, weil hierfür keine Regel in der Routing-Tabelle vorgesehen ist.

Weitere Netzgeräte

Mehrere Rechner werden nicht direkt miteinander verbunden, sondern heute meist sternförmig an ein Zentralgerät angeschlossen. Weil hier alle Kabel wie Speichen zusammenlaufen, wird er als Hub (engl. Radnabe) bezeichnet. Seine Aufgabe ist, alle eingehenden Pakete unverändert an alle angeschlossenen Geräte weiterzugeben.

Moderne Geräte arbeiten dagegen als Switch (Umschalter). Nach einer Lernphase (ARP-Anfrage zum Ermitteln der MAC-Adresse zu einer IP-Adresse) senden sie eingehende Pakete nur noch an den direkten Empfänger, nicht mehr an Unbeteiligte. Dazu muss die Switch im Vorspann des Ethernet-Frames die 48 Bit große Ziel-MAC untersuchen (Schicht 2 des OSI-Modells).

Ein Router dagegen nimmt das enthaltene IP-Paket und untersucht die IP-Adressen, um zu entscheiden, ob das Paket weitergeleitet werden muss. Falls ja, wird das IP-Paket in einen neuen Ethernet-Frame gesteckt und zur nächsten Zwischenstation geleitet. Ein Router arbeitet also auf OSI-Schicht 3. (Wer seine Zuhörer verwirren will, kann von einer Layer-3-Switch sprechen.)

Das Weiterreichen der Nachrichten in einem Netz

Nehmen wir an, der König will mit dem Koch Spongebob sprechen, weil ihm das Spanferkel so gut gemundet hat. Diese Nachricht wird durch alle 7 Schichten des König-PCs über den Thronsaal-Switch zum Marschall geschickt, der als Router handelt. Von diesen läuft sie weiter über den Schlosshof-Switch zum Chefkoch. Der Chefkoch reicht die Nachricht weiter über den Switch in der Küche an den PC neben dem Bratspieß. Durch alle sieben Schichten des OSI-Modells gelangt die Nachricht nun zum Empfänger. Zeichnet man den Weg der Nachricht nach, entsteht ein recht eindrucksvolles Bild:

   König                                                   Spongebob
7  __                                                             __
6  __                                                             __
5  __                                                             __
4  __                Marschall              Chefkoch              __
3  __                 __--__                 __--__               __
2  __     __---__     __  __     __---__     __  __     __---__   __
1  __-----__   __-----__  __-----__   __-----__  __-----__   __---__
   PC     Switch       Router    Switch      Router     Switch    PC
         Thronsaal             Schlosshof                Küche

In diesem Ablauf bleibt nun kein Platz mehr für Zauberei, höchstens für das Staunen, zu welch komplexen Leistungen der menschliche Geist fähig ist.

Das Verständnis der Vorgänge kann nun noch durch eine Übung mit einer Simulationssoftware wie Filius vertieft werden. Nach dem Aufbau eines Simulationsnetzes (detaillierte Anleitung vorgeben!) lassen sich hier einzelne Aspekte nachvollziehen: Beziehen einer nicht-statischen IP-Adresse aus dem Netz über DHCP, HTTP-Anfrage, DNS-Anfrage, Datenverkehr auf TCP/UDP- und IP-Ebene mit 3-Wege-Handshake und Quittung, ARP-Anfrage, Routing, …

netzwerk/routing.txt · Zuletzt geändert: 2012-07-17 19:46 (Externe Bearbeitung)