Kommunikationsunterstützung

Werbung
Kommunikationsunterstützung:
Elementare Kommunikationstechniken
Kooperationsformen in verteilten Systemen
Kooperationsformen:
Benutzer- / Anwendungsebene
- zwischen Organisationseinheiten, Menschen,...
- z.B. Anfrage, Antwort, Auftrag, Mitteilung, Broadcast...
Kommunikationsformen (Kommunikationsmodell):
• verwendet zwischen Netzknoten, Rechnern, Prozessen, Anwendungen, ...
• Alternativen:
- Nachrichten,
- Prozeduraufrufe,
- gemeinsam zugänglicher Speicherbereich (physisch/logisch)
- ...
Kommunikationstechniken in verteilten Systemen
Kommunikationstechniken (generell):
•
Techniken zur Realisierung der Kommunikationsanforderungen
•
Alternativen: - Nachrichten versenden oder
- (physisch) gemeinsamen Speicher nutzen
Kommunikationstechniken (verteilte Umgebung):
•
kein (physisch) gemeinsamer Speicher vorhanden,
deshalb (physisch) immer nur Nachrichten versenden
•
aber: es gibt viele verschiedenen Arten, dies zu tun, und derartige Funktionen
den BenutzerInnen anzubieten
Zwischen allen Abstraktionsebenen:
Implementierung der abstrakten Konzepte einer Ebene erfolgt immer
durch konkrete Techniken der darunter liegenden Ebene!
Basis: Kommunikationstechnologie
Firma A
Firma B
“Internet”
“Intranet”
“Extranet”
Kommunikationsstandards !!!
Neuere Entwicklungen der Netzwerktechnologie (u.a.):
Teilelieferanten
•
•
Kupfer --> Glasfaser --> Wireless
getrennte Netze für einzelne Dienst --> integrierte Netze / QOS
Volumen des Datenverkehrs übertrifft das der Sprachübertragung (VoIP: nur Daten!)
•
...
•
A typical portion of the Internet
intranet
ISP
backbone
satellite link
desktop computer:
server:
network link:
[Coulouris/Dollimore/Kindberg: Figure 1.1 ff.]
vsis inf min uni hh ws 13_14
VIS-1 Komm-5
A typical intranet
vsis inf min uni hh ws 13_14
VIS-1 Komm-6
Portable and handheld devices in a distributed
system
vsis inf min uni hh ws 13_14
VIS-1 Komm-7
Web servers and web browsers
Web servers
http://www.google.comlsearch?q=obama
www.google.com
Browsers
Internet
www.cdk5.net
http://www.cdk5.net/
www.w3c.org
File system of
www.w3c.org
http://www.w3.org/standards/faq.html#conformance
standards
faq.html
vsis inf min uni hh ws 13_14
VIS-1 Komm-8
Computers vs. Web servers in the Internet
[C/D/K/B12
Date
Computers
Web servers
Percentage
1993, July
1995, July
1997, July
1999, July
2001, July
1,776,000
130
0.008
6,642,000
19,540,000
56,218,000
125,888,197
23,500
1,203,096
6,598,697
31,299,592
0.4
6
12
25
2003, July
~200,000,000
42,298,371
21
2005, July
353,284,187
67,571,581
19
vsis inf min uni hh ws 13_14
]
VIS-1 Komm-9
Kommunikationstechniken:
Grundlegende Netzdienste und -technologien
Netzdienste:
•
Telefon, Telex, Telefax, ...
•
E-Mail, Btx, ..., Kabel-TV, Video-on-Demand...
•
Zugriff auf Dateien, Rechner, Datenbanken ...
•
Datex-L / -P / -J, 'Corporate Networks', ...
•
SMDS (Switched Multimegabit Data Service): Datex-M
Kommunikationstechnologien:
•
•
•
•
LANs: Ethernet, Token Ring, Token Bus, ...
WANs: Fernsprechnetz (!), Miet- / Standleitungen,
öffentliche (z.B.Paket-) Vermittlungsnetze (wie Datex-P),
dienstintegrierende Netze (wie ISDN)
•
Wireless...: ...WLANs, ...WANs ---> GSM/GPRS/UMTS, IR, Bluetooth,...
•
MANs: B-ISDN, FDDI, DQDB, ... ---> INTEGRATION (!?!):
Hochgeschwindigkeitskommunikation mit ATM (Asynchronous Transfer Mode)
Kommunikationstechniken:
Netztopologien
Stern:
Ring:
vollst. vermascht:
Baum (Hierarchie):
teilw. vermascht:
Bus:
Anforderungen an die Kommunikationstechnik
Performanzkriterien:
Verzögerung ('Latency') [ sek ] : - abh. von Netzausdehnung (Distanz)
Datenübertragungszeit [ sek ] :
= Verzögerung [ sek ] + Datenmenge [ # Bits ] / Bandbreite [ # Bits / sek ]
Bandbreite ('Bandwidth' od. 'Data Transfer Rate') [ # Bits / sek ] ̶ auch:
„Datenübertragsrate“ : übertragbares Datenvolumen pro Zeiteinheit
Zuverlässigkeitskriterien:
Garantie über maximal mögliche Datenverlust- od. -fehlerrate [ 10 -n ]
Unterschiedliche Anforderungen - je nach Daten- bzw. Dienstart
---> "Quality of Service" (QoS) - Parameter
Arten von Netzwerken
nach: [Coulouris/Dollimore/Kindberg,
Pearson Education, 5. Auflage, 2012]
Kommunikationsnetze: Hardware
A) Übertragungsleistung früher (ca. 1990) :
Netztyp
Ausdehnung Verzögerung
Cluster
LAN
MAN
WAN
100 m
1 km
100 km
10 000 km
0,5 µs
5 µs
0,5 ms
50 ms
nach: [Gray/Reuter: 'Transaction Processing', Morgan Kaufman Pub., 1993]
Bandweite
1 KB?
1 Gbit/s
10 Mbit/s
1 Mbit/s
50 Kbit/s
10 µs
1 ms
10 ms
210 ms
B) Übertragungsleistung ab ca. 2000 :
Netztyp
Ausdehnung Verzögerung
Cluster
LAN
MAN
WAN
100 m
1 km
100 km
10 000 km
Übertragungszeit =
0,5 µs
5 µs
0,5 ms
50 ms
Bandweite
1-10 Gbit/s
1-10 Gbit/s
100 Mbit/s
100 Mbit/s
Distanz
# Bits
------------- + ---------------- [sek]
Cm
Bandweite
1 KB?
5 µs
10 µs
0,6 ms
50 ms
Annahmen:
Cm = ca. 300 Mio m/sek
Latency = ca. Distanz / Cm
Lokale Netze (LAN): IEEE-Standards
• direkte Übertragung von Nachrichten ohne Zwischenspeicherung
• hohe Übertragungsrate (bis zu 16/100/1000/10000 Mbit/s)
• Broadcast-Kommunikation - relativ zuverlässig
• Basis: IEEE-Standards 802.x: Higher Layer Interfaces (IEEE 802.1)
• Beispiele:
+ MANs: DQDB + FDDI
(IEEE 802.6)
+ Broadband (IEEE 802.7)
IEEE Standards für
ISO/OSI
Layer 2
Logical Link Control (LLC, IEEE 802.2)
Ethernet - CSMA/CD (IEEE 802.3)
Token Bus (IEEE 802.4)
Token Ring (IEEE 802.5)
...
Wireless LAN (IEEE 802.11), …
Personal Area Networks (IEEE 802.15)
WIMAX (IEEE 802.16)…
802.2
802.3 802.4
802.5 802.6
802.7
802.1
... 802.11 ... 802.16
------------------- Media Access Control, MAC --------------------
LLC
MAC
IEEE 802 Netzwerk-Standards
IEEE No.
802.3
Name
Ethernet
Title
Reference
CSMA/CD Networks (Ethernet)
[IEEE 1985a]
802.4
Token Bus Networks
[IEEE 1985b]
802.5
Token Ring Networks
[IEEE 1985c]
802.6
Metropolitan Area Networks
[IEEE 1994]
Wireless Local Area Networks
[IEEE 1999]
802.11
WiFi
802.15.1
Bluetooth Wireless Personal Area Networks
802.15.4 ZigBee
802.16
WiMAX
802.17
802.18
802.19
WRAN
802.20
Wireless Sensor Networks
Wireless Metropolitan Area Networks
Resilient Package Ring
Radio Regulatory
Wireless Coexistence
Mobile Broadband Wireless Access
[IEEE 2002]
[IEEE 2003]
[IEEE 2004a]
[IEEE 2012]
[IEEE 2011]
Virtuelle Netztopologien
Monitorstation
Repeater /
Hubs (L 1)
Bus
+ Bridges /
Switches (L 2)
+ Router (L 3)
+ Gateways (L 4+)
Ring
Beispiel: 'Ethernet'
(IEEE 802.3)
• entwickelt am Xerox PARC, 1973
• Bus-Netzwerk
• Paket-Layout:
Zieladresse
6
Absenderadresse
6
Typ
2
Daten
46 - 1,5k
Checksum
4 Bytes
• Zugriffsmethode: Carrier Sense with Multiple Access and
Collision Detection (CSMA/CD)
• keine Längenangabe der Daten! (Dafür 9,6 µsec Pause nach jedem Paket)
• Übertragungsrate zunächst ca. 10 Mbit/s - Fast Ethernet:100 Mbit/s, 1, 10 Gbit/s…
Ethernet: Entwicklungsstufen
10Base5
10BaseT
100BaseT
1000BaseT
10 Mbps
10 Mbps
100 Mbps
1000 Mbps
Twisted wire (UTP)
100 m
100 m
100 m
25 m
Coaxial cable (STP)
500 m
500 m
500 m
25 m
Multi-mode fibre
2000 m
2000 m
500 m
500 m
Mono-mode fibre
25000 m
25000 m
20000 m
2000 m
Data rate
Max. segment lengths:
CSMA/
CD
Carrier Sense
Multiple Access
Collision Detection
unfair !
Beispiel: 'Cambridge Ring'
• entwickelt an der Cambridge University, 1970
• unidirektionaler Ring
• Paket-Layout:
preamble full/empty monitor source destinat. data
response
bit
bit
bit
adr.
adr.
(16 Bits)
bit
1
1
1
8
8
16
2
• Zugriffsmethode: slotted ring
fair !
• Übertragungsrate 10 Mbit/s
• Monitor-Station
freight-train
bits
Beispiel: 'Token Ring'
(IEEE 802.5)
• entwickelt bei IBM, 1977
• unidirektionaler Ring
• Paket-Layout:
3
6
Token receiver
starting
delimiter
access
control
6
-5k
sender data
4
checksum
1
end_delimiter
1 Bytes
frame status
frame
control
• Zugriffsmethode: Token
„faires“ Protokoll !
• Übertragungsrate zunächst ca. 4-16 Mbit/s (später auch 100 Mbit/s etc.)
• Monitor-Station
Token
frei
D
A
Token
belegt
C
A
Daten
B
D
D
C
B
Daten
kopiert
D
Daten
A
C
B
A
Token
frei
C
B
Beispiel:
„TokenRing“Protokoll
Ethernet vs. Token Ring
- keine Monitorstation nötig
- unbestimmte Länge des Rings
- keine Repeater an jeder Station nötig
- Erhöhung der Übertragungsrate
bis zu 100 MBit/sek möglich
- relativ lange Nachrichten
unfair !
fair !
annähernd gleiche Leistungsfähigkeit und Einsatz in der Praxis
Netzwerkebene: Alternative Übertragungstechniken
A) Paketvermittlung
- Aufteilung der Nachricht in Pakete fester Länge
- unabhängige Wegewahl
- Protokolle für Reihenfolge, Fehler ...
eher für kurze Nachrichten im WAN geeignet
B) Nachrichtenvermittlung
- Versenden von Nachrichten
- Zusammensetzen der Nachricht an jedem Knoten
- relativ zuverlässig
eher für lokale Netze
C) Leitungsvermittlung
- Verbindungsaufbau, exklusive Nutzung der Verbindung
- danach effiziente Übertragung
eher für lange Nachrichten effizient
'End-to-end'-Verzögerung bei lokalen / Weitverkehrsnetzen
Zeit
A
B
C
Paketvermittlung
A
B
C
Nachrichtenvermittlung
A
B
C
Leitungsvermittlung
Weitverkehrsnetze (WAN)
Frühes Beispiel: ‚ARPA-Net‘ --> Internet
Host
Packet Switching
Exchange (PSE)
Interface Message
Processor (IMP)
• „store and forward“-Kommunikation
• relativ geringe Übertragungsrate (früher z.B. nur 2 bis 10 kbit/s)
• Pakete können z.B. verloren, dupliziert, verändert werden und die
Reihenfolge kann vertauscht werden
(zunächst) weniger zuverlässige Übertragung
Kontinuierliche Datenübertragung: Streams
sending process
DB
receiving process
Program
Program
OS
OS
Stream
Network
Sitzungskontext:
gemeinsame Vereinbarung über Kontext
Übertragungsarten:
- asynchron
- synchron
- isochron
Quality of Service:
vsis inf min uni hh ws 13_14
flow/line specific
VIS-1 Komm-28
Hardware/Software-Abstraktionsebenen
Software-Aufbau:
...
2.1
...
...
2.2
1.1
2.3
1.2
1.3
Dienst = untere Ebenen bieten den oberen einen Dienst an
Protokoll = Regeln zur Kommunikation zwischen Software-Modulen verschiedener Rechner derselben Ebene (Reihenfolgen+Nachrichtenformate)
Inter- / Intra-Ebenen- (i.e. Prozess-) Kommunikation
a) Intra-Ebenen: zuverlässig, 'Peer-to-peer'-Protokoll
b) Inter-Ebenen: 'aktive'/'passive' Komponenten, 'Up'/down'-Aufrufe,
prozedural, 'Remote Procedure Call'
Geschichtete Kommunikationsprotokolle
Message received
Message sent
Layer n
Layer 2
Layer 1
Sender
phys. communication medium
Recipient
Protokollaufbau nach dem
ISO/OSI-Referenzmodell
Message received
Message sent
Layers
Application
Presentation
Session
Transport
Network
Data link
Physical
Sender
phys. communication medium
Recipient
Kommunikationsnachrichten:
geschachtelter Aufbau
Application-layer message
Presentation header
Session header
Transport header
Network header
Beispiel für SW-Abstraktion: ISO/OSI-Referenzmodell
für die Kommunikation in heterogenen verteilten Systemen
Knoten A
Knoten B
Anwendungsschicht
Anwendungsschicht
Darstellungsschicht
Darstellungsschicht
Kommunikationssteuerungsschicht
‘Store-and
forward’-Knoten
Transportschicht
Kommunikationssteuerungsschicht
Transportschicht
Vermittlungsschicht
Vermittlungsschicht
Vermittlungsschicht
Sicherungsschicht
Sicherungsschicht
Sicherungsschicht
physikalische Schicht
physikalische Schicht
physikalische Schicht
Host
PSE (Packet
Switching Exchange)
Host
ISO/OSI-Anwendungsschicht: klassisches Modell
ASE: Application Service Element
• Unterstützung der Kommunikation von Anwendungsprozessen
• allgemeine Dienstelemente (CASE)
- Association Control (ACSE)
- Commitment, Concurrency and Recovery (CCR)
- (Distributed) Transaction Processing (TP)
- Remote Operation Service (ROSE)
• höhere Dienstelemente (SASE)
- File Transfer Access Module (FTAM)
- Virtual Terminal (VTP)
- Remote Database Access (RDA)
• sonstige:
- Naming/ Directory
- Time Service
- Transaction Management
- Security
- HTTP, FTP, SMTP, CORBA IIOP, ...
ISO/OSI-Darstellungsschicht
kodiert auszutauschende Daten gemäß einer vereinbarten Syntax
• abstrakte Syntax
-> Menge aller (abstrakt) vereinbarten Typdefinitionen
-> ISO/OSI-Bsp.: ASN.1
+ Kodierungsregeln
-> Regeln zur Kodierung der Daten
-> ISO/OSI-Bsp.: Basic Encoding Rules
=> konkrete Transfersyntax
= abstrakte Transfersyntax + 'Basic Encoding Rules'
+ Secure Sockets (SSL), CORBA Data Representation, ...
ISO/OSI- Kommunikationssteuerungsschicht
• Synchronisation zweier Partnerinstanzen (half/full duplex)
• Management virtueller Verbindungen - Verbindungsauf- und Abbau
- Datentransfer
- Dialogkontrolle mittels Token
- Synchronisation des Datenflusses
ISO/OSI-Transportschicht
• Bereitstellung eines vom Netzwerk unabhängigen Transportdienstes
zwischen Paaren von Ports / Prozessen
• Aufgaben: - Aushandeln einer Transportklasse
(Zuverlässigkeit, verbindungsorientiert/-los, Effizienz, ...)
- meist verbindungsorientierte Übertragung
- Segmentierung der Nachrichten in Pakete
- Sequenznummer für Pakete
• Fehlererkennung / - korrektur:
+ TCP, UDP (s.u.)
Klassen 0 - 4
ISO/OSI-Vermittlungsschicht
• transportiert Pakete im Standardformat des Netzwerkes
vom Absender- zum Empfängerknoten
• führt Routing durch
• Beispiele: IP, ATM virtual circuits
ISO/OSI- Sicherungsschicht
• fehlerfreie Übertragung zwischen direkt verbundenen Rechnern
• Mechanismen zur: - Fehlerbehandlung
- Fehlererholung
- Flusskontrolle
LLC: IEEE - Standards 802.1/2
MAC: IEEE - Standards 802.3/4/5/6, ...
Logical Link Control (LLC)
---------------------------------------Media Access Control (MAC)
Bsp.:
Ethernet MAC, ATM cell
transfer, PPP
ISO/OSI- Physikalische Schicht
• Übertragung von Sequenzen von binären Daten durch analoge Signale
---> IEEE - Standards 802.3/4/5/6...
Bsp.: Ethernet base band signalling, ISDN
Ziele des ISO/OSI-Modells
• standardisierte Datenübertragung in heterogenen Weitverkehrsnetzen
• verbindungsorientierte Übertragung,
• Erweiterungen für verbindungslose Kommunikation
Ziel der Kommunikation in VS
• hohe Zuverlässigkeit
• hohe Leistungsfähigkeit
LAN
• Mehrzahl des Verkehrs innerhalb des VS läuft im lokalen Netz ab
• Ziel der Kommunikation: Unterstützung entfernter Prozeduraufrufe
ZIEL:
gleiche Effektivität wie im zentralen System trotz Aufteilung der Systemfunktionen auf mehrere Server
„Leichtgewichtigere“ Protokolle: Beispiel TCP/IP
• OSI-Implementierungen oft zu schwergewichtig, benötigt werden leichtgewichtige Protokolle und Implementierungen
• meist verbindungslose Kommunikation
• LAN relativ zuverlässig, daher Fehlerbehandlung durch RPC
("End-to-end"-Argument [Saltzer 1988])
• Client/Server-Kommunikation mit möglichst geringer Verzögerung
RPC
Anwendungsschicht
XDR,
XDR-Routinen
Darstellungsschicht, Präsentationsfunktion
UDP / TCP
Transportschicht
IP
Netzwerk
Netzwerkschicht
Physikalische Schicht
Bsp.:
TCP/IP
TCP/IP-Kommunikationstechnologie
FTP client
FTP server
TCP
TCP
router
IP
IP
Ethernet
driver
Ethernet
driver
Ethernet
IP
token ring
driver
token ring
driver
Token Ring
Standardisierter Datenkommunikation:
Beispiel 'Unix-Sockets'
Stream/Datagram Socket
Stream/Datagram Socket
TCP / UDP
TCP / UDP
IP
IP
z.B. Ethernet-Treiber
z.B. Ethernet-Treiber
• Stream-Sockets (TCP: Transport Control Protocol):
- verbindungsorientiert, zuverlässige Kommunikation
- geordnete Nachrichten
• Datagram-Sockets (UDP: User Datagram Protocol):
- verbindungslose,unzuverlässige Kommunikation
- schneller
- ungeordnete Nachrichten
TCP/IP Ebenen
Message
Layers
Application
Messages (UDP) or Streams (TCP)
Transport
UDP or TCP packets
Internet
IP datagrams
Network interface
Network-specific frames
Underlying network
Sockets und Ports
socket
any port
agreed port
socket
message
client
server
other ports
Internet address = 138.37.94.248
Internet address = 138.37.88.249
Geschachtelte TCP/IP-Nachricht
Application message
TCP header
IP header TCP
Ethernet header IP
Ethernet frame
port
a) Datagram-Sockets
Client
Server
s = socket (..., Datagram,...)
...
s‘ = socket (..., Datagram,...)
...
bind (s, ClientAddress)
bind (s‘, ServerAddress)
...
...
sendto (s, "msg",
ServerAddress)
msg = recvfrom (s‘, buffer,
from)
Client- / ServerAddress: Socket-ID = Internet-Adresse + Port-ID
b) Stream-Sockets
Server
Klient
s = socket (...,STREAM,...)
...
s‘ = socket (...,STREAM,...)
...
connect (s, ServerAddress)
...
bind (s‘, ServerAddress)
listen (s‘,5)
. . . Erzeugen eines neuen Sockets
write (s, "msg", length)
sNew = accept (s‘, from)
...
n = read (sNew, buffer, amount)
virtuelle Verbindung
(write/send, read/receive)
Beispiel: Aufbau eines TCP/IP-Servers
Server-basierte Applikationen
POP/IMAP
SMTP
X11
NNTP
TCP/IP Stack
Betriebssystem
Hardware
HTTP
MobileIP Routing-Mechanismus
Sender
Subsequent IP packets
tunnelled to FA
Mobile host MH
Address of FA
returned to sender
First IP packet
addressed to MH
Internet
Foreign agent FA
Home
agent
vsis inf min uni hh ws 12_13
First IP packet
tunnelled to FA
VIS-1 Komm-48
Anwendungsnahe Kommunikationsunterstützung
Sitzungen ('Sessions'/ 'Associations')
•
feste Beziehung zwischen kommunizierenden Prozessen auf Anwendungsebene mit vereinbarten Eigenschaften (Namen, Ressourcen, Charakteristika...)
•
gemeinsamen Zustand zwischen Kommunikationspartnern während der Dauer
der Session aufrechterhalten
•
Mechanismen zur Authentisierung und Autorisierung
Blockierende vs. nicht blockierende Protokolle
Kommunikation zwischen Sender und Empfänger
a) synchron:
Sender blockiert bis zur Antwort
b) asynchron:
send / receive explizit programmiert
Formen des Nachrichtenaustausches
in verteilten Systemen
Transportschicht:
---> Nachrichtenaustausch zwischen Paaren von Sockets
(Socket-ID = Netzwerkadresse + Port-ID)
asynchron
mitteilungsorientiert
No-wait-send
auftragsorientiert
Remote
Service/Method
Invocation
synchron
Rendezvous
RPC
Kommunikationsstruktur
meist RPC
Bsp. für asynchrone Nachrichtenübertragung
receive (socket_id)
send (socket_id,
message)
Prozess
fährt mit der
Ausführung
fort
...
Prozess
wartet auf
Nachricht
...
receive (socket_id)
Prozess
wartet auf
Nachricht
send (socket_id,
message)
---> 4 Aktionen pro Prozeduraufruf und -antwort
Optimiertes synchrones Transportprotokoll 'Amoeba-Nachrichtentransaktion'
Client
Server
GetRequest (..., CltId, req_header,
req_buffer, req_len)
DoOp (SvrId, req_header, req_buffer, req_len,
resp_header, resp_buffer, resp_len)
blockiert
TA !
blockiert
execute
request
SendReply (CltId, ..., resp_header, resp_buffer,
resp_len)
---> 3 Aktionen pro RPC !
Asynchrone vs. synchrone
Interprozesskommunikation (IPK)
• Asynchrone (nicht blockierende) IPK
- bessere Effizienz, da hoher Grad an Parallelität
- nicht blockierendes Senden ist einfach zu implementieren
- nicht blockierendes Empfangen ist schwierig zu implementieren:
-> Pufferung von Nachrichten (Mailbox)
-> Anzeigen von ankommenden Nachrichten (Interupts)
-> Server muss sich sämtliche Zustände merken
• Synchrone (blockierende) IPK
•
schlechtere Effizienz, da blockierend
•
einfachere Synchronisation
•
einfacheres Programmiermodell (!)
Implementation synchroner IPK mittels Threads
- sehr effizient, da hoher Grad an Parallelität:
-> Wenn ein Thread blockiert, fährt ein anderer Thread desselben Clusters fort
- einfache Implementation
- einfache Synchronisation
- Realisierung von Servern:
a) Pool von Threads
b) Erzeugen eines neuen Threads bei Ankunft
eines Client-Requests
FAZIT: Möglichkeiten zur Parallelität auf:
a) Anwendungsebene: asynchrone Kommunikation und Scheduling durch Anwendung
selbst (problematisch !)
b) Systemebene: parallele Prozesse / Threads (verwaltet durch BS/Middleware !)
und dennoch synchrone Kommunikation auf der Anwendungsebene
einfachere Programmierung !
Effizienzsteigerung: optimierte Protokolle &
Hochgeschwindigkeitsnetze
SoftwareBeispiel:
optimierte
Transportprotokolle
• aktives Warten von Prozessen in Multi-Prozessor-Systemen
• effiziente Flusskontrolle --> selektive wiederholte Übertragung
• Vermeidung des Kopierens von Daten
• Übertragung großer Datenpakete
o
o
o
o
•...
Hardware-Beispiel:
•
FDDI (Fiber Distributed Data Interface)
Metropolitan Area
•
DQDB (Distributed Queue Dual Bus)
o
o
---> 100 bis 150 Mbit/s und mehr
Networks (MAN):
---> Integration von Daten, Audio, Video
•
ATM (Asynchronous Transfer Mode) / HS-Netze:
---> LAN/ MAN/ WAN
+ allgemeine Hochgeschwindigkeitsnetze (wie z.B. B-ISDN)
Metropolitan Area Networks (MAN):
z.B. ‚Fiber Distributed Data Interface‘ (FDDI)
(IEEE 802.6)
Topologie:
Dual Ring, bis zu 100 km lang, bis zu 500 Stationen
Übertragungsmedium:
Glasfaserkabel (Kupferkabel)
Bandbreite: ca. 100 Mbit/s
Media Access Control: Token Passing
Synchroner und asynchroner Dienst: Daten- und Sprachübertragung
Anwendungsgebiete:
Großrechner - Peripherie (z.B. Disks)
Backbone für verschiedene lokale Netze (!)
Multimedia-Kommunikation (!?!) - aber: nicht isochron !
FDDI-Anschlüsse
[Wikipedia 2008]
•
•
•
•
•
Unterteilung von Class-A und Class-B Geräten
Class-A Geräte: 2-Anschlüsse, direkte Einbindung möglich (Router, Konzentratoren, Workstations, …)
Class-B Geräte: werden über Konzentratoren angeschlossen
Ausfall eines SAS kann vom Konzentrator über Bypass gehandhabt werden
Anschlussmöglichkeiten: SAS, DAS, Dual-Homing
'Metropolitan Area Networks' (MAN):
Beispiel 'Distributed Queue Dual Bus' (DQDB)
(IEEE 802.6)
Topologie: (Point-to-point/Open/Looped) Dual Bus mit
Datentransport in entgegen gesetzter Richtung, 2-fach unidirektional
Übertragungssystem: hybrid
Bandbreite: ca. 140 Mbit/s (Datex-M: n*64 kbit/s, n*2 Mbit/s, 34 Mbit/s)
Zugriffsverfahren: verteilte Warteschlange (mit Request Counter)
Vermittlungsart: Zellenvermittlung (mit Zellen a 53 Bytes - wie ATM),
Paketvermittlung, verbindungslose Kommunikation
Isochroner (!) Dienst: z.B. für Video- und Audioübertragung
(mit Zellreservierung) möglich
Anwendungsgebiete:
Netzkopplung, Multimedia-Kommunikation, ... :
--> Switched Multimedia Data Services (SMDS) - wie z.B. Datex-M
Beispielkonfiguration für DQDB
Data
Bus1
Station
X
A
Station
Y
Station
Z
Bus2
Signal
Data
Bus1
B
Station
X
Signal
Station
Y
Station
Z
Bus2
DQDB-Zugriffsverfahren: verteilte Warteschlange
Zelle
Request Busy
Bit
Bit 0
-1
A
Knoten
inaktiv:
Bus 1
Count Down Counter
Bus 2
Busy Request
Bit
Bit 1
Zelle
(neue Anforderung)
Busy Request
Bit
Bit 0
Zelle
Request Busy
Bit
Bit 0
-1
Knoten
sendewillig:
Request Busy
Bit
Bit 1
(freie Zelle)
Request Counter
+1
B
Zelle
Request Counter
Zelle
Zelle
Request Busy
Bit
Bit 1
Bus 1
(freie Zelle)
Count Down Counter (=0?)
Bus 2
+1
Busy Request
Bit
Bit 1
(neue Anforderung)
Zelle
Busy Request
Bit
Bit 1
Zelle
Hochgeschwindigkeitsnetze:
Beispiel 'Asynchronous Transfer Mode' (ATM)
- integrierte Übertragung unterschiedlicher Datenströme
(z.B. 32 Kbit/s: Sprache, Fax, Video; 100-150 Mbit/s: HDTV,...)
(CCITT I.150)
ITU-T
- schnelles Paketvermittlungsnetz (z.B. B-ISDN, 155/622 Mbit/s )
- kleine Pakete fester Größe (5+48=53 Bytes)
ATM-Zelle:
Virt. Path Id
Virt. Channel Id
Flags
Data (48B)
- 3-Ebenen-Kommunikationsabstraktion
Anwendung
VC
VP
VP
Switch
Höhere Protokolle
ATM Cells
ATM Virtual Channels
ATM Adaptation Layer
ATM Layer
Physical Layer
VP: Virtual Path
VC: Virtual Channel
VC
VP
VP
VC
ATM Protokoll-Ebenen
ATM Switching
AUSBLICK: Analogien allgemeiner Versorgungsnetze
Straßenverk.
Schienenv. Luftfahrt Elektro. Fernsprech. Info.dienst
Ebene 4
Transport von Personen-+ Flugreisen elektr. Ferngespräche Inform.Pers.+Waren Gütertransp.
Geräte
nutzung
Ebene 3
Transport un- Bundesternehmen
bahn
Luftfahrtgesellsch.
Strom- Kommun.werke gesellsch.
Inform.
anbieter
Ebene 2
Kraftfahrzeuge
Züge +
Loks
Flugzeuge
elektr. Telefon +
Masch. Fax
Anw., SW
Endgeräte
Ebene 1
Straßen
StVO
Schienen
Signale
Luftraum Stromnetz Telefonnetz
Flugh.,-Ktrl.
Finanz. Steuern
von Eb.1
Eb.3
Landegeb.
Eb.3
Pausch.,
Ebene 3
NII
???
Infrastruktur ist entscheidend für industrielle Anwendungen !
Herunterladen