《组播协议原理与应用幻灯片.ppt》由会员分享,可在线阅读,更多相关《组播协议原理与应用幻灯片.ppt(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、组播协议原理与应用组播协议原理与应用1第1页,共43页,编辑于2022年,星期一前前 言言 本本PPTPPT主要介绍了组播协议原理和实际应用,适用于主要介绍了组播协议原理和实际应用,适用于对组播协议有一定了解的工程师和网络维护人员。对组播协议有一定了解的工程师和网络维护人员。2第2页,共43页,编辑于2022年,星期一课程目标课程目标q通过本课程的学习,您可以掌握如下知识点:通过本课程的学习,您可以掌握如下知识点:v组播路由协议v组播在实际工程中的应用3第3页,共43页,编辑于2022年,星期一提提 纲纲q组播路由协议组播路由协议q组播在实际工程中的应用组播在实际工程中的应用4第4页,共43页
2、,编辑于2022年,星期一提纲提纲q组播路由协议组播路由协议q组播在实际工程中的应用组播在实际工程中的应用5第5页,共43页,编辑于2022年,星期一组播路由协议组播路由协议q为什么需要组播路由协议为什么需要组播路由协议?需要接收需要接收224.5.5.5的组播数据的组播数据发送着发送着224.5.5.5的的组播数据组播数据从哪里能够得从哪里能够得到到224.5.5.5的的组播数据组播数据如何能够将如何能够将224.5.5.5的组播数据发送到网的组播数据发送到网络中有需求的地方络中有需求的地方发送发送224.5.5.5的的Membership Report需要一种机制需要一种机制,可以让组播数
3、据在网络中传输有接收需求的地方可以让组播数据在网络中传输有接收需求的地方6第6页,共43页,编辑于2022年,星期一组播路由协议组播路由协议q组播路由协议分类组播路由协议分类v分为域内组播路由协议及域间组播路由协议v域内的组播路由协议又分为密集模式与稀疏模式.域内组播路由协议主要PIM-DM,PIM-SM,DVMRP等协议.v我们在园区网中经常使用的域内组播路由协议为PIM-DM和PIM-SM.7第7页,共43页,编辑于2022年,星期一组播路由协议组播路由协议q逆向路径转发逆向路径转发ip:192.168.1.1发送着发送着224.5.5.5的的组播数据组播数据两个接口都收到了目的地址为两个
4、接口都收到了目的地址为224.5.5.5,源地址为源地址为192.168.1.1的组播报文的组播报文查找单播路由表查找单播路由表,去往去往192.168.1.0/24的下一跳接的下一跳接口是口是S1,于是丢弃从于是丢弃从S2收到收到的组播报文的组播报文.R1R2R3S1S2重复的组播数据重复的组播数据流流8第8页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIMvPIM(Protocol Independent Multicasting)独立于单播协议,使用任意单播路由协议进行RPF检查.与其他的路由协议不同,PIM不在路由器之间发送和接收路由更新信息。vUDP端口号:103
5、vPIM路由器组地址为:224.0.0.13vPIM协议分为:nPIM-DM(协议无关组播-密集模式)nPIM-SM(协议无关组播-稀疏模式)9第9页,共43页,编辑于2022年,星期一组播路由协议组播路由协议q剪枝与嫁接剪枝与嫁接v当组播路由器的某个接口RPF检查失败时,该路由器会从这个接口发出一个剪接报文,以通知邻居路由器不要再向它发送组播数据.发送着发送着224.5.5.5的组播数据的组播数据R1R2R3S1S2RPF检查失败检查失败所连接的子网内没有所连接的子网内没有接收的需求接收的需求发送着发送着224.5.5.5的组的组播数据播数据剪枝消息剪枝消息剪枝消息剪枝消息10第10页,共4
6、3页,编辑于2022年,星期一组播路由协议组播路由协议q剪枝与嫁接剪枝与嫁接v嫁接报文正好与剪枝报文相反,它是用来通知上游路由器将组播报文转发给自己.发送着发送着224.5.5.5的的组播数据组播数据R1R2R3S1S2S1接口接口down掉掉所连接的子网内无接收所连接的子网内无接收的需求的需求发送着发送着224.5.5.5的组的组播数据播数据嫁接消息嫁接消息所连接的子网内有接收的所连接的子网内有接收的需求需求嫁接消息嫁接消息11第11页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-DMvPIM-DM用于指导路由器如何将组播数据在网络中传输到有组播接收需求的地方.vPI
7、M-DM使用推(push)模式将组播数据包扩散(flood)到网络的每个角落。这种推模式是一种使用蛮力将数据包传送到接收者的方法。如果网络中的每个子网都有接收者,那么这种方法是高效的。12第12页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-DM工作过程工作过程v扩散并剪枝组播源组播源所连接的子网内无接收的所连接的子网内无接收的需求需求所连接的子网内有接收的需求所连接的子网内有接收的需求所连接的子网内有接收的需所连接的子网内有接收的需求求R1R2R3R5R4R6剪枝剪枝置为修剪状态置为修剪状态pruneds1s2剪枝剪枝从两个接口都收到了组从两个接口都收到了组播报文播报
8、文,在在S2上做上做RPF检查失败检查失败.13第13页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-DM工作过程工作过程v嫁接组播源组播源所连接的子网内无接收的所连接的子网内无接收的需求需求R1R2R3R5R4R6s1s2所连接的子网内有接所连接的子网内有接收的需求收的需求嫁接嫁接14第14页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-DM工作过程工作过程v剪枝组播源组播源所连接的子网内有接收所连接的子网内有接收的需求的需求R1R2R3R5R4R6s1s2所连接的子网内有接收的需所连接的子网内有接收的需求求所连接的子网内有接所连接的子网内有接
9、收的需求收的需求所连接的子网内无接所连接的子网内无接收的需求收的需求确认所连接子网内没有接收确认所连接子网内没有接收需求需求,但还有但还有R6需要从这里需要从这里接收数据接收数据,因此将不发送剪枝因此将不发送剪枝信息给信息给R2所连接的子网内无接收的需所连接的子网内无接收的需求求确认所连接子网内没有接收需求确认所连接子网内没有接收需求,因此发送剪枝信息给因此发送剪枝信息给R3,同时将相同时将相应端口置为修剪状态应端口置为修剪状态收到收到R5的剪枝消息的剪枝消息,将响将响应接口修剪应接口修剪,并确认其他接并确认其他接口都没有接收需求口都没有接收需求,因此发因此发送剪枝消息给送剪枝消息给R1,并将
10、相并将相应的接口修剪应的接口修剪剪枝剪枝剪枝剪枝收到收到R3的剪枝消息的剪枝消息,将相应的将相应的接口修剪接口修剪15第15页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qSPTvPIM-DM采用扩散与剪接的方式来构建组播路由表.vPIM-DM形成的组播路由表呈现一种树型结构v我们通常称这种树型结构为SPT(Shortest Path Tree)最短路径树 组播源组播源R1R2R3R5R4R6R1R2R3R4R6R5组播源组播源16第16页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qSPTvSPT是以组播源为根构造的从根到所有接收者路径都最短的分布树。n优势:
11、最短路径保证转发组播数据的网络时延最小 n劣势:路由器必须为每个组播源维护路径信息,开销过大.v在组播设计时,如果选用PIM-DM(SPT),那么组播源的数量、带宽情况、有组播接收需求的子网分布情况都应该成为设计者考虑的各种因素.17第17页,共43页,编辑于2022年,星期一组播路由协议组播路由协议q组播路由器的组播转发表项是怎么样的呢?组播路由器的组播转发表项是怎么样的呢?v单播:目的地址-下一跳n目的地址 下一跳n192.168.0.0/24 1.1.1.1n110.112.119.0/24 2.2.2.2n4.4.0.0/16 3.3.3.3v组播:组地址-下一跳?n在R4上会出现一个
12、组地址有两个下一跳?组播源组播源R1R2R3R5R4R618第18页,共43页,编辑于2022年,星期一组播路由协议组播路由协议q组播转发表项的形式组播转发表项的形式v组播转发表项可以简单地理解为S,G,入口,出口集合,S代表组播源地址,G代表组播组地址,入口代表离组播源最近的接口(RPF检查通过的接口),出口集合代表经过PIM协议计算后没有被修剪掉的所有接口集合。R1R2R3R4E0E0E0S1S2S2S1E0E1S1S2S,G,E0,S1,S2S,G,S1,E0S,G,S1,E0S,G,E0,E119第19页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-SMvPIM
13、-SM用于指导路由器如何将组播数据在网络中传输到有组播接收需求的地方。vPIM-SM使用一种拉(pull)模式来传送组播数据包。只有包含活动接收者,并且接收者直接发送数据接收请求的网段才会收到数据。20第20页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-SM工作过程工作过程vPIM-SM与PIM-DM不同,采用的是一种共享树的机制。vPIM-SM引入了一个非常重要的概念,RP(Rendezous Point),汇聚点。vRP的作用:所有的组播源在发送组播数据时,与组播源相连的第一跳路由器都会把组播数据发送给RP,然后再由RP把组播数据发送给有接收需求的路由器,依次类推
14、。21第21页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-SM工作过程工作过程v组播源到RPR2R1R3R4R5RP组播源组播源检测到组播报文,查找组检测到组播报文,查找组播组播组G对应的对应的RP的的IP地址地址组播组组播组G将收到的组播报文封装在单播将收到的组播报文封装在单播报文中,目的地址为报文中,目的地址为RP的的IP地址地址根据单播路由表,将注册根据单播路由表,将注册报文发给报文发给RP注册报文注册报文22第22页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-SM工作过程工作过程vRP在收到单播注册报文后会做哪些动作呢?n当RP上没有
15、存在关于(*,G)的转发表项,它将向R6返回一个注册暂停报文,以通知R6不要再将组播报文封装在单播报文中发送,并且也不会建立到组播源的SPTR2R1R3R4R5RP注册报文注册报文注册报文注册报文注册暂停注册暂停组播源组播源R6组播组组播组G注册暂停注册暂停23第23页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-SM工作过程工作过程vRP在收到单播注册报文后会做哪些动作呢?n当RP上存在(*,G)的转发表项,RP将解封装单播报文,并将组播报文从(*,G)的转发表项的出口集合中发送出去。n向R6发送PIM保留信息,以终止R6继续发送单播注册报文。n同时RP还会向源的方向
16、发送一条(S,G)的加入消息,形成与组播源之间的SPT,按照这个SPT从组播源接收组播数据。R2R1R3R4R5RP组播源组播源注册报文注册报文注册报文注册报文加入信息加入信息R6组播组组播组G保留信息保留信息保留信息保留信息加入信息加入信息24第24页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-SM工作过程工作过程v接收者到RPR2R1R3R4R5RP组播源组播源组播组组播组G接收者接收者创建创建(*,G)的转发表项,并将收到的转发表项,并将收到Membership Report的接口加到的接口加到出口集合中出口集合中,向向RP方向发出加入报方向发出加入报文文创建创
17、建(*,G)的转发表项,并将收的转发表项,并将收到到(*,G)加入报文的接口加到出加入报文的接口加到出口集合中口集合中,将组播组将组播组G的数据从的数据从出口集合中发送出去出口集合中发送出去组播组组播组G创建创建(*,G)的转发表项的转发表项,将收到将收到(*,G)加加入报文的接口加到出口集合中入报文的接口加到出口集合中,向向RP方向发送加入方向发送加入(*,G)报文报文25第25页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-SM工作过程工作过程v完整的PIM-SM过程R2R1R3R4R5RP组播组组播组G接收者接收者创建创建(*,G)的转发表项,并将收到的转发表项,
18、并将收到Membership Report的接口加到出口集合的接口加到出口集合中中,向向RP方向发出加入方向发出加入(*,G)报文报文创建创建(*,G)的转发表项,并将收到加入报文的转发表项,并将收到加入报文的接口加到出口集合中的接口加到出口集合中,将组播组将组播组G的数据的数据从出口集合中发送出去从出口集合中发送出去,如果没有组播组如果没有组播组G的数据的数据,需等待组播源的注册需等待组播源的注册.组播组组播组G组播源组播源R6组播组组播组G注册报文注册报文保留信息保留信息加入信息加入信息保留信息保留信息注册报文注册报文加入信息加入信息注册暂停注册暂停注册暂停注册暂停检测到组播报文,查找组检
19、测到组播报文,查找组播组播组G对应的对应的RP的的IP地址地址将收到的组播报文封装在将收到的组播报文封装在单播报文中,目的地址为单播报文中,目的地址为RP的的IP地址地址根据单播路由表,将注册报文根据单播路由表,将注册报文发给发给RP不存在关于不存在关于(*,G)的表项的表项存在存在(*,G)的表项的表项,向组播源方向发向组播源方向发送注册保留信息送注册保留信息,并向组播源发送并向组播源发送加入消息加入消息创建创建(*,G)的转发表项的转发表项,将收将收到到(*,G)加入报文的接口加到加入报文的接口加到出口集合中出口集合中,向向RP方向发送方向发送加入加入(*,G)报文报文26第26页,共43
20、页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-SM工作过程工作过程v剪枝R2R1R3R4R5RP接收者接收者组播源组播源R6组播组组播组G组播组组播组G组播组组播组G不想接收不想接收GLeave将收到将收到leave报文的接口从报文的接口从(*,G)的转发表项的转发表项中的出口集合中删除中的出口集合中删除,发现发现(*,G)的转发表项的转发表项中的出口集合为空中的出口集合为空,于是向于是向RP方向发送一个方向发送一个剪枝消息剪枝消息,将自己从共享树上修剪将自己从共享树上修剪剪枝消息剪枝消息剪枝消息剪枝消息将收到剪枝消息的接口从将收到剪枝消息的接口从(*,G)中中删除删除,发现发
21、现(*,G)的转发表项中的的转发表项中的出口集合为空出口集合为空.向向G的组播源发送的组播源发送剪枝消息剪枝消息.剪枝消息剪枝消息剪枝消息剪枝消息将收到剪枝的接口从将收到剪枝的接口从(*,G)的转发表项中的转发表项中的出口集合中删除的出口集合中删除,发现发现(*,G)的转发表的转发表项中的出口集合为空项中的出口集合为空,于是向于是向RP方向发方向发送一个剪枝消息送一个剪枝消息,将自己从共享树上修剪将自己从共享树上修剪27第27页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qPIM-SM工作过程工作过程v剪枝R2R1R3R4R5RP接收者接收者组播源组播源R6组播组组播组G组播组
22、组播组G组播组组播组G不想接收不想接收GLeave将收到将收到leave报文的接口从报文的接口从(*,G)的的转发表项中的出口集合中删除转发表项中的出口集合中删除,发现发现(*,G)的转发表项中的出口集合为空的转发表项中的出口集合为空,于是向于是向RP方向发送一个剪枝消息方向发送一个剪枝消息,将将自己从共享树上修剪自己从共享树上修剪剪枝消息剪枝消息接收者接收者将收到剪枝消息的接口从将收到剪枝消息的接口从(*,G)的转的转发表项中的出口集合中删除发表项中的出口集合中删除,发现发现(*,G)的转发表项中的出口集合不为的转发表项中的出口集合不为空,于是不向空,于是不向RP方向发送剪枝消息方向发送剪枝
23、消息28第28页,共43页,编辑于2022年,星期一组播路由协议组播路由协议q共享树共享树vPIM-SM形成的组播转发表通常被成为共享树结构.v共享树的根为RP,RP与组播源形成一个独立的SPT,网络中的所有组播组接收者都以RP为树根,接收各自的组播数据,形成一棵共享树.RPG组播源组播源SRP到到G组播源组播源S的的SPTG接收者接收者1G组播接收者组播接收者1-n都以都以RP为根为根G接收者接收者n不同的组播组可以对应不同的不同的组播组可以对应不同的RP29第29页,共43页,编辑于2022年,星期一组播路由协议组播路由协议q共享树共享树v共享树的优势和劣势:n优势:每个路由器上需要保存的
24、状态数最少.n劣势:每个组播接收者到组播源的路径可能不是最优的.v在组播设计时,如果选择PIM-SM作为组播路由协议的话,那么RP的性能以及位置将成为重要的考虑因素.30第30页,共43页,编辑于2022年,星期一组播路由协议组播路由协议q共享树到共享树到SPT的切换的切换v设定一个阀值,当接收到的组播流量超过这个阀值时,路由器会向源发送一个(S,G)的加入消息,以便要加入这个源的SPT中.R2R1R3R4R5RP接收者接收者组播源组播源R6组播组组播组G组播组组播组G组播组组播组G接收到的组播流量超过设定的阀值接收到的组播流量超过设定的阀值,向向G的源的源S发送发送(S,G)的加入消息以建立
25、的加入消息以建立SPTR4检测到检测到SPT和共享树在此分离和共享树在此分离,于是于是 向向RP方向发送剪枝消息方向发送剪枝消息,将自己从共享将自己从共享树中修剪掉树中修剪掉,创建创建(S,G)转发表项转发表项,向组播向组播源方向发送加入消息源方向发送加入消息剪枝消息剪枝消息将收到剪枝消息的接口从将收到剪枝消息的接口从(*,G)的出口集合中删除的出口集合中删除掉掉31第31页,共43页,编辑于2022年,星期一组播路由协议组播路由协议qRP的产生的产生v通过静态指定n必须在所有的路由器上明确指定RP的地址n容易存在单点故障,一旦配置的RP失效,组播将不可用vBSR动态学习32第32页,共43页
26、,编辑于2022年,星期一组播路由协议组播路由协议qBSR:BootStrap RoutervBSR是RP的管理者,由BSR来收集和发布整个网络内的RP信息。v多个候选BSR(Candidate Bootstrap Router,C-BSR)通过自举报文(Bootstrap Message)选举产生唯一公认的BSR。vBSR周期性的向网络发送BSR信息,以便所有候选RP知道BSR的存在v所有侯选RP将自己的信息单播给BSR.vBSR定期发送包含所有候选RP信息的bootstrap报文给所有路由器.v所有的路由器根据相同的HASH算法在本地算出一个RP.33第33页,共43页,编辑于2022年,
27、星期一提纲提纲q组播路由协议组播路由协议q组播在实际工程中的应用组播在实际工程中的应用34第34页,共43页,编辑于2022年,星期一组播在实际工程中的应用组播在实际工程中的应用q园区网组播设计原则园区网组播设计原则:v如果需要接收组播的子网很多,分布密集,并且园区网带宽资源充足,那么采取的组播路由协议多为PIM-DM,反之可考虑PIM-SMv二层组播设计多采用IGMP Snooping SVGL模式35第35页,共43页,编辑于2022年,星期一组播在实际工程中的应用组播在实际工程中的应用q组播设计示例组播设计示例SW1SW2SW3SW4312vlan 10vlan 20212211vlan
28、 100PIM-DM应用范围应用范围IGMP Snooping应用范围应用范围36第36页,共43页,编辑于2022年,星期一组播在实际工程中的应用组播在实际工程中的应用q组播设计示例组播设计示例SW3312vlan 10vlan 201.配置IGMP Snooping SVGL2.配置路由连接口3.修改上联Trunk口的native vlanip igmp profile 1 denyip igmp snooping svgl vlan 10ip igmp snooping svgl profile 1ip igmp snooping svgl ip igmp snooping vlan 1
29、0 mrouter interface fastEthernet 0/3interface fastEthernet 0/3 switchport mode trunk switchport trunk native vlan 1037第37页,共43页,编辑于2022年,星期一组播在实际工程中的应用组播在实际工程中的应用q组播设计示例组播设计示例SW1SW222111.修改下联Trunk口的native vlan2.在SVGL指定VLAN的三层网关上启用PIM3.在与SW2互连的三层接口上起用PIMinterface FastEthernet 0/2 switchport mode trun
30、k switchport trunk native vlan 10interface Vlan 10 ip address 192.168.10.1 255.255.255.0 ip piminterface FastEthernet 0/1 no switchport ip address 1.1.1.1 255.255.255.252 ip pim4.开启组播路由功能ip multicast-routing38第38页,共43页,编辑于2022年,星期一组播在实际工程中的应用组播在实际工程中的应用q组播设计示例组播设计示例SW1SW222111.修改下联Trunk口的native vlan
31、2.在SVGL指定VLAN的三层网关上启用PIMinterface FastEthernet 0/2 switchport mode trunk switchport trunk native vlan 100interface Vlan 100 ip address 192.168.100.1 255.255.255.0 ip piminterface FastEthernet 0/1 no switchport ip address 1.1.1.2 255.255.255.252 ip pimip multicast-routing4.开启组播路由功能3.在与SW2互连的三层接口上起用PI
32、M39第39页,共43页,编辑于2022年,星期一组播在实际工程中的应用组播在实际工程中的应用q组播设计示例组播设计示例SW421vlan 1001.配置IGMP Snooping SVGL2.配置路由连接口3.修改上联Trunk口的native vlanip igmp profile 1 denyip igmp snooping svgl vlan 100ip igmp snooping svgl profile 1ip igmp snooping svgl ip igmp snooping vlan 100 mrouter interface fastEthernet 0/2interfa
33、ce fastEthernet 0/2 switchport mode trunk switchport trunk native vlan 10040第40页,共43页,编辑于2022年,星期一组播在实际工程中的应用组播在实际工程中的应用q组播设计示例组播设计示例SW1SW2SW3SW4312vlan 10vlan 20212211vlan 10041第41页,共43页,编辑于2022年,星期一回顾回顾q组播综述组播综述qIGMP工作原理工作原理qIGMP Snooping工作原理工作原理q组播路由协议组播路由协议q组播在实际工程中的应用组播在实际工程中的应用42第42页,共43页,编辑于2022年,星期一谢谢大家!谢谢大家!43第43页,共43页,编辑于2022年,星期一