6.1 Layering (Stratificazione)
6.1 Layering (Stratificazione)
Nell'architettura IP, la scelta di quale dimensione di datagramma inviare è fatta da un protocollo a un livello sopra IP. Ci riferiamo a tale protocollo come un "packetization protocol" (protocollo di pacchettizzazione). I protocolli di pacchettizzazione sono solitamente protocolli di trasporto (ad esempio, TCP) ma possono anche essere protocolli di livello superiore (ad esempio, protocolli costruiti su UDP).
Implementare PMTU Discovery nei livelli di pacchettizzazione semplifica alcuni dei problemi tra livelli, ma ha diversi svantaggi: l'implementazione potrebbe dover essere rifatta per ogni protocollo di pacchettizzazione, diventa difficile condividere le informazioni PMTU tra diversi livelli di pacchettizzazione, e lo stato orientato alla connessione mantenuto da alcuni livelli di pacchettizzazione potrebbe non estendersi facilmente per salvare le informazioni PMTU per lunghi periodi.
Riteniamo quindi che il livello IP dovrebbe memorizzare le informazioni PMTU e che il livello ICMP dovrebbe elaborare i messaggi Datagram Too Big ricevuti. I livelli di pacchettizzazione devono comunque essere in grado di rispondere ai cambiamenti nel Path MTU, cambiando la dimensione dei datagrammi che inviano, e devono anche essere in grado di specificare che i datagrammi vengano inviati con il bit DF impostato. Non vogliamo che il livello IP imposti semplicemente il bit DF in ogni pacchetto, poiché è possibile che un livello di pacchettizzazione, forse un'applicazione UDP fuori dal kernel, sia incapace di cambiare la dimensione del suo datagramma. I protocolli che coinvolgono la frammentazione intenzionale, sebbene ineleganti, a volte hanno successo (NFS è l'esempio principale), e non vogliamo rompere tali protocolli.
Per supportare questa stratificazione, i livelli di pacchettizzazione richiedono un'estensione dell'interfaccia di servizio IP definita in [1]:
Un modo per apprendere i cambiamenti nel valore di MMS_S (dimensione massima del messaggio di trasporto di invio), che è derivato dal Path MTU sottraendo la dimensione minima dell'intestazione IP.