Reflecting on the 20th Anniversary of NSFnet, Internet Origins
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."
Remember the OSI protocol. How would the internet have turned out if this had been the major player? We would have probably followed the model to have separate presentation and application layer. This might have meant that we had the semantic web from day 1 rather than HTTP and browsers. It might also have meant that the world wide web and popular use of the Internet was years later, or even that company controlled networks (like the original AOL) had dominance.
Why read the article when you can get the information first hand? http://www.nsfnet-legacy.org/
Check out the archived videos - this should be required viewing for everybody.
Without reigniting the OSI / IETF war, I tend to agree with the post above. TCP/IP is a good thing because it has been the default protocol unifier but still need to be fixed to become the UNIFIED protocol.
1- keepalive : IBM's SNA has an efficient keepalive mechanism. TCP has one but I never saw it working properly.
2- unified session based protocol : for banking and transctional applications, sessions is a must. In the Web world, we 'emulate' this using coockies or other feeble replacement. SIP would be a good candidate but one has to see SIP to be embedded in browsers and used in conjucntion to HTTP outside the telephony world.
3- bandwidth management and media transport: RSVP has never been implemented on a large scale. IP falls short to ATM in that matter. What the Internet World needs to acknowledge is that not every application can sit on a connectionless protocol (IP) drop the stupid dogma of being the stupid network. What we need is virtual circuits (VC) over IP that in turn open virtual circuits over layer 2 protocols
4- Private vs public network - IP V4 took the assumption that every IP address was ment to be public (the famous end to end networking dogma). The use of NAT and private addresses has been seen as a hack. We now know that private network are here to stay and the example of the SS7 signaling where private network and the way to interconnect them together are normalized provide a clear way. I am not sure that IP V6 learned the lessons.
Emmanuel
I really don't think that the idea of every computer having a unique public address as something bad. When I first started my university studies I attended a university where every machine on their network had a public IP address, and this was not a problem as the university also had all the machines firewalled off with different rules depending on what type of machine it was; most Windows boxes could only be pinged from the public internet while most Solaris and the few Linux boxes they had could be accessed using SSH and had a few other services accessible when connecting from certain subnets (such as the off-campus student apartments that were connected to the university but used a commercial ISP's IP addresses).
That said, I'm one of those graybeards who got to experience the "real" internet prior to widespread adoption of NAT and I really miss it, nowadays there are self-proclaimed experts running around saying IPv6 is horribly insecure because it does away with NAT and without NAT you can't have firewalls(!)..
/Mikael
Greylisting is to SMTP as NAT is to IPv4
The NYT and news.com have up an article looking back at the NSFnet's influence on the development of the internet.
It's great and all, but not nearly as large as NSFWnet's influence on the development of the internet.
The theory of relativity doesn't work right in Arkansas.
One major change the article fails to recognize was the shift from control of the Internet from the U.S. military to NSF. People forget, but the military could and did exercise its power to control the ARPANET. My own alma mater had its connection yanked because someone tweaked a general. Talk about AUPs!
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.
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 Looks like we have to update our Al Gore jokes.
Terrorists can't threaten a country's freedom and democracy. Only lawmakers and voters can do that.
Terrorists can't threaten a country's freedom and democracy. Only lawmakers and voters can do that.
How about dropping the "everything is just glorified telnet" approach? What should a network do?
1: Identify a user;
2:Identify a machine;
3: Send a file (FTP, SMTP, HTTP);
4: Stream data continuously (Radio, Chat, IM).
Why is it we have 25 protocols which all implement a combination of the above 4?
10 ?"Hello World" life was simple then
Gopher was nice. No popups. ;)
http://ebgp.net/ccc/
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); to RFC 2525 (HTML), 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 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.
I'm here EdgeKeep Inc.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks