[e2e] Are Packet Trains / Packet Bursts a Problem in TCP?
Marko Zec
zec at tel.fer.hr
Wed Sep 27 02:53:16 PDT 2006
On Tuesday 26 September 2006 20:39, David P. Reed wrote:
> Fred Baker wrote:
> > As Bob says, systems often have fairly obnoxious timing signals
> > available to them. One might hope that this could get fixed :-(
>
> Not that it should matter, but I write network code every day for XP,
> OSX and Linux. Perhaps the grandees who manage are still living in past
> decades.
>
> The days when end-system clocks had really lousy resolution are gone,
> gone, gone. While getting resolution below a millisecond is still not
> always possible, all of these platforms, when running on 500 MHz
> processors or better, do just fine with minimal overhead when running
> activities that need to be scheduled with millisecondish granularities.
>
> Of course it's a little harder to do this in user space, one needs to
> know how to manage user space thread priorities. But in the kernel,
> where networking is usually done, it's no problem. And in user space
> it's not actually hard, you just need to RTFM.
The question whether or not we can implement fine-grained pacing in software
might be becoming less relevant now that the silicon industry is irreversibly
pushing with TCP segmentation offload implementations in hardware. Given
that the OS typically feeds a TSO engine with at least a 32 or 64 kbyte raw
data chunk per single TCP session, this corresponds to a 22 or 44 segment
wire-speed burst at minimum. Thinking what things might look like if
multiple such streams would get synchronized is quite scarry...
Marko
More information about the end2end-interest
mailing list