Internet-Draft DC eBGP Origin-Leaf Identification October 2026
Brissette, et al. Expires 3 May 2027 [Page]
Workgroup:
Inter-Domain Routing
Internet-Draft:
draft-brissette-idr-dc-origin-leaf-id-00
Published:
Intended Status:
Informational
Expires:
Authors:
P. Brissette, Ed.
Cisco Systems
K. Talaulikar
Cisco Systems
K. Ananthamurthy
Cisco Systems

Origin-Leaf Identification in Data-Center eBGP Underlays using BGP Large Communities

Abstract

Data-center fabrics that run hop-by-hop eBGP routing frequently need to identify the originating node (leaf) of a prefix as it is propagated through the fabric. The BGP AS_PATH attribute provides loop prevention and identifies the originating Autonomous System (AS), but under common AS numbering models an AS does not map to a single leaf. While several BGP community mechanisms could carry such an identifier, there is no documented practice describing the mechanism and encoding choices for underlay origin-leaf tagging.

This document analyzes the problem, states the requirements, and surveys candidate BGP mechanisms for carrying an origin-leaf identifier. It recommends encoding the identifier in a BGP Large Community (RFC 8092), describes how the identifier is allocated within the Large Community namespace, and describes how it is originated, propagated unchanged across the fabric, and consumed at receiving leaves. It also describes an optional profile for locally significant route-attachment metadata. This document is Informational and defines no new protocol elements.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on 3 May 2027.

▲

Table of Contents

1. Introduction

Modern data-center (DC) networks commonly use eBGP as the routing protocol for the IP underlay, carrying plain IPv4 and IPv6 unicast prefixes across a spine-leaf (Clos) or super-spine/spine/leaf fabric [RFC7938]. Each leaf advertises its locally originated prefixes upward toward the spines, which propagate them to all other leaves.

A number of operational functions - such as origin-leaf-aware forwarding and routing policy, traffic isolation, and operational visibility - benefit from knowing which leaf originated a given prefix. However, eBGP does not natively provide a structured, reliable way to convey the originating leaf's identity to receiving leaves.

This document describes the problem, the use cases, and the requirements for origin-leaf identification in a plain unicast eBGP underlay. It then surveys candidate BGP mechanisms and recommends a concrete, interoperable practice based on BGP Large Communities [RFC8092]. Two namespace allocation models and their corresponding encodings are described, of which a deployment uses exactly one encoding consistently (see Section 7.1). The document is Informational: it documents an operational practice built entirely from existing, standardized BGP capabilities and does not define any new protocol element or IANA registration.

1.1. Scope

This document is limited to plain IPv4 and IPv6 unicast eBGP underlays. Overlay technologies such as EVPN/VXLAN are discussed only insofar as they affect the choice of underlay mechanism (see Section 8). Implementation-specific data-plane programming details (for example, how a particular routing stack propagates metadata to an ASIC) are out of scope; this document focuses on the control-plane encoding and its propagation properties.

The primary focus is origin-leaf identification; Section 7.2 describes an optional profile for locally significant route-attachment metadata using the same Large Community construction.

1.2. Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

This document is Informational and defines no new protocol elements. Where these key words appear, they express requirements and recommendations for deployments that follow the operational practice described here; they do not impose conformance requirements on BGP protocol implementations.

2. Terminology

Fabric:
A DC network built as a folded Clos topology of leaves and spines (and, optionally, super-spines).
Leaf:
A top-of-rack (ToR) or equivalent BGP speaker that originates prefixes into the fabric and receives prefixes from other leaves.
Spine:
An aggregation-tier BGP speaker that interconnects leaves within a pod.
Super-spine:
A BGP speaker that interconnects pods in a three-tier fabric.
Pod:
A group of leaves and spines forming a repeatable unit of the fabric.
Originating leaf:
The leaf that first advertises a given prefix into the fabric. "Origin" refers to the control-plane origin of the route; in the forwarding plane, the originating leaf is the egress (destination) leaf for traffic sent toward the prefix.
Receiving leaf:
Any leaf that learns a prefix originated by another leaf.
Origin-leaf identifier:
A structured value that unambiguously identifies the originating leaf and pod (and, optionally, port) of a prefix.
Assigning ASN:
The ASN carried in the Global Administrator field of a Large Community, acting as the authority that defines the meaning of its Local Data fields [RFC8092].

3. Problem Statement

