[e2e] TCP design descisions

Jon Crowcroft Jon.Crowcroft at cl.cam.ac.uk
Sat Jul 26 15:19:18 PDT 2003


when is a protocol the same protocol?

the TP4 we did used selective ack (not in TCP) and was packet based (not byte based) which
meant it was easy to make faster in most OS and most network conditions (there's less cross
talk between tx and rx, there's less complex code to handle the different receive cases
(and do zero copy receive more painlessly for example)

if people had kept working on TP4 so we could do a level comparison, i have little doubt it
would stay faster or else the two protocols would look so  similar that there would be no 
meaning in the argument.

btw, this was TP4 on IP (not CLNP) in a satellite (i.e. long fat piple) environment and it
used much of the same code (i.e. level of s/w engineering)

i meant exactly what i said - yes, the _experiment_ only compared a pair of
implementations, but it is possible to abstract from experiments

TP4 also has a neat hack called ack subsueqnecing so you can distinguish which (re)
transmit of a packet the ack was for...this means you get to have less ambiguity when doing
RRT estimation (well, it means you can use more samples so you can hug the rtt distribution
variation closer)...

there's nothing precious about tcp or tp4 - i think the work on DCCP and XCP shows that we
can move beyond the stage of "one transport protocol to rule them all" :-)

(of course DCCP and XCP may go the way of VMTP and XTP, who knows? but i think its worth
being open about these things!)
In missive <200307261902.h6QJ2Yw12287 at boreas.isi.edu>, Bob Braden typed:

 >>  *> OSI Transport Protocol (e.g. class 4 was quite nice -we did an implementation which
 >>  *> outperformed tcp:)
 >>
 >>C'mon, Jon, you know better than to say something like that! What you
 >>mean is that your implementation of TP4 outperformed some particular
 >>implementation of TCP at that time.  TCPs at that time were not
 >>particularly well tuned, by modern standards.  It seems exceedlingly
 >>unlikely that you could detect any difference in performance between (a
 >>properly congestion-controlled) TP4 implementation and a modern TCP
 >>implementation, with the same traffic and assuming the same level of
 >>software engineering in each.
 >>
 >>Bob Braden

 cheers

   jon




More information about the end2end-interest mailing list