ip组播技术的实现原理,第1张

组播地址

IP组播和单播的目的地址不同,IP组播的目的地址是组地址——D类地址

D类地址是从224000到239255255255之间的IP地址

其中224000到22400255是被保留的地址

224001表示子网中所有的组播组

224002表示子网中的所有路由器

224005表示OSPF(Open Shortest Path First)路由器

224006表示OSPF指定路由器

2240012表示DHCP(Dynamic Host Configuration Protocol)服务器

D类地址是动态分配和恢复的瞬态地址每一个组播组对应于动态分配的一个D类地址;当组播组结束组播时,相对应的D类地址将被回收,用于以后的组播在D类地址的分配中,IETF建议遵循以下的原则:

全球范围:224010~238255255255;

有限范围:239000~239255255255;

本地站点范围:23925300~239253016;

本地机构范围:23919200~239192014

D类的地址空间是专为IP组播地址而定义的。每个组播地址都落在从224000到239255255255的空间范围内。该地址空间中的一部分被保留,被某些特殊的组功能、一些人们熟知的组播应用以及某些管理范畴的组播程序所使用。其余的地址部分可在需要进行组播传送时动态分配。

IP组播抵制可以被映射到电气电子工程师协会(IEEE)所规定的802MAC组播地址上。这种映射的实现过程时,取出IP组播地址的低23位,并将其添加导游IANA制定的特殊前缀01-11-5E之后。将IP组播组的地址映射到IEEE802MAVC层的组播地址,是需要进行组播传送的主机能够利用某些网络接口卡的硬件组播功能。D类地址的格式如图2

因为D类IP的前5个比特是不被使用的,所以映射可以将多个IP所点广播组关联到同一个IEEE-802地址。因此,D类IP地址映射到有效的MAC层多点广播地址的比率为32:1。例如IP主机组地址2241085和23413885有相同的01-00-5E-0A-8-5的MAC地址。

可是,因为它们有不同的IP主机组地址,所以这两组仍保持独立。

组播地址的获取方式有两种,即静态获取和动态获取。

动态获取时会议系统用到的组播地制只在运行时临时确定。动态获取组播地址的方法大概有三种:通告方式、算法推导方式、Internet组播地址动态分配体系结构(RFC2908)。通告方式获取:当会议系统建立时,先侦听10-20分钟左右,以确定当前已使用的组播地址,防止冲突。算法推导:根据本地的特殊条件,通过一定的算法,求出当前使用的组播地址。采用上述三种方式获取组播地支可有效防止地址冲突问题。虽然比较复杂,也较耗费资源,但是有利于将来的多媒体应用的扩展。

静态获取指在会议系统中设置好组播地址,以后永远不变。这种方式虽然比较简单,但是如果有两个此类系统运行,或使用相同组播地址的不同系统运行(由于没有统一管理组播地址,开发商互相不知道),那就会出现无法解决的冲突。因此如果要采用这种方式,需将各个监控系统所用的组播地质记录在案,以便为今后开发更多的组播应用时分配合适的地址。

组播数据流路由

要想在一个实际网络中实现组播数据包的转发,必须在各个互连设备上运行可互操作的组播路由协议。组播路由协议可分为:组管理协议(IGMP)、密集模式协议(如DVMRP,PIM-DM)、稀疏模式协议(如PIM-SM,CBT)、和链路状态协议(MOSPF)。

组播用户通过IGMP加入组播组,用户可以登记加入多个组播组和用户直接相连的组播路由器。如果用户已经退出组播组或关机,则组播路由器会自动地在组播树上进行剪枝和嫁接的过程,以保证组播信息的到达以及网络带宽的合理利用。

组播路由的关键是为每一个组播组建立组播树,组播树的形成可根据组播协议的不同而不同。目前有两种构建组播树的技术:源组播树和共享树。源组播树是通过一向被称为反向路径转发(RPF)的技术而构造出来的。如果数据包到达了一条本地路由其认为是回到数据包源去的最短路经链路,路由器将向除进入接口之外的所有其它接口转发该数据包。如果数据包到达的接口不再返回到源去的最短路经上,那么该书举报将被丢弃。这种方法为每个潜在的源或子网建立一个组播树。这些组播树产生于与源站点直连子网的、基于源的传送树。共享书使用分布中心并建立单个多点广播树。共享树算法建立一个被组内所有成员共享的共享树,它允许对不同的组定义不同的共享树。

