Grundlagen Rechnernetze und Verteilte SystemeEndterm Wiederholung
Moritz Pfeiffer, [email protected] unter grnvs.pfeiffer-moritz.com
Das Ziel
GRNVS Tutorium, Moritz Pfeiffer
www.google.de
PC1
PC2
R1 R2HUB
S1
S2
You are here
Das Problem (1/6)
GRNVS Tutorium, Moritz Pfeiffer
Wie verschicke ich Daten?!
PC1
PC2
R1 R2HUB
S1
S2
You are here
Your goal
Die Lösung: Quell-, Kanalkodierung & Modulation
GRNVS Tutorium, Moritz Pfeiffer
Wie verschicke ich Daten?!
Schritt 1) QuellkodierungZiel: Redundanz reduzieren
Schritt 2) KanalkodierungZiel: Redundanz erhöhen (Fehlererkennung/-korrektur)
Schritt 3) ImpulsformingZiel: Aus Daten ein Signal generieren
Schritt 4) ModulationZiel: Parallelisierung (Fourierreihe!)
0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 bits
10010101 0000 0011 1111Blöcke
Rahmen A Rahmen B …Rahmen
Die Aufgabe: Quell-, Kanalkodierung & Modulation
GRNVS Tutorium, Moritz Pfeiffer
Wie verschicke ich Daten?!
a) Was ist die Entropie einer Quelle die die Nachricht „aaaabbcaabd“ emittiert?b) Was ist der zugehörige Huffman-Code?c) Wie groß ist die Coderate, wenn wir an jedes Zeichen zwei weitere (identische) Zeichen anhängen?
d) Wie groß ist der Gleichanteil des Signals? e) Wie groß ist der Kosinusanteil einer für dieses Signal geeigneten Fourierreihe?f) Wie viele bits kann ich mit Hilfe von 16-QAM als ein Symbol modulieren?
Das Problem (2/6)
GRNVS Tutorium, Moritz Pfeiffer
Wann verschicke ich ein Paket an meinen Nachbarn?
PC1
PC2
R1 R2HUB
S1
S2
You are here
Your goal
The problem is here
Collision Domain
Die Lösung: CSMA/CD / ALOHA
GRNVS Tutorium, Moritz Pfeiffer
Wann verschicke ich ein Paket an meinen Nachbarn?
Aus
brei
tung
sver
zöge
rung
Ser
ialis
ieru
ngsz
eit
Sender Empfänger
Beispiel ALOHA
Beispiel CSMA/CD
Die Aufgabe: CSMA/CD / ALOHA
GRNVS Tutorium, Moritz Pfeiffer
Wann verschicke ich ein Paket an meinen Nachbarn?Angabe:L = 1500 Br = 100 Mbit/sc =
a) Wie groß ist die Serialisierungszeit?b) Wie groß ist die Ausbreitungsverzögerung?c) Funktioniert ALOHA unter diesen Bedingungen?d) Funktioniert CSMA/CD unter diesen Bedingungen?
Das Problem (3/6)
GRNVS Tutorium, Moritz Pfeiffer
Wie verschicke ich ein Paket an ein weit entferntes Ziel?
PC1
PC2
R1 R2SW1
S1
S2
You are here Your goal
HUB
Die Lösung: IPv4/IPv6
GRNVS Tutorium, Moritz Pfeiffer
Wie verschicke ich ein Paket an ein weit entferntes Ziel?
IP-Adresse (v4)
102 004 213 000
01100110 00000100 11010101 00000000
Network HostNetwork Host
IP-Adresse (v6)
16bit
Network Host
16bit 16bit 16bit 16bit 16bit 16bit 16bit
1f23 2366 aeef 0000 0000 0000 0000 4def
=> /22
Die Aufgabe: IPv4/IPv6
GRNVS Tutorium, Moritz Pfeiffer
Wie verschicke ich ein Paket an ein weit entferntes Ziel?
Angabe:MTU R1-R2 = 1000BMTU PC1-R1 = 2000BMTU R2-S1 = 2000BSerialisierungszeiten vernachlässigbar
a) Kann man die Netze f120::bc00:0/108 und f120::bc10:0/108 zusammenfassen?b) Wie verläuft eine Übertragung (2000B incl. Header) von PC1 zu S1 bei IPv4? *hust* ARP *hust*c) Wie bei IPv6?
Das Problem (3b/6)
GRNVS Tutorium, Moritz Pfeiffer
Woher kennt R1 den Weg?
PC1
PC2
R1 R2SW1
S1
S2
You are here Your goal
Die Lösung: Routing
GRNVS Tutorium, Moritz Pfeiffer
Woher kennt R1 den Weg?
Destination Next Hop InterfaceWohin? Über? Start?
Destination Next Hop InterfaceGarching 0.0.0.0 LandstraßeBerlin 0.0.0.0 Autobahn0.0.0.0/0 (Sonstiges) Frankfurt Flughafen
Die Aufgabe: Routing
GRNVS Tutorium, Moritz Pfeiffer
Woher kennt R1 den Weg?
Destination Next Hop Interfacebb12::/124 - R1.LINKSaa12::/124 - R1.RECHTS::/0 R2.IP R1.RECHTS
a) Welche dieser Adressen könnte PC1 gehören? a) bb12::10b) aa12::1c) bb12::e
b) Verwendet RIP (dynamisches Routing) für den Aufbau einer Routingtabelle von R1 mit den Zielen R1,R2,S1,S2 (PCs einfach ignorieren)
R1 R2 S1 S2(R1,0) - - -
(R1,0) (R2,1) - -
(R1,0) (R2,1) (R2,2) (R2,2)
Das Problem (4/6)
GRNVS Tutorium, Moritz Pfeiffer
Wie entscheide ich wie viele Pakete ich gleichzeitig verschicke?
PC1
PC2
R1 R2SW1
S1
S2
You are here Your goal
Die Lösung: (TCP) Fluss- und Staukontrolle
GRNVS Tutorium, Moritz Pfeiffer
Wie entscheide ich wie viele Pakete ich gleichzeitig verschicke?
Was ist Flusskontrolle?
Was ist Staukontrolle?
Ziel: Überlastungen beim Empfänger verhindern
Ziel: Überlastungen im Netz verhindern
Empfangsfenster
Slow-Start
Congestion-Avoidance
Multiplicative-Decrease Empfangsfenster
Slow-Start Congestion-Avoidance Multiplicative-Decrease
Go-Back-N
Selective Repeat
Go-Back-N
Selective Repeat
http://www.ccs-labs.org/teaching/rn/animations/gbn_sr/
Die Aufgabe: (TCP) Fluss- und Staukontrolle
GRNVS Tutorium, Moritz Pfeiffer
Wie entscheide ich wie viele Pakete ich gleichzeitig verschicke?
Angabe:MSS = 1500BRTT = 200ms
a) Wie lange dauert es von einem MD bis zum nächsten?b) Wie viele Bytes werden in dieser Zeit übertragen?c) Wie viele Bytes gehen hiervon verloren?
Lösung:
a) RTT*9 => 1800ms=1,8s
b) 8+9+..+16*MSS =>108MSS = 162kB = 162*8 kbit = 1296kbit
c) 1 MSS = 1500 B
Das Problem (5/6)
GRNVS Tutorium, Moritz Pfeiffer
Wie kann ich mehrere Rechner mit einer global gültigen IP-Adresse betreiben?
PC1
PC2
R1 R2SW1
S1
S2
You are here
The other you is here
Die Lösung: NAT
GRNVS Tutorium, Moritz Pfeiffer
Wie kann ich mehrere Rechner mit einer global gültigen IP-Adresse betreiben?
PC1
PC2
R1 R2SW1
S1
S2
You are here
The other you is here
NAT
Die Aufgabe: NAT
GRNVS Tutorium, Moritz Pfeiffer
Wie kann ich mehrere Rechner mit einer global gültigen IP-Adresse betreiben?
Local IP Local Port Global PortPC1 1024 1024
PC2 1024 1025
Nr. Src IP Dst IP Src Port Dst Port1 PC1 S2 1024 80
2 PC2 S1 1024 2300
3 S1 R1 2300 1025
4 S1 PC2 2300 1024Nachrichten (Position siehe oben):1) PC1 -> S2 mit Port 1024 ->802) PC2 -> S1 mit Port 1024->23003+4) S1 -> PC2 mit Port 2300->1024
Nr. 1
Nr. 2
Nr. 3
Nr. 4
Das Problem (6/6)
GRNVS Tutorium, Moritz Pfeiffer
Wer ist „www.google.de“ überhaupt?!
PC1
PC2
R1 R2SW1
S1
S2
You are here
Die Lösung: DNS
GRNVS Tutorium, Moritz Pfeiffer
Wer ist „www.google.de“ überhaupt?!
PC1
PC2
R1 R2SW1
S1
S2
You are hereResolver
Google.de
Die Aufgabe: DNS
GRNVS Tutorium, Moritz Pfeiffer
Wer ist „www.google.de“ überhaupt?!
PC2 S1 S2
ROOT (.) - GOOGLE.DE.
DE. - -
PC1
PC2
S1
S2
Local IP Local Port Global PortPC2 53 53
Offene Themen
1) Kanaleinflüsse2) Grundimpulse (Bsp. Non-return-to-Zero)3) Shannon und Hartley4) (Rahmen-)Fehlerwahrscheinlichkeiten beim Einsatz von verschiedenen Blockcodes5) CRC6) Was ist der Unterschied zwischen MAC und IP-Adressen?!7) Shortest Path Tree vs. Minimum Spanning Tree
GRNVS Tutorium, Moritz Pfeiffer
… die trotzdem wichtig sind (und bestimmt teilweise drankommen)
Grundlagen Rechnernetze und Verteilte SystemeEndterm Wiederholung
Moritz Pfeiffer, [email protected] unter grnvs.pfeiffer-moritz.com
Aus
brei
tung
sver
zöge
rung
ALOHA & CSMA/CD
GRNVS Tutorium, Moritz Pfeiffer
Ser
ialis
ieru
ngsz
eit
Sender Empfänger
Beispiel ALOHA
Beispiel CSMA/CD
CRC
1010101000 : 1010 =
GRNVS Tutorium, Moritz Pfeiffer
10100000
1010000000
1
10
010
00100 Rest 000
Reduktionspolynom umrechnen in binär:Bsp. x³+x = 1*x³+0*x²+1*x+0*1 => 1010
Beispiel: 1010101 mit Polynom x³+x
grad(p) Nullen anhängen
=> Es wird 1010101000 übertragenBsp. Fehlermuster: 0011000000=> XOR bilden => Es kommt 1001101000 an
Subnetting
GRNVS Tutorium, Moritz Pfeiffer
IP-Adresse (v4)
102 004 213 000
01100110 00000100 11010101 00000000
Network HostNetwork Host => /22
Subnetting
GRNVS Tutorium, Moritz Pfeiffer
Beispielnetz 128.20.254.000/23/23 => die 32-23=9 hinteren Stellen sind Hostanteil
Þ 128.20.254.000 (..0.00000000) ist niedrigste Adresse („Network“)Þ 128.20.255.255 (..1.11111111) ist höchste Adresse („Broadcast“)
Þ bzw. 255.255.254.000 ist Subnetzmaske (11111111….10.00000000)
ARP/IP-Pakete
GRNVS Tutorium, Moritz Pfeiffer
MTU (Maximum Transmission Unit) = maximale Paketgröße (Header + Payload),,wobei ein IP-Header 20B groß ist.
Wie findet ein Datenpaket zu seinem Ziel?Jemanden suchen, der den Weg kennt (ARP-Request)„Ich kenne den Weg“ (ARP-Reply)Datenübergabe (IP-Paket)Nach dem Weg fragen (ARP-Request)usw. bis ans Ziel