diff options
author | fenner <fenner@FreeBSD.org> | 1999-01-20 07:44:18 +0000 |
---|---|---|
committer | fenner <fenner@FreeBSD.org> | 1999-01-20 07:44:18 +0000 |
commit | 2985169d50e66395695b97df6a39aea40f2aef64 (patch) | |
tree | 19c94eeb7ba2b59b0ad53ae0864ebf06723a8afa /usr.sbin/mrouted/igmpv2.h | |
parent | ccc10658cc0dfbfbf1e06d3bd69963fce284b658 (diff) | |
download | FreeBSD-src-2985169d50e66395695b97df6a39aea40f2aef64.zip FreeBSD-src-2985169d50e66395695b97df6a39aea40f2aef64.tar.gz |
Import mrouted version 3.9-beta3+IOS12 . This is a version of 3.9-beta3
with minor changes to work around a bug in Cisco's IOS version 12.0 .
3.9-beta3 is much improved over 3.8, and is only labelled "beta" because
of missing features, as opposed to instability or known bugs.
Diffstat (limited to 'usr.sbin/mrouted/igmpv2.h')
-rw-r--r-- | usr.sbin/mrouted/igmpv2.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/usr.sbin/mrouted/igmpv2.h b/usr.sbin/mrouted/igmpv2.h new file mode 100644 index 0000000..5f5ae27 --- /dev/null +++ b/usr.sbin/mrouted/igmpv2.h @@ -0,0 +1,42 @@ +/* + * The mrouted program is covered by the license in the accompanying file + * named "LICENSE". Use of the mrouted program represents acceptance of + * the terms and conditions listed in that file. + * + * The mrouted program is COPYRIGHT 1989 by The Board of Trustees of + * Leland Stanford Junior University. + * + * + * igmpv2.h,v 3.8.4.1 1997/11/18 23:25:58 fenner Exp + */ + +/* + * Constants for IGMP Version 2. Several of these, especially the + * robustness variable, should be variables and not constants. + */ +#define IGMP_ROBUSTNESS_VARIABLE 2 +#define IGMP_QUERY_INTERVAL 125 +#define IGMP_QUERY_RESPONSE_INTERVAL 10 +#define IGMP_GROUP_MEMBERSHIP_INTERVAL (IGMP_ROBUSTNESS_VARIABLE * \ + IGMP_QUERY_INTERVAL + \ + IGMP_QUERY_RESPONSE_INTERVAL) +#define IGMP_OTHER_QUERIER_PRESENT_INTERVAL (IGMP_ROBUSTNESS_VARIABLE * \ + IGMP_QUERY_INTERVAL + \ + IGMP_QUERY_RESPONSE_INTERVAL / 2) + /* Round to the nearest TIMER_INTERVAL */ +#define IGMP_STARTUP_QUERY_INTERVAL (((IGMP_QUERY_INTERVAL / 4) \ + / TIMER_INTERVAL) * TIMER_INTERVAL) +#define IGMP_STARTUP_QUERY_COUNT IGMP_ROBUSTNESS_VARIABLE +#define IGMP_LAST_MEMBER_QUERY_INTERVAL 1 +#define IGMP_LAST_MEMBER_QUERY_COUNT IGMP_ROBUSTNESS_VARIABLE + +/* + * OLD_AGE_THRESHOLD is the number of IGMP_QUERY_INTERVAL's to remember the + * presence of an IGMPv1 group member. According to the IGMPv2 specification, + * routers remember this presence for [Robustness Variable] * [Query Interval] + + * [Query Response Interval]. However, OLD_AGE_THRESHOLD is in units of + * [Query Interval], so doesn't have sufficient resolution to represent + * [Query Response Interval]. When the timer mechanism gets an efficient + * method of refreshing timers, this should get fixed. + */ +#define OLD_AGE_THRESHOLD IGMP_ROBUSTNESS_VARIABLE |