Rechnernetze und verteilte Systeme

Klausur Sommersemester 2018

Lösung der Aufgabe 1

Teilaufgabe a

Welche der folgenden Aussagen zum OSI-Referenzmodell sind korrekt?

  • Die ISO/OSI-Schichten 1 bis 4 enthalten anwendungsorientierte Protokolle.
  • Aufgabe von Protokollen der Transportschicht ist es, eine Ende-zu-Ende-Kommunikation zu ermöglichen.
  • Für Wegwahl/Routing sind Protokolle der Vermittlungsschicht zuständig.
  • Für zwischengelagerte Transitsysteme sind die ISO/OSI-Schichten 1 bis 3 relevant.

Erläuterung:

  • Die ISO/OSI-Schichten 1 bis 4 sind nicht anwendungsorientiert. Anwendungsorientierte Protokolle befinden sich in den Schichten 5 bis 7.
  • Die Vermittlungsschicht (Schicht 3) ist für die Ende-zu-Ende-Kommunikation verantwortlich. (UDP zum Beispiel nicht Ende zu Ende)
  • Die Vermittlungsschicht (Schicht 3) kümmert sich um das Routing der Datenpakete.
  • Schichten 1 bis 3 sind relevant für Transitsysteme, die Daten von einem Netzwerk zum anderen weiterleiten.

Teilaufgabe b

Welche der folgenden Eigenschaften haben verbindungsorientierte Dienste immer?

  • Die maximale Zeit für die Zustellung einer Nachricht wird garantiert.
  • Auf einen Verbindungsaufbau kann verzichtet werden.
  • Die Dienste sind immer der Transportschicht zuzuordnen.
  • Es wird ein Kommunikationskanal zwischen zwei Endpunkten eingerichtet.

Erläuterung:

  • Verbindungsorientierte Dienste garantieren nicht immer eine maximale Zustellzeit.
  • Ein Verbindungsaufbau ist immer erforderlich.
  • Verbindungsorientierte Dienste können auch in anderen Schichten existieren, nicht nur in der Transportschicht.
  • Ein Kommunikationskanal zwischen zwei Endpunkten wird immer eingerichtet.

Teilaufgabe c

Zur Digitalisierung von analogen Daten sind folgende Schritte erforderlich:

  • Quantisierung
  • Diskretisierung
  • Modulation
  • Codierung

Erläuterung:

  • Quantisierung: Der Prozess der Umwandlung kontinuierlicher Werte in diskrete Werte.
  • Diskretisierung: Die Umwandlung kontinuierlicher Signale in diskrete Zeitpunkte.
  • Modulation: Wird verwendet, um digitale Signale auf analoge Trägerwellen zu übertragen, nicht zur Digitalisierung.
  • Codierung: Die Umwandlung von diskreten Werten in ein digitales Signal.

Teilaufgabe d

Welche Aussagen treffen auf Block Check Character zu?

  • Es ist ein Verfahren zur Fehlererkennung.
  • Es gehört zur Familie selbstkorrigierender Codes.
  • Es überträgt zusätzliche Paritätsbits.
  • Es erkennt alle zusammenhängenden Fehler.

Erläuterung:

  • Block Check Character (BCC) ist ein Fehlererkennungsverfahren.
  • Es ist kein selbstkorrigierender Code.
  • BCC verwendet zusätzliche Paritätsbits zur Fehlererkennung.
  • Es kann nicht alle zusammenhängenden Fehler erkennen, sondern nur solche, die durch die Paritätsprüfung entdeckt werden können.

Teilaufgabe e

Beim CRC-Verfahren wird ein Generatorpolynom verwendet. Welche ist die richtige Darstellung dieses Polynoms als Bitfolge?

  • 110 101
  • 110 10
  • 101 011
  • 110 011

Teilaufgabe f

Welche Aussagen über Network Address Translation (NAT) treffen zu?

  • NAT betrifft Abläufe auf Vermittlungsschicht.
  • NAT kann die Ports in TCP und UDP verändern.
  • NAT maskiert private IP-Adressen.
  • NAT verbessert die Leitungskodierung.

Erläuterung:

  • NAT arbeitet auf der Vermittlungsschicht (Schicht 3).
  • NAT kann TCP- und UDP-Ports verändern, um mehrere Geräte mit einer einzigen öffentlichen IP-Adresse zu unterstützen.
  • NAT maskiert private IP-Adressen, indem es sie in eine öffentliche IP-Adresse übersetzt.
  • NAT hat keinen Einfluss auf die Leitungskodierung.

Teilaufgabe g

Bei Ethernet (IEEE 802.3) wird eine Mindestrahmenlänge festgelegt, weil …

  • Ethernet einen hierarchischen Adressraum benutzt.
  • bei zu kurzem Rahmen der Konfliktparameter zu hoch wird.
  • damit die Kollisionserkennung funktionieren kann.
  • damit die Rahmengröße immer ein Vielfaches von 32 Bit ist.

Erläuterung:

  • Eine Mindestrahmenlänge ist erforderlich, damit die Kollisionserkennung funktioniert. Bei zu kurzen Rahmen könnte eine Kollision nicht rechtzeitig erkannt werden.

Teilaufgabe h

Welche der folgenden Angaben stehen in jedem IPv4-Header?

  • Zielport
  • IP-Adresse des Senders
  • Ziel IP-Adresse
  • IP-Adresse des nächsten Routers

Erläuterung:

  • Im IPv4-Header sind die IP-Adresse des Senders und die Ziel-IP-Adresse immer enthalten.
  • Der Zielport ist Teil des Transportschicht-Headers (z.B. TCP, UDP).
  • Die IP-Adresse des nächsten Routers steht nicht im IPv4-Header.

Teilaufgabe i

Welche Aussagen über TCP-Flusssteuerung treffen zu?

  • Die Flusssteuerung entlastet den Sender.
  • Die Flusssteuerung entlastet den Empfänger.
  • Die Flusssteuerung dient zur Begrenzung der Anzahl von Verbindungen in Transitznetzen.
  • Der Tahoe-Algorithmus ist ein Verfahren zur Flusssteuerung.
  • TCP verwendet das Sliding-Window-Protokoll (Schiebefensterprotokoll) zur Flusssteuerung.

