Passa al contenuto principale

5.3 Fragmentation (Frammentazione)

5.3 Fragmentation (Frammentazione)

I pacchetti con capacità ECN possono avere il bit DF (Don't Fragment, non frammentare) impostato. Il riassemblaggio di pacchetti frammentati NON DEVE perdere l'indicazione di congestione. In altre parole, se uno qualsiasi dei frammenti di un pacchetto IP da riassemblare ha il codepoint CE impostato, deve essere intrapresa una delle seguenti due azioni:

  • Impostare il codepoint CE sul pacchetto riassemblato. Tuttavia, questo NON DEVE accadere se uno qualsiasi degli altri frammenti che contribuiscono a quel riassemblaggio porta il codepoint Not-ECT.

  • Scartare il pacchetto per qualsiasi motivo diverso dal riassemblaggio.

Se entrambe le azioni sono applicabili, è possibile scegliere l'una o l'altra. Il riassemblaggio di pacchetti frammentati NON DEVE modificare il codepoint ECN quando tutti i frammenti portano lo stesso codepoint.

Notiamo che poiché RFC 2481 non specificava il comportamento di riassemblaggio, le implementazioni ECN più vecchie conformi a quell'RFC sperimentale non necessariamente eseguono correttamente il riassemblaggio in termini di preservazione del codepoint CE dai frammenti. I mittenti possono evitare le conseguenze di questo comportamento impostando il bit DF nei pacchetti con capacità ECN.

Possono presentarsi situazioni in cui la specifica di riassemblaggio di cui sopra non è sufficientemente precisa. Ad esempio, se c'è un'entità malevola o corrotta sul percorso al punto di frammentazione o dopo di esso, i frammenti di pacchetto potrebbero portare un mix di codepoint ECT(0), ECT(1) e/o Not-ECT. La specifica di riassemblaggio di cui sopra non pone requisiti sul riassemblaggio dei frammenti in questo caso. Nelle situazioni in cui è necessario un comportamento di riassemblaggio più preciso, le specifiche di protocollo dovrebbero invece specificare che il DF DEVE essere impostato in tutti i pacchetti con capacità ECN inviati dal protocollo.