Povinnost zapisujícího nastavovat tam nulu ale neznamená pro čtecí stranu povinnost kontrolovat, že tam nula je, a dokonce to nedává čtecí straně ani možnost pakety s něčím jiným než nulou zahazovat.
To byste pak nemohl zahazovat žádný packet s nevalidními hlavičkami. Must právě definuje, že druhá strana se na to může spolehnout a smí to kontrolovat (ale nemusí, když nechce).
Rozhodně snahu detekovat nevalidní packety bych nepovažoval za chybnou. Přečtu si specifikaci a vytvořím si matici flagů, které se smí v kombinací objevit. Cokoliv vím, že se objevit nesmí, můžu vyhodnotit jako nevalidní a naložit s tím podle uvážení (drop, reject, tarpit, forward).
Rozdíl je tedy ve vyhodnocení: muset / moci / nesmět.
Pokud flag nesmí nebo musí být nastaven => pak můžu, ale nemusím vyhodnocovat při zpracování
Jedině pokud flag smí, ale nemusí být nastaven => pak nesmím vyhodnocovat
26. 2. 2020, 13:20 editováno autorem komentáře