Erläuterung:

  • Die Flusssteuerung ist dazu da, den Empfänger vor Überlastung zu schützen.
  • Der Tahoe-Algorithmus ist ein Algorithmus zur Stauvermeidung (Congestion Control) in Netzwerken und nicht der Flusssteuerung.
  • TCP verwendet das Sliding-Window-Protokoll, um den Datenfluss zu kontrollieren.

Teilaufgabe j

Welche Aussagen treffen auf DNS zu?

  • DNS bildet einen gegebenen Hostnamen auf höchstens eine IP-Adresse ab.
  • DNS ist ein Protokoll der Anwendungsschicht.
  • DNS bildet IP-Adressen auf MAC-Adressen ab.

Erläuterung:

  • DNS kann einen Hostnamen auf mehrere IP-Adressen abbilden (z.B. für Lastverteilung).
  • DNS ist ein Protokoll der Anwendungsschicht.
  • DNS bildet keine IP-Adressen auf MAC-Adressen ab. Dafür ist ARP (Address Resolution Protocol) zuständig.
  • DNS ist dafür zuständig, Hostnamen auf IP-Adressen abzubilden.

Aufgabe 3

Wie entsteht eine Protocol Data Unit (PDU) aus einer Service Data Unit (SDU)?

Achtung!

Falls das einer der ersten PDU Aufgaben in RNVS sind und du grad versuchst 4 gewinnt zu spielen kurz vor der Klausur, beachte das für die Ebene steht in der die PDU ist und du NICHT N minus PDU rechnen musst.

If you feel called out by this clue I have a question for you: this u?

Eine Protokollinstanz der Schicht N tauscht PDUs mit ihrer Peer-Entity aus.

1. Auf welcher Schicht befindet sich die Peer-Entity?

2. An welche Schicht wird die PDU aus Schicht N übergeben?

Schnittbildung: Ordnen Sie jeder der folgenden zwei Abbildungen einen der Begriffe Dienstschnitt, Protokollschnitt oder Systemschnitt zu.

(a)

flowchart BT
    subgraph Top
        LMU1[LMU] --> DFN1[DFN] --> USRN1[United States Research Network] --> MIT1[MIT Boston]
    end

    subgraph Middle
        LMU2[LMU] --> DFN2[DFN]
        DFN2 --> USRN2[United States Research Network]
        USRN2 --> MIT2[MIT Boston]
    end

    subgraph Bottom
        LMU3[LMU] --> Internet[Internet] --> MIT3[MIT Boston]
    end

Lösung:

(a) Diese Abbildung zeigt den Systemschnitt.

Begründung:

  • Die Abbildung stellt Verbindungen zwischen verschiedenen Netzwerken dar (LMU, DFN, United States Research Network, MIT Boston).
  • Es zeigt, wie diese Netzwerke miteinander verbunden sind, sei es direkt oder über das Internet.
  • Ein Systemschnitt beschreibt die physische oder logische Verbindung zwischen unterschiedlichen Systemen oder Netzwerken.
  • Die gezeigten Verbindungen ermöglichen die Interaktion und Kommunikation zwischen den Netzwerken.
  • Daher handelt es sich bei dieser Abbildung um einen Systemschnitt.

(b)

Genaues Bild bitte aus Blatt entnehmen

flowchart LR
    subgraph Left
        HTTP1[HTTP] --> TCP1[TCP] --> IP1[IP] --> Ethernet1[Ethernet]
    end

    Ethernet1 --> Intermediate1
    Intermediate1[(WAN)] --> Intermediate2
    Intermediate2 --> Ethernet2

    subgraph Right
        Ethernet2 --> IP2[IP] --> TCP2[TCP] --> HTTP2[HTTP]
    end

Lösung:

(b) Diese Abbildung zeigt den Protokollschnitt.

Begründung:

  • Die Abbildung stellt verschiedene Schichten des Netzwerkprotokollstapels dar (HTTP, TCP, IP, Ethernet).
  • Sie zeigt, wie diese Protokolle auf beiden Seiten der Kommunikation interagieren.
  • Ein Protokollschnitt beschreibt die Kommunikation zwischen gleichen Schichten (Peer-Entities) auf unterschiedlichen Systemen.
  • In der Abbildung kommunizieren die Protokolle (HTTP, TCP, IP, Ethernet) mit ihren entsprechenden Peer-Entities auf der anderen Seite des Netzwerks.
  • Daher handelt es sich bei dieser Abbildung um einen Protokollschnitt.

III. Domain Name System (DNS)

Gegeben sei folgende Konsolenausgabe einer DNS-Anfrage mit dig +trace www.ifi.lmu.de:

;; global options: +cmd
. 218188 IN NS h.root-servers.net.
. 218188 IN NS a.root-servers.net.
. 218188 IN NS c.root-servers.net.
. 218188 IN NS b.root-servers.net.
. 218188 IN NS d.root-servers.net.
. 218188 IN NS j.root-servers.net.
. 218188 IN NS f.root-servers.net.
. 218188 IN NS k.root-servers.net.
. 218188 IN NS m.root-servers.net.
. 218188 IN NS l.root-servers.net.
. 218188 IN NS i.root-servers.net.
. 218188 IN NS g.root-servers.net.
. 218188 IN NS e.root-servers.net.
;; Received 811 bytes from 85.214.20.141#53(85.214.20.141) in 18 ms

de. 172800 IN NS a.nic.de.
de. 172800 IN NS f.nic.de.
de. 172800 IN NS l.de.net.
de. 172800 IN NS n.de.net.
de. 172800 IN NS s.de.net.
de. 172800 IN NS z.nic.de.
;; Received 385 bytes from 193.0.14.129#53(k.root-servers.net) in 10 ms

lmu.de. 86400 IN NS dns1.lrz.de.
lmu.de. 86400 IN NS dns2.lrz.bayern.
lmu.de. 86400 IN NS dns3.lrz.eu.
;; Received 164 bytes from 194.246.96.1#53(z.nic.de) in 10 ms

