扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
一、MPLS-TE技术概述
简而言之,MPLS-TE就是在MPLS网络上的流量工程,是指为业务流选择路径的处理过程,以在网络中不同的链路、路由器和交换机之间均衡业务流负载。其目标是在一个点与另一节点之间计算一条路径(源路由),该路径不违反它的约束(例如带宽/管理要求),并且从一些数量指标看来是最优的。MPLS由于自身路由与转发分离的特点,适合与TE的结合,形成MPLS-TE技术。
MPLS-TE通过感知网络带宽的使用情况,采用带有约束条件的最短路径优先算法(CSPF)计算满足带宽要求的路径,并通过资源预留协议(RSVP)建立带宽预留的TE隧道(Tunnel),可以很好地解决基于IGP的流量工程所不能解决的问题,尽可能提高网络资源的利用率。MPLS-TE与IGP最大的不同就是MPLS-TE感知网络中的资源信息,并且知道自己的流量需求。
接下来,让我们首先分析一下IGP选路带来的问题,如图1所示。
在基于IGP路由技术(比如OSPF)选路的情况下,通常R8到R5的流量会选择路径R8-R2-R3-R4-R5;而R1到R5的流量会选择路径R1-R2-R3-R4-R5;如图1所示,如果R8到R5流量为20M,R1到R5的流量为40M。则在R2-R3的链路上存在60M流量(由于R2-R3的链路带宽为155M,所以没有问题),然而R3-R4的链路带宽仅为34M,此时就会有26M流量被丢弃,所以最后R5收到的流量也只有34M;问题是此时拓扑下方的链路R2-R6-R7-R4处于空闲,这就出现了流量的不均衡,需要工程师手动调整IGPMetric值,不仅操作繁琐,结果也不太理想。
如果启用MPLS-TE技术,拓扑结构如图2所示。
假如:R8-R5已经建立Tunnel路径为R8-R2-R3-R4-R5,此时R1也需要建立到R5的Tunnel,通过资源预留协议,会发现R3-R4的剩余带宽为14M,无法满足R1-R5需要的40M,所以R1-R5的Tunnel路径会选择R1-R2-R6-R7-R4-R5。这样链路基本做到了均衡。
二、MPLS-TE的两大类型及实验
目前存在两种基本类型的MPLSETE网络设计:战术式(Tactical),在网络发生拥塞时建立TETunnel以缓解拥塞,是一种事后式的方法;战略式(Strategic),在网络中的某些部分建立FullMesh的预留带宽TE隧道,以尽可能避免网络拥塞的发生,是一种事前预防式的方法。而战略式又有在线式(online)和离线式(offline)两种,区别就是离线式中TE隧道的路径是通过离线的路径计算工具计算的,它依赖于一个离线的路径计算工具来监视网络拓扑、流量模式以及隧道,可以更加有效的利用网络的资源。
实验1 布置战术式MPLS-TE
如图3所示,从R1到R4的实际流量为1200M,如果不使用MPLS-TE,根据IGP进行选路,路径会选择R1-R2-R3-R4,此时R2-R3的链路会出现拥塞和丢包(因为此链路最大带宽为1000M),查看R2g1/1口输出的流量为989.5M,g1/2口输出流量为0,在这种情况下可以选择建立战术式TE,将流量分担到较为空闲的链路R2-R5-R6-R3。
【实验步骤】
1.为R2到R3建立两个Tunnel,两个Tunnel的路径分别为R2-R3和R2-R5-R6-R3。
2.配置两个Tunnel的带宽比为3:1。
【实验配置】
R2/
interface Tunnel1/
ip unnumbered Loopback0/
no ip directed-broadcast/
load-interval30/
tunnel destination 3.3.3.3/
tunnel mode mpls traffic-eng/
tunnel mpls traffic-engato route announce/
tunnel mpls traffic-engpath-option 10 dynamic/
tunnel mpls traffic-engload-share 3/
interface Tunnel2/
ip unnumbered Loop back 0/
no ip directed-broadcast/
load-interval30/
tunnel destination3.3.3.3/
tunne lmode mpls traffic-eng/
tunne lmpls traffic-engautoroute announce/
tunnel mpls traffic-eng path-option 10 explicit name R2_R3/
tunnel mpls traffic-eng load-share 1/
ip explicit-path nameR2_R3 enable/
next-address loose5.5.5.5/
next-address loose6.6.6.6/
next-address3.3.3.3/
【实验结果】
Router |
G1/1 out (bit/s) |
G1/2 out (bit/s) |
R1 |
893.5M |
301.8M |
计算两个端口流量比例=893.5/301.8=2.96:,非常接近我们设置的3:1。
实验总结:
1.Tunnel带宽的比例计算在路由器中是通过Hash算法实现的。
2.此时在网络中不需要大面积部署MPLS-TE,仅在带宽拥挤的局部网络使用。
实验2 部署Full-Mesh的战略式MPLS-TE
如图4所示,采用OSPF做为IGP路由协议,所有路由器属于OSPF的area0,所有的互连中继带宽为10M,cost值设置均为10。拓扑中标识的数字是为部署MPLS-TE的前期准备,即规划的各条中继的保留带宽。
实验造成R2-R21的链路出现拥塞,而同时存在较为空闲的链路,比如R2-R4的链路基本没有流量,工程师基于IGP路由技术只能手动调整某条链路的cost值,但是现实网络中的流量是实时变化的,所以调整的频率就可能很高,非常的不便利而且效果很差。
以下为启用战略式的MPLS-TE后的效果。
【实验步骤】
1.在8台路由器上部署Full-Mesh的MPLS-TE,即每个路由器都要建立七条Tunnel(可选择自动建立);
2.配置每个端口的预留带宽(根据网络状况规划);
3.配置自动调整每个Tunnel的带宽(默认为0),可以指定调整的时间间隔。
【实验配置】
R1:(其他路由器类似)
ip cef/
mpls label protocolldp/
mpls traffic-engtunnels/
mpls traffic-engauto-tunnelmesh/
mpls traffic-engauto-tunnelmesh tunnel-num min 1024 max 4095/
mpls traffic-engauto-bw timers frequency 30#每30秒计算一次
tag-switchingtdprouter-idLoopback0/
interfaceAuto-Template1/
ip unnumbered Loopback0/
no ip directed-broadcast/
tunnel destinationmesh-group10 #建立tunnel模板group10/
tunnel modemplstraffic-eng/
tunnel mpls traffic-engautoroute announce/
tunnel mpls traffic-engpath-option 10 dynamic/
tunnel mpls traffic-engauto-bw frequency 300#每300秒调整一次/
routerospf100/
mpls ldpautoconfigarea 0/
mpls traffic-engrouter-idLoopback0/
mplstraffic-engarea 0/
mplstraffic-engmesh-group 10 Loopback0 area 0 #通过ospf通告,自动建立full-mesh的tunnel/
interfacee1/2/
mpls traffic-engtunnels/
ipospfcost10/
max-reserved-bandwidth90 #默认最大占用带宽的75%/
iprsvpbandwidth9000#设置此端口出去的预留带宽为9M
相关查看命令:
showmplstraffic-engtunnels /
shmplstraffic-engauto-tunnel mesh #查看以自己为源建立的多条tunnel,网络节点为n,则建立n-1个/
shmplstraffic-engtunnels summary#查看自己为源的tunnel和所有通过自己的tunnel数量
【实验结果】如表2
Router |
e1/3 (in/out) |
e1/2 (in/out) |
e1/0 (in/out) |
e1/1(in/out) |
e0/0 (in/out) |
R1 |
3.898M/0 |
1.954M/0 |
0/5.842M |
0/0 |
/ |
R2 |
0/9.872出端口拥塞 out drop450packet/S |
0/0 |
5.842/0 |
0/0 |
5.847M/0 |
R3 |
1.948M/0 |
0/3.897 |
0/0 |
0/0 |
1.949M/0 |
通过实验结果可以发现,MPLS-TE使网络流量变的更加均衡。
【实验总结】
1.MPLS-TE会根据实际情况动态调整每个Tunnel的带宽。
2.RSVP负责资源预留及TE的标签分配,通过RSVP信令建立Tunnel,当所有Tunnel都建立不起来时则采用IGP进行选路。
3.每两个路由器之间都要建立Tunnel,而且每个Tunnel是单向的,两个节点之间仅仅建立最优的Tunnel。
4.在Tunnel路径更换的过程中,网络不会中断,因为在建立好新的Tunnel之前不会删除现用的Tunnel。
三、MPLS-TE的应用
MPLS-TE在国内电信运营商中应用很少,积累的经验就更少了,在理论上,如果运营商的IP骨干网当前没有全面启用MPLS,建议采用战术式TE实现流量工程。战术式TE都是在网络的局部实施,一旦TE的使命结束,就拆除TE隧道。战术式TE主要解决网络链路利用率不均衡的问题,直接的利益是可以延缓网络带宽扩容,或者给带宽升级留出充足的时间。此外战术式TE的另一大优点是:可以避免由于一个Tunnel的实际流量过大而始终无法建立成功。
对于战略式TE的部署,从网络规划的方面考虑,建立Full-Mesh的TE,这样网络里的流量基本都是走Tunnel的,前提是需要运营商在骨干网络全面启动MPLS的基础上,仔细、耐心、合理地规划网络带宽,计算各条中继的预留带宽。另外,建议采用离线工具来监视网络拓扑、流量模式以及控制隧道的建立。
基于MPLS-TE的FRR可以达到50ms级别的故障恢复,如果运营商骨干网承载3G、NGN等业务,则建议采用FRR对重要链路的业务进行保护。
MPLS-TE忽略了在一个汇聚级别,包含所有服务类别的可用带宽上,进行服务等级(COS)的分类和操作,MPLSDiffserv-TE技术的到来使MPLS-TE感知到COS,允许根据COS来预留资源,并在每个COS级别提供MPLS容错机制。同时也可以通过Diffserv-TE和FRR共同实现对重要链路上关键业务的保护。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。