📄 rfc2963.txt
字号:
Network Working Group O. Bonaventure
Request for Comments: 2963 FUNDP
Category: Informational S. De Cnodder
Alcatel
October 2000
A Rate Adaptive Shaper for Differentiated Services
Status of this Memo
This memo provides information for the Internet community. It does
not specify an Internet standard of any kind. Distribution of this
memo is unlimited.
Copyright Notice
Copyright (C) The Internet Society (2000). All Rights Reserved.
Abstract
This memo describes several Rate Adaptive Shapers (RAS) that can be
used in combination with the single rate Three Color Markers (srTCM)
and the two rate Three Color Marker (trTCM) described in RFC2697 and
RFC2698, respectively. These RAS improve the performance of TCP when
a TCM is used at the ingress of a diffserv network by reducing the
burstiness of the traffic. With TCP traffic, this reduction of the
burstiness is accompanied by a reduction of the number of marked
packets and by an improved TCP goodput. The proposed RAS can be used
at the ingress of Diffserv networks providing the Assured Forwarding
Per Hop Behavior (AF PHB). They are especially useful when a TCM is
used to mark traffic composed of a small number of TCP connections.
1. Introduction
In DiffServ networks [RFC2475], the incoming data traffic, with the
AF PHB in particular, could be subject to marking where the purpose
of this marking is to provide a low drop probability to a minimum
part of the traffic whereas the excess will have a larger drop
probability. Such markers are mainly token bucket based such as the
single rate Three Color Marker (srTCM) and two rate Three Color
Marker (trTCM) described in [RFC2697] and [RFC2698], respectively.
Similar markers were proposed for ATM networks and simulations have
shown that their performance with TCP traffic was not always
satisfactory and several researchers have shown that these
performance problems could be solved in two ways:
Bonaventure & De Cnodder Informational [Page 1]
RFC 2963 A Rate Adaptive Shaper October 2000
1. increasing the burst size, i.e. increasing the Committed Burst
Size (CBS) and the Peak Burst Size (PBS) in case of the trTCM, or
2. shaping the traffic such that a part of the burstiness is removed.
The first solution has as major disadvantage that the traffic sent to
the network can be very bursty and thus engineering the network to
provide a low packet loss ratio can become difficult. To efficiently
support bursty traffic, additional resources such as buffer space are
needed. Conversely, the major disadvantage of shaping is that the
traffic encounters additional delay in the shaper's buffer.
In this document, we propose two shapers that can reduce the
burstiness of the traffic upstream of a TCM. By reducing the
burstiness of the traffic, the adaptive shapers increase the
percentage of packets marked as green by the TCM and thus the overall
goodput of the users attached to such a shaper.
Such rate adaptive shapers will probably be useful at the edge of the
network (i.e. inside access routers or even network adapters). The
simulation results in [Cnodder] show that these shapers are
particularly useful when a small number of TCP connections are
processed by a TCM.
The structure of this document follows the structure proposed in
[Nichols]. We first describe two types of rate adaptive shapers in
section two. These shapers correspond to respectively the srTCM and
the trTCM. In section 3, we describe an extension to the simple
shapers that can provide a better performance. We briefly discuss
simulation results in the appendix.
2. Description of the rate adaptive shapers
2.1. Rate adaptive shaper
The rate adaptive shaper is based on a similar shaper proposed in
[Bonaventure] to improve the performance of TCP with the Guaranteed
Frame Rate [TM41] service category in ATM networks. Another type of
rate adaptive shaper suitable for differentiated services was briefly
discussed in [Azeem]. A RAS will typically be used as shown in
figure 1 where the meter and the marker are the TCMs proposed in
[RFC2697] and [RFC2698].
Bonaventure & De Cnodder Informational [Page 2]
RFC 2963 A Rate Adaptive Shaper October 2000
Result
+----------+
| |
| V
+--------+ +-------+ +--------+
Incoming | | | | | | Outgoing
Packet ==>| RAS |==>| Meter |==>| Marker |==>Packet
Stream | | | | | | Stream
+--------+ +-------+ +--------+
Figure 1. Rate adaptive shaper
The presentation of the rate adaptive shapers in Figure 1 is somewhat
different as described in [RFC2475] where the shaper is placed after
the meter. The main objective of the shaper is to produce at its
output a traffic that is less bursty than the input traffic, but the
shaper avoids to discard packets in contrast with classical token
bucket based shapers. The shaper itself consists of a tail-drop FIFO
queue which is emptied at a variable rate. The shaping rate, i.e.
the rate at which the queue is emptied, is a function of the
occupancy of the FIFO queue. If the queue occupancy increases, the
shaping rate will also increase in order to prevent loss and too
large delays through the shaper. The shaping rate is also a function
of the average rate of the incoming traffic. The shaper was designed
to be used in conjunction with meters such as the TCMs proposed in
[RFC2697] and [RFC2698].
There are two types of rate adaptive shapers. The single rate rate
adaptive shaper (srRAS) will typically be used upstream of a srTCM
while the two rates rate adaptive shaper (trRAS) will usually be used
upstream of a trTCM.
2.2. Configuration of the srRAS
The srRAS is configured by specifying four parameters: the Committed
Information Rate (CIR), the Maximum Information Rate (MIR) and two
buffer thresholds: CIR_th (Committed Information Rate threshold) and
MIR_th (Maximum Information Rate threshold). The CIR shall be
specified in bytes per second and MUST be configurable. The MIR
shall be specified in the same unit as the CIR and SHOULD be
configurable. To achieve a good performance, the CIR of a srRAS will
usually be set to the same value as the CIR of the downstream srTCM.
A typical value for the MIR would be the line rate of the output link
of the shaper. When the CIR and optionally the MIR are configured,
the srRAS MUST ensure that the following relation is verified:
Bonaventure & De Cnodder Informational [Page 3]
RFC 2963 A Rate Adaptive Shaper October 2000
CIR <= MIR <= line rate
The two buffer thresholds, CIR_th and MIR_th shall be specified in
bytes and SHOULD be configurable. If these thresholds are
configured, then the srRAS MUST ensure that the following relation
holds:
CIR_th <= MIR_th <= buffer size of the shaper
The chosen values for CIR_th and MIR_th will usually depend on the
values chosen for CBS and PBS in the downstream srTCM. However, this
dependency does not need to be standardized.
2.3. Behavior of the srRAS
The output rate of the shaper is based on two factors. The first one
is the (long term) average rate of the incoming traffic. This
average rate can be computed by several means. For example, the
function proposed in [Stoica] can be used (i.e. EARnew = [(1-exp(-
T/K))*L/T] + exp(-T/K)*EARold where EARold is the previous value of
the Estimated Average Rate, EARnew is the updated value, K a
constant, L the size of the arriving packet and T the amount of time
since the arrival of the previous packet). Other averaging functions
can be used as well.
The second factor is the instantaneous occupancy of the FIFO buffer
of the shaper. When the buffer occupancy is below CIR_th, the output
rate of the shaper is set to the maximum of the estimated average
rate (EAR(t)) and the CIR. This ensures that the shaper buffer will
be emptied at least at a rate equal to CIR. When the buffer
occupancy increases above CIR_th, the output rate of the shaper is
computed as the maximum of the EAR(t) and a linear function F of the
buffer occupancy for which F(CIR_th)=CIR and F(MIR_th)=MIR. When the
buffer occupancy reaches the MIR_th threshold, the output rate of the
shaper is set to the maximum information rate. The computation of
the shaping rate is illustrated in figure 2. We expect that real
implementations will only use an approximate function to compute the
shaping rate.
Bonaventure & De Cnodder Informational [Page 4]
RFC 2963 A Rate Adaptive Shaper October 2000
^
Shaping rate |
|
|
MIR | =========
| //
| //
EAR(t) |----------------//
| //
| //
CIR |============
|
|
|
|------------+---------+----------------------->
CIR_th MIR_th Buffer occupancy
Figure 2. Computation of shaping rate for srRAS
2.4. Configuration of the trRAS
The trRAS is configured by specifying six parameters: the Committed
Information Rate (CIR), the Peak Information Rate (PIR), the Maximum
Information Rate (MIR) and three buffer thresholds: CIR_th, PIR_th
and MIR_th. The CIR shall be specified in bytes per second and MUST
be configurable. To achieve a good performance, the CIR of a trRAS
will usually be set at the same value as the CIR of the downstream
trTCM. The PIR shall be specified in the same unit as the CIR and
MUST be configurable. To achieve a good performance, the PIR of a
trRAS will usually be set at the same value as the PIR of the
downstream trRAS. The MIR SHOULD be configurable and shall be
specified in the same unit as the CIR. A typical value for the MIR
will be the line rate of the output link of the shaper. When the
values for CIR, PIR and optionally MIR are configured, the trRAS MUST
ensure that the following relation is verified:
CIR <= PIR <= MIR <= line rate
The three buffer thresholds, CIR_th, PIR_th and MIR_th shall be
specified in bytes and SHOULD be configurable. If these thresholds
are configured, then the trRAS MUST ensure that the following
relation is verified:
CIR_th <= PIR_th <= MIR_th <= buffer size of the shaper
The CIR_th, PIR_th and MIR_th will usually depend on the values
chosen for the CBS and the PBS in the downstream trTCM. However,
this dependency does not need to be standardized.
Bonaventure & De Cnodder Informational [Page 5]
RFC 2963 A Rate Adaptive Shaper October 2000
2.5. Behavior of the trRAS
The output rate of the trRAS is based on two factors. The first is
the (long term) average rate of the incoming traffic. This average
rate can be computed as for the srRAS.
The second factor is the instantaneous occupancy of the FIFO buffer
of the shaper. When the buffer occupancy is below CIR_th, the output
rate of the shaper is set to the maximum of the estimated average
rate (EAR(t)) and the CIR. This ensures that the shaper will always
send traffic at least at the CIR. When the buffer occupancy
increases above CIR_th, the output rate of the shaper is computed as
the maximum of the EAR(t) and a piecewise linear function F of the
buffer occupancy. This piecewise function can be defined as follows.
The first piece is between zero and CIR_th where F is equal to CIR.
This means that when the buffer occupancy is below a certain
threshold CIR_th, the shaping rate is at least CIR. The second piece
is between CIR_th and PIR_th where F increases linearly from CIR to
PIR. The third part is from PIR_th to MIR_th where F increases
linearly from PIR to the MIR and finally when the buffer occupancy is
above MIR_th, the shaping rate remains constant at the MIR. The
computation of the shaping rate is illustrated in figure 3. We
expect that real implementations will use an approximation of the
function shown in this figure to compute the shaping rate.
^
Shaping rate |
|
MIR | ======
| ///
| ///
PIR | ///
| //
| //
EAR(t) |----------------//
| //
| //
CIR |============
|
|
|
|------------+---------+--------+-------------------->
CIR_th PIR_th MIR_th Buffer occupancy
Figure 3. Computation of shaping rate for trRAS
Bonaventure & De Cnodder Informational [Page 6]
RFC 2963 A Rate Adaptive Shaper October 2000
3. Description of the green RAS.
3.1. The green rate adaptive shapers
The srRAS and the trRAS described in the previous section are not
aware of the status of the meter. This entails that a RAS could
unnecessarily delay a packet although there are sufficient tokens
available to color the packet green. This delay could mean that TCP
takes more time to increase its congestion window and this may lower
the performance with TCP traffic. The green RAS shown in figure 4
solves this problem by coupling the shaper with the meter.
Status Result
+----------+ +----------+
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -