RN1 V50.fm - Informatik an der TU Clausthal

Werbung
Vorlesung Rechnernetze I
Prof. Dr. Harald Richter
Die Vervielfältigung oder Weitergabe des Skripts ist nur mit Genehmigung des Verfassers gestattet.
Alle Rechte liegen beim Verfasser.
1
1 Entwicklung der Kommunikationstechnik
Ursprünge:
Informationstyp:
Transportmedium:
Übertragungstechnik:
Fortschritt:
Protokoll:
Zukunft:
TV (Fernsehen)
Telex (Fernschreiber =
Vorläufer zu FAX)
Video
Funkwellen: terrestrisch/Satellit + KoaxAntennen:
Parabol,
Stab, ...
DVB-T,
DAB
Zeichen/Daten
Koax- und
Glasfaser
verdrilltes
(schnell)
Kupferkabel
LANs:
Ethernet,
TokenRing, ...
MANs:
FDDI,
DQDB,
...
High-speed
LANs: 1G-,
10G Ethernet
DVB-T/DAB-Proto-
IP-Protokoll
Telefon
Sprache
Glasfaser
WAN:
SONET/
SDH
verdrilltes
Kupferkabel
S-ISDN
B-ISDN
ATM-Protokoll
IBCN (Integrated Broadband Communication Network):
weltweites Mobil-/Festnetz + Internet + Multimedia
2
2 Ziele von Rechnernetzen

Datenverbund
• = Zugriff auf entfernte Dateien über Middleware wie z.B. das Network File System (NFS)

Funktionsverbund
• = Zugriff auf besondere Rechner wie z.B. Web-Server, Datenbank-Server

Lastverbund
• = Gleichmäßige Verteilung der Rechnerlast über Middleware wie z.B. beim Grid/Cloud
Computing

Verfügbarkeitsverbund
• = Fehlertoleranz

Speziell für das Internet gilt zusätzlich:
• Informationsverbund = riesiges Lexikon weltweit verteilter Informationen
• Kommunikationsverbund = Infrastruktur für Handel und Dienstleistungen wie z.B. eCommerce
3
Klassifikation von Netzen nach der Distanz
keine
Rechnernetze
GrößenordProzessororte
nungen der
Entfernungen
(ca.-Werte)
Bezeichnung
0,1 m-10 m
Multiprocessor, Multicomputer, Parallelrechner
Platine
Rechnersystem
10 m-10 km
Raum
Gebäude
Local Area Network (LAN), Beispiel
Ethernet
Campus, Fabrik
Rechnernetze
10 km-100km Stadt, Region
Metropolitan Area Network (MAN), Beispiel FDDI
100 km100000 km
Wide Area Network (WAN), Beispiel
Internet
Land
Kontinent
Planet

Man unterscheidet zwischen lokalen Netzen (LAN = Local Area Network), Stadtnetzen
(Metropolitan Area Network) und Weitverkehrsnetzen (WAN = Wide Area Network)
4
3 Standardmodell der Kommunikation:
Das ISO-7-Schichtenmodell für Offene Systeme






Wurde Anfang 1970er Jahre von der OSI entworfen. OSI = OPEN SYSTEMS INTERCONNECTION = Untergruppe der ISO
Einführung von neuen Grundbegriffen (= Terminologie)
Einführung eines verbindlichen Modells für geschichtete Kommunikation
Das ISO-7-Schichten-Modell schlägt sieben Schichten und deren Funktionalität vor.
Jede Schicht hat bei der Datenübertragung einen eigenen Satz von Aufgaben zu übernehmen.
Datenaustausch ist nur zwischen benachbarten Schichten möglich, nicht kreuz und
quer
Im Internet wurden vom ISO-7-Schichten-Modell nur Schicht 1-4 und Schicht 7 implementiert
5
3.1
Blockschaltbild der Kommunikation im ISO-7-Schichtenmodell
Rechnersystem i
Anwendungs
Prozess X1
===
Rechnersystem j
Anwendungs
Prozess Xn
Anwendungs
Prozess Y
Bsp.: BSDSocket Schnittstelle
Bsp.: WinSocket Schnittstelle
Kommunikationssystem nach
OSI-Standard
Kommunikationssystem nach
OSI-Standard
physikalisches
Medium
Verbundene Systeme
6
3.2
Grober Aufbau des ISO-7-Schichtenmodells
Schicht 1 - 4

• Bit-und Nachrichtentransfer durch Datenrahmen (frames) bzw. Pakete (packets); keine höheren Funktionen
• Inhalt der Daten ist ohne Bedeutung für die transportorientierten Schichten. Kein Bezug auf die Kooperationsbeziehung der Teilnehmer.


Schicht 5 - 7
Transportorientierte Schichten = Schichten 1-4: Technische Erbringung von Übertragungen durch:
Anwendungsorientierte Schichten = Schichten 5-7: Anwendungsbezogene Kommunikationsdienstleistungen
Kooperation der Teilnehmer wird berücksichtigt durch:
•
•
•
•
•
Steuerung des Ablaufs (Sitzungssteuerung)
Informationsdarstellung (verschiedene Zeichensätze und Datenformate)
Kompensation von Fehlverhalten (Neustart eines Downloads bei Fehler)
Datenverschlüsselung (Kryptographie)
Datenkompression (JPEG, MPEG, MP3)
7
3.3
Feiner Aufbau des ISO-7-Schichtenmodells
ist anders aufgebaut
als System A
 heterogenes Rechnernetz
Endsystem A
beliebige räumliche Entfernung
Teil des Betriebssystems in
Form von Bibliotheken
Teil der Rechner-Hardware
3.4
Endsystem B
Anwendungsschicht
Anwendungsspezifische Programme
7
Darstellungsschicht
Datenformatierung und -darstellung
6
Sitzungsschicht
Dialogsteuerung
5
Transportschicht
Ende-zu-Ende-Datenaustausch
4
Vermittlungsschicht
Ende-zu-Ende-Vermittlung
3
Sicherungsschicht
Nur zwischen benachbarten Rechnern
2
Physikalische Schicht
Physikalische Übertragung
1
Aufgaben der Schichten des ISO-Modells
1.) Die Bitübertragungsschicht ermöglicht die transparente Übertragung eines Stroms
8
binärer Informationen über ein Kabel aus Kupfer oder Glasfaser oder über Funk (=
ungesicherter Bitstrom + mech. u. el. Spezifikation der Strecke)
2.) Die Sicherungsschicht regelt den Zugang zur Schicht 1, entdeckt Übertragungsfehler
und bremst zu schnelle Sender (= gesicherte Bits + Zugang + Flusssteuerung) jeweils
zwischen benachbarten Rechner
3.) Die Vermittlungsschicht wählt eine Netz-Route von Rechner zu Rechner über Zwischenknoten aus (= Wegewahl)
4.) Die Transportschicht übermittelt die Daten von Sendeprozess zu Empfangsprozess,
d.h. von Ende-zu-Ende. Sie entlastet den Benutzer von den Details der Datenübertragung, z.B. durch Sicherstellung der Paketreihenfolge.
5.) Die Kommunikationssteuerungsschicht vereinfacht die Zusammenarbeit zwischen
den kommunizierenden Anwendungsprozessen z.B. durch Wiederanlauf (Neustart,
recovery); legt full-/halfduplex Übertragungsmodus fest.
6.) Die Darstellungsschicht transformiert u.a. die Daten in eine Form, die von beiden
Anwendungsprozessen verstanden wird und komprimiert und verschlüsselt optional
(= Datenformate + Kompression + Verschlüsselung)
7.) Die Anwendungsschicht enthält Benutzeranwendungen. Sie ist sehr groß (Bsp.: >105
apps)
9
3.5

Terminologie und grundlegende Prinzipien im ISO-Modell
Offenes System für die Kommunikationsteilnehmer
• jedes Rechnersystem aus Hardware, Software und Peripherie, das sich an die OSI-Standards hält, kann kommunizieren.

N-Schicht (1N  7):
• wird aus sämtlichen Programmen der Schicht N in allen offenen Systemen gebildet.
Analogie: dieselben Stockwerke Nr. N aller Gebäude der Welt bilden die N-Schicht.

N-Instanz (N-Entity):
• Ganz bestimmte Implementierung einer Funktion der Schicht N auf einem System
• Es kann auf demselben Rechner mehrere N-Instanzen geben, die unterschiedliche Protokolle implementieren; Bsp. TCP u. UDP

Partnerinstanzen (Peer-Entities):
• Instanzen derselben Schicht auf verschiedenen Rechnern. Peer-Entities erfüllen die Funktionen einer Schicht durch Datenaustausch von peer zu peer
peer = Gleichgestellter, d. h. einer, der der gleichen (Adels)schicht angehört
3.6

Was macht eine Schicht im ISO-Modell?
Hauptaufgabe jeder Schicht ist es, der darüber liegenden Schicht Dienste (= Funktionen) anzubieten. Diese Dienste setzen sich zusammen aus:
• Dienstleistungen, die innerhalb dieser Schicht erbracht werden und
10
• der Summe der Dienstleistungen aller darunter liegenden Schichten



Schichten sind über Dienste miteinander verknüpft. Sie bilden die Schnittstelle zwischen den Schichten. In der Software-Entwicklung heißt diese Schnittstelle application
programming interface, API
Dienste bestehen wiederum aus Dienstelementen (= Unterprogrammaufrufen)
Da Schichten jeweils aufeinander aufbauen, ergibt sich eine Hierarchie von Diensten,
deren Umfang mit der Schichthöhe zunimmt
11
3.7
Hierarchie von Diensten im ISO-Modell
Benutzer A
Benutzer B
Anwendungsdienste
Darstellungsdienste
Kommunikationssteuerung
Transportdienste
Wegewahldienst
Gesicherte Bit-Ströme
Kabel, Stecker, Spannungspegel
Übertragungsleitung



Jede Schicht benutzt die Funktionen (= Dienste) der darunter liegenden Schicht
Daten werden physikalisch nur auf der untersten Ebene zwischen den Rechnern übertragen, d. h. der Übertragungsstrecke
Auf allen n-Schichten mit n>1 werden Daten nur innerhalb desselben Rechners „hin
und her geschoben“ (im Form von Aufrufparameter und Resultatwerten)
12
3.8
Indirekte Kommunikation im ISO-Modell (Partnerprotokolle)
Partnerprotokoll
= peer protocol
indirekte (virtuelle)
Kommunikation
Application
direkte
Kommunikation
Presentation
Session
Transport
Network
Data Link
Physical
Physikalisches Übertragungsmedium
• Daten werden innerhalb eines Rechners von Schicht zu Schicht transportiert
• Zwischen 2 Rechnern können Daten nur auf der Schicht 1 transportiert werden
• Kommunikation zwischen Instanzen höher als Schicht 1 werden indirekt (virtuell) abgewikkelt
13
• Indirekte Kommunikation wird mittels eines Protokolls zwischen Partnerinstanzen so
durchgeführt, dass beide Partnerinstanzen „sich verstehen“ (Protokoll = gemeinsame
„Sprache“)
3.8.1
Direkte und indirekte Kommunikation
Dienstelement
obere Schnittstelle
N-Schicht
untere Schnittstelle
c
c
d
Instanz
a
Protokoll
= indirekt
c
c
Instanz
a
a = gleichgestellte N-Instanzen
(Peer Entities)
b = Dienst besteht aus einer
Menge von Dienstelementen
c = Dienstelement
(Service Primitives)
d = Protokoll zwischen Gleichgestellten (Peer Protocol)
} b Dienst
c
c
Rechner A

= direkt
= direkt
c
c
Rechner B
Direkter Datenaustausch erfolgt mit Hilfe von Dienstelementen (= Unterprogrammaufrufen) eines Dienstes (= einer API) zwischen benachbarten Schichten desselben Rechners
14



Indirekter Datenaustausch erfolgt mit Hilfe eines Protokolls zwischen Partnerinstanzen
auf verschiedenen Rechnern
Eine direkte Kommunikation der Schicht N (1<N<7) erfolgt nur mit den Schichten (N+1)
und (N-1)
Indirekte Kommunikation (Protokoll) mit Partnerinstanzen (Peer Entities)
15
3.8.1.1
Implementierung der direkten und indirekten Kommunikation
Layer
M
5
Layer 5-Protokoll
Layer 4-Protokoll
H4
H4 M
Segmentierung
4
M
session
Transport
M
Konkatenation
Layer 3-
H3 H4 M 1
3
H 2 H 3 H 4 M 1 T2
2
H3 M 2
H3 M 2
H3 H4 M 1
Protokoll
H 2 H 3 H 4 M 1 T2
H2 H3 M 2 T 2
physical


Ziel
Quelle
M = Message = Nachricht

datalink
Layer 2-Protokoll
physikalische Verbindung
1
H 2 H 3 M 2 T2
network
H = Header = Vorspann = Nachrichtenkopf
T = Trailer = Nachspann
Nachricht wird von „oben nach unten“ und dann von „unten nach oben“ durchgereicht
Die Nachricht wird bei jedem Übergang zwischen 2 Schichten um einen Vorspann (Header) und ggf. auch um einen Nachspann (Trailer) verlängert
Protokoll = Menge der Regeln für den indirekten Datenaustausch zwischen Entities
derselben Schicht (peer-to-peer communication
16
3.8.2
Definition Dienst, Dienstzugangspunkt, Dienstelemente )
Rechner A
Rechner B
Anwendungsprozess A
Dienstelement
Anwendungsprozess B
Datenaustausch
Dienst
Protocol Stack
Dienstzugangspunkt
entity A
entity B
Peer Entity
der Schicht
(N)
physikalisches Medium



Die Schichten werden in ihrer Implementierung auch als Protocol Stack bezeichnet
N Schnittstelle: Menge von Dienstelementen (Unterprogrammaufrufen) der Schicht N
Dienstzugangspunkt: Name des Unterprogrammaufrufs mit Art und Typ der Übergabeund Resultatparameter (= Signatur der Prozedur)
17
3.9
Die 4 Arten von ISO-Dienstelementen
Rechner A
Rechner B
Prozess a
1.
Request
Prozess b
4.
Confirmation
3.
Response
2.
Indication
Datenübertragung

Es gibt für jeden Dienst einer Schicht i (1<i<7) 4 Dienstelemente, die gemeinsam den
Dienst in Form eines 4-Phasen Handshakes bilden:
1.) Anforderung (Request) = Aktivieren eines Dienstes der Schicht durch den Dienstnehmer
2.) Anzeige (Indication) = Dem Diensterbringer anzeigen, dass vom Dienstnehmer ein
Dienst angefordert wurde
3.) Antwort (Response) = Quittieren einer vorherigen Anzeige oder Erbringung des angeforderten Dienstes durch den Diensterbringer
18
4.) Bestätigung (Confirmation) = Quittieren einer vorherigen Anforderung beim Dienstnehmer
3.10

Die 3 Phasen der ISO-Kommunikation
Darüberhinaus heißt jede Kommunikation, die in folgenden 3 Phasen abläuft, verbindungsorientierte Kommunikation:
• Verbindungsaufbau (Connect), Datentransfer (Data Transfer) und Verbindungsabbau (Disconnect)




Für jede der 3 Phasen gibt es einen Dienst, der diese Phase implementiert
Eine verbindungsorientierte Kommunikation steht im Gegensatz zur sog. verbindungslosen Kommunikation, bei der sofort gesendet werden kann (kein Verbindungsaufbauund -abbau)
Request, Indication, Response und Confirmation sind die 4 Typen von Dienstelementen, die es bei jedem verbindungsorientierten Protokoll im Prinzip in jeder Schicht i (1
< i < 7) gibt
Die Zahl der Kombination aus Dienste, Dienstelemente und Phasen einer Schicht berechnet sich zu: dN Dienste der Schicht N * 4 Dienstelemente pro Dienst * 3 Phasen =
dN*12 Kombination (im Prinzip)
19
3.10.1
Beispiel: Presentation.Connect = Verbindungsaufbaudienst der Schicht 6
Rechner B
Rechner A
Schicht 6
ConnectDienst der
Schicht 6
5 darunterliegende
Schichten
Presentation Layer B
Presentation Layer A
1.) Presentation. Connect.
Request-Dienstelement
4.) Presentation. Connect.
ConfirmationDienstelement
3.) Presentation. Connect.
ResponseDienstelement
2.) Presentation.
Connect. Indication-Dienstelement
Protocol Stack
Protocol Stack
20
3.11
Zusammenfassung ISO-7-Schichten-Modell
1.) Die ISO-Bitübertragungsschicht ermöglicht die Übertragung von Informationen über
ein Kabel aus Kupfer oder Glasfaser oder per Funk (= ungesicherter Bitstrom +
mechanische + elektrische + funktionale + prozedurale Spezifikation der Strecke)
2.) Die ISO-Sicherungsschicht regelt den Zugang zum Übertragungsmedium, entdeckt
Übertragungsfehler jeweils zwischen benachbarten Rechnern, macht ggf. eine Rahmenwiederholung und bremst zu schnelle Sender durch Flusssteuerung (=Zugang +
gesicherte Bits + Flusssteuerung
3.) Die ISO-Vermittlungsschicht macht einen Verbindungsaufbau und -abbau, wählt
einen Weg vom Quellrechner zum Zielrechner durch das Netz. Im Allgemeinfall verläuft dieser über mehrere Zwischenknoten. Sie zerkleinert zu große Schicht 3-Pakete
in kleinere Schicht 3-Pakete (=“Fragmente“), die anschließend von Schicht 2 übertragen werden können, und setzt diese beim Empfänger wieder in der richtigen Reihenfolge zu einem Paket zusammen (= Fragmentierung und Reassemblierung). Sie
erkennt, welches Schicht 3-Fragment zu welchem Schicht 3-Paket gehört.
4.) Die ISO-Transportschicht macht ebenfalls einen Verbindungsaufbau und -abbau,
übermittelt die Daten von Sendeprozess zu Empfangsprozess, d.h. von Ende-zuEnde. Sie stellt die Paketreihenfolge sicher, löscht Duplikate und macht im Fehlerfall
eine Ende-zu-Ende Paketwiederholung. Sie erlaubt eine Pufferverwaltung bei Sender
21
und Empfänger und stellt Prioritäten bei der Übertragung zur Verfügung. Sie sorgt
schließlich dafür, dass das Netz nicht überlastet wird.
5.) Die ISO-Kommunikationssteuerungsschicht vereinfacht die Zusammenarbeit zwischen den kommunizierenden Anwendungsprozessen z.B. durch Rücksetzen und
Wiederanlauf einer unterbrochenen Verbindung (recovery). Sie legt full-/halfduplex
fest und erlaubt das Multiplexen mehrerer logischer Kanäle auf einen physikalischen
Kanal.
6.) Die ISO-Darstellungsschicht transformiert die Daten in eine Form, die von beiden
Anwendungsprozessen verstanden wird und komprimiert und verschlüsselt optional
(= Datenformate + Kompression + Verschlüsselung).
7.) Die Anwendungsschicht enthält Middleware und Benutzeranwendungen

Das Internet implementiert die ersten vier Schichten des ISO-Modells
22
Anwendung
Dateitransfer (ftp, Port 20, 21), Telnet (Port 23), E-Mail (smtp, Port 25),
DNS (Port 53), NFS, www (http, Port 80), ...
Transport
Transmission Control Protocol TCP, User Datagram Protocol UDP
Vermittlung
Sicherung 2b (Logical Link
Control
Sicherung 2a (Medienzugangssteuerung)
Bitübertragung
Internet Protokoll IP V4, IP V6
Internet Control Message Protocol ICMP
-
-
-
Logical
Link
Control
(LLC)
(theoretisch)
-
Point
to
Point
Protocol
(PPP)
E1/T1
FDDI
DQDB
Ethernet
WLAN
DSL
-
SONET
/SDH
4 Bitübertragungsschicht (ISO-Schicht 1)

ISO-Definition: „Die Bitübertragungsschicht definiert die mechanischen, elektrischen,
funktionalen und prozeduralen Eigenschaften, um physikalische Verbindungen zwischen Datenendeinrichtungen und Datenübertragungseinrichtungen aufzubauen, aufrecht zu erhalten und abzubauen.“
23




Die Bitübertragungsschicht sorgt für die Übertragung eines transparenten Bitstroms
zwischen Sicherungsschicht-Instanzen über physikalische Verbindungen
Eine physikalische Verbindung realisiert die Übertragung eines Bitstroms im Vollduplex- oder im Halbduplex-Modus
Vollduplex = gleichzeitiger bidirektionaler Datenaustausch
Halbduplex (=Simplex) = zu einer Zeit nur in einer Richtung, dann wird die Richtung gewechselt u.s.w. (= unidirektionaler Datenaustausch mit wechselnden Kommunikationsrichtungen)
4.1

Es werden in der Bitübertragungsschicht mechanische, elektrische, funktionale und
prozedurale Schnittstellen und Regeln definiert, die von Sender und Empfänger eingehalten werden müssen, damit Daten ausgetauscht werden können
4.1.1

Mechanische Schnittstellen
Hier geht es im die Abmessungen der Stecker, die Anordnung der Pins im Stecker etc.
4.1.2

Spezifikationen in der Bitübertragungsschicht
Elektrische Schnittstellen auf den Leitungen
Hier werden die Signalpegel (Spannungs- oder Stromwerte) für High- und Low-Bits, sowie die Art der Erdung und Schirmung der Kabel festgelegt
24
4.1.3



Funktionale Schnittstellen
Hier wird festgelegt, welcher Pin welche grundsätzliche Funktion hat und wie deren
Zeitverhalten, das sog. Timing ist
Hier wird auch die Bitrate der Bitübertragung und die Art der verwendeten Codierung
festgelegt
Beispiel: RS232 (V.24) mit den Datenleitungen TX, RX und Steuerleitungen Request to
Send, Clear to Send, Data Set Ready und Data Terminal Ready, sowie GND
DEE = Datenendeinrichtungen = DTE = Data Terminal Equipment
DÜE = Datenübertragungseinrichtung = DCE = Data Communication Equipment
4.1.4




Prozedurale Regeln
Hier wird festgelegt, wie die Pins des Steckers im Kontext zu den anderen Pins sich verhalten müssen, d.h., hier geht es um das logische Zusammenspiel der einzelnen
Schnittstellenleitungen
Wichtig für die Benutzung der Schnittstellenleitungen
Beispiel: bei V24 darf das Clear to Send-Signal des Modems erst dann aktiv werden
(High), wenn zuvor Data Set Ready des Modems und wenn Request to Send des Computers aktiv wurde, der an das Modem angeschlossen ist
z. B. CCITT „X.21: Interface between DTE and DCE for synchronous operation on public
data networks“
25
4.1.5
Beispiele für mechanische Spezifikationen
25,12
24,87
9 Pin-Stecker, ISO 4902, EIA RS-449
33,45
33,20
15 Pin-Stecker, X.20, X.21, X.22
X.21 = Norm für synchrone bitserielle Übertragung
47,17
46,91
25 Pin-Stecker, ISO 2110,
EIA RS-232-C, V.24
V.24= Norm für asynchrone bitserielle Übertragung
26
4.1.6
Beispiel für eine elektrische Spezifikation
CCITT V.24 (EIA RS-232-C)= Norm für asynchrone serielle Übertragung
Driver
Sender
Interconnecting Cable
Terminator
Empfänger
Kabel
Interface
 12 V
D
T
Signal Ground



In der kleinsten Version sind nur 2 verdrillte Kabeladern + Masse (GND) nötig
Keine Abschirmung der Adern, nur Verdrillung (= Telefonkabel) => sehr preisgünstig
Bitrate begrenzt auf <100 kbit/s, Entfernung begrenzt auf <15 m
4.2


Asynchrone und synchrone Übertragung
Asynchron heißt: kein Taktsignal zwischen Sender und Empfänger, Bsp.: V.24
Synchron heißt: Taktinformation wird zeitgleich mit den Nutzbits übertragen
27


Dafür kann eine extra Leitung verwendet werden (=teuer + selten) oder eine spezielle
Codierung, die auf der Datenleitung den Takt mitüberträgt (=preisgünstig + häufig)
Da der Empfänger den Sendetakt erhält, wird dieser zur Abtastung der Bitsignale benutzt = Synchronisation der Bitsignale mit dem Taktsignal => stabile Erkennung der
Bits selbst bei hohen Datenraten
4.2.1






Sender und Empfänger haben voneinander unabhängige, i.e. lokale Taktgeber
„Freie Leitung“ (= Leitung ohne Daten) entspricht einem kontinuierlich gesendeten
High-Bit  Problem der Unterscheidung zwischen freier Leitung und High-Pegel.
Das Start-Bit setzt die Leitung auf Low und startet so den Taktgeber beim Empfänger
Ein Übertragungsrahmen enthält 5 bis 8 Nutzbits (= 1 Zeichen)
Das Stop-Bit setzt die Leitung wieder auf High. Dieses Signal muss 1, 1.5 oder 2 BitIntervalle andauern; entspricht 1, 1.5 oder 2 Stop-Bits
Ein Paritätsbit dient zur Überprüfung der Nutzbits beim Empfänger
4.2.2

Beispiel für asynchrone Übertragung: V.24 (RS 232)
Vorteile der asynchronen Übertragung
Es wird keine Synchronisierung des Empfänger-Taktgebers mit dem Sender-Taktsignal benötigt, da kein Takt übertragen wird
 Hardware-mäßig leicht zu implementieren
28
4.2.3

Nachteile der asynchronen Übertragung
Die Taktgeber weichen im Laufe der Zeit voneinander ab, da sich kleine Zeitunterschied
akkumulieren
 Erhebliche Einschränkungen bzgl. Datenraten und Rahmenlängen:




Die „Nutzlast“ des Rahmens ist sehr kurz (nur 1 Zeichen; entspricht 5-8 Bits)
Es sind nur niedrige Datenraten möglich (<100 Kbit/s)
Die Start- und Stop-Bits bedeuten einen Mehraufwand, und die Effizienz sinkt
Beispiel: 1 Start-Bit + 7-Bit ASCII-Zeichen + 1 Paritätsbit + 1 Stop-Bit => d.h., insgesamt
10 Bit pro Rahmen für 7 Nutzbits => 30% Overhead. Nur 70% der Leitungsbandbreite
stehen für Benutzerdaten zur Verfügung.
4.2.4

Timing-Diagramm einer asynchronen Übertragung (V24)
In den beiden nachfolgenden Timing-Diagrammen wird der Signalverlauf über der Zeit
bei der Übertragung eines Zeichens und bei einer Zeichenfolge gezeigt
29
4.2.4.1
Leitungscode für ein Zeichen
Signalhöhe
Stopbit (Pegel wie im Ruhezustand)
Lange Eins = Ruhezustand
5 bis 8 Datenbits
Signalwert = 1
Signalwert = 0
Zeit
Startbit
1
Paritybit
(Odd, Even)
1,5
2
4.2.4.2
Leitungscode für eine Zeichenfolge
Beliebig lange Ruhepause zwischen Rahmen
Ruhezustand
Startbit
Stop
bit
Start
bit
Stop
bit
= 1. Zeichen+Parity
))
))
))
1 1 1 1 0 0 0 0
Stop
bit
Start
bit
0 0 1 0 1 1 0 0
= 2. Zeichen+Parity
30
1 00
1
0 1
0
= 3. Zeichen+Parity
4.2.5
Effekt der auseinander laufenden Uhren bei asynchroner Übertragung
Senderate f1
Abtastrate f2 > f1
1
start
2
3
4
5
6
7
8 stop
Fehlabtastung!
4.2.6




Synchrone Übertragung
Sende- und Empfangstakt laufen beliebig lange im Gleichtakt, d.h. synchron
=> Eine Neusynchronisation der Takte über ein Startbit vor jedem Zeichen ist nicht erforderlich
Taktsignal wird entweder auf einer separaten Leitung übertragen (= zu teuer) oder aus
dem Code des Datensignals regeneriert (= Regelfall)
Taktregenerierung aus dem Datensignal erfordert eine spezielle Codierung der Daten
z. B. mittels Manchester-Code, um Daten und Takt gemeinsam auf derselben Leitung
übermitteln zu können
31
4.2.7
Timing-Diagramm einer synchronen Übertragung
Bit = Bit = Bit = Bit =
Zelle Zelle Zelle Zelle
1
0
1
1
0
0
1
0
0
1
0
0
Daten
Clock
(Takt)
Abtastzeitpunkte liegen stets in der Mitte der Bitzelle
Sender
Takt 1

Datenbits
Taktsignal
Empfänger
Takt 1’ = 1
Im Beispiel erfolgt das Auslesen der Datenbits bei abfallender Flanke des Taktsignals
und es wird ein separates Taksignal verwendet
32
4.3
Physikalische Medien zur Datenübertragung
1.) Verdrilltes Adernpaar („twisted pair“) zur Verminderung von Übersprechen auf parallel geführte, sonstige Kabel, sowie zur Elimination von Einstreuungen von sonstigen,
parallel geführten Kabelsn
• Dies ist die klassische Telefonverkabelung und wird auch für DSL-Übertragung zur Ortsvermittlungsstelle eingesetzt
• Braucht wenig Platz, hat enge Biegeradien, ist sehr preiswert
2.) Abgeschirmtes und verdrilltes Adernpaar („shielded twisted pair“ STP)
• Unempfindlich gegen Störstrahlung von außen
• Sendet auch keine Störstrahlung von außen
• Der Schirm erlaubt einen definierten Wellenwiderstand zwischen Signalleitungen und Masse => sehr hohe Bandbreiten bis ca. 1 GHz sind damit auf einer einzigen Doppelader möglich
• Ist teurer als twisted pair
3.) Koaxialkabel: Noch störsicherer, ermöglicht noch höhere Bandbreiten bis ca. 40 GHz
bis, noch teurer, verbreitet in Kupferkabel-basierten Weitverkehrsnetzen
4.) Lichtwellenleiter (Glasfaser): sehr hohe Übertragungsraten, geringe Dämpfung und
völlig ohne Störungsein- und -auskopplungen, aufwendige Steckverbinder, am teuersten. Die Basis aller Weitverkehrsnetze ab ca. 1985.
33
4.3.1
Koaxialkabel
Kupferkern (Innenleiter)
mit Leitfähigkeit >> 1
Isolierschicht (Dielektrikum) mit relativer Dielektrizitätskonstante r > 1

geflochtener, elektrisch leitender
Außenleiter mit Leitfähigkeit >> 1
Plastikschutzschicht
50 Ohm-Koaxialkabel heißt: Wellenwiderstand zwischen Innenleiter und Schirm ist 50
Ohm
Beispiel: lokales Netzwerk auf Koaxialkabelbasis


Aber: Abstand zwischen den LAN-Transceivern auf dem Koaxialkabel sollte ein ganzzahliges Vielfaches der Wellenlänge der Grundfrequenz des lokalen Netzes sein
Und: Sender u. Empfänger müssen die gleiche Impedanz wie das Kabel haben, damit
es zu keinen Reflektionen kommt und damit die LAN-Transceiver die hohe Spannung
eines Wellenbergs erhalten
34
4.3.2

Glasfaserkabel
Sehr hohe Datenraten:
• Theoretisches Limit: 300 TeraBit/s = ungefähr die Frequenz des Lichts, Praktisches Limit
zur Zeit ca. 100 GigaBit/s => grosses Verbesserungspotential vorhanden

Als Transmitter und Receiver werden Halbleiterbauelemente verwendet:
• Laserdiode oder Leuchtdiode als Sender, Photodiode als Empfänger

Beschränkende Faktoren für die Datenrate: Absorption und Dispersion in der Faser
35
4.3.2.1
Absorption in der Faser
Eingangssignal
4.3.2.2
Ausgangssignal
Dispersion in der Faser
Eingangssignal
Ausgangssignal
Zeit
Zeit

Die optische Kopplung zwischen zwei Fasern ist mechanisch aufwendig, da der Kern
der Faser, der das Licht leitet, nur ca. 1 m - 50 m dünn ist (Präzisionsstecker!)
4.3.3

Technologien bei Glasfasern
Es gibt Stufenindex-, Gradientenindex- und Monomode-Fasern
36
4.3.3.1
Stufenindex-Faser
Radius r
Kern
Brechungsindex n

Zeit
Mantel
Output
Signal ist
schwach und
breit
Zeit
Totalreflektionen
Der Brechungsindex springt zwischen Kern und Mantel
4.3.3.2
Gradientenindex-Faser
Radius r
Faser
Input
Kern
Brechungsindex n

Faser
Input
„Kontinuierliche“
Reflektionen
Zeit
Mantel
Output
geringere
Dämpfung
und Verzerrung
Zeit
Der Brechungsindex des Kerns geht kontinuierlich in den des Mantels über
37
4.3.3.3
Monomode-Faser
Radius r
Kern
Brechungsindex n


Faser
Input
Mantel
Output
Signal ist
am besten
Zeit
= Wellenleiter: Faserdurchmesser ist
in der Größenordnung der Wellenlänge
Zeit
Die Faser ist so dünn, dass sie in der Größenordnung der Wellenlänge liegt
Das Licht wird nur von der Faser über quantenmechanische Effekte gelenkt
38
4.3.4
Vergleich der Glasfasertechnologien
104
Übertragbare Informationsmenge (M Bit/s)
Gr
103
ad
ie
Mo
no
mo
nt
en
i nd
ex
de
fas
er
fas
565
Gr
140
10
er
Si
ad
ien
ten
2
gn
alw
i nd
ex
e ll
en
fas
lä n
er
34
10
Systemparameter:
max. Regeneratorabstand aufgrund der
Dämpfung
ge
85
0
13
00
nm
(n
nm
ah
es
1
3
(fe
rn
I nf
es
ra
ro
Inf
ra
ro
1
Gradientenfaser, LED
als Sender, 850nm
Wellenlänge
2
Gradientenfaser, Laser
als Sender, 1300nm
Wellenlänge
3
Monomodefaser, Monomode-Laser als Sender, 1300nm Wellenlänge
t)
t)
2
1
0
2
6 10
20
30
40
100
200
600
Verstärkerabstand in km
1000
39
4.4