www.ifi.lmu.de. 86400 IN CNAME stellenbosch.tcs.ifi.lmu.de
stellenbosch.tcs.ifi.lmu.de. 86400 IN A 141.84.94.144
tcs.ifi.lmu.de. 86400 IN NS ipa-s1.tcs.ifi.lmu.de.
tcs.ifi.lmu.de. 86400 IN NS kokytos.rz.informatik.uni-muenchen.de.
tcs.ifi.lmu.de. 86400 IN NS acheron.informatik.uni-muenchen.de.
;; Received 286 bytes from 141.40.9.211#53(dns2.lrz.bayern) in 1 ms

14.

(a) Wie viele DNS-Anfragen waren nötig, um den Hostnamen www.ifi.lmu.de wie oben abgebildet aufzulösen?

(b) Die URL http://www.ifi.lmu.de/ soll in einem Web-Browser angezeigt werden. Geben Sie die IPv4-Adresse des Rechners an, an den die http-Anfrage gestellt wird.

Die IPv4-Adresse des Rechners, an den die HTTP-Anfrage gestellt wird, ist 141.84.94.144. Diese Adresse wurde als Ergebnis der DNS-Anfrage erhalten.

Unsicher ob 141.84.94.144 oder 141.40.9.211

Gerne per Kommentar unten ausbessern falls falsch

Im Kontext der DNS-Anfrage wird der Hostname www.ifi.lmu.de aufgelöst. Der relevante Teil der Konsolenausgabe zeigt Folgendes:

www.ifi.lmu.de. 86400 IN CNAME stellenbosch.tcs.ifi.lmu.de
stellenbosch.tcs.ifi.lmu.de. 86400 IN A 141.84.94.144

Dies bedeutet:

  • www.ifi.lmu.de ist ein CNAME (Alias) für stellenbosch.tcs.ifi.lmu.de.
  • stellenbosch.tcs.ifi.lmu.de hat die IPv4-Adresse 141.84.94.144.

Warum ist die IPv4-Adresse 141.40.9.211 nicht korrekt?

  • 141.40.9.211 gehört zu einem der Nameserver (dns2.lrz.bayern), der während der DNS-Auflösung kontaktiert wurde, nicht zur Zieladresse des Web-Servers.

(c) Ist die oben angeführte DNS-Anfrage rekursiv, iterativ oder hybrid? Warum?

Iterativ, da die flag +trace bei dig verwendet wird und trace iterative abfragen durchführt. (Cool Tool for CLI commands (ex[lainshell]))

Erklärung Warum ist es iterativ?

Man kann es auch anders erkennen Die Konsolenausgabe zeigt mehrere Schritte der DNS-Auflösung:

  • Die Nameserver der Root-DNS-Zone.
  • Die Nameserver für die .de-Zone.
  • Die Nameserver für die lmu.de-Zone.
  • Die CNAME- und A-Datensätze für www.ifi.lmu.de.

15. Welches Transportprotokoll wird auf Schicht 4 des ISO/OSI-Referenzmodells bei DNS …

(a) … für Zonentransfer eingesetzt?

  • TCP stellt sicher, dass alle Datenpakete in der richtigen Reihenfolge ankommen und dass verlorene oder beschädigte Pakete erneut gesendet werden, was bei der Übertragung kompletter Zonendaten entscheidend ist.

(b) … für DNS-Anfragen empfohlen?

  • UDP ermöglicht schnelle Anfragen und Antworten, die in der Regel in einem einzigen Paket übertragen werden können. Dies macht es effizienter für die häufigen und meist kleinen DNS-Abfragen.

IV. Zusammenspiel verschiedener Protokolle

Aufgabenstellung

Das in der Abbildung skizzierte Netz besteht aus zwei Ethernets, die so mit einer noch nicht näher definierten Komponente X verbunden sind, dass Daten zwischen den Netzen übertragen werden können. Auf dem Client wird ein Browser-Programm ausgeführt, das eine Verbindung zu einem Webserver namens www aufbaut, um ein HTML-Dokument abzurufen.

Annahmen:

  • der Client kennt die IPv4-Adresse des DNS-Servers
  • der Client kennt lediglich den Hostname www, nicht dessen IPv4-Adresse
  • der DNS-Server kennt alle Hostnamen und die zugehörigen IPv4-Adressen

Genaues Bild bitte aus Blatt entnehmen

flowchart LR
    DNS[DNS-Server\n10.10.8.2/24\n00:30:05:79:55:0A] --> SwitchX
    WWW[WWW-Server\n10.10.8.3/24\n00:30:05:79:55:0D] --> SwitchX
    Client[Client\n00:30:05:79:55:55] --> SwitchX

    subgraph SwitchX [X]
        X1[Port X1\n00:30:05:79:55:B1]
        X2[Port X2\n00:30:05:79:55:B2]
    end

16. Gehen Sie im Folgenden davon aus, dass Komponente X ein Switch und die IPv4-Adresse des Clients 10.10.8.4 mit 24-Bit langer Netz-ID ist.

(a) An welche MAC-Adresse sendet der Client Rahmen, die DNS-Anfragen enthalten?

(b) An welche MAC-Adresse sendet der Client Rahmen, die DNS-Anfragen enthalten?

Developers Notice

Hier wird 2x nach MAC gefragt in dem Gedankenprotokoll. Ich gehe mal von aus es sollte einmal IP-Adresse sein.

(b*) An welche IP-Adresse sendet der Client Rahmen, die DNS-Anfragen enthalten?

17. Gehen Sie im Folgenden davon aus, dass Komponente X ein Router ist. Die IPv4-Adressen sind 192.168.1.2/28 für den Client, 192.168.1.1/28 für Port X1 des Routers und 10.10.8.1/24 für Port X2 des Routers.

(a) An welche MAC-Adresse sendet der Client HTTP-Anfragen?

(b) An welche IPv4-Adresse sendet der Client DNS-Anfragen?

(c) An welche MAC-Adresse versendet der Router einen Rahmen, mit der Ziel-IP 10.10.8.3 und dem Ziel-UDP-Port 53 (Standardport für DNS)?

18. Warum benötigen die Ports eines Routers IPv4-Adressen um Daten zwischen den Netzen übertragen zu können, die Ports eines Switches jedoch nicht?

