From Dan Gillmor’s “10 choices that were critical to the Net’s success“:
1) Make it all work on top of existing networks.
2) Use packets, not circuits.
3) Create a ‘routing’ function.
4) Split the Transmission Control Protocol (TCP) and Internet Protocol (IP) …
5) The National Science Foundation (NSF) funds the University of California-Berkeley, to put TCP/IP into the Unix operating system originally developed by AT&T.
6) CSNET, an early network used by universities, connects with the ARPANET … The connection was for e-mail only, but it led to much more university research on networks and a more general understanding among students, faculty and staff of the value of internetworking.
7) The NSF requires users of the NSFNET to use TCP/IP, not competing protocols.
8) International telecommunications standards bodies reject TCP/IP, then create a separate standard called OSI.
9) The NSF creates an “Acceptable Use Policy” restricting NSFNET use to noncommercial activities.
10) Once things start to build, government stays mostly out of the way.