Sie sind auf Seite 1von 397

RECHNERNETZE

1. Einführung

Universitatea “Transilvania” din Brasov


1. Einführung – Überblick

 Gliederung
• Einführung, Übertragungstechnik, Netztechnologien
• Protokolle, Netzkopplung, Performance
• Anwendungsdienste

 Lehrmaterial
• Folien, Videos, Übungsaufgaben
• Andrew S. Tanenbaum, David J. Wetherall:
Computernetzwerke, 5. aktualisierte Auflage, Pearson Studium,
2012.
• einige weiterführende Referenzen am Ende jedes Kapitels

costel.aldea@unitbv.ro 2
Definition und Beispiel

Rechnernetz: mehrere gekoppelte autonome Rechner


Kopplung: elektrische Leitung, Lichtwellenleiter, Rund-
/Richtfunk, Satellitenfunk
Beispiel: Flugbuchung

Kommunikation Datenbank
Web- mittels Nachrichten Fluggesellschaft
Reisebüro
Browser / A
Reisebüro
Physikalische Verbindung

Datenbank Fluggesellschaft B

Problembereiche: Übertragungsfehler, Wegewahl, Stausituationen,


heterogene Daten, Software-Integration der Anwendungsdienste
costel.aldea@unitbv.ro 3
Ziele und Anwendungsfelder
Ziele
Systemintegration
gemeinsame Ressourcennutzung, Kosteneinsparung
hohe Zuverlässigkeit durch Redundanz
parallele Verarbeitung

Anwendungsfelder
Geschäftsanwendungen – gemeinsame Nutzung von Ressourcen
(Drucker, Datenbanken, etc.), Intranet, E-Mail, VoIP, E-Commerce
Anwendungen im Privatbereich – Informationszugriff (WWW),
interpersonelle Kommunikation (IM, Twitter, Facebook), E-Commerce
(Home Shopping, Online-Banking), Unterhaltung (IPTV, Internetradio),
Ubiquitous Computing (Heimvernetzung, RFID)
Mobile Benutzer – Textnachrichten, Orts-basierte Dienste, M-
Commerce, Sensornetze, Wearable Computing
Gesellschaftliche Aspekte – Copyright, Profile, Location Privacy,
Spam, Phishing IM..Instant Messaging, VoIP..Voice over IP, WWW..World
Wide Web, IPTV..Internet Protocol Television,
costel.aldea@unitbv.ro RFID..Radio- Frequency Identification, M- 4
Commerce..Mobile Commerce
Client-Server-Modell
Client
Server

Netzwerk

Client-Rechner Anfrage Server-Rechner

Netzwerk

Antwort

Client-Prozess Server-Prozess

costel.aldea@unitbv.ro 5
Peer-to-Peer-Ko mmunikation

costel.aldea@unitbv.ro 6
Basis-Netzstruktur
Übertragungsmodi
Verbindungsorientiert: feste Beziehung Sender / Empfänger (z. B. Telefon)
Verbindungslos: keine solche feste Beziehung (z.B. Briefpost, Internet Protocol)
Leitungsvermittelt: exklusive Durchschaltung einer (ggf. virtuellen) Leitung für die
Dauer der Kommunikation ⇒ feste Dienstqualität; i.d.R. verbindungsorientiert
Paketvermittelt: gemeinsame Nutzung eines Übertragungskanals für unabhängig
vermittelte Pakete verschiedener Teilnehmer ⇒ flexibler, ressourcenschonend; kann
sowohl verbindungslos als auch verbindungsorientiert realisiert werden
(Teil-)Netz

Rechner

Kanäle

Vermittlungsstelle (Datenweiterleitung gemäß


costel.aldea@unitbv.ro Adressen) 7
2. Schichtenarchitektur –
ISO/OSI-Referenzmodell
ISO/OSI-
Referenzmodell Anwendungsprotokoll
International 7 Anwendung Anwendung
Organization for
Darstellungsprotokoll
Standardization / Open 6 Darstellung Darstellung
Systems
Interconnection Sitzungsprotokoll
5 Sitzung Sitzung
Dienst
Erbrachte Funktionalität Transportprotokoll (z.B.
einer Schicht 4 TCP) Transpor
Transpor Vermittlungsprotokoll (z.B. IP) t
(z.B. E-Mail, WWW)
t
Protokoll
Regeln zur Steuerung 3 Vermittlung Vermittlung Vermittlung
der Kommunikation
in einer Schicht 2 Sicherung Sicherung Sicherung
Problem
Hohe Komplexität
1 Bitübertrag. Bitübertrag. Bitübertrag.
(Schichtenstruktur
, Abstraktion,
Prozess A Vermittlungsstelle Prozess B
Entkopplung)

costel.aldea@unitbv.ro 8
Bitübertragungsprotokoll Sicherungsprotokoll
OSI-Modell: Funktionalität der Schichten

1. Bitübertragungsschicht: Umsetzung in elektrische Signale (z.B. „0“=1V);


mechanische und elektrische Kopplung (z.B. RJ45-Stecker)
2. Sicherungsschicht: Behandlung von Übertragungsfehlern (Prüfsummen,
Wiederholung); Überlastvermeidung (Flusssteuerung)
3. Vermittlungsschicht: Wegewahl Sender → Empfänger (statisch oder
dynamisch); Kopplung heterogener Teilnetze (Anpassung, Abrechnung)
4. Transportschicht: Sichere Ende-zu-Ende-Kommunikation zwischen Prozessen;
Multiplex, Bündelung, Flusssteuerung zwischen Endsystemen
5. Sitzungsschicht (Kommunikationssteuerung): Dialogsteuerung (simplex /
duplex / halbduplex); Synchronisation (Sicherungspunkte, Transaktionen)
6. Darstellungsschicht: Transformation zw. Datenformaten
(z.B. ASCII/EBCDIC); Kompression (z.B. MPEG, MP3),
Verschlüsselung (z.B. RSA)
7. Anwendungsschicht: Kommunikation zw. Anwendungen, spezielle
Dienste (z.B. RPC, FTP, E-Mail, Telnet, WWW etc.)

costel.aldea@unitbv.ro 9
Schichtenschnittstelle
IDU
Schicht N+1
(N-)Dienstschnitt-
ICI SDU SAP stelle: Zugangs-
punkt zu Schicht N
Schnittstelle /
Interface
(N-)Instanz:
ICI SDU Protokoll-
Schicht N Implementierung
von Schicht N
H SDU

N-PDU
•IDU: Interface Data Unit (z.B. Dienstaufruf zum Datentransport mit TCP/IP)
ICI: Interface Control Information (z.B. Adressinformation, Optionen)
SDU: Service Data Unit (Nutzdaten)
PDU: Protocol Data Unit (Netzwerkpaket mit Adress- und Steuerfeldern,
Daten)
SAP: Service Access Point (z.B. Socket-Schnittstelle bei TCP/IP) 10
costel.aldea@unitbv.ro
Integriertes Referenzmodell (Tanenbaum)

 Protokollimplementierung oft abweichend vom Referenzmodell:


• meist Umsetzung in Hardware auf Schicht 1 und 2 (z.B. Ethernet-Karte)
• einige Teilfunktionen der Schicht 3 auch schon auf Schicht 2 zu finden
 (z.B. Ethernet-Switching mit Wegewahl)
• teilweise Hardware-Lösungen auf Schicht 3 und 4 (z.B. integrierte Hochleistungs-
router und -switches), teilweise Software (z.B. TCP/IP-Protokollimplementierung)
• Umsetzung der oberen Schichten 5-7 meist gemeinsam in Software; daher hier
 integrierte Betrachtung:
5 Anwendungsschicht (inkl. Darstellungs- und Sitzungsschicht)

4
Transportschich
t
3
Vermittlungsschich
2
t Sicherungsschicht Logical Link Control (LLC)

Media Access Control (MAC)

1 Bitübertragungsschicht
costel.aldea@unitbv.ro 11
Beispiel Datenübertragung nach Referenzmodell
Daten Daten

Senderprozess Empfängerproze
Anwendung Daten AH Anwendung

Transport Daten TH
Transport

Vermittlung Daten NH
Vermittlung

Sicherung T Daten DH
Sicherung
Bitübertrag. Bits
Bitübertrag.

AH...Header der Anwendungsschicht (application)


TH...Header der Transportschicht (transport)
NH...Header der Vermittlungsschicht (network)
costel.aldea@unitbv.ro DH...Header der Sicherungsschicht (data link) 12
Datenrate und Effizienz

5 Anwendung Transferrate
Effizienz
• oberhalb Layer 4 (Goodput)
b
Schicht 4 η
• bei TCP/IP/Ethernet: 7-95 MBit/s
hier: 23-99%
Vermittlungs-Datenrate Effizienz
4 • oberhalb Layer 3 (selten genutzt)
b Schicht 3 η
Transport • bei IP/Ethernet: 31-96 MBit/s hier: 57-99%

Datendurchsatz b
3 Vermittlung Effizienz
•oberhalb Layer 2 (Throughput)
Schicht 2 η
•bei Ethernet: 55-97 MBit/s
hier: 55-97%
Netzwerk-Datenrate Effizienz
2 Sicherung
• oberhalb Layer 1 (Net Bit Rate)
b Schicht 1 η
• bei Ethernet: 100 MBit/s hier: 80%
Roh-Datenrate b
1 Bitübertragung • unterhalb Layer 1 (Gross Bit Rate)
• bei Ethernet: 125 MBit/s
costel.aldea@unitbv.ro 13
Dienste: Phasen

1. Signalisierung: Verbindungsaufbau - Con

Request
Req Ind
Response
Cnf Rsp

2. Datenübertragung – Dat (Data)

3. Signalisierung: Verbindungsabbau – Dis


Con – Connect
Request Dis - Disconnect
Req Ind
Req – Request
Response Ind – Indication
Cnf Rsp Rsp - Response
Cnf – Confirmation
costel.aldea@unitbv.ro 14
Beispiel: Ablaufdiagramm

Prozess A Prozess B
Wählen
ConReq Läuten
ConInd
Hörer
Hörerabnehmen
abnehme
Ende Läuten ConRsp
ConCnf
Sprechen Hören
DatReq
DatInd
DatReq
DatInd
Sprechen
Hören DatReq
DatInd
Con – Connect
Dis – Disconnect
Auflegen
Dat - Data DisReq Auflegen
DisInd
costel.aldea@unitbv.ro 15
3. Netzkopplung – Basis-Topologien
Punkt-zu-Punkt-Kanäle (Unicast)

Stern Baum Irregulär

Rundsendekanäle (Broadcast)

Bus Ring Satellit

costel.aldea@unitbv.ro 16
Klassifizierung nach Ausdehnung:
PAN, LAN, MAN, WAN
PA WLAN Access Point LAN Ethernet-Switch
N
zum
verkabelten
Netzwerk zum Rest
des Netzes

MAN
Antenne Anschlusskasten

PAN - Personal Area Network


Kopfstelle LAN – Local Area Network
MAN – Metropolitan Area Network
Internet WAN – Wide Area Network

costel.aldea@unitbv.ro 17
Klassifizierung nach Ausdehnung:
PAN, LAN, MAN, WAN
WA Entfernungstabelle
N nach Klassifizierung
Übertragungs-
leitung Entfernung Prozessoren Beispiel
Subnetz im gleichen
1m Quadratmeter PAN

Router Brisbane 10m Raum LAN

100m Gebäude

1km Campus

10km Stadt MAN

100km Land WAN


Perth Melbourne 1000km Kontinent

10.000km Planet Internet

costel.aldea@unitbv.ro 18
Netztechnologien: Beispiele
Leistung
[Mbit/s]
WAN
100000 100-Gigabit Ethernet
MAN
10000 10-Gigabit Ethernet
LAN
1000 Gigabit Ethernet PAN
100 Fast Ethernet WLAN LTE
T V-Kabel
10 Ethernet UMTS
DSL
1
Bluetooth
RFID, NFC
0,1 ISDN

GSM
0,01
costel.aldea@unitbv.ro Mobilität 19
Netzkopplung: Konzepte

Koppelelemente im Modell: Layer-N-


Gateway
5 Anwendung Application-Level-
Gateway

4 Transport Layer-4-Switch

3 Vermittlung Router oder


Layer-3-/IP-Switch

2 Sicherung Bridge oder


Layer-2-Switch

1 Bitübertragung Repeater, Hub

costel.aldea@unitbv.ro 20
Netzkopplung: Beispiel
Gigabit
Sachbearbeitung Ethernet Internet
Layer-2 Switch Layer-3
(Fast Ethernet) . Switch
Switch .
.
10 Gigabit Ethernet
Layer-2 Backbone Layer-3
Switch Switch
Fertigung
(Fast Ethernet)
...
Router DSL
WLAN
PAN

Access
Point
CAD-Pool
costel.aldea@unitbv.ro
(Fast Ethernet) 21
4. Internet

Anwendungsschicht
Telnet FTP SMTP HTTP ... SIP (und darunterliegende
Funktionalität)

TCP UDP Transportschich


t

IP Vermittlungsschicht

Sicherungs- und
Bitübertragungsschicht
LAN MAN WAN (keine speziellen
Festlegungen)
costel.aldea@unitbv.ro 22
Internet
Internet: Weltweites Kommunikationsnetz
IP (Internet Protocol): Schicht 3, verbindungslos
TCP (Transmission Control Protocol): Schicht 4, verbindungsorientiert
UDP (User Datagram Protocol): Schicht 4, verbindungslos
Telnet (Remote Login)
FTP (File Transfer Protocol)
SMTP (Simple Mail Transfer Protocol), MIME (Multipurpose Internet Mail
Extensions)
HTTP (Hypertext Transfer Protocol)
SIP (Session Initiation Protocol)
u.v.a.m.

Intranet: Unternehmensinterner Einsatz der Internet-Protokolle


Zugriff auf Unternehmenssserver und –datenbanken
Gruppenkommunikation, Teamarbeit
Mobile Computing (mobiler Informationszugriff)
u.v.a.m.
costel.aldea@unitbv.ro 23
Geschichte des Internet (1)
1970 ARPANET (Advanced Research Projects Agency, ca.
100 Rechnernetze), 50 kBit/s
1975 TCP/IP-Architektur, Netzkopplung, PRNET (Packet
Radio, 100 kbit/s),
SATNET (Satellite Net, 64 kBit/s, USA,
Deutschland, Italien etc.)
1979 ARPA ICCB (Internet Configuration Control Board)

1980 Internet-kompatible lokale Netze, TCP/IP als Standard,


einfachere Netzkopplung
1984 Abspaltung des MILNET, Förderung des CSNET (Computer
Science Network)
1985 IAB (Internet Activity Board), später mit IETF (Internet
Engineering Task Force) und IRTF (Internet Research
Task Force)

costel.aldea@unitbv.ro 24
Geschichte des Internet (2)

1990 NSFNET (National Science Foundation Network) mit bis zu


1,5 MBit/s
als Ersatz für ARPANET; weltweiter Netzausbau
1992 WWW (World Wide Web); stärkere Öffnung für Industrie und
Privatnutzer
1995 Neue Protokolle (IP next generation etc.)
Zunehmende Verbreitung von Electronic Commerce und
Multimedia;
2000 Weitere deutliche Leistungserhöhung; Gigabit-
Wissenschaftsnetz;
zunehmender Einsatz optischer Netze, WDM (Wave
Division
2005 Multiplex)
Neue Anwendungsmodelle, Web Services, Service Oriented
2010 Architectures (SOA)
Verbreitung von Web 2.0 (aktive Nutzerpartizipation),
2012 semantisches Web, mobiles Internet
costel.aldea@unitbv.ro Neue Standards zu 100 GBit/s Ethernet und 300 MBit/s 25
WLAN
Normung: Kommunikation in heterogenen
Systemen
De-facto-Normen: Industriestandards (z.B. IBM PC, anfangs Unix / Linux,
TCP/IP)
De-jure-Normen: Offizielle Standards (z.B. ISO/OSI - Modell)
ITU: International Telecommunications Union der United Nations
ITU- Telefon- und Datenkommunikation (z. B. ATM, GSM, UMTS); vormals
T: CCITT (Comité Consultatif International Télégraphique et Téléphonique)
ETSI: European Telecommunications Standards Institute
IETF: Internet Engineering Task Force (alle Internet-Protokolle)
ISO: International Organization for Standardization (z.B. OSI-Modell)
IEEE: Institute of Electrical and Electronics Engineers (z.B. IEEE 802.3: Ethernet)
DIN: Deutsches Institut für Normung
ANSI: American National Standards Institute

Problem: Trägheit der offiziellen


Normung
Forschung Produktentwicklung
Aktivität

Normung

costel.aldea@unitbv.ro Zeit 26
weiterführende Referenzen
 Tanenbaum, Wetherall: Computernetzwerke; Pearson Studium,
2012, Kapitel 1 (genereller Überblick, Vergleich der
Referenzmodelle, ausführliche Darstellung drahtloser Netze)

 de.wikipedia.org/wiki/Rechnernetz
(erweiterte Definitionen, Verweise auf spezielle Kategorien von Netzen
wie etwa PAN – Personal Area Network und BAN – Body Area
Network)

 de.wikipedia.org/wiki/OSI-Modell
(Übersicht zu Idee und Struktur des OSI-Modells, siehe auch
Querverweis auf TCP/IP- (Internet-)Referenzmodell zum Vergleich)

costel.aldea@unitbv.ro 27
Gliederung

1. Einführung
2.Bitübertragungsschicht
3.Netztechnologien Teil 1
4.Netztechnologien Teil 2
5.Sicherungsschicht
6.Vermittlungsschicht
7.Transportschicht
8.Netzwerkperformance
9.Internetdienste
10.Multimediakommunikation
11.Verteilte Systeme
12.Mobile Computing

costel.aldea@unitbv.ro 28
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
2. Bitübertragung
Schichtenübersicht

Anwendungs-
Anwendungsschicht
schicht

Transport
Transportschicht
- schicht

Vermittlungs
Vermittlungsschicht
- schicht

Logical Link Control (LLC)


Sicherungs- Sicherungs-
schicht Media Access Control (MAC)
schicht

Bitübertragungs-
Bitübertragungsschicht Kap. 2
schicht

costel.aldea@unitbv.ro 3
1. Nachrichtentechnische Kanäle

 Aufgabe: Physikalische Bitübertragung mittels Transformation


in elektromagnetisches Signal

Daten Daten

Kanal
Störeinflüsse
Signal (Rauschen, Echo etc.)

costel.aldea@unitbv.ro 4
Kenngrößen
 Bandbreite B : Breite des Frequenzbereichs eines Kanals, in dem
ohne größere Dämpfung übertragen wird
 Baudrate BR = Signalschritte/s („Schrittgeschwindigkeit“)
[BR]=Bd (Baud)

 Bitrate b = (übertragene Bits)/s („Bitrate“, „Datenrate“)


b = BR ∙ (Bits pro Signaländerung)
b = BR ∙ ld(S) (bei S Signalstufen)

4
Beispiel:
 3
S=4
b = 2 ∙ BR 2
1 t
01 10 00 11 10 01 11 00 01 01

costel.aldea@unitbv.ro 5
Nyquist-Theorem
 Nyquist-Theorem (1924):
Bandbreite: B [B]=Hz
࢈< 2 ∙ ࡮∙ ld(S) b [b]=Bit/s
Bitrate:
Signalstufen: [S]=1
Beispiel: B=3kHz, S=2 (binär)
 b < 6000 Bit/s SNR : Signal-Rauschabstand
SNR Signa
= ll e isRauschleistung
t ung

 Erweiterung durch Shannon (1948) SNR=[1]


für Kanäle mit zufälligem Rauschen
Angabe meist logarithmisch:
࢈< ࡮∙ ld(1+SNR) SNRdB=10∙lg(SNR)
[SNRdB]=dB
Beispiel: B=3 kHz, SNR=7
 b < 9000 Bit/s (unabhängig davon, wie viele
Signalstufen benutzt werden)

 Kombination: ࢈<(min 2 ∙ ࡮∙ ld(S); ࡮∙ ld(1+SNR))


costel.aldea@unitbv.ro 6
Leitungscodes

 Wie soll Folge von 0en und 1en übertragen werden?


 NRZ – Non-Return-to-Zero – „1“=hoher Pegel, „0“=niedriger Pegel
• Erfordert, dass Sender und Empfänger gleich getaktet sind
• kein Overhead: Netto-Datenrate = Bitrate
 Manchester-Codierung
• Selbsttaktender Code  Taktrückgewinnung beim Empfänger
• hoher Overhead: Netto-Datenrate = ½ Bitrate

1 0 0 0 1 0 1 1 1

(doppelte Taktrate bei „0“-


Folge durch
Pegel- wechsel im
Intervall)

costel.aldea@unitbv.ro Pegeländerung = „0“ keine Pegeländerung = „1“ 7


Leitungscodes (2)
 NRZI – Non-Return-to-Zero Inverted
• Signaländerung bei 1, keine Signaländerung bei 0
• Vorteil: hohe Netto-Datenrate
• Nachteil: Probleme bei langer Folge
4B 5B 4B 5B
von Nullen
0000 11110 1000 10010
• Lösung: 4B/5B-Code
o jeweils 4 Bits Daten werden auf 0001 01001 1001 10011
5-Bit-Muster abgebildet 0010 10100 1010 10110
 25% Overhead
(statt 100% wie bei Manchester) 0011 10101 1011 10111

o durch 4B/5B-Code treten 0100 01010 1100 11010


niemals mehr als 3 Nullen
0101 01011 1101 11011
nacheinander auf
0110 01110 1110 11100

1101 1011 0110 0000 0000 0000 0111 0111 01111 1111 11101
11011101110111011110111101111001111

costel.aldea@unitbv.ro 8
2. Übertragungsmedien – Elektrische
Leitungen

 Twisted Pair
• Isolierte Kupferdrähte von 0,4 bis 1 mm Stärke
• Paarweise verdrillt  Reduzierung von Störungen
• Üblicherweise 4 Paare pro Kabel
• Mehrere Kilometer Reichweite, mehrere MBit/s, preiswert
• Signal als Spannungsdifferenz zwischen den 2 Kabeln übertragen
• Cat 3: nicht abgeschirmtes Twisted Pair (UTP – Unshielded
Twisted Pair), bis 10 MBit/s
• Cat 5: gebräuchlichster Kabeltyp für LAN-Verkabelung
o 2 Paare für Fast Ethernet (100 MBit/s)
o 4 Paare für Gigabit Ethernet (1 GBit/s)
• Cat 6: für bis zu 10 GBit/s eingeschränkt geeignet
• Cat 7: für 10 GBit/s geeignet
o geschirmtes Twisted Pair (STP – Shielded Twisted Pair)
o jedes Paar mit Ummantelung

costel.aldea@unitbv.ro 9
Elektrische Leitungen (2)

 Koaxialkabel Kupfer Isolierung


• mehrere km, mehrere MBit/s; T-Stecker oder
Tap
• 50-Ohm-Kabel: für digitale Übertragung
• 75-Ohm-Kabel: für analoge Übertragung und
Kabelfernsehen
• Kabelfernsehen  Breitband-Koaxialkabel,
häufig mit analoger Übertragung bis ca. 1 GHz;
bidirektionaler Ausbau für Internet-Zugang via Kabel
Außenleiter
Kopfende Schutzschicht

Verstärke
r

costel.aldea@unitbv.ro 10
Optische Leitungen und Sichtverbindung
 Optische Leitungen:
• Lichtwellenleiter (LWL) / „Glasfaser“ (eigentlich: High-Tech-
Material) o bis TBit/s-Bereich, über viele km Entfernung
o Monomodefaser: nur eine ausbreitungsfähige Wellenform (keine
Interferenz - daher leistungsfähiger, mit Laserdiode, aber auch
teurer)
o Multimodefaser: verschiedene ausbreitungsfähige Wellenformen;
Gradientenfaser: schrittweise Änderung des Brechungsindex

Licht (ca.108 MHz)


LED, Laserdiode Photodiode

Totalreflexion
Sichtverbindung:
• Infrarotverbindungen (z.B. Laserlink)
• Richtfunkstrecken
costel.aldea@unitbv.ro 11
Satelliten und Zellularfunk
 Satelliten: Transponde
• Getrennte Aufwärts-/Abwärtsbänder r
(z. B. 4/6 GHz bzw. 12/14 GHz)
• Bandbreite von 500 MHz, z.B. in
mehrere 50 MBit/s - Kanäle oder 800
digitale Sprachkanäle mit 64 kBit/s
aufgeteilt
• Zuordnung kurzer Zeitabschnitte zu
einzelnen Kanälen (Zeitmultiplex)
• Lange Laufzeiten (ca. 250 bis 300ms) A B

4 3 2 4 1 2 5 1
2
 Zellularfunk: 5 1 7 5 6 7 3 6
7
• Aufteilung eines geographischen Bereichs in 3 2 4 32 4 12
Funkzellen mit spezifischen Frequenzbändern 15 7
6 5 7 6
7 3 6 4 3 24
• Beispiel: GSM
(Global System for Mobile Communication) 4 4 2 1 5
costel.aldea@unitbv.ro 12
5
Strukturierte Verkabelung
 Ziel: Systematische, gut wartbare und erweiterbare Kabelinfrastruktur
 Trennung in drei wesentliche Bereiche (jeweils sternförmig hierarchisch)
• Primärebene (weiträumig, zwischen Standorten / Gebäuden etc.)
Empfehlung: meist Monomode-Lichtwellenleiter
• Sekundärebene
zwischen Etagen, auch „Steigleitungsebene“ genannt Empfehlung: meist
Multimode-Lichtwellenleiter
• Tertiärebene
innerhalb einer Etage zu den Räumen / Arbeitsplätzen Empfehlung:
Multimode-Lichtwellenleiter oder Kabel-Kat. 5 bzw. höher, teilweise
ergänzt um drahtlose Techniken

Tertiär
Sekundär

Primär
costel.aldea@unitbv.ro 13
3. Mehrfachnutzung von Kanälen
 Frequenzmultiplex (Frequency Division Multiplexing, FDM)
• getrennte Frequenzbänder (mit z.B. 3000 Hz) und
zwischengeschaltete Sperrbänder (mit z.B. 500 Hz)

Amplitude
Kanal 1 Kanal 2 Kanal 3

60 64 68 72 f in kHz
Orthogonales Frequenzmultiplex (Orthogonal FDM,
OFDM)
• Überlagerung der Kanäle ohne Sperrbänder  effizienter
• Empfänger: Trennung der Signale mehrerer Bänder durch schnelle
Fourier-Transformation (FFT)
• Einsatz: WLAN, Kabelnetze, 4G Mobilfunk: LTE (Long Term Evolution)

Amplitude
Kanal 1 Kanal 2 Kanal 3
costel.aldea@unitbv.ro 60 64 68 72 f in kHz 14
Mehrfachnutzung von Kanälen (2)
 Zeitmultiplex (Time Division Multiplex – TDM)
Zyklische Kanalzuteilung

f
Kanal 1 Kanal 3 Kanal 2 Kanal 1

Statistisches Zeitmultiplex
flexible Zuteilung nach Bedarf

f
Kanal 2 Kanal 3 Kanal 3 Kanal 1

 In der Praxis oft Kombination von Frequenz- und Zeitmultiplex (z.B. GSM)
costel.aldea@unitbv.ro 15
Mehrfachnutzung von Kanälen (3)

 Codemultiplex (CDM): Dedizierte (Kodierungs-)Codes pro


Teilnehmerpaar
f (jeder Kanal 1 bis 3 mit eigenem Code
zur gleichen Zeit auf der gleichen Frequenz)

Wellenlängenmultiplex (WDM):
• Variation von Frequenzmultiplex, indem direkte optische Einkopplung
mehrerer Lichtwellenleiter (mit Licht unterschiedlicher Wellenlängen)
in einen besonders leistungsfähigen Lichtwellenleiter erfolgt
• entsprechende Wiederauskopplung im Zielsystem
W1
W1
W1 – W3 W2
W2

W3 W3
costel.aldea@unitbv.ro 16
4. Datenübertragung - Signalklassen

Zeit-
kontinuierlich diskret

Eingangssignal S Verlauf nach Abtastung


S

t t

Verlauf nach Quantisierung


S S

t t

costel.aldea@unitbv.ro 17
Beispiele für Signalklassen
 Wert- und zeitkontinuierlich: analoges Telefon

 Wertkontinuierlich, zeitdiskret: Prozesssteuerung mit


periodischen Messpunkten

 Wertdiskret, zeitkontinuierlich: digitale Temperaturanzeige


mit beliebigen Signalwechseln

 Wert- und zeitdiskret: digitale Übertragung mit isochronem


Taktmuster (Taktrate konstant); z. B. Sprachübertragung über
digitale Kanäle

Vorteile der digitalen Übertragung: Speicherbarkeit,


Störsicherheit, gute Regenerierbarkeit, Verschlüsselbarkeit,
Zeitmultiplex nutzbar

costel.aldea@unitbv.ro 18
Beispiel: Telefonsystem

 Digitale Übertragung im Kernnetz; digitale und analoge Teilnehmeranschlüsse


 Hierarchische Struktur; Begrenzung der Kabelkosten; Dezentralisierung
 Einsatz von Frequenz- und Zeitmultiplex

Fernvermittlung
Ortsvermittlung

 Schema:
Zwei- LWL
draht

Telefo Ortsver- Fernver- Fernver Ortsver- Telefo


n mittlung mittlung - mittlung n
costel.aldea@unitbv.ro mittlung 19
Sprachübertragung über digitale Kanäle

 Analoge Eingangssignale (Sprache) vor Übertragung im Kernnetz zu


digitalisieren: Codec (Coder-Decoder)

 Basis: Abtasttheorem nach Shannon:


• Abtastfrequenz höher als doppelte Grenzfrequenz des Signals:

Amplitude f‫ >ܣ‬2 ∙ f‫ܩ‬

t fA : Abtastfrequenz fG :
Abtastung
Grenzfrequenz
 PCM: Pulse Code Modulation [f]=1/s=Hz
(Hertz)
• Bsp: Grenzfrequenz (Telefon): 3400 Hz; Abtastfrequenz: 8000 Hz
Anschl. Quantisierung mit 256 Intervallen  8 Bit pro Signalwert
 64 kBit/s (Datenrate eines Nutzkanals bei ISDN – Integrated
Services Digital Network)
• logarithmische Quantisierungsintervalle  Quantisierungsfehler
begrenzen
costel.aldea@unitbv.ro • Kompression durch differentielle PCM bzw. Delta-Modulation 20
Datenübertragung über analoge Kanäle
 Modem: Übertragung digitaler Signale über analoge Telefonverbindung
 Problem: Nicht direkt möglich wegen kapazitiver und induktiver
Einflüsse Modulation/Tastung auf Sinusträger (z.B. 1000 - 2000 Hz bei
Telefonie)
 S(t)= ‫ ∙ܣ‬s݅݊ ߱*(߱ *t+ ߮); Bitrate bis ca. 56 kBit/s

Amplitude Frequenz Phase

Binärsignal

Amplituden- „0“= niedrige Amplitude


tastung

Frequenz- „0“= niedrige Frequenz


tastung

Phasen- „0“= Phasensprung


tastung z.B. um φ=π
(am stör-
sichersten) t
0 1 0 1 1 0 0 1 0 0 1 0 0 Vereinfachte Darstellung;
tatsächlich mehr Schwingungen
costel.aldea@unitbv.ro pro Zeitintervall. 21
Kombination von Modulationsverfahren

 Ziel: Deutlich höhere Übertragungsleistung durch gleichzeitige


Anwendung mehrerer Verfahren

 Beispiele:
• QPSK (Quadrature Phase Shift Keying): Phasensprünge wahlweise
um z.B. 0, 90, 180 oder 270 Grad (also 4 Varianten, d.h. 2 Bit pro
Signalschritt)
• QAM 16 (Quadrature Amplitude Modulation, 16 Varianten):
Kombination von 4 Phasensprüngen und 4 Amplitudenstufen (d.h.
4 Bit pro Signalschritt)
• QAM 64 (Quadrature Amplitude Modulation, 64 Varianten):
Kombination von 4 Phasensprüngen und 16 Amplitudenstufen (d.h.
6 Bit pro Signalschritt)

 Einsatz dieser Verfahren insbesondere im Mobilfunk wegen stark


begrenzter Bandbreite (Nyquist!), aber auch bei DSL etc.

costel.aldea@unitbv.ro 22
5. Beispieltechnologien –
Digital Subscriber Line
 (DSL)
digitaler Netzzugang über herkömmliche Telefonleitungen
 Datenübertragung und Telefondienst gleichzeitig nutzbar
 Realisierung durch Nutzung höherer Frequenzbereiche
 hohe Datenraten, meist asymmetrisch (ADSL) bzgl. Up-/Downlink
 weitere Varianten:
• VDSL (Very High Bitrate): nur über kurze Entfernungen
• SDSL (Symmetric): gleiche Datenrate auf Up-/Downlink

DSL-Netzeinheit z.B. 20 MBit/s Ethernet


