that's by design. it's supposed to be a reliable network built upon
unreliable parts
Ha ha ha.
A brief list of major networking issues:
1. Traffic in the internet core is routed pretty much by "hot
potato"--give it to somebody else as fast as possible.
2. The routing algorithms we use (in BGP) are not guaranteed to have a
nice fixed point solution.
3. To route packets at current speeds, you can do about 2 memory lookups
to figure out how to route a packet based on an arbitrary IP address prefix.
4. We ran out of IPv4 address space, and we're still not IPv6-compatible
everywhere. Solution? Put entire ISPs under a single NAT...
5. TCP has congestion control mechanisms, but these can cause
problematic jank in streaming video. So every streaming video defines
its own variant protocol without congestion control. (Netflix is one of
the biggest threats to the Internet!)
6. Underlying control mechanisms on the Internet are not authenticated
in any way. This allows, for example, Pakistan to accidentally kill
worldwide access to Youtube.
Reliability was one of the secondary goals of TCP, but it was not the
primary goal. But TCP is not the internet; many of the most vital
components of the Internet explicitly eschew TCP.
I reiterate, the more you know about how the Internet works--about all
of the jumbled lottery of protocol acronyms--the more surprised you are
that it works at all. This is a belief that has been explicitly stated
to me by several professional network researchers.