Universität Karlsruhe Fakultät für Informatik Universität Karlsruhe

Proseminar Rechnerkommunikation und Telefon

Einführung in Netzwerk-Hardware und Netzwerk-Software

Thorsten Wieszt

Inhaltsverzeichnis

        1 Einleitung
        2 Anwendungsgebiete von Netzwerken
                2.1 Firmennetzwerke
                2.2 Netzwerke für Privatanwender
        3 Netzwerk-Hardware
                3.1. Übertragungstechniken
                        3.1.1 Broadcast-Netzwerke
                        3.1.2 Punkt-zu-Punkt-Netzwerke
                3.2 Local Area Networks
                3.3 Metropolitan Area Networks
                3.4. Wide Area Networks
                3.5 Drahtlose Netzwerke
                3.6 Internetworks - verbundene Netzwerke
        4 Netzwerk-Software
                4.1 Protokoll-Hierarchien
                4.2 Designeigenschaften von Schichten
                4.3 Schnittstellen und Dienste
                4.4 Verbindungsorientierte und verbindungslose Dienste
        5 Beispielnetzwerke
                5.1 Novell NetWare
                5.2 ARPANET
                5.3 NSFNET
                5.4 Das Internet
        Literatur

1 Einleitung

Millionen von Rechnern sind heute durch das größte aller Netzwerke, das Internet, miteinander verbunden. Die Bereitstellung von Diensten wie Email, dem World Wide Web, Chats und dem Usenet erfordern dabei spezielle Software und Hardware. Im Folgenden wird eine Einführung in diese Netzwerksoftware und Netzwerkhardware gegeben

2 Anwendungsgebiete von Netzwerken

2.1 Firmennetzwerke

Hier einige Vorteile von Computernetzwerken, die aus unternehmerischer Sicht wichtig sind:
  1. Gemeinsame Nutzung von Ressourcen: Oft sind in größeren Unternehmen Fertigungsstätten nicht an einem Platz konzentriert, sondern auf mehrere Städte oder Länder verteilt. Das Problem, dass nie alle Informationen immer an dem Ort sind, an dem Sie benötigt werden, lösen Netzwerke, indem sie den Zugriff auf Informationen von jedem Standort aus ermöglichen.
  2. Hohe Zuverlässigkeit und Ausfallsicherheit: Wichtige Daten können mehrfach kopiert und auf verschiedenen Maschinen und an getrennten Orten gespeichert werden. Außerdem ist es möglich, falls eine Maschine ausfällt, eine andere ohne Zeitverlust für diese einspringt. Damit kann die Verfügbarkeit von wichtigen Daten immer sichergestellt werden. Dies ist z.B. in Banken, in der Flugüberwachung und Atomkraftwerken von großer Bedeutung.
  3. Skalierbarkeit: Wenn die Kapazität eines Großrechners nicht mehr ausreicht, dieser aber schon voll ausgebaut ist, gibt es keine andere Möglichkeit, als unter großem finanziellem Aufwand einen leistungsfähigeren anzuschaffen. Unter der Prämisse, dass die Übertragungsbandbreite ausreicht, kann man Netzwerke sehr preiswert erweitern, indem man an noch freien Ports weitere Clients oder Server anschließt.
  4. Netzwerke zur Anwenderkommunikation: Netzwerke bieten in Unternehmen ganz neue Möglichkeiten der Anwenderkommunikation. Mit einer Email kann heute ein Abteilungsleiter seine ganze Abteilung erreichen. Mit Email und Diensten wie Newsgroups und Videokonferenzen lassen sich in Unternehmen Porto-, Telefon- und Fahrtkosten reduzieren.

2.2 Netzwerke für Privatanwender

Die Gründe für Privatanwender, den eigenen Rechner zu vernetzen, sind nicht die selben wie bei Wirtschaftsunternehmen. Hier einige der wichtigsten Punkte:
  1. Zugriff auf entfernt liegende Informationen (remote access): Diese Möglichkeit bot früher in Deutschland schon das BTX, das aber schnell vom Internet abgelöst wurde. Das Internet bietet dem Privatanwender neben einer unerschöpflichen Anzahl an Informationsquellen, die Möglichkeit seine Bankkonten online zu verwalten (Online-Banking), einzukaufen (Online-Shopping), sowie Auktionen und Aktienhandel. Das Internet ist auch das Medium der Wahl, wenn es darum geht eigene Inhalte zu publizieren.
  2. Kommunikation: Email ist inzwischen zu einer etablierten Kommunikationsform geworden. Man kann heute beinahe jede Behörde und jedes Unternehmen auch per Email erreichen. Email ist desweiteren schneller, einfacher und billiger als ein normaler Brief.
  3. Interaktive Unterhaltung: In der Zukunft wird Video-On-Demand eine weitere interessante Nutzungsmöglichkeit darstellten. Bei Video-On-Demand kann man sich im Internet aus einer großen Videodatenbank Filme aussuchen, und muss dann im Gegensatz zum Fernsehen nur die Filme bezahlen, die man dann tatsächlich auch sehen will. Diese werden dann von dem Internet-Videoserver auf den heimischen Computer heruntergeladen und können dann dort angesehen werden. Für eine halbwegs akzeptable Bild- und Tonqualität, sowie eine erträgliche Downloadzeit werden allerdings Übertragungsbandbreiten benötigt, bei denen ADSL mit 768Kbit/s das absolute Minimum darstellt. Wenn diese Übertragungsraten dem Privatanwender zur Verfügung stehen, wird zum Beispiel auch interaktives Fernsehen möglich, das dem Zuschauer die Möglichkeit gibt auf die laufende Sendung Einfluss zu nehmen. Inwieweit dies umgesetzt wird, hängt von den Sendeanstalten ab.