DSL-
(DSL Access z.B. 1 MBit/s Teilnehmer-
Multiplexer, Einheit (Splitter,
„DSLAM“) Transceiver /
4 kHz analog
„DSL-Modem“)

Netzschnittstelle:
LWL zum nächsten Vorhandenes Kabelpaar (max. ca.
Vermittlungsknote 5km; hohe Datenraten bis ca. Telefo
n
costel.aldea@unitbv.ro 1km) n 23
Digital Subscriber Line (DSL)
 Signaltrennung (Telefon/Daten) und Modulation (basierend auf QAM):
• CAS (Carrierless Amplitude / Phase System): erste einfache
Variante, feste Kanalzuordnung, klare Schutzabstände, aber wenig
flexibel

0-4 kHz: 25-160 kHz: 240 kHz – ca. 1 MHz:


Sprache Uplink Data Downlink Data

• DMT (Discrete Multitone): aktueller Standard, Aufteilung des


Frequenzspektrums in 247 zusätzliche Datenkanäle mit je 4 kHz
Bandbreite, teilweise exklusiv und teilweise kombiniert für Up-/
Downlink genutzt, flexibel und störsicher

0-4 kHz: 8 kHz – ca. 1 MHz:


Sprache 247 Kanäle für Up-/Downlink Data
costel.aldea@unitbv.ro 24
Digitaler Netzzugang über Kabelmodem
 Signaltrennung zwischen Kabelfernsehen und Daten:
• Umwidmung einzelner TV-Kanäle in Datenkanäle
• Rückkanalfähige Verstärker erforderlich
• Datenraten theoretisch bis ca. 36 MBit/s, aber „Shared Medium“, d.h.
abhängig von der Zahl der Teilnehmer geringere Datenrate

Medium Access Rechner


Tuner Demodulator
(Signaltrennung) Control / CPU
Netz
Modulator

0 bis ca. 1 GHz: TV-Kanäle zu je 6-8 MHz; teilweise Umwidmung in dedizierte


Datenkanäle: Uplink im Bereich bis ca. 65 MHz, Downlink oberhalb 450 MHz
costel.aldea@unitbv.ro 25
Global System for Mobile Communication
(GSM)

Vermittlungssubsysteme Funksubsysteme
Festnetze OMC

Daten-
VLR HLR AuC EIR
netze
MS
(G)MSC BSC BTS

PSTN/
ISDN Call Management
MS
Network Management BTS
BSS MS
AuC Authentication Centre Base MS Mobile Station
BSS Station Subsystem Base
(G)MSC (Gateway) Mobile Switching Centre
BSC Station Controller Base
OMC Operation and Maintenance Centre
BTS Transceiver Station
PSTN Public Switched Telephone
EIR Equipment Identity Register
HLR Home Location Register Network VLR Visitor Location Register
costel.aldea@unitbv.ro ISDN Integrated Services Digital Network
26
Universal Mobile Telecommunication System
(UMTS)
 deutlich leistungsfähiger (bis 2 MBit/s); GSM-Datenraten im
Vergleich: 9600 Bit/s (Basisdatenrate) bis ca. 100 kBit/s
(GPRS: General Packet Radio Service)
 Paketvermittelte Datenübertragung; daher effiziente
Ressourcennutzung
 Funkzellen von ca. 10m (Gebäude) bis zu einigen km (Land)
Durchmesser; somit Anpassung an Nutzerpopulation
 effizientere Kanalkodierung; zusätzlich zu Frequenz- und
Zeitmultiplex auch Einsatz von Code-Multiplex; daher mehr
Kanäle gleichzeitig übertragbar
 neue Dienste (z.B. Videotelefonie)
 Erweiterungen (HSDPA – High Speed Downlink Packet Access)
sogar bis ca. 10 MBit/s

costel.aldea@unitbv.ro 27
LTE

 LTE = Long Term Evolution


 rein Paket-basierte Technologie
 nochmals höhere Datenraten
• bis zu 300 MBit/s Downlink
• bis zu 75 MBit/s Uplink
 FDD (Frequency Division Duplex): getrennte Frequenzblöcke für
Uplink und Downlink
 TDD (Time Division Duplex): ein einzelner Frequenzblock
abwechselnd für Uplink und Downlink genutzt
 nutzt OFDM für bessere Ausnutzung der Frequenzbereiche – höhere
Datenraten möglich
 verschiedene Quality-of-Service-Klassen für Voice, Video, Gaming,
etc.

costel.aldea@unitbv.ro 28
weiterführende Referenzen

 Tanenbaum, Wetherall: Computernetzwerke; Pearson Studium, 2012,


Kapitel 2

 www.elektronik-kompendium.de, weiter über Suchbegriff ADSL etc.


(guter Überblick zu DSL und seinen Varianten wie HDSL)

 de.wikipedia.org/wiki/Kabelmodem (weitere Erläuterungen und


Referenzen zum Thema Kabelmodem)

 www.umtsworld.com
(Hintergründe und Informationen zu UMTS und 3G-Mobilfunk)

 Vorlesungen aus dem Bereich der Telekommunikation (u. a. Fakultät


Elektrotechnik) zur weiteren Vertiefung
 Vorlesung Mobile Communication und Mobile Computing zur Vertiefung
der mobilen Beispieltechnologien

costel.aldea@unitbv.ro 29
Gliederung
1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 30
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
3. Netztechnologien 1 (PAN und LAN)
Schichtenübersicht

Anwendungsschicht Anwendungs-
schicht

Transport-
Transportschicht
schicht

Vermittlungs-
Vermittlungsschicht
schicht

Sicherungs- Logical Link Control (LLC) Sicherungs-


Media Access Control (MAC)
schicht schicht
Kap. 3

Bitübertragungsschicht Bitübertragungs-
schicht

costel.aldea@unitbv.ro 3
Überblick
 Einordnung im Wesentlichen in OSI-Schichten 1 und 2
 PAN – Personal Area Network / LAN - Local Area Network
• Ausdehnung bis zu einigen Kilometern
• Privates Unternehmen / Privathaushalt als Netzbetreiber
(„in house“)
 MAN – Metropolitan Area Network / WAN – Wide Area
Network
• Weiträumige Ausdehnung, öffentlich zugänglich, dedizierte
Betreiber
• Dienstqualität sehr wichtig (viele konkurrierende
Verkehrsströme)

 Hier: Technologien für PAN / LAN


• Medienzugriff, Ethernet, Switching, Drahtlose Netze (WLAN,
Bluetooth, RFID, ZigBee)
 Technologien für MAN / WAN in Kapitel 4
costel.aldea@unitbv.ro 4
1. Medienzugriff - ALOHA-Protokoll
 historisches Paketfunknetz, University of Hawaii, seit 1970
 dezentrale Stationen, Kommunikation über Zentrale
 unkoordiniertes Wettbewerbsverfahren (stochastisch)

Stationen

Stationen Zentrale

 f1: 407,35 MHz (Stationen ⇒ Zentrale)


 f2: 413,475 MHz (Zentrale ⇒ Stationen)
 Kollision auf f1 bei Zentrale, da Senden stets möglich
 Fehlerbehandlung durch Wiederholung, falls nach Zeit t keine
Quittung auf f2
 kein Mithören während des Sendevorgangs
costel.aldea@unitbv.ro 5
ALOHA: Beispiel
Pure ALOHA: Max. etwa 18% des Kanaldurchsatzes

Station A:
t
Station B:
t

Station C:
t
(Übertragungsverzö
Zentrale
gerung
vernachlässigt)

vteiolllstäwendigeisevollständigeteilweise t
vollständige
teilweise Kteilweise
K
Kollision Kollision
costel.aldea@unitbv.ro 6
Slotted ALOHA: Beispiel

Station A:
t

Station B:
t

Station C:
t

Zentrale
t

Sendevorgang nur zu Beginn eines Takt-Slots


Kollisionswahrscheinlichkeit etwa halbiert
Taktung z.B. per Funk möglich
costel.aldea@unitbv.ro 7
CSMA-Verfahren
 Abhören vor Senden (CSMA - Carrier Sense Multiple Access)
 Trotzdem Kollision möglich: (1-persistent CSMA, immer sendebereit)

Station A:
t

Station B:
t

Station C:
t
Gleichzeitiger Sendebeginn

 nonpersistent CSMA: belegter Kanal wird nicht sofort erneut abgehört,


erst nach zufällig verteiltem Zeitintervall; dadurch geringere
Kollisionswahrscheinlichkeit
 p-persistent CSMA (slotted): Prüfe Kanal, sende mit Wahrscheinlichkeit
p, warte sonst 1 Slot und prüfe wieder
costel.aldea@unitbv.ro 8
Bewertung der Verfahren
Auslastung
[%]

100

80

nonpersistent
60
CSMA

0,5-persistent
40 1-persistent CSMA
CSMA

slotted
20 ALOHA
ALOHA
Last [%]
(bezogen auf
costel.aldea@unitbv.ro 20 40 60 80 100 120 9
Kanaldatenrate)
CSMA/CD-Verfahren (1)

CSMA mit „Collision Detection“ (CD):

Mithören während des Sendevorgangs

Kollisionserkennung dadurch schneller möglich (ohne Warten auf


Quittung)

Funktioniert für ein gemeinsam genutztes Kommunikationsmedium…


(z.B. gemeinsames Kabel bei IEEE 802.3, Luft bei IEEE 802.11, etc.)

…mit mindestens einer Station


(Kollisionen mit sich selbst können erkannt werden, z.B. durch
Signalreflexion am offenen Kabelende)

costel.aldea@unitbv.ro 10
CSMA/CD-Verfahren (2)
 Beispiel:
• Zwei Stationen wollen sich gegenseitig eine Nachricht senden
• Es kommt zum teilweise gleichzeitigen Senden
A beginnt Übertragung (‫ݐ‬0)

A B

B beginnt mit Übertragung (‫ݐ‬0 + ߬− ߳) – ߬…Signallaufzeit

A B
costel.aldea@unitbv.ro 11
CSMA/CD-Verfahren (3)
B entdeckt Kollision (‫ݐ‬0 + ߬), stoppt Übertragung, "Jam-
Signal"

A B

"Jam-Signal" läuft weiter

A B

costel.aldea@unitbv.ro 12
CSMA/CD-Verfahren (4)

A entdeckt Kollision (‫ݐ‬0 + 2߬)

A B

minimale Rahmenlänge für Sendevorgang der Dauer


2߬erforderlich

costel.aldea@unitbv.ro 13
2. Ethernet – IEEE 802.3

 Zugriffsverfahren: 1-persistent CSMA/CD, in Hardware auf


Ethernet-Karte realisiert
 Datenrate der Basistechnologie: 10 MBit/s
 Segmentlänge: 500m
 Kabel der Kategorie 5 oder höher bzw. Lichtwellenleiter
(dann auch deutlich größere räumliche Ausdehnungen
möglich)
 heute grundsätzlich mit Switches und Duplex-Betrieb im
Einsatz
 dennoch Kollisionsbehandlung generell mit eingebaut:
• warte s Slots nach Kollision, s zwischen 0 und 2n - 1 bei n
vorherigen Kollisionen zufällig gewählt

costel.aldea@unitbv.ro 14
Ethernet: Rahmenstruktur

7 1 6 6 2 0-1500 0-46 4 12+ Byte


Präambel Ziel- Quell- Daten Pad Prüf- Interframe
je 10101010 adress adresse (optional) summe Gap
e

Start of Frame Delimiter EtherType/Siz


(SFD) 10101011 e

 Präambel erlaubt Synchronisation mit Empfänger


 EtherType/Size
• ≤1500  Länge des Datenfelds
• ≥1536  Typ der Daten (z.B. IP, IPv6, etc.) - Länge der Daten nicht
spezifiziert  Interframe Gap als Begrenzer
 Pad zum Auffüllen auf minimale Rahmenlänge wegen
Kollisionsverfahren
 Prüfsumme: CRC (Cyclic Redundancy Check), ohne Präambel und SFD
costel.aldea@unitbv.ro 15
Fast- / Gigabit Ethernet
 Fast Ethernet
• 1995 als IEEE 802.3u standardisiert
• Datenrate 100 MBit/s
• Segmentlänge: 100m bei Kupferkabel, 2km bei Lichtwellenleiter
• Kompatibilität zu Ethernet und Cat-3-Kabel, noch CSMA/CD
unterstützt aber keine Multidrop-Kabel mehr
 Gigabit Ethernet
• 1999 als IEEE 802.3ab standardisiert
• Datenrate 1 GBit/s
• Vollduplex (Standard): kein CSMA/CD mehr
 keine Beschränkung der Kabellänge
• Halbduplex: Layer-1-Kopplung über Hub; CSMA/CD mit
Modifikationen:
o Padding – Rahmen immer auf 512 Byte auffüllen
o Frame-Bursting – mehrere Rahmen in einem Ethernet-Frame
übertragen
 10 / 100 GBit/s Ethernet
• für optische Verbindungen in WANs  siehe Kapitel 4
costel.aldea@unitbv.ro 16
Ethernet-Varianten für LAN: Zusammenfassung

 Festlegung der Varianten bzgl. Übertragungsleistung,


Kabeltypen und Leitungskodierung; wichtige Arten (kleiner
Auszug):
• 10BaseT; IEEE 802.3i: 10 MBit/s über Cat. 3 oder 5
• 10BaseF; IEEE 802.3j: 10 MBit/s über LWL
• 100 BaseT; IEEE 802.3u; 100 MBit/s über Cat. 5
• 100 BaseFX; 100 MBit/s über LWL
• 1000 BaseT; IEEE 802.3ab; 1000 MBit/s über Cat. 5
• 1000 BaseSX; IEEE 802.3z; 1000 MBit/s über LWL

 Power over Ethernet; IEEE 802.3af; Stromversorgung über


Twisted-Pair-Kabel (z.B. Cat 5)

costel.aldea@unitbv.ro 17
Switched Ethernet: Beispiel

File Server 1 File Server 2 File Server 3

1 GBit/s duplex

Layer-2-Switch Leistung: mehrere Gbit/s


100 Mbit/s duplex

 parallele Vermittlung aller Verkehrsströme durch Switch-Hardware


 Vorteil: Keine Kollisionen, jeder Station steht die volle Ethernet-Datenrate zur
Verfügung ⇒ Ethernet wird vom „Shared Medium“ zum „Switched Medium“
 Aufteilung der Stationen an einem oder mehreren Switches in unterschiedliche
virtuelle lokale Netze (VLAN) möglich ⇒ Sicherheitszonen
costel.aldea@unitbv.ro 18
3. Switches in der Sicherungsschicht
 Ziele:
• parallele Vermittlung durch Switches; sequentiell durch Bridges
(veraltet)
• Trennung organisatorischer Bereiche/verschiedene Verkehrsströme
• Zuverlässigkeit und Sicherheit (gegen Störsignale und unberechtigte
Weiterleitung)
• Begrenzung der Netzlast durch selektives Weiterleiten von Nachrichten
Transferrat
e
 Szenario: Switch Switch

Filterrate
costel.aldea@unitbv.ro 19
Switches: Modell

z.B. Ethernet – Gigabit Ethernet

3 3 LLC
LLC 2b 2b 2b MAC
MAC 2a 2a 2a 2a
802.3i 802.3i 802.3ab 802.3ab

1 802.3i
1 802.3i
1 802.3ab
1 802.3ab

802.3i 802.3ab
 Aufgaben:
• Formatanpassung (z. B.: Längenfeld bzw. Rahmenbegrenzung)
• Leistungsanpassung und Pufferung (z. B. 10 / 100 / 1000 MBit/s)
• Anpassung von Rahmenlängen (Fragmentieren/Reassemblieren z.B. durch
hierarchisches Nummernschema)

costel.aldea@unitbv.ro 20
Transparent Bridges / Switches

LAN 1 LAN 3 LAN 4


Bridge 1 Bridge 2

A D E F
B
Bridge 1 Bridge 2
A LAN 1 A LAN 3
C
LAN 2 E LAN 3 E LAN 4
B LAN 2 B LAN 3
1. A E 3. B F
2. E C 4. A E
 Selbstlernend: Automatischer Aufbau von Routing-Tabellen
 Fluten, falls Zielrechner noch unbekannt
 Löschen von Einträgen nach bestimmter Zeit zur Anpassung an
costel.aldea@unitbv.ro Topologieänderungen 21
Spanning Tree

 Problem: Mehrfachwege  Endlosschleifen


 Lösung: Aufbau eines „überspannenden Baumes“ mit eindeutigen
Wegen durch dezentralen Algorithmus / kürzester Weg zur Wurzel

Switch1 Switch2 Switch4

A B D E F

C
Switch 1
Switch3
nur für
Ausfall- Switch 2 Switch 3
behandlung

costel.aldea@unitbv.ro Switch 4 22
Switches: Interne Realisierung
 Parallele Vermittlung mehrerer Eingangs- an mehrere Ausgangsports
 Hohe Leistung, unterstützt durch Hardware-Realisierung

Switch

Switching-Matrix

...
 Store-and-Forward-Switch: Gesamtes Frame wird im Switch
zwischengespeichert, die Prüfsumme wird kontrolliert und erst dann wird
weitergeleitet ⇒ einfach; Pufferung und Datenratenanpassung
 Cut-Through-Switch: Ankommende Frames werden nach Prüfung der
Zieladresse sofort weitergeleitet ⇒ effizienter, kürzere Verzögerung,
aber problematisch bei unterschiedlichen Datenraten und bei Fehlern

costel.aldea@unitbv.ro 23
VLAN – Virtual Local Area Network
 Motivation:
• Flexibilität: Änderung der Zuordnung von Geräten zu lokalen
Netzen ohne neue Verkabelung
• Sicherheits- und Performance-Aspekte

LAN 1

Switch 1 Switch 1

VLAN 2
Switch 2 Switch 2

LAN 2
costel.aldea@unitbv.ro 24
Port-basiertes VLAN

1 2 3 4
 Jeder Port eines Switches wird
Switch 1 einem VLAN zugeordnet
5 6
 Ports können nur Mitglied eines
VLANs sein
1 2  redundante Links zwischen
Switch 2 Switches benötigt
3 45
6

costel.aldea@unitbv.ro 25
Tag-basiertes VLAN – IEEE 802.1Q

 Transport mehrerer VLAN-Pakete über


einen Link  Tagging der Pakete
 IEEE 802.1Q – Ergänzung des
Ethernet-Headers – VLAN-Tag
Switch 1  letzter VLAN-fähiger Switch entfernt
das VLAN-Tag wieder  Kompatibilität
 VLAN Identifier = 12 Bit
 andere Felder (Priority und CFI) nicht
für VLAN genutzt
Switch 2

Priority Canonical Format VLAN Identifier


Indicator (CFI)

Destination Source VLAN VLAN Length Data Pad Checksum


Address Address Protocol ID Tag

costel.aldea@unitbv.ro 26
4. Drahtlose Netze für PAN und LAN
Wireless Local Wireless Metropolitan
Area Network (WLAN) Area Network (WMAN)

GSM

NFC Wireless LAN GPRS


Bluetooth WiMAX
802.11
RFID ZigBee
UMTS

LTE

Wireless Personal
Area Network (WPAN) Wireless Wide
Area Network (WWAN)
costel.aldea@unitbv.ro 27
Wireless LAN: IEEE 802.11
- 802.11b: 11 MBit/s, 2.4 GHz-Bereich
- 802.11g: 54 MBit/s, 2.4 GHz-Bereich
- 802.11a: 54 MBit/s, 5.0 GHz-Bereich
- 802.11n: > 100 MBit/s, 2.4 und 5 GHz-Bereich
- 802.11ac: bis 1 GBit/s, 5 GHz-Bereich
- 802.11i: Sicherheitsstandard

Ad-hoc-Netzwerk Medienzugriffsverfahren in Anlehnung


an Ethernet (CSMA/CA – Collision Avoidance)

Infrastruktur- AP - Access Point


Netzwerke:
AP

AP
AP

costel.aldea@unitbv.ro 28
802.11 – Medienzugriff mit CSMA/CA
 RTS/CTS – Request to Send / Clear to Send
 Hidden terminal: A kann C wegen begrenzter Funkreichweite nicht hören
• A sendet RTS-Signal an B, und B sendet dann CTS
• Alle anderen möglichen Sender (C) erhalten das CTS-Signal und stellen
ihren Sendevorgang zurück RTS
CTS
A BCTS C

 Exposed terminal (unnötiges Warten, hier durch B bei Senden nach


links)
• C sendet RTS an möglichen anderen Empfänger
• Falls dieser bereit, erhält C das CTS und kann RTS
(unabhängig von B)
übertragen A B C CTS

costel.aldea@unitbv.ro 29
Bluetooth
 drahtlose Ad-hoc-Piconetze (<10m), billige Ein-Chip-Lösung
 offener Standard: IEEE 802.15.1; initiiert von Ericsson, Intel, IBM,
Nokia, Toshiba
 Einsatzgebiete:
• Verbindung von Peripheriegeräten
• Unterstützung von Ad-Hoc-Netzen
• Verbindung verschiedener Netze (z.B. drahtloses Headset mit GSM)
 Frequenzband im 2,4 GHz- Bereich; Integrierte Sicherheitsverfahren
(128-Bit-Verschlüsselung)
 Datenraten:
• 433,9 kBit/s asynchronous-symmetrical
• 723,2 kBit/s / 57,6 kBit/s asynchronous-asymmetrical
• 64 kBit/s synchronous, voice service
• Erweiterungen bis zu 20 Mbit/s (IEEE 802.15.3a: UWB (Ultra Wide
Band))

costel.aldea@unitbv.ro 30
ZigBee
 Zielgruppe: ad-hoc-Netzwerke kleiner und einfacher Geräte und
Sensoren, niedrige Datenraten, Energie-effizient
 Basis: IEEE 802.15.4 Low Rate WPAN – Standardisierung von
Schicht 1 und MAC-Teilschicht
 weitere Spezifikationen durch ZigBee-Konsortium (kommerziell)
 Technische Daten
• Frequenzbereich: 2,4-GHz-Band (16 Kanäle),
ZED
• Sendeleistung: 1 bis 10mW Sendeleistung ZED ZED
• Reichweite: 50 bis 70m ZED
• Datenrate: 250 kBit/s pro Kanal ZED

 Rollen ZR
• ZigBee End Device (ZED) ZED ZED
• ZigBee Router (ZR)
ZR ZC
• ZigBee Coordinator (ZC)
ZED
 Netzwerkstruktur ZED
• Stern-Topologie mit ZEDs
• P2P-Topologie mit ZRs ZED
• maximal 65.000 Geräte pro Cluster ZED ZED
costel.aldea@unitbv.ro ZED
31
RFID – Radio Frequency Identification
Tag
Tag
RFID-
Lesegerät Ta
g
Ta
Lesegerät- Rückstreuungs- g
signal signal
 Klasse-1-Tags:
• bestehen aus Antenne und RFID-Chip
• 96-Bit-Identifikator, kleiner Speicher, passiv
• geringer Preis, lässt sich z.B. auf Produkte aufkleben
 Lesegerät:
• aktiv, leistungsfähig, MAC-Protokolle
• sendet Trägersignal, wird von Tag reflektiert
 Backscatter: Tag überlagert das Trägersignal mit eigenen zu sendenden
Bits  Lesegerät filtert diese Bits aus
 Mehrfachzugriff: modifizierte Version von Slotted ALOHA
costel.aldea@unitbv.ro 32
NFC – Near Field Communication
 kontaktloser Datenaustausch über kürzeste Distanzen (4cm)
• Auflegen/anlegen des Transmitters an Lesegerät erforderlich
 Datenübertragungsrate bis zu 424 kBit/s
 Übertragung
• verbindungslos: passive RFID-Tags
• verbindungsorientiert: aktive Transmitter (z.B. Smartphone)
 mögliche Anwendungen
• Bezahlung per Smartphone oder Smartcard
• Smartphone als Türschlüssel
 Kritik
• Distanz als Sicherheitsfeature ungeeignet (durch große
Antennen bis zu 1m möglich)
• NFC-Sicherheitsmechanismen unzureichend

costel.aldea@unitbv.ro 33
5. Zusammenfassung – LAN-Standardisierung

Sicherungschicht 802.2 Logical Link Control 802.1

Allgem.
Zusammen-
Medium Access 802.1 802.3 802.11 802.15 hänge
Control

VLAN Ether- Wire- Blue-


Bitübertragungs- net less tooth
schicht CSMA/ LAN
CD

costel.aldea@unitbv.ro 34
weiterführende Referenzen

 Tanenbaum, Wetherall (2012): Computernetzwerke, Kapitel 4 – Die


MAC-Teilschicht
 ZigBee: ZigBee Alliance, http://www.zigbee.org
 VLAN: Artikel bei Heise, http://www.heise.de/netze/artikel/VLAN-
Virtuelles-LAN-221621.html

 Vertiefung durch Vorlesung Rechnernetzpraxis


 Vertiefung drahtloser Technologien durch Vorlesung Mobile
Communication und Mobile Computing

costel.aldea@unitbv.ro 35
Gliederung
1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 36
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
4. Netztechnologien 2 (MAN und
WAN)
Schichtenübersicht

Anwendungs-
Anwendungsschicht
schicht

Transport-
Transportschicht
schicht

Vermittlungs-
Vermittlungsschicht
schicht

Sicherungs-
Sicherungs- Logical Link Control (LLC)
schicht Media Access Control (MAC) schicht
Kap. 4

Bitübertragungsschicht Bitübertragungs-
schicht

costel.aldea@unitbv.ro 3
Überblick
 Einordnung im Wesentlichen in OSI-Schichten 1 und 2
 PAN – Personal Area Network / LAN - Local Area Network
• Ausdehnung bis zu einigen Kilometern
• Privates Unternehmen / Privathaushalt als Netzbetreiber
 MAN – Metropolitan Area Network / WAN – Wide Area Network
• weiträumige Ausdehnung, öffentlich zugänglich, dedizierte
Betreiber
• Dienstqualität sehr wichtig (viele konkurrierende
Verkehrsströme)

 hier: Technologien für MAN und WAN


• MAN: Drahtloses Breitband, Token Bus/RPR, Carrier Ethernet
• WAN: Carrier Ethernet, MPLS, SDH, OTN

RPR..Resilient Packet Ring MPLS..Multiprotocol Label Switching SDH..Synchronous


Digital Hierarchy OTN..Optical Transport Networks

costel.aldea@unitbv.ro 4
1. Drahtloses Breitband - WiMAX
 Problem: Kabel-gebundenes Internet sehr teuer, vor allem
in ländlichen Gegenden
 Lösung: drahtlose Breitbandnetze
 Standardisierung: IEEE 802.16 = WiMAX (Worldwide
Interoperability for Microwave Access)
• Frequenzbereich 2 GHz – 66 GHz
• erste Version 2001: stationär, Sichtverbindung nötig
• heute: für mobile Anwendungen mit Fahrzeuggeschwindigkeit
geeignet
• 4G-Technologie mit bis zu 1 GBit/s - verbindet Aspekte von
WLAN und 3G
 Technologien
• OFDM (Orthogonal Frequency-Division Multiplexing)
• MIMO (Multiple Input Multiple Output)

costel.aldea@unitbv.ro 5
WiMAX

mobile
Stationen

Backbone-Netz

IP
3
stationäre
dienstspezifische Konvergenzschicht
Teilnehmer
Luft- schnittstelle allgemeine MAC-Teilschicht
2
Sicherheitsteilschicht
festes WiMAX mobiles WiMAX
OFDM OFDMA 1
costel.aldea@unitbv.ro 6
WiMAX - Bitübertragungsschicht
 OFDMA – Orthogonal Frequency Division Multiple Access
• flexible Aufteilung von OFDM-Unterträgern auf Stationen
 Zeitduplexverfahren TDD (Time Division Duplex)
• Station wechselt zwischen Senden und Empfangen auf einem
Unterträger
Downlink Uplink
Burst

Burst

Burst

Ranging

costel.aldea@unitbv.ro Sicherheitsabstand Zeit 7


WiMAX – Dienstklassen und Rahmenstruktur
 Dienstklassen
1. Konstante Datenrate – z.B. unkomprimiertes VoIP
2. Echtzeit mit variabler Datenrate – z.B. komprimiertes VoIP
3. Nichtechtzeit mit variabler Datenrate – z.B. Übertragung großer
Dateien
4. Best Effort
 Rahmenstruktur

Type Bytes Connection Header


Anforderung Needed ID CRC
Bandbreite:

F
Daten- l
Connection Header
Typ a Length Data CRC
Übertragung: g ID CRC
e s

costel.aldea@unitbv.ro 8
Steigerung der Datenrate: MIMO
h11
 MIMO – Multiple Input Multiple S1 h12 E1
Output h13

 Nutzung mehrerer Sende- und


Empfangsantennen pro Gerät S2 E2
 Signale überlagern sich, durch
Mehrwege-Ausbreitung kleine
Variationen im empfangenen Signal S3 E3

 Kanalmatrix H wird beim


 Empfänger berechnet
  sehr komplex
 bei n Sende- und n Empfangs-
antennen theoretisch n-fache
Kanalkapazität möglich
ܵ݁݊݀݁‫= ݎ݋ݐ݇݁ݒ‬
 Komplexität der Berechnung steigt
(‫ ݎ݋ݐ݇݁ݒݏ݂݃݊ܽ݌݉ܧ‬− ܴܽ‫ܿݏݑ‬ℎ‫)ܪ(ݒ݊ܫ ∙ )ݎ݋ݐ݇݁ݒ‬
überproportional mit n
 Nachteil MIMO: höhere Hardware-
Kosten
costel.aldea@unitbv.ro 9
2. Token-basierte Technologien –
Token Bus IEEE 802.4

 physikalischer Bus, logischer Ring (nur für Token-Weitergabe)

A A C C
V=C V=C V=B V=B
N=D N=D N=A N=A

B B D D
V=D V=D V=A V=A
N=C N=C N=B N=B

 Charakteristika: deterministisch, realzeitfähig, Prioritäten


 Vorläufer mit ähnlichen Eigenschaften: Token Ring (IEEE
802.5)
costel.aldea@unitbv.ro 10
Token Bus: Verwaltungsprotokolle
 Aufnahme neuer Stationen:
• Token-Besitzer sendet periodisch Anfragen
(SOLICIT_SUCCESSOR)
• Station kann „Aufnahmeantrag“ stellen
• Kollisionsbehandlung, falls sich mehrere Stationen melden
 Verlassen des Ringes:
• sende SET_SUCCESSOR an Vorgänger (mit Nachfolgerangabe)
• Vorgänger setzt neuen Nachfolger
 Ausfall einer Station:
• Vorgänger prüft nach Token-Weitergabe, ob gesendet wird oder
Token wiederum weitergegeben wird (ggf. mehrfach)
• falls nicht, sende WHO_FOLLOWS (Nachfolger), übernächste
Station wird dann durch SET_SUCCESSOR zum neuen Nachfolger
• Ausfall des Token-Besitzers: Neuinitialisierung
 Mehrfach-Token (durch zufällige Duplizierung etc.):
• Erkennung bei „unberechtigten“ Sendevorgängen
• freiwilliges Löschen des eigenen Tokens
 Zahlreiche weitere Verwaltungsprotokolle
costel.aldea@unitbv.ro 11
RPR – Resilient Packet Ring
 RPR: Weiterentwicklung von Token Ring / Token Bus für den MAN/WAN-
Bereich (IEEE 802.17)
 Datenraten: 1 GBit/s bis 10 GBit/s
 doppelter Ring (Ringlets) für beide Richtungen mit optischen Verbindungen
 Dienstklassen: real time, near real time, best effort
 Fairness: koordinierte Drosselung aller Datenströme bei Überlastung
 wichtigstes Feature: schnelle Umschaltung auf Ersatzwege bei
Leitungsunterbrechungen (in 50ms)
 Spatial reuse: mehrere gleichzeitige Übertragungsvorgänge pro Ringlet
möglich  bessere Ausnutzung der Übertragungskapazität

ringlet1

S0 S1 S2 S3 Sn-1 Sn

ringlet0

costel.aldea@unitbv.ro gleichzeitige Transfers (spatial reuse) 12


3. Carrier Ethernet
 Ethernet-Technologie hat sich auch im MAN/WAN-Bereich
durchgesetzt und dort andere Technologien (ATM, FDDI, Fibre
Channel) verdrängt
 Gründe: niedrige Kosten, kompatibel zu LAN-Paketen, flexibel,
einfach zu nutzen
 Voraussetzung: Punkt-zu-Punkt-Verbindungen (Connection-oriented
Ethernet)
• kein CSMA/CD
• Wegfall der Längenbeschränkungen
 mit Glasfaserkabeln heute Ethernet-Verbindungen von 10 bis 140km
bei 1 bis 100 GBit/s realisierbar
 weitere Optimierungen (siehe auch Kap. 8):
• Jumborahmen bis 9KB
• Bitübertragung durch 8B/10B-Codierung bzw. 64B/66B-Codierung
mit geringem Overhead

