File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / mrouted / igmpv2.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 23:10:48 2012 UTC (12 years, 3 months ago) by misho
Branches: mrouted, MAIN
CVS tags: v3_9_6p0, v3_9_6, v3_9_5, HEAD
mrouted

    1: /*
    2:  * The mrouted program is covered by the license in the accompanying file
    3:  * named "LICENSE".  Use of the mrouted program represents acceptance of
    4:  * the terms and conditions listed in that file.
    5:  *
    6:  * The mrouted program is COPYRIGHT 1989 by The Board of Trustees of
    7:  * Leland Stanford Junior University.
    8:  *
    9:  *
   10:  * igmpv2.h,v 3.8.4.1 1997/11/18 23:25:58 fenner Exp
   11:  */
   12: 
   13: /*
   14:  * Constants for IGMP Version 2.  Several of these, especially the
   15:  * robustness variable, should be variables and not constants.
   16:  */
   17: #define	IGMP_ROBUSTNESS_VARIABLE		2
   18: #define	IGMP_QUERY_INTERVAL			125
   19: #define	IGMP_QUERY_RESPONSE_INTERVAL		10
   20: #define	IGMP_GROUP_MEMBERSHIP_INTERVAL		(IGMP_ROBUSTNESS_VARIABLE * \
   21: 					IGMP_QUERY_INTERVAL + \
   22: 					IGMP_QUERY_RESPONSE_INTERVAL)
   23: #define	IGMP_OTHER_QUERIER_PRESENT_INTERVAL	(IGMP_ROBUSTNESS_VARIABLE * \
   24: 					IGMP_QUERY_INTERVAL + \
   25: 					IGMP_QUERY_RESPONSE_INTERVAL / 2)
   26: 						/* Round to the nearest TIMER_INTERVAL */
   27: #define	IGMP_STARTUP_QUERY_INTERVAL		(((IGMP_QUERY_INTERVAL / 4) \
   28: 							/ TIMER_INTERVAL) * TIMER_INTERVAL)
   29: #define	IGMP_STARTUP_QUERY_COUNT		IGMP_ROBUSTNESS_VARIABLE
   30: #define	IGMP_LAST_MEMBER_QUERY_INTERVAL		1
   31: #define	IGMP_LAST_MEMBER_QUERY_COUNT		IGMP_ROBUSTNESS_VARIABLE
   32: 
   33: /*
   34:  * OLD_AGE_THRESHOLD is the number of IGMP_QUERY_INTERVAL's to remember the
   35:  * presence of an IGMPv1 group member.  According to the IGMPv2 specification,
   36:  * routers remember this presence for [Robustness Variable] * [Query Interval] +
   37:  * [Query Response Interval].  However, OLD_AGE_THRESHOLD is in units of
   38:  * [Query Interval], so doesn't have sufficient resolution to represent
   39:  * [Query Response Interval].  When the timer mechanism gets an efficient
   40:  * method of refreshing timers, this should get fixed.
   41:  */
   42: #define OLD_AGE_THRESHOLD		IGMP_ROBUSTNESS_VARIABLE

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>