3 Netzwerk-Hardware

Es gibt kein Schema in das alle Netzwerktypen passen, aber es gibt zwei wichtige Dimensionen in der Netzwerktechnik: die Übertragungstechnik und die Größenordnung des Netzwerkes. Genauer gesagt, gibt es zwei Typen von Übertragungstechniken: die Broadcast-Netzwerke und die Punkt-zu-Punkt-Netzwerke.

3.1. Übertragungstechniken

3.1.1 Broadcast-Netzwerke

In einem Broadcast-Netzwerk teilen sich alle angeschlossenen Maschinen den gleichen Kommunikationskanal. Ein Datenpaket, das von einer Maschine gesendet wird, wird von allen anderen empfangen. Ein Adressbereich im Paket benennt den Empfänger. Jede Maschine überprüft die Empfängeradresse. Wenn die Adresse mit der eigenen übereinstimmt wird das Paket verarbeitet, ansonsten wird es verworfen. In Broadcast-Netzwerken ist es auch möglich, Pakete an alle Adressen zu schicken, indem im Adressbereich ein spezieller Code eingetragen wird. Dies wird als Broadcasting bezeichnet. Manche Broadcast-Netzwerke unterstützen auch ein Verfahren, mit dem man Pakete an bestimmte Teile des Netzwerkes senden kann. Dieses Verfahren nennt man Multicasting. Es wird realisiert, indem im Adressbereich des Pakets ein Bit für Multicasting reserviert wird. Ist dieses an, wird der übrige Adressbereich für eine Gruppennummer verwendet. So kann jeder Rechner beliebige Gruppen empfangen, oder nicht empfangen, indem er überprüft, ob er in der entsprechenden Gruppe eingetragen ist.

3.1.2 Punkt-zu-Punkt-Netzwerke

In Punkt-zu-Punkt-Netzwerken werden Computer nicht an einem gemeinsamen Bus angeschlossen, sondern werden direkt über ein eigenes Kabel an ein Verbindungsgerät angeschlossen. Dieses Verbindungsgerät leitet Pakete an die angeschlossenen Geräte weiter. Verbindungsgeräte können auch an weitere Verbindungsgeräte angeschlossen werden, so läßt sich ein Netzwerk mit Baumstruktur und mehreren Ebenen aufbauen. Ein Computer empfängt hier nur die Daten, die für ihn bestimmt sind. In Punkt-zu-Punkt-Netzwerken existieren meist mehrere Verbindungswege zwischen zwei beliebigen Computern. Auf dem Weg zum Empfänger kann ein gesendetes Paket an mehreren, in der Mitte liegenden Verbindungsgeräten vorbeikommen. Da oft verschiedene Routen, mit unterschiedlichen Weglängen möglich sind, werden Algorithmen eingesetzt die diese Weglängen minimieren. Meist wird bei geographisch kleineren Netzen Broadcasting verwendet und bei größeren Punkt-zu-Punkt.

Entfernung Ort Beispiel
1 m System Multicomputer
10 m Raum Local Area Network
100 m Gebäude
1 km Campus
10 km Stadt Metropolitan Area Network
100 km Land Wide Area Network
1000 km Kontinent
10000 km Planet Das Internet
Tabelle 1: Größenordnung der Netzwerke

Wie man in der Tabelle 1 sieht, stehen oben die Multiprozessorsysteme, bei denen mehrere Prozessoren über einen gemeinsamen Bus am Arbeitsspeicher hängen. Danach kommen die eigentlichen Netzwerke: Computer die über lange Kabel miteinander kommunizieren. Diese werden in vier Größenordnungen unterteilt: Local Area Networks (LAN), Metropolitan Area Networks (MAN), Wide Area Networks (WAN) und Internetworks. Als Internetworks werden Netzwerke bezeichnet, die sich aus mehreren großen Netzen zusammensetzen. Diese Größenordnungen werden unterschieden, da in jeder Größenordnung andere Netzwerktechnologien zum Einsatz kommen.

3.2 Local Area Networks

Local Area Networks, auch LANs, sind die am häufigsten anzutreffende Netzwerkart. Diese werden gerne in Firmen oder auch in Universitäten eingesetzt, und können eine Ausdehnung von einigen Kilometern erreichen. LANs unterscheiden sich von anderen Netzwerken in der Größe, in der Übertragungstechnik und in der Netzwerk-Topologie. Da diese Netzwerke eine begrenzte Größe haben und die im ungünstigsten Falle auftretende Sendezeit bekannt ist, kann man einfachere Netzwerktechniken einsetzen.

Die bei LANs verwendete Übertragungstechnik basiert oft auf einem einzigen Kabel an das alle verbundenen Rechner angehängt sind. Gängige Übertragungsleistungen sind 10 oder 100 Mbps, bei sehr geringer Verzögerungszeit (um die 10 µs) und sehr wenigen Netzwerkfehlern.


Bild 1: Netzwerk-Topologie: Bus und Ring

Sehr viele Variationen sind bei Broadcast-LANs möglich. Bild 1 zeigt zwei verschiedene Topologien: einen Bus, und einen Ring. Das Bus-System zeichnet sich dadurch aus, dass alle Rechner an ein und dem selben Kabel sitzen. Hier kann im gleichen Moment immer nur eine Maschine senden.