Modulation von Signalen
Modulation: Aufprägung von digitalen Daten oder analogen Signalen auf hochfrequente analoge Signale (=elektromagnetische Wellen)
Modem (= Modulator + Demodulator): dient zur Modulation digitaler Daten (Modulator
zum Senden; Demodulator zum Empfangen)
Es gibt 3 Modulationsarten für elektromagnetische Wellen
1.) Amplitudenmodulation (AM) => Amplitude Shift Keying (ASK) für Binärdaten
2.) Frequenzmodulation (FM) => Frequency Shift Keying (FSK) für Binärdaten
3.) Phasenmodulation (PM) => Phase Shift Keying (PSK) für Binärdaten
Signalstärke
Amplitude
Sinusschwingung
{
Zeit
Phase
Frequenz / Wellenlänge
40
4.4.1
Beispiele zu Modulationsverfahren
0
1
0
1
1
0
0
1
0
0
1
0
(a)
(b)
große/kleine
Amplitude
(c)
große/kleine
Frequenz
(d)
High = kleine
Phase = Sinus;
Low = große
Phase = Cosinus
(a) binäres Datensignal, das eine Welle moduliert
(b) Extremfall der amplitudenmodulierten Welle, Amplitude 1 ist >0, Amplitude 2 = 0
(c) Frequenzmodulierte Welle (Frequenz springt zwischen 2 Frequenzen hin und her)
(d) Phasenmodulierte Welle (Phase springt zwischen 2 Phasen hin und her)
41
4.5



Codierung von Signalen
Die analogen Signale werden in der Zeit und in der Signalhöhe diskretisiert (= quantisiert) und dann durch einen Code repräsentiert. Anstelle des Analogsignals wird der
Codewert übertragen. Dies wird als Analog/Digital-Umsetzung bezeichnet.
Im einfachsten Fall wird der Binärcode zur Darstellung des Signals verwendet; bei
Rechnernetzen wird der Binärcode allerdings nicht eingesetzt, da ungeeignet
Zur Analog/Digital-Umsetzung gibt es auch die inverse Operation, die D/A-Wandlung
(Rückkonvertierung). Ein elektronischer Baustein (Chip) kann beides. Er wird als
CODEC (Codierer/Decodierer) bezeichnet und ist in Handys und ISDN-Telefonen eingebaut.
Analogsignale
4.5.1


CODEC
Digitale PCM-Signale
CODEC
Analogsignale
Non Return to Zero Codes (NRZ-Codes)
Die NRZ-Codes bilden eine ganze Familie von Codes
Das gemeinsame Kennzeichen der NRZ-Codes ist, dass ein fester Pegel während eines
Bitintervalls herrscht. Pegelwechsel erfolgen nur an den Intervallgrenzen.
42


Non return to zero soll daran erinnern, dass der Signalpegel für die Übertragung der
„1“ innerhalb des Bitintervalls nicht auf 0 Volt zurückkehrt, sondern beim High-Pegel
bleibt
NRZ Codes sind einfach zu implementieren
4.5.1.1

NRZ-L-Code (L= Level)
Der NRZ-L-Code ist der bekannte Binärcode, wie er in jedem Rechner verwendet wird
• d.h.,: „1“ = hoher Pegel, „0“ = niedriger Pegel
4.5.1.2



NRZ-M-Code und NRZ-S-Code (M = Mark, S = Space)
NRZ-M und NRZ-S sind sog. differenzielle Codierungen
D.h., es wird nicht der absolute Spannungswert (hoher Pegel bzw. niedriger Pegel) zur
Codierung von „0“ und „1“ verwendet, sondern ein Spannungswechsel vom augenblicklichen Wert in den komplementären Wert (z.B. von hoch nach niedrig oder von
niedrig nach hoch).
NRZ-M heißt:
• zur Darstellung der „1“ wird ein Spannungswechsel vorgenommen
• Zur Darstellung der „0“ wird kein Signalwechsel vorgenommen

NRZ-S heißt:
• zur Darstellung der „0“ wird ein Spannungswechsel vorgenommen
• Zur Darstellung der „1“ wird kein Signalwechsel vorgenommen
43

Vorteile von NRZ-M und NRZ-S gegenüber NRZ-L:
• Unter Einfluss von Störungen wie z.B. Rauschen sind Signalwechsel leichter zu detektieren als absolute Signalpegel, da Wechsel nur kurz dauern, während Pegel im Wert einbrechen können
• D.h. Pegel schwanken bei Störungen, müssen aber mit einem festen Schwellwert verglichen werden müssen, um zwischen „0“ und „1“ zu unterscheiden, was dann zu Fehlinterpretationen führt

Nachteile aller NRZ-Codes:
1.) eine stets vorhandene Gleichstromkomponente => keine Trafo- oder Kondensatorkopplung möglich => sog. „Erdschleifen“ und Störungen sind wahrscheinlich
2.) Es gibt Synchronisierungsprobleme zwischen Sender und Empfänger bei langen „0“Folgen bei NRZ-M, bzw. bei langen „1“-Folgen bei NRZ-S, da sich nichts auf der Leitung ändert
4.5.2


Biphase-Codes = Zweite Gruppe von Codes
Das Kennzeichen aller Biphase-Codes ist, dass es zwei zeitliche Abschnitte (Phasen)
in jeder Bitzelle gibt => höhere Bandbreite erforderlich
Alle Biphase-Codes haben mindestens einen und höchstens zwei Spannungswechsel
pro Bitzelle
44
4.5.2.1


Biphase-L (= Manchester-Code)
Die erste Hälfte der Bitzelle enthält die Binärdarstellung, d.h. eine hohe Spannung bei
„1“, eine niedrige Spannung bei „0“
In der 2. Hälfte der Bitzelle wechselt der Spannungswert zum Komplement
 Immer ein Signalwechsel in der Mitte des Intervalls; Je nach Bitfolge ggf. auch Signalwechsel am Ende des Intervalls


Der Signalwechsel in der Mitte wird vom Empfänger als Taktsignal für eine synchrone
Übertragung genutzt
Vor- und Nachteile von Manchester:
• Nachteil: Doppelte Baudrate bei unveränderter Bitrate gegenüber reinem Binärcode (doppelt so häufige Spannungswechsel)
• Vorteil: Takt und Daten können gleichzeitig auf demselben Kabel übertragen werden = taktsynchrone Übertragung

Wird für Ethernet verwendet
4.5.2.2



Differential Manchester-Code
Immer ein Signalwechsel in der Intervallmitte (= wie bei Manchester, die Bits werden
aber nicht explizit in der ersten Hälfte der Bitzelle kodiert)
Bei „0“ zusätzlicher Signalwechsel am Intervallbeginn. Bei „1“ passiert nichts.
Wird für Token Ring verwendet, da störungsicherer als Manchester
45
4.5.2.3


Immer ein Signalwechsel am Intervallbeginn
Bei „1“ zusätzlicher Signalwechsel in der Intervallmitte. Bei „0“ passiert nichts.
4.5.2.4




Biphase-S
Immer ein Signalwechsel am Intervallbeginn (wie Biphase-M)
bei „0“ zusätzlicher Signalwechsel in der Intervallmitte (komplementär zu Biphase-M)
4.5.2.5

Biphase-M (= Miller-Code oder FM-Code)
Modified Miller-Code (= Modified Delay „Modulation“, MFM-Code)
Signalwechsel am Ende des Intervalls, wenn nach einer Null wieder eine „0“ folgt
Bei „1“ zusätzlicher Signalwechsel in der Intervallmitte
Vorteile:
• Bandbreitebedarf ist geringer als bei Manchester oder Biphase-M
• Störsicherheit ist größer als bei Manchester, da differentieller Code

Wird für die Datenaufzeichnung bei magnetischen Medien (Festplatten, Bänder) verwendet. Bits können damit auf der Festplatte dichter gepackt werden.
4.5.2.6


Bipolar-Code (= Alternate Mark Inversion)
Verwendet drei Signalwerte: positive Spannung, Null und negative Spannung
„1“ wird im Wechsel durch einen positiven bzw. negativen Impuls in der 1. Hälfte des
46
Bitintervalls dargestellt
 „1“ ist abwechselnd eine positive Spannung und eine negative Spannung




In der 2. Hälfte kehrt die Spannung jeweils auf Null zurück
Nachteil: doppelte Baudrate
Vorteil: keine Gleichstromkomponente => Trafo- oder Kondensatorkopplung ist möglich
Wird bei ISDN verwendet
4.5.2.7



Vorteile der Biphase-Codes
Leichte Taktsynchronisierung zwischen Sender und Empfänger, weil mindestens ein
Spannungswechsel pro Bitintervall stattfindet = taktsynchrone Übertragung, d.h. Takt
kann zusammen mit den Daten in demselben Signal übertragen werden
Spannungswechsel dienen als Impulsflanke zum Triggern des Empfänger-Flipflops
Fehlererkennung ist bereits auf Ebene 1 des ISO-7-Schichten-Modells anhand des Ausbleibens eines Spannungswechsels in einer Bitzelle möglich
47
4.5.3
Graphische Beispiele bei Leitungscodes
1
0
1
1
0
0
0
1
1
0
1
NRZ-L
NRZ-L = non return to
zero-level
NRZ-M = non return to
zero-mark
NRZ-S = non return to
zero-space
NRZ-M
NRZ-S
Biphase-L
(Manchester)
Biphase-M
Biphase-S
DifferentialManchester
Modified Miller
Bipolar
48
4.6
Multiplexen von Signalen
Definition: Übertragungsweg

• physikalisch-technisches Transportsystem für Signale (z. B. Kabel)
Definition: Übertragungskanal

• Verwaltungsgröße innerhalb eines Übertragungsweges zur Übertragung des Signalstroms
einer einzigen Quelle
Auf einem Übertragungsweg können mehrere Übertragungskanäle parallel betrieben
werden
Die Aufspaltung der gesamten Übertragungskapazität eines Übertragungsweges auf
verschiedene Übertragungskanäle ist möglich und effizient
Definition: Multiplexing



• Die Aufspaltung eines Übertragungswegs in mehrere Übertragungskanäle heißt Multiplexing
• Durch Multiplexing wird es möglich, einen Übertragungsweg mehrfach zu nutzen => Effizienzsteigerung
Übertragungswege können sowohl in der Zeit als auch in der Bandbreite mehrfach genutzt werden => Frequenzmultiplex + Zeitmultiplex

49
4.6.1
Frequenzmultiplexen
a)
b)
Amplituden
Modulation
Input
Basisband
Kanal 1
c)
Output
(a) Spektren dreier Telefongespräche (3
Basisbänder)
(b) Im Spektrum verschobene Basisbänder (Breitband)
(c) Spektrum der Signale auf dem Übertragungsweg (Kabel)
verschobenes Basisband (Breitband)
1
f
0
Spektrum
f
60
64
68
72
Spektrum
Kanal 1
Kanal 2
1
f
0
f
60
64
68
72
60
64
68
72
0
f
60
64
Kanal 3
1
f
300
3100
Kanal 3
Kanal 2
0
f
50
68
72
4.6.1.1

Grundidee des Frequenzmultiplexens
Breitbandige Übertragungswege ermöglichen die Unterbringung vieler Übertragungskanäle in unterschiedlichen Frequenzbereichen (Frequenzbändern), d. h., man teilt die
verfügbare Bandbreite in eine Reihe von - nicht notwendigerweise gleich breiten - Frequenzbändern auf und ordnet jedem Frequenzband einen Übertragungskanal zu.
Frequenz
Bandbreite des
Übertragungskanals
Kanal 1
Kanal 2
Bandbreite des
Übertragungsweges
...
Kanal n
Zeit

Es gilt: Summe über alle Kanalbandbreiten  Bandbreite des Übertragungsweges
51
4.6.1.2
Prinzipielle Realisierung von Frequenzmultiplexen
Amplituden-Modulatoren
Bits
BST = Bitstrom
BST1
Amplituden-Demodulatoren
Filter f1
Träger f1
BST1
BST2
Frequenzgemisch
BST2
Bits
Filter f2
Träger f2
3 AM-modulierte
Träger f1, f2, f3 auf
einem Kabel
BST3
BST3
Träger f3
Filter f3
BST i = Bitstrom i, entspricht Kanal i; Träger = Sinusschwingung, die moduliert wird
52
4.6.2





Zeitmultiplexen
Zeitmultiplexen tritt meist in Form des synchrones Zeitmultiplexens auf (synchronous
Time Division Multiplexing)
Dabei wird die Zeit in sog. Zeitscheiben gleicher Länge eingeteilt, die auf Sender und
Empfängerseite zum selben Zeitpunkt beginnen und enden
Die gesamte verfügbare Bandbreite wird für eine feste Zeit ts, der sog. Zeitscheibe, jedem Kanal zur Verfügung gestellt
Nach einer Umschaltzeit wird die Bandbreite zum nächsten Kanal weitergereicht
Nach einer Periodendauer T>ts wiederholt sich das Schema
 Pro Periode erhält jeder Kanal eine Zeitscheibe (time slot) => time sharing

Zeitmultiplex ist aufgrund der notwendigen Pufferung nur für zeitdiskrete Signale einsetzbar (bevorzugt zeit- und wertdiskrete Signale, d.h. Digitalsignale)
53
4.6.2.1
Beispiel: Telefonvermittlung- und übertragung
Frequenz
Es gilt: Summe über alle Zeitscheiben 
Periodendauer des Übertragungswegs
Bandbreite des
Übertragungswegs
Umschaltzeiten
ZeitscheiZeitscheibe K5
be K1
K1
K2
K3
K4
Periodendauer
54
K5
Zeit
4.6.2.2
Prinzipielle Realisierung von synchronem Zeitmultiplexen
Rotierender Abtaster
Bits
BST = Bitstrom
BST1
BST2
BST3
Puffer 1
Puffer 2
Puffer 3
Rotierender Verteiler
Bits
t1
t1
t2
TS1
TS3
TS2
t2
TS4
t3
t3
Puffer 1
Puffer 2
Puffer 3
BST1
BST2
BST3
• Jeder Sender i hat innerhalb einer Umlaufperiode des Abtasters eine feste Zeitscheibe (time slot) TSi. Abtaster und Verteiler rotieren im gleichen Takt und mit gleicher Phase
 Synchrones Zeitmultiplexing
• Die Zeittakt-Stabilität (Jitter) zwischen Abtaster und Verteiler ist wichtig, sonst erfolgt eine
falsche Zuordnung des Bitstroms beim Empfänger
55
4.6.3

Asynchrones Zeitmultiplexen
Hierbei wird der Übertragungsweg dem Sender nicht fest über eine Zeitscheibe, sondern nach Bedarf zugeteilt
 Anforderungsbasierter Medienzugang, Beispiel Ethernet




Asynchrones Zeitmultiplex wird auch als statistisches Zeitmultiplexing (STDM = statistical time division multiplexing) bezeichnet, weil a priori nicht klar ist, wer wann senden will
Der Empfänger kann aus der Zeitlage der Zeitscheiben nicht mehr die Herkunft der Daten erkennen
Es ist für jeden Datenrahmen eine Verwaltungszusatzinformation in Form eines sog.
Vorspanns (Headers) bestehend aus Zieladresse, Kanalkennzahl u.s.w. erforderlich
Man spricht nicht mehr von Zeitscheiben sondern von (Daten)rahmen
4.6.3.1
Aufbau der Datenrahmen bei asynchronem Zeitmultiplex
Zeit
Header
Inhalt
1. Datenblock (Rahmen)
...
...
Header
Inhalt
i. Datenblock
56
Header
Inhalt
(i+1). Datenblock
4.6.4
Vergleich zwischen synchronem und asynchronem Zeitmultiplexen
A2
synchrones Zeit-Multiplexing
A1
2
3
1
Bitströme 1 - 3
C2 B1 leer C1 leer A2 leer leer A1
B1
Multiplexer
C2
Ausgang
C1
C2 B1 C1
asynchrones Zeit-Multiplexing
= effizienter
Eintreffende Datenrahmen





A2 A1
Beim synchronen Zeitmultiplex ist die Zeitscheibe eines Kanals, auf dem nicht gesendet wird, verloren!
Vorteil von asynchrones Zeitmultiplexing: nützt den Übertragungsweg effizienter
Nachteil von asynchronem Zeitmultiplexing: Wenn sehr viele gleichzeitig senden,
kommt ein Sender möglicherweise nie zum Senden => für Echtzeit ungeeignet
Synchrones Zeitmultiplexing: für Echtzeit geeignet
Asynchrones Zeitmultiplexing wird häufig bei LANs eingesetzt, u.a. auch im Ethernet
57
4.6.5





Mobilfunknetz als Beispiel für gleichzeitiges Zeit- und Frequenzmultiplexen
GSM = global system for mobile communication, UMTS = universal mobile telephone
system, LTE = Long Term Evolution
Bei GSM/UMTS/LTE wird gleichzeitig synchrones Zeit- und Frequenzmultiplex eingesetzt, um für eine a priori nicht bekannte Zahl von Mobiltelefonen die niedrige Bandbreite des Funk-Übertragungsweges effizienter zu nutzen
Beispiel GSM: Der zur Verfügung stehende Frequenzbereich ist 890,2-914,8 MHz für die
uplink-Kommunikation (vom Mobiltelefon zur Basisstation) und 935,2-959,8 MHz für die
downlink-Kommunikation (von der Basisstation zum Mobiltelefon)
Damit werden pro Basisstation 124 Kanäle für up- und downlink durch Frequenzmultiplex realisiert => Die Bandbreite eines Kanals beträgt 200 KHz
Gleichzeitig wird jeder Kanal in 8 Zeitscheiben zu je 577 s unterteilt
 im Prinzip könnten von jeder Basisstation bis zu 124*8 = 992 Mobiltelefone simultan
bedient werden

Hinzu kommt: jede Basisstation muss auf anderen Frequenzen innerhalb des zur Verfügung stehende Frequenzbereichs senden als die Nachbarbasisstation, damit Störungen zwischen den Basisstationen vermieden werden
 => Aufteilung der Frequenzbereiche in räumliche Bezirke („Zellen“), in deren Mitte
jeweils eine Basisstation sitzt so, dass sich keine Frequenzen zwischen benachbarten Basisstationen überlappen
58


Da sich die Funkwellen kugelförmig ausbreiten, ist das Verbreitungsgebiet einer Zelle
auf dem Boden ein Kreis
Der Kreis wird mittels eines regelmäßigen Sechsecks approximiert
 Bienenwabenstruktur der Funkzellen
B
G
a) homogene Zellgröße auf
dem flachen Land (gleiche
Buchstaben bezeichnen gleiche Frequenzen)
b) kleinere Zellen für Städte in
der Mitte
C
F
B
G
A
D
E
C
A
F
B
G
D
E
C
A
a)
F
D
b)
E
5 Sicherungsschicht (ISO-Schicht 2)


Im ISO-Modell ist die Sicherungsschicht zwischen je zwei benachbarten Rechnern relevant
Sie leistet mehr als nur die Daten zu sichern
59
5.1



Verdeckung (= Unsichtbarmachung) von Übertragungsfehlern zwischen direkt benachbarten Rechnern (keine Zwischenknoten), bestehend aus den Teilschritten Erkennung
und Behebung
Flusssteuerung (flow control) des Datenverkehrs zum Nachbarrechner
Bei LANs mit mehreren Sendern auf einem Übertragungsmedium: Steuerung des Zugangs zum gemeinsam genutzten Medium (= Medium Access Control, MAC)
5.2


Aufgaben der Sicherungsschicht
Ursachen von Übertragungsfehlern
Fehler werden häufig durch andere elektrische und elektronische Geräte verursacht
Diese Störungen haben physikalische Gründe:
1.) „Weißes Rauschen“ = thermisches Rauschen von Leitungen und Bauteilen aufgrund
der Brownschen Molekularbewegung
• hohe Temperatur, z.B. aufgrund der Abwärme von Geräten => starkes Rauschen
• Entscheidend für die Signalgüte ist das Verhältnis von Signalspannung/Rauschspannung
2.) Dämpfung des Nutzsignals
• Ist abhängig von der Frequenz des Nutzsignals: hohe Frequenz => hohe Dämpfung
3.) Verzerrung des Nutzsignals
60
• Ist abhängig von der Frequenz und von der Amplitude des Nutzsignals: hohe Frequenz
oder hohe Amplitude => hohe Verzerrung
4.) Übersprechen auf Leitungen
• verursacht durch Induktion, kapazitive Kopplung und elektromagnetische Wellen
• Induktion (Magnetfelder): schnelle Feldänderungen => hohe Störspannung
• Kapazitive Kopplung (elektrische Felder): lange, parallele Leitungen => hohe Störspannung
• Elektromagnetische Wellen => hohe Frequenz => hohe Störspannung
5.) Potentialunterschiede in der Masseleitung zwischen Sender und Empfänger
• Verursacht z.B. aufgrund von sog. Erdschleifen
• Eine Erdschleife kommt über die sog. „Erdung“ ins Spiel, d.h. über die Schutzerde an metallischen Gerätesteckern, die der VDE vorschreibt.
• Die Erdschleife wird geschlossen, wenn an den Gerätesteckern von Sender und Empfänger aus Unkenntnis die Signalerden mit Schutzerde verbunden werden
• Durch das Verbinden von Signal- mit Schutzerde entsteht parallel zur Masseleitung des Signals eine zweite Masseleitung über die Schutzerde, und die Erdschleife ist geschlossen
• Über die geschlossene Erdschleife können erhebliche Ströme (sog. Ausgleichsströme)
fliessen, die wiederum einen Potentialunterschied zwischen der Signalerde von Sender
und Empfänger bewirken. Dieser Potentialunterschied verursacht Störungen.
• Es ist deshalb verboten, Signalerde mit Schutzerde zu verbinden!
61
5.3




Fehlercharakteristik bei Übertragungsfehlern
Fehler kommen oft nach einer langen Pause und dann kurz aufeinander folgend: sog.
Bursts auch Fehlerbündel genannt
Beispiel: bei einem Burst von 10 ms und einem 1,5 Mbit/s-DSL-Modem entspricht dies
15 000 falschen Bits
Vorteil von Bursts:Nur wenige Blöcke enthalten Fehler
Nachteil: Schwer zu korrigieren, da i.d.R. viele Fehler auf einmal auftreten
 Wiederholung eines ganzen Datenrahmens wegen Burst-artigem Fehlerverhalten
5.4





Fehlererkennung
Zur Fehlererkennung wird die Nutzinformation durch Zusatzinformation ergänzt
Diese wird als Prüfbit oder als Prüfsumme zusammen mit den Nutzdaten übertragen
Je nach Umfang der Redundanz und verwendetem Code kann eine gewisse Anzahl an
Fehlern sogar korrigiert werden
Fehlerkorrektur wird bei Rechnernetzen allerdings nicht eingesetzt, statt dessen wird
die Datenübertragung wiederholt
Der Zusammenhang zwischen der Fehlerhäufigkeit der Übertragungsstrecke und der
gewünschten Wahrscheinlichkeit der Entdeckung bzw. Korrektur eines Fehlers wird in
der Nachrichtentechnik, einem Teilgebiet der Elektrotechnik, behandelt
62

Die Nachrichtentechnik kann erklären, wie groß bei n Nutzbits der Umfang der notwendigen Redundanz sein muss, um i Bitfehler erkennen und j<i korrigieren zu können
5.4.1
Fehlererkennung durch Paritätsbit
Bsp. 1
ein
ASCIIZeichen
Bsp. 2
Bsp. 3
Bit 1
0
1
1
Bit 2
1
0
1
Bit 3
0
0
0
Bit 4
0
1
0
Bit 5
0
0
0
Bit 6
0
1
0
Bit 7
1
1
1
0
0
1
1
1
0
Paritätsbit
gerade
Parität
ungerade
63











Das Paritätsbit ergänzt die Anzahl der Einsen im Zeichen (= „Quersumme“), so dass sie
gerade/ungerade wird (gerade Parität = gerade Zahl von Einsen)
Berechnung erfolgt so, dass die gesamten Quersumme inkl. Parity gerade oder ungerade wird
Ein Prüfbit wird für jedes einzelne Zeichen bei einer asynchronen Übertragung verwendet. Beispiel: V.24
Nachteil: Es kann nur ein Fehler erkannt und keiner korrigiert werden
Auskunft, wie viele falsche Bits erkannt bzw. wie viele korrigiert werden können, gibt
die sog. Hamming-Distanz H
Zwei Binärworte A,B derselben Länge haben die Hamming-Distanz H, wenn sie sich in
H Bits unterscheiden
Die Hamming-Distanz definiert eine Metrik in einem diskreten n-dimensionalen Punktraum, in dem jedes Binärwort der Länge n einen Punkt darstellt
Wird im Punktraum um jedes Nutzwort A ein Sicherheitsabstand H geschaffen, können
H-1 falsche Bits erkannt und H/2 korrigiert werden
Alle Bitkombinationen innerhalb des Sicherheitsabstandes H sind bis auf das Wort A
selbst verboten
Erkennt der Empfänger eine verbotene Bitkombination, dann weiß er, dass ein Fehler
vorliegt
Erkennt der Empfänger die erlaubte Bitkombination A, dann liegt mit hoher Wahrscheinlichkeit kein Fehler vor
64

Eine Methode zur Erzielung einer Hamming-Distanz H zwischen zwei Worten A,B ist der
Cyclic Redundancy Check (CRC)
5.4.2

Fehlererkennung durch Prüfsumme (Cycling Redundancy Check, CRC)
Das Prinzip für Cycling Redundancy Check lautet:
1.) Betrachte ein Bitstring als die Kurzdarstellung eines Polynoms von n x, bei dem nur
die Koeffizienten 0 und 1 aufgeschrieben werden
• Beispiel: 11001 sei ein Polynom in x vom Grad 4 gemäß: x4 + x3 + x0
2.) Wähle ein sog. Generatorpolynom G(x) vom Grad g in Form eines zweiten Bitstrings
• Einige Generatorpolynome sind bereits fertig und normiert, so dass die Wahl leicht fällt
3.) Hänge an die Nachricht M(x) eine CRC-Prüfsumme so geschickt an, dass das daraus
entstehende neue Polynom T(x) aus Nachricht plus Prüfsumme durch G(x) teilbar ist.
4.) Übertrage T(x) und prüfe beim Empfänger das empfangene T(x) auf Teilbarkeit durch
G(x)
5.) Die Nachricht ist mit hoher Wahrscheinlichkeit dann korrekt übertragen, wenn die
Teilbarkeit gegeben ist
65
5.4.2.1
Algorithmus für die CRC-Berechnung
1.) Es sei die Nachricht M und das Generatorpolynom G(x) vom Grad g gegeben. Dann
hänge man g Nullen an M an, erzeuge also M(x)00...0
2.) Teile M(x)00...0 durch G(x) gemäß Division modulo 2, d.h. ohne Borgen, ohne Übertrag. (Diese spezielle Arithmetik ist Teil der sog. Galouis-Feldtheorie)
3.) Subtrahiere den Rest von M(x)00...0 gemäß modulo 2 (= ohne Borgen, ohne Übertrag)
4.) Das Ergebnis ist T(x), d.h. die transferierende Nachricht samt Prüfsumme
• Die g least significand bits von T(x) sind die CRC-Prüfsumme
• T(x) ist garantiert durch G(x) teilbar, da ein etwaiger Rest vorher subtrahiert wurde.
5.) Der Empfänger teilt das empfangene T(x) durch G(x)
6.) Gibt es keinen Rest, ist T(x) mit hoher Wahrscheinlichkeit fehlerfrei übertragen worden
66
5.4.2.2
Erstes Beispiel für CRC-Berechnung
Rahmen: 1 1 0 1 0 1 1 0 1 1
Generator: 1 0 0 1 1 => Grad g = 4
Nachrichten nach dem Anhängen von 4 Nullbits: 1 1 0 1 0 1 1 0 1 1 0 0 0 0, dann tei
1 1 0 1 0 1 1 0 1 1 0 0 0 0 : 1 0 0 1 1 = 1 1 0 0 0 0 1 0 1 0 mit Rest 1 1 1 0
-1 0 0 1 1
kein Borgen!
’’ 1 0 0 1 1
Daraus:
-1 0 0 1 1
11010110110000-1110=11010110111110
’’ 0 0 0 0 1
-0 0 0 0 0
gesendeter Rahmen
’’ 0 0 0 1 0
Nutzdaten
CRC-Prüfsumme
-0 0 0 0 0
’’ 0 0 1 0 1
-0 0 0 0 0
Wichtig:
’’0 1 0 1 1
1.) Addition ohne Übertrag ist hier wie Subtraktion ohne
-0 0 0 0 0
Borgen d.h. diese spezielle Addition ist mit dieser spezi’’ 1 0 1 1 0
ellen Subtraktion identisch! Beides wiederum ist mit der
-1 0 0 1 1
bitweisen EXOR-Operation identisch (gemäß algebrai’’ 0 1 0 1 0
scher Feldtheorie von Galois)
-0 0 0 0 0
’’1 0 1 0 0
2.) Subtraktion von Dividend und Divisior erfolgt bereits
- 1 0 0 1 1
dann, wenn Dividend und Divisor gleich viele Stellen ha’’ 0 1 1 1 0
ben, nicht erst wenn Dividend größer oder gleich Divisor
-0 0 0 0 0
ist, wie sonst üblich. Eine Null als MSB zählt dabei nicht
Rest:
’’ 1 1 1 0
als Stelle!
67
5.4.2.3
Zweites Beispiel für CRC-Berechnung
Rahmen: 1 0 0 1 1 0 0 1
1 0 0 1 1 0 0 1
-1 0 1 0 1
’’ 0 1 1 0 0
-0 0 0 0 0
’’ 1 1 0 0 0
- 1 0 1 0 1
’’ 1 1 0 1 1
- 1 0 1 0 1
’’ 1 1 1 0
-1 0 1 0
’’ 1 0 0
-1 0 1
’’ 0 1
-0 0
’’ 1
-1
Rest:
’’
Generator: 1 0 1 0 1 => g=4, also: 1 0 0 1 1 0 0 1 0 0 0 0
0 0 0 0 : 1 0 1 0 1 = 1 0 1 1 1 1 0 1 mit Rest 1001
gesendeter Rahmen: 1 0 0 1 1 0 0 1 0 0 0 0 - 1 0 0 1 =
1 0 0 1 1 0 0 1 1 0 0 1
0
1
1
0
1
0
1
0
1
0
1
1
0
1
1
0
0
0
0 0
0 1
0 1
Der Empfänger
1 0 0 1 1 0 0
-1 0 1 0 1
’’ 0 1 1 0 0
-0 0 0 0 0
’’ 1 1 0 0 0
- 1 0 1 0 1
’’ 1 1 0 1
-1 0 1 0
’’ 1 1 1
-1 0 1
’’ 1 0
-1 0
’’ 0
-0
’’
Rest:
68
berechnet nach der Übertragung:
1 1 0 0 1 : 1 0 1 0 1 = 1 0 1 1 1 1 0 1
1
1
0
0
0
1
1
0
1
-1
’’
1
1
0
0
0
0
0
0
0
0
1
1
0
1
1
0
0
0
0 1
0 1
0 0 = O.K.
5.4.2.4
Beispiele für CRC-Generatorpolynome

CRC-16 =x16 + x15 + x2 + 1 (ISO)

CRC-CCITT =x16 + x12 + x5 + 1
Beide werden für Datenübertragung benutzt, die Regel sind aber heutzutage 32 Bit

5.4.2.5

Erkannt werden:
•
•
•
•
alle einfachen und zweifachen Bitfehler
alle Fehler mit einer ungeraden Bitzahl
alle Fehler, die direkt hintereinander auftreten (= Bursts), aber nur mit einer Länge < 16 Bit
99,998% aller längeren Bursts mit > 16 fehlerhaften Bit direkt hintereinander
5.4.2.6

Implementierung der CRC-Berechnung
CRC lässt sich sehr einfach in Hardware mit Hilfe eines Schieberegisters und der bitweisen XOR-Funktion implementieren
5.5

Potential der Fehlererkennung durch CRC-16- und CRC-CCITT-Polynome
Bit Stuffing und Rahmenbegrenzer
Zur Anwendung von fehlererkennenden und fehlerkorrigierenden Codes muss der Datenstrom in einzelne Abschnitte unterteilt werden => „Rahmen“ (frames) bzw. Pakete
ab ISO Schicht 3
69

Problem: Wie kann man den Rahmenanfang im Bitstrom erkennen, wenn jedes beliebige Bitmuster in den Nutzdaten vorkommen kann?
 Bit Stuffing (Bitstopfen) zur Kennzeichnung des Rahmenanfangs




