Menu Close

Advanced Internetworking (Vorlesung 7)

Heute diskutieren wir die Mechanismen von Internetprotokollen, wie Feedback Loops, Checksums, Flow Control und Sequenznummern.

Anfang2-msc-ain-internet-proto-design-160510 – Seite 20
Ende2-msc-ain-internet-proto-design-160510 – Seite 35

Design Elemente

Was ist eine Prüfsumme (Checksum)?

  • Ein Wert, mit dem die Integrität von Daten überprüft werden kann
  • Wird aus den Ausgangsdaten berechnet und erlaubt die Erkennung von mindestens einem Bitfehler
  • Der Empfänger berechnet aus den empfangenen Daten die Prüfsumme und vergleicht diese mit der übertragenen Prüfsumme des Senders

Warum macht es Sinn, eine Checksum bereits auf Layer-2 zu verwenden?

  • Wird durch einen Bitfehler die Ziel-IP-Adresse einer Nachricht auf einen anderen, im Netzwerk vorhandenen, Host geändert, so empfängt dieser die Nachricht und entpackt sie fälschlicherweise komplett
  • Dieser Prozess verbraucht unnötig CPU-Zyklen, außer es wird bereits auf dem niedrigeren Layer erkannt, dass die Nachricht fehlerhaft ist

Was ist eine Feedback-Loop?

  • Grundlegend handelt es sich um ein System, bei dem der Output bzw. die Reaktion dazu vom Empfänger oder einem Netzwerkknoten wieder als Input eingespeist wird
  • Dadurch lässt sich validieren, ob die Pfade korrekt funktionieren und die Endpunkte erreichbar sind
  • Beim Real-Time Transport Protocol (RTP) werden Informationen durch das RealTime Transfer Control Protocol (RTCP) zurück geliefert (vgl. Abbildung 1)
  • Anhand dessen, können beispielsweise Anpassungen an der Dienstqualität (Quality of Service) oder Synchronität vorgenommen werden
Feedback-Loop durch das RealTime Transfer Control Protocol (RTCP)

Was ist Flusskontrolle (Flow Control)?

  • Eine Funktion von Kommunikationsprotokollen zur Anpassung der Übertragungsgeschwindigkeit von asynchron arbeitenden Endgeräten
  • Hierbei teilt die empfangende Station dem Sender kontinulierlich ihre Aufnahmefähigkeit (Window Size) mit
  • Der Sender passt daraufhin seine Übertragungsgeschwindigkeit der Aufnahmefähigkeit an

Wie wird die Übertragungsrate bei Telefonie angepasst?

  • Sprache bzw. Telefonie verwendet sogenannte Codecs
  • Diese haben eine jeweils fest definierte Bitrate (G.711 = 80 Kbps)
  • Sind die Kapazitäten ausgeschöpft, wird ein Codec mit niedriger Qualität und geringerer Übertragungsrate gewählt

Was ist die TCP-Sequenznummer?

  • 32 Bit großes Feld im TCP-Header zur Sicherstellung einer vollständigen Übertragung in der richtigen Reihenfolge und ohne Duplikate
  • TCP-Segmente können durch die inkrementierende Sequenznummer sortiert werden, da diese in unterschiedlicher Reihenfolge beim Empfänger ankommen können
  • Die Start-Sequenznummer ist eine zufällig Zahl

Warum wird eine zufällige TCP-Sequenznummer verwendet?

  • Um Sicherheitsrisiken zu vermeiden

Was passiert wenn der komplette Sequenznummernraum durchlaufen ist?

  • Dies findet spätestens dann statt, wenn 4096 MB über das Netzwerk übertragen wurden
  • Sobald dieser Zeitpunkt erreicht ist, findet ein sogenannter wrap around statt und die Zahlen beginnen von Vorne
  • Ab diesem Augenblick kann nicht klar definiert werden, ob eine Nachricht zu den ersten 4096 MB gehört, eine Retransmission ist oder zum nächsten Zyklus gehört
  • Maximum Segment Lifetime (MSL) und TCP Sequence Number Wrapping (PAWS) werden hierfür als Lösung verwendet

Was ist die MSL?

  • Sie gibt die maximale Lebensdauer eines Segmentes im Netz an und liegt üblicherweise bei 2 Minuten
  • Sie dient auch als Timeout für das erneute Senden eines Paketes, wenn keine Quittierung bis zum Ablauf der Zeit erfolgt ist
  • Für eine fehlerfreie Kommunikation muss folgendes Kriterium erfüllt sein: \( \frac{2^{31}}{\text{Byte pro Sekunde}} > MSL (secs) \)
  • Je schneller die Übertragungsgeschwindigkeit ist, desto anfälliger wird dieses Prinzip für Fehler (vgl. Tabelle)
GeschwindigkeitDauer bis zum Wrap
56 kbps~ 3,6 Tage
10 Mbps~ 30 Minuten
100 Mbps~ 170 Sekunden
1 Gbps~ 17 Sekunden

Was ist das PAWS?

  • Für PAWS wird die TCP-Option Timestamp in jedem Segment (SEG.TSval) benötigt
  • Damit der Mechanismus funktioniert, wird ausgenutzt, dass es sich um einen monoton, steigenden Wert handelt
  • Nachrichten werden verworfen, wenn der Zeitstempel (deutlich) geringer ist, als der von kürzlich empfangenen Nachrichten dieser Verbindung
  • Eine Zeitsynchronisierung ist nicht erforderlich, da nur mit dem Zeitstempeln des Absenders gearbeitet wird

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.