NetworkWorkingGroupW.FennerRequestforComments:2236XeroxPARCUpdates:1112November1997Category:StandardsTrackInternetGroupManagementProtocol,Version2StatusofthisMemoThisdocumentspecifiesanInternetstandardstrackprotocolfortheInternetcommunity,andrequestsdiscussionandsuggestionsforimprovements.PleaserefertothecurrenteditionoftheInternetOfficialProtocolStandards(STD1)forthestandardizationstateandstatusofthisprotocol.Distributionofthismemoisunlimited.CopyrightNoticeCopyright(C)TheInternetSociety(1997).AllRightsReserved.AbstractThismemodocumentsIGMPv2,usedbyIPhoststoreporttheirmulticastgroupmembershipstorouters.ItupdatesSTD5,RFC1112.IGMPv2allowsgroupmembershipterminationtobequicklyreportedtotheroutingprotocol,whichisimportantforhigh-bandwidthmulticastgroupsand/orsubnetswithhighlyvolatilegroupmembership.ThisdocumentisaproductoftheInter-DomainMulticastRoutingworkinggroupwithintheInternetEngineeringTaskForce.Commentsaresolicitedandshouldbeaddressedtotheworkinggroup’smailinglistatidmr@cs.ucl.ac.ukand/ortheauthor(s).1.DefinitionsThekeywordsMUST,MUSTNOT,REQUIRED,SHALL,SHALLNOT,SHOULD,SHOULDNOT,RECOMMENDED,MAY,andOPTIONALinthisdocumentaretobeinterpretedasdescribedinRFC2119[RFC2119].2.IntroductionTheInternetGroupManagementProtocol(IGMP)isusedbyIPhoststoreporttheirmulticastgroupmembershipstoanyimmediately-neighboringmulticastrouters.ThismemodescribesonlytheuseofIGMPbetweenhostsandrouterstodeterminegroupmembership.RoutersthataremembersofmulticastgroupsareexpectedtobehaveFennerStandardsTrack[Page1]RFC2236InternetGroupManagementProtocolNovember1997ashostsaswellasrouters,andmayevenrespondtotheirownqueries.IGMPmayalsobeusedbetweenrouters,butsuchuseisnotspecifiedhere.LikeICMP,IGMPisaintegralpartofIP.ItisrequiredtobeimplementedbyallhostswishingtoreceiveIPmulticasts.IGMPmessagesareencapsulatedinIPdatagrams,withanIPprotocolnumberof2.AllIGMPmessagesdescribedinthisdocumentaresentwithIPTTL1,andcontaintheIPRouterAlertoption[RFC2113]intheirIPheader.AllIGMPmessagesofconcerntohostshavethefollowingformat:012301234567890123456789012345678901+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|Type|MaxRespTime|Checksum|+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|GroupAddress|+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+2.1.TypeTherearethreetypesofIGMPmessagesofconcerntothehost-routerinteraction:0x11=MembershipQueryTherearetwosub-typesofMembershipQuerymessages:-GeneralQuery,usedtolearnwhichgroupshavemembersonanattachednetwork.-Group-SpecificQuery,usedtolearnifaparticulargrouphasanymembersonanattachednetwork.ThesetwomessagesaredifferentiatedbytheGroupAddress,asdescribedinsection1.4.MembershipQuerymessagesarereferredtosimplyasQuerymessages.0x16=Version2MembershipReport0x17=LeaveGroupThereisanadditionaltypeofmessage,forbackwards-compatibilitywithIGMPv1:0x12=Version1MembershipReportFennerStandardsTrack[Page2]RFC2236InternetGroupManagementProtocolNovember1997ThisdocumentreferstoMembershipReportssimplyasReports.Whennoversionisspecified,thestatementappliesequallytobothversions.Unrecognizedmessagetypesshouldbesilentlyignored.NewmessagetypesmaybeusedbynewerversionsofIGMP,bymulticastroutingprotocols,orotheruses.2.2.MaxResponseTimeTheMaxResponseTimefieldismeaningfulonlyinMembershipQuerymessages,andspecifiesthemaximumallowedtimebeforesendingarespondingreportinunitsof1/10second.Inallothermessages,itissettozerobythesenderandignoredbyreceivers.VaryingthissettingallowsIGMPv2routerstotunetheleavelatency(thetimebetweenthemomentthelasthostleavesagroupandwhentheroutingprotocolisnotifiedthattherearenomoremembers),asdiscussedinsection7.8.ItalsoallowstuningoftheburstinessofIGMPtrafficonasubnet,asdiscussedinsection7.3.2.3.ChecksumThechecksumisthe16-bitone’scomplementoftheone’scomplementsumofthewholeIGMPmessage(theentireIPpayload).Forcomputingthechecksum,thechecksumfieldissettozero.Whentransmittingpackets,thechecksumMUSTbecomputedandinsertedintothisfield.Whenreceivingpackets,thechecksumMUSTbeverifiedbeforeprocessingapacket.2.4.GroupAddressInaMembershipQuerymessage,thegroupaddressfieldissettozerowhensendingaGeneralQuery,andsettothegroupaddressbeingqueriedwhensendingaGroup-SpecificQuery.InaMembershipReportorLeaveGroupmessage,thegroupaddressfieldholdstheIPmulticastgroupaddressofthegroupbeingreportedorleft.2.5.OtherfieldsNotethatIGMPmessagesmaybelongerthan8octets,especiallyfuturebackwards-compatibleversionsofIGMP.AslongastheTypeisonethatisrecognized,anIGMPv2implementationMUSTignoreanythingpastthefirst8octetswhileprocessingthepacket.However,theIGMPchecksumisalwayscomputedoverthewholeIPpayload,notjustoverthefirst8octets.FennerStandardsTrack[Page3]RFC2236InternetGroupManagementProtocolNovember19973.ProtocolDescriptionNotethatdefaultsfortimervaluesaredescribedlaterinthisdocument.Timerandcounternamesappearinsquarebrackets.Theterminterfaceissometimesusedinthisdocumenttomeantheprimaryinterfaceonanattachednetwork;ifarouterhasmultiplephysicalinterfacesonasinglenetworkthisprotocolneedonlyrunononeofthem.Hosts,ontheotherhand,need