Als Kennzeichnung wählt man z.B. 01111110 (= 6 Einsen hintereinander). Der Sender
fügt nach fünf Einsen im Nutzdatenstrom eine 0 ein.
Er fügt keine 0 ein, wenn es sich um den Rahmenanfang handelt.
Wenn der Empfänger nach fünf Einsen eine Null sieht, entfernt er diese aus dem Datenstrom.
Wenn er keine 0 sieht, weiß er, dass es sich um einen Rahmenanfang und nicht um
Nutzdaten handelt.
5.5.1
Beispiel für Nutzdatentransfer mit 6 Einsen am Stück
Sender
Leitung
Empfänger
011111
0111110
011111
101011111
1010111110
101011111
70
0101
0101
0101
5.5.2
Weitere Beispiele für Bit Stuffing
0
1
2
3
4
5
6
7
Kennzeichnung des Rahmenanfangs
Übertragung von 6 Einsen im
Nutzdatenstrom:
1
eingeschoben
Übertragung von 5 Einsen einer Null und einer Eins:
0
1
0
0
eingeschoben
Übertragung von 5 Einsen
und zwei Nullen:
eingeschoben
 Sechs Einsen hintereinander kann es auf der Leitung nur am Rahmenanfang geben
71
5.5.3
Realisierung des Bitstopfens
Empfangen von Nutzdaten
Senden von Nutzdaten
(Kein Rahmenanfang)
(Ereignis: eintreffendes Bit)
Sender hat 6 Zustände
Empfänger hat 8 Zustände (inkl. Fehlerzustand)
0/0
A
0/0
0/0
Eine Eins
gekommen
0/0
1/1
0/0
Vier Einsen
gekommen
1/1
E
1/10
F
Notation: e/a
e = Eingabe
a = Ausgabe
D
1/1
1/1
Fünf Einsen 1/1
gekommen
und 0 eingefügt
Realisierung über endliche Automaten für Sender und Empfänger
C
Drei Einsen
gekommen
E
1/1
0/0
1/1
0/0
Ersetze die 5.
Eins durch 10
B
Zwei Einsen
gekommen
D
Start
1/1
0/0
1/1
C
1/1
A
0/0
1/1
B
0/0
0/0
Start
F
0/0
eingefügte G
0 wurde entfernt
0/
1/1
Ersetze 10 durch
1, wenn 4 Einsen
vorausgegangen
sind.
H Fehlerzustand: Rahmenanfang in den Nutzdaten
72
5.6
Typisches Rahmenformat der Schicht 2
Zeit
Flag, z.B.:
01111110
Target
Address
Source
Address
Control
(Steuerung)
0,1, 2,...Data
Bytes
Checksum
(CRC)
Rahmen-Kennzeichner
Rahmen-Kennzeichner (frame delimiter)


Flag = „Flagge“ = Rahmenkennzeichnung mittels Bit Stuffing
Rahmenbegrenzer am Paketende kann entfallen, wenn die Rahmenlänge bekannt ist,
oder wenn nächster Rahmen unmittelbar nachfolgt
5.6.1



Sprachregelung bei Schicht 1, 2 und 3
Auf der Schicht 1 spricht man von Bitstrom
Auf der Schicht 2 spricht man von Rahmen
Auf allen Schichten 3 spricht man von Paket
5.6.2

Flag
01111110
Was steht im „Control“-Feld eines Rahmens?
Es stehen darin u. a. Bestätigungen (Acknowledges) und Sequenznummern
73
Acknowledgement = Anerkennung, Bestätigung, Quittung

Bestätigungen und Sequenznummern werden benutzt zur:
1.) Fehlererkennung fehlerhafter oder verlorener Blöcke
2.) Pufferverwaltung, z.B. wieviel Empfangsspeicher ist nötig? Gibt es einen Überlauf?
Puffer (engl. buffer) ist ein kleines Stück Speicher zum Halten eines oder mehrerer Datenpakete. Puffer
werden vom Sender und Empfänger eingesetzt
3.) Flusssteuerung (= flow control)
Beachte: to control: steuern, to check: kontrollieren, feed-back control: regeln
5.7



Bestätigungen (Acknowledges)
Für jedes Datenpaket vom Sender zum Empfänger wird eine Bestätigung in Gegenrichtung geschickt, sofern das Datenpaket unversehrt empfangen wurde
Wird das Paket nicht empfangen oder fehlerhaft empfangen, erhält der Sender keine
Bestätigung => der Sender merkt dies anhand einer Zeitschranke (time out)
Zwei Fälle müssen unterschieden werden: a) wenn das Paket nicht empfangen wurde
b) wenn die Bestätigung verloren ging
74
5.7.1
Zwei Fälle von Datenverlust
Quelle
Senke
(Sender)
(Empfänger)
Quelle
(Sender)
Senke
(Empfänger)
K
AC
Paketverlust
Hinrichtung
Paketverlust
Rückrichtung
1. Verlust eines Datenblocks:
2. Verlust einer Quittung:
- Senke wartet auf Daten
- Quelle wartet auf Bestätigung
- Quelle wartet auf Bestätigung - Senke wartet auf neue Daten

Problem mit Acknowledges:
• Ohne Überwachung einer Zeitobergrenze würde der Sender im Fall a) und b) beliebig lange
auf das Acknowledge warten



Lösung: Einführung einer Zeitschranke (Timeout) beim Sender
Neues Problem: welchen Wert soll die Zeitschranke haben?
Für den Time Out-Wert gibt es keine generelle Lösung!
75
5.7.2
Bestätigung mit Zeitschranke (timeout) auf der Senderseite
Quelle
(Sender)
Senke
(Empfänger)
Zeitüberwachung
Bl
oc
k
Time- benötigte
Zeit
outZeit
A
CK
Quelle
(Sender)
Senke
(Empfänger)
Zeitüberen
wachung B
tw
loc
ed
k
er
TimeoutZeit
Aktivierung
des Timouts
od
er
AC
K
(1) Beispiel für eine fehlerfreie Übertragung
(2) Beispiel für das Erkennen eines
Nachrichtenverlustes durch Ablauf
der Zeitschranke
de
Bl rsel
oc be
k
(1)
AC
K
rechtzeitig
(2)

Weiteres Problem: Der Rahmen i wird 2x fehlerfrei übertragen
 Der Empfänger gibt den Block i an die nächst höhere Schicht 2x weiter

Daraus entsteht ein Duplikat, das zu einem Fehler führen würde
76

Lösung: Einführung von Sequenznummern
5.7.3

Bestätigung mit Zeitschranke und Sequenznummern auf der Sender- und Empfängerseite
Aufgaben von Sequenznummern:
1.) Erkennung von Duplikaten
• bei einer unerwünschten Verdopplung des Rahmens bleibt die Sequenznummer gleich
2.) Quittieren von mehreren Rahmen auf ein Mal (Sammelquittung)
3.) Zur Flusssteuerung zwischen benachbarten Rechnern
 Sequenznummern werden sowohl zur Fehlerkontrolle als auch zur Flusssteuerung
verwendet


Fehlerkontrolle heißt: „Sind alle Blöcke da?“
Flusssteuerung heißt: „Sind die letzten Blöcke zu schnell gekommen?“
77
5.7.3.1
Beispiel für das Erkennen von Duplikaten
Quelle
(Sender)
Senke
(Empfänger)
Bl
oc
ki
-1
verarbeiten
Zurückgeschickte Sequenznummern, i-1, i, i+1, ... dienen zugleich
als Bestätigung.
K
AC
Zeitüberwachung
Bl
i-1
oc
ki
K
AC
timeout
Bl
= weiterleiten zur Schicht 3
(Vermittlungsschicht)
i
verarbeiten
= weiterleiten zur Schicht 3
(Vermittlungsschicht)
oc
ki
wegwerfen,
AC
K
78
i
weil schon einmal empfangen
5.7.3.2
Beispiel für eine Sammelquittung
Quelle
(Sender)
Senke
(Empfänger)
0
I(0)
1
2
verarbeiten
I(2)
verarbeiten
)
B(1
I(3)
3
Situation: I(2) wird zu
spät bestätigt und I(3)
geht verloren. Deshalb
wird I(2), I(3), I(4) und I(5)
zwei Mal gesendet => ineffizient im Fehlerfall
verarbeiten
4
I(4)
5
wegwerfen,
weil I(3) fehlt
wegwerfen,
weil I(3) fehlt
wegwerfen,
weil I(2) schon da
I(5)
ut
eo
tim 2
Zeitüberwachung
I(1)
I(2)
3
I(3)
4
verarbeiten
I(4)
)
2
(
B I(
5)
)
4
(
B
5
verarbeiten
verarbeiten
I = Informationsblock
B = Bestätigung
)
B(5

Zurückgeschickte Sequenznummer B (1) dient als Bestätigung für die Blöcke 0 und 1
79
5.8


Nachdem ein Übertragungsfehler durch CRC-Prüfung oder Timeout erkannt wurde,
sollte der betreffende Rahmen neu geschickt werden, sofern nicht Echtzeitbedingungen herrschen (z.B. aufgrund von Video-Streaming in web TV)
Für die Rahmenwiederholung gibt es verschiedene Strategien:
5.8.1


Fehlererbehebung durch Rahmenwiederholung
Fehlerbehebung mit „go-back-n“ und ohne Pufferung beim Empfänger
Im Falle eines Fehlers (CRC falsch) bleibt das Ack aus
Nach Ablauf des Timers überträgt der Sender sämtliche Rahmen ab dem unbestätigten
Rahmen neu.
alle Rahmen ab dem Fehler
noch einmal übertragen
Timeout-Intervall
Sender 0
1
2
3
Ac
Empfänger
0
k
1
0
4
Ac
k
F
5
6
7
8
2
3
4
1
5
Ac
V
V
V
V
V
V
2
k
3
2
6
Ac
k
4
3
7
Ac
5
Fehler
Von der Sicherungsschicht
verworfene Rahmen
80
k
Zeit
4
8
Ac
k
6
5
9
Ac
k
7
10
6
8





Fehler werden empfängerseitig anhand eines falschen CRCs festgestellt und senderseitig anhand des Timeouts
Jeder Rahmen muss einzeln quittiert werden
Keine Sammelquittung möglich, da keine Pufferung
Vorteil: Einsparen von Pufferplatz. Ist heutzutage nicht mehr wichtig.
Nachteil: Ineffizient im Fehlerfall, da alle Rahmen des Timeout-Intervalls neu übertragen werden müssen. Ist auch heute noch ein Nachteil.
81
5.8.2
Fehlerbehebung mit „go-back-n“ und mit Pufferung beim Empfänger
Für Rahmen 6 kommt Ack 8 zu spät, aber
Rahmen 7 und 8 werden nicht zweimal
übertragen
Timeout-Intervall
Sender 0
1
2
3
Ac
Empfänger
0
k
1
0
4
Ac
k
F
5
6
7
8
2
3
4
1
Ac
3
4
5
6
7
8
2
Fehler
Zeit







5
Von der Sicherungsschicht
gepuffert (gespeichert)
k
V
6
9
10 11 12
8
Ac
V
V
V
9
k
9
10
Nachricht 2-8 an die
Vermittlungsschicht
übergeben
Im Falle eines Fehlers bleibt das Ack aus
Der Empfänger puffert alle danach korrekt erhaltenen Rahmen
Nach Ablauf des Timers beginnt der Sender, alle Rahmen ab dem Unbestätigten neu zu
übertragen, bis er eine Sammelquittung vom Empfänger erhält
Der Sender fährt danach mit dem ersten noch nicht übertragenen Rahmen fort
Die erneute Übertragung von 7 und 8 wird durch Sammelacknowledge vermieden
Sammelquittungen haben den Vorteil höherer Ausnutzung der Bandbreite
Anwendung: TCP
82
5.8.3
Fehlerbehebung durch „selective repeat“
Timeout-Intervall
Sender 0
1
2
3
Ac
Empfänger
0
k
1
0
4
Ac
k
F
Fehler
5
1
6
Ac
3
k
4
3
7
Ac
k
4
5






Ac
k
6
5
2
Ac
k
7
6
9
Ac
k
8
7
10 11 12 13 14
Ac
k
2
Von der Sicherungsschicht
gepuffert
Zeit

8
8
Ac
k
2
9
Ac
k
9
Ac
k
10 11
k
Ac
10 11 12
Rahmen 2-8 werden an die
Vermittlungsschicht
übergeben => Latenz durch Fehlerkorrektur
Der Empfänger bestätigt jeden korrekt erhaltenen Rahmen sofort (keine Sammelquittung)
Er puffert alle korrekt erhaltenen Rahmen, auch nach einem fehlerhaften Rahmen
Bei Ablauf des Timers überträgt der Sender nur den nicht bestätigten Rahmen neu
Jedes fehlerfreie Paket wird bestätigt
Nachteil: viele Bestätigungen => schlechte Ausnutzung der Bandbreite in Gegenrichtung
Vorteil: keine unnötige Wiederholung korrekt empfangener Pakete => gute Ausnutzung
der Bandbreite zwischen Sender und Empfänger
Da Acknowledges viel kürzer als Nutzdaten sind, lohnt sich dieses Verfahren
83

Allen Verfahren gemeinsam ist eine erhöhte Latenz bei der Datenübergabe im Fehlerfall
5.8.4



Aktive Fehlerkontrolle
Bisher: passive Fehlerkontrolle
Passiv heißt nicht-Senden von (positiven) Acknowledges
Nachteile der passiven Fehlerkontrolle:
• Keine Unterscheidung zwischen fehlenden und fehlerhaften Blöcken
• Zeitverzögerung bis zur Wiederholung des Sendevorgangs = unnötige Wartezeit beim Sender im Fehlerfall


Milderung des Latenzproblems durch aktive Fehlerüberwachung
Aktive Fehlerüberwachung geschieht durch Versenden von negativen Quittungen
(NACKs)
84
S
E
Info
r
mat
ion
un
tätig
s
e
K
B
Paketempfang ohne Übertragungsfehler
 Senden von ACK
g
AC
S
K
NAC
( Wi
ede
rh o
lu

E
Info
rma
tion
ng)
Paket wird mit Übertragungsfehler empfangen
 Senden von NACK
 Datum wird vor Ablauf
des Timeout noch einmal
gesendet = schneller
Wenn ein Rahmen unterwegs verloren geht, enthält der Sender weder ACK noch NACK
 Timeout des Senders wird aktiv
85
5.9




Die Flusssteuerung soll verhindern, dass der Sender den Empfänger mit Daten überschwemmt, d. h. zu schnell sendet => der Datenfluss wird gebremst (=gesteuert)
Für die Flusssteuerung wird oft kein eigener Mechanismus eingesetzt
Vielmehr wird die Fehlererkennung über Acknowledges/Sequenznummer „zweckentfremdet“
Acknowledges dienen dann zur Datensicherung und zur Flusssteuerung
=> Stop & Wait-Protokoll
5.9.1

Flusssteuerung
Stop-and-Wait-Protokoll zur Flusssteuerung zwischen benachbarten Rechnern
Vorbedingungen für Stop-and-Wait-Protokoll:
1.) Überwiegend fehlerfreie Übertragung zwischen Sender und Empfänger
2.) Beschränkte Anzahl von Puffern (z.B. genau ein Puffer bei Sender und Empfänger)
3.) Verarbeitungsgeschwindigkeiten unterscheiden sich (z. B. schneller Großrechner
und langsames Handy)
4.) Timeout steht auf ausreichend hohem Wert
 Positives Acknowledges kann als einfache Flusssteuerung verwendet werden

Nachteil: es kann nie mehr als ein Datenrahmen (ab L3 Datenpaket )unterwegs sein
86
 Der Sender muss auf das Acknowledge warten = Stop & Wait-Protokoll = sehr langsame Datenübertragung
5.9.2










Flusssteuerung mit Schiebefenster
Schiebefenster-Protokoll (Sliding Window) vermeidet Nachteile der vorangegangenen
Protokolle und ist gleichzeitig effizient bei der Bandbreiteausnutzung
Sliding Window ist Stand der Technik und wird bei TCP eingesetzt
Bei Ethernet gibt es allerdings kein Schiebefenster, deshalb gilt das unten gesagte
beim Internet nur für Schicht 4 mit TCP als Protokoll
Sliding Window beruht bei Sender und Empfänger auf je einem Ringpuffer, d.h., es sind
immer zwei Ringpuffer nötig, einer zum Senden und einer zum Empfangen
Ein Ringpuffer wird über einen Zeiger implementiert, der modulo-mäßig inkrementiert
wird
Beim Erreichen der Obergrenze fängt der Pointer wieder von unten an zu zählen =
„Ring“
Der Speicherbereich zwischen größtem und kleinsten Wert des Pointers ist der Ringpuffer
Die Größe des Ringpuffers sei r
Wird in den Ringpuffer geschrieben, wird der Pointer modulo-mäßig inkrementiert
Wird aus dem Ringpuffer gelesen, wird der Pointer modulo-mäßig dekrementiert
87



Der Ringpuffer wird zum Sliding Window, wenn noch ein zweiter Pointer verwendet
wird
FP + BP definieren einen aktiven Bereich innerhalb des Ringpuffers r
Dieser aktive Bereich heißt „Sliding Window“ (Schiebefenster)
 Sliding Window = Frontpointer FP + Backpointer BP



Außerdem gilt: FP + BP werden beim Sliding Window nur modulo-mäßig inkrementiert
aber nie dekrementiert
Die maximale Größe des Sliding Window im Ringpuffer sei w (w r)
w heißt auch window size (Fenstergröße)
5.9.2.1

Ablauf beim Schiebefenster
Für den Ablauf gelten folgende Regeln:
1.) Beim Verbindungsaufbau vereinbaren Sender und Empfänger die Größe r der Ringpuffer und die Fenstergröße w (Nebenbedingung: w   r Zahl n der Sequenznummern)
2.) Nach dem Verbindungsaufbau besitzt der Sender das Recht, bis zu w Rahmen bzw.
Pakete zu senden, ohne ein Acknowledge zu empfangen
3.) Spätestens nach w Rahmen bzw. Pakete muss beim Sender ein Acknowledge eintreffen, sonst stoppt der Sender => „Schließen“ des Fensters beim Sender
88
4.) Der Empfänger kann schon vor dem Schließen des Fensters beim Sender Acknowledges an den Sender senden => „Öffnen“ des Fensters beim Sender
5.9.2.2
Verhalten von Frontpointer und Backpointer bei Sender und Empfänger
1.) Beim Sender inkrementieren gesendete Daten den Backpointer BPSender
2.) Beim Sender inkrementieren empfangene ACKs den Frontpointer FPSender
3.) Beim Empfänger inkrementieren empfangene Daten den Backpointer BPEmpfänger
4.) Beim Empfänger inkrementieren gesendete ACKs den Frontpointer FPEmpfänger


Für Sender und Empfänger gilt, dass der Abstand zwischen FP und BP maximal = w
sein kann
Der Sender weiß, dass ein empfangenes ACK bedeutet, dass die Daten beim Empfänger angekommen sind und an dessen Sicherungsschicht weitergeleitet wurden d.h.,
dass alles O.K. ist
Beispiel: bei Sender und Empfänger sei r = 8 und die Fenstergröße w sei 3.
89
 Sender darf bis zu 3 Pakete ohne Bestätigung schicken
Back Pointer
7
0
6
1
5
2
4
3
90
Sender kann aus seinem Sendepuffer die
Rahmen mit der Nr. 0, 1
und 2 abschicken
Front Pointer
5.9.2.3
Beispielablauf für ein Schiebefensterprotokoll mit r=8 und w=3
0
Sender
0
Empfänger
Empfänger kann
Rahmen 0,1 und
2 empfangen
2
frei
1
1
Sender kann
Rahmen 0,1
und 2 schicken
Bl
oc
2
Bl
belegt
Sender will
noch Rahmen
2 schicken
2
oc
Bl
oc
k(
k(
k(
0)
1)
Empfänger kann
Rahmen 1 und
2 empfangen
)
Ack (0
2)
Ack (2
)
0
0
Sender will
Rahmen 3
schicken
1
Bl
2
1
oc
k(
3)
2
5
4
3
Sender will
Rahmen 4 und
5 schicken
5
3
Empfänger kann
Rahmen 4 und
5 empfangen
5
4
Empfänger kann
Rahmen 3,4 und
5 empfangen
4
91
Sender
Empfänger
Bl
oc
Bl
Sender will
momentan
nichts schicken
Sender will
Rahmen 6, 7
und 0 schicken
5.9.2.4

k(
4)
5)
Ack (5
7
6
oc
k(
Empfänger hat
keinen Puffer
frei
)
0
7
0
6
Empfänger kann
Rahmen 6,7 und
0 empfangen
Wahl von Fenstergröße w und Puffergröße r beim Empfänger
Es sind verschiedene Fälle zu unterscheiden:
1.) langsamer PC sendet mit kleiner Latenz an schnelle Workstation, und es soll das stop
& wait-Protokoll verwendet werden => r = w = 1 ist ausreichend
92
schnell
Acknowledge
wird sofort geschickt
langsam
senden
empfangen
2.) schnelle Workstation sendet mit kleiner Latenz an langsamen PC, und es soll das
stop & wait-Protokoll verwendet werden => r = w = 1 ist ausreichend
schnell
senden
langsam
empfangen
lange Pause bis
zum Acknowledge
(sollte kürzer als
der timeout sein
 Bei ungleichmäßig schnellen Kommunikationspartnern und kleiner Latenz und stop
& wait-Protokoll ist r=w=1 ausreichend
93
3.) Beide Rechner sind gleich schnell, und es gibt eine kurze Latenz zwischen den Rechnern, und es soll eine hohe Bandbreite erreicht werden
 Es sind w>1 Puffer erforderlich

Ein ununterbrochener Strom von Daten entsteht dann, wenn w so groß ist, dass das
erste Acknowledge beim Sender eintrifft, bevor sein Sliding Window schließt
Beispiel: Kommunikation zwischen zwei Servern => z.B.: 2  w  7
4.) Beide Rechner sind gleich schnell, und es gibt eine lange Latenz zwischen den Rechnern, und es soll eine hohe Bandbreite erreicht werden
 Es sind w>>1 Puffer erforderlich

Begründung:
• eine Strecke mit großer Latenz wirkt wie eine langes Rohr (sog. Pipeline) durch das Rahmen/Pakete wandern müssen
• Es ist ein großes w nötig, um zu Beginn der Übertragung die lange Übertragungsstrecke
(Pipeline) mit Rahmen füllen zu können
• Je größer die Verzögerung bei der Übertragung, desto größer muss w gewählt werden
• Hinzu kommt: Nach dem Füllen der Pipeline muss die Pipeline möglichst ständig gefüllt
bleiben, um eine hohe Bandbreite zu erzielen

Auch hier muss das erste Acknowledge beim Sender eintreffen, bevor sein Sliding
Window schließt
94
Beispiel: Kommunikation zwischen zwei Servern mit Übertragung über einen geostationären Nachrichtensatelliten => z.B.: 16 w 127
lange Verzögerung, da
mehr als 2x36 000 km
Wegstrecke
6 Lokale Netze (LANs)
6.1


Ein LAN (Local Area Network) ist ein Netzwerk für die bitserielle Übertragung zwischen
Rechnern auf demselben Grundstück
Ein LAN befindet sich rechtlich unter der Kontrolle des Benutzers und muss deshalb
auf den Bereich innerhalb dessen Grundstückgrenzen beschränkt bleiben
6.2

Was ist ein LAN?
Merkmale eines lokalen Netzes
Hohe Geschwindigkeit (100 MBit/s - 10 GBit/s)
95



Einfacher, kostengünstiger Anschluss (meistens Ethernet oder Industrial Ethernet)
Keine Telekom-Gesetzgebung, da alles auf eigenem Grundstück
Anschluss aller Arten von Geräten möglich, wie:
• PCs, Workstations, Großrechner, Drucker und andere periphere Geräte
• Geräte und Apparate der Kosumelektronik und der Automatisierungstechnik

Übergang auf Weitverkehrsnetz (WANs) wie z.B. das Internet erfolgt mittels Gateway
Position von lokalen Netzen im ISO-Modell
Schicht 3
Vermittlungsschicht
Schicht 2b
LLC = Logical Link
Control
Schicht 2a
Schicht 1
Sicherungsschicht

MAC = Medium Access Control
Übertragungsschicht
96
LAN
= phys. Medium für
LANs (Kabel oder Funk)
6.3
Die Sicherungsschicht im LAN nach IEEE 802
802.1
data link
layer
Sicherungsschicht
LLC-Teilschicht 2 b
MAC-Teilschicht 2a
MAC
Bitübertragungsschicht
physical
layer
MAC
MAC
802.3
802.4
802.5
CSMA/CD Token Bus Token Ring
MAC
802.6
DQDB
...
MAC
MAC
802.11
WLAN
802.15
Bluetooth
Physikalisches Medium (Kabel, Funk)

Standardisierung von LANs erfolgt in ISO-Schicht 1 und 2
• 802.1 = übergeordnete 802-Standards
• 802.2 = mittlerer Teil der Sicherungsschicht = Logical Link Control (LLC)
• 802.x = unterer Teil der Sicherungsschicht = Medium Access Control (MAC)

Mittlerweile gibt es ca. 22 IEEE 802.X-Normen, von denen einige sehr wichtig sind, wie
z.B. Ethernet und WLAN
97
6.4




Es gibt ein prinzipielles Problem beim Schreiben auf einen gemeinsam genutzen, physikalischen Übertragungsweg (Beispiel Funk)
Grund: Funk ist ein sog. Broadcast-Medium und voneinander unabhängige Stationen
könnten gleichzeitig anfangen zu senden  Sendekollisionen
Die Medienzugangsschicht sorgt für einen geordneten Ablauf beim Medienzugang
Bei Punkt-zu-Punkt-Verbindungen aus einem Sender und einem Empfänger ist die
Schicht 2a ohne Funktion (Beispiel: Switched Ethernet)
6.4.1

Der Medienzugang bei LANs (Schicht 2a, MAC Layer)
Wie werden Kollisionen geregelt?
Es gibt zwei Methoden:
1.) Kollisionsentdeckung
• Idee: „Lasse Kollisionen stattfinden, entdecke sie, und wiederhole Übertragung“
• so verfährt Ethernet
2.) Kollisionsverhinderung
• Idee: „Verwende einen speziellen, im Kreis zirkulierenden Rahmen als Sendeberechtigungserlaubnis, um den Zugriff auf das Medium zu steuern“
• so verfährt Token Ring
• Das Token (= Zeichen), ist ein spezieller Rahmen der Schicht 2a, der den Zugriff auf das
gemeinsame Medium derjenigen Station erlaubt, bei der sich das Token gerade befindet
98
6.5



Macht die eigentliche Datensicherung
Gemäß IEEE gibt drei verschiedene Datensicherungsarten: LLC Typ 1, 2 und 3, wobei
LLC1 das einfachste und LLC 2 das komplexeste Verfahren ist. LLC 3 ist in der Mitte.
Ethernet LAN unterstützt nur LLC Typ 1
6.5.1








LLC Typ 1: Unbestätigter und verbindungsloser Dienst
Unbestätigte Übertragung (=keine Acknowledges für Datenrahmen)
kein Verbindungsaufbau notwendig
Höhere Schichten >2 sind für die Erhaltung der Reihenfolge der Rahmen, für die Fehlerbehebung und für Flusssteuerung verantwortlich (im Internet macht dies TCP)
So verfährt Ethernet
Ethernet hat aber zumindest 32 Bit-CRC im Rahmentrailer
6.5.2

Die Datensicherung bei LANs (Schicht 2b, Logical Link Control)
LLC Typ 2: Bestätigter Verbindungsorientierter Dienst
LLC Typ 2 implementiert sog. verbindungsorientierten Dienst
Verbindungsorientierter Dienst heißt: es gibt 3 Phasen: Aufbau, Transfer und Abbau
LLC Typ 2 implementiert alle drei Phasen
Datentransfer erfolgt mit Bestätigung (ACK)
99


LLC Typ 2 garantiert die Ablieferung des Pakets beim Empfänger und die richtige Reihenfolge der Rahmen und macht auch Flusssteuerung
Wird im Internet erst auf Schicht 4 durch TCP umgesetzt
6.5.3



LLC Typ 3: Bestätigter verbindungsloser Dienst
LLC Typ 3 implementiert sog. bestätigten aber verbindungslosen Dienst (Datagramme)
Bestätigter verbindungsloser Dienst heißt: es keinen Verbindungsaufbau und -abbau
und keine Garantie der korrekten Reihenfolge der Datagramme, aber für jeden Rahmen
erfolgt eine Bestätigung
Wird im Internet auf Schicht 3 von IP oder in der Automatisierungstechnik z.B. für die
Steuerung von Bearbeitungsmaschinen an einem Fließband zur Automobilproduktioneingesetzt (Token Bus)
6.5.4
Weitere Beispiele von Schicht 2b-Protokollen (nicht ISO und nicht IEEE)
• PPP = point-to-point protocol
• SLIP = subscriber line interface protocol
• PPP und SLIP dienen zur gesicherten Datenübertragung, wenn Modems (DSL!) als Schicht
1 und 2a verwendet werden
• PPPoE = PPP over Ethernet: PPP-Variante zur gesicherten Datenübertragung, falls Ethernet als Schicht 1 und 2a eingesetzt wird
100
6.6


LANs mit Kollisionsentdeckung (CSMA/CD)
CSMA/CD heißt: Carrier Sense Multiple Access with Collision Detection
CSMA/CD bedeutet:
• Ein gemeinsam genutztes Medium wie z.B. Funk oder gemeinsames Kabel wird von allen
potentiellen Sendern abgehört, um festzustellen, ob gerade gesendet wird oder nicht
• Wenn gerade gesendet wird, darf niemand sonst senden
• Wenn gerade nicht gesendet wird, darf jeder sendewillige Rechner senden
 Kollisionen sind zu diesem Zeitpunkt möglich
• Ein potentieller gleichzeitiger Mehrfachzugriff von 2 oder mehr Sendern wird durch Kollisionserkennung + zufällig langes Abwarten bei jedem Senders geregelt
• Kollsisionserkennung heißt, jeder Sender lauscht, ob seine Sendung unverfälscht auf dem
gemeinsamen Medium zu hören ist oder nicht
• Wenn ja, ist alles O.K., wenn nein, gibt es eine Kollision
• Zufällig langes Abwarten bedeutet, dass jeder Sender auswürfelt, wie lange er nach einer
erkannten Kollision mit einem erneuten Sendeversuch wartet
• Dazu wird ein Pseudozufallszahlengenerator verwendet
101
6.6.1

Beispiel: 10Mbit/s-Ethernet mit gemeinsam genutzten Kabel
Schicht 1 und 2a haben ein gemeinsames Koaxialkabel
Rechner
Rechner
Kabelabschlußwiderstand
Ethernetkabel
Kabelabschlußwiderstand
Transceiver
(=Ethernet-Interface)
Koaxialkabel
102
6.6.2
Medienzugang beim 10 Mbit/s-Ethernet mit gemeinsam genutzten Kabel
1. Lauschen, ob Kanal frei ist
2. Kanal ist frei:
Station A sendet nach B
Rechner
A
EthernetKabel
Carrier Sense
Transceiver
B
4. Kollision, wenn mehr als zwei Stationen gleichzeitig senden
3. Station B empfängt nur
A
A
Multiple Access
Kollision
B
6.6.3


B
Moderne Beispiele für gemeinsam genutzte Medien
Mobilfunktelefonie, WLAN, Bluetooth, IR-Schnittstellen, USB und Switched Ethernet
Das gemeinsam genutzte Medium bei USB ist der Hub und bei Ethernet der Switch
103



Der USB Hub arbeitet auf ISO-Schicht 1 und verteilt jeden Rahmen an alle Ports
Ein Ethernet Switch arbeitet auf Schicht 2 und macht eine Art Routing anhand der MACZieladresse, so dass der Rahmen den Switch nur auf einem einzigen Port verlassen
kann
Da Ethernet keine Schicht 2b hat, gehen bei Switched Ethernet Rahmen verloren, sobald der Puffer des Switches voll ist
6.6.4



Bedingung für Kollisionserkennung bei CSMA/CD
Es gilt: alle sendewillige Station hört das Medium ab („listen before talk“):
d.h. falls belegt, wird das Senden zurückgestellt, falls frei, wird mit dem Senden begonnen
Aber gibt es eine wichtige Bedingung, um Kollisionen zu erkennen:
• Die Rahmendauer TR jedes Senders A muss größer oder gleich der doppelten maximalen
Laufzeit TL im Medium sein, d.h. TR  2TL
Def.: TR ist die Dauer, die der Sender braucht, um seinen Rahmen abzusenden. TL ist die
Laufzeit dieses Rahmens von einem Ende des Mediums zum anderen ist

Grund: der worst case ist es, wenn die Station A am Kabelanfang und die Station B am
Kabelende ungefähr gleichzeitig zu senden anfangen:
• 1xTL dauert es, bis der Senderahmen von A die zweite Station B am Ende des Mediums erreicht und dort mit einem Rahmen von B kollidiert
104
• 1xTL dauert es, bis diese Kollision zu der ersten Station A zurückkehrt und erkannt werden
kann
• Solange, bis eine Kollision von A am anderen Ende zu A zurückkehrt, sollte der Rahmen
von A andauern, damit klar ist, ob er kollidiert ist oder nicht
 Bei einer vorgegebenen Bitrate und Kabellänge zwischen Sender und Empfänger
kann die minimale Rahmendauer TR nicht unterschritten werden, sonst ist CSMA/CD
nicht mehr möglich


LANs mit CSMA/CD haben ab > 1 Gb/s entweder große Rahmenlängen oder kurze Kabellängen
Je höher die Bitrate bei CSMA/CD ist, desto kürzer muss das Kabel sein oder desto länger die Rahmenlänge, um im worst case-Kollisionen noch entdecken zu können
Beispiel: 10 Gb/s-Ethernet vom Typ 10GBaseT hat bei einer einer Rahmenlänge von
1500 Bytes eine maximale Kabellänge von 100 m (bei Cat 7-Kabeln), was die Verwendung
in der Gebäudeverkabelung einschränkt.
6.6.4.1


