On Thu, 2004-12-02 at 00:59 -0500, Matt Price wrote: > hi folks, > > ok... this is way OT. but I thought I'd put this question to the > most knowledgable group of people I know... > > I have to give a lecture on the history of timekeeping technologies. > I want to end with late c.20/ early c21 technologies of synchronized > timekeeping. GPS is one obvious example, NTP is another. But > puttingthe lecture together I realized I don'trelaly understand why > it's important for computer networks to have fine-grain > synchronization. So I thought I'd ask some geeks (as my sig says, I'm > only a hemi-geek): why does a network need careful clock > synchronization? Are packets like railroad cars -- in the sense that > it's VERY important to know which got sent first, and which is ocming > next -- and if you screw up the timeable, you get a catastrophe? Or > is there more flexibility in the system?
Modern computer timekeeping has little to do with actual transmission of data over a network, at least as far as Ethernet-based networks are concerned. Now, if you're talking about a T1, for example, timing is still critical. Due to the way T1's transmit data, they require a timing subcarrier to keep the sender and receiver in tune with each other. Ethernet, on the other hand, is based on sequencing. So a packet sent now vs a packet sent two minutes from now don't necessarily need to arrive in the correct order, as the receiving side will re-order them once they're all in. (There are limitations to this of course, but they're outside of the scope of what I'm going to go into here.) Modern timekeeping systems have primarily been put in place for the benefit of the humans using the computers, not so much the computers themselves. The reason that things like NTP are so accurate is not because the majority of people using them NEED them to be so accurate, but because: 1) The people who originally designed them were uber-geeks who knew that there was only one 'right' way to do things, and getting clocks within 100 ms of each other just wasn't good enough because it wasn't the 'right' way. 2) The people who originally NEEDED them were people who play with nukes and alien specimens (well, maybe not the latter, but who knows) and they absolutely HAVE to have the EXACT time. Today, the big benefit of having closely synchronized networks is in business, and especially financial applications. Say that I'm a huge corporation, with a $1,000,000,000 bank account, and I want to buy another corporation for $1,200,000,000. I just sold a whole bunch of my product and earned $210,000,000 on the deal. I know that the money will be in my account at 11:00 am. At 11:00:00:01 my computers begin the purchase of the new company. If the bank and I aren't on the same time, the transaction is going to fail and I might very well get slapped with a multi-million dollar bank charge in the process. Granted, this is a rather extreme and unrealistic example, but that's one of the reasons why computer networks nowadays need to be synchronized so closely. Hope that helps. And when you're done giving the lecture, be sure to urge the listeners to use Debian and give up the evils that are Windows. :) -- Alex Malinovich Support Free Software, delete your Windows partition TODAY! Encrypted mail preferred. You can get my public key from any of the pgp.net keyservers. Key ID: A6D24837
signature.asc
Description: This is a digitally signed message part