Router benötigen IP-Adressen an ihren Ports, um Pakete zwischen verschiedenen Netzwerken zu routen, während Switches nur MAC-Adressen verwenden, um Datenpakete innerhalb desselben Netzwerks weiterzuleiten.

Detailliertere Antwort fürs Verständnis

Antwort:

  • Router:
    • IPv4-Adressen: Ein Router verwendet IPv4-Adressen an seinen Ports, um Pakete zwischen verschiedenen Netzwerken weiterzuleiten. Die IP-Adresse eines Routers dient dazu, das Routing der Pakete basierend auf den IP-Adressen zu ermöglichen. Der Router analysiert die Ziel-IP-Adresse eines Pakets und entscheidet, über welchen Port es weitergeleitet werden soll. Jeder Port des Routers muss eine IP-Adresse haben, um diese Routing-Funktionalität zu unterstützen.
  • Switches:
    • Keine IP-Adressen für Switching: Ein Switch arbeitet auf der Data Link-Schicht (Schicht 2 des OSI-Modells) und verwendet MAC-Adressen, um die Weiterleitung von Rahmen innerhalb eines einzelnen Netzwerks (Broadcast-Domain) zu steuern. Ein Switch benötigt keine IP-Adressen, da er keine Routing-Funktionen durchführt. Die MAC-Adresse eines Geräts wird verwendet, um den Rahmen an den entsprechenden Port innerhalb desselben Netzwerks zu senden.

V. Fragmentierung

Fragmentierung erklärt

Erklärung:

  • Fragmentierung teilt große Datenpakete in kleinere Fragmente auf, um sie über Netzwerke mit begrenzter Maximaler Übertragungsgröße (MTU) zu senden.
  • Jedes Fragment enthält:
    • Einen Teil der Nutzdaten
    • Steuerinformationen zur Reassembly
  • Der Empfänger nutzt diese Informationen, um die Fragmente korrekt zusammenzusetzen.
  • Zweck: Gewährleistet, dass große Pakete durch Netzwerke mit unterschiedlichen MTU-Größen übertragen werden können.

Aufgabenstellung

Betrachten Sie ein Netz bestehend aus zwei Endsystemen und zwei Routern, die mittels dreier Kanäle A, B, C verbunden sind mit Maximum Transfer Units (MTU, in Bytes) wie folgt:

  • Kanal A: 2500 Bytes
  • Kanal B: 280 Bytes
  • Kanal C: 1500 Bytes

Das Netz ist so konfiguriert, dass Fragmentierung in der Vermittlungsschicht durchgeführt wird. E1 schickt ein IPv4-Paket, das an E2 adressiert ist. (Hinweis: Byte = Oktett)

flowchart LR
    E1[Endsystem\nE1] --> |2500 Bytes| R1[Router\nR1]
    R1 --> |280 Bytes| R2[Router\nR2]
    R2 --> |1500 Bytes| E2[Endsystem\nE2]

19. Nennen Sie die Komponenten, die das IP-Paket fragmentieren, wenn seine Gesamtlänge

(a) 200 Byte beträgt.

Keine Fragmentierung nötig, da es durch alle Kanäle passt

(b) 1000 Byte beträgt.

Fragmentierung hier ist nötig, da Kanal nur 280 Bytes schafft

dementsprechend muss das IP-Paket fragmentieren

(c) 2000 Byte beträgt.

Fragmentierung hier ist nötig, da Kanal nur 280 Bytes schafft

dementsprechend muss das IP-Paket fragmentieren

Durch Kanal C passt das Fragmentierte Paket dann auch

20. Angenommen R1 soll folgendes IPv4-Paket an R2 weiterleiten:

| Header (20 Byte) | Nutzdaten (600 Byte) |

(a) Zeichnen Sie die Fragmente unter Angabe von Kopf- und Nutzdatenlänge (wie in der Aufgabenstellung), in der Reihenfolge, in der sie von R1 versendet werden!

Aufgabe wurde ausgebessert nach Input von Komillitonen. Danke! 🩵

  • Originalpaket: | Header (20 Byte) | Nutzdaten (600 Byte) |
  • Kleinster Kanal: 280 Bytes
  • Header: 20 Bytes
  • Maximale Nutzdaten pro Fragment: Bytes

Um sicherzustellen, dass die Nutzdatenlänge durch 8 teilbar ist, können wir maximal 256 Bytes Nutzdaten pro Fragment verwenden

Um sicherzustellen, dass die Nutzdatenlänge durch 8 teilbar ist, können wir maximal 256 Bytes Nutzdaten pro Fragment verwenden. Der Grund dafür ist die Offset-Fragmentierung

Um die größte mögliche Zahl kleiner oder gleich 260 zu finden, die durch 8 teilbar ist, gehen wir wie folgt vor:

Berechne:

Fragmente:

  1. Erstes Fragment:
    • Header-Länge: 20 Bytes
    • Nutzdatenlänge: 256 Bytes
  2. Zweites Fragment:
    • Header-Länge: 20 Bytes
    • Nutzdatenlänge: 256 Bytes
  3. Drittes Fragment:
    • Header-Länge: 20 Bytes
    • Nutzdatenlänge: 88 Bytes (der Rest der Nutzdaten: )

Korrigierte Tabelle der Fragmente:

FragmentnummerHeader-LängeNutzdatenlänge
120256
220256
32088

(b) Wie erkennt R2 beim ersten Fragment, dass es sich um ein Fragment handelt, dass es sich um ein Fragment handelt (und nicht um ein „vollständiges“ IPv4-Paket)?

setzt das Flags-Feld “More Fragments” (MF) auf 1, was darauf hinweist, dass noch weitere Fragmente folgen werden. Im letzten Fragment wird dieses Flag wieder auf 0 gesetzt.

Zusätzlich wird die Reihenfolge der Fragmente durch das Fragment-Offset-Feld im IP-Header erkannt. Dieses Feld gibt an, an welcher Stelle die Nutzdaten des aktuellen Fragments innerhalb des ursprünglichen Pakets beginnen, und hilft dem empfangenden Router, die Fragmente korrekt zusammenzusetzen.


VI. Adressierung

