Subject: Guaranteed Service

From: [email-masked]
Date: Fri, 14 Jul 95 19:25 EDT

Scott Shenker wrote:
	>It is true that for a nonadaptive flow there is no benefit to that flow
	>in sending in bursts.  However, the utilization of the network as a
	>whole can be improved if such bursts are allowed, since these bursts
	>can use up extra bandwidth when it is available.  If you take all of
	>the bursts out before sending the packets, then the packets have tighter
	>delay requirements at each node.  If you send the bursts in, then the
	>network has greater flexibility in when each packet is sent.  We hope
	>to quantify this increase in utilization soon.
	>

I disagree that sending in bursts can improve utilization. Let us do a
thought-experiment, where a source has some peak rate P and average
rate A. Let the source take out all bursts at the entrance, and send in data
into the network at a CBR rate A. If the switches in the path serve at a
rate A+epsilon, they will have nearly zero queues, but close to 100%
utilization. No further gain in utilization is possible without having
queues either at the endpoint or in the network diverge.

Now, if the source is allowed to send in a burst, the burst will
occupy buffering in the network. It can use bandwidth only if some
other source is not active. However, since every source sends at its
average rate, no spare capacity is available, and the burst will
simply reside in the buffers till the end of the conversation.
This experiment shows that a CBR system where a source sends
at exactly its average rate gets nearly 100% utilization, and 
sending in a burst does not help _at all_.

The disadvantage with this approach is that source delays can be
excessive whenever the source rate is larger than its average rate.
In this situation, it is better for the source to request a rate R,
A< R < P. Now lets see what happens at a switch.

At a switch, sources still send in traffic at an average  rate A, but the service
rate is R. Thus, the network is utilized _less efficiently_. The gain is
that sources could possibly get lower delays because when they send a burst,
enough spare capacity is lying around to drain their burst. How much spare
capacity can the source count on? Of course, R-A is always there for it.
However, the big win is when other sources are not bursting, so that their
excess capacity is available for this source to use. This is the gain from
sending in a burst into a network i.e. a gain in delay, but not in
utilization.

A non-adaptive source must set its playback point according to its worst
estimate for delay. THis is when no other source has spare capacity.
Thus, whether or not the other sources have spare capacity, the 
non-adaptive flow must assume that no capacity is available.
In such a situation, the delay obtained by a source is simply
a function of its own behavior and R. Moreover, network utilization
is the same whether the source buffers its data at the end-point 
and releases a CBR stream at rate R whenever it has data to send,
or sends data at an average rate R, but with bursts..

Thus, we conclude that sending in bursts does not increase
network utilization - it only decreases delay for a source.
However, this cannot be made use of by a non-adaptive source.

Q.E.D.