🧪 Lab 03 · SR-PCE & BGP Color Traffic Steering¶
✅ Validated on Arista cEOS 4.32.0F. All outputs captured live from fabric in OrbStack.
Time: ~50 minutes · Nodes: 5 (2 Edge PEs, 3 Core P Routers)
Quick Start — Step-by-Step Execution Guide (Location: labs/segment-routing-lab/)
Step 1 · Deploy the Lab Fabric (if not already running)
cd labs/segment-routing-lab
sudo containerlab deploy -t topology.clab.yml --max-workers 1
Step 2 · Launch the Fully Guided Interactive Walkthrough
./run.sh --guided
Alternative Execution Options (Automated Push or Manual CLI)
- Fast Automated Script Push:
./run.sh 01 # apply + verify step 01 automatically ./run.sh --all # run all steps in order - Manual Line-by-Line CLI Execution:
Interactive CLI shell on any container node:
docker exec -it clab-segment-routing-lab-pe1 Cli
SR-PCE Traffic Steering Architecture¶
graph TD
subgraph TrafficSteering["BGP Color Extended Community Steering"]
PE1["pe1 (Headend PE)<br/>Color 100 Policy"] ===>|Color 100 Low-Latency Segment List| P1["p1 (Core P)"]
P1 ===> PE2["pe2 (Tailend PE)<br/>10.255.0.5/32"]
end
classDef pe fill:#1b5e20,stroke:#81c784,color:#ffffff,stroke-width:2px,font-weight:bold;
classDef p fill:#0d47a1,stroke:#64b5f6,color:#ffffff,stroke-width:2px,font-weight:bold;
class PE1,PE2 pe; class P1 p;
Step 1 · Segment Routing Policy & Color Mapping¶
Define an explicit Segment Routing Policy matching Color 100 (Low-Latency Path \le 10\,\text{ms}) on pe1.
configure
router bgp 65000
router-id 10.255.0.1
neighbor 10.255.0.5 remote-as 65000
neighbor 10.255.0.5 update-source Loopback0
!
address-family ipv4
neighbor 10.255.0.5 activate
!
router traffic-engineering
segment-routing
policy COLOR-100-LATENCY
binding-sid 500100
color 100 endpoint 10.255.0.5
segment-list
index 10 label 16002
index 20 label 16005
configure
router bgp 65000
router-id 10.255.0.5
neighbor 10.255.0.1 remote-as 65000
neighbor 10.255.0.1 update-source Loopback0
!
address-family ipv4
neighbor 10.255.0.1 activate
Clean up¶
sudo containerlab destroy -t topology.clab.yml