costel.aldea@unitbv.ro 13
Metro Ethernet Networks (MEN)
 Metro Ethernet Networks (MEN) – Ethernet-basierte Dienste im
MAN/WAN-Bereich
 Standardisierung: Metro Ethernet Forum (MEF) und IEEE
• MEF 2001 gegründet, Fokus: Ethernet MAN mit optischen
Medien
• heute: Ausweitung auf WAN-Bereich
– weltweite Ethernet-Dienste
 MEF-Standards enthalten Ethernet-Erweiterungen zu
• Dienste: E-Line (Punkt-zu-Punkt), E-LAN (Mehrpunkt) oder
E-Tree (Punkt-zu-Mehrpunkt)
• Skalierbarkeit: inkrementell skalierbare Datenrate
• Zuverlässigkeit: Unterbrechungen entdecken und schnell
beheben (50ms)
• Quality of Service: Service Level Agreements (SLAs)
– verbindliche Vorgaben für Ende-zu-Ende-Performance
• Service Management: Monitoring, zentrale Steuerung
 verschiedene Transporttechnologien möglich: MPLS, SDH, OTN
costel.aldea@unitbv.ro 14
Metro Ethernet Networks (MEN) - Beispiel
MAN – 20km WAN – 1000km
GBit
Ethernet-
LAN

EVC
UNI
EVC GBit
10 GBit
Ethernet-
Ethernet
LAN
10 km
MPLS-Netz

NNI UNI
GBit
Ethernet- EVC
LAN 10 GBit
Ethernet
10 km

UNI

UNI..User Network Interface


SDH-Netz NNI..Network to Network Interface
costel.aldea@unitbv.ro EVC..Ethernet Virtual Connection 15
Provider Bridging
 Provider Bridges – IEEE 802.1ad QinQ (Stacked VLANs)
 Erweiterung des Ethernet Frames:

Destination Source VLAN VLAN Length Data Pad CRC 802.1Q


Address Address Protocol ID Tag (VLAN)
0x8100

Destination Source VLAN Outer VLAN Inner Length Data Pad CRC
Address Address Protocol ID Tag Protocol ID Tag
0x9100 0x8100 802.1ad QinQ

 Outer Tag und Destination Address werden zum Routing im Provider-


Netz verwendet
 Weiterentwicklung: Provider Backbone Bridges – 802.1ah Mac-in-Mac
 neue Ethernet-Header:
Backbone Header Service Header Customer Header Length Data Pad CRC
(Destination, Source, (Priority, Flags, (Destination, Source,
VLAN Tag) service identifier) VLAN Tag)

costel.aldea@unitbv.ro 16
Dienstgüte bei Carrier Ethernet
 MEF spezifiziert Bandwidth Profiles für Ethernet Virtual Connection
(EVC) = Service Level Agreement (SLA)
• Ingress Bandwidth Profile – Spezifikation für eingehenden
Traffic eines User Network Interface (UNI)
• Egress Bandwidth Profile – Spezifikation für ausgehenden Traffic
an ein UNI
• Committed Information Rate (CIR) – feste Zusage für kritische
Daten
• Excess Information Rate (EIR) – weitere Kapazität für
unkritische Daten
 Traffic Coloring
• Grün: Service Frame liegt innerhalb der SLA = CIR
• Gelb: Service Frame liegt außerhalb der SLA, wird aber auf Best
Effort Basis weitergeleitet = EIR
• Rot: Service Frame wird verworfen
 auch Beschränkungen für Delay, Paketverluste und Jitter können
Bestandteil des SLA sein
costel.aldea@unitbv.ro 17
Exkurs: VPNs
 VPN = Virtual Private Network
 Motivation
• Anbindung entfernter Bürostandorte („Intranet-VPN“)
• Einbindung mobiler Mitarbeiter („Remote-Access-VPN“)
• Einrichten eines Forschungsnetzes (z.B. CERN)
 Funktion
• Einrichten dedizierter privater Kommunikationspfade („Tunnel“)
durch ein öffentliches Weitverkehrsnetz
• meist kombiniert mit Verschlüsselung für Abhörsicherheit
zwischen zwei Zugangspunkten
 Realisierung
• Layer 3 (Vermittlungsschicht): z.B. per IPsec – IP-basierter
Tunnel zwischen 2 Endpunkten (Client und VPN-Gateway) oder
2 Routern
• Layer 2 (Netzwerkschicht):
o Einrichten virtueller LANs (z.B. Carrier Ethernet)
o Einrichten virtueller Pfade durch ein WAN (z.B. Multi
costel.aldea@unitbv.ro Protocol Label Switching – MPLS) 18
4. MPLS – Multiprotocol Label Switching
 Motivation
• Schnelle Weiterleitung, QoS-Garantien
• Entlastung von Routern
• Trennung von Netzwerktraffic (z.B. VPNs, QoS-Klassen)
 Merkmale
• Weiterleitung von Paketen entlang vordefinierter Pfade
(gesteuert durch Labels)
• Forward Equivalence Classes (FEC), d.h. gleiche Behandlung
aller Pakete eines Datenstroms (z. B. Videokonferenz)
• Abbildung auf existierende Netztechnologien möglich bzw.
Implementierung durch spezielle MPLS-Hardware direkt über
Lichtwellenleiter
 MPLS zusammen mit Carrier Ethernet
• Variante 1: MPLS-Router per Carrier Ethernet verbunden
 MPLS over Carrier Ethernet
• Variante 2: Carrier Ethernet als Overlay über optisches MPLS-
Netz realisiert  Carrier Ethernet over MPLS
costel.aldea@unitbv.ro 19
MPLS – Multiprotocol Label Switching (2)

Ingress
Router Egress
Router

1. Virtueller Pfad („Tunnel“) durch das Gesamtnetz wird ermittelt (z.B. mittels IP-Routing)
2. Label Distribution Protocol (LDP) legt Labels für diesen Pfad fest
3. Ingress Router markiert eingehende Pakete gemäß Forward Equivalence Class (FEC) mit
passendem Label
4. Effiziente netzinterne Weiterleitung gemäß vorgegebenem Pfad; dabei Umwandlung
Eingangslabel  Ausgangslabel durch jeden Switch
5. Egress Router entfernt Label und leitet Pakete ins Zielsystem weiter
costel.aldea@unitbv.ro 20
MPLS-Routing - Beispiel
In Out
In Out In Out
(1,4) (2,7)
(1,-) (3,4) (1,5) (3,-)
(1,5) (3,9)
(2,-) (3,5) (1,9) (2,-)
(2,-) (3,5)
3
1
3 1 3 1

2 2
2
5 128.89.25.4 Data 9 128.89.25.4 Data

128.89.25.4 Data 128.89.25.4 Data

costel.aldea@unitbv.ro 21
MPLS-Switches / Layer-3-Switches
 Kombination von Router und Switch
 Zunächst Routing, bei längerer Dauer von Datenströmen ggf.
Durchschalten von Verbindungen auf Basis von MPLS (Multiprotocol
Label Switching)

Schicht 3 Router

Switch
Schicht 2

 Teilweise auch Berücksichtigung von Informationen


der Transportschicht („Layer-4-Switches“)

costel.aldea@unitbv.ro 22
MPLS Transport Profile (MPLS-TP)
 verbindungsorientiertes MPLS, für Transportnetze (Backbone) optimiert
 durch IETF standardisiert, Nachfolger von T-MPLS (ITU-Standard)
 vordefinierte Routen - bidirektional
 QoS-Erweiterungen, Netzwerkmanagement
 weitere Funktionen für Überwachung und Verwaltung des Netzes (in-
band)
 Unterstützung für Netzwerkmanagement-System (NMS)

MPLS-Transportnetz

Skalierbarkeit Multi-Service Quality of Service kostengünstig

Verbin- einheit-
Schich- Traffic geringe
Partitio- beliebiger dungs- Reser- liches
ten Manage- Kom-
nierung Client- orien- vierung Manage-
(Layers) ment plexität
Traffic tiert ment

costel.aldea@unitbv.ro 23
MPLS - Bewertung
 gute Integration mit IP und Ethernet, einfaches Netzmanagement
 es wird ein eigener Header für MPLS eingeführt (zwischen IP-Header
und Header des darunterliegenden Ethernet bzw. anderer Netze);
dadurch wird Unabhängigkeit vom Basisnetz erreicht
(„Multiprotocol“)
Ethernet- MPLS- IP-
Header Header Header … Nutzdaten

 mehrere Anwendungen können zu einer Forward Equivalence Class


(FEC) zusammengefasst werden (z.B. mehrere Telefongespräche
oder Videokonferenzen); daher flexibel und ressourcenschonend
 MPLS-Pfade müssen nicht explizit aufgebaut werden, sondern
werden „on-the-fly“ etabliert, z.B. durch Analyse des Datenstroms
 in der Praxis heute häufig (10/100-)Gigabit Ethernet auf Basis von
Hochleistungsswitches kombiniert mit MPLS im WAN-Bereich im
Einsatz
costel.aldea@unitbv.ro 24
5. SONET / SDH

1 1 1 1 1 1
2 2 2 2 2 2
3 3 3 1 2 1 2 3 3 3
3 4 3 4
4 4 4 4 4 4
 SONET – Synchronous Optical Network, SDH – Synchronous Digital
Hierarchy
• Bündelung mehrerer Datenströme über optische Leiter
• wird im Telefonie-Backbone weltweit eingesetzt
 ISDN-Telefonie: 8000Hz ∙ 8 Bit/Sample = 64 kBit/s
• Idee: jede Telefonverbindung belegt ein Byte pro SONET/SDH-
Rahmen
• Rahmen alle 125µs senden (=1/8000s)
 SONET-Basisrahmen: Block von 810 Byte = STS-1
• Kapazität von 8 ∙ 810 Bit ∙ 8000 ∙ 1/s = 51,84 MBit/s
• 9 Zeilen und 90 Spalten – 3 Spalten Overhead, 87 Spalten Nutzdaten
costel.aldea@unitbv.ro 25
SONET / SDH

 höhere Datenraten durch größere Pakete (Vielfache von STS-1)

STS-1

STS-1

STS-1
 hierarchisches Multiplexing/Demultiplexing

51,8
MBit/s

STS-3
155,5
MBit/s

STS-3
51,8
MBit/s

STS-1
STS-1

STS-1
(STS – Synchronous Transport Signal, OC – Optical Carrier, STM – Synchronous
Transfer Mode, Gross – Brutto-Werte, SPE – Synchronous Payload Envelope,
User – echte Nutzdaten)
costel.aldea@unitbv.ro 26
6. OTN – Optical Transport Network
 Problem SONET/SDH: keine höhere Geschwindigkeit als 40 GBit/s
 OTN - einheitliche Übertragungstechnologie für optische Netze
• Nachfolge-Technologie von SONET/SDH
• kann SONET/SDH-Traffic transportieren
• kann auch anderen Traffic wie Ethernet, ATM oder MPLS
gemischt über eine optische Verbindung übertragen
 standardisiert durch die ITU (G.709)
 Datenübertragung basiert auf DWDM – Dense Wavelength Division
Multiplexing
 unterstützt Datenraten größer als 40 GBit/s Variante Maximale Datenrate
 verbesserte Zuverlässigkeit
OTU-1 2,7 GBit/s
 Funktionen:
• Forward Error Correction OTU-2 10,7 GBit/s
• Frame Mapping OTU-3 43,0 GBit/s
• Multiplexing (DWDM)
OTU-4 112,0 GBit/s
• Management von Pfaden
und Performance
costel.aldea@unitbv.ro 27
OTN-Beispiel

Ethernet 10 GBit/s
1 GBit/s Ethernet

2,5 GBit/s 40 GBit/s


SDH ODU-XC ODU-XC
10 GBit/s Ethernet

MPLS 1 GBit/s
10 GBit/s
ODU-XC 2,5 GBit/s SDH

 Integration verschiedener Technologien auf ODU-XC…Optical Data Unit


eingehenden und ausgehenden Links Cross Connect
 Multiplexing/Demultiplexing verschiedener
Bandbreiten
 keine synchrone Taktung nötig wie bei SDH

costel.aldea@unitbv.ro 28
DWDM – Dense Wavelength Division Multiplexing
 WDM – Wavelength Division
Multiplexing
• Aufteilung der Kanäle auf
Wellenlängen-
verschiedene Wellenlängen Laserleistung abstand 0,8 nm
• Hinzufügen/Trennung und
Verstärkung durch rein optische
Elemente möglich
• durch bessere Sende-
Empfangstechnik können
bestehende Glasfasern höhere Wellen-
Datenraten transportieren  länge
Kosteneffizienz
 CWDM – Coarse Wavelength Division Multiplexing
• breite Trennbereiche zwischen Kanälen, ca. 5 bis 20 Kanäle pro LWL
• kostengünstige Sende-/Empfangstechnik
 DWDM – Dense Wavelength Division Multiplexing
• kleinere Trennbereiche  aufwendigere Sende-/Empfangstechnik
• ca. 60-160 Kanäle pro LWL
• Reichweite: ca. 80–160 km bei 100 GBit/s; bis zu 1 TBit/s theoretisch möglich
costel.aldea@unitbv.ro 29
Zusammenfassung Netztechnologien
Local Metropolitan
Area Network (LAN) Area Network (MAN)
GSM
GPRS
UMTS
LT
WiMAX E
Wireless LAN
802.11 SONET/
NFC
Bluetooth SDH

RFID ZigBee RPR


MPLS
Ethernet
Metro OTN
Ethernet
DSL Carrier
Ethernet

Personal
Area Network (PAN) Wide
costel.aldea@unitbv.ro Area Network (WAN) 30
Weiterführende Referenzen
 WiMAX: Tanenbaum 2012, Abschnitt 4.5 Drahtloses Breitband
 Token Bus: Tanenbaum 2012, Abschnitt 4.2.3 Kollisionsfreie
Protokolle
 RPR: IEEE 802.17 Resilient Packet Ring Working Group,
http://www.ieee802.org/17/
 Carrier Ethernet: Metro Ethernet Forum –
http://metroethernetforum.org
 MPLS: Tanenbaum 2012, Abschnitt 5.6.5 Label Switching und MPLS
 MPLS: MPLS Working Group der IETF,
http://datatracker.ietf.org/wg/mpls/
 OTN: ITU-T Study Group 15, http://www.itu.int/oth/T09/en, OTN-
Tutorial: http://www.itu.int/ITU-
T/studygroups/com15/otn/OTNtutorial.pdf

 Vertiefung in Vorlesung Rechnernetzpraxis

costel.aldea@unitbv.ro 31
Gliederung
1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 32
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
5. Sicherungsschicht
Schichtenübersicht
Anwendungs-
Anwendungsschicht
schicht

Transport
Transportschicht
- schicht

Vermittlungs
Vermittlungsschicht
- schicht

Logical Link Control (LLC) Kap. 5


Sicherungs- Sicherungs-
schicht Media Access Control (MAC) schicht

Bitübertragungs-
Bitübertragungsschicht
schicht

costel.aldea@unitbv.ro 3
1. Sicherungsschicht – Aufgaben
 Kommunikation zwischen Partnern im gleichen Subnetz (z. B. via
Ethernet) bzw. über Punkt-zu-Punkt-Verbindung (z. B. PPP – Point-to-
Point-Protocol bei Internet-Zugang oder via VPN – Virtuelles Privates Netz)

 Funktionalität:
• Bildung von Übertragungsrahmen zur Kontrolle von Prüfsummen
• Fehlerbehandlung (z.B. Verfälschung, Verlust, Reihenfolge, Duplikate)
• Flusskontrolle zur Überlastvermeidung
• Verbindungsverwaltung
• Interface für die Vermittlungsschicht

7-4 7-4

3 Verbindung der 3
Sicherungsschicht
2 2
virtueller Datenpfad
1 1
physikalischer Kanal
costel.aldea@unitbv.ro tatsächlicher Datenpfad 4
Zuverlässigkeitsebenen

 Unbestätigter verbindungsloser Dienst


• durch fehlende Bestätigung gehen Pakete verloren

 Bestätigter verbindungsloser Dienst


• zuverlässiger durch Bestätigung
• Overhead durch Bestätigung

 Bestätigter verbindungsorientierter Dienst


• verbindungsorientiert = Aufbau einer Verbindung vor
der Übertragung
• nummerierte Rahmen
• Garantie, dass der Rahmen ankommt
• Reihenfolge wird beibehalten
• genau einmaliger Empfang möglich

costel.aldea@unitbv.ro 5
Rahmenbildung
 Problem:
• Bitstrom aus der Bitübertragungsschicht strukturieren
• Rahmenstruktur ermöglicht Fehlererkennung und
Fehlerkorrektur auf Bit-Ebene

 Realisierung durch:
1. Bytezahl am Anfang des Rahmens
2. Rahmenbegrenzer auf Sicherungsschicht (Flagbytes, Flagbits)
3. Rahmenbegrenzer auf der Bitübertragungsschicht
4. kombinierte Verfahren, z.B. Ethernet und WiFi: Präambel als Anfang
des Rahmens + Bytezahl für die Länge des Rahmens

 Problem bei Rahmenbegrenzern (Flagbytes, Flagbits):


• Bitmuster des Rahmenbegrenzers muss auch im Payload zulässig sein
 Byte-Stuffing bei Flagbytes (z.B. Point-to-Point-Protokoll)
 Bit-Stuffing bei Flagbits (z.B. HDLC-Protokoll)

costel.aldea@unitbv.ro 6
Bytezahl
Bytezähler

5 1 2 3 4 5 6 7 8 9 8 0 1 2 3 4 5 6 8 7 8 9 0 1 2 3

5 Byte 5 Byte 8 Byte 8 Byte


Rahmen Rahmen Rahmen Rahmen

Fehler

5 1 2 3 4 7 6 7 8 9 8 0 1 2 3 4 5 6 8 7 8 9 0 1 2 3

5 Byte falscher nun eine


Rahmen Rahmen Bytezahl

 Problem: Verfälschung des Bytezählfeldes durch


Übertragungsfehler
costel.aldea@unitbv.ro 7
Bitstuffing
 Ablauf: Füge nach jeder fünften aufeinanderfolgenden „1“ in den
Nutzdaten jeweils eine „0“ ein und entferne diese wieder beim
Empfänger eindeutige Rahmenbegrenzung
Paket

01111110 Daten mit Bitstuffing 01111110

Beispiel:
1111110
01111110
1
101
01
1101
11101
111101
1111101
01111101
001111101
11001111101
1001111101
111001111101
1111001111101
11111001111101
0111111001111101
111111001111101
0
110
1110
111110
11110
100111111001111101
0
01111110
0111111001111101
0111111001111101
00111111001111101
000111111001111101
1111110
00111111001111101
011111101111110
0
00111111001111101
1111110
00111111001111101
1111110
01111110
01111110
001111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
1111110
0
0 00111111001111101 01111110

übertragen als:
1111110
1
01111110
101
01
1101
11101
111101
1111101
01111101
001111101
11001111101
1001111101
111001111101
1111001111101
11111001111101
0111111001111101
111111001111101
10
0
110
1110
111110
11110
0111111001111101
001111110
0111111001111101
0111111001111101
00111111001111101
000111111001111101
1111110
0111111000111111001111101
1111110
0
00111111001111101
1111110
00111111001111101
1111110
01111110
01111110
001111110
00010111110001111101
1111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
1111110
0
001111110
empfangen als:

01111110
101
01
1101
11101
111101
1111101
01111101
001111101
11001111101
1001111101
111001111101
1111001111101
11111001111101
0111111001111101
111111001111101
10
110
1110
1
0
1111110
111110
11110
0
0111111001111101
01111110
0
01111110
0111111001111101
0111111001111101
00111111001111101
000111111001111101
1111110
00111111001111101
1111110
0
00111111001111101
1111110
00111111001111101
1111110
01111110
01111110
0
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
01111110
1111110
0
costel.aldea@unitbv.ro 8
0 00111111001111101 01111110
2. Fehlerbehandlung
• Probleme: Verfälschungen durch thermisches Rauschen, Impulsstörungen,
frequenzabhängige Verzerrung etc. Einzelbitfehler und Bündelfehler
• Fehlerkorrigierende Codes: Redundanz. z.B. bei Satellitenkommunikation

 Beispiel: A-00000 A - 00000


00001
B-00111 10000
00011
C-11001
11000 B - 00111

01111
C - 11001 11111
11101

 Hamming-Distanz d: Minimale Anzahl unterschiedlicher Bits zwischen


zwei Quellcodewörtern; hier d = 3

Anzahl erkennbarer Fehler: d-1, hier also 2


costel.aldea@unitbv.ro
Anzahl korrigierbarer Fehler: (d-1)/2, hier also 1 9
Fehlererkennende Codes

 Paritätssicherung (z.B. gerade Parität):

0001110 1 0001110 1
1110101 1 Zeichenparität 1110101 1
t 1000001 0 t 1001001 0
1100111 1 1100111 1
1011001 0 1011001 0
0000100 0000100
Blockparität

Widerspruch Fehler

Insgesamt: Kreuzsicherung; Einsatz von Varianten


z. B. bei Internet-Protokollen in Software

costel.aldea@unitbv.ro 10
Cyclic Redundancy Check - CRC
Ablauf: Quellwort → dyadische (Bit-weise binäre) Polynomdivision
→ Berechnung einer Sicherungssequenz
Rahmen M als Polynom m-ten Grades: M(x)=a1*xm+a2*xm-1+…+am+1*x0
Beispiel: 110011  x5+x4+x+1
Generatorpolynom G(x) r-ten Grades: G(x)=b1*xr+b2*xr-1+…+br+1*x0
Erstes und letztes Bit müssen ungleich 0 sein
110011 Linksschieben von M(x) um r Stellen
M(x) G(x)
1100110000 / 11001 = 100001 Rest 1001
11001 Sicherungssequenz
0000010000
11001
01001

1100111001 / 11001 = 100001 Rest 0 o.k.


11001
0000011001
11001
costel.aldea@unitbv.ro 00000 liefere 110011 aus 11
CRC Fehlerfall
110011

1100110000 / 11001 = 100001 Rest 1001


11001 Sicherungssequenz
0000010000
11001
01001

1111111000 / 11001 = 101001 Rest 1001 Fehler


11001
0011011
11001 liefere Fehlermeldung
00010000
11001
01001
sehr gute Fehlererkennung, in der Praxis meist mit 32 Bit-Konstante
(CRC-32), z. B. bei Ethernet; Implementierung mittels Schieberegistern
effizient in Hardware.
costel.aldea@unitbv.ro 12
Wahrscheinlichkeit des Erkennens
von Bitfehlern bei CRC
 Rahmen wird mit angehängter Prüfsumme übertragen
 T(x)=xr*M(x)+PS
 Fehlerfall: statt T(x) kommt T(x) + E(x) beim Empfänger an
 jedes 1-Bit in E(x) entspricht einem Fehler
 Einzelbitfehler: E(x)=xi
 i=Position des fehlerhaften Bits
 erkannt, wenn G(x) mindestens zwei Terme hat
 Burstfehler – ganze Folge von Bits gestört
 Polynomcode mit r Prüfbits erkennt alle Burstfehler der Länge ≤ r
 Burstfehler länger als r werden mit einer Wahrscheinlichkeit von
mindestens 1/2r erkannt

costel.aldea@unitbv.ro 13
3. Protokolle

3 FromNetworkLayer 3 ToNetworkLaye
r
2 2
1 ToPhysicalLaye 1 FromPhysicalLayer
r

sender() { frame s; packet receiver() {


buffer; while (true) { frame r; eventType event;
FromNetworkLayer(&buffer); while (true) {
s.info = buffer; wait(&event);
ToPhysicalLayer(s); FromPhysicalLayer(&r);
} ToNetworkLayer(r.info);
} }
}

sehr einfaches Protokoll ohne Fehlerbehandlung und ohne


Flusskontrolle
costel.aldea@unitbv.ro 14
Stop-and-Wait-Protokoll
Frame

• Bestätigte Übertragung, halbduplex


einfache Flusskontrolle
Bestätigung

sender() { frame s; packet


buffer; receiver() { frame r,s;
eventType event; while (true) { eventType event; while
FromNetworkLayer(&buffer); (true) {
s.info = buffer; wait(&event);
ToPhysicalLayer(s); FromPhysicalLayer(&r);
wait(&event); ToNetworkLayer(r.info);
} ToPhysicalLayer(s);
} }
}

Zusätzliche Bestätigung
costel.aldea@unitbv.ro 15
Protokoll mit Fehlerbehandlung
 Ablauf:
• Wiederhole verlorengegangene Nachrichten nach Timeout, sonst sende
nächsten Frame
• Ignoriere entstehende Duplikate Laufnummern 0/1 zur Erkennung

0
0 0
0
0
1
1
Bei Duplex-Betrieb evtl.
1 anhängen der Bestätigungen
an Nutzdaten von
1 Empfänger zu Sender
1 („Huckepack“, „Piggyback“).
1
costel.aldea@unitbv.ro 1 16
Protokoll mit Fehlerbehandlung

sender() { receiver() {
int nextFrame = 0; frame s; int frameExpected = 0;
packet buffer; eventType event; frame r,s; eventType event; while
FromNetworkLayer(&buffer); (true) {
while (true) { s.info = buffer; wait(&event); /*FrameArrival,
s.seq = nextFrame; CRC Error*/
ToPhysicalLayer(s); if (event == FrameArrival) {
StartTimer(s.seq); wait(&event); FromPhysicalLayer(&r);
/*FrameArrival, if (r.seq == FrameExpected) {
CRC Error, Timeout*/ ToNetworkLayer(r.info);
if (event == FrameArrival) { invert(&frameExpected);
FromNetworkLayer(&buffer); }
invert(&nextFrame); ToPhysicalLayer(s);
} }
}
} }
}

liefere nur korrekte Frames aus, aber bestätige alle


Frames
costel.aldea@unitbv.ro 17
4. Schnittstellenereignistypen
– Primitive des Dienstes

Bezeichner besteht aus:

- Dienstname, z.B. Sicherung


(Link, L) Netzwerk (Network, N)
Transport (Transport, T)
Darstellung (Presentation, P)

- Dienstprimitivname, z.B. - Grundform der Dienstleistung:


ConnectionEstablishment (Con) Anforderung (Request, Req)
Data Transfer (Dat) Anzeige (Indication, Ind)
ConnectionRelease (Dis oder Rel) Antwort (Response, Rsp)
ConnectionReset (Res) Bestätigung (Confirmation, Cnf)
ConnectionAbort (Abo)

Bsp.: Schnittstellenereignistyp
„Verbindungsaufbau-Anforderung eines Transportdienstes“:
T_ConReq
costel.aldea@unitbv.ro 18
Dienstbeschreibung durch
Zustandsdiagramme

Instanz 1 (Initiator) Instanz 2 (Responder)


ConCnf,
ConReq ConRsp, ConInd,
DisInd, AboInd1 DisReq AboInd2

DatReq;
DisReq; DisInd oder - ; AboInd1, AboInd2 DatInd

- ; AboInd1, AboInd2

ConReq; ConInd Verbin- ConRsp; ConCnf Verbin-


Ruhe- dung im dung auf-
zustand Aufbau gebaut
DisReq; DisInd

Eingabe Ausgabe
ConReq;
AboInd1
Übergänge der Datenaustausch- und
der Verbindungsabbauphase

costel.aldea@unitbv.ro 19
Dienstbeschreibung durch
Zustandsdiagramme(2)

- keine Eingabe
- Indeterministischer Zustandsautomat mit Spontanübergängen
- Vollständige Beschreibung des Verhaltens, also sämtlicher
Alternativen

Beispiel: ConReq ConInd ConRsp ConCnf ...


AboInd1/2

costel.aldea@unitbv.ro 20
Ein Beispiel im Überblick
 Stop-and-Wait / Alternating
Bit

ODtReq(n) ODtCnf(m) ODtRsp(m) ODtInd(n)

bestätigt
AO Medium O BO

Instanz S Instanz E

UDtReqAB(n) UDtIndBA(g,m) UDtReqBA(m) UDtIndAB(g,n)

unbestätigt
AU Medium U BUU

Bestätigte Datenübertragung über unbestätigten


costel.aldea@unitbv.ro Kommunikationsdienst. gesucht: Instanzverhalten 21
Parameter

UDtReqAB(<n,b>) UDtIndBA(g,<m,b>)

Nutzdaten Kontrollparameter Kontrollparameter für


(Reihenfolge-Kennung) Fehleranzeige (0 = korrekt, 1 =
fehlerhaft)

Angegeben werden: - Zustände Übergänge


- Ein-/Ausgaben
- Datenparameter/-
- variablen

Parameter dienen der Modellvereinfachung (Spezialsprachen: ESTELLE, SDL)

costel.aldea@unitbv.ro 22
Beispiel: Oberer Dienst
 Zieldienst:
1 6 4 3
ODtReq(n ODtCnf(m) ODtRsp( ODtInd(n)
) m)

AO Medium O BO

2
ODtReq(n);
ODtInd(n)
Start- Warten
und Ruhe- auf
5
zustand Response
ODtRsp(m); ODtCnf(m)

costel.aldea@unitbv.ro 23
Beispiel: Unterer Dienst
 Basisdienst:
1 6 4 3
UDtReqAB(n UDtIndBA(g,m) UDtReqBA(m) UDtIndAB(g,n
) )

AU Medium U BU

2
UDtReqAB(n);
UDtIndAB(0,n)
Start- UDtReqAB(n); UDtIndAB(1,x) Warten
und Ruhe- auf
zustand Response
UDtReqBA(m); UDtIndBA(0,m)
UDtReqBA(m); UDtIndBA(1,y)
5

costel.aldea@unitbv.ro 24
Störungsanzeige
Protokollbeschreibung: Instanzablauf-Sender S
 Alternating Bit Protokoll:
1 ODtReq(n) 7 ODtCnf(m) Zugangspunkt Ao

Medium O

Instanz S Falsches Bit


Start-u. UDtIndBA(0,<m,1>); -
Ruhezu- oder UDtIndBA(1,<m,b>); Störung
UDtIndBA(0,<m,1>); stand
2 UDtReqAB(<n,0>)
ODtCnf(m)

ODtReq(n); 5 Fehler =>


Quittung 1
UDtReqAB(<n,0>) Quittung 0 Wiederhole
erwartet erwartet
ODtReq(n);
UDtReqAB(<n,1>) Quittung o.k.
UDtIndBA(0,<m,0>); - UDtIndBA(0,<m,0>);
Ruhe- ODtCnf(m) 6
oder UDtIndBA(1,<m,b>); zustand
UDtReqAB(<n,1>)

3 UDtReqAB(<n,b>) UDtIndBA(g,<m,b>) 4

Medium U

costel.aldea@unitbv.ro Zugangspunkt AU 25
Protokollbeschreibung: Instanzablauf-Empfänger E

5 ODtRsp(m) 4 ODtInd(n) Zugangspunkt A

Medium O
Instanz E UDtIndAB(0,<n,1>);
Start-u. 2 Falsches Bit
ODtRsp(m); Ruhezu- UDtReqBA(<m,1>) 4 Störung
UDtReqBA(<m,1> stand od.
) UDtIndAB(1,<n,b>);
3
-
UDtIndAB(0,<n,0>); Fehler =>
Antwort 1 Antwort 0
ODtInd(n) Wiederhole
erwartet erwartet
UDtIndAB(0,<n,1>);
ODtInd(n) 6 Quittung o.k.
UDtIndAB(0,<n,0>) ; ODtRsp(m);
Ruhe- UDtReqBA(<m,0>)
UDtReqBA(<m,0>)
zustand
od.
UDtIndAB(1,<n,b>); -
7 UDtReqBA(m) UDtIndAB(g,<n,b>)
1
Medium U

Zugangspunkt AU
costel.aldea@unitbv.ro 26
Beispielablauf
AO S AU U BU E BO

ODtReq(XX) UDtReqAB(<XX,0>) UDtIndAB(0,<XX,0>)


ODtInd(XX)
<XX0>
Störanzeige
Störung
UDtIndBA(1,<YY,0> ODtRsp(YY)
UDtReqBA(<YY,0>
) )
<YY0>
Wiederhole

<XX0> UDtIndAB(0,<XX,0>)
UDtReqAB(<XX,0>)
„falsches“ Bit
⇒ Bestätige
<YY0> sofort
UDtReqBA(<YY,0>
)

ODtCnf(YY) UDtIndBA(0,<YY,0>
)
costel.aldea@unitbv.ro 27
Beispielablauf
AO S AU U BU E BO

ODtReq(ZZ) UDtReqAB(<ZZ,1>) <ZZ,1>


UDtIndAB(0.<ZZ,1>) ODtInd(ZZ)

ODtRsp(UU)
UDtReqBA(<UU,1>)
<UU,1>
ODtCnf(UU) UDtIndBA(0,<UU,1>)

korrekter Ablauf

costel.aldea@unitbv.ro 28
Protokollbeispiel: High Level Data Link Control
(HDLC)
 Einsatz: u. a. GSM
 Modi:
