Skip to main content

3. Protocol Extensions

For the purpose of this document, we define a BGP speaker that does not support the new four-octet AS number extensions as an OLD BGP speaker, and a BGP speaker that supports the new four-octet AS number extensions as a NEW BGP speaker.

BGP carries the AS numbers 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 AS numbers in the BGP Communities attribute.

A NEW BGP speaker uses BGP Capabilities Advertisements [RFC5492] to advertise to its neighbors (either internal or external) that it supports four-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 four-octet Autonomous System number capability also carries the AS number (encoded as a four-octet entity) of the speaker in the Capability Value field of the capability. The Capability Length field of the capability is set to 4.

The AS path information exchanged between NEW BGP speakers is carried in the existing AS_PATH attribute, except that each AS number in the attribute is encoded as a four-octet entity (instead of a two-octet entity). The same applies to the AGGREGATOR attribute -- the same attribute is used between NEW BGP speakers, except that the AS number carried in the attribute is encoded as a four-octet entity.

The AS_PATH attribute and the AGGREGATOR attribute carried between a NEW BGP speaker and an OLD BGP speaker will continue to contain two-octet AS numbers.

To preserve the AS path information with four-octet AS numbers across OLD BGP speakers, this document defines a new BGP path attribute called AS4_PATH. This is an optional transitive attribute that contains the AS path encoded with four-octet AS numbers. The AS4_PATH attribute has the same semantics and the same encoding as the AS_PATH attribute, except that it is "optional transitive", and it carries four-octet AS numbers.

To prevent the possible propagation of Confederation-related path segments outside of a Confederation, the path segment types AS_CONFED_SEQUENCE and AS_CONFED_SET [RFC5065] are declared invalid for the AS4_PATH attribute and MUST NOT be included in the AS4_PATH attribute of an UPDATE message.

Similarly, this document defines a new BGP path attribute called AS4_AGGREGATOR, which is optional transitive. The AS4_AGGREGATOR attribute has the same semantics and the same encoding as the AGGREGATOR attribute, except that it carries a four-octet AS number.

Currently assigned two-octet AS numbers are converted into four-octet AS numbers by setting the two high-order octets of the four-octet field to zero. Such a four-octet AS number is said to be mappable to a two-octet AS number.

This document reserves a two-octet AS number called "AS_TRANS". AS_TRANS can be used to represent non-mappable four-octet AS numbers as two-octet AS numbers in AS path information that is encoded with two-octet AS numbers. (In this context, four-octet AS numbers that are not mapped from two-octet AS numbers are referred to as "non-mappable".) 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 and only if the speaker does not have a (globally unique) two-octet AS number.