Discussion Overview
The following points were raised in the class discussion for
this paper:
- Much
of the discussion was focused on the concern that the flow semantics
implemented by PCC make it very difficult to develop an application on top
of, thus making it very unlikely that this TCP-friendly protocol will be
used in place of UDP. PCC requires
that an application choose an appropriate value for the parameter T, which specifies the duration
following a transition into the on
or off states after which the
random experiment determining the subsequent state of the flow will be
repeated. It is unlikely that small
values of T will be suitable for
many applications, as in this case the random experiment will have to be
repeated many times over any reasonably long duration and so, the flow
will be switched into the off-state
several times over this period. Clearly, such frequent and abrupt
interruptions are undesirable. At
the same time, however, large values of T are also unsuitable for most applications, as once a flow is
switched into the off-state it
remains blocked for a longer interval T. In addition to the obvious inconvenience
of having a flow blocked for long periods of time, longer off-times also
result in poor intra-protocol fairness that severely punishes at least
some PCC flows with very low average throughput (as illustrated in Figure
8 in the paper).
- It
was argued that a potentially useful approach to TCP-friendly congestion
control could be obtained by combining the binary on-or-off approach
introduced by PCC with a more traditional rate-adaptive algorithm. Under such a scheme, a rate-adaptive
approach would be used until the congestion situation of the network
became poor enough to require that the flow rate be pushed below the minimum
rate acceptable to the application; at this point, the flow would be
forced into the off state. This advantage of this approach is that
it avoids the frequent and abrupt switches to the off-state for T
second intervals that makes PCC so difficult to use, but nevertheless
retains all of the advantages of having an off-state for the flow – namely, an aggressive response to
congestion that does not waste bandwidth by reducing the flow to a rate
that is so low as to be useless to the application, but is still non-zero.
- An
interesting point raised in the paper and clarified in the discussion, was
that by varying the parameter T,
PCC can be made to resemble different points along the spectrum from the
one extreme of an admission control scheme based on the current congestion
situation of the network, to the opposite extreme of a conventional
rate-based congestion control algorithm.
In particular, for sufficiently small values of T, PCC begins to resemble TFRC,
with the application rate being the capacity of the outgoing interface of
the sender, the on-time being
the time required to transmit a single packet and the off-time acting as the interval between packets. For very large values of T, an admission control scheme is
obtained, with an “admitted” flow being one accepted into the on-state given the prevailing
network conditions.
- It
was pointed out that the line of research presented in this paper seems to
be a “terminal” one. In particular,
since its publication, the only material found to reference this work was
an obscure technical report citing it as one of many examples of
TCP-friendly transport protocols that application designers use UDP in
favor of.
- Another
concern raised in the discussion was the possibility of a dangerous
“oscillatory” effect occurring when the starting times of several flows
are aligned. In particular, if
several flows were to move into the on
state on at the same time, they could overburden the network,
create congestion and so, because they all started at the same time, all turn
off at the same time. After their T seconds in the off state, they would then
simultaneously move into the on
state and this pattern would repeat, with all of the flows effectively
remaining blocked. It was noted
that this problem was mentioned in the paper and dealt with by ensuring
that the start times of all flows are adjusted by a random offset in order
to prevent their alignment with high probability.