pim wg multicast YANG team Meeting
Graceful Restart Config module: ietf-pim-base augment /rt:routing/rt:routing-instance/rt:routing-protocols: +--rw pim +--rw graceful-restart {graceful-restart) | +--rw enabled? boolean | +--rw duration? Uint16 +--rw graceful-restart-helper {graceful-restart-helper) | +--rw enabled? boolean | +--rw duration? uint16 +--rw address-family* [address-family] +--rw address-family identityref +--rw graceful-restart {graceful-restart) | +--rw enabled? boolean | +--rw duration? Uint16 +--rw graceful-restart-helper {graceful-restart-helper) | +--rw enabled? boolean | +--rw duration? uint16 Add graceful-restart-help support; Two features: graceful-restart and graceful-restart-helper;
PIM Inst Config Leaves (1/2) RP address Yes [ ] Yes? [override]Feature?? SSM range [acl] or Yes? spt-threshold-infinity [boolean/ ]Yes [ ]Feature?? [ ]|Augment?? register-source Augment?? old register checksum empty/boolean Augment??
PIM Inst Config Leaves (2/2) assert holdtime jp holdtime jp interval probe interval dr priority hello holdtime hello interval register suppress interval embedded rp neighbor check recv neighbor check send register policy ssm policy source policy source lifetime ipsec name ipsec type SSM default range disable SSM Assert compatible ipv4-multicast-disable ipv6-multicast-disable non-dr-attract-traffic rpf-table Multicast fast failover Multicast ECMP hashing Apply PIM
Interface Leaves Model augment /rt:routing/rt:routing-instance/rt:routing-protocols: +--rw pim +--rw address-family* [address-family] +--rw address-family identityref +--rw interfaces +--rw interface* [interface] +--rw interface if:interface-ref +--rw dr-priority? uint32 +--rw hello-interval? uint16 +--rw (hello-holdtime-or-multipler)? | +--:(holdtime) {config-intf-hello-holdtime}? | | +--rw hello-holdtime? uint16 | +--:(multipler) {config-intf-hello-multipler}? | +--rw hello-multipler? uint8 +--rw jp-interval? uint16 {config-intf-jp-interval}? +--rw (jp-holdtime-or-multipler)? | +--:(holdtime) {config-intf-jp-holdtime}? | | +--rw jp-holdtime? uint16 | +--:(multipler) {config-intf-jp-multipler}? | +--rw jp-multipler? uint8 +--rw propagation-delay? uint16 {config-intf-propagation-delay}? +--rw override-interval? uint16 {config-intf-override-interval}? Anish: make jp-interval as a feature. Reply: It is already a feature.
Open Issue: Interface Hierarchy (Option 1) +--rw routing +--rw routing-instance* [name] +--rw routing-protocols +--rw pim +--rw address-family* [address-family] +--rw address-family enumeration +--rw pim-interfaces +--rw pim-interface* [if-name] +--rw if-name if-name +--rw hello-interval? uint32 +--rw dr-priority? uint32 Per AF interface list
Interface Hierarchy (Option 1) +--rw routing +--rw routing-instance* [name] +--rw routing-protocols +--rw pim +--rw address-family* [address-family] +--rw address-family enumeration +--rw pim-interfaces +--rw pim-interface* [if-name] +--rw if-name if-name +--rw hello-interval? uint32 +--rw dr-priority? uint32 Per AF interface list
Interface Hierarchy (Option 1) "ipv4": { "interface": [ { "interface": "if-a-v4", "dr-priority": 1, "hello-interval": 11 }, { "interface": "if-c-v4", "dr-priority": 3, "ipv4": "hello-interval": 13 } ], "ipv6": { "interface": [ { "interface": "if-b-v6", "dr-priority": 2, "hello-interval": 12 } ] }
Interface Hierarchy (Option 2) +--rw routing +--rw routing-instance* [name] +--rw routing-protocols +--rw pim +--rw pim-interfaces +--rw pim-interface* [if-name] +--rw if-name if-name +--rw hello-interval? Uint32 (feature a) +--rw dr-priority? Uint32 (feature a) +--rw address-family* [address-family] +--rw address-family enumeration hello-interval (feature b) dr-priority (feature b) AF-mixed interface list
Interface Hierarchy (Option 2) "interface": [ { "interface": "if-a", "dr-priority": 1, "ipv4": { "hello-interval": 123 }, "ipv6": { "hello-interval": 234 } }, { "interface": "if-b-v6", "dr-priority": 2, "ipv6": { "hello-interval": 12 } } { "interface": "if-c-v4", "dr-priority": 3, "ipv4": { "hello-interval": 13 } } ]
RP Model Params module: ietf-pim-rp augment /rt:routing/rt:routing-instance/rt:routing-protocols/pim- base:pim/pim-base:address-family: +--rw rp +--rw static-rp | +--rw ipv4-rp* [ipv4-addr] | | +--rw ipv4-addr inet:ipv4-address | | +--rw policy-name? string | | +--rw mode? identityref | +--rw ipv6-rp* [ipv6-addr] | +--rw ipv6-addr inet:ipv6-address | +--rw policy-name? string | +--rw mode? identityref +--rw bsr {bsr}? +--rw bsr-candidate! | +--rw interface if:interface-ref | +--rw hash-mask-length uint8 | +--rw priority uint8 +--rw rp-candidate* [interface] +--rw interface if:interface-ref +--rw policy? string +--rw mode? identityref
SM Model Params module: ietf-pim-sm augment /rt:routing/rt:routing-instance/rt:routing-protocols/pim- base:pim/pim-base:address-family: +--rw sm +--rw asm | +--rw anycast-rp! | | +--rw ipv4 | | | +--rw ipv4-anycast-rp* [anycast-addr rp-addr] | | | +--rw anycast-addr inet:ipv4-address | | | +--rw rp-addr inet:ipv4-address | | +--rw ipv6 | | +--rw ipv6-anycast-rip* [anycast-addr rp-addr] | | +--rw anycast-addr inet:ipv6-address | | +--rw rp-addr inet:ipv6-address | +--rw spt-switch | +--rw infinity? boolean | +--rw spt-threshhold? uint32 | +--rw policy-name? string +--rw ssm! +--rw range-poligy? String // |