Multicast

honggarae 25/01/2022 980

Generatebackground

Generally,intraditionalnetworkcommunication,therearetwoways,oneisthe"one-to-one"betweenthesourcehostandthetargethost.Thecommunicationmethodisunicast.Thesecondisthecommunicationbetweenasourcehostandallotherhostsinthenetwork,whichisbroadcast.Then,ifyouneedtosendinformationfromthesourcehosttomultipletargethostsinthenetwork,eitherbroadcastisusedsothatallhostsinthenetworkwillreceivetheinformation,orunicastisusedtosendthesourcehosttodifferenttargethosts.sendMessage.Itcanbeseenthatinthebroadcastmode,informationwillbesenttohoststhatdonotneedtheinformation,thuswastingbandwidthresourcesandevencausingbroadcaststorms:whileinunicastmode,bandwidthresourceswillbewastedduetomultiplerepetitionsofdatapackets.Atthesametime,Theloadofthesourcehostwillincreaseduetomultipledataduplications.Therefore,unicastandbroadcasthavedisadvantagesformulticasting.

Inthiscase,theapplicationofmulticasttechnologywasborn.

Multicastisalsocalledmulti-targetbroadcastandmulticast.Atransmissionmethodusedinthenetworkthatallowsthesentmessagetobetransmittedtoaselectedsubsetofallpossibledestinations,thatis,toconveyinformationtoavarietyofaddressesthatareclearlyindicated.Itisamethodofcommunicationbetweenasenderandmultiplereceivers.Togetherwithanycastandunicast,multicastisalsoanIPv6packettransmissionmethod.MulticastcanalsobeusedinwirelessdatanetworksinCDPDtechnology.

InSeptember1985,SteveandhismentorproposedanextendedmodeltosupportIPmulticast,whichclarifiedtheconceptoftheInternetGroupManagementProtocol(IGMP).InDecember,StevesubmittedthisconcepttotheIETF,andafterupdatingthemulticastmodeltwice,theforwardingofdifferentnetworksegmentswasnotdefined.Thisworkhasbeenindependentlyusedasamulticastroutingtechnology.InAugust1989,RFC1112waswidelyacceptedastheIGMPv1specification,whichwasanimportantmilestoneinthedevelopmentofmulticast.

Traditionalmethod

MulticasttechnologyisoneofthethreemethodsofIPnetworkdatatransmission.BeforeintroducingIPmulticasttechnology,theunicastandmulticastofIPnetworkdatatransmissionMakeabriefintroductiontothebroadcastmethod.

Unicast

Apoint-to-pointnetworkconnectionisrealizedbetweenthesenderandeachreceiver.Ifasendertransmitsthesamedatatomultiplereceiversatthesametime,multiplecopiesofthesamedatapacketmustbecopiedaccordingly.Ifalargenumberofhostswanttoobtainthesamecopyofadatapacket,itwillcauseaheavyburdenonthesender,alongdelay,andnetworkcongestion;inordertoensureacertainqualityofservice,itisnecessarytoincreasehardwareandbandwidth.

Broadcast

BroadcastreferstobroadcastingdatapacketsinanIPsubnet,andallhostsinthesubnetwillreceivethesedatapackets.Broadcastingmeansthatthenetworkdeliversadatapackettoeveryhostinthesubnet,regardlessofwhetherthesehostsarewillingtoreceivethedatapacket.Therefore,theuserangeofbroadcastisverysmall,anditisonlyeffectiveinthelocalsubnet.Thebroadcasttransmissioniscontrolledbyroutersandnetworkdevices.

Multicast

Multicastrealizesapoint-to-multipointnetworkconnectionbetweenthesenderandeachreceiver.Ifasendertransmitsthesamedatatomultiplereceiversatthesametime,onlyonecopyofthesamedatapacketisrequired.Itimprovestheefficiencyofdatatransmissionandreducesthepossibilityofcongestioninthebackbonenetwork.