Ein Endscheidungsmechanismus ist notwendig, wenn mehrere Maschinen gleichzeitig senden wollen. Dieser kann zentralisiert oder auf alle Maschinen verteilt sein. Z.B. IEEE 802.3, normalerweise als Ethernet bezeichnet, ist ein Bus-basierendes Broadcast-Netzwerk, mit dezentraler Kontrolle und einer Übertragungsgeschwindigkeit von 10, 100 oder 1000Mbps.

Der zweite Netzwerktyp unter den Broadcast-Netzwerken ist der Ring. In einem Ring verbreitet sich jedes gesendete Bit von allein. Während ein Paket gesendet wird, kann es sein, dass einige Bits bereits den ganzen Ring umrundet haben, noch bevor das ganze Paket gesendet wurde. Wie bei anderen Broadcast-Systemen, werden auch hier Entscheidungsregeln beim gleichzeitigen Senden in den Ring benötigt. IEEE 802.5 (der IBM Token Ring) ist ein verbreitetes ring-basiertes LAN, mit einer Übertragungsrate von 4 oder 16 Mbps.

Bei Broadcast-Netzwerken wird zwischen statischen und dynamischen Netzwerken unterschieden, je nachdem wie der Datenkanal organisiert ist. Eine typische statische Einteilung wäre ein Datenkanal, der in Zeitintervalle aufgeteilt wird und jedem Rechner in fester Reihenfolge ein Zeitintervall zur Verfügung stellt (Round Robin Algorithmus). Dies vergeudet vorhandene Übertragungskapazität, denn Intervalle in denen der zugeteilte Rechner nichts sendet, bleiben ungenutzt. Daher verteilen die meisten Systeme den Datenkanal dynamisch.

Dynamische Zuteilungsverfahren für einen gemeinsamen Kanal, sind wiederum entweder zentralisiert, oder dezentralisiert. Beim zentralisierten Zuteilungverfahren gibt es eine einzige Entscheidungsinstanz, z.B. eine Bus-Einteilungs-Einheit (bus arbitration unit), welche festlegt, wer als nächstes dran ist. Dies könnte die Einheit realisieren, indem sie Rechneranfragen empfängt und dann Aufgrund eines internen Algorithmus entscheidet wer senden darf. In der dezentralisierten Methode gibt es keine solche Instanz, jede Maschine entscheidet selbst wann sie sendet, und wann nicht. Es gibt auch Punkt-zu-Punkt LANs, diese stellen aber eine Art Mini-WAN dar.

3.3 Metropolitan Area Networks

Metropolitan Area Networks, oder auch MANs sind im wesentlichen große LANs und verwenden die gleiche Netzwerk-Technik. Diese können z.B. eine Ansammlung von Büros oder eine ganze Stadt vernetzen. Ein MAN kann sowohl Daten- wie auch Telefondienste unterstützen, und kann z.B. auch auf ein lokales TV-Kabelnetz aufgebaut werden. Ein MAN hat nur ein bis zwei Kabel und hat keine Umschaltelemente, die Pakete an verschiedenen Ausgangsleitungen verteilen, dies vereinfacht wiederum das Design. Das einzige neue am MAN ist die die Netzwerkarchitektur DQDB (Distributed Queue Dual Bus, IEEE 802.6). Diese besteht aus zwei ungerichtet Bussen (Kabeln) an denen alle Computer angeschlossen sind, siehe Bild 2. Jeder Bus hat am Kopfende ein Gerät, das die Sende-Aktivität anzeigt. Datenpakete für einen Rechner rechts vom Sender wird der obere Bus benutzt, für einen links vom Sender der untere Bus. Der Hauptgesichtspunkt eines MANs ist, dass alle Rechner an einem einzigen Broadcast-Medium hängen (also ein oder zwei Kabel). Dies vereinfacht die Planung und Umsetzung erheblich gegenüber anderen Netzwerk-Typen.


Bild 2: DQDB - Distributed Queue Dual Bus

3.4. Wide Area Networks

Wide Area Networks überspannen große Gebiete wie Länder oder Kontinente. An diese Netzwerke ist eine große Anzahl von Hosts oder Endsystemen angeschlossen, den Rechnern, die von den Anwendern benutzt werden. Die Endsysteme sind durch ein Kommunikations-Subnetz miteinander verbunden. Die Aufgabe dieses Subnetzes ist die Weiterleitung von Datenpaketen, von einem Host zum nächsten. Durch die Trennung des Kommunikations-Aspekts (das Subnetz) vom Anwendungs-Aspekt (die Hosts), wurde der komplette Netzwerkaufbau wiederum vereinfacht.

In den meisten WANs besteht das Subnetz aus zwei verschiedenen Bestandteilen: Übertragungsleitungen, und Verbindungsgeräte. Übertragungsleitungen übertragen die Datenpakete zwischen den Rechnern. Die Verbindungsgeräte sind spezielle Computer, die mehrere Übertragungsleitungen miteinander verbinden. Wenn Daten an einer Eingangsleitung des Verbindungsgerätes ankommen, wählt das Verbindungsgerät eine Ausgangsleitung, um die Daten dorthin weiterzuleiten.

Diese Verbindungsgeräte werden allgemein als Router bezeichnet. Ein Router verbindet zwei Segmente logisch miteinander, wogegen ein Repeater zwei Segmente physikalisch verbindet. Daten für das lokale Segment gehen nicht über den Router hinweg, während ein Repeater unterschiedslos alle Daten weiterleitet [JK].

In diesem Modell (siehe Bild 3) ist jeder Hostrechner grundsätzlich in einem LAN eingebunden, in dem ein Router vorhanden ist. Es gibt natürlich Einzellfälle in denen ein Rechner direkt mit einem Router verbunden ist (z.B. bei großen Servern). Die Menge aller Router und Übertragungsleitungen bilden das Subnetz.


Bild 3: Ein Subnetz verbindet mehrere LANs.

Die meisten WANs haben eine größere Anzahl an Kabel- und Telefonverbindungen, von denen jede mit zwei Routern verbunden ist. Wenn zwei Router keine gemeinsame Verbindung besitzen, und diese miteinander kommunizieren möchten, müssen sie dies indirekt, über andere Router tun. In diesem Fall, wird das Paket von jedem dazwischenliegenden Router falls nötig zwischengespeichert und bei freier Ausgangsleitung weitergeleitet. Ein Subnetz, dass diese Vorgänge unterstützt, nennt man Speicher-und-Weiterleitungs-, oder Paket-Weiterleitungs-Subnetz. Mit Ausnahme von Netzen mit Satellitenverbindung, haben fast alle WANs Speicher-und-Weiterleitungs-Subnetze. Wenn Pakete klein und immer gleich groß sind, werden diese auch als Zellen (cells) bezeichnet.

Eine wichtige Fragestellung beim Entwurf eines Subnetzes ist, wie die Router topologisch angeordnet werden sollen. Lokale Netze haben normalerweise eine symmetrische Topologie. Bei WANs ist das kaum möglich, deswegen sind die meisten Netze unregelmäßig angeordnet.

3.5 Drahtlose Netzwerke

Mobile Computer wie Notebooks und PDAs (Persönliche Digitale Assistenten) sind das am schnellsten wachsende Marksegment im Computerbereich. Viele Besitzer dieser Geräte haben daneben auch vernetzte Computer, auf die sie auch Zugriff haben möchten, wenn Sie nicht im Büro oder zuhause sind. Da Kabelnetzwerke in Autos und Flugzeugen nicht einsetzbar sind, sind drahtlose Netzwerke in diesen Bereichen das Mittel der Wahl.

Drahtlose Netzwerke sind keine neue Erfindung. Bereits 1901 hatte der italienische Physiker Guglielmo Marconi einen drahtlosen Telegrafen vorgestellt. Da Telegrafen mit Punkt- und Strich-Codes auch Binärdaten übermitteln, kann man diese als Urform der Netzwerke bezeichnen [GW].

Die heutigen drahtlosen Netzwerke sind wesentlich leistungsfähiger, basieren aber auf der gleichen Idee. Drahtlose Netzwerke haben viele Anwendungsgebiete, wie z.B. das mobile Büro. Viele Leute, die geschäftlich oder privat viel unterwegs sind, möchten mit ihren mobilen Geräten nicht nur telefonieren, sondern auch Faxe empfangen, Emails abrufen und versenden, sich unterwegs in ihren Computern einloggen können, usw. In vielen Verkehrs- und Transportunternehmen gibt es großes Interesse an drahtlosen Netzwerken, um Daten mit dem Firmensitz abzustimmen und abzurufen. Es gibt viele weitere Anwendungsgebiete, wie z.B. beim Katastrophenschutz, oder beim Militär.

Drahtlose Netzwerke und mobile Computer haben nicht immer die selben Anwendungsgebiete. Um ein Notebook in einem Hotel an eine Telefondose anzuschießen ist kein drahtloses Netzwerk nötig. Andersherum ist es nicht nötig in einem Bürogebäude, das aus praktische Gründen ein drahtloses Netzwerk verwendet, unbedingt Mobilrechner zu verwenden. Es gibt aber auch Anwendungsgebiete wo beides sinnvoll ist, z.B. bei der Lagerhaltung in großen Lagerhäusern.

Obwohl drahtlose LANs sehr einfach zu installieren sind, haben sie doch einige Nachteile: Sie sind mit 1-2Mbps deutlich langsamer als normale LANs. Außerdem sind die Fehlerraten wesentlich höher als bei Kabel-Netzen und es kann bei mehreren sendenden Computern zu Störungen kommen. Die dritte Generation der drahtlosen Kommunikation wird mit Standards wie UMTS hohe Übertragungsraten für schnelle Internet-Zugriffe ermöglichen. Schon jetzt gibt es Standards wie HSCSD (high speed circuit switched data) mit dem Mobilfunkgeräte auf Übertragungsraten von bis zu 57,6kbps kommen, indem vier Zeitschlitze a 14,4 kbps gebündelt werden [NM]. Es gibt inzwischen auch neue, schnellere drahtlose Netzwerk-Standards wie LMDS (local mulitpoint distribution system) das über 500Mbps bietet. Die notwendigen Frequenzbereiche wurden bis jetzt nur in den USA freigegeben. [WD].

3.6 Internetworks - verbundene Netzwerke

Internetworks, oder kurz Internets sind verbundene Netzwerke. Diese haben aber nicht unbedingt etwas mit "dem Internet" zu tun. Das Internet ist ein riesiges Internetwork; daneben kann es aber trotzdem noch verbundene Netzwerke geben, die Internetworks sind, auch ohne dass sie an das Internet angeschlossen sein müssen. Schon zwei miteinander verbundene LANs sind ein Internetwork. Ein gewöhnliches Internetwork besteht aus einer Ansammlung von LANs, die durch ein WAN miteinander verbunden sind. Da Netzwerke mit ihrer Hard- und Software nicht immer kompatibel sind, gibt es sogenannte Gateways, das sind Rechner, die als Übersetzer zwischen den Netzwerken fungieren.

4 Netzwerk-Software

Die ersten Computernetzwerke wurden mit dem Hauptaugenmerk auf der Hardware entwickelt. Die Software hatte damals nur sekundäre Bedeutung. Heutzutage jedoch, wird um die neuen komplexen Netzwerkstrukturen und moderne Hardware optimal einzusetzen, eine effiziente und hochentwickelte Netzwerksoftware benötigt. In diesem Kapitel, wird es einen Einblick in die Theorie der Netzwerksoftware geben.

4.1 Protokoll-Hierarchien

Um die Komplexität der Netzwerk-Software zu reduzieren, wird diese meist als ein Stapel von Schichten (layers) angelegt, von denen jede Schicht auf eine darunterliegende aufbaut. Die Anzahl und Funktion dieser Schichten kann von Netzwerk zu Netzwerk unterschiedlich sein. Die Aufgabe dieser Schichten ist es, höheren Schichten Dienste anzubieten, ohne dass diese höheren Schichten im Detail wissen müssen, wie diese Dienste implementiert wurden.

Damit zwei Schichten der Ebene n von zwei verschiedenen Rechnern miteinander kommunizieren können, benötigen diese ein sogenanntes Schicht n Protokoll. Ein Protokoll ist ein Regelwerk wie der Kommunikationsverkehr auszusehen hat, damit dieser von beiden Partnern verstanden wird. Ein 4-Schichten-Netzwerk wird im Bild 4 gezeigt. Zwei miteinander korrespondierende Schichten, von verschiedenen Rechnern, werden als Peers (Gleichrangige) bezeichnet.


Bild 4: Schichten, Protokolle und Schnittstellen

Tatsächlich sprechen zwei Ebene-n Schichten nicht direkt miteinander. Die Schichten geben die zu sendenden Daten und Kontrollinformationen lediglich an die nächst niedrigere Schicht weiter, bis die unterste Software-Schicht erreicht ist. Diese gibt die Daten dann an das physikalische Medium weiter. Im Bild 4 ist diese virtuelle Kommunikation durch gestrichelte Linen dargestellt.

Jede Schicht die über einer anderen liegt, hat eine Schnittstelle (interface) zu der darunterliegenden. Die darunterliegende Schicht bietet über diese Schnittstelle ihre Dienste der oberen an. Wenn die Schnittstelle so angelegt ist, dass nur die notwendigsten Informationen ausgetauscht werden müssen, kann die darunterliegende Schicht mit geringerem Aufwand gegen eine andere ausgetauscht werden, denn die neue Schicht muss nur die gleichen Dienste anbieten wie die alte Schicht.

Eine Ansammlung von Schichten und Protokollen nennt man Netzwerk-Architektur. Die Spezifikation einer Netzwerk-Architektur legt die benötigten Schichten und Protokolle fest. Die Schnittstellen und die Umsetzung sind dabei egal, solange jede Maschine korrekt mit dem Protokollen umgehen kann. Eine Anzahl von Protokollen in einem System, bei denen jedes Protokoll in einer eigenen Schicht steckt, nennt man Protokoll-Stapel (protocol stack).

Hier ein Beispiel zur Kommunikation in einem fünf Schichten Netzwerk: Eine Nachricht M wird von einer Anwendung an Schicht 4 zum Versand übergeben. Schicht 4 hängt der Nachricht vorn einen Datenkopf für Nachrichten-Identifizierung an und gibt sie an Schicht 3 weiter. Der Datenkopf enthält Kontrollinformationen wie z.B. Sequenznummern, damit Schicht 4 beim Empfänger die Nachricht in die richtige Reihenfolge bringen kann, falls die niedrigeren Schichten nicht auf die Reihenfolge achten. In manchen Schichten werden den Datenköpfen auch andere Informationen, wie die Größe und die Uhrzeit angehängt. In den meisten Netzwerken gibt es in der 4. Schicht keine Größenbeschränkung bei den zu übertragenden Nachrichten, dafür aber fast immer in der darunterliegenden 3. Schicht. Folglich muss die 3. Schicht die Nachricht in kleinere Pakete zerhacken und jedes Paket mit einem Datenkopf versehen, damit diese wieder zusammengesetzt werden können. Des weiteren entscheidet die 3. Schicht, welcher Ausgangskanal gewählt wird und gibt die Pakete an Schicht 2 weiter. Die 2. Schicht hängt nicht nur einen Datenkopf, sondern auch ein Endstück an und gibt das ganze an Schicht 1 zur physikalischen Übertragung weiter. An der Empfängermaschine angekommen, wandert die Nachricht in den Schichten nach oben. Je nach Schicht wird die Nachricht wieder zusammengesetzt, richtig angeordnet und die Datenköpfe entfernt. Jede Schicht entfernt ihre spezifischen Datenköpf, bevor die Nachricht nach oben weitergereicht wird.

Das Wichtige am Bild 4 ist, dass der Unterschied zwischen virtueller und echter Kommunikation und der Unterschied zwischen Protokollen und Schnittstellen klar wird. Der Peer-Prozess in der 4. Schicht als Beispiel, sieht vom Konzept her so aus, als würde der Nachrichten-Austausch, mit Hilfe des Schicht-4-Protokolls, horizontal ablaufen. Jede Seite benutzt programmiertechnisch Methoden wie SendeAufDieAndereSeite oder EmpfangeVonDerAnderenSeite. Die Methoden kommunizieren jedoch trotzdem über die 4-3-Schnittstelle mit der 3. Schicht und nicht mit der anderen Seite.

