15 mins read

SR-MPLS –  Static colored LSP 

1. Intro

The ingress route of the colored LSP is installed in the inetcolor.0 or inet6color.0 routing tables, with destination-ip-address, color as key for mapping IP traffic.

We will use the same test topology from the previous posts:

The initial config is simple:

2. Colored LSP

We want to transform our source-routing-path R1-TO-R8 to a colored LSP:

### Make our LSP a colored one: 

root@R1# set protocols source-packet-routing source-routing-path R1-TO-R8 color 1818 

[edit]
root@R1# show | compare 
[edit protocols source-packet-routing source-routing-path R1-TO-R8]
+    color 1818;

[edit]
root@R1# commit 
commit complete

### Ping still works: 

root@R1# run ping 192.168.8.1 routing-instance Cust-A    
PING 192.168.8.1 (192.168.8.1): 56 data bytes
64 bytes from 192.168.8.1: icmp_seq=0 ttl=62 time=4.309 ms
64 bytes from 192.168.8.1: icmp_seq=1 ttl=62 time=4.234 ms
^C
--- 192.168.8.1 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/stddev = 4.234/4.271/4.309/0.038 ms

### But the LSP is not used for forwarding: 

root@R1# run show route table Cust-A.inet 192.168.8.1 

Cust-A.inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

192.168.8.1/32     *[BGP/170] 1w0d 00:06:44, localpref 100, from 17.0.0.4
                      AS path: I, validation-state: unverified
                    >  to 17.1.3.3 via ge-0/0/2.0, Push 16, Push 801008(top)

root@R1# run show route table Cust-A.inet 192.168.8.1/32 extensive 

Cust-A.inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
192.168.8.1/32 (1 entry, 1 announced)
TSI:
KRT in-kernel 192.168.8.1/32 -> {indirect(1048574)}
        *BGP    Preference: 170/-101
                Route Distinguisher: 17.0.0.8:100
                Next hop type: Indirect, Next hop index: 0
                Address: 0x7bc02c4
                Next-hop reference count: 6, key opaque handle: 0x0, non-key opaque handle: 0x0
                Kernel Table Id: 0
                Source: 17.0.0.4
                Next hop type: Router, Next hop index: 690
                Next hop: 17.1.3.3 via ge-0/0/2.0, selected
                Label operation: Push 16, Push 801008(top)
                Label TTL action: prop-ttl, prop-ttl(top)
                Load balance label: Label 16: None; Label 801008: None; 
                Label element ptr: 0xe175898
                Label parent element ptr: 0xe171888
                Label element references: 1
                Label element child references: 0
                Label element lsp id: 0
                Session Id: 141
                Protocol next hop: 17.0.0.8
                Label operation: Push 16
                Label TTL action: prop-ttl
                Load balance label: Label 16: None; 
                Indirect next hop: 0x791da20 1048574 INH Session ID: 351
                State: <Secondary Active Int Ext ProtectionCand>
                Local AS: 64512 Peer AS: 64512
                Age: 1w0d 0:09:52       Metric2: 30 
                Validation State: unverified 
                Task: BGP_64512.17.0.0.4
                Announcement bits (1): 0-KRT 
                AS path: I  (Originator)
                Cluster list:  17.0.0.4
                Originator ID: 17.0.0.8
                Communities: target:64512:100
                Import Accepted
                VPN Label: 16
                Localpref: 100
                Router ID: 17.0.0.4
                Primary Routing Table: bgp.l3vpn.0
                Thread: junos-main 
                Indirect next hops: 1
                        Protocol next hop: 17.0.0.8 Metric: 30 ResolvState: Resolved
                        Label operation: Push 16
                        Label TTL action: prop-ttl
                        Load balance label: Label 16: None; 
                        Indirect next hop: 0x791da20 1048574 INH Session ID: 351
                        Indirect path forwarding next hops: 1
                                Next hop type: Router
                                Next hop: 17.1.3.3 via ge-0/0/2.0
                                Session Id: 141
                                17.0.0.8/32 Originating RIB: inet.3
                                  Metric: 30 Node path count: 1
                                  Forwarding nexthops: 1
                                        Next hop type: Router
                                        Next hop: 17.1.3.3 via ge-0/0/2.0
                                        Session Id: 0

### The SR-TE route is no longer there: 

root@R1# run show route table inet.3 17.0.0.8/32 

inet.3: 7 destinations, 7 routes (7 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

17.0.0.8/32        *[L-ISIS/14] 1w5d 01:25:46, metric 30
                    >  to 17.1.3.3 via ge-0/0/2.0, Push 801008

### Now, because it is a colored LSP, it will install the next-hop in the inetcolor.0 table: 

root@R1# run show route table inetcolor.0 

inetcolor.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

17.0.0.8-1818<c>/64                
                   *[SPRING-TE/8] 00:03:31, metric 1, metric2 30
                    >  to 17.1.3.3 via ge-0/0/2.0, Push 801008, Push 801007(top)

But this is not enough, now we will instruct our L3VPN to use this colored LSP.. First we need to attach a BGP color community to our L3VPN prefixes, and then we need to instruct R1 to use it (using resolution map):

3. Colored LSP for BGP inet unicast


External Resources:

Leave a Reply