三、MPLS 支持的DiffServ
MPLS用一个标签作垫层(shim)封装了IP包,核心路由器看不到DSCP,DiffServ与MPLS并不兼容。为此,IETF提出了一种MPLS支持DiffServ的方法。
MPLS支持的DiffServ能够把DiffServ的多个BA映射到MPLS的一条LSP上,根据BA的PHB来转发LSP上的流量。LSP与BA的映射有两种方式: E-LSP和L-LSP。
1.E-LSP
E-LSP用EXP字段把多个BA指派到一条LSP上,使用MPLS垫层头的EXP字段表示一个包的PHB。最多可以把8个BA映射到EXP字段中。
2.L-LSP
L-LSP把一条LSP指派给一个BA(表现出多个包丢弃优先级),根据MPLS标签确定包的调度策略,根据垫层头或二层包丢弃机制确定丢弃优先级。纯ATM MPLS不能使用 EXP字段。
由于MPLS网络设备会在每一跳中都交换标签值,因此管理标签与DSCP的映射比较困难。E-LSP比L-LSP更容易控制,因为E-LSP事先就可以确定整个网络中每个包的EXP字段和DSCP之间的映射关系。
四、结语
DiffServ提供的是一种区别对待不同业务的服务,为不同的业务设置不同的优先级和转发特性,但并不具体规定如何进行转发,也不设法消除拥塞。在网络没有拥塞时,即使是尽力而为型的IP包也能够得到很好的网络服务,因此有没有DiffServ都一样。而在 DiffServ网络中也完全有可能发生拥塞,因为即使DiffServ在网络边缘做了流量调节,在网络核心路由器上也完全有可能因为流量汇聚而出现拥塞 (负载不均衡)。这时,DiffServ是以牺牲低优先级的业务为代价换来高优先业务的QoS(拥塞严重时也可能损伤高优先级的业务),但并没有消除拥塞。MPLS提供的流量工程能够解决负载不均衡出现的拥塞问题。
DiffServ不关心低层网络采用什么技术解决网络拥塞问题,而MPLS流量工程也不关心所承载的流量采用的是什么QoS机制。但在MPLS承载 DiffServ(或IntServ)时,因为标签封装的原因,核心路由器看不到IP包的头,因此IETF提出了一种MPLS能够支持DiffServ的技术。
显然,解决IP网的QoS,仅仅依靠DiffServ和MPLS这两种技术仍然不够,还需要拥塞控制技术(如RED)、排队调度技术(如WFQ)、约束路由、应用层流量重定向和流量均衡技术等协同工作。