Each leaf advertises its locally originated prefixes upward toward the spines, which propagate them to all other leaves. A receiving leaf that wishes to apply origin-based policy needs to know which leaf originated each prefix. The following subsections examine why eBGP does not reliably provide this information today.

3.1. What the AS_PATH Provides

The BGP AS_PATH attribute records every Autonomous System a route has traversed and serves two purposes: loop prevention, and identification of the AS from which a prefix originated. Origin identification is therefore at AS granularity; whether it also identifies the originating leaf depends entirely on the AS-numbering model in use:

Table 1: Leaf Identity Recoverable from AS_PATH by AS-Numbering Model
AS assignment model Leaf identity in AS_PATH Notes
Unique private ASN per leaf Directly readable e.g. Leaf-1 = AS 65101, Leaf-2 = AS 65102
Unique ASN per tier (all leaves share one ASN) Lost - all leaves appear identical Common in large fabrics to simplify policy
Shared ASN pool (ASNs reused across pods) Ambiguous Pod A Leaf-1 and Pod B Leaf-1 may share the same ASN

Even in the best case (a unique ASN per leaf), the AS_PATH is a path descriptor rather than a structured tag. Extracting leaf identity from it requires matching specific ASN values, which is brittle when ASN assignment changes and provides no room for structured metadata such as pod, rack, or role.

3.2. Lack of an Established Practice

BGP offers several community mechanisms - Standard Communities [RFC1997], Extended Communities [RFC4360], and Large Communities [RFC8092] - any of which could, in principle, carry an origin identifier. However, there is no documented, interoperable practice describing which mechanism to use for DC underlay origin-leaf tagging, nor how to encode the identifier. The result is ad hoc, per-operator solutions that do not interoperate and that are difficult to reason about operationally.

3.3. Multi-Hop Survival Requirement

An origin-leaf identifier must survive every eBGP hop between the originating and receiving leaf. In a two-tier spine-leaf fabric a prefix crosses at least two eBGP hops (leaf to spine, spine to leaf). In a three-tier fabric with super-spines a prefix crosses at least four eBGP hops (leaf to spine to super-spine to spine to leaf). The chosen mechanism must therefore be preserved, unmodified, across all intermediate BGP speakers, without per-hop strip and re-add, when community advertisement is enabled across the propagation path.

4. Use Cases

4.1. Origin-Leaf-Aware Policy

At a receiving leaf, BGP learns routes carrying the originating leaf's identifier. The operator extracts this identifier and uses it to drive behavior that depends on the leaf at which traffic toward the prefix exits the fabric, for example:

  • programming forwarding policy that depends on the originating leaf or pod;
  • applying Quality of Service (QoS), Access Control List (ACL), or traffic-steering rules per originating leaf, for example to support asymmetric routing or service-level objectives;
  • implementing pod-aware Equal-Cost Multi-Path (ECMP) or traffic isolation;
  • applying BGP policy that targets a specific originating leaf (for example, adjusting LOCAL_PREF on, or rejecting, routes from a leaf under maintenance). Coarser location-based preference (for example, per site or region) is commonly handled with location communities and is not the focus of this document.

The key requirement is that the origin-leaf identity be recoverable as structured metadata rather than being buried in an attribute that is expensive or ambiguous to parse.

4.2. Operational Visibility

Operators can identify the originating leaf of a prefix directly from BGP route attributes, using an identifier that is independent of the fabric's AS-numbering model, rather than inferring it indirectly (for example, from AS_PATH contents).

5. Requirements

AS_PATH retains its loop-prevention and origin-AS roles (see Section 3.1); the requirements below concern leaf-level origin identification, which AS_PATH does not provide in general. The following requirements guide the selection of a mechanism.

Table 2: Requirements for an Origin-Leaf Identification Mechanism
ID Requirement
R1 The identifier MUST be unique per originating leaf across the entire fabric.
R2 The identifier MUST be preserved across all eBGP hops (spine, super-spine) without explicit strip and re-add.
R3 The mechanism itself MUST NOT alter standard eBGP behavior (loop prevention, best-path selection, ECMP), independent of any explicit operator policy applied to the identifier.
R4 The mechanism MUST work for both IPv4 unicast and IPv6 unicast Address Families (AFs).
R5 The mechanism MUST be expressible using widely available BGP policy constructs.
R6 The identifier encoding SHOULD be structured enough to carry pod, leaf, and (optionally) port granularity.
R7 At the receiving leaf, the identifier MUST be matchable by inbound BGP policy (for example, by community or large-community matching).
R8 The identifier SHOULD be mappable to local, implementation-specific metadata (for example, a route tag) for use by policy and the forwarding plane. This is a deployment and implementation consideration rather than a BGP protocol property.
R9 The mechanism SHOULD coexist with a future VXLAN/EVPN overlay deployment without conflict or migration.
R10 The mechanism SHOULD be extensible to carry other route-associated attachment metadata, such as a locally assigned switch or interface identifier, without defining a new BGP path attribute or community type.
R11 The identifier SHOULD be independent of the fabric's ASN assignment and remain stable when ASNs are renumbered.
R12 The identifier MUST NOT collide with other uses of the same community namespace.
R13 The identifier MUST be removable by routing policy (for example, an export policy at the fabric boundary) so that it is not advertised beyond the fabric.

6. Candidate Mechanisms

This section surveys the mechanisms that could carry an origin-leaf identifier and evaluates each against the requirements in Section 5.

Identifying the originator of a route is not new in BGP, but the existing mechanisms are tied to contexts that a plain unicast eBGP underlay does not use, and are therefore not considered further. The ORIGINATOR_ID attribute [RFC4456] is set by route reflectors and is not carried over eBGP. Route Distinguishers of Type 1 [RFC4364], which embed the originating router's IP address and on which EVPN [RFC7432] and inter-AS Option B deployments rely, exist only in VPN address families. BGP-based VPLS [RFC4761] identifies sites by a VE ID carried in the L2VPN NLRI. The VRF Route Import Extended Community [RFC6514] carries the originating PE's address but is defined for MVPN procedures on VPN-IP routes. Each of these fails R2 or R4 for plain IPv4/IPv6 unicast.

6.1. Per-Leaf Unique Private ASN (AS_PATH Encoding)

Each leaf is assigned a unique private ASN, so that the origin AS conveyed by the AS_PATH (Section 3.1) identifies the originating leaf, and policy can match on it.

Advantages: no additional configuration beyond ASN assignment; works with standard eBGP; survives an unlimited number of hops.

Drawbacks: no structured encoding (pod/rack relationships require an external mapping); matching on AS_PATH is brittle when ASN assignment changes; it fails entirely when leaves share an ASN (the per-tier model); the private-ASN pool is finite; and it carries no semantic metadata. It therefore does not satisfy R1, R5, R6, or R11 in the general case.

6.2. BGP Standard Community

At the originating leaf, a Standard Community "AA:NN" [RFC1997] encodes a fabric identifier and a leaf identifier.

Advantages: universally supported; survives eBGP hops when not stripped; simple to configure and well understood.

Drawbacks: each field is only 16 bits. Operators do build hierarchical encodings within that space, but 16 bits is too small to carry pod, leaf, and port at DC scale without aggressive packing. The namespace is also shared with other policy uses (QoS marking, blackholing, and so on), creating a risk of collision (R12). It satisfies R6 only for small fabrics.

6.3. BGP Large Community

A Large Community [RFC8092] is three 32-bit integers, "global-administrator:local-data-1:local-data-2". The Global Administrator field carries an ASN that acts as the assigning authority, and the two Local Data fields carry operator-defined values.

Advantages: 32 bits per field (ample scale); a namespace separate from Standard Communities and partitioned by assigning ASN; standardized and widely supported; and no effect on BGP best-path selection. It satisfies R1 through R8, R9 (see Section 8), R11 (subject to the caveat for the per-pod-ASN encoding in Section 7.1.1), R12 (see Section 7.1), and R13 (see Section 12).

The same mechanism can also encode route-associated switch/port metadata using operator-defined local identifiers, avoiding the need for a new type-specific BGP community when the information is consumed within a single administrative domain (see Section 7.2); this addresses R10.

Considerations: Large Communities are widely used for other purposes (for example, informational and action communities [RFC8195]), possibly under the same ASN an operator would choose as assigning authority. An origin-leaf encoding therefore cannot assume that it owns the entire Large Community space of that ASN; it either uses an ASN dedicated to this purpose or reserves a function value within a shared ASN (see Section 7.1). Like other communities, a Large Community is not sent to a peer unless the sender is configured to advertise Large Communities, and it is less universally deployed on legacy equipment than Standard Communities.

6.4. BGP Site-of-Origin (SoO) Extended Community

