Skip to Content.
Sympa Menu

rare-dev - Re: [rare-dev] BGP CT interop - Colorful Resolution

Subject: Rare project developers

List archive

Re: [rare-dev] BGP CT interop - Colorful Resolution


Chronological Thread 
  • From: mc36 <>
  • To: Natrajan Venkataraman <>, Kaliraj Vairavakkalai <>, "" <>, Krzysztof Szarkowicz <>, Anton Elita <>
  • Cc: Reshma Das <>
  • Subject: Re: [rare-dev] BGP CT interop - Colorful Resolution
  • Date: Tue, 7 Mar 2023 08:40:58 +0100

whoooooo! :))))))))

in the meantime i added the tests yesterday, i'll be get back to you soon
without the ldp / rsvp underlay, only 2 labels topology... :)

https://github.com/rare-freertr/freeRtr/commit/e2e61669401c30904c771d85c449a22a251b89a1

so we'll demo something right?

just one question, have you tried the patch for the 5m bgp down issue? any
success with that?

thanks,
cs




On 3/7/23 03:35, Natrajan Venkataraman wrote:
Hi Csaba,

BGP CT interop - Colorful Resolution - Success!

FreeRTR transits traffic colorfully with RSVP in V2 and V3!

Topology:

CE1 (10.1.1.1)

|

[PE11----P1----ASBR11] AS1: JUNOS

|

|

AS2: FREERTR [ASBR21----P2----ASBR22]

|

|

AS3: JUNOS
[ASBR31----P3----PE31]


|


(10.11.11.11) CE2

AS1, AS3: PE/ASBR have RSVP Gold and Bronze tunnels towards each other.

Free Router Deployment and Config:

freertr-asbr21#show ver

freeRouter v23.3.6-cur, done by cs@nop.

ASBR11

|EBGP-CT

|
RSVP

| IBGP-CT IBGP-CT V1:ISIS,LDP

ASBR21---------P2(RR)---------ASBR22

V1:ISIS1,LDP V1:ISIS,LDP |

V2:ISIS2,RSVP RSVP |EBGP-CT

V3:ISIS3,RSVP ASBR31

ASBR21:

CT routes learned from ASBR22 will resolve based on the

route-policy ibgp-in to VRF V2 and V3 based on color comm via

RSVP tunnels tunnel1 and tunnel2 respectively

CT routes will be advertised from V2 and V3 post resolution.

To resolve the CT protocol nexthop, static route with PNH address

10.22.22.22/32 is created to point to the tunnel.

vrf definition v2

rd 68106:168427528

clr4import 100

clr6import 100

label4mode per-prefix

label6mode per-prefix

exit

!

vrf definition v3

rd 68106:168427529

clr4import 200

clr4export 200

label4mode per-prefix

label6mode per-prefix

exit

!

ipv4 route v2 10.22.22.22 255.255.255.255 10.121.121.122

!

ipv4 route v3 10.22.22.22 255.255.255.255 10.221.221.222

route-policy ibgp-in

sequence 10 if extcomm 2562:0:100

sequence 20 set vrf v2 ipv4

sequence 30 pass

sequence 40 enif

sequence 50 if extcomm 2562:0:200

sequence 60 set vrf v3 ipv4

sequence 70 pass

sequence 80 enif

sequence 90 drop

exit

router bgp4 1

vrf v1

local-as 64512

router-id 10.21.21.21

no safe-ebgp

address-family unicast

nexthop recursion 3

!

neighbor 10.11.121.1 remote-as 64511

neighbor 10.11.121.1 local-as 64512

neighbor 10.11.121.1 address-family ctp

neighbor 10.11.121.1 distance 20

neighbor 10.11.121.1 send-community standard extended

!

neighbor 10.20.20.20 remote-as 64512

neighbor 10.20.20.20 local-as 64512

neighbor 10.20.20.20 address-family ctp

neighbor 10.20.20.20 distance 200

neighbor 10.20.20.20 update-source loopback0

neighbor 10.20.20.20 traffeng

