TCP/UDP und Varianten Seminar ... - Informatik 4
TCP/UDP und Varianten Seminar ... - Informatik 4
TCP/UDP und Varianten Seminar ... - Informatik 4
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
1 Einleitung<br />
Seit der Entstehung des ARPANET, dem Vorläufer des Internet, hat die Bedeutung heterogener Netzwerke<br />
stark zugenommen. Dabei auftretende Schwierigkeiten sind nicht nur das Vernetzen von sehr<br />
unterschiedlichen Rechnersystemen, sondern auch die verschiedenen Netzwerktopologien <strong>und</strong> die<br />
dadurch entstehende unterschiedliche Güte von Verbindungen im Netzwerk. Auch ist eine einheitliche<br />
Programmierschnittstelle unabdingbare Voraussetzung für ein heterogenes Netzwerk, denn es<br />
wird sich kaum ein Mensch die Arbeit machen wollen, sich für jedes erdenkbare System <strong>und</strong> jeden<br />
vorstellbaren Anwendungszweck mit anderen Schnittstellen vertraut zu machen. Daher wird ein flexibles<br />
Protokoll wie das Transmission Control Protocol (<strong>TCP</strong>) benötigt, ein verbindungsorientiertes<br />
Protokoll, dass die Dienste des Internet Protokoll (IP) nutzt, <strong>und</strong> eine Programmierschnittstelle zur<br />
Verfügung stellt, die es möglich macht, unabhängig von der Netzwerktopologie <strong>und</strong> der Verbindungsqualität<br />
zu programmieren. <strong>TCP</strong> ist mittlerweile für alle gängigen Systeme verfügbar, meistens ist es<br />
schon mehr oder weniger fest im Betriebssystem verankert.<br />
Da es in der Vergangenheit wegen zu hohem Datenverkehr zu Verbindungszusammenbrüchen kam,<br />
wurde es notwendig <strong>Varianten</strong> von <strong>TCP</strong> zu entwickeln, die vor allem zusätzliche Fluss- <strong>und</strong> Staukontrolle<br />
beherrschen, um Überlastungen des Netzwerks vorzubeugen.<br />
Neben dem verbindungsorientiertem <strong>TCP</strong> gibt es noch ein verbindungsloses Gegenstück, das User<br />
Datagram Protocol (<strong>UDP</strong>). Auf dieses Protokoll möchte ich zuerst eingehehen, da es nicht nur zeitlich<br />
vor <strong>TCP</strong> (wenn auch nur kurz) liegt, sondern auch auf der technischen Seite, allein schon aufgr<strong>und</strong><br />
der Verbindungslosigkeit einfacher ist.<br />
2 Gr<strong>und</strong>lagen<br />
Um einen Überblick zu erhalten, was ein in der Transportschicht angesiedeltes Protokoll leisten soll,<br />
ist ein kurzer Blick auf die Transportschicht unabdingbar.<br />
Die Transportschicht ist im ISO/OSI-Referenzmodell als vierte Schicht zwischen der Vermittlungsschicht<br />
<strong>und</strong> der Sitzungsschicht angesiedelt. Die <strong>TCP</strong>/IP Protkokollsuite macht eine grobere Aufteilung<br />
in nur vier Schichten, welche im Folgendem erläutert werden:<br />
Die unterste Schicht ist die Link-Schicht. Sie beinhaltet sehr hardwarenahe Dienste, wie zum Beispiel<br />
Netzwerkkartentreiber. Hier ist auch Address Resolution Protokoll (ARP) [5] enthalten, das für die<br />
Zuordnung von IP-Adressen zu Hardwareadressen (MAC) zuständig ist. Es schickt dazu ein Ethernet-<br />
Frame an alle Hosts in einem Netzwerk, in dem die MAC-Adresse zu einer IP-Adresse angefordert<br />
wird (ARP-Request), woraufhin sich der entsprechende Host meldet, indem er mit einem Ethernetframe<br />
mit der entsprechenden MAC- sowie IP-Adresse antwortet (ARP-Reply). ARP verwendet ein<br />
Cache, um Adressen für einen gewissen Zeitraum zwischenzuspeichern.<br />
In der Netzwerkschicht ist das Internet Protocol (IP) <strong>und</strong> das Internet Control Message Protocol<br />
(ICMP) interessant, denn vor allem auf die Dienste von IP baut die Transportschicht auf. Sie beinhaltet<br />
<strong>TCP</strong> <strong>und</strong> <strong>UDP</strong> <strong>und</strong> stellt den in der Application-Schicht zu findenden Anwendungen, wie z.B.<br />
FTP, Email, usw. einen Dienst bereit. Einer der Hauptgründe, Netzwerk- <strong>und</strong> Transportschicht zu<br />
3