组播学习笔记
- 格式:doc
- 大小:420.50 KB
- 文档页数:7
组播实训报告概述:本次组播实训是在网络技术课程中进行的一项重要实践环节。
通过参与实训,我们能够更深入地理解组播技术的原理和应用,提高网络管理与维护能力,并在实践中解决一些实际问题。
本报告将以实训的步骤和成果为线索,对整个实训过程进行描述和总结。
实训步骤:1. 环境搭建首先,我们需要在实验室中搭建组播实训的网络环境。
这一步骤包括配置路由器、交换机以及计算机的IP地址和相关配置,确保网络能够正常运行,并实现多播组的创建和管理。
2. 组播协议的选择在网络环境搭建完成后,我们需要选择适合的组播协议。
常见的组播协议包括IGMP、PIM-SM等,每个协议都有其特点和应用场景。
我们通过学习并比较不同协议的工作原理和性能,选择了适用于实验的协议,并进行相应的配置和优化。
3. 组播业务的部署在设备和协议配置完成后,我们开始进行组播业务的部署。
这一步骤包括实现多播组的加入和离开、组播源的选择和管理,以及流量的控制和优化。
通过实际操作和调试,我们逐步掌握了组播业务的配置方法和技巧,并改进了网络的性能和效率。
4. 故障排除与优化在进行实际组播业务时,难免会遇到一些故障和问题。
这时,我们需要运用所学的知识和工具,进行故障排除,并对网络进行优化。
通过对网络中链路、设备和协议的分析和测试,我们能够找出问题的具体原因,并采取相应的措施进行修复和改进。
实训成果与体会:经过一段时间的实训和实践,我们取得了一些令人满意的成果。
首先,我们成功搭建了组播实训所需的网络环境,并进行了协议和业务的配置。
这为我们更深入地理解组播技术打下了基础。
其次,我们通过实际操作,解决了一些网络故障和问题,提高了网络的稳定性和可靠性。
最后,我们对组播技术的应用和优化方法有了更深入的了解,这对我们今后的网络管理与维护工作大有裨益。
通过本次组播实训,我深刻认识到实践的重要性。
光有理论知识是远远不够的,只有通过实际操作和实践,才能真正掌握和应用所学的知识。
在实训过程中,我们遇到了一些难题,但通过团队的合作和不断的尝试,最终都找到了解决的方法。
关于OSPF LSA的一些学习笔记2008-12-14 21:35OSPF有各种路由器名称和区域类别,这种复杂性要求OSPF尽可能准确交换信息以得到最佳路由。
OSPF通过使用不同类型的LSA来完成通信。
下表简要的介绍了OSPF中的LSA类型。
但是CISCO并没有实现所有的LSA,尤其是第6种组播LSA。
LSA类型 LSA描述1 路由链路通告2 网络链路通告3 ABR汇总链路通告4 ASBR汇总链路通告5 自治系统扩展路由通告6 多播组LSA7 非完全端区NSSA扩展9 不透明LSA:本地链路范围10 不透明LSA:本地区域范围11 不透明LSA:自治系统范围尽管存在如此多的LSA,但是它们却有一个相同的LSA头:链路状态生存期选项链路状态类型链路状态ID通告路由器路由状态序列号链路状态校验和长度第一类:路由LSA路由LSA描述了区域内路由器的链路状态,并且只在路由器所在区域内传播。
0 V E B 0 链路号链路ID链路数据类型#TOS TOS 0 度量TOS=x 0 TOS x 度量TOS=y 0 TOS y 度量。
TOS=z 0 TOS z 度量第二类:网络LSA网络LSA描述连接到一个特定非广播多点接入(NBMA)或广播网络的一组路由器。
网络LSA的作用是保证对某NBMA或广播网络只产生一个LSA。
这是一种内部OSPF 汇总。
链路状态生存期选项 2链路状态ID通告路由器路由状态序列号链路状态校验和长度网络掩码连接路由器。
第三类:ABR汇总LSA此类LSA由ABR产生,用来描述不同网络区域间的路由器。
特别的,此类LSA描述在一个OSPF自治区域内但在一个特定的接受LSA的OSPF区域之外的网络。
第3类LSA的泛洪范围是没有找到网络或子网的区域。
第四类:ASBR汇总LSA在功能上与第三类LSA非常类似,第4类LSA描述自治系统和边界路由器的路由,使得其他的路由器可以找到并到达ASBR。
网络掩码TOS=0 0 TOS 0 度量TOS=x 0 TOS x 度量。
入门级组播原理详解与配置组播(Multicast)是一种在网络中将数据包同时发送给多个目标主机的通信方式。
与单播(Unicast)和广播(Broadcast)不同,组播可以实现一对多的通信效果,适用于许多实时应用,如视频会议、流媒体和在线游戏等。
组播的原理:组播使用IP协议来实现多播通信,在IP协议中,组播地址是一个特殊的IP地址范围,范围从224.0.0.0到239.255.255.255,其中224.0.0.0到224.0.0.255是保留地址用于路由协议和其他网络控制协议的组播通信,其余地址用于应用层的组播通信。
组播的工作原理可以分为三个步骤:成员加入、组播路由选择和数据转发。
1.成员加入:主机将自己加入到一个组播组中,需要发送一个IGMP(Internet Group Management Protocol)报文给与自己相连的组播路由器,表明自己希望接收该组播组的数据。
组播路由器收到IGMP报文后,将其记录在路由表中,并向其他组播路由器传递相关信息,以便它们也能知道有哪些主机加入了该组播组。
2.组播路由选择:组播路由选择是指组播路由器之间的协商和交换,以决定如何将组播数据转发给各个成员主机。
组播路由器通过交换IGMP报文来收集有关成员主机的信息,并建立一棵组播树来确定数据传输的路径。
常用的组播路由选择协议有DVMRP、PIM-DM、PIM-SM等。
3.数据转发:当一个主机发送组播数据时,数据包通过组播树传输到各个成员主机。
组播路由器会根据路由表的信息,将数据包复制并转发到每个出接口。
由于组播数据的传输是基于IP地址的,因此每个主机只需要根据组播地址过滤并接收自己感兴趣的组播数据。
组播的配置:在网络设备上进行组播的配置主要包括IGMP配置和组播路由协议配置。
1.IGMP配置:在路由器上启用IGMP功能,使其能够接收和处理主机发送的IGMP报文。
通常在接口上配置IGMP版本(IGMPv1、IGMPv2或IGMPv3),并打开IGMP Snooping功能,以便交换机能够根据主机的组播报文学习到组播组的信息。
组播 1 (Multicast)一、为什么要使用组播?1.当发送相同流量去往多个接收者的时候2.更加有效的利用链路带宽3.节约主机和路由器的处理器资源4.只用组播时,不需要知道目的主机的IP地址(对于组播架构而言,源只管发,接受者只管收,源和接收者都没有必要知道对方在哪里。
相当于给网络带来更多的容错性)5.当需要把相同的流量同时发送给一组接收者的时候,使用组播。
组播最大的好处:(一)Multicast Advantages(组播优势)答:带宽的结余横轴:表示的是接收者的数量纵轴:表示带宽使用率如图,会发现接收者数量越多,单播的带宽使用率越大,而组播一直保持不变。
在NA中描述过一个广播域的概念,这个广播域有什么概念?一般广播域的边界是路由器的三层接口,路由器的三层接口收到一份广播或者组播流量,我会直接本地拆包,然后把该流量丢弃。
组播和广播只能在一个广播域内传递。
在NP中先给大家纠正第一个概念:对于某些组播流量,我们确实只能在一个广播域内传递。
但是对于更多的基于组播的应用而言,这些组播流量通过在路由器上做一些手脚,路由器就会有能力把组播流量从一个广播域引发到另一个广播域。
我们把这个称之为叫基于组播的转发。
基于组播的转发需要在路由器上运行一些协议。
这些协议就是组播的动态路由协议。
我们之前描述的IGP和EGP都是单播路由选择协议。
而这节课我们描述的所有路由选择协议都是组播路由选择协议。
只要路由器开启了组播路由选择协议之后,路由器就有能力把来自于一个广播域的组播流量转发到其他广播域。
(二)Multicast Disadvantage(组播缺点)组播基于UDP(数据层面)举例:上图是一个标准的组播发送的IP电话语音流量的封装。
如果把载荷中UDP换成TCP会出现什么问题?(1)从UDP和TCP的包头长度来看UDP:8个字节TCP:至少20个字节如果把每个VOIP报文都换成TCP,会造成带宽占用的急剧增加。
所以使用UDP节约带宽。
1、优点:节约带宽、CPU、同时性缺点:尽力而为、没有拥塞避免机制、无序传输(用RTP纠正)、重复的包(PIM解决)广播的弊端:被路由隔离、不可跨网段,浪费流量和硬件资源域内组播路由协议包括PIM-SM PIM-DM DVMRP等协议域间组播路由协议包括MBGP MSDP 等协议3、数据层面:UDP控制层面:PIM(Protocol Independent Multicast:协议无关多播)(域内多播)(域外多播:MBGP/MSDP)终端:ICMP4、多播地址只能用于目的地址常用组播地址:224.0.0.1 网段中所有支持组播的主机224.0.0.2 网段中所有支持组播的路由器224.0.0.5 所有的OSPF路由器224.0.0.6 所有的OSPF指派路由器(DR)224.0.0.9 所有RIPv2路由器224.0.0.10 EIGRP 路由器224.0.0.13 所有PIM路由器224.0.0.22 IGMPv3 (Internet组管理协议)IGMPv1 中定义了基本的组成员查询和报告过程IGMPv2 在此基础上添加了组成员快速离开的机制IGMPv2 通过查询器选举机制为所连网段选举唯一的查询者,查询者周期性的发送普遍组查询消息进行成员关系查询,主机发送报告消息来应答查询,当要加入组播组时,主机不必等待查询消息,主动发送报告消息,当要离开组播组时,主机发送离开组消息,收到离开组消息后,查询器发送特定组查询消息来确定是否所有组成员都已离开常规查询包:周期60s ,发向224.0.0.1,超时时间180s(用于发现客户端)report包:充当ACK,和主动告知路由我加入的组,抑制其他、组成员指定组查询包:当有成员发送离组消息,路由器发送指定组查询包,如果2s内没有回应,就把该组的信息删除,如果还该组的其他成员,则保留离组消息:查询者:同一网段内,有冗余路由的情况下,IP地址低的成为查询者(用查询包交换信息,并选出查询者,超时时间120s)(而IGMPv1用PIM选出DR,担任查询者)Show ip icmp int s0:查看查询者和DR6、配置,在多播网段的接口中客户端查看7、01-00-5e+IP后23位,一个mac对应32个ip,形成二层组播地址8、二层组播:由于组播在二层会向该vlan泛洪,为减少不必要的组播流量(某些客户端不是该组也收到了),解决方法如下①IGMP snooping:公共标准,用于交换机(截获报文,做端口与组的对应表项,不向其他接口发送)(窥视3层ip,很消耗cpu资源)有效抑制组播数据在链路层的扩散主机发出IGMP成员报告消息,这个消息是给路由器的,在IGMP成员报告经过交换机时,交换机对这个消息进行监听并记录下来,形成组成员和端口的对应关系,交换机在收到组播数据报文时,根据组成员和端口的对应关系,仅向具有组成员的端口转发组播报文CGMP:cisco专用(当客户端向route发report报文后,route截获该报文的二层源、目的地址,发给sw,在sw上形成对应表项)路由器上的直连接口也要开启cgmp②HGMP:华为组管理协议主机发出IGMP成员报告消息,路由器收到IGMP报告消息后,向交换机发送HGMP消息,将IGMP组成员信息通知交换机,交换机据此维护组成员和端口的对应关系,当收到组播数据报文时,交换机仅向需要组播的端口发送9、多播转发:PIM协议号103单播:关心数据包往哪走多播:关心数据包从哪来(防止重复报文,只接受一个),从哪走RPF:反向路径转发RPF check:多播来源与单播路由表不匹配,包括接口,就校验失败RPF接口选择方法(路径选择):只选择一个接口,防环小的AD小的metric大的IP多播静态路由:仅用于选择RPF接口,不用于转发多播源IP IN接口AD为0多播转发的基础是,IGP一定要通(SPF必须校验成功)10、最短路径树SPT(shortest path tree):一个源一棵树,可查看多播路由表共享树(汇集树)RPT:RP集合点,让源把多播发到RP上,再由RP发下去(不用一源一树,节省资源,但路径不一定是最优)11、域内组播路由协议:PIM(协议无关组播)的两种模式sparse稀疏模式:重点工作原理:①接收者给RP发送(*,g)join,RP回应,形成RTP树②源发多播流量前,第一跳路由器给RP发起(s,g)register报文(单播),多播信息封装在单播包里,如果有该组组员,就发起多播流量,如果没有,就终止③RP给源发送(s,g)回应,形成SPT树,之后,源到RP之间的多播流量通过SPT树转发,RP通过SPT树收到多播流量时,就给第一跳路由发送register-stop报文(单播),取消单播switchover最优路径自动优化:当接受者收到多播流量后,给源发送个(s,g)join消息,寻找最优路劲,在与原来路径的分叉口上,会给RP发送prune消息,最终形成一个最优源树,数据通过源树路劲走(为什么不用dense模式?用RP找到接收者,只给接受者发多播,节省资源)关闭或修改阀值,默认0,做在最后一台路由上Show ip mrouteRP选举:一般用环回口Static :在每个路由器上指定同一个RP(无备份冗余)Auto-RP(cisco)C-RP候选者:有多个,周期向224.0.1.39发送消息,告诉MA,自己要当RP,该消息只有MA能识别MA决定者:也有多个,决定谁是RP,选最高IP的路由做RP,发向224.0.1.40规则:组播规则改为sparse-dense模式,C-RP、MA(环回口)要通告进IGP每个接口配置成sparse-dense模式配置C-RP配置MA,要把环回口也配制成sparse-dense模式查看结果:如果static和auto-RP都配置,默认动态优先DR的作用:①如果运行的是IGMPv1,DR充当查询者②SM中负责发送join和registe消息(防止重复报文)③DM中无作用dense密集模式:接受者非常多用扩散-剪枝方式运行PIM-DM协议的路由器周期性的发送Hello消息,用以发现邻接的PIM路由器,进行叶子网络,叶子路由器的判断,并且负责在多路访问网络中进行指定路由器(DR)的选举工作原理:直接把多播流量从源推下去,发给所有人,接受者回应,并告诉源自己要不要该流量,给源发pruning包,把不需要的流量裁剪掉,下次源就不给它发数据了,3分钟重复一次12、PIMhello:30s,holdtime=3.5*30 组播地址224.0.0.13 选举DR(IGMPv1中充当查询者):高优先级、高接口IP,show ip pim neighbor可查看13、组播通用规则:①任何时候,只要产生(s,g),就会自动产生一个(*,g),但其不做多播数据的转发。
IGMPv2 中有查询路由器,而IGMPv1中没有查询路由器的选举进程,所以IGMPv1需要依赖高层的协议来选举出查询路由器,如果高层的路由协议运行的是PIM协议,那么IGMPv1会和PIM通讯,PIM协议会告诉IGMPv1,你是查询路由器。
所以,PIM的DR就是IGMPv1的查询路由器。
由于IGMPv2有自己的查询路由器选举进程(IP地址最小的是查询路由器),所以IGMPv2无需依赖更高层的协议来选举查询路由器,如果高层协议时PIM那么IGMPv2将不会和PIM产生任何关系查询路由器的作用就是发送IGMP查询消息在IGMPv2 查询路由器的选举机制是,IP地址小的成为查询路由器。
IGMPv2的的查询呈现间隔是120秒是查询间隔的两倍。
所以在PIM-DM以及PIM-SM中,如果在叶子网络运行了IGMPv1 就需要有一个查询路由器的选举机制,查询路由器的选举机制很简单,在多路访问网络中,IP地址最大的路由器(优先级相同的情况下,也就是DR会成为查询路由器)成为查询路由器,DR的holdtime是105秒(3.5个周期)PIM dense-mode前转路由器选举发生如下情况。
路由器B和C需要利用Assert(声明)消息来确定谁是转发路由器,选举规则:管理距离>metric>IP地址。
前面两项都相等的情况下,(接口)IP地址最大的成为转发路由器原因是因为auto-rp的两个组播位址224.0.1.39和224.0.1.40只可以在dense-mode下传输,如果所有埠都配置的是sparse,auto-rp的信息会被丢掉,而这个命令就是使得dense-mode的auto-rp traffic可以通过sparse-mode的埠。
AUTORP的运作:设置了send-rp-announce的路由器充当rp,发送224.0.1.39的组播包告诉rp-map的路由器“我是rp”设置了send-rp-discovery的路由器充当rp-map,发送224.0.1.40的组播包告诉网络中的其他路由器“选谁做rp”但是路由器判断一个组播是sparse还是dense是看有没有RP对应这个组播。
组播学习笔记一、基础知识1、组播的概念:使用组播的好处:一个源可以利用组播向多个目标发送数据(如:IGP的无类路由协议使用的组播)使用组播可以节省带宽和设备的cost…………组播的缺点:组播是基于UDP发送的。
(数据层面)2、RTP(real-time transport protocol):实时传输协议,因为组播是基于UDP的,其传输是无序的,为了解决接受数据时有序的,就需要对数据的实时传输。
3、由于是基于UDP的所以他的传输和UDP一样都是尽力的传输。
没有拥塞避免机制。
因为是无序传输,需要利用RTP来解决。
在冗余拓扑中,可能让接受者收到多个一样的报文,可以通过PIM来解决。
4、组播应用的类型,a、1对多b、多对多(视频会议)c、多对15、组播的专用名词。
First-hop:第一跳路由器 Last-hop:最后一跳路由器IGMP:典型的个人PC和路由器之间沟通的协议。
6、PIM:协议无关的组播,即和运行的IGP没有关系。
7、ip地址的分类回顾:A类:0~127 B类:128~191 C类:192~223 D类:224~239其中D类是组播地址,不能被配置在设备的接口上。
在A类地址中127是被保留的特色地址,也就是我们常用的本地环回地址。
8、组播地址不能被当做源地址,只能被当做目标地址。
9、组播地址的细分:A、保留的本地链路地址:224.0.0.0~224.0.0.255B、公网组播地址:224.0.1.0~238.255.255.255保留的公网组播地址SSM(source specific multicast)指定源的组播(在CCSP中会涉及)这种协议时PIM的高级协议(232.0.0.0~232.255.255.255)GLOP地址(233.0.0.0~233.255.255.255)就是申请一个BGP的AS号会送一段组播地址,这段地址就是GLOP地址。
这个地址是可以根据AS号来算出来的,如下所示:如果AS:64521,那么所得组播地址是??1、将64521转化成十六进制的数FC092、将FC09从中间断开得到FC 093、将FC和09 分别转化成两个十进制的数得到252 94、分别将这两个数字放在GLOP地址的第二位和第三位。
组播相关:一、组播协议体系:1)组成员关系协议包括IGMP(互连网组管理协议);2)组播路由协议分为域内组播路由协议及域间组播路由协议;3)域内组播路由协议包括MOSPF,CBT,PIM-SM、PIM-DM、DVMRP等协议;4)域内的组播协议又分为密集,与稀疏模式的协议。
DVMRP,PIM-DM,MOSPF属于密集模式,CBT,PIM-SM属于稀疏模式。
5) 针对域间组播路由有两类解决方案:短期方案和长期方案。
短期方案包括三个协议MBGP/MSDP/PIM-SM:MBGP(组播边缘网关协议),用于在自治域间交换组播路由信息;MSDP(组播信源发现协议),用于在ISP之间交换组播信源信息;以及域内组播路由协议PIM-SM长期方案目前讨论最多的是MASC/MBGP/BGMP,它建立在现有的组播业务模型上,其中MASC实现域间组播地址的分配、MBGP在域间传递组播路由信息、BGMP完成域间路由树的构造。
此外还有一些组播路由策略,如PIM-SSM(特定信源协议无关组播)等,建立在其它的组播业务模型上。
目前仅短期方案MBGP/MSDP/PIM-SM是成熟的,并在许多的运营商中广泛使用。
6)同时为了有效抑制组播数据在链路层的扩散,引入了IGMP Snooping、HGMP,HMVR,RGMP,GMRP等二层组播协议。
名词解释:组播路由协议有距离矢量组播路由协议(DVMRP)、协议无关组播-密集模式(PIM-DM)、协议无关组播-稀疏模式(PIM-SM)、开放式组播最短路径优先(MOSPF)、有核树组播路由协议(CBT)IGMP协议简介:IGMP(Internet Group Management Protocol,因特网组管理协议)是TCP/IP协议族中负责IP组播成员管理的协议。
它用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。
IGMP不包括组播路由器之间的组成员关系信息的传播与维护,这部分工作由各组播路由协议完成。
1、Reserved Link-local address 224.0.0.0-224.0.0.255a.主要用于网络协议b.只存在于本地子网不会传播超越本地子网c.TTL=12、Globally scoped addresses 224.0.1.0-238.255.255.255a.这个范围用于互联网上的企业和组织的通信b.SUN 224.0.1.83.Administrativly scoped addresses 239.0.0.0-239.255.255.255a.组播的私有地址,可以用于任何一个组织,RFC1918相似b.可以进行子网划分,定义本地组播边界EP:organization-scope 239.1.0.0/16 给一个公司site-scope 239.1.8.0/20 给一个部门S---G三件事a.第一步:源注册。
组播源服务器发送信息到它本地路由器并且告知自己发送一个组播组的流量,服务器不需要知道发送给谁了,只是发送给本地路由器即可。
b.第二步:主机(组)注册。
主机告诉它们本地路由器自己希望加入到一个组播组,组播服务器将组播ip转化为组播的MAC,而这些主机将被配置接收这些组的数据。
如果网络规模很大,就需要组播分发树。
c.第三步:组播分发树。
在大型网络环境中,路由器会介入并转发组播流量,使用分发树来在网络中建立S--G的路径,路由器将保持这棵树用于转发。
如果叶子路由器下没有主机需要组播流,则进行修剪。
IGMP的主要特征:1、仅用于本地子网路由器和主机之间,TTL小于等于12、主机通告路由器加入或者离开哪个组3、路由器发送查询来发现本地子网中是否有成员处于活动状态4、IP协议中的protocol 28bit Type8bit MAX.Response Time16bit Checksum32bit GroupAddresstype1\查询queries分成两种General Query 0.0.0.0Group Specific Query 设置为被查询的组地址2\V ersion 1 Membership Report向后兼容IGMPv13\V ersion 2 Membership Report4\Leave GroupIGMPv2 Join1、当一个主机希望加入一个组播组,它会发送一个Membership Report到特定的组播地址。
组播与IGMP个人学习心得乱的很。
高手进来更正为什么需要组播,组播用在什么方面,如何实现组播,如何管理组播因为在一些群组会议,群组游戏,网络教学,软件分发也是组播的利用之一等群组方面的需求时,单播广播会使网络通信量大大增加。
此时我门需要组播,组播与广播的根本区别在于,组播可以按特定区域来广播,而且只要发一次,下面自己散播,但广播也只要发对各网段发1次,却会造成浪费,注意游戏是点对点的连接,公告是广播,但要发很多次,如果是QQ就只要发一次,因为它是发给所有QQ号码的而不是基于地址如果是组播就只要发一次,游戏里也有组播,比如小组信息,或工会信息。
也有单播比如私聊。
制定一个特定的组,让有需要的加进来。
这做发不是基于名字的,而是基于地址的。
游戏还没有这样的基于地址的组播呢,都是点到点的连接PC---服务器,服务器发一次实际是在应用层所做的广播,并不是真的网络广播。
所以游戏服务器一般都是很强的,CPU。
要不支持不了这么多的点到点连接,广播是面对终端,而组播是面对网络。
这区别大了。
目标地址是FFFFFF的MAC地址那就是广播,目标地质是01开头那就是组播,目前没有游戏是这样坐的,游戏都是点对点的。
发个公告只是一个应用层所谓的广播而已。
组播应用最广泛的就是会议和网络教学,减少了服务器和网络负担提高高质量的服务。
组播在遇到分叉的时候会把数据分支一分出来。
但在链路上跑的其实只有一份,单播的话就要与服务器建立多个连接,那太浪费资源了组播解决了一点发多点收,多点发多点收的效率问题,它增加了效率,减少了CPU负担,但他没有流量控制与差错。
它是基于UDP的所以不一定可靠组播协议分为主机---路由器之间的组成员关系协议和路由器----路由器之间的组播路由协议。
成员关系协议就是IGMP,而组播路由协议分为域内域间。
域内主要使用的是PIM-DM PIM-SM DVMRP针对域间组播路由有两类解决方案:短期方案和长期方案。
短期方案包括三个协议MBGP/MSDP/PIM-SM:MBGP(组播边缘网关协议),用于在自治域间交换组播路由信息;MSDP(组播信源发现协议),用于在ISP之间交换组播信源信息;为了防止组播在链路层继续扩散制定了IGMP协议注意它是一个2层的组播管理协议,IGMP建立并且维护路由器直联网段的组成员关系信息。
组播学习笔记一、基础知识1、组播得概念:使用组播得好处:一个源可以利用组播向多个目标发送数据(如:IGP得无类路由协议使用得组播)使用组播可以节省带宽与设备得cost…………组播得缺点:组播就是基于UDP发送得。
(数据层面)2、RTP(real-time transport protocol):实时传输协议,因为组播就是基于UDP得,其传输就是无序得,为了解决接受数据时有序得,就需要对数据得实时传输。
3、由于就是基于UDP得所以她得传输与UDP一样都就是尽力得传输。
没有拥塞避免机制。
因为就是无序传输,需要利用RTP来解决。
在冗余拓扑中,可能让接受者收到多个一样得报文,可以通过PIM来解决。
4、组播应用得类型,a、1对多b、多对多(视频会议)c、多对15、组播得专用名词。
First-hop:第一跳路由器 Last-hop:最后一跳路由器IGMP:典型得个人PC与路由器之间沟通得协议。
6、PIM:协议无关得组播,即与运行得IGP没有关系。
7、ip地址得分类回顾:A类:0~127 B类:128~191 C类:192~223 D类:224~239其中D类就是组播地址,不能被配置在设备得接口上。
在A类地址中127就是被保留得特色地址,也就就是我们常用得本地环回地址。
8、组播地址不能被当做源地址,只能被当做目标地址。
9、组播地址得细分:A、保留得本地链路地址:224、0、0、0~224、0、0、255B、公网组播地址:224、0、1、0~238、255、255、255保留得公网组播地址SSM(source specific multicast)指定源得组播(在CCSP中会涉及)这种协议时PIM得高级协议(232、0、0、0~232、255、255、255)GLOP地址(233、0、0、0~233、255、255、255)就就是申请一个BGP得AS号会送一段组播地址,这段地址就就是GLOP地址。
这个地址就是可以根据AS号来算出来得,如下所示:如果AS:64521,那么所得组播地址就是??1、将64521转化成十六进制得数FC092、将FC09从中间断开得到FC 093、将FC与09 分别转化成两个十进制得数得到252 94、分别将这两个数字放在GLOP地址得第二位与第三位。
就得到基于本AS得地址:232、252、9、0/24C、私有得组播地址:239、0、0、0~239、255、255、25510、典型得私有地址得使用:224、0、0、1——发向所有得主机与路由器224、0、0、2——发向所有得路由器224、0、0、5——OSPF向所有路由器发送路由信息使用得组播地址。
224、0、0、6——OSPF中MA网络,发向DR使用得组播地址224、0、0、9——RIPv2224、0、0、10——EIGRP224、0、0、13——PIM发送hello包得组播地址二、IGMP协议1、IGMP得定义:( internet group management protocol) internet组管理协议,本协议有三个版本V1、V2、V3、这里我们重点学习V2。
IGMP就是封装在IP包里面得,这里IGMP得IP协议号就是2。
IGMPv1得数据包模型:2、IGMPv1:她有两种报文;(1)、查询包,由最后一跳路由器发送,查询有哪些组员(每60秒发一次,发送得组播地址就是:224、0、0、2)查询报文得目标地址与组地址D:224、0、0、2 group:0、0、0、0(2)、report包,由主机发送,说明加入了某个组。
她得目标地址与组地址分别就是:D:224、1、1、1 G:224、1、1、1 如左所示:其目标与组地址都一样,这就是因为通过路由器向下发送查询报文,主机收到该报文后,会向路由器发送report报文来回复,而发送得report得报文由本地主机运行得应用程序而决定加入什么样得组,故而确定了组地址。
而用本地得组地址作为发送report包得目得地址。
则就是有两方面得优点:使用组地址作为report报文得目标地址,可以将报文发给网关路由器与加入同一个组得PC,这时,所有得PC都会以这个地址来发report报文,而相同得报文会被抑制掉,从而只发一个相同得report报文给网关路由器。
(3)离组消息:在180S内发送三次查询包,如果一直没有收到该组得report回复报文,则意味这该组自动解散。
最后一跳路由器清除该组相关表项。
(缺点就是在180s内还在转发组播消息)3、IGMPv2:版本2相对于版本1得常规查询与report新增了2中报文。
其解决了版本1在180s内仍然转发组播消息得问题。
IGMPv2得四种报文1、常规查询,与版本1一样;2、report报文与版本1一样。
3、group-specific query 指定组得查询。
4、leave group massage 离组消息。
在最后一跳路由器冗余得情况下会出现查询者得选举,既在这样得一个网络下会出现querier得选举,其选择得原则就是选取IP地址小得设备作为查询者。
由于发送查询得时候使用得目标地址就是224、0、0、1(路由器与PC都接收)所以在查询得过程中就会选出来查询者。
(在版本1 中也存在这样得选路,而在版本1 中则使用得就是PIM来选择DR选出得DR就充当了查询者)当查询者down了之后,非查询者在120S之内没有收到查询者得查询,那么非查询者就会充当查询者。
4、IGMPv2得报文格式:(右图)5、离组报文,其发送离组消息得目标地址就是:224、0、0、1、group 地址就是:就就是原有得group地址6、当查询者收到了这个PC得离组报文后,路由器就会发送一个指定组得查询报文。
发送指定组得查询报文后,路由器会等待2s,如果没有收到这个组得report报文,那么路由器就会删除这个组得所有表项。
到目前为止,离组完成。
如果PC收到指定查询,那么PC就会马上发送一个report得报文。
7、在路由器上面启用组播路由协议:全局下#ip mlticast-routing在接口下运行PIM协议:# ip pim sparse-mode查瞧谁就是查询者以及相关信息:show ip igmp interfaceDebug ip igmp 可以详细得瞧瞧离组得过程。
查瞧组员信息:show ip igmp groups、在查瞧得同时,思科路由器会自动加入一个组:224、0、1、40三、二层得组播地址1、mac地址:mac地址就是一个48位。
其前24位就是需要申请得,简称就是OUI 、后24位就是厂家自己任意指定得。
2、理论上组播地址有2得28次方个组播地址。
因为前四位就是固定得。
3、在一个需要运行组播得网络中,当数据进行封装得时候,在IP报文前面会封装以太网包头,在分装以太网包头得时候,需要有源与目标mac地址。
当然,封装得时候源mac地址就就是该报文出去得以太网口得mac地址,那么目标mac地址就需要与运行得组播地址进行换算了,其换算得方法就是:首先,这个目标mac地址得前25为就是确定得,既:01-00-5e-0(0就是固定得)后面得23为就是自己分配得。
其次,将本组得组播地址转换成二进制,取后23位直接放在前面得25位后面,这就得到了我们需要得目得mac地址。
那么着就意味着我们有32个组播地址对应了一个组播数据包得目标mac地址。
就有可能有32个组播地址映射到了一个mac地址。
4、当一个交换机接受到一个组播地址或者广播地址得数据包时,就会向所有属于同一个vlan得接口泛红这个数据,但就是在在实际工程中为了减少不必要得组播泛红到其她得链路上去,这时就有了IGMP snooping 协议与思科私有得cisco group management protocol (CGMP)协议。
5、IGMP snooping:她就是一个业界标准,其只需要在交换机上面做就可以解决问题。
原理:默认得一台交换机只可以将包拆到mac地址就可以转发了,但就是IGMP snooping之后就可以将包拆到三层得iip地址。
当PC加入一个组之后会发送report 报文,而且目标ip地址与组ip地址就是一样得,如果这个交换机启用得IGMP snooping 功能,她就会把这个报文截获下来,这时,就会将截获来得报文得组地址与接口就会有一个映射表。
当交换机接受来得组播报文,就只会向有映射得接口发送。
而不会向所有本vlan得接口发送。
全局下:#iip igmp snooping vlan 1 针对vlan1 开启snooping 。
不加vlan得话就就是针对所有得vlan都开启snooping。
查瞧交换机上IGMP snooping 表项:#show ip igmp snooping group6、CGMP:需要交换机与路由器得一个协同工作。
(思科私有得)原理: PC向路由器发送report报文,当交换机与路由器都启用了CGMP功能后,report报文会直接透传交换机发送给路由器。
而路由器会截获report报文得目标mac地址与源mac地址作为GDA(group destination address 组得目标地址)与USA(unicast source address单播得源mac 地址 )封装成CGMP报文,再将CGMP报文发送给交换机,交换机就有了这个表项。
既一个PC得mac 地址与一个组播mac地址得映射表项。
当交换机收到一个224、1、1、1 得组播数据,数据转发时得目标mac地址就变成GDA了,交换机收到这个数据包之后就会向与GDP mac地址映射表项得USA mac地址得接口区转发。
开启交换机cgmp 全局#cgmp;开启路由器cgmp 接口下#ip cgmp(运行多播协议与PIM)四、组播路由协议——PIM(协议无关得组播协议)单播路由协议与组播路由协议得区别:单播路由就是决定数据时从哪(走哪)出去得一种协议;而组播路由协议则就是决定数据时从哪个接口进来得一种协议(既防止接受重复报文;既路由器接收一个组播报文只可能有一个接口)1、RPF(reverse path forwarding )反向路径转发,把路由器得包得进入接口称之为RPF接口,一个路由器只有一个RPF接口。
2、RPF校验:如右图所示:当路由器接收到一个源地址为151、10、3、21得组播数据得时,路由器会做RPF校验,这时,路由器会找自己得单播路由表,来查找源151、10、3、21得路由,在右图所示得例子中,查找得结果就是从s1口出去得,而组播数据时从s0口进来得,这就是RPF校验失败。
3、当最后一跳路由后面有负载均衡得链路时,这时候选举RPF接口得办法就是,在RPF校验得时候:1、优选与到达源地址路由条目得最短路由管理距离(多个路由协议)得接口;2、如果以上就是一样得,那就选择最小metric得哪条链路得接口;3、如果若果metric值一样,那就选择较大得IP地址得那个接口作为RPF接口。