11 Path Attributes Overview

BGP does not use a single metric. Instead, each route carries a set of Path Attributes (PAs) that describe it and drive best-path selection. This note covers how attributes are classified; each individual attribute has its own note.

The classification system

Path attributes fall into four categories, based on two properties: whether an attribute is well-known or optional, and whether it is transitive or non-transitive.

  • Well-known: must be recognized by every BGP implementation, from any vendor.
  • Optional: may or may not be recognized; support is not guaranteed.
  • Transitive: if not recognized, it is still passed on to other peers.
  • Non-transitive: if not recognized, it is not passed on.

Because BGP is an open standard, it can differ slightly between vendors, which is exactly why the well-known versus optional distinction matters.

Well-known mandatory

Must be recognized by all implementations and must be present in every Update message.

  • Origin
  • AS-PATH
  • Next-Hop

Well-known discretionary

Must be recognized by all implementations, but may or may not be present in a given Update (not mandatory).

  • Local Preference
  • Atomic Aggregate

Optional transitive

May not be recognized. If a router does not recognize such an attribute, it must still accept it and pass it on to its peers, even without understanding it.

  • Aggregator
  • Community

Optional non-transitive

May not be recognized. If a router does not recognize such an attribute, it may drop it and not forward it to its peers.

  • MED

Summary table

CategoryRecognized by all?Passed on if unrecognized?Examples
Well-known mandatoryYesn/a (always present)Origin, AS-PATH, Next-Hop
Well-known discretionaryYesn/aLocal Preference, Atomic Aggregate
Optional transitiveNoYesAggregator, Community
Optional non-transitiveNoNoMED

A note on Weight

Weight is a Cisco-proprietary attribute and does not fit this standard classification, because it is never included in Update messages between routers. It is purely local to a single router and is covered in note 12.

Atomic Aggregate classification

Atomic Aggregate is well-known discretionary. The related Aggregator attribute is optional transitive. These two are easy to confuse because both relate to summarization; they are covered in note 20.

Self-check

Q1 — What do the two classification axes describe?

A) Inbound versus outbound, and permit versus deny
B) Well-known versus optional, and transitive versus non-transitive
C) eBGP versus iBGP, and local versus global
D) Mandatory versus discretionary, and IPv4 versus IPv6

Q2 — Which attributes are well-known mandatory?

A) Local Preference, Atomic Aggregate, MED
B) Origin, AS-PATH, Next-Hop
C) Weight, Local Preference, Community
D) Aggregator, Community, MED

Q3 — What must a router do with an unrecognized optional transitive attribute?

A) Drop it and not forward it
B) Accept it and pass it on to its peers
C) Reject the entire Update
D) Convert it to a well-known attribute

Q4 — Why does Weight not fit the standard classification?

A) Because it is well-known mandatory
B) Because it is Cisco-proprietary and never included in Updates between routers (purely local)
C) Because it is optional transitive
D) Because it only applies to IPv6