• NRM (Normal Response Mode): Polling einer Primärstation
• ABM (Asynchronous Balanced Mode): Gleichberechtigte Partnerstationen
 Bitorientiertes Protokoll:
1 1 1 Variabel 2 1 Byte
01111110 Adresse Steuerung Daten Prüfsumme 01111110

 Rahmenarten:
• Information
• Überwachung (Receive (not) Ready, Reject (go-back-n), Selective
Reject)
• Unnumeriert (Steuerung, Verbindungsverwaltung, Polling)

 Steuerfeld bei Informationsrahmen:


SeqNo = Laufnummer 0..7
1 3 1 3 Byte P/F = Poll/Final für Polling-Steuerung
0 SeqNo P/F AckNo AckNo = Piggyback-Bestätigung
(ähnlich bei Überwachungsrahmen)

• in der Praxis sehr verbreitetes


costel.aldea@unitbv.ro 29
Protokoll
•Vorbild für zahlreiche andere
Protokollbeispiel: Point-to-Point Protocol
(PPP)
 Protokoll der Sicherungsschicht für Internet-Zugang, z.B. über Modem,
ISDN, xDSL oder Kabelmodem etc.
 Protokoll der Sicherungsschicht für Packet over SONET (WAN) und ADSL
 NCP (Network Control Protocol)
• Aushandeln von Optionen auf der Vermittlungsschicht, unabhängig
von dem auf der Vermittlungsschicht benutztem Protokoll
 LCP (Link Control Protocol)
• Verbindungssteuerungsprotokoll zum Verhandeln von Optionen und
Aktivieren, Testen und Beenden von Verbindungen
 Funktionsweise basierend auf HDLC

 Byteorientiertes Protokoll:

1 1
1 1 oder 2 Variabel 2 oder 4 1 Byte
01111110 11111111 00000011 Protokollangabe Nutzdaten Prüfsumme 01111110

Rahmen Adresse Steuerung Rahmen


meist bis CRC-
costel.aldea@unitbv.ro 30
1500 Byte Variante
Protokollbeispiel: Point-to-Point Protocol
(PPP)
 Ablauf bei Internet-Einwahl eines privaten Nutzers:

1. Physikalischer Verbindungsaufbau (z. B. bei Modem) bzw. bestehender Kanal (z. B.


bei DSL oder Kabelmodem)
2. Einsatz von PPP als Link Control Protocol (Protokolltyp: LCP) zur Auswahl bzw.
Aushandlung von Verbindungsparametern auf Schicht 2 (beispielsweise Kompression,
Fehlerbehandlung etc.)
3. Durchführung einer gegenseitigen Authentisierung
4. Einsatz von PPP als Network Control Protocol (Protokolltyp: NCP) zur Auswahl bzw.
Aushandlung von Parametern auf Schicht 3 (beispielsweise Zuordnung einer IP-
Adresse)

 Zustandsdiagramm zum Auf- und Abbau von PPP-Verbindungen


Vereinbaren von Optionen
beider Seiten
Träger Authentifizierung
entdeckt Establish Authenticate erfolgreich

Dead nicht erfolgreich nicht Network


erfolgreich

Träger NCP-Konfiguration
Terminat Open
costel.aldea@unitbv.ro freigeben e fertig 31
ADSL
 Überblick & Protokollstapel
• verbindet Privathaushalte über bestehende Telefonleitung mit dem
Internet
DSLAM
(mit Router)
DSL-
Modem

Teil- Internet
nehmer-
anschluss-
leitung
Ethernet

ATM (Asynchronous Transfer Mode)


• Übertragung von Zellen mit fester Länge
• asynchron = kein kontinuierlicher Bitstrom, nur bei Informationsaustausch
• verbindungsorientiert, dh. jede Zelle hält ID der virtuellen Verbindung im
Header
• Zellenlänge 53 Byte = 48-Byte-Nutzlast + 5-Byte-Header o geringe
Verzögerung bei z.B. Sprachpaketen
costel.aldea@unitbv.ro 32
ADSL
 AAL5 (ATM Adaption Layer 5)
• ermöglicht Abbildung einer Folge von Zellen zum Senden der Daten über
ATM-Netz

 AAL5-Rahmen mit PPP-Nutzdaten (PPPoA – PPP over ATM):

1 oder 2 Variable 0 bis 47 2 2 4 Byte


PPP-Protokoll PPP-Nutzdaten Fülldaten frei Länge CRC

AAL5-Nutzdaten AAL5-
Trailer
• Trailer anstelle eines Headers
• Fülldaten vervollständigen Zellenlänge
• nur PPP-Nutzdaten (keine PPP-Rahmenbildung), da ATM und
AAL5 diese schon haben
• benötigt keine Adresse, da ID der virtuellen Verbindung mit jeder
Zelle übertragen wird
costel.aldea@unitbv.ro 33
Weiterführende Referenzen

 Tanenbaum, Wetherall: Computernetzwerke; Pearson Studium,


2012, Kapitel 3 - Sicherungsschicht

 http://de.wikipedia.org/wiki/Cyclic_Redundancy_Check
(Beispiel und weitere Details zu CRC)

 de.wikipedia.org/wiki/Point-to-Point_Protocol
(Protokollabläufe und zugehörige Beispiele zu PPP)

costel.aldea@unitbv.ro 34
Gliederung
1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 35
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
6. Vermittlung
Schichtenübersicht
Anwendungs-
Anwendungsschicht
schicht

Transport
Transportschicht
- schicht

Vermittlungs
Vermittlungsschicht Kap. 6 - schicht

Sicherungs- Logical Link Control (LLC) Sicherungs-


Media Access Control (MAC)
schicht schicht

Bitübertragungs-
Bitübertragungsschicht
schicht

costel.aldea@unitbv.ro 3
1. Aufgaben der Vermittlungsschicht
 Aufgaben:
• Weiterleitung von Paketen über Zwischenrechner zum Ziel (Routing)
• Wegewahl, Anpassung, Optimierung; Beispiel: IP (Internet Protocol)
• Einheitliche Adressierung, Transportschicht dadurch Subnetz-
unabhängig
4 Transportschicht Router 4’
3c 3c 3c’ 3c’
3 3b 3b 3b’ 3b’
Vermittlungs- 3a 3a’ 3a’
3a
schicht
2 Sicherungsschicht 2 2’ 2’

1 Bitübertragungsschicht 1 1’ 1’

3a: Subnet-Zugriffsschicht: Adressierung, Weiterleitung in homogenen


Netzen
3b: Subnet-Erweiterungsschicht: Anpassung von Formaten und Adressen
3c: Internet-Teilschicht: Kopplung unter einheitlichen Bedingungen
costel.aldea@unitbv.ro 4
Vergleich von Vermittlungskonzepten
verbindungsorientiert verbindungslos
Verbindungs
Ja Nein
-
aufbauphase Nur während
Zieladresse Verbindungs- aufbau, in jedem Paket
danach
Verbindungskennung
Reihenfolgetreue Garantiert Nicht garantiert
Nein, erst durch
Fehlerbehandlung Ja
Transportschich
t
Flusskontrolle Ja Nein
Aushandeln v.
Ja Nein
Qualitätseigen.
Wegewahl beim Aufbau festgelegt dynamisch, adaptiv
Speicher- u. Ver-
Hoch Gering
waltungsaufwand
 verbindungsloses Verfahren bei IP, Verbindungen erst auf Transportschicht
(TCP)
costel.aldea@unitbv.ro 5
2. Wegewahlverfahren
 Global: Gesamte Topologie eines (Teil-)Netzes ist bekannt, alle Router
tauschen regelmäßig Routing-Informationen aus (Link State Routing);
Beispiel aus dem Internet: OSPF (Open Shortest Path First), sehr
verbreitet, Grundprinzip entspricht dem Dijkstra-Algorithmus; adaptives
Verfahren
 Verteilt: Begrenzter Austausch von Weginformationen zwischen
Nachbarn, z.B. im Internet (Distance Vector Routing); Beispiel aus dem
Internet: RIP (Routing Information Protocol); jedoch zu langsame
Konvergenz; veraltet
 Lokal: Kein dynamischer Austausch von Weginformationen
• Hot Potato: Sofort absenden an Weg mit kürzester lokaler
Warteschlange bei Mehrfach-Wegen
• Rückwärtslernen: Ankommende Pakete führen Zähler mit Anzahl
überwundener Zwischenknoten, Verfahren lernt aber nur langsam,
z.B. bei Topologieänderung
• (Selektives) Fluten: Paket an alle Nachbarn (oder Teilmenge)
weiterleiten, Terminierung durch Dekrementieren eines Zählers mit
max. Anzahl der Zwischenrechner ( mbone)
costel.aldea@unitbv.ro 6
Wegewahl: OSPF
 Suche des kürzesten Pfades von X nach Y
• (Länge = Anzahl der Zwischenrechner, Entfernung, Verzögerung,
Kosten etc.)
• Verfahren nach Dijkstra

 Knotenbeschriftung: (Entfernung zur Quelle, Vorgänger) ist


vorläufig/permanent

 Algorithmus
1) X permanent und Arbeitsknoten
2) Bei allen Nachbarn Abstand zu Arbeitsknoten ermitteln und Knoten
vorläufig beschriften, wenn neuer Zustand kleiner als alter, ersetzen
3) Untersuchung aller bisher vorläufig beschrifteten Knoten im Graph,
kleinster wird permanent und Arbeitsknoten
4) Wenn Endknoten permanent, dann terminiere, sonst weiter bei 2)

costel.aldea@unitbv.ro 7
Beispiel OSPF

Endzustand:

B(2,A) 7 C(9,B)

2 2 3
3
2
A F(6,E) D(10,H)
E(4,B)
6 1 2
2

G(5,E) 4 H(8,F)
Rückverfolgung ergibt: DHFEBA  ABEFHD

Erweiterbar auf Mehrfachwege:


•zweitbester Weg: ABEGHD
•drittbester Weg: AGHD, ABCD ...
costel.aldea@unitbv.ro 8
B C B(2,A) 7 C( ,-) B(2,A) 7 C(9,B)
7
2 3 2 2 3 3 2 3
2 3 2 3
2 2 2
A D A F( ,- D( ,-) A F( ,-) D( ,-)
E F E( ,-) ) E(4,B)
6 1 2 2 6 1 2 2 6 1 2 2
G 4 H G(6,A) 4 H G(6,A) 4 H
( (
B(2,A) 7 C(9,B) B(2,A) 7 ,-
C(9,B) B(2,A) 7 C(9,B)
,-)
2 3 ) 2 3
2 3 2 2 3 3 2 3
2 2 2
A F(6,E) D( ,-) A F(6,E) F(6,E)
E(4,B) D( ,-) A E(4,B)
D( ,-)
E(4,B)
6 1 2 2 6 1 2 2 6 1 2 2
G(5,E) 4 H( ,-) G(5,E) 4 H(9,G) G(5,E) 4 H(8,
F)
B(2,A) 7 C(9, B(2,A) 7 C(9,B)
B)
2 2 3 2 2 3 3
2 3 2
A F(6,E) D(10,H) A F(6,E) D(10,H)
E(4,B) E(4,B)
6 1 2 2 6 1 2 2
G(5,E) 4 H(8,F G(5,E) 4 H(8,F
) )

Rückverfolgen der Markierungen ergibt (DHFEBA) Pfad: ABEFHD


Erweiterbar zu Mehrfach-Wegen (zweit-, drittbesten Weg etc.
gleichzeitig vorsehen ⇒ Leistung Fehlertoleranz)
Beispiel: verteiltes Wegewahlverfahren

A B C D E
5 A
A 0 33 6
--6 2 9
--
8
B C
3
B
B 3 0 5 --
5 7
--
A 4 2 C
C 6
-- 5 0 4 2
D
D 2 --
5 4 0 7
2 E
E 8
9
-- --
7 2 7 0
D E
7
Zeitpunkt 2: jeder kennt Entfernung
Zeitpunkt 3: jeder kennt Entfernung
Zeitpunktzum
1: jeder
Nachbarn
kenntund
Entfernung
noch
einen
zumzum Nachbarn und noch
weiter
Nachbarn
zwei weiter

costel.aldea@unitbv.ro 10
Beispiel: verteiltes Wegewahlverfahren
 Prinzip: Schrittweiser Aufbau einer globalen Sicht
 Vertreter: RIP (Routing Information Protocol)
 Probleme:
• Lange Konvergenzzeit
• Inkonsistenzen bei häufigen Topologie-/Laständerungen
• Netzflutung durch periodischen Austausch der Routingtabellen
• Eignung nur für kleine und mittlere Netze

 Hierarchisch: Globale Optimierung innerhalb Teilbereich (z. B. OSPF)


• beschränkter Informationsaustausch zwischen autonomen Systemen
mit BGP (Border Gateway Protocol)
• für große Netze geeignet
5
3 B C F 3
A 4 2 8 2
7 H
2 D E
G 1
costel.aldea@unitbv.ro 11
3. Überlastungsüberwachung
 Überlast:
• Zu viele Pakete in einem (Teil-)Netz
• Übertragungszeit steigt, Leistung fällt
• Behandlung / Vermeidung auf Schicht 3 und 4

 Ziel: Überlastung frühzeitig erkennen und geeignet reagieren

 Prinzipien:
• Routing unter Berücksichtigung des Verkehrs
o Keine festgelegten Gewichtungen für Verbindungen wie zuvor,
sondern auch variable Lastparameter einbeziehen
• Zugangssteuerung
o Keine neue Verbindung aufbauen, falls Überlast entstehen würde

costel.aldea@unitbv.ro 12
Überlastungsüberwachung
• Drosseln des Verkehrs – Kooperation mit Sendern erforderlich
1. Router führen Lastmessungen anhand der Warteschlangenverzögerung
durch:
Lastneu = a ∙ Lastalt + (1 - a) ∙ Lastaktuell
a = 0: sofortige Aktualisierung a > 0: langsamere Anpassung
2. Schwellwertüberschreitung  Sende Choke-Paket (Drosselpaket)
an Sender; dieser muss Übertragung für bestimmte Zeit drosseln
o Nachteil Choke-Paket: zusätzliche Pakete bei Überlast o Alternative: ECN –
Explicit Congestion Notification
- Bei Überlast Pakete kennzeichnen (Bit im Paket-Header)
- Empfänger sendet Überlastungsnachricht an Sender mit dem
Antwortpaket mit
• Lastabwurf: schlimmstenfalls kontrolliertes Wegwerfen von Paketen bei
Überlast; RED (Random Early Detection):
o Zufälliges Wegwerfen bei erhöhtem Warteschlangenfüllstand
o Sender bemerkt Verlust  Transportprotokoll verlangsamt Übertragung
costel.aldea@unitbv.ro 13
4. Dienstgüte

 Quality of Service (QoS): Zusicherungen für die Parameter Datenrate,


Übertragungsverzögerung, Jitter, Verlustrate
• Anforderungen spezifisch für Anwendungsfall, z.B. E-Mail, Telefonie, …

Eingangs-
 Begrenzung der Datenrate (Traffic Shaping) rate
• Leacky Bucket / Token Bucket
 Scheduling der Pakete
• Fairness, z.B. Fair Queuing / Round Robin
Ausgangs-
 Integrierte Dienste (IntServ) rate
• Reservierung (von bspw. Datenrate) entlang des kompletten
Übertragungswegs
• RSVP (Resource Reservation Protocol)
 Differenzierte Dienste (DiffServ)
• Verkehrsklassen unterschiedlicher Priorität, jede Klasse hat eigenes
Weiterleitungsverhalten
• Keine Einrichtung, Ressourcenreservierung, Aushandlung notwendig 
leicht zu implementieren
costel.aldea@unitbv.ro 14
5. Internet Protocol (IP)
 Verbindungslose Übertragung
 bisherige Version: IPv4
 Historisch: Adressvergabe und Routing nach Netzklassen:
• Klassen festgelegt durch die ersten 5 Bit der 32-Bit-Adresse

Class A 0(1) Netz (7) Rechner (24) (0.0.0.0 bis 127.255.255.255)


Class B 1(1) 0(1) Netz (14) Rechner (16) (128.0.0.0 bis 191.255.255.255)
Class C 1(1) 1(1) 0(1) Netz (21) Rechner(8) (192.0.0.0 bis 223.255.255.255)
Class D 1(1) 1(1) 1(1) 0(1) Multicast-Adresse (28) (224.0.0.0 bis 239.255.255.255)
Class E 1(1) 1(1) 1(1) 1(1) 0(1) reserviert (240.0.0.0 bis 255.255.255.255)

• Bestimmte Adressen sind nicht nutzbar


(z.B. 0.0.0.0 (eigenes Interface), …, 127.0.0.1 (Localhost), …,
255.255.255.255 (Multicast))

• IP-Adressvergabe durch Internet Assigned Numbers Authority (IANA)


bzw. deren 5 Regional Internet Registries (RIR)
costel.aldea@unitbv.ro 15
IP: aktuelle Entwicklungen
 aktuell: Classless Inter-Domain Routing (CIDR)
• optimierte Adressvergabe und klassenloses Routing
• flexible Anzahl von Netzwerkbits: <IP-Adresse>/<Anteil
Netzwerkbits> o Beispiel Class B: 141.76.0.0/16
• Aufteilung und Zusammenfassung von Class-X-Netzen möglich; Beispiele:
o MIT gibt Teil seines Class-A-Bereiches an chinesische Uni ab
o Firma kauft Block von 1024 IP-Adressen
(Supernet aus 4 Class-C-Netzen)

 Vergabe ehemals reservierter Adressbereiche durch die IANA für


die öffentliche (globale) Nutzung
(„global“ im Gegensatz zur „privaten“ Nutzung  nächste Folie)

costel.aldea@unitbv.ro 16
IP: Subnetze und private Netze
 flexible Subnetzbildung (Variable Length Subnet Masking - VLSM) ist
Basis für CIDR

 Subnetzmaske („1“-Bits identifizieren den Netzanteil): 255.255.255.0


 entspricht: 11111111.11111111.11111111.00000000
 Kurzschreibweise: /24 (/<Anzahl ununterbrochener 1-Bits von links>)
 größtmögliches Subnetz laut IANA: /8, d.h. 255.0.0.0

 Beispiele:
• 141.76.0.0/16  Fak. Informatik + medizinische Fak. TUD
• 141.76.40.0/22  Subnetz Institut Systemarchitektur (1016 Hosts)
• 141.76.40.190/32  bestimmter Rechner (www.rn.inf.tu-dresden.de)

 Private Adressen - nicht routebar, sondern via NAT (Network Address


Translation) in globale Adressen zu transformieren:
• 1 Class-A-Block: 10.0.0.0/8 (10.0.0.0 - 10.255.255.255)
• 16 Class-B-Blöcke: 172.16.0.0/12 (172.16.0.0 - 172.31.255.255)
• 256 Class-C-Blöcke: 192.168.0.0/16 (192.168.0.0 - 192.168.255.255)
costel.aldea@unitbv.ro 17
Network Address Translation (NAT)
 Aufgabe: Zuordnung privater, nicht routbarer IP-Adressen zu globalen
Adressen; dadurch Einsparung globaler Adressen

 Static NAT: feste Zuordnung, z. B. 192.168.54.3  214.15.23.1

 Dynamic NAT: dynamische Zuordnung der ersten freien globalen IP-


Adresse aus einem Adresspool; Rechner sind dann von außen nicht direkt
anrufbar (Problem bei Voice-over-IP etc.)

 Port Address Translation NAT: zusätzliche Berücksichtigung der TCP-


Portnummern bei der Adressabbildung; Beispiel:
NAT-Box

Quell IP:Port Ziel IP:Port Quell IP:Port Ziel IP:Port

192.168.0.5:5000 170.0.0.1:80 213.0.0.3:6000 170.0.0.1:80


192.168.0.8:5000 170.0.0.1:80 213.0.0.3:6001 170.0.0.1:80
192.168.0.9:5001 170.0.0.1:80 213.0.0.3:6002 170.0.0.1:80
costel.aldea@unitbv.ro 18
IP: Protokollformat (Auszug)
IHL: Header Length (variabel)
Type of Service: Angaben zur gewünschten Dienstqualität
DF: „Don´t Fragment“ – Paket darf nicht zerlegt werden
MF: „More Fragments“ – weitere Fragmente des Pakets folgen
(Fragmentierung gemäß Restriktionen unterliegender Netze –
MTU (Maximum Transfer Unit))
Fragment Offset: Einordnung des aktuellen Fragments
Time to Live: Maximale Lebensdauer (in Sekunden; in der Praxis
jedoch Angabe der max. Anzahl Teilstecken)
Protocol: Angabe des Transportprotokolls
Header Checksum: Fehlerprüfung (nur bezogen auf Header)
Source Address, Destination Address (IP-Adressen)
Options (z.B. Sicherheitslevel, Source Routing zu
Testzwecken, Aufzeichnen der Routen etc.)
costel.aldea@unitbv.ro 19
IP: Routing
 Statisches Routing
• innerhalb von Organisationen und kontrollierten Providernetzen
• häufig bedingt durch Firewalls

 Dynamisches Routing
• verteiltes Wegewahlverfahren mit dynamischer Anpassung an
Topologieänderungen

• OSPF: Open Shortest Path First


o Aufteilung von Netzen in Verwaltungsbereiche, hierarchisches
Verfahren
o Austausch von Wegeinformation innerhalb von Bereichen
(„Intra-Domain-Routing“)

• BGP: Border Gateway Protocol


o Austausch von Wegeinformation zwischen Bereichen („Inter-
Domain-Routing“)
costel.aldea@unitbv.ro o Dabei höheres Abstraktionsniveau 20
IP: Routing
 Beispiel: Aufruf Webseite Fakultät Informatik aus Australien
(traceroute.org / Telstra Australia)
traceroute to www.inf.tu-dresden.de (141.76.2.31) Melbourne
1 vlan250.lon-service6.Melbourne.telstra.net (203.50.2.177)
2 Bundle-POS1.exi-core1.Melbourne.telstra.net (203.50.6.14)
3 Bundle-Ether2.chw-core2.Sydney.telstra.net (203.50.6.1)
Sydney
4 Port-Channel2.oxf-core1.Sydney.telstra.net (203.50.6.2)
5 10GigabitEthernet2-2.syd-core03.Sydney.reach.com (203.50.13.30)
6 static.net.reach.com (202.84.140.157) Hong Kong
7 202.84.251.114 (202.84.251.114) Palo Alto, CA, USA
8 GBLX.peer.sjc02.net.reach.com (134.159.62.110) Falls Church, VA,
9 zr-fra1-te0-0-0-2.x-win.dfn.de (188.1.145.141) USA DFN
10 zr-erl1-te0-0-0-5.x-win.dfn.de (188.1.144.217)
Frankfurt
11 xr-dre1-te1-3.x-win.dfn.de (188.1.144.218)
DFN Erlangen DFN
12 kr-tu-dresden.x-win.dfn.de (188.1.35.26) DFN-Knoten TU Dresden
Dresden
13 141.30.1.182 (141.30.1.182) Dresden, ZIH-Router
14 www.inf.tu-dresden.de (141.76.2.31) Dresden, Fakultät Informatik
costel.aldea@unitbv.ro 21
IP: Routing
 Beispiel: www.inf.tu-dresden.de von Melbourne aus aufrufen
0/8
Reach Hong Kong 141.0.0.0/8 Reach Palo Alto 141.0.0. … DFN Frankfurt
202.84.140.157 202.84.251.114 188.1.145.141

0.0.0.0/0 Telstra: Australischer Telefon- und 141.76.0.0/16


Internet-Provider
DFN Erlangen
Reach: großer Internet-Provider für
Reach Sydney 188.1.144.217
die Region Asien/Pazifik mit mehreren
203.50.13.30 Unterseekabeln; Zentrale in Hong 141.76.0.0/16
0.0.0.0/0 Kong DFN: Deutsches Forschungsnetz …
mit 10-GBit-Ethernet-Backbone
… ZIH: Zentrum für Informationsdienste
0.0.0.0/0 und Hochleistungsrechnen der TU ZIH Dresden
Dresden 141.30.1.182
Telstra INF: Fakultät Informatik
Melbourne
141.76.2.0/24
203.50.6.14
0.0.0.0/0
(Default) 141.76.2.31?
Subnetz 141.76.2.0/24
www.inf.tu- INF-
PC in Melbourne Router
203.50.2.177 dresden.de
costel.aldea@unitbv.ro 141.76.2.31 22
IP: Routing

 Auszug aus Routingtabelle (Fakultät Informatik)


# ip route
C – Connected, S – Static, D – EIGRP (Enhanced Interior Gateway Routing
Protocol), EX – External, O – OSPF (Open Shortest Path First), …
 Statische Routen (meist über Firewall): S 141.76.75.0/24 [1/0] via
141.76.29.65 S 141.76.40.0/22 [1/0] via 141.76.29.33
 Direkt verbundene Routen:
C 141.76.8.0/24 is directly connected, Vlan8
C 141.76.29.80/28 is directly connected, Vlan800
 Dynamische Routen über EIGRP-Routingprotokoll mit ZIH-Router:
D EX 192.168.168.96/28 [170/3072] via 141.30.1.181, 1w0d, Vlan1959 D EX
192.168.168.112/28 [170/3072] via 141.30.1.181, 1w0d, Vlan1959
 Router im ZIH ist Default-Router für alle anderen Adressen: D*EX
0.0.0.0/0 [170/768] via 141.30.1.181, 1w0d, Vlan1959

// [170/3072]: Distanz 170, Metrik Nr. 3072; 1w0d: update 1 week, 0 days ago

costel.aldea@unitbv.ro 23
IP: Hilfsprotokolle
 ICMP: Internet Control Message Protocol
• Fehleranzeigen
• Flusssteuerung (ähnlich „Choke-Pakete“)
• Test auf Erreichbarkeit von Rechnern etc.

 IGMP: Internet Group Management Protocol


• Verwaltung von Multicast-Gruppen zur Realisierung von
Multicast-Strömen

 ARP: Address Resolution Protocol


• Abbildung von IP-Adressen auf Ethernet-Adressen mittels
Broadcast-Anfrage im Ethernet
• Caching vorhandener Adressabbildungen

costel.aldea@unitbv.ro 24
IP: Multicast
 Anmeldung von Teilnehmern bei Multicast-Routern über Internet Group
Management Protocol (IGMP) mit Multicast-Adresse
 Verteilung eines Datenstroms vom Sender baumförmig über Multicast- Router
 effiziente Weiterleitung ohne Redundanz

 Ermittlung des optimalen Baums über Varianten des Dijkstra-Algorithmus


 Regelmäßige Überprüfung der Teilnehmer-Bereitschaft durch Testnachrichten
der Multicast-Router
Empfänger
Sender  224.19.3.56

IGMP

Empfänger

costel.aldea@unitbv.ro 25
IPsec: Sicherheitsmechanismen auf IP-Ebene
 Vertraulichkeit: Sender verschlüsselt IP-Nutzdaten (für TCP, UDP, ICMP
und SNMP universell nutzbar):
• Encryption services  DES, TripleDES oder AES zwischen VPN-
 Partnern (virtual private network)
• Internet Key Management Protocol (IKMP), basierend auf Internet
Security Association and Key Management Protocol (ISAKMP)
 Authentisierung:
• Zielrechner kann IP-Quelladresse überprüfen

 Basisprotokolle:
• Authentication Header (AH) Protocol für integrierte Authentisierung
• Encapsulation Security Payload (ESP) Protocol für Verschlüsselung

 AH and ESP erfordern Quell-/Ziel-Handshake-Routine:


• Aufbau eines logischen Kanals auf der Vermittlungsschicht (Service
Agreement)
• Dieser Kanal ist unidirektional und hat eine Kennung von 32 bit

costel.aldea@unitbv.ro 26
IPv6
 verbesserte IP-Version mit 128-Bit-Adressen (16 Byte)
• Adressraum von 2128 = 3,4*1038 Adressen
• Hexadezimale Notation mit Doppelpunkten
• 8 Blöcke mit einer Länge von jeweils 16 Bit
• 64 Bit Netzadresse, 64 Bit Hostadresse
 • Beispiel: 2017:0eb8:85a3:08d3:1319:8b2e:0370:7344
 Autokonfiguration von IPv6-Adressen (auf Basis der MAC-Adresse)
 spezielle Angaben zu Traffic Classes und Flow Labels im Header vorgesehen;
dadurch verbesserte Unterstützung von Quality of Service, etwa via MPLS
 Optimierungen bzgl. der Datenformate für 64-Bit-Speicherarchitekturen
 vereinfachte und damit effizientere Fehlerbehandlung (wird im
 wesentlichen den OSI-Schichten 2 und 4 überlassen)

 jedoch eher schleppende Einführung in der Praxis (obwohl


Implementierungen und Produkte verfügbar)

costel.aldea@unitbv.ro 27
weiterführende Referenzen
 Tanenbaum, Wetherall: Computernetzwerke; Pearson Studium,
2012, Kapitel 5
• Details zu Routing-Algorithmen
• weiterführende Informationen zu Quality of Service und
Ressourcenreservierung

 de.wikipedia.org/wiki/OSPF
• Einzelheiten zu Link State Advertisements und
Protokollheader

 www.searchnetworking.de/ipv6/
• Aktuelles zu IP Version 6

costel.aldea@unitbv.ro 28
Gliederung
1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 29
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
7.Transport
Schichtenübersicht

Anwendungs-
Anwendungsschicht
schicht

Kap. 7 Transport-
Transportschicht
schicht

Vermittlungs-
Vermittlungsschicht
schicht

Sicherungs- Logical Link Control (LLC)


Sicherungs-
schicht
schicht Media Access Control (MAC)

Bitübertragungs-
Bitübertragungsschicht
schicht

costel.aldea@unitbv.ro 3
1. Transportschicht – Aufgaben
 Zuverlässige Ende-zu-Ende Datenübertragung, auch bei unzuverlässiger
(nicht beeinflussbarer) Vermittlungsschicht eines Netzbetreibers
 Schlüsselposition im Modell zwischen Benutzer und Netzprovider
 Funktionalität:
• Fehlerbehandlung (Ende-zu-Ende im Gegensatz zu Schicht 2)
• Aushandlung von Dienstgüte-Eigenschaften
• Flusskontrolle (ebenfalls Ende-zu-Ende)
Transport-
6-7 6-7
schicht-
dienst-
5 5
Benutzer
Segment
4 Transport- 4 Transport-
instanz instanz Transport-
schicht-
dienst-
3 3 3 Provider

1-2 1-2 1-2

costel.aldea@unitbv.ro 4
Rückblick: Verschachtelung
der bisherigen Nutzdaten

Rahmen- Paket- Segment-


Header Header Header

Segmentnutzdaten

Paketnutzdaten

Rahmennutzdaten

costel.aldea@unitbv.ro 5
Zustandsmodell für Transportdienst

DisReq Verbindung
Sender Ruhe
aufgebaut

ConReq ConCnf

Verbindung DatInd, DatReq


im Aufbau

DisInd Verbindung
Empfänger Ruhe
aufgebaut

ConRsp
ConInd
DatReq, DatInd
Verbindung
im Aufbau
costel.aldea@unitbv.ro 6
Zustandsmodell für Transportdienst

TDisReq, TDisInd Verbindung


Ruhe
aufgebaut

TConReq, TConRsp,
TConInd TConCnf
TDisReq,
TDisInd TDatReq, TDatInd
oder
TExpDatReq,
TExpDatInd
Verbindung
im Aufbau

costel.aldea@unitbv.ro 7
Transportschichtdienste

 Verbindungsorientierter Dienst (a): z.B. TCP (Transmission Control


Protocol)
 Verbindungsloser Dienst (b): z.B. UDP (User Datagram Protocol)

TConReq TConInd
TDatReq TDatInd
TConCnf TConRsp
TDatReq TDatInd
TDatReq TDatInd b

TDatReq

TExpDatReq TExpDatInd

TDisReq TDatInd

TDisInd a
costel.aldea@unitbv.ro 8
2. Elemente von Transportprotokollen -
Adressierung
 TSAP (Transport Service Access Point): Ports (Standardisierte Ports, Well-Known)
 NSAP (Network Service Access Point): beispielsweise IP-Adressen
Host A Host B

Anwendungsschicht
Prozess

TSAP 1208 Transportschicht TSAP 1836


TSAP 1522
Vermittlungsschicht
NSAP NSAP
Bitübertragungs-
und Sicherungsschicht

Szenario einer Transportverbindung:


1. Mailserver-Prozess verbindet sich mit TSAP 1522 auf Host B: wartet auf Anruf (LISTEN)
2. Anwendungsprozess auf Host A sendet E-Mail: verbindet sich mit TSAP 1208
CONNECT mit Quelle: TSAP 1208 und Ziel: TSAP 1522
Aufbau einer Transportverbindung
3. Anwendungsprozess sendet E-Mail
4. Mailserver bestätigt dass E-Mail gesendet wird
5. Freigeben der Transportverbindung
costel.aldea@unitbv.ro 9
Standardisierte Ports (Auszug)
 Festlegung der standardisierten Ports wie bei IP-Adressen
