One document matched: draft-lochin-ietf-tsvwg-gtfrc-02.txt
Differences from draft-lochin-ietf-tsvwg-gtfrc-01.txt
Network Working Group E. Lochin
Internet-Draft National ICT Australia
Expires: February 2, 2007 L. Dairaine
ENSICA - LAAS/CNRS
G. Jourjon
National ICT Australia
August 2006
Guaranteed TCP Friendly Rate Control (gTFRC) for DiffServ/AF Network
draft-lochin-ietf-tsvwg-gtfrc-02
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on February 2, 2007.
Copyright Notice
Copyright (C) The Internet Society (2006).
Abstract
This memo introduces gTFRC, a TCP-Friendly Rate Control providing
throughput guarantee over the DiffServ/AF class. gTFRC is largely
based on TFRC [2]. It provides a mean to take into account the
quality of service negotiated with the network. As a result, the
mechanism is able to reach a minimum throughput guarantee whatever
Lochin, et al. Expires February 2, 2007 [Page 1]
Internet-Draft gTFRC August 2006
the flow's RTT and target rate.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Guaranteed TCP Friendly Rate Control . . . . . . . . . . . . . 4
2.1. Transmit rate equation . . . . . . . . . . . . . . . . . . 4
2.2. Target rate default value . . . . . . . . . . . . . . . . 4
2.3. Target rate setting . . . . . . . . . . . . . . . . . . . 4
3. Simulation of gTFRC . . . . . . . . . . . . . . . . . . . . . 5
3.1. Model and hypothesis . . . . . . . . . . . . . . . . . . . 5
3.2. Results . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.3. Analysis . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.4. Discussion . . . . . . . . . . . . . . . . . . . . . . . . 7
3.4.1. Security concern . . . . . . . . . . . . . . . . . . . 7
3.4.2. Case of under-provisioned network . . . . . . . . . . 8
4. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 9
5. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 10
Intellectual Property and Copyright Statements . . . . . . . . . . 11
Lochin, et al. Expires February 2, 2007 [Page 2]
Internet-Draft gTFRC August 2006
1. Introduction
This memo introduces gTFRC, a TCP-Friendly rate control providing
throughput guarantee for unicast flows over the DiffServ/AF class.
gTFRC is an adaptation of the TCP-friendly Rate Control (TFRC) [2].
This document only specifies the modification of TFRC and do not
present the core TFRC mechanism that remains unchanged.
TFRC is a congestion control mechanism for unicast flows operating in
a best-effort Internet environment [2]. Based on the TCP throughput
equation, it is designed to be reasonably fair when competing for
bandwidth with TCP flow. It generates a flow with a much lower
variation of throughput over time than TCP. As a result, it is
particularly suitable for multimedia application such as video
streaming or telephony over Internet.
The DiffServ Assured Forwarding Class [1] has been designed to
provide a guaranteed minimal throughput that many multimedia
applications can take advantage of. The service offers is called
Assured Service (AS) and built over the AF PHB. The minimum
guaranteed throughput (also called target rate) is supposed to be
known after a negotiation phase involving application level software.
Adaptive application can make use of this guarantee, allowing to rely
on a minimum rate when the network is congested, and possibly using
higher rate otherwise. In this service class, a congestion control
is required in such a way to discover the current available bandwidth
and share it fairly with other competing flows. Nevertheless, due to
the minimum bandwidth guarantee, the congestion control mechanism
should never reduce the flow throughput at a value less than the
negotiated guaranty.
When TFRC is used over a DiffServ/AF network, in spite of a good
behavior in term of available bandwidth sharing, it not always reach
the target rate. Even if the target rate is finally reached, a long
time can happened (several tens of seconds) before the flow rate
converges to this value. Then, depending on end-to-end delay and the
loss probability of the various connections, the application does not
obtained the requested target rate it should, even if the underlying
network provides an adequate throughput guarantee.
This document suggests a simple approach to solve this problem. A
minimal adaption of TFRC allows the application to quickly reach its
target rate whatever the RTT value of the application's flow, while
still sharing fairly the available bandwidth over the various TCP-
friendly connections.
Lochin, et al. Expires February 2, 2007 [Page 3]
Internet-Draft gTFRC August 2006
2. Guaranteed TCP Friendly Rate Control
In the context of the Additive Increase Multiplicative Decrease
approaches like TCP, the only way to obtain a service differentiation
with TCP protocol is to use DiffServ traffic conditioners. Indeed,
the AIMD principle do not use the instantaneous TCP throughput as an
input value for its congestion control and then can not make direct
use of the target rate value. On the contrary, to compute the actual
sending rate, TFRC uses the current rate in conjunction with the RTT
and the loss event of flow. Nevertheless, the TCP equation that
drives TFRC does not take into account the minimum guaranteed part of
the network capacity.
gTFRC is made aware of the target rate value which is integrated into
the transmit rate equation. Thanks to this knowledge, the
application's flow is sent in conformance with the negotiated QoS
while staying TCP-friendly in its out-profile part.
2.1. Transmit rate equation
The transmit rate is computed at sender side as the maximum between
the TFRC rate estimation and the target rate. The throughput
equation used in gTFRC is:
G = max(g, X)
Where:
G is the transmit rate in bytes/second.
g is the target rate in bytes/second.
X is the transmit rate in bytes/second computed by the TCP
throughput algorithm specified in RFC 3448 [2].
The rest of the gTFRC mechanism follows entirely the TFRC
specification given in RFC 3448 [2].
2.2. Target rate default value
The target rate g MUST have a default value of zero byte/second. In
this case, the default behavior of gTFRC corresponds to TFRC.
2.3. Target rate setting
gTFRC requires the knowledge of the target rate the DiffServ/AF
network service provides to the session. This knowledge MAY be
achieved by the use of a new socket option.
Lochin, et al. Expires February 2, 2007 [Page 4]
Internet-Draft gTFRC August 2006
3. Simulation of gTFRC
3.1. Model and hypothesis
gTFRC has been evaluated over a DiffServ network using ns-2.28
simulator. gTFRC has been implemented from the TFRC ns-2 code base.
The Nortel DiffServ model [3] has been used as QoS testbed.
The network architecture is shown in the following figure.
---- ----
|s1|-------- --------- |r1|
---- 10 Mb \ / 10 Mb ----
5 ms \ / x ms
\------ ------ ------/
|edge|-------|core|-------|edge|
/------ ------ ------\
/ 10 Mb 1 Mb \
---- / 5 ms 10ms \ ----
|s2|-------- --------- |r2|
---- 10 Mb 10 Mb ----
5 ms y ms
where x and y take different RTT values in function of the
experiment.
Figure 1
In these experiments, the objective was to compare the performance of
TFRC and gTFRC.
The simulation has been achieved with the two following scenarios:
1. the network is exactly-provisioned (it means there is no excess
bandwidth for the out-profile traffic).
2. network is over-provisioned (when there is excess bandwidth).
A network is under-provisioned when the amount of in-profile traffic
is higher than the resource allocated to the AF class. This case is
considered as a bad network provision and then is excluded from the
field of this study.
In the simulations:
o packet size is fixed to 1500 bytes;
Lochin, et al. Expires February 2, 2007 [Page 5]
Internet-Draft gTFRC August 2006
o we use a two colors token bucket marker with a bucket size of 10^4
bytes defined in RFC 2697 [5];
o the queues size are 50 packets and RIO parameters are:
(MIN_out,MAX_out,P_out, MIN_in,MAX_in,P_in) =
(10,20,0.1,20,40,0.02);
o the bottleneck between the core and the egress router is
1000Kbits/s;
o measurements are carried during 100 seconds.
For each experiments, we evaluate the throughput at the server side
and compute the instantaneous throughput and the average throughput
for the experiment. We resport the instantaneous throughput values
at 20s, 50s and 100s. Because some flow can cross one or several
DiffServ domains and then, obtain a very large RTT difference, we
compare flows with a high RTT difference (i.e., 600ms).
3.2. Results
The following table presents the comparative results between TFRC and
gTFRC for an exactly provisioned network.
+========+=======+========+=======+=======+=======+=======+
|Protocol| RTT | Target | After | After | After | |
| #flow | (ms) | (Kb/s) | 20s | 50s | 100s |Average|
+========+=======+========+=======+=======+=======+=======+
| TFRC#1 | 640ms | 800 | 376 | 584 | 784 | 571 |
| TFRC#2 | 40ms | 200 | 584 | 416 | 232 | 419 |
+--------+-------+--------+-------+-------+-------+-------+
|gTFRC#1 | 640ms | 800 | 376 | 784 | 800 | 722 |
|gTFRC#2 | 40ms | 200 | 584 | 224 | 200 | 271 |
+========+=======+========+=======+=======+=======+=======+
Figure 2
Lochin, et al. Expires February 2, 2007 [Page 6]
Internet-Draft gTFRC August 2006
The following table presents the comparative results between TFRC and
gTFRC for an over-provisioned network with either same or different
RTT values for the competing flows.
+========+=======+========+=======+=======+=======+=======+
|Protocol| RTT | Target | After | After | After | |
|Protocol| (ms) | (Kb/s) | 20s | 50s | 100s |Average|
+========+=======+========+=======+=======+=======+=======+
| TFRC#1 | 250ms | 700 | 296 | 744 | 744 | 654 |
| TFRC#2 | 250ms | 100 | 704 | 256 | 248 | 319 |
+--------+-------+--------+-------+-------+-------+-------+
|gTFRC#1 | 250ms | 700 | 744 | 800 | 696 | 727 |
|gTFRC#2 | 250ms | 100 | 256 | 200 | 304 | 254 |
+========+=======+========+=======+=======+=======+=======+
| TFRC#1 | 640ms | 600 | 376 | 520 | 608 | 504 |
| TFRC#2 | 40ms | 200 | 584 | 480 | 400 | 489 |
+--------+-------+--------|-------+-------+-------+-------+
|gTFRC#1 | 640ms | 600 | 376 | 600 | 600 | 554 |
|gTFRC#2 | 40ms | 200 | 584 | 408 | 400 | 439 |
+========+=======+========+=======+=======+=======+=======+
Figure 3
Extended results of this simulation campaign are available in [6]
3.3. Analysis
From these simulations, we see that gTFRC allows to reach a target
rate more quickly than TFRC. This is true whatever the RTT or the
target rate of the flow. The reason is obvious since at the first
rate decrease evaluation of the algorithm, gTFRC returns a rate equal
to the target rate. If the evaluated rate is higher than the target
rate, the classical TFRC algorithm is applied. Concerning the
DiffServ network behavior, the use of gTFRC raises the number of in-
profile packets in the network and avoid the problem of the bandwidth
sharing of the out-profile traffic. For information purpose,
concerning the Figure 2, between TFRC and gTFRC, the number of in-
profile traffic raises from 73.7% to 90.16%.
3.4. Discussion
3.4.1. Security concern
As we give the possibility to the application to instantiate through
a setsockopt() function the target rate negotiated between the QoS
network and the application, we can imagine that a misbehaving person
could abuse of this functionality by giving an higher value to the
guarantee g. In this case, the misbehaving person sends an UDP-like
Lochin, et al. Expires February 2, 2007 [Page 7]
Internet-Draft gTFRC August 2006
traffic and increases its out-profile traffic. In the context of a
DiffServ/AF class, the edge router will still mark in-profile the
packets in respect with the negotiated profile and out-profile the
excess part. As as result, in case of network congestion, the
dropping precedence set in the core router will drop this excess
traffic. The misbehaving person will not take advantage of the
situation as the number of losses of its own flow increases as well.
Then, the in-profile traffic remains protected in the network and the
out-profile traffic perceives a kind of flooding attack. As the out-
profile traffic is a best-effort traffic, the use of gTFRC does not
disturb the DiffServ network.
3.4.2. Case of under-provisioned network
In the context of a DiffServ/AF class, a network is under-provisioned
when the amount of in-profile traffic is higher than the resource
allocated to the AF class. This case could occur if the Bandwidth
Broker [4] of a DiffServ network sends or receives false information.
In a DiffServ context, if the gTFRC source emits below its target
rate and if the gTFRC flow gets losses, it means that the in-profile
traffic is no guaranteed anymore in the network. In order to tackle
this problem, two approaches are possible. The first one is to
pursue to emit at the guarantee g. This behaviour is legitimate
since the service provider must provide to the client the service
that it paid for. The second one is to react to this congestion.
This can be done by adding a second threshold (y) to gTFRC . This
threshold can be applied as following: if the emission rate X
returned by the receiver is y times below the target rate g, the
sender MUST emit to X. In the case where X < g/y, it means that a
bunch of losses has occurred in the in-profile part and that the
congestion could be due to a wrong setting. We believe that this
problem should not be solved inside gTFRC itself and should remain
under the responsibility of the service provider.
Lochin, et al. Expires February 2, 2007 [Page 8]
Internet-Draft gTFRC August 2006
4. Acknowledgements
This research work has been conducted in the framework of the EuQoS
European project (http://www.euqos.org). The authors has been
supported by funding from National ICT Australia (NICTA). The
authors are also grateful Sally Floyd and Mark Allman and James M.
Polk for useful discussions.
5. References
[1] Heinanen, J., Weiss, W., Wroclawski, J., and J. Heinanen,
"Assured Forwarding PHB Group", RFC 2597, STD 1, June 1999.
[2] Handley, M., Floyd, S., Padhye, J., and J. Widmer, "TCP Friendly
Rate Control (TFRC): Protocol Specification", RFC 3448, STD 1,
January 2003.
[3] Pieda, P., Ethridge, J., Baines, M., and F. Shallwani, "A
Network Simulator Differentiated Services Implementation", Open
IP , Nortel Networks, available at http://www.isi.edu/nsman/ns,
July 2000.
[4] Nichols, K., Jacobson, V., and L. Zhang, "A two-bit
differentiated services architecture for the internet",
RFC 2638, STD 1, July 1999.
[5] Heinanen, J. and R. Guerin, "A Single Rate Three Color Marker",
RFC 2697, STD 1, September 1999.
[6] Lochin, E., Dairaine, L., and G. Jourjon, "gTFRC: a QoS-aware
congestion Control Algorithm", 5th International Conference on
Networking (ICN'2006) , October 2005.
Lochin, et al. Expires February 2, 2007 [Page 9]
Internet-Draft gTFRC August 2006
Authors' Addresses
Emmanuel Lochin
National ICT Australia
Australia Technology Park
Eveleigh, NSW 1430
Australia
Phone: +61 8374 5541
Email: Emmanuel.Lochin@nicta.com.au
URI: http://www.nicta.com.au/
Laurent Dairaine
ENSICA - LAAS/CNRS
1, place Emile Blouin
Toulouse, Cedex 5 31056
France
Phone: +33 5 61 61 85 00
Email: Laurent.Dairaine@ensica.fr
URI: http://www.ensica.fr/
Guillaume Jourjon
National ICT Australia
Australia Technology Park
Eveleigh, NSW 1430
Australia
Phone: +61 8374 5206
Email: Guillaume.Jourjon@nicta.com.au
URI: http://www.nicta.com.au/
Lochin, et al. Expires February 2, 2007 [Page 10]
Internet-Draft gTFRC August 2006
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM 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.
Copyright Statement
Copyright (C) The Internet Society (2006). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
Acknowledgment
Funding for the RFC Editor function is currently provided by the
Internet Society.
Lochin, et al. Expires February 2, 2007 [Page 11]
| PAFTECH AB 2003-2026 | 2026-04-24 02:12:58 |