MPLS Network Designs Basis
第一章:技术基础:第3层VPN、多播VPN、IPv6和伪线路
本章高度概括,只列出技术分类,不在详细分析
1. L3 MPLS VPN基础,VRF,RD,Packets Forward,详细见我之前的总结
2. 远程接入L3 VPN,l2tp vpdn, pppoe
3. 运营商的运营商架构(CSC),CSC中的包转发
4. 跨域VPN,optionA,B,C,详细见我之前的总结
5. mVPN,SSM,详细见我之前的总结
6. IPv6,其中比较重要的就两个概念:6PE和6VPE,这里需要简要说明一下
6PE Control Plan:
可以看到关键点在于PE本地收到IPv6的报文后,打上自己换回口的label发给远端PE
6PE Data Plan:
在转发层面,去往PE的IPv6数据直接打上相应的label就ok
6vPE的控制层面和转发层面与6PE类似,但是主要区别在于6PE是global的,全局IPv6路由,部署有一定限制,而6vPE有VPN的特性。在6vPE中,定义了新的地址族VPN-IPv6,AFI=2 代表IPv6,SAFI=128 代表VPN。在6vPE中VPN-IPv6长24 byte,由8字节的RD和16 byte的IPv6地址构成。
7. 伪线技术(支撑2层服务如VPLS,Eompls的基础):AC,PW,定向LDP(FEC TLV,label TLV和option TLV),PWid,对于这些TLV的格式,可以看下图
真实数据包的对应结构,可以看到跟上面的定义不太一致,这里有很多原因,一个是抓此包时的实际情况,是否配置导致的不同;另一种原因是wireshark本身翻译出现错误;还有一种就是需要查找RFC,看看是否存在特殊情况
第二章 QSO,MPLS TE和network recovery的基础概念
1. QOS基本概念,这里注意进行测试时,可用扩展ping可以加TOS,测试QOS是否正常工作,不过要注意TOS用的是整个8 byte,IPP用的是前3 byte,而DSCP用的是前6 byte
如下所示:
af12=001,100,00=tos48
cs2=010,000,00=tos64
cs4=100,000,00=tos128
cs6=110,000,00=tos192
cs7=111,000,00=tos224
2. QOS常用对应表项如下所示,注:对于EXP的映射表,没列在里面,它跟IPP是一样的
3. 在MPLS中的QOS,这里需要注意两点,一个是E-LSP,另一个是L-LSP
E-LSP:在LER上将DSCP/IPP/COS映射到MPLS的EXP位,通过EXP体现QoS。一个LSP最多可支持8个服务等级,同一个LSP中的分组可能被分到不同的队列,E-LSP是通过LDP协议建立的普通的LSP。目前ISP基本都是用这种E-LSP来部署MPLS QOS。
L-LSP:在LER上将DSCP/IPP/COS映射为一个LSP,通过标签和EXP位向LSR表示分组的QoS要求;LSR根据标签对分组进行队列调度,根据EXP进行报文丢弃,同一LSP中的分组被分到同一个队列。 L-LSP需要通过CR-LDP或RSVP扩展来建立。(这是摘自网上,说的很虚,书上说的也不清楚,又没有应用,暂时到这里)
4. QOS模型
当说起整个网络QOS模型时,可以用下面几个参数来说明:
N: 接入链路上的队列数量
M: 核心中的队列数量
P: TE/DS-TE(0-没有用MPLS-TE;1-使用MPLS-TE;2-使用DS-TE)
5. 流量工程基本概念
为了更好的优化带宽,MPLS TE应运而生,MPLS TE把参与的端口标记带宽值,然后统一管理,如果谁需要资源,统一调度并分配带宽,这样就起到了优化资源的目的,比起在设备看实际流量要方便的多。不过要注意,在非自动带宽模式下,每个LSP的带宽都是手动在头端指定的,如果该LSP的带宽超过了预设值,它仍然会占用更多的链路带宽,MPLS TE不是QOS,它只是管理带宽的工具,除非设置了DS-TE,或指定MPLS QOS,这点很容易让人混淆。而在自动带宽计算模式下,可以根据取样频率,LSP调整频率,及LSP的最小值和最大值来动态的调整带宽,这样效率会更好,如下配置实例:
全局配置设置带宽测量频率:
mpls traffic-eng reoptimize 300 !---重优化时间,单位为秒 auto-bw collect frequency 15 !---采集频率,单位为分钟,缺省每隔5分钟采集
TE配置:
interface tunnel-te x ipv4 unnumbered Loopback0 priority 2 2 !---越小越优先 autoroute announce destination x.x.x.x path-option 10 dynamic auto-bw application 15 !---应用新带宽的时间,单位为分钟,24小时 bw-limit min 100000 max 500000 !---为该LSP分配的最小带宽100M和最大带宽500M,单位为kbps adjustment-threshold 20 min 50000 !---前者为百分比,缺省5%;后者单位为kbps,缺省10kbps !---在application时间内,如果取样的最大流量和当前的带宽差的绝对值大于最小阀值(也 !---就是50M),并且这个结果大于当前流量的百分比,那么就应用新的带宽。如上配置,如 !---果取样最大是300MB,差值=500-300=200,200>50;当前流量百分比为500*20%=100MB,200>100;所以应用新的300M overflow threshold 20 min 50000 limit 2 !---前两参数同上,最后表示连续的次数,算法同上,连续出现2次后不用等待15分钟直接应用该单款值
6. LSP的常见属性如下:
目的地:必须显性指明
带宽:手动或自动
亲和力:就是链路着色
抢占:抢占优先级和创建优先级,常规部署都一样,可不一样
快速重路由:FRR,50ms内的切换到备份LSP
优化度量值:可用IGP的metric,也可以用TE的metric
LSP计算:可以是内部用CSPF计算,也可以用外部服务器计算然后统一下发
7. TE LSP交换标签时的问题
注意:TE LSP的前端和后端需要LDP会话,如果没有,那么TE LSP后端路由器收到包含有BGP标签,从而丢弃,如下图所示。另外如果在PE之间建立TE LSP,那么不需要任何LDP会话,IP包会包含BGP和RSVP-TE标签。
8. 重优化TE LSP时,基于断开前建立,这样不会影响业务。另外在新建LSP时避免双倍预留,与旧的LSP共享同样的带宽。重优化可手动重优化,定时器重优化和事件驱动重优化。
9. MPLS TE转发邻接:默认TE LSP不会通告到IGP中,也不会影响IGP的正常原路,但有些时候需要把LSP的信息通告给IGP,在后面案例分析中,需要用到此功能。
10.带宽约束模型,俄罗斯洋娃娃模型(RDM)和最大分配带宽模型(MAM),用的太少,略。跨AS的MPLS TE,这里略,在第3个案例分析里会提到。
11.退避算法,SPF算法都有,如OSPF和ISIS,如下图所示:
12. MPLS TE中的恢复机制分几大类
MPLS TE重路由:默认恢复机制,全局恢复,头端收到链路失效的消息后,运行CSPF计算出新的LSP。
MPLS TE路径保护:事先建立备份的LSP,有故障后直接切换,比默认恢复机制快,但是实施相当麻烦,纯手工
MPLS TE快速重路由:目前最常用的本地保护机制,主要分两种:NHOP和NNHOP两种。备份隧道可通过手工或自动建立,两种方式如下图所示:
NHOP,链路保护,在PLR上会自动把去往R3的标签转到back隧道上
NNHOP,节点保护,如下图所示,R4给R3分配的是标签3,而R3给R2分配的是标签2。如果R3废了,R2必须打上标签3,才能保证备份链路正常工作。这时就要用到RSVP-TE路由记录对象(Route Record Object,PRO),R2可以确定MP期望的标签。