Universität Koblenz-Landau Freitag, 7. Oktober 2011 Nachklausur zur Vorlesung Grundlagen der Rechnernetze Wintersemester 2011/2012 Prof. Dr. Ch. Steigner Name Vorname Mat.-Nr. Studiengang Musterlösung Punkte : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Bonus 6 8 4 6 6 6 5 7 4 10 6 8 6 4 8 4 6 6 10 Bonus 110 (+10) Kontrollieren Sie Ihre Klausur auf Vollständigkeit (14 Seiten). Für die Bearbeitung sind keinerlei Unterlagen sowie keinerlei elektronische Hilfsmittel (z.b. Taschenrechner) erlaubt. Verwenden Sie nur dokumentenechte Schreibmittel (kein Bleistift).
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 2 (Kreuzen Sie bei den Multiple-Choice Aufgaben in dieser Klausur nur die korrekten Aussagen an. Falsch gesetzte Kreuze führen zu Punktabzug innerhalb der jeweiligen Aufgabe. Bei einigen Multiple-Choice Aufgaben können mehrere Aussagen richtig sein.) Aufgabe 1 (6 Punkte) a) Nennen Sie die drei Festlegungen, die für ein Protokoll erforderlich sind? Syntax Semantik Zeitbedingungen b) Nennen Sie die drei wesentlichen Konstruktionsprinzipien einer Rechnernetz-Architektur? Protokolle Schichten Adressen Aufgabe 2 (8 Punkte) Aus welchen Schichten besteht das TCP/IP-Modell und welche Adresse (Nummerierung) kommt auf der jeweiligen Schicht zum Einsatz? (in richtiger Reihenfolge beginnend mit der obersten Schicht (top-down)) Schicht Adressierung Anwendung (Application) Transport Internet Sicherung, (Data) Link, Netzzugang Port-Nr. Protocol-Nr. IP-Adresse MAC-Adresse Aufgabe 3 (4 Punkte) Erläutern Sie kurz, was das Shannon'sche Codierungstheorem und in diesem Zusammenhang der Begriff Entropie beschreibt. Entropie nach Shannon beschreibt den mittleren Informationsgehalt einer Nachricht. Das Shannonen'sche Codierungstheorem besagt, dass die mittlere Codewortlänge (Code Length) eines optimalen präfixfreien Codes durch die Entropie beschränkt ist. Es gibt also eine obere und untere Schranke für die Konstruktion von optimalen Codes. (H < L < H+ 1)
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 3 Aufgabe 4 (6 Punkte) a) In welcher Beziehung (Formel) steht die Datendurchsatzrate (D) zur Bandbreite (B) bei einem: 1) - verrauschten (noisy) Kanal? (Formel nach Shannon:) D=B log 2 1 S N 2) - rauschfreien (noiseless) Kanal? (Formel nach Nyquist:) D=2 B log 2 V b) Ein Übertragungskanal mit einer Frequenzbandbreite von 1000 Hz habe einen Rauschabstand S/N (signal-noise-ratio) von 4095. Welche maximale Datenübertragungsrate ist über diesen Kanal erreichbar? Geben Sie auch Ihre Berechnung an und achten Sie auf die verwendeten Einheiten. D=B log 2 (1+ S N ) D=1000 log 2 4096 D=1000 12 D=12000 bps D=12 kbps Aufgabe 5 (6 Punkte) Tragen Sie im folgenden Diagramm für die verschiedenen Kodiermethoden die entsprechenden Pegelverläufe ein! (NRZI beginne auf low)
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 4 Aufgabe 6 (6 Punkte) HostA und HostB sind je über 1-Gbit/s-Verbindungsleitungen an einen Switch S angeschlossen. Die Ausbreitungsverzögerung (PD) in jeder Verbindungsleitung beträgt 10 μs. S ist ein Store-and-Forward-Switch. Er beginnt mit der erneuten Übertragung eines empfangenen Pakets 100 μs nach dessen vollständigem Empfang. a) Berechnen Sie die Zeit, die insgesamt erforderlich ist, um 400000 Bit von A nach B zu übertragen, wenn das Paket als Ganzes übertragen wird. PD = 10 μs, QD = 100 μs TT = 4 10 5 /10 9-4 s = 4 10 s = 0.4 ms = 400 μs TD = 2 x TT + 2 x PD + QD 800 μs + 20 μs + 100 μs = 920 μs b) Berechnen Sie die Zeit, die insgesamt erforderlich ist, um 400000 Bit von A nach B zu übertragen, wenn zwei 200000-Bit-Pakete direkt nacheinander gesendet werden. PD = 10 μs, QD = 100 μs TT = 0.2 ms = 200 μs Da S Paket 1 senden kann, während er Paket 2 empfängt fällt eine TT weg TD = 3 x TT + 2 x PD + QD Gesamtübertragungszeit wird also kürzer 600 μs + 20 μs + 100 μs = 720 μs Aufgabe 7 (5 Punkte) Markieren Sie durch entsprechend gesetzte Kreuze, ob die genannten Verfahren für Fehlererkennung und/oder Fehlerkorrektur einsetzbar sind. Fehlererkennung Fehlerkorrektur einfache Paritätsprüfung Huffman Code Prüfsumme CRC Hamming-Code
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 5 Aufgabe 8 (7 Punkte) 4 Bits breite Datenworte (D 0,D 1,D 2,D 3 ) werden nachfolgend über einen Hamming-Code gegen 1-Bit-Fehler abgesichert. Dafür werden 3 Prüfbits (R 0, R 1, R 2 ) benötigt. a) Kodieren Sie das nachfolgende Datenwort indem Sie die Prüfbits bestimmen und an der richtigen Stelle hinzufügen! Schreiben Sie dabei die Bitpositionen von links nach rechts in aufsteigender Reihenfolge! Datenwort Codewort D 0 D 1 D 2 D 3 R 0 R 1 D 0 R 2 D 1 D 2 D 3 0 1 1 0 1 1 0 0 1 1 0 Bitpos. b) Dekodieren Sie das folgende Codewort und korrigieren Sie eventuell aufgetretene Bitfehler. Bitpos. Codewort Datenwort R 0 R 1 D 0 R 2 D 1 D 2 D 3 D 0 D 1 D 2 D 3 0 0 1 1 0 1 1 1 0 0 1 Aufgabe 9 (4 Punkte) Gegeben sei ein Hamming-Code mit einer Hamming-Distanz von D=7. (a)wie viele Bit-Fehler können mit diesem Code maximal erkannt werden? D = d+1 d = D-1 = 6 Bit (b)wie viele Bits des Codes dürfen maximal fehlerhaft sein, um diesen noch korrigieren zu können? D = 2d +1 d = (D-1)/2 = 3 Bit
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 6 Aufgabe 10 (10 Punkte) Beim BGP-4 Protokoll dienen Attribute zur Qualifizierung bzw. Auswahl von Routing-Updates für den Fall, dass das gleiche Ziel (IP-Prefix) über verschiedene Verbindungen erreichbar ist. (a) Ordnen Sie die im Folgenden aufgeführten Attributtyp-Bezeichnungen ihrer richtigen Beschreibung zu. (well-known, optional, mandatory, discretionary, non-transitive, transitive) Attribute Types optional well-known non-transitive transitive discretionary mandatory Diese Attribute müssen nicht ausgewertet werden und dürfen nicht weitergereicht werden. Diese Attribute müssen nicht ausgewertet werden, müssen aber weitergereicht werden. Diese Attribute können vorhanden sein und müssen dann ausgewertet werden. Diese Attribute müssen vorhanden sein und müssen ausgewertet werden. (b)welche der angegebenen Attribute sind auch ohne explizite Administration immer gesetzt und werden immer von BGP-Routern ausgewertet. ORIGIN LOCAL_PREFERENCE ORIGINATOR_ID ATOMIC_AGGREGATE NEXT_HOP COMMUNITY AGGREGATOR AS_PATH MULTI_EXIT_DISC
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 7 (c) Wozu dienen die Attribute im Border-Gateway-Protokoll? Zur Auswahl von Übertragungswegen zwischen Autonomen Systemen? Zur Erkennung und Vermeidung von Schleifen zwischen Autonomen Systemen? Zur Staukontrolle? Zur Flusskontrolle? Um dem Administrator eines Autonomen Systems die Kontrolle über den eingehenden und abgehenden Datenverkehr zu ermöglichen? Zur Administration virtueller LANs (VLANs) durch das Routing-Protokoll? Um den Daten-Verkehr bestimmter Anwendungen mit einer höheren Priorität durch das Netzwerk leiten zu können. Aufgabe 11 (6 Punkte) a) Worin unterscheiden sich bei den Internetadressen die Netz-Adressen von den Broadcast-Adressen? Bei Netz-Adressen ist der Hostanteil 0 Bei Broadcast-Adressen ist der Hostanteil 1 b) Geben Sie bei den nachfolgenden Internetadressen jeweils an, ob es sich um eine Netz-, eine Host- oder eine Broadcast-Adresse handelt. 141.26.72.0 / 21 IP-Adresse Host Netz Broadcast 192.12.192.159 / 27 141.26.130.255 / 17 141.26.69.160 / 27
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 8 Aufgabe 12 (8 Punkte) An der Netzschnittstelle von Host A in dem unten angegebenen System wurde folgender tcpdump aufgezeichnet. A:~# tcpdump -i eth1 -n tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes (1) arp who-has 10.0.1.1 tell 10.0.1.100 (2) arp reply 10.0.1.1 is-at fe:fd:00:00:01:01 (3) IP 10.0.1.100 > 10.0.5.200: ICMP echo request, id 51972, seq 1, length 64 (4) IP 10.0.1.1 > 10.0.1.100: ICMP redirect 10.0.5.200 to host 10.0.1.2, length 92 (5) arp who-has 10.0.1.2 tell 10.0.1.100 (6) arp reply 10.0.1.2 is-at fe:fd:00:00:02:01 (7) IP 10.0.5.200 > 10.0.1.100: ICMP echo reply, id 51972, seq 1, length 64 a) Von welchem Host wurde hier welches bekannte Programm zur Netzdiagnose mit welchen Parametern ausgeführt? Host A: ping 10.0.5.200 b) Erläutern Sie kurz die Zeilen (1) und (2) aus der obigen tcpdump -Ausgabe. Wie lautet die ausführliche Bezeichnung des Protokolls, das hier zum Einsatz kommt und warum ist es hier notwendig? ARP Address Resolution Protocol: bildet die IP-Adresse auf eine MAC-Adresse ab. c) Wieso gibt es keine Abfrage arp who-has 10.0.5.200 tell 10.0.1.100? Die beiden IP-Adressen liegen nicht im selben Netz. Die IP-Adresse 141.34.15.5 ist nur über den Router (hier R1) zu erreichen. Daher wird nur die MAC-Adresse der zugehörigen IP-Adresse von R1 benötigt. d) Welche besondere Gegebenheit wird hier durch den gegebenen tcpdump dokumentiert? Da Host A als seinen Default Router nur Router R1 kennt, sendet er die echorequest-anfrage zuerst an R1. Router R1 macht Host A mit der Nachricht redirect auf die kürzere Weglänge via Router R2 aufmerksam. Die nachfolgende arp- Anfrage dient zur Ermittlung der MAC-Adresse von router R2.
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 9 Aufgabe 13 (6 Punkte) Eine TCP Verbindung ist eine Duplex-Verbindung. Auf jeder Seite der Verbindung laufen zwei Prozesse, jeweils ein Sender- und ein Empfänger-Prozess. Client Sender Client Empfänger Server Empfänger Server Sender (a)ein TCP-Paket ist von einem Client-Rechner auf dem Weg zu einem Server-Rechner. Welche Informationen des TCP-Headers sind ausschließlich für den Sender-Prozess des Servers bestimmt, bzw. beeinflussen den Sender- Prozess des Servers direkt. Ack Sequence und Window Size (b) Wozu dient das Push-Flag im TCP-Header? Das Push-Feld dient zur Absendung eines TCP- Segmentes, dessen MSS nicht vollständig auffüllbar ist. (z.b. bei einer Anwendung wie Telnet). (c)welche 3 Header-Felder, die außerhalb des TCP-Headers liegen, werden bei der Berechnung der TCP-Pseudo-Header-Checksum (Prüfsumme) zusätzlich mit einbezogen. 1 IP-Absenderadresse 2 IP-Empfängeradresse 3 IP-Längenfeld Aufgabe 14 (4 Punkte) Welche der nachfolgend genannten Dienste bietet TCP an, bzw. welche Aufgaben übernimmt TCP? flow control data compression guaranteed bandwidth guaranteed transmission time in-order delivery authentification encryption reliable delivery congestion control feed forward error control differentiated service by priorities resource reservation
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 10 Aufgabe 15 (8 Punkte) Gegeben ist die obige Topologie mit den Hosts X, Y, Z und W, sowie den learning Switches S1, S2 und S3. Die Switches werden mit leeren Weiterleitungstabellen initialisiert. Die folgenden Abläufe finden nun in direkter Abfolge nacheinander statt. 1) Host Z sendet ein Datenpaket an Host Y. Welche Switches lernen wo sich Z befindet? S3, S2, S1 Sieht die Netzwerkschnittstelle von X dieses Paket? Ja 2) Host Y sendet nun ein Datenpaket an Host Z. Welche Switches lernen wo sich Y befindet? S2, S3 Sieht die Netzwerkschnittstelle von X dieses Paket? Nein 3) Host W sendet ein Datenpaket an Host Y. Welche Switches lernen wo sich W befindet? S3, S2 Sieht die Netzwerkschnittstelle von X dieses Paket. Nein 4) Host Y sendet ein Datenpaket an Host W. Welche Switches lernen wo sich Y befindet? _S3, S2 (bzw. Y bereits bekannt) Sieht die Netzwerkschnittstelle von X dieses Paket. Nein Aufgabe 16 (4 Punkte) Welches Problem entsteht, wenn in einem Netzwerk Switches so verbunden sind, dass Schleifen auftreten und wie kann es gelöst werden? Broadcast-Storm, Spanning Tree Protocol.
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 11 Aufgabe 17 (6 Punkte) Gegeben ist die folgende tcpdump -Ausgabe, die den aufgezeichneten Datenverkehr über ein Interface eth1 auf einem Host A darstellt. (Die Ausgabe wurde mittels Einfügen leerer Zeilen in 4 Blöcke unterteilt.) A :~# tcpdump -i eth1 -n tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes IP 10.0.0.100.34061 > 10.0.1.200.33435: UDP, length 12 IP 10.0.0.1 > 10.0.0.100: ICMP time exceeded in-transit, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33436: UDP, length 12 IP 10.0.0.1 > 10.0.0.100: ICMP time exceeded in-transit, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33437: UDP, length 12 IP 10.0.0.1 > 10.0.0.100: ICMP time exceeded in-transit, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33438: UDP, length 12 IP 10.0.3.4 > 10.0.0.100: ICMP time exceeded in-transit, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33439: UDP, length 12 IP 10.0.3.4 > 10.0.0.100: ICMP time exceeded in-transit, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33440: UDP, length 12 IP 10.0.3.4 > 10.0.0.100: ICMP time exceeded in-transit, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33441: UDP, length 12 IP 10.0.2.3 > 10.0.0.100: ICMP time exceeded in-transit, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33442: UDP, length 12 IP 10.0.2.3 > 10.0.0.100: ICMP time exceeded in-transit, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33443: UDP, length 12 IP 10.0.2.3 > 10.0.0.100: ICMP time exceeded in-transit, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33444: UDP, length 12 IP 10.0.1.200 > 10.0.0.100: ICMP 10.0.1.200 udp port 33444 unreachable, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33445: UDP, length 12 IP 10.0.1.200 > 10.0.0.100: ICMP 10.0.1.200 udp port 33445 unreachable, length 48 IP 10.0.0.100.34061 > 10.0.1.200.33446: UDP, length 12 IP 10.0.1.200 > 10.0.0.100: ICMP 10.0.1.200 udp port 33446 unreachable, length 48 a) Welches (Linux-)Programm (Kommando) hat diesen Datenverkehr verursacht? Geben Sie die Eingabe mit entsprechenden Parametern an. traceroute 10.0.1.200 (b)wie ermittelt das obige Programm die IP-Adressen? Beschreiben Sie die jeweilige Methode für jeden der oben abgebildeten Blöcke und welche IP- Adresse in diesem Block ermittelt wurde! Block ermittelte IP-Adresse verwendetes Verfahren 1 10.0.0.1 über TTL-Wert bzw. ICMP time exceeded 2 10.0.3.4 über TTL-Wert bzw. ICMP time exceeded 3 10.0.2.3 über TTL-Wert bzw. ICMP time exceeded 4 10.0.1.200 ungültiger UDP-Port
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 12 Aufgabe 18 (6 Punkte) Gegeben ist das nebenstehende Netzwerk-Szenario. a) Auf dem Rechner Host A wurde der Befehl ping 10.1.1.33 ausgeführt, was zu folgender Fehlermeldung führte. A:~# ping 10.1.1.33 connect: Network is unreachable A:~# Bei der anschließenden Problemanalyse wurde die Weiterleitungstabelle von Host A mit dem Befehl route -n aufgerufen. Markieren Sie die Weiterleitungstabellen, die zur obigen Fehlermeldung passen. (Es können mehrere Antworten richtig sein). A:~# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.0.100 0.0.0.0 255.255.255.252 U 0 0 0 eth0 10.1.1.0 172.10.5.2 255.255.255.192 UG 0 0 0 eth1 172.10.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 A:~# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.0.100 0.0.0.0 255.255.255.252 U 0 0 0 eth0 10.1.1.0 172.10.5.2 255.255.255.0 UG 0 0 0 eth1 172.10.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 A:~# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.0.100 0.0.0.0 255.255.255.252 U 0 0 0 eth0 172.10.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 A:~# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.0.100 0.0.0.0 255.255.255.252 U 0 0 0 eth0 172.10.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 0.0.0.0 172.10.5.2 0.0.0.0 UG 0 0 0 eth1 A:~# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.1.1.33 172.10.5.2 255.255.255.255 UGH 0 0 0 eth1 192.168.0.100 0.0.0.0 255.255.255.252 U 0 0 0 eth0 172.10.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 b) Geben Sie einen entsprechenden route-befehl an, mit dem sich der obige Fehler beheben lässt, so dass Host B wieder erreichbar ist. ~ # route -h Usage: add -net <address>/<cidr> gw <router-address> add -host <address> gw <router-address> add default gw <router-address> route add -net 10.1.1.0/24 gw 10.0.5.2
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 13 Aufgabe 19 (10 Punkte) (BONUS) In der folgenden Topologie ist ein Link-State-Routing Protokoll aktiv. Geben Sie für das abgebildete Netzwerk die vollständige Liste aller LSPs in der Form Nachbarknoten Kosten an, über die jeder Knoten nach Abschluss des Flutens beim Link-State-Routing verfügt. Router A Router B Router C Router D Router E B 3 A 3 A 5 B 9 C 3 C 5 D 9 D 8 C 8 D 2 E 3 E 2 Führen Sie die Schritte auf, die der Forward-Search-Algorithmus vollzieht, wenn er die Routing-Tabelle für Knoten A aufbaut. Geben Sie am Ende den Inhalt der Routing-Tabelle von A an. step confirmed list tentative list comment 1 (A,-,-) - initialisierung 2 (A,-,-) 3 (A,-,-) 4 (A,-,-) 5 (A,-,-) (D,12,B) (D,12,B) LSP von A wird ausgwertet hat die geringsten kosten und wird übernommen Auswertung des LSPs von B hat die geringsten Kosten und wird übernommen.
Grundlagen der Rechnernetze Nachklausur Wintersemester 2011/2012 14 step confirmed list tentative list comment 6 (A,-,-) 7 (A,-,-) 8 (A,-,-) 9 (A,-,-) (E,8,C) 10 (A,-,-) (E,8,C) (D,10,C) (E,8,C) (D,13,C) (D,12,B) (E,8,C) (D,13,C) (D,12,B) (E,8,C) (D,12,B) (D,12,B) (D,10,C) Auswertung des LSPs von C (D,12,B) hat geringere Kosten und wird übernommen. (D,13,C) wird gelöscht (E,8,C) hat die geringeren Kosten und wird übernommen LSP von E wird ausgelesen (D,10,C) hat die geringeren Kosten und wird übernommen Auswertung des LSPs von D keine neuen Ziele fertig Tragen Sie den Inhalt der Routing-Tabelle des Routers A in die folgende Tabelle ein. Bennen Sie auch die einzelnen Spalten der Routing-Tabelle. Routing-Table A Destination Kosten Next Hop A - - B 3 B C 5 C D 10 C E 8 C