Multiplexing, TCP, and UDP: Pointers to the Discussion
RUTS:
Multiplexing above the transport layer:
-
Jim Gettys and Henrik Frystyk Nielsen,
The WebMUX Protocol,
August 1, 1998.
"WebMUX is a session management protocol separating the underlying
transport from the upper level application protocols. It provides a lightweight
communication channel to the application layer by multiplexing data streams on
top of a reliable stream oriented transport... HTTP/1.1 [6] persistent connections and pipelining [11] will reduce network
traffic and the amount of TCP overhead caused by opening and closing TCP
connections. However, the serialized behavior of HTTP/1.1 pipelining does not
adequately support simultaneous rendering of inlined objects - part of most Web
pages today; nor does it provide suitable fairness between protocol flows, or
allow for graceful abortion of HTTP transactions without closing the TCP
connection (quite common in HTTP operation)."
-
S. Spero,
Session Control Protocol (SCP),
1996.
"SCP is a simple protocol which lets a server and client have
multiple conversations over a single TCP connection."
Multiplexing and TCP:
-
J. Touch,
TCP Control Block Interdependence,
RFC 2140, April 1997.
"This memo makes the case for interdependent TCP control blocks,
where part of the TCP state is shared among similar concurrent
connections, or across similar connection instances. TCP state
includes a combination of parameters, such as connection state,
current round- trip time estimates, congestion control information,
and process information."
While RFC 2104 concentrates on the sharing of TCP state at connection
establishment and close, the possibility of sharing RTT or window-size
state during a connection is also discussed.
-
Lars Eggert, John Heidemann and Joe Touch,
Effects of Ensemble-TCP, CCR, January 2000.
"TCP control block sharing is a technique for reusing information
among connections in series and aggregating it among connections in
parallel... This paper explores the design space of a modified TCP
stack that utilizes these two ideas."
-
Michael Savoric, Holger Karl,
Ensemble Flow Congestion Management,
Performance Evaluation of an Improved Common Congestion Controller
for TCP Connections, August 2002.
"The assumption that an entire ensemble should be at most as
aggressive as a single connection appears very conservative;
it is here that EFCM and E-TCP differ."
-
Hari Balakrishnan, Venkata N. Padmanabhan, Srinivasan Seshan, Mark Stemm, and Randy H. Katz,
TCP Behavior of a Busy Internet Server: Analysis and Improvements,
Proc IEEE Infocom '98 San Francisco, CA March 1998.
"To improve the congestion control and loss recovery performance of
parallel TCP connections, we present a new integrated approach to
congestion control and loss recovery that works across a set of
concurrent connections... Our solutions are more general than
application-specific enhancements such as the use of persistent
connections in P-HTTP and HTTP/1.1." This paper
proposes the sharing of a single congestion window across multiple
TCP connections.
-
Venkata N. Padmanabhan,
A Proposal for Supporting Lots of Unicast Multiplexed Connections (SLUMS)
(
postscript,
pdf).
This document argues that TCP is a good basis for multiplexing.
-
Venkata N. Padmanabhan,
Addressing the Challenges of Web Data Transport,
Ph.D. thesis, September 1998.
Chapters 6 and 7 and Appendix B describe and develop the proposed
`TCP session' layer,
for shared congestion control and loss recovery across a set of TCP
connections between a pair of hosts.
Multiplexing with new transport protocols:
-
Rajarshi Gupta, Mike Chen, Steven McCanne and Jean Walrand,
WebTP: A User-Centered Web Transport Protocol,
a new project at UC Berkeley.
One of the four design goals of the WebTP project is for
session-oriented congestion management. The protocol includes
receiver-driven congestion control and allows a client browser
to process received packet data in an arbitrary order.
Multiplexing below the transport layer:
-
Hari Balakrishnan, Hariharan S. Rahul, and Srinivasan Seshan,
An Integrated Congestion Management Architecture for Internet Hosts
(html,
pdf),
SIGCOMM 99, September 1999.
The
Congestion Manager,
under development, would provide shared congestion control state
for both TCP and UDP.
Related articles on multiplexing issues:
-
David Tennenhouse,
Layered Multiplexing Considered Harmful,
in Protocols for High-Speed Networks, Rudin and Williamson (Editors), North Holland, Amsterdam, 1989.
This paper is concerned with the jitter that arises from
layered multiplexing in the upper and middle layers of the protocol stack.
"It is claimed that the extensive duplication of multiplexing
functionality across the middle and upper layers is harmful and should be
avoided." Examples given are of the OSI architecture, which at the time
provided for multiplexing within six of the seven layers.
-
David Feldmeier,
Multiplexing Issues in Communication System Design,
SIGCOMM 1990.
Abstract: This paper considers some of the multiplexing issues in
communication system design by examining overall system issues. In
particular, we distinguish physical multiplexing of resources from
logical multiplexing of streams. Both physical-resource multiplexing
and logical multiplexing determine the service that can be provided
by a communication system. We also discuss two issues affected by
logical multiplexing: flow control and the relationship between
control and data streams of a connection. We conclude that the
granularity of physical resource sharing must be fine enough to
meet the jitter and latency constraints of demanding applications.
Also, high speed communication systems should restrict their logical
multiplexing to layer 3.
Maintained by Sally Floyd as a service of the End-to-End Research Group.
Last modified: February 2000