Paper: It's Time for Low Latency
scs.stanford.edu
scs.stanford.edu
> While the speed of light limits latency in wide area networks, electrons can traverse 100m of copper cables and back in about 1µs
It's not the electrons that move that quickly, it's the information. Think of it like a filled garden hose. If you turn on the tap the water will come out at the other side very quickly, but the time it takes for the water to go from the faucet to the other end of the hose is much longer. Similarly the drift velocity of electrons in a copper wire is very low, generally less than a millimeter per second.
ADDED: It occurred to me that I better point out that "drift velocity" is the normal movement of electrons in a conductor without an imposed voltage, that is when the wire is just sitting there.
If you really want to be physically correct we'd have to admit that it doesn't really make sense to talk about the velocity of a single electron, since you cannot really follow a single electron. But by analogy to a water hose, it is sensible to define the velocity as the average velocity of water particles, instead of looking at a particular particle which is also moving randomly due to heat. This is the drift velocity. An alternative is to look at the average speed (the length of the velocity vector). Then we'd be talking about the Fermi velocity (which isn't the speed of light either BTW), but from the quote in the article it's clear that this is not what they mean, because they are talking about the velocity at which electrons move through a cable as a signal, not the velocity at which one electron moves randomly due to quantum mechanical effects.
If you don't agree with these definitions of drift and Fermi velocity, check their respective wikipedia pages.
On modern systems with 4-16 cores per machine, there is more than enough CPU to spare in the vast majority of cases. Therefore, binding I/O interrupts to a specific core and reducing buffer size can greatly reduce latency, at a cost of more time in the driver code, but those CPU resources wouldn't be used otherwise.
[1] http://solarflare.com/09-14-11-Solarflare-Arista-Complete-Ul...
The 3.6 us you cited is only the network latency. Ousterhout and his team are working on 5us RPC calls. Why is this hard? If the program context switches three times, it will miss the 5us threshold.
Overall the paper is weak. It contains arguments without experiments. Section 5 (which I think is the main section) claims a lot of things without presenting data, experiments and evaluation.
Unfortunately, that's due to the nature of the conference. HotOS/Nets/etc. Such conferences encourage such papers to stir up some discussion.
If you're interested in knowing more about what they're doing, you can check the website where they document everything: http://fiz.stanford.edu:8081/display/ramcloud/Home.
You can reduce latency by making the cable runs straight, vs. winding around underneath streets. That actually accounts for a significant amount of time, and might be an interesting problem to research.
In any case, some background to the precise definition of RPC and why I find the use here objectionable: http://www.infoq.com/presentations/vinoski-rpc-convenient-bu...