21. Angenommen der Block 141.84.0.0/16 wird mit der Subnetzmaske 255.255.255.192 aufgeteilt. Wie viele Subnetze lassen sich damit maximal realisieren?

  • Es lassen sich 1024 Subnetze realisieren
  • 255.255.255.192 Subnetzmaske besteht aus 26 1-ern
  • 141.84.0.0/16 aus 16 1-ern durch die /16 angedeutet
  • Diese einfach subtrahieren im Exponent

22. Bestimmen Sie die Broadcast-Adresse des Subnetzes 141.84.32.0/19!

Subnetz ist gleich:

→ Die 0er nun zu 1ern machen:

in binär umrechnen:

168421
11111

und

  • Addiere diese nun auf die ursprüngliche Adresse

Die Broadcast-Adresse lautet 141.84.63.255

23. Notieren Sie die IPv6-Adresse 1337:0000:0000:0000:1000:0000:0000:0001 maximal verkürzt, so dass keine kürzere vollständige Darstellung dieser Adresse in IPv6 existiert.

24. Ein Internetanbieter erhält das Subnetz 2001:CDE0:0000:0000:0000:0000:0000:0000/27. Dieses wird vollständig in vier gleich große Teilbereiche geteilt.

(a) Geben Sie die Länge der Netz-ID der entstehenden Teilnetze in Anzahl der Bits an!

  • 4 neue Subnetze benötigt

  • Wie viel Bits benötigen diese 4 neuen Subnetze jetzt?

    • → 4 neue Subnetze brauchen 2 Bits extra
  • Addiere diese zu den 27 Bits

→ NetzID = 29 Bit Lang

(NetzID ist eigtl immer die /<beliebige Zahl> hinter der IP Adresse in diesem Fall nun +2 wegen den +4 Subnetzen)

(b) Schreiben Sie die vier entstehenden Subnetze in CIDR-Notation auf!

Bin mir hier unsicher, gerne Kommentar falls Lösung bekannt

CIDR-Notation
1
2
3
4

Die ursprüngliche Adresse ist 2001:CDE0:0000:0000:0000:0000:0000:0000/27. Um dieses Subnetz in vier gleich große Teilnetze zu unterteilen, erweitern wir die Netz-ID von 27 auf 29 Bits. Das bedeutet, dass die ersten 29 Bits der Adresse unverändert bleiben und die verbleibenden Bits die spezifischen Subnetze bestimmen.

Da wir 2 zusätzliche Bits verwenden, um 4 Subnetze zu erstellen, erhöhen sich die Werte der letzten Bits um 2^3 Schritte (also in Schritten von 8 im Hexadezimal-Format).

Die vier Subnetze sind:

  1. Erstes Subnetz:

    • Netzwerkadresse: 2001:CDE0:0000:0000:0000:0000:0000:0000/29
    • Erklärung: Die zusätzlichen Bits sind 00, daher bleibt die Adresse unverändert.
  2. Zweites Subnetz:

    • Netzwerkadresse: 2001:CDE0:0000:0000:0000:0000:0000:0020/29
    • Erklärung: Die zusätzlichen Bits sind 01, was im letzten Segment (16er Stelle) eine Erhöhung um 8 (20 in Hex) ergibt.
  3. Drittes Subnetz:

    • Netzwerkadresse: 2001:CDE0:0000:0000:0000:0000:0000:0040/29
    • Erklärung: Die zusätzlichen Bits sind 10, was im letzten Segment (16er Stelle) eine Erhöhung um 16 (40 in Hex) ergibt.
  4. Viertes Subnetz:

    • Netzwerkadresse: 2001:CDE0:0000:0000:0000:0000:0000:0060/29
    • Erklärung: Die zusätzlichen Bits sind 11, was im letzten Segment (16er Stelle) eine Erhöhung um 24 (60 in Hex) ergibt.

Zusammenfassung der vier Subnetze in CIDR-Notation:

CIDR-Notation
12001:CDE0:0000:0000:0000:0000:0000:0000/29
22001:CDE0:0000:0000:0000:0000:0000:0020/29
32001:CDE0:0000:0000:0000:0000:0000:0040/29
42001:CDE0:0000:0000:0000:0000:0000:0060/29

Erklärung

Die ursprüngliche Netz-ID hat eine Länge von 27 Bits, was bedeutet, dass die ersten 27 Bits der IP-Adresse das Netzwerk identifizieren. Um vier Subnetze zu erstellen, benötigen wir 2 zusätzliche Bits, wodurch sich die Netz-ID auf 29 Bits verlängert. Jedes der vier Subnetze hat daher eine Netz-ID von 29 Bits, und die verbleibenden Bits in der Adresse identifizieren spezifische Subnetze. Die Adressen der Subnetze ändern sich in Schritten, die durch die zusätzlichen Bits bestimmt werden, was zu den spezifischen Adressen oben führt.


VII. Ethernet-Topologie

25. Gegeben sei die abgebildete Ethernet-Topologie.

flowchart LR
    F[Device F] --> R2[Router R2]
    R2 --> R0[Router R0]
    R0 --> R1[Router R1]
    R1 --> Hub[Hub B]
    R0 --> Switch[Switch A]

(a) Wie viele Kollisionsdomänen zeigt die Abbildung?

Kollisionsdomänen erklärt

Erklärung:

  • Kollisionsdomäne: Ein Netzwerksegment, in dem Datenpakete kollidieren können, wenn sie gleichzeitig gesendet werden.
  • Moderne Netzwerke: Switches und Router unterteilen Netzwerke in kleinere Kollisionsdomänen.
  • Rechner F mit Router R2: Eine Kollisionsdomäne.

  • Router R1 mit Hub und Rechner B: Eine Kollisionsdomäne (Hub teilt das Segment nicht weiter).

  • Router R0 mit Switch und Rechner A: Eine Kollisionsdomäne (Switch teilt das Netzwerk in mehrere Kollisionsdomänen, aber hier nur eine benötigt).

    Antwort: Es gibt insgesamt 3 Kollisionsdomänen.

(b) Vergeben Sie für die Rechner A, B, F und für die drei Schnittstellen des Routers je eine IPv6-Adresse, so dass alle Rechner in unterschiedlichen Subnetzen liegen und jeder Rechner den Router erreichen kann.

Benutzen Sie hierfür die Subnetze fd00::a:0/112, fd00::b:0/112 sowie fd00::f:0/112.