durch IANA (Internet Assigned Numbers Authority):

Port Beschreibung TCP UDP


7 Echo Ja Ja
20, 21 FTP – Datenübertragung, Kontrolle Ja Nein
23 Telnet Ja Nein
25 Simple Mail Transfer Protocol (SMTP) Ja Nein
37 TIME Ja Ja
53 Domain Name System (DNS) Ja Ja
69 Trivial File Transfer Protocol (TFTP) Nein Ja
80 HTTP Ja Nein
110 POP-3 Ja Nein
143 IMAP Ja Ja
443 HTTPS Ja Nein
543 RTSP Ja Nein
631 Internet Printing Protocol (IPP) Ja Ja

costel.aldea@unitbv.ro 10
Aushandlung von Dienstgüte-Eigenschaften

 Wesentliche Dienstgüte-Eigenschaften (QoS – Quality of Service):


• Verbindungsaufbau-Verzögerung (z.B. max. 1s)
• Aufbau-Fehlerwahrscheinlichkeit (z.B. max. 10-4)
• Durchsatz (z.B. min. 8 MBit/s)
• Verzögerung (z.B. max. 100ms)
• Transferfehlerwahrscheinlichkeit (Verletzung von QoS-Parametern
(z.B. max. 10-6))
• Schutz gegen unberechtigtes Mithören/Manipulieren (Verschlüsselung)
• Priorität

 Beispiel der Optionsabsprache bzgl. QoS:

TConReq(TP= 8 MBit/s)
TConInd(TP= 8 MBit/s)

TConCnf(TP= 5 MBit/s) TConRsp(TP= 5 MBit/s)

costel.aldea@unitbv.ro 11
Gesicherter Verbindungsaufbau

 Problem: Duplikat eines Connect Request, während Verbindung


aufgebaut wird
 Lösung: Dreiwege-Handshake (Threeway-Handshake)
altes Duplikat
CR (seq = x) CR (seq = x)

ACK (seq = y, ACK = x) ACK (seq = y, ACK = x)

DATA (seq = x, ACK = y) REJECT (ACK = y)

Normaler Ablauf Ablauf mit Duplikat

 Nutzung: z.B. TCP Verbindungsaufbau und –abbau


 Normaler Ablauf:
• Host 1 sendet CONNECT Request mit Sequenznummer x an Host 2
• Host 2 bestätigt Sequenznummer x mit ACK und sendet eigene
Anfangssequenznummer y
• Host 1 bestätigt Sequenznummer y mit ACK im ersten gesendeten
Datensegment
costel.aldea@unitbv.ro 12
Gesicherter Verbindungsabbau
 Problem: Disconnect Request, während noch Daten unterwegs sind
 Quittierter Abbau (automatisches Disconnect Confirm)

TDisReq TDatReq
DR
TDisInd
?
DC

 Jedoch: Quittung kann verlorengehen


 B ist unsicher, ob A wirklich abbaut  Dreiwege-Handshake:
TDisReq TDatReq
DR
TDisInd

DC

AC

Nun könnte zweite Quittung verlorengehen ...


Jedoch keine weitere Quittierung, sondern lediglich zusätzliche Timer-Überwachung

costel.aldea@unitbv.ro 13
-
3. Flusskontrolle und Fehlerüberwachung
Schiebefensterprotokoll

 Idee: Mehr als 1 Paket unterwegs bis Quittung eintrifft, wegen


Effizienzsteigerung (Laufzeit ist hoch!)  Umfangreichere Laufnummern,
verwaltet durch Schiebefenster des Senders
 Fenstergröße F (Anzahl unbestätigter Pakete):
• Laufnummern 0...F (um Eindeutigkeit zu erreichen)
• F = 1 bei Stop-and-Wait
 Beispiel: Laufzeit z.B. 50 ms  nur ca. 10 Frames/s

0
0
0

1 0 0 0 0 0

1
1

1 1 1 1 1
costel.aldea@unitbv.ro 14
Pipeline-Verarbeitung eines Schiebefensterprotokolls
mit F = 3
0 0 0 0

0
3 1 3 1 3 1 3 1
1 0
2 2 Q1
S0
Q2
S1
S2
Q3
Q0
S3
0 3 2 1 Q1 2 2
3 1 0 0 0 0
2 2
3 1 3 1 3 1 3 1

0 2 2 2 2
1 3 0 0 0 0
0
3 1 3 1 3 1 3 1

2 2 2 2 2
0

3 1

costel.aldea@unitbv.ro
2 15
Fehlerbehandlung bei Schiebefensterprotokollen
00
11111
1 0 000000
F = 5F = 5
2
2222 11111
3
333 Go-back-n: Fehlerhafte Frames durch
444 Empfängerignoriert
Empfänger ignoriert(nicht
(nichtbestätigt),
bestätigt),
5 5 ebenso
ebenso allealle nachfolgenden
nachfolgenden Frames
Frames
 Sender
0  Sender wiederholt alle diese Frames,
wiederholt alle diese Frames,
0 ungünstig
2 ungünstig beibei hoher
hoher Fehlerrate
Fehlerrate
2 2
3
3333333 3 22222222
4
444444 333333
5 4
Wiederholung
44444
55555 5
0
0000 5555
1 0
111 0000
1 2 1
222 111
2
22

costel.aldea@unitbv.ro 16
Fehlerbehandlung bei Schiebefensterprotokollen

00000 F=5
11111 0
000000
2 1 selective repeat: Nur fehlerhafte
222 3 111 Pakete werden erneut gesendet,
3
33 4 nachfolgende korrekte Pakete zuvor
44 5 33 4 gepuffert.
0 4 5
5
2 5 0 gepuffert
0
Wieder-
22 0 0 Sammelquittung
holung 000
Kompromiss zwischen Nachrichten-
1 und Pufferaufwand (beim Empfänger);
1 2 Reihenfolgetreue

Auslastung [%]
80
60 a) b) c) a) Laufzeit == Sendezeit für 1 Rahmen
40 b) Laufzeit == Sendezeit für 3 Rahmen
20 c) Laufzeit == Sendezeit für 5 Rahmen

2 4 6 8 10 Fenstergröße
costel.aldea@unitbv.ro 17
Adaptive Flusskontrolle
 Puffer auf beiden Seiten (für Auslieferung bzw. Übertragswiederholung)
 Dynamische Verwaltungsprotokolle  Fenster-Anpassung an Systemzustand

req(buf=8) A B
Automatische
Anpassung der
ack(buf=4)
Fenstergröße
dat(0) gemäß tatsächlicher
dat(1) Leistung des Netzes:
dat(2)
ack(1,buf=3) Bei TDPU-
dat(3) Durchsatz:d TPDU/s
Timeout und Verweilzeit l, bis
dat(4)
Quittung eintrifft,
dat(2)
ack(4,buf=0) setze Fenster F = d∙l
ack(buf=2)
dat(5)
dat(6)
ack(6,buf=0)
ack(buf=4)
Deadlock
costel.aldea@unitbv.ro 18
4. Transportprotokolle im Internet – UDP

 User Datagram Protocol (UDP):


• verbindungsloses Protokoll, reine IP-Schnittstelle
• Keine: Flusskontrolle, Überlastungsüberwachung, erneute Übertragung
bei Fehlern
• aufsetzen weiterer Protokolle für Echtzeit-Multimedia-Anwendungen: RTP
• einfacher 8-Byte-Header (Adressen, Länge, Prüfsumme, Daten):

2 2 2 2 [Byte]
Source Port Destination Port UDP Length UDP Checksum Payl
Payload

Header + Payload optional

• Ports identifizieren Endpunkte von Quell- und Zielrechner


• ankommende Daten werden an Prozess übergeben, welcher Zielport
zugeordnet ist
o Zuordnung über ein BIND-Primitiv
(gleicher Bindungsprozess wie bei TCP)
• beim Rückversand wird der Source Port in den Destination Port kopiert
costel.aldea@unitbv.ro 19
TCP

 Transmission Control Protocol (TCP):


• zuverlässiges verbindungsorientiertes Protokoll
• beliebige Nachrichtenlänge, als Pakete von max. 64 KB übertragen
• Reihenfolgegarantie, 32-Bit-Folgenummern
• Verbindungsauf-/abbau mit Dreiwege-Quittungsverfahren
• Fenster-basierte Flusskontrolle
• Fehlerbehandlung durch erweitertes Prüfsummenverfahren
(in Software)
 TCP-Struktur (einheitlich für alle Nachrichtentypen):

Quell-Port (16 Bit) Ziel-Port (16 Bit)


Sequenznummer (32 Bit)
Piggyback Acknowledment (32 Bit)
TCP Header length Steuerbits Fenstergröße (16 Bit, variabel)
Prüfsumme urgent Pointer (relativer Bezug zu wichtiger Folgenummer)
Optionsfeld (z.B. Aushandeln der Puffergröße)
DATEN

costel.aldea@unitbv.ro 20
Verbindungsauf- und abbau bei TCP

 Verbindungsaufbau
 x,y zufällig gewählte Sequenznummern
SYN (seq=x, P1=16)
 P1=16 gewünschte Puffergröße 16 kByte
 seq: gesendete Bytes eines Datenstroms
SYN (seq=y, ACK=x+1, P1=16)
 ACK: nächste erwartete Bytes
(seq=x+1, ACK=y+1, P1=16) Verbindung besteht zu den gewünschten
Konditionen
DATA  Verbindung arbeitet vollduplex
 Punkt zu Punkt Verbindung (kein
 Verbindungsabbau Multicast/Broadcast)

DATA
 Final-Bit im TCP Header gesetzt

ACK  Timer gesetzt


 kommt FIN vor Ablauf Timer  Verbindung
FIN wird durch Initiator und Responder getrennt
 läuft Timer vor Eingang von ACK ab, baut
ACK Initiator die Verbindung ab

costel.aldea@unitbv.ro 21
Adaptive Flusskontrolle bei TCP

 Festlegung einer maximalen Fenstergröße (in kBytes, nicht in Paketen)


sowie eines Schwellwerts unterhalb dieses Maximums
 Beginn mit sehr geringer Fenstergröße („Slow Start“), exponentielle
Erhöhung bis zum Schwellwert bei erfolgreich bestätigten Nachrichten,
lineare Erhöhung nach Überschreiten des Schwellwerts bis zum Maximum
 Zurücksetzen der Fenstergröße auf geringen Wert bei Ablauf eines
Timeout, (z.B. bei Paketverlust) während auf Quittung gewartet wird

Fenstergröße

Paketverlust

 dient der Überlastungsüberwachung im Internet

costel.aldea@unitbv.ro 22
TCP-Flusskontrolle: Beispiel

 Die Anzahl nach einer Bestätigung übertragener Daten richtet sich nach Minimum
aus Empfängerfenster und Überlastfenster. Nehmen wir an, dass das Empfängerfenster
groß genug ist, so steigt das Überlastfenster bis zu einem Schwellwert exponentiell an.
Dieser liegt anfangs bei einem beliebigen Startwert
(meist 64 KB), später dann bei 50% des Überlastfensters der letzten Time-out-Zeit.
Danach erfolgt der Anstieg nur noch linear, bis es zur Überlastung oder Erreichen des
Empfängerfensters kommt.

costel.aldea@unitbv.ro 23
5. Programmierung – Berkeley-Sockets

 Basis: Sockets als Programmierschnittstelle der Transportschicht


Primitive Bedeutung
SOCKET Erstellen eines neuen Kommunikationsendpunkts
BIND Verbinden einer lokale Adresse mit dem Socket
LISTEN Ankündigen der Bereitschaft zur Annahme von Verbindungen (gibt
Größe der Warteschlange an)
ACCEPT Aufbau einer passiv eingehenden Verbindung
CONNECT Versucht aktiv eine Verbindung aufzubauen
SEND Senden von Daten über Verbindung
RECEIVE Empfangen von Daten über die Verbindung
CLOSE Freigabe der Verbindung

 Stream Sockets: Realisierung auf Basis von TCP für Datenströme


 Datagram Sockets: UDP-basiert, einfache Datagramme

costel.aldea@unitbv.ro 24
Java Socket auf Server-Seite

 Java unterstützt im Paket java.net die Socket-Programmierung


 Beispiel:

ServerSocket serverSocket = new ServerSocket(port);


// generiere neuen Socket mit bestimmter Portnummer
while (true) {
Socket clientSocket = serverSocket.accept();
// warte auf Nachrichten
InputStream input = clientSocket.getInputStream();
// Datenstrom empfangen
byte[] data = new byte[1024];
// Datenpuffer deklarieren
int numBytes = 0;
// Anzahl der gelesenen Bytes numBytes = input.read(data);
// Daten auslesen
clientSocket.close();
// Verbindung schließen
}

costel.aldea@unitbv.ro 25
6. Firewalls

 Ziel: Blockierung unberechtigter Zugriffe in private Netzwerke auf der


Basis von IP-Adressen (Paketfilter), TCP/IP-Portinformationen (Circuit
Relay) bzw. anwendungsbezogenen Informationen (Application Gateway)

Unternehmensnetzwerk

Internet

Abgesichertes
Äußere Firewall Grenznetz Innere Firewall

costel.aldea@unitbv.ro (DMZ = „Demilitarisierte Zone“, z.B. mit WWW-Server) 26


Details

 Öffentlich zugängliche Dienste (z.B. Web Server, FTP Server für File-Sharing, etc.)
werden in der DMZ vor der eigentlichen Firewall platziert

 Filtermöglichkeiten einer Firewall:


• IP-Quell-/Zieladressen (Paketfilter, Schicht 3)
• Zugelassene / verbotene Protokolle bzw. TCP-Ports, z.B. HTTP, FTP, SMTP
(E-Mail), etc. („Circuit Relay“, Schicht 4)
• Domain Names (Quelle / Ziel)
• beliebige inhaltsbezogene Schlüsselwörter
• ggf. auch anwendungsbezogene Authentisierung („Application Gateway“)

 Schutz vor unberechtigten Remote-Login-Zugriffen, Denial-of-Service-Attacken,


ausführbaren Makros etc.

costel.aldea@unitbv.ro 27
weiterführende Referenzen

 Tanenbaum, Wetherall: Computernetzwerke; Pearson Studium, 2012,


Kapitel 6

 de.wikipedia.org/wiki/TCP, Details zu TCP

 www.warriorsofthe.net, Video “Warriors of the Net” zu Internet-


Protokollen

 Vorlesung „Rechnernetzpraxis“ zur weiteren Vertiefung

costel.aldea@unitbv.ro 28
Gliederung

1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 29
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
8.Performance
Schichtenübersicht

Anwendungs-
Anwendungsschicht
schicht

Transport-
Transportschicht
schicht

Vermittlungs-
Vermittlungsschicht
Kap. 8 schicht

Sicherungs- Logical Link Control (LLC)


Sicherungs-
schicht
schicht Media Access Control (MAC)

Bitübertragungs-
Bitübertragungsschicht
schicht

costel.aldea@unitbv.ro 3

1. Einführung Netzwerkperformance
Beispiel

Sender Switch Router … Router Switch Empf.

Routing,
TCP- Queues
Flusskontrolle Header- Empfangs-
HTTP Overhead
HTTP
puffer
TCP Fairness TCP

IPv4 IPv4 IPv6 IPv6


Über-
Fast Fast 10 GBit lastung GBit GBit GBit
Ethern Ethern Ethernet Ethern Ethern Ethern
et et et et et

Jitter minimale/
maximale
costel.aldea@unitbv.ro Paketgrößen 4
Leistungsprobleme in Rechnernetzen

 Überlastung von Routern


• Datenstau am Router  Pakete verworfen
 Ungleichgewicht der strukturellen Ressourcen
• z.B. Empfänger zu langsam  Pakete werden verworfen
 erneute Übertragung  Reduzierung der Netzwerkleistung
 synchrone Überlastung
• Beispiel Broadcast-Sturm: fehlerhaftes Paket an Broadcast-
Adresse  viele Fehlerantworten zurück
• Beispiel Stromausfall: zeitgleicher Neustart aller Rechner
 Überlast durch DHCP-Server-Abfragen
 mangelhafte Systemabstimmung
 Beispiel: zu wenig Speicher für Flusskontrollfenster zugewiesen
 TCP-Empfang verlangsamt
 Beispiel: TCP-Timer für Retransmit falsch gesetzt
• zu niedrig: Segmente kommen nie an  trotzdem
Belastung des Netzes
• zu hoch: unnötige Verzögerung bei Verlust des Segments
 Jitter
• Laufzeitunterschiede von Paketen - vor allem bei
Echtzeitanwendungen mit Audio und Video problematisch
costel.aldea@unitbv.ro 5
Messung der Netzwerkleistung

 Möglichkeiten: Timer setzen (Dauer bis zur Bestätigung eines


Segments) oder Zähler für Häufigkeiten (verlorene Segmente, Anzahl der
verarbeiteten Bytes)
 zu beachten:
• Samplegröße groß wählen  Durchschnittswert
• repräsentative Samples
o lokale Abhängigkeiten (drahtlos z.B. Abstand)
o zeitliche Abhängigkeiten (Stoßzeiten im Netz)
• Caching/Puffer deaktiviert
• ohne äußere Einflüsse
• Verwendung einer präzisen Computeruhr
• vorsichtiges Extrapolieren von
Ergebnissen
tatsächliche Werte
Extrapolation
Antwort

Messung
zeit

Last
costel.aldea@unitbv.ro 6
Leistungsoptimierung

 viele verschiedene Mechanismen, Techniken und


Konfigurationsmöglichkeiten
• Einsatz je nach Anwendungsszenario
 für Performance-Vergleiche ist Optimierungsziel festzulegen, z.B.
• minimale Paketübertragungszeit
• maximaler Gesamtnetzdurchsatz
• Durchsatz und Übertragungszeit nur für bestimmte Datenklassen
und/oder Sender optimieren
• minimale Verlustrate
• minimaler Jitter
• minimale Paketvertauschungen
 bei Optimierung müssen meist mehrere Schichten gleichzeitig
betrachtet werden  Wechselwirkung von Maßnahmen

costel.aldea@unitbv.ro 7
Performanceverlust anhand eines Beispiels

 gegeben:
 Satellitenkanal – Bitrate 50 kBit/s
 Round-trip delay = 500ms
 Übertragung eines 1000 Bit Rahmens
 zeitlicher Ablauf:
 t = 0ms, Beginn der Übertragung des Senders
 t = 20ms, Beenden der Übertragung des Senders
 t = 270ms, vollständiger Rahmen frühestens beim Empfänger
 t = 520ms, bei optimalen Bedingungen frühestens Bestätigung
beim Sender
 Problem:
 Sender war 96% der Zeit blockiert
 nur 4% der verfügbaren Datenrate wurde genutzt
 Lösung:
 Sender befüllt Kanal solange bis Bestätigung eintrifft
 Pipelining
 Protokollbeispiel: Schiebefensterprotokoll

costel.aldea@unitbv.ro 8
2. Leistungsaspekte Ethernet

 Leistungssteigerung von 10 MBit/s zu 100 GBit/s


(Wiederholung)
• Verkürzung maximaler Kabellängen
• Erhöhen der minimalen Framelänge – Auffüllen kurzer Frames
(Padding)
• Paketaggregation – mehrere kleine Frames in einem Frame
übertragen (Bursting)
• 4B/5B-Codierung oder 8B/10B-Codierung statt Manchester-
Codierung
• höhere Taktrate/Symbolrate
• Jumborahmen

Professur
costel.aldea@unitbv.ro 9
Jumbo-Frames

 proprietäre Ethernet-Erweiterung
• Framegrößen bis zu 9 KB
• werden von Routern verworfen, die diese Erweiterung nicht
unterstützen
• häufig in Forschungsnetzen und anderen kontrollierten Netzen
eingesetzt
 Vorteile
• TCP-Lastkontrolle: schnellerer Anstieg der Datenrate nach
Paketverlust Byte
• weniger Header-Overhead – 5,7% bei 1500 Byte, 1% bei 9000
(bei TCP/IPv4)  4-5% mehr Datendurchsatz
• reduzierte CPU-Last (weniger Pakete zu verarbeiten, weniger
Routing-Entscheidungen, etc.)
 Nachteile
• nur effizient einsetzbar, wenn Ende-zu-Ende-Unterstützung
• CRC-32 nicht robust genug bei großen Frames (>12 KB)
• Delay und Jitter werden leicht erhöht
costel.aldea@unitbv.ro 10
Jumbo-Frames und TCP-Lastkontrolle
MSS MSS = MTU − HTCP
bTCP ≤ 0,7 ⋅
RTT ⋅ eFrame

RTT bTCP in
 durch TCP-Lastkontrolle sinkt TCP-Datenrate
in ms MSS MBit/s
(bTCP) mit Round Trip Time und
Paketverlustrate 50 1460 5,1
 MTU..Maximum Transmission Unit 50 8960 31,7
 MSS..Maximum Segment Size 100 1460 2,5
 RTT..Round Trip Time
100 8960 15,8
 eFrame..Paketverlustrate
150 1460 1,7
Beispiel: 150 8960 10,5
MTU=1500 Byte, TCP/IP-Header=40 Byte,
RTT=50 ms, eFrame =0,1% 200 1460 1,2
200 8960 7,9
1460 ⋅
bTCP ≤ 0,7 ⋅ 8
0,05 ⋅ 0,001 TCP-Datenrate bei 0,1%
Paketverlustrate
MBit
bTCP ≤ 5,174
s
costel.aldea@unitbv.ro 11
Padding / Bursting: Motivation

Ethernet Fast Ethernet Gigabit Ethernet


Maximale Kabellänge d in m 2.500 200 200
Ausbreitungsgeschwindigkeit vphy in m/s 200.000.000 200.000.000 200.000.000
Signallaufzeit τ in s 0,0000125 0,000001 0,000001
minimale Sendezeit ts in s 0,000025 0,000002 0,000002
Bitrate b in Bit/s 10.000.000 100.000.000 1.000.000.000
Minimale Framelänge F in Bit 250 200 2.000
Festlegung für Framelänge in Bit 512 512 4.096
Festlegung für Framelänge in Byte 64 64 512

F d d
ts = τ= ts > 2τ ⇒ F>2 ⋅b
b vphy vphy
 für Halbduplex CSMA/CD benötigt
 Collision Detection funktioniert nur, wenn Sendezeit > 2∙Signallaufzeit
 bei Fast Ethernet maximale Kabellänge verringert
 bei Gigabit Ethernet minimale Framelänge vergrößert

costel.aldea@unitbv.ro 12
Aufbau eines Ethernet Frames

SL: 8 Byte (Preamble, Start of Frame Delimiter)

HEthernet: 14 Byte (Dest, Src, Type)


F (Frame)
P (Payload): 46 46
– 1500 Byte Minimale Größe:
P (Payload): – 1500 Byte Ethernet 64 Byte
GB-Ethernet 512 Byte
TEthernet: 4 Byte (CRC)

IFG: 5 – 12 Byte

Technik IFG
SL Start Limiter
Ethernet 47 Bit
HEthernet Ethernet Header
Fast TEthernet
12 Byte Ethernet Trailer
Ethernet
Gigabit IFG Inter Frame Gap
8 Byte
Ethernet
10GB
5 Byte
Ethernet

costel.aldea@unitbv.ro 13
Berechnung Worst-Case-Effizienz:
Pakete mit P=64 Byte Größe
F..Framegröße, SL..Start Limiter, IFG..Inter Frame Gap
η‫ݎܨ‬am݁ (Effizienz der Frameübertragung): Framegröße / genutzte Zeitscheiben
Fast
Ethernet
8 (Byte
64 12 Cycle) 8 64 12 8 64 12 … 8 64 12
F 64
η Frame = = = 76,2% IFG = 12 Byte
SL + F + IFG 8 + 64 + 12
Gigabit 512
Ethernet 8 64 448 8 … IFG = 8 Byte
Mit Padding
(auf 512 Byte) F 64
η Frame = = = 12,12%
SL + max(F ,512) + IFG 8 + 64 + 448 +
8 =512
Erkennung des Burstings über ver-
tauschte Reihenfolge von Padding
Gigabit und IFG. Das Padding enthält beim IFG = 8 Byte
Bursting einen Extension Header.
Ethernet
<1518
mit Padding
und Bursting 8 64 8 448 8 64 8 8 64 8 8 64 8 8 64 8 … 8 64 8

n⋅F 13 ⋅ 64
η Frame = = = 55,9%
n ⋅ (SL + F + IFG) + 448 13 ⋅ (8 + 64 + 8) +
Extension
geburstete Frames
Header 448 =80

costel.aldea@unitbv.ro 8.13 14
3. Fairness

 Trotz hoher Leistungsanforderungen muss Fairness gewährleistet


sein
• Alle Teilnehmer greifen gleichberechtigt und gleichmäßig auf das
Netzwerk zu

 Beispiel: Transatlantisches Telefonkabel Nr. 14 (TAT-14)


• Finanziert durch Konsortium aus mehreren Providern (z.B. Deutsche
Telekom, Concert, France Telecom, Sprint)
• Fairer Zugriff auf vorhandene Ressourcen für alle Provider

costel.aldea@unitbv.ro 15
Quelle: https://www.tat-14.com/tat14/stations.jsp
Fairness - Algorithmen

 Netzwerkleistung ist abhängig vom Paket-Scheduling-Algorithmus

• FIFO (First-In, First-Out), FCFS (First-Come, First-Served),


Taildrop (Neue Pakete am Ende der Warteschlange einordnen)

Warteschlange

• Round-Robin- 1

Fair-Queueing 2 Round 3 2 1 3 2 1
Robin
Ausgabeleitung
3

Eingabe-Warteschlangen

• Gewichtetes
1
Fair Queueing
2 Fair 2 1 3 3 2 1
Queueing
Ausgabeleitung
3
2x
Eingabe-Warteschlangen
Warteschlange 3 hat 16
costel.aldea@unitbv.ro doppeltes Gewicht
Fairness-Algorithmen (2)

• Prioritätsscheduling – Paketen wird Priorität zugewiesen, FIFO


innerhalb einer Prioritätsklasse
Prioritäten
hoch 1

mittel 2 3 3 3 2 1 1

Ausgabeleitung
niedrig 3

Eingabe-Warteschlangen

• Scheduling anhand von Paketzeitstempel – langsame Pakete


(hoher Rückstand) vor schnellen Paketen
 gleichmäßige Übertragungszeit im gesamten Netz

Langsames Paket Schnelles Paket


(hoher Rückstand) (vor Zeitplan)

Eingabe-Warteschlangen Ausgabeleitung

costel.aldea@unitbv.ro 17
Fairness - Forschung

 Vergleichsmessungen verschiedener
Algorithmen
• First-Come, First-Served (FCFS)
• Elastic Round Robin (ERR) Round-
Robin-Erweiterung mit besseren
Fairness- und Leistungs-
eigenschaften

 Offene Forschungsfragen gemäß


„The Fairness Challenge in Computer
Networks“
• Erweiterungen für Fairness in Multicast-
Quelle: Fair and efficient packet scheduling
und Broadcast-Szenarien using Elastic Round Robin (siehe
Referenzen)
• Erweiterung auf andere QoS-Parameter:
Faire Verwaltung und Steuerung von
Paketverzögerung, Jitter, Verlustrate
costel.aldea@unitbv.ro 18
4. Überlastungsüberwachung –
Gewünschte Bandbreitenzuordnung
 Problem: zu viele Pakete werden ins Netz geschickt  Überlastung des
Netzes
 Vermeidung: Überwachung der Überlastung auf Schichten 3 und 4
 optimiertes Ziel: Bandbreite optimal auf Transportinstanzen im Netz
verteilen
1. Effiziente Senderate
• falsche Annahme: 100 MBit/s-Verbindung auf 4
Transportinstanzen zu je 25 MBit/s verteilen
o knapp unterhalb der Kapazitätsgrenze (<100 MBit/s) treten bei
kurzzeitigen Paketschüben Pufferverluste auf
o Verzögerung steigt durch notwendige Neuübertragung von
Paketen  führt zu noch mehr Last  exponentieller Anstieg
Verzögerung (s)

• Lösung: zuordnen bis Verzögerung stark ansteigt


Bandbreite nur
Beginn der
Last
Überlastung Leistungsvermögen =
Verzögerung

Last (Pakete/s)

costel.aldea@unitbv.ro 19
Gewünschte Bandbreitenzuordnung (2)

2. Max-Min-Fairness: Rate steigt für alle Datenflüsse gleichmäßig an. Wenn


Engpass erreicht wird, wachsen nur restliche Datenflüsse weiter.
(Beispiel für faire Zuteilung: Kanäle mit je 300 MBit/s, 4 Datenflüsse A-D)

R1 200 R2 200 R3 A
A
100 B
B je 100 100
C R4 R5 R6 C
D D
je 100
3. Konvergenz
• Problem: stark schwankende Bandbreitennachfrage im Netz
• Algorithmus zur Überlastungsüberwachung muss möglichst schnell
gegen faire und effiziente Zuordnung konvergieren
Bandbreiten-

1
zuordnung

Datenfluss 1
Datenfluss 3 Datenfluss 2
0,5
Datenfluss 2 hört auf
beginnt
0
1 4 9
costel.aldea@unitbv.ro Zeit (s) 20
Regulierung der Senderate

 beeinflusst von
 1. Flusskontrolle (Empfänger hat zu wenig Puffer)
 Regulierung über Fenster mit variabler Größe
 2. Überlastungsüberwachung (geringe Kapazität des Netzes)
 auf Feedback vom Empfänger reagieren

 Beispiele Überlastungsüberwachung
• TCP klassisch – Paketverlust führt zu „Neustart“ (Slow Start) der
Senderate, Verdopplung bis Schwellwert
• Erweiterung Fast-Retransmit – bei fehlenden Paketen werden
Folgepakete doppelt vom Empfänger bestätigt (Dup-Acks)
 Sender erkennt Dup-Acks und sendet fehlendes Paket vor Ablauf
des Timers für Paketverlust
• Erweiterung TCP-Reno – Fast Recovery: bei Empfang von 3 Dup-
Acks (frühes Zeichen für Paketverlust) wird Congestion Window
halbiert (vermeidet Slow Start)
• FAST TCP – Übertragungsverzögerung (Ende-zu-Ende) wird
gemessen und Datenrate wird angepasst
costel.aldea@unitbv.ro 21
FAST TCP

 Protokoll mit neuem TCP congestion avoidance Algorithmus für schnelle


Netze mit langen Verzögerungen (Long Fat Networks)

 Motivation: TCP-Nachteile:
• geringe Paketverluste sind Voraussetzung für einen kontinuierlich
hohen Datenstrom

 Gegenüber TCP verwendet FAST TCP die Verzögerung des Netzwerks als
Feedback um die Senderate anzupassen  Datenrate bleibt konstant
• RTT (round trip time) – tatsächliche Zeit der Paketübermittlung
• base RTT – Zeit der Paketübermittlung ohne Warteschlangen
• Unterschied beider Werte gibt angenommene Paketanzahl in der
Warteschlange an
• viele Pakete in der Warteschlange  Senderate wird reduziert
• wenige Pakete in der Warteschlange  Senderate wird erhöht

costel.aldea@unitbv.ro 22
TCP-Reno vs. FAST TCP mit 3 Datenströmen

 TCP-Reno

 FAST TCP

Quelle: http://www.cs.rice.edu/~eugeneng/teaching/s04/comp629/papers/JWL04.pdf
costel.aldea@unitbv.ro 23
5. Leistungssteigerung - Hostdesign

 System kann durch Netzwerkoptimierungen nur bis zu einem gewissen


Punkt verbessert werden  zugrunde liegendes Hostdesign optimieren

 Hostgeschwindigkeit (CPU + Speicher) wichtiger als Netzgeschwindigkeit


(Engpass liegt oft beim Host)
 weniger Overhead durch groß gewählte Pakete
• MTU-Pakete sind maximal so groß wie über den Netzpfad ohne
Fragmentierung übertragen werden kann
 weniger Kopiervorgänge der Daten zwischen den Schichten
• Zusammenfassen der Schichten (Integrated Layer Processing),
z.B. TCP+IP
• parallele Operationen (Prüfsummenberechnung während des
Kopiervorgangs, danach Prüfsumme hinten anhängen)
 weniger Kontextwechsel (zwischen Kern- und Benutzerprozessen)
 weniger Timeouts, da unnötige Wiederholungen die Hostressourcen
belasten
 grundsätzlich: Überlastung vermeiden ist besser als Überlastung
beheben
costel.aldea@unitbv.ro 24
Kontextwechsel

 Leistungssteigerung durch Minimierung der Anzahl der Kontextwechsel


zwischen Nutzerbereich und Betriebssystem-Kern
 optimaler Ablauf:
1. Ankommendes Paket verursacht Kontextwechsel von Nutzerbereich in
BS-Kern
2. Wechsel zum Empfangsprozess, um die ankommenden Daten abzugeben
 tatsächlich zusätzliche Kontextwechsel im BS, z.B. wenn
