Internet DRAFT - draft-bonaventure-bgp-qos
draft-bonaventure-bgp-qos
Internet Engineering Task Force Olivier Bonaventure
INTERNET DRAFT FUNDP
<draft-bonaventure-bgp-qos-00.txt> February, 2001
Expires August, 2001
Using BGP to distribute flexible QoS information
Status of this Memo
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026.
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.
Abstract
This document proposes a flexible QoS attribute that can be used to
distribute QoS information with BGP. The proposed attribute allows
to associate a set of supported PHB, transit delay and bandwidth
information to an UPDATE message. The flexibility of the proposed
attribute allows each AS to decide independently which QoS
information to redistribute to its peers.
1 Introduction
In this document, we propose a mechanism to associate QoS
information to prefixes that are announced by BGP. Inside a single
autonomous system, recent work has focussed on the definition of QoS
information that can be distributed by link state routing protocols.
In the case of Interior Gateway Protocols (IGP), the focus was the
definition of the minimum set of QoS attributes that can be
Bonaventure [Page 1]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
associated to a link to support the QoS or traffic engineering
features without overloading the flooding protocol or the route
computation [SL99, KY00, KRB^+00]. At the interdomain level, the
issue to be considered is different. There are many different
autonomous systems on the global Internet with very different
requirements and needs in terms of Quality of Service. For example,
the autonomous systems that are part of a confederation could want to
distribute detailed QoS information inside the confederation while
announcing far fewer QoS information on the global Internet. An ISP
could also want to provide different types of QoS information to its
clients than to other ISPs at public interconnection points. An ISP
could want to distribute different QoS information to private peers
than to public peers. When dealing with differentiated services, an
ISP could want to announce a bandwidth limit on routes associated
with the EF PHB while no limit for routes associated with the AF
PHB.Many other situations are possible. To support these various
requirements, a flexible method to distribute QoS information is
necessary for BGP. The solution proposed in this document is equally
applicable to the global Internet as well as to BGP-based VPN
solutions [RR99, KLV^+00, CTS00].Many complex routing policies,
including some related to QoS, can be implemented by using the
communities [CTL96] or the extended communities attribute [RTR01].
However, those communities have a local semantics and their
utilization must be agreed between each pair of routers. When
considering the support of QoS across interdomain boundaries, it
would be more useful to have a flexible QoS attribute that can be
used for this purpose instead of letting each AS define its private
set of communities for almost the same purpose.
2 The QoS attribute
This document defines a new QoS attribute that can be used to
associate QoS information to an UPDATE message. This QoS attribute
applies to all NLRI information contained inside the UPDATE message.
The QoS attribute is a variable length non-transitive optional
attribute. It is encoded as follows :
- The attribute flags shall indicate that the QoS attribute is
optional, non-transitive and the extended length bit is set to
one
since the QoS attribute may be longer than 256 bytes.
- The attribute type code is to be assigned by IANA
- The length of the entire attribute is encoded in two octets
- The value of the QoS attribute is encoded as a list of triples :
Bonaventure [Page 2]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
+-------------------------------+
| PHB identification (2 octets) |
+------------------+------------+
| QoS Type(1 octet)|
+------------------+-----------------------------------+
| QoS value (4 octets) |
+------------------------------------------------------+
The QoS type code allows the definition of 256 different types of
QoS values. Out of these 256 possible values, value 0 is reserved for
future utilization, values 1-127 are to be defined by IANA while
values 128-255 are reserved for vendor specific QoS attributes. This
document defines QoS types 1-6.
2.1 PHB identification
The PHB identification is used for two purposes. First, it allows a
border router to announce the PHB that it supports. Second, by using
the the various QoS values, it is impossible to associate a specific
QoS metric to each PHB. The PHB shall be encoded as specified in
[BBCF01].
2.2 Empty QoS value
This special QoS value shall be used by a border router wishing to
announce the support of a specific PHB towards the associated prefix
without associating detailed QoS information. The QoS type for this
value is 1. In this case, the QoS value field shall be equal to
0x00000000.
2.3 Maximum Bandwidth
The maximum bandwidth QoS value shall be used by a border router to
associate a maximum bandwidth to a given PHB. This attribute shall be
used by a border router to announce, with eBGP or iBGP, the maximum
bandwidth along the path towards the associated prefix. This QoS
value differs from the maximum bandwidth community defined in
[RTR01] that is only used for iBGP.The maximum bandwidth QoS value is
reported in bytes per second and encoded as an IEEE single precision
floating point number by using the same format as proposed in
[RTR01]. The QoS type field for the maximum bandwidth QoS value is 2.
2.4 Available Bandwidth
Bonaventure [Page 3]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
The available bandwidth QoS value shall be used by a border router
to announce the available bandwidth associated with an announced
prefix. This information shall correspond to the amount of available
bandwidth on the path towards the associated prefix.The available
bandwidth QoS value is reported in bytes per second and encoded as an
IEEE single precision floating point number by using the same format
as proposed in [RTR01]. The QoS type field for the maximum bandwidth
QoS value is 3.We expect that an information that potentially varies
frequently such as the Available Bandwidth will not be distributed
through the whole Internet and that filters will be used to limit its
distribution. It could for example be used within a confederation or
for specific VPN purposes without being re-exported.
2.5 Maximum Transit delay
This QoS value is used by a border router to associate a maximum
transit delay to an announced prefix. This QoS value is an indication
of the maximum (one-way) transit delay required to reach the
farthest IP address of the associated prefix.The maximum transit
delay is reported in units of one microsecond and encoded as an
unsigned 32 bits number. The QoS type field of the maximum transit
delay QoS value is 4.
2.6 Minimum Transit delay
This QoS value is used by a border router to associate a minimum
transit delay to an announced prefix. This QoS value is an indication
of the minimum (one-way) transit delay required to reach the closest
IP address of the associated prefix.The minimum transit delay is
reported in units of one microsecond and encoded as an unsigned 32
bits number. The QoS type field of the minimum transit delay QoS
value is 5.
2.7 Required signalling
This QoS value may be used by a border router to indicate whether
or not an explicit signalling operation is required to reach the NLRI
included in the UPDATE message. A border router may wish to enforce
an explicit signalling operation to be able to perform admission
control for example. This QoS value is encoded as a 32 bits field
that contains a list of bit flags. Each flag indicates the type of
signalling operation required to utilize the route.
Bonaventure [Page 4]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Required Signalling |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Bit0 : No explicit signalling required
Bit1 : Supports RSVP for Integrated services
Bit2 : Supports RSVP for MPLS LSP
Bit3 : Supports CR-LDP for MPLS LSP
When Bit0 is set (reset), this indicates that the border router
sending the UPDATE message is able (refuses) to accept normal IP
packet towards the associated NLRI. When Bit1 is set (reset), this
indicates that the border router is willing (refuses) to process the
establishment of Integrated Services flows with RSVP towards the
associated NLRI. When Bit2 is set (reset), this indicates that the
border router is willing (refuses) to process MPLS LSP establishment
request with RSVP towards the associated NLRI. When Bit3 is set
(reset), this indicates that the border router is willing (refuses)
to process MPLS LSP establishment request with CR-LDP. The QoS type
field of the required signalling QoS value is 6. Additional bit
flags may be defined to cover other signalling methods [BPSA01]
2.8 Routes without a QoS attribute
When a BGP router receives an UPDATE message that does not contain
a QoS attribute, it may assume the following defaults :
- The set of supported PHB should be set to BE.
- The Maximum and Available bandwidth should be set to infinite or
the bandwidth of the link from which the UPDATE message is
received
(if known).
- The required signalling flags should indicate that no explicit
signalling is required
- The Minimum Transit Delay should be set to 0.
- The Maximum Transit Delay should be set to infinite.
Similar rules apply when the received QoS attribute that not
contain a value for each QoS type.
3 Aggregation and QoS attributes
Bonaventure [Page 5]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
A key issue for the scalability of the interdomain routing system
is the possibility to aggregate routes in a single announcement
[CS99]. When QoS information is associated with a prefix, the
accuracy of the QoS information may conflict with the need for
aggregation. For example, consider the network shown in figure 1.
+===========================+
| +---------------+ |
| | 12.0.0.0/8 | |
| | | |
| | EF | |
| +---------------+ |
| 10msec\ | +---------------+
| \ | | AS10 |
| AS20 R|----------|R1 R2|
| / |<-------> | AF+EF |
| 5msec / | 5msec +---------------+
| +---------------+ | <--------------->
| | 13.0.0.0/8 | | 5 msec
| | | |
| | AF+EF | |
| +---------------+ |
+===========================+
Figure 1: Simple interdomain topology
Assume that in this network, AS20 wants to advertise detailed
information about networks 12.0.0.0/8 and 13.0.0.0/8 to AS10. It this
case, the border router of AS20 would associate a maximum delay of 10
msec and the EF PHB to prefix 12.0.0.0/8. Network 13.0.0.0/8 would be
announced with the AF and EF PHB and a maximum delay of 5 msec. Based
on this information, AS10 would have to decide how to announce these
two prefixes through router R2. If AS10 wants to provide detailed QoS
information, then it should announce prefix 12.0.0.0/8 with the EF
PHB and a maximum transit delay of 20 msec and prefix 13.0.0.0/8 with
both the AF and EF PHB and a maximum transit delay of 15 msec.On the
other hand, if AS10 wants to reduce the amount of prefix announced,
then it should aggregate 12.0.0.0/8 and 13.0.0.0/8 in a single
prefix. In this case, AS10 would announce that network 12.0.0.0/7
supports the EF PHB and that the maximum transit delay to reach this
network is 20 msec.In many cases, a border router will need to
aggregate several specific routes into a single less specific route.
This aggregation will inevitably introduce approximation in the route
announced. The only way to avoid loosing QoS information is to avoid
aggregating routes. However, this solution suffers from scalability
problems.Border routers should have the highest flexibility to decide
Bonaventure [Page 6]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
which QoS information should be announced to each peer, possibly on a
prefix-by-prefix basis. We believe that it is not possible in such a
document to impose strict conditions on how a border router
propagates QoS information received from a peer. There are however
some guidelines that should be followed in the mechanisms used by a
border router to manipulate QoS information :
- When redistributing a route, a border router should try,
depending
on its policy, and whenever possible, to reduce the number of
prefixes announced.
- When a border router needs to redistribute a route, it may modify
the QoS attribute. The border router may add any QoS value
associated
with one of the PHB identifications explicitly indicated in the
received QoS attribute. It cannot add a new PHB to the set of PHB
included in the received QoS attribute. The only exception to
this
rule is when a border router receives an UPDATE message that does
not
contain the QoS attribute. In this case, this route is implicitly
valid for the Best-Effort PHB and thus the border route may add
QoS
values provided that they are associated with the Best-Effort PHB.
- A border router that receives routes with QoS information from a
peer and needs to redistribute it is in principle allowed to
update
or remove any received QoS information. The only exception to this
rule is that if a router receives a QoS attribute that does not
contain the Best-Effort PHB. In this case, the border router
cannot
entirely remove the QoS attribute. This implies that in this case
the
route should not be distributed towards a BGP router that does not
support the QoS attribute defined in this document.
- When a border router needs to update the maximum (resp.
available)
bandwidth included in a QoS attribute, it may decrease this
maximum
(resp. available) bandwidth, but cannot increase it. When
updating
the bandwidth values, it should ensure that, for each PHB, the
maximum bandwidth remains larger than the available bandwidth.
- When a border router needs to update the maximum (resp. minimum)
transit delay included in a QoS attribute, it may increase this
maximum (resp. minimum) transit delay, but cannot increase it.
When
updating the delay values, it should ensure that, for each PHB,
Bonaventure [Page 7]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
the
maximum transit delay remains larger than the minimum transit
delay.
4 Capability negotiation
To advertise the QoS capability to a peer, a BGP speaker uses the
BGP Capabilities Advertisement [CS00] This capability is advertised
using the Capability code TBD_IANA (to be defined by IANA).The fields
in the Capabilities Optional Parameter are set as follows. The
Capability Code field is set to TBD_IANA (to be defined by IANA). The
Capability Length field is set to 1. The Capability Value contains
the version of the QoS attribute. This document defines version 1 of
the QoS attribute.To obtain a bi-directional exchange of QoS
attributes between a pair of border routers, each border router must
advertise to the other the support of the QoS attribute.
5 Related work
Two extensions to BGP have been proposed recently to advertise QoS
information with BGP [AV00, Jac00].In [Jac00], the QoS information is
associated to a prefix by defining a new QOS_NLRI attribute. This
optional transitive attribute is used to associate QoS information
to an announced prefix. This document defines several types of QoS
information (reserved bandwidth, available bandwidth, minimum,
maximum and average transit delay) and the support of the AF PHB.
However, it only allows to associate a single QoS information to each
prefix. In contrast, our proposal is to define a flexible QoS
attributes that can be manipulated by BGP speakers to support
different QoS policies. We expect for example than inside a
confederation or for VPN applications, the QoS information will be
richer than on the global Internet. The flexibility of our solution
allows to easily support these requirements.
[AV00] proposes on the other hand to define new optional attributes
used to compute TE weights. This document also proposes methods to
aggregate these traffic engineering weights. The intended application
of [AV00] is to provide a mechanism similar to the BGP Multi Exit
Discriminator without being limited to adjacent AS.
6 Conclusion
In this document, we have a flexible QoS attribute that can be used
to distribute QoS information with BGP. The proposed attribute can be
Bonaventure [Page 8]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
used by a BGP speaker to announce the set of PHB that it supports and
to optionally associate specific QoS values (minimum and maximum
transit delay, available and maximum bandwidth) to each supported
PHB.
Acknowledgements
We would like to thank Christian Jacquenet, Guy Leduc, Stefaan De
Cnodder and Steve Uhlig for their very useful comments on this
document. This work was partially funded by the European Commission,
within the ATRIUM IST project.
References
[AV00] B. Abarbanel and S. Venkatachalam. Bgp-4 support for traffic
engineering. Internet draft, draft-abarbanel-idr-bgp4-te-00.txt, work
in progress, May 2000.
[BBCF01] D. Black, S. Brim, B. Carpenter, and F. Le Faucheur. Per hop
behavior identification codes. Internet draft, draft-ietf-
diffserv-2836bis-00.txt, work in progress, January 2001.
[BPSA01] M. Blanchet, F. Parent, and B. St-Arnaud. Optical bgp
(obgp): Interas lightpath provisioning. Internet draft, draft-parent-
obgp-00.txt, work in progress, January 2001.
[CS99] E. Chen and J. Stewart. A framework for inter-domain route
aggregation. Internet RFC 2519, February 1999.
[CS00] R. Chandra and J. Scudder. Capabilities negotiation with
BGP-4. Internet RFC2842, May 2000.
[CTL96] R. Chandra, P. Traina, and T. Li. BGP communities attribute.
Internet RFC 1997, August 1996.
[CTS00] J. De Clercq, Y. T'Joens, and P. De Schrijver. BGP/IPsec
VPN. Internet draft, draft-declercq-bgp-ipsec-vpn-00.txt, work in
progress, July 2000.
[Jac00] C. Jacquenet. Providing quality of service indication by the
BGP-4 protocol : the QoS_NLRI attribute. Internet draft, draft-
jacquenet-qos-nlri-01.txt, work in progress, November 2000.
[KLV^+00] K. Kompella, M. Leelanivas, Q. Vohra, J. Achirica, R.
Bonica, C. Liljenstolpe, E. Metz, C. Sargor, and V. Srinivasan.
MPLS-based Layer 2 VPNs. Internet draft, draft-kompella-mpls-
Bonaventure [Page 9]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
l2vpn-02.txt, work in progress, November 2000.
[KRB^+00] K. Kompella, Y. Rekther, A. Banerjee, J. Drake, G.
Bernstein, D. Fedyk, E. Mannie, D. Saha, and V. Sharma. IS-IS
extensions in support of MPL(ambda)S. Internet draft, draft-kompella-
isis-ompls-extensions-00.txt, work in progress, July 2000.
[KY00] D. Katz and D. Yeung. Traffic engineering extensions to ospf.
Internet draft, draft-katz-yeung-ospf-traffic-02.txt, work in
progress, August 2000.
[RR99] E. Rosen and Y. Rekhter. BGP/MPLS VPNs. Internet RFC2547,
March 1999.
[RTR01] S. Ramachandra, D. Tappan, and Y. Rekhter. Bgp extended
communities attribute. Internet draft,draft-ramachandra-bgp-ext-
communities-08.txt, work in progress, January 2001.
[SL99] H. Smit and T. Li. Is-is extensions for traffic engineering.
Internet draft, draft-ietf-isis-traffic-01.txt, work in progress,
February 1999.
A Examples
In this appendix, we provide a few examples of the utilization of
the QoS attribute. Assume first that AS1 wishes to announce to its
peers its ability to support three different PHB : Best-Effort, EF
and AF. Assume also that AS1 wishes to announce a maximum bandwidth
of 100 Mbps for BE traffic, 10 Mbps for AF traffic and 1 Mbps for EF.
In this case, it will send a set QoS attribute composed of :
{
PHB=BE;QoS-Type=2 [Maximum Bandwidth];MaxBW=100,
PHB=AF;QoS-Type=2 [Maximum Bandwidth];MaxBW=10,
PHB=EF;QoS-Type=2 [Maximum Bandwidth];MaxBW=1
}
Assume now that a border router wants to indicate that it supports
the BE PHB without associating any QoS information to this PHB. In
this case, the QoS attribute would be composed of :
{
PHB=BE;QoS-Type=1 [Empty]
}
Bonaventure [Page 10]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
Assume now a special border router (e.g. a router controlling a
label switch router) that is not able to forward IP packets at line
rate but is able to support the establishment of label switched
paths with RSVP and CR-LDP. Also assume that this router supports AF
and BE. In this case, this router should associate the following QoS
attribute to each route it is sending to a peer :
{
PHB=BE;QoS-Type=6 [Required
Signalling];[Bit0:Reset,Bit1:Reset,Bit2:Set,Bit3:Set],
PHB=AF;QoS-Type=6 [Required
Signalling];[Bit0:Reset,Bit1:Reset,Bit2:Set,Bit3:Set]
}
Another possibility is a border router that provides best-effort
service to normal IP packets but is able to provide QoS to label
switched paths established by RSVP only. In this case, it could
associate the following QoS attribute to routes announced to a peer :
{
PHB=BE;QoS-Type=6 [Required
Signalling];[Bit0:Set,Bit1:Reset,Bit2:Reset,Bit3:Reset]
PHB=AF;QoS-Type=6 [Packet switching
capability];[Bit0:Set,Bit1:Reset,Bit2:Set,Bit3:Reset]
PHB=AF;Qos-Type=2 [Maximum Bandwidth];MaxBW=100
PHB=EF;QoS-Type=6 [Packet switching
capability];[Bit0:Set,Bit1:Reset,Bit2:Reset,Bit3:Reset]
PHB=EF;Qos-Type=2 [Maximum Bandwidth];MaxBW=10
PHB=EF;Qos-Type=4 [Minimum Delay];MinTD=10msec
PHB=EF;Qos-Type=5 [Maximum Delay];MaxTD=100msec
}
This QoS information indicates that the border router supports the
BE, AF and EF PHB. For the BE PHB, there are no specified QoS
values. For the AF PHB, a LSP must be established before actual
traffic can flow and the maximum reservable bandwidth is 100 Mbps.
For the EF PHB, a LSP must also be established before actual traffic
can flow and the transit delay is expected to be between 10 and 100
msec. The maximum bandwidth reservable for EF is set to 10 Mbps.
Bonaventure [Page 11]
Internet Draft draft-bonaventure-bgp-qos-00.txt February 2001
Author's Address
Olivier Bonaventure
Infonet group
Institut d'Informatique
Facultes Universitaires Notre-Dame de la Paix
Rue Grandgagnage 21, B-5000 Namur, Belgium.
E-mail: Olivier.Bonaventure@info.fundp.ac.be
URL : http://www.infonet.fundp.ac.be
Bonaventure [Page 12]