Kollisionsauflösung bei CSMA/CD (Ethernet ohne Switch)
Nachdem ein Sender eine Kollision erkannt hat, hört er auf zu senden und wartet eine
Zeit ab, die von einer Zufallszahl bestimmt wird, bevor er wieder zu senden versucht
Ein Sender kann mehrfach hintereinander das Schicksal haben, dass seine Sendung
mit einer anderen Sendung kollidiert (= i-fache Kollision desselben Rahmens)
105

Nach der i. Kollisionen (1i 10) wird eine Zufallszahl aus dem Intervall [0, 1, 2,.... 2i-1]
gewählt

Für 11 i  15 wird die Zufallszahl aus dem konstanten Intervall [0, 1, 2,.... 210 - 1] gewählt
Ab i = 16 wird der Sendeversuch abgebrochen und eine Fehlermeldung erzeugt

 Das Intervall für die Zufallszahl wird nach jedem erfolglosen Senden solange verdoppelt, bis i = 10 erreicht ist.
 Der statistische Mittelwert der Wartezeit verdoppelt sich nach jeder Kollision des
Senders


Dies wird als „exponential backoff“-Strategie bezeichnet
Mit einem Switch wird das Kollisionsproblem auf den Switch verlagert, sobald 2 Sender
auf denselben Ausgangsport senden wollen
6.6.4.2

Vermeiden von Kollisionen bei CSMA/CD
Erhöhte Kollisionsgefahr besteht stets nach Abschluss einer Übertragung:
• Mehrere sendewillige wartende Stationen warten solange ab, bis das Medium frei ist und
fangen dann gleichzeitig zu senden an

Es wird ein Algorithmus für das Sendebeginn-Verhalten nach Abschluss einer laufenden Sendung benötigt, d. h., wenn das Medium vom Zustand „belegt“ in den Zustand
„frei“ übergeht
106


Bei Ethernet wird der einfache „1-persistent-Algorithmus“ verwendet
Andere CSMA/CD-LANs können andere Strategien haben, z. B. „p-persistent“ oder
„non-persistent“ (persistent = hartnäckig, andauernd)
Def.: 1-persistent heißt: sendet mit der Wahrscheinlichkeit 1, sobald das Medium frei ist
Def.: p-persistent heißt: sendet mit der Wahrscheinlichkeit p, sobald das Medium frei.
D.h., der Erwartungswert der Zufallsverteilung ist p.
Def.: non-persistent heißt, es wird nicht darauf gewartet, bis das Medium frei ist, sondern
es wird, nachdem erkannt wurde, dass es besetzt ist, eine zufällige Zeit gewartet, bis das
Medium wieder überprüft wird. Der Erwartungswert der Zufallsverteilung ist unbestimmt.
6.6.4.3

CSMA/CD-Adressformat
Bei IEEE 802.x gibt es 2 Adressformate für DA und SA (sog. MAC-Adressen)
1.) 6 Byte MAC-Adressen (48-Bit) = üblich, z.B. bei Ethernet und WLAN
I/G
46 Bits Adresse
U/L
107
2.) 2 Byte-MAC-Adressen (16 Bit) = sehr selten und nur für lokales Netz ohne Verbindung
nach außen
I/G

15 Bits Adresse
Bei 6 Byte MAC-Adressen stehen 2 Steuerbits (I/G und U/L) zur Verfügung, bei 2 Byte
MAC-Adressen nur eins (I/G)
 Bei 6 Byte-Adressen sind 46 Adressbit nutzbar = ca. 7*1013 Adressen

Bedeutung der MAC-Steuerbits bei 6-Byte Adressen:
• I/G= 0: Stationsadresse für eine Punkt-zu-Punkt-Verbindung = üblich
• I/G= 1: Broadcast-Verbindung
· Die Broadcast-Verbindung ist rel. selten, wird aber beim Address Resolution Protocol
ARP verwendet
· Wenn I/G=1, dann müssen alle anderen Bits ebenfalls auf 1 sein
 Broadcast-Adresse = FF-FF-FF-FF-FF-FF
• U/L= 0: Weltweit eindeutige MAC-Adresse = häufig
• U/L= 1: Local verwaltete MAC-Adresse ohne Verbindung nach aussen = seltener


Bei U/L = 1 darf kein Gateway im selben LAN existieren
Bei U/L = 1 kann die MAC-Adressen durch den Benutzer frei gewählt werden
108


U/L = 1 wird z.B. bei Cloud Computing für die sog. Compute Nodes verwendet
Bei U/L = 0 gibt es einen LAN Gateway, der u.a. für die Abbildung IP-Adresse->MACAdresse zuständig ist
6.6.4.4


6 Byte MAC-Adressen mit U/L= 0 waren ursprünglich weltweit eindeutig, denn jede
Ethernetkarte hatte eine fest verdrahtete MAC-Adresse
Wurde mittlerweile geändert, es gibt per Software-definierbare MAC-Adressen, was es
Hackern leider erleichtert zu betrügen
6.7

1 Gb/s-/10 Gb/s-Ethernet
Das aufgrund seines geringen Preises am weitesten verbreitete LAN ist das Ethernet
6.7.1

Schicksal der weltweit eindeutigen MAC-Adressen
Typen von 1 Gb/s-/10 Gb/s-Ethernet ohne/mit Switch
Es gibt diverse Typen. Davon sind besonders wichtig:
1.) 1000BASE-T: hat 4 verdrillte Doppeladern in ungeschirmtem Cat-5e-Kupferkabel als
DTE-Anschlusskabel; mit oder ohne Switch; bis 100 m = kurzes LAN
2.) 1000BASE-CX: hat 2 verdrillte Doppeladern in geschirmtem Cat-7-Kupferkabel als
DTE-Anschlusskabel; nur mit Switch, bis 25 m = sehr kurzes LAN
109
3.) 1000BASE-LX: hat 2 Glasfaserkabel für bidirektionalen Transfer; entweder nur Punktzu-Punkt oder mit Switch und elektrisch/optisch-Wandlern; bis 5 Km = gutes LAN
4.) 10GBaseT: hat 4 verdrillte Doppeladern in geschirmtem Cat-7-Kupferkabel als DTEAnschlusskabel; nur mit Switch; bis 100 m bei Beachten spezieller Verlegevorschriften = kurzes LAN
5.) 10GBASE-LR: hat 2 Glasfaserkabel für bidirektionalen Transfer; entweder nur Punktzu-Punkt oder mit Switch und elektrisch/optisch-Wandlern; bis 10 km = kurzes MAN
6.7.2





1 Gb/s-Ethernet-Rahmenformat IEEE 802.3
7 Byte
1
2/6
2/6
2
0-1500
x
Präambel
SD
DA
SA
Control
Data
Pad
4
FCS
Präambel: 7 Byte: 7 x 10101010 = maximal viele Bitwechsel zur Empfängersynchronisation
Die Präambel dient zur Synchronisation des Empfängertaktes mit dem Sendetakt
SD: Starting Delimiter (1 Byte: 10101011)
Der Starting Delimiter dient zur genauen Kennzeichnung, wann ein Paket anfängt.
DA: Destination Address (i.d.R. 6 Byte MAC-Adresse)
110




Die Zieladresse dient zur Klärung, wohin ein Paket geschickt werden soll
SA: Source Address (i.d.R. 6 Byte MAC-Adresse)
Die Herkunftsadresse sagt, wer den Rahmen gesendet hat
Control: enthält die Länge n der Daten (2 Byte)
• Achtung: Werte ab 2048 (0x0800) kennzeichnen nicht mehr die Länge, sondern kodieren
zusätzliche Steuerungsfunktionen, den sog. EtherType








Datenfeld aus Byte, 0  n  1500
Pad: Füllbytes zur Erreichung der Mindestrahmenlänge von 64 Byte, falls Nutzdaten <
46 Byte
Achtung: Die Präambel und der SD werden bei der Rahmenlänge nicht gezählt
Nutzdaten sollten mindestens 46 Byte lang sein, sonst wird ein Pad eingefügt
Mindestlänge eines 1Gb/s-Rahmens ohne Präambel und SD muss 64 Byte betragen,
um Kollisionen auf die maximal erlaubte Entfernung erkennen zu können
Der Ethernetrahmen-Overhead ohne Pad beträgt 26 Byte
FCS (Frame Check Sequence) = 4 Byte CRC
Neben dem Standard-Ethernet gibt es noch zahlreiche Varianten, die z.T. auch standardisiert sind
 Ethernet ist mehr ein Markenname als eine ganz bestimmte Technologie

Werte ab 0x0800 im Control-Feld kodieren folgende Ethertypes:
• Spezialtypen wie z.B. Echtzeit-Ethernet (PROFINET, EtherCAT, POWERLINK, SERCOS III)
111
• die verwendeten Protokolle auf Schicht 2 oder 3 (PPPoE, IPv4, IPv6, arp, rarp)
• die Existenz eines virtuellen LANs (VLAN) durch den Wert = 0x8100
6.7.3





VLANs erlauben zum einen eine Art Routing zwischen mehreren LANs, die am selben
Switch angeschlossen sind
VLANS erlauben zum anderen innerhalb eines realen LANs mehrere virtuelle Sub-LANs
Bei VLANs verlängert sich der Rahmen um 4 Byte für die VLAN-Adresse
Der Ethernetrahmen-Overhead ohne Pad beträgt bei VLAN 30 Byte
Dementsprechend verkürzen sich die minimalen Nutzdaten ohne Pad auf 42 Byte
6.8

VLANs
Repeater, Bridge, Switch, Gateway, Router, Hub und Firewall
Repeater = elektrischer Verstärker auf der ISO-Schicht 1 innerhalb eines LANs
• verstärkt innerhalb eines LAN-Segments oder zwischen zwei Segmenten desselben LANs

Bridge = Kopplung von 2 LANs auf der ISO-Schicht 1
• elektrische Trennung der Signale (Potentialtrennung), keine Rahmenspeicherung



Hub ist wie Bridge, aber für die Kopplung von >2 LANs (hat mehr ports als eine Bridge)
Hub macht einen Broadcast
Switch = erlaubt sternförmige Punkt-zu-Punkt-Verbindung auf der ISO-Schicht 2a zur
Kopplung von >1 Punkt-zu-Punkt LANs
112
• Switch macht eine Art Routing auf der Schicht 2a, indem er die MAC-Adresse auswertet
und einen Rahmen an einem bestimmten Port wieder ausgibt
• Spezielle MAC-Adresse erlaubt auch Broadcast
• Switches speichern Rahmen, die zu schnell gesendet werden, bis der Puffer voll ist
• Switches machen keine Datensicherung

Gateway = Verbindung auf ISO-Schicht 3 zwischen einem LAN und einem MAN/WAN
• Paketpufferung und Wegewahl findet statt

Router = Verbindung auf ISO-Schicht 3 zwischen mehreren WANs
• Paketpufferung und Wegewahl findet statt

Firewall = Verbindung auf Schicht 4 zwischen einem WAN und einem MAN/LAN einer
Firma
• kontrolliert, ob auf Schicht 7 email, ftp oder http als Protokoll verwendet wird, d.h. prüft die
Schicht 4-Nutzlast!
• nur email, ftp oder http-Pakete dürfen aus Sicherheitsgründen die Firewall passieren
 sehr viele verteilte Anwendungen und viele Middleware verwenden http als Protokoll
der Schicht 7, um durch die Firewall zu kommen
6.9


Adressauflösung im LAN
Adressauflösung = Abbildung der Internet-Adresse (IP-Adresse) eines Rechners auf
die physikalische Adresse (MAC-Adresse)
LAN Gateway hat eine Abbildungstabelle und benützt das Address Resolution Protocol
113
ARP. Dieser Fall ist bei Ethernet LANs fast immer gegeben.
6.9.1

Address Resolution Protocol ARP
Das ARP-Protokoll im LAN Gateway läuft folgendermaßen ab:
1.) LAN Gateway sendet mittels MAC-Broadcast ein ARP-Request-Paket, welches die
eigene MAC- und IP-Adresse sowie die IP-Adresse des gesuchten Empfängers enthält
2.) LAN Gateway wartet auf die Antwort des Empfängers in Form eines ARP-Reply-Paket,
welches dessen MAC-Adresse enthält
114
phys. Adresse des
Host B gesucht
ARP-Request Broadcast-Paket
R
Gateway
X
B
Y
Host
Host
Host
B antwortet
ARP-Reply-Paket





R
X
B
Y
Gateway
Optimierung: ARP-Cache im Gateway hält frühere (IP, MAC)-Adresspaare für die
schnelle Beantwortung späterer Anfragen vor
Optional: Jede Station speichert lokal (IP, MAC)-Paare, um ARP requests zu vermeiden
ARP wird z.B von den Befehlen ipconfig in Windows bzw. ifconfig in Unix benützt
ARP-Cache kann durch die Befehle arp bzw. arping angezeigt werden
Reverse Arp (RARP-Protokoll) bildet MAC-Adressen auf IP-Adressen ab
115
6.10
Verdrahtung lokaler Netze
Endgeräte (Rechner)
kein Switch
Switch
Ethernet
(1 Gb/s)
kein
Switch
Stern
Token
Ring
Ring
teilweise vermaschtes Netz
kein Switch
Switches
nicht für
LANs
Endgeräte
Baum
vollständig vermaschtes Netz
116
gemeinsam genutztes
Übertragungsmedium
(Funk, Koaxialkabel)
7 Echtzeitzugang ins Internet





Ein Echtzeitzugang ins Internet wird für z.B. für Multimedia-Anwendungen benötigt und
muss zuerst auf Schicht 1 und 2 bereitgestellt werden
Multimedial heißt: mindestens ein zeitdiskretes und ein zeitkontinuierliches Medium
wird gleichzeitig für die Darstellung von Information benutzt
Zeitdiskret sind: Text, Folien, Diagramme, Tabellen, Bilder
Zeitkontinuierlich sind: Audio, Video
Beispiele für Multimedia: Audio + Diagramme, Video + Folien, Audio + Video + Text +
Diagramme
 Zahl der gleichzeitig verwendeten Medien verschiedener Kategorien ist  2



Durch die Kombination von  2 Medien verschiedener Kategorien entsteht eine neue
Art der Präsentation von Information: Multimedia
Eine multimediale Präsentation ist interessanter, detaillierter und leichter nachvollziehbar
Erzeugung von Multimediadaten mit Hilfe spezieller Software wie Adobe Director
7.1

Multimedia-Anforderungen
Die Kombination von zeitdiskreten mit zeitkontinuierlichen Medien setzt die zeitliche
Synchronisation beider Medienarten voraus
117

Übertragung von Audio-, Video- und multimedialen Daten erfordert deshalb:
1.) Bewahrung der zeitlichen Synchronisation zwischen Bild-, Ton-, Text- und Graphikdaten
2.) Wiedergabe der Daten in Echtzeit
 Datenübertragung muss mit Zeitbezügen untereinander und zur Realzeit erfolgen
(=Echtzeitübertragung und Echtzeitdarstellung)
 Eine Ethernet-LAN-Technik mit gemeinsam genutzen Medium (Kabel oder Switch) ist
ungeeignet, da indeterministisch (Zugang zum gemeinsamen Kabel ist vom Zufall
abhängig bzw. davon, ob ein Ausgangsport im Switch gerade frei ist oder nicht)





Geeignet sind nur Netztechniken mit garantierter Zustellzeit
alle Punkt-zu-Punkt-Netze sind prinzipiell geeignet
alle Broadcast-Netze mit „deterministischem Zeitmultiplex“ sind geeignet
Beispiel für Punkt-zu-Punkt-Netze: Telefonsysteme
Beispiele deterministischer Zeitmultiplexnetze: Token Ring (LAN), FDDI (MAN), Telefon-PCM-Systeme (WAN), Telefon-S-ISDN (WAN), B-ISDN (WAN) = SONET/SDH
S-ISDN = „Small Band Integrated Services Digital Network“ = Schmalbandiges Netz für Telefon- und
Datendienste
B-ISDN = „Broad Band Integrated Services Digital Network“ = Breitbandiges Netz für Telefon- und
Datendienste
118


Beispiel eines zeitdeterministischen Protokolls: ATM (=Asynchronous Transfer Mode).
TCP/IP hingegen ist nicht zeitdeterministisch, d.h. nicht echtzeitfähig, was für Multimedia-Anwendungen ein Problem darstellt
7.2
Internet-Anwendungen mit und ohne Echtzeit
•
•
•
•
•
E-Commerce über das www
E-Learning über Internet-basierte, interaktive Lernmanagementsysteme (Moodle, Ilias, ...)
Videokonferenzen über z.B. Netmeeting oder DFNVC Webkonferenz
Bildtelefonie über z.B Skype oder VoIP
Web-TV über das www, IP-TV über das Internet, Web-Radio über das www, d.h. Audio on
Demand statt CDs und Video-on-Demand statt Video-DVDs
• Teleworking (Heimarbeitsplätze)
• Home Office-Anwendungen über Cloud Computing. Anwender-Software im Netz verfügbar
statt auf lokaler Festplatte gespeichert; Bsp. Google Docs.
• Überwachungsdienste über Web-Kameras (es gibt >>104 Kameras in Deutschland)
119
7.3



Echtzeitzugang über das Telefonnetz
Das Telefonnetz überträgt Daten und Gespräche mittels digitaler PCM-Technik in Echtzeit
Zugang zum Internet von der Ortsvermittlungsstelle bis zum Wohnzimmer kann dagegen sowohl analog als auch digital sein
Analoger Zugang erfolgt über einfaches Modem (bis 56 Kb/s), DSL-Modem (derzeit bis
ca. 50 Mb/s) oder Videokabel (bis ca. 110 Mb/s)
• DSL = Digital Subscriber Line = digitaler Teilnehmeranschluß
• DSL ist eine sehr schnelle Technik für analoge Datenübertragung
• DSL funktioniert mit analogem Telefonanschluss, aber auch über S-ISDN, d.h. über einen
digitalen Teilnehmeranschluss, da auf dem Kabel unterschiedliche Frequenzen benutzt
werden

Digitaler Zugang erfolgt über S-ISDN oder Glasfaser
120
Konfiguration bei (DSL)-Modem-Zugang
Telefonortsvermittlungsstelle
Kunde
(DSL)-Modem
kurzes Kabel (Ethernet
oder USB) oder WLAN
Fernvermittlungsstelle
(DSL)-Modems
max. 10 km verdrillte
Telefonleitung
Gateway
Sonet/SDH WAN
Fernvermittlungsstelle
Kunde
Internet Provider
(DSL)-Modem
Sonet/SDH WAN
7.3.1
Gateway
Sonet/SDH oder MAN
7.4

Alternative Echtzeitzugangstechnologien
Es gibt Alternativen zum Internet-Echtzeitzugang per DSL-Modem:
121
•
•
•
•
•
•
•
•



Über Richtfunkstrecken (z.B. zum Anschluss von Dörfern ans Internet)
Über tieffliegende Satelliten (= LEOs, Low Earth Orbiters)
Über funkbasierte LANs (IEEE 801.11x)
Über GSM, UMTS oder LTE-Mobilfunknetze mittels EDGE, HSDPA
Über Datenübertragung durch das Stromnetz (= Powerline-Technik)
Über neu zu verlegende Glasfasern und Kupferkabel (= FTTC, Fiber to the Curb)
Über neu zu verlegende Glasfasern zum Endkunden (= FTTH, Fiber to the Home)
Über neu zu verlegende Glasfasern und Fernseh-Koaxkabel (= HFC, Hybrid Fiber Coax)
Powerline-Technik wurde von den Stromherstellern angeboten, war aber bislang nur in
Nischenanwendungen erfolgreich
Satelliten, Funk-LANs, Handys, DSL, FTTC und FTTH werden von den Telecoms betrieben
HFC wird von den Kabelfernsehanbietern angeboten
7.4.1



HFC (Hybrid Fiber Coax)
Über ein einziges Koaxialkabel beim Kunden werden sowohl digitales Fernsehen, als
auch breitbandiger Internet-Zugang und Telefonie betrieben = „Triple Play“
Die Koaxialkabel werden vom Kabelnetzbetreiber mit hoher Bandbreite über Glasfaser
mit analogen Fernsehprogrammen, mit digitalen Audio- und Videostreams und Internet
versorgt
Verteilung beim Endkunden über gemeinsam genutztes Medium (Koaxialkabel)
122

Notwendige Voraussetzungen: existierende Koaxialkabel für Kabelfernsehen mit ca.
450 MHz Bandbreite werden durch Kabel höherer Bandbreite (z.B. 750 MHz) ersetzt
 300 MHz zusätzliche Bandbreite



Zusätzliche Bandbreite entspricht 50 6-MHz-Fernsehkanälen und wird zur Übertragung
von Multimediadaten verwendet (unidirektional)
Um einen Rückkanal vom Kunden zum Provider zu ermöglichen, werden die unidirektionalen Verstärker der Kabelsignale durch bidirektionale ersetzt werden (teuer!)
Die extra 50 6-MHz-Kanäle verwenden die effiziente Quadrature Amplituden Modulation
(QAM)
 pro Kanal sind 40 Mb/s Echtzeitdatenrate möglich!




Alle 50 Kanäle werden per Broadcast an die Haushalte verteilt
Zur gezielten Adressierung jedes Haushalts sind die Daten individuell verschlüsselt
Ziele: Wahrung der Privatsphäre trotz Broadcast + Zugang nur für zahlende Kunden.
Analoges Vorbild: Pay TV
Multimediadaten sind MPEG1/2/4-kodierte Videofilme für Video-on-Demand mit zusätzlichen zeitdiskreten Informationen
123
Fernseh-Koaxkabel
Kabel TVAnbieter
Glas=
faser
(Headend)
Glas=
faser

Kopfstation
Fernseh-Koaxkabel
Kopfstation
Jedes Headend versorgt einige tausend Haushalte d.h. ganze Wohngebiete mit TV, Video-on-Demand, Internet und Telefonie
7.4.2
FTTC (Fiber to the Curb)
Curb = Randstein

Glasfasern sind bis in die einzelnen Straßen verlegt. Von dort geht es über Telefonkabel (= verdrillte Kupferkabel) in die Häuser (= “last mile”)
 2-stufige Hierarchie eines Verteilnetzes
124


Datentransfer ist im Gegensatz zu HFC Punkt-zu-Punkt (kein Broadcast)
Kupferkabel der “letzten Meile” sind kurz => sehr gut für DSL geeignet
 genug Bandbreite für MPEG1/2/4 ohne teure Koaxkabel, incl. Telefonanschluss
 Nutzung der bereits zahlreich vorhandenen Telefonkabel-Infrastruktur

Betreiber sind die Telekomanbieter
Ortsvermittlungsstelle
Glas=
faser
ONU
curb
Glas=
faser
Telefonkabel
ONU
Telefonkabel
ONU = Optical Network Unit = el./opt. Konverter
125


Jede ONU versorgt ca. 16 Haushalte über 16 verdrillte Kupferkabel mit Daten in beiden
Richtungen (bidirektional)
Nachteil zu HFC: viel mehr ONUs als Headends notwendig
7.4.3

FTTH (Fiber to the Home)
Jeder Haushalt erhält einen SONET/SDH-Anschluss mit z.B. 155 Mb/s (OC3)
 ultimative Lösung der Zukunft, zum Teil schon realisiert (Bsp.: neue Bundesländer,
Stadtstaaten wie Singapur)

Nachteil: immense Kosten, >50% der Investitionen des Telefonsystems liegen in den
Kupferkabeln zum Endkunden => last mile ist ein Kostenproblem
7.5



Echtzeitzugang über xDSL (Digital Subscriber Line)
xDSL ist die Technologie der “Supermodems” für Telefonanschlüsse (=verdrillte Zweidrahtleitungen). x steht für A, H, V, S, U, I oder {}
xDSL betreibt analogeTelefonleitungen mit wesentlich höherer Bandbreite (>> 3 KHz)
als 56-Kb/s-Modems
Nutzt die Tatsache, dass ab der Ortsvermittlungsstelle die Datenübertragung digital ist
und sehr hohe Bandbreiten aufweist (= SONET/SDH-Hierarchie auf ISO-Schicht 1)
126


Nutzt Fortschritte der digitalen Signalverarbeitung (Signalprozessoren, effiziente Modulationsverfahren) zur Beseitigung von Echos, Übersprechen, Rauschen und sonstigen Störungen
Theoretische Grundlage für xDSL ist das sog. Shannon-Theorem
7.5.1





Shannon-Theorem
Das Shannon-Theorem berechnet die Übertragungsgeschwindigkeit eines rauschbehafteten Kanals unter Vernachlässigung von Dämpfung und Dispersion
Das Shannon-Theorem ist deshalb eine Obergrenze dessen, was möglich ist
Dämpfung bewirkt, dass das Nutzsignal abgeschwächt wird
Dispersion bewirkt, dass das Nutzsignal verbreitert wird
Unter diesen Voraussetzungen gilt:
• K = B*log2[1+10**(S/10N)] => K ~ B
• K = Übertragungsgeschwindigkeit (= Kanalkapazität), wird in Baud = 1/s gemessen
• B = Bandbreite des Kanals, wird in Hertz = 1/s gemessen (semantischer Unterschied zw.
Hertz und Baud!)
• S/N = Signal- zu Rauschleistung, wird in dB (dezibel) gemessen
Beispiel:
• 3 KHz Telefonbandbreite erlaubt bei 35 dB Signal-/Rauschverhältnis ca. 30 Kb/s Datenrate
• 8 Mb/s Datenrate erfordern ca. 800 KHz an Kanalbandbreite
127



Neben dem Shannon-Theorem wird die Übertragungsgeschwindigkeit eines rauschbehafteten Kanals wesentlich durch Dämpfung und Dispersion des Übertragungsmediums bestimmt
Beides ist bei Kupferkabeln abhängig von Leitungslänge und Leitungsquerschnitt
In Deutschland gilt:
• Leitungslänge zwischen Telefon und Telefonvermittlung ist  10 km
• Typische Länge ist 2-4 km
• Leitungsquerschnitt des Kupferkabels ist 0,4 oder 0,6 mm (2 Kabelsorten)
• Fast nie gibt es Verstärker zwischen Kunde und Ortsvermittlungsstelle
 Nur die Übertragungsbandbreite B des Kupferkabels muss für K berücksichtigt werden


Wohnt der Kunde nahe genug an einer Ortsvermittlungsstelle (<< 1 km), sind über DSL
sehr hohe Datenraten möglich (bis ca. 50 Mbit/s über VDSL, theoretisch bis 100 Mb/s)
DSL-Datenraten sind in der Praxis oft niedriger als der Nominalwert, für den man bezahlt, da die Leitungslängen vielerorts nicht mehr ermöglichen
128
7.5.1.1
Kanalkapazität K als Funktion der Leitungslänge eines Kupferkabels
K
[MBaud]
100
90
80
70
Theoretische
Grenze
60
Praktische
Grenze bei
VDSL
50
40
30
20
10
0
0,75
1,5
2,25
3,0
3,75 4,5
l [km]
 Existierende Telefonkabel erlauben auf kurze Entfernungen sehr hohe Datenraten
7.5.2


Warum ist die XDSL-Technik wirtschaftlich interessant?
Über 700 Millionen installierte Festnetz-Telefonanschlüsse weltweit
96% davon sind Kupferkabel-basierend
129



>50% der gesamten Investitionen der Telecoms liegen in der Verkabelung
Komplett flächendeckende Glasfaserkabel bis ins Haus werden noch viele Jahre dauern (hohe Installationskosten; weniger für das Kabel als für die Verlegung)
Flächendeckende Glasfaserverkabelung in den neuen Bundesländern ist vorhanden,
wird aber nicht genutzt, bis DSL flächendeckend eingeführt ist
 xDSL ist eine sehr kosteneffektive Lösung, da bereits installierte Kupferleitungen
genutzt werden
7.5.3
Aufbau eines xDSL-Zugangs
xDSL-Übertragung
Telefonkabel
Kunde
Orts=
Vermittlung
SONET/
SDH
xDSL-Übertragung
Kupfer-/Glasfaserkabel
Orts=
Vermittlung
Internet Provider

Beispiel: ADSL, VDSL
• Kunde hat Zugriff auf Telefonnetz und Internet über dieselbe Telefonleitung
130
• Leitung wird über Frequenzweiche (sog. splitter) im Frequenzmultiplex betrieben
• Datenrate vom Kunden (upstream) bis ca. 5 Mb/s bei VDSL
• Datenrate zum Kunden (downstream) bis ca. 50 Mb/s bei VDSL
7.5.4







Die verschiedenen Typen von xDSL
xDSL: Sammelbezeichnung für alle DSL-Arten
IDSL: das heutige ISDN
ADSL: Asymmetric Digital Subscriber Line (derzeit der Standard bei der Dt. Telekom)
UDSL (U-ADSL): Universal Digital Subscriber Line (=ADSL-light, G. light)
HDSL: High Data Rate Digital Subscriber Line
SDSL (entspricht HDSL2): Single Line Digital Subscriber Line
VDSL (Nachfolger von ADSL): Very High Rate Digital Subscriber Line
131
7.5.5
Leistungsparameter der xDSL-Techniken
Internet-Dienste und Anwendungen
Datenrate und
Preis
~ 50
Mbps
~ 16
Mbps
~ 6 Mbps
~2
Mbps
~ 144
kbps
~ 56
kbps
VDSL
ADSL
ADSL
Teleworking, Teleteaching Telemedizin,
Video-On-Demand
über IPTV und Web-TV
3.)
Standard bei Firmenund Privatkunden
2.)
Einfache Anwendungen
1.)
SDSL
ISDN
Sprachband-Modem
Zahl potentieller Nutzer
132
7.5.6
Internet-Zugang über Sprachband-Modem oder ISDN
Sprachband-Modem oder ISDN
Sprachband-Modem oder ISDN
Vermittelte Telefonverbindung über SONET/SDH
Server eines InternetProviders
133
Internet-Zugang über ADSL mit Splitter
1
2-Draht-Leitung
7.5.7
2
1
1
2
2
DSLModem
Vermittlungseinrichtung
DSLModem
Frequenzweichen
(Splitter)
Server/Gateway eines
Internet-Providers



Der Splitter ist eine Frequenzweiche und dient zur Aufteilung der Frequenzbereiche
zwischen Telefon und ADSL
Auf der Zweidrahtleitung werden verschiedene Frequenzbereiche verwendet, um unterschiedliche Informationsströme (Telefon, Fax und Daten) gleichzeitig zu übertragen
Informationströme, die nicht im Basisband übertragen werden, verwenden effiziente
Modulationsarten, um der Shannon-Obergrenze möglichst nahe zu kommen:
134

Diese sind Carrierless Amplitude/Phase-Modulation (CAP), Quadrature Amplitude Modulation (QAM) und Discrete Multitone Modulation (DMT), wovon DMT die beste ist
7.5.8
Aufteilung der Übertragungsfrequenzen bei CAP-Modulation
Signalstärke
auf
dem
Kabel
in [dB]
ISDN
0
analoges
Telefon
0,3
3,4
DSL
Downstream
zum Kunden
DSL
Upstream
zum Provider
80 94
Splitter-Abzweig 1
106 120
550
Frequenz in
[kHz]
Splitter-Abzweig 2
135
7.5.9
ADSL-Übertragungskette
Kunde
Ortsvermittlungsstelle
Downstream
bis 16 Mb/s
A
D
S
L






bis 10 km
bis 1,5 Mb/s
Upstream
A
D
S
L
SONET/
SDH
Kernnetz
Multimedia
Server
Internet
Service
Provider
Voll-Duplexübertragung mit asymmetrischen Datenraten über eine Kupfer-Zweidrahtleitung
Die erreichbaren Übertragungsraten sind von der Entfernung und von der Leitungsqualität abhängig
Das DSL-Modem adaptiert sich automatisch an die verfügbare Leitungsqualität
Adaption erfolgt nach jedem Einschalten des Modems oder nach dem Rücksetzen desselben von der Ortsvermittlungsstelle aus
Die analoge Datenübertragung basiert bei ADSL auf der DMT-Modulation
Die DMT-Modulation ist die Nachfolgerin der QAM, die wiederum die Nachfolgerin von
CAP ist
136
QAM: Quadrature Amplitude Modulation
CAP: Carrierless Amplitude/Phase Modulation
DMT: Discrete Multitone Modulation


Telefon/Fax und DSL sind bei ADSL aufgrund unterschiedlicher Frequenzen simultan
möglich (stören sich nicht)
Typische Anwendungen für ADSL:
• schneller Internet-Zugang für Firmen und Privathaushalte
• Multimedia-Zugang, Video-on-Demand, ...
• und ganz normales telefonieren oder faxen
7.5.10




Warum hat ADSL asymmetrische Datenraten?
Die Upstream-Signale laufen auf dem Weg zur Ortsvermittlungsstelle in großer Zahl auf
engem Raum in einem Kabelkanal zusammen
Übersprechen entsteht, wenn Kabel über längere Strecken parallel und eng beieinander geführt werden
Viele parallele Kabelbündel verstärken nochmal das Übersprechen
Hinzu kommt, dass die Nutzsignale vor der Ortsvermittlungsstelle aufgrund ihres Weges schon stark gedämpft sind
 Die Upstream-Signale sind vor der Ortsvermittlungsstelle klein und werden stark
gestört. Nur niedrige Datenraten sind möglich.
137





