-
Notifications
You must be signed in to change notification settings - Fork 461
Glossary
A-Z glossary of BGP and ExaBGP terminology
Comprehensive definitions of terms, acronyms, and concepts used in BGP routing and ExaBGP.
Feature in ExaBGP 4.x and 5.x (enabled by default) that sends command acknowledgments (done, error, shutdown) back to API processes after executing commands.
See also: API Overview - ACK Feature
RFC 7911 - BGP capability that allows advertising multiple paths for the same prefix without opening new BGP sessions. Useful for path diversity and multipath routing.
See also: ADD-PATH Capability
A combination of AFI (Address Family Identifier) and SAFI (Subsequent Address Family Identifier) that defines the type of routing information being exchanged. Examples: IPv4 unicast, IPv6 unicast, VPNv4, FlowSpec, EVPN.
See also: Address Families
Top-level identifier for address families in BGP multiprotocol extensions (RFC 4760).
Common AFI values:
-
1- IPv4 -
2- IPv6 -
25- L2VPN -
16388- BGP-LS
See also: Multiprotocol BGP
BGP attribute (Type 7) - Identifies the AS and router that performed route aggregation. Consists of AS number and IP address.
See also: Attribute Reference - AGGREGATOR
RFC 7311 - BGP attribute (Type 26) that carries accumulated IGP metric for seamless MPLS and inter-domain routing.
See also: Attribute Reference
Routing technique where the same IP address is announced from multiple locations. Traffic is routed to the nearest (lowest cost) location. Used for load balancing and high availability.
ExaBGP use case: Health check + route announcement for anycast services (DNS, CDN, load balancers).
See also: Anycast Management
A collection of IP networks and routers under the control of a single organization that presents a common routing policy to the Internet. Identified by an AS Number (ASN).
BGP attribute (Type 2) - Well-known mandatory attribute listing the sequence of ASNs the route has traversed. Used for loop detection and path selection.
See also: Attribute Reference - AS_PATH
Traffic engineering technique where the local AS is prepended multiple times to the AS_PATH to make the path less attractive to neighboring ASes.
Example:
announce route 10.0.0.0/24 next-hop 192.0.2.1 as-path [65001 65001 65001]See also: Attribute Reference - AS_PATH
Unique identifier for an Autonomous System. Originally 16-bit (0-65535), now extended to 32-bit (0-4294967295) by RFC 4893.
Ranges:
-
1-64511- Public ASNs -
64512-65534- Private ASNs (16-bit) -
65535- Reserved -
64496-64511- Documentation ASNs -
4200000000-4294967294- Private ASNs (32-bit)
BGP attribute (Type 6) - Indicates route was aggregated and AS path information may be incomplete.
See also: Attribute Reference - ATOMIC_AGGREGATE
The routing protocol used to exchange routing information between autonomous systems on the Internet. Current version is BGP-4 (RFC 4271).
ExaBGP relationship: ExaBGP implements BGP-4 protocol but does NOT manipulate the RIB/FIB. It only speaks the BGP protocol.
See also: RFC 4271
The state machine that governs BGP session establishment and maintenance.
States:
- Idle - Initial state
- Connect - Waiting for TCP connection
- Active - Trying to establish TCP connection
- OpenSent - OPEN message sent
- OpenConfirm - OPEN message received and validated
- Established - BGP session active, exchanging routes
See also: BGP State Machine
RFC 7752 - BGP extension for distributing network topology information (IGP link-state data) to SDN controllers and centralized path computation engines.
ExaBGP use case: Topology collection for SDN, traffic engineering, network visualization.
See also: BGP-LS Overview
Routing technique where traffic is dropped by setting the next-hop to a discard interface. Used for DDoS mitigation.
Remote Triggered Blackhole (RTBH): Upstream provider drops traffic based on BGP announcement with special community (e.g., 65535:666).
See also: DDoS Mitigation
RFC 7313 - Marker indicating the start of route refresh. Part of Enhanced Route Refresh capability.
Optional features negotiated during BGP session establishment via the OPEN message. Examples: ADD-PATH, Graceful Restart, 4-byte ASN, Route Refresh.
See also: Capabilities
IP address allocation and routing methodology using variable-length subnet masks. Notation: 10.0.0.0/24.
BGP attribute (Type 10) - Used by route reflectors to prevent routing loops between clusters. Lists cluster IDs the route has traversed.
See also: Attribute Reference - CLUSTER_LIST, Route Reflection
BGP attribute (Type 8) - Optional transitive attribute used to tag routes for policy application. Format: ASN:Value (both 16-bit).
Well-known communities:
-
NO_EXPORT(65535:65281) - Don't advertise to EBGP -
NO_ADVERTISE(65535:65282) - Don't advertise to any peer -
NOPEER(65535:65284) - Don't advertise to peers
See also: Attribute Reference - COMMUNITY, Communities
RFC 5065 - Technique for dividing a large AS into sub-ASes while appearing as a single AS to external peers. Used for IBGP scaling.
Attack where multiple compromised systems flood a target with traffic. BGP FlowSpec is used to mitigate DDoS attacks.
ExaBGP use case: Detect attacks → Announce FlowSpec rules → Block/rate-limit malicious traffic.
See also: DDoS Mitigation, FlowSpec
6-bit field in IP header used for QoS classification. FlowSpec can mark traffic with DSCP values.
See also: FlowSpec Actions - Mark
BGP sessions between routers in different autonomous systems.
Characteristics:
- Different AS numbers
- Next-hop is typically changed to advertising router
- AS_PATH is modified (local AS prepended)
- TTL typically set to 1 (for directly connected peers)
Contrast: IBGP
Routing technique where traffic is load-balanced across multiple equal-cost paths.
ExaBGP integration: ExaBGP announces routes → Router with ECMP distributes traffic across multiple next-hops.
See also: Service High Availability
ExaBGP term - Format for API messages. Options: text or json.
Configuration:
process announce-routes {
run /path/to/script.py;
encoder text; # or json
}See also: Text API Reference, JSON API Reference
Marker indicating initial BGP route convergence is complete. Implemented as an UPDATE message with no NLRI.
See also: API Commands - eor
RFC 7313 - Marker indicating the end of route refresh. Part of Enhanced Route Refresh capability.
RFC 7432 - BGP MPLS-based Ethernet VPN for data center fabrics, VXLAN control plane, and multi-tenant networks.
ExaBGP support: Full EVPN route types (1-5), MAC/IP advertisement, inclusive multicast routes.
See also: EVPN Overview
BGP attribute (Type 16) - 8-byte communities (vs 4-byte standard communities). Used for VPN route targets, FlowSpec actions, link bandwidth.
Types:
- Route Target (RT)
- Route Origin (RO)
- Redirect (FlowSpec)
- Traffic Rate (FlowSpec)
- Traffic Marking (FlowSpec)
See also: Attribute Reference - EXTENDED_COMMUNITY
The actual forwarding table used by routers to forward packets. Derived from RIB.
ExaBGP does NOT manipulate FIB. External processes must install routes into the OS routing table (e.g., via ip route add).
See also: RIB/FIB
RFC 5575/8955 - BGP extension for distributing traffic filtering rules. Used for DDoS mitigation, traffic filtering, and QoS.
ExaBGP achievement: First open-source implementation of FlowSpec (now also in GoBGP, FRR, BIRD).
Components:
- Match conditions: source, destination, port, protocol, packet length, TCP flags, etc.
- Actions: discard, rate-limit, redirect, mark DSCP, community
See also: FlowSpec Overview, DDoS Mitigation
The act of sending packets from one interface to another based on routing table entries.
ExaBGP does NOT perform forwarding. It only speaks BGP protocol.
RFC 4724 - BGP capability allowing session restart without losing forwarding state. Minimizes traffic disruption during control plane restarts.
See also: Graceful Restart Capability
RFC 5082 - Security mechanism using TTL field to prevent BGP session hijacking. Packets with incorrect TTL are dropped.
ExaBGP configuration:
incoming-ttl 1; # Require TTL=255 (direct connection)See also: Security Best Practices
Mechanism to monitor service availability and announce/withdraw routes based on health.
ExaBGP built-in healthcheck:
python3 -m exabgp healthcheck --cmd "curl http://localhost"See also: Service High Availability, Example
BGP timer (in seconds) specifying maximum time without receiving KEEPALIVE or UPDATE before declaring session dead.
Default: 180 seconds Keepalive: Hold time / 3
Configuration:
hold-time 180;BGP sessions between routers within the same autonomous system.
Characteristics:
- Same AS number for local-as and peer-as
- Next-hop is typically NOT changed
- AS_PATH is NOT modified
- LOCAL_PREF is propagated
- Requires full mesh or route reflection
Contrast: EBGP
Routing protocols used within an autonomous system. Examples: OSPF, IS-IS, RIP, EIGRP.
Relationship to BGP: BGP relies on IGP for next-hop reachability.
ExaBGP does NOT run IGP. It only speaks BGP.
BGP message sent periodically to maintain session. Sent every (hold-time / 3) seconds.
See also: Hold Time
VPN operating at Layer 2 (Ethernet). Includes VPLS (Virtual Private LAN Service).
ExaBGP support: VPLS announcements.
See also: VPLS Configuration
RFC 4364 - MPLS-based VPN operating at Layer 3 (IP). Uses VPNv4/VPNv6 address families.
Components:
- Route Distinguisher (RD): Makes routes unique
- Route Target (RT): Import/export filter
ExaBGP support: Full VPNv4/VPNv6 support.
See also: L3VPN Overview
MPLS label - 20-bit value used for MPLS forwarding. VPN routes carry labels.
See also: L3VPN
RFC 8092 - BGP attribute (Type 32) with 12 bytes (vs 4 bytes for standard communities). Format: ASN:Value1:Value2 (all 32-bit).
Advantage: Native support for 4-byte ASNs and larger value space.
See also: Attribute Reference - LARGE_COMMUNITY
BGP attribute (Type 5) - Well-known discretionary attribute indicating degree of preference for a route (IBGP only). Higher value = more preferred.
Range: 0-4294967295 Default: 100
See also: Attribute Reference - LOCAL_PREF
RFC 2385 - TCP MD5 signature option for BGP session authentication. All packets are signed with shared secret.
ExaBGP configuration:
md5-password "MySecretPassword";See also: Security Best Practices
BGP attribute (Type 4) - Optional non-transitive attribute influencing route preference from neighboring AS. Lower value = more preferred.
Range: 0-4294967295 Default: 0
Use case: Multi-homed networks signaling preferred entry point.
See also: Attribute Reference - MED
RFC 4760 - Extension to BGP-4 supporting multiple address families beyond IPv4 unicast. Uses MP_REACH_NLRI and MP_UNREACH_NLRI attributes.
Address families: IPv6, VPNv4, VPNv6, FlowSpec, EVPN, BGP-LS, VPLS, MVPN, etc.
See also: Multiprotocol BGP
Forwarding mechanism using labels instead of IP addresses. Foundation for L3VPN, VPLS, traffic engineering.
ExaBGP relationship: ExaBGP can announce VPN routes with labels but does NOT perform MPLS forwarding.
File format for storing BGP messages and routing table snapshots. ExaBGP can output MRT format.
See also: MRT Documentation
RFC 6514 - BGP-based multicast VPN for distributing multicast traffic across MPLS networks.
ExaBGP support: MVPN route announcements.
See also: Configuration Example
BGP peer. In ExaBGP configuration, defines a BGP session.
Configuration:
neighbor 192.168.1.1 {
router-id 192.168.1.2;
local-as 65001;
peer-as 65000;
}See also: Configuration Syntax
BGP attribute (Type 3) - IP address to forward packets to. Well-known mandatory for IPv4 unicast.
EBGP: Changed to advertising router IBGP: Preserved (not changed)
⚠️ Warning:next-hop selfis an EXPERIMENTAL feature. For production use, specify an explicit next-hop IP address instead.
See also: Attribute Reference - NEXT_HOP
The actual routing information (prefixes) carried in BGP UPDATE messages.
Examples:
-
10.0.0.0/24(IPv4 unicast) -
2001:db8::/64(IPv6 unicast) - FlowSpec rules
- VPN routes with RD
Well-known community (65535:65282) - Routes with this community must not be advertised to any peer.
See also: Attribute Reference - COMMUNITY
Well-known community (65535:65281) - Routes with this community must not be advertised to EBGP peers.
See also: Attribute Reference - COMMUNITY
BGP message type sent when errors occur or session is being closed. Contains error code and subcode.
Common error codes:
- Message Header Error
- OPEN Message Error
- UPDATE Message Error
- Hold Timer Expired
- Finite State Machine Error
- Cease
See also: Debugging Guide
BGP message type sent during session establishment. Contains BGP version, AS number, hold time, router ID, and capabilities.
See also: BGP FSM
BGP attribute (Type 1) - Well-known mandatory attribute indicating origin of route.
Values:
-
igp(0) - Learned from IGP (most preferred) -
egp(1) - Learned from EGP -
incomplete(2) - Learned by other means (e.g., static, redistribution)
See also: Attribute Reference - ORIGIN
BGP attribute (Type 9) - Optional non-transitive attribute created by route reflectors. Contains router ID of route originator. Used for loop prevention.
See also: Attribute Reference - ORIGINATOR_ID, Route Reflection
Information attached to BGP routes (NLRI) in UPDATE messages. Examples: AS_PATH, NEXT_HOP, LOCAL_PREF, MED, COMMUNITY.
See also: Attribute Reference
Another BGP router with which a BGP session is established. Synonym: neighbor.
IP address range in CIDR notation. Example: 10.0.0.0/24, 2001:db8::/64.
BGP attribute (Type 40) - Carries Segment Routing prefix segment identifier. Used in SRv6 and Segment Routing deployments.
See also: SRv6 and MUP
ExaBGP term - External program that communicates with ExaBGP via API (STDIN/STDOUT).
Configuration:
process announce-routes {
run /path/to/script.py;
encoder text;
}See also: Process Configuration, API Overview
Mechanisms for prioritizing network traffic. FlowSpec can mark DSCP for QoS classification.
See also: FlowSpec Actions
64-bit value prepended to IP address to create unique VPNv4/VPNv6 routes. Allows overlapping IP addresses in different VPNs.
Formats:
- Type 0:
ASN:Value(16-bit ASN, 32-bit value) - Type 1:
IP:Value(IPv4 address, 16-bit value) - Type 2:
4ByteASN:Value(32-bit ASN, 16-bit value)
See also: L3VPN Overview
FlowSpec action - Redirects matching traffic to a VRF or IP address using extended communities.
Types:
- Redirect to VRF:
redirect 65001:100 - Redirect to IP:
redirect 1.2.3.4
See also: FlowSpec Actions - Redirect
The routing table containing all routes learned by BGP. Separate from FIB (forwarding table).
ExaBGP does NOT manipulate RIB/FIB. It only speaks the BGP protocol. External processes must install routes into the OS routing table.
See also: RFC Support
See RD (Route Distinguisher)
RFC 4456 - IBGP scaling technique where route reflectors (RR) redistribute routes to clients, avoiding full mesh.
Attributes used:
- ORIGINATOR_ID (Type 9)
- CLUSTER_LIST (Type 10)
ExaBGP support: Can act as route reflector.
See also: Route Reflection
Router that reflects IBGP routes to route reflector clients. Avoids IBGP full mesh requirement.
See also: Route Reflection
RFC 2918 - BGP capability allowing request for re-advertisement of routes without tearing down session.
Enhanced Route Refresh (RFC 7313): Adds BoRR and EoRR markers.
See also: Route Refresh Capability
See RT (Route Target)
32-bit BGP identifier (IPv4 address format) uniquely identifying BGP speaker within an AS.
Configuration:
router-id 192.168.1.2;Note: Must be an IPv4 address even for IPv6-only sessions.
Extended community used for VPN route import/export filtering. Routes with matching RT are imported into VRF.
Format: target:ASN:Value
See also: L3VPN Overview
DDoS mitigation technique where victim IP is announced with special community (e.g., 65535:666) and next-hop set to discard interface. Upstream provider drops traffic to that IP.
See also: DDoS Mitigation
Sub-identifier within AFI defining specific routing information type.
Common SAFI values:
-
1- Unicast -
2- Multicast -
4- MPLS Labels -
128- VPN -
133- FlowSpec -
134- FlowSpec VPN
See also: Address Family
Network architecture where control plane is centralized and programmable. BGP-LS distributes topology to SDN controllers.
ExaBGP use case: BGP-LS for topology collection, API for programmable route control.
See also: BGP-LS Overview
Source routing paradigm where path is encoded in packet header as list of segments. SRv6 uses IPv6 addresses as segments.
ExaBGP support: PREFIX_SID attribute, SRv6, Mobile User Plane (MUP).
See also: SRv6 and MUP
Segment Routing implementation using IPv6 addresses. Used in 5G networks, data centers, and WAN.
ExaBGP support: SRv6 prefix SID, MUP (Mobile User Plane).
See also: SRv6 and MUP
Route configured manually (not learned dynamically).
ExaBGP configuration:
static {
route 10.0.0.0/24 next-hop 192.168.1.1;
}See also: Configuration Syntax
See MD5 Authentication
ExaBGP feature - Configuration inheritance for reducing duplication.
See also: Templates and Inheritance, Example
Technique for controlling network traffic flow to optimize performance, avoid congestion, or meet SLAs.
BGP tools:
- AS path prepending
- LOCAL_PREF manipulation
- MED hints
- Communities for policy triggers
See also: Attribute Reference
IP header field decremented at each hop. Used for loop prevention and security (GTSM).
See also: GTSM
One-to-one routing (single destination). Contrast: multicast (one-to-many).
Address families:
ipv4 unicastipv6 unicast
See also: IPv4 Unicast, IPv6 Unicast
BGP message type carrying routing information (NLRI) and attributes. Can announce new routes or withdraw existing routes.
IPv4 routes for L3VPN (MPLS VPN). Uses Route Distinguisher (RD) and Route Target (RT).
Address family: l3vpn ipv4 or vpnv4
See also: L3VPN Overview
IPv6 routes for L3VPN.
Address family: l3vpn ipv6 or vpnv6
See also: L3VPN Overview
RFC 4761/4762 - L2VPN technology for multi-point Ethernet VPN over MPLS.
ExaBGP support: VPLS route announcements.
See also: VPLS Configuration
Separate routing table instance in L3VPN. Each customer has isolated VRF.
See also: L3VPN
Network virtualization technology for Layer 2 overlay networks. EVPN provides control plane for VXLAN.
See also: EVPN Overview
BGP attribute that must be recognized by all BGP implementations.
Types:
- Well-Known Mandatory: ORIGIN, AS_PATH, NEXT_HOP
- Well-Known Discretionary: LOCAL_PREF, ATOMIC_AGGREGATE
See also: Attribute Reference
Remove previously announced route.
API command:
withdraw route 10.0.0.0/24See also: Command Reference - withdraw
| Acronym | Full Name |
|---|---|
| ACK | Acknowledgment |
| AFI | Address Family Identifier |
| AIGP | Accumulated IGP Metric |
| AS | Autonomous System |
| ASN | Autonomous System Number |
| BGP | Border Gateway Protocol |
| BGP-LS | BGP Link State |
| BoRR | Beginning of Route Refresh |
| CIDR | Classless Inter-Domain Routing |
| DDoS | Distributed Denial of Service |
| DSCP | Differentiated Services Code Point |
| EBGP | External BGP |
| ECMP | Equal-Cost Multi-Path |
| EGP | Exterior Gateway Protocol |
| EoR | End-of-RIB |
| EoRR | End of Route Refresh |
| EVPN | Ethernet VPN |
| FIB | Forwarding Information Base |
| FSM | Finite State Machine |
| GTSM | Generalized TTL Security Mechanism |
| IBGP | Internal BGP |
| IGP | Interior Gateway Protocol |
| L2VPN | Layer 2 VPN |
| L3VPN | Layer 3 VPN |
| MED | Multi-Exit Discriminator |
| MP-BGP | Multiprotocol BGP |
| MPLS | Multiprotocol Label Switching |
| MRT | Multi-Threaded Routing Toolkit |
| MVPN | Multicast VPN |
| NLRI | Network Layer Reachability Information |
| QoS | Quality of Service |
| RD | Route Distinguisher |
| RIB | Routing Information Base |
| RT | Route Target |
| RTBH | Remote Triggered Blackhole |
| SAFI | Subsequent Address Family Identifier |
| SDN | Software-Defined Networking |
| SRv6 | Segment Routing over IPv6 |
| TTL | Time To Live |
| VPNv4 | VPN IPv4 |
| VPNv6 | VPN IPv6 |
| VPLS | Virtual Private LAN Service |
| VRF | Virtual Routing and Forwarding |
| VXLAN | Virtual Extensible LAN |
- Command Reference - All ExaBGP commands
- Attribute Reference - All BGP attributes
- Configuration Syntax - Configuration file format
- API Overview - API concepts
- RFC Compliance - Complete RFC list
- RFC Support - Implementation status
- Examples Index - Browse all 86 examples
Getting Started
Configuration
- Configuration Syntax
- Neighbor Configuration
- Directives A-Z
- Templates
- Environment Variables
- Process Configuration
API
- API Overview
- Text API Reference
- JSON API Reference
- API Commands
- Writing API Programs
- Error Handling
- Production Best Practices
Address Families
- Overview
- IPv4 Unicast
- IPv6 Unicast
- FlowSpec
- EVPN
- L3VPN
- BGP-LS
- VPLS
- SRv6 / MUP
- Multicast
- RT Constraint
Features
Use Cases
Tools
Operations
Reference
- Architecture
- Design
- Attribute Reference
- Command Reference
- BGP State Machine
- Capabilities
- Communities
- Examples Index
- Glossary
- RFC Support
Integration
Migration
Community
External