The Site-of-Origin (SoO) Extended Community [RFC4364] is a transitive Extended Community used by BGP VPN deployments, and some EVPN deployments and implementations, to prevent routing loops by identifying the site from which a route originated. When a route carrying an SoO is received in a context configured with the same site-origin value, the route is typically rejected or suppressed to avoid re-advertising it back into the originating site. In L3VPN this is the classic multihomed CE/site loop-prevention case of [RFC4364]; in EVPN and symmetric L3VNI designs SoO is likewise used to prevent re-advertisement loops across multihomed sites. Each leaf could set a unique SoO value on its originated routes.

Advantages: standardized and transitive; can be matched in policy and extracted to local metadata; and it aligns with EVPN deployments that already use SoO.

Drawbacks: SoO's loop-prevention behavior is useful for its intended VPN/EVPN use case, but it makes SoO a less clean fit for plain unicast underlay metadata, where the desired property is passive origin identification without any implicit loop-prevention semantics. Where an operator does configure SoO-based procedures on the underlay, a route whose SoO matches the local site-origin context may be rejected or suppressed; in a correctly numbered fabric this does not trigger, but misconfiguration or unexpected reflection can cause hard-to-diagnose route loss (relevant to R3). Finally, SoO provides only two fields with a 16-bit value, so it cannot cleanly encode pod, leaf, and port (weak on R6). SoO may be an acceptable choice when an EVPN overlay is already deployed and a single mechanism is preferred; see Section 8.

6.5. Generic (Opaque) Extended Community

A transitive opaque Extended Community [RFC4360] could carry an opaque leaf identifier in its value bits.

Advantages: transitive across eBGP; type-coded.

Drawbacks: the encoding is opaque with no standardized semantic meaning, configuration is more complex, and operational visibility is poor compared with Large Communities or SoO. It is not recommended for this use case.

6.6. Future: Path-Recording Attributes

Work-in-progress BGP extensions that record the set of nodes a route has traversed could, in the future, expose the originating leaf as the first node in a recorded path, in addition to full hop-by-hop path visibility. Such mechanisms are broader than the origin-only requirement addressed here, are not yet standardized, and have uncertain deployment timelines. They may become relevant for use cases requiring full path visibility (for example, advanced traffic engineering or SLA monitoring) but are not recommended for origin-leaf-only identification today.

6.7. Comparison

Table 3: Comparison of Candidate Mechanisms
Criterion Unique ASN Standard Community Large Community SoO Ext. Community Generic Ext. Community
Value space Finite ASN pool 16-bit per field 32-bit per field ASN:16-bit or IP:16-bit 48-bit opaque
Structured encoding No Partial (2 fields) Yes (3 fields; packing depends on encoding) Partial (2 fields) Opaque
Survives N eBGP hops Yes Yes (if not stripped) Yes (if not stripped) Yes (transitive) Yes
IPv4 and IPv6 unicast Yes Yes Yes Yes Yes
Operational clarity Requires ASN lookup Readable Readable; per-field matching depends on encoding Readable Opaque/hex
BGP selection impact AS_PATH length None None Loop-prevention rejection (VPN/EVPN procedures) None
Namespace isolation None Shared with policy Per assigning ASN; partitioned by dedicated ASN or function value Dedicated (VPN semantics) Dedicated
Reference RFC 4271 RFC 1997 RFC 8092 RFC 4364 RFC 4360
Plain unicast (no EVPN) Works Works Recommended Works, VPN semantics Not recommended

8. Coexistence with EVPN/VXLAN Overlays

The recommended Large Community mechanism is orthogonal to overlay loop-prevention mechanisms. When a VXLAN/EVPN overlay is later added, some EVPN deployments - particularly symmetric L3VNI, multihoming, or interconnect designs - use the SoO Extended Community [RFC7432] [RFC9136] to prevent re-advertisement loops. The underlay Large Community continues to convey origin-leaf metadata independently. A route may therefore carry both a Large Community (underlay origin metadata) and an SoO Extended Community (overlay loop prevention) without conflict; no migration of the underlay tagging is required. This satisfies R9.

Where an EVPN overlay is already deployed and operators strongly prefer a single mechanism for both underlay and overlay, SoO MAY be used for underlay origin identification instead, accepting the encoding and side-effect limitations described in Section 6.4. For new plain-unicast fabrics, the Large Community approach remains RECOMMENDED.

9. Operational Considerations

10. Deployment Considerations

11. IANA Considerations

