Zum Hauptinhalt springen

6.1 Layering (Schichtung)

6.1 Layering (Schichtung)

In der IP-Architektur wird die Wahl, welche Größe von Datagramm gesendet werden soll, von einem Protokoll auf einer Schicht über IP getroffen. Wir bezeichnen ein solches Protokoll als "packetization protocol" (Paketisierungsprotokoll). Paketisierungsprotokolle sind in der Regel Transportprotokolle (zum Beispiel TCP), können aber auch Protokolle höherer Schichten sein (zum Beispiel Protokolle, die auf UDP aufgebaut sind).

Die Implementierung von PMTU Discovery in den Paketisierungsschichten vereinfacht einige der Probleme zwischen den Schichten, hat aber mehrere Nachteile: Die Implementierung muss möglicherweise für jedes Paketisierungsprotokoll neu durchgeführt werden, es wird schwierig, PMTU-Informationen zwischen verschiedenen Paketisierungsschichten zu teilen, und der verbindungsorientierte Zustand, der von einigen Paketisierungsschichten aufrechterhalten wird, lässt sich möglicherweise nicht leicht erweitern, um PMTU-Informationen für lange Zeiträume zu speichern.

Wir glauben daher, dass die IP-Schicht PMTU-Informationen speichern sollte und dass die ICMP-Schicht empfangene Datagram Too Big Nachrichten verarbeiten sollte. Die Paketisierungsschichten müssen dennoch in der Lage sein, auf Änderungen der Path MTU zu reagieren, indem sie die Größe der von ihnen gesendeten Datagramme ändern, und müssen auch in der Lage sein anzugeben, dass Datagramme mit gesetztem DF-Bit gesendet werden. Wir möchten nicht, dass die IP-Schicht einfach das DF-Bit in jedem Paket setzt, da es möglich ist, dass eine Paketisierungsschicht, vielleicht eine UDP-Anwendung außerhalb des Kernels, nicht in der Lage ist, ihre Datagrammgröße zu ändern. Protokolle mit beabsichtigter Fragmentierung sind zwar unelegant, aber manchmal erfolgreich (NFS ist das Hauptbeispiel), und wir möchten solche Protokolle nicht brechen.

Um diese Schichtung zu unterstützen, erfordern Paketisierungsschichten eine Erweiterung der in [1] definierten IP-Service-Schnittstelle:

Eine Möglichkeit, von Änderungen im Wert von MMS_S (maximale Sendetransportnachrichtengröße) zu erfahren, der aus der Path MTU durch Subtraktion der minimalen IP-Header-Größe abgeleitet wird.