RechnerIP-AdresseSchnittstelleIP-Adresse Router
Afd00::a:1R0fd00::a:0
Bfd00::b:1R1fd00::b:0
Ffd00::f:1R2fd00::f:0
  • Jeder Rechner liegt in einem eigenen Subnetz (fd00::a:0/112, fd00::b:0/112, fd00::f:0/112).
  • Jeder Rechner kann den Router erreichen, da der Router für jedes Subnetz eine Schnittstelle mit der entsprechenden IP-Adresse hat.

(c) Schreiben Sie eine default-Route für die Routingtabelle von Rechner F, so dass IP-Nachrichten an die Rechner A und B korrekt weitergeleitet werden!


VII. Transmission Control Protocol (TCP) TCP

26. Überlastkontrolle

Die folgende Abbildung zeigt die zeitliche Entwicklung einer kritischen Kenngröße beim Tahoe-Algorithmus zur Überlastkontrolle. Der Ablauf ist in die Phasen a, b und c eingeteilt.



xychart-beta

title "TCP Reno (H)"

x-axis Segment

y-axis "___" 0 --> 25

line [1, 2, 4, 8, 16, 17, 18, 19, 20]

(a) Wie lautet die korrekte Beschriftung für die y-Achse?

Congestion Window (ConWin):

  • Wichtige Kenngröße in der TCP-Überlastkontrolle.
  • Bestimmt die maximale Anzahl an Bytes, die der Sender ohne Bestätigung senden darf.
  • Erhöhung des Fensters: Sender kann mehr Daten senden.
  • Reduzierung des Fensters: Hinweis auf Netzüberlastung.

(b) Benennen Sie Phase a:

Slow Start

  • In der Slow Start-Phase beginnt der TCP-Algorithmus mit einem kleinen Congestion Window.
  • Das Fenster wächst exponentiell mit jedem empfangenen ACK, um die verfügbare Bandbreite schnell zu nutzen.
  • Das Wachstum wird fortgesetzt, bis eine bestimmte Schwelle erreicht oder ein Verlustsignal empfangen wird.

(c) Benennen Sie Phase b:

Congestion Avoidance:

  • In der Congestion Avoidance-Phase wird das Wachstum des Congestion Window linear anstelle von exponentiell erhöht.
  • Diese Phase wird erreicht, wenn die Slow-Start-Schwelle überschritten wird.
  • Der Algorithmus versucht, die Netzwerklast zu vermeiden und gleichzeitig die verfügbare Bandbreite effizient zu nutzen.

(d) Was ist ein frühzeitiger Indikator für Segmentverlust, noch bevor ein timeout für ein Segment auftritt?

  • Drei Duplizierte ACKs

Drei Duplizierte ACKs:

  • Drei doppelte ACKs werden gesendet, wenn ein Paket verloren geht, aber der Empfänger weiterhin ACKs für die letzten korrekt empfangenen Pakete sendet.
  • Dies signalisiert dem Sender, dass ein Paket mit hoher Wahrscheinlichkeit verloren gegangen ist.
  • Im TCP Reno-Algorithmus wird das verlorene Paket sofort neu übertragen, und der Sender wechselt in die Fast Recovery-Phase.

(e) Nennen Sie ein Verfahren zur Optimierung des Überlastkontrollalgorithmus nach Auftreten eines timeouts.

  • Halbieren des Threshols nach dem Timeouts

Summary

Halbieren des Thresholds nach dem Timeout:

  • Nach einem Timeout wird die Slow-Start-Schwelle (SSTHRESH) auf die Hälfte der aktuellen Fenstergröße gesetzt.
  • Dies führt dazu, dass der Sender die Slow Start-Phase neu beginnt, jedoch mit einer reduzierten Fenstergröße.
  • Das Ziel ist es, die Überlastung zu reduzieren und sich allmählich wieder an die verfügbare Bandbreite anzupassen.

VII. Transmission Control Protocol (TCP) TCP

26. Überlastkontrolle

Die folgende Abbildung zeigt die zeitliche Entwicklung einer kritischen Kenngröße beim Tahoe-Algorithmus zur Überlastkontrolle. Der Ablauf ist in die Phasen a, b und c eingeteilt.

sequenceDiagram
    participant Sender
    participant Empfänger

    Note right of Empfänger: [ ] [ ] [ ] [ ] <br/> Square representing some process or data

    Sender->>Empfänger: 1024 Byte, Seq = 0
    Note right of Empfänger: [ ] [ ] [ ] [ ] <br/>Square representing some process or data
    Empfänger-->>Sender: ACK = … , Win = …

    Sender->>Empfänger: 2048 Byte, Seq = …
    Note right of Empfänger: [ ] [ ] [ ] [ ] <br/> Square representing some process or data
    Empfänger-->>Sender: ACK = … , Win = …

(a) Vervollständigen Sie die fünf fehlenden Angaben in der Abbildung mit Sequenznummern (Seq, 1x), Bestätigungsnummern (ACK. 2x) und Fenstergrößen (Win. 2x).

sequenceDiagram
    participant Sender
    participant Empfänger

    Note right of Empfänger: [ ] [ ] [ ] [ ] <br/> Square representing some process or data

    Sender->>Empfänger: 1024 Byte, Seq = 0
    Note right of Empfänger: [ ] [ ] [ ] [ ] <br/>Square representing some process or data
    Empfänger-->>Sender: ACK = 1024 , Win = 3072

    Sender->>Empfänger: 2048 Byte, Seq = 1024
    Note right of Empfänger: [ ] [ ] [ ] [ ] <br/> Square representing some process or data
    Empfänger-->>Sender: ACK = 3072 , Win = 1024

(b) Markieren Sie den belegten Pufferspeicher des Empfängers in oben stehender Abbildung. Nehmen Sie an, dass der Pufferspeicher des Empfängers zu Beginn der skizzierten Übertragung leer ist.

Hinweis: 1 Kästchen entspricht 1024 Byte.

