Path Attributes · Lesson 01 of 01
The path attributes
Every BGP route is a bundle of attributes. Knowing which are mandatory, which travel between AS's, and which never leave home is the foundation of everything that follows.
Written lesson
Four categories
BGP attributes fall into four classes. Well-known mandatory (ORIGIN, AS_PATH, NEXT_HOP) must be present in every update. Well-known discretionary (LOCAL_PREF, ATOMIC_AGGREGATE) are understood by all implementations but need not be present. Optional transitive (COMMUNITY, AGGREGATOR) may be unknown to a router, which passes them on anyway with the partial bit set. Optional non-transitive (MED) may be unknown, in which case it is dropped. The class tells you whether an attribute survives an AS boundary.
Written lesson
What crosses a boundary
LOCAL_PREF is the sharpest example: it is well-known but never leaves the AS — it exists to express a local preference among your own routers, so an eBGP peer neither sends nor receives it. WEIGHT is even more local: it is Cisco-proprietary and never appears in an update at all, living only in the local router. MED, by contrast, is meant to be sent to a neighbouring AS to influence how it sends traffic back to you, but it is non-transitive, so it does not propagate beyond that one neighbour.
AS_PATH does two jobs
AS_PATH prevents loops (reject a path containing your own AS on eBGP) and orders best-path (shorter is better). Prepending lengthens it on purpose to make a path less attractive — a policy lever built on a loop-prevention field.
Scope, memorised
- WEIGHT: local to one router, never advertised (Cisco).
- LOCAL_PREF: AS-wide, never leaves the AS.
- MED: sent to one neighbouring AS, non-transitive beyond it.
- AS_PATH, COMMUNITY: travel with the route across AS boundaries.