  A TCP trunk is an IP tunnel under TCP control, capable of carrying packets
from any number of user flows. By exploiting properties of TCP, a TCP trunk
provides elastic and reliable transmission over a network, and automatically
shares the network fairly with other competing trunks. Moreover, by aggregating
user flows into a single trunk flow, TCP trunking can significantly reduce the
number of flows that the network needs to manage, thereby allowing use of
simplified management to achieve improved perfor mance. For example, when
dealing with only a small number of TCP trunk flows, a router with a simple
FIFO buffer can experience low packet loss rates.
  A TCP trunk is a "soft" circuit in the sense that it requires no flow states
to be maintained inside the network. Setting up a TCP trunk involves only
configuring the two end nodes. This is in contrast with traditional methods of
configuring circuits via signaling of network nodes.
  A simple packet-dropping mechanism based on packet accounting at the
transmitter of a TCP trunk assures that, when the trunk reduces its bandwidth
in response to network congestion, user TCP flows carried by the trunk will
reduce their bandwidths by the same proportion. Simu lation results have
demonstrated that TCP trunks can provide improved network performance to users,
while achieving high network utilization.
