MPLS DSTE技术白皮书06.docx
《MPLS DSTE技术白皮书06.docx》由会员分享,可在线阅读,更多相关《MPLS DSTE技术白皮书06.docx(11页珍藏版)》请在冰点文库上搜索。
MPLSDSTE技术白皮书06
MPLSDS-TE
技术白皮书
华为技术有限公司
HuaweiTechnologiesCo.,Ltd.
目录
1.前言2
2.技术简介2
3.关键技术4
3.1.服务类型(CT)4
3.2.链路信息的通告和路径计算5
3.3.信令为DS-TE的扩展5
3.4.带宽约束模型(BCM)5
3.4.1.最大分配模型(MAM)(rfc4125)6
3.4.2.俄罗斯木偶模型(RDM)(rfc4127)6
3.4.3.两种带宽模型的比较(MAM&RDM)7
4.典型应用7
4.1.限制链路上某种服务类型的带宽7
4.2.维持流量的相对比例8
5.结束语8
附录A参考资料9
附录B缩略语9
MPLSDS-TE技术白皮书
摘要:
DiffServ-AwareTrafficEngineering是一项基于MPLSTE技术基础上实现差分服务的技术,通过DS-TE可以根据服务级别对流量进行控制,达到合理利用网络带宽提供更优服务的目的。
本篇介绍了DS-TE的关键技术和典型应用。
关键词:
差分服务、流量工程、QOS、MPLS、MPLSDiffServ、MPLSTE、MPLSDS-TE
1.前言
DiffServ提供了基于类的QoS,具有良好的可扩展性,但缺乏有效的端到端部署机制;MPLSTE通过有效地管理带宽资源,间接改善网络服务质量,但其带宽管理以及MPLSTE隧道都无法做到基于业务类别进行,如果EF、AF、BE业务都承载在一个MPLSTE隧道中,EF和AF业务将受到BE业务的影响。
MPLSDiffServ-AwareTE在原来MPLSTE的基础上,增加了基于类别的资源管理,例如可根据带宽及时延的不同将接口资源划分为EF、AF、BE三类,通过IGP协议对每个类别的资源使用情况进行收集、分别建立TEDB,通过信令协议携带类别建立LSP。
2.技术简介
1:
IPDiffServ
DiffServ是一个多服务模型,它可以满足不同的QoS需求。
与IntServ不同,它不需要使用RSVP,即应用程序在发出报文前,不需要通知路由器为其预留资源。
对DiffServ服务模型,网络不需要为每个流维护状态,它根据每个报文指定的QoS,来提供特定的服务。
可以用不同的方法来指定报文的QoS,如IP报文的优先级位(IPPrecedence),报文的源地址和目的地址等。
网络通过这些信息来进行报文的分类、流量整形、流量监管和队列调度。
DiffServ一般用来为一些重要的应用提供端到端的QoS。
它通过下列技术来实现:
CAR:
它根据报文的ToS或CoS值(对于IP报文是指IP优先级或者DSCP,对于MPLS报文是指EXP域等等)、IP报文的五元组等信息进行报文分类,完成报文的标记和流量监管。
队列技术:
WRED、PQ、CQ、WFQ、CBWFQ等队列技术对拥塞的报文进行缓存和调度,实现拥塞管理。
通常在配置DiffServ时,边界路由器通过报文的源地址和目的地址等对报文进行分类,对不同的报文设置不同的CoS值,而其他路由器只需要用CoS值来进行报文的分类。
2:
MPLSDiffServ
在MPLS上应用DiffServ用以下两种方法来解决:
以太网等网络中,MPLS报文在二层链路层和三层网络层之间有一个薄层(shim),协议中定义了EXP字段(包含三个位),由这几个位来决定报文的队列调度及丢弃的优先级。
在ATM,FR等网络中,可以针对FEC(ForwardingEquivalenceClass转发等价类)和QoS请求的组合来分配标签,而不同于以前仅针对FEC分配标签(label)。
这样在收到一个MPLS报文后,根据收到报文的标签,就可以确定发出报文的标签及报文所要求的服务。
MPLS与DiffServ都具有很好的可扩展性,处理过程也类似:
在网络边缘分类(DSCP或标签)、在网络核心处理(基于DSCP的PHB或基于标签的转发);如果将DSCP字节的设置融入MPLS的标签分配过程中,MPLS的标签将具备区分分组服务质量的能力。
IP报文头的DSCP对MPLS设备(LSR)是不可见的,因此必须存在某种机制让DSCP对LSR是可见的,根据将IPDiffServ信息通过标签传达给LSR方式的不同,业界存在两种MPLSQoS的解决方案:
E-LSP:
在LER上将IPDSCP映射到MPLS的EXP位,通过EXP位向LSR表示分组的QoS要求,这样一个LSP最多可支持8个服务等级;LSR根据标签和EXP对分组进行队列调度,根据EXP进行报文丢弃,同一LSP中的分组可能被分到不同的队列;E-LSP是通过LDP协议建立的普通的LSP。
L-LSP:
在LER上将IPDSCP映射为一个LSP,通过标签和EXP位向LSR表示分组的QoS要求;LSR根据标签对分组进行队列调度,根据EXP进行报文丢弃,同一LSP中的分组被分到同一个队列。
L-LSP需要通过CR-LDP或RSVP扩展来建立。
选择上述两种方案主要取决网络所规划的业务类别数目、分组丢弃值以及MPLS运行的模式(帧模式或信元模式);目前大部分网络运营商所使用的业务等级都在4个以内(话音、视频、VPN与高质量上网、普通上网),所以E-LSP基本能够满足应用,又能很容易与IP优先级和802.1p做到互通;目前业界趋向于采用E-LSP方式。
3:
MPLSTE
MPLSTE是一种间接改善网络QoS的技术。
传统路由协议(如OSPF或IS-IS)主要是保障网络的连通性和可达性,通常选取不是非常灵敏的参数作为SPF计算根据,导致网络负载不均衡、路由动荡等缺陷;MPLSTE在网络资源有限的前提下,将网络流量合理引导,达到实际网络流量负载与物理网络资源相匹配的目的,间接改善了网络的服务质量。
根据用户需求(显示路由、带宽等)及网络资源的情况,MPLSTE能够自动通过RSVP扩展建立一条跨越骨干网的从LER到LER的隧道,同时可完成隧道的维护、统计、属性修改(如带宽)及备份等功能;LER与LER设备之间,可以认为通过一个隧道直连;MPLSTE隧道可广泛应用于VPN、各类接入及互联业务中。
通过MPLSTE,可为用户创建具有带宽保证的隧道,但如果在隧道中同时传送EF、AF及BE业务时,业务之间会相互干扰,也就是说MPLSTE存在的一个问题就是MPLSTE隧道不能够感知业务类型。
4:
MPLSDS-TE
MPLSTE和MPLSDiffSev可以同时运行,同时提供他们自己的优势,但是他们彼此之间并不感知,MPLSDS-TE充分利用了DiffServ的可扩展性以及MPLS的显示路由能力,是解决骨干网QoS的有效技术,网络资源可根据用户的需求得到最优的利用。
MPLSDiffServ-TE使MPLS-TE感知CoS,允许CoS粒度的资源预留并且提供在每个CoS级别的容错。
例如可根据带宽及时延的不同将接口资源划分为EF、AF、BE三类,通过IGP协议对每个类别的资源使用情况进行收集、分别建立TEDB,通过信令协议携带类别建立LSP。
作为DiffServandTE的结合,MPLSDiffServ-TE提供QOS保证,以满足严格的SLA,象语音业务等。
3.关键技术
3.1.服务类型(CT)
MPLSDS-AwareTE基本的需求就是对不同业务类型进行不同的带宽预留。
这就意味着在任何时间,所有路由器都必须知道网络中还有多少带宽可用。
为此引入CT(ClassType)的概念。
RFC3564对CT的定义是:
穿过一个链路的一组流量,这个链路是被一组指定的带宽约束管理的。
CT被用于带宽分配、约束路由和准入控制的目的。
在所有链路上,一个给定的流量属于相同的CT。
协议定义了8个CT,从CT0到CT7,不同的CT可以支持一个或多个带宽约束。
RFC4124中,规定一个DS-TELSP只能够来自于一种CT,来自同一个CT的多个LSP可以具有不同的抢占优先级。
在MPLSDS-AwareTE中,抢占的概念没有发生变化,有8种优先级(从0到7)。
因此,DS-TE可以支持8*8=64种不同的(CT,Priority),一个TE类(TE-Class)被定义为一个(CT,Priority)的联合,IETF定义了8种TE-Class(TE0~TE7),可以通过配置从64种(CT,Priority)中任意选择8种。
一个MPLSDS-AwareTE的应用根据需要决定部署的CT数目,而不需要达到支持的最大CT数(MaxCT)。
不同的CT所承载的流量类型根据不同的带宽约束分配模型不同可能会存在差别。
但是,习惯上尽力而为的业务被映射到CT0,由于每个DS-TELSP都会考虑尽力而为的业务,因此所有考虑支持尽力而为业务的LSP都会被映射到CT0。
3.2.链路信息的通告和路径计算
作为一个约束,DS-TE为8个CT中的每一个都增加了可用带宽限制。
因此,当计算路径时,CSPF需要考虑指定CT的带宽和优先级。
为了计算成功,每一个链路都必须知道每个CT每种优先级的带宽。
这就要求IGP在链路状态通告时,必须通告每个链路上每个CT的每种优先级的带宽。
由于有8个CT,每个CT有8种优先级,这样理想情况下IGP需要为每个链路通告64种TE-Class,但目前协议中限制只需要通告其中的8种。
究竟是哪8种,可以通过配置决定。
前面已经介绍过,一个TE类(TE-Class)被定义为一个(CT,Priority)的联合,IETF定义了8种TE-Class(TE0~TE7),可以通过配置从64种(CT,Priority)中任意选择8种。
一个极端的情况是一个CT中支持8种TE-Class,这更象是现存的MPLSTE的实现;另外一个极端是支持8个不同的CT,每种CT一个优先级。
IGP通告每个TE-Class的可用带宽。
因此CSPF通过IGP知道每个有效的TE-Class的CT和优先级的组合,并根据每个TE-Class进行路径计算。
3.3.信令为DS-TE的扩展
路径计算成功之后,RSVP-TE建立LSP,CT信息被承载在RSVP-TE的PATH消息中,同时还指定了需要预留的带宽。
沿路上的每个节点根据当前的资源情况,决定是否接受这个LSP。
如果接受就在指定CT上预留资源,并将资源的变化情况反馈给IGP。
节点如何在多个CT之间进行可用带宽计算和分配,请参考下面的带宽约束模型。
3.4.带宽约束模型(BCM)
可用带宽计算的最重要的影响之一是在不同CT间分配带宽。
一个CT可以携带的链路带宽的百分比被称为带宽约束(BC),RFC3564中定义带宽约束模型表示CT和BC直接的关系。
带宽约束模型作为一组规则定义了:
✓带宽约束(BC)的最大数目;和
✓每个带宽约束(BC)与服务类型(CT)之间的匹配关系;
每个CT可以被分配一个或多个BC,不同的带宽约束模型会有不同的CT和BC的对应关系。
网络操作员可以这个网络中使用一种带宽分配模型,也可同时部署多种带宽分配模型。
下面详细介绍两种常用的带宽约束模型:
最大带宽分配模型(MAM)和俄罗斯木偶模型(RDM)。
3.4.1.最大分配模型(MAM)(rfc4125)
在最大带宽分配模型定义:
✓最大CT数等于最大BC数,即,MaxCT=MaxBC
✓CT的可预留带宽小于等于BC,即Reserved(CTb)<=BCb,0<=b<=(MaxCT-1)
例如,一个链路上有100个单元的带宽,由3个CT使用,网络管理员可以配置BC0=20,BC1=50,BC2=30,这样:
1)所有CT2的流量不能超过30(例如,Voice<=30)
2)所有CT1的流量不能超过50(例如,PremiumData<=50)
3)所有CT0的流量不能超过20(例如,BestEffort<=20)
最大分配模型中,抢占和CT无关,就是说抢占可以发生在一个CT内,也可以跨CT。
以支持8个CT为例,MAM可以描述为:
1)CTb所有LSP的使用的带宽不超过BCb,0<=b<=7
2)所有的CT所有的LSP使用的带宽不超最大可预留带宽
最大可预留带宽模型简单直观,对协议要求比较小,可以对每个CT设置带宽约束。
3.4.2.俄罗斯木偶模型(RDM)(rfc4127)
俄罗斯木偶模型中定义:
✓最大CT数等于最大BC数,即,MaxCT=MaxBC
✓当前CT与高CT的可预留带宽和小于等于当前BC,即SUM(Reserved(CTc))<=BCb,
b<=c<=(MaxCT-1)
例如,一个链路上有100个单元的带宽,由3个CT使用,网络管理员可以配置BC0=100,BC1=80,BC2=60,这样:
1)所有CT2的流量不能超过60(例如,Voice<=60)
2)所有CT1和CT2的流量不能超过80(例如,Voice+PremiumData<=80)
3)所有CT0、CT1和CT2的流量不能超过100(例如,Voice+PremiumData+BestEffort<=100)
俄罗斯木偶模型中,抢占和CT无关,就是说抢占可以发生在一个CT内,也可以跨CT。
尽管比MAM复杂,RDM还是比较简单易于理解的,对协议要求比较小,而且能够保证带宽有效使用并防止服务降级,另外对于不同CT可以取得隔离的效果。
3.4.3.两种带宽模型的比较(MAM&RDM)
下表比较了两种带宽分配模型的不同:
MAM
RDM
映射一个BC到一个CT,容易理解和管理
映射一个BC到一个或多个CT,不够直观
不同CT之间隔离,不需要CT之间的抢占就可以保证带宽
CT之间没有隔离,需要CT之间抢占来保证带宽
带宽可能被浪费
有效的利用了带宽
有利于网络中预先排除抢占
很难预先排除抢占
4.典型应用
4.1.限制链路上某种服务类型的带宽
在现有的IP网络上提供语音、视频等增值服务是发展的趋势,但是如果链路上语音、视频流量过大,抖动/延迟就会增加,服务质量就会下降。
为此,一般都会将链路上对抖动/延迟敏感的流量限制在链路带宽的一定比例之内,而剩余的带宽可以用来提供“尽力而为”(BE)等对抖动/时延不敏感的业务。
在没有语音、视频服务的情况下,整个链路都可以走BE服务;在有语音、视频服务的情况下,这种流量可以抢占BE的带宽,其流量的上限受设定的链路带宽的比率限制。
对于这些对不同种类的服务,有着不同的约束的需求,传统的MPLSTE技术无法解决,需要通过MPLSDS-AwareTE技术来解决。
如上图所示,采用RMD带宽分配模型,A-B-C链路上被配置:
BC0=CT0+CT1=10Mbps(数据)
BC1=CT1=1Mbps(语音)
A-D-E-C链路上配置:
BC0=CT0=10Mbps(数据)
这样链路上所有语音业务总和不能超过1Mbps,所有语音业务和数据业务的总和不能超过10Mbps。
当没有语音业务时,A-B-C路径上全部的10Mbps给数据业务使用,当第一条语音业务建立时,语音业务LSP将根据情况,抢占数据业务的带宽。
这样可能会导致某(几)个低优先级的数据业务LSP被抢占,这些数据LSP可能被重新选路,例如A-D-E-C,但是整个网络中语音业务的总和不能超过1Mbps。
4.2.维持流量的相对比例
如果需要在一个MPLS网络上提供三种服务类型,这些服务所占的比例由于源、目的地不同而不同,希望通过流量工程技术进行流量的分配。
MPLSTE技术不能够满足需求:
带宽在不同服务类型之间的比例依赖于LSP的建立顺序、抢占关系以及链路/节点失败情况,这使得操作起来非常困难,很难配置队列来保证每种服务的逐跳行为(PHB)。
通过MPLSDS-AwareTE,可以将链路的带宽按照比例分成三份,然后配置相应队列,同时还可以通过配置建立和保持优先级,来达到抢占的目的。
5.结束语
MPLSDS-TE结合了DiffServ和TE技术的优势,更好的保证用户的服务质量,扩展了DiffServ和TE的应用范围。
华为公司高端路由器产品支持MPLSDiff-Serv-AwareTE特性,支持俄罗斯木偶带宽限制模型,支持不同的CT和不同的带宽约束BC,实现多种TE-Class,完全可以满足电信业务承载的服务质量要求,实现IP网络电信化。
附录A
参考资料
Listofreference参考资料清单:
RFC3564RequirementsforSupportofDifferentiatedServices-awareMPLSTrafficEngineering
RFC3270MPLSSupportofDifferentiatedServices
RFC4127RussianDollsBandwidthConstraintsModelforDiffserv-awareMPLSTrafficEngineering
RFC4126MaxAllocationwithReservationBCModelforDS-TE&PerformanceComparisons
RFC4125MaximumAllocationBandwidthConstraintsModelforDiffserv-awareMPLSTrafficEngineering
附录B缩略语
缩略语
英文注释
说明
DS-TE
DiffServ-AwareTrafficEngineering
差分服务的流量工程
PHB
PerHopBehavior
逐跳行为
DSCP
DifferentiatedServicesCodePoint
差分服务码点
TEDB
TrafficEngineeringDataBase
流量工程数据库
CT
ClassType
服务类型
BC
BandwidthConstraints
带宽约束