您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > MPLS(多协议标签交换)技术原理的基本实现
MPLS(多协议标签交换)技术原理的基本实现首先,我们需要5台路由器(4台也可以),因为MPLS是主要运用于大型的网络之中的一种快速转发协议,例ISP的网络基本采用MPLS来提高数据包的转发速度。分别编号R1-R5,接口地址见topology,全网起OSPF协议,AREA0,目的是达到全网互通,以便于LABEL信息的传递。MPLS在网络中的实现很简单(因为是简单的配置嘛):1、把属于MPLS网络的接口划入MPLS网络2、启用MPLS下面简单说一下具体配置,首先,进入R1的s1/3端口,做如下命令:R1(config)#ints1/2R1(config-if)#mplsip把接口划入MPLS网络R1(config-if)#exi至于R2-R4的S1/2,S1/3,以及R5的s1/3在这里不一一赘述,原理和上面的一样。这时,我们会看到如下提示:*Mar100:13:37.163:%LDP-5-NBRCHG:LDPNeighbor23.0.0.1:0(1)isUP说明MPLS邻居建立成功,可以相互发送LABEL信息。我们查看一下目前路由器的LABEL转发表,也就是和每条路由一一对应的标签编号。R1#shmplsforwarding-tableLocalOutgoingPrefixBytestagOutgoingNextHoptagtagorVCorTunnelIdswitchedinterface161634.0.0.0/240Se1/2point2point17Poptag23.0.0.0/240Se1/2point2point1818192.168.1.1/320Se1/2point2point191945.0.0.0/240Se1/2point2pointR1#我们可以看到,LOCAL列,表示这条路由条目在本路由器的label编号,也是它通告给邻居LSR的编号。OUTGOING列,表示送往邻居LSR时应该打上的标签编号,也就是说,在把包交给邻居LSR之前,已经打上的TAG其实是对方LSR转发表里关于这条路由的TAG编号。Poptag表示拆除TAG,因为目的网络是下一条的直连网络,所以不用TAG继续进行转发。我们注意到,bytestagswitched这一列全部为0,这是因为我们还没有进行任何的数据包交换。下面做如下操作:R1#p192.168.1.1souR1#ping192.168.1.1source10.1.1.1Typeescapesequencetoabort.Sending5,100-byteICMPEchosto192.168.1.1,timeoutis2seconds:Packetsentwithasourceaddressof10.1.1.1!!!!!Successrateis100percent(5/5),round-tripmin/avg/max=104/198/304msR1#shmplsforwarding-tableLocalOutgoingPrefixBytestagOutgoingNextHoptagtagorVCorTunnelIdswitchedinterface161634.0.0.0/240Se1/2point2point17Poptag23.0.0.0/240Se1/2point2point1818192.168.1.1/320Se1/2point2point191945.0.0.0/240Se1/2point2point我们发现,PING过以后R1上依然没有交换标签的BYTE流量,这是因为MPLS是不会对自己的直连网络打上TAG标签的,粗浅的理解就是直连网络直接转发就可以了,打上TAG不是更麻烦了吗?嘿嘿。好,我们看R2-R4的转发表:R2#shmplsforwarding-tableLocalOutgoingPrefixBytestagOutgoingNextHoptagtagorVCorTunnelIdswitchedinterface16Poptag34.0.0.0/240Se1/2point2point17Untagged10.1.1.1/32520Se1/3point2point1818192.168.1.1/32540Se1/2point2point191945.0.0.0/240Se1/2point2point注意中间两行的标签字节交换数量已经出现变化,说明在R2上进行了标签交换。此现象在R3,R4上基本相同,说明在R3,R4上同样进行着标签的交换。再看R4,R5的情况:R4#shmplsforwarding-tableLocalOutgoingPrefixBytestagOutgoingNextHoptagtagorVCorTunnelIdswitchedinterface16Poptag23.0.0.0/240Se1/3point2point171610.1.1.1/32540Se1/3point2point181712.0.0.0/240Se1/3point2point19Untagged192.168.1.1/32520Se1/2point2pointR5#shmplsforwarding-tableLocalOutgoingPrefixBytestagOutgoingNextHoptagtagorVCorTunnelIdswitchedinterface16Poptag34.0.0.0/240Se1/3point2point171623.0.0.0/240Se1/3point2point181710.1.1.1/320Se1/3point2point191812.0.0.0/240Se1/3point2point没有TAG交换!因为目标网络是自己的直连,所以在R4路由器把包交给R5之前,已经拆除TAG(看看R4的信息就可发现,在R4中去往192.168网段的outgoing是untagged,就是去往这个网络不应该带有标签的意思),在R4交给R5以后,IP包直接进行路由转发,而不是继续经由MPLS进行TAG交换。以上只是简单的说了说MPLS的标签交换过程,下面我总结一下流程:首先,PING包源:10.1.1.1目的:192.168.1.1进入RI以后,查找forwarding-table,发现去往R2,出接口时,打上R2可以正确判断的18号标签----------包进入R2后,查找forwarding-table,发现包应该交给R3,也应该打上R3识别的19号标签(即outgoing对应的出标签)-----------接着,给了R3,R3照旧给了R4,此时R4查询forwarding-table,发现outgoing对应的是Untagged,即转发到192.168.1.0这个网络的数据包此时不应该继续打上TAG,而是以正常的IP数据包格式进行路由转发。Then,数据包到达R5,路由成功。
本文标题:MPLS(多协议标签交换)技术原理的基本实现
链接地址:https://www.777doc.com/doc-2883216 .html