Netzmanager ein Prozess im Nutzerbereich

laufender Benutzerprozess
bei der Ankunft eines Pakets Netzmanager empfangender Prozess

Nutzerbereich

Betriebssystem 1 2 3 4
-Kern
costel.aldea@unitbv.ro 25
Protokolle für den Normalfall optimieren

 Bedingungen für den Normalfall:


• kein Fehlerfall, volles Segment nicht außerhalb der Reihenfolge, kein
Verbindungsaufbau oder –abbau, Empfänger hat ausreichend Puffer
 Test in Transportinstanz prüft auf Normalfall
• Normalfall eingetreten  Wahl der Fast Path Route
 Methoden:
• Prototyp-Header in der Transportinstanz
o Ausnutzung der gleichen Header-Felder von folgenden Segmenten
o Kopieren der Felder aus dem Prototyp-Header und Anpassen der
sich ändernden Felder im Prototyp-Header
• Header-Prediction
o zuerst schnelle Prüfung des Headers, ob dieser den Erwartungen
entspricht
o dadurch bspw. schnelleres Einleiten des Kopiervorgangs
• Puffer-Management (Vermeiden unnötiger Kopiervorgänge)
• Timer-Management durch verkettete Listen von Timer-Ereignissen o
Timer sollen möglichst nicht ablaufen
costel.aldea@unitbv.ro 26
Engpass: Beschränkte Bandbreite

 vor allem bei mobilen Geräten in drahtlosen Netzen anzutreffen

 Lösungen:
• Mechanismen zur Zwischenspeicherung: Web-Caches auf
Anwendungsebene
• Komprimierung der Nutzdaten (JPEG, PDF, …)
• Komprimierung der Header (ROHC – Robust Header Compression)
o TCP/IP Header von 40 Byte auf 3 Byte
o Ausnutzung der gleichen Header-Felder

Source Port Destination Port Robust Header


Sequence Number Checksum
Acknowledgement Number Sequence
Len Unused Window Size Number

Checksum Urgent Pointer ROHC Data

costel.aldea@unitbv.ro 27
Long Fat Networks

 Long Fat Networks = lange Verzögerung (Distanz) + schnelles Netz

 Probleme:
• Sender kann alle Sequenznummern
zyklisch durchlaufen, während immer
noch alte Pakete existieren
• kleine Flusskontrollfenster von alten
Protokollen  niedrige Effizienz
• Verschwendung von Ressourcen bei Go-
Back-N Protokollen  Protokolle mit
selektiven Wiederholungen
• Kommunikationsgeschwindigkeit steigt
schneller als Rechengeschwindigkeit 
weniger Zeit zur Protokollverarbeitung
 Protokolle müssen einfacher werden

costel.aldea@unitbv.ro 28
Bandwidth-Delay-Product

 Multiplikation der Bandbreite mit der Paketumlaufzeit


 Produkt drückt die Kapazität der Leitung vom Sender zum
Empfänger und zurück aus
 Schlussfolgerung: Für eine gute Leistung bei Long Fat Networks
(LFN) sollte das Empfängerfenster mindestens so groß sein wie das
Bandwidth-Delay-Product (BDP)

 Ineffiziente TCP Verbindung über ein Long Fat Network

 Effiziente TCP Verbindung unter Ausnutzung des BDP über ein LFN

costel.aldea@unitbv.ro 29
Lösungen für Long Fat Networks

 kleinere Header  Reduzierung der Verarbeitungszeit


 Felder im Header sollten groß genug sein  löst
Problem der Wiederverwendung von Sequenznummern
während alte Pakete unterwegs sind
 maximale Datengröße so groß, um Software-Overhead zu
reduzieren
 Jumboframes bei Gigabit-Ethernet (max. 9KB)
 Jumbopakete bei IP (IPv4 bis 64KB, IPv6 > 64KB)
 aufgrund hoher Verzögerung Feedbacks vermeiden
 Pakete für Verbindungsanforderung mit Nutzdaten
versehen

costel.aldea@unitbv.ro 30
6. Unterbrechungstolerante Netzwerke
(DTN – disruption-tolerant network)

 bisherige Annahme: Kommunikationspartner sind immer durch


irgendeinen Pfad miteinander verbunden

 in der Praxis: Kommunikationspartner sind nicht ständig erreichbar

 Praxisbeispiel:
Im Jahr 2012 landete der „Curiosity“-Rover auf dem Mars
• Kommunikation mit „Mission Control“ ist nicht durchgehend
 die Erde und der Mars drehen sich
• Daten können nur übertragen werden wenn die Erdbasisstation in
Richtung Mars ausgerichtet ist
 zu dem Zeitpunkt ist der Rover evtl. auf der erdabgewandten
Mars-Seite!
 Mars-Rover nutzt Satelliten (z.B. „Mars Express“), die Daten
zwischenspeichern (d.h. verzögern) und mit der Erdbasisstation
kommunizieren

costel.aldea@unitbv.ro 31
DTN – Hauptideen

 Ende-zu-Ende-Kommunikation ist nicht möglich


 es dürfen auch unzuverlässige Pfade verwendet werden
 Standard-Internet-Protokolle vermeiden
(diese funktionieren ohne Ende-zu-Ende-Pfad sowieso nicht)
 DTN-Protokoll der IETF arbeitet als Brücke zwischen OSI-Schicht 5
und OSI-Schichten 3 und 4

Anwendungsschichten

Bundle-Protokoll
Konvergenz- Konvergenz- DTN
schicht schicht

TCP …
anderes
Internet
IP

 realisiert Zwischenspeicherung sowie Nutzung niederer


Kommunikationsprotokolle (Store-Carry-Forward)
costel.aldea@unitbv.ro 32
DTN – Beispiel

Nachricht
(Bundle)

Kontakt
Kontakt Kontakt
Kontakt
(nutzbare Verbindung) (nutzba
(nutzbare Verbindung)
Nachricht
Bundle wird zwischengespeichert bis re
(Bundle) Satellit in Reichweite ist; Verbind
d.h. bis Kontakt (nutzbare Verbindung)
Bundle wird zwischengespeichertung) Nachricht
bis
hergestellt
Satellit in
istReichweite ist; (Bundle)
d.h. bis Kontakt (nutzbare
Verbindung) hergestellt ist

Relaisstation
Relaisstation Zentrale
Zentrale Relaisstation
Relaisstation

Nachricht
(Bundle)

costel.aldea@unitbv.ro 33
DTN – Bundle-Header

Version
Versi Status
• Bundl on Report
Statesus (7defi
Bit)Report
Class (7 Bit) General
of Service
nieren Class of Flags
Service General Flags

Steuerung
(8(8Bit)
Bit) Informationen
• aInfbstormati
zu
rakteonenQuelzu ( 7 Bit)
i l- und Ziel(7nforBit(7 m
Bit)
) ationen („SR(7C“Biundt)
• Ste
Bundle- Informationen zu Informationen zu
„DST“) Zustellung
• Erfolg eines • Fragmentierung
• Priorität
(äh• Bunnlich dle
t l
UR -ZustelLs auflungden OSIInf-ormatiSchich
Custodian-Wechsels ue
• Blockbildung
onenten z5u, 6
• Custodian-Wechsel
undInformati onen zu
• 7)Empfangsgüte • u.s.w. • u.s.w.
• Erfolg eines P rioritä
• ZusCustodi• elLöschen
ungsan
rung rtlic
des •
v-W he des antwo
Bundles
erechs Bu ndles („Cust Frodagmentiian“) erung
t •
els
• Blockbildung • • Zeite n
Custodi an- sind
Wechsel
(hHeader-Size *

Zustellung
• ier:EmpfSateangsgüllit,teRelaisstati•onu.s.odwer. Zentrale•) su• bjektiu.s.w.v, da von
• Destination (DST)
w• annLöschen * dendls Bune dlgene
das Bu Source (SRC)
es riert wurde* („CreationStat“) ion zu Station
bis wann es zuges el werden sol („Lifetime“)
•Header-Size
Report * * Zus Custodian * Abweichungen möglich
sind

Gültigkeit
Creation Timestamp
Destination (DST) * * Source (SRC) * t
• makroskopisch, da eine ell
Creation
Report * Timestamp Sequence Number *
Custodian * exakte ung
Gül
Lifetime *
Creation Timestamp * Synchronisierung

Messung
unmöglich ist t
i Dictionary
Creation Length
Times • tamp* Custod
Dictionary
Seque iansArray
Byte nce Number * gk
Header-Felder •
(Byte-weise k odiertes Array)
• sind für die Diagnose (Rückmeldung an ei
Lifetime
Creation * und (Header + Payload + Optional Blocks) *
Total Length Mes t
Lifetime sind som m den Absender) des

*: (ASN.1 kodiert; mind. 1 Byte; nur ganze Bytes zulässig)

costel.aldea@unitbv.ro 34
weiterführende Referenzen

 Tanenbaum, Wetherall: Computernetzwerke, Pearson, 2012.


• 5.4.3 Scheduling der Pakete
• 6.3 Überlastungsüberwachung
• 6.6 Leistungsaspekte
• 6.7 Verzögerungstolerante Netzwerke
 Jumbo-Frames
David Murray, Terry Koziniec, Kevin Lee and Michael Dixon (2012). "Large MTUs and internet
performance". 13th IEEE Conference on High Performance Switching and Routing (HPSR
2012).
 Fairness
Kanhere, S.S.; Sethu, H.; Parekh, A.B.; "Fair and efficient packet scheduling using Elastic
Round Robin," IEEE Transactions on Parallel and Distributed Systems, vol.13, no.3, pp.324-
336, Mar 2002
Denda, R.; Banchs, A., Effelsberg, W.; „The Fairness Challenge in Computer Networks,”
Quality of Future Internet Services, Lecture Notes in Computer Science Volume 1922, pp.
208-220, 2000
 Frame-Bursting
Mart Molle, Mohan Kalkunte, Jayant Kadambi, Frame Bursting: A Technique for Scaling
CSMA/CD to Gigabit Speeds, IEEE Network, July/August 1997.
 FAST TCP im Vergleich
Cheng Jin, David X. Wei, Steven H. Low, FAST TCP: Motivation, Architecture, Algorithms,
Performance, Engineering & Applied Science, Caltech.
http://www.cs.rice.edu/~eugeneng/teaching/s04/comp629/papers/JWL04.pdf
 Disruption Tolerant Networks
• RFC 4838  Delay-Tolerant Networking Architecture
• RFC 5050  Bundle Protocol Specification
costel.aldea@unitbv.ro 35
Gliederung

1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 36
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
9.Internetdienste
Schichtenübersicht

Kap. 9 Anwendungs-
Anwendungsschicht
schicht

Transport-
Transportschicht
schicht

Vermittlungs-
Vermittlungsschicht
schicht

Sicherungs- Logical Link Control (LLC)


Sicherungs-
schicht
schicht Media Access Control (MAC)

Bitübertragungs-
Bitübertragungsschicht
schicht

costel.aldea@unitbv.ro 3
Internetdienste - Überblick

E-Mail WWW VoIP

HTML
SMTP

HTTP
IMAP

DNS

DNS
DNS

RTP
SIP
TCP oder UDP

IP

Kapitel 9: DNS, E-Mail, WWW, Content Kapitel 10:


Delivery, Netzwerkmanagement Multimedia-
costel.aldea@unitbv.ro kommunikation 4
1. Domain Name System

Top Level Domain


Root  de
 uk, fr, nl, cz, pl, eu
… com biz edu gov
de uk com  mil
 net
 org, etc.
tu-dresden 


et 
inf

 Abbildung von Namen auf IP-Adressen


 hierarchisches, auf Domänen basierendes Benennungsschema
 replizierte Verzeichnisdatenbanken
 Namensvergabe durch ICANN (Internet Corporation for Assigned
Names and Numbers) - www.icann.org - bzw. durch beauftragte
Unternehmen
costel.aldea@unitbv.ro 5
Resource Records

 zu jeder Domäne gehören entsprechende Resource Records


 typischer Resource Record ist Zuordnung Host  IP-Adresse
 Aufbau: <Domain_name, Time_to_live, Class, Type, Value>
 Beispiel: stargate 86400 IN A 141.76.40.230
Domain_name: primärer Suchschlüssel für DB-Anfragen
Time_to_live: Gültigkeitsdauer in Sekunden (für Caching)
Class: z.B. IN für Internet
Type: Typ des Datensatzes (Beispiele siehe Tabelle)
Value: Semantik ist abhängig vom Type

Typ Bedeutung Wert

NS Nameserver Zuständiger Nameserver für eine Zone

A IPv4-Adresse eines Hosts 32-Bit-Ganzzahl

AAAA IPv6-Adresse eines Hosts 128-Bit-Ganzzahl

PTR Zeiger (Pointer) Alias-Name für eine IP-Adresse

SRV Service Host, der einen bestimmten Dienst (z.B. SIP,


XMPP) für eine Zone anbietet
costel.aldea@unitbv.ro 6
Nameserver

 kein einzelner Nameserver für DNS-Datenbank (single point of failure) 


Einteilung in nicht überlappende Zonen (nicht identisch mit Domäne)

tu-dresden
hier: Informatik-Fakultät
hat eigene Zone
inf et

 pro Zone ein oder mehrere Nameserver


 primärer Nameserver hält die Datenbank
 sekundäre Nameserver spiegeln die Datenbank (Zuverlässigkeit)
Namensauflösung
1. Resolver leitet Anfrage an lokalen Nameserver weiter
2. wenn in Zone des Nameservers  Rückgabe autoritativer Datensatz
• autoritativer Datensatz immer als korrekt angenommen
• zwischengespeicherter Datensatz (Caching) könnte überholt sein
costel.aldea@unitbv.ro 7
Namensauflösung für entfernte Domänen

 wenn Nameserver keine Informationen im Cache hat

iterativ
Root-Nameserver
(a.root-servers.net)

lokaler
fits.cs.vu.nl Nameserv
Absender er EDU-Nameserver
(cs.vu.nl) (a.edu-servers.net)
1: Anfrage

10: robot.cs. UW-Nameserver


washington.edu

rekursiv UWCS-Nameserver

costel.aldea@unitbv.ro 8
2. E-Mail

Port 110
E-Mail
E-Mail (POP3)
Client
Client
SMTP

POP3/
Port 25

IMAP
SMTP
(SMTP) Server

E-Mail
Port 143 Client
 SMTP (Simple Mail Transfer Protocol) (IMAP)
• zuverlässiger Nachrichtentransfer
• Suche nach Ziel-SMTP-Server über DNS (MX Record)
• Weiterleitung und Auslieferung an Ziel-Server
 POP3 (Post Office Protocol)
• Abruf aller E-Mails und Attachments (authentisiert)
• Herunterladen der E-Mail  Entlastung des Servers
 IMAP (Internet Message Access Protocol):
• selektiver Abruf (authentisiert)
• E-Mail bleibt auf Server  Abrufen durch mehrere Clients möglich
costel.aldea@unitbv.ro 9
Nachrichtenformat – RFC 5322

To:
Cc:
Header-Felder
Bcc: weitere Felder:
From: Date, Reply-To, Message-
Sender: Id, In-Reply-To,
References, Keywords,
Received: Subject
Return-Path:
Leerzeile
Text Text
Text Text
Inhalt der Nachricht
nur ASCII erlaubt

costel.aldea@unitbv.ro 10
MIME - Multipurpose Internet Mail Extensions

 neue Header: MIME-Version, Content-Description, Content-Id, Content-


Transfer-Encoding, Content-Type (siehe Tabelle)
 Codierung von Binärdaten in Base64
 jeweils 6 Bit als ASCII-Zeichen übertragen – 33% Overhead
 Quoted Printable Coding
 Nicht-ASCII-Zeichen werden mit „=XX“ codiert (XX = 2
hexadezimale Ziffern)

Typ Untertyp Beschreibung

text plain, html, xml, css Text in verschiedenen Formen

image gif, jpeg, tiff, png Bilder

audio basic, mpeg, mp4 Audiodateien

video mpeg, mp4, quicktime Filme

application octet-stream, pdf, javascript, zip Dateien, die von Anwendungen


erzeugt werden

costel.aldea@unitbv.ro 11
Nachrichtenübertragung mit SMTP - Beispielablauf

S: 220 mail.a.de SMTP service ready


C: HELO alice.a.de
S: 250 OK
C: MAIL FROM: <alice@a.de>
S: 250 sender ok
C: RCPT TO: <bob@b.de>
S: 250 recipient ok
C: DATA
S: 354 Send mail; end with "." on a line by itself
C: From: alice@a.de To:
C: bob@b.de Subject:
C: testmail
C:
C: Hallo, das ist ein Test...
C: .
S: 250 message accepted
C: QUIT
S: 221 closing connection

costel.aldea@unitbv.ro 12
Weiterentwicklung von SMTP

 Nachteile von SMTP:


 keine Authentisierung (anfällig für SPAM)
 Text-basiertes Protokoll (ASCII)  Base64-Codierung nötig
 Übertragung im Klartext (nicht abhörsicher)
 ESMTP (Extended SMTP): neue Funktionen (siehe Tabelle)
Schlüsselwort Bedeutung

AUTH Authentisierung des Clients

BINARYMIME Server akzeptiert binäre Nachrichten

CHUNKING Server akzeptiert große, in Blöcke aufgeteilte Nachrichten

SIZE Überprüft vor dem Senden die Nachrichtengröße

STARTTLS Wechsel zu sicherer Übertragung

UTF8SMTP Internationale Adressen

 Verbindungsaufbau: statt HELO EHLO (Extended Hello)


• abgewiesen: Server agiert als gewöhnlicher SMTP-Server
• akzeptiert: Server antwortet mit Erweiterungen die er akzeptiert
costel.aldea@unitbv.ro 13
IMAP – Internet Message Access Protocol

 IMAP – Zugriff eines Clients auf Mail-Server


 Authentisierung und optionale Verschlüsselung
 umfassende Funktionen zur Verwaltung von Nachrichten und Ordnern
Befehl Beschreibung

CAPABILITY Listet die Fähigkeiten des Servers auf

STARTTLS Beginnt eine sichere Datenübertragung

LOGIN Anmeldung beim Server (Authentisierung)

SELECT Wählt einen Ordner aus

CREATE Erzeugt einen neuen Ordner

LIST Listet die verfügbaren Ordner auf

APPEND Hängt eine Nachricht an einen Ordner an

FETCH Holt Nachrichten aus einem Ordner

SEARCH Sucht Nachrichten in einem Ordner

COPY Legt von einer Nachricht in einem Ordner eine Kopie an

costel.aldea@unitbv.ro 14
3. WWW – World Wide Web

 weltweites Hypertext-System auf Basis des Internet


 logische Verknüpfungen (Links) zwischen Dokumenten

Client/ Dokument
Browser

Bereich 1 Bereich 2 Bereich 3

 Adressierung: URL (Uniform Resource Locator)


• "http://www.rn.inf.tu-dresden.de/index.html"
• Protokoll + DNS-Name des Hostrechners + Pfad
 Protokoll: HTTP (Hypertext Transfer Protocol)
 Sprache: HTML (Hypertext Markup Language)
 XML (eXtensible Markup Language): Typisierte Dokumente

costel.aldea@unitbv.ro 15
Ablauf Abruf einer Webseite

Client DNS- Web-


(Browser) Server Server
DNS A Query
(URI)
Type A: Auflösung
DNS Response URI zu IP-
(IP-Adresse) Adresse;
Ggf. werden weitere
DNS-Server
befragt
A Aufbau einer TCP-Verbindung zu Port 80 des Servers

HTTP GET request


A Aufbereitung
HTM der
HTML-Seite, ggf.
HTTP response
An Zugriff auf
mit HTML-
Anwendungslogik
und
Inhalt
und Datenbanken
Abbau der TCP-Verbindung

costel.aldea@unitbv.ro 16
Webserver

 Zugriffsablauf aus Sicht des Webservers


1. Namen der Webseite auflösen (z.B. /index.html anfügen)
2. Zugriffskontrolle auf der Webseite durchführen (.htaccess)
3. Cache prüfen
4. Datei (von der Festplatte) abrufen bzw. bei dynamischen
Inhalten vom Programm erzeugen lassen Rest der Antwort
5. festlegen (z.B. MIME-Typ) Antwort an Client übergeben
6. Eintrag in Server-Log vornehmen
7.
 Verknüpfung mit Folge-Requests über Cookies möglich
 bei Client gespeichert, wird mit Request mitgesendet

Thread
Festplatte
Thread
Client … …
Anfrage …
Front-End Cache Festplatte
Antwort Thread
costel.aldea@unitbv.ro 17
HTTP – Hypertext Transfer Protocol

 Abrufen von Ressourcen (Webseiten, Anwendungsdaten etc.) über


Folge von HTTP-Request/Response-Nachrichten
 dabei Aufrechterhaltung einer ggf. längerfristigen TCP-Verbindung
(“Keep-Alive”)
 Pipelining und somit Parallelverarbeitung mehrerer Requests möglich
(z.B. Download einer Webseite mit mehreren eingebetteten Bildern)

GET Anforderung einer Ressource (Webseite)

HEAD Wie GET, aber nur Statusanfrage ohne Nutzdatenübertragung, z.B.


zum Ermitteln des Datenvolumens oder der Kodierungsformate von
Webseiten
POST Überträgt den Nachrichteninhalt zur Ressource, z.B. zum Transfer
komplexer Formulardaten (HTML Forms) an den Server
PUT Macht den übertragenen Inhalt unter einer angegebenen URL auf dem
Server verfügbar
DELETE Löscht die spezifizierte Ressource

OPTIONS Statusanfrage nach Kommunikationsoptionen beim Server (z.B. nach


angebotenen Methoden / Operationen)
costel.aldea@unitbv.ro 18
HTTP GET

Webbrowser
<html>
<head>
<title>Example.com</title>

Webserver
<link rel="stylesheet" href="main.css">
</head>
<body>
<img src="banner.jpg" />
<h1 class="center">Welcome!</h1>
<br/>
... 2 1

Nach dem Laden des Dokuments werden


css
weitere Darstellungs-
2
informationen angefordert
jpg

costel.aldea@unitbv.ro 19
HTTP POST

POST /cgi/login HTTP/1.1\r\n Host: www.webmailer.ws\r\n