Der Grund ist das Übersprechens zwischen Leitungen unterschiedlicher DSL-Modems
Andererseits laufen die Downstream-Signale zu getrennten Teilnehmer-Modems weiträumig auseinander
Das Übersprechen wirkt sich hier wesentlich weniger aus, da die Nutzsignale genau
dann hoch sind, wenn sie eng beieinander verlaufen
Deshalb kann man in der downstream-Richtung höhere Bitraten realisieren
Dieses Verhalten passt zum Kundenverhalten: Browsen im Internet, Video-on-Demand
usw. sind von der Nutzung her ebenfalls asymmetrisch, da viel mehr download als upload erfolgt
7.5.11



QAM-Modulation
Quadrature Amplitude Modulation war die erste Modulationstechnik für DSL-Modems
QAM ist eine Kombination von Amplituden- und Phasenmodulation
Bsp.: 8-fach-QAM heißt:
• Es gibt eine konstante Frequenz, die sog. Trägerschwingung, die das Modem aussendet
und die amplituden- und phasenmoduliert ist
• Die erlaubten Amplituden- und Phasenwerte sind diskret und endlich
• Bei 8-fach QAM gibt es 8 Kombinationen aus 2 verschiedenen Amplituden- und 4 verschiedenen Phasenwerten

Es gibt ein mathematisches Kalkül, das auf Zeigern mit Phasen- und Amplitudenwinkeln beruht: die Gausssche-Zahlenebene
138




Zur Kennzeichnung von Modulationsverfahren werden die Endpunkte der Zeiger aus
Phasen- und Amplitudenwinkeln in die Gaussschen-Zahlenebene eingezeichnet
Anhand der Gaussschen-Zahlenebene ist allerdings nicht erkennbar, welche Frequenz
die Trägerschwingung hat
Würde man diese Information hinzufügen, müsste die Gausssche-Zahlenebene mit der
Frequenz der Trägerschwingung rotieren
Bsp.: Die 8-fach- und 16-fach-QAM in der Gaussschen -Zahlenebene
j Im
{Signal}
j Im
{Signal}
Re
{Sig-
Punkte sind zulässige Signale
in der komplexen Zahlebene
Re
{Signal}
8-fach QAM
16-fach QAM
139




Jeder Punkt im Diagramm (= komplexe Zahlenebene) entspricht einer erlaubten Kombination aus Amplitude und Phase und kodiert eine Bitkombination aus drei bzw. 4 Bit
8-fach QAM: 2 Amplituden + 8 Phasensprungwinkel, aber nur jeder 2. Punkt belegt =>
8 Datenpunkte, also 3 Bits pro Baud => in einer Sinusschwingung können 3 Bit übertragen werden
16-fach QAM: 4 Amplituden+ 8 Phasensprungwinkel + nur jeder 2. Punkt belegt => 16
Datenpunkte, also 4 Bits/Baud => in einer Sinusschwingung können 4 Bit übertragen
werden
Problem: je dichter die Gauss-Zahlenebene mit erlaubten Kombinationen belegt wird,
desto schwieriger wird die Unterscheidung der einzelnen Phasen und Amplituden beim
Empfänger
7.5.12



CAP-Modulation
CAP ist eine verbesserte Version von QAM und benützt höhere Frequenzen
Trägerfrequenz, deren Amplitude und Phase moduliert wird, wird nach der Modulation
herausgefiltert wird (= Carrierless)
Telefondienst und ISDN liegen unterhalb des CAP-Frequenzspektrums, stören also
nicht
 CAP ist aufwärtskompatibel zum Telefondienst und zu Fax
140
7.5.13









DMT-Modulation
DMT ist ein nochmals verbessertes QAM bzw. CAP-Modulation
Die Verbesserung liegt darin, dass nicht nur ein Träger fester Frequenz verwendet wird,
sonden viele
Üblich sind 256 verschiedene Trägerfrequenzen, die alle separat QAM-moduliert werden
Daraus resultiert eine 256-fache Datenrate
Damit sich die Trägerfrequenzen möglichst wenig stören, werden sie gleichmäßig auf
den zur Verfügung stehenden Frequenzbereich aufgeteilt
Zusätzlich wird der zur Verfügung stehende Frequenzbereich des zweiadrigen, verdrillten Telefonkabels gegenüber CAP deutlich vergrößert
Dies geht auf Kosten der maximal möglichen Kabellänge, da nur kurze Kabel solche
hohen Frequenzen nicht zu stark dämpfen
Die 256 Trägerfrequenzen werden als Subbänder bezeichnet
Bei VDSL wird das Kabel mit der maximal möglichen Bandbreite betrieben, die angepasst ist an Kabellänge, Kabeldurchmesser und äußeren Störungen
141

Frequenzaufteilung bei DMT:
Signalstärke
[dB]
Telefon/ISDN
DSL
256 Subbänder
Analoges Telefon
und Fax
3,4 26





138
1104
f
[kHz]
Die unteren Subbänder bis 138 KHz werden vom analogen Telefon, Fax und ISDN belegt, stehen also für das DSL-Modem nicht zur Verfügung
Schließlich wird bei DMT das Übertragungsverhalten jedes einzelne Subband individuell berücksichtigt
Manche Subbänder sind schneller als andere, da auf deren Frequenz weniger Störungen auftreten
Dort können mehr Bits pro Sekunde bei gleicher Fehlerrate übertragen werden => Bitratenadaption
Jedes Subband ist ca. 4 kHz breit. Es wird auch als „Kanal“ bezeichnet.
142


Jeder Kanal überträgt bis ca. 60 kbit/s, falls ein sehr gutes Signal-/Rauschverhältnis
vorhanden ist (nach Shannon besser als 30 dB)
Bei starken Störungen in einigen Subbändern werden diese nicht verwendet
 Die Datenrate bei DMT liegt pro Kanal zwischen 60 Kbit/s und 0 Kbit/s



In der Summe über alle Kanäle sind im günstigsten Fall ohne Störungen ca. 16 Mbit/s
über ADSL, bei VDSL bis ca. 50 Mbit/s möglich
Der Telefondienst/Fax liegt wie bei CAP unterhalb der DMT-Frequenzen für Datendienste und wird, falls erforderlich, separat geführt (Splitter an beiden Enden der Leitung
notwendig)
DMT ist amerikanischer ANSI- (T1.413) und europäischer ETSI-Standard
7.5.13.1 Automatische Bitraten-Adaption bei DMT


Wichtiges Prinzip der DMT: „DMT adapts to every line condition“
Damit werden Störungen umgangen bzw. ausgeblendet
143
7.5.13.2 Übertragungsverhalten von Telefonkabeln ohne Störungen
Sendesignal [Bit/s]




Kabeldurchlass
= 1/Dämpfung
[dB]
Empfangssignal [Bit/s]
Frequenz
Frequenz
Frequenz
Sender
Kabel
Empfänger
Das Telefonkabel wirkt wie ein sog. Tiefpass, d.h., es läßt tiefe Frequenzen gut durch
und hohe schlecht => die Dämpfung ist eine Funktion der Frequenz
Hinzu kommt: die Dispersion (Verzerrung) ist ebenfalls eine Funktion der Frequenz
Zusätzlich zu Rauschen, Dämpfung und Dispersion kommen Störungen von außen, die
die schnelle Datenübertragung erschweren
Eine Bitratenadaption jedes Kanals an diese Effekte ist deshalb sinnvoll
144
7.5.13.3 Übertragungsverhalten von Telefonkabeln mit Störungen
Sendesignal [Bit/s]
Sender
Empfangssignal [Bit/s]
Kabel
Empfänger
Funkstörung
Reflektion
Frequenz




Frequenz
Übersprechen
Frequenz
Bei der DMT-Modulation messen die DSL-Modems automatisch nach jedem Einschalten die Übertragungsgüte jedes einzelnen Kanals und adaptieren die Bitrate kanalweise gemäß der jeweiligen Übertragungseigenschaften
Dieser Vorgang dauert einige Minuten und findet jede Nacht statt
Dazu wird die DSL-Verbindung - auch bei einer Flat Rate - unterbrochen
Typische Störungen bei der DSL-Übertragung sind:
• Thermisches Rauschen von Leitungen und Bauteilen aufgrund der Brownschen Molekularbewegung
• Dämpfung des Nutzsignals
145
•
•
•
•
Verzerrung des Nutzsignals
Kabelabzweigung mit daraus resultierender Reflexion des Signals (Echo)
hochfrequente Einstreuung von außen (z.B. durch Radio oder Handy)
Übersprechen, verursacht durch parallel geführte Kabelbündel von Telefonleitungen
7.5.14
HDSL - High Data Rate Digital Subscriber Line
Kunde
T1: 1.544 Mbps : 2
Paare
H E1: 2.048 Mbps : 3
D Paare
S
bis ca. 4 km
L
Vermittlungseinrichtungen
H Optisches
D Netz der TeS lekom-FirL
H
D
S
L
Kunde
H
D
S
L
SONET/SDH




Ältere Technik mit symmetrischen Bitraten über verdrillte Kupferdrähte (Kabelpaare)
Entstanden als kostengünstige Technik der Telecoms zur Realisierung von T1 oder E1
(=1,5 Mbit/s oder 2 Mbit/s-Leitungen) über zwei bis drei Telefonkabelpaare
Basiert auf QAM mit 2 Bits pro 1 Baud oder CAP-Modulation (= viel weniger effektiv als
DMT)
Kein simultaner Telefondienst auf dem Kabel möglich
146


Typische Anwendungen: Für Firmen oder Gebäude, die keinen Glasfaseranschluss haben
Beachte: Glasfaseranschlüsse ins Internet kosten bei der Dt. Telekom je nach Geschwindigkeit ca. € 5000-60 000 pro Monat!
7.5.15
SDSL - Symmetric Digital Subscriber Line
Vermittlungseinrichtungen
Kunde
S
D
S
L
S
D
S
L
1.544/2.048 Mbps
bis ca. 3 km
CORE
NE
WORK
„optical“
S
D
S
L
Kunde
 1,5 / 2
Mb/s
S
D
S
L
SONET/SDH





„Single Line“-Version von HDSL (nur eine Zweidrahtleitung => kostensparend)
Symmetrische Bitraten, da Firmen sehr viel Content für eCommerce ins Netz stellen
Basiert auf QAM, CAP oder DMT-Modulation
Telefondienst und T1/E1 simultan möglich
Typische Anwendungen: wie HDSL aber ebenfalls veraltet
147
7.5.16
VDSL - Very High Data Rate Digital Subscriber Line
remote
side
V
D
S
L
Downstream
bis 50 Mb/s
bis 1 km
bis 10 Mb/s
Upstream
CO side
V
D
S
L
CORE
NETWORK
Multimedia
Service
Provider für Video-on-Demand
Internet
Service
Provider
CO = Central Office





Voll-Duplexübertragung über eine Zweidrahtleitung
Höhere Datenraten als ADSL, aber viel kürzere Kabellängen
Telefondienst, ISDN und Datenübertragung simultan
Typische Anwendungen: nächste Generation von xDSL
VDSL-Netz zur Zeit im Aufbau, u.a. für Video-on-Demand in HDTV-Qualität
148
7.5.17
Die xDSL-Familie im Überblick
symmetrische Datenraten
asymmetrische Datenraten
HDSL
SDSL
ADSL
VDSL
High Data
Rate DSL
Single Line
DSL
Asymmetric
DSL
Very High
Data Rate
DSL
Downstream
1544 oder
2,048 Mb/s
1,544 oder
2,048 Mb/s
bis ca. 16
Mb/s
bis ca. 50
Mb/s
Upstream
1,544 oder
2,048 Mb/s
1,544 oder
2,048 Mb/s
bis ca. 2
Mb/s
bis ca. 10
Mb/s
max. Leitungslänge
ca. 3 bis 4
km
ca. 2 bis 3
km
bis ca. 10 km
bis ca. 1
km
Adernpaare
2 bei 1,544
Mb/s, 3 bei
2,048 Mb/s
1
1
1
analoges
Telefon/Fax
nein
ja
ja
ja
ISDN
nein
ja
ja
ja
Bezeichnung
Bedeutung
149
Bezeichnung
HDSL
SDSL
ADSL
VDSL
benutzte
Bandbreite
bis 240 kHz
bis 240 kHz
bis 1,1 MHz
bis 30 MHz
Modulationsverfahren
CAP
CAP
(CAP), DMT
DMT, DWMT
T1/E1Dienste,
WAN und
Serverzugänge
T1/E1Dienste,
WAN- und
ServerZugänge
Internetzugang, WebTV
HDTV Videoon-Demand
Anfang 90er
Mitte 90er
Mitte/Ende
90er
seit Anfang
2006
Einsatzbereiche
Verfügbarkeit seit
150
7.6
Point-to-Point Echtzeit-Protokoll (PPP) der ISO-Schicht 2b
PVC
PPP
xDSL
xDSL als
Schicht 1
und 2a


CO
ATM
RAS
WAN/
MAN
SONET/SDH = Digitales
Telefon/Datennetz als
Schicht 1 und 2a = WAN
Für den Kunden wird TCP und IP über PPP und DSL transportiert
Im digitalen Telefon-/Datennetz (WAN) wird TCP und IP über ATM und SONET/SDH
transportiert
CO = Central Office = Telefon-Ortsvermittlungsstelle
RAS = Remote Access Server des Internet Providers
PVC = Permanent Virtual Circuit in ATM = Emulation einer Standleitung in einem virtuellen ATM-Netz

PPP ist das Schicht 2b-Protokoll für die Einwahl der Kunden über DSL-Modems
151




Ab der Ortsvermittlungsstelle (CO) geht es dann über das optische „Kernnetz“ einer
Telekommunikations-Firma mit IP über ATM oder purem IP als Protokoll weiter
Der Zugang zum Internet erfolgt über über das optische Kernnetz zu einem Remote Access Server (RAS) des Internet Providers
Der Internet Provider (z.B. 1&1) mietet dazu mehrere sog. PVCs vom Betreiber eines realen oder virtuellen ATM-Netzes
PPP kann bis zum RAS des Internet Providers ausgedehnt werden, PPP wird dann
als „Nutzlast“ (payload) von ATM übertragen


ATM wiederum dient in den Kernnetzen (WANs) als Schicht 2-4-Protokoll und verwendet SONET/SDH als Schicht 1 (Bitübertragungsschicht)
Auf ATM sitzt manchmal, aber nicht immer IP als Nutzlast auf, gefolgt von TCP oder
UDP
7.6.1





Funktion von PPP
PPP stellt eine Schicht 2b-Punkt-zu-Punkt-Verbindung zwischen 2 DSL-Modems her
PPP ist echtzeitfähig und stellt über eine Prüfsumme am Rahmenende fest, ob ein
Übertragungsfehler vorliegt
PPP macht keine Rahmenwiederholung im Fehlerfall, da Rahmenwiederholungen echtzeitschädlich sein können, weil sie Übertrgungszeit kosten
PPP nimmt auch keine Authorisierung oder Authentifizierung vor, die sog. AA
AA wird mit extra Protokoll realisiert, z.B. mit Password Authentication Protocol (PAP)
152
7.6.2
Protokollphasen von PPP
1.) Verbindungsaufbau und Konfigurationsaushandlung: ein PPP-Knoten (=DSL-Modem)
sendet spezielle Datenrahmen zum Aufbau der Datenverbindung und zur Konfiguration in der Schicht 2.
2.) Prüfen der Verbindungsqualität: die Leitung wird ausgemessen (optional; wird bei
DSL-Modems standardmäßig eingesetzt)
3.) Konfiguration des Schicht 3-Protokolls (z.B. IP). Der PPP-Knoten sendet optional spezielle Rahmen zur Konfiguration der Schicht 3. Bei DSL-Modems nicht notwendig, da
nur Punkt-zu-Punkt-Strecke ohne Routing. Diese Funktionalität ist zudem ausserhalb
der ISO-7-Schichten-Regeln, da Schicht 2 und Schicht 3 vermischt werden.
4.) Datenübertragung
5.) Verbindungsabbau
8


Echtzeit-Übertragung im Internet
Bei DSL, PCM- oder Sonet/SDH- als Schicht 1 ist Echtzeitübertragung problemlos möglich
Bei ATM-Protokollen (= Schicht 2,3 und 4) sind die Echtzeitbedingungen ebenfalls erfüllt
153





Bei IP Version 4 sind die Echtzeitbedingungen nicht erfüllt
Bei IP Version 6 ist Echtzeit mit Einschränkungen möglich
Schicht 7-Protokolle versuchen, trotz IP V4 näherungsweise Echtzeit zu implementieren
Beispiele für solche Anwendungen: Voice over IP (= telefonieren über das Internet mit
Hilfe eines IP-Telefonapparats oder eines Rechners) mittels Skype, VoIP oder MSN
Messenger
Verbesserung der Situation nur durch Übergang auf IP V6 möglich
8.1



PCM-Verfahren zur Echtzeit-Übertragung
PCM = Pulscode-“Modulation“ (schlechte Terminologie, da Codierung und keine Modulation)
Dient für die Echtzeitübertragung von Daten auf der ISO-Schicht 1 zwischen TelefonOrtsvermittlungsstellen
Verwendet synchrones Zeitmultiplex:
• Verschiedene Datenquellen werden reihum nacheinander übertragen
• Jeder Quelle wird periodisch eine Zeitscheibe (time slot) zugeteilt
• Multiplexer und Demultiplexer laufen zeitsynchron, d.h gleich schnell und phasenstarr
154

Prinzip:
Bitstrom 1
Bitstrom 2
...
Zeitscheibe n
Zeitscheibe 2
Zeitscheibe 1
Zeitscheibe n
Zeitscheibe 2
Zeitscheibe 1
Bitstrom 1
Multiplexer

...
Bitstrom n
Demultiplexer
Bitstrom n
8.1.1
Bitstrom 2
Systemparameter von PCM-Zeitmultiplexsystemen
Jedes PCM-Zeitmultiplex-System hat bestimmte Systemparameter, wie:
• Die kleinste Übertragungseinheit pro Zeitabschnitt, z.B. 1 Bit, 1 Byte, n-Bit-Wort oder Block
von n-Bit-Wort Worten
• Die Dauer jedes Zeitabschnitts (Time Slots). Time Slots sind stets äquidistant.
• Die Anzahl der Time Slots in jeder Umlaufperiode
• Die Häufigkeit der Zeitscheibenzuteilung pro Übertragungskanal (1 Mal oder mehrere Male
pro Umlaufperiode)
• Vorhandene Synchronisierhilfen zwischen Multiplexer und Demultiplexer, wie z.B. gemeinsamer Takt für beide Geräte
155
• Sog. Melde- und Signalisierungsdaten zur Rufnummernwahl, Klingeln, Anrufumleitung,
Anrufweiterschaltung, Rufnummernanzeige, Gebührenzählung,... übertragen werden
8.1.2


Aufbau eines typischen T1-PCM-Rahmens
Kleinste Übertragungseinheit pro Zeitabschnitt: 8 Bit
Dauer jedes Zeitabschnitts: ca. 3,9 µs, Dauer der Umlaufperiode: 125 µs (8000 Hz)
156

Anzahl der Zeitabschnitte pro Periode: 24 Kanäle (T1-PCM) bzw. 32 Kanäle (E1-PCM)
8.1.3




T1-PCM-System (USA und Japan)
24 Kanäle zu je 8 Bit pro Periode => 64 000 bit/s pro Kanal
Datenmenge pro Periode heißt „Rahmen“. Bruttodatenrate des Rahmens ist 1,544 Mb/s
Das 8. Bit jedes übertragenen Wortes dient als Melde und Signalisierungsbit
Es werden nur 7 Bit pro Kanal als Abtastwerte vom Mikrofon des Telefons übertragen
 Sprachqualität ist im Vergleich zu Europa eingeschränkt
8.1.4

E1-PCM-System (Welt ohne USA und Japan)
Periodendauer = 125 s, bei 32 Kanälen zu je 64 000 b/s (nicht 64 Kb/s!)
 alle 125 s kommen 32 Zeitscheiben zu je 8 Bit => Bruttodatenrate 2,048 Mb/s

30 Zeitscheiben sind für Nutzdaten, 2 Zeitscheiben für Verwaltungsinformation
157
8.1.4.1
Aufbau der Datenrahmen bei E1
Gesamte Rahmenlänge
125 µs
ZeitAbschnitts
nummer
0
PCM-codierte
Kanäle
1 bis 15
Rufnummernübertragung
1
15 16
2
1 Zeitscheibe
X
0
0 1
1
0
1
1
PCM-codierte
Kanäle
16 bis 31
30
17
31
8
Bit
Kennzeichnungsabschnitt
ein frame delimiter wird nur in den Rahmen Nr. 1, 3, 5,... (alle ungeraden Rahmen) übertragen
3,9 µs
X
1
D N
Y
Y
Y
Y
ein „Meldewort“ wird im Wechsel mit dem frame delimiter in den
geraden Rahmen übertragen. Es enthält Verwaltungsinformationen: D Meldebit für dringenden Alarm; N Meldebit für nicht dringenden Alarm, X für internationale Verwendung reserviert ; Y für
nationale Verwendung reserviert
0,49 µs pro Bit
158






Zeitabschnitte (= Zeitscheiben) sind mit 0 bis 31 nummeriert
Ein Abschnitt ist ca. 3,9 µs lang. Die gesamte Rahmendauer ist auf 125 Mikrosekunden
genormt
Im Zeitabschnitt 0 werden abwechselnd Rahmenkennworte (u. a. zur Rahmenidentifizierung, Synchronisierung) und Meldeworte (u. a. zur Überwachung der Digitalsignalleitung) übertragen
Der Kennzeichenabschnitt dient zur Übertragung vermittlungstechnischer Daten wie
bspw. Rufnummerübertragung, zum Verbindungsauf- und abbau und zur Gebührenzählung
Die 30 übrigen Zeitabschnitte transportieren jeweils 8 Bit lange Abtastwerte eines digitalen Fernsprechkanals mit einer Rate von 64 000 b/s pro Kanal
Anstelle von Fernsprechsignalen werden auch beliebige andere digitalisierte Daten
aus dem Internet und anderen Rechnernetzen in Einheiten von 8 Bits übertragen
8.1.5




PCM-Hierarchien
Sowohl E1- als auch T1-PCM-Systeme erlauben, mehrere Rahmen zu „Trägern“ höherer Baudraten zu multiplexen
Beim Multiplexen werden mehrere vollständige Träger niederer Datenrate incl. deren
Verwaltungsinformation zu einem Träger höherer Datenrate zusammengefasst
Beispiel: T1-Hierarchie:
Multiplexen erfolgt bitweise nicht byteweise
159

Achtung: bei T1 sind die Multiplex-Bitraten nicht ganzzahlige Vielfache der Übertragungs-Bitraten T1, T2, T3,...
8.1.5.1
E1-PCM-Hierarchie

Bei E1-Systemen erfolgt das Multiplexen von E1-Rahmen im Gegensatz zu T1 in festen
Schritten von 4 Inputs pro Output, und es gilt stets: En+1 = 4 En => klareres Konzept

E1- bzw. T1-Systeme sind untereinander inkompatibel => Datenaustausch nur über
Konverter möglich
PCM 30 = 2,048 Mbit/s (= E1)

• x 4 liefert PCM 120 = 8,448 Mbit/s (= E2)
• x 4 liefert PCM 480 = 34,368 Mbit/s (= E3)
160
• x 4 liefert PCM 1920=139,294 Mbit/s (= E4)
• x 4 liefert PCM 7680 =564,992 Mbit/s (= E5) und so weiter

Multiplexhierarchie ist nach oben offen: derzeit bis 10 Gb/s in Europa und bis 40 Gb/s
in USA
 erlaubt die Aufwärtskompatibilität bestehender Systeme zu Systemen mit höherer
Datenrate
8.2









Sonet/SDH zur Echtzeit-Übertragung
SONET = „Synchronous Optical Network“ (= Entwicklung der USA)
SDH = „Synchronous Digital Hierarchy“ (= Entwicklung der Europäer)
SDH ist praktisch identisch zu SONET => weltweite Kompatibilität ist garantiert
SONET/SDH ist ein Wide Area Network (WAN)
Warum gibt es SONET/SDH?
E1- und T1-PCM-Systeme beruhen noch auf Kupferkabeln
Moderne PCM-Systeme sind jedoch Glasfaser-basiert
SONET/SDH ist das von der ITU standardisierte Glasfaser-basierte PCM-System
Marktanteil von SONET/SDH bei Glasfaser-PCM-Systemen ist sehr hoch
8.2.1
Ziele von SONET/SDH
1.) Weltweit einheitlicher Rahmenaufbau für alle Netzbetreiber
161
 Weltweite Kompatibilität aller Glasfaser-PCM-Systeme
2.) Kompatibilität zu den alten Kupferkabel-basierten PCM-Systemen E1 und T1
 Unterstützung von Hierarchien aus Multiplex-Rahmen
• Transportiert T1-, T2-, T3-,..., und E1-, E2-, E3- ,..., Träger
• Transportiert auch ATM-Datenrahmen (ATM = Echtzeitprotokoll für SONET/SDH)
3.) Unterstützung von automatisierter Verwaltung und Wartung aller Netzkomponenten,
sog. Operation, Administration and Management (OAM), so dass menschliche Interventionen minimiert werden (Kostengründe)
8.2.2





Eigenschaften von SONET/SDH
Synchrones Zeitmultiplexsystem (PCM) mit max. 1 ns Phasendifferenz zwischen Multiplexer und Demultiplexer (= „Jitter“)
Besteht aus Vermittlern, Multiplexern und Repeatern, die über Glasfaser verbunden
sind
Repeater: dienen zum Verstärken des Datensignals
Multiplexer: fassen mehrere Teilbitströme zu einem „höheren Träger“ zusammen, z.B.
4*E1 zu E2
Vermittler:
• dienen zur Wegewahl
162
• sind Bestandteil von Quell-/Zielmultiplexern und allen Multiplexern dazwischen



SONET/SDH implementiert Punkt-zu-Punkt-Verbindungen (sog. SONET-Pfade)
Mehrere Punkt-zu-Punkt-Verbindungen ergeben allgemeinen Graphen als Verbindungstopologie
Aus Redundanzgründen werden je 2 parallele Punkt-zu-Punkt-Verbindungen zu einem
Doppelring ähnlich wie bei FDDI zusammengeschaltet => Fehlertoleranz
8.2.3
Aufbau eines SONET/SDH-Pfades
Repeater
Multiplexer
Repeater
Destination
Multiplexer
Empfänger
(Ziel)
Sender (Quelle)
Source
Multiplexer
Section
(Abschnitt)
Leitung
Section
Section
Section
Line
Path
(Pfad)

Abschnitt (section) = Glasfaserstrecke zwischen 2 Geräten (Multiplexer oder Repeater)
163


Leitung (line) = Faserstrecke zwischen 2 Multiplexern
Pfad (path) = Faserstrecke zwischen Quell- und Zielmultiplexer
8.2.4


SONET/SDH als ISO-Schicht 1 und 2
SONET/SDH ist die ISO-Schicht 1 und 2 für Telefon, Fax und Internet
SONET/SDH ist in 4 Subschichten unterteilt:
• Photonteilschicht, Abschnittsteilschicht, Leitungsteilschicht und Pfadteilschicht
164
8.2.5
Subschichten von SONET/SDH
Sublayers:
ISO Schicht 1
Path
Line
Line
Line
Section
Section
Section
Section
Photonic
Photonic
Photonic
Photonic
Multiplexer
Destination
Source
Repeater
Section
Section
Line
Teilschichten
Path
Section
Line
Path

Photonteilschicht:
• Spezifikation der Glasfaser und der Wellenlänge (meist Infrarot wg. geringer Dämpfung)
• Wandlung zwischen optischem und elektrischem Signal für Empfang und Verstärkung

Abschnittsteilschicht:
• Erkennen von Rahmenanfang und -ende
• Erstellen, Einspeisen, Übertragen und Entnehmen von SONET-Rahmen aus der Faser

Leitungsteilschicht:
165
• Multiplexen/Demultiplexen gemäß Multiplexhierachie

Pfadteilschicht:
• Ende-zu-Ende-Transport von Daten zwischen Quell- und Zielmultiplexer


Achtung: die Pfadteilschicht ist nicht für höhere Funktionen wie z.B. Wegewahl (Routing) zuständig
Das Routing wird von ATM oder IP gemacht
8.2.6

SONET/SDH-Rahmenaufbau
Der sog. SONET-Basisrahmen ist ein Block von 810 Byte in konstanter Folge alle 125
s.
 Bitrate des Basisrahmens ist 51,84 Mb/s, Wiederholungsrate der Basisrahmen ist
8000/s




Basisrahmen heißt Synchronous Transfer Signal of Level 1 (STS-1)
Nutzdaten: 774 Byte von 810 Byte => Nutzdatenrate: 49,536 Mbit/s => 96% Effizienz
Jedes Byte wird bitweise über die Glasfaser übertragen, ein Byte nach dem anderen
und jeder Rahmen nach seinem Vorgängerrahmen
Datenrate von 8000 Rahmen/s passt zu alten PCM-Systemen
 Aufwärtskompatibilität zu kupferkabelbasierten Systemen
166
 Deterministische Datenrate und deterministische Zustellzeit der Rahmen (sog.
Latenz)
 SONET/SDH ist echtzeitfähig

Byteblock von 810 Byte wird gedanklich als 2-dim. Tabelle (= 2 dimensionale Datenstruktur) interpretiert
0 µs
...
Zeit
125 µs


gedachte Tabelle hat 90 Spalten und 9 Zeilen (=9*90 Byteblock)
3+1 Spalten der gedachten Tabelle sind für Transportzusatzinformation reserviert
167
8.2.6.1
Feinstruktur des SONET/SDH-Rahmenaufbaus
90 Spalten
Transport-Zusatzinformation
3 Spalten
1 Spalte
0 µs
Zeit
AbschnittsZusatzinformation
3 Zeilen
LeitungsZusatzinformation
6 Zeilen
PfadZusatzinformation
9 Zeilen

125
µs
Transportzusatzinformation dient dem automatisierten Betrieb und dem Management
der SONET/SDH-Geräte (OAM); Wichtig, da Geräte und Glasfaser im Boden vergraben
sind!
168








Die ersten 3 Zeilen der ersten 3 Spalten enthalten Transportzusatzinformation zur SONET/SDH-Abschnittsverwaltung
Die restlichen 6 Zeilen der ersten 3 Spalten enthalten Transportzusatzinformation zur
SONET/SDH-Leitungsverwaltung
Zusätzlich gibt es eine Spalte mit Transportzusatzinformation zur SONET/SDH-Pfadverwaltung
Die Pfadverwaltungsinformation definiert den Beginn einer weiteren gedachten Struktur, den sog. Synchronous Payload Envelope (SPE)
Der SPE dient zum flexiblen Transport von Nutzdaten verschiedener Länge
Der SPE kann mitten im Byteblock beginnen
Sein Beginn wird durch einen Zeiger in der Leitungsverwaltung gekennzeichnet
Der SPE reicht bis zum Beginn des nächsten SPE im nachfolgenden Byteblock
169
8.2.6.2
Lage des SPE zwischen zwei aufeinanderfolgenden Rahmen
170

sog. H1, H1-Felder in Leitungs-Zusatzinformation zeigen Beginn des SPE an
Sektions- und
Leitungszusatzinformation (3 Spalten)
PfadZusatzinformation (1 Spalte)
J1
H1 H2
1
Rahmen N
(9 Reihen)
gedankliches
Anhängen der
Positionen 4-5,
9-10, ... an die
Positionen 3,8, ...
4
5
9
10
6
2
7
3 4
8
5
9
10
virtuel- 9 Reiles An- hen
H1 H2
Rahmen
N+1
(9 Reihen)

J1’
3 Spalten
87 Spalten
2 Byte (H1 und H2) sind Zeiger auf die zwischen den Bytes J1 und J1’ liegenden Nutzdatenbytes (= 1 SPE) => Durch H1 und H2 ist direkter Zugriff auf den SPE gegeben
171
8.2.6.3

Abschnitts-, Leitungs- und Pfadinformation
Diese Felder werden gebraucht für:
• Rahmenerkennung, Datensicherung über Parität, Fehlerüberwachung der Übertragungsstrecken und Geräte
• Kennungen, Taktgabe und Synchronisation
• Sprachkanäle (Byteblock enthält mehrere Kanäle mit 64 Kb/s)



Die Infos der Abschnittsverwaltung werden am Ende jedes Abschnitts ausgewertet
und dann für den nachfolgenden Abschnitt wieder neu erzeugt
Die Infos der Leitungsverwaltung werden am Ende jeder Leitung ausgewertet und für
die nachfolgende Leitung wieder neu erzeugt
Die Infos der Pfadverwaltung werden nur einmal erzeugt (am Anfang des Pfades) und
ausgewertet (am Ende des Pfades)
172
8.2.6.4
Aufbau der Zusatzinformationen im SONET-STS-1-Rahmen
AbschnittsZusatzinformation
A1
A2
C1
B1
E1
F1
D1
D2
D3
H1
H2
H3
B2
K1
K2
D4 D5 D6
Leitungs-zuD7 D8 D9
satzinformation
D10 D11 D12
Z1



Z2
E2
1. Abschnitts-Zusatzinformation
A1/A2: Zusätzlicher Frame Delimiter mit Hilfe des Bitmusters 11110110 / 00101000
C1: Zeiger auf die Position des gemultiplexten STS-1-Rahmens im STS-N-Rahmen
(N<256)
 Durch C1 ist direkter Zugriff auf einzelne STS-1-Rahmen d.h. Kanäle gegeben
173




B1: Teil 1 der Parität für den vorausgegangenen STS-N-Rahmen (N1)
E1:64 kbit/s Sprachkanal (= Abschnitts-Wartungskanal für OAM)
F1:64 kbit/s Sprachkanal (= Abschnitts-Wartungskanal für OAM)
D1-D3:192 kbit/s Datenkanal (= Abschnitts-Wartungskanal für OAM)
8.2.6.5






