WEBRC
Click on the red underlined text to get to the source
...
This document specifies Wave and Equation Based Rate Control (WEBRC).
WEBRC is a congestion control ...
... This document specifies Wave and Equation Based Rate Control (WEBRC).
WEBRC is a congestion control building block that is designed to be
massively scalable when used with the IP multicast ...
... IP multicast network service.
WEBRC is also suitable as the basis for unicast congestion control,
...
... unicast congestion control,
but this is outside the scope of this document. WEBRC is designed to
compete fairly with TCP and similar congestion-controlled ...
... congestion-controlled sessions.
WEBRC can be used as a congestion control protocol for any type of
data delivery ...
... channels to the network. A receiver using WEBRC
adjusts its reception rate without regard for other concerns such as
...
... TFRC [9]. In
particular, each WEBRC receiver measures parameters that are plugged
into a TCP-like ...
... RTT, having some measure of RTT is essential in making the WEBRC
equation-based rate control protocol "TCP-friendly ...
... receivers, and thus the efficiencies of multicast are realized.
Furthermore, WEBRC is designed to be massively scalable in the sense
that the sender is insensitive to the number of receivers ...
... multicast session.
WEBRC is designed for applications that use a fixed packet size and
vary their packet reception rates ...
... vary their packet reception rates in response to congestion. WEBRC
is designed to be reasonably fair when competing for bandwidth with
...
... reception rate of a TCP flow
under the same conditions. However WEBRC has a much lower variation
of throughput over time compared to TCP ...
... TCP while competing fairly for bandwidth is
that WEBRC responds more slowly than TCP to changes in available
bandwidth ...
... sender is handling many concurrent
connections and therefore WEBRC is suitable as a building block for
multicast congestion control ...
... 16] and technical report [15] provide much of the
rationale and intuition for the WEBRC design and describe some
preliminary simulations.
...
... network service. The congestion control that
WEBRC provides is common to a variety of applications, including
reliable content delivery and streaming applications.
...
... delivery and streaming applications.
WEBRC is designed to provide congestion control for all packets that
are sent to a session ...
... receiver is sufficient to reliably reconstruct the original object.
A primary advantage of WEBRC is that each receiver controls it
reception rate ...
... asynchronous delivery which are compatible with
WEBRC, e.g., as described in [11]. When combined the result is a
massively scalable, reliable, asynchronous ...
... delivery protocol
that is network friendly. WEBRC also provides congestion control
that is suitable for streaming applications.
...
... that is suitable for streaming applications.
WEBRC avoids using techniques that are not massively scalable. For
example, WEBRC does not provide any mechanisms for sending
...
... WEBRC avoids using techniques that are not massively scalable. For
example, WEBRC does not provide any mechanisms for sending
information from receivers to senders ...
... receivers to senders, although this does not rule
out protocols that both use WEBRC and that send information from
receivers to senders ...
... senders.
WEBRC provides congestion control that can be tuned for different
applications that may have differing application requirements ...
... WEBRC does not provide any support beyond congestion control, and
thus WEBRC is to be combined with other building blocks to provide a
complete protocol instantiation. For example, WEBRC does not provide
...
... thus WEBRC is to be combined with other building blocks to provide a
complete protocol instantiation. For example, WEBRC does not provide
any means that can be used to identify which session each received
...
... any means that can be used to identify which session each received
packet belongs to. As another example, WEBRC does not provide
support for identifying which object each packet is carrying
information about.
...
... time to carry data packets with a header carrying WEBRC Congestion
Control Information. When packets are received, they are first
checked to see that they belong to the appropriate session ...
... checked to see that they belong to the appropriate session before
WEBRC is applied. A session label defined by a protocol
instantiation may be carried in each packet to identify to which
...
... channel number that corresponds to the channel is carried in the
WEBRC Congestion Control Information. A WEBRC receiver ...
... session. As time progresses, the current time slot
index increases by one modulo T each TSD seconds. The current time
slot index CTSI is carried in the WEBRC Congestion Control
Information. This allows receivers ...
... sender. A packet sequence number is carried in the WEBRC Congestion
Control Information. The packet sequence numbers are consecutively
...
... are secondary because their values will generally be fixed to default
values that will not change, because they will be derived from SR_b,
or because they are chosen based on non-WEBRC considerations.
o LENP_B is the length of packets in bytes sent to the session ...
...
The bulk of the complexity in WEBRC is in the receiver operation.
For ease of explanation, suppose for the moment that during the
...
... MRTT. Both LOSSP
and ARTT are moving averages of measurements based on discrete
events. For many of the other estimates calculated by WEBRC, using
an exponentially weighted moving average (EWMA) with a fixed
averaging fraction is sufficient. However, the calculations of LOSSP
...
... TFRC
[9]. The WEBRC receiver estimates the inverse of the average loss
probability by applying two EWMA filters ...
... time-based filter is that the loss events
in WEBRC are bursty; they typically occur just after a new wave has
been joined. To smooth out this burstiness, the time-based filter ...
...
WEBRC uses a slow start mechanism to quickly ramp up its rate at both
the beginning of the session ...
...
WEBRC is intended to be a congestion control scheme that can be used
in a complete protocol instantiation that delivers objects and
...
... streams (both reliable content delivery and streaming of multimedia
information). WEBRC is most applicable for delivery of objects or
streams of substantial length, i.e., objects or streams that range ...
... networks. However,
the scope of this document is limited to multicast. WEBRC requires
connectivity between a sender and receivers ...
... satellite networks. Thus, the inherent raw scalability
of WEBRC is unlimited. However, in some network environments varying
reception rates ...
... IP version.
WEBRC requires receivers to be able to uniquely identify and
demultiplex packets associated with a session ...
... document.
WEBRC is presumed to be used with an underlying network or transport
service that is a "best effort" service ...
... Multicast (SSM) model as defined in [10]. WEBRC works with
both multicast models, but in a slightly different way with somewhat
...
... multicast group address across the scope of the group, and this makes
allocation of WEBRC channel addresses more difficult with ASM ...
... addresses more difficult with ASM. This
is an issue for WEBRC because several channels are used per session.
...
... channels coincide, and thus the receiver will
only receive packets sent to the requested WEBRC channel. With ASM,
...
... filter out packets from unwanted sources.
WEBRC assumes that the packet route between the sender and a
...
... receiver
reaction to congestion may not be appropriate. Generally, the WEBRC
receiver will act conservatively and reduce its reception rate ...
...
Packets sent to a session using WEBRC MUST include Congestion Control
Information fields as specified in this section. This document
...
... As described in RFC 3048 [4], WEBRC is a building block that is
intended to be used, in conjunction with other building blocks, to
...
... help specify a protocol instantiation.
WEBRC does not provide higher level session support, e.g., how
receivers ...
... is support provided by other building blocks that can be used in
conjunction with WEBRC to provide some of this support. For example,
LCT [12 ...
... session support
that may be needed by receivers, and the WEBRC Congestion Control
Information (CCI) required in each packet can be carried in the CCI
...
... 12].
WEBRC does not provide any type of reliability, and in particular
does not provide support for retransmission ...
... authenticate each packet immediately upon receipt before the receiver
performs any WEBRC actions based upon its receipt. Unfortunately,
there are currently no practical multicast packet authentication ...
... TESLA could be used in conjunction with
WEBRC to authenticate packets and for example terminate the session
...
... session
upon detection of a forged packet. However, it is RECOMMENDED that
the normal WEBRC receiver responses to received packets occur
immediately -- not delayed by the TESLA ...
... TESLA authentication process. This
is because the overall WEBRC performance would be greatly degraded if
the receiver ...
... performance would be greatly degraded if
the receiver delayed its WEBRC response to packet receipt for several
seconds.
...
...
A receiver with an incorrect or corrupted implementation of WEBRC may
affect health of the network in the path between the sender ...
... Goyal, V., "On WEBRC Wave Design and Server Implementation", Digital Fountain Technical Report no. DF2002-09-001, September 2002, available at
http://www.digitalfountain.com/technology/. ...