neighbor 10.20.20.20 send-community standard extended

neighbor 10.20.20.20 route-policy-in ibgp-in

!

afi-clr v2 enable

afi-clr v2 redistribute bgp4 1

!

afi-clr v3 enable

afi-clr v3 redistribute bgp4 1

!

freertr-asbr21#show running-config interface tunnel1

interface tunnel1

description lsp_asbr21_asbr22

tunnel vrf v1

tunnel source loopback0

tunnel destination 10.22.22.22

tunnel mode p2pte

vrf forwarding v2

ipv4 address 10.121.121.121 255.255.255.0

mpls enable

no shutdown

no log-link-change

exit

!

freertr-asbr21#show running-config interface tunnel2

interface tunnel2

description lsp_asbr21_asbr22

tunnel vrf v1

tunnel source loopback0

tunnel destination 10.22.22.22

tunnel mode p2pte

vrf forwarding v3

ipv4 address 10.221.221.221 255.255.255.0

mpls enable

no shutdown

no log-link-change

exit

!

RIB/MPLS-FIB Programming:

freertr-asbr21#show ipv4 route v2

typ prefix metric iface hop
time

B 10.10.10.10/32 200/0 null@v2:4 10.22.22.22
00:27:02

S 10.22.22.22/32 1/0 tunnel1
10.121.121.122 00:26:49

freertr-asbr21#show ipv4 route v3

typ prefix metric iface hop
time

B 10.10.10.10/32 200/0 null@v3:4 10.22.22.22
01:00:40

S 10.22.22.22/32 1/0 tunnel2
10.221.221.222 01:00:40

freertr-asbr21#show mpls forwarding

label vrf iface hop label
targets bytes

367169 v3:4 tunnel2 10.221.221.222 700462
120041040

823808 v2:4 tunnel1 10.121.121.122 235868
18560472

ASBR22:

CT routes learned from ASBR21 will resolve via best effort

LDP in V1 (Same as previous BGP-CT InterOp Demo)

Thanks,

-Nats-

*From: *mc36 <>
*Date: *Friday, March 3, 2023 at 3:01 AM
*To: *Kaliraj Vairavakkalai <>, Natrajan Venkataraman <>, <>, Krzysztof Szarkowicz <>, Anton Elita <>
*Cc: *Reshma Das <>
*Subject: *Re: [rare-dev] BGP CT interop - Colorful Resolution

[External Email. Be cautious of content]


hi, guys,

imho from now, freerouter have cheat-less colorful resolution for vpnv4/vpnv6
afis:

https://urldefense.com/v3/__https://github.com/rare-freertr/freeRtr/commit/335d83792d7123ca164691f124ceab71a98e21b9__;!!NEt6yMaO-gk!HkEDztNqZBVRMPkGnUb5LlOg0wtMtXJQkIKlpZaAHXNCovg4sgAlLD42dDpTiOYckA6OVg$

<https://urldefense.com/v3/__https:/github.com/rare-freertr/freeRtr/commit/335d83792d7123ca164691f124ceab71a98e21b9__;!!NEt6yMaO-gk!HkEDztNqZBVRMPkGnUb5LlOg0wtMtXJQkIKlpZaAHXNCovg4sgAlLD42dDpTiOYckA6OVg$>

unfortunately this contains a smaller refactoring also, i just forgot to
commit that beforehand... :)


the code is still not covered by a test case, that will be the next,

then i'll get back to you with a new topology for the plugfest...

happy weekend,
thanks,
cs

sid#show config-differences
router bgp4 65535 vrf v1
afi-vrf niif set-vrf v2 ipv4
exit