Dieser Peer-Prozess ist trotzdem entscheidend für jede Entwicklung im Netzwerk-Bereich. Indem solche Vereinfachungen benutzt werden, kann der riesige Entwicklungsaufwand, den ein komplettes Netzwerk darstellt, in viele kleine Teile aufgeteilt werden und einfacher gelöst werden. Dadurch können dann z.B. auch Schichten individuell ausgetauscht und zugeschnitten werden.

Obwohl es hier um Software geht, muss erwähnt werden, dass die Schichten 1-3 normalerweise in die Netzwerk-Hardware integriert sind. Nichtsdestotrotz sind komplexe Protokoll-Algorithmen enthalten, die aber in Bausteine eingebettet sind.

4.2 Designeigenschaften von Schichten

Es gibt einige Eigenschaften, die viele Schichten gemeinsam haben. Im Folgenden sollen einige davon beschrieben werden.

Jede Schicht benötigt einen Mechanismus, mit dem sie Sender und Empfänger identifizieren kann. Normalerweise haben Netzwerke mehrere Rechner, auf denen mehrere Prozesse gleichzeitig ablaufen. Ein Programm muss also genau mitteilen können, mit wem es kommunizieren will. Da es mehrere Empfänger gibt, muss es also eine Adressierungsart geben, mit dem ein bestimmter Prozess in einem bestimmten Rechner erreicht werden kann.

Eine andere Designfrage ist die Festlegung von Regeln für den Datentransfer. In manchen Systemen kann man Daten nur in eine Richtung verschicken (Simplex- Kommunikation). In anderen Netzwerken können zwar Daten in beiden Richtungen verschickt werden, jedoch nicht gleichzeitig (Halb-Duplex) und in nochmals anderen geht beides gleichzeitig (Voll-Duplex). Das Protokoll legt außerdem fest, auf wievielen logischen Kanälen korrespondiert wird und welche Priorität diese haben. Die meisten Netzwerke haben zumindest zwei Kanäle pro Verbindung: einen für normale Daten und einen für dringende Daten.

Fehlererkennung und Korrektur ist auch ein wichtiger Bereich, da die Übertragungswege nicht perfekt sind. Es gibt einige gängige Fehlererkennungs- und Korrektur-Algorithmen, jedoch müssen sich beide Kommunikationspartner abstimmen, welcher verwendet werden soll. Außerdem muss der Empfänger dem Sender noch mitteilen können, welche Pakete fehlerhaft angekommen sind. Nicht alle Kommunikationskanäle behalten bei den gesendeten Paketen die richtige Reihenfolge bei. Das verwendete Protokoll muss dann dafür sorgen, dass der Empfänger die empfangenen Pakete wieder in die richtige Reihenfolge bekommt. Eine einfache Möglichkeit ist, einfach jedes Paket zu nummerieren.

Eine weiteres Problem ist, wenn der Sender Pakete schneller sendet, als der Empfänger empfangen kann. Ein Weg ist, den Sender über den momentanen Status zu informieren, ein anderer ist, eine Übertragungsrate mit dem Sender auszuhandeln.

Oft haben Empfänger das Problem, dass sie mit der vom Sender gewählten Paketgröße nichts anfangen können. Daraufhin muss der Sender die Pakete neu stückeln und nochmals senden. Eine weitere wichtige Frage ist, ob es besser ist, bei kleinen Datenmengen nicht vollständig gefüllte Pakete abzusenden, oder solange Daten zu sammeln, bis ein Paket voll ist. Dies hängt jeweils vom Netzwerk und den Applikationen ab, die verwendet werden.

Wenn es zu umständlich oder zu teuer ist, für jede auf einem Rechner laufende Netzwerk-Anwendung, eine eigene Verbindungsleitung einzurichten (was normalerweise der Fall ist), wird die unter diesen Prozessen liegende Schicht versuchen, alle Verbindungen über die vorhandene Verbindungsleitung herzustellen. Solange dieses Multiplexen und Demultiplexen nachvollziehbar vor sich geht, kann dies von jeder Schicht verwendet werden. Das Multiplexen wird in der physikalischen Schicht umgesetzt, wenn der ganze Datenverkehr von verschiedenen Verbindungen über wenige Drähte ablaufen soll.

Wenn es mehrere Verbindungswege zwischen Quelle und Ziel gibt, muss ein Verbindungsweg gewählt werden. Diese Entscheidung wird manchmal sogar von mehreren Schichten getroffen. Zum Beispiel, könnte eine höhere Schicht festlegen, welche Länder für die Verbindung in Frage kommen, und ein niedrigere Schicht wählt dann den konkreten Verbindungsweg aus.

4.3 Schnittstellen und Dienste

Die aktiven Elemente in einer Schicht werden als Einheiten (entities) bezeichnet. Eine Software-Einheit kann z.B. ein Programm oder eine Methode sein, und eine Hardware-Einheit könnte z.B. ein Ein-und-Ausgabe-Chip sein. Einheiten, die sich in der selben Schicht, aber auf verschiedenen Rechnern befinden werden als gleichrangige Einheiten (peer entities) bezeichnet. Die Einheiten der Schicht n stellen der Schicht n+1 Dienste zur Verfügung. In diesem Fall ist die Schicht n der Dienstleister und n+1 der Nutzer. Um diese Dienste anbieten zu können, muss die Schicht n auf die Dienste der Schicht n-1 zurückgreifen.

Dienste werden an sogenannten SAPs (service access points; Dienstzugriffspunkte) angeboten. Die Schicht-n SAPs sind die Stellen, an denen die Schicht n+1 auf diese Dienste zugreifen kann. Jeder SAP hat eine eindeutige Adresse. Die SAPs sind vergleichbar mit Telefonsteckdosen, in die man ein Telefon einstecken kann, die dazugehörenden Telefonnummern sind die SAP-Adressen.

Wenn zwei Schichten miteinander Daten austauschen möchten, müssen sich beide Schichten über ein Protokoll zum Datenaustausch über die Schnittstelle einig sein. Bei einer typischen Schnittstelle übergibt die Schicht n+1 der Schicht n ein Schnittstellen-Datenpaket (IDU; interface data unit) über den SAP. Das Schnittstellen-Datenpaket besteht aus einem Nutzdatenpaket (SDU; service data unit) und einigen Steuerinformationen. Das Nutzdatenpaket, das die zu übertragenden Daten enthält, wird dann durch das Netzwerk zum Zielcomputer geschickt, wo das gleichrangige Gegenüber (peer entity) in der Schicht n das Paket zur Schicht n+1 nach oben weiterleitet.

Wenn Datenpakete in mehrere Nutzdatenpakete aufgespaltet werden müssen, müssen separate Protokolldateneinheiten (PDU; protocoll data units), die Steuerinformationen enthalten, mit übertragen werden. Diese Einheiten beinhalten z.B. Nummerierungen und Zähler, damit die zerstückelten Pakete in der gegenüberliegenden Einheit wieder zusammengesetzt werden können.

4.4 Verbindungsorientierte und verbindungslose Dienste

Schichten können den darüberliegenden Schichten verbindungsorientierte und verbindungslose Dienste anbieten. Die Verbindungsorientierte Datendienste funktionieren ähnlich wie ein Telefonsystem. Es wird eine Verbindung aufgebaut, verwendet und dann wieder geschlossen. Der Datentransfer läuft wie bei einem Schlauch: Was auf der einen Seite hineingepumpt wird, kommt auf der anderen Seite wieder heraus. Im Gegensatz dazu, funktioniert der verbindungslose Datendienst wie ein postalisches System. Jede einzelne Nachricht erhält die Adresse des Empfängers und wird durch das Netzwerk geleitet. Dabei kann es natürlich vorkommen, das Pakete sich gegenseitig überholen, weil sie unterschiedliche Wege nehmen können. Dies ist bei verbindungsorientierten Diensten nicht möglich.

Alle Dienste können durch ihre Qualitätsmerkmale (quality of servie) unterschieden werden. Einige sind z.B. besonders sicher gegen Datenverlust, bei anderen sendet der Empfänger bei empfangenen Nachrichten eine Empfangsbestätigung zurück. Dies erzeugt zusätzliche Netzwerkbelastungen und kann auch zu Zeitverzögerungen im Netzwerk führen, deswegen muss man abwägen, welche Merkmale benötigt werden und welche nicht.

Zwei sichere, verbindungsorientierte Datendienste sind Nachrichtensequenzen und Bytestreams. Der Unterschied zwischen diesen beiden Verfahren ist, dass Nachrichtensequenzen Abgrenzungen (z.B. zwischen Dateien) aufrecht erhalten, während Bytestreams einen einzigen Datenstrom erzeugen, der z.B. der Fernsteuerung eines Computers dient.

Der bekannteste verbindungslose Datendienst ist Email. Gesendet wird normalerweise ohne Empfangsbestätigung. Ein solcher Datendienst wird auch als Datagramm Service bezeichnet. Die sicherere Variante mit Empfangsbestätigung wird als Aknowledged Datagramm Service bezeichnet. Daneben gibt es dann noch den Request-Reply Service z.B. für Datenbankabfragen.

5 Beispielnetzwerke

5.1 Novell NetWare

Novell NetWare wurde entwickelt um alte Mainframe-Systeme in Unternehmen durch neue effizientere PC-Netzwerke zu ersetzen. In solchen Systemen hat jeder Benutzer einen Desktop-Rechner, der als Client fungiert. Daneben gibt es mehrere hochgerüstete PCs, die als Server dienen. Diese stellen den Clients Datei- und Datendienste zur Verfügung. Novell NetWare basiert also auf dem Client-Server Modell. Der NetWare Protokoll-Stack baut auf das Xerox Network System (XNS) auf. Als physikalische Datenverbindung werden verschiedene Industriestandards, wie Ethernet und Token Ring unterstützt.


Bild 5: Der NetWare Protokoll-Keller

Die Netzwerk-Schicht basiert auf dem IPX Protokoll (Internet Packet eXchange), das dem IP Protokoll sehr ähnlich ist, jedoch besitzt es einen wesentlich größeren Adressraum als IP (12Byte bei IPX, 4Byte bei IP).

In der, über der Netzwerk-Schicht liegenden, Transport-Schicht befindet sich das Herzstück von NetWare, das NCP (Network Core Protocol). Dieses Protokoll bietet neben reinem Datentransfer auch zahlreiche andere Dienste. Daneben befindet sich noch ein reines Transportprotokoll: SPX (Sequenced Packet eXchange), und sogar TCP ist optional möglich.

