RFC 2963
A Rate Adaptive Shaper for Differentiated Services
RFC 2963: A Rate Adaptive Shaper for Differentiated Services ๐
Okay bestie, this one is by Bonaventure (FUNDP) and De Cnodder (Alcatel) ๐ฆ. It's Informational, so it's sharing ideas with the Internet community and isn't a standard ๐ . It came out in October 2000. The title block lists no obsoletes or updates, so it isn't replacing or changing any other RFC. ๐ธ
Status of this Memo โจ
This memo gives info to the Internet community. It is NOT a standard of any kind, and anyone can share it freely ๐.
Copyright Notice ๐
Copyright (C) The Internet Society (2000). All Rights Reserved.
Abstract ๐
Okay so this memo describes a few Rate Adaptive Shapers (RAS) that you can pair with the single rate Three Color Markers (srTCM) and the two rate Three Color Marker (trTCM) from RFC2697 and RFC2698 ๐ฅ. The RAS makes TCP perform better when a TCM sits at the ingress of a diffserv network, because it smooths out the burstiness of the traffic ๐ง. With TCP, less burstiness means fewer packets get marked and TCP goodput goes up ๐. The shapers are meant for ingress of Diffserv networks that give the Assured Forwarding Per Hop Behavior (AF PHB) โจ. They're especially helpful when a TCM is marking traffic from just a few TCP connections ๐ .
1. Introduction โจ
In DiffServ networks [RFC2475], incoming data traffic (especially the AF PHB) can get marked. The point of that marking is to give a low drop probability to a small slice of the traffic, while the excess gets a higher drop probability ๐. Markers like this are mostly token bucket based, like the single rate Three Color Marker (srTCM) and two rate Three Color Marker (trTCM) from [RFC2697] and [RFC2698] respectively ๐.
Similar markers were proposed for ATM networks, and simulations showed their TCP performance wasn't always great ๐. Researchers found two ways to fix those performance problems:
- increasing the burst size, meaning increasing the Committed Burst Size (CBS) and the Peak Burst Size (PBS) in the case of the trTCM, or
- shaping the traffic so some of the burstiness gets removed.
Here's the tea โ. The first fix has a big downside: the traffic hitting the network can be super bursty, which makes it hard to engineer the network for a low packet loss ratio ๐ญ. Bursty traffic also needs extra resources like buffer space. The big downside of shaping is different: traffic has to wait around for extra delay in the shaper's buffer โณ.
In this document, we propose two shapers that cut down the burstiness of traffic upstream of a TCM ๐ฆ. Less burstiness means the adaptive shapers boost the percentage of packets the TCM marks as green, and that raises the overall goodput for the users behind the shaper ๐.
These rate adaptive shapers will probably be useful at the edge of the network, like inside access routers or even network adapters ๐ธ. The simulation results in [Cnodder] show they're especially useful when only a small number of TCP connections go through a TCM ๐.
This document follows the structure proposed in [Nichols]. Section two describes the two types of rate adaptive shapers, which match the srTCM and the trTCM. Section three describes an extension to the simple shapers that can perform better. The appendix briefly talks about simulation results ๐ง.
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]. That one improved TCP performance with the Guaranteed Frame Rate [TM41] service category in ATM networks ๐. Another kind of rate adaptive shaper, one that fits differentiated services, was briefly discussed in [Azeem] ๐. A RAS typically sits in front of a meter and a marker, which are the TCMs from [RFC2697] and [RFC2698], as shown in figure 1 ๐.
Result
+----------+
| |
| V
+--------+ +-------+ +--------+
Incoming | | | | | | Outgoing
Packet ==>| RAS |==>| Meter |==>| Marker |==>Packet
Stream | | | | | | Stream
+--------+ +-------+ +--------+
Figure 1. Rate adaptive shaper
Figure 1 puts things in a slightly different order than [RFC2475], which places the shaper after the meter ๐. The main goal of the shaper is to output traffic that's less bursty than what came in. The difference from classic token bucket shapers is that it avoids discarding packets ๐ซถ. The shaper itself is a tail-drop FIFO queue that gets emptied at a variable rate ๐ฅ. That shaping rate (the rate the queue empties at) depends on how full the FIFO queue is. If the queue fills up, the shaping rate goes up too, so you don't get loss or huge delays through the shaper ๐. The shaping rate also depends on the average rate of the incoming traffic. The shaper was designed to work with meters like the TCMs in [RFC2697] and [RFC2698] ๐.
There are two types of rate adaptive shapers. The single rate rate adaptive shaper (srRAS) typically goes upstream of a srTCM, and the two rates rate adaptive shaper (trRAS) usually goes upstream of a trTCM ๐ฆ.
2.2. Configuration of the srRAS โ๏ธ
The srRAS gets configured with 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 ๐ธ. For good performance, the CIR of an srRAS is usually set to the same value as the CIR of the downstream srTCM ๐ง. A typical MIR value is the line rate of the shaper's output link ๐. When the CIR and optionally the MIR are configured, the srRAS MUST ensure that this relation holds:
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, the srRAS MUST ensure that this relation holds:
CIR_th <= MIR_th <= buffer size of the shaper
The values you pick for CIR_th and MIR_th usually depend on the CBS and PBS values in the downstream srTCM ๐. However, that dependency doesn't need to be standardized ๐.
2.3. Behavior of the srRAS ๐ฅ
The output rate of the shaper depends on two factors. The first is the (long term) average rate of the incoming traffic ๐. You can compute that average a few ways. For example, the function proposed in [Stoica] works: EARnew = [(1-exp(-T/K))*L/T] + exp(-T/K)*EARold. In that formula, EARold is the previous Estimated Average Rate value, EARnew is the updated value, K is a constant, L is the size of the arriving packet, and T is the time since the previous packet arrived ๐ง . Other averaging functions work too โจ.
The second factor is the instantaneous occupancy of the shaper's FIFO buffer ๐ซง. When the buffer occupancy is below CIR_th, the shaper's output rate is set to the bigger of the estimated average rate (EAR(t)) and the CIR. This makes sure the shaper buffer empties at least at the CIR rate ๐ท. When the buffer occupancy goes above CIR_th, the output rate is the bigger of EAR(t) and a linear function F of the buffer occupancy, where F(CIR_th)=CIR and F(MIR_th)=MIR ๐ . Once the buffer occupancy hits the MIR_th threshold, the output rate is set to the maximum information rate ๐. Figure 2 shows how the shaping rate is computed. The authors expect that real implementations will only use an approximate function for this ๐.
^
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 gets configured with 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 ๐. For good performance, the CIR of a trRAS is usually set to 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 ๐ . For good performance, the PIR of a trRAS is usually set to 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 MIR value is the line rate of the shaper's output link ๐ธ. When the CIR, PIR, and optionally MIR are configured, the trRAS MUST ensure that this 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, the trRAS MUST ensure that this relation is verified:
CIR_th <= PIR_th <= MIR_th <= buffer size of the shaper
CIR_th, PIR_th, and MIR_th usually depend on the CBS and PBS values in the downstream trTCM ๐. Again, that dependency doesn't need to be standardized ๐ฆ.
2.5. Behavior of the trRAS โจ
okay so the trRAS's output rate depends on two things ๐ . The first is the (long term) average rate of the incoming traffic, and you work that out the same way you would for the srRAS.
The second is the instantaneous occupancy of the FIFO buffer of the shaper ๐ซถ. When the buffer occupancy is below CIR_th, the output rate gets set to the max of the estimated average rate (EAR(t)) and the CIR, so the shaper always sends at least at the CIR. Lowkey iconic ๐ฆ. When occupancy goes above CIR_th, the output rate becomes the max of EAR(t) and a piecewise linear function F of the buffer occupancy. The first piece runs from zero to CIR_th, where F is just CIR, so while occupancy is under that threshold the shaping rate is at least CIR. The second piece is between CIR_th and PIR_th, where F climbs linearly from CIR up to PIR. The third piece goes from PIR_th to MIR_th, where F climbs linearly from PIR to the MIR. Once occupancy is above MIR_th, the shaping rate just stays constant at the MIR ๐ฅ. Figure 3 shows how the whole thing plays out. We expect real implementations to use an approximation of the function in this figure to compute the shaping rate, no cap ๐ง
^
Shaping rate |
|
MIR | ======
| ///
| ///
PIR | ///
| //
| //
EAR(t) |----------------//
| //
| //
CIR |============
|
|
|
|------------+---------+--------+-------------------->
CIR_th PIR_th MIR_th Buffer occupancy
Figure 3. Computation of shaping rate for trRAS
3. Description of the green RAS. ๐
3.1. The green rate adaptive shapers
The srRAS and the trRAS from the last section are not aware of the status of the meter. That means a RAS could unnecessarily delay a packet even though there are plenty of tokens available to color the packet green ๐ญ. That delay could mean TCP takes longer to grow its congestion window, which can tank the performance of TCP traffic. The green RAS in figure 4 fixes this by coupling the shaper with the meter ๐.
Status Result
+----------+ +----------+
| | | |
V | | V
+--------+ +-------+ +--------+
Incoming | green | | | | | Outgoing
Packet ==>| RAS |==>| Meter |==>| Marker |==>Packet
Stream | | | | | | Stream
+--------+ +-------+ +--------+
Figure 4. green RAS
The two rate adaptive shapers from section 2 each calculate a shaping rate. That's defined as the max of the estimated average incoming data rate and some function of the buffer occupancy. Using this shaping rate, the RAS works out the time schedule for when the packet at the head of the shaper's queue gets released ๐. The main idea of the green RAS is to couple the shaper with the downstream meter, so the green RAS knows the exact time the packet at the head of its queue would be accepted as green by the meter. If that time comes earlier than the release time from the current shaping rate, the packet can go out at that earlier instant. Otherwise, the packet at the head of the green RAS queue gets released at the time from the current shaping rate.
3.2. Configuration of the Green single rate Rate Adaptive Shaper (GsrRAS)
The G-srRAS MUST be configured in the same way as the srRAS (see section 2.2).
Heads up, this one's a key word, so it stays in caps for a reason ๐
3.3. Behavior of the G-srRAS
First things first, the shaping rate of the G-srRAS is calculated the same way as for the srRAS ๐ง . With the srRAS, that shaping rate sets a time schedule, T1, for when the packet at the head of the queue gets released from the shaper.
A second time schedule, T2, gets calculated as the earliest time instant at which the packet at the head of the shaper's queue would be colored as green by the downstream srTCM. Say a packet of size B bytes is at the head of the shaper, and CIR is the Committed Information Rate of the srTCM in bytes per second. If the current time is t, and Tc(t) is the amount of green tokens in the srTCM's token bucket at time t, then T2 is equal to max(t, t+(B-Tc(t))/CIR). If B is larger than CBS, the Committed Burst Size of the srTCM, then T2 is set to infinity ๐.
When a packet arrives at the head of the shaper's queue, it leaves that queue no sooner than min(T1, T2) from the shaper โจ.
3.4 Configuration of the Green two rates Rate Adaptive Shaper (G-trRAS)
The G-trRAS MUST be configured in the same way as the trRAS (see section 2.4).
Same vibe here, MUST is doing the heavy lifting ๐
3.5. Behavior of the G-trRAS
First of all, the shaping rate of the G-trRAS gets calculated the same way as for the trRAS. With the trRAS, that shaping rate sets a time schedule, T1, for when the packet at the head of the queue is released from the shaper ๐ฆ.
A second time schedule, T2, is the earliest time instant at which the packet at the head of the shaper's queue would be colored as green by the downstream trTCM. Say a packet of size B bytes is at the head of the shaper, and CIR is the Committed Information Rate of the srTCM in bytes per second. If the current time is t, Tc(t) is the amount of green tokens in the trTCM's token bucket at time t, and Tp(t) is the amount of yellow tokens at that same time, then T2 is equal to max(t, t+(B-Tc(t))/CIR, t+(B-Tp(t))/PIR). If B is larger than CBS, the committed burst size, or PBS, the peak burst size, of the srTCM, then T2 is set to infinity ๐.
When a packet arrives at the head of the shaper's queue, it leaves that queue no sooner than min(T1, T2) from the shaper ๐.
4. Assumption ๐ง
The shapers discussed in this document assume that Internet traffic is mostly made up of protocols like TCP, which react to congestion by lowering their transmission rate. That's the vibe they're built around ๐.
The proposed shapers don't give a performance gain if the traffic is made up of protocols that don't react to congestion by lowering their transmission rate. So if your traffic doesn't do that, these shapers aren't gonna help ๐ฌ.
5. Example services ๐ซถ
The shapers discussed in this document can be used wherever the TCMs proposed in [RFC2697] and [RFC2698] are used. In fact, simulations briefly discussed in Appendix A show that TCP performance can improve when a rate adaptive shaper runs upstream of a TCM ๐. We expect these rate adaptive shapers to be especially useful at the edge of the network, like inside (small) access routers or even network adapters ๐ธ.
6. The rate adaptive shaper combined with other markers ๐
This document explains how the idea of a rate adaptive shaper can be combined with the srTCM and the trTCM. That gave us the srRAS and the G-srRAS for the srTCM, and the trRAS and the G-trRAS for the trTCM. Similar adaptive shapers could be developed to support other traffic markers, like the Time Sliding Window Three Color Marker (TSWTCM) [Fang]. However, the exact definition of those new adaptive shapers and how they perform is outside the scope of this document ๐ง.
7. Security Considerations ๐ฅ
The shapers described in this document have no known security concerns. Periodt ๐ .
8. Intellectual Property Rights โจ
The IETF has been notified of intellectual property rights claimed in regard to some or all of the specification contained in this document. For more information, consult the online list of claimed rights ๐.
9. Acknowledgement ๐ซถ
Big thank u to Emmanuel Desmet for his comments ๐.
10. References ๐
[Azeem] Azeem, F., Rao, A., Lu, X. and S. Kalyanaraman, "TCP-
Friendly Traffic Conditioners for Differentiated
Services", Work in Progress.
[RFC2475] Blake S., Black, D., Carlson, M., Davies, E., Wang, Z.
and W. Weiss, "An Architecture for Differentiated
Services", RFC 2475, December 1998.
[Bonaventure] Bonaventure O., "Integration of ATM under TCP/IP to
provide services with a minimum guaranteed bandwidth",
Ph. D. thesis, University of Liege, Belgium, September
1998.
[Clark] Clark D. and Fang, W., "Explicit Allocation of Best-
Effort Packet Delivery Service", IEEE/ACM Trans. on
Networking, Vol. 6, No. 4, August 1998.
[Cnodder] De Cnodder S., "Rate Adaptive Shapers for Data Traffic
in DiffServ Networks", NetWorld+Interop 2000 Engineers
Conference, Las Vegas, Nevada, USA, May 10-11, 2000.
[Fang] Fang W., Seddigh N. and B. Nandy, "A Time Sliding
Window Three Colour Marker (TSWTCM)", RFC 2859, June
2000.
[Floyd] Floyd S. and V. Jacobson, "Random Early Detection
Gateways for Congestion Avoidance", IEEE/ACM
Transactions on Networking, August 1993.
[RFC2697] Heinanen J. and R. Guerin, "A Single Rate Three Color
Marker", RFC 2697, September 1999.
[RFC2698] Heinanen J. and R. Guerin, "A Two Rate Three Color
Marker", RFC 2698, September 1999.
[RFC2597] Heinanen J., Baker F., Weiss W. and J. Wroclawski,
"Assured Forwarding PHB Group", RFC 2597, June 1999.
[Nichols] Nichols K. and B. Carpenter, "Format for Diffserv
Working Group Traffic Conditioner Drafts", Work in
Progress.
[Stoica] Stoica I., Shenker S. and H. Zhang, "Core-stateless
fair queueuing: achieving approximately fair bandwidth
allocations in high speed networks", ACM SIGCOMM98, pp.
118-130, Sept. 1998
[TM41] ATM Forum, Traffic Management Specification, verion
4.1, 1999
Appendix ๐ฆ
A. Simulation results ๐
We briefly discuss simulations showing the benefits of the proposed shapers in simple network environments. Additional simulation results can be found in [Cnodder] ๐ .
A.1 description of the model ๐
okay so bestie, to test the rate adaptive shaper with simulations, we use this simple network model (Figure A.1 below) ๐ . It's a backbone network giving a LAN Interconnection service to ten pairs of LANs ๐ธ. Each LAN is an uncongested switched 10 Mbps LAN with ten workstations hanging off a customer router (C1-C10 in the figure) ๐ง. The delay on the LAN links is set to 1 msec โฑ๏ธ. The MSS size of the workstations is 1460 bytes. The workstations on the left side send traffic to their companion workstations on the right side ๐ฆ. All traffic from the LAN on customer router C1 goes to the LAN on customer router C1' ๐. Each LAN has ten workstations, and every workstation runs SACK-TCP with a maximum window size of 64 KBytes ๐ซถ.
2.5 msec, 34 Mbps 2.5 msec, 34 Mbps
<--------------> <-------------->
\+---+ +---+/
-| C1|--------------+ +--------------|C1'|-
/+---+ | | +---+\
\+---+ | | +---+/
-| C2|------------+ | | +------------|C2'|-
/+---+ | | | | +---+\
\+---+ | | | | +---+/
-| C3|----------+ | | | | +----------|C3'|-
/+---+ | | | | | | +---+\
\+---+ | | | | | | +---+/
-| C4|--------+ +-+----------+ +----------+-+ +--------|C4'|-
/+---+ | | | | | | +---+\
\+---+ +---| | | |---+ +---+/
-| C5|------------| ER1 |-----| ER2 |------------|C5'|-
/+---+ +---| | | |---+ +---+\
\+---+ | | | | | | +---+/
-| C6|--------+ +----------+ +----------+ +--------|C6'|-
/+---+ |||| |||| +---+\
\+---+ |||| <-------> |||| +---+/
-| C7|------------+||| 70 Mbps |||+------------|C7'|-
/+---+ ||| 10 msec ||| +---+\
\+---+ ||| ||| +---+/
-| C8|-------------+|| ||+-------------|C8'|-
/+---+ || || +---+\
\+---+ || || +---+/
-| C9|--------------+| |+--------------|C9'|-
/+---+ | | +---+\
\+---+ | | +----+/
-|C10|---------------+ +---------------|C10'|-
/+---+ +----+\
Figure A.1. the simulation model.
So the customer routers hook up to the backbone with 34 Mbps links ๐. The backbone is, in our case, one single bottleneck 70 Mbps link between the edge routers ER1 and ER2 ๐ง. The delay on all the customer-edge 34 Mbps links is 2.5 msec, which models a MAN or small WAN environment ๐. These links and the customer routers are not a bottleneck here, and no losses happen inside the edge routers ๐. The customer routers each have a trTCM [Heinanen2] that marks the incoming traffic ๐ท๏ธ. The trTCM parameters are in table A.1 (slay, we love a table) ๐.
Table A.1: configurations of the trTCMs
Router CIR PIR Line Rate
C1 2 Mbps 4 Mbps 34 Mbps
C2 4 Mbps 8 Mbps 34 Mbps
C3 6 Mbps 12 Mbps 34 Mbps
C4 8 Mbps 16 Mbps 34 Mbps
C5 10 Mbps 20 Mbps 34 Mbps
C6 2 Mbps 4 Mbps 34 Mbps
C7 4 Mbps 8 Mbps 34 Mbps
C8 6 Mbps 12 Mbps 34 Mbps
C9 8 Mbps 16 Mbps 34 Mbps
C10 10 Mbps 20 Mbps 34 Mbps
Okay so every customer router has a trTCM, and the CIR is 2 Mbps for C1 and C6, 4 Mbps for C2 and C7, 6 Mbps for C3 and C8, 8 Mbps for C4 and C9, and 10 Mbps for C5 and C10 ๐ โจ. The difference is that routers C6-C10 also have a trRAS on top of the trTCM, while routers C1-C5 only have the trTCM ๐งโโ๏ธ. In every simulation the PIR is always twice the CIR ๐. The PBS is also double the CBS ๐. The CBS gets varied between the different simulation runs ๐ฒ.
The edge routers ER1 and ER2 are joined by a 70 Mbps link, and that's the bottleneck in this whole setup ๐ฅ. Both of these routers run the RIO algorithm [Clark], which we extended to support three drop priorities instead of two ๐. The thresholds are 100 and 200 packets (minimum and maximum threshold) for the red packets, 200 and 400 packets for the yellow packets, and 400 and 800 for the green packets ๐ธ. These thresholds make sense because 100 TCP connections cross each edge router ๐ซถ. The maxp parameter of RIO is set to 0.02 for green, 0.05 for yellow, and 0.1 for red ๐ . The weight used to calculate the average queue length, which RED or RIO uses, is 0.002 [Floyd] ๐ฆ.
The simulated time is 102 seconds, but the first two seconds are a warm-up and don't count toward the TCP statistics like goodput ๐โณ.
A.2 Simulation results for the trRAS ๐
For our first round, routers C1-C5 only use a trTCM, while routers C6-C10 use a rate adaptive shaper together with a trTCM ๐ง. Every router uses a CBS of 3 KBytes ๐. Table A.2 shows the total throughput of the workstations on each LAN, plus the total throughput for green and yellow packets, as a function of the CIR of the trTCM on that LAN's customer router ๐. The red throughput is just the total minus green and yellow (easy math, iykyk) ๐งฎ. Table A.3 shows the total throughput of the workstations on the routers that have a rate adaptive shaper ๐.
Table A.2: throughput in Mbps for the unshaped traffic.
green yellow total
2Mbps [C1] 1.10 0.93 2.25
4Mbps [C2] 2.57 1.80 4.55
6Mbps [C3] 4.10 2.12 6.39
8Mbps [C4] 5.88 2.32 8.33
10Mbps [C5] 7.57 2.37 10.0
Table A.3: throughput in Mbps for the adaptively shaped
traffic.
green yellow total
2Mbps [C6] 2.00 1.69 3.71
4Mbps [C7] 3.97 2.34 6.33
6Mbps [C8] 5.93 2.23 8.17
8Mbps [C9] 7.84 2.28 10.1
10Mbps [C10] 9.77 2.14 11.9
This first simulation shows clearly that workstations behind an edge router with a rate adaptive shaper get a clear performance advantage over workstations behind an edge router with only a trTCM ๐๐ญ. The boost comes from the higher share of packets the edge routers mark as green when the rate adaptive shaper is in use ๐ ๐.
To see how the CBS affects TCP goodput, we ran extra simulations where we varied the CBS on all customer routers ๐.
Table A.4 gives the total goodput for workstations on four routers: C1 (trTCM, 2 Mbps CIR, no adaptive shaping), C6 (trRAS, 2 Mbps CIR, adaptive shaping), C3 (trTCM, 6 Mbps CIR, no adaptive shaping), and C8 (trRAS, 6 Mbps CIR, adaptive shaping), across a range of CBS values ๐. Honestly the takeaway is clear: the rate adaptive shapers give a performance benefit when the CBS is small ๐ฅ. With a very large CBS, performance drops when the shaper is in use ๐. Still, a CBS of a few hundred KBytes is probably too big for lots of environments ๐.
Table A.4: goodput in Mbps (link rate is 70 Mbps) versus CBS
in KBytes.
CBS 2_Mbps_unsh 2_Mbps_sh 6_Mbps_unsh 6_Mbps_sh
3 1.88 3.49 5.91 7.77
10 2.97 2.91 6.76 7.08
25 3.14 2.78 7.07 6.73
50 3.12 2.67 7.20 6.64
75 3.18 2.56 7.08 6.58
100 3.20 2.64 7.00 6.62
150 3.21 2.54 7.11 6.52
200 3.26 2.57 7.07 6.53
300 3.19 2.53 7.13 6.49
400 3.13 2.48 7.18 6.43
A.3. Simulation results for the Green trRAS โจ
okay so we're keeping the exact same scenario as A.2 ๐ the only difference is we're swapping in the Green trRAS (G-trRAS) ๐ฆ
Table A.5 and Table A.6 are the same setup as Table A.2 and Table A.3, just with the G-trRAS as the shaper. the shaped traffic slays again, and it's even better than the trRAS case ๐ฅ the reason is that the amount of yellow traffic goes up, and the price is a slight drop in green traffic. the G-trRAS introduces some burstiness, and that's what explains it ๐ซถ
Table A.5: throughput in Mbps for the unshaped traffic.
green yellow total
2Mbps [C1] 1.10 0.95 2.26
4Mbps [C2] 2.41 1.66 4.24
6Mbps [C3] 3.94 1.97 6.07
8Mbps [C4] 5.72 2.13 7.96
10Mbps [C5] 7.25 2.29 9.64
Table A.6: throughput in Mbps for the adaptively shaped
traffic.
green yellow total
2Mbps [C6] 1.92 1.75 3.77
4Mbps [C7] 3.79 3.24 7.05
6Mbps [C8] 5.35 3.62 8.97
8Mbps [C9] 6.96 3.48 10.4
10Mbps [C10] 8.69 3.06 11.7
next up is the CBS ๐ Table A.7 is the same scenario as Table A.4, except the shaper is the G-trRAS now. when the CBS is small, the shaped traffic is way ahead of the unshaped traffic ๐ when the CBS is large, they're basically tied. this is different from the trRAS, where the shaped traffic was a little worse with a big CBS ๐
Table A.7: goodput in Mbps (link rate is 70 Mbps) versus CBS in KBytes.
CBS 2_Mbps_unsh 2_Mbps_sh 6_Mbps_unsh 6_Mbps_sh
3 1.90 3.44 5.62 8.44
10 2.95 3.30 6.70 7.20
25 2.98 3.01 7.03 6.93
50 3.06 2.85 6.81 6.84
75 3.08 2.80 6.87 6.96
100 2.99 2.78 6.85 6.88
150 2.98 2.70 6.80 6.81
200 2.96 2.70 6.82 6.97
300 2.94 2.70 6.83 6.86
400 2.86 2.62 6.83 6.84
A.4. Conclusion simulations ๐
so the big takeaway from all these sims ๐ง when the CBS is small, the shaped traffic has way higher throughput than the unshaped traffic. when the CBS is large, the shaped traffic does a little worse than the unshaped traffic, and that's because of the delay in the shaper. the G-trRAS fixes that problem โจ more simulation results are over in [Cnodder] if you want to dig deeper ๐ค
Authors' Addresses ๐
Olivier Bonaventure
Infonet research group
Institut d'Informatique (CS Dept)
Facultes Universitaires Notre-Dame de la Paix
Rue Grandgagnage 21, B-5000 Namur, Belgium.
EMail: Olivier.Bonaventure@info.fundp.ac.be
URL: http://www.infonet.fundp.ac.be
Stefaan De Cnodder
Alcatel Network Strategy Group
Fr. Wellesplein 1, B-2018 Antwerpen, Belgium.
Phone: 32-3-240-8515
Fax: 32-3-240-9932
EMail: stefaan.de_cnodder@alcatel.be
Full Copyright Statement ๐
Copyright (C) The Internet Society (2000). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Acknowledgement ๐ซถ
Funding for the RFC Editor function is currently provided by the Internet Society. ๐
๐ฆ where this page comes from
- ietf: rfc2963 2000-10
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms