Many core engineers are familiar with MPLS technology. As you know, we were using LDP or RSVP protocols with MPLS in order to distribute labels. Routers forward traffic according to their labels on packets. LDP has simple configuration but RSVP more complex. Also, RSVP is chosen to use traffic-engineering and fast-reroute. Segment routing is new technology addition to RSVP.

Nowadays, there is new technology, which is Segment Routing. In segment routing, labels are called Segments. Those segments provide instructions such that push,continue,next.(like in mpls; push,pop,swap). In segment routing, there is no need to use LDP or RSVP.

Underlay protocols (IGP) use extension for segments distribution. We will use IS-IS protocol for underlay.

Segment Identifier (SID)

There are two type segments identifier:Prefix SID and Adjacency SID. We will interest here Node Segment ID which is special form of Prefix SID. Node SID is loopback of router as prefix. Prefix SID is global unique and Adjacency is local unique.

Underlay

We will use IS-IS protocol to advertise loopback of each nodes. Also, there will be IBGP between PE-1 and PE-2 router to provide L3VPN. We will only enable MPLS without LDP and RSVP.

Technical Explanation

Our aim is to communicate CUSTOMER CPEs under L3VPN via Segment Routing MPLS.

We will enable MPLS in PE-1,PE-2,P1,P2 router by command “mpls ip” in global.

We will enable segment-routing under IS-IS. Also, we will enable index number under loopback0 to configure NODE SID. This index will generate segment which is 90000+INDEX. This is global unique number for that router and each mpls interface will use it for forwarding. In LDP, there are different labels, so Segment-Routing helps to reduce labels usage.

Loopback of each router will ve advertised via IS-IS. We will configure IBGP between PE-1 and PE-2 to carry L3VPN. Loopback reachability of PE-1 and PE2 will be provided by IS-IS.But subnets of PE router are not know by P routers since there is no BGP on them. So LABELs are needed. P routers will decide forwarding according to labels on packets bu segment routing.

Sample Config

PE-1 ROUTER:

mpls ip

interface Loopback0
ip address 1.1.1.1/32
node-segment ipv4 index 1
>>>>>>>>>>>>>>>>>>CREATING NODE SEGMENT ID
isis enable 1


router bgp 65001
>>>>>>>>>>>>>>>>>>>>>>THIS IS FOR L3VPN
no bgp default ipv4-unicast
neighbor 3.3.3.3 remote-as 65001
neighbor 3.3.3.3 update-source Loopback0
neighbor 3.3.3.3 send-community
!
address-family ipv4
neighbor 3.3.3.3 activate
!
address-family vpn-ipv4
neighbor 3.3.3.3 activate
neighbor 3.3.3.3 encapsulation mpls next-hop-self source-interface Loopback0
!
vrf CUSTOMER
rd 1.1.1.1:1
route-target import vpn-ipv4 3.3.3.3:1
route-target export vpn-ipv4 1.1.1.1:1
redistribute connected
!


router isis 1
net 49.0001.0001.0001.0001.0001.00
is-type level-2
!
address-family ipv4 unicast
>>>>>>>>>>>ENABLE SEGMENT ROUTE FOR IPV4 IN IS-IS
segment-routing mpls
router-id 1.1.1.1
no shutdown

P ROUTER:

mpls ip

interface Loopback0
ip address 2.2.2.2/32
node-segment ipv4 index 2
>>>>>>>>>>>>>>>>>>CREATING NODE SEGMENT ID
isis enable 1


router isis 1
net 49.0001.0002.0002.0002.0002.00
is-type level-2
!
address-family ipv4 unicast
!
segment-routing mpls
router-id 2.2.2.2
no shutdown

OUTPUT OF ROUTE TABLES

PE-1#show ip route 3.3.3.3 >>>>>>>>> REACHABILITY LOOPBACK OF PE2

I L2 3.3.3.3/32 [115/30] via 10.90.90.1, Ethernet2
via 10.80.80.1, Ethernet4

PE-1#show ip route 192.168.101.0/24 >>>>>>>>> THIS IS NON-VRF ROUTE TOWARDS TO PE-2

VRF: default
B I 192.168.101.0/24 [200/0] via 3.3.3.3/32, IS-IS SR tunnel index 2
via 10.80.80.1, Ethernet4, label 900003
>>>>>NOTE THAT LABEL IS SAME
via 10.90.90.1, Ethernet2, label 900003

PE-1#show ip route vrf CUSTOMER >>>>>>>>> THIS IS L3VPN VRF ROUTE TOWARDS TO PE-2

VRF: CUSTOMER
C 10.100.100.0/24 is directly connected, Ethernet3
B I 10.101.101.0/24 [200/0] via 3.3.3.3/32, IS-IS SR tunnel index 2, label 116384
via 10.80.80.1, Ethernet4, label 900003
>>>NOTE THAT LABEL IS SAME
via 10.90.90.1, Ethernet2, label 900003

By Mahmut Aydin

CCIE R&S #63405

Leave a Reply

Your email address will not be published.