]> git.puffer.fish Git - mirror/frr.git/commitdiff
pimd: vxlan definitions for creation origination and terminatiom mroutes
authorAnuradha Karuppiah <anuradhak@cumulusnetworks.com>
Fri, 22 Mar 2019 17:10:28 +0000 (10:10 -0700)
committerAnuradha Karuppiah <anuradhak@cumulusnetworks.com>
Sat, 20 Apr 2019 15:33:22 +0000 (08:33 -0700)
pim vxlan component will create upstream entries and OIFs for
multicast VxLAN tunnel origination and termination in single-VTEP
and anycast-VTEP (MLAG) setups.

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
pimd/pim_vxlan.h

index 5ad6c7d4dad60e25480661d0b0dbe40bd688ef32..4725d962644dabf41e4c6edd4c639e7e7c94ab9f 100644 (file)
 #ifndef PIM_VXLAN_H
 #define PIM_VXLAN_H
 
+enum pim_vxlan_sg_flags {
+       PIM_VXLAN_SGF_NONE = 0,
+       PIM_VXLAN_SGF_DEL_IN_PROG = (1 << 0),
+       PIM_VXLAN_SGF_OIF_INSTALLED = (1 << 1)
+};
+
 struct pim_vxlan_sg {
        struct pim_instance *pim;
 
        /* key */
        struct prefix_sg sg;
        char sg_str[PIM_SG_LEN];
+
+       enum pim_vxlan_sg_flags flags;
+       struct pim_upstream *up;
+
+       /* termination info (only applicable to termination XG mroutes)
+        * term_if - termination device ipmr-lo is added to the OIL
+        * as local/IGMP membership to allow termination of vxlan traffic
+        */
+       struct interface *term_oif;
+
+       /* origination info
+        * iif - lo/vrf or peerlink (on MLAG setups)
+        * peerlink_oif - added to the OIL to send encapsulated BUM traffic to
+        * the MLAG peer switch
+        */
+       struct interface *iif;
+       /* on a MLAG setup the peerlink is added as a static OIF */
+       struct interface *orig_oif;
 };
 
 extern struct pim_vxlan_sg *pim_vxlan_sg_find(struct pim_instance *pim,