MPLS取代了过去十多年以来非常成功的IP路由交换技术,而IP技术本身的发展是和互联网的发展相互促进的。MPLS的产生使技术进一步向前发展。

MPLS在三层还是以IP为依托,在二层取代了ATM交换网络,已经成了中国6大ISP在其骨干核心网必须布署的协议和技术

运营商所提供服务的发展:

1、transport services:90年代ISP的骨干网二层的是ATM交换机技术组网,三层用的IP路由技术组网,主要向客户提供专线、FR、ATM等服务,叫做transport services,这只是一个传输层的服务,没有任何附加价值或增值服务。如同老式的邮局,没有特殊服务,只负责转发,对所有信件采取相同策略,不提供特快专递、不提供服务质量的保证,而如今邮局已经可以提供多种可选的转发方案,也就是有了许多增值服务,同样对于ISP来说,通过lease line/FR/ATM的传统服务已经无法满足需求,也无法在竞争中处于有利的地位,所有迫切需要寻求一种新技术来支撑和提供增值服务。

2、ip connectivity service:ISP在这种阶段开始提供internet的接入服务,这也算是一种增值服务。

3、IP VALUED-ADDED SERVICES:如今ISP提供了许多增值服务,如content hosting/collaboration/voice/video等。这时所需要的后台技术便出现了,对于这种技术的考虑基于两点,一是安全二是速度,于是产生了MPLS。

ATM采用64位固定信元交换方式,速度非常快,在90年代的广域网的二层交换中取得了巨大成功

ATM的不足:

1、20 percent cell tax:20%信元税

2、n-squared pvc problem:二层的ATM网络和三层的IP路由网络是分离的,也就是说三层选路成功了但在二层有可能不可达,为了保证二层对三层选路的完全适应性,只能将二层ATM交换网络做成full-mesh的PVC结构,所以PVC数量巨大n(n-1)/2

3、结构分离问题:三层与二层是完全独立的,需要进行相关的映射,如同FR,需要将目的IP和本地的DLCI映射起来

clip_image002

随着一、二、三层技术和设备的发展,ATM的优势没有了,被淘汰了,但却留下了标签交换的理论和技术(ATM的标签交换是基于VPI/VCI进行的)

业界和运营商开始考虑一种新技术:既能实现三层路由,又能实现高速二层转发,且第二层与第三层不存在逻辑和物理上的分离,这便是MPLS的起点:

Cisco:tag switching

Ibm:ARIS

Toshiba:CSR

Nokia:IP switching

Lucent:IP navigator

1997年,IETF采用了思科的tag switching作为业界标准,1998年,第一种MPLS应用MPLS ××× 开始布署

MPLS的目标:

已实现的初始目标:通过在二三层包头间注入一个标签来实现简单的包头、易扩展机制、硬件提供交换

已实现的非预期目标:解决了了最长匹配问题:通过将label与prefix、group of site、bandwidth、路径等进行关联提供各种服务,如:MPLS ×××/MPLS TE/MPLS QOS/GMPLS

利用label技术,将转发机制与控制机制完全分离开来:

clip_image004

LFIB:转发信息数据库

LFIB再往下就硬件接口(我们通常所说MPLS是基于硬件转发就是这样来的)

当我们运行了MPLS协议以后就开启了LDP(标签分布协议)

MPLS标签本地有效、本方向有效

查路由表的三步:

第一步:最长匹配

第二步:AD

第三步:metric

第四步:如果上面三步都相同的情况下就形成了等价的负载均衡

clip_image006

控制机制层是针对选路,利用路由选择协议创建路由表,把最佳路由放入其中,再通过路由表向下创建forwarding talbe,forwarding table是位于转发机制层的表项,再向下就是硬件电路了,数据包进入后的过程类似于MLS的一次路由多次交换,但实际上连一次路由都不会做,直接交换,也就是CEF。

上图同时也说明了:MPLS本身是没有路由功能的,它需要借助控制层面的IGP生成的路由表工作

转发机制与控制机制完全分离开的好处:

控制层面无所谓任何路由选择协议,而转发层面则支持各种技术和接口类型,如FR/以太网/光纤接口等

MLS与MPLS的区别:

MLS采用的叫做流量驱动模型data-driven model。只有在第一次流量产生后二层才会创建缓存的转发表进行后续的多次交换;

MPLS采用的叫做控制驱动模型(拓扑驱动模型)control-driven model,不需要相关流量、在路由信息到达时就绑定了标签,再进行基于标签的转发,如CEF,MPLS是基于思科CEF的,在设备上输入ip cef的命令后,设备马上基于相关条件-如路由表等,创建出FIB

MPLS的控制组件和转发组件的内容:

控制组件:BGP/LDP/RSVP/TDP 用于路由及标签的分配

