And this is still how the Internet works: IP (Internet Protocol) is a packet-switched, best-effort protocol, meaning that your message is cut into chunks and there are no guarantees which (if any) chunks will get to their destination.
TCP (Transmission Control Protocol), which is built upon IP, is a reliable protocol, which means your message will arrive where it is supposed to if the network is working at all. It achieves this by resending packets that didn’t make it, so the worst thing the unreliable substrata can do is slow things down.
(Oh, and IP doesn’t say anything about what order your packets will arrive, but TCP guarantees in-order delivery. The TCP implementation has to do a fair bit of reordering, reassembly, and sundry jiggery-pokery to deal with the vagaries of an IP implementation.)
No, it’s a distributed discussion forum. NNTP, the Network News* Transfer Protocol, is a protocol built upon TCP/IP used to implement Usenet. Back in the dark ages, Usenet was implemented using UUCP, the Unix-to-Unix CoPy** (program and protocol), which was a simple store-and-forward protocol adapted to slow, expensive telephone connections between a small number of computers. Essentially, UUCP worked like this: Each machine would batch up that day’s articles and dial up whatever machines it was connected to. It would then look at the the headers of the articles it had and send each article to the machine it mentioned by name. It would also receive articles from those machines and, if those articles were destined for other computers, it would send them along wherever they were headed.
The articles were addressed in a way that reflected this roundabout nature: Imagine an article was going from ‘frodo’ to pavel at ‘kremvax’. Because of the cost of phone lines and long distance, there is no direct line between the two machines. Therefore, the person at frodo has to know which machines his article will have to pass through to reach kremvax, and craft a ‘bang path’ like this one:
frodo!einhorn!randall!jupiter!mars!kremvax!pavel
A bang, in case you haven’t noticed, is an exclamation point. They are used to separate the names of the machines this article will have to pass through to get where it’s going. That is, from frodo it will go to einhorn, then to randall, then to jupiter, then to mars, and finally to its destination at pavel’s account on kremvax. This is as primitive as it gets, folks.
People would give network addresses that looked like this:
...!{topsbar, sally, turing}!foonly!ralph
That means the foonly machine can usually connect to one or more of sally, topsbar, and turing, so you need to find a route to one of them before you can mail ralph.
*(Usenet is commonly called netnews or simply news. This is mildly confusing if you think ‘news’==‘CNN’ or similar.)
**(This name comes from the Unix cp (copy) program, which uucp (the program) resembles to some extent.)