源组播树是从信息员开始构建组播树,而共享树是通过一个中心形成到各组播组成员的组播树,组播源将有关信息发送到中心点进行组播。源组播书适用于组播的站点比较密集、组播数据比较多的情况,可以使每一个组播树数据报都能够以最优的方式到达接收站。密集模式下的典型路由协议是密集模式下的独立组播PIM-DM(Protocol-Inde-pendent Multicast-Dense Mode )、开放最短路经路由协议的组播扩展MOSPF(Extensiom to Open Shortest Path First )。共享书适用于组站点比较稀疏、组播数据比较少的情况,可以减少路由器的路由信息交换和形成的开销。目前,流行的稀疏模式组播路由协议是稀疏模式下得PIM-SM协议(Protocol-Independent Multicast-Sparse Mode)和有核树CBT(Core-Based Trees)。

pim(protocol independent multicast)协议是一种独立于单播路由协议的组播协议,按照应用场合和处理机制的不同,可以分为密集模式(dense mode)和稀疏模式(sparse mode)两种。密集模式适合于组播源和接收者物理距离近、数据报文流量大而且持续、接收者密度较大的网络,典型的例子是局域网;稀疏模式适合于组播发送源和组播接收者分布在较大范围且带宽受限的网络中,如internet。

pim-sm 配置的步骤

(1) 启动组播:在配置模式下执行命令ip multicast-routing

(2) 在接口上启动组播:同时启动pim 等组播协议和igmp 协议。

(3) 指定集中点(rp):使用bootstrap 动态发布的方式。需要指定bsr 和候选rp:在一个组播域中必须保证至少有一个激活的候选bsr,对每个组播组必须保证至少存在一个可以映射到的rp。配置方法是选定的设备上,在配置模式下运行ip pim bsr-candidate和ip pim rp-candidate 命令。

1431 启动pim-sm协议

将接口加入三层组播转发有两种方式:启动pim 等组播协议和igmp,或只启动igmp 协议。本命令在对应的接口上启动pim-sm 协议和igmp 协议。使用pim 协议必须通过此命令在至少1 个接口上启动pim 协议。利用命令:

命令1ip pim interface [ifname] sparse-mode [ enable|disable]

〖参数说明〗interface 接口名。enable 和disable分别启动和关闭接口igmp和pim协议。

〖命令模式〗配置模式

〖参考举例〗

·配置交换机

switch(config)# ip pim interface vint 0 sparse-mode enbable

上述操作对交换机vint 0 接口启动pim-sm 协议。

→在全局模式下键入show ip pim interface查看接口组播配置参数,即:

switch# show ip pim interface vint 0

1432 配置候选bsr(bootstrap router)

bsr(bootstrap router)是pim 网络中的启动消息(bootstrap)发出者。在pim 网络中必须存在一个唯一的bsr 设备。它接受候选rp 的消息通告,并发出bootstrap 把当前的rp 表通知给域中的所有路由器。在pim 网络中,必须通过这个命令配置至少一个候选bsr。利用命令:

命令1ip pim bsr-candidate [ifname] { priority [priority]}

〖参数说明〗ifname 选择候选bsr的ip地址的接口名。priority候选bsr竞争bsr的优先级,范围[0-255]缺省为0(最小)。

〖命令模式〗配置模式

〖参考举例〗

·配置交换机的某一接口为bsr:

switch(config)# ip pim bsr-candidate vint 0

上述操作配置vlan 0 端口为侯选bsr。

→在全局模式下键入show ip pim interface vint x查看配置,即:

switch# show ip pim interface vint 0

1433 配置pim候选rp

配置本机接口为pim 候选rp。利用命令:

命令1ip pim rp-candidate [ifname] { priority [priority]}

〖参数说明〗interface 选择候选rp ip地址的接口名称。在pim网络中,必须通过这个命令配置至少一个候选rp。priority候选rp竞争rp的优先级,范围[0-255]缺省为0(最小)。