sequenceDiagram
    participant Sender
    participant Empfänger

    Note right of Empfänger: [ ] [ ] [ ] [ ] <br/> Square representing some process or data

    Sender->>Empfänger: 1024 Byte, Seq = 0
    Note right of Empfänger: [x] [ ] [ ] [ ] <br/>Square representing some process or data
    Empfänger-->>Sender: ACK = 1024 , Win = 3072

    Sender->>Empfänger: 2048 Byte, Seq = 1024
    Note right of Empfänger: [x] [x] [x] [ ] <br/> Square representing some process or data
    Empfänger-->>Sender: ACK = 3072 , Win = 1024

(c) Durch welches Ereignis wird der Pufferspeicher auf Empfängerseite wieder frei?

Wenn die Anwendung auf Empfängerseiten auf die Daten vom Pufferspeicher zugreift und diese verwendet, wird der Pufferspeicher wieder freigegeben


VIII. Ethernet, CSMA

28. Vervollständigen Sie das CSMA/CD (1-persistent) Ablaufdiagramm.

Genaues Bild bitte aus Blatt entnehmen

Doest ist nur ein Symbolbild

flowchart TD
    A([Station ist\nsendebereit]) --> B{Abhören\nKanal}
    B -.->|Carrier\nSense| B
    B -->|belegt| C([3])
    B -->|frei| D[["Daten\nsenden\n1"]]
    D -->|Kollision\nentdeckt| E([2])
    D -->|keine\nKollision| F(((0)))
    C --> B
    E --> B
    D --> D

  1. Kanal abhören
  2. JAM-Signal schicken
  3. Zufällige zeit abwarten und neuversuch

29. Sie wollen einen Rahmen mit einer Gesamtlänge von 128 Byte übertragen. Die effektive Übertragungsrate beträgt bit/sec. Die Ausbreitungsgeschwindigkeit des Signals im Medium beträgt

Themen dieser Aufgabe:

  • Rahmenübertragung:
    • Definition: Prozess der Übermittlung von Datenpaketen über ein Netzwerk.
    • Bedeutung: Rahmen enthalten sowohl die Nutzdaten als auch Steuerinformationen (z.B. Header und Trailer), die für die korrekte Übertragung und Verarbeitung der Daten notwendig sind.
  • Gesamtlänge des Rahmens:
    • Definition: Die vollständige Größe des zu übertragenden Datenrahmens, gemessen in Bytes oder Bits.
    • Beispiel: In dieser Aufgabe beträgt die Gesamtlänge des Rahmens 128 Byte, was die Gesamtmenge der zu übertragenden Daten darstellt.
  • Effektive Übertragungsrate:
    • Definition: Die tatsächliche Geschwindigkeit, mit der Daten über ein Netzwerk gesendet werden, angegeben in Bits pro Sekunde (bps).
    • Bedeutung: Diese Rate bestimmt, wie schnell die Daten von einem Punkt zum anderen übertragen werden können.
    • Beispiel: In dieser Aufgabe beträgt die effektive Übertragungsrate Bit pro Sekunde.
  • Ausbreitungsgeschwindigkeit des Signals im Medium:
    • Definition: Die Geschwindigkeit, mit der ein Signal durch das Übertragungsmedium (z.B. Kupferkabel, Glasfaserkabel, Funkwellen) reist, angegeben in Metern pro Sekunde.
    • Bedeutung: Diese Geschwindigkeit beeinflusst die Verzögerung, die das Signal beim Reisen durch das Medium erfährt.
    • Beispiel: In dieser Aufgabe beträgt die Ausbreitungsgeschwindigkeit .

(a) Berechnung der maximalen Leitungslänge bei CSMA/CD

1. Übertragungszeit eines Rahmens

  • Länge des Rahmens: 128 Byte
  • 1 Byte = 8 Bits
  • Gesamtanzahl der Bits im Rahmen:
  • Effektive Übertragungsrate:

2. Maximale Leitungslänge

  • Ausbreitungsgeschwindigkeit des Signals im Medium:
  • Round-Trip Time (RTT) ist die Zeit, die das Signal benötigt, um die maximale Entfernung hin und zurück zu durchlaufen.

Setzen wir RTT gleich der Übertragungszeit und lösen nach der Leitungslänge auf:

Maximale Leitungslänge: 10.24 km

(b) Auswirkung einer erhöhten Übertragungsrate auf die maximale Leitungslänge

Bei einer erhöhten Übertragungsrate wird die Übertragungszeit eines Rahmens kürzer. Betrachten wir diesen Effekt im Detail:

Beispiel: Verdopplung der Übertragungsrate

  • Neue Übertragungsrate:

Neue Übertragungszeit des Rahmens:

Setzen wir diese neue Übertragungszeit in die Gleichung für die Leitungslänge ein:

Die maximale Leitungslänge halbiert sich in diesem Fall auf 5.12 km.

Zusammenfassung:

Wenn die effektive Übertragungsrate erhöht wird, wird die Übertragungszeit eines Rahmens kürzer, was zur Folge hat, dass die maximale Leitungslänge zur zuverlässigen Kollisionskennung kürzer wird. Das bedeutet, dass bei einer höheren Übertragungsrate die Netzwerksegmente kleiner sein müssen, um Kollisionen effektiv erkennen zu können.


IX. Von Signalen zu Bitströmen

30. Im Folgenden finden Sie leere Koordinatensysteme zur Visualisierung von Signalmodulation. Zeichnen Sie in den Koordinatensystemen jeweils ein Beispiel der geforderten Modulationsart, sodass die Bitfolge 1001 übertragen wird.

Hinweis: Wie eine logische 1 bzw. 0 kodiert wird, ist für jedes Modulationsverfahren frei wählbar.



xychart-beta

title "Signal vs Zeit"

x-axis Zeit

y-axis Signal

line [0, 0]

In vier Abschnitte geteilt 1 | 0 | 0 | 1

Klappe Variablen und Funktion zur Seite und scrolle raus falls nötig im Iframe

(a) Amplituden-Modulation

In der Amplitudenmodulation (AM) wird die Amplitude des Trägersignals verändert, um Informationen zu übertragen. Für die Bitfolge 1001 könnten wir beispielsweise definieren:

  • Logische 1: Amplitude
  • Logische 0: 0

(b) Frequenz-Modulation

In der Frequenzmodulation (FM) wird die Frequenz des Trägersignals verändert, um Informationen zu übertragen. Für die Bitfolge 1001 könnten wir beispielsweise definieren:

  • Logische 1: Hohe Frequenz
  • Logische 0: Niedrige Frequenz

(c) Phasen-Modulation

In der Phasenmodulation (PM) wird die Phase des Trägersignals verändert, um Informationen zu übertragen. Für die Bitfolge 1001 könnten wir beispielsweise definieren:

  • Logische 1: Phasensprung von 180°
  • Logische 0: Keine Phasenänderung

31. Wie viele Bits pro Signalschritt werden übertragen, wenn 16 Signalzustände (Symbole) unterscheidbar sind? Wie verhalten sich somit Bit- und Baudrate?

Wenn 16 unterschiedliche Signalzustände (Symbole) verwendet werden, können wir die Anzahl der Bits pro Signalschritt berechnen, indem wir die Basis-2-Logarithmus von 16 berechnen:

Das bedeutet, dass jeder Signalschritt 4 Bits repräsentiert.

Bitrate und Baudrate

  • Bitrate ist die Anzahl der Bits, die pro Sekunde übertragen werden.
  • Baudrate ist die Anzahl der Symbols (Signalschritte), die pro Sekunde übertragen werden.

Da jeder Signalschritt 4 Bits enthält, ist die Bitrate viermal so hoch wie die Baudrate:

Zusammenfassung

Wenn 16 unterscheidbare Signalzustände verwendet werden, entspricht jeder Signalschritt 4 Bits. Die Bitrate ist somit viermal so hoch wie die Baudrate.


X. Von Signalen zu Bitströmen

32. Gegeben seien die obere Grenzfrequenz sowie die untere Grenzfrequenz eines idealen Mediums.

Themen dieser Aufgabe:

  • Obere und untere Grenzfrequenz:
    • Definition: Die oberen und unteren Frequenzgrenzen eines Mediums, zwischen denen das Medium Signale übertragen kann.
    • Beispiel: In dieser Aufgabe sind die obere Grenzfrequenz und die untere Grenzfrequenz gegeben.
  • Bandbreite des Mediums:
    • Definition: Der Frequenzbereich, in dem ein Medium Signale übertragen kann. Sie wird durch die Differenz zwischen der oberen und unteren Grenzfrequenz bestimmt.
    • Bedeutung: Die Bandbreite ist ein Maß für die Datenübertragungsfähigkeit des Mediums; größere Bandbreiten ermöglichen höhere Datenübertragungsraten.
  • Abtasttheorem von Shannon und Nyquist:
    • Definition: Ein fundamentales Prinzip der Signalverarbeitung, das besagt, dass ein kontinuierliches Signal mindestens mit der doppelten Frequenz seiner höchsten Frequenzkomponente abgetastet werden muss, um es vollständig und fehlerfrei rekonstruieren zu können.
    • Bedeutung: Bestimmt die Mindestabtastrate () für die Umwandlung eines kontinuierlichen Signals in ein zeitdiskretes Signal.
    • Beispiel: Die Berechnung von in dieser Aufgabe basiert auf den gegebenen Grenzfrequenzen und dem Abtasttheorem.

(a) Wie hoch ist die Bandbreite des Mediums?

Die Bandbreite eines Mediums ist definiert als die Differenz zwischen der oberen und der unteren Grenzfrequenz.

Setzen wir die gegebenen Werte ein:

Die Bandbreite des Mediums beträgt 0,7 GHz oder 700 MHz.

(b) Wie hoch muss gemäß dem Abtasttheorem von Shannon und Nyquist für zeitdiskrete Signale sein?

Das Abtasttheorem von Shannon und Nyquist besagt, dass die Abtastfrequenz mindestens doppelt so hoch sein muss wie die höchste Frequenz des Signals, um es vollständig rekonstruieren zu können.

Die höchste Frequenz des Signals in diesem Fall ist die obere Grenzfrequenz .

Die Abtastfrequenz muss daher mindestens

sein.

Setzen wir den gegebenen Wert für ein:

Die Abtastfrequenz muss also mindestens 5,6 GHz betragen.


XI. Cyclic Redundancy Check

33. Gegeben sei das Generatorpolynom .

(a) Durch wie viele Bits wird G bei CRC repräsentiert?

Da:

Antwort: wird somit durch die 4 Bits repräsentiert

(b) Es soll die Nachricht 11 00 11 CRC-geschützt übertragen werden. Berechnen Sie die zu übertragende Bitfolge (inkl. CRC-Prüfsumme!) unter der Verwendung des Generatorpolynoms G.

Aufgabe wurde ausgebessert nach Input von Komillitonen. Danke! 🩵

  • Uhrzeit hat mir nicht gut getan my bad
110011000 : 1011 =
1011
----
01111
 1011
 ----
 01001
  1011
  ----
  001000
    1011
    ----
    00110 → Rest ist 110

zu übertragende Bitfolge:

Devs Notice: 404 Sleep not found

  • Es ist gerade 04:36 Uhr und ich habe den CRC-Alg hier schon ausführlich durchgeführt Cyclic Redundancy Check RNVS-Blatt-12
  • Das ganze Blatt hat mich mit Erklärungen und knapp 65.000 chars und 45-60min read time mehr Zeit gekostet als erwartet (~ 4-5hrs) und CRC ist relativ simpel aber nervig zum aufschreiben in ASCII Plaintext weswegen ich es jz auslasse
  • Es sollte als Ergebnis rauskommen
  • EDIT: Habe die Berechnung nun im Nachhinein hinzugefügt, da die CRC-Fehlerhaft war
110011000 : 1011 =
1011
----
01111
 1011
 ----
 01001
  1011
  ----
  001000
    1011
    ----
    00110 → Rest ist 110

(c) Nehmen Sie an, dass Sie die CRC-geschützte Bitfolge 10 01 11 00 empfangen haben. Zeigen Sie, dass die empfangene Bitfolge unter Verwendung des Generatorpolynoms G korrekt ist (inkl. Rechnung). Markieren Sie in Ihrer Rechnung die Stelle, an der der Empfänger die Korrektheit ablesen kann.

Somit ist die Bitfolge fehlerfrei

Devs Notice: 404 Sleep not found