This document has no IANA actions. It defines no new BGP path attribute, community, or code point; it describes an operational use of the existing BGP Large Communities attribute [RFC8092].

12. Security Considerations

The mechanism described here reuses existing BGP capabilities and introduces no new protocol machinery, so it does not change the fundamental security properties of BGP [RFC4271]. The following operational considerations apply.

The origin-leaf or route-attachment Large Community reveals internal fabric topology (pod, leaf, port, or switch structure). To avoid leaking this information to parties outside the administrative domain, operators SHOULD apply export policy at the fabric border that removes the origin-leaf or route-attachment Large Community on advertisement toward external peers (R13). These communities are identified by their assigning ASN and, in the function-based encoding, their function value.

Conversely, an origin-leaf or route-attachment Large Community received from outside the fabric could be used to inject a forged origin identity, which might mislead origin-leaf-aware policy. Operators SHOULD therefore remove or sanitize these Large Communities on ingress from external peers at all border devices, so that only communities set by trusted fabric devices are honored. The identifier is not cryptographically authenticated; its trustworthiness depends entirely on border filtering and on trust in the fabric's BGP speakers.

Because the mechanism relies on Large Communities being preserved across eBGP hops, operators should be aware that a compromised or misconfigured intermediate speaker could alter or remove the identifier; standard BGP hardening and configuration-audit practices apply.

13. References

13.1. Normative References

[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/info/rfc2119>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/info/rfc8174>.
[RFC8092]
Heitz, J., Ed., Snijders, J., Ed., Patel, K., Bagdonas, I., and N. Hilliard, "BGP Large Communities Attribute", RFC 8092, DOI 10.17487/RFC8092, , <https://www.rfc-editor.org/info/rfc8092>.

13.2. Informative References

[RFC1997]
Chandra, R., Traina, P., and T. Li, "BGP Communities Attribute", RFC 1997, DOI 10.17487/RFC1997, , <https://www.rfc-editor.org/info/rfc1997>.
[RFC4271]
Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A Border Gateway Protocol 4 (BGP-4)", RFC 4271, DOI 10.17487/RFC4271, , <https://www.rfc-editor.org/info/rfc4271>.
[RFC4360]
Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended Communities Attribute", RFC 4360, DOI 10.17487/RFC4360, , <https://www.rfc-editor.org/info/rfc4360>.
[RFC4364]
Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private Networks (VPNs)", RFC 4364, DOI 10.17487/RFC4364, , <https://www.rfc-editor.org/info/rfc4364>.
[RFC4456]
Bates, T., Chen, E., and R. Chandra, "BGP Route Reflection: An Alternative to Full Mesh Internal BGP (IBGP)", RFC 4456, DOI 10.17487/RFC4456, , <https://www.rfc-editor.org/info/rfc4456>.
[RFC4761]
Kompella, K., Ed. and Y. Rekhter, Ed., "Virtual Private LAN Service (VPLS) Using BGP for Auto-Discovery and Signaling", RFC 4761, DOI 10.17487/RFC4761, , <https://www.rfc-editor.org/info/rfc4761>.
[RFC6514]
Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP Encodings and Procedures for Multicast in MPLS/BGP IP VPNs", RFC 6514, DOI 10.17487/RFC6514, , <https://www.rfc-editor.org/info/rfc6514>.
[RFC7432]
Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A., Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432, , <https://www.rfc-editor.org/info/rfc7432>.
[RFC7938]
Lapukhov, P., Premji, A., and J. Mitchell, Ed., "Use of BGP for Routing in Large-Scale Data Centers", RFC 7938, DOI 10.17487/RFC7938, , <https://www.rfc-editor.org/info/rfc7938>.
[RFC8195]
Snijders, J., Heasley, J., and M. Schmidt, "Use of BGP Large Communities", RFC 8195, DOI 10.17487/RFC8195, , <https://www.rfc-editor.org/info/rfc8195>.
[RFC9136]
Rabadan, J., Ed., Henderickx, W., Drake, J., Lin, W., and A. Sajassi, "IP Prefix Advertisement in Ethernet VPN (EVPN)", RFC 9136, DOI 10.17487/RFC9136, , <https://www.rfc-editor.org/info/rfc9136>.

Acknowledgements

The authors would like to thank Stephane Litkowski for his review and comments.

Authors' Addresses

Patrice Brissette (editor)
Cisco Systems
Ketan Talaulikar
Cisco Systems
Krishnaswamy Ananthamurthy
Cisco Systems