Multicastsolvestheproblemoflowefficiencyinunicastandbroadcastmethods.Whensomeusersinthenetworkrequirespecificinformation,themulticastsource(thatis,thesenderofmulticastinformation)onlysendstheinformationonce,andthemulticastrouterusesthemulticastroutingprotocoltoestablishatree-typerouteforthemulticastdatapacket,andtheinformationtobetransmittedReproductionanddistributionbeganattheforkasfaraspossible.

IPmulticast

SomegroupsinthepublicInternetoftenuseIPmulticast(Mboneisanexample).Inaddition,IPmulticastisalsousedUsedforsomespecialapplicationsinprivateIPnetworkssuchasInternet2.LinklocalmulticastreferstosendingIPmulticastpacketstoseveralhostgroupsatthesamephysicalorvirtualdatalinklayer.Sincethiskindofmulticastdoesnotrequirecomplexrouting,itsapplicationismuchmoreextensive.InIPv6,itisusedforaddressresolution,andinzero-configurationnetworks,itreplacestheinefficientbroadcastprotocolandcompletesthefunctionsofservicediscovery,nameresolution,andaddressconflictresolution.

Thefirstlarge-scaledemonstrationoftheIPmulticastconferencewasatthe23rdIETFconferenceinMarch1992,whenitwasusedtobroadcasttoresearchersandinterestedobserversallovertheworldSomemeetings.Afterthat,someIETFmeetingswereselectivelycontinuedtobemulticastonMBONEandsomeprivatemulticastnetworks.

Multicastsecurityisanimportantissue.Standardandpracticalcommunicationsecuritysolutionsgenerallyusesymmetricencryption.ButapplyingittoIPmulticasttrafficmaygiveanyreceivertheabilitytoimpersonatethesender.Thisisclearlyunacceptable.TheIETF'sMSECworkinggroupisdevelopingsecurityprotocolstosolvethisproblem.MostoftheseprotocolsaredevelopedwithintheframeworkoftheIPsecprotocolsuite.

IPseccannotbeusedinmulticastschemes.ThisisbecauseIPsecsecurityassociationsareboundtotwohostsinsteadofmultiplehosts.IETFproposedanewprotocol-TESLA,whichisflexibleandconvincingintermsofmulticastsecurity.

Architecture

Multicastprotocolsaredividedintohost-routergroupmembershipprotocolsandrouter-routermulticastroutingprotocols.ThegroupmembershipagreementincludesIGMP(InternetGroupManagementProtocol).Multicastroutingprotocolsaredividedintointra-domainmulticastroutingprotocolsandinter-domainmulticastroutingprotocols.Intra-domainmulticastroutingprotocolsincludePIM-SM,PIM-DM,DVMRPandotherprotocols,andinter-domainmulticastroutingprotocolsincludeMBGP,MSDPandotherprotocols.Atthesametime,inordertoeffectivelysuppressthediffusionofmulticastdataatthelinklayer,Layer2multicastprotocolssuchasIGMPSnoopingandCGMPareintroduced.Madeahugecontributiontothehistoryofmulticasttechnology!

IGMPestablishesandmaintainsthegroupmembershipinformationofthedirectnetworksegmentoftherouter.Theintra-domainmulticastroutingprotocolusesacertainmulticastroutingalgorithmtoconstructamulticastdistributiontreetoforwardmulticastdatapacketsaccordingtothemembershipinformationofthesemulticastgroupsmaintainedbyIGMP.Theinter-domainmulticastroutingprotocolpublishesmulticast-capableroutinginformationandmulticastsourceinformationbetweenautonomousdomains,sothatmulticastdatacanbeforwardedbetweendomains.

IPaddress

ThemulticastIPaddressisusedtoidentifyanIPmulticastgroup.IANA(internetassignednumberauthority)assignsClassDaddressspacetoIPmulticast,anditsrangeisfrom224.0.0.0to239.255.255.255.Suchasbinaryrepresentation,thefirstfourdigitsoftheIPmulticastaddressareall1110octets⑴octet⑵octet⑶octet⑷1110

