BGP - transitive and non-transitive attributes
BGP uses a series of attributes to determine the selection of the best path. These attributes are properties of a route and are considered by BGP when making routing decisions. The attributes can be divided into two categories: transitive and non-transitive. A description of each type can be seen below:
- Transitive BGP Attributes: These are attributes that, if received from a BGP peer, will be forwarded to other BGP peers. The concept of transitivity is all about propagation. Transitive attributes are meant to be passed along from one BGP speaker to another. If a BGP speaker does not recognize a transitive attribute, it will still pass it on to the next BGP speaker. Examples of transitive attributes include AS_PATH, NEXT_HOP, and MED (Metric).
- Non-Transitive BGP Attributes: These are attributes that, if received from a BGP peer, will not be forwarded to other peers. Non-transitive attributes are kept local and are not intended to be shared with every BGP speaker in the network. If a BGP speaker does not recognize a non-transitive attribute, it will not forward that attribute to other peers. An example of a non-transitive attribute is LOCAL_PREF.
In essence, the difference between the two lies in whether they are propagated (passed along) from one BGP speaker to another. Transitive attributes are propagated regardless of whether they're recognized by a BGP speaker, whereas non-transitive ones are not.