TEST 5: CBWFQ testing with TCP and UDP traffic
Detailed configuration of the router
at INFN, no QoS features enabled on other routers.
DESCRIPTION OF TEST A
- 1 source: INFN
- 4 destinations: Switch (800 Kbps), Rediris (400 Kbps),
DANTE (200 Kbps), Uni Stuttgart (100 Kbps)
- 4 TCP streams
- per-vc CBWFQ configured in the ingress router, output interface:
PA-A3. 4 classes one per destination, classification based
on source IP address and destination IP network address
REMARKS
- CBWFQ takes effect only under congestion, if a single TCP stream is
generated (no resource contention), the stream can get the total
amount of bandwidth (as expected)
- when a single TCP stream (socket size 250000 bytes) is generated per class
(4 steams in total), no real congestion is achieved and each streams
gets an amount of bandwidth which is not proportional to the weight
of the correponding class, this amount of bandwidth varies and can be
higher or lower than the corresponding bandwidth.
DESCRIPTION OF TEST B
- 1 source: INFN
- 1 destination: Switch (800 Kbps)
- same router configuration as above
- 1 UDP stream (best-effort) of 150 pack/sec, 1000 by per pack
- incresing number of TCP connections to Switch (from 1 to 15)
REMARKS
- the amount of bandwidth used as weight in the CBWFQ configuration is
is much higher than the throughput of a single TCP connection. When
the number of TCP connections increases the aggregate throughput increases
up to 796.8 Kbps (this is the threshold, throughput is at the application
layer (does not include overhead)
- the UDP stream is only used to generate congestion, pack loss increases
when the number of TCP connections increses
CBWFQ drops packets only at the start of the TCP streams (they are
concurrent and start at the same time). After this phase TCP adapts and
packet dropping do not occur anymore
DESCRIPTION OF TEST C
Detailed configuration of the router
at INFN, no QoS features enabled on other routers.
- 1 source: INFN
- 4 destinations: Switch, Rediris, DANTE, Uni Stuttgart
- 4 UDP streams (mgen), 1 to each destination at a constant rate:
150 pack/sec, 1000 by per pack, UDP traffic is shaped
REMARKS
- without CBWFQ each streams gest alomost an equal share of bandwidth
(around 378 Kbps each)
- with CBWFQ each receiver receives UDP datagrams at a rate which is
*exactly* equivalent to the bandwidth associated to the class (as expected,
good result!), this also imply that pack loss is inversely proportional
to the wight of the class
- the addition of background TCP traffic (10 streams) does not modify the
UDP performance of each stream. The aggregate TCP throughput oscillates
in the range [300, 420] Kbps
- The sum of the aggregate UDP and aggregate TCP throughput gives 1.9 Mbps
approximately (good result, since overhead is not included)
July 8, 1999