5.2 ARPANET

Das ARPANET, einer der Vorläufer des Internet, wurde Mitte der 60er auf einem der Höhepunkte des Kalten Krieges aufgebaut, da das amerikanische Verteidigungsministerium ein Netzwerk haben wollte, das einen Atomkrieg überstehen kann.

Das ARPANET war das erste Paket-orientierte Netzwerk. Es hatte auch ein Subnetz, das mit Minicomputern realisiert wurde. Von diesen Minicomputern, genannt IMPs (interface message processors), war jeder mit mindestens zwei anderen verbunden. Wenn eine Datenleitung zusammenbrach, konnten die Pakete über eine andere Route dennoch ihr Ziel erreichen.

Es gab für die Subnetz- und die Host-Rechner separate Softwaresysteme. Die Host-Rechner hatten ein Host-zu-Host Protokoll. Da die Hosts aber nicht direkt miteinander verbunden waren, setzte dieses dann auf ein Host-zu-IMP Protokoll auf. Im Subnetz hatten die IMPs ein Host-zu-IMP Protokoll, ein IMP-zu-IMP-Protokoll und ein Protokoll für den Datenaustausch zwischen zwei IMPs die nicht direkt miteinander verbunden sind, dies baute wieder auf das IMP-zu-IMP-Protokoll auf.

Da die ARPANET-Protokolle nicht dafür geeignet waren, über mehrere Netzwerke zu laufen, wurden diese 1974 durch das TCP/IP-Protokoll ersetzt. 1983 hatte das ARPANET über 200 IMPs und hunderte von Hosts. Der militärische Teil des ARPANET wurde zu diesem Zeitpunkt zum MILNET abgespalten, blieb aber noch mit Gateways an das ARPANET angeschlossen. Das ARPANET wurde 1990 von anderen Netzwerken abgelöst und abgeschaltet.

5.3 NSFNET

Da viele Universitäten keinen Forschungsauftrag vom amerikanischen Verteidigungsministerium erhielten und ihnen somit der Zugang zum ARPANET verwehrt war, mussten diese eine eigene Netzwerklösung entwickeln. Deswegen richtete die NSF (National Science Foundation) 1970 ein virtuelles Netzwerk, das CSNET ein. Dieses bestand aus einem einzigen Rechner, der einen Zugang zum ARPANET hatte und Einwählmöglichkeiten für die Universitäten über Telefonanschlüsse bot. Die Universitäten konnten über diesen Rechner Emails abschicken und abrufen.

1984 fing die NFS an, den Nachfolger des ARPANET zu entwickeln, der dann allen Wissenschaftsgruppen der Universitäten den Zugriff ermöglichen sollte. Den Anfang machte ein Netzwerk-Backbone an das sechs Supercomputer-Zentren angeschlossen wurden. Dies Supercomputer waren aber nicht direkt miteinander verbunden, sondern jedem Supercomputer wurde ein Microcomputer unterstellt, der als Fuzzball bezeichnet wurden. Das Subnetz wurde aus diesen Fuzzballs und 56kbit-Telefonleitungen gebildet, das von Anfang an TCP/IP verwendete. Das komplett ausgebaute Netzwerk, an das zahlreiche Universitäten und Forschungszentren angeschlossen wurden, wurde dann als NSFNET bezeichnet.

Das NSFNET-Backbone wurde im Laufe der Jahre mehrfach durch schnellere ersetzt, zuletzt 1990 durch das ANSNET mit 45Mbps. 1995 wurde das ANSNET-Backbone dann an America Online verkauft, da es inzwischen zahlreiche kommerzielle IP-Netzwerke gab und das NSFNET-Backbone somit überflüssig wurde.

5.4 Das Internet

Nachdem das ARPANET und NSFNET miteinander verbunden wurden und TCP/IP sowieso das einzige offizielle Protokoll war, fing dieses Internetwork an exponentiell zu wachsen. Einen wichtigen Anteil am Wachstum des Internet hatte der Anschluss von zahlreichen anderen großen Netzen, wie dem NASA-Netzwerk, dem IBM Mainframe Netzwerk und der europäischen Netzwerke. Das Internet bot ursprünglich vier Anwendungen:

  1. Email: Elektronische Briefe die mit Computern versendet und empfangen werden können. Diese können neben Texten auch Multimedia-Inhalte und Dateien enthalten.
  2. News: Newsgroups, eine Art Nachrichtenverteiler, der auf Emails basiert, in dem sich Interessensgruppen über bestimmte Themen austauschen können.
  3. Remote login: Fernzugriff auf Computer, z.B. mit Telnet. Damit kann man nicht nur auf die Daten des Rechners zugreifen, man kann auch Programme ausführen und den Computer fernsteuern.
  4. Datentransfer via FTP (File Transfer Protocol)
In den frühen Neunzigern kam eine fünfte Anwendung hinzu: das WWW (World Wide Web). Dies wurde vom CERN-Wissenschaftler Tim Berners Lee entwickelt und ermöglicht die Darstellung von Informationsseiten, in die sich Texte, Bilder und andere Multimedia, sowie Verknüpfungen zu anderen Dokumenten, einbetten lassen. Dank des rasanten Wachstums des Internet wurden diese Anwendungen schnell ausgebaut und erweitert. Es kommen heute immer noch weitere Dienste hinzu.

Literatur

  [Universität Karlsruhe] [Institut für Technische Informatik] [E-Mail an Autor]  
Letzte Änderung: 2001-02-09 10:49:20