John Heidemann / Papers / Performance Interactions Between P-HTTP and TCP Implementations

Performance Interactions Between P-HTTP and TCP Implementations
John Heidemann
USC/Information Sciences Institute


John Heidemann. Performance Interactions Between P-HTTP and TCP Implementations. ACM Computer Communication Review. 27, 2 (Apr. 1997), 65–73. [PDF] [alt PDF]


This document describes several performance problems resulting from interactions between implementations of persistent-HTTP (P-HTTP) and TCP. Two of these problems tie P-HTTP performance to TCP delayed-acknowledgments, thus adding up to 200ms to each P-HTTP transaction. A third results in multiple slow-starts per TCP connection. Unresolved, these problems result in P-HTTP transactions which are 14 times slower than standard HTTP and 20 times slower than potential P-HTTP over a 10 Mb/s Ethernet. We describe each problem and potential solutions. After implementing our solutions to two of the problems, we observe that P-HTTP performs better than HTTP on a local Ethernet. Although we observed these problems in specific implementations of HTTP and TCP (Apache-1.1b4 and SunOS 4.1.3, respectively), we believe that these problems occur more widely.

Bibtex Citation

  author = {Heidemann, John},
  title = {Performance Interactions Between {P-HTTP} and
                          {TCP} Implementations},
  journal = {ACM Computer Communication Review},
  year = {1997},
  sortdate = {1997-04-01},
  project = {ant, lsam},
  jsubject = {www},
  volume = {27},
  number = {2},
  month = apr,
  pages = {65--73},
  xnote = {Draft versions were available in 1996 as [Heidemann96b]},
  location = {johnh: folder: lsam},
  keywords = {http, apache, bsd-tcp, nagle's algorithm},
  url = {},
  psurl = {},
  pdfurl = {},
  htmlurl = {},
  myorganization = {USC/Information Sciences Institute},
  copyrightholder = {authors}
Copyright © by John Heidemann