H1-H3:Zeiger (H1 & H2), und Zeigeraktion (H3) für SPE
B2: Teil 2 der Parität für den vorausgegangenen STS-N-Rahmens (N1)
K1-K2:Signalisierung zwischen zwei Multiplexern bei Fehlern und für Kommandoworte
D4-D12:576 kbit/s Datenkanal (Multiplexer-Management für OAM)
Z1-Z2:128 kbit/s Datenkanal (Multiplexer-Management für OAM)
E2: 64 kbit/s Sprachkanal (Multiplexer-Management für OAM)
8.2.7




2. Leitungs-Zusatzinformation
SONET/SDH-Multiplexen
Beim Multiplexen werden mehrere vollständige Byteblöcke niederer Datenrate incl. deren Verwaltungsinformation zu einem Byteblock höherer Datenrate zusammengefasst
Der Byteblock höherer Datenrate wird als Träger bezeichnet
Multiplexen der Byteblöcke erfolgt auf Bytebasis
Der neue Byteblock hat die n-fache Größe der Eingangsblöcke (bei n Eingangsströmen)
174

Seine Wiederholrate ist ebenfalls 125 s
 Datenrate ist n-fach höher




SONET verwendet ganzzahlige Vielfache der STS-Grundrate für die Bitraten höherer
Träger
STS n = Synchronous Transfer Signal n; STS-Grundrate ist STS 1 = 51.84 Mb/s
Mehrere Multiplexer hintereinander definieren eine Multiplexhierarchie wie bei E1/T1Systemen
Es ergibt sich eine Hierarchie von Datenraten: STS 1, STS 2,..., STS 48,...
175
8.2.8
Aufbau eines STS-N-Rahmens
N*90 Spalten
TransportZusatzinformation
N*3 Spalten
Container
N*86 Spalten
0
9 Reihen
N Spalten
Pfad-Zusatzinformation


125
µs
Die Daten werden byteweise in den STS-N-Rahmen gemultiplext
Die Felder für Sektions-, Leitungs- und Pfad-Zusatzinformation sind jeweils N-mal vorhanden
 direkter Zugriff auf die Nutzdaten möglich
176
8.2.9



Beispiel für eine Multiplexhierarchie bei SONET/SDH
Das gewandelte optische Signal bildet eine Hierarchie: OC 1, OC2,...,OC 48,...
OC = Optical Carrier = opt. Trägersignal
OC-x ist bis auf eine Bitverwürfelung (Scrambling) das optische Pendent zum elektrischen STS-x-Signal
177





Scrambling sorgt für Verschlüsselung (security)
Scrambling verhindert Außerdem lange 0000...- oder 1111...-Folgen (= besser für die
Empfängerelektronik)
SDH (nicht SONET) verwendet die dreifache STS-Grundrate zum Multiplexen (3*STSGrundrate = 155.52 Mb/s)
Diese wird als STM 1 bezeichnet und gibt direkt die Rate des optischen Signals an (STM
1 = OC 3)
STM = Synchronous Transport Module
178
8.2.10


Multiplexraten bei SONET/SDH
155 Mb/s, 622 Mb/s und 2488 Mb/s sind gebräuchliche Datenraten für ATM, wenn ATM
über SONET/SDH transportiert wird
9,95 Gb/s (STM64) ist die maximale WAN-Datenrate des in Deutschland existierenden
G-WIN-Netzes. (in USA: 40 Gb/s)
179
8.2.10.1 Höhere Datenraten für einen Sender




Höhere Übertragungsraten (>>STS1 bzw. >>STM1) für eine Datenquelle können dadurch erzielt werden, dass man mehrere Basisrahmen dieser Quelle multiplext
In diesem Fall wird nicht byteweise gemultiplext sondern spaltenweise
Dabei werden korrespondierende Spalten mehrerer Byteblöcke derselben Quelle konkateniert
Der neue Byteblock hat eine entsprechend größere Spaltenzahl
 Der neue Byteblock hat die n-fache Größe der Eingangsblöcke und wird ebenfalls in
125s übertragen => es folgen mehr Spalten schneller hintereinander



Zur Kennzeichnung wird der Buchstabe „c“ verwendet (für concatenated)
Beispiel OC3c:
3 OC1-Rahmen einer Quelle der Größe 9*90 werden spaltenweise konkateniert, so dass
ein OC3c-Rahmen mit 270 Spalten und 9 Zeilen entsteht.
180
9 Stadtnetze (Metropolitan Area Networks, MANs)

Stadtnetze erstrecken sich nicht nur über eine Stadt sondern beispielsweise auch über
ein Firmengelände oder einen Universitätscampus
9.1

Beispiele für ein MAN: FDDI und DQDB
FDDI = Fibre distributed Data Interface
• = glasfaserbasiertes MAN mit 100 Mb/s

DQDB = Distributed Queue Dual Bus
• = MAN mit 34 Mb/s = Standard für die ersten Glasfaserleitungen
9.2






FDDI (Fiber Distributed Data Interface)
Durch ANSI und ISO standardisierter Nachfolger von Token Ring als MAN
Große räumliche Ausdehnung (200 km)
Große Anzahl an Stationen (bis 1.000), die angeschlossen werden können
Topologie ist aus Fehlertoleranzgründen ein Doppelring mit gegenläufigen Rahmen
Glasfaserbasierend (Gradientenfaser oder Monomode-Faser) mit 1.300 nm Wellenlänge = fernes Infrarot
Preisgünstige Leuchtdioden als Sender (keine Laserdioden)
181





Zugangssteuerung (Medium Access Control) über kreisende Sendeberechtigungsmarke (Token) mit zahlreichen Überwachungen (Checks) der Funktion, wie z.B. time-outÜberwachung der periodischen Wiederkehr des tokens an jeder Station etc.
Erhöhung der Bandbreite durch multiples Senden zur selben Zeit auf demselben Ring
durch Anhängen mehrerer Senderahmen zu einem ganzen Zug
Kreisendes token resultiert in deterministischen Sendezeiten (sog. time slots) für jede
Station => Echtzeitdatenübertragung ist möglich = „synchrone Betriebsweise“
Bandbreite kann auch anderweitig genutzt werden („asynchrone Betriebsweise“)
Durch Time Sharing des Rings ist im schnellen Wechsel synchrone und asynchrone
Betriebsweise möglich
182
9.2.1
Beispiel für eine FDDI-Topologie
Klasse B
Klasse A
Station
1
Station 4
Klasse C
Klasse A
Station 5
Klasse B
Station
2
„Dual Attachment Station“ = Klasse A
„Single and Dual Attachement Station“ = Klasse C
Konzentrator
Klasse B
Station
3
„Single Attachement Station“ = Klasse B
Station 6
Klasse A
single attachment: 1 FDDI-Anschluss
dual attachment:
2 FDDI-Anschlüsse
attachment:
Anhang, Zusatz
183
9.2.2
FDDI als Backbone
PCs oder
Workstations
Weitverkehrsnetz
Host
Konzentrator
Gateway
FDDI-Ring
IEEE 802.3
Ethernet Bridge
IEEE 802.4
Token Bus Bridge
IEEE 802.5
Token Ring Bridge
diverse lokale Netze
Backbone: Rückgrat
9.3
Vergleich Ethernet, Token Ring und FDDI
9.3.1
Ethernet (CSMA/CD-Zugangssteuerung)

Gute Performanz bei geringer bis mäßiger Belastung bis ca. 30% der maximalen Bitrate
(ohne switch sehr viele Kollisionen bei hoher Belastung)
184




Einfaches Protokoll, leicht implementierbar, kein Netzwerk-Monitor notwendig
Topologische Einschränkungen (bei Switch nur Sterntopologie möglich)
Keine Rahmen-Prioritäten, zudem Problem des „bubbling idiots“
Keine zeitliche Obergrenze bei der Rahmenzustellung garantierbar
 für Echtzeit selbst mit Switch nur bedingt geeignet, aber preisgünstig und weit verbreitet
9.3.2





Hohe Systemausnutzung (überträgt viel Verkehr effizient)
Fehlerbehebung bei Token-Verlust (=„Token Recovery“) erfordert Netzwerk-Monitor
Topologische Einschränkungen (Stern-Topologie emuliert Ring)
Unterstützt unterschiedliche Paketprioritäten
Feste Zustellzeit bei der Rahmenübertragung garantierbar (außer beim Auftreten von
Fehlern)  deterministisch, für Echtzeit geeignet
9.3.3




Token Ring (Token-Zugangssteuerung)
FDDI (Token-Zugangssteuerung)
Ähnlich wie Token Ring bzgl. Medienzugang, Rahmenprioritäten, Monitor, etc.
höhere Geschwindigkeit
höhere Reichweite
höhere Zuverlässigkeit u.a. dank Glasfaser
185


Übertragung von zeitsynchronem Echtzeitverkehr zusammen mit Nicht-Echtzeitverkehr (asynchron) auf demselben Kabel
CarRing II-Projekt des Lehrstuhls ist Weiterentwicklung von FDDI
10 Weitverkehrsnetze (Wide Area Networks, WANs)

Weitverkehrsnetze verbinden Stadtnetze (MANs) miteinander, in Einzelfällen auch
LANs
10.1

Unterschied zwischen LANs, MANs und WANs
LANs und MANs bestehen aus einem gemeinsamen Übertragungsmedium (Kabel, Kabel + Switch oder Funk) und den daran angeschlossenen Rechnern (sog. Hosts)
 LANs und MANs sind Broadcast-Netze auf der Schicht 1. Eine Wegewahl (Routing) ist
nicht erforderlich, da jede Nachricht im Prinzip bei allen Hosts vorbeikommt.



WANs bestehen aus mind. 1 Weitverkehrsstrecke sowie aus einem oder mehreren
LANs und/oder MANs am Anfang und Ende der Weitverkehrsstrecke als Zubringer
Es gilt: alle Weitverkehrsstrecken sind Punkt-zu-Punkt-Verbindungen.
An den Endpunkten einer Weitverkehrsstrecke sitzen spezielle Hosts, sog. Router
 Jeweils zwei Router sind paarweise verbunden
186



Router dienen zur Kopplung von MANs und WANs
Es gilt: jeder Router ist mit einem Nachbar-Router über eine dedizierte Strecke verbunden. Diese Strecke kann ein LAN, MAN oder eine Weitverkehrsstrecke sein.
bei WANs ist ein sendender Host i. A. nicht im selben LAN oder MAN wie der empfangende Host.
 Auf seinem Weg durchläuft ein Paket i. A. mehrere Netze (LANs, MANs, WANs)
 Bei der Kopplung von WANs ist eine Wegewahl (Routing) erforderlich.





Multicast und Broadcast auf Schicht 3 würden eine Vervielfältigung eines eintreffenden
Pakets im Router erfordern
Dies wird in der Praxis aber nicht gemacht, statt dessen werden viele einzelne Punktzu-Punkt-Verbindungen aufgebaut
Beispiel einer Weitverkehrsstrecke ist eine ATM-Verbindung, die über eine SONET/
SDH-Glasfaserstrecke implementiert ist.
ATM = Asynchronous Transfer Mode = Echtzeit-Protokoll (umfasst ISO-Schicht 2-4)
SONET/SDH = Synchronous Optical Network = eine Netztechnik der ISO-Schicht 1
187
11 Vermittlungsschicht (ISO-Schicht 3)






Die Vermittlungsschicht transportiert ein Datenpaket, das von einem Host erzeugt
wird, über eine Folge von Routern zum empfangenen Host
Die Folge von Routern heißt Weg, Pfad, Route oder Leitweg durch das Netz
Das Routing erfolgt mit Methoden der Graphentheorie
Dabei wird das Netz als Graph dargestellt
Knoten des Graphen sind die Router
Kanten des Graphen sind LANs, MANs und Weitverkehrsstrecken
188
11.1
Router als Zwischenknoten zwischen Endsystemen
Schichten
Anwendung
Endsystem
Zwischenknoten als
Vermittlungsschicht
Endsystem
Darstellung
Sitzung
Transport
Vermittlung
Sicherung
Bitübertragung
physikalische Medien


In den Zwischenknoten existieren nur die Schichten 1-3, denn Vermittler interessieren
sich nicht für den Inhalt der Datenpakete
Pakete müssen im Protocol Stack der Router nur bis Schicht 3, in den Endsystemen
hingegen in allen Schichten verarbeitet werden
189
11.2











Aufgaben der ISO-Vermittlungsschicht
Wegewahl
Verbindungsaufbau und -abbau von sog. „virtuellen Verbindungen“
Multiplexen von virtuellen Verbindungen
Multiplexen = eine Leitung dient nacheinander der Übertragung mehrerer, gleichzeitig
stattfindender Kommunikationen = Time Division Multiplex des Mediums
Zerkleinerung eines zu langen IP-Pakets in kürzere IP-Fragmente beim Sender und Wiedervereinigung der Fragmente zum Originalpaket beim Empfänger (Fragmentation and
Reassembly)
Fehlererkennung/Fehlerbehebung (Ende-zu-Ende)
Sicherstellung der Paketreihenfolge durch aufsteigende Sequenznummern
Flusssteuerung (Ende-zu-Ende) = Überlaststeuerung einzelner Hosts
Überlaststeuerung der durch IP verbundenen Teilnetze
Ziel der ISO-Schicht 3: Eine möglichst große Vielfalt von Netzen und Technologien
soll unterstützt werden. Dies wird im Internet durch IP erreicht
Die ISO-Schicht 3 kann sowohl über Datagramme als auch über virtuelle Verbindungen
realisiert werden
Beispiel: IP = Datagramm, ATM = virtuelle Verbindung.
190
11.2.1









Eigenschaften von Schicht-3-Datagrammen
Zieladresse und Herkunftsadresse für Acknowledge in jedem Paket notwendig
Pakete können außerhalb der Reihenfolge beim Empfänger eintreffen
Keine Fehlerüberwachung, keine Flusssteuerung
Vorteile von Datagrammen:
Simpler als virtuelle Verbindungen, daher einfacher zu implementieren
Kein Verbindungsauf- und -abbau, deshalb niedriger Overhead für kurzlebige Verbindungen
Flexibler und zuverlässiger bei Router-Ausfällen, da mehr als ein Weg zum Ziel führt
Besser geeignet für gekoppelte heterogene Teilnetze, da virtuelle Verbindungen zwischen Netzen verschiedener Typen technisch aufwendig ist
Virtuelle Verbindungen und Datagramme kann es sowohl auf Schicht 3 als auch auf
Schicht 4 geben, allerdings mit unterschiedlicher Bedeutung:
Def.: Eine Schicht-3-Verbindung bezieht sich darauf, dass die Wegewahl nur einmal während der Verbindungsaufbauphase erfolgt. Der Datentransfer erfolgt über einen perfekten Kanal.
Def.: Eine Schicht-4-Verbindung bezieht sich darauf, dass es einen Zustand „Schicht-4Verbindung aufgebaut“ gibt, der in einem endlichen Automaten bei Sender und bei Empfänger registriert wird. Auch hier erfolgt der Datentransfer über einen perfekten Kanal.
191
Beispiel: IP und UDP sind Datagramme, TCP macht virtuelle Verbindungen.

Schicht-3-Verbindungen haben nichts mit Schicht-4-Verbindungen zu tun, vielmehr
kann man z.B. eine Schicht-4-Verbindung mit einem Schicht-3-Datagramm kombinieren (Bsp. IP und TCP)
11.2.2


Eigenschaften von Schicht-3-virtuellen Verbindungen
Eine virtuelle Verbindung hat die Eigenschaft, ein perfekter Kanal durch das Netz zu
sein
Perfekte Kanäle erbringen folgende Dienstleistungen:
• Sicherstellung der Paketreihenfolge beim Empfang (kein Überholen)
• Erkennung von Übertragungsfehlern und automatische Korrektur durch Paketwiederholung
• Verlorene und duplizierte Pakete werden erkannt und wiederholt bzw. beseitigt
• Flusssteuerung wird von Ende-zu-Ende durchgeführt

Drei Phasen einer virtuellen Verbindung
• Verbindungsaufbau, Datenübertragung, Verbindungsabbau

Vorteile von virtuellen Verbindungen:
• Kein Aufwand für die Wegewahl während der Datenübertragung

Nachteile
• Rel. unflexibel bei sich schnell ändernden Netztopologien oder Routerausfällen
192
• Verbindungsauf- und abbau lohnen sich nur bei längeren Übertragungen
11.2.3







Wegewahl über virtuelle Verbindungen oder Datagramme
Eine virtuelle Verbindung zwischen zwei Endsystemen (Hosts) ahmt eine direkte physikalische Verbindung über ein Stück Draht zwischen zwei Endsystemen nach
Da es eine solche nicht gibt, spricht man von einer virtuellen Verbindung
Der Weg durch das Netz wird vor dem ersten Datentransfer vollständig festgelegt = Verbindungsaufbauphase
In jedem Zwischenknoten findet nur in der Verbindungsaufbauphase eine Wegewahlentscheidung statt
Der Verkehr nimmt stets denselben Weg durch das Netz
Jedes Datagramm wird dagegen als isolierte Einheit betrachtet, nur die Paketadresse
bestimmt im Router den Pfad, d.h die abgehende Leitung
Für jedes Datagramm wird in jedem Router erneut eine Wegewahlentscheidung getroffen, die von dem momentanen Netzzustand und dem Router selbst abhängt
193
11.2.3.1 Aufbau einer virtuellen Verbindung in einem Beispiel-WAN
R
R
Weitverkehrsstrecke
LAN
2. Connect
Request
1. Connect
Request
WAN
E
G/R
G/R
E
E
G/R
Weitverkehrsstrecke
MAN
R
E
R
R
R
3. Connect
Request
G/R
G/R
b) Aufbauphase der 1. Teilstrecke
a) Festlegen des Weges
E
E = Endsystem = Rechner (Hos
R = Router
G = Gateway
G/R
5. u. 6. Connect
Confirmations
E
R
c) Virtueller Verbindungsabschnitt existiert, Festlegung der Wegfortsetzung
E
G/R
4. Connect
Confirmation
G/R
E
R
d) nach 3 weiteren Schritten ist virtuelle Verbindung fertig gestellt
194
11.2.3.2 Verwaltung virtueller Verbindungen in einem Beispiel-WAN
H
B
H
Hosts
H
C
H
D
A
LANs
F
E
LAN
H
MAN
oder Weitverkehrsstrecke
H


Router/Gateways
Beispiel für acht virtuelle Verbindungen durch das WAN
In jedem Router werden Tabellen mit Zustandsinformationen über durchlaufende virtuelle Verbindungen verwaltet.
Lokale
Nummer der
virtuellen
Verbindung
in Router A
Ausgehend von A
0 - ABCD
1 - AEFD
2 - ABFD
3 - AEC
Ausgehend von B
dasselbe gibt
es auch für E-F
0 - BCD
1 - BAE
2 - BF
195
11.2.3.3 Zustandsinformation in den Routern auf dem Pfad AECDFB
Zum Host-Empfänger
Vom
Host =
sender



A
H0 B0
H1 E 0
B0 E 1
H2 B1
H3 E 2
H4 E 3
Tabelle
B
A0
H0
H1
A1
H2
F0
C0
C1
A0
F0
F1
H0
E
A0
A1
A2
A3
F0
H0
C0
C1
C
B0
B1
E0
E1
F
E0
B0
B1
D0
D0
D1
H0
D2
D0
D1
H0
B0
D
C0
C1
F0
F1
C2
H0
H1
H2
H3
F0
In jedem Router gibt es eine Tabelle zur Verwaltung der virtuellen Verbindungen
Jede im Router ankommende und abgehende virtuelle Verbindung erhält eine Nummer
Beispiel H 4 E 3 heißt: Vom Host kommt eine Verbindung mit der Nr. 4. Diese wird unter
der Nr. 3 an den Router E weitergereicht
 Eine virtuelle Verbindung hat beim Nachbar-Router dieselbe Nummer, wenn sie den
Router betritt und i.d.R. eine andere Nummer wenn sie den Router verlässt
196

Hier die Beispielverbindung HAECDFBH
Verbindungsnummer



A to E
4 3
E to C
3 1
C to D
1 2
D to F
2 0
F to B
0 0
B to H
0 0
H
A
E
C
D
F
B
0
H
Der Vorteil unterschiedlicher Nummern zur Verwaltung derselben Verbindung ist, dass
jeder Router seine Tabelle selbständig verwalten kann, ohne dass netzweit eindeutige
Verbindungsnummern vergeben werden müssen, was unmöglich wäre
Nur zwischen benachbarten Routern muss für dieselbe Verbindung eine Nummer verwendet werden
11.3

H to A
4
Routing-Algorithmen für virtuelle Verbindungen und Datagramme
Sowohl virtuelle Verbindungen als auch Datagramme benötigen Routing-Algorithmen
Allerdings ist der Aufwand bei einer einmal hergestellten virtuellen Verbindung erheblich kleiner als bei Datagrammen, da die Wegewahlentscheidung bereits getroffen ist
197
11.3.1



Wegewahl für Pakete vom Quellsystem zum Zielsystem (Ende-zu-Ende)
Der Wegewahlalgorithmus eines Routers entscheidet, auf welcher Ausgangsleitung
ein eingegangenes Paket weitergeleitet wird
Wünschenswerte Eigenschaften eines Wegewahlalgorithmus:
•
•
•
•
•
•
Korrekt (Paket findet immer zum Ziel)
Einfach (schnell auszuführen)
Robust (gegen Rechner- oder Leitungsausfällen)
Stabil (liefert deterministische Ergebnisse)
Fair (kein Paket wird benachteiligt)
Optimal (findet den schnellsten oder den kürzesten Weg)
11.3.2

Aufgaben von Routing-Algorithmen
Eigenschaften von Routing-Algorithmen
Optimierungskriterien des Algorithmus (Beispiel):
• Durchschnittliche Paketverzögerung (Latenz)
• Gesamtdurchsatz des Netzes (Durchsatz)

Dies sind sich widersprechende Optimierungen, daher gilt oft folgende Heuristik:
• Minimierung der Teilstrecken (hops) pro Paket (= Kompromiss)

Vorteil:
• Reduziert Latenz (jedoch nicht in allen Fällen)
198
• Vermindert benötigte Bandbreite
• Steigert Durchsatz, allerdings i. A. nicht bis zum Maximum


In einem Netz können Latenz und Durchsatz nicht gleichzeitig optimiert werden, weil
hoher Durchsatz gemäß Warteschlangentheorie (Queueing Theory) nur durch eine
hohe Latenz erreichbar ist.
Beispiel: Wartezimmer beim Arzt ist meistens voll, da Ärzte ihren Durchsatz optimieren
wollen.
11.3.3
Klassifikation von Routing-Algorithmen
1. Statische (nicht adaptive) Verfahren
• Keine Berücksichtigung des aktuellen Netzzustandes
• Gehen von Mittelwerten aus, nicht von lokalen Informationen
• Leitweg zwischen Knoten i und j wird für alle i, j vor der Inbetriebnahme des Netzes bestimmt
• Keine Änderung während des Betriebs (=> statisches Routing)
2. Adaptive Verfahren
• Entscheidungen basieren auf aktuellem Netzzustand
• Messungen/Schätzungen der Topologie und des Verkehrsaufkommens sind Basis für die
Wegewahlentscheidung

Feinere Unterteilung der adaptiven Verfahren in:
• Zentralisierte Verfahren
199
• Lokale Verfahren
• Verteilte Verfahren
11.3.4




Statisches Routing
Beim statischen Routing ist die gesamte Topologie des Netzes einer zentralen Stelle
bekannt.
Sie berechnet die optimalen Pfade für jedes Paar (i, j) von Knoten, erstellt daraus die
Routing-Tabelle für die einzelnen Knoten und versendet diese an alle (= Routing über
statische Tabellen).
Nur sinnvoll, wenn das Netz klein und statisch ist
Eigenschaften von statischem Routing:
• Optimale Pfade (i, j) für alle i, j sind i.d.R. kürzeste Pfade oder schnellste Pfade
• Kürzeste Pfade werden zentral über den Graphenalgorithmus „Spannbaum“ bestimmt
bzw. über „minimalen Spannbaum“
• Das bekannteste Verfahren zur Berechnung eines minimalen Spannbaums ist das von Dijkstra
• Definition Spannbaum:
Gegeben sei Graph G = (V, E). Dann ist G’= (V, E’) ein Spannbaum von G, wenn G’ = Baum
E’ erreicht alle Knoten von G gilt.
11.3.4.1 Zusammenfassung statisches Routing

Eigenschaften
200
• Tabellen werden von einem Netzwerkoperator zentral erstellt
• Tabellen werden vor Inbetriebnahme des Netzes in die Knoten geladen und dann nicht
mehr verändert

Vorteile
• Einfach zu implementieren
• Gute Ergebnisse bei relativ konstanter Topologie und konstantem Verkehr

Nachteile
• Schlecht bei stark variierendem Verkehrsaufkommen und bei Topologieänderungen
• Schlecht bei großen Netzen (skaliert nicht)
11.3.5

Optimierungen bei Routing-Algorithmen
Sowohl bei statischem als auch bei dynamischem (= adaptivem) Routing können zwei
Verfeinerungen angebracht werden:
• Mehrfachpfade, dient zum finden alternativer Wege durch das Netz
• Hierarchische Wegewahl, dient zur Vereinfachung der Algorithmen
11.3.5.1 Mehrfachpfade (Multipath Routing)


Prinzip: Benutzung alternativer Leitwege zwischen jedem Knotenpaar (i, j)
Vorteile:
• Alternative Wege könne gemäß ihrer „Güte“ ausgewählt werden („gute“ Wege häufig,
„schlechte“ seltener)
201
• Höherer Durchsatz durch Verteilung des Datenverkehrs auf mehrere Pfade erreichbar
• Höhere Zuverlässigkeit, da der Ausfall eines Links nicht so schnell zur Unerreichbarkeit
von Knoten führt

Metrik: guter Weg := schnellster/kürzester/geringste Warteschlange/höchste Bandbreite/höchste Zuverlässigkeit
11.3.5.2 Realisierung von Mehrfachpfaden

Jeder Knoten enthält Routing-Tabelle mit je einer Zeile für jeden möglichen Zielknoten
eine Zeile
Zielknoten
A1
G1
A2
G2
...

Ai: i-beste Ausgangsleitung des jeweiligen Zwischenknotens

Gi: Gewicht für Ai (drückt die Güte der Leitung aus)
An
Gn
• Gi bestimmt die Wahrscheinlichkeit, mit der Ai benutzt wird
• Die Summe aller Gewichte Gi muss 1 ergeben
• Die Gewichte Gi der Ausgangsleitungen werden gemäß der gewählten Metrik (schnellsten,
kürzesten,...) bestimmt
202
Beispiel: gegeben sei Ziel B und Quelle J mit G1(A) = 0,46; G2(H) = 0,31; G3(I) = 0,23
A
B
I
J
H
L
K
Gewichte werden auf dem Zahlenstrahl von 0 bis 1 aufgereiht (z. B. links das höchste,
rechts das niedrigste; genaue Reihenfolge ist jedoch ohne Belang)
über H
über A
0

D
G
F
3 Alternativen
E

C
Gewicht G1
0,46
Gewicht G2
über I
0,77 Gewicht G3 1
Dann erfolgt eine Zufallsauswahl der alternativen Ausgangsleitung gemäß ihres Gewichts (= Güte):
• Generieren einer Zufallszahl z (0  z 1)
203
• Wähle A1, falls 0  z  G1, wähle A2, falls G1 z < G1 + G2, u.s.w.
=> Jeder Weg wird entsprechend der Länge seines Gütemaßes im Mittel mit der gewünschten Häufigkeit benutzt
11.3.5.3 Hierarchische Wegewahl


Ausgangssituation: die Größe der Routing-Tabellen ist ohne hierarchische Leitwegbestimmung proportional zur Größe des Netzwerks:
Nachteile:
• Großer Speicherbedarf
• Viel CPU-Zeit zum Durchsuchen der Tabellen
• Viel Bandbreite zum Austausch von Routinginformation



Ab einer bestimmten Netzgröße ist hierarchische Leitwegbestimmung notwendig
Beispiel: zweistufiger Hierarchie aus Regionen und Knoten in einer Region
Jeder Knoten kennt:
• Details seiner Region und den Leitweg zu allen anderen Regionen
• Aber nicht den Weg zu den Knoten außerhalb der eigenen Region, nur in welcher Region
der Zielknoten liegt
• Nachteil: nicht immer optimale Entscheidungen möglich
204
11.3.5.4 Beispiel einer zweistufigen Hierarchie
Region 1
1B
2A
1C
1A
Volle Tabelle für 1A
2B
Region 2
2D
2C
Region 4
4B
Region 3
3A
5B
5A
3B
4A
4C
5C
Region 5
5D
5E
Hierarchische Tabelle für 1A
Ziel
Leitung
Teilstrekken
1A
-
-
1B
1B
1
1C
1C
1
2A
1B
2
2B
1B
3
2C
1B
3
2D
1B
4
3A
1C
3
3B
1C
2
4A
1C
4
Ziel
Leitung
Teilstrekken
1A
-
-
1C
3
1B
1
 hierarchi-
4B
1B
1C
4
1C
1C
1
sche Tabelle ist
viel kürzer
4C
5A
1C
4
2
1B
2
5B
1C
5
3
1C
2
5C
1B
5
4
1C
3
5D
1C
6
5
1C
4
5E
1C
5
205
11.3.6

Adaptives Routing
Man unterscheidet drei Gruppen von Verfahren:
1.) Zentrale Verfahren
2.) Lokale Verfahren
3.) Verteilte Verfahren
 Zentral heißt:
• Einer führt offline oder online den Wegewahl-Algorithmus aus (= zentrale Instanz)

Lokal heißt:
• Alle Router führen den Algorithmus aus, aber ohne Kommunikation (= isoliert)

Verteilt heißt:
• Alle Router führen den Algorithmus mit Kommunikation, d. h. unter Austausch von Information aus
11.3.7

Adaptives und verteiltes Routing
Das sind die Methoden, die im Internet angewandt werden bzw. wurden
1.) „Distanz“vektor-Verfahren (ganz alt)
2.) Link-Zustandsverfahren (mittelalt)
3.) OSPF-Verfahren (derzeit aktuell)
206

Aus Kompatibilitätsgründen müssen alle Router alle Verfahren unterstützen
11.3.7.1 Das „Distanz“vektor-Verfahren


Prinzip: Die Knoten tauschen mit ihren Nachbarn Leitweginformationen aus:
Jeder Knoten kennt die „Distanz“ (=Güte) zu jedem Nachbarn, z. B. hinsichtlich:
• Anzahl der Teilstrecken
• Verzögerungszeit. Latenz wird über sog. Echopakete wie bei ping gemessen.
• Warteschlangenlänge in den einzelnen Sende- und Empfangspuffern
Jeder Knoten X sendet periodisch seinen Nachbarn Y eine Liste mit seinen gemessenen/geschätzten Güten für jedes Ziel
=> X empfängt auch eine Liste vom Nachbarn Y
 Dann wird für die gewählte Metrik das Transitivgesetz angewandt:

• Sei e der Wert der Metrik des Paares (X, Y), Z ein beliebiger Knoten und E(Z) der Wert der
Metrik für das Paar (Y, Z) (E wird aus der Liste von Y an X entnommen), dann gilt:
 Der Wert der Metrik für das Paar (X, Z) über Y ist: E(Z) + e


Nach jeder Periode konvergiert die Tabelle näher zur Wahrheit (=iteratives Verfahren)
Problem:
Der Ausfall eines Routers wird nur langsam erkannt (= count-to-infinity-Problem), da
die Ausbreitung dieser Information im Netz viele Iterationen erfordert
207
11.3.7.2 Beispiel für das „Distanz“vektor-Verfahren
A
C
B
G
F
E
D
H
8 12
I
10
J
6
K
L
betrachteter Knoten J

J misst die Latenz zu seinen Nachbarn A, I, K, und H und erhält:
• JA-Verzögerung = 8, JI-Verzögerung = 10, JH-Verzögerung = 12, JK-Verzögerung = 6





J empfängt seinerseits von seinen Nachbarn die Latenzen zu allen anderen Knoten
(vom jeweiligen Nachbarknoten aus gesehen)
Aus beiden Informationen baut J eine lokale Latenztabelle mit Hilfe der Transitivität der
Metrik auf
Im dritten Schritt verteilt J seine lokale Tabelle an seine direkte Nachbarn
Vorgang wird periodisch von allen Knoten wiederholt
Es bildet sich i.A. nach einigen Iterationen ein eingeschwungener Zustand aller Werte
208




in den Routingtabellen aus
Der eingeschwungener Zustand bleibt solange bestehen, bis das Netz seine Übertragungseigenschaften oder seine Topologie ändert
Der eingeschwungener Zustand kommt nicht zustande, wenn das count-to-infinity-Problem auftritt
In diesem Fall oszillieren die Werte in den Tabellen hin und her
Dieses Phänomen ist der Grund, warum das Distanzvektorverfahren außer Dienst gestellt wurde
209

Beispiel: Tabellen, die J empfängt:
Ziel


