Download presentation
Presentation is loading. Please wait.
1
高级计算机网络 2018/11/17 史忠植 高级计算机网络
2
内容提要 5.1 概述 5.2 多协议标记交换的发展 5.3 多协议标记交换的网络体系结构 5.4 多协议标记交换的基本原理
5.5 VC合并技术 5.6 路由环路控制 5.7 MPLS的路由技术 5.8 MPLS网络性能 5.9 MPLS的流量工程 5.10 基于传统ATM骨干网的MPLS移植技术 5.11 MPLS支持虚拟专网 2018/11/17 史忠植 高级计算机网络
3
5.1 概述 多协议标记交换(multiprotocol label switching,MPLS)是IP通信领域中的一项技术,是对传统IPOA(IP over ATM)技术的改进。它采用集成模式,将IP技术与ATM技术良好地结合在一起,改进了网络层的可扩展性和灵活性,可支持多种网络层协议及支持不同的路由协议.MPLS不受限于链路层技术,可工作于任何传送媒质, 并具有链路层的高速交换和业务量管理能力.可以对要求不同服务质量的流分配不同的标记,借助RSVP,并根据该标记提供相应的服务.从而兼具了ATM的高速性能、QOS性能、流量控制性能与IP的灵活性、可扩充性,它不仅能够解决当前网络中存在的大量问题,而且能够支持许多崭新的功能,所以是一种较为理想的骨干IP网技术。 2018/11/17 史忠植 高级计算机网络
4
5.1 概述 当前,国际上关于MPLS的研究十分活跃,IETF(Internet Engineering Task Force)预计今年将出台MPLS的标准,而ITU-T的各个工作组也在积极进行相关的研究,该技术将很有可能成为下一代IP的基础。与此同时,Internet的发展对宽带化、多媒体化提出了越来越高的要求,IP网络的建设迫切需要一种更为高效的技术。在这种情况下,便很有必要对这一新兴技术进行认真研究。 2018/11/17 史忠植 高级计算机网络
5
5.1 概述 当前,IP网的建设中存在着好几种技术,如IPOA(IP over ATM),IPOS(IP over SDH/SONET),IP over WDM(波分复用),以及IP over Fiber技术。各种技术都有其优点与缺点,这里不再赘述。而ATM技术由于具有高速度、QOS性能、流量控制等传统路由器网络所不具备的性能,已经在世界范围内的骨干IP网上得到广泛使用,它对IP的支持也已经十分成熟。而且,当对网络提出较高的实时性要求时,IPOA目前还是首选,故而对IPOA的研究便更加重要。而MPLS正是对经典IPOA技术的改进,所以,这里我们不妨来看一下IPOA技术的现状。 2018/11/17 史忠植 高级计算机网络
6
IPOA 传统的IPOA是一种重叠型技术,它将IP(第三层技术)建立在ATM(第二层技术)之上,两层协议完全独立,它们之间通过一系列协议(如NHRP,ARP等)实现互通。这一思路是很自然的,而且目前确实已经得到了广泛采用。但是,在网络迅速膨胀的情况下,这种重叠方式也带来了大量的问题。 ? 全连接的网络。这会造成讨厌的N平方问题。 ? 将整个IPOA网络分割成许多逻辑子网(LIS) 2018/11/17 史忠植 高级计算机网络
7
IPOA 传统的IPOA是一种重叠型技术,它将IP(第三层技术)建立在ATM(第二层技术)之上,两层协议完全独立,它们之间通过一系列协议(如NHRP,ARP等)实现互通。这一思路是很自然的,而且目前确实已经得到了广泛采用。但是,在网络迅速膨胀的情况下,这种重叠方式也带来了大量的问题。 ? 全连接的网络。这会造成讨厌的N平方问题。 ? 将整个IPOA网络分割成许多逻辑子网(LIS) ? 无法真正实现QOS保证 2018/11/17 史忠植 高级计算机网络
8
标记交换技术 是对现有的各种标记交换技术的统称,而这些技术,正是MPLS技术产生的基础。标记交换的想法来自于对IP网络中两种基本设备的考察,它们便是我们再熟悉不过的交换机与路由器了。可以看到,若仅就交换速度,流量控制性能与性能价格比而言,交换机无疑要远远高于路由器,然而路由器却具有交换机所不能比拟的丰富而灵活的路由功能。这样,我们不禁要想,能不能让一部设备既有交换机的高速度与流量控制能力,又具备路由器灵活的功能呢?这实际上是标记交换技术产生的一个关键动机。 2018/11/17 史忠植 高级计算机网络
9
标记交换技术 标记交换的基本原理便是以一个类似于路由器的设备来控制ATM的硬件交换设备,该技术从而具备了可以与交换机比拟的性能/价格比。同时,它还能够支持许多更为强大的新的路由功能,如显式路由(Explicit Routing)等,这样该技术将交换机与路由器的优点完美地结合在一起,成为当前业界普遍关注的热点。 2018/11/17 史忠植 高级计算机网络
10
5.2多协议标记交换的发展 由于CIPOA存在著前面提到过的种种不足之处,在它得到广泛应用的同时,各国、各公司的研究人员已经在努力寻找一种更为高效的IPOA技术了。在多协议标记交换标准提出以前,已有几种集成模式的交换技术。它们是Toshiba 的信元交换路由器技术(CSR)、Ipsilon 公司的IP Switching以及Cisco公司的Tag Switching等。 2018/11/17 史忠植 高级计算机网络
11
Toshiba 的信元交换路由器技术(CSR)
东芝公司首先具体描述了一种标记交换的方案,即CSR(Cell Switching Router)技术。该方案首先提出了将ATM交换结构置于IP协议(如IP路由协议和RSVP协议)而不是ATM协议(如Q.2931)的控制之下的思想。籍此,该方案将可以完全取消ATM信令复杂的地址映射过程,而且CSR声称CSR网络中可以同时包容ATM交换机和CSR交换机。 CSR方案虽然开创了标记交换的先河,1994年底1995年初,SCR被提交到了IETF BOF会议。然而,对该方案的研究工作并不深入,该技术的定义也尚不清楚完善,而且至今仍未形成实际的产品。 2018/11/17 史忠植 高级计算机网络
12
Ipsilon 公司的IP Switching
Ipsilon 公司提出了IP交换,丢弃了ATM的面向连接性质,保留IP的无连接性。将ATM的硬件直接与IP综合在一起,IP交换控制器通过GSMP对交换硬件进行访问,用IFMP来管理IP流和ATM VC流的关系。通过对流的分类,长流(如FTP,TELNET,HTTP数据及多媒体音频视频数据等)给以标号由ATM硬件直接交换,短流(如DNS查询、SMTP数据和SNMP查询等)由IP前传,并根据RFC1954对分组进行封装。它的分类和加标记不在网络的入口或出口处,而是在网内的任一中间节点,因此具有局部意文,相当于分段优化 2018/11/17 史忠植 高级计算机网络
13
Cisco公司的Tag Switching
它不是使用流驱动而是控制(拓扑)驱动方式来建立交换机中的转发表,而且该技术将不仅限于在ATM交换机之上使用。 该技术亦形成了RFC文件,然而,与Ipsilon公司不同,Cisco公司致力于将该技术形成国际标准。接着,该技术在各方面的问题都形成了RFC文件,Cisco公司的努力最终导致了IETF MPLS工作组的形成。 2018/11/17 史忠植 高级计算机网络
14
Cisco公司的Tag Switching
Tag交换基于标记Label交换(Swapping)概念。交换边缘路由器让数据单元(分组或信元)携带长度短而固定Tag标记,依此告知交换节点如何处理数据。Tag封装可以有多种方法,如插在2层头和网络层头之间,或作为2层头或网络层头的一部分,因此可以在不同的物理媒体上使用,包括ATM链路、HSSI以及LAN接口等。由于ATM交换也基于标记交换技术,因此Tag交换技术可以很容易地应用至ATM交换。 2018/11/17 史忠植 高级计算机网络
15
Cisco公司的Tag Switching
Tag分发协议(TDP)通过与标准的网络层路由协议相结合,在标记交换网络的各设备间分发Tag标记,因此是基于路由分配Tag,而不是按数据流属性。Tag交换机根据分组携带的Tag标记以及自己所维持的Tag前传信息进行分组前传。对于单播,通过在邻近双方建立TCP连接,然后TDP向相邻节点分发Tag标记,对于Tag堆栈,由BGP的piggy-back 来进行高层次Tag分发。对于组播,没有普遍通用的支持,在PIM环境中,用PIM的控制消息携带Tag绑定信息。Tag交换也支持RAVP,通过对RSVP进行扩展来携带有关Tag绑定信息。对于显式路由(Explicit Routing),则通过在RSVP中加入一个新的源路由对象(source route object)来支持。 2018/11/17 史忠植 高级计算机网络
16
MPLS 1996年, IETF就MPLS召开了BOF(Bird Of a Feather)会议
1997年初,MPLS的章程(Charter)得以通过。 1997年4月,MPLS工作组召开了第一次会议。 1997年11月,形成了MPLS的框架(Framework)文件。 1998年7月,形成MPLS结构(Architecture)文件。 1998年8月,9月间,形成关于MPLS标记分布协议(LDP),标记编码,ATM应用等等十几个Internet文件,MPLS已经基本成形。 1999年内将最终形成IETF关于MPLS的标准,并提出RFC文件。 2018/11/17 史忠植 高级计算机网络
17
5.3 多协议标记交换的网络体系结构 流(flow):从一个特定源发出的分组序列,它们被单点投递或多点投递(unicast/multicast)到特定的目的地,并且有路由和逻辑处理策略需求的相关性。 前传等效类(FEC forward equivalence class):以相同方式(如:通过同一条路径,受到LSR相同的前传处理)进行前传的一组IP分组。 标志(记)(label):一个短而且定长、物理连续、只具有局部意义的标识符,用来标识一个“流”。标志的局部意义一般是指一个标志仅在它被采用的、邻接的两个MPLS结点之间有意义。标志包含有关目标、带宽、延时、源IP地址、第4 层套接字、公级服务的信息。 2018/11/17 史忠植 高级计算机网络
18
5.3 多协议标记交换的网络体系结构 标志交换(label swap):一种基本的链路层转发操作,包括查找流入分组的标志以决定对应的流出标志、封装操作、输出及其他数据信息处理操作。 标志交换路由器(LSR,label switching router):同时支持传统的网络层分组转发的MPLS结点。LSR可以成为MPLS边界结点。 MPLS结点 (MPLS node):可以用标志交换方式转发分组的网络结点。同时,MPLS结点还必须运行相应的MPLS控制协议,运行一定的网络层路由协议。MPLS结点也可以选择支持传统的网络层分组转发。 2018/11/17 史忠植 高级计算机网络
19
5.3 多协议标记交换的网络体系结构 标志交换路径(LSP label switched path):由若干MPLS结点连接起来所组成的路径,在该路径上分组在两MPLS结点之间以标志交换方式转发。 标记堆栈(label stack):一组有序的标记,不同位置的标记代表不同的层次。 标记分发协议(LDP Label Distribution Protocol):一个LSR通知其它LSRs关于标记/FEC绑定信息的一系列过程。LSR用于交换和协商FEC樗联系的控制协议。 MPLS域(MPLS domain):运行MPLS路由选择和分组转发的一组连续结点的集合,这些结点存在于同一个路由或管理域中。 MPLS边界结点 (MPLS edge node):连接一个MPLS域及一个域外结点的MPLS结点。这里所指的域外结点或是不运行于MPLS方式下,或是属于另一MPLS域。 2018/11/17 史忠植 高级计算机网络
20
5.3 多协议标记交换的网络体系结构 MPLS中一个关键部分就是可以将同一个标记(或LSP)分配到多个流上。MPLS支持标记的不同层次的颗粒化(Granularity)。根据对共享标记和最大程度获得交换的好处之间的折中,可以选择不同的颗粒化。常用的颗粒化有: ●IP地址前缀(IP Prefix):具有相同的目的网络地址将共用同一个LSP,与自由方式配合使用,可以使标记一次性完成分配; ●出口路由器(Egress Router):有同一个出口路由器的所有IP地址共用相同的LSP,扩展性最好; ●应用流(Application Flow):扩展性最差,但保证了端到端的交换。 2018/11/17 史忠植 高级计算机网络
21
MPLS的网络模型 2018/11/17 史忠植 高级计算机网络
22
MPLS的网络模型 标记交换路由器LSR是运行MPLS的网络节点,LSR运行MPLS控制协议和第3层路由协议。LSR除支持标记交换外,也可以支持第3层路由和第2层交换功能。LSR可以由运行LDP的各种骨干网路由器或交换机升级而成。 MPLS网络边缘节点位于网络的边缘,从功能上说包括MPLS入口节点和/或MPLS出口节点,提供网络层服务。它可以由运行标记分配协议LDP的路由器或局域网交换机升级而成。 标记分配协议LDP利用第3层路由协议信息,完成MPLS网内节点之间标记与路由捆绑信息的建立和维护。 2018/11/17 史忠植 高级计算机网络
23
MPLS的网络模型 MPLS网络工作时,首先网络节点运行路由协议建立路由表,并通过标记分配协议实现目的地址与标记之间的映射。当来自其他网络的数据流或转发等价类(FEC)进入MPLS网络时,入口边缘节点先为其加上标记,标记与数据流或FEC一起传送。标记交换路由器LSR接收标记包,并根据标记包所携带的标记进行标记交换。标记包到达出口节点后,出口节点对离开MPLS网的标记包去掉标记,恢复进入MPLS网前的数据。 2018/11/17 史忠植 高级计算机网络
24
5.4多协议标记交换的基本原理 2018/11/17 史忠植 高级计算机网络
25
标记交换的具体工作过程 2. 边缘路由器接收分组,完成第三层功能,并给分组加上标记。
1. LDP(标记分布协议)和传统路由协议(OSPF等)一起,建立在LSR中建立路由表和标记映射表。 2. 边缘路由器接收分组,完成第三层功能,并给分组加上标记。 3. 此后,在LSR构成的网络中,LSR对分组不再进行任何第三层处理,只是依据分组上的标记通过交换单元对其进行转发。 4. 在MPLS出口的路由器上,将分组中的标记去掉后继续进行转发。 2018/11/17 史忠植 高级计算机网络
26
标记交换的实例 1. 一个目标地址为128.89.25.4的为标记的IP包到达路由器A (RTA)
2. RTA检查它的LFIB并且用前缀为 /16来对他进行匹配(/16指的是每CIDR16 格网络屏蔽位)。 3. 这个包被标记成标签4后送到前面的下一跳RTB。 4. RTB接收到这个输入标签4并用它到LFIB索引。 5.这个输入标签4被转换成这个输出标签6。 6. 这个包根据LFIB捆绑了相应的第二层信息(如MAC地址)后通过接口0送出。 7.当此包到达RTC,它除去标签后将它作为为标记的IP包向前传送。 继续进行转发。 2018/11/17 史忠植 高级计算机网络
27
5.5 VC合并技术 MPLS通过以下两种方法将网络的连接数从O(n2)降到O(n),从而极大地增加网络的可扩展性。 .对标记不同粗细程度的分类; .流合并(Stream merging)。 2018/11/17 史忠植 高级计算机网络
28
5.5 VC合并技术 这里,RTA和RTD正发送前缀为 /16的数据流. RTB将一个VCI 50捆绑到这个前缀。 VCIs 为40和70的信源进入RTB的缓存队列直到一个完整的AAL5帧形成。 在这个例子中,一个完整的VCI 70帧已经被检测出来同时一个完整的VCI 50帧应景被传输而VCI 40的帧尾还未检测到,所以这些信元都被挡在缓存外,这样就解决了信元交错的问题并且最小程度地利用了VC。 2018/11/17 史忠植 高级计算机网络
29
5.5 VC合并技术 最简单的方法是利用AAL5对信元进行重组,等一个分组的所有信元都到达了以后,再一起发送出去。这样做相当于传统IP网络中路由器的存储转发(Store-and-foward),丢弃了信元交换的所有优点。为了不再需要AAL5重组分组,M. Grossglauser等人提出了SEAM机制(Simple and Efficient ATM Multicast)。SEAM交换机对来自不同VC的分组在输入队列中进行缓存,只将其中一个分组的信元交换至输出VC,当这个分组的EOM信元也交换完毕后,再在输入队列中选择要到同一个输出VC的另一个分组开始传输。相对于第一种方法,SEAM的优点是不需要AAL5对分组进行重组,而且在传输一个分组的信元时,不必等此分组所有的信元都到了输入队列中才进行交换,当输出VC被占用的时候,信元进行存储,当输出VC空闲的时候,它们可以立即传输。 2018/11/17 史忠植 高级计算机网络
30
缺点和需要优化的问题 ①对输入缓存需求很大; ②当正在传输的分组丢失了EOM信元时,其它等待的VC中的信元将被阻塞。解决的办法是设定一个时间期限的参数。这个参数的大小由链路的容量、当前VC的带宽和网络当时的负载大小决定。如何具体设定这个参数的值非常重要,因为它对输入缓存的需求以及交换机的性能有非常大的影响; ③一个分组的信元由于输出VC忙,而在输入队列中等待时,将可能会影响此输入端口其它无冲突的信元的交换。 2018/11/17 史忠植 高级计算机网络
31
VP合并 采用VP合并(VP Merging),不同的流使用不同的VCI,利用交换机的VP合并能力,这样既不需要额外的缓存,也不引入额外的时延。到达交换机的来自不同流的信元可以直接进行交换,因为它们的VCI不同,不会有信元交错的问题产生。这种方式也存在以下问题: ①如何分配VCI空间以保证VCI的唯一性。已经提出几种可能的方案:预先配置;在ATM交换机中扩展硬件,通过动态改变避免冲突来保证VCI的唯一性;制定一种新的协议机制来实现等等。具体选用其中的一种或几种还有待进一步研究; ②VPI/VCI的使用效率很低,限制了网络的可扩展性; ③在不支持SVP的公用ATM网络中无法实现。 2018/11/17 史忠植 高级计算机网络
32
DIDA ATM论坛的Calvigance等人还提出了一种很类似的机制:动态分配标识符机制(DIDA:Dynamic Identifier Assignment)。DIDA不需要对VCI进行全局性分配,对每一个到来的分组,DIDA在其VCI域插入一个局部唯一的标识符。在其它实现VP合并的机制中,VCI都是表示分组的来源(即:对于同一个目的地,一个源发送的所有分组的VCI都是相同的),而DIDA中却用它来表示一个分组(即:一个源发送的不同分组可以有不同的标识符)。DIDA的优点是不存在对VCI空间分配的问题,只需对正在传送的分组分配标识符,当此分组传送完毕后,该标识符可以回收再分配 2018/11/17 史忠植 高级计算机网络
33
阱树机制 Cohen等人提出一种阱树机制(The Sink Tree Paradigm),主要面向ATM局域网。在ATM局域网中,所有的ATM交换机用某种交织的形式互连,每个交换机连着一些主机。当主机之间互传分组时,通过在VPI/VCI域中同时携带源/目的交换机标识符和目的主机标识符,来保证在信元交错的情况下可以进行分组重组。由于所有的信息都在VPI/VCI域中,因此可用空间很少,扩展性很差。实际上,交换机标识符为8bits,主机标识符为5bits,这就意味着局域网中最多可以有28=256个交换机,每个交换机可以连接25=32个主机,这对于局域网而言已经足够,但无法扩展到大型网络中去。另外,此方法还需要完全改变ATM的前传规则,通过对目的交换机标识符来前传信元,而不是简单的标记交换。 2018/11/17 史忠植 高级计算机网络
34
AAL5X Baldi等人从另一个角度来看待VC合并这个问题,标准的AAL5没有提供如何分辨同一分组中不同信元的机制,他们则通过扩展AAL5(AAL5X:ATM Adaptation Layer 5 eXtension)使它能提供某种识别机制。主要的改变是在SAR子层(Segmentation And Reassembly)加入2个字节的MID(Message IDentifier)域,对于同一个分组(即同一个CPCS-PDU)而言,通过SAR子层而形成的信元的MID值都是一样的,这个值由SAR子层随机决定,范围是[0~65535]。即使在中间ATM节点处发生了信元交错,接收方的AAL5X的SAR也可以通过MID来缓存不同分组的信元,直到相应MID的EOM信元到达。当某个分组的EOM信元丢失时,接收方将无法回收此分组先前到达的信元所占用的缓存,通过设定一个时间间隔参数,如果超过这段时间还未有信元到达,则将此MID所占用的缓存释放。 2018/11/17 史忠植 高级计算机网络
35
AAL5X ①需要修改发送方和接收方的AAL5层的发送和接收机制,一般来说是网络边界设备或直接连到网络上的主机; ②MID占用了2个字节,使AAL5的传输效率有所下降; ③原有AAL5可以正好用一个信元传输TCP控制消息,如确认信息(IP头20字节,TCP头20字节以及AAL5 CS-PDU尾部8个字节),但AAL5X的有效负荷仅46字节,因此传输TCP的控制信息时,效率下降了一半; ④MID为随机分配,因此有可能不同发送方的不同分组采用相同的MID值,此时AAL5X无法分辨,这称为MID冲突(MID Collision)。基于简单化,文献[1]未提出防止MID冲突的机制,因此这将造成分组丢失; 2018/11/17 史忠植 高级计算机网络
36
AAL5X ⑤为有效回收缓存而设定的时间间隔参数对性能和缓存需求影响很大,这类似于SEAM机制中的时间间隔参数。这个参数至少不能小于网络最大传输时延抖动,否则有可能信元并未丢失而仅因为时延而被抛弃。文献[1]对此参数的研究还不完善,如并没有研究当参数小于网络最大时延抖动时对网络的影响如何; ⑥接收方需要极大的缓存。需要对每个到来的MID设置不同的缓存队列,每个队列要能缓存整个CPCS-PDU,而CPCS-PDU的理论最大值为65,543字节。即使在IP over ATM环境中,最大传输单元(MTU)为9,180字节,文献[1]研究表明,当发送方为4,000时,需13M缓存。因此,限制了它在大型网络中的应用。 2018/11/17 史忠植 高级计算机网络
37
IETF的方案 根据MPLS的需求可知,MPLS面向的是Internet的主干网,在ATM中对流合并的基本要求是扩展性好,对VPI/VCI利用率高,不改变ATM的前传规则,特别是不能修改VPI/VCI的结构和语义,前面几种机制均不能完全满足这些要求。因此IETF工作组在1998年10月推出的草案[102]中提出了一种机制,并初步研究了它的性能[143]。它不像SEAM那样在输入端缓存分组,而是在输出端缓存,这样就不再要求ATM交换机必须对一个分组的所有信元以一种原子方式(Atomic Manner)处理,并避免了排头阻塞的问题。它允许ATM交换机独立地交换每个信元,通过在输出端加入几部分扩展的硬件(重组缓存、合并单元和输出缓存),来完成VC合并,并且完全独立于ATM交换机的交换部分。这样做的优点是不修改ATM的前传规则、不修改VPI/VCI结构、不修改AAL5,初步研究结果表明,与大多数人期望相反,对缓存的要求很小。 2018/11/17 史忠植 高级计算机网络
38
今后还需改进的地方 ①VC合并中如何对QoS进行支持,当VC合并后,不是对某个VC进行QoS的支持,而是对一组VC的QoS的支持; ②MPLS工作组认为在直接路由LPSs中是否支持流合并还有待进一步研究; ③如何支持VP合并、VC合并以及非合并LSRs间的互操作性,这主要涉及到采用不同方法的节点对标记分配的需求量不一样; ④MPLS允许LSRs不支持流合并,问题是此类LSR如何进行标记分配,因为对于某个特定的FEC,它无法知道上游(Upstream)有多少节点,一种可行的方法是采用下游按需分配的方式; ⑤不支持VC合并的ATM交换机必须提供某种防止和检测路由环的机制,否则会造成螺旋线现象,极大地消耗标记,因为环中的流无法合并。 2018/11/17 史忠植 高级计算机网络
39
5.6 路由环路控制 MPLS提供了两种路由选择机制:hop by hop和显式路由。 hop by hop是传统的路由选择机制,它由每个hop上的LSR决定下一跳的路由。MPLS之所以保留了这种传统的路由选择机制,是考虑到以下几个方面的原因:还存在一些传统的网络需要这种路由选择机制;安全过滤设备(如防火墙)需要第三层路由;MPLS需要和非MPLS的网络保持兼容。 2018/11/17 史忠植 高级计算机网络
40
5.6 路由环路控制 显式路由使用label完成标记交换。它由LSP的入节点或出节点决定路由,而LSP的转接节点只需进行标记交换,无须考虑路由。这样网络可以大大提高转发效率,而且,由于路由只由少数节点完成,运营商可以方便地制定统一的路由策略和进行整体的业务量规划。 显式路由是MPLS在路由技术上的一个重大进步,但是人们不能采用它作为唯一的路由选择机制,这也就带来很多问题。例如当在一条LSP中混用两种路由选择机制时,网络可能会造成路由循环。但是如果一条LSP中有一个或几个节点不支持显式路由,则该LSP必须使用hop by hop方式。因此,MPLS要求LSR必须至少支持hop by hop路由选择方式。 2018/11/17 史忠植 高级计算机网络
41
传统路由循环控制 有2 种方法来处理路由环:检测和防止。对于检测方式,允许路由环存在,但MPLS将会检测到它并进行处理(删除或弃用);对于防止方式,MPLS将提供机制来杜绝路由环的生成。 传统的路由采用TTL(Time To Live)字段保证在出现循环时,循环的数据包会自动被丢弃。MPLS也延用了这种方式。 在MPLS的封装shim格式中,保留了TTL字段。shim的格式如下: shim由多个标记栈条目组成,shim介于第二层和第三层之间,用S(栈标识符)标识栈底 ,第二层帧格式(如ATM的VPI/VCI)中承载栈顶的信息。 2018/11/17 史忠植 高级计算机网络
42
传统路由循环控制 2018/11/17 史忠植 高级计算机网络
43
标记分发协议(LDP) MPLS主要由标记分发协议来处理路由环。LDP消息有四种类型:发现消息用来在网络中公布、维护LSR的存在性;会话消息用于在LSR 对等节点之间建立、维护和终结会话;通告消息用来创建、改变和删除标记和FEC 之间的映射;通知消息用于提供报告信息和指示错误。 2018/11/17 史忠植 高级计算机网络
44
标记分发协议(LDP) 2018/11/17 史忠植 高级计算机网络
45
环路防止算法 扩散(diffusion)算法,对于某一个流,当某个节点的下一跳发生变化时,首先用diffusion算法来判定是否会产生路由环,在执行完毕之前,仍沿用旧的路径来发送数据; 基于线程(thread)的算法。当一个节点(比如入口节点)想建立LSP或它的下一跳发生改变时,它向下游节点发送一个thread,thread由唯一的颜色(color)、跳数(hop count)和TTL三部分组成,如果节点收到了由它先前发出的thread,则说明回路产生,如果它收到出口节点发回的确认消息,则说明不会形成回路。 2018/11/17 史忠植 高级计算机网络
46
扩散算法 当结点Ru 从结点Rd接收一个查询消息,执行下列算法:
IF 结点Ru 的下一跳不是 结点Rd,THEN 结点Ru马上给结点Rd返回一个ACK; ELSEIF 没有流入标记, 结点Ru结点Ru马上给结点Rd返回一个ACK; ELSEIF 结点Ru发现自己地址包含在接收查询消息的路矢适量中,结点Ru马上给结点Rd返回一个NAK;结点Ru停止流入标记和流出标记之间的标记交换; ELSEIF 结点Ru将自己的地址加入接收查询消息的路矢适量中,向它的每一个上游结点传递此查询消息,并等待每一个查询消息的确认消息。 2018/11/17 史忠植 高级计算机网络
47
扩散算法 IF 结点Rd从结点Ru接收到一个确认ACK消息,THEN
IF 没有“明显”(outstanding)的查询消息与此ACK相匹配, 结点Rd 只是丢弃这个ACK; ELSE 去掉与查询消息相匹配的“明显”状态; IF 没有其它“明显”的查询消息,结点Rd向下游结点返回一个ACK,允许流入标记和流出标记之间的开始标记交换。 ELSE IF 当结点Rd从结点Ru接收到一个非确认NAK消息,THEN IF 没有明显的查询消息与此NAK相匹配, 结点Rd 只是丢弃这个NAK; ELSE 去掉与查询消息相匹配的“明显”状态;去掉所有明显查询状态,向下游结点返回一个NAK。 2018/11/17 史忠植 高级计算机网络
48
基于线程(thread)的算法 基于线程(thread)的算法也是一种“染色”(colored)机制。“染色线程”(Colored Thread CT)算法的核心是沿着LSP下游方向传送一个给每一链接染色的程序。颜色包括两个定长对象;产生颜色的结点地址和在生成结点中唯一的本地标识。当触发染色程序的结点从它的下游结点接收一个确认消息时,一个无环路LSP就建立起来了。在染色程序中,向下游传送被当作一个线程(thread)的一组属性(颜色、跳数、TTL)。一个在下一跳发现变化的结点生成一种颜色,并将它从流出链路传递到下一跳。从流入链路接收颜色的结点从流出链路向下一跳或者传递此颜色,或者生成一种新颜色并传递它。生成一种新颜色的条件是接收流入链路是新的而且相应流出链路已存在。当接收流入链路是一个新链路并且流出链路在结点中已经存在时,结点将生成一种新颜色并传递它;否则只传递接收的颜色。染色程序向下游传送直到LSP成为一个无环路径或者发现环路。无环路径时,一个确认消息将一跳一跳地返回上游结点;有环路时,染色程序停止没有确认消息返回。 2018/11/17 史忠植 高级计算机网络
49
比较 染色算法中,为一个特定LSP改变下一跳的结点必须只与新路径中它和LSP出口边缘结点之间的结点交互。而在扩散算法中,结点必须不是在它和LSP出口边缘结点之间的结点开始一个扩散计算。这样使得染色算法更具可靠性。如果扩散计算时,那些不在路径上的结点也可能延误路径的建立。在染色算法中,影响路径建立的结点只是路径中的结点。 染色消息既适合下游分配方式,又适合下游按需分配方式。而扩散算法只符合下游分分配方式。染色算法是可以重试快速获得路径的配置。而扩散算法获得路径的配置时间较长,因为结点要与上游所有结点交互。如果新路径有L3环路,染色算法和路径矢量算法一样,可以继续使用旧路径 2018/11/17 史忠植 高级计算机网络
50
5.7 MPLS的路由技术 2018/11/17 史忠植 高级计算机网络
51
5.7 MPLS的路由技术 由区域1、区域2、区域3构成的MPLS网络,它们的区域边界路由器分别为R0和R1,R2和R3,R4和R5,区域间的连通性通过边界网关协议(BGP)交换信息来管理。图中没有画出区域1和区域3的内部路由器,区域2的内部路由器为R21,R22,R23。网络各区域内部由内部路由协议提供路由。 这里有两个层次的寻径,如OSPF可用于区域2内部的寻径,即路由器R2,R21,R22,R23,R3运行OSPF计算区域2内的路由。BGP用于区域1、区域2、区域3之间的边界寻径,即路由器R0,R1,R2,R3,R4,R5运行BGP确定区域之间的路由。 2018/11/17 史忠植 高级计算机网络
52
5.8 MPLS网络性能 1. 转发速度快 2. 采用显式路由技术 3. 流量管理 4. 服务质量 2018/11/17
1. 转发速度快 2. 采用显式路由技术 3. 流量管理 4. 服务质量 2018/11/17 史忠植 高级计算机网络
53
5.9 MPLS的流量工程 流量工程的目标就是使网络的运营更加高效和可靠,同时优化网络资源的利用。流量工程可以帮助互联网的网络运营者更合理地运用网络资源,降低网络运营成本,从而具有更强的竞争力。因此,流量工程已经成为大型ISP网络运营中不可缺少的一个重要功能。 2018/11/17 史忠植 高级计算机网络
54
流量工程的工作原理 流量工程的功能模块由两个子模块组成,性能监视系统和网络管理配置系统。要想实现业务量的合理分布,首先必须知道业务量是如何分布的,也就是说,需要在每个网络分枝点对网络上实时传递的业务流进行统计,同时还需要统计网络资源的使用状况。这个统计功能模块是流量工程的一个重要组成,称为性能监视系统。有了实时获取的网络状态信息,根据一些预先设置的调整策略,流量工程通过它的另一个重要组件——网络配置管理系统对网络进行相应调整,可调整的内容包括: * 业务量管理参数 * 与路由选择相关的参数 * 与网络资源相关的属性和限制 2018/11/17 史忠植 高级计算机网络
55
5.10基于传统ATM骨干网的MPLS移植技术 在ATM骨干网上实现MPLS可以采用以下几种方案. ① 放弃ATM论坛的控制平面,用MPLS的LDP作为ATM的信令协议,直接将MPLS的标记映射为ATM的端口及VPI/VCI.Ipsilon公司的IP交换就是基于这种方案. ② 建立一套硬件系统,使ATM论坛和MPLS的控制平面都能在其上运行,但彼此互不影响.也就是说,该硬件可以工作于ATM交换机或MPLS-LSR方式,具体的工作方式取决于所采用的控制平面,称之为SIN(Ship In the Night)工作模式. ③ 与SIN工作模式类似,只是将ATM和MPLS的控制平面集成在一起,MPLS可以利用ATM的控制平面建立SVC.Toshiba公司的信元交换路由器CSR建议基于这种方案,称之为集成模式. 2018/11/17 史忠植 高级计算机网络
56
5.10基于传统ATM骨干网的MPLS移植技术 在ATM骨干网上实现MPLS可以采用以下几种方案. ① 放弃ATM论坛的控制平面,用MPLS的LDP作为ATM的信令协议,直接将MPLS的标记映射为ATM的端口及VPI/VCI.Ipsilon公司的IP交换就是基于这种方案. ② 建立一套硬件系统,使ATM论坛和MPLS的控制平面都能在其上运行,但彼此互不影响.也就是说,该硬件可以工作于ATM交换机或MPLS-LSR方式,具体的工作方式取决于所采用的控制平面,称之为SIN(Ship In the Night)工作模式. ③ 与SIN工作模式类似,只是将ATM和MPLS的控制平面集成在一起,MPLS可以利用ATM的控制平面建立SVC.Toshiba公司的信元交换路由器CSR建议基于这种方案,称之为集成模式. 2018/11/17 史忠植 高级计算机网络
57
5.10基于传统ATM骨干网的MPLS移植技术 2018/11/17 史忠植 高级计算机网络
58
5.11 MPLS支持虚拟专网 虚拟专网(Virtual Private Network,VPN)是指一种利用公网的网络资源,为特定用户提供类似于企业专网的服务,虚拟专网的用户可以从不同的地点,以不同的方式通过公网与本专网的用户或服务器进行通信。在用户看来,就好象是接入了一个本企业或团体的专网一样,虽然实际上,该专网完全是由公网构建起来的,只是为专网提供了与公网的相对隔离性而已。通过这种方式,可以大大节省企业或团体建设专网的在资金与人力上的开支,将网络服务进一步集中于网络运行商,从而更加统一化,专业化,高效化。图5.16所示为一个提供多个VPN服务的网络拓扑图. 2018/11/17 史忠植 高级计算机网络
59
5.11 MPLS支持虚拟专网 2018/11/17 史忠植 高级计算机网络
60
5.11 MPLS支持虚拟专网 第二层VPN是利用一条或数条ATM/FR虚拟电路去组成客户的专网,此方式优于传统DDN电路连成的专网,原因是ATM/FR技术本身具备统计复用的特性。客户可利用同一条物理线路或链路来传递不同等级的业务信息。 如客户的ATM/FR虚电路并未构成全网状,客户则必须选择一个或多个节点来汇接这些虚电路。相对而言,基于第二层的VPN(利用ATM/FR VCCs)的不足点是其扩展性。随着VPN的用户数目增加,VCC的个数将快速的增加,用户的现场数目则是另一隐患,须知全网间(Fully Meshed VCCs)是不符合客户利益,然而聚集于汇接点的VCCs相互间不可复用带宽的特性,汇接点的用户端设备性能都使网络的扩展性不易提高。 2018/11/17 史忠植 高级计算机网络
61
5.11 MPLS支持虚拟专网 在基于MPLS的VPN中,服务提供商为每个VPN分配了一个标识符,称作路由标识符(RD),这个标识符在服务提供商的网络中是独一无二的。转发表中包括一个独一无二的地址,叫作VPN-IP地址,是由RD和用户的IP地址连接形成。VPN-IP地址在网络中是独一无二的,地址表存储在转发表中。 BGP是一个路由信息分布协议,它利用多协议扩展和共有属性来定义VPN的连接性。在基于MPLS的VPN中,BGP只对同一个VPN的成员发布信息,通过流量分离来提供基本的安全性。因为数据是通过使用LSPs来转发的,LSP定义一条特定的路径,不可以被改变,以保证其安全性。这种基于标签的模式可与帧中继和ATM一样提供保密性。服务提供商,而不是用户,应用VPN时将一个特定的VPN与接口联系起来,数据包的转发是由用于入口的标签决定的。既然不可能spoof端口,MPLS VPN就不易受到spoof的攻击。 2018/11/17 史忠植 高级计算机网络
62
5.11 MPLS支持虚拟专网 VPN转发表中包括与VPN-IP地址相对应的标签。通过这个标签将数据传送到相应地点。既然标签代替了IP地址,用户可以保持他们的专用地址结构,无需进行网络地址翻译(NAT)来传送数据。根据数据入口,交换机选择一特定的转发表,该表中只包括在VPN中有效的目的地址。为了创建Extranet,服务提供商在VPN之间要明确配置可达性。 这种解决方案的优势在于服务提供商可以通过相同的网络结构来支持许多种VPN,并不需要为每一个用户建立单独的网络。而且,这种方案将IP VPN的能力内置于网络本身,所以,服务提供商可以为所有租用者配置一个网络来提供专用的IP网服务,如Intranet和Extranet,而无需管理隧道或VC mesh。QoS可为每个VPN提供特有的业务政策,而且QoS服务可与基于MPLS的VPN无缝结合,因为两者都是基于标记的技术。 2018/11/17 史忠植 高级计算机网络
63
5.11 MPLS支持虚拟专网 2018/11/17 史忠植 高级计算机网络
64
MPLS VPN的工作过程 (1)用户端的路由器(CE)首先通过静态路由或BGP将用户网络中的路由信息通知提供商路由器(PE),同时在PE之间采用BGP的Extension传送VPN-IP的信息以及相应的标记(VPN的标记,以下简称为内层标记),而在PE与P路由器之间则采用传统的IGP协议相互学习路由信息,采用LDP协议进行路由信息与标记(骨干网络中的标记,以下称为外层标记)的绑定。到此时,CE,PE以及P路由器中基本的网络拓扑以及路由信息已经形成。PE路由器拥有了骨干网络的路由信息以及每一个VPN的路由信息。 (2)当属于某一VPN的CE用户数据进入网络时,在CE与PE连接的接口上可以识别出该CE属于哪一个VPN,进而到该VPN的路由表中去读取下一跳的地址信息,同时,在前传的数据包中打上VPN标记(内层标记)。这时得到的下一跳地址为与该PE作Peer的PE的地址,为了达到这个目的端的PE,此时在起始端PE中需读取骨干网络的路由信息,从而得到下一个P路由器的地址,同时采用LDP在用户前传数据包中打上骨干网络中的标记(外层标记)。 2018/11/17 史忠植 高级计算机网络
65
MPLS VPN的工作过程 (3)在骨干网络中,初始PE之后的P均只读取外层标记的信息来决定下一跳,因此骨干网络中只是简单的标记交换。 (4)在达到目的端PE之前的最后一个P路由器时,将外层标记去掉,读取内层标记,找到VPN,并送到相关的接口上,进而将数据传送到VPN的目的地址处 2018/11/17 史忠植 高级计算机网络
66
MPLS VPN拥有优点 (1)VPN连接配置简单,对现有骨干网络没有压力; (2)对现有用户的要求为0,用户不需要作任何改动,用户加入VPN的配置也很简单; (3)网络可扩展能力很强; (4)VPN用户可以延用原有的专用地址,不需要作任何修改,在骨干网络采用VPN-ID,可以保持全网的唯一性; (5)易于提供增值业务,如不同的COS。 2018/11/17 史忠植 高级计算机网络
67
5.12 MPLS的最新研究进展 1.RSVP与MPLS 已有人提出通过直接路由将RSVP和MPLS结合起来,并可以用于流量工程(Traffic engineering)。草案[102]规定了如何对RSVP流进行标记的分配和绑定,并通过RSVP的消息(PATH和RESV消息)来传送相应信息,其中需要解决的问题有:当ATM不支持流合并时,要为每个发送方分配一个标记,此时如何将一组标记作为整个来进行资源预留;如何在ATM中进行TTL处理;如何在共享媒质上进行标记分区等。 当RSVP路径因某种原因发生故障时,RSVP将采用普通的Best-effort路由来前传,而这与流量工程的目的相矛盾,因为当一部分流量采用预定的路径时,另一部分流量却采用动态路由。而且,当一条路径的一部分采用预定的路径,而其它部分采用动态逐跳路由时,有可能出现永久路由环 2018/11/17 史忠植 高级计算机网络
68
5.12 MPLS的最新研究进展 2. MPLS在共享媒质中 现已提出两种方案,一种是将Shim头放在MAC头和网络层头之间,当数据在共享媒质中前传时,不使用Shim头,而仅在共享媒质的边界路由器使用。另一种机制是通过重新定义目的MAC地址的语义,将标记编码到MAC头中,这样就不需要像第一种方案那样要对帧进行分段,而且网桥可以具有路由功能,但它的缺点是无法和现有的LAN互通 2018/11/17 史忠植 高级计算机网络
69
5.12 MPLS的最新研究进展 3. 标记与标记分配技术 MPLS中使用标记进行交换.标记是一个简短的、固定长度的、具有本地意义的标识符,用来标识待交换的一个流或转发等价类FEC。来自多个上游流路由器到相同目的地的数据流或FEC可共享标记,从而节省标记资源。一个带有已编码标记的标记包可以有一个或多个标记,形成“后进先出”的标记栈。深度为m的标记栈,栈顶的标记为m级标记。MPLS中标记转发通道由标记栈顶的m级标记决定。 MPLS网的入口节点将标记栈编码后,与数据包一起传送。标记包经标记交换路由器到达出口节点。出口节点对标记包进行解码,恢复编码前的未标记包。 2018/11/17 史忠植 高级计算机网络
70
谢谢! THANK YOU 2018/11/17 史忠植 高级计算机网络
Similar presentations