XXXXXXXXXXXXXXXXXXXXXXXXXXXXmulticastgroupcanbepermanentorcanbeItistemporary.Amongthemulticastgroupaddresses,apartofthemisofficiallyallocatedandiscalledapermanentmulticastgroup.Whatremainsthesameforapermanentmulticastgroupisitsipaddress,andthemembershipofthegroupcanchange.Thenumberofmembersinapermanentmulticastgroupcanbearbitrary,orevenzero.ThoseIPmulticastaddressesthatarenotreservedforpermanentmulticastgroupscanbeusedbytemporarymulticastgroups.

224.0.0.0~224.0.0.255arereservedmulticastaddresses(permanentgroupaddresses).Theaddress224.0.0.0isreservedforallocation,andotheraddressesareusedbyroutingprotocols.

224.0.1.0~238.255.255.255aremulticastaddresses(temporarygroupaddresses)availabletousers,whicharevalidintheentirenetwork.

239.0.0.0~239.255.255.255arelocallymanagedmulticastaddresses,whichareonlyvalidinaspecificlocalrange.Thelistofcommonlyusedreservedmulticastaddressesisasfollows:

224.0.0.0baseaddress(reserved)

224.0.0.1allhostaddresses

224.0.0.2allTheaddressofthemulticastrouter

224.0.0.3notassigned

224.0.0.4dvmrp(DistanceVectorMulticastRoutingProtocol)router

224.0.0.5ospf(OpenShortestPathFirst)router

224.0.0.6ospfdr(DesignatedRouter,designatedrouter)

224.0.0.7st(SharedTree,Sharedtree)router

224.0.0.8sthost

224.0.0.9rip-2router

224.0.0.10Eigrp(EnhancedInteriorGatewayRoutingProtocol,enhancedgatewayInternalroutinglineprotocol)router224.0.0.11activeagent

224.0.0.12dhcpserver/relayagent

224.0.0.13allpim(ProtocolIndependentMulticast)routers

224.0.0.14rsvp(ResourceReservationProtocol,resourcereservationprotocol)encapsulation

224.0.0.15allcbtrouters

224.0.0.16designatedsbm(SubnetworkBandwidthManagement,subnetbandwidthmanagement)

224.0.0.17allsbms

224.0.0.18vrrp(VirtualRouterRedundancyProtocol,VirtualRouterRedundancyProtocol)

239.255.255.255SSDPprotocoluses

MulticastMACaddress

Thehigh24bitofthemulticastMACaddressis0x01005e,andthe25thbitis0,thatis,thehigh25bitisafixedvalue.Thelower23bitsoftheMACaddressarethelower23bitsofthemulticastIPaddress.Sincethefirst4bitsoftheIPmulticastaddressare1110,whichrepresentsthemulticastidentifier,andonly23bitsofthelast28bitsaremappedtotheMACaddress,5bitsofinformationintheIPaddressarelost,resultingin32IPmulticastaddressmappings.TothesameMACaddress.

Interactive

ThebiggestuseofIPmulticastistotransmitaudioandvideoontheInternet,suchassendingaudioandvideodatatohundredsofusersflow.ButthebiggestdisadvantageoftraditionalIPmulticastisthatalltheseusersarepassivereceivers.Inotherwords,IPmulticastdoesnothaveabuilt-inmechanismfortheseuserstoengageininteractiveandactiveparticipation.

UsingtheH.323internationalstandardmanagementtechnologyformeetingmembers,SAP(SessionAnnouncementProtocol),SDP(SessionDescriptionProtocol),RTCP(Real-timeTransportControlProtocol)andotherprotocols,youcanuseTraditionalIPmulticasttechnologyhasinteractivefunctions.InteractiveIPmulticasttechnologyhasawiderangeofapplications,especiallymultimediatransmissionservicesontheInternet.Suchasvideoconferencing,distanceeducation,videoondemand(VoD)ontheInternet,etc.

Multicastapplication

Inthemulticastmode,thesenderofinformationiscalledthe"multicastsource",andthereceiveroftheinformationiscalledthe"multicastgroup"oftheinformation,whichsupportsAllroutersthattransmitmulticastinformationarecalled"multicastrouters."Thereceivermemberswhojointhesamemulticastgroupcanbewidelydistributedanywhereinthenetwork,thatis,the"multicastgroup"hasnogeographicalrestrictions.Itshouldbenotedthatthemulticastsourcedoesnotnecessarilybelongtothemulticastgroup.Itsendsdatatothemulticastgroup,anditisnotnecessarilythereceiveritself.Multiplemulticastsourcescansendpacketstoamulticastgroupatthesametime.

