Some years ago, in the late 1990s, I spent a summer working at a company that made very, very fast networking hardware, and this hardware, for example, would let 2 PCs talk at multi-gigabit speeds using a switch, and so sort of the interesting thing about the software that we're developing that ran not only on the PC but also on a network card was that it was completely independent of the TCP/IP stack that normally provides reliable delivery for machines connected by networks but also it was supposed to provide reliable delivery of data even when we had errors in the network. 