sid#clear ipv4 bgp 65535 all in vpnuni
sid#show ipv4 route niif | first 10
typ prefix metric iface hop
time
B 0.0.0.0/0 200/0 null@v2:4 10.10.10.25
00:00:02
B 4.0.0.0/9 200/0 null@v2:4 10.10.10.25
00:00:02
B 4.23.88.0/24 200/0 null@v2:4 10.10.10.25
00:00:02
B 4.23.89.0/24 200/0 null@v2:4 10.10.10.25
00:00:02
B 4.23.92.0/23 200/0 null@v2:4 10.10.10.25
00:00:02
B 4.23.94.0/23 200/0 null@v2:4 10.10.10.25
00:00:02
B 4.35.69.0/24 200/0 null@v2:4 10.10.10.25
00:00:02
B 4.38.0.0/21 200/0 null@v2:4 10.10.10.25
00:00:02
B 4.38.8.0/21 200/0 null@v2:4 10.10.10.25
00:00:02

sid#configure revert
1: router bgp4 65535 vrf v1
2: no afi-vrf niif set-vrf v2 ipv4
3: exit

errors=0

router bgp4 65535 vrf v1
afi-vrf niif set-vrf v2 ipv4
exit

sid#clear ipv4 bgp 65535 all in vpnuni
sid#show ipv4 route niif | first 10
typ prefix metric iface hop
time
B 0.0.0.0/0 200/0 null@v1:4
10.10.10.25 00:00:02
B 4.0.0.0/9 200/0 null@v1:4
10.10.10.25 00:00:02
B 4.23.88.0/24 200/0 null@v1:4 10.10.10.25
00:00:02
B 4.23.89.0/24 200/0 null@v1:4 10.10.10.25
00:00:02
B 4.23.92.0/23 200/0 null@v1:4 10.10.10.25
00:00:02
B 4.23.94.0/23 200/0 null@v1:4 10.10.10.25
00:00:02
B 4.35.69.0/24 200/0 null@v1:4 10.10.10.25
00:00:02
B 4.38.0.0/21 200/0 null@v1:4 10.10.10.25
00:00:02
B 4.38.8.0/21 200/0 null@v1:4 10.10.10.25
00:00:02

sid#



On 2/28/23 23:21, mc36 wrote:
hi,

On 2/28/23 22:39, Kaliraj Vairavakkalai wrote:
That s cool. So now we have two demo setups:

1/ Csaba s setup with FreeRTR as Ingress-PE doing colorful resolution.

2/ Natz setup with FreeRTR as ASBR doing colorful resolution.

We could have a combo of the two setups, to show FreeRTR in both ASBR and
ingress-PE roles. ;)


well, for a really really proper color resolution imho i need to introduce the
"afi-vrf cust-blue resolve-in core-blue" knob...
it'll simply set the route's underlaying table like when we need to send out
a vrf packet in mpls in the core vrf, but here,
it'll a per vrf override that i'll set that paramter to a user defined
table... no fallback yet, just a static mechanism...
that'll be the first tomorrow what i'll start playing with... :)


Just some comments -

It s worth noting that:

route-policy ibgp-in

sequence 10 if extcomm 2562:0:100

sequence 20 set vrf v2 ipv4

sequence 30 pass

sequence 40 enif

sequence 50 if extcomm 2562:0:200

sequence 60 set vrf v3 ipv4

sequence 70 pass

sequence 80 enif

sequence 90 drop

exit

This policy config kind of implements the resolution-scheme . :)


yeahh, i knew that matching against the rd is not the color but the path... :)



It works with LDP tunnels in VRFs v2, v3. BGP-CT routes are able to resolve
over LDP routes

(in main VRF v1 or color VRFs v2,v3), and create SWAP routes properly.

We could not make BGP routes resolve over RSVP-TE Tunnel routes in any VRF.
That s why we used

LDP-tunnels in previous IETF demo as-well. We may be missing something there.

so that was just another dirty hack that i put the rsvp to a dummy vrf to
have a color on it.... :)



And, the code-change in rtrBgpNeigh.java was needed to make the following
config work:


[..]

let's discuss this on my previous mail, i did a lot of changes to that part
as i realized
that you were right and a lot were missing on that part of the code.... :)
thanks again for spotting it... :)

thanks,
cs


Juniper Business Use Only




Archive powered by MHonArc 2.6.24.

Top of Page