〖命令模式〗配置模式

〖参考举例〗

·配置交换机接口vint 0 为候选rp

switch(config)# ip pim rp-candidate vint 0

上述操作设置交换机vint 0 接口为侯选rp。

→在全局模式下键入show ip pim interface vint x 查看配置参数,即:

switch# show ip pim interface vint 0

1434 配置pim hello消息发送间隔

配置pim 的hello 消息发送间隔。利用命令:

命令1ip pim query-interval [0-65535]

〖参数说明〗[0-65535] hello消息发送间隔(以秒为单位,默认值为30秒)。

〖命令模式〗配置模式

〖参考举例〗

·配置交换机hello 消息发送间隔

switch(config)# ip pim query-interval 40

上述操作设置交换机pim hello 消息发送间隔为40 秒。

→在全局模式下键入show ip pim interface vint x 查看配置参数,即:

switch# show ip pim interface vint 0

1435 设置从共享树切换到源最短路径树的阈值

pim-sm 交换机最初通过共享树转发组播报文,但是如果组播数据通过的速率超过一定的阈值,组播报文所经过的最后一跳交换机就会发起从共享树到最短路径树的切换过程。缺省情况下,从共享树切换到源最短路径树的阈值为0,也就是说当最后一跳交换机收到第一个组播报文后立即切换到最短路径树。

命令1ip pim spt-threshold [0-4294967]

〖参数说明〗[0-4294967] 单位为kbits/s。

〖命令模式〗配置模式

1436 显示pim协议的bsr选择信息

此命令显示当前采用的bsr 地址、优先级、rp 映射掩码等信息。

命令1show ip pim bsr-router

〖参数说明〗

〖命令模式〗全局模式

1437 显示运行pim的接口信息

显示运行pim 的接口表和相应的状态。利用命令:

命令1show ip pim interface [ifname]

〖参数说明〗ifname 接口名称。

〖命令模式〗全局模式

1438 显示pim邻居信息

显示交换机pim 邻居信息。此命令显示协议当前已经获得的pim 邻居情况。pim 邻居是通过hello 报文发现的。不带参数时,将显示所有的pim 邻居信息;带接口名称参数时,显示特定接口上的pim 邻居。利用命令:

命令1show ip pim neighbor

〖参数说明〗

〖命令模式〗全局模式

〖参考举例〗

·显示接口vint 0 的pim 邻居信息

switch(config)# show ip pim neighbor

→在全局模式下键入show ip pim neighbour查看配置参数,即:

switch# show ip pim neighbour

1439 显示当前rp列表

显示交换机当前的rp 列表。利用命令:

命令1show ip pim rp

〖参数说明〗此命令显示的内容包括两部分:当前获得的rp列表(包括rp地址、管理的组地址范围、来源、超时时间等)以及该设备上的组播组与rp的映射表。

〖命令模式〗全局模式

14310 查询组rp映射

查询交换机一个组的rp 映射结果。利用命令:

命令1show ip pim rp-info abcd

〖参数说明〗可通过命令计算任意一个组的rp映射,了解系统中对rp的选择。

〖命令模式〗全局模式

〖参考举例〗

·switch(config)# show ip pim rp-hash 225111

上述操作显示交换机组地址为225111 的rp 映射。

交换机H3C S5024-PV2-EI配置思路,设置如下:

配置几个vlan:

vlan 2

vlan 3

并创建vlan地址,也就是pc的网关

int vlan 1

ip add 19216811 2552552550

int vlan 2

ip add 19216821 2552552550

int vlan 3

ip add 19216831 2552552550

将连接S3100的端口设置成trunk,如

int g1/0/1

port link-type trunk

port trunk permit vlan all

设置静态路由将数据包发送到路由器上

ip add 0000 0000 19216812

注19216812 为路由器的LAN口地址,路由器连接到vlan1里也就是默认配置的端口里。

基本上如果你是同网段的,不需要配置就应该可以通,igmp一般设备默认都是开启的

你先试试用组播源直连在电脑上收一下组播信息,能收到确认组播源服务器设置正确后直接接在交换机上试试

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » ip组播技术的实现原理

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情