Internet DRAFT - draft-contreras-alto-bgp-communities
draft-contreras-alto-bgp-communities
ALTO L. M. Contreras
Internet-Draft Telefonica
Intended status: Informational 9 July 2023
Expires: 10 January 2024
Extending ALTO by using BGP Communities
draft-contreras-alto-bgp-communities-01
Abstract
This memo introduces a proposal to extend ALTO by using BGP
Communities as PIDs. This proposal is meant to ease the integration
of ALTO in operational networks by leveraging existing resource
identifiers.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
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."
This Internet-Draft will expire on 10 January 2024.
Copyright Notice
Copyright (c) 2023 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
extracted from this document must include Revised BSD License text as
described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Revised BSD License.
Contreras Expires 10 January 2024 [Page 1]
Internet-Draft Extending ALTO by using BGP Communities July 2023
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. BGP Communities Overview . . . . . . . . . . . . . . . . . . 2
3. Extending ALTO with BGP communities . . . . . . . . . . . . . 3
3.1. Usage of BGP Communities in ALTO . . . . . . . . . . . . 3
3.2. BGP Community representation in ALTO . . . . . . . . . . 4
4. Security Considerations . . . . . . . . . . . . . . . . . . . 4
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5
7. Informative References . . . . . . . . . . . . . . . . . . . 5
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 5
1. Introduction
The Provider-defined Identifiers (PIDs) in the ALTO Protocol
[RFC7285] provide an indirect and network-agnostic way to aggregate a
set of network endpoints, that grouped together creates a network
map. Network endpoints that share a common PID are expected to
receive similar treatment on the decisions assisted by ALTO.
With the same goal of grouping destinations, BGP Communities
[RFC1997] were introduced in the past to tag a grouping of
destinations so that the routing decision can also be based on the
identity of a group. As per [RFC1997], a community is a group of
destinations which share some common properties.
Given that BGP communities are widely used in operational networks,
and for the sake of simplifying the integration of ALTO into these
networks, this document specifies an extension to [RFC7285] by
defining a new PID type based on the BGP community concept.
2. BGP Communities Overview
A BGP Community, as per [RFC1997], is a BGP attribute that is used to
group destinations. It is represented as a 32-bit integer number,
typically written as the combination of two 16-bit integer numbers
separated by a colon. The first number is usually the Autonomous
System (AS) number, while the second one is determined by the service
provider according to some internal logic. In order to support
4-octet ASNs, [RFC8092] specifies a BGP Large Communities attribute.
Another form of BGP communities is defined in the BGP Extended
Communities Attribute [RFC4360]. IP prefixes can be part of distinct
BGP Communities, with different purposes, typically to influence the
traffic reaching the particular prefixes of a community.
Contreras Expires 10 January 2024 [Page 2]
Internet-Draft Extending ALTO by using BGP Communities July 2023
The BGP Communities attribute is useful for applying policies of
applicability to a certain set of prefixes, grouped as a community at
the criteria of the service provider. For instance, BGP Communities
can be useful for indicating local preferences for a route to the
receive to a set of IP prefixes in a peering scenario.
The initial approach in the usage of BGP Communities in ALTO that we
follow in this document is to consider [RFC1997] and [RFC8092] as the
means to identify groupings of IP prefixes in networks with either
2-octet or 4-octet ASNs.
3. Extending ALTO with BGP communities
Network operators use BGP Communities extensively as a mechanism to
group some destinations (i.e., IP prefixes) for different purposes.
Typically, they are used by administratively-defined filters for
applying policies, thus influencing the behavior of the traffic
towards the associated destinations.
On the other hand, the ALTO Protocol is based on IP prefixes. When
considering queries to IP prefixes, it could be the case that those
queries apply to IP addresses associated to the same topological
element. This is for instance the case of aggregation nodes in the
network (such as BNG or PGW), which have associated a number of IP
prefixes (that can evolve along the time). The same response will be
obtained from an ALTO server for all the prefixes associated with
such a node, since the topological information is essentially the
same.
For assisting an efficient usage of ALTO resources in this kind of
situations, the usage of BGP Communities simplifies the process by
reducing the number of queries to the ALTO server, but also by
smoothly absorbing the modification of prefixes for a given
aggregation node.
3.1. Usage of BGP Communities in ALTO
Some potential use cases of BGP Communities in ALTO are envisaged:
* In situations where a BGP Community and an ALTO PID scope the same
grouping of prefixes, leveraging BGP Communities simplifies
network operations by using an existing identifier for the purpose
of retrieving ALTO information.
* In situations where the purpose is to retrieve ALTO information
applicable to a superset of PIDs, a BGP Community can be defined
in order to group the prefixes of all those PIDs.
Contreras Expires 10 January 2024 [Page 3]
Internet-Draft Extending ALTO by using BGP Communities July 2023
* In situations where the purpose is to retrieve ALTO information
applicable to a subset of prefixes across multiple PIDs, a BGP
Community can be defined in order to group the subset of prefixes
of all the PIDs.
Furthermore, it is needed to define how BGP Communities become
populated to the ALTO server. One means of doing that could be the
augmentation of [I-D.ietf-alto-oam-yang] with the purpose of
configuring the same communities, or to retieve such information from
a BGP session with route reflectos in the network.
3.2. BGP Community representation in ALTO
BGP Communities are defined at BGP level, by associating IP prefixes
to a given BGP Community identifier. The same BGP Community can be
applied to prefixes representing reachable sub-networks (i.e., a set
of network endpoints) attached to different nodes. Thus, in that
cases, the network and cost map generated by ALTO can present
topological situations of one-to-many or many-to-many nodes.
As said, a BGP Community is a representation of a number of IP
prefixes. Thus, conceptually, it can be defined in the same manner
the PIDs are currently defined. Then, the representation of a BGP
Community in ALTO maps could follow the same way in which PIDs are
represented. In any case, more discussion is needed in the WG to
agree on the way of representing BGP Communities.
Finally, it is also interesting to note that because a BGP Community
can span more than one network node with different topological cost
metrics from a single origin endpoint, it seems necessary to define
the cost value to be applied for handling BGP Communities. That cost
value could be the average cost value per node, the weighted average
cost value based on the number of prefixes for a given BGP Community
per node, etc. Again, more dicussion is expected in ALTO WG for
these definitions.
4. Security Considerations
BGP Communities are extensively used by network operators, usually
not bein disclosed to external parties. Thus privacy could be a key
aspect to address when using BGP Communities in ALTO.
Moreover, since BGP Communities are used in many cases to apply
policies to the corresponding IP prefixes, the exposure of
information related to BGP Communities could imply a risk in the
sense of revealing behaviors, scope or magnitude of the endpoints
associated to that Communities.
Contreras Expires 10 January 2024 [Page 4]
Internet-Draft Extending ALTO by using BGP Communities July 2023
Specific security measures need to be detailed, and this will be done
in future verisons of the document.
5. IANA Considerations
To be provided.
6. Acknowledgements
The author thanks Med Boucadair and Jordi Ros-Giralt for their
review, comments and suggestions to make this document and solution
more complete.
7. Informative References
[I-D.ietf-alto-oam-yang]
Zhang, J., Dhody, D., Gao, K., Schott, R., and Q. Ma,
"YANG Data Models for the Application-Layer Traffic
Optimization (ALTO) Protocol", Work in Progress, Internet-
Draft, draft-ietf-alto-oam-yang-10, 15 June 2023,
<https://datatracker.ietf.org/doc/html/draft-ietf-alto-
oam-yang-10>.
[RFC1997] Chandra, R., Traina, P., and T. Li, "BGP Communities
Attribute", RFC 1997, DOI 10.17487/RFC1997, August 1996,
<https://www.rfc-editor.org/info/rfc1997>.
[RFC4360] Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended
Communities Attribute", RFC 4360, DOI 10.17487/RFC4360,
February 2006, <https://www.rfc-editor.org/info/rfc4360>.
[RFC7285] Alimi, R., Ed., Penno, R., Ed., Yang, Y., Ed., Kiesel, S.,
Previdi, S., Roome, W., Shalunov, S., and R. Woundy,
"Application-Layer Traffic Optimization (ALTO) Protocol",
RFC 7285, DOI 10.17487/RFC7285, September 2014,
<https://www.rfc-editor.org/info/rfc7285>.
[RFC8092] Heitz, J., Ed., Snijders, J., Ed., Patel, K., Bagdonas,
I., and N. Hilliard, "BGP Large Communities Attribute",
RFC 8092, DOI 10.17487/RFC8092, February 2017,
<https://www.rfc-editor.org/info/rfc8092>.
Author's Address
Contreras Expires 10 January 2024 [Page 5]
Internet-Draft Extending ALTO by using BGP Communities July 2023
Luis M. Contreras
Telefonica
Ronda de la Comunicacion, s/n
28050 Madrid
Spain
Email: luismiguel.contrerasmurillo@telefonica.com
URI: http://lmcontreras.com
Contreras Expires 10 January 2024 [Page 6]