Netzwerktechnik: Protokolle


Computer oder andere digitale Geräte benötigen Netzwerkprotokolle, um zahlreiche Funktionen wie z.B. den Austausch von Daten untereinander zu gewährleisten oder erst zu ermöglichen.

Internet-Protokolle werden in den RFC-Dokumenten diskutiert und standardisiert. Ebenso werden alle weiteren, das Internet betreffende Implementierungen in den RFCs erörtert, diskutiert und ggf. standardisiert. Die wesentlichen RFCs haben dabei den Status erforderlich (required), empfohlen (recommended), oder optional (elective). Andere RFCs können auch als experimentell (experimental) oder historisch (historic) bezeichnet werden.

TCP/IP Bearbeiten

TCP/IP steht für zwei Protokolle, die das Herzstück dieser Protokoll-Familie bilden: Das Transmission Control Protocol und das Internet Protocol.

TCP/IP entstand mit dem Internet seit 1983 und hat mehrere Ziele:

   * Hardwareunabhängigkeit
   * keine zentrale Verwaltung, kein zentraler Knoten, dadurch höhere Ausfallsicherheit
   * applikationsunabhängig, es kann also für verschiedenste Zwecke genutzt werden


TCP Bearbeiten

Das Transmission Control Protocol (TCP) ist ein zuverlässiges, verbindungsorientiertes Transportprotokoll in Computernetzwerken. Es ist Teil der TCP/IP-Protokollfamilie. Und wurde von Robert E. Kahn und Vinton G. Cerf entwickelt. Ihre Forschungsarbeit, die sie im Jahre 1973 begannen, dauerte mehrere Jahre. Die erste Standardisierung von TCP erfolgte deshalb erst im Jahre 1981 als RFC 793.

TCP verwendet für den Verbindungsaufbau zwischen den zwei kommunizierenden Systemen den Three-Way-Handshake.

TCP-Header Bearbeiten

Die Informationen des Headers sind in Blöcken zu 32-bit zusammengefasst. Selbst wenn ein Header länger wird, beträgt die Länge immer ein Vielfaches von 32-bit. Die eigentlichen Informationen sind dabei 20-Byte lang.

Der Header besteht aus folgenden Elementen:

Source Port(16-bit), Destination Port(16-bit), Sequence Number(32-bit), Acknowledgment Number(32-bit), Header Lenght(4-bit), Flags(12-bit), Fenstergrösse, Prüfsumme, Dringlichkeitszeiger, Optionen

Three-Way-Handshake Bearbeiten

Dabei handelt es sich um ein Verfahren, bei dem zwei Systeme zu Beginn einer Datenaustauschsequenz eine Synchronisation des TCP-Dienstes durchführen.

Dieses Verfahren basiert auf drei Schritten:

1. Im ersten Packet übermittelt der Sender eine Synchronisationsanforderung (SYN) mit einer Sequenznummer: Seqn = X.

2. Der Empfänger schickt eine Sysnchronisationsbestätigung (ACK). Dazu wird die empfangene Synchronisationsnummer um 1 erhöht und als ACK = X + 1 mitgesendet. Gleichzeitig fordert der Empfänger seinerseits eine Synchronisation (SYN) an, die ebenfalls eine Sysnchronisationsnummer (Seq = Y)enthält.

3. Der Sender übermittelt eine Bestätigung (ACK). Dieses Packet enthält die eigene Synchronisationsnummer ( Seq = x + 1) und eine Bestätigungsnummer (ACK = Y + 1).

UDP Bearbeiten

Das User Datagram Protocol (UDP) ist ein verbindungsloses Protokoll das zur Transportschicht der TCP/IP-Protokollfamilie gehört und im Gegensatz zu TCP nicht auf Zuverlässigkeit ausgelegt ist. Dafür ist es sehr schnell und erzeugt nicht so eine hohe Netzlast wie sein großer Bruder TCP.

Der Vorteil gegenüber TCP liegt im deutlich verringerten Overhead. So kommt der Protokoll-Header mit der festen Grösse von 8-byte aus, und durch den Wegfall der Acknowledgment-Sendungen wird zusätzliche Bandbreite gespart.

UDP-Header Bearbeiten

Aufbau des Headers:

Source-Port, Destination-Port, UDP-Header-Längeninformation, Prüfsumme

Internet Protokoll (IP) Bearbeiten


IPv4 Bearbeiten

IPv4, früher einfach IP, ist die vierte Version des Internet Protocols (IP). Es war die erste Version des Internet Protocols das weit verbreitet und eingesetzt wurde und bildet eine wichtige technische Grundlage des Internets. Es wurde in RFC791 im Jahr 1981 von Jon Postel definiert.

Adressaufbau Bearbeiten

IPv4 benutzt 32-Bit Adressen, dadurch sind maximal 4.294.967.296 eindeutige Adressen möglich. IPv4-Adressen werden dezimal geschrieben (z. B. 80.130.234.185). Je nach dem welche Subnetmaske verwendet wird, besteht die Adresse aus einem Netzwerk und einem Adressteil.

In einem Klasse A Netz mit der Subnetmaske 255.0.0.0 besteht der Netzwerkteil aus 7 Bit (Theoretisch besteht er aus 8 Bit, da aber das erste Bit immer 0 ist wird mit 7 Bit gerechnet.) Das heißt das der Netzwerkteil bei einer Klasse A IP nur aus der ersten Oktett besteht. (10.0.0.254)

Adressklassen Bearbeiten
Klasse Adressbereich Subnetze Adressen
A 1.0.0.1 - 127.255.255.254 126 16777214
B 128.0.0.1 – 191.255.255.254 16384 65534
C 192.0.0.1 – 223.255.255.254 2097152 254
D 224.0.0.0 – 239.255.255.255 1441791 254
E 240.0.0.0 – 255.255.255.255 - -
Reservierte Bits Bearbeiten
Klasse A 0
Klasse B 1 0
Klasse C 1 1 0

In Klasse A ist ein Bit, in Klasse B 2 Bit und in Klasse C 3 Bit bereits reserviert.

Header Bearbeiten

Der Ipv4 Header ist in der Regel 20 Bytes lang. Jedoch ist es möglich durch weitere ungenutzte Optionen den Header auf bis zu 60 Bytes (in 4 Byte schritten) zu verlängern.

0 4 8 12 16 19 24 31
Version IHL Type of Service Länge
Identifikation Flags Fragment Offset
TTL Protokoll Prüfsumme
Quell IP-Adresse
Ziel IP-Adresse
evtl. Optionen ...


Feld Bedeutung Bitlänge
Version Version (IPv4/IPv6) 4 Bits
IHL IP-Header Length 4 Bits
TOS Type of Service 8 Bits
Gesamtlänge Länge des IP-Datagramms 16 Bits
Identifikation 16 Bits
Flags 3 Bits
Fragmentoffset 13 Bits
TTL Time to Live 8 Bits
Nutzlastprotokoll 1=ICMP, 2=IGMP, 6=TCP, 17=UDP 8 Bits
Kopfprüfsumme Prüfwert aus den vorausgegangenen 12 Oktetten. 16 Bits
Subnetting Bearbeiten

Die IP- Adresse setzt sich wie folgt zusammen:

192 . 168 . 18 . 9

11000000 .10101000 .00010010 .00001001

(Sowohl an den Bereich in dem die IP liegt, als auch an den ersten 3 Bit der Adresse kann man erkennen dass es sich um eine Klasse C IP handelt.)

Subnet Mask

11111111 .11111111 .11111111 .11000000

255 . 255 . 255 . 192