AssumingthatonlyHostB,HostD,andHostEneedinformation,whenmulticastisused,thesehostscanbeaddedtothesamemulticastgroup(Multicastgroup),andthemulticastsourcecanonlysendinformationtothemulticastgroup.Apieceofinformationneedstobesent,andeachrouterinthenetworkwillcopyandforwardtheinformationaccordingtothedistributionofthemembersinthemulticastgroup.Finally,theinformationwillbeaccuratelysenttoHostB,HostD,andHostE.

Relatedprotocols

Multicastprotocolsaredividedintogroupmembershipprotocolsbetweenhostsandroutersandmulticastroutingprotocolsbetweenroutersandrouters.

IGMP

TheIGMPprotocolrunsbetweenthehostandthemulticastrouterdirectlyconnectedtothehost.Thehosttellsthelocalrouterthroughthisprotocolthatitwantstojoinandacceptaspecificmulticastgroup.Atthesametime,therouterperiodicallyquerieswhetherthemembersofaknowngroupintheLANareactive(thatis,whethertherearestillmembersbelongingtoamulticastgroupinthenetworksegment)throughthisprotocol,soastorealizethemembershiprelationshipoftheconnectednetworkgroupCollectionandmaintenance.

TherearethreeversionsofIGMP,IGMPv1isdefinedbyRFC1112,andthegeneraloneisIGMPv2,whichisdefinedbyRFC2236.IGMPv3isstilladraft.IGMPv1definesthebasicgroupmemberqueryandreportprocess.IGMPv2addsamechanismforgroupmemberstoleavequickly.ThemainfunctionaddedinIGMPv3isthatmemberscanspecifytoreceiveorspecifynottoreceivepacketsfromcertainmulticastsources..ThisarticlefocusesonthefunctionsoftheIGMPv2protocol.

IGMPv2electstheonlyquerierfortheconnectednetworksegmentthroughthequerierelectionmechanism.Thequerierperiodicallysendsgeneralgroupquerymessagesformembershipquery;thehostsendsareportmessagetoanswerthequery.Whenjoiningamulticastgroup,thehostdoesnotneedtowaitforaquerymessage,andactivelysendsareportmessage.Whenleavingthemulticastgroup,thehostsendsaleavegroupmessage;afterreceivingtheleavegroupmessage,thequeriersendsaspecificgroupquerymessagetodeterminewhetherallgroupmembershaveleft.

ThroughtheaboveIGMPmechanism,atableisestablishedinthemulticastrouter,whichcontainseachportoftherouterandwhichgroupmembersareonthesubnetcorrespondingtotheport.WhentherouterreceivesadatamessagefromacertaingroupG,itonlyforwardsthedatamessagetothoseportsthathaveGmembers.Asforhowdatapacketsareforwardedbetweenrouters,itisdeterminedbytheroutingprotocol,andtheIGMPprotocolisnotresponsible.

IGMPSnooping

TherealizationmechanismofIGMPSnoopingis:theswitchformsthecorrespondencebetweengroupmembersandswitchinterfacesbylisteningtotheIGMPmemberreportmessagessentbythehosttotherouter;Accordingtothecorrespondingrelationship,thereceivedmulticastdatapacketisonlyforwardedtotheinterfacewithgroupmembers.

IGMPProxyandIGMPSnoopingachievethesamefunctionbutdifferentmechanisms:IGMPsnoopingonlyobtainsrelevantinformationbylisteningtoIGMPmessages,whileIGMPProxyinterceptstheenduser’sIGMPrequestandperformsrelatedprocessing.,Andthenforwardittotheupperrouter.

CGMP

