Agent in act/backup mode rather than ECMP with int. static route
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
R2.20 |
Won't Fix
|
High
|
Naveen N | |||
Trunk |
Fix Committed
|
High
|
Naveen N |
Bug Description
When interface static routes are provisioned and point to the VMIs of (regular) VMs, agent treats them as active/backup pair and reduces the priority of all but one route, thus not doing ECMP.
In the topology below, an interface static route is provisioned to destination network 1.0.0.0/8 pointing to the left interface of both VM1 and VM2. To being with, both those routes are advertised to the MX with equal local preference of 200 and multi path is setup. Upon sending traffic, the local pref of one of the routes is reduced to 100.
This might be related/similar to 1461787, but logging it to track this specific case of VMs with different IPs having interface static routes pointing to them.
cli_vrf-
C_VN:
root@csol2-
2.0.0.0/8 8 PT - 38 -
root@csol2-
Id:38 Type:Composite Fmly: AF_INET Flags:Valid, Policy, Ecmp, Rid:0 Ref_cnt:2 Vrf:1
Sub NH(label): 15(25) 25(23)
P_VN1:
root@csol2-
1.0.0.0/8 8 PT - 40 -
root@csol2-
Id:40 Type:Composite Fmly: AF_INET Flags:Valid, Policy, Ecmp, Rid:0 Ref_cnt:2 Vrf:2
Sub NH(label): 15(30) 34(30)
MX:
root@cmbu-tasman# run show route table spi_cli.inet.0
spi_cli.inet.0: 7 destinations, 13 routes (7 active, 0 holddown, 0 hidden)
@ = Routing Use Only, # = Forwarding Use Only
+ = Active Route, - = Last Active, * = Both
2.0.0.0/8 @[BGP/170] 01:05:23, localpref 100, from 172.16.180.5
I had a chat with Nischal based on our discussion and here are the
conclusions,
1. An interface can have instance-ip, static-route on the interface, address- pair and floating-ip on the interface. address- pair and floating-ip will track the address- pair in active-active configuration will be advertised address- pair in active-backup will run sequence number address- pair in active-active address- pair in active-back will run its own state-machine
allowed-
2. Static-route, allowed-
³active² state of the instance-ip. In other words, the ³instance-ip²
active state acts as necessary condition for other features to apply.
3. Static-routes will be active only if the tracked instance-ip is
³active².
4. Allowed-
only if the ³instance-ip² is active
5. Allowed-
state-machine only if the underlying ³instance-ip² is active
6. Floating-ip route is added only if the underlying instance-ip is
³active².
7. Static-route, floating-ip and allowed-
configuration will have route with sequence number 0 always
8. Allowed-
In addition, we will implement the exponential backoff to take care of
cases where we see traffic from both active and backup end-points.
Regards,
Praveen