Man muss die Subnet Mask auf die IP- Adresse legen um so den Netz- und den Host- Anteil herauszufinden. Die 1 in der Subnet Mask gibt den Netzteil an, sobald die Kette einmal durch eine 0 unterbrochen wird müssen auch Nullen folgen. Die 0 gibt den Hostanteil an. Mit Subnetting kann man Netze aufteilen ohne sie Physikalisch voneinander zu trennen.

Für Beispiel oben könnten die IP- Adressen lauten:

Letztes Netz : Oktet Host : IP- Adresse Dezimal
00 : 1.....1 : 1-63
01 : 1.....0 : 64- 127
10 : 1.....0 : 128- 191
11 : 1.....0 : 192- 254

Díe Leute in 1-63 bilden ein eigenes Netz genau wie 64-127, 128- 191, 192-254.Nur die Teilnehmer die im gleichen IP-Bereich sind können sich untereinander "sehen" und Daten austauschen. Um so kleiner die Netze unterteilt werden desto größer wird auch der Verwaltungsaufwand.

Private Adressen Bearbeiten

Private Adressen bezeichnen IP Adressen bzw. Subnetmasken die im Internet nicht gerouted werden und deshalb von jedem für jeden Zweck verwendet werden können. Deshalb müssen Verfahren wie zum Beispiel NAT eingesetzt werden, um eine Adressumsetzung zu ermöglichen.

Man muss private IP-Adressen benutzen, weil

  • man aus Sicherheitsgründen die internen IP-Adressen verstecken will
  • man vom ISP nur eine IP-Adresse zugeteilt bekommt


Klasse Adressbereich Netzmaske CIDR-Schreibweise Anzahl der möglichen Adressen
A 10.0.0.0 - 10.255.255.255 255.0.0.0 10.0.0.0/8 16777216
B 172.16.0.0 - 172.31.255.255 255.240.0.0 172.16.0.0/12 1048576
C 192.168.0.0 - 192.168.255.255 255.255.0.0 192.168.0.0/16 65536

Reservierte IP Adressen Bearbeiten
Adresse Bedeutung
0.0.0.0 Standard-Ziel-IP für Routing
127.0.0.1 Loopback (eigener Host)

IPv6 Bearbeiten

IPv6, das Internet Protocol Version 6, ist der Nachfolger des gegenwärtig im Internet noch fast ausschließlich verwendeten Internet Protocol v4.

Adressaufbau Bearbeiten

Eine IPv6-Adresse ist 128 Bit lang (IPv4: 32 Bit). Damit gibt es etwa   IPv6-Adressen. Das bedeutet für jeden Quadratmillimeter (!) Erdoberfläche könnten ca. 667 Billiarden Adressen bereitgestellt werden.

IPv6-Adressen werden nicht mehr in dezimaler (zum Beispiel 80.130.234.185), sondern in hexadezimaler Notation mit Doppelpunkten geschrieben: 243f:6a88:85a3:08d3:1319:8a2e:0370:7344. Wenn eine 16-Bit-Gruppe den Wert 0000 hat, können die Ziffern weggelassen werden, so dass zwei Doppelpunkte aufeinander folgen. Wenn dann mehr als zwei Doppelpunkte aufeinander folgen, können diese auf zwei Doppelpunkte reduziert werden, solange es in der resultierenden Adresse nur einmal zwei aufeinander folgende Doppelpunkte gibt. 0588:2353::1428:57ab ist also das selbe wie 0588:2353:0000:0000:0000:0000:1428:57ab, aber 3906::25de::cade wäre nicht erlaubt, da zweimal zwei Doppelpunkte in der Zeichenkette vorkommen – ein Computer wüsste nicht, wo mit wie vielen Nullen aufzufüllen wäre.

Die ersten 64 Bit der IPv6-Adresse dienen üblicherweise der Netzadressierung, die letzten 64 Bit können zur Host-Adressierung verwendet werden – hiermit wird elegant das Konzept der Netzmasken von IPv4 implementiert. Bei Bedarf können auch andere Netzmasken eingesetzt werden.

