  Standards govern the SHOULD and MUST requirements for protocol implementers
for interoperability. In case of TCP that carries the bulk of the Internets'
traffic, these requirements are defined in RFCs. While it is known that not all
optional features are implemented and nonconformance exists, one would assume
that TCP implementations at least conform to the minimum set of MUST
requirements. In this paper, we use Internet-wide scans to show how Internet
hosts and paths conform to these basic requirements. We uncover a
non-negligible set of hosts and paths that do not adhere to even basic
requirements. For example, we observe hosts that do not correctly handle
checksums and cases of middlebox interference for TCP options. We identify
hosts that drop packets when the urgent pointer is set or simply crash. Our
publicly available results highlight that conformance to even fundamental
protocol requirements should not be taken for granted but instead checked
regularly.
