FRRouting / frr

The FRRouting Protocol Suite
https://frrouting.org/
Other
3.33k stars 1.25k forks source link

how much of the RFC 7432 is implemented? | BGP EVPN-MPLS #2664

Closed TekunoKage closed 5 years ago

TekunoKage commented 6 years ago

Is there a way to understand how much of the EVPN-MPLS is implemented, that is to clarify the expectations when validating/testing?

I'm interested in connecting to vswitches with EVPN and MPLS as transport. Section 6.3 of the RFC mention a "vlan aware bundle interface" that could be the easier way to connect the vswitches. At this point I just find out information to vni, and those are 1:1 relation to a vlan.

donaldsharp commented 6 years ago

@vivek-cumulus do we have a quick and dirty answer here?

srimohans commented 6 years ago

+1 for the question.

TekunoKage commented 5 years ago

@vivek-cumulus is possible to get an idea? Is there a way that we can find by our self the details? Any guide what files I could read to try to figure it out...

srimohans commented 5 years ago

@TekunoKage

I had similar query some time back and spent some time on analyzing this. Some modifications details at high level:

  1. Each EVPN route type encoding/decoding functions needs modifications to encode/decode MPLS labels appropriately.
  2. FRR stack doesn’t support Ethernet Auto-Discovery Route. So depending on the use case, if we need aliasing, MAC mass withdraw etc. then, we need to add support for this route.
  3. If use case involves features like Split Horizon, Active-Active load balancing, DF election etc. features, then support needs to be added for ESI label extended community. This will be considerable amount of work.
  4. MPLS EVPN warrants some support from PIM in FRR stack for ingress BUM replication. Support for MPLS label allocation. Basic level of support may exists already due to L3VPN support, but needs to be tested and validated further.
  5. Auto Deriving and encoding of Route Targets for EVPN will differ between MPLS and Vxlan EVPN. So this needs to be implemented.
  6. Four different schemes (1 label per VRF, 1 label per <VRF, Ethernet Tag>, 1 label per <ESI, Ethernet Tag>, 1 label per MAC) are mentioned in RFC7432 with respect MPLS label allocation for EVPN Type 2 route. Depending on the use case, one of this needs to be supported and appropriate support needs to be added in FRR stack for Constructing MAC/IP Address Advertisement.
  7. Selecting, Identifying P-Tunnel, PMSI tunnel attribute, associated MPLS label has specific requirements from RFC for MPLS EVPN. This needs to be implemented to support Ingress Replication use cases.
  8. Only the basic vlan service interface type is implemented.

To conclude, few things from RFC are available in FRR code due to EVPN VxLan implementation, however nothing specific to MPLS/RFC 7432 is actually implemented in FRR EVPN.

qlyoung commented 5 years ago

Closing due to inactivity