Die korrekte Form einer IPv6-Adresse in einem URL ist http://[243f:6a88:85a3:08d3:1319:8a2e:0370:7344]/ .

Vorteile gegenüber IPv4 Bearbeiten
  • Der Adressraum beträgt   statt   Adressen.
  • Mehr Sicherheit (IPSec ist bereits integriert)
  • DHCP ähnliche Autokonfiguration
  • Quality of Service wird möglich

IPv9 Bearbeiten

Der an die Internetprotokolle IPv4 und IPv6 angelegte Name IPv9 steht für ein von der Volksrepublik China entwickeltes Internetprotokoll. Zur Zeit ist IPv9 jedoch noch kein offizielles Protokoll da es den Normierungsprozess der zuständigen Organisation IETF noch nicht erfolgreich durchlaufen hat.

Sollte IPv9 in China zum Einsatz kommen würde das ein vom Internet abgeschottetes Netzwerk bedeuten. Da es bei dieser Technik Übersetzungsknoten zum eigentlichen Internet bedarf, stellen diese einen logischen Punkt zur Netzwerküberwachung da. Dies lässt vermuten, dass diese Technologie von China zu Kontrollzwecken verwendet werden soll.

ICMP Bearbeiten

Ist die Abkürzung für: Internet-Control-Message-Protokoll. Dieses dient dem Austausch von Fehlermeldungen und Kontrollnachrichten zwischen Geräten auf IP-Ebene. ICMP-Nachrichten werden als Nutzlast um Datenbereich von IP-Paketen transportiert.

NetBIOS Bearbeiten

NetBIOS (Network Basic Input Output System) ist eine Programmierschnittstelle, die 1983 von IBM entwickelt wurde, um die Kommunikation zwischen zwei Programmen über ein Netzwerk zu ermöglichen.

Das Microsoft-Netzwerk basiert auf NetBIOS. Später wurde NetBIOS durch NetBEUI erweitert. Heutzutage wird NetBIOS als Transportprotokoll in Firmennetzen sehr selten eingesetzt.

NetBEUI Bearbeiten

NetBEUI (NetBIOS Extended User Interface) ist ein Netzwerkprotokoll.

Es ist auf dem Protokoll Server Message Block (SMB) aufgebaut. Der Protokollkopf ist 132 Bit groß. Es ist klein und schnell, aber leider nicht für große Netzwerke geeignet (ca. 10- 20 Benutzer), weil es nicht routbar ist. Es nutzt keine IP-Adressen, Basis für den Datentransport sind Hardware-Adressen (MAC-Adressen). Eine Identifizierung erfolgt nur per Hostname.

IPX/SPX Bearbeiten

IPX, Internetwork Packet eXchange, ist ein von Novell entwickeltes Netzwerkprotokoll.

Es wurde für das Netzwerkbetriebssystem (NOS) NetWare entwickelt und ist ein verbindungsloses proprietäres Protokoll mit Routing-Fähigkeiten. Mit Hilfe des Service Advertising Protocols (SAP) ist es möglich die innerhalb eines IPX-Netzwerks angebotenen Dienste zu finden. Funktionell entspricht IPX dem IP von TCP/IP, SPX entspricht dem TCP des TCP/IP.

Mit zunehmender Verbreitung des Internets Mitte der 90er, verloren die NetWare-Server an Bedeutung und auch das IPX-Protokoll wird heute kaum noch eingesetzt und wurde in den neueren Netware Versionen durch TCP/IP ersetzt. Es wird aber noch immer unterstützt.

WINS Bearbeiten

WINS oder auch Windows Internet Naming Service ist ein von Microsoft entwickeltes Protokoll das zur dynamischen Auflösung von NetBIOS-Namen dient. Seit Windows 2000 wird allerdings mehr auf das DNS Protokoll mit Active Directory gesetzt. WINS ist hauptsächlich wegen der abwärtskompatibilität noch vorhanden.