Connection: Keep-Alive\r\n Accept-Encoding: gzip\r\n
Accept: text/xml,application/xml,text/html,*/*\r\n
Accept-Language: en-gb\r\n
User-Agent: Mozilla\r\n
Content-type: application/x-www-form-urlencoded\r\n
Content-length: 41 \r\n
\r\n login=me@webmailer.ws&password=pass123
Übertragung
von HTML-
Webbrowser

Webserver
Formulardaten

HTTP/1.1 200 OK\r\n


Date: Fri, 12 Jan … GMT\r\n
Server: Apache/… (Unix) PHP/…\r Last-Modified: Wed, 26 Nov …
GM Content-Encoding: gzip\r\n Content-Length: 1922\r\n
Content-Type: text/html\r\n

Connection: Keep-Alive\r\n
Keep-Alive:
\r\n timeout=5, max=1024\r\n
.

HTML-Inhalt . . . ...........}yw......9....n.....5.{d[I.z.....{{|..X..K... ..)...o.


Gzip-kodierter )..dmv...K(..`.......O.

costel.aldea@unitbv.ro 20
HTML - Beispiel
<!DOCTYPE html PUBLIC ...>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">

<head>
<title>Beispielseite f&uuml;r Rechnernetze </title>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1" />
<link href="style.css" type="text/css" rel="stylesheet" />
</head>

<body>
<div id="kopfbereich">
<p>Rechnernetze</p>
</div>
<div id="inhalt">
<h1>Willkommen bei Rechnernetze</h1>
<p>Die Lehrveranstaltung gliedert sich in 12 Kapitel:</p>
<ul>
<li>1. Einf&uuml;hrung: <a href="../pdf/01_Einfuehrung.pdf">PDF</a></li>
<li>2. Bit&uuml;bertragungsschicht: <a href="../pdf/02_Bituebertragung.pdf">PDF</a></li>
...
<li>12. Mobile Computing: <a href="../pdf/12_Mobile_Computing.pdf">PDF</a></li>
</ul>
</body>
</html>
costel.aldea@unitbv.ro 21
von HTML 1.0 zu HTML 5

 HTML 1.0: Hyperlinks, Bilder Listen


Enhanced HTML  später dazu gekommen: Formulare,
Tabellen, Einbettung von Objekten,
Cascading Style Sheets Stylesheets, Skriptsprachen
 HTML 5.0: zusätzlich Integration Audio und
Video, Vektorgrafiken, XML-Darstellung,
JavaScript APIs Browserspeicher, Canvas (Zeichenflächen)
 verbesserte Layout- und
Animationsunterstützung mit CSS 3
 standardisierte Programmierschnittstellen
• Web Storage für Client-seitige
Datenspeicherung
• Web Workers für parallele,
kostenintensive Tasks
• JavaScript Geolocation API für
Lokalisierung mobiler Nutzer

costel.aldea@unitbv.ro 22
HTML5: Erweiterte Dokumentenstruktur

Website  <header>: Globale Definitionen, z.B.


<header> für Import-Spezifikationen und für
Navigation, Logo
<section>
<header>  <section>: Abschnitte zur
Gruppierung
<nav> <article>

<aside>  <article>: Eigenständiger


Inhaltsbereich, z.B. für Blog-Eintrag
<footer> oder Nachrichtenbeitrag

<section>  <footer>: Metadaten, beispielsweise


… zu Autor oder Copyright

<footer>  <nav>: Navigationsbereich, z.B. für


globale Links

 <aside>: Querverweise oder


ergänzende Informationen zu einer
costel.aldea@unitbv.ro Seite 23
HTML5: Audio- und Videounterstützung

 Größe und Bedienelemente <video width="320" height="240" controls>


 alternative Videoformate
• <source src="movie.mp4" type="video/mp4">
• <source src="movie.ogg" type="video/ogg">
 Manipulation von <video> und <audio> durch JavaScript
• Abspielen(), Bildgröße(), …

Beispiel:
function playPause()
{
if (myVideo.paused)
myVideo.play(); else
myVideo.pause();
}

 Untertitel
• <track src="subtitles_en.vtt" kind="subtitles" srclang="en"/>
• <track src="subtitles_de.vtt" kind="subtitles" srclang="de"/>
costel.aldea@unitbv.ro 24
Dynamische Webseiten

 CGI (Common Gateway Interface)


 standardisierte Schnittstelle für Webserver und Backend-
Programme und –Skripts
 Eingabe im Formular Senden  erzeugen der HTML-Seite 
Antwort
 PHP (PHP: Hypertext Preprocessor)
 Webserver muss PHP interpretieren
 eingebettete Skripts in HTML-Seiten
 JavaScript
 höhere Programmiersprache zur Entwicklung interaktiver Webseiten

1
Webseite Programm 2
3
DB
4 6
5
Programm Programm
7

Webbrowser Webserver
costel.aldea@unitbv.ro 25
4. Content Delivery

 Content Delivery = Verteilung von Inhalten (Webseiten, Filme,


Musik, Programme) im WWW
 stark steigende Nachfrage
 ca. 10% des Internetverkehrs allein YouTube-Videos
 Popularität von Webseiten stark ungleich verteilt (Zipf-Verteilung)
 wenige Seiten sehr populär – starke Last auf den Servern
 sehr viele Seiten kaum Zugriffe – Server nicht ausgelastet
 Popularitätsspitzen durch aktuelle Ereignisse
 z.B. starke Nachfrage von Nachrichtenseiten nach Erdbeben
 Lösungen
• Serverfarmen
• Webproxys
• CDN (Content Distribution Network)
o Verteilnetz von Servern an verschiedenen Orten
• P2P-Netz (Peer-to-Peer)
o direkte Verteilung von Inhalten durch Overlay-Netz zwischen
Peers

costel.aldea@unitbv.ro 26
Serverfarmen

 Anwendung: Beschleunigung der Verarbeitung von populären Webseiten


 Schwierigkeit: Serverfarm als einzelne logische Webseite darstellen
 Lösungen:
 DNS-Verteilung der Anfragen
 Frontend-Server führt Lastausgleich (Load Balancing) durch

Lastausgleich
über die Server

… Internetzugang
Backend-DB

Frontend

Clients Serverfarm Server

costel.aldea@unitbv.ro 27
Webproxys

 Caching: Verringerung der Antwortzeit und Reduzierung der


Netzwerklast
 Caching durch den Browser
 Webproxys
• mehrere Benutzer teilen sich einen Cache
• keine Wirkung bei verschlüsseltem Datenverkehr,
authentifizierungspflichtigen Seiten, nicht speicherbaren Seiten,
dynamischen Inhalten
• zusätzliche Vorteile: Filterung, Privatsphäre und Anonymität

Organisation Internet
Browser-
Cache
Proxy-

… Cache

Browser-
Cache
Server
Clients
costel.aldea@unitbv.ro 28
Content-Delivery-Netze

 Anwendung: extrem populäre Webseiten, Inhalt wird global bereitgestellt


 Provider legt Kopie des Inhalts an mehreren Knoten (Orten) ab
 Client soll möglichst nächstgelegen Knoten nutzen
 Vorteile: Erweiterbarkeit, hohe Leistung, Minimierung der Gesamtlast
 eigene DNS-Server für Zuordnung von Requests zu richtigem CDN-Knoten

ursprünglicher
CDN-Server
Verteilung auf
CDN-Knoten CDN-Knoten
(mirror)

Sydney Boston Amsterdam

costel.aldea@unitbv.ro weltweite Clients 29


Peer-to-Peer-Netze – Beispiel BitTorrent

 Torrent (Content-Beschreibung): wird von Content-Provider erzeugt


und von Content-Consumer auf Webseiten gesucht
 Torrent-Datei beinhaltet Adresse des Trackers und Liste von
Segmenten der Datei (Chunks)
 Tracker: Server der die Liste aller Peers (Swarm) verwaltet die den
Inhalt aktiv nutzen
 Swarm: Mitglieder kontaktieren Tracker regelmäßig über Aktivitäten
 Seeder: Peers mit allen Segmenten des Inhalts
 Leecher: Peers die herunterladen ohne selbst Segmente
bereitzustellen

Tracker
Liste der
Peers
Chunks
Torrent-
Datei

Web-Server
costel.aldea@unitbv.ro 30
5. Netzwerkmanagement
 Ziel: Planung, Überwachung und Koordinierung der Ressourcen eines
Rechnernetzes

 Managementbereiche:
zu verwaltende Ressourcen Managementbereich

Anwendung Anwendung Anwendungsmanagement

Anwendung

Daten- Informationsmanagement
Daten-
bestand bestand

Netz- und Systemressourcen

Workstation Host PC Systemmanagement

Kommunikationsnetz
Kommunikationshardware: Bridges,
Router, Netzwerkmanagement
Kommunikationssoftware:
Protokollimplementierungen…
costel.aldea@unitbv.ro 31
Klassifikation und Model

 Klassifikation:
• Konfigurationsmanagement (z. B. Netzstruktur)
• Fehlermanagement (z. B. bzgl. Transportprotokoll)
• Leistungsmanagement (z.B. Durchsatzmessung)
• Sicherheitsmanagement (z. B. Verschlüsselungsvarianten)
• Abrechnungsmanagement (z. B. bei Mobilfunk)
• Änderungsmanagement (z. B. bzgl. Systemanpassung)
• Dienstemanagement (z. B. bzgl. Dienstqualität)

 Model:

Manager Operation
Managed Ressource
Object (z.B. Drucker)
Meldung

Agent
MIB = Management Information Base
costel.aldea@unitbv.ro 32
SNMP –
Simple Network Management Protocol

GetRequest
Manager GetNextRequest Agent

GetBulkRequest
SNMP SNMP
GetResponse
UDP UDP
SetRequest
IP IP
Trap
Ethernet Ethernet

 meist für lokale Netze im Einsatz


• Alternative: CMIP (Common Management Information Protocol)
für Weitverkehrsnetze
 zahlreiche Werkzeuge (insbesondere Management-Plattformen) und
Erweiterungen, etwa für Authentisierung und Verschlüsselung
 Einsatzbeispiele: Abruf der Fenstergröße (Get), schrittweises Auslesen
einer Routingtabelle (GetNext), komplettes Lesen einer Tabelle
(GetBulk), Änderung einer Puffergröße (Set), Alarmmeldung bei
Pufferüberlauf (Trap)
costel.aldea@unitbv.ro 33
Weiterführende Referenzen

 Tanenbaum, Wetherall: Computernetzwerke, 5. Auflage, Pearson,


2012.
Kapitel 7: Die Anwendungsschicht

 Vertiefung durch Vorlesung „Internet and Web Applications“


 AJAX, Comet, Web-Suche, Semantic Web, File Sharing, …

costel.aldea@unitbv.ro 34
Gliederung

1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 35
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
10.Multimediakommunikation
Schichtenübersicht

Anwendungs-
Anwendungsschicht
schicht
Kap. 10
Transport-
Transportschicht
schicht

Vermittlungs-
Vermittlungsschicht
schicht

Sicherungs- Logical Link Control (LLC)


Sicherungs-
schicht
schicht Media Access Control (MAC)

Bitübertragungs-
Bitübertragungsschicht
schicht

costel.aldea@unitbv.ro 3
1. Einführung – Multimediakommunikation

 Definition: Audio und Video über das Internet (IP) in Echtzeit


 paketorientierte Vermittlung
 muss in einer bestimmten Geschwindigkeit abgespielt werden,
sonst unbrauchbar
 neben Audio/Video häufig auch andere Medien
 Text – Instant Messaging
 Sharing von Präsentationen und Dokumenten
 Shared Editing
 Anwendungen
 Video-Streaming – YouTube, IP-TV
 Audio-Streaming – Internetradio
 Voice over IP – DSL-Telefonie, Skype
 Videokonferenzen – Skype, Polycom
 WebConferencing – WebEx, GotoMeeting
 Instant Messaging – Jabber, WhatsApp

costel.aldea@unitbv.ro 4
Anwendungsbeispiel: YouTube

Werte nur beispielhaft und ohne TCP-


Overhead gerechnet

costel.aldea@unitbv.ro 5
Anwendungsbeispiel: Voice over IP

costel.aldea@unitbv.ro 6
Überblick

HTTP- Echtes
VoIP
Streaming Streaming

SIP / SDP
Codecs

Codecs
Audio-

Video-

Codecs

Codecs

Codecs
Audio-
RTSP
HTTP

Video-

Audio-
DNS
RTP / RTCP
TCP
UDP

IP
costel.aldea@unitbv.ro 7
Abkürzungen letzte Folie

 VoIP – Voice over IP


 IM – Instant Messaging
 RTSP – Real-time Streaming Protocol
 SIP – Session Initiation Protocol
 SDP – Session Description Protocol
 XMPP – eXtensible Messaging and Presence Protocol
 RTP – Real-time Transport Protocol
 RTCP – Real-time Control Protocol

costel.aldea@unitbv.ro 8
2. Codierung - Kompressionsverfahren

Entropiekodierung Quellenkodierung Hybrid


(Kontext- und verlustfrei) (kontext- und
verlust-
medienunabhängig behaftet) JPEG (Joint
medienabhängig Pictures
Expert Group)
Lauflängen (Einzelbilder)
(Anzahl Muster) Prädiktion
(Differentielles PCM MPEG (Motion
Huffman mit frequenzabhängiger Picture
Expert Group)
(Binärbaum) Quantisierung) (Video;
Differenzkodierung)

Arithmetisch Transformation
(Datenstrom) (FFT/Fast Fourier T., H.264
DCT/Discrete Cos. T.): (Video; Differenzkod.)
Pattern Zeit => Frequenzbereich
Substitution
MP3
(Audio)

costel.aldea@unitbv.ro 9
Lauflängencodierung

Wenn in Zeichenfolge n mal das gleiche Byte hintereinander folgt


(mit n >= S; S ist ein fest vorzugebender Schwellwert)

=> kürzere Kodierung durch Wiederholungszähler möglich

z.B. S = 4: Byte Marke n - 4

⇒ 4…259 Byte durch 3 Byte darstellbar,

dabei Eindeutigkeit der Kodierung durch Bitstuffing,


Verallgemeinerung von Nullenunterdrückung

costel.aldea@unitbv.ro 10
Huffman

Hohe Auftrittswahrscheinlichkeit (Zeichen) führt zu kürzerem Code


(Füge jeweils Zeichen mit kleinstem p zu Teilbäumen
eines linearen Binärbaums zusammen,
Zuordnung 0/1 beliebig => verschiedene Codes
p(avbvcvdve) = 1 möglich)
0 a = 10
1
b=0
p(b) = 0,5 c = 1111
p(avcvdve) = 0,5 d = 110
1 0
e = 1110

p(cvdve) = 0,25 p(a) = 0,25

1 0

p(cve) = 0,1 p(d) = 0,15 Mittlere Anzahl Bits pro Zeichen:


1 0 0,5 + 2*0,25 + 3*0,15 + 4*0,05 +
4*0,05 = 1,85
p(c) = 0,05 p(e) = 0,05

costel.aldea@unitbv.ro 11
Audio-Codecs

 Musik + Streaming
• MP3 (=MPEG-1 Audio Layer 3)
• AAC (=MPEG-4 Advanced Audio Coding)
• jeweils in verschiedenen Qualitätsstufen
(ca. 128 – 256 kBit/s für Stereo-Musik hoher Qualität)
 Voice over IP
• G.711 – Sample-basierter Codec für Sprache, 64 kBit/s
• G.729 – Segment-basierter Codec für Sprache, 8 kBit/s bei
gleicher Qualität, dafür ca. 30 ms Delay (Segmentgröße)
 Methoden
• Fourier-Transformation, Quantisierung hoher und maskierter
Frequenzanteile
• Linear Predicitive Coding – Spracherzeugungsmodell, beim
Empfänger Sprachsynthese + Restsignal
• Silence Suppression – Stille erkennen und bei VoIP nicht
übertragen
costel.aldea@unitbv.ro 12
Video-Codecs

 Ausgangsbasis
• Einzelbilder mit 24 Bit/Pixel (RGB)
• typische Auflösungen: SD (640x480), HD (1280x720),
Full HD (1920x1080)
• 24 – 30 Frames pro Sekunde (fps)
• sehr hohe Rohdatenraten, z.B. SD bei 30 fps = 200
MBit/s
 Schritt 1: effiziente Codierung von Einzelbildern (JPEG)
 Schritt 2: Entfernen zeitlicher Redundanz (Differenzbild-
Codierung – MPEG)

costel.aldea@unitbv.ro 13
JPEG

Diskrete Kosinus- Differenzielle


Block- Quanti-
Transformation Quanti-
vorbereitung sierung
sierung

 Blockvorbereitung:
• YCbCr-Codierung - 16 Bit pro Pixel (8 Bit für Helligkeit)
• Blöcke von 8x8 Pixeln (64 Pixel)
 DCT-Koeffizienten: Spektralanteile in X- und Y-Richtung Lauflängen-
codierung
• fallen zum Rand der 8x8-Matrix hin ab
 Quantisierung: Dividieren durch Quantisierungstabelle
• Ausfiltern unwichtiger Frequenzanteile
 Differenzielle Quantisierung: (0,0)-Wert der Matrix wird als
Differenz zu vorhergehender Matrix codiert Statistische
Ausgabe-
• Wert wird verkleinert – lässt sich besser codieren codierung
 Lauflängencodierung der Koeffizienten
• häufig Folgen von Nullen – effizient darstellbar
 anschließend Huffman-Codierung
costel.aldea@unitbv.ro 14
MPEG – I/P/B-Frames

I-Frame P-Frame B-Frame


Intra-coded Frame Predictive-coded Bidirectional-predictive-coded Frame
Frame
JPEG kodierter Original- Differenzbild zu Differenzbild zu vorhergehendem
Frame vorhergehendem und nachfolgendem
I-Frame / P-Frame I-Frame / P-Frame
Kann unabhängig von Benötigt einen Benötigt 2 Referenzframes zum
anderen Frames dekodiert Referenzframe zum Dekodieren
werden Dekodieren

costel.aldea@unitbv.ro 15
3. Transport - Paketierung

 Stream
• Mediendaten von Anwendung kontinuierlich erzeugt
 LDU – Logical Data Unit
• medienabhängige logische Paketierung, z.B. Frame
• Hierarchie: Film – Szene – Frame – Makroblock – Pixel
 PDU – Protocol Data Unit
• Paket eines Protokolls = Protokollnachricht
 verschachtelte Header:

costel.aldea@unitbv.ro 16
RTP – Real-time Transport Protocol

• Echtzeit-Transport über UDP  weitere


Mechanismen benötigt, um alle Anforderungen
zu erfüllen
• RTP = Zusatzprotokoll zwischen Schicht 4
(Transport) und 5 (Anwendung) für Echtzeit-
Transport
• IETF-Standard: RFC 3550 und 3551: RTP
Version 2 (2003) – kommt in fast allen
Systemen mit Voice- und/oder
Videokommunikation zum Einsatz
 Funktionalität
• Identifikation der Medienquelle (Source-ID)
• Herstellung der richtigen Reihenfolge
(Sequenznummer)
• Synchronisierung (Zeitstempel)
• Jitter entfernen
• Synchronisierung von Audio und Video
• dynamische Flusskontrolle (RTCP)
costel.aldea@unitbv.ro 17
RTP-Header

costel.aldea@unitbv.ro 18
RTCP – Real-time Control Procotol

 Zusatzprotokoll zu RTP
• Kontroll-Kanal mit ständigem Austausch von Status-Nachrichten
(macht ca. 5% des gesamten Traffics aus)
• mit RTCP werden keine Medien transportiert
 Aufgaben
• Identifikation aller Teilnehmer einer RTP-Session
• Rückmeldung zu Paketverlusten und Round-Trip-Zeit  Input
für Flusskontrolle und Fehlerkorrektur
 wichtige Pakettypen
• Sender-Report (SR): Informationen von Sendern
• Receiver-Report (RR): Informationen von Empfängern
o Beispielfelder: Last Sequence Number, Interarrival Jitter, Cumulative
Number of Lost Packets, Fraction Lost, …
• Source-Description-Items (SDES): nähere Angaben zur Quelle,
z.B. Name und E-Mail

costel.aldea@unitbv.ro 19
4. Streaming – HTTP-Streaming

1. Benutzer klickt auf Link  Metadatei wird angefordert 


Codierungsmethode und Link zu Mediendatei
2. Content-Type identifizieren  entsprechenden Media Player
starten  Metadatei an Player übergeben
3. HTTP-GET Media Player an Web-Server  Datei wird in
Response übertragen (Header am Anfang)
costel.aldea@unitbv.ro 20
Einbettung in HTML5

<video width=320 height=240 controls


poster=image.jpg>
<source src=myVideo.ogv type=video/ogg>
<source src=myVideo.mp4 type=video/mp4>
Laden Sie mein Video [Textlinks]
</video>

 direkte Einbindung ohne PlugIn


 erfordert Codec-Unterstützung im Browser
 controls – Steuerelemente (vor, zurück, Pause)
werden angezeigt
 poster – Bild, wenn Video noch nicht abgespielt wird
 source – mehrere alternative Formate wählt erstes
(Browser unterstütztes Format)
costel.aldea@unitbv.ro 21
Ablauf

costel.aldea@unitbv.ro 22
Vor- und Nachteile HTTP-Streaming

 Vorteile
• preisgünstige Variante – kein separater Streaming-
Server benötigt
 Nachteile
• Download schneller als Abspielen  viel unnütze
Datenübertragung
o z.B. nur 2 min Video angesehen, aber 5 min heruntergeladen
o mögliche Lösung: Datenrate des Servers anpassen
meist vollständige lokale Kopie vorhanden 
• urheberrechtliche Probleme
keine Verhandlung von Parametern (Datenrate, …)
• Nutzer kann nicht an beliebige Stelle des Films springen
• keine Wiedergabe von Live-Streams möglich

costel.aldea@unitbv.ro 23
Echtes Streaming - Architektur

 2-Server-Architektur  Web-Server verwaltet die


Webseiten, Streaming-Server stellt Audio/Video zur
Verfügung
 Nutzung anderer Protokolle als HTTP zwischen Media
Player und Streaming-Server möglich
costel.aldea@unitbv.ro 24
RTSP – Real-time Streaming Protocol

 Text-basiertes Protokoll - an HTTP 1.1 angelehnt


 wichtige Unterschiede zu HTTP:
• zustandsbehafteter Server
• Daten „Out of Band“ transportiert
 URIs
• "rtsp:" "//" host [ ":" port ] [ abs_path ]
• Bsp: rtsp://media.example.com:554/twister/audiotrack

costel.aldea@unitbv.ro 25
Ablauf einer RTSP-Session

Antwort: unterstützte RTSP-


Methoden (optional)

Antwort: Beschreibung des


Streams im SDP-Format =
Session Description Protocol
(s. Folie 10.30)
Antwort: Bestätigung des
spezifizierten Transport-
Protokolls (z.B. RTP) und der
Ports
Antwort: Startparameter für
die RTP-Session (streamid,
seq)

Antwort: OK

costel.aldea@unitbv.ro 26
5. Voice over IP - Überblick

costel.aldea@unitbv.ro 27
Signalisierungsprotokolle für VoIP

 H.323
• weit verbreiteter Standard für Voice over IP und
Videokonferenzen („packet based multimedia communication
systems“) der ITU-T (International Telecommunication Union)
• ASN.1-basierte Binärcodierung der Protokolle
• Komponenten: Terminal, MCU (Multipoint Control Unit),
Gatekeeper, Gateway
 SIP
• zu H.323 konkurrierender Standard für Session-Aufbau der IETF
(Internet Engineering Task Force)
• Text-basierte Codierung (ähnlich HTTP) der Protokolle
• Komponenten: User Agent, Proxy, Registrar, Gateway
 Megaco/H.248
• Protokoll für Endgerätesteuerung in Telefonanlagen
• gemeinsamer Standard von IETF und ITU-T
• regelt Kommunikation zwischen Media Gateway (MG) und Media
Gateway Controller (MGC)
costel.aldea@unitbv.ro 28
Session Initiation Protocol – Was ist SIP?

SIP is an agile, general-purpose tool for creating, modifying, and


terminating sessions that works independently of underlying transport
protocols and without dependency on the type of session that is being
established. (Quelle: RFC 3261)

 „Session Initiation“
• Session = Datenaustausch in einem Verbund von Teilnehmern
• Probleme: Teilnehmermobilität; unter mehreren Namen
erreichbar; kommunizieren mit verschiedenen Medien
 Funktionen von SIP
• Lokalisierung von Teilnehmern, bzw. des Endgerätes, das sie
zur Kommunikation benutzen wollen
• Anzeige der Verfügbarkeit (Presence) von Teilnehmern
• Aushandlung von Parametern, z.B. welche Audio-/Videocodecs
für die Kommunikation verwendet werden sollen
• Aufbau einer Session
• Management einer Session, z.B. Rufweiterleitung und Abbau
von Sessions
costel.aldea@unitbv.ro 29
Einfacher Session-Aufbau mit SIP

 alice@a.de kontaktiert
bob@b.de
 IP-Adressen und
Portnummern sind
bekannt
 Im Body der INVITE-
Nachricht wird Offer
mitgeschickt
• Welcher Codec? - SDP
 Im Body der 200-OK-
Nachricht wird Answer
geschickt
• Codec ausgewählt
 Bob beendet die Session
mit BYE (legt auf)
 Mit der SIP-Session wird
auch die RTP-Session
beendet
costel.aldea@unitbv.ro 30
SDP – Session Description Protocol,
Beispiel eines Offers

 Text-basierte Codierung für Offers und Answers


Alice macht ein
Angebot für Session  kann im Body der SIP-Nachrichten versendet werden
1234 (mit
Zeitstempel), ihre
Internet (IN) IPv4- v=0 RTP-Audiostrom auf
Port 20000 mit RTP-
Adresse ist o=Alice 1234 238989823 IN IP4 Payload-Typ 97
angegeben
121.34.65.33 (dynamisch)

s=Video von Alice


Textbezeichnung
für die Session c=IN IP4 121.34.65.33
RTP-Typ 97 wird für
t=0 0 97 diese Session mit
Art der Verbindung: m=audio 20000 RTP/AVP iLBC-Codec bei 16
Internet, IPv4 kHz belegt
a=rtpmap:97 iLBC/16000
m=video 20001 RTP/AVP 31
keine feste Start-
und Stopp-Zeit RTP-Videostrom auf
Port 20001 mit RTP-
Payload-Typ 31
(statisch)
entspricht H.261
costel.aldea@unitbv.ro 31
SIP-Session über Proxies

costel.aldea@unitbv.ro 32
Lokalisierung – Zusammenspiel mit DNS

costel.aldea@unitbv.ro 33
Zusammenfassung

HTTP- Echtes
VoIP
Streaming Streaming

SIP / SDP
Codecs

Codecs

Codecs
Audio-

Video-

Audio-
Codecs

Codecs

RTSP
HTTP

Audio-

Video-

DNS
RTP / RTCP
TCP
UDP

IP
costel.aldea@unitbv.ro 34
Weiterführende Referenzen

 Tanenbaum, Wetherall: Computernetzwerke, 5. Auflage, Pearson,


2012.
7.4: Streaming Audio und Video

 Vertiefung durch Vorlesung „Multimediakommunikation“

costel.aldea@unitbv.ro 35
Gliederung

1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 36
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
11.Verteilte Systeme
Schichtenübersicht

Kap. 11 Anwendungs-
Anwendungsschicht
schicht

Transport-
Transportschicht
schicht

Vermittlungs-
Vermittlungsschicht
schicht

Sicherungs- Logical Link Control (LLC)


Sicherungs-
schicht
schicht Media Access Control (MAC)

Bitübertragungs-
Bitübertragungsschicht
schicht

costel.aldea@unitbv.ro 3
1. Einführung - Definition

Ein Verteiltes System setzt sich aus mehreren


Einzelkomponenten auf unterschiedlichen Rechnern zusammen,
die in der Regel nicht über gemeinsamen Speicher verfügen und
somit mittels Nachrichtenaustausch kommunizieren, um in
Kooperation eine gemeinsame Zielsetzung – etwa di
Realisierung eines Geschäftsablaufes – zu erreichen. e

 wesentliche Merkmale:
• Kopplung räumlich verteilter Rechner mittels Rechnernetz
• Kooperation mit dem Ziel, eine bestimmte
Anwendungsfunktionalität zu erbringen
• kein gemeinsamer physikalischer Speicher, keine strikt
synchronisierten Uhren
• dezentrale Organisation und Verwaltung
• häufig auch Fehlertoleranz und Lastausgleich durch Replikation

costel.aldea@unitbv.ro 4
Beispiel eines verteilten Systems: Flugbuchung

Client Application Server


Buchun-
Buchungen gen

Application Server
Web
Client
Server Vorverarbeitung
Buchungsanfragen

Web Service Application Server


Kunden-
Client Kundendaten daten

Flugbuchungsportal

Web Service

Application Daten-
Server bank
Airline
costel.aldea@unitbv.ro 5
Middleware
Anwendungs-
Client Interaktion Server
(Software im Reisebüro) (Flugbuchungsportal)

Objekt-Interaktion
Middleware
Middleware
(Java RMI, .NET, SOAP, REST)

Vermittlung und Transport


Vermittlung und Transport
(TCP/IP)

Netzwerk (Fast Ethernet, Gigabit


Ethernet) Netzwerk

Definition Middleware: “Infrastrukturdienste, die häufig genutzte Funktionalität


für verteilte Anwendungen auf wiederverwendbare Art bereitstellen. Dabei
überbrücken sie Heterogenität in Endsystemen und Netzwerken.”
costel.aldea@unitbv.ro 6
Dreistufige Architektur

Client
(Software
Reisebüro)

Client Server (Kunden-


(Mobile App
(Mobile App) Server Datenbank)
(Vorverarbeitung)

Anwendungslogik Datenmanagement
Client (Verarbeitungsstuf (Persistenzsstufe)
(Web Brows er) e)
 2-tier: 2-stufige Architektur
(Nutzer-Interface <-> Server);
Nutzerinterface, ggf. schon
einfach, aber wenig flexibel
Vorverarbeitung (Thin Client
 3-tier: 3-stufige Architektur
vs. Fat Client)
für komplexe Anwendungen
(Darstellungsstufe) besser geeignet
costel.aldea@unitbv.ro 7
Beispiel: Application Server
Anwendungsfunktionalität
(wiederverwendbare Java-
Komponenten: EJB – Enterprise
Java Beans)
Java RMI, SOAP

proprietäre Transaktions-
Web-Server Protokolle Monitore
HTTP
Java-

Innere Firewall
Client HTML- Betriebs-
Äußere Firewall

HTML- Application- proprietäre


HTML-
okumente wirtschaftliche-
okumente Server Protokolle
Dokumente Software

proprietäre Mainframe-
HTML-
HTML-
CGI- Protokolle Anwendungen
okumente
okumente
AJAX, Skripte
(optional)
JSON
HTTP
(Asynchronou
s JavaScript
and XML;
Datenbanken
JavaScript
Object
costel.aldea@unitbv.ro
Notation) 8
Basisdienste verteilter Systeme

Namens- und Transaktionsmonitor


Verzeichnisdienste

Suchen Registrieren Unternehmen


s-
software

Kommunikation
Server verteilte
Client Server Transaktionen
RPC/RMI, Web
Services

Authentisierung, Autorisierung, Verschlüsselung

Datenbank
Sicherheit und Schutz

 Kommunikation
 Verteilte Transaktionen
 Verschlüsselung, Authentifizierung, Autorisierung
 Namens- und Verzeichnisdienste
costel.aldea@unitbv.ro 9
2. Kommunikation –
Remote Procedure Call
(RPC)

 Basismechanismus: Remote Procedure Call (RPC)

 Erweiterung lokaler Prozedur- bzw. Methodenaufrufe


 Ziel: syntaktische und semantische Gleichheit
• Aufrufmechanismus
• Sprachelemente
• Fehlersemantik

 Definition (von Nelson)


• synchrone Kontrollflussübergabe
• Ebene der Programmiersprache
• getrennte Adressräume
• Kopplung über relativ schmalbandigen Kanal
• Datenübergabe in Form von Parametern und Resultatwerten

costel.aldea@unitbv.ro 10
Grundlegender Ablauf eines RPC

 Fernaufruf von Prozeduren gemäß Client/Server-Modell


• Client = Aufrufender bzw. Dienstnehmer
• Server = Aufgerufener bzw. Diensterbringer
Client Flugportal

Warten Freie Plätze


(synchron) Flug X = 3
Unterbe-
Server
auftragung
Client

 evtl.: Reject (Ablehnungsgrund), ReturnError


(Fehlerbeschreibung)
 Client blockiert nach Absetzen des Aufrufs bis zum Erhalt
des Rückgabewertes (synchroner Aufrufmechanismus)
 Parameter werden als Kopie übergeben
 Geschachtelte Aufrufe möglich
costel.aldea@unitbv.ro 11
Detailablauf eines RPC

Verzeichnisdienst
Import Export
Bindevorgang

Anwendungsprogramm
Anwendungsprogramm
Anwendungsprogramm Server-Prozedur
Server-Prozedur
Server-Prozedur
Server-Proze
1 10 6 5
Client-Stub:
Client-Stub:
Client-Stub: Server-Stub: Server-Stub:
Server-Stub:
- Aufrufkodierung
- Aufrufkodierung
- Aufrufkodierung - Aufrufdekodie- -Aufrufdekodierung
- Aufrufdekodierung
Aufrufdekodierung
- Ergebnisdekodierung
- Ergebnisdekodierung
- Ergebnisdekodierung - Ergebniskodierung
- Ergebniskodierung
- Ergebniskodierung
- Ergebniskodi
2 9 7 4
Transportsystem
Transportsystem Transportsystem
Transportsystem
Transportsy
8
Client Server
3
 Ziel: Transparenz (identisch mit lokalem Aufruf)
 Stubs werden aus Schnittstellenbeschreibung erzeugt
 Verbergen entfernte Kommunikation weitestgehend vor Client
 Client ermittelt durch Binden physische Serveradresse (IP + Portnr.)
costel.aldea@unitbv.ro 12
RPC - Bindevorgang

Mittels Directory Service (z. B. DNS, X.500)


Legende
Directory Service Anfrage nach
Server
Server 1 Rückmeldung auf
Client
Anfrage
Server 2
RPC-Aufruf
Server 3

Mittels Broadcast Mittels Direktadressierung

Server 1 Server 1

Client Server 2 Client Server 2

Server 3 Server 3
costel.aldea@unitbv.ro 13
RPC - Fehlerbehandlung

 Fehlerfälle:
• Fehler während der Prozedurabarbeitung
• Übertragungsfehler (Verlust der Request- bzw. Response-Nachricht)
 Fehlerursachen:
• Ausfall eines beteiligten Rechners
o Server-Seite  endloses Warten des Clients  Timeout
o Client-Seite  Weitere Bearbeitung als „Orphan“
• Unerreichbarkeit des Zielknotens  dynamisches Binden
• Veraltete Prozedur-Export–Information  dynamisches Binden

 Fehlersemantik:
• Maybe: Höchstens einmalige Ausführung ohne Benachrichtigung im
Fehlerfall  nur für „unwichtige“ Operationen

• At-least–once: Mindestens einmalige Ausführung; nur bei idempotenten


Operationen
• At-most–once: Erkennung und Löschen von Duplikaten; Ausführung
nur, wenn keine Rechnerausfälle vorliegen

• Exactly-once: Ausführung genau einmal; auch bei Rechnerausfällen


 Transaktionskonzepte mit Wiederanlauf von Komponenten

costel.aldea@unitbv.ro 14
RPC - Fehlersemantik
(“?” bedeutet undefiniertes Verhalten, abhängig vom Timing)
Fehlertyp
Error-free Messages Additional losses Additional
Fehlerklass execution server failure client failure
e
Execution: 1 Execution: ? Execution: ? Execution: ?
Maybe Result: 1 Result: ? Result: ? Result: ?

Execution: 1 Execution: >=1 Execution: ? Execution: ?


At-Least-Once
Result: 1 Result: >=1 Result: ? Result: ?

At-Most-Once Execution: 1 Execution: 1 Execution: ? Execution: ?

Only-Once-Type-1 Result: 1 Result: 1 Result: ? Result: ?

Exactly-Once Execution: 1 Execution: 1 Execution: 1 Execution: 1

Only-Once-Type-2 Result: 1 Result: 1 Result: 1 Result: 1

costel.aldea@unitbv.ro 15
Java Remote Method Invocation (RMI)

 Objektorientierter RPC  Aufrufe zwischen entfernten Objekten


 Referenzparameter, Directory Service, automatische Speicherverwaltung etc.
import java.rmi.*; entfernt aufrufbare Schnittstelle

public interface FlightServer extends java.rmi.Remote {


long bookFlight (String passengerName, BookingRecord details) throws
java.rmi.RemoteException;
BookingRecord checkBooking (long BookingNumber) throws java.rmi.RemoteException; }
Buchungsdatensatz
import java.io.Serializable;
public class BookingRecord implements Serializable {
String passengerID; long flightNo; long classID;
public BookingRecord(String passengerID, long flightNo, long classID) {
this.passengerID = passengerID;
Ähnlich
this.flightNo = flightNo; this.classID = class FlightServerImpl
classID; } } etc. definieren

public static void main(String args[]) { Server-Initialisierung;


anschließend einfacher
System.setSecurityManager(new RMISecurityManager()); Client-Aufruf möglich
try {
FlightServer server = new FlightServerImpl();
Registry registry = LocateRegistry.getRegistry();
registry.rebind(„AirlineXYZ", server);
} catch (Exception e) {
System.out.println(e.getMessage()); e.printStackTrace();
}
}
costel.aldea@unitbv.ro 16
SOAP Web Service - Beispiel

POST /InStock HTTP/1.1 HTTP/1.1 200 OK


Host: www.example.org HTTP- Content-Type: application/soap+xml;
Content-Type: application/soap+xml; Heade charset=utf-8
charset=utf-8 r Content-Length: nnn
Content-Length: nnn
<?xml version="1.0"?>
<?xml version="1.0"?> <soap:Envelope
<soap:Envelope xmlns:soap="http://www.w3.org/200
xmlns:soap="http://www.w3.org/2001/1 SOAP 1/12/soap-envelope"
2/soap-envelope" soap:encodingStyle="http://www.w3.
Envelo
soap:encodingStyle="http://www.w3.org org/2001/12/soap-encoding">
/2001/12/soap-encoding"> pe
<soap:Body
<soap:Body xmlns:m="http://myns.de/stock">
xmlns:m="http://myns.de/stock"> <m:GetStockPriceResponse>
<m:GetStockPrice> SOAP <m:Price>151.3</m:Price>
<m:StockName>VW</m:StockName> Body </m:GetStockPriceResponse>
</m:GetStockPrice> </soap:Body>
</soap:Body>
</soap:Envelope>
</soap:Envelope>
Daten in XML-
Darstellung
costel.aldea@unitbv.ro 17
REST Web Service - Beispiel

GET https://api.twitter.com/1.1/statuses/show.json?id=210462857140252672

{
"created_at": "Wed Jun 06 20:07:10 +0000 2012", "id_str": "210462857140252672",
"entities": { "urls": [
{
"expanded_url": "https://dev.twitter.com/terms/display-guidelines", "url":
"https://t.co/Ed4omjYs",
"indices": [
76, JSON
97 JavaScript
], Object Notation
"display_url": "dev.twitter.com/terms/display-\u2026"
}
],
},
"text": "Along with our new #Twitterbird, we've also updated our Display
Guidelines: https://t.co/Ed4omjYs ^JC",
"retweet_count": 66
}

costel.aldea@unitbv.ro 18
3. Verteilte Transaktionen - Basisdienst

Buchung eines Fluges

buche Flug
Dresden - Lufthansa
Frankfurt
DBMS
Flugportal

United
buche Flug
Frankfurt – New York
DBMS

ACID-Eigenschaften (Atomicity, Consistence, Isolation and Durability):


 entweder werden beide Flüge gebucht oder keiner von beiden
 Änderungen am Buchungsstatus der Flüge werden nicht nach
außen sichtbar bis die Transaktion als Ganzes erfolgreich abgeschlossen
wurde
costel.aldea@unitbv.ro 19
Verteilte Transaktionen: Koordination

2-Phasen-Commit-Protokoll

 notwendig für die Koordination zwischen den verschiedenen


Teilnehmern einer verteilten Transaktion
 Annahmen
• Teilnehmer speichern relevante Daten vor der Transaktion, so dass
auf einen konsistenten Zustand zurückgesetzt werden kann
• Transaktion gestartet: alle benötigten Operationen werden zunächst
nur auf temporären Kopien der Daten ausgeführt
• Operationen können über RPC, RMI und Web Services oder auch
über lokale Mechanismen ausgeführt werden
 Initialisierung des Protokolls
• Koordinator (ein Client oder damit verbundener Server) initialisiert
das 2-PC-Protokoll, nachdem alle temporären Änderungen gemacht
wurden

costel.aldea@unitbv.ro 20
2-Phasen-Commit: Ablauf

 Durchführung atomarer Aktionen "ganz oder gar nicht"


alte Version: K
 Beispiel: Kunde K gibt Flugbuchung mit Airline A und B in Auftrag
sichere Daten: K‘
 Realisierung: 2-Phasen-Commit

Teilnehmer
(z.B. Airline
A)
K := K‘

Koordinator
(z.B. Client) alte Version: L
sichere Daten: L‘

Teilnehmer
(z.B. Airline
B)
L := L‘

 Fehlerfall: C-Refuse von Teilnehmer (Airline); falls eine oder mehrere


Ablehnungen, sende C-Rollback und breche ab (ggf. danach Wiederholung)

costel.aldea@unitbv.ro 21
Beispiel: Geschachtelte Transaktionen

HSP: Hauptsynchronisationspunkt, durch umfangreiches Commit abgestimmt


NSP: Nebensynchronisationspunkt, Aktivität damit partiell rücksetzbar

HSP NSP NSP

Buche Buche Flug Buche Flug Kein Platz


Zimmer auf F  NY Hawaii NY  Hawaii frei

NSP Rücksetzen
Buche Flug Kein Platz
NY  Hawaii frei
andere Airline
NSP Rücksetzen NSP

Buche Flug Buche Flug Kein Platz


F  Mexiko Mexiko  Hawaii frei

HSP Rücksetzen NSP HSP


Buche Zimmer Buche Bahn-
in Tirol fahrt nach erfolgreiches Ende der Aktivität
costel.aldea@unitbv.ro Tirol 22
4. Sicherheit

Banking Banking
Client Server

 Beispiel: Bezahlung in Online-Shop


• Kredit- oder EC-Karte wird belastet, um Produkte zu kaufen
• Verfügbarkeit der Zahlung muss vor dem Kauf getestet werden

 Sicherheitsfragen
• sicherstellen, dass es sich wirklich um den Server der Bank handelt
• sicherstellen, dass es sich beim Client wirklich um den Bankkunden
handelt
• Nachrichten gegen Veränderung schützen
• Replay-Attacken verhindern
• sicherstellen, dass nur der autorisierte Nutzer den Account nutzen
kann

costel.aldea@unitbv.ro 23
Schutzziele verteilter Systeme

 Vertraulichkeit
• nur autorisierte Personen haben Zugriff auf Nachrichten und Daten
 Integrität
• unautorisierte Änderungen von Nachrichten und Daten müssen vom
System erkannt werden
• unautorisierte Änderungen sind nicht erlaubt
 Verfügbarkeit
• Nutzbarkeit der Dienste, Informationen und
Kommunikationsverbindungen ist jederzeit gewährleistet
 Zugriffskontrolle
• kein nicht autorisierter Zugriff auf Daten und Dienste erlaubt
 Zurechenbarkeit
• Interaktionen lassen sich bestimmten Personen oder Instanzen
zuordnen
 Authentizität
• Nutzeridentität ist nachweisbar
 Anonymität
• bestimmte Prozeduren können ausgeführt werden, ohne die Identität
des Nutzers zu enthüllen
costel.aldea@unitbv.ro 24
Sicherheitsmechanismen für verteilte Systeme

 Verteilte Systeme sind anfällig für viele mögliche Angriffe


 Maßnahmen
• Verschlüsselung – Vertraulichkeit und Integrität
sicherstellen, unterstützt Authentisierung
• Authentisierung – Identität des Nutzers überprüfen
• Autorisierung – Zugriff auf bestimmte Ressourcen
erlauben bzw. verbieten
• Firewalls – bestimmte Netzwerk-Bereiche besonders
schützen
• Anonymisierung – Daten und Logs anonymisieren, um
Informationen über Nutzeraktionen vor unbefugtem
Zugriff zu schützen

costel.aldea@unitbv.ro 25
Sicherheit: Beispiel TLS-Handshake

client_hello Zufallszahl Client, Liste


unterstützter Security-Algorithmen

server_hello Zufallszahl Server,


ausgewählte Algorithmen
(z.B. RSA + AES)

certificate Server-Zertifikate (Client


Banking prüft mit Public Key des Servers) Banking
Client server_hello_done Server
client_key_exchange Aus Zufallszahl
wird Pre-Master-Secret gebildet –
verschlüsselt mit Public Key des Servers

change_cipher_spec auf AES-


Verschlüsselung wechseln

costel.aldea@unitbv.ro 26
5. Namens- und Verzeichnisdienste

 Namensdienst
• Mapping von logischen Namen auf physikalische Adressen oder
Objekt-Referenzen
• logische Namen vom Nutzer angegeben
• Dienst gibt Adresse zurück  Lokalisierung
 Verzeichnisdienst
• Management von Attributen der benannten Instanzen
• Attribut-basierte Suche nach benannten Instanzen
• ähnlich zu “Gelben Seiten”
 Beispielsysteme
• Internet Domain Name System (DNS) - Namensdienst
• X.500 Standard – Verzeichnisdienst
o Zugriff überwiegend per Lightweight Directory Access
Protocol (LDAP)
• Universal Description, Discovery and Integration (UDDI)

costel.aldea@unitbv.ro 27
LDAP: LDIF-Notation
(LDAP Data Interchange Format)

dn: cn=Barbara Jensen, ou=Product dn: Distinguished


Development, dc=airius, dc=com Name
cn:
objectclass: top Common Name
objectclass: person ou:
organizationalUnit
objectclass: organizationalPerson Name
cn: Barbara Jensen dc:
Domain
cn: Barbara J Jensen Component
cn: Babs Jensen objectClass: Typ
des Objekts sn:
sn: Jensen Surname
uid: bjensen uid: User ID
telephonenumber: +1 408 555 1212
description: A big sailing fan.

costel.aldea@unitbv.ro 28
LDAP: Operationen

Befehl Beschreibung
StartTLS TLS-Verschlüsselung für Transportverbindung
nutzen
Bind Authentisierung beim LDAP-Server
Search nach Einträgen suchen / Einträge abrufen
Compare bestimmten Wert im Verzeichnis mit
gegebenem Wert vergleichen
Add neuen Eintrag hinzufügen
Delete Eintrag löschen
Modify Eintrag modifizieren
Abandon letzten Request abbrechen
Extended generische Operation (Erweiterbarkeit)
Operation
Unbind Verbindung schließen
costel.aldea@unitbv.ro 29
6. Entfernter Dateizugriff – WebDAV

 WebDAV = Web-based Distributed Authoring and Versioning


 HTTP-Erweiterung für entfernten Dateizugriff,
unterstützt insbesondere Verzeichnis-Operationen und
Versionierung
 nutzt GET und POST von HTTP, zusätzlich folgende Methoden:
HTTP-Methode Beschreibung
PROPFIND Verzeichnisstruktur oder Eigenschaften
(Properties) von Ressourcen abfragen
PROPPATCH Ändern/Löschen von Eigenschaften
MKCOL Verzeichnis erstellen (Collection)

COPY Ressource kopieren


MOVE Ressource verschieben

DELETE Ressource löschen


LOCK Ressource sperren

UNLOCK Sperre aufheben


costel.aldea@unitbv.ro 30
Dateireplikation

 mehrfache, verteilte Speicherung einer Datei  höhere Verfügbarkeit


für Lesezugriff, Lastverteilung
 Problem: Konsistenz der Replikation bei Änderung
 Lösungen:
1. Alle Änderungen an Primärkopie, diese propagiert an andere Kopien
 Ausfallproblem
2. Abstimmungsverfahren ("Quorum")
n Kopien, r Stimmen für Lesen, w für Schreiben mit r+w>n, w>n/2
Beispiele (n = 5):

r = 1, w = 5 r = 2, w = 4 r = 3, w = 3

ABB C D E AABB C D E AABB CC D E

 Lese- und Schreibquorum stets überlappend.


 Mindestens ein Schreibteilnehmer stets aktuell vor Schreiboperation

costel.aldea@unitbv.ro 31
Zusammenfassung -
Beispiel einer verteilten Systemplattform

Verteilte Anwendungen

Verteiltes Dateisystem
Security Manage- ment
Service
Time Directory Weitere
Service Service Basisdienste

Remote Procedure Call

Threads

Betriebssystem und Transportsystem

costel.aldea@unitbv.ro 32
Weiterführende Referenzen

 Vertiefung durch Vorlesungen


 Distributed Systems
 Entwicklung verteilter Systeme auf Basis serviceorientierter
Architekturen

 weiterführende Literatur
 A. Schill, T. Springer: „Verteilte Systeme - Grundlagen und
Basistechnologien”; Springer-Verlag, Berlin, 2012
 A.S. Tanenbaum, M. van Stehen: „Distributed Systems: Principles
and Paradigms“; PrenticeHall International, 2008

costel.aldea@unitbv.ro 33
Gliederung

1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing

costel.aldea@unitbv.ro 34
RECHNERNETZE

Universitatea “Transilvania” din Brasov


Rechnernetze
12.Mobile Computing
Schichtenübersicht

Anwendungs-
Anwendungsschicht
schicht
Kap. 12
Transport-
Transportschicht
schicht

Vermittlungs-
Vermittlungsschicht
schicht

Sicherungs- Logical Link Control (LLC)


Sicherungs-
schicht
schicht Media Access Control (MAC)

Bitübertragungs-
Bitübertragungsschicht
schicht

costel.aldea@unitbv.ro 3
1. Überblick, Schichten 1 und 2 – Szenarien

Hotspot-Zugang Festnetzzugang
(z.B. in Zweigfiliale, (z.B. in
Hotel, Flughafen, Firmenzentrale)
Bahnhof, beim
Kunden)
Ethernet,
WLAN
DSL

Onlinehändler

GSM/
Abkopplung GPRS
Offline-Arbeit / Mobiler Zugriff
(z.B. beim UMTS (z.B. unterwegs)
Kunden)

costel.aldea@unitbv.ro 4
Frequenzverteilung

Frequenz und Wellenlänge: λ = c/f


Wellenlänge λ, Lichtgeschwindigkeit c ≅ 3x108m/s, Frequenz f

VLF = Very Low Frequency UHF = Ultra High Frequency


LF = Low Frequency SHF = Super High Frequency
MF = Medium Frequency EHF = Extra High Frequency
HF = High Frequency UV = Ultraviolet Light
VHF = Very High Frequency ISM … Industrial, Scientific and Medical

costel.aldea@unitbv.ro 5
Effekte der Signalausbreitung

Polarisation an der
glatte Flächen Kanten feste Körper raue Flächen Körper Grenzfläche zweier
reflektieren beugen brechen reflektieren schwächen Medien
ab
 Freiraumdämpfung, Abschattung, Reflexion, Brechung, Streuung, und
Beugung sind frequenzabhängig
• Abschattung und Reflexion werden durch Objekte verursacht, die
wesentlich größer als die Wellenlänge des Signals sind
(„Teilchenverhalten“)
• Streuung des Signals an Objekten in der Größenordnung der
Wellenlänge oder darunter
o Aufspalten des Signals in mehrere schwächere Teilsignale
• je höher Frequenz, desto höher theoretisch mögliche Datenrate (Nyquist)
• je höher Frequenz, desto mehr verhält sich dieses wie Licht
o Durchdringung von Objekten wird mit zunehmender Frequenz
schlechter
o Direktwellen, Kommunikation in Sichtlinie (Line of Sight)
costel.aldea@unitbv.ro 6
Charakteristika drahtloser Kommunikation

 höhere Fehleranfälligkeit
• keine Abschirmung durch Kabel sondern Ausbreitung im Raum
• Interferenzen durch Effekte der Signalausbreitung
 geringere Datenraten (begrenzte Frequenzbereiche)
• Regulierung (länderspezifisch)
• Shared Medium
• höhere Frequenzen erfordern höhere Energie für Übertragung 
höhere Kosten, Komplexität und Fehleranfälligkeit
• je höher die Frequenz, desto stärker wirken die Effekte von
Streuung und Brechung  Sichtverbindung erforderlich
 begrenzte Abdeckung
• Verminderung der Signalstärke mit Abstand (Dämpfung)
• nicht erschlossene Gebiete
 Sicherheitsprobleme
• Abhören einfacher als bei kabelgebundenen Technologien

costel.aldea@unitbv.ro 7
Medienzugriff – Zellulare Netzwerke

 Aufteilung des Frequenzbandes in Teilfrequenzen


 Nachbarzellen nutzen unterschiedliche Teilfrequenzen, um
Interferenzen zu vermeiden
 entstehendes Zellcluster wird wiederholt
• je größer die Zelle, desto weniger Kanäle pro Fläche verfügbar
• je größer die Zelle, desto größer sind benötigte Sendeleistung und
Interferenzzone
3 4 2 1
Kanäle 4 2 1 5
2 1 5 7 6
801-1600 5 7 6 3
7 6 3 24 2
Interferenzzone 3 4 1
4 2 5
7 6 7
Empfangsbereich 1
1 5
R (Radius R) und 5 7 6 3 4
Interferenzbereich 6 3 4 2
(5 R)
4 2 1 5
k: Anzahl Zelltypen (hier k=7)
D: Abstand zwischen 2 Basisstationen
Kanäle mit gleicher Frequenz
1-800
Kanäle
1-800 D = R ⋅ 3k
costel.aldea@unitbv.ro 8
Multiplexverfahren

 Signalausbreitung im Raum  Shared Medium


 Multiplexverfahren ermöglichen mehrere Kanäle an einem Ort
 Frequency Division Multiple Access (FDMA)
• Nutzung von Teilbändern für mehrere Kanäle
 Time Division Multiple Access (TDMA)
• Nutzung von Zeiträumen (time slots) für mehrere Kanäle
 Code Division Multiple Access (CDMA)
• Nutzung minimal interferierender Codes für mehrere Kanäle

Frequenz
Frequenz

Frequenz 1
Frequenz

Code
Schutzband
slot

Code für Kanal 4


protection slot

Frequenz 2 protection slot


Code für Kanal 3
Schutzband Slot 1 Slot 2 Slot 3 Slot 4
Code für Kanal 2
Frequenz 3 Code für Kanal 1
Schutzband
Frequenz 4

Zeit Zeit Zeit


costel.aldea@unitbv.ro FDMA TDMA CDMA 9
Aufbau zellularer Netzwerke - Beispiel GSM

 Mobile Geräte - Mobile


Stations (MS)
Handover  Base Transceiver Station
(BTS)
 eine BTS pro Zelle
 Protokoll für
BSC BSC Datenübertragung über
Funkschnittstelle zwischen
BTS und MS
 Base Station Controller
BTS (BSC)
MS  verwaltet mehrere BTS,
BTS BTS d.h. mehrere Zellen
MS MS  führt Handover zwischen
Zellen (BTS) aus
BTS MS

costel.aldea@unitbv.ro 10
Aufbau zellularer Netzwerke - Beispiel GSM

 Mobile Switching Center


(MSC)
 mehrere MSC pro Netwerk
EIR AUC HLR VLR OMC
 jedes MSC verwaltet
bestimmte geographische
Region (service area)
 Verbindung zwischen Base
Station Sub-systems
MSC
 Gateway Mobile Switching
GMSC Center (GMSC)
 Schnittstelle zu externen
Netzwerken
ISC  International Switching
Base Station Center (ISC)
Subsystem  Verbindung zu Netzwerken
anderer Länder (Provider)

costel.aldea@unitbv.ro 11
Operation and Maintenance Subsystem (OMSS)

 Home Location Register (HLR)


• ein zentrales HLR
EIR AUC HLR VLR OMC
• verwaltet Daten aller Teilnehmer
• letzter Teil der Rufnummer
definiert Eintrag in HLR
• HLR DB –> Verweis auf VLR
MSC  Visitor Location Register (VLR)
• ein VLR pro MSC (location area)
GMSC
• verwaltet Daten aller Teilnehmer
in zugeordnetem Location Area
einschießlich Teilnehmer anderer
ISC
Provider
• Einträge werden gelöscht, wenn
BSC BSC Teilnehmer Location Area verlässt
 Operation and Maintenance
BTS Center (OMC)
MS

BTS BTS
 Authentication Center (AUC)
MS MS
 Equipment Identity Register
(EIR)

Location area
costel.aldea@unitbv.ro 12
Netzinfrastruktur der 4. Generation

SS7 signalling
server farm,
gateways, proxies broadcast
PSTN
gateways

MSC
IP-based
core firewall, GGSN,
gateway
SGSN
BSC router
GSM
Internet

access
points private
private WLAN
WPAN
RNC PSTN – Public Switched Telephone Network
SS7 – Signaling System 7
GSM – Global System for Mobile Communications
UMTS BSC – Base Station Controller
MSC – Mobile Services Switching Center SGSN –
public
Service GPRS Support Node GGSN – Gateway GPRS
WLAN Support Node RNC – Radio Network Controller
UMTS – Universal Mobile Telecommunications System

costel.aldea@unitbv.ro 13
2. Vermittlungsschicht –
Problemstellung: Mobilität von
Geräten
Foreign Network
Home Network Wechsel des Subnetzes
18.20.10/24
141.76.40/24

Mobile Host
Mobile Host Address:
Address: 18.20.10.100
141.76.40.190

18.20.10.1 18.20.10.120
Verbindung der Transportschicht wird
141.76.40.1
141.76.40.195 unterbrochen und muss neu aufgebaut
werden

Classless Inter-Domain Routing Corresponding


 Subnetzmaske trennt Host
Netzwerk Id und Host ID 141.76.82.76
 Suffix-Notation für
Subnetzmasken: 141.76.82.1
141.76.40/24
costel.aldea@unitbv.ro 14
Herausforderungen auf Vermittlungsschicht

 IP-Adresse besitzt Doppelbedeutung


• eindeutiger Identifikator für Host
• Identfikator für Position im Netzwerk (Subnetz)

 Änderung des Subnetzes impliziert Änderung der IP-


Adresse
• Rekonfiguration der Netzwerkinformationen beim Client
erforderlich (IP-Adresse, Subnetzmaske, Standard
Gateway, DNS, …)
• Folgen:
o Abbruch etablierter Verbindungen auf Transportschicht
o mobiles Endgerät ist ohne zusätzliche Unterstützung nicht
durchgängig adressierbar

costel.aldea@unitbv.ro 15
Dynamic Host Configuration Protocol (DHCP)

 ermöglicht automatische Zuweisung von IP Adressen


 automatische Netzwerkkonfiguration (IP-Adresse,
Subnetzmaske, Standard Gateway, DNS, …) und optionaler
Parameter (Web Server, Mail Server, etc.)
 3 Möglichkeiten der Adresszuweisung
1. Manuell:
o statische Zuordnung von IP-Adressen zu Geräten
(identifiziert durch MAC-Adresse) definiert durch
Systemadministrator
2. Automatisch:
o verfügbare IP-Adressen werden (mobilen) Geräten für
unbegrenzte Zeit zugewiesen
3. Dynamisch:
o verfügbare IP-Adressen werden für begrenzten Zeitraum
zugewiesen (Lease)
o periodische Auffrischung der Zuweisung durch (mobiles)
Gerät erforderlich
 dynamische Adresszuweisung ist am besten für mobile
Geräte geeignet 16
costel.aldea@unitbv.ro
Dynamische Zuweisung einer IP-Adresse mit DHCP

DHCP Client DHCP Server DHCP Server


DHCP DISCOVER
1. Broadcast zur Suche DHCP DISCOVER
von DHCP Servern im
Subnetz DHCP DISCOVER
DHCP DISCOVER

2. DHCP Server
antworten mit DHCP OFFER
Angebot (IP-Adresse
DHCP OFFER
und
Netzwerkkonfigurati
on) wählt
3. DHCP Client
ein Angebot aus DHCP REQUEST

4. DHCP Server
bestätigt Zuweisung DHCP ACK
der
IP-Adresse
costel.aldea@unitbv.ro 17
Auffrischung des Lease

 dynamische Zuweisung einer IP-Adresse als Lease


• Lease ist für definierten Zeitraum gültig (T=lease time)
• T hängt von Konfiguration ab, z.B. mehrere Stunden oder ein Tag

 für Auffrischung sind zwei Zeitbereiche relevant


• T1 – 50 % der Gültigkeit des Lease
• T2 – 87,5 % der Gültigkeit des Lease

 T1 – Client versucht den Lease aufzufrischen


• Client sendet DHCP REQUEST zu bekanntem DHCP-Server
• wenn DHCP ACK, dann wird Gültigkeit des Lease wieder auf T
gesetzt
 T2 – wenn keine positive Antwort auf DHCP REQUEST
• Client sendet DHCP DISCOVER als Broadcast an alle lokalen
DHCP-Server, um Lease aufzufrischen

costel.aldea@unitbv.ro 18
Mobile IP - Überblick

 Problem
• IP-Adresse mobiler Geräte ändert sich mit jedem
Subnetzwechsel
• Folge
o Abbruch etablierter Verbindungen auf Transportschicht
o mobiles Endgerät ist ohne zusätzliche Unterstützung nicht
durchgängig adressierbar
 Ziel
• durchgängige Adressierbarkeit mobiler Geräte ohne
Änderung des IP Routings
 Ansatz
• Zuweisung zweier IP-Adressen
o permanente (stabile) Adresse und veränderliche IP-Adresse
o Infrastruktur für Paketweiterleitung und
Adressaktualisierung
costel.aldea@unitbv.ro 19
Mobile IP - Lösungskonzept

 2 Adressen pro Mobile Host (Netzwerkadapter)


• Home Address
o permanente IP-Adresse unabhängig vom Subnetz
o Zugewiesen aus Heimnetzwerk
• Care-of-Address (COA) = temporäre IP-Adresse aus besuchtem
Subnetz
1. Foreign-Agent Care-of-Address:
- Foreign Agent (Infrastrukturkomponente pro Subnetz) leitet
Pakete im aktuellen Subnetz an Mobile Host weiter
- mehrere Mobile Hosts können die gleiche Foreign-Agent
COA verwenden
2. Co-located Care-of-Address
- es wird kein Foreign Agent verwendet
- Mobile Host muss im besuchten Subnetz eindeutige IP-
Adresse zugewiesen werden
 Home Agent (Infrastrukturkomponente im Heimnetzwerk) leitet
Datagramme an Care-of-Address weiter
costel.aldea@unitbv.ro 20
Mobile IP – Registrierung einer neuen COA

1. Registration
Home Network
Request Foreign Network
141.76.40/24
CoA: 18.20.10.1 18.20.10/24
HA: 141.76.40.1
MH: 141.76.40.190
lifetime: 5000
ID: 501 Mobile Host
2. Register mobile Permanent Address:
Add
host
141.76.40.1
141.76.40.190
Internet
Care-of addre
address:
18.20.10.1
permanent
address COA

Foreign Foreign
Age Agent
Home Agent Address: 18.20. 10.1
Address:
mobility binding list
141.76.40.1 3. Registration Reply
HA: 141.76.40.1
• Authentifizierung von MH: 141.76.40.190
• Mobile Host – Home Agent lifetime: 5000
ID: 501
• Mobile Host – Foreign Agent
Foreign Agent –Home Agent
• Begrenzte Gültigkeit der CoA Corresponding Host
141.76.82.76
• Periodische Auffrischung erforderlich
costel.aldea@unitbv.ro 21
Mobile IP – Weiterleitung mit Foreign Agent CoA

Home Network Foreign Network


141.76.40/24 18.20.10/24
4. Weiterleitung an
Mobile Host
S = 141.76.82.76,
3. Encapsulation und Mobile Host
2. COA D= 141.76.40.190
Permanent
Permanent Ad
ermitteln Weiterleitung an Foreign Agent
Address:
141.76.40.
141.76.40.190
Internet
S = 141.76.40.1, S = 141.76.82.76, Current Address:
user data 141.76.40.
141.76.40.190
D= 18.20.10.1 D= 141.76.40.190
HAddr COA

Foreign Agent
Home Agent Address: 5. Antwort von 5. Antwort von Mobile
Address:
Address: 18.20.10.1 Host
141.76.40.1
1. Paket an Home Agent

S = 141.76.82.76,
D= 141.76.40.190

Corresponding Host
141.76.82.76
costel.aldea@unitbv.ro 22
Mobile IP – Weiterleitung mit Co-located CoA

Home Network 4. Mobile Host entfernt Foreign Network


141.76.40/24 äußeren Header 18.20.10/24

S = 141.76.82.76,
D= 141.76.40.190

3. Encapsulation und Mobile Host


2. COA Weiterleitung an Mobile
ermitteln Permanent
Permanent Add
Host Address:
141.76.40.1
S = 141.76.40.1, Internet 141.76.40.190
S = 141.76.82.76,
D= 18.20.10.100 D= 141.76.40.190
user data Current Addre ss:
18.20.10.10
18.20.10.100
HAddr COA

5. Mobile Host
Foreign Agent
Home Agent sendet Antwort
Address:
Address: an
18.20.10.1
141.76.40.1 Source Address
1. Paket an Home
Agent

S = 141.76.82.76,
D= 141.76.40.190

Corresponding Host
141.76.82.76
costel.aldea@unitbv.ro 23
Mobile IP - Probleme

 Triangle Routing
• Mobile Host und Correspondent Host befinden sich nah
beieinander, evtl. auch in gleichem Subnetz aber weit
entfernt von Home Network
o permanente Adresse verweist auf Home Agent
o Home Agent leitet Pakete an Mobile Host weiter
• Lösung: Mechanismus in IPv6 zur Übermittlung der CoA

 Mikromobilität in zellularen Netzwerken


• häufige Wechsel des Subnetzes erfordern ständige
Aktualisierung des Home Agents
• Lösung: Cellular IP
o hierarchische Aktualisierungen, Cellular IP zur Behandlung
von Zellwechseln innerhalb eines Location Areas,
o Mobile IP nur für Wechsel zwischen Location Areas
costel.aldea@unitbv.ro 24
3. Transportschicht –
Auswirkungen der Mobilität auf
Transportschicht
 TCP für drahtgebundene Netzwerke optimiert
• Annahme: Paketverluste durch Überlast im Router verursacht
• Reaktion: Mechanismen zur Stauauflösung und –vermeidung
o drastische Reduzierung der Senderate und Minimierung des
Sendefensters (Slow Start)
o Erhöhung des Timeout-Intervals für
Übertragungswiederholungen
 Annahme für drahtlose Netzwerke nicht gültig
• Paketverluste werden durch Störungen, Handover und
Abkopplungen verursacht
• gebündelte Fehler treten viel häufiger auf
• höhere Verzögerungs- bzw. Roundtrip-Zeiten
 notwendige Reaktion
• schnelle Fehlerbehandlung
• keine Reduzierung der Paketrate
 Resultat
• Datenraten mit unverändertem TCP wesentlich geringer als
technisch möglich
costel.aldea@unitbv.ro 25
Staubehandlung: Slow Start und Fast Recovery

 Slow Start (Staubehandlung)


• Sendefenster wird nach Timeout of 1 gesetzt
• Timeout wird verdoppelt  verlängert Zeit bis Fehlerbehandlung
 Fast Recovery (schnellere Fehlerbehandlung)
• Wiederholung der Übertragung nach Erhalt dreier gleicher ACKs
• Sendefenster halbiert, keine Erhöhung des Timeouts

costel.aldea@unitbv.ro 26
Ansätze für „Mobile“ TCP

Keine „Mobile“ TCP Änderungen des


Änderunge TCP-Protokolls
n des notwendig
TCP-
Protokolls
Verbergen von Paketverlusten vor TCP Differenzierte Behandlung von Paketverlusten

Transportsschicht Sicherungsschicht Erweiterte Explizite Explizite


Empfängerinform Verlustinform Stauinformat
ation ation ion

Split Connection TCP-Unaware TCP-


Aware

Beispiel: Snoop-Protokoll
Fehlerbehandlung auf
Beispiel: Split-TCP Sicherungsschicht
Nicht abgestimmte/ abgestimmt auf TCP, Ende-
Kein Ende-zu-Ende,
konkurrierende zu-Ende, transienter
Doppeltes Durchlaufen
Fehlerbehandlung auf Zustand, Bruch der
des TCP-Stacks,
Sicherungs- und Transparenz zwischen
Zustandsbehaftet
Transportschicht Protokollschichten
costel.aldea@unitbv.ro 27
Differenzierte Behandlung von Paketverlusten

 Erweiterung des TCP-Protokolls


• Austausch von Übertragungsinformationen zwischen
Kommunikationspartnern
• Ziel: Unterscheidung von Stau und Übertragungsfehlern
 erweiterte Empfängerinformationen Unverändertes TCP
• z.B. Selective Acknowledgements (SACK) SACK
• Array von Sequenznummern als ACK
 explizite Verlustinformationen
• Explicit Loss Notification (ELN)
• Übermittlung von Routerinformationen in TCP-Paketen z.B.
Warteschlangenlänge) -> Erkennung von Stau möglich
• ELN-Bit in TCP ACK gesetzt, wenn Verlust erkannt und Router nicht
überlastet
• Übertragungswiederholung, wenn ELN gesetzt, keine Stauvermeidung
 explizite Stauinformationen
• Explicit Congestion Notification (ECN)
• ECN-bit in TCP Paketen durch Router gesetzt, wenn Paket wegen
Überlast verworfen wird -> Stauvermeidungsmechanismus
costel.aldea@unitbv.ro 28
“Mobile” TCP in der Praxis

 basierend auf RFC 3481: TCP over 2.5G and 3G


 in meisten TCP-Stacks auf mobilen Geräten umgesetzt

 Kombination von Verfahren


• größeres initiales Sendefenster (bis 4 Segmente)
• Sendefenster größer als 64 KB erlaubt  bei größeren
Datenmengen höhere Wahrscheinlichkeit für Fast
Retransmit
• Limited Transmit  Übertragungswiederholung schon
nach 2 duplizierten ACKs
• Nutzung erweiterter Empfängerinformationen (SACK)
• Nutzung expliziter Stauinformationen (ECN)
o Unterstützung in Routern erforderlich
• weitere Mechanismen
costel.aldea@unitbv.ro 29
4. Anwendungsschicht –
Herausforderungen für Web-
Anwendungen
http://en.wikipedia.org/wiki/File:Boston_Globe_responsive_website.jpg

 heterogene Endgeräte
• unterschiedliche Bildschirmgrößen und
Auflösungen
• langsamere CPU, Touch-Eingabe,
Native Look&Feel
 Abhängigkeit von kontinuierlicher,
stabiler Netzwerkverbindung

 Ansatz: Responsive Web Design


• Prinzip beschrieben von Ethan Marcotte
• Web-Seiten-Beschreibung mit einer HTML-Quelle
(keine separate mobile Version!)
• Anpassung durch Cascading Style Sheets (CSS)
• Hauptkonzepte
o Fluid grids
o Flexible images
costel.aldea@unitbv.ro o CSS Media Queries 30
Fluid Grids
12px 69px
960px

#page {width: 90%;} (90% des Browserfensters ->entpricht 960px)

900 ÷ 960 = 0.9375


Banner .banner {width: 93.75%;}

Article Sidebar
566 ÷ 900 = 62.8888889% 331 ÷ 900 = 36.7777778%
.article { .sidebar {
width: 62.8888889%; width: 36.7777778%;
float: left; float: right;
} }

566px 331px

900px

 Seitenlayout basierend auf Gitter


• maximale Breite als Startpunkt
• Layout definiert durch Spalten mit fester Breite und Rand
 Übersetzung fester in proportionale Werte
• % oder em (relative Schriftgröße) für Blockelemente und Schriftgrößen
• Werte jeweils relativ zu Parent-Element:
Elementbreite / Parentbreite = Relativer Wert
costel.aldea@unitbv.ro 31
Skalierbare Bilder

 große Bilder werden nicht automatisch skaliert


• Layout zerstört, wenn Bild breiter als Parent-Element
 Lösung: img {max-width: 100%;}
• erzwingt Skalierung des Bildes zu Breite des Parent-Elements
• Wahrung der Seitenproportionen
 mobile Geräte haben heute eine höhere Auflösung als
Laptops bzw. Desktop-Monitore
• Bilder mit höherer Auflösung für mobile Geräte benötigt
 Lösung: Bereitstellung meherer Qualitätsstufen
• <picture> Element, derzeit vom W3C spezifiziert aber von
Browsern noch nicht unterstützt (siehe Beispiel)
• alternativ Auswahl von Bildvarianten über Javascript
<picture alt="Description of image subject">
<source media="(min-width: 18em)" srcset="med.jpg 1x, med-highres.jpg 2x"> //small layout
<source media="(min-width: 45em)" srcset="large.jpg 1x, large-highres.jpg 2x"> // larger layout
<img src="small.jpg" alt="Description of image //fallback for older browsers
subject.">
</picture>
costel.aldea@unitbv.ro 32
CSS Media Queries

 Definition alternativer Layouts für einen HTML-Markup


• Anzeigen/Verbergen/Verschieben/Skalieren von Elementen
 Media types
• all | aural | braille | handheld | print | projection | screen | tv
 Media features
• width | min-width | max-width | height | min-height | ...
• device-width | min-device-width | max-device-width | device-height | ...
• aspect-ratio | min-aspect-ratio | max-aspect-ratio orientation | ...

 Media Queries sind Kombination aus Media Type und Media features
• @media screen and (min-device-width: 480px) and (orientation: landscape)
• @media screen and (max-width: 1200px) and (min-resolution: 260dpi) and
(aspect-ratio: 1/1)
costel.aldea@unitbv.ro 33
Entwicklung adaptiver Web-Anwendungen

 HTML5 und CSS3 beinhalten wesentliche Technologien


für mobile Web-Seiten
• Device access, CSS3, Multimedia, Offline und Storage,…

 Hauptprinzip: Responsive Web Design


• Skalierbares Layout und Bilder
• Alternative Layouts und Content durch Media Queries
• Ethan Marcotte: Responsive Web Design, A Book Apart, 2011

 Entwicklungsprinzip: Mobile First


• Entwicklung beginnt mit mobiler Version  “schlanke“ Webseiten
• Luke Wroblewski: Mobile First, A Book Apart, 2011

 verschiedene Multi-Device Layout Patterns nutzbar


• Luke Wroblewski:
http://www.lukew.com/ff/entry.asp?1514
costel.aldea@unitbv.ro 34
Ausblick

Ambient Intelligence
Intelligent, Convenient, unobtrusive,
pro-active
Security, open standards

situation adaptive
behavior
Future
Selt-configuration and Intuitive, appealing
Self-management user interfaces
Context perception
and processing

Distributed Ubiquitous Computing


sensors + Disappearing
Information-
actors
analysis &
-description
Pervasive Computing
Surrounding
Mobile Computing Distributed
Wireless access Middleware

Late 80ies Wireless / mobile


communication-
infrastructure Architectures, methods, tools and processes
costel.aldea@unitbv.ro 35
weiterführende Referenzen

 Mobile Communication and Mobile Computing


• Zugangsnetzwerke
• Protokolle
• Anwendungsunterstützung

 Entwicklung verteilter Anwendungen für mobile und ubiquitäre


Systeme
• Kommunikationsaspekte
• Kontextbezug und Adaption
• Plattformen

 Komplexpraktika
• Themenstellungen aus aktuellen Forschungsprojekten
• Arbeit im Team
• Vertiefen und praktisches Anwenden der theoretischen
Grundlagen

costel.aldea@unitbv.ro 36
Gliederung

1. Einführung
2. Bitübertragungsschicht
3. Netztechnologien Teil 1
4. Netztechnologien Teil 2
5. Sicherungsschicht
6. Vermittlungsschicht
7. Transportschicht
8. Netzwerkperformance
9. Internetdienste
10. Multimediakommunikation
11. Verteilte Systeme
12. Mobile Computing
costel.aldea@unitbv.ro 37