Kommunikationssysteme Teil 2.11 - Ethernet

Werbung
Inhalt
Ethernet
Kommunikationssysteme
Teil 2.11 - Ethernet
• 
Netzwerke: Beispiele, Adressierung
• 
Funktionsweise
Stephan Rupp
Informatik Masterstudium
• 
Operationen auf Layer 2 und Layer 3
• 
Ethernet Switches
• 
Systeme auf Layer 2 und Layer 3
• 
Protokolle
www.dhbw-stuttgart.de
Kommunikationssysteme, Teil 2.11, S. Rupp
Informatik Master, PM2100.1, 2013
Netzwerke
2
Kommunikationssysteme, Teil 2.11, S. Rupp
Informatik Master, PM2100.1, 2013
Beispiel: Heimnetz
Lokale Netze (Local Area Networks)
• 
Arbeitsplatz
• 
Zuhause
• 
Telekommunikationsnetze
• 
Automatisierungstechnik
• 
Transport (Schiene, Luft, Wasser)
• 
Medizintechnik
(2) Datei laden
Host
(3) Dokument
drucken
LAN
Switch
(1) Web-Seite
laden
Switch/Hub
Lokales Netz = IP Subnetwork
• 
Teil des Internet bzw. privaten IP-Netzes
• 
Telekommunikationsnetze
Basis für IP basierte Dienste
• 
Verkehrs-Aggregation über “Carrier Ethernet”
3
Network
Printer
Router&
DSL-Modem
• 
Kommunikationssysteme, Teil 2.11, S. Rupp
Host
Informatik Master, PM2100.1, 2013
Web
Server
Wie funktioniert das?
Internet
Kommunikationssysteme, Teil 2.11, S. Rupp
4
Informatik Master, PM2100.1, 2013
Adressen im Heimnetz
192.168.178.21
00:13:02:39:e5:f7
Inhalt
Host
Host
192.168.178.22
00:0a:95:d1:52:30
LAN
IP-Address (L3)
MAC Address
(L2)
Network
Printer
Switch/Hub
192.168.178.1
00:04:0e:73:3f:3d
192.168.178.23
00:80:77:31:b6:45
Router&
DSL-Modem
• 
IP Adressen durch den Router dynamisch vergeben (DHCP)
• 
MAC Adressen vom Hertsller fest in die Netzwerkschnittstellen eingebaut
5
Kommunikationssysteme, Teil 2.11, S. Rupp
Informatik Master, PM2100.1, 2013
Funktionsweise Hub (1) – Anfrage
100:13:02:39:e5:f7
Host
Ethernet
• 
Netzwerke
• 
Funktionsweise: vom Hub zum Switch
• 
Operationen auf Layer 2 und Layer 3
• 
Ethernet Switches
• 
Systeme auf Layer 2 und Layer 3
• 
Protokolle
100:0a:95:d1:52:30
…
100:13:02:39:e5:f7
Host
Host
LAN
LAN
100:0a:95:d1:52:30
Reply message
to 100:13:02:39:e5:f7
Network
Printer
Hub
100:80:77:31:b6:45
100:04:0e:73:3f:3d
• 
Alles basierend auf MAC Adressen
• 
Hub = Multiport Repeater
Kommunikationssysteme, Teil 2.11, S. Rupp
Informatik Master, PM2100.1, 2013
Funktionsweise Hub (2) – Antwort
Host
Request message
to 100:0a:95:d1:52:30
6
Kommunikationssysteme, Teil 2.11, S. Rupp
Weitersend
en an alle
Ports
(Hub = Mu
ltiport Rep
eater)
7
Informatik Master, PM2100.1, 2013
Network
Printer
Hub
100:80:77:31:b6:45
100:04:0e:73:3f:3d
Antwort an
alle Ports
weiter vert
eilen
Geht das auch etwas
schlauer?
Kommunikationssysteme, Teil 2.11, S. Rupp
8
Informatik Master, PM2100.1, 2013
Vom Hub zur Bridge
Funktionweise der Bridge – 1. Anfrage
Router
LAN Segment 1
(local traffic)
LAN
100:13:02:39:e5:f7
Host
Host
Traffic between
segments
Host
Bridge
LAN
Request message
to 100:0a:95:d1:52:30
LAN Segment 2
(local traffic)
LAN
Network
Printer
Bridge
100:04:0e:73:3f:3d
MAC
Host
Ein Hub “lötet” zwei LAN Segmente zusammen: jede Nachrícht wird an alle
Ports weiter verteilt
• 
Eine Bridge “überspannt” zwei LAN Segmente: nur Nachrichten an
Empfänger im jeweiligen Segment werden übermittelt
9
Informatik Master, PM2100.1, 2013
Funktionweise der Bridge – Antwort
100:13:02:39:e5:f7
100:0a:95:d1:52:30
Host
Reply message
from 100:0a:95:d1:52:30
LAN
Network
Printer
Bridge
100:80:77:31:b6:45
100:04:0e:73:3f:3d
MAC
erstes Mal
: Anfrag
Ports weite e an alle
r geben
s
MAC Adresse de
en
rn
le
s
Absender
10
Kommunikationssysteme, Teil 2.11, S. Rupp
100:13:02:39:e5:f7
Message
to 100:0a:95:d1:52:30
LAN
Network
Printer
Bridge
100:80:77:31:b6:45
100:04:0e:73:3f:3d
Nächste A
nfrage nur
an
den betreff
enden Port
Viel weniger Verkehr
und viel sicherer!
Informatik Master, PM2100.1, 2013
100:0a:95:d1:52:30
Host
2
3
A bridge is a hub
with memory.
11
Informatik Master, PM2100.1, 2013
Host
Port
100:13:02:39:e5:f7
100:0a:95:d1:52:30
Kommunikationssysteme, Teil 2.11, S. Rupp
2
Funktionweise der Bridge – 2. Anfrage
Host
Antwort nu
r an den
betreffend
en Port
100:80:77:31:b6:45
Port
100:13:02:39:e5:f7
• 
Kommunikationssysteme, Teil 2.11, S. Rupp
100:0a:95:d1:52:30
Kommunikationssysteme, Teil 2.11, S. Rupp
12
Informatik Master, PM2100.1, 2013
Hubs, Bridges und Switches
Inhalt
Ethernet
Switch: Bridge mit voller
Leitungs-Geschwindigkeit
zwischen allen Ports
Switch
100 Mbps
• 
Netzwerke
• 
Funktionsweise
• 
Operationen auf Layer 2 und Layer 3
• 
Ethernet Switches
• 
Systeme auf Layer 2 und Layer 3
• 
Protokolle
100 Mbps
100 Mbps100 Mbps
13
Kommunikationssysteme, Teil 2.11, S. Rupp
Informatik Master, PM2100.1, 2013
Switching (L2) und Routing (L3)
192.168.178.21
00:13:02:39:e5:f7
Host
MAC Address
Host
Host
Network
Printer
Port No
Router&
DSL-Modem
Internet
Kommunikationssysteme, Teil 2.11, S. Rupp
192.168.178.22
00:0a:95:d1:52:30
LAN
LAN
Switch/Hub
Web
Server
Informatik Master, PM2100.1, 2013
IP Adressen als Host Identifier
Host
Switching
• 
Local Area Netzwerk
• 
Layer 2 Protokolle
14
Kommunikationssysteme, Teil 2.11, S. Rupp
IP Address
192.168.178.1
00:04:0e:73:3f:3d
192.168.178.23
00:80:77:31:b6:45
Port No
Routing
!  Wide Area Netzwerk
!  Layer 3 Protokolle
15
Hub/Switch
Network Printer
Informatik Master, PM2100.1, 2013
• 
• 
IP Addresses: convenient host identifiers
MAC addresses: used for message delivery
Kommunikationssysteme, Teil 2.11, S. Rupp
16
ARP (Address
Resolution Protocol):
Who is 192.168.178.22?
Informatik Master, PM2100.1, 2013
Address Resolution Protocol (1)
192.168.178.21
00:13:02:39:e5:f7
Address Resolution Protocol (2)
Host
Host
Who is
192.168.178.22 ?
192.168.178.21
00:13:02:39:e5:f7
192.168.178.22
00:0a:95:d1:52:30
LAN
Host
Its me, MAC
100:0a:95:d1:52:30
LAN
Protocol Layers
Network
Printer
Hub/Switch
IP
PHY
• 
• 
• 
17
Network
Printer
Hub/Switch
192.168.178.23
00:80:77:31:b6:45
„Who is“ A
nfrag
Ziel-IP-Adre e enthält die
sse reques
t
Kommunikationssysteme, Teil 2.11, S. Rupp
192.168.178.22
00:0a:95:d1:52:30
Host
Informatik Master, PM2100.1, 2013
Mehr Tricks: Multicast
192.168.178.23
00:80:77:31:b6:45
Host replie
s with
MAC adress
MAC
ARP in den Hosts implementiert (L3)
löst IP-Adressen in MAC-Adressen auf
Nur MAC-Adresses werden für die Zustellung verwendet (L2)
Kommunikationssysteme, Teil 2.11, S. Rupp
18
Informatik Master, PM2100.1, 2013
Noch mehr Tricks: Virtuelles LAN
• 
Nachricht an alle Mitglieder der
Multicast-Gruppe weiterleiten
• 
LAN
• 
Broadcast = “Einer an Alle”
• 
Unicast = “Einer an Einen”
VLAN2
VLAN3
Trunk
Multicast Adresse = Identifiziert
eine Multicast Gruppe (Adress-
Multicast Group
Kommunikationssysteme, Teil 2.11, S. Rupp
• 
VLAN1
LAN
Multicast = “Einer an Viele”
Tabelle, Verteiler)
19
Informatik Master, PM2100.1, 2013
• 
Ports und Ethernet-Frames werden gruppiert (Tag = Markierung, Farbklecks)
• 
Segmentierung in einzelne, unabhängige Netze (LAN)
• 
Durch Aufteilung entsteht eine Umgebung mit reduzierter Komplexität.
Kommunikationssysteme, Teil 2.11, S. Rupp
20
Informatik Master, PM2100.1, 2013
Inhalt
Nachrichten Speichern und Weiterleiten
Ethernet
Eingangspuffer
• 
Netzwerke
• 
Funktionsweise
• 
Operationen auf Layer 2 und Layer 3
• 
Ethernet Switches
• 
Systeme auf Layer 2 und Layer 3
• 
Protokolle
Kommunikationssysteme, Teil 2.11, S. Rupp
Ports
2
Switch
21
Switch Route Table
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.11, S. Rupp
Header
Payload
Header IP-Header
IP Paket (im Ehernet Rahmen)
Payload
User
Interface
• 
Konfigurationsparameter
• 
Benutzerschnittstelle (Command
Line, GUI, MMI)
Zustandsbasierte
Entscheidungen
• 
Zustandbasierte Entscheidungen
Software
Nachrichtenverarbeitung basiert auf Informationen im Paketkopf:
• 
MAC Adressen im Ethernet Paketkopf (Header)
• 
Option: Informationen im IP Peketkopf (Header)
• 
ebenso: VLAN tags, Quality of Service tags, …
Implementierung:
• 
Software auf separatem
Mikroprozessor
• 
setzt Register im Switch
• 
Kann für komplexe Routing –
Aufgaben als Multi-Core CPU
realisiert werden
Konfiguration
Switch
Grenzen: Keine zustandsbasierten Entscheidungen möglich
• 
Sequenznummern für Rahmen oder Pakete
• 
Session IDs (Sitzungs-IDs) von Datenströmen
• 
Routen von IP-Paketen
Kommunikationssysteme, Teil 2.11, S. Rupp
23
Informatik Master, PM2100.1, 2013
Switch Controller:
Switch Controller
Ethernet Rahmen (Frame)
22
(1) Speichern
(2) Paketkopf analysieren
(3) Weiterleiten
Konfigurierbarer Switch
Nachricht:
! 
3
1
Nachrichtenverarbeitung im Switch
! 
Ausgangspuffer
Switch Route Table
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.11, S. Rupp
24
Informatik Master, PM2100.1, 2013
Inhalt
Layer 2 Systemarchitektur
Ethernet
System
Switch 1
• 
Netzwerke
• 
Funktionsweise
• 
Operationen auf Layer 2 und Layer 3
• 
Ethernet Switches
• 
Systeme auf Layer 2 und Layer 3
• 
Protokolle
uplinks
Clients
…
IP-Network
Switch 2
Servers
(Processor Blades)
25
Kommunikationssysteme, Teil 2.11, S. Rupp
Informatik Master, PM2100.1, 2013
Layer 3 Systemarchitektur
• 
System: Server Farm (Pizza-Boxen plus Switch, bzw. Server Blades)
• 
Switches: in einfacher oder redundanter Konfiguration (Stern bzw. DoppelStern Topologie)
• 
Server direkt auf Layer 3 adressierbar (Switches = Layer 2, transparent)
Kommunikationssysteme, Teil 2.11, S. Rupp
26
Informatik Master, PM2100.1, 2013
Inhalt
Ethernet
System
Packet
Processor
Switch 1
uplinks
Clients
IP-Network
…
Packet
Processor
Switch 2
Servers
(Processor Blades)
• 
Netzwerke
• 
Funktionsweise
• 
Operationen auf Layer 2 und Layer 3
• 
Ethernet Switches
• 
Vorgelagerte Paket-Prozessoren terminieren Layer 3
• 
Systeme auf Layer 2 und Layer 3
• 
Anwendungen: Load Balancing, SSL Entlastung, Verschlüsselung,
Verarbeitung von TK-Sessions, Schutz (Fire Wall, Deep Packet Inspection,
Anti-Virus), Routers, …
• 
Protokolle
• 
Optionen: Redundanz zur Erhöhung der Verfügbarkeit im Fehlerfall
Kommunikationssysteme, Teil 2.11, S. Rupp
27
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.11, S. Rupp
28
Informatik Master, PM2100.1, 2013
Local Area Networks (LAN)
LAN - Protokolle
Höhere Protokollschichten
IP
Internetwork
LLC/SNAP
Network
Router
LAN
MAC
Link
Host
LAN-PHY
Physical
LAN
Switch/Hub
LAN, Proto
ko
Layer 2, Lay lle,
er 3?
ETHERNET
(IEEE 802 Reference Model)
ISO/OSI Model
Host
7
Application
6
Presentation
5
Session
4
Transport
3
Network
Higher protocol layers
Link Service Access Point
LSAP
2
Link
1
Physical
2b
Logical Link Control (LLC)
2a
Medium Access Control
(MAC)
1
Physical
Quelle: Harald Orlamünder
Quelle: Harald Orlamünder
29
Kommunikationssysteme, Teil 2.11, S. Rupp
Informatik Master, PM2100.1, 2013
2
Link
1
PHY
• 
Management (802.1)
Local Area Network – IEEE Standards
30
Kommunikationssysteme, Teil 2.11, S. Rupp
Informatik Master, PM2100.1, 2013
VLAN – Rahmenformat
QTag Prefix
Logical Link Control (802.2)
Bridging (802.1)
Destination Source
Address
Address
Ethernet MAC (802.3)
Wireless MAC (802.11)
…
LAN-PHY (802.3)
Wireless MAC PHY (802.11)
…
6 octet
Ebenfalls verfügbar zur Implementierung von Switches:
• 
IEEE Referenzmodell
• 
Verschiedene physikalische Layer (Coax, Copper Pairs, optical fibre),
Übertraguns-Modi (half duplex, full duplex) und Geschwindigkeiten
• 
Klassifikation zB. 10 BASE-5, 100 BASE-FX, …
6 octet
Tag
Tag
Type
Type Control
2
2
2
octet octet octet
Data
46 ... 1500 octet
Priority
ID
CFI
VLAN-ID
3 Bit
1 Bit
12 Bit
PAD
FCS
4
octet
CFI Canonical Format Identifier
FCS Frame Check Sequence
PAD Padding
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.11, S. Rupp
31
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.11, S. Rupp
32
Informatik Master, PM2100.1, 2013
Konfigurierbarer Switch (L3 Switch)
Ethernet- und IEEE 802.3-Rahmen
Ethernet-Rahmen
Konfigurierbarer Switch:
• 
hat eigene IP Adresse zum Anschluss eines Terminals zur Konfiguration
• 
Konfiguration über CLI (Command Line Interface), SNMP, TELNET
Destination Source
Address Address
6
6
Type
2
Ethernet/Bridging Protokolle (Layer 2)
• 
Information (IP-Packet)
CRC
46 ... 1500
4
IEEE 802.3 Rahmen
Link aggregation (802.3ad), VLANs (802.1Q), Spanning Tree (802.1D,
802.1w), QoS (802.1p), Flow control (802.3x), GVRP, GMRP
Destination Source
Address Address
6
IP Routing Protokolle (Layer 3)
• 
OSPFv2, RIPv2, VRRP, IGMP snooping, IPv4 forwarding, DiffServ, ARP,
ICMP
• 
DCHP Client/Server: Empfang/Verteilung lokaler IP Adressen
6
Len LLC/SNAP
2
Information (IP-Packet)
8
CRC
38 ... 1492
4
MAC
Protokoll Schichten
DSAP SSAP
IP
1
PHY MAC
1
LLC
crtl.
1
Org.Code
Type
3
2
SNAP
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.11, S. Rupp
33
Informatik Master, PM2100.1, 2013
Zuletzt: ARP-Demo
34
Kommunikationssysteme, Teil 2.11, S. Rupp
Informatik Master, PM2100.1, 2013
Kommunikationssysteme
Eine Demonstration der Funktionsweise des Address Resolution Protokolls (ARP)
gibt es unter: http://www.oxid.it/downloads/apr-intro.swf
Bemerkungen:
• 
ARP ist ein sogenanntes “zustandsloses” Protokoll, d.h. das Protokoll
kümmert sich nicht darum, ob eine Anfrage oder eine Antwort zur gleichen
Transaktion gehören oder nicht
• 
Diese Eigenschaft macht ARP sehr leicht verwundbar gegen Lauschangriffe
(Mithören bzw. Mitverfolgen aller Sessions, wie FTTP, VoIP, etc, sowie
verwundbar gegen aktive Angriffe (Manipulierte Daten, Man in the Middle)
• 
Die Verwundbarkeit ist begrenzt auf das LAN bzw. IP-Subnetz
• 
Es gibt jedoch Angriffsmöglichkeiten auf allen Ebenen.
ENDE Teil 2.11
Ethernet
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.11, S. Rupp
35
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.11, S. Rupp
36
Informatik Master, PM2100.1, 2013
Inhalt
Internet - Das Netz der Netze
Kommunikationssysteme
Teil 2.12 - Internet
• 
Historie
• 
Protokolle
Stephan Rupp
Informatik Masterstudium
• 
Adressierung im Internet
• 
IP-Netze
• 
Standardisierung
www.dhbw-stuttgart.de
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Internet Historie - ARPANET
1969
4 Rechner sind
verbunden:
>  Los Angeles
>  Stanford
>  Santa Barbara
>  Salt Lake City
2
Informatik Master, PM2100.1, 2013
Internet - Forschungsnetz & TCP/IP
Mitte der 1960er Jahre:
ein militärisches Experiment mit
dem Ziel einer zuverlässigen
Kommunikation.
Aus dieser Forderung resultiert der
verbindungslose Betrieb.
Gefördert durch die DARPA
(Defence Advanced Research
Projects Agency
das:
ARPANET
(Advanced Research Project
Agency Network)
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Kommunikationssysteme, Teil 2.12, S. Rupp
1972/73
Das Netz wird für Universitäten
und Forschungszentren
geöffnet.
1973
schon 37 Rechner
sind verbunden
1982
Eine neue Protokoll-Generation
wird eingeführt:
TCP/IP
(Transmission Control Protocol/
Internet Protocol)
Quelle: Harald Orlamünder
3
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
4
Informatik Master, PM2100.1, 2013
Internet - NSFNET
Die Geschichte der Rechner-Technik
1986
Das ARPANET
wird an die NSF
(National Science
Foundation) übergeben
und wird zum
Große Maschinen, nicht vernetzt,
Eingabe: Lochkarten,
Ausgabe: Drucker
Datennetz
Weitere
Miniaturisierung,
Vernetzung wird
Standard
NSFNET
1989
Die Universität in Dortmund
wird als erster Rechner in
Deutschland an das Netz
angeschlossen.
1989
Das ARPANET stellt
seinen Betrieb ein
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Quelle: Harald Orlamünder
5
Informatik Master, PM2100.1, 2013
Die Geschichte der Rechner-Bedienung
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Die Rolle der Beteiligten
Die ehemaligen Studenten der
Forschungsprojekte
gehen in die Industrie und zu
Netzbetreibern und werden
Entscheidungsträger .....
“Batch”-Betrieb,
Ausgabe auf
Drucker, mit
zeitlicher
Verzögerung
Interaktiver Betrieb,
benutzerfreundlich durch
Fenster-Technik
(graphische
Benutzeroberflächen)
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
6
.... sie bringen ihr Know-how
bezüglich Datennetzen und dem
Internet ein und beeinflussen
die weitere Entwicklung der
Telekommunikation.
Quelle: Harald Orlamünder
7
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
8
Informatik Master, PM2100.1, 2013
Die Entwicklung der Paket-Protokolle
1980
Personal
Computer
1972
E-Mail
Nicht berücksichtigt:
OSI-Protokolle und
Inhalt
firmenspezifische
Protokolle.
1993
Web-Browser
Internet - Das Netz der Netze
IPv6 (1995)
IPv4 (1981)
RPR (2004)
100 Mb/s -1 Gb/s -10 Gb/s
10 Mb/s
ARPANET
(1969)
Ethernet (1974)
Studien zu
Packet
Switching
PPP (1994)
Frame Relay
(1988)
LAPS (2001)
MPLS (2001)
X.25
(1976)
Ideen
zu einem
B-ISDN
1970
1960
• 
Historie
• 
Protokolle: IPv4, IPv6, TCP, UDP, Schicht 2 Protokolle
• 
Adressierung im Internet
• 
IP-Netze
• 
Standardisierung
GFP (2001)
ATM
(1988)
1980
1990
2000
2010
Quelle: Harald Orlamünder
9
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Vergleich der Protocol-Stacks
ISO/OSI Modell
DOD Modell
Transport
Beispiel
Application
Application
&
Utility
Session
& Utility
Treiber
Transport
Internetwork
Network
TCP/IP
Application
Remote File
WWW
Login
Transf.
E-Mail
Voice
....
Name
Service
Utility
TELNET FTP
SMTP
RTP
TFTP
DNS
Transport
TCP
Internetwork
IP
Network
LLC/SNAP
&
Network
Link
HTTP
...
X.25
UDP
AAL-5
...
....
ATM
GFP
....
Phy
Phy
....
PPP
Link
Physical
Informatik Master, PM2100.1, 2013
TCP-IP Protocol Stack
Application
Presentation
10
Kommunikationssysteme, Teil 2.12, S. Rupp
ETHERNET
Physical
Link
MAC
Physical
LAN-PHY
HDLC
SDH
ISDN
V.24
V.35
DOD = Department of Defence (Amerikanisches Verteidigungsministerium)
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Quelle: Harald Orlamünder
11
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
12
Informatik Master, PM2100.1, 2013
Internet Protocol
Protokollkopf des Internet Protocols
Das wichtigste Protokoll ist das
Protokoll der
höheren Schicht
Internet Protocol (IP)
RFC 791
0
Internet Protocol, DARPA Internet Program Protocol Specification
J.Postel, September 1981
als gemeinsame Schicht mit den Zusatzprotokollen:
Internet Control Message Protocol (ICMP),
RFC 792
Internet Control Message Protocol (J.Postel, September 1981)
Address Resolution Protocol (ARP),
RFC 826
Header
Version Length
Time to Live
12
Type of Service
Identification
16
24
28
31
Packet Length
0
Protocol
20
D M
Fragment Offset
F F
Header Checksum
Destination Address
Options
Reverse Address Resolution Protocol
(R. Finlayson, T. Mann, J.C. Mogul, M. Theimer, Juni 1984)
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
8
immer in einer
32-Bit-Struktur
Fragmentierung
Source Address
Ethernet Address Resolution Protocol: Or converting network protocol
addresses to 48.bit Ethernet address for transmission on Ethernet
hardware (D.C.Plummer, November 1982)
Reverse Address Resolution Protocol (RARP)
RFC 903
4
Qualität
Padding
Routing
Auflösen von Schleifen
Quelle: Harald Orlamünder
13
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
14
Informatik Master, PM2100.1, 2013
IPv6 - Die Ideen für ein neues Protokoll
IPv6 - Zeitlicher Ablauf
• 
• 
1991: Das IAB (Internet Activities Board, heute: Internet
Architecture Board) beginnt mit Studien zum Wachstum
des Internet.
• 
1994: Eine Arbeitsgruppe in der IETF veröffentlicht
den RFC 1752: The Recommendation for the IP Next
Generation Protocol
1996: In 5 RFCs werden die Details von IPv6 nieder
gelegt. (RFC 1883, 1884, 1885, 1886, 1933)
• 
• 
Das gegenwärtige Internet Protokoll - Version 4 - wurde
1981 entwickelt. Seit dieser Zeit läuft es gut im Internet,
war aber nie für ein so großes Netz wie es das heutige
Internet darstellt, gedacht.
Es gibt einige Defizite im Protokoll die z.B. Sicherheit,
Mobilität und Qualität betreffen. Sie werden heute über
Zusatzprotokolle abgewickelt (Mobile-IP, IPsec,...).
1991 wurde mit den Arbeiten zu einer neuen Version Version 6 - begonnen, die alle neuen Ideen beinhalten
und die Version 4 ersetzen sollte.
• 
• 
1998: Ein neuer Satz von RFCs wurde veröffentlicht,
4 der Ursprungs-RFCs wurden ersetzt und die Struktur
des Paketkopfes sowie die Adressierung geändert. (Am
wichtigsten ist RFC 2460: IPv6 Specification
(IP Version 5 war für das „Stream Protocol“ (ST) reserviert, das keine Bedeutung erlangte.)
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Quelle: Harald Orlamünder
15
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
16
Informatik Master, PM2100.1, 2013
IPv6 Grundlagen - Paketkopf - Struktur
0
4
8
12
VersionTraffic Class
16
20
IPv6 – Migration - Interworking-Fälle
24
28
31
Flow Label
Next Header
Payload Length
1. Kommunikation zwischen Hosts in verschiedenen Protokoll-Welten.
Hop Limit
IPv6
IPv4
2. Kommunikation zwischen IPv6-Hosts über ein IPv4-Zwischennetz
Source Address
IPv6
IPv6
IPv4
3. Kommunikation zwischen IPv4-Hosts über ein IPv6-Zwischennetz
Destination Address
IPv6
IPv4
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Quelle: Harald Orlamünder
17
Informatik Master, PM2100.1, 2013
18
Kommunikationssysteme, Teil 2.12, S. Rupp
IPv6 - Zusammenfassung
Internet Control Message Protocol
• 
• 
ICMP-Anfrage und -Antwort
IPv6 ist nicht die beste Lösung für ein neues Protokoll.
IPv6 alleine reicht nicht aus, es werden zusätzliche
Protokolle in „Version 6“ benötigt.
Es gibt Übergangszeit der „Migrations-Szenarien“ mit all
ihren Nachteilen.
• 
• 
Trotzdem: wegen der erwarteten Adressknappheit wird
IPv6 eingeführt werden, Start 2012.
• 
IPv4
0
7 8
15 16
23 24
IP-Header
Type
Code CRC
Daten
Informatik Master, PM2100.1, 2013
ICMP-Fehlermeldung
31
0
20 Oktett
8 Oktett
7 8
15 16
23 24
31
IP-Header
Type
Code CRC
Daten
Treiber für die Einführung sind:
• 
Mobilfunk (3G) wegen der „Always-On-Eigenschaft“.
• 
Der Asiatisch-Pazifische-Raum wegen der wenigen IPv4Adressen, die dort registriert sind
• 
Europa, politisch motiviert für eine neue Generation Internet.
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Protokoll zur Überwachung
und Fehlerbehandlung des
IP selbst.
20 Oktett
8 Oktett
IP-Header
Daten
des Fehlerverursachenden Paketes
Quelle: Harald Orlamünder
19
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
20
Informatik Master, PM2100.1, 2013
Internet Control Message Protocol
Typ
00
08
09
0A
0D
0E
F2
F3
03
03
04
05
05
05
05
0B
0B
0C
0C
Transportprotokolle - TCP und UDP
Code
Bedeutung
00 Echo request
Anfragen und
00 Echo reply
Antworten
00 Router advertisement
z.B. für „PING“
00 Router solicitation
00 Timestamp request
benutzt
00 Timestamp reply
00 Address Mask request
00 Address Mask reply
00 Network unreachable
Fehlermeldungen :
......
Ziel unerreichbar
0F Precedence cutoff in effect
00 Source Quench
00 Redirect for Network
Fehlermeldungen :
01 Redirect for Host
Umleitungen
02 Redirect for Type of Service and Network
03 Redirect for Type of Service and Host
00 Time to live equals zero during transit
Fehlermeldungen :
01 Time to live equals zero during reassembly
Zeitgeber
00 IP Header bad
Fehlermeldungen :
Quelle: Harald Orlamünder
01 required option missing
Parameter
21
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
IP transportiert TCP oder UDP
RFC 793 Transmission Control Protocol, DARPA Internet Program
Protocol Specification (J.Postel, August 1980)
RFC 2581 TCP Congestion Control
(M.Allman, V.Paxson,W.Stevens; April 1999)
und das verbindungslose
User Datagram Protocol (UDP)
RFC 768 User Datagram Protocol (J.Postel, September 1981)
Quelle: Harald Orlamünder
22
Kommunikationssysteme, Teil 2.12, S. Rupp
Protokoll der
höheren Schicht
0
IP-Paketkopf
UDP-Paket
(verbindungslos)
UDP- Paketkopf
TCP-Paketkopf
TCP- Paket
oder
UDP-Paket
4
Informatik Master, PM2100.1, 2013
Nutzdaten
Flußkontrolle
8
12
Source Port
16
20
28
31
Destination Port
Achnowledge Number
Res.
U A P R S F
R C S S Y I
G K H T N N
Checksum
Window Size
Urgent Pointer
Options
Quelle: Harald Orlamünder
24
Sequence Number
Data Offset
Nutzdaten
Kommunikationssysteme, Teil 2.12, S. Rupp
Transmission Control Protocol (TCP)
TCP Protokollkopf
IP-Paket
(verbindungslos)
TCP-Paket
(verbindungsorientiert)
Die beiden wichtigsten Protokolle der Transportschicht sind
das verbindungsorientierte
Padding
Quelle: Harald Orlamünder
23
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
24
Informatik Master, PM2100.1, 2013
Verbindungen mit TCP
TCP - Timeout
Endsystem A
Endsystem B
Endsystem A
Flags: SYN - SEQ=875;
VerbindungsAufbau (set up)
Flags: SYN, ACK - SEQ=156, ACK=876
Flags: SYN, ACK - SEQ=876, ACK=157
16 Oktett
Daten
aktive Phase
der Verbindung
Endsystem B
Flags: ACK - SEQ=876, ACK=157
beide SequenzNummern sind
ausgetauscht.
Flags: ACK - SEQ=877, ACK=157
T
Timeout, daher
Paket wiederholt
100 Oktett
Daten
Flags: ACK - SEQ=157, ACK=893
Flags: ACK - SEQ=877,ACK=157
Flags: ACK - SEQ=893,ACK=258
T
Flags: ACK - SEQ=157, ACK=893
Flags: ACK, FIN - SEQ=258, ACK=894
Flags: ACK, FIN - SEQ=894, ACK=259
Flags: ACK - SEQ=259, ACK=895
Quelle: Harald Orlamünder
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
25
Informatik Master, PM2100.1, 2013
TCP - Bestätigung für mehrere Pakete
Endsystem A
Puffergröße
Flags: ACK - SEQ=877, ACK=157
Flags: ACK - SEQ=1300, ACK=157
Flags: ACK - SEQ=1766, ACK=157
Betstätigung
nur für das
letzte Oktett
Informatik Master, PM2100.1, 2013
TCP Ablauf der Flußkontrolle
Endsystem B
Flags: ACK - SEQ=1020, ACK=157
26
Kommunikationssysteme, Teil 2.12, S. Rupp
1000 Oktetts
sind
übermittelt
Zeitüberschreitung für
die Bestätigung
Fesntergröße
Verbindungsabbau
(tear down)
Schwelle
„congestion avoidance“
linearer Bereich
1/2 Schwelle
„slow start“
z.B. exponentieller
Bereich
Flags: ACK - SEQ=157, ACK=1878
WindowGröße
beachten !
Timeout
beachten !
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
TCP-Segment
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Quelle: Harald Orlamünder
27
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
28
Informatik Master, PM2100.1, 2013
TCP - Kritische Punkte der Flußkontrolle
UDP - Protokollkopf
Aufgrund der Flusskontrolle nicht geeignet für EchtzeitAnwendungen (Beschränkung der Bandbreite im Fall von
Engpässen im Netz).
Nur eine kleine Erweiterung des IP Protokolls:
• 
• 
Schutz des UDP-Protokollkopfes durch eine Prüfsumme (CRC).
• 
Auswahl des richtigen Dienstes (=höhere Schichten)
Echtzeit-Anwendungen nutzen UDP.
Protokoll der
höheren Schicht
Die Bandbreite wird nicht „fair“ zwischen den Benutzern
aufgeteilt.
• 
Verbindungen mit kurzen Paketverzögerungszeiten erhalten
mehr Bandbreite.
„Pump-Effekt“ bei der Bandbreite aufgrund des Flusskontrollmechanismus.
• 
0
4
8
12
16
20
24
Source Port
Destination Port
Length
UDP Checksum
28
31
Das System nähert sich langsam der bereitgestellten Kapazität
im Netz an und startet im Fehlerfall (Überschreiten der
spezifizierten Quittungszeit) von vorne (Startlevel).
Quelle: Harald Orlamünder
Quelle: Harald Orlamünder
29
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Socket Definition
30
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Socket Anwendung
Das Tupel aus IP-Adresse und Port-Nummer
wird „Socket“ genannt (Steckverbinder für Anwendungen).
Client
Anwendungen
telnet
Server
http
Diese Darstellung veranschaulicht
den Begriff eines „Socket“ deutsche Übersetzung: Fassung,
Muffe, Hülse,...
ftp
Die Anwendung wird „eingesteckt“
Socket
Internet
IP / TCP / UDP
Destination IP-Adresse:
192.168.70.30
23
Destination Port-Nummer:
67.204.13.6
Source IP-Adresse:
PPP / Physik
4711
Source Port-Nummer:
Leitung
Socket
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Quelle: Harald Orlamünder
31
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
32
Informatik Master, PM2100.1, 2013
Die heutige Protokollvielfalt
Schicht-2-Protokolle
IP-Pakete können über viele Übertragungsmedien übertragen
werden.
IP (IPv4, IPv6)
LANE/
MPOA
LLC/
SNAP
MPLS
AAL-5
• 
Ethernet MAC
RPR
PPP
Dazu werden jeweils verschiedenen Schicht-1- und
Schicht-2-Protokolle eingesetzt:
• 
LAPS
FR
ATM
GFP
HDLC
PDH, SDH (Virtual Container)
Ethernet
PHY
1G,10G
Ethernet
PHY
<1G
OTH (Optical Channel OCh)
Kabel
Glasfaser
Quelle: Harald Orlamünder
33
Informatik Master, PM2100.1, 2013
Local Area Network als Transport von IP
Remote File
WWW
Login
Transf.
E-Mail
Voice
....
Name
Service
Utility
TELNET FTP
SMTP
RTP
TFTP
DNS
Transport
TCP
Link
Physical
HTTP
...
UDP
IP
LLC/SNAP
Router
LAN
MAC
Host
LAN-PHY
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
34
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Local Area Network CSMA/CD Ablauf
Application
Network
Nutzung von ATM, MPLS (Classical IP over ATM,
MPLS, MPOA, ...)
Kabel
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Internetwork
• 
Local Area Networks - mit Medium Access Control
(Ethernet, Token Ring, ...)
Point-to-Point-Protokoll über verschiedene Medien
(RFC 1661 The Point-to-Point Protocol, W.Simpson, Juli
1994)
Station will senden
ja
Carrier
Sense
Multiple
Acceess
/
Collission
Detect
Aktivität
auf dem
Bus ?
nein
&Station sendet
ihre Nachricht
Station hört auf
dem Bus
eine andere
Station sendet
gleichzeitig
nein
ja
Station sendet ein
„Jamming“-Signal
Nachricht gesendet
Station wartet
eine zufällige
Zeitspanne ab
Quelle: Harald Orlamünder
35
6.
Semester,
Nachrichtentechnik,
2012
Informatik
Master,
PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
36
Informatik Master, PM2100.1, 2013
LAN (Local Area Network)
IP über Telekommunikationsnetze
Ethernet- und IEEE 802.3-Rahmenstruktur
Ethernet-Rahmen
DestinationSource
Address Address
6
6
Type Information (IP-Paket)
2
CRC
46 ... 1500
4
IEEE 802.3 Rahmen
DestinationSource
Address Address
6
6
Len
2
LLC/SNAP Information (IP-Paket)
8
CRC
38 ... 1492
4
MAC
DSAP SSAP crtl.
1
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
1
LLC
1
37
Org.Code
3
Type
SNAP
Informatik Master, PM2100.1, 2013
Ein Protokoll um die Übertragungsstrecke auf- und
abzubauen, zu konfigurieren und zu testen,
das Link Control Protocol (LCP).
Ein entsprechendes Steuerprotokoll, um verschiedene
Schicht-3-Protokolle auf- und abzubauen und zu
konfigurieren,
das Network Control Protocol (NCP).
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
E-Mail
Voice
....
Name
Service
Utility
TELNET FTP
SMTP
RTP
TFTP
DNS
Transport
TCP
Internetwork
IP
Network
HTTP
...
PSTN/ISDN
Link
UDP
X.25
PPP
ÜT-Netz
HDLC
Physical
Modem
SDH
ISDN V.24
V.35
38
Informatik Master, PM2100.1, 2013
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
PPP - Rahmenstruktur
Das PPP besteht aus drei Komponenten:
• 
Eine Methode um Paket-Daten entsprechend verpackt zu
übertragen - PPP Encapsulation.
Dabei wird von einer bidirektionalen VollduplexÜbertragung ausgegangen.
• 
Remote File
WWW
Login
Transf.
2
Point-to-Point Protocol (PPP) - Prinzip
• 
Application
Kennzeichnet das entsprechende, transportierte Protokoll
(Network Layer Protocol, Link Control Protocol, Network Control Protocol, ...)
PPP-Rahmen
Protokoll Information (z.B. IP-Paket)
Padding
„unnumbered information“ (UI)
„all stations“
Flag
Address
Control
011111110
11111111
00000011
Information
FCS
Flag
011111110
HDLC-Rahmen
Quelle: Harald Orlamünder
39
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
40
Informatik Master, PM2100.1, 2013
Inhalt
Namen und Adressen im Internet
Internet - Das Netz der Netze
Die Internet-Architektur kann bezüglich Namen und Adressen
als dreistufige Struktur angesehen werden:
• 
Historie
• 
• 
Protokolle
• 
Adressierung im Internet: IP-Adressen, Domains, URLs
• 
IP-Netze
• 
Standardisierung
die IP-Adressebene erlaubt es, Geräte im Internet (Hosts und
Router) anzusprechen und einen Weg zwischen solchen Geräten
ausfindig zu machen.
z.B.: 192.168.70.30
• 
die DNS-Namensebene erlaubt es, ein System im Internet
anzusprechen, das eine Anwendung bietet (Host-System).
z.B.: www.dhbw-stuttgart.de
• 
die Ressourcen-Ebene erlaubt es, verschiedenste Internet
Ressourcen anzusprechen (Uniform Resource Locator (URL)/
Uniform Resource Name (URN)/Uniform Resource Indicator (URI).
z.B.: http://dhbw-stuttgart/news/983010.htm
Quelle: Harald Orlamünder
41
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
IP-Adressen für IPv4 - Allgemein
Klasse A
ist 32 Bit lang (> 4x10E9 Adressen);
• 
ist strukturiert in einen “Network Identifier” (Net-ID)
und einen “Host Identifier” (Host-ID);
0 Net-ID
15 16
Klasse B
31
16,7 MIO. Adr.
1 0 Net-ID
Host-ID
16 000 Adr.
Klasse C
23 24
Host-ID
128 Adr.
32 Bit
n x 8 Bit
65 000 Adr.
1 1 0Net-ID
Host-ID
2 MIO. Adr.
Host-ID
Klasse D
1 1 1 0Multicast Group
Klasse E
1 1 1 1 Experimental
256 Adr.
wird im „dotted-decimal“ Format geschrieben, z.B.:
192.168.70.30
• 
7 8
0
• 
• 
Informatik Master, PM2100.1, 2013
Adress-Klassen für IPv4
Die IPv4 Adresse:
Net-ID
42
Kommunikationssysteme, Teil 2.12, S. Rupp
wird von verschiedenen Organisationen verwaltet
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
Strukturierung verursacht Adress-Knappheit!
RFC 1020
Quelle: Harald Orlamünder
43
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
44
Informatik Master, PM2100.1, 2013
Lösung der Adress-Knappheit (1)
Lösung der Adress-Knappheit (2)
Classless Inter Domain Routing (CIDR)
Dynamic Host Configuration Protocol (DHCP)
• 
Jedes Netz erhält eine Serie von aufeinanderfolgenden Class C
Adressen und eine „Maske“.
• 
Die Maske zeigt an, welcher Teil der Adresse die „Net-ID“ bildet.
• 
Beispiel: ein Netz, das 2048 Adressen benötigt,
erhält 8 Class C Adressen und eine Maske „255.255.248.0“.
• 
Der einzelne Host hat keine feste IP-Adresse, sondern beim
Einloggen erhält er dynamisch eine aus einem Pool.
• 
Erweiterung des alten BOOT-Protokolls (BOOTP).
AdreßPool
DHCPServer
Net-ID
DHCP
Host-ID
DHCP
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
IP-Netz
Host 1
Maske 255.255.248.0
RFC 1518 und RFC 1519
Quelle: Harald Orlamünder
Host 1
Host 2
Host 2
Adresse 1
Adresse 2
Adresse 1
t
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
45
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
46
RFC 2131
Informatik Master, PM2100.1, 2013
Lösung der Adress-Knappheit (3)
Subnetz-Adressen für IPv4
Network Address Translator (NAT) für Intranets
Große Intranets wollen ihren internen Bereich ebenfalls
strukturieren. Die IP-Adresse wird dazu in drei Teile zerlegt:
• 
Der NAT ist eine Einheit, die interne (lokale) IP-Adressen (z.B. von
innerhalb eines Intranets) in externe (globale) IP- Adressen
übersetzt.
• 
Lokale IP-Adressen sind nicht eindeutig und können in anderen
Intranets wiederverwendet werden.
• 
Der Mechanismus ist natürlich nur dann brauchbar, wenn mehr
lokale als globale Adressen benötigt werden.
(Problem wenn Extern-Verkehr überwiegt !)
• 
• 
Net-ID - vom Internet benutzt,
• 
Subnet-ID - vom Intranet für Netzstruktur benutzt,
• 
Host-ID - vom Intranet für Hosts benutzt.
„Extended Network Prefix“
SubnetzID
Netz-ID
Host-ID
11111111 11111111 111111 00 00000000
Einige Adressblöcke sind für Intranets reserviert:
Sicht eines Routers außerhalb des Firmennetzes
10.0.0.0 –
10.255.255.255
1x Class A
172.16.0.0 –
172.31.255.255
16x Class B
192.168.0.0 – 192.168.255.255
256x Class C
Maske
255.255.252.0
Kommunikationssysteme, Teil 2.12, S. Rupp
Sicht eines Routers innerhalb des Firmennetzes
RFC 1631 und RFC 1918
Quelle: Harald Orlamünder
Host-ID
Netz-ID
Netz-ID
Host-ID
Quelle: Harald Orlamünder
47
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
48
Informatik Master, PM2100.1, 2013
IPv6 – Addressing - Allgemein
Domain Name System - Allgemeines
Die IPv6-Adresse ist: 128 Bit lang (>3x1038 Adressen) oder genau:
Für eine bessere „Lesbarkeit“ wurde
das „Domain Name System“ erfunden.
Es besteht aus hierarchischen
Strukturen für Nutzer und Hosts. Die
„Top Level Domain“ (TLD) kennzeichnet Kategorien oder Länder
340 282 366 920 938 463 463 374 607 431 768 211 456
Der Adressraum ist so gross, dass selbst mit einer
strukturierten Adresse mehr als 1500 Adressen pro m2
Erdoberfläche zur Verfügung stehen.
strukturiert (nur die „Aggregable Global Unicast Address“ ist im Detail
spezifiziert);
die letzten 64 Bit werden „Identity“ genannt
(sie bleiben auch bei Wechsel des Providers erhalten);
wird im hexadezimalen „colon“-Format, geschrieben,
(8 Anteile je 16 Bits) z.B.:
108F:0:0:0:8:800:200C:417A
Quelle: Harald Orlamünder
Host
www.dhbw-stuttgart.de
Top Level Domain
generic TLDs (gTLD)
.com = Commercial
.net = Administrative Organisations
.org = other Organisations
.int = international Organisations
.edu = Education (de facto nur USA)
.gov = Government (nur USA)
.mil = Military (nur USA)
country code TLDs (ccTLD)
.de = Germany
.fr = France
.uk = United Kingdom
.at = Austria
.au = Australia
........
Code gemäß ISO 3166
  76% aller Domains
  24% aller Domains
Quelle: Harald Orlamünder
49
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
50
Informatik Master, PM2100.1, 2013
Prinzip des Domain Name Server
DNS-Anfrage über mehrere Server
Zum Routen der Pakete muss eine Übersetzung zwischen dem Namen
Falls der „Primary Domain Name Server“ die Adresse nicht über-setzen
nach dem Domain Name System und der 32-Bit-IP-Adresse
durchgeführt werden.
www.dhbw-stuttgart.de
192.168.70.30
Client
fragt Server
kann, werden weitere Domain Name Server hinzugezogen:
„host.company.de“
fragt nach
„ftphost.dept.company.jp“
Top Level DNS
„.de“
Top Level DNS
„.jp“
Primary DNS
„company.jp“
Server antwortet
mit IP-Adresse
Kommunikation
zwischen den DNS,
die IP-Adresse wird
zurückgegeben
Domain Name Server
Direkte Kommunikation mit IP-Adressen
host.company.de
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
51
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
Quelle: Harald Orlamünder
52
ftphost.dept.company.jp
Informatik Master, PM2100.1, 2013
E-Mail Adressen sind Namen
URI / URL / URN - Definitionen
• 
• 
• 
Eine E-Mail-Adresse (die in Wirklichkeit ein Name ist) korrespondiert
Der Universal Resource Identifier (URI) ist ein Konzept: „to
mit dem Domain Name System.
encapsulate a name in any registered name space, label it with the
Nur der angesprochene Host (also der E-Mail-Server) kennt die
name space and producing a member of the universal set“.
• 
einzelnen Adressaten.
Der Uniform Resource Locator (URL) ist ein URI „which refers to
objects accessed with existing protocols“.
• 
Host =
E-Mail Server
<scheme>:<scheme specific part>
[email protected]
Adressat
Sein Aufbau entspricht folgendem Schema :
• 
more persistent names than any URL“
Top Level Domain
Quelle: Harald Orlamünder
Der Uniform Resource Name (URN) ist ein Versuch „to define
Quelle: Harald Orlamünder
53
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
Uniform Resource Locator - Format
Inhalt
Ein URL gibt Objekten im Internet einen Namen, z.B.:
Internet - Das Netz der Netze
Server
Directory
File
54
Informatik Master, PM2100.1, 2013
• 
Historie
http://www.dhbw-stuttgart.de/themen/aktuelles/news.html
• 
Protokolle
Scheme
• 
Adressierung im Internet: IP-Adressen, Domains, URLs
• 
IP-Netze: Netzstrukturen, Routing, Netzelemente
• 
Standardisierung
Path
ftp
http
gopher
mailto
news
nntp
telnet
wais
file
prospero
File Transfer protocol
Hypertext Transfer Protocol
The Gopher protocol
Electronic mail address
USENET news
USENET news using NNTP access
Reference to interactive sessions
Wide Area Information Servers
Host-specific file names
Prospero Directory Service
RFC 1630 und RFC 1738
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.12, S. Rupp
55
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
56
Informatik Master, PM2100.1, 2013
Das „Internet“ als Netz
R
R
N
Inhalt
ISP 1
S
R
N
R
ISP 2
S
R
N = Network Access Server
R = Router
S = Server
CIX = Commercial Internet Exchange
ISP = Internet Service Provider
R
1.
N
N
N
R
2.
CIX
R
R
R
N
ISP 4
S
R
Internet - Das Netz der Netze
S
3.
Back- R
bone
ISP
R3
S
N
Internet
• 
Historie
• 
Protokolle
• 
Adressierung im Internet
• 
IP-Netze
• 
Standardisierung
R
1. Router-Paar
2. unabhängiger Router „CIX“
3. unabhängiges IP-Backbone
N
Quelle: Harald Orlamünder
57
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Standardisierung im Internet
58
Kommunikationssysteme, Teil 2.12, S. Rupp
Informatik Master, PM2100.1, 2013
Kommunikationssysteme
300
Anzahl RFC
250
Entwicklung der RFCs
ENDE Teil 2.12
200
Internet
150
100
Literaturempfehlung: Harald Orlamünder, Paket-basierte Kommunikations-Protokolle: Hüthig
50
Telekommunikation; Auflage: 1 (2005) ISBN-13: 978-3826650468
0
1970
1975
1980
Kommunikationssysteme, Teil 2.12, S. Rupp
1985
1990
59
1995
2000
2005 Jahr
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.12, S. Rupp
60
Informatik Master, PM2100.1, 2013
Inhalt
Aufbau und Entwurf von Protokollen
Kommunikationssysteme
Teil 2.2 – Aufbau und Entwurf von Protokollen
• 
Protokolle
• 
Entwicklung und Test
Stephan Rupp
Informatik Masterstudium
• 
Protokollanalysator
www.dhbw-stuttgart.de
Kommunikationssysteme, Teil 2.2, S. Rupp
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
2
Protokollschichten
Referenzmodell der ISO-OSI
Prinzip: Schichtung von Diensten
Endsysteme und Übertragungssysteme
Informatik Master, PM2100.1, 2013
Schicht N + 1
nutzt …
… Dienst der
Schicht N
Kommunikationssysteme, Teil 2.2, S. Rupp
3
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
4
Informatik Master, PM2100.1, 2013
ISO-OSI Referenzmodell
OSI – Modell für Systeme
Netzwerk
Anwendungen
Funktionen der Protokollschichten
Kommunikationssysteme, Teil 2.2, S. Rupp
5
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
6
Informatik Master, PM2100.1, 2013
Ebenen om OSI Referenzmodell
Anfragen auf Dienstebene
Management Plane:
Dienstanbieter (Service Provider) leitet Anfragen weiter
Systemadministration
(OSS/NMS)
Control Plane: Steuerung
User Plane: Daten
OSS: Operation Support System, Betriebsführungssystem
Kommunikationssysteme, Teil 2.2, S. Rupp
NMS: Network Management System, Leitsystem
7
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
8
Informatik Master, PM2100.1, 2013
Innerhalb der Anwendungsknoten
Hierarchie der Nachrichten
Protocol Data Units als komplette Nachricht der Schicht
SDU: Service Date Unit
• 
(N) PDU = (N) SDU + (N) PCI
• 
(N) SDU = (N+1) PDU
SDU: Service Date Unit
PDU: Protocol Data Unit
PCI: Protocol Control Information
PDU: Protocol Data Unit
Kommunikationssysteme, Teil 2.2, S. Rupp
9
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
10
Kommunikationsprozess
Beispiel: Client - Server Kommunikation
Nachrichten und Zustandsänderungen
Client und Server als Zustandsautomaten
Informatik Master, PM2100.1, 2013
Zustände (States):
0: Disconnected (DISC)
1: Waiting (WAIT)
2: Connected (CONN)
Zustandsübergänge (Transitions):
+/-1: send/receive Connect
Request (Creq)
PDU
+/-2: send/receive Connect
Acknowledge (Cack)
Prozess: Zustandsautomat
(Finite State Machine)
Kommunikationssysteme, Teil 2.2, S. Rupp
Paketinhalt
+/-3: send/receive Disconnect
Request (Dreq)
Paketkopf
Quelle: Gerd Siegmund
11
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
12
Informatik Master, PM2100.1, 2013
Zustandsdiagramm
Beispiel: Client-Server in SDL Notation
Nachrichten lösen Zustandsänderungen aus
Zustand
Nachricht
empfangen
Nachricht
empfangen
(warten auf Benutzer)
Nachricht
senden
• 
Zustand
Gleiches Konzept wie bei UML Zustandsdiagrammen (State Diagram)
SDL: Service Description Language (vergleichbar mit Aktivitätsdiagramm bei UML)
Kommunikationssysteme, Teil 2.2, S. Rupp
13
Informatik Master, PM2100.1, 2013
Beispiel: Sequenzdiagramm
Kommunikationssysteme, Teil 2.2, S. Rupp
14
Informatik Master, PM2100.1, 2013
16
Informatik Master, PM2100.1, 2013
Formale Validierung
Formale Validierung
ist in sehr einfachen
Fällen durch
Berücksichtigung
globaler Zustände
möglich.
Message Sequence Diagram entspricht Sequenzdiagramm bei UML (Nachricht senden = Methode aufrufen)
Kommunikationssysteme, Teil 2.2, S. Rupp
15
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
Beispiel: Client-Server Kommunikation
Inhalt
Kriterien zur Validierung:
• 
Kommunikationssysteme, Teil 2.2, S. Rupp
17
gegenseitige Blockierung
(Deadlock): Pfade ohne
Ausgang
• 
Protokolle
• 
unspezifizierte Signale
(ohne Empfang)
• 
Entwicklung und Test
• 
Nicht auführbare
Zustände (Zustand ist
nicht erreichbar)
• 
Protokollanalysator
• 
Mehrdeutige Zustände
(Zustand wird durch
unterschiedliche
Ereignisse erreicht)
Informatik Master, PM2100.1, 2013
Planen und Bauen
Planung und Design:
Transformationen eines
Modells
Systemtests
Funktionale
Tests
Top-Down
Prozess
black box
Bauen: Transformationen
eines Codes
Code
(OpenSource: Code als Modell)
Kommunikationssysteme, Teil 2.2, S. Rupp
18
Kommunikationssysteme, Teil 2.2, S. Rupp
Informatik Master, PM2100.1, 2013
Implementierung und Tests
Modell
Bottom-Up
Prozess
Aufbau und Entwurf von Protokollen
19
Informatik Master, PM2100.1, 2013
V-Modell
Funktionale
Anforderungen
Integrationstests
Design
Anforderungen
Modultests
white box
SoftwareEntwickler
Spezifikation und
Test
Systemanforderungen
Implementierung
und Test
Kommunikationssysteme, Teil 2.2, S. Rupp
Implementierung
der Module
UnitTests
20
Implementierung
der Units
Informatik Master, PM2100.1, 2013
Hardware Architektur
Software Architektur
21
Kommunikationssysteme, Teil 2.2, S. Rupp
Controller
(Host)
Controller
(Host)
Schnittstelle
(Communication Controller)
Schnittstelle
(Communication Controller)
Informatik Master, PM2100.1, 2013
Modell einer Protokollschicht
22
Informatik Master, PM2100.1, 2013
Protokolltests
Schicht N als Dienstleister (Service
Provider) für Schicht N+1
Kommunikationssysteme, Teil 2.2, S. Rupp
Kommunikationssysteme, Teil 2.2, S. Rupp
23
Informatik Master, PM2100.1, 2013
Ereignisse und Statustabellen (Event State Tables)
Kommunikationssysteme, Teil 2.2, S. Rupp
24
Informatik Master, PM2100.1, 2013
Protokolltests
Konformitätstests
Referenz und Prüfling einer Protokollschicht
Mit externem Protokolltester
Referenz
Prüfling
FSM: Finite State Machine, Zustandsautomat
Kommunikationssysteme, Teil 2.2, S. Rupp
25
Informatik Master, PM2100.1, 2013
Realer Testaufbau
26
Kommunikationssysteme, Teil 2.2, S. Rupp
Informatik Master, PM2100.1, 2013
Anwendungstests
Prüfling
Testsystem
(System under Test)
(Protokolltester)
Protokollschicht
Anwendung
(Test Cases)
Simulator
Trace
ASP
Emulation der
unteren Protokollschichten
Input
Zielsystem
record inputs
play back
Skript
Events
Error
situations
laden
Test Case
Entwicklungssystem &
Emulator
Test report
Screen shots
programmieren
und testen
Full Trace
PDU: Packet Data Unit
Editor
Testumgebung
Testfälle
PDU
Kommunikationssysteme, Teil 2.2, S. Rupp
ASP: Abstract Service Primitives
ASP: Abstract Service Primitives
27
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
28
Informatik Master, PM2100.1, 2013
Inhalt
Protokollschichten
Aufbau und Entwurf von Protokollen
• 
Protokolle
• 
Entwicklung und Test
• 
Protokollanalysator
Kommunikationssysteme, Teil 2.2, S. Rupp
29
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
30
Informatik Master, PM2100.1, 2013
Grundsätzlicher Ablauf: Ein SIP-Terminal besteht aus einem User-Agent-Client (UAC), der
Anfragen an den User-Agent-Server (UAS) richtet. Die Anfragen, Requests, Nachrichten
werden
in ihrem Anwendungszweck,
der sog. Methode, engl. Method, unterschieden. Der
Protokollanalysator
einsetzen
UAS antwortet mit Responses. Diese Rollen können wechseln: ein SIP Terminal kann für
Anfragen auch ein Server sein, die die Anfragen mit ein oder auch mehreren Responses
Übungen
Wireshark dient zur Weiterleitung der Steuernachrichten im Netz.
beantwortet.
Dermit
SIP-Proxy-Server
Signalisierung und Verbindung
VoIP mit Session Initiation Protokoll (SIP)
• 
Wireshark installieren und eigenen Verkehr mitschneiden
Architektur
Funktional wird bei einer Verbindung zwischen zwei User Agents zwischen dem Outboundauch:unten
SIP Labor
und dem Inbound-Proxy-Server unterschieden. In demSiehe
Beispiel
ist der Proxy A der
Outbound-Server für den User Agent A (für Alice), dieser unterstützt den User Agent von
Aufzeichnung
der Abläufe
mit WireShark Auf der anderen Seite ist der Proxy
Alice um abgehende Gespräche
(Outbound)
aufzubauen.
B der Inbound-Proxy für den User Agent von Bob, dieser unterstützt den User Agent von Bob
um kommende Sessions entgegen zu nehmen (Inbound). Man spricht bei dieser Darstellung
auch vom sog. SIP-Trapezoid, aufgrund der sich ergebenden Darstellungsform, dem Trapez.
Nach der ursprünglichen Idee dieser Architektur sind die Proxy-Server nur für den Aufbau der
Sessions notwendig. Die Nutzverbindung, auf der Basis des Real-time Transport Protocol
(RTP), zwischen A und B wird, nach dem ersten Verbindungsaufbau, direkt zwischen beiden
aufgebaut. Die Proxy sind dann nicht mehr notwendig. Das hier dargestellte Trapez ist also
nicht in allen Zuständen in dieser
existent.
DieForm
Aktivitäten
am Asterisk-Server können nun mit Wireshark (Ethereal) aufgezeichnet
Kommunikationssysteme, Teil 2.2, S. Rupp
31
Informatik Master, PM2100.1, 2013
Die Bezeichnungen „Outbound“ und „Inbound“ hängen von der jeweiligen Betrachtungsweise
Die Bezeichnungen „Outbound“ und „Inbound“
und der jeweiligen Richtung des Aufbaus von Sessions ab. In der Praxis lassen sich beide
und
derunterscheiden.
jeweiligen Die
Richtung
des Aufbaus von
nur für einen Augenblick einer bestimmten Session
logisch
Realisierung
werden. Vor Beginn der Aufzeichnungen muss die Ethernet-Schnittstelle selektiert werden.
Kommunikationssysteme, Teil 2.2, S. Rupp Ein Notebook mit 32
PM2100.1,
2013 bereits
einer Ethernet-Schnittstelle Informatik
und einem Master,
WLAN-Zugang
hat dabei
zwei mögliche Interfaces. Unter „Capture“ und „Interfaces“ kann die Schnittstelle festgelegt
werden.
hängen von der jeweiligenIm Unterpunkt
Betrachtungsweise
„Optionen“ können Einstellungen für das Mitlesen der Nachrichten eingestellt
werden. Hier muss (normalerweise) nichts verändert werden, die Einstellungen sollten so
Sessions ab. In der Praxis
lassen sich beide
aussehen:
Im Unterschied zu den Request-Methoden haben die Response-Nachrichten einen
geringfügig unterschiedlichen Aufbau. Am Anfang jeder Response steht die Status Line
(vergleichbar der Request Line bei den Anfragen), diese beinhaltet:
•
SIP-Version: Wie bei den Anfragen wird hiermit die für den Nachrichtenaufbau und
-ablauf verwendete Version von SIP übermittelt. Der SIP-Version folgt ein
Leerzeichen (Single Space).
Status-Code: Antwort auf die Anfrage im Request. > Verweis auf Tabelle mit StatusCodes>>
Reason Phrase: Nach einem weiteren Leerzeichen kommt dann der Status-Code in
Textform (Code: 200 – Text: OK, Code: 180 – Text: RINGING usw.). Die Zeile wird
dann mit einem CRLF abgeschlossen.
Protokollanalysator einsetzen
Protokollanalysator einsetzen
Aufbau einer SIP-Nachricht – Anfrage (Request)
Aufbau einer SIP-Nachricht – Antwort (Response)
•
•
SP: Leerzeichen (Space)
33
Kommunikationssysteme, Teil 2.2, S. Rupp
SIP unterscheidet die folgenden Grundtypen von Nachrichten (Methods):
•
Informatik Master, PM2100.1, 2013
INVITE: lädt einen Kommunikationspartner beispielsweise zu einem Telefongespräch,
einer Videokommunikation, einem Datenaustausch oder einer Konferenz ein (Beginn
eines Dialogs). Mit dieser Verbindungsaufforderung wird immer eine wechselseitige
Kommunikation etabliert, nur durch spezielle Parameter im Session Description
Protocol (SDP) können auch einseitige Verbindungen (send-only oder receive-only)
angefordert werden.
ACK:
Positive
Bestätigung,
unterstützt
damit
einen
gesicherten
Nachrichtenaustausch. ACK wird als zusätzliche Bestätigung (nach ggf. Ringing und
OK) auf einen INVITE-Request gesendet und ist selbst aber ein Request, der nicht
mit einer Response beantwortet wird.
BYE: Hiermit beendet ein User Agent eine bestehende Kommunikation, die
Nutzverbindung wird aufgehoben (Beenden eines Dialogs).
CANCEL: Abweisen des gesendeten Request, beispielsweise die Abweisung einer
kommenden Verbindung als Antwort auf die gesendete INVITE. Die Zuordnung der
CANCEL-Nachricht zum abgewiesenen Request erfolgt mit Hilfe der Call-ID.
OPTIONS: Mit dieser Methode kann ein User Agent Informationen zu den
Eigenschaften (Codecs oder unterstützte Methodes) von Endsystemen (User Agents)
Verbindungsaufbau
erfragen und bereitstellen, ohne direkt eine Verbindung aufzubauen.
REGISTER: Übermittelt Standortinformationen (genaue Adress-Informationen) über
einen Benutzer. Die Benutzeridentifikation (Name, URI oder Rufnummer) wird
dadurch der augenblicklichen IP-Adresse zugeordnet.
Protokollanalysator einsetzen
•
Ablauf einer SIP-Transaktion
•
•
•
•
Labor V 1
34
Kommunikationssysteme, Teil 2.2, S. Rupp
Transaktion, Dialog und Session
Informatik Master, PM2100.1, 2013
Ein SIP-Request beginnt eine Transaktion (Transaction), zu der mehrere Bestätigungen oder
Antworten (Response) gehören können. Der Austausch der SIP-Nachrichten zwischen zwei
SIP-Instanzen wird als SIP-Dialog bezeichnet. Die Aufgabe der SIP-Nachrichten ist es (unter
anderem), Multimedia-Verbindungen (Sessions) zwischen zwei oder mehreren Instanzen
aufzubauen, zu unterhalten, zu modifizieren und auch wieder abzubauen.
Protokollanalysator einsetzen
Mit „Stopp“ hält man die Aufzeichnung an und Wireshark stellt alle aufgezeichneten
Aufzeichnung
mit Wireshark
(Beispiel)
Nachrichten
in einem Fenster
dar:
Labor V 1
Seite 7
Seite 6
Verbindung
Verbindungsabbau
Kommunikationssysteme, Teil 2.2, S. Rupp
35
Informatik Master, PM2100.1, 2013
Statusinformationen
Kommunikationssysteme, Teil 2.2, S. Rupp
SIP-Anfragen werden vom SIP-Server mit einem oder mehreren Statusinformationen
(Response) quittiert. Die Statusmeldungen bestehen immer aus einem Status-Code (100,
404 usw.) und der Rückmeldung in Text-Form, Reason-Phrases), die eine genauere Angabe
für das Senden der Statusmeldung (die Begründung) liefert. Die Statusinformationen (Status
36
Informatik Master, PM2100.1, 2013
Protokolle manipulieren
Protokolle absichern
Beispiel: ARP Poisoning
Fehlerfälle und Sicherheitsmaßnahmen
• 
Sicherheitslücke: zustandsloses Protokoll
!!
Fehler!
• 
Beschreibung des Szenarios siehe:
http://www.oxid.it/downloads/apr-intro.swf
• 
Protokollwerkzeug Cain & Abel, siehe:
http://www.oxid.it/downloads/cain20.exe
Kommunikationssysteme, Teil 2.2, S. Rupp
37
Informatik Master, PM2100.1, 2013
Funktionale Sicherheit (engl. Safety)
• 
Unbeabsich4gte'
Wiederholung'
Verlust'
Eingefügte'Nachricht'
Inkorrekte'Sequenz'
Verfälschung''
Unakzeptable'Verzögerung'
x!
x!
x!
x!
!
!
!
x!
!
!
!
x!
!
!
!
!
!
!
x!
x!
x!
x!
x!
!
Maskerade'
!
x!
!
x!
Memory'Fehler'in'Switches'
x!
!
!
x!
Inkorrekte'Weiterleitung'
zwischen'Segmenten'
!
!
x!
!
Kommunikationssysteme, Teil 2.2, S. Rupp
38
Informatik Master, PM2100.1, 2013
Kommunikationssysteme
Ziel: Gefahren für Menschen und Umwelt durch Maschinen und
Anlagen vermeiden.
Maschinen und Anlagen sind derart auszulegen, dass Fehler
und Defekte keine Gefährdung nach sich ziehen.
• 
Maßnahme! !!
!!
!!
Watchdog' Connec4on'ID' CRC'(Prüfsumme)'
Sequenz'
Berechnung'
Nummer'
Risiko = Schadenshäufigkeit * Schadensausmaß
ENDE Teil 2.2
Aufbau und Entwurf von Protokollen
Risiko ohne
Schutzmaßnahme
Risiko mit
Schutzmaßnahme
• 
< akzeptables Risiko
Prinzip: Senkung des Risikos auf ein akzeptables Maß durch
Sicherheitsmaßnahmen.
Kommunikationssysteme, Teil 2.2, S. Rupp
39
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.2, S. Rupp
40
Informatik Master, PM2100.1, 2013
Inhalt
Ethernet basierte Feldbusse
Kommunikationssysteme
Teil 2.3 – Ethernet basierte Feldbusse
• 
Vom Multiport-Repeater zum Ethernet-Switch
• 
Ethernet-Switches: Funktionsweise und
Leistungsmerkmale
Stephan Rupp
Informatik Masterstudium
• 
Anforderungen im industriellen Einsatz
• 
Lösungsansätze für den industriellen Betrieb
• 
Realisierungsbeispiele
www.dhbw-stuttgart.de
Kommunikationssysteme, Teil 2.3, S. Rupp
Informatik Master, PM2100.1, 2013
Inhalt
2
Informatik Master, PM2100.1, 2013
Ethernet – Projekt 802 der IEEE
Evolutionärer Ansatz seit den 80-er Jahren
Ethernet basierte Feldbusse
• 
Vom Multiport-Repeater zum Ethernet-Switch
• 
Ethernet-Switches: Funktionsweise und
Leistungsmerkmale
• 
Anforderungen im industriellen Einsatz
• 
Lösungsansätze für den industriellen Betrieb
• 
Realisierungsbeispiele
Kommunikationssysteme, Teil 2.3, S. Rupp
Kommunikationssysteme, Teil 2.3, S. Rupp
3
Informatik Master, PM2100.1, 2013
• 
Basisdefinition der beiden Layer 2-Protokollschichten MAC (Medium Access
Control, IEEE 802.3) und LLC (Logical Link Control, IEEE 802.2),
• 
bei Bedarf ergänzt um höhere Steuerungsprotokolle (IEEE 802.1 unter
anderem mit den Spanning Tree Protokollen, VLAN oder portbasierender
Zugangskontrolle),
• 
ergänzt um anwendungsorientierte Erweiterung (IEEE 802.4 und höher).
Zwanglose Handhabung von Erweiterungen
• 
IEEE 802.11 definiert z.B. Wireless LAN MAC (als Ergänzung zu 802.3 LAN
MAC), inklusive passender schnurloser Layer 1 Protokollschichten
• 
Link Aggregation (802.3ad), VLANs (802.1Q), Spanning Tree (802.1D,
802.1w), QoS (802.1p), Flusskontrolle (802.3x), sowie GVRP (Dynamic
VLAN Registration) und GMRP (Dynamic L2 Multicast Registration)
Kommunikationssysteme, Teil 2.3, S. Rupp
4
Informatik Master, PM2100.1, 2013
Netzwerk mit MAC Adressen
Verkehrsfluss in LAN-Segmenten
100:13:02:39:e5:f7
Host
100:0a:95:d1:52:30
Host
LAN
Anfrage (Nachricht)
an 100:0a:95:d1:52:30
Netzwerk
Drucker
Hub
100:80:77:31:b6:45
100:04:0e:73:3f:3d
Anfrage an
alle Ports ve
rteilen
(Hub = Mu
ltiport Rep
eater)
5
Kommunikationssysteme, Teil 2.3, S. Rupp
Informatik Master, PM2100.1, 2013
Lernen von MAC-Adressen (1)
Host
100:0a:95:d1:52:30
Host
100:13:02:39:e5:f7
Host
LAN
Network
Printer
100:04:0e:73:3f:3d
MAC
100:80:77:31:b6:45
Network
Printer
Bridge
100:80:77:31:b6:45
100:04:0e:73:3f:3d
MAC
2
Kommunikationssysteme, Teil 2.3, S. Rupp
Antwort (Nachricht)
von 100:0a:95:d1:52:30
an 100:13:02:39:e5:f7
LAN
Nachricht
nur an
korrekten
Port
Port
Gelernte MAC
100:0a:95:d1:52:30
Host
Bridge
100:13:02:39:e5:f7
Informatik Master, PM2100.1, 2013
Lernen von MAC-Adressen (2)
100:13:02:39:e5:f7
Anfrage (Nachricht)
an 100:0a:95:d1:52:30
6
Kommunikationssysteme, Teil 2.3, S. Rupp
Schritt 1: A
nfrag
alle Ports ve e an
rteilen
Adresse
7
Informatik Master, PM2100.1, 2013
Adresse
Gelernte MAC
Kommunikationssysteme, Teil 2.3, S. Rupp
8
Port
100:13:02:39:e5:f7
100:0a:95:d1:52:30
2
3
Informatik Master, PM2100.1, 2013
Inhalt
Nachrichten speichern und weiterleiten
Ethernet basierte Feldbusse
Eingangs- Puffer
• 
Vom Multiport-Repeater zum Ethernet-Switch
• 
Ethernet-Switches: Funktionsweise und
2
(1) Speichern
(2) Header analysieren
(3) Weiter leiten
Switch
• 
Anforderungen im industriellen Einsatz
• 
Lösungsansätze für den industriellen Betrieb
• 
Realisierungsbeispiele
9
Switch Route Table
Nachricht:
Informatik Master, PM2100.1, 2013
Switches für den industriellen Einsatz
Kundenanforderungen
Software
Roadmap
3
1
Ports
Leistungsmerkmale
Kommunikationssysteme, Teil 2.3, S. Rupp
Ausgangs- Puffer
! 
Ethernet Rahmen (Frame)
Header
! 
IP Packet (im Ethernet Rahmen)
Header IP-Header
Kommunikationssysteme, Teil 2.3, S. Rupp
10
Nutzdaten
Nutzdaten
Informatik Master, PM2100.1, 2013
Inhalt
Definition der HW Platform
Silizium
Roadmap
Entwicklung (Engineering)
Ethernet basierte Feldbusse
• 
Vom Multiport-Repeater zum Ethernet-Switch
• 
Ethernet-Switches: Funktionsweise und
Leistungsmerkmale
Eingebettetes Netzwerk Produkt
• 
Anforderungen im industriellen Einsatz
• 
Lösungsansätze für den industriellen Betrieb
• 
Realisierungsbeispiele
Quelle: Kontron
Kommunikationssysteme, Teil 2.3, S. Rupp
11
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.3, S. Rupp
12
Informatik Master, PM2100.1, 2013
Anforderungen im industriellen Einsatz
n
Inhalt
Sensor
Deterministische
Schwelle
Bus
Aktuator
t
• 
Echtzeit = definierte Antwortzeiten
• 
Hohe Systemverfügbarkeit mit hinreichend kurzen Umschaltzeiten
13
Informatik Master, PM2100.1, 2013
Vorfahrt für Prozessdaten
• 
Vom Multiport-Repeater zum Ethernet-Switch
• 
Ethernet-Switches: Funktionsweise und
Controller
Antwortzeiten:
< 1 ms: Antriebssteuerung
10 ms: Geräte, Anlagen
100 ms: Controller mit
Bedienterminals (HMI)
Kommunikationssysteme, Teil 2.3, S. Rupp
• 
Bus
Laufzeitschwankung (Jitter)
Mittelwert
Ethernet basierte Feldbusse
Leistungsmerkmale
• 
Anforderungen im industriellen Einsatz
• 
Lösungsansätze für den industriellen Betrieb
• 
Realisierungsbeispiele
14
Kommunikationssysteme, Teil 2.3, S. Rupp
Orchestrierung – deterministischer Bus
Verkehrsklassen mit Priorisierung (Quality of Service)
Warteschlangen
Bus-Master
Business
1
• 
Zeitmultiplex zwischen
Prozessdaten und allen
anderen Daten
• 
Bus-Master organisiert die
Kommunikation der
Prozessdaten zwischen
Sendern und Empfängern.
Senator
(Priority Queues)
3
Informatik Master, PM2100.1, 2013
Economy
Port
Last Minute
Economy
Slaves
Business
2
Last Minute
deterministic asynch deterministic asynch deterministic asynch deterministic asynch
Senator
Switch Route Table
• 
Überschaubarer Verkehr bei Prozessdaten (Menge, Zyklus)
Master
• 
Interferenz mit Verkehr niedriger Klassen ist unvermeidlich, jedoch
planbar (abhängig von maximaler Paketlänge, Übertragungsrate und
Netztopologie)
Slaves
Kommunikationssysteme, Teil 2.3, S. Rupp
15
Informatik Master, PM2100.1, 2013
Start
Reguläre Ethernet Frames
…
R1
…
R2
S1
S2
RN
End
SN
Start
Acyclic
1 Zyklus
Kommunikationssysteme, Teil 2.3, S. Rupp
16
Informatik Master, PM2100.1, 2013
Eingebetteter Kanal
Ringredundanz
Prozessdaten als gemeinsames Telegramm im Datenbereich
• 
Daten
Header
Eingebetteter Kanal
Regulärer
Switch
Header
Switch mit Austausch
der Prozessdaten im
Datenbereich vor dem
weiterleiten der
Nachricht
I/O Bus
(Ethernet oder
sonstiger Bus)
Sternförmige
Verkabelung ist nicht
praktikabel, lineare
Topologie
Standard Ethernet Rahmen
• 
Topologie: Verkettung aller Teilnehmer in einem Busabschnitt, ein
Telegramm für alle anstelle einzelner Nachrichten
• 
Austausch der Prozessdaten beim weiterleiten des Ethernet Rahmens
(erfordert spezielle Hardware für alle Teilnehmer)
Kommunikationssysteme, Teil 2.3, S. Rupp
17
Informatik Master, PM2100.1, 2013
Inhalt
Ring mit Reserveverbindung (Ring
Protection Link), die bei
Verlust einer Verbindung
aktiviert wird
• 
Überwachung des
Betriebs durch
Redundanz-Manager
(RPL-Owner)
• 
Ausgefallene
Verbindung
Umschaltung auf die
neue Topologie im
Fehlerfall unter 500 ms
18
Kommunikationssysteme, Teil 2.3, S. Rupp
• 
Informatik Master, PM2100.1, 2013
Bestandteil von IEC 61158 und IEC 61784-2
Vom Multiport-Repeater zum Ethernet-Switch
IRT
standard
IRT
Cycle 1
• 
RPL
Profinet – Klassen und Zeitmultiplex
Ethernet basierte Feldbusse
• 
RPL
Owner
• 
DEMO
• 
Reserve Verbindung
(Ring Protection Link)
standard
Cycle 2
IRT
standard
Cycle 3
IRT
standard
…
Cycle 4
Ethernet-Switches: Funktionsweise und
Leistungsmerkmale
H
• 
Anforderungen im industriellen Einsatz
• 
Lösungsansätze für den industriellen Betrieb
• 
• 
Realisierungsbeispiele
• 
Kommunikationssysteme, Teil 2.3, S. Rupp
19
Informatik Master, PM2100.1, 2013
IRT Data
TCP/IP & RT
Betriebsart RT (Real-Time)
• 
Prozessdaten reisen erster Klasse
Betriebsart IRT (Isochroneous Real-Time)
• 
Zeitmultiplex für Prozessdaten
• 
Zeitmultiplex erfordert spezielle Switch-Hardware
Kommunikationssysteme, Teil 2.3, S. Rupp
20
Informatik Master, PM2100.1, 2013
Ethercat – Eingebetteter Kanal
EtherCAT-Master
Ethernet POWERLINK
Orchestrierung in Layer 3
EtherCAT Koppler mit I/O-Modulen
A
Nachricht:
! 
Ethernet Rahmen (Frame)
! 
IP Packet (im Ethernet
Rahmen)
B
R
Animation
Embedded Channel Header
Message
Type
Header
Nutzdaten
Header
Zielknoten
PL-Header
Quellknoten
Nutzdaten
Nutzdaten
deterministic asynch deterministic asynch deterministic asynch deterministic asynch
Rx
Payload
handling
A
Switching
Tx
Message Types: SoC (Start of Cycle)
SoA (Start of Asynchronous)
Polling Request/Response
Asynchronous Send
Tx
B
Rx
• 
• 
Teil der Standards IEC
61158 und IEC 61784-2
Reguläre Ethernet Frames
…
Master
Datenzugriff erfordert
spezielle Switch-Hardware
SoC
Slaves
Req1
…
Req2
Res1
SoA
ReqN
Res2
ResN
SoC
ASnd
1 Zyklus
21
Kommunikationssysteme, Teil 2.3, S. Rupp
Informatik Master, PM2100.1, 2013
Kommunikationssysteme,
TeilVernetzung,
2.3, S. RuppTeil 3, S. Rupp
Rechnerkommunikation und
AFDX
Elektrische Schaltanlagen
Avionics Full-Duplex Switched Ethernet
…
• 
ARINC 664 Standard
• 
Evolutionär
• 
Statische Konfiguration der
Netzwerke (VL)
• 
Redundanter Betrieb zweier
Netzwerke (full-duplex) ohne
Umschaltzeiten
22
Informatik
Master,
PM2100.1, 2013
6.
Semester,
Nachrichtentechnik,
2012
Switches
ES
ES
ES: End
System
Ringredundanz
Protokolle: HSR, MRP
ES
Netzwerk
VL: Virtueller Link
Netzwerk B
Doppelring mit Doppelstern
Parallel Redundancy Protocol (PRP)
ES
ES
Redundanz
Management
HSR: High-Availbility Seamless Redundancy
MRP: Media Redundancy Protocol
Netzwerk A
Kommunikationssysteme, Teil 2.3, S. Rupp
Quelle: ABB
23
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.3, S. Rupp
24
Informatik Master, PM2100.1, 2013
Netztopologien
TCN – Train Communication Network
Fernwirken (Wide Area
Network, IP/
Ethernet):
Stationsleitgerät
COM
COM
COM
WAN
COM
COM
LAN
RTU
COM
RTU
COM
RTU
COM
COM
LAN
COM
COM
Feldleitgerät/Regler
COM
RTU: Remote Terminal Unit, abgesetzte Einheit
Schutz
• 
Doppelstern
• 
Doppelring
ETBN
CS
einfache und redundante
Verbindungen
CS
• 
Baumstruktur
• 
Ringstrruktur
ED
ED
CS
Ethernet Consist Network (ECN)
CS
CS
ED
CS
ED
ED
ETBN: Ethernet Train Backbone Node (Router)
25
ETBN
Ethernet Train Backbone (ETB)
ED
Besonderheit: dynamische Netzkonfiguration auf L3 basierend auf URIs
RTU
Informatik Master, PM2100.1, 2013
Zusammenfassung
Kommunikationssysteme, Teil 2.3, S. Rupp
CS: Car Switch, Consist Switch (Ethernet Switch)
26
ED: End Device
Informatik Master, PM2100.1, 2013
Kommunikationsysteme
• 
Ethernet hat eine beispiellose Erfolgsgeschichte, nicht zuletzt wegen seines
evolutionären Ansatzes.
• 
Ethernet ist als Feldbus zunehmen im Einsatz
• 
Profinet, Ethercat, Ethernet Powerlink, Ethernet/IP, Sercos III, …
• 
AFDX (Avionik), TCN (Bahnfahrzeuge), elektrische Schaltanlagen
(IEC61850, MRP, HRS, PRP), …
• 
Consist (Zugabschnitt)
Lokales Netz (Local Area
Network, Ethernet):
COM: Switch bzw. Router
Kommunikationssysteme, Teil 2.3, S. Rupp
IEC Norm 61375-1, Erweiterung auf 61375-4 (Ethernet Consist Network)
und 61375-2-5 (Ethernet Train Backbone) in Arbeit, evolutionär
redundante Verbindungen
Stationsleitgerät
Stationsleitgerät
• 
ENDE Teil 2.3
Anforderungen im industriellen Einsatz
Ethernet basierte Feldbusse
• 
Echtzeit = definierte Antwortzeiten
• 
Verfügbarkeit (Redundanz für den Fehlerfall)
• 
Die Anforderungen sind auf evolutionäre oder proprietäre Weise
erfüllbar.
• 
Anforderungen auf Systemebene
• 
Funktionale Sicherheit (Protokolle auf Anwendungsebene)
• 
Schutz der Vertraulichkeit, Integrität und Authentizität.
Kommunikationssysteme, Teil 2.3, S. Rupp
27
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.3, S. Rupp
28
Informatik Master, PM2100.1, 2013
Inhalt
Anwendungsdesign
Kommunikationssysteme
Teil 2.4 Anwendungsdesign
• 
Intra-Prozess Kommunikation
• 
Organisation von Angebot und Nachfrage
Stephan Rupp
Informatik Masterstudium
• 
Beispiel: Bluetooth
• 
Anwendungsentwicklung
www.dhbw-stuttgart.de
Kommunikationssysteme, Teil 2.4, S. Rupp
Informatik Master, PM2100.1, 2013
2
Kommunikationssysteme, Teil 2.4, S. Rupp
Kommunikation
Kommunikation im System
Austausch von Nachrichten
…
Anfrage
Sender
Client-Thread
Informatik Master, PM2100.1, 2013
Server-Thread
Was ist der
Kontext der
Kommunikation?
Inter-Thread
read/write
Empfänger
Anfrage
Antwort
System B
System A
Server
Benutzer
Privilegien
Client Interface
Antwort
Kommunikation durch
Austausch von Nachrichten
Zur Interpretation der
Nachrichten: Kontext?
Nachricht
Kernel
Privilegien
Kernel Executive Routine
Kernel
Beispiel: Symbian Service Framework
Kommunikationssysteme, Teil 2.4, S. Rupp
3
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.4, S. Rupp
4
Informatik Master, PM2100.1, 2013
Beispiel: Aufruf von Server-Funktionen
Client
Client und Server Klassen
Server
Client
Server
x = f1(a,b,c)
Anfrage
f1
a
b
c
Message
Function()
Server
SessionBase
Service (Message)
Complete()
CreateSession()
Session
SendReceive()
Service()
Read()
1..n
Write()
Message.Complete (x)
x
Antwort
Kommunikationssysteme, Teil 2.4, S. Rupp
Kontext: Nachrichtentyp für
Funktionsaufrufe mit Datentypen der
Übergabevariablen und des
Rückgabewertes
5
Informatik Master, PM2100.1, 2013
Kommunikation zwischen Systemen
Legende:
„hat“
Kontext: Ist durch die
Programmierumgebung
festgelegt (Framework API)
Kernel
Kommunikationssysteme, Teil 2.4, S. Rupp
6
Informatik Master, PM2100.1, 2013
Kommunikation und Kontext
Kommunikation innerhalb des Systems:
Client,
User Agent
Server,
User Agent
• 
Der Kontext ist festgelegt durch die Programmierumgebung.
• 
Kontext: Nachrichten mit Datentypen für die Übergabevariablen und
Rückgabewerte, sowie weitere Abstraktionen (Klassen) für die
Kommunikation mit Server-Bibliotheken.
Kommunikation über Systemgrenzen hinaus:
System A
Systeme enthalten
Software für verteilte
Anwendungen wie z.B.
Clients, Server bzw.
User Agents.
• 
System B
Eine Festlegung des Kontextes ist erforderlich, damit die Systeme sich
verstehen, und kann z.B. durch eine Protokollspezifikation erfolgen.
• 
Außerdem ist die Lokalisierung der Serverschnittstelle über das Netz
erforderlich, genauer eine Referenz auf das Server-Objekt. Beispiele: URL,
IP-Socket (IP Adresse plus Port Nummer), Verbindung aus J2ME.
Kommunikationssysteme, Teil 2.4, S. Rupp
7
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.4, S. Rupp
8
Informatik Master, PM2100.1, 2013
Abstraktion einer Verbindung
Inhalt
Beispiel: Java Generic Connection
Framework (J2ME CLCD)
Connection
StreamConnectionNotifier
InputConnection
StreamConnection
Anwendungsdesign
• 
Intra-Prozess-Kommunikation
• 
Organisation von Angebot und Nachfrage
• 
Beispiel: Bluetooth
• 
Anwendungsentwicklung
OutputConnection
ContentConnection
DatagramConnection
Kommunikationssysteme, Teil 2.4, S. Rupp
9
6.
Semester,
Nachrichtentechnik,
2012
Informatik
Master,
PM2100.1, 2013
Anatomie eines Benutzer-Agenten
Module:
• Dienste
• Anwendungen
Inhalte
Angebot
UA_ID
Kommunikationssysteme, Teil 2.4, S. Rupp
10
Informatik Master, PM2100.1, 2013
Interaktionen und Beziehungen
Angebot:
• User Agent (UA)
• UA Gruppe
• Module
• Inhalte
• Endpunkte
Angebot beim
Vermittlungsagenten
publizieren (erlischt mit
der Zeit, wenn nicht
erneuert)
Neues Angebot
lokal ankündigen
Ang.
Local User
Agent
Ang.
User Agent
Endpunkte der
Kommunikation
Für Vermittler:
lokale Information
über die Angebote
anderer User Agents
Kommunikationssysteme, Teil 2.4, S. Rupp
lokale Information
über andere User
Agents
11
Informatik Master, PM2100.1, 2013
Beziehungen
(Kenntnis der anderen,
erlischt mit der Zeit,
wenn nicht erneuert)
lokales
Angebot
löschen
Kommunikationssysteme, Teil 2.4, S. Rupp
12
Informatik Master, PM2100.1, 2013
Kontakt aufnehmen
Angebot und Nachfrage im Netz
Organisation durch Verzeichnisdienste
1. Angebot über Kommunikationsschnittstelle publizieren
2. Schnittstelle finden
und Endpunkt anbinden
Ang.
User Agent
Werkzeuge
und
Methoden
Web-Service
lokaler User
Agent
out
in
entfernter
User
Agent
Semantik-Verarbeitung
Semantische
Modelle
3. Nachrichten über die
Verbindung austauschen
(Was?)
MetaInformation
Betriebsmittel
(CPU, Speicher)
(Wo?)
Kommunikationssysteme, Teil 2.4, S. Rupp
13
Informatik Master, PM2100.1, 2013
Inhalt
14
Kommunikationssysteme, Teil 2.4, S. Rupp
Bluetooth Service Discovery
Service Discovery Protokoll (SDP)
Anwendungsdesign
Intra-Prozess-Kommunikation
• 
Organisation von Angebot und Nachfrage
• 
Beispiel: Bluetooth
• 
Anwendungsentwicklung
Service
Discovery
Anwendung
UUID
UUID
Client
Anwendung
SDP
Client
Server
Anwendung
SDP
Anfrage
SDP Antwort
15
Ang.
UUID
UUID
• 
Kommunikationssysteme, Teil 2.4, S. Rupp
Informatik Master, PM2100.1, 2013
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.4, S. Rupp
16
SDP
Server
Service
Record
SDP: Service Discovery
Protocol
UUID: Universally
Uniform Identifier (als
Dienstattribut genutzt)
Informatik Master, PM2100.1, 2013
Bluetooth Dienstverzeichniss
Bluetooth Geräteprofile
Standardisierung der Dienste
Service Record (Liste der Dienstattribute)
ServiceRecordHandle
ServiceClassIDList
ServiceRecordState
ServiceID
ID
Value
...
...
...
ProtocolDescriptionList
BrowseGroupList
LanguageBasedAttributeIDList
ServiceInfoTimeToLive
ServiceAvailability
z.B. Wert =
UUID
oder Wert =
Liste von UUIDs
BluetoothProfileDescriptorList
DocumentationURL
ClientExecutionURL
IconURL
ServiceName
Dienstattribute sind als
Wertepaare (ID, Wert) durch
t
UUIDs (Wert) gekennzeichne
ServiceDescription
ProviderName
Kommunikationssysteme, Teil 2.4, S. Rupp
17
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.4, S. Rupp
18
Informatik Master, PM2100.1, 2013
Bluetooth Frequenzen
Netzkonfigurationen
Kanalsprungverfahren (Frequency Hopping)
Master organisiert die Sequenz der Kanäle (Hopping-Sequence)
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.4, S. Rupp
19
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.4, S. Rupp
20
Informatik Master, PM2100.1, 2013
Zeitliche Nutzung der Kanäle
Bluetooth IP Stack
Quelle: Harald Orlamünder
Im Detail unterschiedliche Paketlängen
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.4, S. Rupp
21
Informatik Master, PM2100.1, 2013
Bluetooth Paketformate
Kommunikationssysteme, Teil 2.4, S. Rupp
22
Informatik Master, PM2100.1, 2013
Systemzustände
Quelle: Harald Orlamünder
Quelle: Harald Orlamünder
Kommunikationssysteme, Teil 2.4, S. Rupp
23
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.4, S. Rupp
24
Informatik Master, PM2100.1, 2013
Network Access Point
Inhalt
Internet Zugang per Bluetooth
Anwendungsdesign
• 
Intra-Prozess-Kommunikation
• 
Organisation von Angebot und Nachfrage
• 
Beispiel: Bluetooth
• 
Anwendungsentwicklung
– 
– 
– 
Abstraktionen für Verbindungen
Daten relational und objektorientiert
Vorgehensweise mit UML
Quelle: Harald Orlamünder
25
Kommunikationssysteme, Teil 2.4, S. Rupp
Informatik Master, PM2100.1, 2013
Beispiel: Socket Server API
26
Kommunikationssysteme, Teil 2.4, S. Rupp
Informatik Master, PM2100.1, 2013
Socket Verbindung aufbauen
:CSocketEngine
MTimeoutNotifier
MEngineNotifier
:Framework
MUINotifier
:CTimeOutTimer
:CSocketReader
:RSocket
ENotConnected
1. ConnectL(TUint32 aAddr)
2. Open()
<<active>>
CSocketWriter
<<active>>
CSocketEngine
CSocketsAppView
3. Connect()
4. ChangeStatus()
EConnecting
5. After()
<<active>>
CSocketReader
6. SetActive()
7. RunL()
8. Cancel()
RSocketServ
RHostResolver
RSocket
9. ChangeStatus()
EConnected
10. Read()
Beispiel: Symbian Service Framework
Kommunikationssysteme, Teil 2.4, S. Rupp
27
Informatik Master, PM2100.1, 2013
11. Start()
Kommunikationssysteme, Teil 2.4, S. Rupp
28
Informatik Master, PM2100.1, 2013
Beispiel: Bluetooth Message Server
Bluetooth Verbindung aufsetzen
:CMessageServer
Realisierung über Sockets
RSocketServ
:CBTPointToPointAppUI
RSocket
:CListeningSocket
:CMessageServiceAdvertiser
:CAcceptedSocket
:Framework
1. HandleCommandL()
RBTMan
CMessageServer
CBTPointToPointAppUI
2. StartL()
User starts
Receiver
3. StartAdvertising()
Configure settings for entries
in the service data records
4. Open()
RBTSecuritySettings
EWaitingForConnect
TBTServiceSecurity
5. RunL()
6. RequestData()
Sender requests a
connection
CMessageServerAdvertiser
RSdp
RSdpDatabase
7. RecvOneOrMore()
EWaitingForMessage
8. RunL()
Receiver is receiving
a message
Kommunikationssysteme, Teil 2.4, S. Rupp
29
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.4, S. Rupp
Dienstverzeichnis (Service Record)
Nachrichten Server
Zur Verbindung
Messaging Framework
Service Record (Bluetooth Punkt-zu-Punkt Verbindung)
UI Data MTM
9. RequestData()
10. RecvOneOrMore()
30
Application UI
Informatik Master, PM2100.1, 2013
User Interface
MTM
ServiceClassIDList
Serial Port Services Class UUID
ProtocolDescriptionList
L2CAP UUID
Client Side
MTM
RFCOMM UUID
Data Format of
Messages
Session
Transport of
Messages
Message Server
Channel Number
ServiceName
“Serial Port”
ServiceDescription
“Simple P-T-P Data Tranfer”
True
Service Availability
Kommunikationssysteme, Teil 2.4, S. Rupp
31
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.4, S. Rupp
32
Server Side
MTM
Informatik Master, PM2100.1, 2013
Speichern von Nachrichten
Datenhaltung
Relationale oder
Nachricht
objektorientierte
Index Liste
Index
Body
Anlagen
Attachment Flag
Complete Flag
Connected Flag
Deleted Flag
Description
Details:
sender/receiver
name of attachment
name of folder
name of service
Identifier within Index
MTM associated
New Flag (new Msg.)
Kommunikationssysteme, Teil 2.4, S. Rupp
Anwendung
33
Owner Flag (is parent)
Parent ID of index entry
Priority
Read Flag (Msg. read)
Related folder
Sending State
Service (Transport
Service)
Size
Standard Folder Flag
Time
Type ID
Visibility Flag
Informatik Master, PM2100.1, 2013
Beispielanwendung
Objekte
Darstellung sind
transformierbar
Transformation
Object Transfer
Relationen
persistente
Objekte
DBMS
DBMS: Datenbank
Management System
RDBMS: Relationales DBMS
ODBMS: Objekzorientiertes
DBMS
RDBMS
ODBMS
.
34
Kommunikationssysteme, Teil 2.4, S. Rupp
Informatik Master, PM2100.1, 2013
Anwendungsfälle und Komponenten
Mobiltelefon als Fernbedienung
PPV-Control
Media Control Centre
Select movie
IP-Netz
PPV System
<<include>>
Select movie
Pay movie
User
Mobiltelefon
Authenticate
user
<<include>>
Pay movie
Update user
account
Play movie
TV &
Set-Top-Box
Broadcast
Netz
Play movie
<<actor>>
<<actor>>
Media-Gateway
AAA-Server
PPV: Pay per View
Kommunikationssysteme, Teil 2.4, S. Rupp
35
Informatik Master, PM2100.1, 2013
Kommunikationssysteme, Teil 2.4, S. Rupp
36
Informatik Master, PM2100.1, 2013
Aktivitäten
Benutzerschnittstelle
User
Media Control Centre
Log in
check user identity
User object:
identity and
privileges
[user log in not successful]
[user log in successful]
Movie object in
selected state
Selection
Select movie
Generate selection
of movies
<<control>>
<<boundary>>
C_Channel
C_Channel(c:Channel)
C_Channel()
start()
close()
1
1
B_Channel
B_Channel(c:Channel)
check()
start()
title
B_Text
play
B_Radio_Button
stop
B_Radio_Button
mute
B_Radio_Button
...
<<instantiate>>
<<instantiate>>
Pay movie
User object:
entry in user
account
Prepare for play out
1
<<control>>
MediaControlCenter
Start MediaController
Select media format
User object:
media channel
37
Kommunikationssysteme, Teil 2.4, S. Rupp
Informatik Master, PM2100.1, 2013
Kommunikationssysteme
ENDE Teil 2.4
Anwendungsdesign
39
Informatik Master, PM2100.1, 2013
1
<<entity>>
Channel
Status
Channel()
store()
delete()
Start media player
Kommunikationssysteme, Teil 2.4, S. Rupp
process
administers
Kommunikationssysteme, Teil 2.4, S. Rupp
38
...
Informatik Master, PM2100.1, 2013
Zugehörige Unterlagen
Herunterladen