CGMP(CiscoGroupManagementProtocol)isaproprietaryprotocoldevelopedbyCiscobasedontheclient/servermodel.WiththesupportofCGMP,multicastrouterscanfollowthereceivedIGMPThedatapacketinformstheswitchwhichhostswhentojoinandleavethemulticastgroup,andtheswitchusestheforwardingtableconstructedfromthisinformationtodeterminewhichinterfacetoforwardthemulticastdatapacketto.GMRPisastandardprotocolfromhosttoEthernetswitch,whichenablesmulticastuserstoregistermulticastmembersonthesecondlayerswitch.

PIM-SM

Amongthemanymulticastroutingprotocols,themostusedprotocolisPIM-SMsparsemodeprotocol-independentmulticast.

InthePIM-SMdomain,routersrunningthePIM-SMprotocolperiodicallysendHellomessagestodiscoveradjacentPIMroutersandareresponsiblefordesignatedrouters(DR)inthemulti-accessnetworkElections.Here,theDRisresponsibleforsendingthe"join/prune"messagetoitsdirectlyconnectedgroupmemberstowardtherootnodeofthemulticastdistributiontree,orsendthedataofthedirectlyconnectedmulticastsourcetothemulticastdistributiontree.

Multicastbackbonenetwork

Themulticastspecificationwaspublishedin1989,butitsuseisrestricted.NotallroutersontheInternethavemulticastcapabilities.Insuchasituation,researchershaveestablishedamulticastbackbonenetwork(MulticastBackbone,Mbone)inordertodevelopandtesttheapplicationofthemulticastprotocolundertheexistingconditions.MbonesupportsroutingofmulticastpacketswithoutdisturbingotherInternetservicestreams.

Mboneisanexperimentalnetworkthatspansseveralcontinentsandiscompletedbyvolunteers.Itisacollectionofinterconnectedsubnetsandrouters.ThesesubnetsandrouterssupportthetransmissionofIPmulticastservicestreams.AsavirtualnetworkontheInternet,MboneusestunnelingtobypassroutersontheInternetthatarenotcapableofmulticasting.

ThetunnelencapsulatesmulticastdatapacketsinIPpackets(ie,unicastdatapackets)topassthroughnetworksthatdonotsupportmulticastrouting.MR3andMR4aremulticast-capableroutersthatsupporttheIGMPprotocol.Theyencapsulatemulticastdatapacketsinunicastdatapacketsfortransmission,andatthesametime,theyalsotakeoutthemulticastdatapacketsfromthereceivedunicastdatapackets.R1andR2arerouterswithoutmulticastcapability.Theytransmitunicastdatapacketsencapsulatedwithmulticastdatapacketslikeotherordinaryunicastdatapackets.

Multicastapplications

Multicastapplicationscanberoughlydividedintothreecategories:point-to-multipointapplications,multipoint-to-multipointapplicationsandmultipoint-to-pointapplications.

Point-to-multipoint

Point-to-multipointapplicationreferstotheapplicationformofonesenderandmultiplereceivers.Thisisthemostcommonformofmulticastapplication.Typicalapplicationsinclude:

Mediabroadcast:eventssuchaslectures,presentations,meetings,etc.accordingtotheschedule.Itstraditionalmediadistributionmethodsusuallyusetelevisionandradio.Thistypeofapplicationusuallyrequiresoneormoreconstant-ratedatastreams.Whenmultipledatastreams(suchasvoiceandvideo)areused,theyoftenneedtobesynchronizedwitheachotherandhavedifferentpriorities.Theyoftenrequirehigherbandwidthandsmallerdelayjitter,buttherequirementsforabsolutedelayarenotveryhigh.

Mediapush:suchasnewsheadlines,weatherchanges,sportsscoresandothernon-commercialkeydynamicchanges.Theyrequirelowerbandwidthandnorequirementfordelay.

Informationcaching:suchaswebsiteinformation,executioncodeandotherfile-baseddistributedreplicationorcacheupdates.Theyhavegeneralrequirementsforbandwidthandgeneralrequirementsfordelay.

Eventnotification:suchasnetworktime,multicastsessionschedule,randomnumber,key,configurationupdate,effectiverangeofnetworkalarmorotherusefulinformation.Theyhavedifferentrequirementsforbandwidth,butaregenerallyrelativelylow,andtherequirementsfordelayarealsoaverage.

