BGP Overview 829BGP Path Attributes Classification of path attributesPath attributes fall into four categories:■ Well-known mandatory: Must be recognized by all BGP routers and must beincluded in every update message. Routing information error occurs withoutthis attribute.■ Well-known discretionary: Can be recognized by all BGP routers and optionalto be included in every update message as needed.■ Optional transitive: Transitive attribute between ASs. A BGP router notsupporting this attribute can still receive routes with this attribute and advertisethem to other peers.■ Optional non-transitive: If a BGP router does not support this attribute, it willnot advertise routes with this attribute.The usage of each BGP path attributes is described in the following table.Usage of BGP path attributes1 ORIGINORIGIN is a well-known mandatory attribute and defines the origin of routinginformation and how a route becomes a BGP route. It involves three types:■ IGP: Has the highest priority. Routes added to the BGP routing table using thenetwork command have the IGP attribute.■ EGP: Has the second highest priority. Routes obtained via EGP have the EGPattribute.■ incomplete: Has the lowest priority. The source of routes with this attribute isunknown, which does not mean such routes are unavailable. The routesredistributed from other routing protocols have the incomplete attribute.2 AS_PATHAS_PATH is a well-known mandatory attribute. This attribute identifies theautonomous systems through which routing information carried in this Updatemessage has passed. When a route is advertised from the local AS to another AS,each passed AS number is added into the AS_PATH attribute, thus the receiver canTable 40 Usage of BGP path attributesName CategoryORIGIN Well-known mandatoryAS_PATH Well-known mandatoryNEXT_HOP Well-known mandatoryLOCAL_PREF Well-known discretionaryATOMIC_AGGREGATE Well-known discretionaryAGGREGATOR Optional transitiveCOMMUNITY Optional transitiveMULTI_EXIT_DISC (MED) Optional non-transitiveORIGINATOR_ID Optional non-transitiveCLUSTER_LIST Optional non-transitive