1. Internet, das Netz der Netze
weltweites Datennetz mit bald
1 Milliarde Benutzern
Struktur: ein Netz von Netzen
Zugang auch über andere Netze, z.B. T-Online
exponentielles Wachstum: alle 6 Sekunden geht ein
weiteres Subnetz ans Internet.
anarchische Organisationsstruktur, keine zentralen
Verwaltungsinstanzen
“Killer-Applikation”: World Wide Web brachte den
Durchbruch auf breiter Front
Prof. W. Burkard Rechnernetze 221
Notizen
221
2. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
Point of Present
Prof. W. Burkard Rechnernetze 222
Notizen
222
3. Historischer Abriss
Ursprung des Internet ist das DARPANET der US-Militärs
(Defence Advanced Research Projects Agency)
Ende der 60er Jahre kommen die US-Universitäten und
Hochschulen hinzu.
Basis zu dieser Zeit: langsame Telefonleitungen
Erster Dienst im Internet: telnet = Dialogsitzung am entfernten Rechner
Entwicklung des Basisprotokolls TCP/IP
1971 neuer Dienst: Email, Netz wird immer wichtiger für
Kommunikation und Daten- (Programm) Austausch der
Teilnehmer
1975 Netz als Forschungsprojekt endet (ARPA->DCA)
1980 Abspaltung des militärischen Teils ( -> Milnet)
Prof. W. Burkard Rechnernetze 223
Notizen
223
4. Historischer Abriss II
1986 Übergang von langsamen Telefonleitungen auf schnellere
Standleitungen (Glasfaser)
1989 aus dem nationalen Netz der USA wird ein internationales Netz,
weil sich immer mehr Länder anschließen. Wichtig allerdings:
Internet bleibt ein nahezu reines Wissenschaftsnetz
Seit Anfang der 90er: Dramatisches, exponentielles Wachstum
(teilweise cirka 25% monatlich). Zunehmend auch kommerzielle
Teilnehmer (F&E-Abteilungen grosser Firmen)
Ursprungsnetz war ein Netz von Grossrechnern, heute ist das
Internet im wesentlichen ein Netz von Unix-Rechnern
(zumindest bei den Servern)
1993: Mit dem World-Wide-Webster wird die “Killerapplikation” des
Internet geschaffen: Ein Integratortool für einfachste, grafische
Handhabung des Netzes -> Das Netz explodiert geradezu !!
Prof. W. Burkard Rechnernetze 224
Notizen
224
11. Organisationsstruktur
Internet = ein Netz von Netzen OHNE oberste Kontrollinstanz !!!
In jedem Teilnetz gelten eigene Regeln
Beispiel WIN des DFN: kommerzielle Nutzung nicht erlaubt
Nur wenige (halbwegs) verbindliche Absprachen zwischen den
Teilnetzbetreibern, z.B. kostenlose Übernahme+Übergabe von Daten
zwischen Netzbetreibern ist “ungeschriebenes” Gesetz („Peering“)
Problem: Es gibt Regeln, die übergreifend behandelt werden müsssen!
==> ISOC Internet Society = Verein zur Förderung, Verbreitung und dem
konzeptionellen Ausbau des Internet
Unterorganisationen der ISOC:
IAB = I. Architcture Board => Weiterentwicklung der Protokolle
IETF = I. Engineering Task Force => kurzfristige technische Weiterentwicklung
IRTF =I. Research Task Force => zuständig für langfristige Entwicklungen
IANA = I. Assign Numbers Authority => Port-Nr. Vergabe für wellknown Ports,
heute von der ICANN betreut. (I.Corporation for assigned Names and Numbers)
Prof. W. Burkard Rechnernetze 231
Notizen
231
12. Zugang zum Internet
Für den konventionellen Postdienst braucht man entweder die gelbe
Post oder Paketdienste wie UPS oder DPD
Analog braucht man beim Internet ein Unternehmen oder eine
Einrichtung, die den Zugang zur Verfügung stellen => Service-Provider
Service-Provider...
stellt den Kunden die Internet-Dienste technisch zur Verfügung
erledigt die administrativen und organisatorischen Aufgaben eines Internet-
Anschlusses
betreibt Backbone-Rechner (Server) und ein eigenes Datennetz mit Anschluss an
das Internet
bietet (möglichst kundennah) sogenannte POP’s (Points of Presence), die
Zugangsknoten für die Endkunden
Prof. W. Burkard Rechnernetze 232
Notizen
232
13. Serviceproviding in der BRD
Ein wachsender (explodierender) Markt
(einige) kommerzielle “Primärprovider” in Deutschland:
UUNet GmbH
KPNQwest/Xlink
Puretec
Compuserv
ECRC
DFN-Verein betreibt GWIN und ist einer der größten deutschen Service-
Provider, aber: NUR zu nicht-kommerziellen Zwecken
Private Vereine bieten oft einen günstigen Netzzugang für
Privatpersonen mit geringem Kommunikationsvolumen:
sub-Netz e.V. Karlsruhe (deutschlandweit aktiv)
Individual Network e.V. Oldenburg (bundesweite “Ableger”)
Internet-by-call ( 1-3 Pfennige je Minute )
flatrate-Tarife diverser Anbieter ( 30-200 DM je Monat)
Prof. W. Burkard Rechnernetze 233
Notizen
233
14. Die Bedeutung der RFC’s
RFC = Request for Comment, Abhandlung über ein I.-Thema
RFC’s repräsentieren die Dokumentation des Internet
Ein RFC kann einen De-facto-Standard des Internet sein, z.B. RFC 821 +
RFC 822 definieren das SMTP-Protokoll
manche RFC’s dienen nur zu Informationszwecken
manche RFC’s dokumentieren Ergebnisse von Forschungen und werden
eventuell in der Zukunft zu Standards
Es existieren derzeit über 2700 RFC’s
Jeder kann einen RFC aufsetzen, man muss nur die Regeln zur Abfassung
eines RFC einhalten (=>die stehen selbst in einem RFC (RFC 2223)
RFC-Beispiel: RFC 1157: A simple network management protocol (SNMP)
Prof. W. Burkard Rechnernetze 234
Notizen
234
15. Ein Beispiel: RFC 821
RFC 821 August 1982
Simple Mail Transfer Protocol
TABLE OF CONTENTS
1. INTRODUCTION .................................................. 1
2. THE SMTP MODEL .............................................. 2
3. THE SMTP PROCEDURE .................................... 4
3.1. Mail ................................................................. 4
3.2. Forwarding .................................................... 7
3.3. Verifying and Expanding .............................. 8
3.4. Sending and Mailing ................................... 11 Eine vollständige Liste aller RFCs
3.5. Opening and Closing .................................. 13
findet sich online unter:
3.6. Relaying ....................................................... 14
3.7. Domains ....................................................... 17
3.8. Changing Roles ........................................... 18
http://rfc.fh-koeln.de/
4. THE SMTP SPECIFICATIONS ........................... 19
4.1. SMTP Commands ........................................ 19
4.1.1. Command Semantics ............................... 19
4.1.2. Command Syntax ..................................... 27
4.2. SMTP Replies .............................................. 34
4.2.1. Reply Codes by Function Group ............ 35
4.2.2. Reply Codes in Numeric Order ............... 36
4.3. Sequencing of Commands and Replies .... 37
4.4. State Diagrams ............................................ 39
4.5. Details .......................................................... 41
4.5.1. Minimum Implementation ........................ 41
4.5.2. Transparency ............................................ 41
4.5.3. Sizes .......................................................... 42
Prof. W. Burkard Rechnernetze 235
Notizen
235
16. Ein Ausschnitt aus RFC 821 ...
2. THE SMTP MODEL
The SMTP design is based on the following model of communication: as the result of a user mail request,
the sender-SMTP establishes a two-way transmission channel to a receiver-SMTP. The receiver-SMTP may
be either the ultimate destination or an intermediate. SMTP commands are generated by the sender-SMTP
and sent to the receiver-SMTP. SMTP replies are sent from the receiver-SMTP to the sender-SMTP in
response to the commands.
<... Hier fehlt ein Teil ...>
+------------+ +-------------+
+------+ | | | |
| User | <--> | | SMTP | |
+------+ | Sender- | Commands/Replies | Receiver-|
+---------+ | SMTP | <-------------------------------> | SMTP | +---------+
| File | <--> | | and Mail | | <--> | File |
|System| | | | | |System|
+---------+ +-------------+ +--------------+ +---------+
Sender-SMTP Receiver-SMTP
Model for SMTP Use
Prof. W. Burkard Rechnernetze 236
Notizen
236
17. Internet und das OSI-Referenzmodell
Prof. W. Burkard Rechnernetze 237
Notizen
237
18. Die Ebenen der TCP/IP-Suite
Host A Host B
Application layer
Application layer
Router Transport layer
Transport layer (auch Gateway genannt)
Network layer
Network layer Network layer
Data link+
Data link+ Data link+
physical layers
physical layers physical layers
Subnetwork Subnetwork
Prof. W. Burkard Rechnernetze 238
Notizen
238
19. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
Die Aufgaben der TCP/IP-Ebenen
= Ebene der Internet-Dienste (Anwendungen) wie Datei-
Application layer
transfer, electronic mail, remote terminal access
= Erstellt eine (verläßliche) Ende-zu-Ende-Verbindung
Transport layer
von Host zu Host.
= Internetwork Layer, verbindet Teilnetze durch
Network layer
einen Datagrammdienst ==> IP-Protokoll
zwischen
Data link+
= Kommunikation in Teilnetzen, z.B. in LAN’s
physical layers
wie Ethernet, Token-Ring
Prof. W. Burkard Rechnernetze 239
Notizen
239
20. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
Protokolle der Internet-Suite
NFS
TELNET SMTP FTP TFTP RPC SNMP
4. Schicht application layer:
TCP UDP
3. Schicht transport layer:
Gateway
IP, ICMP ARP,RARP
2. Schicht network layer:
Protokolle
CSMA/CD, Token-Passing
data link layer:
1. Schicht
Ethernet, V.24, ISDN, X.21, IEEE 802
phys. Layer:
Prof. W. Burkard Rechnernetze 240
Notizen
240
23. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
Die IP-Ebene
Auf dieser Ebene geht es um das Transportieren von
Datagrammen durch das (Inter)-Netz
IP: der eigentliche Datagrammdienst, der die Daten transportiert
ICMP: das Internet Control Message Protocol dient zur
Fehlersuche, Routenüberprüfung, Leistungsmessungen
ARP: Address resolution protocol, ermittelt die zu einer IP-
Adresse gehörende Hardware-Adresse (z.B. Ethernet-Adresse)
RARP: Reverse ARP, hat genau die umgekehrte Funktion
Prof. W. Burkard Rechnernetze 243
Notizen
Datagramme = Päckchen mit Daten
243
24. Edited by Foxit Reader
SEHR WICHTIG!!! Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
Der Aufbau des IP-Datagrams
Anzahl
Bits
1 version (4 Bits) headlength (4) Version des IP-Protokolls (derzeit 4), Länge des IP-Headers
man kann Pakete z.B. als “dringend” oder “verläßlich” definieren
type of service (8)
1
komplette Länge des IP-Paketes
2 total length (16)
2 identifier (16)
identifier, flags und offset werden beim Fragmentieren von IP-
Paketen benötigt.
flags (3) fragment offset (13)
2
time to live ttl (8)
1
ttl = anzahl der “Hops”, die ein Paket noch zu “leben” hat.
protocol (8)
1 übergeordnetes Protokoll (z.B. TCP oder UDP), das die Daten
bekommt,
header checksum (16)
2
Prüfsumme über den IP-Header
source address (32)
4
IP-Quelladresse
4 destination address (32) IP-Zieladresse
options and padding (???) padding dient dazu, das IP-Paket auf volle 32 Bit zu “runden”
Die Daten die eigentlich transportiert werden...
d a t a (???)
Prof. W. Burkard Rechnernetze 244
Notizen
flags und Fragmentierung sind zu vernachlässigen
bei jedem hop wird das tti-Feld um eine Einheit reduziert.
=> Router prüft TTL-Paket bis es O erreicht => Meldung an Ausgangsrouter
=> Packet wird wegen quot;Überalterungquot; gelöscht
Eingabeauffoederung: ping www.google.de
tracert www.google.de
Ethernet Frame hat zuerst Zieladresse (destination adress)
244
25. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
IP-Adressen
IP-Adressen umfassen 32 Bit, also 4 Bytes
Diese 4 Bytes werden in Dezimalschreibweise notiert, zwischen den
Bytes notiert man einen Punkt, Beispiel: 141.21.37.206
Die 32-Bit-Adresse spezifiziert weltweit eindeutig einen Rechner weil
sie in einen Netzwerk- und einen Hostanteil trennbar ist:
Class A Adressen: 0 + (7 Bits Netzwerkadresse) + (24 Bit Hostadresse)
Class B Adressen: 10 + (14 Bits Netzwerkadresse) + (16 Bit Hostadresse)
Class C Adressen: 110 + (21 Bits Netzwerkadresse) + (8 Bit Hostadresse)
Der Netzwerkteil der Adressen wird in Deutschland durch das DE-NIC
in Karlsruhe vergeben, der Hostteil wird vom lokalen Administrator für
Einzelgeräte vergeben.
Exponentielles Wachstum führt derzeit zur Adressverknappung
(speziell bei Class-B-Netzen)
Prof. W. Burkard Rechnernetze 245
Notizen
Class
ca. 16 mio. Rechner
A 0 ... 7 Bits
0 - 127
10 ... 6 Bits .... 14 Bits .... ca. 16000 Rechner
B 128 - 191
110 ... 5 Bits .... 8 Bit ...... .... 8 Bit ..... ca. 256 Rechner
C 192 - 231
Dualzahlen in Zahlen:
0000 0000 = 0
1000 0000 = 128
1100 0000 = 192
1110 0000 = 224
1111 0000 = 240
1111 1000 = 248
1111 1100 = 252
1111 1110 = 254
245
1111 1111 = 255
26. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
Klasseneinteilung der IP-Adressen
Prof. W. Burkard Rechnernetze 246
Notizen
246
27. Subnetzbildung in IP-Netzen
Ein Netz der Klasse A bis D kann in Subnetze untergliedert werden:
klassische, d.h. nach aussen sichtbare IP-Adresse
Netz-Nr Host-Nr
Interne Netzstruktur der IP-Adresse bei Subnetting
Netz-Nr Subnetz-Nr Host-Nr
Subnetz wird festgelegt durch die Subnetz-Maske:
Alle zum Netz und zum Subnetz gehörenden Bitstellen sind 1, alle Bits der Host-Nr sind 0:
Beispiel: IP-Adresse: 193.44.130.130 mit Subnetmask 255.255.255.192 bedeutet: Dies ist Host
2 im Subnetz 2 (von 4 möglichen)
Merke: Subnetz Nr. 0 und 2n-1 (bei n Bits für das Subnetz) dürfen NICHT verwendet werden!
Gleiches gilt für die Host-ID!
Prof. W. Burkard Rechnernetze 247
Notizen
247
28. Subnetzbildung (Beispiele)
Demonstration des Zusammenspiels zwischen IP-Adresse, Subnetzmaske, Subnetz-ID und Host-ID
Beispiel IP-Adresse Subnetzmaske Host-ID Netz/Subnetz-ID Klasse
1 132.174.26.178 255.255.255.0 178 132.174.26.0
2 193.174.24.180 255.255.255.240 4 193.174.24.176
3 193.174.24.155 255.255.255.252 3 193.174.24.152
4 123.174.132.5 255.255.240.0 4.5 123.174.128.0
Unzulässig!!!
Prof. W. Burkard Rechnernetze 248
Notizen
248
29. Strukturierung durch Subnetze
Aufteilung eines Klasse C Netzes in zwei Subnetze 193.174.24.176 und 193.174.24.152
Prof. W. Burkard Rechnernetze 249
Notizen
249
30. Spezielle IP-Adressen
Ein x steht für „beliebige Belegung“
Prof. W. Burkard Rechnernetze 250
Notizen
250
31. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
PING: die Anwendung des ICMP
ICMP = Internet Control Message Protocol, dient zum Testen und zur Meldung
von Fehlern und Statusmitteilungen der IP- , TCP-, und UDP-Protokolle
5 ping ist eine IP-Anwendung wie telnet, ftp oder www
mit ping kann man “Verbindungen” testen
ping loopback: verifiziert das Funktionieren der IP-Software
1
ping <eigene IP-Adresse>: zeigt das Funktionieren der eigenen
2
Netzwerkadresse
ping <anderes IP-System>: zeigt das Funktionieren des Netzwerkes
3
ping <Name eines Systems>: zeigt, ob die Namensauflösung tut.
4
ICMP-Pakete werden auch dann erzeugt, wenn im Netz Fehler auftreten.
Beispiel: Router eliminiert IP-Paket mit verfallenem TTL und sendet ICMP-Info an
Sender.
Prof. W. Burkard Rechnernetze 251
Notizen
251
32. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
Struktur des ICMP-Paketes
ICMP - Paket ist simple Erweiterung des IP-Paketes (grauer Teil)
Typ Code Prüfsumme
weitere Control-Informationen
Prof. W. Burkard Rechnernetze 252
Notizen
1 für ICMP
6 für TCP
252
33. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
ICMP-Paket-Typen und Codes
Prof. W. Burkard Rechnernetze 253
Notizen
253
34. IP und Ethernet
Ethernet-Frame:
64 Bits 48 48 16 (variabel) 32
Präambel Ziel Quelle Typ Daten CRC
512 (0200) XEROX PUP
Problem:
2048 (0800) DOD IP
Wie erfolgt die
Zuordnung von IP-Adressen zu 2054 (0806) ARP
Ethernet-Adressen ? 32821 (8035) reverse ARP
24579 (6003)DECnet Ph.4
Lösung: ARP und RARP
Prof. W. Burkard Rechnernetze 254
Notizen
254
35. Adressauflösung: IP --> Ethernet
Das Address-Resolution-Protocol (ARP)
aus gegebener IP-Adresse wird die Ethernet-Adresse ermittelt
Ein Broadcast an alle:
B
B
A
A Mir, und hier ist
Wem gehört diese
meine Eth.-Adresse
IP-Adresse ?
C
C D
D
Nur D antwortet !
Reply
Request
Prof. W. Burkard Rechnernetze 255
Notizen
255
36. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
Aufbau des Paketes für
ARP Request und ARP-Reply
Kopf der physikalischen Schicht (z.B. Ethernet-Header) (variable Bitzahl)
Typ des Hardware-Interfaces (16 Bit) (z.B. 1 bei Std.-Ethernet) (16 Bits)
benutztes Hardware-Protokoll des Senders (Ethertype 0806h= ARP) (16 Bits)
Dieses Feld
bleibt beim
Hardware-Adresslänge in Bits, sei n Protokoll-Adresslänge in Bits, sei m
ARP-Request
frei (bei Ethernet: 48) (8 Bit) (bei IP 32) (8 Bit)
Operations Code ( bei ARP-Request =1, bei ARP-Reply = 2)) (16 Bits)
MAC Adresse des Senders
Hardware-Adresse des Senders, also n Bit lang WIRD GESUCHT
IP Adresse des Senders
Protokoll-Adresse des Senders, also m Bit lang
IST BEKANNT
Hardware-Adresse des gesuchten Zielsystems, also n Bit lang
Protokoll-Adresse des gesuchten Zielsystems, also m Bit lang
Prof. W. Burkard Rechnernetze 256
Notizen
256
37. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
Adressauflösung: Ethernet <-> IP
Das Reverse Address-Resolution-Protocol (RARP)
Nur der RARP-Server B antwortet !
B
Ein Broadcast an alle:
B
B
A
A ... und hier ist Deine
Hier ist meine
IP - Adresse
Ethernet-Adresse !?
C
C D
D
Reply
Request
Prof. W. Burkard Rechnernetze 257
Notizen
257
38. Kopplung mit Routern
Router sind nicht protokolltransparent wie Brücken/Switche d.h. sie gehören
• entweder einer Protokollfamilie an (OSI,SNA,IPX/SPX, DECnet, TCP/IP ...)
• oder sind sogenannte Multiprotokollrouter, verarbeiten also mehrere Prot.-Familien
Router tauschen durch spezielle Routingprotokolle Routeninformationen untereinander aus
Router machen Netze zuverlässiger, durch Adaptive Routing-Verfahren
Filter, die den Verkehr regeln/überwachen
Sicherheitsfunktionen im ULP
Prof. W. Burkard Rechnernetze 258
Notizen
258
39. Edited by Foxit Reader
Copyright(C) by Foxit Software Company,2005-2007
For Evaluation Only.
IP-Routing
direkte und indirekte Zielrechner
Netzwerk 1 Netzwerk 2
Router R
B2
B1 (Gateway)
A2
A1
A1
C2
C1 D2
D1
Systeme B1, C1 und D1 sind direkt erreichbar von A1
Systeme A2 - D2 sind nur indirekt, via Router R, erreichbar.
Prof. W. Burkard Rechnernetze 259
Notizen
259
40. IP-Routing-Algorithmus
Zieladresse prüfen
Ziel direkt Nein
Ja
Paket direkt an Ziel senden erreichbar ?
Ziel in der
Paket senden an den Ja Nein
Routing
angegebenen Router
Tabelle
?
Gibt es
Paket senden an den eine
Ja Nein
Default-Router Default-
Route ?
Routingfehler
Prof. W. Burkard Rechnernetze 260
Notizen
260
41. Minimale Routing-Funktion eines PC
Prüfung, ob die IP-Empfängeradresse (Zielsystem) lokal erreichbar ist
• wenn ja: direkte Zustellung durch Verwendung der zugehörigen
Hardware-Adresse (in LANs heute meistens Ethernet)
• wenn nein: Zustellung an den Default-Router, gemäß Routing-
Tabelle, unter Verwendung der Hardware-Adresse des Routers
Merke:
Die Routing-Tabelle einer Station kann neben der Default-Route
weitere Eintragungen beinhalten, die zu einem anderen Router und
damit Netzwerk führen.
Frage: Wie erfolgt die obige Prüfung ? ->Subnetzmaske
Prof. W. Burkard Rechnernetze 261
Notizen
261
42. Aufbau der Routing-Tabelle
Destination = IP-Adresse des Ziels,
0.0.0.0 = default route
ifindex = interface index, Nr. des
physikalischen Ports zum Ziel
metric1-5 = bis zu 5 Metriken zur Kosten-
berechnung der Route. Einfache
Metrik: Anzahl Hops bis zum Ziel
Next Hop = IP-Adresse des nächsten
Routers dieser Route
Route Type =
1=unbekannt 2=ungültige Route 3=direkt verbundenes Netz 4=indirekt erreichbares Ziel
Routing Protokol = wie wurde diese Route ermittelt
Route Age = Zeit in Sek. seit dem letzten Update/Confirm der Route
Routing Mask = Netzmaske des Ziels, wird mit Adresse des IP-Paketes UND-verknüpft
vor dem Check der Destination
Route Information = optionaler Zeiger auf eine Routing MIB, die zu einem bestimmten
Routing-Protokoll gehören könnte.
Prof. W. Burkard Rechnernetze 262
Notizen
262
43. Ein Beispiel zum IP-Routing
Prof. W. Burkard Rechnernetze 263
Notizen
263
44. Source Routing
= ULP legt fest, über welche Zwischenstationen ein IP-Paket zum Ziel gelangen soll.
Loose source routing = weitere Zwischenhops erlaubt // strict source routing = nicht erlaubt
Ablauf: Router nutzt den Pointer P zur Erkennung des nächsten Routers/Zielsystems
Ist die Liste abgearbeitet, wird an
das Zielsystem ausgeliefert
Ist die Liste noch nicht zu Ende,
wird die durch P gekennzeichnete
Adresse genommen
Vor dem Weiterleiten wird eigene
Adresse an der durch P definierten
Stelle eingesetzt
==> Folge: realer Routenverlauf
wird protokolliert
Zuletzt wird auch noch P erhöht
und zeigt so auf den nächsten Hop
Prof. W. Burkard Rechnernetze 264
Notizen
264
45. Routing-Protokolle
... Oder: Wie kommt eine Route in einen Router ?
Statisches Routing: Routen werden von einem Netzadministrator von Hand eingetragen
Dynamisches Routing: Router tauschen untereinander Routing-Daten aus und manipulieren
so ständig ihre Tabellen
Routing-Algorithmus Distanz-Vektor: Routenberechnung anhand der Distanzen (Hop-Counts)
Beispiel RIP (Routing Information Protokoll)
Funktionsweise: Periodisches Senden der eigenen Routing-Tabelle zu den DIREKTEN
Nachbarn. Diese Updates sind Tupel (Z,D) Z=Zielnetz, D=Distanz in Hops
Empfangende Router überprüfen ankommende Updates,
• ob es zu einem Ziel eventuell einen kürzeren Weg gibt
• und korrigieren in diesem Fall ihre eigene Routing-Tabelle.
Nachteil: nach einer Topologieänderung dauert es relativ lange, bis Netz wieder OK!
Optimierungen:
Split Horizon = sende deinem Nachbarn nicht seine eigenen Wege zurück. => kleinere
Tabellen werden verschickt => sinkendes Kommunikationsvolumen
Triggered Updates = Sende sofort, wenn Topologieänderung erkannt wurde
Prof. W. Burkard Rechnernetze 265
Notizen
265
46. Link State Routing
... die Alternative zu Distanz-Vektor:
Beispiel OSPF (Open Shortest Path First)
Funktionsweise:
jeder Router kennt alle anderen Router und daran angeschlossene Netze
ein Router schickt Testpakete an direkte Nachbarn und erkennt an den Antworten:
Link zum Nachbar ist OK bzw. nicht OK
Router schickt periodisch Broadcasts mit Link-Status-Informationen, die im Netz alle Router
erreichen. Merke: Diese Nachrichten sind sehr kurz (ganz im Gegenteil zum Distanz-Vektor)
Erhält ein Router solche Link-Status-Informationen, berechnet er die kürzeste Distanz zu
allen Zielen.
Vorteile / Nachteile:
+ keine großen Routingtabellen im Netz unterwegs => schnelle Konvergenz, geringe Netzlast
+ gute Skalierbarkeit, auch bei großer Routeranzahl geeignet
- hohe Anforderungen an CPU-Leistung und Hauptspeicherplatz der Router, da der Routen-
berechnungs-Algorithmus (stammt von Dijkstra) komplexer ist.
Prof. W. Burkard Rechnernetze 266
Notizen
266
47. Autonome Systeme
Problem: Bei wachsendem Netz werden die Routingtabellen immer länger!
Lösung: Abgrenzung des Gesamtnetzes in autonome Subsysteme ...
... UND: Definition von exterior gateway protocols und internal gateway protocols
Prof. W. Burkard Rechnernetze 267
Notizen
267
48. Fragmentierung von IP-Paketen
Kann das physikalische Netz ein IP-Datagramm nicht vollständig transportieren, muß es
zerlegt und am Ziel wieder zusammengebaut werden:
Beispiel: Wie groß werden IP-Pakete, wie groß werden Ethernet-Frames ?
• Jedes IP-Paket hat ein Feld Identifikator, das ständig inkrementiert wird
• über das F-Flag wird Fragmentierung erlaubt/verboten
• Mit dem M-Bit wird festgehalten: letztes Fragment bzw. da kommen noch mehr...
Bei Bedarf fragmentiert ein Router zu lange Datagramme:
Beim Zerteilen der Pakete werden immer Vielfache von 8 Bytes gebildet und damit die
Offsets berechnet.
Warum ? => nur 13 Bit für Fragment-Offset, da 3 Bit für Flags im IP-Header
Fragmente werden wie IP-Pakete individuell durch das Netz transportiert und
können weiter fragmentiert werden. Offset und M-Flag zeigen stets den richtigen
Wert relativ zum ursprünglichen Paket.
Prof. W. Burkard Rechnernetze 268
Notizen
268
49. Beispiel zur Fragmentierung von IP-Paketen
LAN mit MTU=256
LAN mit MTU=512
LAN mit MTU=1500
Prof. W. Burkard Rechnernetze 269
Notizen
269
50. Zusammenbau fragmentierter IP-Pakete
... erfolgt immer erst in der
Zielmaschine, die am M-Flag und
Offsetwert Fragmente
erkennen kann und sofort
Pufferspeicher für den
Zusammenbau reserviert.
Erst das vollständig gebaute IP-Paket
wird an das ULP weitergeleitet.
=> ULP „weiß“ nichts von
Fragmentation & Reassembly.
Beispiel rechts:
Reihenfolge, in der der Puffer gefüllt wird : 1, 2, 3, 4, 5, 6
Dabei nehmen wir an, die Fragmente haben unterschiedliche Routen
genommen und kommen nun von zwei Routern Z und Y an den
Ziel-Host
Prof. W. Burkard Rechnernetze 270
Notizen
270
51. NAT: Network Address translation
= Umsetzung von IP-Adressen in einem Router gemäß RFC 2663, weil:
• die firmeninternen Adressen nicht öffentlich bekannt werden sollen
• die internen Adressen mit global gültigen Adressen kollidieren
NAT erlaubt die transparente Kommunikation von „drinnen nach draußen und
(teilweise) umgekehrt“
NAT bedeutet ...
... einen Umbau jedes IP-Headers (Quelle bei ausgehendem Paket, Ziel
bei eingehendem Paket
... Listenüberarbeitung bei Source-Routing
... komplette Paketüberarbeitung bei ICMP
... komplette Überarbeitung bei Routing-Paketen (z.B. RIP oder OSPF)
unterschiedliche DNS-Adreßauflösung ergibt verschiedene NAT-Varianten:
Traditional-NAT = Nur Verbindungen aus dem lokalen Netz heraus machbar
Bi-Directional NAT = Verbindungsaufbau auch von außen möglich
Twice-NAT = gleichzeitige Modifikation von Quell- und Zieladresse eines IP-Paketes,
erforderlich bei Adreßkollisionen der inneren und äußeren Adreßbereiche.
Merke: NAT ist kritisch, möglichst vermeiden !!! Probleme z.B. beim Routing
Prof. W. Burkard Rechnernetze 271
Notizen
271
52. IP - Multicast
Problem: wenn dieselben Daten an mehrere Empfänger zu senden sind, so
vervielfacht sich das transportierte Datenvolumen !
Beispiele:
• Web-Abfrage stets gleicher Seiten
(Wetter, Radiokanäle, Verkehr,...)
• Videoübertragung an eine
Teilnehmergruppe
• identische Updates mehrerer Rechner
Lösung:
Definition einer Gruppenadresse
für alle Empfänger und einmaliges
Versenden des IP-Datagrammes
an diese Adresse
Prof. W. Burkard Rechnernetze 272
Notizen
272
53. IGMP: die Basis des IP - Multicast
IGMP =
Internet Group Management Protocol
• dient zum „Rundsenden“ von Nachrichten
• muß nicht zwingend im IP-Stack
implementiert sein
Unterstützung wird getrennt in:
Level 1 =
unterstützt Senden, aber nicht Empfangen
von Multicast Paketen.
(dient z.B. zum Abfragen von Netzressourcen
ohne selbst IGMP zu implementieren)
Level 2 =
volle Unterstützung des Multicast, erfordert
Implementierung von IGMP
Prof. W. Burkard Rechnernetze 273
Notizen
273
54. Aufbau der IGMP -PDU
Version: derzeit auf 1,2, oder 3 gesetzt Prüfsumme: umfaßt nur den IGMP-Header
Typ: 1 bedeutet Anfrage eines Routers, 2 bedeutet Antwort von einem Host
Gruppe von Prozessen in einem Host wird durch Gruppenadresse der Klasse D + Interface definiert.
Eine Prozeßgruppe kann auf mehrere Hosts verteilt sein. Ein Host kann mehrere Gruppen haben,
d.h. mehrere Interfaces bereitstellen.
Es gibt vordefinierte Gruppen (z.B. 224.0.0.1 = Multicast an alle Hosts und Router)
Prof. W. Burkard Rechnernetze 274
Notizen
274
55. Arbeitsweise von IGMP (I)
Schritt 1: Initialisieren des Host für IGMP-Interaktion:
1. Multicast-Datagramme werden „nach oben“ wie Unicast-Datagramme zugestellt.
Vorher muß die IP-Schicht durch das ULP informiert werden,
welche Multicast-Gruppe an welchen Port (hier Interface genannt) geliefert werden soll:
Dafür gibt’s zwei simple Funktionen:
JoinHostGroup (group_address, interface)
LeaveHostGroup (group_address, interface)
2. Nun muß die IP-Schicht dem LAN-Adapter (also der Sicherungsschicht, z.B. Ethernet)
mitteilen, welche Multicast-Datagramme zu empfangen und an IP zu leiten sind:
Auch dafür gibt’s zwei simple Protokoll-Primitive:
JoinLocalGroup (group_address)
LeaveLocalGroup (group_address)
Prof. W. Burkard Rechnernetze 275
Notizen
275
56. Arbeitsweise von IGMP (II)
Schritt 2: Registrieren der Multicast-Gruppen über IGMP-Nachrichten:
Multicast-Gruppen in einem LAN werden von einem lokalen multicastfähigen Router durch
zwei Prozeduren verwaltet:
A) Erstanmeldung:
Senden einer IGMP-Antwort zum Router durch einen Host,
wenn ein Prozeß den Host erstmalig in eine Multicast-Gruppe bringt.
(Weitere Prozesse auf diesem Host, die in dieselbe Gruppe einsteigen,
verursachen keine IGMP-Antwort-Pakete)
B) Abfragen:
1. Multicast-Router sendet periodisch IGMP-Anfragen ins LAN an jede Gruppenadresse
d.h. Überprüfung, ob es immernoch Hosts gibt, die über Gruppenmitglieder für das
Interface verfügen.
2. Jeder Host mit Multicast-Mitgliedern sendet je Interface (Port) eine IGMP-Antwort.
3. Router aktualisiert seine Multicast-Tabellen und eliminiert nicht mehr benötigte
Gruppen (für die es im Netz also keinen Prozeß mehr gibt, der Mitglied ist)
Prof. W. Burkard Rechnernetze 276
Notizen
276
57. Arbeitsweise von IGMP (III)
Schritt 3: Zustellen von Multicast-Paketen:
Router empfängt ein Multicast-Paket und entscheidet, ob es ins LAN muß
anhand seiner Multicast-Tabelle:
es muß einen Eintrag für diese Gruppe geben.
Wenn nein: Paket verwerfen
Wenn ja:
Paket wird über Multicast-/Broadcast-Funktionen der Sicherungsschicht in das
LAN geleitet => alle Stationen im LAN erhalten das IP-Paket.
Nur Stationen mit beteiligten Prozessen (Gruppenmitgliedern) erhalten von IP das
Datagramm geliefert.
TTL-Feld eines Multicast ist im LAN immer 1 => Pakete können nicht über Routergrenzen hinweg!
ICMP-Fehlermeldungen (Typ 11) werden hierbei NICHT erzeugt!
Multicast-Adressen 224.0.0.0 bis 224.0.0.255 werden immer so behandelt, als ob TTL=1 ist
=> Damit kann ein Router also stets nur lokale Hosts erreichen.
Optimierung für geswitchte Netze: IGMP Snooping: intelligente Switche erkennen anhand IGMP-
Antwortpaketen, wo (k)ein Teilnehmer sitzt und blockieren unbeteiligte Ports.
Prof. W. Burkard Rechnernetze 277
Notizen
277
58. Ein Beispiel zu IP-Multicast
Prof. W. Burkard Rechnernetze 278
Notizen
278
59. Kopplung mit Routern
Router sind nicht protokolltransparent wie Brücken/Switche d.h. sie gehören
• entweder einer Protokollfamilie an (OSI,SNA,IPX/SPX, DECnet, TCP/IP ...)
• oder sind sogenannte Multiprotokollrouter, verarbeiten also mehrere Prot.-Familien
Router tauschen durch spezielle Routingprotokolle Routeninformationen untereinander aus
Router machen Netze zuverlässiger, durch Adaptive Routing-Verfahren
Filter, die den Verkehr regeln/überwachen
Sicherheitsfunktionen im ULP
Prof. W. Burkard Rechnernetze 258
Notizen
258
60. IP-Routing
direkte und indirekte Zielrechner
Netzwerk 1 Netzwerk 2
Router R
B2
B1 (Gateway)
A2
A1
A1
C2
C1 D2
D1
Systeme B1, C1 und D1 sind direkt erreichbar von A1
Systeme A2 - D2 sind nur indirekt, via Router R, erreichbar.
Prof. W. Burkard Rechnernetze 259
Notizen
259
61. IP-Routing-Algorithmus
Zieladresse prüfen
Ziel direkt Nein
Ja
Paket direkt an Ziel senden erreichbar ?
Ziel in der
Paket senden an den Ja Nein
Routing
angegebenen Router
Tabelle
?
Gibt es
Paket senden an den eine
Ja Nein
Default-Router Default-
Route ?
Routingfehler
Prof. W. Burkard Rechnernetze 260
Notizen
260
62. Minimale Routing-Funktion eines PC
Prüfung, ob die IP-Empfängeradresse (Zielsystem) lokal erreichbar ist
• wenn ja: direkte Zustellung durch Verwendung der zugehörigen
Hardware-Adresse (in LANs heute meistens Ethernet)
• wenn nein: Zustellung an den Default-Router, gemäß Routing-
Tabelle, unter Verwendung der Hardware-Adresse des Routers
Merke:
Die Routing-Tabelle einer Station kann neben der Default-Route
weitere Eintragungen beinhalten, die zu einem anderen Router und
damit Netzwerk führen.
Frage: Wie erfolgt die obige Prüfung ? ->Subnetzmaske
Prof. W. Burkard Rechnernetze 261
Notizen
261
63. Aufbau der Routing-Tabelle
Destination = IP-Adresse des Ziels,
0.0.0.0 = default route
ifindex = interface index, Nr. des
physikalischen Ports zum Ziel
metric1-5 = bis zu 5 Metriken zur Kosten-
berechnung der Route. Einfache
Metrik: Anzahl Hops bis zum Ziel
Next Hop = IP-Adresse des nächsten
Routers dieser Route
Route Type =
1=unbekannt 2=ungültige Route 3=direkt verbundenes Netz 4=indirekt erreichbares Ziel
Routing Protokol = wie wurde diese Route ermittelt
Route Age = Zeit in Sek. seit dem letzten Update/Confirm der Route
Routing Mask = Netzmaske des Ziels, wird mit Adresse des IP-Paketes UND-verknüpft
vor dem Check der Destination
Route Information = optionaler Zeiger auf eine Routing MIB, die zu einem bestimmten
Routing-Protokoll gehören könnte.
Prof. W. Burkard Rechnernetze 262
Notizen
262
64. Ein Beispiel zum IP-Routing
Prof. W. Burkard Rechnernetze 263
Notizen
263
65. Source Routing
= ULP legt fest, über welche Zwischenstationen ein IP-Paket zum Ziel gelangen soll.
Loose source routing = weitere Zwischenhops erlaubt // strict source routing = nicht erlaubt
Ablauf: Router nutzt den Pointer P zur Erkennung des nächsten Routers/Zielsystems
Ist die Liste abgearbeitet, wird an
das Zielsystem ausgeliefert
Ist die Liste noch nicht zu Ende,
wird die durch P gekennzeichnete
Adresse genommen
Vor dem Weiterleiten wird eigene
Adresse an der durch P definierten
Stelle eingesetzt
==> Folge: realer Routenverlauf
wird protokolliert
Zuletzt wird auch noch P erhöht
und zeigt so auf den nächsten Hop
Prof. W. Burkard Rechnernetze 264
Notizen
264
66. Routing-Protokolle
... Oder: Wie kommt eine Route in einen Router ?
Statisches Routing: Routen werden von einem Netzadministrator von Hand eingetragen
Dynamisches Routing: Router tauschen untereinander Routing-Daten aus und manipulieren
so ständig ihre Tabellen
Routing-Algorithmus Distanz-Vektor: Routenberechnung anhand der Distanzen (Hop-Counts)
Beispiel RIP (Routing Information Protokoll)
Funktionsweise: Periodisches Senden der eigenen Routing-Tabelle zu den DIREKTEN
Nachbarn. Diese Updates sind Tupel (Z,D) Z=Zielnetz, D=Distanz in Hops
Empfangende Router überprüfen ankommende Updates,
• ob es zu einem Ziel eventuell einen kürzeren Weg gibt
• und korrigieren in diesem Fall ihre eigene Routing-Tabelle.
Nachteil: nach einer Topologieänderung dauert es relativ lange, bis Netz wieder OK!
Optimierungen:
Split Horizon = sende deinem Nachbarn nicht seine eigenen Wege zurück. => kleinere
Tabellen werden verschickt => sinkendes Kommunikationsvolumen
Triggered Updates = Sende sofort, wenn Topologieänderung erkannt wurde
Prof. W. Burkard Rechnernetze 265
Notizen
265
67. Link State Routing
... die Alternative zu Distanz-Vektor:
Beispiel OSPF (Open Shortest Path First)
Funktionsweise:
jeder Router kennt alle anderen Router und daran angeschlossene Netze
ein Router schickt Testpakete an direkte Nachbarn und erkennt an den Antworten:
Link zum Nachbar ist OK bzw. nicht OK
Router schickt periodisch Broadcasts mit Link-Status-Informationen, die im Netz alle Router
erreichen. Merke: Diese Nachrichten sind sehr kurz (ganz im Gegenteil zum Distanz-Vektor)
Erhält ein Router solche Link-Status-Informationen, berechnet er die kürzeste Distanz zu
allen Zielen.
Vorteile / Nachteile:
+ keine großen Routingtabellen im Netz unterwegs => schnelle Konvergenz, geringe Netzlast
+ gute Skalierbarkeit, auch bei großer Routeranzahl geeignet
- hohe Anforderungen an CPU-Leistung und Hauptspeicherplatz der Router, da der Routen-
berechnungs-Algorithmus (stammt von Dijkstra) komplexer ist.
Prof. W. Burkard Rechnernetze 266
Notizen
266
68. Autonome Systeme
Problem: Bei wachsendem Netz werden die Routingtabellen immer länger!
Lösung: Abgrenzung des Gesamtnetzes in autonome Subsysteme ...
... UND: Definition von exterior gateway protocols und internal gateway protocols
Prof. W. Burkard Rechnernetze 267
Notizen
267
69. Fragmentierung von IP-Paketen
Kann das physikalische Netz ein IP-Datagramm nicht vollständig transportieren, muß es
zerlegt und am Ziel wieder zusammengebaut werden:
Beispiel: Wie groß werden IP-Pakete, wie groß werden Ethernet-Frames ?
• Jedes IP-Paket hat ein Feld Identifikator, das ständig inkrementiert wird
• über das F-Flag wird Fragmentierung erlaubt/verboten
• Mit dem M-Bit wird festgehalten: letztes Fragment bzw. da kommen noch mehr...
Bei Bedarf fragmentiert ein Router zu lange Datagramme:
Beim Zerteilen der Pakete werden immer Vielfache von 8 Bytes gebildet und damit die
Offsets berechnet.
Warum ? => nur 13 Bit für Fragment-Offset, da 3 Bit für Flags im IP-Header
Fragmente werden wie IP-Pakete individuell durch das Netz transportiert und
können weiter fragmentiert werden. Offset und M-Flag zeigen stets den richtigen
Wert relativ zum ursprünglichen Paket.
Prof. W. Burkard Rechnernetze 268
Notizen
268
70. Beispiel zur Fragmentierung von IP-Paketen
LAN mit MTU=256
LAN mit MTU=512
LAN mit MTU=1500
Prof. W. Burkard Rechnernetze 269
Notizen
269
71. Zusammenbau fragmentierter IP-Pakete
... erfolgt immer erst in der
Zielmaschine, die am M-Flag und
Offsetwert Fragmente
erkennen kann und sofort
Pufferspeicher für den
Zusammenbau reserviert.
Erst das vollständig gebaute IP-Paket
wird an das ULP weitergeleitet.
=> ULP „weiß“ nichts von
Fragmentation & Reassembly.
Beispiel rechts:
Reihenfolge, in der der Puffer gefüllt wird : 1, 2, 3, 4, 5, 6
Dabei nehmen wir an, die Fragmente haben unterschiedliche Routen
genommen und kommen nun von zwei Routern Z und Y an den
Ziel-Host
Prof. W. Burkard Rechnernetze 270
Notizen
270
72. NAT: Network Address translation
= Umsetzung von IP-Adressen in einem Router gemäß RFC 2663, weil:
• die firmeninternen Adressen nicht öffentlich bekannt werden sollen
• die internen Adressen mit global gültigen Adressen kollidieren
NAT erlaubt die transparente Kommunikation von „drinnen nach draußen und
(teilweise) umgekehrt“
NAT bedeutet ...
... einen Umbau jedes IP-Headers (Quelle bei ausgehendem Paket, Ziel
bei eingehendem Paket
... Listenüberarbeitung bei Source-Routing
... komplette Paketüberarbeitung bei ICMP
... komplette Überarbeitung bei Routing-Paketen (z.B. RIP oder OSPF)
unterschiedliche DNS-Adreßauflösung ergibt verschiedene NAT-Varianten:
Traditional-NAT = Nur Verbindungen aus dem lokalen Netz heraus machbar
Bi-Directional NAT = Verbindungsaufbau auch von außen möglich
Twice-NAT = gleichzeitige Modifikation von Quell- und Zieladresse eines IP-Paketes,
erforderlich bei Adreßkollisionen der inneren und äußeren Adreßbereiche.
Merke: NAT ist kritisch, möglichst vermeiden !!! Probleme z.B. beim Routing
Prof. W. Burkard Rechnernetze 271
Notizen
271
73. IP - Multicast
Problem: wenn dieselben Daten an mehrere Empfänger zu senden sind, so
vervielfacht sich das transportierte Datenvolumen !
Beispiele:
• Web-Abfrage stets gleicher Seiten
(Wetter, Radiokanäle, Verkehr,...)
• Videoübertragung an eine
Teilnehmergruppe
• identische Updates mehrerer Rechner
Lösung:
Definition einer Gruppenadresse
für alle Empfänger und einmaliges
Versenden des IP-Datagrammes
an diese Adresse
Prof. W. Burkard Rechnernetze 272
Notizen
272
74. IGMP: die Basis des IP - Multicast
IGMP =
Internet Group Management Protocol
• dient zum „Rundsenden“ von Nachrichten
• muß nicht zwingend im IP-Stack
implementiert sein
Unterstützung wird getrennt in:
Level 1 =
unterstützt Senden, aber nicht Empfangen
von Multicast Paketen.
(dient z.B. zum Abfragen von Netzressourcen
ohne selbst IGMP zu implementieren)
Level 2 =
volle Unterstützung des Multicast, erfordert
Implementierung von IGMP
Prof. W. Burkard Rechnernetze 273
Notizen
273
75. Aufbau der IGMP -PDU
Version: derzeit auf 1,2, oder 3 gesetzt Prüfsumme: umfaßt nur den IGMP-Header
Typ: 1 bedeutet Anfrage eines Routers, 2 bedeutet Antwort von einem Host
Gruppe von Prozessen in einem Host wird durch Gruppenadresse der Klasse D + Interface definiert.
Eine Prozeßgruppe kann auf mehrere Hosts verteilt sein. Ein Host kann mehrere Gruppen haben,
d.h. mehrere Interfaces bereitstellen.
Es gibt vordefinierte Gruppen (z.B. 224.0.0.1 = Multicast an alle Hosts und Router)
Prof. W. Burkard Rechnernetze 274
Notizen
274
76. Arbeitsweise von IGMP (I)
Schritt 1: Initialisieren des Host für IGMP-Interaktion:
1. Multicast-Datagramme werden „nach oben“ wie Unicast-Datagramme zugestellt.
Vorher muß die IP-Schicht durch das ULP informiert werden,
welche Multicast-Gruppe an welchen Port (hier Interface genannt) geliefert werden soll:
Dafür gibt’s zwei simple Funktionen:
JoinHostGroup (group_address, interface)
LeaveHostGroup (group_address, interface)
2. Nun muß die IP-Schicht dem LAN-Adapter (also der Sicherungsschicht, z.B. Ethernet)
mitteilen, welche Multicast-Datagramme zu empfangen und an IP zu leiten sind:
Auch dafür gibt’s zwei simple Protokoll-Primitive:
JoinLocalGroup (group_address)
LeaveLocalGroup (group_address)
Prof. W. Burkard Rechnernetze 275
Notizen
275
77. Arbeitsweise von IGMP (II)
Schritt 2: Registrieren der Multicast-Gruppen über IGMP-Nachrichten:
Multicast-Gruppen in einem LAN werden von einem lokalen multicastfähigen Router durch
zwei Prozeduren verwaltet:
A) Erstanmeldung:
Senden einer IGMP-Antwort zum Router durch einen Host,
wenn ein Prozeß den Host erstmalig in eine Multicast-Gruppe bringt.
(Weitere Prozesse auf diesem Host, die in dieselbe Gruppe einsteigen,
verursachen keine IGMP-Antwort-Pakete)
B) Abfragen:
1. Multicast-Router sendet periodisch IGMP-Anfragen ins LAN an jede Gruppenadresse
d.h. Überprüfung, ob es immernoch Hosts gibt, die über Gruppenmitglieder für das
Interface verfügen.
2. Jeder Host mit Multicast-Mitgliedern sendet je Interface (Port) eine IGMP-Antwort.
3. Router aktualisiert seine Multicast-Tabellen und eliminiert nicht mehr benötigte
Gruppen (für die es im Netz also keinen Prozeß mehr gibt, der Mitglied ist)
Prof. W. Burkard Rechnernetze 276
Notizen
276
78. Arbeitsweise von IGMP (III)
Schritt 3: Zustellen von Multicast-Paketen:
Router empfängt ein Multicast-Paket und entscheidet, ob es ins LAN muß
anhand seiner Multicast-Tabelle:
es muß einen Eintrag für diese Gruppe geben.
Wenn nein: Paket verwerfen
Wenn ja:
Paket wird über Multicast-/Broadcast-Funktionen der Sicherungsschicht in das
LAN geleitet => alle Stationen im LAN erhalten das IP-Paket.
Nur Stationen mit beteiligten Prozessen (Gruppenmitgliedern) erhalten von IP das
Datagramm geliefert.
TTL-Feld eines Multicast ist im LAN immer 1 => Pakete können nicht über Routergrenzen hinweg!
ICMP-Fehlermeldungen (Typ 11) werden hierbei NICHT erzeugt!
Multicast-Adressen 224.0.0.0 bis 224.0.0.255 werden immer so behandelt, als ob TTL=1 ist
=> Damit kann ein Router also stets nur lokale Hosts erreichen.
Optimierung für geswitchte Netze: IGMP Snooping: intelligente Switche erkennen anhand IGMP-
Antwortpaketen, wo (k)ein Teilnehmer sitzt und blockieren unbeteiligte Ports.
Prof. W. Burkard Rechnernetze 277
Notizen
277
79. Ein Beispiel zu IP-Multicast
Prof. W. Burkard Rechnernetze 278
Notizen
278
80. Ein innovativer Ansatz: IP-Switching
Untersuche nur das ERSTE Paket eines IP-Flows auf OSI-Ebene 3 für die Zielbestimmung
und switche nachfolgende Pakete auf OSI-Ebene 2:
IP Controller
Quell-Station Ziel-Station
Switching
Fabric
Prof. W. Burkard Rechnernetze 279
Notizen
279
81. LAN-Switching contra Routing
IP-Switching vereint Vorteile und eliminiert Nachteile von LAN-Switching und Routing
Vorteile Nachteile
LAN-Switching - hohe Segmentierung - keine Broadcast-Kontrolle
- hohe Performance - wenig Sicherheit
- geringe Kosten - flaches Netzwerk
konventionelles - Broadcast-Isolierung - geringe Port-Dichte
Routing - hohe Sicherheit - geringe Leistung
- hierarchische - hohe Kosten
Netzarchitektur
Prof. W. Burkard Rechnernetze 280
Notizen
280
82. IP-Switching: Konzepte
Hardware- (ASIC-) basierte Router
= direkter Ersatz für konventionell Software-basierte Router
Server-basiertes Routing
= Netzaufteilung in: Route-Server + Switche im Netz + intelligente Layer-3-
Forwarding-Komponente am Netzrand
ICMP-Redirect
= IP-Flow- Umlenkung auf virtuelle Gateways
Cut-Through-Layer-3-Switching (IP-Paket-Switching)
= ARP-Request nennt MAC-Adresse des Switch-Ausgangsports
Label-Switching
= Anheften eines Labels (oder Tags) an das Layer-2-Paket (bzw. die Zelle)
Prof. W. Burkard Rechnernetze 281
Notizen
281
83. Hardware-Router
Hardware- (ASIC-) basierte Router
= direkter Ersatz für konventionelle (Software-basierte) Router
• von Grund auf für die Routing-Aufgabe entwickelt
• verarbeiten einige Millionen Pakete pro Sekunde
• Einsatz einer Cross-Point-Matrix statt eines Systembusses
• alternativ Einsatz von extrem schnellen Bussen
• Lookup der Routing-Tabellen über dedizierte ASICs
(Application specific IC) statt einer herkömmlichen CPU
Vorteil: man muß nichts neu konfigurieren oder beschaffen
Nachteile:
es hat sich nichts wesentliches geändert, nach wie vor wird jedes Diagramm
einzeln geroutet. Hoher Preis, große Komplexität und Admin-Aufwand bleiben.
Fazit: Versuch, jedes einzelne Paket zu routen, ist auf lange Sicht ein verlorener Kampf!
Prof. W. Burkard Rechnernetze 282
Notizen
282
84. Route-Server-Konzepte
Besonders für ATM-Netzwerke gedacht
Es kommen drei Komponenten zum Einsatz:
• Route - Server: verantwortlich für Pfadkalkulation durch das Netz
• intelligente Layer-3-Forwarding-Komponente ( FK) an der Netz-Peripherie
• Layer-2-Switche im Kern des Netzes
PC B
PC A
FK FK
Server
Eingesetzt wird NHRP (Next Hop Resolution Protocol, Variante des ARP)
Sendewillige Station sendet NHRP-Request an Route-Server.
Route-Server liefert MAC-Adresse des Zielsystems (meist ATM-Adresse)
Merke: Server-basierte Routing-Konzepte erfordern die Unterstützung von NHRP
in allen Netzwerk-Komponenten, Endgeräte eingeschlossen!
Prof. W. Burkard Rechnernetze 283
Notizen
283
85. ICMP-Redirect
Nutzung des ICMP-Redirect-Mechanismus um Verkehr vom
Default-Gateway auf Zieladresse umzuleiten:
Station sendet an Default-Gateway
Gateway sendet ICMP-Redirect, d.h. „es gibt eine bessere Route zum Ziel“
Nun versucht die Station über dieses „virtuelle Gateway“ das Ziel zu erreichen
Reaktion: IP-Switch liefert MAC-Adresse der Zielstation auf der IP-Adresse
des virtuellen Gateways
Station glaubt nun, daß Zieladresse direkt erreichbar ist und sendet unter
dieser MAC-Adresse alle weiteren Pakete.
Ergebnis: Datenstrom wird auf Ebene 2 geswitcht.
Probleme: IP-Adressen der virtuellen Gateways müssen aus einem vorab
definierten IP-Adreßpool zugewiesen werden: ==> eine bestimmte Anzahl
von IP-Adressen pro Subnetz muß reserviert werden.
Vorteil: keinerlei Konfigurationsänderungen an Endgeräten.
Prof. W. Burkard Rechnernetze 284
Notizen
284
86. IP-Packet-Switching
Kann wie ICMP-Redirect nicht nur im Netzkern, sondern bis zum
Endgerät genutzt werden:
Rekonfiguration aller Endgeräte, so daß diese bei jedem Verbindungswunsch
eine ARP-Nachricht senden.
ARP-Anfragen werden vom IP-Switch abgefangen/behandelt
• Ist Paket im gleichen Subnetz, wird wie gehabt die zugehörige
MAC-Adresse geliefert
• Andernfalls wird MAC-Adresse des Ausgangsports geliefert,
der das Ziel erreichen kann
• intelligenter Switch erkennt* eintreffende Pakete und setzt neu um
( ließt IP und ersetzt MAC-Adresse ), da er über Layer-3-Informationen verfügt.
* wird erkannt weil MAC-Adresse identisch mit eigener Adresse
Prof. W. Burkard Rechnernetze 285
Notizen
285
87. Label-Switching
Besonders für ISP und Corporate-Networks geeignet
Switches im Netz führen ein Mapping zwischen Layer-3-IP-Adressen zu
sogenannten Labels, Tags oder VCI/VPI eines ATM-Netzwerkes durch
IP-Datenströme werden mittels Switching auf der Ebene 2 über diese
virtuellen Verbindungen weitergeleitet
Switche nutzen Routing-Protokolle (RIP, OSPF, etc.) um Informationen über
die Netztopologie auszutauschen
Abhängig davon, wie der Pfad durchs Netz aufgesetzt wird, kennt man:
• IP-Flow-basierte Verfahren: Erkennen längerer IP-Datenströme
und Zuordnung eigener VCI/VPI
• Topologie-basierte Verfahren: Cisco Tag Switching => MPLS
(Multiprotokoll-Label-Switching)
Prof. W. Burkard Rechnernetze 286
Notizen
286
88. Funktionsweise des Tag-Switching
Tag-Edge-Router an Netzwerkgrenze
führen Routing durch und fügen Tags an
die Pakete.
Tag-Switches im Netzkern leiten die
markierten Pakete/Zellen im
Switching-Verfahren weiter
Das Tag-Distribution-Protocol (TDP)
verteilt Tag-Informationen zwischen den
Tag-Switches und Edge-Routern
(auf Basis von Standard-Routing-
Protokollen)
Prof. W. Burkard Rechnernetze 287
Notizen
287
89. Das Tag-Distribution Protokoll
Downstream Tag-Bestimmung
Upstream Tag-Bestimmung
Tag-Switch erzeugt für jeden Weg seiner
Tag-Switch erzeugt für jeden Weg seiner
Routing-Tabelle einen Tag und setzt ihn
Routing-Tabelle einen Tag und setzt ihn
als eingehenden Tag in die TIB
als ausgehenden Tag in die TIB
Er verteilt diese Zuordnung
Er verteilt diese Zuordnung
Tag-zu-Route an seine Nachbarn
Tag-zu-Route an seine Nachbarn
Erhält ein Switch diese Nachricht von
Nachbarn nehmen diese Information als
einem Switch, der als Folgeknoten einer
eingehenden Tag in ihre TIB auf
Route in seiner Routing-Tabelle
(TIB= Tag Information Base)
eingetragen ist, aktualisiert er seine TIB
mit dem entsprechenden ausgehenden
TDP
Tag-Eintrag
TDP
TDP
Tag-Edge- 3
Router
8
6 Tag-Edge-Router
Input Output
Tag-Switch
Input Output
... 3
Input Output 8 ...
Input Output
3 6 6 Rechnernetze
8
Prof. W. Burkard 288
Notizen
288
90. Aufbau von VLANs
= Loslösung der logischen Netzstruktur von der physikalischen Topologie
=> Bildung von Subnetzen über physikalische Netzgrenzen hinweg
Beispiele:
Alle Mitarbeiter einer Abteilung zu einem Subnetz zusammenfassen,
obwohl sie über mehrere Gebäude und/oder Standorte verteilt sind
Zusammenfassung von Mitarbeitern mit speziellen (Performance-)
Anforderungen in ein Subnetz (z.B. Systemadministratoren)
Servergruppierung, obwohl sie im Firmenareal verteilt sind
Merke:
Gründe für die Gruppierung können organisatorischer oder technischer Art sein.
Vorteile:
mehr Flexibilität: Netzstruktur definiert nicht mehr Unternehmensorganisation
vereinfachte Administration: Mausklicks statt „Umstöpseln“
Reduzierte Betriebskosten: Zeitaufwand und Kosten von Netzänderungen sind
geringer
Reduzierte Broadcast/Multicast-Netzlast und stabilere/sicherere Netze
(im Gegensatz zu flachen, geswitchten Netzen)
Prof. W. Burkard Rechnernetze 289
Notizen
289
91. Alternativen zum Bau von VLANs
Merke: VLAN-Bildung spielt sich auf Layer 2 ab !
Um ein flaches, mit Brücken und Layer-2-Switches gebautes Netz in eine
sinnvolle Ansammlung von VLANs zu unterteilen, gibt es im wesentlichen drei
Alternativen:
1. Protokoll-orientiertes Gruppieren: Gruppenbildung anhand Informationen aus
übergeordneten Protokollen: IP, IPX, Appletalk, DECNet, ...
2. MAC-Adressen-Gruppierung: Die MAC-Adresse eines Gerätes entscheidet über
seine VLAN-Zugehörigkeit
3. Port-Gruppierung: ein VLAN ist eine Ansammlung von physikalischen Ports auf
einem oder mehreren Switches, d.h. ein Switch-Port wird einem VLAN
zugeordnet.
Prof. W. Burkard Rechnernetze 290
Notizen
290
92. Beispiel für ein protokoll-basiertes VLAN
Prof. W. Burkard Rechnernetze 291
Notizen
291
93. Beispiel für ein MAC-basiertes VLAN
Prof. W. Burkard Rechnernetze 292
Notizen
292
94. Beispiel für ein Port-basiertes VLAN
Prof. W. Burkard Rechnernetze 293
Notizen
293
95. Stärken und Schwächen der VLAN-Ansätze
VLAN-Ansatz Stärken Schwächen
Protokoll- erlaubt Aufteilung nach eventuell Performanz-Probleme, da
basiert Layer-3-Kriterien es Layer-3-Adressen lesen muß
Ein Port kann an mehreren macht eventuell Probleme beim
VLANs teilnehmen Einsatz von DHCP
MAC-basiert VLAN-Mitgliedschaft wandert rechenintensiv, wenn viele PCs
mit einer Maschine => kein an einem Port in mehreren VLANs
Konfigurationsbedarf beim eingebunden sind
Standortwechsel eines PC VLAN-Mitgliedschaft an PC gebunden,
User kann nicht auf anderen PC
Port-basiert Einfach zu verstehen und Rekonfiguration erforderlich,
managen wenn PC Standort wechselt
bei shared-media LANs hinter Ein Port ist immer nur in einem
dem Switch-Port werden VLAN
ganze Netzwerke gruppiert
Prof. W. Burkard Rechnernetze 294
Notizen
294
96. Geschlossene und offene VLANs
Geschlossenes VLAN =
VLAN, das die Broadcast-Domäne so eingrenzt, daß nur Mitglieder
des VLAN vom VLAN-Verkehr berührt sind
Beispiel: Definition eines Port-basierten VLANs auf den Ports 5,9 und 13
eines Switchs. Nur die Maschinen hinter diesen drei Ports bekommen
den Verkehr dieses VLAN mit.
Offenes VLAN =
sieht zusätzlichen Datenverkehr, jenseits der VLAN-Definition
Beispiel: Tritt immer dann auf, wenn ein einzelner Port für mehr als
ein VLAN zuständig ist, z.B. bei MAC-basiertem VLAN und zwei PCs
hinter einem Port (weil dort ein Repeater steht...)
Fachbegriff „VLAN leaks“
Was ist der größte Nachteil von VLANs ?
Netzwerkverwalter kann bei VLANs nicht mehr die physikalische Topologie mit der
Funktionsweise des Netzes assoziieren !!!
Prof. W. Burkard Rechnernetze 295
Notizen
295
98. Von der Anwendung zur Netzkarte...
Prof. W. Burkard Rechnernetze 297
Notizen
297
99. Die Transportebene: UDP
Das User Datagram Protocol und seine Eigenschaften:
verbindungslose Datenübertragung
keine Verlässlichkeit, Flusskontrolle, Fehlerbehebung
zeichenorientierte Kommunikation mit dem Protokoll der
übergeordneten Schichten. (ULP)
wird dort eingesetzt, wo die Möglichkeiten von TCP nicht benötigt
werden, weil die Anwendung eigene Verfahren einsetzt
UDP ist eine einfache Schnittstelle für den Zugang zu IP, dient
eigentlich nur als Port-Multiplexer
Prof. W. Burkard Rechnernetze 298
Notizen
298
100. UDP: Funktion und Datagram
Port y
Port x Port z Application layer
UDP Transport layer
IP Network layer
32 Bit
Quell-Port Ziel-Port
Paket-Länge Checksumme
Daten ...
Prof. W. Burkard Rechnernetze 299
Notizen
299
101. Die UDP- PDU
Prof. W. Burkard Rechnernetze 300
Notizen
300
102. Die Transportebene: TCP
Das Transmission Control Protocol und seine Eigenschaften:
Herstellung einer 1-zu-1-Beziehung zwischen den beiden kommunizierenden Prozessen
verbindungsorientierte Datenübertragung (Aufbau-Übertragung-Abbau)
verlässliche Datenübertragung durch Sequencing und Acknowledge (Bestätigung)
zeichenorientierte Kommunikation mit dem übergeordneten Protokoll (ULP)
“Push” - Funktion: explizite Pufferleerung getriggert durch ULP
Resequencing und Eliminierung von doppelten Segmenten
Flusskontrolle mittels “gleitender Fenster”
“gracefull close”: Das sanfte Schliessen bestehender Verbindungen
Prof. W. Burkard Rechnernetze 301
Notizen
301
103. Die TCP- PDU
Prof. W. Burkard Rechnernetze 302
Notizen
302