Statusmonitoring:suchasstockprices,sensingequipment,securitysystems,productioninformationorotherreal-timeinformation.Suchbandwidthrequirementsvaryaccordingtothesamplingperiodandaccuracy,andtheremaybeconstantratebandwidthorburstbandwidthrequirements.Generally,therequirementsforbandwidthanddelayaregeneral.

Multipoint-to-multipoint

Multipoint-to-multipointapplicationreferstoanapplicationformwithmultiplesendersandmultiplereceivers.Generally,eachreceivercanreceivedatasentbymultiplesenders,andatthesametime,eachsendercansenddatatomultiplereceivers.

Typicalapplicationsinclude:

Multipointconferences:usuallyaudio/videoandwhiteboardapplicationsconstitutemultipointconferenceapplications.Inamultipointconference,differentdatastreamshavedifferentpriorities.Traditionalmultipointconferencesusespecialmultipointcontrolunitstocoordinateanddistributethem,andmulticastcanbedirectlysentbyanysendertoallreceivers,andthemultipointcontrolunitisusedtocontrolthecurrentrighttospeak.Suchapplicationshaverelativelyhighrequirementsforbandwidthanddelay.

Resourcesynchronization:synchronizationofdistributeddatabasessuchasschedules,directories,andinformation.Theyhavegeneralrequirementsforbandwidthanddelay.

Parallelprocessing:suchasdistributedparallelprocessing.Ithasrelativelyhighrequirementsforbandwidthanddelay.

Collaborativeprocessing:suchaseditingofshareddocuments.Ithasgeneralrequirementsforbandwidthanddelay.

Distancelearning:Thisisactuallyamediabroadcastapplicationplussupportforupstreamdatastreams(allowingstudentstoaskquestionstoteachers).Ithasgeneralrequirementsforbandwidthanddelay.

Discussiongroup:Similartoatext-basedmultipointconference,itcanalsoprovidesomesimulatedexpressions.

Distributedinteractivesimulation(DIS):Ithashigherrequirementsforbandwidthanddelay.

Multiplayergame:Multiplayergameisasimpledistributedinteractivesimulationwithdiscussiongroupcapabilities.Ithasrelativelyhighrequirementsforbandwidthanddelay.

JamSession:Thisisanaudiocodingsharingapplication.Ithasrelativelyhighrequirementsforbandwidthanddelay.

Multipoint-to-point

Multipoint-to-pointapplicationreferstotheapplicationformofmultiplesendersandonereceiver.Usuallyatwo-wayrequestresponseapplication,eitherend(multipointorpoint)mayinitiatearequest.Typicalapplicationsinclude:

Resourcesearch:Suchasservicelocation,itrequireslowerbandwidthandgeneraldelay.

Datacollection:Itisthereverseprocessofstatusmonitoringapplicationsinpoint-to-multipointapplications.Itmaysenddatabacktoadatacollectionhostbymultiplesensingdevices.Bandwidthrequirementsvaryaccordingtothesamplingperiodandaccuracy.Theremaybeconstantratebandwidthorburstbandwidthrequirements.Generally,suchapplicationshavegeneralrequirementsforbandwidthanddelay.

Onlineauction:Theauctioneerauctionstheproduct,andmultiplecompetitorssendthebidbacktotheauctioneer.

Informationinquiry:Theinquirersendsaninquiry,andalltheinquiredrespondtoit.Usuallythisrequireslowbandwidthandislesssensitivetodelay.

JukeBox:Forexample,itsupportsnear-on-demand(Near-On-Demand)audioandvideoreverseplayback.Usually,thereceiverusesan"out-of-band"protocolmechanism(suchasHTTP,RTSP,SMTP,andalsomulticast)tosendthereverseplaybackrequesttoadispatchqueue.Ithashigherrequirementsforbandwidthandgeneralrequirementsfordelay.

Technicalissues

Multicasttechnologyhasmanyunsolvedissues,suchas:multicastsecurity,multicastcongestioncontrol,multicaststateaggregation,multicasttrafficaccounting,noCongestioncontrol,datapacketduplication,out-of-orderdeliveryofdatapackets,etc.

Latest: Non-tariff barriers

Next: PROLOG language