Subject: [magma] Multicast Group Membership Discovery MIB questions

From: Karl Schmidt <[email-masked]>
Date: Fri, 22 Jul 2005 13:20:35 -0500

Hi,

I have a few comments/questions regarding the MGMD MIB as defined in 
draft-ietf-magma-mgmd-mib-05.txt.

1. There is currently no way to configure the robustness for hosts. A 
field should be added to address that. Hosts can glean their robustness 
from queries sent on the network but there is no way to configure a 
default value.

2. With the addition of the floating-point calculations defined in the 
IGMPv3 RFC, it would appear that the ranges for 
mgmdRouterInterfaceQueryInterval, mgmdRouterInterfaceQueryMaxResponseTime, 
and mgmdRouterInterfaceLastMembQueryIntvl should be the max value of the 
interval code calculation (31744). Alternatively, the definitions of 
mgmdRouterInterfaceQueryMaxResponseTime and 
mgmdRouterInterfaceLastMembQueryIntvl could be changed to represent the 
coded value rather than the time value. Additionally 
mgmdRouterInterfaceQueryInterval should have a min value of 1 as a 0 value 
makes no sense.

3. It is difficult to determine what mgmdRouterCacheExpireTime should 
represent. Pre-IGMPv3 it obviously represented the amount of time left 
before the group timer would expire. It now appears that this value should 
represent the amount of time left before the group or any source timer 
with the most amount of time left expires. Is this a correct 
interpretation?

4. Due to the issues brought up in my last question, there is possibly no 
visibility into when a group timer will expire. Additionally, there is 
currently no visibility into when any router source timer will expire. I 
would propose that it would be beneficial to define 
mgmdRouterCacheExpireTime as the time left for the group timer, and that 
the mgmdRouterSrcListTable adds an expiration time (non-0 only when in 
include mode). Although probably less useful, the same argument can be 
made for a source up time.

5. It appears that the goal of the MGMD MIB is to externalize the net 
membership state. However, if the goal is to expose IGMP/MLD internal 
state it would help if MgmdRouterSrcListTable be broken into a 
MgmdRouterIncludeSrcListTable and a MgmdRouterExcludeSrcListTable in order 
to give network managers more visibility into the router's group source 
state.  This would also allow visibility to include source timers (if they 
are added) when the router cache is in exclude mode.

Regards,
Karl
_______________________________________________
magma mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/magma

---

From: "kishore P" <[email-masked]>
Date: Mon, 25 Jul 2005 01:45:34 -0400

Hi Karl,

Here are some of my comments -

1. I am not aware if any Host implementation (in any OS) provides many 
parameters to configure IGMP/MLD. I agree it might be useful in the network 
where packet loss is high, and as this is protocol is for local network (the 
probability of loss is low), also in the IGMPV1 and IGMPv2 it was applicable 
more for Router part of the parameters, in IGMPv3 the robustness is used for 
the state-change reports. For the above sake, it could be added to the MIB 
to hostinterface table.

2. Similarly, it would be good have the  last-member-query-count, 
startup-query-count and startup-query-interval to the RouterInterface Table. 
Also good to have host compatibility mode (read-only varible) per interface 
for hostInterface Table and per group for the routerCacheTable.

3. The mgmdRouterCacheExpireTime is only for the Group address, it is the 
group timer, and not associated with the source time, so the interpretation 
is not right. This would be group timer for IGMPv3/MLDv2 too and does not 
change with the version.

4. In would be good to have srcExpiryTime to the MgmdRouterSrcList Table so 
that the source address filter mode can be made out from the expiryTime. If 
expirytime = 0 then source is in exclude mode and if expiryTime > 0 then 
source is in include mode. So this would remove the need for seperate table, 
one for include sources and other for exclude source.

Rgds,
Kishore

---

From: Karl Schmidt <[email-masked]>
Date: Mon, 25 Jul 2005 21:00:25 -0500

Hi Kishore,

Thanks kindly for your remarks.

>From your message it appears that you might have a different 
interpretation of the use mgmdRouterCacheTable than I do (a valid one 
too). My thoughts were that the cache exists as long as the group is 
tracking sources in either exclude mode or include mode. The description 
for mgmdRouterCacheExpiryTime states that the value must be greater than 
0. This means that if this object represents the group timer, the 
mgmdRouterCacheEntry must be removed when the group timer goes to 0 and 
will not exist when the group is in include mode. I don't think this was 
the intent, but if it was the mgmdRouterCacheSourceFilterMode has no 
purpose as the cache will only exist in exclude mode. Removing the 0 value 
restriction for mgmdRouterCacheExpiryTime will allow it to represent the 
group timer and allow the cache to exist when the group is in include 
mode.

I like the idea you had in your fourth point of putting both include and 
exclude sources in the source list. It seems feasible since a source can't 
be in both modes at the same time. The mgmdRouterCacheSourceFilterMode 
description should probably be changed in this case as it hints that the 
source list is only an include or an exclude list.

Regards,
Karl

"kishore P" <[email-masked]> 
07/25/2005 12:45 AM

To
[email-masked], [email-masked]
cc

Subject
RE: [magma] Multicast Group Membership Discovery MIB questions

Hi Karl,

1. I am not aware if any Host implementation (in any OS) provides many 
parameters to configure IGMP/MLD. I agree it might be useful in the 
network 
where packet loss is high, and as this is protocol is for local network 
(the 
probability of loss is low), also in the IGMPV1 and IGMPv2 it was 
applicable 
more for Router part of the parameters, in IGMPv3 the robustness is used 
for 
the state-change reports. For the above sake, it could be added to the MIB 

to hostinterface table.

2. Similarly, it would be good have the  last-member-query-count, 
startup-query-count and startup-query-interval to the RouterInterface 
Table. 
Also good to have host compatibility mode (read-only varible) per 
interface 
for hostInterface Table and per group for the routerCacheTable.

3. The mgmdRouterCacheExpireTime is only for the Group address, it is the 
group timer, and not associated with the source time, so the 
interpretation 
is not right. This would be group timer for IGMPv3/MLDv2 too and does not 
change with the version.

4. In would be good to have srcExpiryTime to the MgmdRouterSrcList Table 
so 
that the source address filter mode can be made out from the expiryTime. 
If 
expirytime = 0 then source is in exclude mode and if expiryTime > 0 then 
source is in include mode. So this would remove the need for seperate 
table, 
one for include sources and other for exclude source.

Rgds,
Kishore