组播Word格式文档下载.docx
《组播Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《组播Word格式文档下载.docx(81页珍藏版)》请在冰点文库上搜索。
如果多个接口开销相同,选择最高IP地址的接口作为“切入点(tiebreak)”。
1.3PIM-DM状态项
这些信息用“showipmroute”命令显示。
见表1.3
表1.3PIM-DM状态项
D密集模式标志
意义很明显,表示组播组是一个密集模式组(注:
D标志仅出现在(*,G)项)
C连接标志
(*,G)和(S,G)两项下都出现,表示该组播组有直接连接的成员。
L本地标志
(*,G)和(S,G)两种项下都出现,表示路由器自己就是组成员。
因此,该路由器将在过程级处理向本组播组发送的所有组播信息。
一个很好的例子就是路由妻自己加入的组是PIMRP发现(224.0.1.40)组,这个组被用来发布自动RP信息。
P剪枝标志
表示输出接口列表为空或所有输出接口列表中的接口处于剪枝状态,结果剪枝消息从此(S,G)项送至上游(RPF)邻居。
T最短路径树(SPT)标志
只在(S,G)项上出现,表示信息经(S,G)项(即SPT)转发。
无论何时,只要收到与该组播路由表对应的第一个(S,G)包,就设置该标志(因此,在密集模式T标志始终设置在(S,G)项上)
J加入SPT标志
对于密集模式组,J标志仅在(*,G)项上面出现,旨在内部用来告诉PIM,自动地为任何到达的(S,G)信息建立(S,G)状态
下面我们用Cisco的设备来做一下这个实验,设备是7200系列路由器,实验拓扑见图1.3:
图1.3
注:
PIM需要单播路由的支持,本实验使用OSPF建立单独路由表。
具体配置见表1.4
表1.4实验的具体配置
R1的具体配置
hostnameR1
noipdomainlookup
ipmulticast-routing
interfaceLoopback0
ipaddress1.1.1.1255.255.255.0
interfaceSerial1/0
ipaddress12.1.1.1255.255.255.0
ippimdense-mode
clockrate64000
routerospf1
router-id1.1.1.1
network0.0.0.0255.255.255.255area0
linecon0
exec-timeout00
loggingsynchronous
R2的具体配置
hostnameR2
ipaddress2.2.2.2255.255.255.0
interfaceEthernet0/0
ipaddress10.1.1.2255.255.255.0
interfaceSerial2/0
ipaddress12.1.1.2255.255.255.0
router-id2.2.2.2
R3的具体配置
hostnameR3
ipaddress3.3.3.3255.255.255.0
ipaddress10.1.1.3255.255.255.0
ipaddress35.1.1.3255.255.255.0
router-id3.3.3.3
R4的具体配置
hostnameR4
ipaddress4.4.4.4255.255.255.0
ipaddress10.1.1.4255.255.255.0
routerospf1
router-id4.4.4.4
network0.0.0.0255.255.255.255area0
R5的具体配置
hostnameR5
ipaddress5.5.5.5255.255.255.0
ipaddress35.1.1.5255.255.255.0
router-id5.5.5.5
现在在各个路由器直接连接的接口上均运行PIM协议,检查是否已经建立起邻居,以R2为例:
R2#showippimneighbor
PIMNeighborTable
NeighborInterfaceUptime/ExpiresVerDR
AddressPrio/Mode
10.1.1.4Ethernet0/000:
16:
13/00:
01:
31v21/DRS
10.1.1.3Ethernet0/000:
21/00:
32v21/S
12.1.1.1Serial2/000:
26/00:
19v21/S
可见R2一共和3台路由器形成了邻居关系,在Ethernet0/0接口上,R4被选举为DR,作用是当相同链路上有多个相同组组播的转发者时负责转发组播数据。
在R4上配置,使之方针为一台接收组播的客户端主机,接受组地址为238.1.1.1:
R4(config)#interfaceethernet0/0
R4(config-if)#ipigmpjoin-group238.1.1.1
查看对应接口IGMP的运行状况,用如下命令:
R4#showipigmpinterfaceethernet0/0
Ethernet0/0isup,lineprotocolisup
Internetaddressis10.1.1.4/24
IGMPisenabledoninterface
CurrentIGMPhostversionis2
CurrentIGMProuterversionis2
IGMPqueryintervalis60seconds
IGMPqueriertimeoutis120seconds
IGMPmaxqueryresponsetimeis10seconds
Lastmemberqueryresponseintervalis1000ms
InboundIGMPaccessgroupisnotset
IGMPactivity:
2joins,0leaves
Multicastroutingisenabledoninterface
MulticastTTLthresholdis0
Multicastdesignatedrouter(DR)is10.1.1.4(thissystem)
IGMPqueryingrouteris10.1.1.2
Multicastgroupsjoinedbythissystem(numberofusers):
238.1.1.1
(1)224.0.1.40
(1)
任何一个接口运行了PIM协议则自动会启用IGMP,最后显示路由器加入的组地址,224.0.1.40是系统默认启用的组地址。
我们现在在R5上面做配置,使R5成为一个组播组238.1.1.1的客户端:
R5(config)#interfaceserial1/0
R5(config-if)#ipigmpjoin-group238.1.1.1
我们现在使用路由器R1模拟成为一个组播源服务器,服务器源地址为1.1.1.1,持续发出100个目的为238.1.1.1的ping报文,IOS路由器会对组播ping报文进行应答:
R1#ping
Protocol[ip]:
TargetIPaddress:
238.1.1.1
Repeatcount[1]:
5
Datagramsize[100]:
Timeoutinseconds[2]:
Extendedcommands[n]:
y
Interface[All]:
serial1/0(发送组播的接口)
Timetolive[255]:
Sourceaddress:
loopback0(组播源地址)
Typeofservice[0]:
SetDFbitinIPheader?
[no]:
Validatereplydata?
Datapattern[0xABCD]:
Loose,Strict,Record,Timestamp,Verbose[none]:
Sweeprangeofsizes[n]:
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto238.1.1.1,timeoutis2seconds:
Replytorequest0from10.1.1.4,40ms
Replytorequest0from35.1.1.5,88ms
组播源开始发送数据报之后,PIM-DM协议收到第一个组播数据之后即自动建立组播路由表,以下为R2的示例:
R2#shipmroute
IPMulticastRoutingTable
Flags:
D-Dense,S-Sparse,B-BidirGroup,s-SSMGroup,C-Connected,
L-Local,P-Pruned,R-RP-bitset,F-Registerflag,
T-SPT-bitset,J-JoinSPT,M-MSDPcreatedentry,
X-ProxyJoinTimerRunning,A-CandidateforMSDPAdvertisement,
U-URD,I-ReceivedSourceSpecificHostReport,s-SSM
Outgoinginterfaceflags:
H-Hardwareswitched
Timers:
Uptime/Expires
Interfacestate:
Interface,Next-HoporVCD,State/Mode
(*,224.0.1.40),00:
36:
00:
00,RP0.0.0.0,flags:
DCL
Incominginterface:
Null,RPFnbr0.0.0.0
Outgoinginterfacelist:
Ethernet0/0,Forward/Dense,00:
08/00:
00
Serial2/0,Forward/Dense,00:
(*,238.1.1.1),00:
00/00:
02:
59,RP0.0.0.0,flags:
DC
(1.1.1.1,238.1.1.1),00:
05/00:
54,flags:
T
Serial2/0,RPFnbr12.1.1.1
Ethernet0/0,Forward/Dense,00:
06/00:
以上粗体部分,flags代表的形成了最短路径树(即源树),而接收到组播数据报文的接口为Seriral2/0接口,转发接口为Ethernet0/0。
注意,对于组播数据包而言,1个组播路由条目,进入接口只能是1个,而转发接口可能是很多个,即收到一个组播数据包,可以同时向多个接口转发,这个是组播通讯的最显著的特点之一。
如果R5离开组,即不在作为组播组238.1.1.1客户端,密集模式会进行修剪,即R3不再向R5转发对应组的数据包,在R3可以看到修剪的情况:
R5(config)#interfaceserial1/0
R5(config-if)#noipigmpjoin-group238.1.1.1
R3#shipmroute
43:
40/00:
24/00:
32/00:
PCT
Ethernet0/0,RPFnbr10.1.1.2
Serial2/0,Prune/Dense,00:
57
PIM转发
在路由器上建立了适当的组播路由项时,就可以转发组播信息。
●无论何时,只要收到组播包,就通过输入包源地质(S)和组播地址(G)来搜索组播路由表的最长匹配。
这个最长匹配搜索首先要搜索表中的一个(S,G)匹配项,然后使用这个匹配项。
如果现在有的(S,G)项都不匹配,就寻找(*,G)项的匹配,再加以使用。
●在着到匹配项时,在输入包上进行PRF检查。
次项检查是通过将组播路由表上的输入接口与该包的实际接口进行比较来完成的。
如果该包不是经过正确的输入接口到达的,那么将次包丢弃。
●如果该包经过正确的接口到达(RPF接口检查成功),将此包转发到所有输出接口列表上为剪枝的接口上。
PIM-DM剪枝
PIM-DM发送剪枝消息的条件如下:
●信息到达非RPF点对点接口。
●叶路由器并不直接连接接受方。
●非叶路由器在点对点链接的基础上从他们的邻居处接受剪枝。
●在局域网段上非叶路由器(不直接与接受方相连)已经在局域网段上从邻居接受剪枝,而且在局域网段上另一邻居没有滥用剪枝。
第二章PIM稀疏模式
2.1:
配置PIM-SM
PIM-SM配置起来比PIM-DM稍微复杂一点。
所有需要做的事情是了解三条配置命令,然后就可以把稀疏模式配制好并使之运行。
用户需要在全局命令把网络中的每台路由器上的PIM都运行起来:
接着用下列接口命令在网络中每台路由器上的每个接口运行PIM-SM
ippimsparse-mode
最后一步是用汇合点(rendezvouspoint,RP)的IP地址配制网络中的每台路由器,所用的全局命令如下:
ippimrp-address<
address>
这条命令告诉路由器,在稀疏模式中,当需要加入共享树(sharetree)时,往哪里发送(*,G)加入消息。
2.2:
PIM-SM状态规则
2.2.1PIM-SM(*,G)状态规则
和密集模式不一样的是,稀疏模式(*,G)项用于转发组播信息。
组播路由表中的每一个PIM-SM(*,G)项均定义了入口和出口,路由器利用他们向共享树转发GroupG信息。
在PIM-SM中,(*,G)状态在典型情况下只是根据需要来创建的,要么是由于加入到该组的直连主机的结果,要么是由于接收下游路由器的一个(*,G)加入消息的结果。
规则1:
稀疏模式(*,G)项是作为显式加入操作的结果而创建的。
稀疏模式(*,G)状态最初的创建是通过接收来自下游PIM邻居的(*,G)加入消息,或者来自一个希望加入GroupG直连主机的IGMPMembershipReport。
由于信息从RP沿共享树下行,所以稀疏模式(*,G)项入口的计算与(*,G)项的入口就有所不同。
在系数模式(*,G)项的情况下,RP的IP地址用于计算RPF接口。
规则2:
系数模式(*,G)项的入口总是指向RP的共享树。
2.2.2PIM-SM(S,G)状态规则
在PIM-SM中,(S,G)项是根据需要通过接受Explicit(S,G)加入消息来创建的。
当路由器希望通过最短路径树(SPT)接收(S,G)时,就发送(S,G)加入消息。
(S,G)状态也可以在最后一跳路由器切换到SPT时创建。
这中情况发生在一个直连该组成员的路由器上,流向共享树的信息速率长国该组的SPT-Threshold.
规则3:
稀疏模式(S,G)项在下列条件下创建:
●接收一条(S,G)加入消息/剪枝消息
●上一跳路由器上切换到SPT时
●不可预料的(S,G)到达是(*,G)状态不存在
●在RP上接收一条注册(Register)消息时
2.2.3PIM-SM出口规则
(*,G)和(S,G)项的出口表在稀疏模式中的处理与密集模式稍有不同。
在稀疏模式中,往出口表中增加了一个接口或者删除一个接口是由于显式加入或剪枝的原因。
规则4:
增加到稀疏模式(*,G)或(S,G)项出口表中的接口由如下两个条件之一决定:
●当通过该接口收到一个适当的(*,G)或(S,G)加入消息时
●当该接口存在一个该组的直连成员时
从稀疏模式(*,G)和(S,G)项的出口表中删除一个接口发生在如下两种之一的情况:
●当通过该接口(这里没有直连成员)接收到的一个适当的(*,G)或(S,G)剪枝消息时
●当该接口的有效期计时器倒计时到0时
稀疏模式(*,G)或(S,G)项的出口表总是反映接口的状态,
1.下游PI