转发组件:label imposition标签插入/swapping标签交换/标签跳出

image

MPLS对用户是完全透明的,感觉不到,只在ISP的核心骨干布署

Label在入口处加上,在倒数第二跳跳出,在倒数第一跳进行正常的第三层路由转发

clip_image010

MPLS的FIB是通过IP路由选择协议来实现的:

1、 MPLS通过IP选路协议确定最佳路由:

2、 最佳路由被MPLS映射到forwarding information base

最终使用LFIB(TFIB)进行数据转发而不是路由表

image

N表示条数 y表示支持 空格表示不支持

MPLS所能提供的增值服务:

1、 ISP所提供的×××

2、 Traffic engineering

3、 IP+ATM

4、 IP+optical GMPLS

5、 Any tansport over mpls:如EOP,ethernet over POS,用以太网技术建立城域网MAN

如前所述,MPLS已经取代了传统的二层交换,并且它在ISP的核心骨干网中还将取代传统的三层IP路由,原因如下:

1、连接性:IP是逐跳的、无连接的,当在三层引入有连接的技术MPLS后,可以实现路径的多样性,而MPLS面向连接所使用的LSP(lab-switching path),也就是说当数据包进入MPLS网络时所走的路径早被LSP所决定,并且贯穿于整个MPLS网络,并且也超越了路由表,而与LSP对应的就是label标签

image

2、层次化转发:ATM使用两层结构进行转发,先是VCI,再是VPI;MPLS通过标签的堆叠可进行N层结构的转发,提供N种服务

3、控制层面多信令支持:TDP/LDP/扩展RSVP/扩展LDP/扩展BGP/扩展IS-IS AND OSPF

4、路由器对于数据包的处理分为控制层面和转发层面。

5、提升了路由查询的效率:IP路由是HOP-BY-HOP,每跳查一次路由表,而MPLS使用CEF和LSP,把目的IP与一个label绑定起来,当数据包进来时提供一个标签,这时整条路径都已经设计好了,不需要再在每条路由器上执行最长匹配查询了。

PEC:forwarding equivalence class PEC是标签分类的依据,路由器通过不同的PEC来决定放入哪个LSP中

不同的PEC会打上不同的标签,不同的标签又会映射到不同的LSP

1、 IP prefix/host add

2、 Layer 2 circuits(ATM/FR/PPP/HDLC/ETHERNET)

3、 Groups of add/site ---×××

4、 A bridge/switch intstance ---VSI

5、 Tunnel interface ---TRAFFIC ENCINEERING

LSP:label—switching path

LSP通过IP路由预先建立了路径,它只决定数据包的单向路径

LSR:label-switching router,主要功能有两点,一是MPLS数据包的转发,二是LSP的建立。LSR分为四类:

1、 入站路由器ingress:整个MPLS网络中的第一台路由器,数据包在其上打入标签

2、 Transit:进入标签的转换

3、 倒数第二跳路由器;跳出标签

4、 出站路由器egress:在MPLS网络中的最后一台路由器

上游路由器和下游路由器的分另在于数据包的流向

Label(帧模式):本地有效,本跳也就是本方向有效,位于三层包头与二层包头之间,共32位。标签是LSR根据LDP或TDP进行分配的

clip_image002[6]

20位的label,有些已经被保留使用,不同厂商要求不同

3位的优先级COS (EXP这里其实就是执行QoS)

1位的S位,如为1表示有标签堆叠,如为0表示无标签堆叠

8位TTL

MPLS按label的不同分为两种运行模式:

1、 帧模式:运行于其它技术之上

2、 信元模式:运行于ATM之上。运行于ATM之上的label其实就是ATM的VPI/VCI

LABEL STACKING:标签堆叠

image

数据包如何利用label通过MPLS网络:

clip_image002[8]

不同IP前缀分配不同PEC,不同PFC被LDP(标签分布协议)分配了不同的label标签的分配最初是基于IP路由协议的

LDP的特点:

1、 由RFC 3035及3036定义

2、 在MPLS网络内分配标签

3、 标签分配的依据为PEC

4、 每个PEC分配一个标签

5、 邻居发现功能

标签的通告方式:

1、下游转发downstream unsolicited:从egress路由器开始向上游路由器进行,和路由信息传播方向一致

2、下游请求downstream on-demand:从ingress路由器开始向下游路由器进行,和路由信息传播向相反。ATM网络通常使用

LDP的邻居发现:

1、 帧模式:不管两台路由器间有多少可用链路,只需要维护一个LDP SESSION

2、 信元模式:由于VPI/VCI多个存在,所以需要维护多个LDP SESSION

LDP是思科私有的,是LDP的前身,两者机制几乎完全一致,只不过LDP多了一些诸如加密、邻居验证等内容。思科设备默认使用TDP