summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc4893.txt
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
committerThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
commit4bfd864f10b68b71482b35c818559068ef8d5797 (patch)
treee3989f47a7994642eb325063d46e8f08ffa681dc /doc/rfc/rfc4893.txt
parentea76e11061bda059ae9f9ad130a9895cc85607db (diff)
doc: Add RFC documents
Diffstat (limited to 'doc/rfc/rfc4893.txt')
-rw-r--r--doc/rfc/rfc4893.txt563
1 files changed, 563 insertions, 0 deletions
diff --git a/doc/rfc/rfc4893.txt b/doc/rfc/rfc4893.txt
new file mode 100644
index 0000000..2c9a28b
--- /dev/null
+++ b/doc/rfc/rfc4893.txt
@@ -0,0 +1,563 @@
+
+
+
+
+
+
+Network Working Group Q. Vohra
+Request for Comments: 4893 Juniper Networks
+Category: Standards Track E. Chen
+ Cisco Systems
+ May 2007
+
+
+ BGP Support for Four-octet AS Number Space
+
+Status of This Memo
+
+ This document specifies an Internet standards track protocol for the
+ Internet community, and requests discussion and suggestions for
+ improvements. Please refer to the current edition of the "Internet
+ Official Protocol Standards" (STD 1) for the standardization state
+ and status of this protocol. Distribution of this memo is unlimited.
+
+Copyright Notice
+
+ Copyright (C) The IETF Trust (2007).
+
+Abstract
+
+ Currently the Autonomous System (AS) number is encoded as a two-octet
+ entity in BGP. This document describes extensions to BGP to carry the
+ Autonomous System number as a four-octet entity.
+
+1. Introduction
+
+ Currently the Autonomous System number is encoded as a two-octet
+ entity in BGP [BGP]. To prepare for the anticipated exhaustion of
+ the two-octet AS numbers, this document describes extensions to BGP
+ to carry the Autonomous System number as a four-octet entity.
+
+ More specifically, this document defines a new BGP capability, Four-
+ octet AS Number Capability, that can be used by a BGP speaker to
+ indicate its support for the four-octet AS numbers. Two new
+ attributes, AS4_PATH and AS4_AGGREGATOR, are introduced that can be
+ used to propagate four-octet based AS path information across BGP
+ speakers that do not support the four-octet AS numbers. This
+ document also specifies mechanisms for constructing the AS path
+ information from the AS_PATH attribute and the AS4_PATH attribute.
+
+ The extensions proposed in this document allow a gradual transition
+ from 2-octet AS numbers to 4-octet AS numbers.
+
+
+
+
+
+
+Vohra & Chen Standards Track [Page 1]
+
+RFC 4893 BGP Support for Four-octet AS Number Space May 2007
+
+
+2. Specification of Requirements
+
+ The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
+ "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
+ document are to be interpreted as described in [RFC2119].
+
+3. Protocol Extensions
+
+ For the purpose of this document we define a BGP speaker that does
+ not support the new 4-octet AS number extensions as an OLD BGP
+ speaker, and a BGP speaker which supports the new 4-octet AS number
+ extensions as a NEW BGP speaker.
+
+ BGP carries the Autonomous System number in the "My Autonomous
+ System" field of the OPEN message, in the AS_PATH attribute of the
+ UPDATE message, and in the AGGREGATOR attribute of the UPDATE
+ message. BGP also carries the Autonomous System number in the BGP
+ Communities attribute.
+
+ A NEW BGP speaker uses BGP Capability Advertisements [RFC2842] to
+ advertise to its neighbors (either internal or external) that it
+ supports 4-octet AS number extensions, as specified in this document.
+
+ The Capability that is used by a BGP speaker to convey to its BGP
+ peer the 4-octet Autonomous System number capability, also carries
+ the 4-octet Autonomous System number of the speaker in the Capability
+ Value field of the Capability Optional Parameter. The Capability
+ Length field of the Capability is set to 4.
+
+ NEW BGP speakers carry AS path information expressed in terms of 4-
+ octet Autonomous Systems numbers by using the existing AS_PATH
+ attribute, except that each AS number in this attribute is encoded
+ not as a 2-octet, but as a 4-octet entity. The same applies to the
+ AGGREGATOR attribute - NEW BGP speakers use the same attribute,
+ except that the AS carried in this attribute is encoded as a 4-octet
+ entity.
+
+ To preserve AS path information with 4-octet AS numbers across OLD
+ BGP speakers, this document defines a new AS path attribute, called
+ AS4_PATH. This is an optional transitive attribute that contains the
+ AS path encoded with 4-octet AS numbers. The AS4_PATH attribute has
+ the same semantics as the AS_PATH attribute, except that it is
+ optional transitive, and it carries 4-octet AS numbers.
+
+ To prevent the possible propagation of confederation path segments
+ outside of a confederation, the path segment types AS_CONFED_SEQUENCE
+ and AS_CONFED_SET [RFC3065] are declared invalid for the AS4_PATH
+ attribute.
+
+
+
+Vohra & Chen Standards Track [Page 2]
+
+RFC 4893 BGP Support for Four-octet AS Number Space May 2007
+
+
+ Similarly, this document defines a new aggregator attribute called
+ AS4_AGGREGATOR, which is optional transitive. The AS4_AGGREGATOR
+ attribute has the same semantics as the AGGREGATOR attribute, except
+ that it carries a 4-octet AS number.
+
+ Currently assigned 2-octet Autonomous System numbers are converted
+ into 4-octet Autonomous System numbers by setting the two high-order
+ octets of the 4-octet field to zero. Such a 4-octet AS number is
+ said to be mappable to a 2-octet AS number.
+
+ To represent 4-octet AS numbers (which are not mapped from 2-octets)
+ as 2-octet AS numbers in the AS path information encoded with 2-octet
+ AS numbers, this document reserves a 2-octet AS number. We denote
+ this special AS number as AS_TRANS for ease of description in the
+ rest of this specification. This AS number is also placed in the "My
+ Autonomous System" field of the OPEN message originated by a NEW BGP
+ speaker, if the speaker does not have a (globally unique) 2-octet AS
+ number.
+
+4. Operations
+
+4.1. Interaction Between NEW BGP Speakers
+
+ A BGP speaker that supports 4-octet Autonomous System numbers SHOULD
+ advertise this to its peers using the BGP Capability Advertisements.
+ A BGP speaker that advertises such capability to a particular peer,
+ and receives from that peer the advertisement of such capability MUST
+ encode Autonomous System numbers as 4-octet entities in both the
+ AS_PATH and the AGGREGATOR attributes in the updates it sends to the
+ peer, and MUST assume that these attributes in the updates received
+ from the peer encode Autonomous System numbers as 4-octet entities.
+
+ The new attributes, AS4_PATH and AS4_AGGREGATOR SHOULD NOT be carried
+ in the UPDATE messages between NEW BGP peers. A NEW BGP speaker that
+ receives the AS4_PATH and AS4_AGGREGATOR path attributes in an UPDATE
+ message from a NEW BGP speaker SHOULD discard these path attributes
+ and continue processing the UPDATE message.
+
+4.2. Interaction Between NEW and OLD BGP Speakers
+
+4.2.1. BGP Peering
+
+ Note that peering between a NEW BGP speaker and an OLD one is
+ possible only if the NEW BGP speaker has a 2-octet AS number.
+ However, this document does not assume that an Autonomous System with
+ NEW speakers has to have a globally unique 2-octet AS number --
+ AS_TRANS could be used instead (even if a multiple Autonomous System
+ would use it).
+
+
+
+Vohra & Chen Standards Track [Page 3]
+
+RFC 4893 BGP Support for Four-octet AS Number Space May 2007
+
+
+4.2.2. Generating Updates
+
+ When communicating with an OLD BGP speaker, a NEW speaker MUST send
+ the AS path information in the AS_PATH attribute encoded with 2-octet
+ AS numbers. The NEW speaker MUST also send the AS path information
+ in the AS4_PATH attribute (encoded with 4-octet AS numbers), except
+ for the case where the entire AS path information is composed of 2-
+ octet AS numbers only. In this case, the NEW speaker SHOULD NOT send
+ the AS4_PATH attribute.
+
+ In the AS_PATH attribute encoded with 2-octet AS numbers, non-
+ mappable 4-octet AS numbers are represented by the well-known 2-octet
+ AS number, AS_TRANS. This will preserve the path length property of
+ the AS path information and also help in updating the AS path
+ information received on a NEW BGP speaker from an OLD speaker, as
+ explained in the next section.
+
+ The NEW speaker constructs the AS4_PATH attribute from the
+ information carried in the AS_PATH attribute. In the case where the
+ AS_PATH attribute contains either AS_CONFED_SEQUENCE or AS_CONFED_SET
+ path segments, the NEW speaker, when constructing the AS4_PATH
+ attribute from the AS_PATH attribute, MUST exclude such path
+ segments. The AS4_PATH attribute will be carried across a series of
+ OLD BGP speakers without modification and will help preserve the
+ truly 4-octet AS numbers in the AS path information.
+
+ Similarly, if the NEW speaker has to send the AGGREGATOR attribute,
+ and if the aggregating Autonomous System's AS number is truly 4-
+ octets, then the speaker constructs the AS4_AGGREGATOR attributes by
+ taking the attribute length and attribute value from the AGGREGATOR
+ attribute and placing them into the attribute length and attribute
+ value of the AS4_AGGREGATOR attribute, and sets the AS number field
+ in the existing AGGREGATOR attribute to the reserved AS number,
+ AS_TRANS. Note that if the AS number is 2-octets only, then the
+ AS4_AGGREGATOR attribute SHOULD NOT be sent.
+
+4.2.3. Processing Received Updates
+
+ When a NEW BGP speaker receives an update from an OLD one, it should
+ be prepared to receive the AS4_PATH attribute along with the existing
+ AS_PATH attribute. If the AS4_PATH attribute is also received, both
+ the attributes will be used to construct the exact AS path
+ information, and therefore the information carried by both the
+ attributes will be considered for AS path loop detection.
+
+ Note that a route may have traversed a series of autonomous systems
+ with 2-octet AS numbers and OLD BGP speakers only. In that case, if
+ the route carries the AS4_PATH attribute, this attribute must have
+
+
+
+Vohra & Chen Standards Track [Page 4]
+
+RFC 4893 BGP Support for Four-octet AS Number Space May 2007
+
+
+ remained unmodified since the route left the last NEW BGP speaker.
+ The trailing AS path information (representing autonomous systems
+ with 2-octet AS numbers and OLD BGP speakers only) is contained only
+ in the current AS_PATH attribute (encoded in the leading part of the
+ AS_PATH attribute).
+
+ Under certain conditions, it may not be possible to reconstruct the
+ entire AS path information from the AS_PATH and the AS4_PATH
+ attributes of a route. This occurs when two or more routes that
+ carry the AS4_PATH attribute are aggregated by an OLD BGP speaker,
+ and the AS4_PATH attribute of at least one of these routes carries at
+ least one 4-octet AS number (as oppose to a 2-octet AS number that is
+ encoded in 4 octets). Depending on the implementation, either the
+ AS4_PATH attribute would be lost during route aggregation, or both
+ the AS_PATH attribute and the AS4_PATH attribute would contain valid,
+ partial information that cannot be combined seamlessly, resulting in
+ incomplete AS path information in these cases.
+
+ A NEW BGP speaker should also be prepared to receive the
+ AS4_AGGREGATOR attribute along with the AGGREGATOR attribute from an
+ OLD BGP speaker. When both the attributes are received, if the AS
+ number in the AGGREGATOR attribute is not AS_TRANS, then:
+
+ - the AS4_AGGREGATOR attribute and the AS4_PATH attribute SHALL
+ be ignored,
+
+ - the AGGREGATOR attribute SHALL be taken as the information
+ about the aggregating node, and
+
+ - the AS_PATH attribute SHALL be taken as the AS path
+ information.
+
+ Otherwise,
+
+ - the AGGREGATOR attribute SHALL be ignored,
+
+ - the AS4_AGGREGATOR attribute SHALL be taken as the information
+ about the aggregating node, and
+
+ - the AS path information would need to be constructed, as in all
+ other cases.
+
+ In order to construct the AS path information, it would be necessary
+ to first calculate the number of AS numbers in the AS_PATH and
+ AS4_PATH attributes using the method specified in Section 9.1.2.2
+ [BGP] and [RFC3065] for route selection.
+
+
+
+
+
+Vohra & Chen Standards Track [Page 5]
+
+RFC 4893 BGP Support for Four-octet AS Number Space May 2007
+
+
+ If the number of AS numbers in the AS_PATH attribute is less than the
+ number of AS numbers in the AS4_PATH attribute, then the AS4_PATH
+ attribute SHALL be ignored, and the AS_PATH attribute SHALL be taken
+ as the AS path information.
+
+ If the number of AS numbers in the AS_PATH attribute is larger than
+ or equal to the number of AS numbers in the AS4_PATH attribute, then
+ the AS path information SHALL be constructed by taking as many AS
+ numbers and path segments as necessary from the leading part of the
+ AS_PATH attribute, and then prepending them to the AS4_PATH attribute
+ so that the AS path information has an identical number of AS numbers
+ as the AS_PATH attribute. Note that a valid AS_CONFED_SEQUENCE or
+ AS_CONFED_SET path segment SHALL be prepended if it is either the
+ leading path segment or adjacent to a path segment that is prepended.
+
+5. Handling BGP Communities
+
+ As specified in [RFC1997], when the high-order two-octets of the
+ community attribute is neither 0x0000 nor 0xffff, these two octets
+ encode the Autonomous System number. Quite clearly this would not
+ work for BGP speakers that use 4-octets Autonomous System numbers.
+ Such BGP speakers should use the Four-octet AS Specific Extended
+ Communities [AS-EXT-COM] instead.
+
+6. Transition
+
+ The scheme described in this document allows a gradual transition
+ from 2-octet AS numbers to 4-octet AS numbers. One can upgrade one
+ Autonomous System or one BGP speaker at a time.
+
+ To simplify transition, this document assumes that an Autonomous
+ System could start using a 4-octet AS number only after all the BGP
+ speakers within that Autonomous System have been upgraded to support
+ 4-octet AS numbers.
+
+ An OLD BGP speaker MUST NOT use AS_TRANS as its Autonomous System
+ number.
+
+ A non-mappable 4-octet AS number cannot be used as a "Member AS
+ Number" of a BGP Confederation until all the BGP speakers within the
+ Confederation have transitioned to support 4-octet AS numbers.
+
+ In an environment where an Autonomous System that has OLD BGP
+ speakers peers with two or more Autonomous Systems that have NEW BGP
+ speakers and use AS_TRANS (rather than having a globally unique AS
+ number), use of Multi-Exit Discriminators by the Autonomous System
+
+
+
+
+
+Vohra & Chen Standards Track [Page 6]
+
+RFC 4893 BGP Support for Four-octet AS Number Space May 2007
+
+
+ with the OLD speakers may result in a situation where Multi-Exit
+ Discriminator will influence route selection among the routes that
+ were received from different neighboring Autonomous Systems.
+
+ Under certain conditions, it may not be possible to reconstruct the
+ entire AS path information from the AS_PATH and the AS4_PATH
+ attributes of a route. This occurs when two or more routes that
+ carry the AS4_PATH attribute are aggregated by an OLD BGP speaker,
+ and the AS4_PATH attribute of at least one of these routes carries at
+ least one 4-octet AS number (as oppose to a 2-octet AS number that is
+ encoded in 4 octets). When such aggregation results in creating a
+ route that is less specific than any of the component routes (route
+ whose Network Layer Reachability Information (NLRI) covers NLRI of
+ all the component routes), loss of the AS path information does not
+ create a risk of a routing loop. In all other cases, loss of the AS
+ path information does create a risk of a routing loop.
+
+7. IANA Considerations
+
+ This document expands the pool for AS numbers from 0 - 65535 to 0 -
+ 4294967295. The AS numbers are managed by the IANA "Autonomous
+ System Numbers" registry. Other than expanding the AS number pool,
+ this document does not propose any modifications to the existing
+ policies and procedures pertaining to the AS number allocation.
+
+ This document uses a BGP Capability code to indicate that a BGP
+ speaker supports the 4-octet AS numbers. The Capability Code 65 has
+ been assigned by IANA per RFC 2842.
+
+ In addition, this document introduces two new BGP optional transitive
+ attributes, and their type codes have been assigned by the IANA. The
+ first one is the AS4_PATH attribute, value 17, which preserves the AS
+ path information with 4-octet AS numbers across old BGP speakers.
+ The second one is the AS4_AGGREGATOR attribute, value 18, which is
+ similar in use to the current AGGREGATOR attribute, but it carries a
+ 4-octet AS number.
+
+ Finally, this document introduces a reserved 2-octet AS number --
+ AS_TRANS. The AS number 23456 has been assigned by the IANA for
+ AS_TRANS.
+
+
+
+
+
+
+
+
+
+
+
+Vohra & Chen Standards Track [Page 7]
+
+RFC 4893 BGP Support for Four-octet AS Number Space May 2007
+
+
+8. Security Considerations
+
+ This extension to BGP does not change the underlying security issues
+ inherent in the existing BGP, except for the following:
+
+ The inconsistency between the AS_PATH attribute and the AS4_PATH
+ attribute can create loss of the AS path information, and potential
+ routing loops in certain cases as discussed in the document. This
+ could be exploited by an attacker.
+
+9. Acknowledgments
+
+ The authors would like to thank Yakov Rekhter, Chaitanya Kodeboyina,
+ and Jeffrey Haas for the numerous discussions that went into the
+ making of this document.
+
+10. Normative References
+
+ [BGP] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A
+ Border Gateway Protocol 4 (BGP-4)", RFC 4271, January
+ 2006.
+
+ [RFC1997] Chandra, R., Traina, P., and T. Li, "BGP Communities
+ Attribute", RFC 1997, August 1996.
+
+ [RFC3392] Chandra, R. and J. Scudder, "Capabilities Advertisement
+ with BGP-4", RFC 3392, November 2002.
+
+ [RFC3065] Traina, P., McPherson, D., and J. Scudder, "Autonomous
+ System Confederations for BGP", RFC 3065, February 2001.
+
+ [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
+ Requirement Levels", BCP 14, RFC 2119, March 1997.
+
+11. Informative References
+
+ [AS-EXT-COM] Rekhter, Y., Ramachandra, S., and D. Tappan, "Four-octet
+ AS Specific BGP Extended Community", Work in Progress,
+ April 2007.
+
+
+
+
+
+
+
+
+
+
+
+
+Vohra & Chen Standards Track [Page 8]
+
+RFC 4893 BGP Support for Four-octet AS Number Space May 2007
+
+
+Authors' Addresses
+
+ Quaizar Vohra
+ Juniper Networks
+ 1194 N.Mathilda Ave
+ Sunnyvale, CA 94089
+
+ EMail: quaizar.vohra@gmail.com
+
+
+ Enke Chen
+ Cisco Systems, Inc.
+ 170 W. Tasman Dr.
+ San Jose, CA 95134
+
+ EMail: enkechen@cisco.com
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Vohra & Chen Standards Track [Page 9]
+
+RFC 4893 BGP Support for Four-octet AS Number Space May 2007
+
+
+Full Copyright Statement
+
+ Copyright (C) The IETF Trust (2007).
+
+ 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.
+
+ 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, THE IETF TRUST 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.
+
+Intellectual Property
+
+ 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.
+
+Acknowledgement
+
+ Funding for the RFC Editor function is currently provided by the
+ Internet Society.
+
+
+
+
+
+
+
+Vohra & Chen Standards Track [Page 10]
+