17. IPv4-Header-Prüfsummen-Neuberechnung (IPv4 Header Checksum Recalculation)
Die IPv4-Header-Prüfsumme (Header Checksum) enthält keine Daten, schließt aber das ECN-Feld im IP-Header ein. Wenn ein Router das ECN-Feld im IP-Header ändert (z.B. das CE-Codepoint setzt), MUSS der Router die IP-Header-Prüfsumme inkrementell aktualisieren, gemäß dem in RFC 1141 [RFC1141] angegebenen Verfahren. RFC 1141 gibt an, dass bei einem ursprünglichen Feldwert von m und einem neuen Wert von m' die HC (Header-Prüfsumme) wie folgt angepasst wird:
HC' = ~(~HC + ~m + m')
Für 8-Bit-Felder werden der ursprüngliche Wert und der neue Wert verwendet, mit Nullerweiterung auf 16 Bit. Für 16-Bit-Felder werden m und m' als 16-Bit-Ganzzahlen behandelt. Die Addition wird unter Verwendung von Einerkomplement-Arithmetik durchgeführt, d.h. Überträge werden zum niederwertigsten Bit der Summe addiert.
Da das ECN-Feld nur die zwei niederwertigsten Bits des TOS-Bytes enthält, ist es am einfachsten, den alten TOS-Byte-Wert als m und den neuen TOS-Byte-Wert als m' zu verwenden.
Für IPv6 ist keine Prüfsummen-Neuberechnung erforderlich, da der IPv6-Header keine Header-Prüfsumme enthält.