The basic building block for enabling OverQoS to achieve loss control
over a bundle is the Controlled-loss Virtual Link (CLVL) abstraction.
The CLVL abstraction provides a bound, , on the loss rate seen by
the bundle over a certain period of time regardless of how the
underlying network loss rate varies with time. Overlays can achieve
this bound by recovering from network losses using a combination of
Forward Error Correction (FEC) and packet retransmissions in the form
of ARQ. By setting
to an arbitrarily low value (close to 0), a
CLVL provides the notion of a near-loss free pipe across a virtual
link. Therefore, a CLVL isolates the losses experienced by the
bundle from the loss-rate variations in the underlying IP network
path. The biggest challenge in constructing a CLVL is to achieve the
loss bound
in the presence of time-varying cross traffic and
network conditions. Additionally, the amount of bandwidth overhead
should be minimized. In Section 3.2, we present a hybrid
FEC/ARQ solution which minimizes the amount of redundancy required to
provide a CLVL abstraction for a given value of
.
The total traffic between two overlay nodes consists of: (a) the
traffic of the bundle; (b) the redundancy traffic required to achieve
the target loss rate, . The fairness and stability constraints
limits the maximum rate (inclusive of the redundancy traffic) at which
OverQoS can transmit across a virtual link. Let
denote this
traffic bound at time
(Section 3.1 elaborates on how
is computed). Let
denote the fraction of redundancy
traffic required by OverQoS to achieve
. Then, the available
bandwidth for the flows in the bundle is
.
Thus, the service provided by a CLVL to the bundle is: As long as
the arrival rate of the bundle at the entry node does not exceed
, the packet loss rate across the virtual link will not exceed
, with high probability.