# Verbindung
Auf Schicht 2 haben wir gesehen wie ein IP-Paket von Subnetz zu Subnetz an sein Ziel geleitet wird. Auf Schicht 1 sehen wir nun an wie die Daten in den einzelnen Subnetzen transportiert werden.
Adresse: MAC-Adresse
z.B. 08-00-20-ae-fd-7e
# Ethernet
Ethernet ist eine Technik für den Austausch von Daten über ein Kabel. Mittels Ethernet werden Datenpakete zwischen den angeschlossenen Geräten eines lokalen Rechnernetzes (LAN[1]) ausgetauscht. Heute wird die Technik auch für Fernübertragung von Daten mittels Glasfaser sowie kabellose Übertragung per Funk (WLAN[2]) eingesetzt.
Ethernet unterstützt Übertragungsraten von 10 und 100 Mbit/s, sowie 1 und 10 Gbit/s. Der Ethernet-Standard umfasst ein breites Spektrum von
- Kabeltypen und Stecker
- Physikalische Signalisierung
- Paketformate
- Protokolle
# Adressierung
Jede Netzwerkschnittstelle hat eine 48 Bit lange, eindeutige Nummer, die sogenannte MAC[3]-Adresse. Üblicherweise wird die Adresse hexadezimal geschrieben, die einzelnen Bytes werden durch ein Trennzeichen (entweder Doppelpunkt oder Bindestrich) separiert:
08:00:20:ae:fd:7e
08-00-20-ae-fd-7e
Die MAC-Adresse, bei welcher alle Bits auf 1 gesetzt sind (ff:ff:ff:ff:ff:ff
), wird als Broadcast-Adresse verwendet. Ein so adressiertes Paket wird an alle Geräte in einem LAN gesendet.
Damit die MAC-Adressen weltweit eindeutig bleiben, vergibt eine Standardisierungsorganisation, die IEEE[4], die ersten drei Bytes einer Adresse als Herstellerkennung (OUI[5]). Cisco hat zum Beispiel die OUI 00:60:2f
. Die drei letzten Bytes einer MAC-Adresse darf der Hersteller selbst vergeben
Herstellercodes von MAC-Adressen (eine kleine Auswahl):
00-50-8b-xx-xx-xx Compaq/HP
00-07-e9-xx-xx-xx Intel
00-60-2f-xx-xx-xx Cisco
00-15-f2-xx-xx-xx Asus
Aufgabe
Wie lautet deine MAC-Adresse? (PC, Handy, …). Auf welchen Hersteller ist sie registriert? («oui-lookup» googeln)
# Datenpakete
Beim Ethernet-Protokoll werden die übermittelten Datenpakete Frames genannt. Ein Frame besteht aus den folgenden Daten:
Daten | Länge |
---|---|
Ziel-MAC-Adresse | 6 Byte |
Quell-MAC-Adresse | 6 Byte |
Typ | 2 Byte |
Nutzdaten | 38 – 1500 Byte |
Prüfsumme | 4 Byte |
Der Typ gibt an, welches Protokoll auf der nächsthöheren Schicht verwendet wird, damit der Empfänger die Nutzdaten entsprechend interpretieren kann [6].
Die Nutzdaten umfassen zwischen 38 und 1500 Byte. Hier stehen die Daten des vom Typ definierten Protokolls. Schliesslich folgt eine Prüfsumme, mit welcher der Empfänger allfällige Übertragungsfehler feststellen kann.
Ein Ethernet-Frame umfasst also mindestens 56 und maximal 1518 Byte.
# Funktionsweise
Ethernet ist so ausgelegt, dass mehrere Geräte am gleichen Netzwerkkabel angeschlossen sind und gleichzeitig miteinander kommunizieren können.
In einem Klassenzimmer kommunizieren alle Personen über das gleiche Medium, die Luft. Bevor jemand zu sprechen beginnt, wartet er, bis die andere Person aufgehört hat zu reden. Wenn zwei Anwesende gleichzeitig zu sprechen beginnen, stoppen beide und warten kurz, bevor sie einen neuen Anlauf wagen. Meist beginnt dann eine Person früher und das Problem ist gelöst.
Wenn ein Gerät senden möchte, wartet es bis die Leitung frei ist. Wenn mehrere Geräte gleichzeitig zu Senden beginnen, stoppen und warten sie eine zufällig gewählte Zeitspanne, bevor sie erneut beginnen. Dieses Verfahren ist im Protokoll CSMA/CD (Carrier Sense Multiple Access/Collision Detection) genau definiert. Wenn man an einem Netzwerkkabel nur zwei Geräte hat (z.B. zwei Computer an einem Switch), dann kann man diese im sogenannten Vollduplex-Modus betreiben, wo für beide Richtungen separate Kanäle zur Verfügung stehen. Dann können keine Kollisionen mehr auftreten und CSMA/CD wird deaktiviert.
# Switch
Ursprünglich ist Ethernet so konzipiert, dass sich mehrere Geräte das gleiche Netzwerkkabel teilen (z.B. 10Base2 oder 10BaseT mit Hub). Dadurch empfangen alle Geräte den gesamten Netzverkehr und müssen diesen filtern. Heute wird deshalb meist ein Switch eingesetzt. Am Switch werden die Geräte einzeln angeschlossen. Der Switch liest die Zieladresse von jedem Frame und leitet es nur dem Gerät mit der entsprechenden MAC-Adresse weiter. Der Switch «schaltet» also intern die Ports so, dass die beiden Computer/Kommunikationspartner direkt miteinander verbunden sind.
# Zwischen den Schichten: Das ARP-Protokoll
Wie weiss die Netzzugangsschicht an welche MAC-Adresse sie die Frames schicken soll? Von der Internet-Schicht erhält sie zwar eine Adresse, diese wird aber in Form einer IP-Adresse geliefert. Irgendwie muss nun herausgefunden werden welche MAC-Adresse zu dieser IP-Adresse gehört/resp. welche MAC-Adresse dafür zuständig ist.
- Eine mögliche Lösung wäre auf dem Computer ein Liste zu führen, in der alle IP-Adressen und die dazugehörige MAC-Adresse aufgelistet sind. Allerdings wäre diese Lösung sehr unflexibel: Jedes Mal wenn ein neues Gerät ins Netz kommt, müsste man auf allen anderen Geräten die Liste anpassen.
- Die zweite Lösung, nämlich eine zentrale Liste im lokalen Netz, ist auch nicht wirklich praktisch. Diese müsste auf einem Server nachgeführt werden. Falls dieser nicht verfügbar wäre, würde die Kommunikation zusammenbrechen.
- Was gemacht wird: es wird nachgefragt wer für die gewünschte IP zuständig ist. Dieses Vorgehen wird durch das ARP (Address Resolution Protocol) geregelt:
Derjenige Computer der eine IP- in eine MAC-Adresse auflösen muss, schickt eine ARP-Anforderung (engl. ARP-Request) mit seiner MAC- und IP-Adresse und der IP-Adresse des gesuchten Computers an alle Computer des lokalen Netzwerkes. Als Empfänger-MAC-Adresse wird dabei die Broadcast-Adresse ff-ff-ff-ff-ff-ff
verwendet.
Das für die gesuchte IP-Adresse zuständige Gerät antwortet mit dem Zurücksenden seiner MAC- und IP-Adresse (ARP-Antwort oder engl. ARP-Reply) an die MAC-Quelladresse des Anforderenden. Dieser trägt nach Empfang der Antwort die empfangene Kombination von IP- und MAC-Adresse in seiner ARP-Tabelle, dem sogenannten ARP-Cache, ein. Der ARP-Cache wird geführt, damit nicht jedes Mal eine ARP-Anfrage geschickt werden muss. Allerdings werden die Einträge nach einer gewissen Zeit (TTL – time to live) ungültig, so dass sichergestellt ist, dass keine veralteten Einträge vorhanden sind und ein möglicher IP-Adress-Wechsel nach kurzer Zeit erkannt wird.
Da die ARP-Anforderung ja als Broadcast gesendet wurde, können alle Geräte die dieses ARP-Paket empfangen ihre ARP-Tabelle kontrollieren und falls nötig korrigieren oder mit der IP- und MAC-Adresse des Anforderenden ergänzen. Dies gilt besonders für das antwortende Gerät, da davon auszugehen ist, dass nach dem ARP-Request weitere Pakete folgen, auf die es höchstwahrscheinlich antworten muss.
In den meisten Betriebssystemen kann der ARP-Cache mit arp
(oder arp -a
) angezeigt und manipuliert werden.
Aufgabe
Lass dir den ARP-Cache deines Computers anzeigen und kopiere ihn in ein Excel-Sheet. Versuche zu den Einträgen folgendes herauszufinden:
- Computernamen (lässt sich mit dem Befehl
nslookup
und der IP herausfinden) - Hersteller der Hardware (mittels MAC-Adresse und OUI-Liste)
# Bitübertragung
Im zweiten Teil der untersten Schicht schauen wir die wirkliche physikalische Übertragung der Daten an
Adresse: keine, direkter Kanal zwischen den Kommunikationspartnern
Die Kommunikation muss ja tatsächlich irgendwie stattfinden. D.h. die daran beteiligten Geräte müssen irgendwelche Signale austauschen. Der Austausch vollzieht sich über ein physikalisches Medium, sei das ein leitendes Metall, elektromagnetische Wellen oder etwas Anderes.
# Kenngrössen
Bevor wir die verschiedenen Medien vergleichen können, müssen wir einige Kenngrössen festlegen, die wir dann für die einzelnen Medien herausfinden wollen.
# Metallischer Leiter (Kabel)
# Optischer Leiter (Kabel)
# Funk
Aufgabe
Gemeinsam legen wir die Kenngrössen fest.
Finde für das dir zugeteilte physikalische Medium die Kenngrössen heraus, so dass wir diese im Plenum zusammentragen können.
# Heutige Technologien
Heute kommen fast immer die Technologien Ethernet und WLAN/Wifi zum Zug. So sind moderne TVs mit Ethernet-Anschluss und WLAN ausgestattet, genauso wie netzwerkfähige Hifi-Anlagen, Drucker und natürlich Computer. Immer häufiger werden kompakte Laptops nur noch mit WLAN und ohne integrierten Ethernet-Anschluss ausgeliefert. (Bei Smartphones und Tablets ist eigentlich nie ein Ethernet-Port vorhanden, WLAN aber schon.)
# Ethernet
Ein Ethernet-Kabel besteht meist aus 8 Drähten und zwei Stecker vom Typ RJ45. Das System ist bis zu einem gewissen Punkt abwärtskompatibel. So bieten moderne Computer Übertragungsgeschwindigkeiten von 1Gbit/s an, wobei TVs, Drucker und ältere PCs nur 100 oder gar nur 10 Mbit/s schaffen. Mehrere Ethernet-Geräte werden über einen (oder mehrere) Switches untereinander verbunden. (Meistens ist im Kabel-/ADSL-Modem des Providers zu Hause nebst WLAN ein kleiner Switch mit ungefähr 4 Anschlussbuchsen – sogenannten Ports – eingebaut.)
# WLAN/ Funk 802.11abcng
Die Standards im WLAN sind etwas weniger kompatibel. Weil alle Teilnehmer miteinander reden, müssen diese sich dem langsamsten Gerät anpassen. Zudem funken die Standards in verschiedenen Frequenzbereichen, was aber auch das Betreiben mehrerer paralleler Netze erleichtert. Hinzu kommt ein Problem der Sicherheit gegeben durch das Übertragungsmedium – die Luft. Um das WLAN zu schützen wird meist eine Verschlüsselungstechnik eingesetzt (z.B. WPA2).
LAN: Local Area Network ↩︎
WLAN: Wireless Local Area Network ↩︎
MAC: Media Access Control ↩︎
IEEE: Institiute of Electrical and Electronics Engineers (sprich: «i-triple e»), weltweiter Berufsverband von Ingenieuren ↩︎
OUI: Organizationally Unique Identifier, siehe http://standards.ieee.org/regauth/oui (opens new window) ↩︎
IPv4, IPv6 oder ARP (siehe Internet-Schicht) ↩︎