Subject: [bess] some questions about draft-ietf-bess-evpn-igmp-mld-proxy-02 for IGMPv3

From: Liuyisong <[email-masked]>
Date: Thu, 12 Jul 2018 08:38:05 +0000

Hi folks,

I have some questions about the draft-ietf-bess-evpn-igmp-mld-proxy-02 for IGMPv3 synchronization

In section 7.2 & 7.3, there are IGMP Join and Leave Synch Route definition as following:

IGMPv3 is very complicated, and it is not very clear to how to construct the IGMP Join/Leave Synch Route in the draft.
Firstly I think only incremental membership information in the IGMP synch route, because the route NLRI can only contain one (S,G) or (*,G)
1.for a simple example:
INCLUDE (A)    BLOCK (B)    INCLUDE (A)             Send Q(G,A*B)
We can use include mode, source A*B, group G in IGMP Leave Synch Routes one by one to notify the other multi-homed PEs.

2.for a more complicated example:
EXCLUDE (X,Y)  TO_EX (A)    EXCLUDE (A-Y,Y*A)       (A-X-Y)=Group Timer
                                                        Delete (X-A)
                                                        Delete (Y-A)
                                                        Send Q(G,A-Y)
                                                        Group Timer=GMI
It is more difficult than example 1.There are 5 actions, and should we use both Join and Leave Synch routes to notify the other multi-homed PEs?
I think we should use:

1） include mode, source A-X-Y, group G in IGMP Join Synch Routes one by one

2） include mode, source X-A, group G in IGMP Join Synch Routes withdraw one by one

3） exclude mode, source Y-A, group G in IGMP Join Synch Routes withdraw one by one

4） include mode, source A-Y, group G in IGMP Leave Synch Routes one by one
Is it appropriate for IGMPv3 Synch route construction in the draft?

3.In IGMPv3, only BLOCK, TO_IN, TO_EX can lead to generate last member query.
Is that mean when the PE only receive BLOCK, TO_IN , TO_EX , it should advertise the leave synch routes to the other multi-homed PEs?

Thanks
Yisong