Reflecting on the 20th Anniversary of NSFnet, Internet Origins 39
The NYT and news.com have up an article looking back at the NSFnet's influence on the development of the internet. From the National Science Foundation's gamble came the TCP/IP standard we know and love today; when NSFnet was shut down in 1996 it was apparently connecting some 6 million computers. The piece also talks about the (sometimes tense) relationship between private and commercial interests. "The Internet 'was an alien concept to the communication industry when it began growing.' While there was no risk for MCI, which was then an upstart trying to gain ground on AT&T, that was not true of IBM. The company played a crucial role in the development of the Internet, and it did so despite the fact that the new network was a direct competitive threat to its multibillion-dollar communications networking business, based on a competing standard known as Systems Network Architecture, or SNA."
Why read this article?? (Score:5, Informative)
Check out the archived videos - this should be required viewing for everybody.
NSFNET marked major changes (Score:3, Informative)
In addition, NSFNET required a new tiered routing architecture. Regionals connected many different end systems together through an IGP (either IGRP, RIP, or later on OSPF) and then those regionals connected via EGP and later BGP. The ARPANET was relatively flat in comparison. The regional model provided impetus to develop mechanisms that are very similar to what we have today.
Al Gore meme update required (Score:4, Informative)
Gore had been instrumental in introducing legislation, beginning in 1988, to finance what he originally called a "national data highway."
[...]
"He is a hero in this field," said Lawrence H. Landweber, a computer scientist at the University of Wisconsin who in 1980 made the pioneering decision to use the basic TCP/IP Internet protocol
Re:USA! USA! USA! USA! (Score:5, Informative)
Re:USA! USA! USA! USA! (Score:3, Informative)
Re:Al Gore meme update required (Score:2, Informative)
Re: Let's not forget also the TCP/IP unfixed flaws (Score:5, Informative)
1- keepalive : IBM's SNA has an efficient keepalive mechanism. TCP has one but I never saw it working properly.
Uh, no? Please do correct me if I'm wrong, but keepalives are not at all part of the TCP/IP "church". In fact, keepalives are outside the TCP state machine, and I've seen some really interesting behaviors caused by poor implementations of this poor idea.
Poor idea? Well, yes: One of the points of TCP is to be able to survive temporary or intermittent "disappearance" of the underlying network. Keepalives expose these failures, breaking the TCP model.
For more on keepalive badness, please refer to section 4.2.3.6 of RFC 1122 (HTML) [faqs.org]; to RFC 2525 (HTML) [faqs.org], which documents a number of known problems with the implementation of TCP keepalives; and to http://tcp-impl.grc.nasa.gov/tcp-impl/list/archive/0367.html [nasa.gov] for more on why TCP keepalives are a bad idea (and not even implemented the same way on all systems!).
Some of the bad behavior I've seen? This one is cool....
Server and client, both on HP-UX 6.5 (yeah, I know...). Both ends have sockets set to use keepalives (remember the old ISODE code? Used keepalives over TCP to mimic an X.25 analog that wasn't necessary in a TCP network! deep sigh). Every morning, recycle the server via cron. But server won't come back up, claims socket is in use.
Problem? Server shuts down, tells kernel to close socket. Kernel on server tells client that it is closing, both drop into wait state. Socket will close when client sends its close message. BUT! During the wait state, one end (doesn't matter which) sends the other an ACK. WTF? A keepalive.
Due to a bug in how the HP-UX 6.5 networking libraries handled the TCP state machine violation (an ACK at this point is illegal), the close sequence is forgotten, and the two machines exchange ACKs until one is rebooted. Servver's port is never released by kernel, therefore server cannot come back up. Until client machine or server machine (doesn't matter which) is rebooted.
Sigh. Two days with a network analyzer and a lot of WTF, this can't be moments. IIRC, they fixed this in 7.0, broke it briefly later, but fixed it for good in 8.0 and above.
And don't even get me started on the fact that TCP keepalives are still the default in OpenSSH, despite known security concerns with having a keepalive outside the security envelope, and therefore injectable by an attacker.
Re:Al Gore meme update required (Score:2, Informative)
Vint Cerf and Bob Kahn's letter to Declan McCullagh defending Gore, who was primarily responsible for spreading the "invented the internet" meme via articles in Wired, dates from 2000 and is here:
http://www.politechbot.com/p-01394.html [politechbot.com]
(as much as the internet can the invention of anyone, it's the invention of Cerf and Kahn, who invented TCP/IP).
As they say, a lie can go around the world and back while the truth is lacing up its boots. McCullagh, whose libertarian sympathies were never much of a secret, never apologized for his role in smearing Gore. He's now chief political correspondent for CNET.
CIX Commercial Internet Exchange more important (Score:4, Informative)