MPLS是基于标记的IP路由选择方法。这些标记可以被用来代表逐跳式或者显式路由,并指明服务质量(QoS)、虚拟专网以及影响一种特定类型的流量(或一个特殊用户的流量)在网络上的传输方式等各类信息。MPLS采用简化了的技术,来完成第三层和第二层的转换。它可以提供每个IP数据包一个标记,将之与IP数据包封装于新的MPLS数据包,由此决定IP数据包的传输路径以及优先顺序,而与MPLS兼容的路由器会在将IP数据包按相应路径转发之前仅读取该MPLS数据包的包头标记,无须再去读取每个IP数据包中的IP地址位等信息,因此数据包的交换转发速度大大加快。
目前的路由协议都是在一个指定源和目的地之间选择最短路径,而不论该路径的带宽、载荷等链路状态,对于缺乏安全保障的链路也没有一种显式方法来绕过它。利用显式路由选择,就可以灵活选择一条低延迟、安全的路径来传输数据。
MPLS协议实现了第三层的路由到第二层的交换的转换。MPLS可以使用各种第二层协议。MPLS工作组到目前为止已经把在帧中继、ATM和PPP链路以及IEEE802.3局域网上使用的标记实现了标准化。MPLS在帧中继和ATM上运行的一个好处是它为这些面向连接的技术
带来了IP的任意连通性。目前MPLS的主要发展方向是在ATM方面。这主要是因为ATM具有很强的流量管理功能,能提供QoS方面的服务,ATM和MPLS技术的结合能充分发挥在流量管理和QoS方面的作用。标记是用于转发数据包的报头,报头的格式则取决于网络特性。在路由器网络中,标记是单独的32位报头;在ATM中,标记置于虚电路标识符/虚通道标识符(VCI/VPI)信元报头中。对于MPLS可扩展性非常关键的一点是标记只在通信的两个设备之间有意义。在网络核心,路由器/交换机只解读标记并不去解析IP数据包。
IP包进入网络核心时,边界路由器给它分配一个标记。自此,MPLS设备就会自始至终查看这些标记信息,将这些有标记的包交换至其目的地。由于路由处理减少,网络的等待时间也就随之缩短,而可伸缩性却有所增加。MPLS数据包的服务质量类型可以由MPLS边界路由器根据IP包的各种参数来确定,如IP的源地址、目的地址、端口号、TOS值等参数。
对于到达同一目的地的IP包,可根据其TOS值的要求来建立不同的转发路径,以达到其对传输质量的要求。同时,通过对特殊路由的管理,还能有效地解决网络中的负载均衡和拥塞问题。当网络中出现拥塞时,MPLS可实时建立新的转发路由来分散流量以缓解网络拥塞。