von A
von I
von H
von K
A
0
24
20
21
B
12
36
31
28
C
25
18
19
36
D
40
27
8
24
E
14
7
30
22
F
23
20
19
40
G
18
31
6
31
H
17
20
0
19
I
21
0
14
22
J
9
11
7
10
K
24
22
22
0
L
29
33
9
9
Eigene Messungen zu den Nachbarn sind: JA = 8, JI = 10, JH = 12, JK = 6
Beachte: die Latenzen AJ, IJ, HJ und KJ, die die Nachbarknoten sehen, sind anders, als
die, die J sieht: AJ  JA
 Latenzen sind in Rechnernetzen i.a. nicht symmetrisch
210


J wählt aus den eigenen Messungen und den empfangenen Latenzen den besten Weg
Ergebnis des Tabellenaustauschs von J mit den direkten Nachbarn:
Ziel
Latenz
über
Ziel
Latenz
über
A
8
A
G
18
H
B
20
A
H
12
H
C
28
I
I
10
I
D
20
H
J
0
-
E
17
I
K
6
K
F
30
I
L
15
K
11.3.7.3 Das Link-Zustandsverfahren



Ist Nachfolger des Distanzvektorverfahrens
Mittlerweile auch veraltet
Prinzip:
• Jeder Router in einem Subnetz (Routing Region) ist im Vollbesitz aller „Güte“-Werte des
Subnetzes
211
• Dazu sendet jeder Router sog. ICMP-Pakete an alle anderen Router im Subnetz, nicht nur
an seine direkte Nachbarn
• Entsprechend empfängt jeder Router ICMP-Pakete von allen anderen Routern im Subnetz
• Dadurch kann jeder Router lokal die Topologie des ganzen Subnetzes rekonstruieren
• Als Gütewerte werden die üblichen Metriken, d.h. schnellster (= Bandbreite), kürzester (=
Latenz) u.s.w. verwendet
• Mit Hilfe der Topologie und der Güte jeder Verbindung kann jeder Router für sich einen minimalen Spannbaum des Subnetzgraphen aufbauen

Problem: Das Link-Zustandsverfahren ist nicht flexibel und nicht sicher genug gegen
Hacker-Angriffe
ICMP= Internet Control Message Protocol = wichtiges Steuerungsprotokoll im Internet
11.3.7.4 Das OSPF-Verfahren



OSPF = open „shortest path first“
Nachfolger des Link-Zustandsverfahrens und Stand der Technik
Funktioniert wie das Link-Zustandsverfahren, aber mit einer Reihe von Erweiterungen:
•
•
•
•
Unterstützt mehrere Metriken (kürzeste, schnellste Wege etc.)
Berücksichtigt alternative Wege
Unterstützt hierarchisches Routing mit 2 Ebenen (Link-Zustandsverfahren in jeder Region)
Ist sicherer bzgl. böswilliger Manipulation der Routing-Tabellen, da Tabellen durch lokale
Datenbanken ersetzt werden
212
• Spannbaum eines Subnetzes (Routing-Region) wird gem. Dijkstra berechnet (von jedem
Knoten in der Region)
• Topologie und Güte jeder Wegstrecke (= Kanten des Graphen) werden in einer Datenbank
gehalten (nicht in einer Tabelle), und zwar in jedem einzelnen Knoten gleichzeitig
11.4



Vermittlungsschicht des Internet (IP)
Die Vermittlungsschicht des Internet (IP V4 oder IP V6 implementiert einige aber nicht
alle Eigenschaften einer ISO-Vermittlungsschicht
Insbesonders ist IP kein perfekter Kanal
Bei Weitverkehrsnetzen hat IP nur dann eine Routingfunktiong, wenn IP auf SONET/
SDH ohne ATM übertragen wird
 IP macht im Internet die Wegewahl, sofern es nicht als Nutzlast von ATM transportiert
wird
11.4.1

IP V4 und V6
IP V4 und V6 sind Protokolle für die Ende-zu-Ende-Kommunikation zwischen Sender
und Empfänger mit folgenden Haupt-Eigenschaften:
• Verbindungsloser Dienst, d.h. Datagramme
• Fragmentiert große Pakete in mehrere kleinere, falls das nötig sein sollte
213
Beispiel: Von SONET/SDH nach Ethernet = Übergang in ein Subnetz mit kleinerer maximaler Rahmenlänge (MTU)
MTU = Maximum Transport Unit auf der Schicht 2
• Reassembliert Fragmente wieder zum Original IP-Paket, sobald die MTU-Länge auf Schicht
2 dies zulässt

Nachteile von IP:
• Maximale IP-Paketlänge ist 64 KB, davon entfallen mindestens 20 Byte auf den Header
 Ist für kleine Datenmengen (<20 Byte) ineffizient, da großer Header
• Schützt nicht vor Paketverlusten oder von Verlusten von Teilen eines Pakets, den Schicht
3-Fragmenten, da es keine automatische Paket- bzw. Fragmentwiederholung im Fehlerfall
gibt
• Nur IP V6 unterstützt Quality of Service (QoS) bei der Übertragung, mit IP V4 sind Garantiern für Echtzeitdatenübertragung nicht möglich


IP V4 hat eine hohe praktische Bedeutung, da weit verbreitet
Bedeutung von IP wird nach flächendeckender Einführung von IP V6 noch steigen
214
11.4.2
Aufbau eines IP V4-Pakets
0
4
8
VERS LEN
16
TYPE OF SERVICE
PROTO
24
31
TOTAL LENGTH
FLAGS
IDENT
TIME
19
FRAGMENT OFFSET
HEADER CHECKSUM
HEADER
SOURCE IP ADDRESS
DESTINATION IP ADDRESS
PADDING
OPTIONS
DATA
NUTZDATEN
...
11.4.2.1 Die Header-Felder von IP V4
VERS
4b
LEN
TYPE OF SERVICE (Bedeutung siehe
unten)
4b
8b
Protokollversion von IP, z. Z. IP V4
oder IP V6
Länge des Headers (in 32 Bit-Wörtern)
Bits 0-5: DSCP (Differentiated Services Code Point)
Bits 6-7: ECN (Explicit Congestion
Notification = IP-Flusssteuerung)
215
TOTAL LENGTH
16b
IDENT
16b
FLAGS
3b
FRAGMENT
OFFSET
13b
TIME
8b
PROTO
8b
HEADER
CHECKSUM
SOURCE
ADDRESS
DEST ADDRESS
OPTIONS
16b
32b
Länge incl. Nutzdaten in Bytes =>
Maximale IP-Paketlänge = 64 KB
Information, zu welchem Datagramm
dieses Paket nach einer Fragmentierung gehört
nicht fragmentieren bzw. letztes Fragment (DF/LF)
Position dieses Pakets (=Fragment)
innerhalb des Datagramms mit der
Nummer IDENT [in 8-Byte-Einheiten]
Lebensdauer in Sekunden („time to
live“) 255 s. Oft werden statt Sekunden die Zahl der Zwischenknoten
(Router Hops) gezählt.
Ist inzwischen veraltet bzw. wird teilweise anders verwendet
Typ des darüberliegenden höheren
Protokolls = UPD oder TCP
EXOR-Verknüpfung der Header-Wörter als Prüfsumme für den Header
IP Adresse des Quell-Hosts
32b
IP-Adresse des Ziel-Hosts
max. 40
Für Router-Management, WegelogByte lang buch und ähnliches
216
PADDING
DATA
Auffüller, so dass stets Wortgrenzen
erreicht werden
Nutzdatenfeld (Payload)
11.4.2.2 DSCP (Differentiated Services Code Point)


Enthalten Informationen, wie das Paket an einer Netzgrenze weitergeleitet werden soll
Dazu kann das Paket in eine von 64 Klassen eingeteilt werden
Beispiel: 1.) Expedited Forwarding-Klasse für Pakete, die eine geringe Latenz benötigen. 2.) Assured Forwarding-Klassen: teilt Pakete in vier Klassen zu je drei Prioritäten
ein.

Funktioniert in der Praxis bei IP V4 nur selten
11.4.2.3 ECN (Explicit Congestion Notification)



Dient zur Mitteilung eines Routers an seinen Vorgängerrouter, dass bei ihm Überlastung droht
Theoretisch breitet sich dies Information rückwärts bis zur Datenquelle aus, worauf
diese die Datenrate reduziert
Funktioniert in der Praxis bei IP V4 nur selten
11.4.2.4 Ident und Fragment Offset

Ein IP-Fragment ist ein vollständiges IP-Paket mit komplettem Header, bei dem die Fel217


der Ident und Fragment Offset belegt sind
Fragmentation and Reassembly ist notwendig, wenn die darunterliegende Schicht 2
keine 64 KB Datenrahmen übertragen kann, sondern nur kleinere
Trifft immer bei Ethernet als Schicht 1+2a zu, da es dort nur Datenrahmen mit max. 1500
Byte gibt
11.4.2.5 Beispiele für IP V4-Optionen
1.) „Strict Source Routing“: enthält eine Liste von Router-IP-Adressen, auf denen das
Paket zum Ziel gelangt. Nur diese Route darf verwendet werden.
2.) „Record Route“: weist alle Router an, ihre IP-Adresse in das Optionenfeld einzutragen, damit der Weg des Pakets vom Empfänger zurückverfolgt werden kann (Wegelogbuch)
• Problem hierbei: 40 Byte im Optionsfeld reichen nicht aus, wenn viele Zwischenstufen
durchlaufen werden, was heutzutage oft der Fall ist.
3.) „Time Stamp“: weist alle Router an, eine 32-Bit-Zeitangabe in das Optionenfeld einzutragen
 Die letzen beiden Optionen sind für Testzwecke
 Die vollständige Liste aller möglichen Optionen steht unter www.iana.org/assignments/ipparameters
218
11.4.3





Aufbau eines IP V6-Pakets
Minimale Header-Länge ist 40 Byte
Optional kann ein Erweiterungs-Header variabler Länge dazukommen
Minimale IP V6-Paketlänge ist 40 Byte (kein Erweiterungs-Header, keine Nutzdaten)
Maximale IP V6-Paketlänge ist 64 K-1+40 Byte (mit Erweiterung-Header und Nutzdaten,
aber ohne sog. Jumbograms)
Die ersten 40 Header-Bytes
0
0
4
Version
12
16
Traffic Class
2
3
4
5
6
7
8
9
20
24
28
31
Flow Label
Payload Length
1
Minimum
Header:
10x32
Bit-Worte
8
Next Header
Hop Limit
16 Byte Source Address
16 Byte Destination Address
219
11.4.3.1 Bedeutung der ersten 40 Header-Bytes
Feldname
Länge Bedeutung
Version
4 Bit
Traffic Class
Flow Label
Payload Length
Next Header
Hop Limit
Source Address
Destination
Address
11.4.4


6 = IP V6
Für Quality of Service (QoS). Ist wie bei IP V4 definiert, d.h. besteht aus:
8 Bit
Bits 0-5: DSCP (Differentiated Services Code Point)
Bits 6-7: ECN (Explicit Congestion Notification = IP-Flusssteuerung)
20 Bit Zur Attributierung des Pakets wegen QoS und Echtzeitdatenübertragung
Länge des Pakets ohne Minimum Header aber mit Erweiterungs-Header in
16 Bit
Byte
Typ des Erweiterungs-Headers (nur IP V6-Erweiterung oder Erweiterung für
8 Bit
Schichten höher als 3)
Maximale Anzahl an Routern, die ein Paket zurücklegen darf. Wird beim
8 Bit
Durchlaufen eines Routers („Hop“) um eins verringert. Pakete mit Wert null
werden gelöscht. Verhindert ewig kreisende Pakete.
128 Bit IP Adresse des Quell-Hosts
128 Bit IP Adresse des Ziel-Hosts
Quality of Service (QoS) in IP V6
Bei IP V6 funktioniert QoS dann, wenn alle beteiligten Akteure IP V6 unterstützen, d.h.
wenn Quell- und Zielrechner, sowie alle Router dazwischen IP V6-fähig sind
Dies ist derzeit meist nicht der Fall
220
11.4.4.1 Traffic Class

Ist wie bei IP V4 definiert
11.4.4.2 Flow Label


Erlaubt zustandslose und zustandsbehaftete Datenübertragung
Bei zustandsloser Datenübertragung kann das Paket durch Zusatzinformation attributiert werden (Flow Label)
Beispiel: Es gibt ein Flow Label für das Zusammenfassung von IP V6-Paketen zu einer
Gruppe mit dem Ziel einer besseren Lastverteilung zwischen Routern

Bei zustandsbehafteter Datenübertragung ist eine sog. Signalisierung zwischen Quellund Zielrechner und Routern möglich
Beispiel: Signalisierung durch RSVP oder das General Internet Signaling TransportProtokoll (GIST)
11.4.5

Adressierung in IP V4
Das Internet besteht aus einer riesigen Zahl von Netzen (>>105), die durch IP adressiert
werden, sofern IP nicht ATM-Nutzlast ist, d.h. getunnelt wird
Tunneling: Verfahren, um IP-Pakete durch inkompatible Netze zu routen wie z.B. ATM. IP-Paket hat im
Netz, durch das getunnelt wird, keine Funktion sondern wird als Nutzlast der Schicht 7 transportiert
221

Beispielkonfiguration für Teilnetze im Internet
11.4.5.1 32 Bit IP V4-Adressen


Es werden für die Adressierung je 32 Bit für Quelle und Ziel verwendet, was heute zu
wenig ist
IP-Adressen wurden über lange Zeit bestimmten Adressklassen zugeordnet und in festen Portionsgrössen vergeben, sog. Classful Addressing
222











Nach einigen Jahrzehnten gingen langsam die Adressen aus und man begann, die letzten noch übrig gebliebenen Adressen ohne Klasseneinteilung und in beliebigen Portionen zu vergeben (= Classless Interdomain Routing, CIDR)
Des weiteren begann man, Adressen nur kurzzeitig, d.h. dynamisch zu vergeben (=
DHCP) oder mehrfach zu verwenden, z.B. global 1 Mal und lokal mehrfach (= Network
Address Translation, NAT), um der drohenden Adressknappheit zu entgehen
Traditionell wurden Internet-Adressklassen vom einem sog. Network Information Center (NIC) bzw. seinen Unterorganisationen in den einzelnen Ländern zugeteilt (http://
www.nic.com)
Die Unterorganisation des NIC in Deutschland ist das denic (http://www.denic.de)
Das denic hat die klassenbasierten Adressen an Endkunden vermietet
Heutzutage werden klassenlose Adressbereiche in frei wählbaren Portionsgrößen gegen Gebühr von der Internet Assign Number Authority (IANA) vergeben (http://www.iana.org)
Die IANA ist eine Unterorganisation der ICANN, die die Standards des Internet festlegt
Die IANA hat 5 Unterorganisationen für die 5 Regionen der Welt
Für Europa ist die Unterorganisation RIPE zuständig (http://www.ripe.net)
Dort kann jeder Privatmann, jede Firma, Behörde oder Behörde IP-Adressen kostenpflichtig und meist für ein Jahr beziehen
Da fast alle IP-Adressen klassenbasiert sind, wird im weiteren diese Adressierung erläutert
223
11.4.5.2 Klassenbasierte IP V4-Adressen




Die klassenbasierte IP V4-Adresse ist eine hierarchische Adresse aus Netz- und HostAdresse (netid und hostid)
Es gibt drei Formate für Subnetze unterschiedlicher Größe sowie ein Format für Multicast
Gebräuchliche Schreibweise für die IP-Adresse sind 4 Zahlen  255 mit Punkten dazwischen
Beispiele:
• 10.0.0.0 für Arpanet (class A)
• 128.10.0.0 für ein großes LAN (class B)
• 192.5.48.0 für ein kleines LAN (class C)
224
11.4.5.3 Aufbau klassenbasierter IP V4-Adressen
Hostadresse
Typ Netzadr.
für Multi- 3 Formate
cast

0
0
CLASS B 10
0
CLASS C 110
2
0
CLASS D 1110
netid
3
4
24
31
7 Bit netid, 24 Bit hostid
31
hostid
31
23 24
netid
hostid
31
group address
14 Bit netid, 16 Bit hostid
21 Bit netid, 8 Bit hostid
Es gibt folgende Adressklassen:
•
•
•
•
•

CLASS A
16
hostid
15 16
123...78
netid
0
Klasse-A-Netze: 1.0.0.0 bis 127.255.255.255
Klasse-B-Netze: 128.0.0.0 bis 191.255.255.255
Klasse-C-Netze: 192.0.0.0 bis 223.255.255.255
Klasse-D-Netze: 224.0.0.0 bis 239.255.255.255 (nur für Multicast)
reserviert: 240.0.0.0 bis 255.255.255.255
Bei den IPV4-Adressen gibt es ganze Adressbereiche mit spezieller Bedeutung wie
Broadcast, eigenes Netz, eigener Host und loop back
Loopback = Host sendet an sich selber
225

Durch diese speziellen Adressbereiche gehen einige Mio. Adressen verloren

IP V6 stellt praktisch unbegrenzt viele Adressen zur Verfügung (128 Bit => 2128)
11.5

IP-Subnetze
Beim Internet gibt es die Möglichkeit, einen Teil der Hostadresse lokal als Subnetzadresse zu vergeben, wodurch eine 3-stufige (= hierarchische) IP-Adressvergabe entsteht
Beispiel:
• Die TUC hat von der NIC bzw. IANA ein Klasse-B-Netz mit 139.174.0.0 als Netzadresse (sog.
address domain) gemietet, das vom RZ verwaltet wird
• Die 16 Bit Hostadressen dieser Domäne können lokal beliebig aufgeteilt werden, z.B. in 8
Bit-Subnetzadresse und 8 Bit Host-Adresse
• Jedem TUC-Institut wurde vom RZ-Netzwerkadministrator eine 8 Bit-Subnetzadresse zugewiesen
• Das Institut für Informatik hat als Subnetzadresse 100, so dass dort alle IP-Adressen
139.174.100.x lauten
• Im IfI wiederum weist der IfI-Netzwerkadministrator jedem Rechner eine Host-Adresse innerhalb obiger Subnetzadresse zu
• Einführung einer dreistufigen Adresshierarchie aus Netzklasse, Netzadresse und
Subnetz
• Der Standard-Gateway im IfI hat beispielsweise die IP-Adresse 139.174.100.254
226
Bemerkung: Ein IP-Subnetz hat nichts mit einem Subnetz der Schicht 1 und 2 zu tun. Verschiedene LANs
können ein gemeinsames IP-Subnetz bilden.


Die Adressierung der Subnetze geschieht über Subnetzmasken, die lokal mit der IP-Adresse UND-verknüpft werden
Beispiel:
• 139.174.100.x AND 255.255.255.0
(255.255.255.0 ist die Subnetzmaske)
11.5.1

liefert
das
Informatik-Subnetz
139.174.100.0
Vorteile von Subnetzen
Router müssen an ihren Ausgangs-Ports nicht eine große Zahl von Hosts (bis zu 16M2) verwalten, sondern nur wissen, über welche Leitung man zum jeweiligen Subnetz gelangt
 Erhebliche Einsparungen bei den Routing-Tabellen

Subnetze sind von außen nicht erkennbar, deshalb kann die Unterteilung in Subnetze
ohne die NIC bzw. IANA, d.h. dezentral (= vor Ort) gemacht werden
 Die Wegewahl erfolgt hierarchisch, was einfacher ist
227
12 Transportschicht (ISO-Schicht 4)




Die Schicht 4 im ISO-Modell kann sowohl durch Schicht-4-Verbindungen als auch
durch Schicht-4-Datagramme implementiert werden
Im Internet wurde beides realisiert
Es gibt das Control Protocoll (TCP) für virtuelle Verbindungen und das Universal Datagram Protocol (UDP) für Datagramme
TCP hat alle Eigenschaften der ISO-Transportschicht sowie zusätzlich OptimierungsFunktionen
12.1


Die ISO-Transportschicht ist eine Spezifikation und Implementierung der ISO Schicht 4
Sie ist verbindungsorientiert
12.1.1


Die ISO-Transportschicht
Aufgaben der ISO-Transportschicht
Aufbau- und Abbau einer Verbindung zwischen Sender und Empfänger
Bereitstellen von QoS
QoS = Quality of Service. QoS ist bei der ISO-Transportschicht höher als bei TCP.
Beispiel: Bietet priorisierte Datenübertragung („expedited data“)
228


Vollduplex-Datenübertragung
Sichere Datenübertragung über einen perfekten Kanal bestehend aus: 1.) Einhalten der
Paketreihenfolge 2.) automatische Paketwiederholung bei Übertragungsfehlern 3.) automatisches Löschen von mehrfach übertragenen Paketen
 FIFO-Reihenfolge
Teilnehmer B
Teilnehmer A
Warteschlange von A nach B
Datenpakete
Warteschlange von B nach A
Transportsystem
12.1.2

Weitere Eigenschaften der ISO-Transportschicht
Ausnahme bei der FIFO-Reihenfolge sind Expedited Data = Daten hoher Priorität
• Expedited Data halten untereinander ebenfalls ihre Reihenfolge ein, werden aber zwischen
normale Pakete („Daten-PDUs“) eingestreut (=“verschränkte Übertragung“)
229
• Eine separate Warteschlange für Expedited Data kann bei Sender und Empfänger existieren, muss aber nicht






Datenpakete erleiden durch die Ausführung der Dienste der Transportschicht eine
Verzögerung (Latenz), da ggf. Pakete in der Reihenfolge umgeordnet werden müssen
(packet reorder) oder weil Pakete nochmal übertragen werden müssen (packet retry)
Der Anwendungsprozess greift auf die Transportschicht über einen sog. Transportschicht-Dienstzugangspunkt (TSAP, Transport Layer Service Access Point) zu
Die Transportschicht wiederum spricht die Vermittlungsschicht über einen Vermittlungsschicht-Dienstzugangspunkt (NSAP, Network Layer Service Access Point) an
Die TSAPs werden bei TCP durch „Ports“, d.h. spezielle Adressen im Betriebssystem
des Empfängers realisiert
Die Transportschicht erlaubt über Ports die direkte Kommunikation mit Prozessen auf
einem anderen Rechner
Die beschriebenen Eigenschaften der ISO-Transportschicht wurden alle in TCP implementiert, zusammen mit einigen Optimierungen zur Verbesserung des Datendurchsatzes und des Time Out-Verhaltens (=Optimierungsfunktionen)
230
12.1.3
Funktionsaufrufe (API) der ISO-Transportschicht
12.2
Transportprotokolle im Internet (TCP, UDP)





TCP ist das wichtigste Transportprotokoll im Internet, denn in vielen LANs wie z.B.
Ethernet ist die Schicht 2b nicht vollständig implementiert
Dieses Versäumnis wird von TCP auf Schicht 4 behoben
Das komplette TCP-Paket wird im Datenfeld eines IP-Pakets als Nutzlast transportiert
Neben TCP gibt es noch UDP, das allerdings nur Datagramm-basiert ist, d.h. keine sichere Übertragung bietet
TCP Ist hinsichtlich des Datenaustauschs effizient, aber nicht echtzeitfähig
231
 die TCP-Transportschicht verbessert die QoS des Internets beträchtlich, allerdings
nicht in Richtung Echtzeit
12.2.1



Datensicherung durch TCP
TCP sichert die Nutzdaten auf dem Weg von Sendeprozess zu Empfangsprozess, d.h.
von Ende zu Ende über einen perfekten Kanal
Arbeitsumgebung der Transportschicht ist das ganze Internet
Arbeitsumgebung der Sicherungsschicht ist nur das Kabel bis zum nächsten Rechner
Die Sicherungsschicht arbeitet nur zwischen benachbarten Rechnern. Prozesse gibt es nicht und deshalb
existieren auch keine Port-Adressen und keine Interprozesskommunikation.
12.2.2

Von TCP erbrachte Dienste
Stellt die sichere Kommunikation von Prozess-zu-Prozess in 3 Phasen bereit:
• Verbindungsaufbau
• Datenübertragung
• Verbindungsabbau

Fasst mehrere kurze TCP-Daten derselben Verbindung zu einem langen Paket zusammen
 effizienter bzgl. der erreichbaren Bandbreiteausnutzung, da der Header-Anteil im
Paket im Vergleich zur Nutzlast weniger ins Gewicht fällt
232


Zerteilt (segmentiert) lange Nachrichten der darüberliegenden Anwendungsschicht in
64 K-Pakete und vergibt eine Segmentnummer für jedes TCP-Teilpaket
Baut segmentierte Nachrichten anhand der Segmentnummer wieder zusammen (reassembly)
Auf Schicht 3 gibt es bei IP den Vorgang „Fragmentation and Reassembly“. Dieser hat nichts mit
„Segmentation and Reassembly“ bei TCP auf Schicht 4 zu tun. Beide Vorgänge laufen parallel und
unabhängig voneinander ab. Fragmentation auf Schicht 3 zerteilt zu lange IP-Pakete in kürzere IP-Pakete,
die von Schicht 2 übertragen werden können. Segmentation auf Schicht 4 zerteilt zu lange Nachrichten in
kürzere TCP-Pakete.




Verbessert die Fehlertoleranz durch Rücksetzen einer existierenden Verbindung (reset)
Leistet Ende-zu-Ende-Flusssteuerung durch Bestätigungen (Acknowledges)
Stellt die richtige Paketreihenfolge beim Empfänger durch Sequenznummern sicher
Sequenznummern erkennen das Fehlen oder Verdoppeln von Paketen
233
12.2.3
Aufbau eines TCP-Pakets
16-Bit
16-Bit
Herkunfts-Port
Ziel-Port
Sequenznummer des Pakets
Huckepack-Acknowledge für ein zuvor von der Gegenseite gesendetes Paket
HeaderLänge
unbelegt
C E U A P R S
W C R C S S Y
F
I
Prüfsumme von Header inkl. Nutzdaten
Fenstergröße
Zeiger auf hochpriore Daten im Datenfeld
Optionen (0 bis 10x 32-Bit-Worte)
Datenfeld, 0 bis 64K-40 Byte, (-40, wenn Optionenfelder der IP- und TCP-Header = 0 sind)

Herkunfts-Port und Ziel-Port:
• 16-Bit-Adressen zur Spezifikation von Herkunfts- und Zielprozess über Ports
234
• Liste der reservierten Port-Adressen steht unter: www.iana.org

Sequenznummer (32 Bit) des nachfolgenden Datenfeldes:
• Dient zur Sortierung der TCP-Segmente in der richtigen Reihenfolge beim Empfänger und
zur Fehlerbehebung, falls ein Segment fehlt oder doppelt empfangen wird
• Jedes Segment ist ein vollständiges TCP-Paket inkl. Header, das Teil einer Nachricht ist,
die mehr als 64 KB umfasst
• Ist die Nachricht kleiner als ca. 64KB, dann gibt es keine Segmente sondern nur eine einziges TCP-Paket, in dessen Nutzlast sie übertragen wird

„Huckepack“-Acknowledge-Nummer (32 Bit) vom Empfänger zum Sender:
• wird doppelt verwendet: a) für Verbindungsauf- und abbau b) sorgt während der Datenübertragung für die Quittierung von zuvor empfangenen Paketen nach dem HuckepackVerfahren.
Huckepack-Verfahren heißt, dass das Acknowledge in einem ganz normalen Datenpaket vom Empfänger
zum Sender mitgeschickt wird, sofern es dieses Paket gibt. Gibt es das Paket nicht, wird ein extra
Acknowledge-Paket vom Empfänger zum Sender geschickt, das nur das Acknowledge und keine Daten
enthält.

Header-Länge (4 Bit) = Zahl der 32-Bit-Worte im Header incl. des Optionenfeldes
(kleinster Wert ist 5, größter Wert ist 15)
 max. zehn 32-Bit-Worte im Optionenfeld möglich

CWR = Congestion Window Reduced und ECE = Explicit Congestion Notification (ECN)
Enabled
235
• Dienen zur Steuerung des Datenverkehrs, wenn das Netz überlastet ist, in der Weise, dass
keine Pakete verloren gehen, die sog. Staukontrolle



URG (1 Bit, urgent): Gesetzt, wenn der Zeiger auf hochpriore Daten im Header gültig ist
ACK (1 Bit): Gesetzt, wenn die Acknowledge-Nummer gültig ist
PSH (1 Bit, push): Gesetzt, wenn Daten im Datenfeld beim Empfänger nicht gepuffert
werden dürfen, sondern sofort gesendet werden müssen
 Verhindert das Zusammenfassen mehrerer kleiner Pakete zu einem großen
 Verbessert das Echtzeitverhalten bei der Datenübertragung auf Kosten der Effizienz



RST (1 Bit, reset): dient dem Rücksetzen der TCP-Verbindung
SYN (1 Bit, synchronize): dient zusammen mit ACK und dem Huckepack-Acknowledge
dem Verbindungsaufbau
FIN (1 Bit, final): kennzeichnet das letzte Paket beim Verbindungsabbau
• Die Funktionen von SYN, ACK und FIN sind mit Hilfe eines komplexen endlichen Automaten definiert

Fenstergrösse (16 Bit) vom Empfänger zum Sender: dient zur Flusssteuerung durch
das Schiebefensterprotokoll
• Gibt an, wie viele Byte ab dem zuletzt bestätigten Byte gesendet werden dürfen

Prüfsumme (16 Bit): sichert das gesamte TCP-Paket incl. Header und Daten
• Da dieses Feld Teil des Headers ist, wird nur ein sog. Pseudo-Header ohne das Prüfsummenfeld geprüft
236

Zeiger auf hochpriore Daten (16 Bit):
• Gibt den Abstand in Byte zur aktuellen Sequenznummer an, ab dem im Datenfeld hochpriore Daten stehen, falls vorhanden

Optionen (0 bis max. 10x 32-Bit-Worte): nicht wirklich festgelegt
• Wird z.B. verwendet, um dem Sender anzuzeigen, wie viele Daten der Empfänger maximal
pro Paket puffern kann

Datenfeld von 0 bis ca. 64K Byte
12.2.3.1 Unterschiede zwischen Push Flag und URG Flag




Push-Pakete sind mit dem PSH-Flag gekennzeichnete Pakete
PSH=TRUE bewirkt, dass das Paket nicht aus Effizienzgründen zwischengespeichert
werden darf, bis es mit anderen kleineren Paketen derselben Verbindung vereinigt werden kann
Pakete mit PSH=TRUE müssen vom Sender sofort abgeschickt werden
Sind bereits mehrere, kleinere TCP-Pakete derselben Verbindung zwischengespeichert, werden diese mit dem Push-Paket vereinigt und das Gesamtpaket wird sofort abgeschickt
 keine zusätzliche Latenz auf der Senderseite


URG=TRUE-Pakete werden senderseitig wie Push=TRUE-Pakete behandelt
Zusätzlich werden URG=TRUE-Pakete beim Empfänger sofort bearbeitet
237
 keine zusätzliche Latenz beim Sender und beim Empfänger

Hochpriore Übertragungen erlauben es u.a., fehlerhafte Übertragungen oder falsch laufende Programme beim Empfänger über das Netz vorzeitig durch den Sender abzubrechen
12.2.4


Optimierung der Datenübertragung durch TCP
TCP ist bandbreiteeffizient, d.h. schont die zur Verfügung stehende Bandbreite
Die Gründe für die Effizienz liegen in:
1.) der Zusammenfassung mehrerer kleiner Pakete zu einem großen beim Sender
2.) der Verwendung eines adaptiven Schiebefensters zur Flusssteuerung zwischen Sender und Empfänger (flow control)
• die Flusssteuerung vermeidet einen Pufferüberlauf beim Empfänger durch zu große Pakete
• Durch die Adaptivität im Schiebefenster wird ständig die mutmaßlich beste Größe jedes
Pakets ermittelt
3.) der Verwendung einer Stausteuerung (congestion control)
• die Stausteuerung vermeidet Staus im Netz durch zu viele Pakete in den Routern
4.) der Verwendung eines adaptiven Time-Outs
• durch die Adaptivität des Time Outs werden unnötige Wartezeiten bei Paketverlust so gut
238
es geht vermieden. Ganz vermeiden lassen sie sich jedoch nie.
12.2.5



Flusssteuerung und Stausteuerung (congestion control) bei TCP
Um Überlastungen des Internet zu vermeiden, versucht jede einzelne TCP-Verbindung,
nur soviel Daten zu senden, wie der jeweilige Empfänger und das Netz zwischen Sender und Empfänger verkraften kann
Das besondere Problem dabei ist, dass sich die verkraftbare Menge sowohl beim Empfänger als auch beim Internet ständig ändert
Einige der Gründe für die Schwankungen im Netz sind:
• Transiente Überlastung eines Routers durch zu viele eintreffende Pakete (= Hot Spots)
• zufällige, gleichzeitige Übertragungen von mehreren Sendern zum selben Empfänger über
denselben Router
• Routerausfälle und -abschaltungen



Wird ein Router überlastet, wirft er Pakete weg
Dies bemerkt der Sender durch einen Time Out
Änderungen in der verkraftbaren Datenmenge beim Empfänger werden durch die
Flusssteuerung und Schwankungen im Netz durch die Stausteuerung erkannt und
vom Sender getrennt behandelt
 adaptive Flusssteuerung und adaptive Stausteuerung

Dazu wird vom Sender ständig die größtmögliche Sendepuffergröße sowohl für das
239




Netz als auch für den Empfänger ausgewertet
Die momentan größtmögliche Sendepuffergröße für das Netz heißt Überlastungsfenster (congestion window)
Die momentan größtmögliche Sendepuffergröße, die der Empfänger noch verkraften
kann, heißt Empfänger-Schiebefenster (sliding window)
Aus beiden Größen nimmt der Sender das Minimum und schickt diese Menge ab
Zusätzlich versucht, IP V4 und V6 bei der Stausteuerung zu helfen
12.2.6

