Hand IP a datagram and it makes a genuine attempt to deliver it. That is its entire commitment — “best-effort”. Across delivery IP may drop, delay arbitrarily, reorder, duplicate, or corrupt the datagram, and in every case you are never told. Silence is indistinguishable from success.

Two caveat-free universal statements generate everything downstream:

Every IP datagram is routed independently, with no memory of any other.
IP never reports the outcome of a delivery.

The first is the source of reordering and duplication. The second is why “did it arrive?” must be answered somewhere else entirely.

IP also does not protect the payload from corruption. IPv4’s checksum covers only the header (so a router doesn’t misroute a datagram whose destination got mangled); IPv6 removed the header checksum entirely (RFC 8200 §8.1). End-to-end payload integrity is not an IP service — which is why TCP and UDP each carry their own checksum.

This is the single root of the whole transport subject: IP promises nothing; every feature you’ve heard of is a specific fix, added elsewhere, with a specific price.

See also

References

Questions

flashcards/software-engineering/networking

What is IP’s entire delivery commitment?::Best-effort — it attempts delivery but may silently drop, delay, reorder, duplicate, or corrupt a datagram, and never reports the outcome

Why must “did it arrive?” be answered above IP?::Because IP never reports the outcome of a delivery — silence is indistinguishable from success

The IPv4 checksum covers only the header, not the payload; IPv6 removed even that (RFC 8200 §8.1), so payload integrity is left to TCP/UDP checksums.