summaryrefslogtreecommitdiff
path: root/pimd/pim_join.c
diff options
context:
space:
mode:
authorSarita Patra <saritap@vmware.com>2019-02-22 01:38:41 -0800
committerSarita Patra <saritap@vmware.com>2019-02-24 09:38:03 -0800
commitbbe598df214486db57a0fd72a3c9875c0dfc2006 (patch)
tree7cd3cefc126ad1db217367e1025017147e274c75 /pimd/pim_join.c
parent5a80b8c7c254b9955e357555ebd929ab9bc123ef (diff)
pimd: added comments for upstream and channel_oil new values
Added comments which explains the new values for existing fields and new fields in the upstream and channel_oil data structure. Following are the summary of the behaviour change in PIM code. Scenario 1 : RP doesn’t exist/RP not reachable Event: Join received Current behaviour: No upstream gets created Changed behaviour: Upstream data structure created with below info upstream_addr: INADDR_ANY channel_oil iif: MAXVIF channel_oil is_valid: FALSE (flag introduced to indicate if this entry is valid to get installed in hardware) RPF details: Not valid Join state: NOT_JOINED Kernal installed: FALSE Scenario 2: Dummy upstream exists Event: RP configured Current Behaviour: upstream address updated for the dummy upstream created. Changed Behaviour: upstream_addr: RP address channel_oil iif: MAXVIF channel_oil is_valid: FALSE RPF details: only RP address updated Join state: NOT_JOINED Kernel installed: FALSE Scenario 3: Dummy upstream exists Event: RP becomes reachable Current Behaviour: Update channel oil, rpf details in the upstream and install in hardware Changed Behaviour: upstream_addr: RP Adress channel_oil iif: MAXVIF channel_oil is_valid: FALSE RPF details: RPF details updated via NHT callback Join state: JOINED Kernel installed: TRUE Scenario 4: MRoute exists Event: RP gets deleted Current behaviour: Nothing got updated in him upstream and channel oil, join timer still runs. Mroute still exists in kernel. Changed behaviour: upstream_addr: INADDR_ANY channel_oil iif: MAXVIF channel_oil is_valid: FALSE RPF details: Not valid Join state: NOT_JOINED (also sent prune towards deleted RPF nbr) Kernel installed: FALSE Scenario 5: MRoute Exists Event: RP unreachable Current behaviour: Nothing got updated in him upstream and channel oil, join timer still runs. Mroute sdeleted from kernel. Changed behaviour: upstream_addr: RP address channel_oil iif: MAXVIF channel_oil is_valid: FALSE RPF details: only RP address updated Join state: NOT_JOINED (also sent prune towards deleted RPF nbr) Kernel installed: FALSE Scenario 6: Mroute exists Event: Better RP configured with precise group range & reachable. Current behaviour: No effect on existing route. Changed behaviour: Upstream address: Better RP RPF interface: towards the better RP Join state: JOINED (Send a prune towards the old RP and send a join towards the better RP) Scenario 7: Mroute exists Event: RP deleted and another RP with broad group range fits this group & reachable Current behaviour: No effect on current behaviour Changed behaviour: Upstream address: next available RP RPF interface: towards the next available RP Join state: JOINED (Send a prune towards the old RP and send a join towards the better RP) Signed-off-by: Sarita Patra <saritap@vmware.com>
Diffstat (limited to 'pimd/pim_join.c')
0 files changed, 0 insertions, 0 deletions