Slow Start
Der Algorithmus zur Berechnung der maximalen Sendepuffergröße beim Sender aufgrund von Netzüberlast läuft folgendermaßen ab (slow start ohne fast recovery):
1.) Beim Aufbau der TCP-Verbindung initialisiert der Sender ohne Hilfe des Empfängers
die Größe des Überlastungsfenster auf einen niedrigen Anfangswert von z.B. 1 KB =
slow start
• Außerdem wird vom Sender beim Verbindungsaufbau ein sog. Schwellwert auf 64 KB festgelegt
• Darüberhinaus teilt der Empfänger dem Sender im TCP-Optionenfeld die Größe des Empfänger-Schiebefensters mit
• Dann wird ein Paket gesendet, das dem Minimum aus initialem Überlastungsfenster und
initialem Empfänger-Schiebefenster entspricht (= Start der Datenübertragung)
• Im folgenden werden alle drei Werte (Überlastungsfenster, Empfänger-Schiebefenster und
240
Schwellwert) mit jeder neuen Iteration aktualisiert
2.) Für jedes erhaltene Acknowledge verdoppelt der Sender die Größe des Überlastungsfenster, indem TCP zu einem gesendeten TCP-Segment ein zweites Segment derselben Länge hinzufügt (sofern vorhanden)
• Dies ist die Phase des exponentiellen Wachstums
• Das Verdoppeln wird solange wiederholt, bis entweder kein Acknowledge mehr zurückkommt oder bis das Empfänger-Schiebefenster droht überzulaufen oder bis der
Schwellwert droht, überschritten zu werden
• Ein fehlendes Acknowledge entdeckt der Sender durch einen Time Out
• Eine drohende Überlastung des Empfängers entdeckt der Sender anhand der Übermittlung
der Schiebefenstergröße, die zusammen mit dem Sammelacknowledge vom Empfänger
zurück zum Sender gesendet wird
• Eine drohende Überschreitung des Schwellwerts erkennt der Sender selber
3.) Droht der Schwellwert überschritten zu werden, erhöht der Sender sein Überlastungsfenster mit jedem Acknowledge nur noch linear
• Dies ist die Phase des linearen Wachstums, die sich der momentan möglichen Grenze von
Netz und Empfänger behutsam annähert
• Droht das Empfänger-Schiebefenster überzulaufen, sendet der Sender nur noch so viel,
wie in das Empfänger-Schiebefenster passt
• Kommt kein Acknowledge mehr zurück, wird vom Sender ein neuer Schwellwert festgelegt, der der Hälfte des momentan erreichten Überlastungsfensters entspricht
241
 Der Schwellwert speichert den halben maximalen Wert, den das Überlastungsfenster
jeweils eine Iteration vorher erreicht hatte
• Außerdem wird die Größe des Überlastungsfensters auf den initialen Wert zurückgesetzt
4.) Die Schritte 2,3 werden solange wiederholt bis alles gesendet wurde

Der Vorteil dieses Verfahrens ist, dass es sich durch die exponentielle Steigerung am
Anfang der größtmöglichen Sendemenge schnell annähert und dieser durch die lineare Steigerung am Ende sehr nahe kommt
12.2.6.1 Beispiel für den zeitlichen Verlauf von Slow Start

Anfangsgröße des Überlastungsfenster sei 64 KB, Anfangsschwellwert sei 32 K, Anfangsgröße des Empfänger-Schiebefensters sei 1 K
 der Sender kann nicht mit der Größe des Überlastungsfenster beginnen, sondern nur
mit der wesentlich kleineren Größe des Empfänger-Schiebefensters

Zusätzlich wurden in der Zeichnung zwei weitere Dinge angenommen:
1.) Die Größe des Empfänger-Schiebefensters sei zu Beginn der 2. Iteration genauso groß
wie am Anfang (1 KB)
• Dies ist in der Praxis aber i.A. nicht der Fall
• Wenn z.B. das Empfänger-Schiebefenster Null ist, wird eine zeitlang nichts gesendet
242
2.) In der 2. Iteration werde nach 4 Verdopplungen der neue Schwellwert von 20 KB exakt
erreicht wird (wobei 20 auch keine Zweierpotenz ist)
• In der Praxis werden aber Schwellwerte i.d.R. nicht exakt erreicht, sondern der Sender
schaltet auf linearen Zuwachs um, bevor die nächste Verdopplung den Schwellwert über243
schreiten würde oder er begrenzt den Wert der nächsten Verdopplung auf den Wert des
Schwellwerts
12.2.7

Beispiel für den zeitlichen Verlauf des Empfänger-Schiebefensters
Für das Beispiel wird vereinfachend angenommen, dass das Netz zwischen Sender
und Empfänger stets schnell genug sei
 Einfluss des Überlastfensters werde nicht berücksichtigt

Des weiteren wird angenommen, dass die TCP-Instanz des Empfängers die Weitergabe
des empfangenen Segments solange verzögern darf, bis das Empfänger-Schiebefenster voll ist
 URG-Bit im Header des Segments sei nicht gesetzt

Im TCP-Optionenfeld teilt der Empfänger dem Sender beim Senden des Acknowledge
mit, wieviel Empfangspuffer der Empfänger noch frei hat (Bsp.: WIN = 2048)
244
2K
245

Ändert sich die Größe des Empfänger-Schiebefensters, wird dies dem Sender über ein
zweites Acknowledge mit derselben Sequenznummer mitgeteilt
12.2.8





Adaptiver TCP-Time Out
Es wird beim Abschicken jedes Paket beim Sender gemessen, wie lange es bis zum zugehörigen Acknowledge dauert (gemessene Zeit sei gleich M, M steht für Messwert).
Durch die gemessene Zeit M wird die die Quasi-Entfernung zum Empfänger bestimmt
Als Round Trip Time (RTT) wird die Zeit bezeichnet, die entsteht, wenn M über mehrere
Messungen hinweg geglättet wird
Zur Glättung werden Messungen aus der unmittelbaren Vergangenheit berücksichtigt
RTT berechnet sich iterativ zu: RTTneu := RTTalt + (1-)M

Diese Metrik entspricht einem Glättungsoperator; ist der 1. Glättungsfaktor der Berechnung
Der berechnete Wert von RTT ist in der Praxis selten optimal. Deshalb wird eine zweite
Rechnung nachgeschaltet.
Dazu wird in der geglättete Mittelwert der Abweichung von M und RTT berechnet und
mit D bezeichnet (D steht für Differenz)
D wird in analoger Weise wie zuvor RTT geglättet:
Dneu := Dalt + (1-) abs(M - RTTneu),  ist der 2. Glättungsfaktor

 und werden von der jeweiligen TCP-Instanz (= Implementierung) festgelegt und sind




246







nicht normiert!
Dann wird in einer zweiten Metrik ähnlich zur 1. der jeweils aktuelle Time-Out-Wert berechnet
Time Out = 4Dneu + RTTneu; der Faktor 4 ist der 3. Glättungsfaktor und konstant
Der Algorithmus stellt insgesamt eine hohe Glättung der Messwerte M dar und vermeidet dadurch starke Schwankungen beim Time Out, auch wenn die Messwerte stark
schwanken
Stellt sich der so berechnete Timeout-Wert als zu niedrig heraus (= kein Acknowledge,
dafür ständig Time Outs), wird als „Rettungsmaßnahme“ der zuletzt verwendete Wert
Timeout-Wert verdoppelt (= Pragmatische Lösung)
Aus adaptivem Schiebfenster + adaptivem Time Out + Sammeln von Bytes bis zur
Schiebefenstergröße (= blockweise Pufferung) ergibt sich bei TCP ein hohe Effizienz
bei der Übertragung großer Datenmengen
Umgekehrt ist TCP sehr ineffizient bei kleinen Datenmengen
Extremfall: 1 Byte Tastaturinformation wird über das Netz mittels 40 Byte Overhead
übertragen => 2,4% Effizienz
12.3


Berkeley Sockets/WinSockets als die Schnittstelle zu TCP und UDP
Sind die konkrete Umsetzung eines Transportschicht-Dienstzugangspunkts
Sind die Programmierschnittstelle zur Kommunikation mit der Transportschicht im Internet
247





Existieren auf nahezu allen Platten-Betriebssystemen (bei Windows als WinSockets)
Unterscheiden sich von der ISO-Spezifikation beim Aufruf z.B. darin, ob der Aufruf blockierend ist oder nicht
Wurden in einer POSIX-Spezifikation modernisiert
Erlauben die Kommunikation über TCP- oder UDP-Protokolle
Verwenden IP- und Port-Adressen zur netzweit eindeutigen Adressierung von Prozessen auf Rechnern, z.B. bei der Nutzung von Server-Diensten
12.3.1


Die Berkeley/WinSocket Socket-API
Die Socket-API besteht im wesentlichen aus 8 verschiedenen Aufrufen: socket, bind,
listen, accept, connect, send, receive und close
Es wird zwischen Client und Server unterschieden
12.3.1.1 Ablauf der Kommunikation zwischen Client und Server

Client-seitig:
• Socket für die Kommunikation mit dem Server erstellen; socket()
• Erstellten Socket mit der Socket-Adresse des Servers koppeln, sowie eigene SocketAdresse an den Server übermitteln: connect()
• Senden von Daten an den Server und empfangen von Daten vom Server: send(), receive()
• Socket schließen: close()
248

Server-seitig:
• Socket für das Anmelden von Clients beim Server erstellen: socket()
• Koppeln des Anmelde-Sockets an die Socket-Adresse des Servers, über die der Server Client-Anfragen akzeptiert: bind()
• Auf eine Client-Anfrage warten: listen()
• Client-Anfrage akzeptieren und dann einen Socket für die Kommunikation mit diesem Client erstellen: accept()
• Senden und empfangen von Daten auf dem Socket für diesen Client: send(), receive()
• Socket für diesen Client schließen: close(), ggf. auch Socket für das Anmelden schließen
12.3.1.2 int socket(int domain, int type, int protocol);


Diese Funktion wird sowohl vom Server als auch vom Client aufgerufen
Die Funktion erzeugt eine sog. Socket-Verbindung
Socket: Anschlussdose, Steckdose. Dient für die Interprozesskommunikation zwischen Client und Server.





Diese Socket-Verbindung erlaubt es Client und Server, anschließend über send() und
recv() durch Datenaustausch miteinander zu kommunizieren
Die Socket-Verbindung enthält u.a. eine sog. Socket-Adresse
Die Socket-Adresse wiederum besteht aus einer IP-Adresse und einer Portnummer
Mit diesen beiden Angaben kann weltweit eindeutig jeder Prozess in einem Rechner adressiert werden, um mit ihm zu kommunizieren
socket() gibt zusätzlich einen sog. socket file descriptor „sockfd“ zurück.
249










D.h. socket() returniert sockfd
Ein socket file descriptor ist eine logische Gerätenummer, wie sie bereits vom Lesen
und Schreiben auf Dateien bekannt ist
Überhaupt ähnelt die Socket-Kommunikation dem Lesen und Schreiben einer Datei
Die Socket-Adresse ist eine lokale Datenstruktur, die logische Gerätenummer ist eine
Integer-Zahl
Die logische Gerätenummer sockfd dient dem Betriebssystem als Index einer Tabelle,
in der Datenstrukturen stehen, die ähnlich zu Dateisystem-Steuerblöcken sind (File
Handles) und die für die Rechnernetzkommunikation benötigt werden
Die logische Gerätenummer dient sowohl Server als auch Client als „Abkürzung“ beim
Zugriff auf die Socket-Verbindung
Der Server benötigt die logische Gerätenummer für seine nachfolgenden Funktionen
bind(), listen() und accept()
Der Client verwendet die logische Gerätenummer für dessen Funktionen connect(),
send(), recv() und close()
Für die Funktionen send(), recv() und close() des Servers benötigt dieser zusätzlich
eine zweite logische Gerätenummer, die über accept() bereitgestellt wird
Die Beschreibung der Parameter des Socket-Aufrufs socket() ist:
• Eingabeparameter domain: gibt das Routingprotokoll an
• Definiert sind als Integer-Konstanten u.a. die Werte
• PF_INET für das Routingprotokoll IPV4
250
•
•
•
•
•
•
•
•
•
•
PF_INET6 für das Routingprotokoll IPV6
Eingabeparameter type: gibt die sog. Dienstart an
Definiert sind als Integer-Konstanten u.a. die Werte
SOCK_STREAM für die zuverlässige Übertragung einer unendlichen Folge von Bytes
SOCK_SEQPACKET für die zuverlässige Übertragung einer endlichen Folge von Datenpaketen
Eingabeparameter protocol: gibt das Transportprotokoll an
Definiert sind als Integer-Konstanten u.a. die Werte
IPPROTO_TCP für TCP
IPPROTO_UDP für UDP
Return Value: sockfd: socket file descriptor = Integer-Zahl als logische Gerätenr.
12.3.1.3 int bind(int sockfd, const struct sockaddr *my_addr, socklen_t addrlen);





Die Funktion wird nur vom Server aufgerufen und kommt nach dem socket()-Aufruf
Sie verknüpft die logische Gerätenummer, d.h. den socket file descriptor sockfd mit der
Server-lokalen Datenstruktur my_addr, die die Socket-Adresse des Servers enthält
D.h., hinter der logischen Gerätenummer sockfd des Servers steht dessen Socket-Adresse
Bind() returniert 0, falls O.K. und -1, falls nicht O.K
Die Beschreibung der Parameter ist:
• Eingabeparameter sockfd: socket file descriptor von socket() des Servers
251
• Eingabeparameter my_addr: lokale Datenstruktur. my_addr besteht aus der IP-Adresse
des Servers und aus einer lokalen Portnummer des Servers. Beide sind vom Typ integer.
• Eingabeparameter addrlen: Länge von my_addr in Bytes
• Return Value: status: Statusinformation über den Erfolg der Prozedur
12.3.1.4 int listen(int sockfd, int backlog);





Wird nur vom Server aufgerufen und kommt nach bind()
Wartet darauf, dass durch ein nachfolgendes connect() des Clients eine Verbindung
hergestellt wird
Falls nacheinander mehrere connect-Anforderungen beim Server eintreffen, werden
alle bis zur Obergrenze „backlog“ von listen() in einer Warteschlange zwischengespeichert
listen() returniert 0, falls alles O.K. ist und -1, falls nicht O.K.
Die Beschreibung der Parameter ist:
• Eingabeparameter sockfd: socket file descriptor von socket() des Servers
• Eingabeparameter backlog: Anzahl von connect-Anforderungen, die in einer listen-Warteschlange maximal gespeichert werden können.
• Return Value: status: Statusinformation über den Erfolg der Prozedur
12.3.1.5 int accept(int sockfd, struct sockaddr *cliaddr, socklen_t *addrlen);

Wird nur vom Server aufgerufen und kommt nach listen()
252


accept() erzeugt eine zweite Socket-Verbindung, entfernt die vorderste connect-Anforderung aus der Warteschlange von listen() und bearbeitet diese Anforderung
accept() ersetzt die erste Socket-Adresse my_addr des Servers von bind() durch die
zweite Socket-Adresse cliaddr von listen()
In diesem Moment sind Server-seitig gleichzeitig die beiden Socket Descriptoren sockfd und sockfd2
aktiv, allerdings ist bislang nur sockfd initialisiert.
Hinter sockfd steht die IP-Adresse und Portnr. des Servers, hinter sockfd2 werden nach dem Aufruf die IPAdresse und Portnr. des Clients stehen.




Dann verknüpft accept() den zweiten socket file descriptor sockfd2 mit der zweiten Socket-Adresse cliaddr
accept() gibt den zweiten socket file descriptor sockfd2 und die zweite Socket-Adresse
cliaddr als Ergebnis zurück
Danach kann der Server über sockfd2 auf die zweite Socket-Adresse (=cliaddr) zugreifen und so die IP-Adresse und die Portnr. des Client feststellen, um send(), receive()
und close() aufzurufen
Die Beschreibung der Parameter ist:
• Eingabeparameter sockfd: socket descriptor von socket() des Servers
• Ausgabeparameter cliaddr: zweite Socket-Adresse. Lokale Datenstruktur, in der die IPAdresse des entfernten Client-Computers und dessen Portnummer stehen, sobald dieser
connect() aufgerufen hat. Darüber kann dann der Client angesprochen werden.
• Eingabe-/Ausgabeparameter addrlen: Länge von cliaddr in Bytes
253
• Return Value: sockfd2: zweiter socket descriptor = zweite logische Gerätenr.
12.3.1.6 int connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen);






Wird nur vom Client aufgerufen und kommt nach dessen socket()
Verbindet den Client mit dem Server, indem connect() in die zweite Socket-Adresse des
Servers die IP- und Port-Adresse des Client hineinschreibt
Damit weiß der Server, wo sein Client im Internet zu finden ist
Dazu muss der Client a priori wissen, zu welchem Server-Prozess er sich verbinden
möchte
connect returniert 0, falls O.K. und -1, falls nicht O.K.
Die Beschreibung der Parameter ist:
• Eingabeparameter sockfd: socket file descriptor von socket() des Client
• Eingabeparameter serv_addr: lokale Datenstruktur, in der die IP-Adresse des Servers und
dessen Portnummer stehen, zu dem eine Verbindung aufgebaut werden soll.
• addrlen: Länge von serv_addr in Bytes
• Return Value status: Statusinformation über den Erfolg der Prozedur
12.3.1.7 int send(int {sockfd für Client oder sockfd2 für Server}, const void *buffer, size_t
length, int flags);

Wird von Server und Client aufgerufen und kann beim Server nach accept() und beim
Client nach connect() kommen
254



Sendet Daten an den Client bzw. an den Server
Returniert die Zahl der gesendeten Bytes, falls O.K. und -1, falls nicht O.K.
Die Beschreibung der Parameter ist:
• Eingabeparameter sockfd bzw. sockfd2: socket file descriptor von socket() des Clients
oder von accept() des Servers
• Eingabeparameter buf: string, der die zu sendenden Daten als Bytes enthält
• Eingabeparameter length: gibt die Länge von buf an
• Eingabeparameter flags: spezifiziert die Art des Sendens genauer
• Return Value: SentBytesOrStatus = entweder Länge der gesendeten Bytes oder -1 bei Fehler
12.3.1.8 int recv(int {sockfd für Client oder sockfd2 für Server}, void *buffer, size_t length, int
flags);




Wird von Server und Client aufgerufen und kann beim Server nach accept() und beim
Client nach connect() kommen
Empfängt Daten vom Client oder vom Server
Returniert die Zahl der empfangenen Bytes, falls O.K. und -1, falls nicht O.K.
Die Beschreibung der Parameter ist:
• Eingabeparameter sockfd bzw. sockfd2: socket file descriptor von socket() des Clients
oder von accept() des Servers
• Ausgabeparameter buf: string, der die empfangenen Daten als Bytes enthält
255
• Eingabeparameter length: gibt die Länge von buf an
• Eingabeparameter flags: spezifiziert die Art des Sendens genauer
• Return Value: ReceivedBytesOrStatus = entweder Länge der empfangenen Bytes oder -1
bei Fehler
12.3.1.9 int close(int {sockfd für Client oder sockfd2 für Server});






Wird von Server und Client als letztes aufgerufen
Schließt eine bestehende Socket-Verbindung
Der Vorgang entspricht dem Schließen einer zuvor geöffneten Datei
Allerdings muss die Socket-Verbindung sowohl vom Client als auch vom Server geschlossen werden
Returniert 0, falls O.K. und -1, falls nicht O.K.
Die Beschreibung der Parameter ist:
• Eingabeparameter sockfd von socket() des Clients bzw. sockfd2 von accept() des Servers
• Return Value: status: Statusinformation über den Erfolg der Prozedur
12.3.1.10Zusammenfassung Berkeley-Sockets


Die Berkeley-Sockets und ihre Varianten sind nicht besonders übersichtlich in der
Handhabung
Ohne sie ist aber kein Aufruf von TCP oder UDP möglich. d.h., sie sind sehr wichtig
256
13 Breitbandiger integrierter Service über digitales Netzwerk (BISDN)


B-ISDN wurde Anfang der 1980er Jahre von der Vereinigung der Telefongesellschaften
(ITU) entworfen und gemeinsam mit Computerherstellern im sog. ATM-Forum weiterentwickelt
Zur Implementierung von B-ISDN wurde SONET/SDH und die ATM-Protokolle spezifiziert und implementiert (ATM = „Asynchronous Transfer Mode“)
13.1





Ziele von B-ISDN
B-ISDN ist die Weiterentwicklung von Schmalband-ISDN für Sprache + Daten
Alle Dienste sollten mit wesentlich höherer Bandbreite als bei S-ISDN durchgeführt
werden
Jeweils erreichte Bandbreiten: 155 Mb/s, 622 Mb/s, 2,4 Gb/s, 10 Gb/s... (nach oben offen)
B-ISDN ist die Zusammenfassen aller Netze und Dienste aller Telekommunikations-Firmen unter ein einheitliches Protokoll
Bereitstellung neuer Dienste wie z.B.:
• Datenübertragung zwischen Rechnern mit geringer Latenz und garantierter Qualität
• Übertragung multimedialer Daten in Echtzeit
• Implementierung von Audio-on-Demand, Games-on-Demand, Video-on-Demand und inter257
aktivem Fernsehen von vielen Sendern (>500)

Status:
•
•
•
•
Games-on-Demand und interaktives Fernsehen werden bislang nicht nachgefragt
Video-on-Demand wird zunehmend mehr nachgefragt
Sehr hohe Nachfrage nach www und email über TCP/IP (= Konkurrenz)
Kunden sind mit der schlechten Übertragungsqualität und hohen Latenz von TCP/IP zufrieden
• SONET/SDH ist erfolgreich, ATM gerät aber zunehmend durch TCP/IP unter Druck
13.2
ATM (Asynchronous Transfer Mode)
13.2.1
Was ist ATM?






ATM ist eine Menge von Protokollen, die Teile der Schicht 2, 3 und 4 (Sicherung, Vermittlung und Transport) des ISO-7-Schichten-Modells umfassen
ATM spezifiziert keine eigene Bitübertragungstechnologie (keine Schicht 1!)
ATM sitzt vielmehr auf der Schicht 1 von SONET/SDH, FDDI, Fibre Channel oder anderen Bitübertragungs-Technologien wie E1/T1 auf
Die am meisten verwendete Bitübertragungsschicht für ATM ist SONET/SDH
Für ATM werden spezielle Vermittlungseinrichtungen (sog. ATM-Switches) verwendet,
die in Hardware Aufgaben der Schicht 3 (= Vermittlung) übernehmen
Während die Schicht 1 nicht ATM-spezifisch ist, sind ATM-Vermittler voll ATM-speziell
258
 ATM ist die Kombination aus Protokollen (Software) und spezieller Vermittler-Hardware

Oberhalb von ATM-Protokollen und Vermittler kann das übliche Internet-Protokoll IP
als ATM-Nutzlast und darüber TCP bzw. UDP transportiert werden (ist allerdings ineffizient)
13.2.2


Warum gibt es ATM?
ATM ist die Implementierung von B-ISDN, d.h. die weltweite Zusammenfassung von Telefon- und Datennetzen zu einem vereinigten digitalen Netz hoher Bandbreite und gemeinsamen Protokollen
ATM ist gedacht als die Verschmelzung der besten Eigenschaften von Telefonsystemen und Datennetzen, wie z.B:
•
•
•
•
•
Feste, garantierte Verbindungen zwischen Endgeräten (Telefonen oder Computern)
Echtzeitfähig und Multimedia-geeignet
Garantierter Zuverlässigkeit und Qualität in der Übertragung (Quality of Service)
Hohe Datenraten, niedrige Latenzen
Hohe Flexibilität beim Einsatz durch skalierbare Datenraten (von 155 Mb/s bis >10 Gb/s)
und durch skalierbare Entfernungen (von LAN bis WAN)
• Gute Nutzung der Übertragungswege durch asynchrone Dateneinspeisung (kein Zeitmultiplex ab Schicht 2 trotz Zeitmultiplex-Hardware auf Schicht 1!)
• Unterstützung von Multicast und Broadcast für neue Audio und Video-Dienste
259
13.2.3

Warum heißt ATM ATM?
ATM steht im Gegensatz zu STM (Synchronous Transfer Mode) von SONET/SDH, bei
dem aufgrund des Zeitmultiplex Zeitscheiben einzelnen Sendern fest zugeordnet werden
13.2.3.1 Beispiel für den asynchronen Transfermodus
a) Taktsynchrone Übertragung und Zuordnung von Zeitschlitzen b) asynchronous Übertragung je nach Bedarf

Daten von verschiedenen Quellen kommen i.d.R. zufallsgesteuert an (keine feste Rei260




henfolge bei der Datenerzeugung) und können so, wie sie kommen, durch ATM abtransportiert werden
ATM arbeitet damit wie ein Rechnernetz, das zu beliebigen Zeiten Pakete annimmt
ATM erlaubt der Anwendungsschicht trotz Verwendung von STM auf der Schicht 1, die
Einspeisung von Daten zu beliebigen Zeiten (im Rahmen der Bandbreitegrenzen des
Mediums)
Dies steht im Gegensatz zur klassischen PCM-Technik, die synchron arbeitet
PCM weist jedem Sender periodisch einen Zeitschlitz zu, egal ob er ihn braucht oder
nicht
 Ineffiziente Bandbreiteausnutzung bei PCM, um Echtzeitverhalten erzielen zu können


ATM hingegen kann Daten verschiedener Quellen in einen gemeinsamen „Zell“strom
multiplexen und dennoch die Latenz niedrig halten und die Echtzeit bewahren
Trotz des asynchronen Medienzugangs erfolgt die Datenübertragung auf dem physikalischen Medium synchron, z.B. über SONET/SDH
 ATM transformiert asynchronen Echtzeit-Kommunikationsbedarf in synchrone Bitübertragung => „Asynchronous Transfer Modus“. Dies gelingt durch eine Reihe von
Maßnahmen wie Multiplexen sehr kleiner Pakete + „OAM“ + Vorabvereinbarungen der
QoS + ...
261
13.2.4
Die wichtigsten Eigenschaften von ATM
1.) Bereitstellen eines asynchronen Zugangs zum synchronen Übertragungsmedium
2.) Integration bekannter und neuer Netzdienste (Sprache, Daten, Audio und Video,...) zu
einer multimedialen Hochgeschwindigkeitsübertragung
3.) Verbindungsorientierung in der Art, dass zwischen den ATM-Endgeräten Standleitungen nachgeahmt werden (sog. virtuelle Verbindungen)
4.) Verwendung von Übertragungsrahmen kleiner, fester Länge (immer 53 Byte lang),
sog. Zellen
5.) Hoch-effiziente Vermittlung der Datenströme in ATM-Vermittlern (ATM Switches)
• Bemerkung: ATM-Vermittler sind die Gegenstücke zu Routern bei Datennetzen. Sie ähneln
ungefähr digitalen Telefonvermittlungsanlagen.
• Verwendung kurzer Übertragungsrahmen (= Zellen) mit wenig Overhead (53 Byte-Zellen
mit 48 Byte Nutzdaten)
• Aber: aus Echtzeitgründen keine automatische Paketwiederholung im ATM-Netz!
• Flusssteuerung erfolgt ebenfalls aus Echtzeitgründen nur zwischen Endgerät und Netzanschluß und höchstens in Sonderfällen zwischen den ATM-Endgeräten
 Kurze, feste Durchlaufzeiten in den Vermittlern erlaubt kurze, deterministische Endezu-Ende-Latenzen
262
6.) Skalierbarkeit in der Geschwindigkeit (Übertragungsraten z.B. 155, 622 Mb/s, 2,5 Gb/
s, ...)
7.) Skalierbarkeit in der Entfernung: einsetzbar für LAN, MAN und WAN
8.) Quality of Service durch elektronischen Vertrag zwischen Dienstnehmer, d.h. ATMEndgerät und Diensterbringer, d.h. ATM-Netz
• Bandbreite, Latenz und Fehlerraten können in elektronischem Vertrag zwischen Diensterbringer und Dienstnehmer automatisch ausgehandelt und garantiert werden!
9.) Virtuelle Unterteilung eines ATM-Netzes in mehrere logische Netze, die einzeln an
Kunden vermietet werden können, sog. Virtual Private Networks (VPNs). Diese können es wie ein reales Netz benutzen und administrieren.
13.2.5

ATM-Netzaufbau
Ein ATM-Netz besteht aus:
1.) Benutzerendgeräten (Rechner oder Telefone)
2.) Vermittlern (ATM Switches)
3.) Schnittstellen (= Netzwerkkarten) zwischen Endgeräten und Netz (sog. user-to-network interfaces, UNIs)
263
4.) Schnittstellen zwischen benachbarten Vermittlern (network-to-network interfaces,
NNIs)
 Prinzipielle ATM-Netzstruktur:
ATM-Netz
ATM
Switch
ATM
Switch
UNI
ATMEndgerät
13.2.6

UNI
NNI
NNI
ATM-Zellen
ATM-Zellen haben folgenden Aufbau:
 ATM-Zellen sind Datenpakete fester Länge und kleiner Größe

ATM-Zell-Header sind sehr kurz und beschränken sich auf das Allernotwendigste
 ATM-Zellen sind schnell und effizient vermittelbar
264


Dies steht im Gegensatz zu den Paketen der Internet-Protokolle, die variable Länge haben und sowohl im Header als auch im Datenteil sehr groß werden können (Bsp: IP,
TCP mit 64 KB Längen)
Der ATM-Zell-Header, der vom Endgerät (UNI) erzeugt wird, hat folgenden Aufbau:
Bit 0
1
2
3
4
5
6
Generic Flow Control
VPI (most sig. 4 bits)
VPI (least sig. 4 bits)
VCI (most sig. 4 bits)
7
VCI (middle sig. 8 bits)
VCI (least sig. 4 bits)
Payload Type
PRI
Header Error Control (CRC)



Generic Flow Control: dient zur Flusssteuerung zwischen ATM-Endgerät und ATM
Netz, d.h. zwischen benachbaren UNIs
VPI und VCI (Virtual Path Identifier, Virtual Channel Identifier): Index auf die Zieladresse, zu der die Zelle transportiert werden soll; dienen den Vermittlern zur Zeilenadressierung in ihrer Wegewahltabelle
Beim Durchgang der ATM-Zelle durch das UNI des ATM-Netzes wird das Flusssteuerungsfeld durch 4 zusätzliche VPI-Bits ersetzt, d.h. anderweitig verwendet
265
 im ATM-Netz haben die Zell-Header insgesamt 12 VPI-Bits und 16 VCI-Bits als Zieladresse
 ATM-Zellen im ATM-Netz (sog. NNI-Zellen) haben andere Header als die Zellen, die
eingespeist werden (sog. UNI-Zellen)









Payload Type: unterscheidet zwischen Nutzdaten, Wartungsdaten (= Operations-, Administration- and Management-Zellen, OAM) und Leerdaten (= sog. inerte Zellen)
Priority: Jedes ATM Endgerät kann Daten als hochprior spezifizieren. Diese werden bei
Überlastung eines ATM-Vermittlers durch zu viele Input-Zellen als letzte gelöscht.
CRC: Prüfsumme über die ersten 4 Header-Bytes
ATM-Zellen wandern im Netz von Vermittler zu Vermittler
Im Vermittler werden sie on-the-fly, d.h. zeitlich schritthaltend mit ihrem Eintreffen verarbeitet
Dies ist wegen des festen Formats und der kurzen Länge möglich, da ATM-Header
leicht zu dekodieren sind
ATM-Zellen müssen im Netz nicht gespeichert werden (kein store-and-forward!)
Dies steht im krassen Gegensatz zu den Internet-Routern und sorgt für extrem kurze
Latenzen im Vergleich zu TCP/IP
Aber: die sichere Zustellung von ATM-Zellen durch das ATM-Protokoll ist nicht garantiert, d.h. Pakete können im Prinzip verloren gehen oder falsch übertragen werden
266


Dies kommt bei SONET/SDH als Schicht 1 jedoch so gut wie nie vor, da Glasfasertechnologie
Garantiert wird bei ATM nur die Einhaltung der Paketreihenfolge beim Empfänger
13.2.7






Die Zukunft von ATM
Wurde von der Telekomindustrie erfunden und später von der Computerbranche mitgetragen
Seit 1991 lenken Telekom- und Computerindustrie die Zukunft von ATM im ATM-Forum
Da ATM vom Konzept her einen übergreifenden Dienst bis zur Telefonsteckdose des
Endkunden darstellen soll, waren bzw. sind hohe Investitionen erforderlich, um dieses
Ziel zu erreichen
Einige der neuen Dienste, die ATM anbietet (Bildtelefon, usw.) werden bislang vom
Kunden nicht angenommen; Ausnahmen: Audio-on-Demand, Video-on-Demand
Außerdem „iTunes“ etc. sind IP-basierte Anwendungen!
Die Kosten für ATM-Anschlüsse beim Endkunden sind im Vergleich zu xDSL oder
Ethernet sehr hoch, weil ATM aufgrund seiner funktionellen Vielfalt und Leistungsfähigkeit komplexe und schnelle und damit teure Netzwerkkarten im Rechner erfordert
 ATM-Anschlüsse beim Endkunden sind sehr selten

Darüberhinaus sind noch nicht alle technischen Probleme bei ATM gelöst und es ist
unklar, ob sie jemals gelöst werden (Situation ähnlich wie bei IPV6)
267

Schließlich ist es Mode, überall IP einzusetzen, obwohl eindeutig schlechter in seinen
Eigenschaften als ATM („The winner takes them all“)
 ATM ist im WAN-Bereich immer noch weit verbreitet, wird aber langsam durch IP verdrängt
Viel Erfolg!
268
Herunterladen