ptn技術(shù)-mpls介紹及mpls原理_第1頁
ptn技術(shù)-mpls介紹及mpls原理_第2頁
ptn技術(shù)-mpls介紹及mpls原理_第3頁
ptn技術(shù)-mpls介紹及mpls原理_第4頁
ptn技術(shù)-mpls介紹及mpls原理_第5頁
已閱讀5頁,還剩104頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

多例衩標(biāo)祀金換

趙廣

目錄

1.MPLS技術(shù)基礎(chǔ)..............................................................4

1.1.MPLS轉(zhuǎn)發(fā).........................................................4

1.1.1基本概念........................................................4

1.1.2標(biāo)記、標(biāo)記棧與標(biāo)記棧編碼.......................................7

1.2.標(biāo)記分發(fā)協(xié)議........................................................9

1.1.3標(biāo)記分發(fā)協(xié)議概述................................................9

1.1.4LDP........................................................................................................................11

LDP發(fā)現(xiàn)...................................................12

LDP會(huì)話建立和維護(hù).........................................14

標(biāo)記分發(fā)和管理.............................................17

1.3.案例分析...........................................................23

1.1.5配置實(shí)現(xiàn).......................................................25

1.1.6標(biāo)記轉(zhuǎn)發(fā)觀察...................................................25

1.1.7LDP協(xié)議觀察..................................................27

1.4.小結(jié)................................................................32

1.5.復(fù)習(xí)題..............................................................32

2.BGP/MPLSVPN...........................................................................................................................34

2.1.VPN概述...........................................................34

2.2.BGP/MPLSVPN框架結(jié)構(gòu)............................................37

2.3.BGP/MPLSVPN基本原理............................................39

2.3.1.多協(xié)議BGP擴(kuò)展................................................39

2.3.2.BGP/MPLSVPN控制信息建立過程................................41

2.4.BGP/MPLSVPN常見應(yīng)用............................................46

2.4.1.Internet接入....................................................46

2.4.2.跨ASVPN提供.................................................47

2.4.3.多層次VPN提供................................................48

2.5.案例分析............................................................51

2.5.1.配置實(shí)現(xiàn).......................................................52

2.5.2.轉(zhuǎn)發(fā)控制信息分析...............................................61

2.5.3.常見應(yīng)用需求...................................................65

2.6.小結(jié)................................................................66

2.7.復(fù)習(xí)題..............................................................66

3.MPLSL2VPN...............................................................................................................................67

3.1.MPLSL2VPN概述..................................................67

3.2.LDP方式MPLSL2VPN...........................................................................................68

3.3.BGP方式MPLSL2VPN...........................................................................................74

、八>a

刖s

在一個(gè)IP報(bào)文從源被送到目的的過程中,由于IP的無連接特性,每一個(gè)沿途的路由器

都必須獨(dú)立的為這個(gè)報(bào)文確定下一跳。抽象的,確定下?跳包含兩個(gè)工作:第一個(gè)工作是分

析這個(gè)報(bào)文的頭部,根據(jù)其目的地址(或者還有其他信息如DSCP值),確定這個(gè)報(bào)文屬于對

于這個(gè)路由器而言的某個(gè)轉(zhuǎn)發(fā)等價(jià)類(FEC:ForwardingEquivalenceClass)o轉(zhuǎn)發(fā)等價(jià)類是指

在某個(gè)路由器看來應(yīng)該采取同樣轉(zhuǎn)發(fā)行為(至少包含下一跳)的所有報(bào)文的全體。第二個(gè)工

作就是根據(jù)這個(gè)FEC確定下一跳等轉(zhuǎn)發(fā)行為。

MPLS(MultiLabelSwitching)被發(fā)明的初始動(dòng)機(jī)就是為了改進(jìn)這個(gè)過程中第一步的效

率。MPLS在一個(gè)報(bào)文進(jìn)入網(wǎng)絡(luò)時(shí)即決定其所屬FEC,并為這個(gè)包打上一個(gè)“標(biāo)記”決定其

所屬的FEC。這樣,中間轉(zhuǎn)發(fā)的路由器無需再去分析特定報(bào)文的包頭信息,只需要讀這個(gè)

標(biāo)記就知道它所屬FEC,進(jìn)而也就決定了這個(gè)包轉(zhuǎn)發(fā)方式了。在MPLS出現(xiàn)之前,有許多

類似的技術(shù),MPLS是1ETF統(tǒng)一這些技術(shù)的結(jié)果。有關(guān)MPLS這個(gè)名詞出現(xiàn)的過程,您可

以在[1]中找到對這?有趣歷史的一些描述。

MPLS對于轉(zhuǎn)發(fā)效率的改進(jìn)事實(shí)上就是所謂用交換的技術(shù)實(shí)現(xiàn)三層數(shù)據(jù)包的轉(zhuǎn)發(fā),上

個(gè)世紀(jì)最后幾年出現(xiàn)的被稱為三層交換或是快速路由的技術(shù)更加簡潔地達(dá)到了同樣的目的。

但是MPLS目前仍然存在并且事實(shí)上已經(jīng)成為核心網(wǎng)絡(luò)路由器必不可少的一個(gè)基本組件。

其根本原因是在MPLS基礎(chǔ)上可以簡潔地實(shí)現(xiàn)如下幾個(gè)對于運(yùn)營商網(wǎng)絡(luò)致關(guān)重要的應(yīng)用,

典型的如:基于有連接的QoS保障、VPN、流量工程。

我們會(huì)在相應(yīng)的章節(jié)仔細(xì)研究這些主題。但是現(xiàn)在你就可以理解使得這些應(yīng)用可能的最

主要的原因是:

MPLS轉(zhuǎn)發(fā)標(biāo)記是在數(shù)據(jù)傳輸之前就建立好的,換句話說,也就是有連接的,這就決

定了它和ATM技術(shù)一樣可以具備很好的QoS特性。

MPLS的轉(zhuǎn)發(fā)決定僅僅決定于輸入報(bào)文中的標(biāo)記,這樣中間路由器就可以對報(bào)文網(wǎng)絡(luò)

層信息一無所知的情況下進(jìn)行報(bào)文轉(zhuǎn)發(fā),這是在公網(wǎng)上傳輸私網(wǎng)數(shù)據(jù)的VPN技術(shù)所必須的。

決定MPLS轉(zhuǎn)發(fā)的標(biāo)記的分配可以不僅僅決定于網(wǎng)絡(luò)地址前綴,這就為流量工程應(yīng)用建立

了一個(gè)很好的平臺(tái)。

歷史上曾經(jīng)存在的關(guān)于MPLS價(jià)值的爭論現(xiàn)在業(yè)已風(fēng)平浪靜。對于運(yùn)營商網(wǎng)絡(luò)和大型

企業(yè)網(wǎng)而言,MPLS已經(jīng)被廣泛認(rèn)為屬于具有戰(zhàn)略意義的基礎(chǔ)設(shè)施。盡管MPLS的某些應(yīng)用

仍然未能全面部署,但是目前已經(jīng)成熟的應(yīng)用如L3VPN已經(jīng)開始讓運(yùn)營商從MPLS技術(shù)上

獲得回報(bào)。

目前已有的經(jīng)驗(yàn)顯示,在全球范圍內(nèi)大規(guī)模部署MPLS對于網(wǎng)絡(luò)研究、設(shè)計(jì)、建設(shè)和

維護(hù)人員都會(huì)是一個(gè)挑戰(zhàn)。本書的主要目的是希望能夠幫助這些從業(yè)人員從容面對這個(gè)挑

戰(zhàn)。

具體的,本書力求達(dá)到的目標(biāo)為:

?清晰解釋和MPLS相關(guān)的主要協(xié)議。

?介紹MPLS的主流設(shè)備實(shí)現(xiàn)方法及用戶接口。

?描述具體網(wǎng)絡(luò)設(shè)計(jì)過程。

本書力求做到自包含,不過假設(shè)您對于IP網(wǎng)絡(luò)應(yīng)該有一個(gè)基本的了解,已經(jīng)懂得關(guān)于

路由器的基本常識(shí)。如果您閱讀過華為網(wǎng)絡(luò)認(rèn)證中級教材路由和交換部分,閱讀本書肯定不

會(huì)有技術(shù)障礙。

總體上,本書包含如下幾個(gè)部分:

MPLS技術(shù)概述

這部分會(huì)介紹力圖回答兩個(gè)問題:

?一個(gè)普通報(bào)文進(jìn)入MPLS網(wǎng)絡(luò)以后和從MPLS網(wǎng)絡(luò)出來以前,沿途的路由器是如

何依據(jù)預(yù)先建立起來的控制信息對這個(gè)報(bào)文進(jìn)行處理的?

?這些“預(yù)先建立起來的控制信息”是如何建立起來的?

如果您對于IP地址、路由等概念有基本的了解即可以順利閱讀本章。本章是以后任意

一章的基礎(chǔ)。

L3VPN

這一章的主要內(nèi)容是介紹如何在一個(gè)1SP如何利用其MPLS骨干網(wǎng)絡(luò)為她的客戶提供

網(wǎng)絡(luò)層意義上的VPN服務(wù)。這里將會(huì)討論ISP網(wǎng)絡(luò)和客戶網(wǎng)絡(luò)中處于不同角色的設(shè)備如何

建立控制信息以及如何利用這些控制信息來進(jìn)行轉(zhuǎn)發(fā)數(shù)據(jù)流。這里也會(huì)討論一個(gè)具體的網(wǎng)絡(luò)

案例。

這一章的內(nèi)容除了需要具備本書第一章的基礎(chǔ)以外,還需要您熟悉BGP路由協(xié)議和

OSPF路由協(xié)議的基本操作和華為路由器上的配置方法。

MPLSL2VPN

這章將介紹一個(gè)ISP如何利用她的MPLS骨干網(wǎng)絡(luò)為她客戶提供數(shù)據(jù)鏈路層意義上的

VPN服務(wù),就像傳統(tǒng)的ATM或FrameRelay網(wǎng)絡(luò)一樣。這里將會(huì)討論2種不同的實(shí)現(xiàn)方法:

Martini方法和Kompella方法。

如果有第一章和BGP的基礎(chǔ),MPLSL2VPN內(nèi)容的學(xué)習(xí)肯定不會(huì)存在障礙。當(dāng)然,如

果您有2層傳統(tǒng)VPN的經(jīng)驗(yàn),也許閱讀起來會(huì)輕松一點(diǎn)。

MPLS流量工程

MPLS體系結(jié)構(gòu)支持依據(jù)預(yù)先指定的中間節(jié)點(diǎn)建立轉(zhuǎn)發(fā)路徑,這個(gè)特性使得流量工程成

為可能。在這里將介紹控制流量工程各種應(yīng)用在MPLS框架下的實(shí)現(xiàn)和具體的案例分析。

考慮到流量工程應(yīng)用目前還沒有得到廣泛應(yīng)用,所以這一章內(nèi)容除了需要第一章的基礎(chǔ)以外

我把它做成了自完備的。

MPLSQoS

傳統(tǒng)的IP網(wǎng)絡(luò)很難為客戶提供和ATM--樣健壯的QoS。其根本原因是因?yàn)锳TM是有

連接的。而MPLS體系結(jié)構(gòu)恰好為IP建立了一個(gè)堅(jiān)實(shí)的有連接的基礎(chǔ)設(shè)施,所以部署了

MPLS的IP網(wǎng)絡(luò)可以很好的實(shí)現(xiàn)QoS。這一章將會(huì)討論差分模型的QoS是如何在MPLS網(wǎng)

絡(luò)中如何實(shí)現(xiàn)的。

這一章除了需要第?章的基礎(chǔ)而外,還需要部分MPLS流量工程一章所描述的一些信

令協(xié)議的基礎(chǔ)。

MPLS組播

在MPLS框架結(jié)構(gòu)下,關(guān)于組播有兩個(gè)問題。-是如何在MPLS網(wǎng)絡(luò)上支持組播IP報(bào)

文的轉(zhuǎn)發(fā)。二是如何在MPLSVPN中支持VPN內(nèi)的組播。第二個(gè)問題已經(jīng)有了比較系統(tǒng)的

解決方案,第一個(gè)問題則由于其固有的復(fù)雜性在理論上還處于研究階段。所以,這一章將給

出第二個(gè)問題的全面解決方案,同時(shí)也會(huì)給出第?個(gè)問題難的原因。

第一章依然是本章的基礎(chǔ),同時(shí)需要您了解組播路由協(xié)議的基本原理。

MPLS網(wǎng)絡(luò)管理

目前部署MPLS網(wǎng)絡(luò)的網(wǎng)絡(luò)都是大規(guī)模的運(yùn)營商網(wǎng)絡(luò)或企業(yè)網(wǎng)絡(luò),特別是為客戶提供

VPN服務(wù)的大型運(yùn)營商網(wǎng)絡(luò),網(wǎng)絡(luò)的管理特別需要加以重視。這里詳細(xì)地介紹了MPLS網(wǎng)

絡(luò)管理的框架以及華為的一個(gè)MPLSVPN管理軟件。

這一章需要以前各章的基礎(chǔ),同時(shí)需要您知道網(wǎng)絡(luò)管理的基本概念。

由于本書的作者并不是作家,所以語言有點(diǎn)干癟,但是MPLS本身是充滿魅力的,所

以閱讀本書也許就像用青瓷大花瓷碗喝法國葡萄酒,也許很有情趣。

趙廣2003/4/15

2010年的補(bǔ)充說明

這份材料原本是2002-2003年期間計(jì)劃編寫的面向技術(shù)人員的培訓(xùn)材料,由于許多原因

最終未曾完成或定稿?,F(xiàn)在看來,對于初學(xué)者還有一定作用,因此刪除未完成的目錄,加一

個(gè)說明,就以這個(gè)不定稿作為定稿了:)

其實(shí)在2008年左右,有朋友向我詢問是否有MPLS方面的教材.,辛虧我的同學(xué)、同事

與兄弟蔣茂勇還保存著這個(gè)電子稿,因此我可以向他們吹噓這是世界上最好的MPLS教材。

昨天,有朋友再次問MPLS材料,我竟然又將這個(gè)電子稿丟了。再次辛虧我我的同學(xué)、同

事與兄弟蔣茂勇還保存著這個(gè)電子稿,看來我又可以再吹一次牛皮了。

不過,為了不再麻煩老蔣,免得他認(rèn)為我是一個(gè)麻煩的人,我決定吸取教訓(xùn),利用運(yùn)計(jì)

算技術(shù),將本書放在網(wǎng)絡(luò)上:)

趙廣2010/7/14

為了從百度百科上下載電子文檔,我就厚著臉皮將這篇陳年文章上載上去,懇請大家

不要嘲諷我:都是為了混口飯吃,對吧?

由衷期望有一天我能再有興趣與計(jì)劃寫完這個(gè)東西。

趙廣2010/11/01

1.MPLS技術(shù)基礎(chǔ)

部署了MPLS的網(wǎng)絡(luò)最終都以提供具備某些特性的報(bào)文轉(zhuǎn)發(fā)為其服務(wù)形式。對于各種

基于MPLS的應(yīng)用而言,具體的LSR(LabelSwitchingRouter:標(biāo)記轉(zhuǎn)發(fā)路由器及具備標(biāo)記

轉(zhuǎn)發(fā)特性的路由器)在實(shí)施報(bào)文轉(zhuǎn)發(fā)時(shí)所采用的核心轉(zhuǎn)發(fā)技術(shù)事實(shí)上是一致的。具體到一個(gè)

網(wǎng)絡(luò)層報(bào)文而言,當(dāng)它第一次進(jìn)入MPLS網(wǎng)絡(luò)時(shí),首先處理它的那個(gè)LSR必須根據(jù)它的網(wǎng)

絡(luò)層頭部信息決定對于它的轉(zhuǎn)發(fā)動(dòng)作,這個(gè)轉(zhuǎn)發(fā)動(dòng)作包括給它打上MPLS標(biāo)記和從某個(gè)接

口轉(zhuǎn)發(fā)出去;對于網(wǎng)絡(luò)內(nèi)部LSR而言,只需要以輸入報(bào)文中的標(biāo)記信息為索引查找某個(gè)預(yù)

先建立起來的轉(zhuǎn)發(fā)信息表得出轉(zhuǎn)發(fā)動(dòng)作,進(jìn)而根據(jù)這個(gè)轉(zhuǎn)發(fā)動(dòng)作進(jìn)行轉(zhuǎn)發(fā);當(dāng)然,MPLS網(wǎng)

絡(luò)中最后一個(gè)處理這個(gè)報(bào)文的LSR對這個(gè)報(bào)文的轉(zhuǎn)發(fā)決定就可能包含去掉標(biāo)記這樣的動(dòng)

作。本章第一節(jié)將具體描述這個(gè)轉(zhuǎn)發(fā)過程。本章的其余部分將集中精力描述上面所說的各種

轉(zhuǎn)發(fā)信息表是怎么建立起來的,即所謂標(biāo)記分發(fā)的過程。標(biāo)記分發(fā)的過程就是報(bào)文的卜一游告

知上游當(dāng)上游轉(zhuǎn)發(fā)報(bào)文時(shí)應(yīng)該打上什么標(biāo)記的過程。由于涉及到不同設(shè)備間的互通,這就需

要一個(gè)協(xié)議來協(xié)調(diào)這個(gè)過程。目前已有不少協(xié)議可以實(shí)現(xiàn)這個(gè)功能,我們將用LDP(Label

DistributionProtocol)來講述標(biāo)記分發(fā)的基本原理,其他幾種協(xié)議我們將在以后的章節(jié)里逐步

的描述他們。

1.1.MPLS轉(zhuǎn)發(fā)

1.1.1基本概念

圖表1-1

在這個(gè)網(wǎng)絡(luò)中,由LSRA、LSRB、LSRC組成的網(wǎng)絡(luò)N運(yùn)行MPLS為路由器RT1和RT2

所連接的網(wǎng)絡(luò)提供轉(zhuǎn)發(fā)服務(wù)。請注意進(jìn)行MPLS轉(zhuǎn)發(fā)的路由器被稱為LSR(LabelSwitching

Router:標(biāo)記轉(zhuǎn)發(fā)路由器)。

我們用這RT1和RT2的兩個(gè)LoopBack地址模擬接受N轉(zhuǎn)發(fā)服務(wù)的網(wǎng)絡(luò)。于是轉(zhuǎn)發(fā)服

務(wù)就可以用N對RT1或RT2到對方LoopBack接U的Ping報(bào)文的轉(zhuǎn)發(fā)來說明了。事實(shí)上,

N提供的服務(wù)很明確:使得RT1可以Ping通,而且RT2可以Ping通。

如果LSRA、LSRB和LSRC上沒有運(yùn)行MPLS,通過動(dòng)態(tài)路由協(xié)議N同樣可以為RT1

和RT2提供轉(zhuǎn)發(fā)服務(wù)。只要在上圖所示網(wǎng)絡(luò)中每一臺(tái)路由器上的每一個(gè)接口上都運(yùn)行OSPF

協(xié)議,這樣/24和/24這兩個(gè)網(wǎng)段的路由就會(huì)被每一臺(tái)路由器所知曉,這樣

對于每一臺(tái)路由器而言,都可以依據(jù)兩個(gè)信息實(shí)施轉(zhuǎn)發(fā)了:輸入報(bào)文的包頭信息(至少是目

的IP地址)和路由器上通過OSPF學(xué)習(xí)到的路由信息。

具體來看,當(dāng)一個(gè)從RT1上發(fā)出的目的地址為的一個(gè)報(bào)文(我們稱其為P)到達(dá)

N中某個(gè)路由器時(shí),他所做的主要工作就是確定這個(gè)報(bào)文的下一跳路由器、發(fā)送接口等轉(zhuǎn)發(fā)

信息,然后根據(jù)這些轉(zhuǎn)發(fā)信息把P轉(zhuǎn)發(fā)出去。一個(gè)路由器用兩個(gè)步驟完成確定對于P的轉(zhuǎn)

發(fā)信息的工作:其一就是根據(jù)輸入P的頭部信息(至少是目的IP地址:)為索引用

最長匹配算法在三層路由表中查找一個(gè)匹配(1001.0/24)。事實(shí)上,無論目的地址是

還是100.1.2或10.0.1.x,這個(gè)查找工作的結(jié)果都是/24,我們在這里稱這些包屬于同

?個(gè)轉(zhuǎn)發(fā)等價(jià)類(FEC:ForwardingEquivalenceClass),這個(gè)轉(zhuǎn)發(fā)等價(jià)類就用/24標(biāo)識(shí)。

第二個(gè)工作就是以這個(gè)FEC:/24為索引查找下一跳等轉(zhuǎn)發(fā)信息,比如對于LSRB,

結(jié)果就是下一跳路由器就應(yīng)該是20201.2,下一跳接口為EU

MPLS不在轉(zhuǎn)發(fā)的每一跳上獨(dú)立的將報(bào)文P分配給某一個(gè)FEC,而是在P到達(dá)LSRA

時(shí)即第一次到達(dá)MPLS網(wǎng)絡(luò)時(shí)就會(huì)被打上一個(gè)標(biāo)記LI,L1就是LSRA和LSRB事先協(xié)商好

的用于標(biāo)識(shí)/24這個(gè)FEC的。當(dāng)LSRB收到P時(shí);標(biāo)記L1指示它應(yīng)該將這個(gè)報(bào)文打

上它和LSRC協(xié)商好的用于標(biāo)識(shí)1001.0/24這個(gè)FEC的標(biāo)記L2,并且從接口E1上發(fā)出去。

當(dāng)這個(gè)報(bào)文到達(dá)LSRC時(shí),標(biāo)記L2指示LSRC去掉標(biāo)記L2并根據(jù)其目的IP地址查找到其

轉(zhuǎn)發(fā)接口E0并將其轉(zhuǎn)發(fā)出去。

從這個(gè)描述可以看出,MPLS網(wǎng)絡(luò)事實(shí)上在轉(zhuǎn)發(fā)之前已經(jīng)就某個(gè)FEC如何轉(zhuǎn)發(fā)達(dá)成了

一致并局部地使用標(biāo)記標(biāo)識(shí),無須在每跳再根據(jù)報(bào)文目的IP地址來確定其所屬的FEC?

而且這些局部的標(biāo)記事實(shí)上也在轉(zhuǎn)發(fā)之前預(yù)先指定了一個(gè)FEC中的所有報(bào)文在MPLS網(wǎng)絡(luò)

的轉(zhuǎn)發(fā)路徑,我們稱這個(gè)轉(zhuǎn)發(fā)路徑為LSP(LabelSwitchedPath:標(biāo)記交換路徑)。

從LSP的角度我們可以把一個(gè)報(bào)文(或一個(gè)FEC)在MPLS網(wǎng)絡(luò)中所經(jīng)過的所有LSR

分成3種,入口LSR(LSRIngress)>出口LSR(LSREgress)和內(nèi)部LSR,有時(shí)我們也將

LSRIngress和LSREgress統(tǒng)稱為LER(EdgeLSR)。在我們的實(shí)驗(yàn)網(wǎng)絡(luò)中,對于報(bào)文P而

言,它的LSP是<LSRA,LSRB,LSRC>,LSRA是入口LSR,LSRC是出口LSR。下面我

們來考察一下不同節(jié)點(diǎn)的轉(zhuǎn)發(fā)處理過程。

對于入口LSRLSRA而言,為了可以正確標(biāo)記轉(zhuǎn)發(fā)報(bào)文P,它首先要維護(hù)一個(gè)功能上類

似于傳統(tǒng)路由表中下一跳以及發(fā)送接口叫做NHLFE(NextHopLabelForwardingEntry)的

數(shù)據(jù)結(jié)構(gòu)。NHLFE包含如下信息:報(bào)文轉(zhuǎn)發(fā)的下一跳、發(fā)送接口、對于報(bào)文中標(biāo)記的操作

以及任何其他可能對轉(zhuǎn)發(fā)有用的信息。對于LSRA而言,為了可以正確的轉(zhuǎn)發(fā)報(bào)文P,它就

必須包含這樣的NHLFE:下一跳為202.021、發(fā)送接口為E1、應(yīng)該給報(bào)文打上標(biāo)記L1。

顯然,僅僅有NHLFE是不夠的,為了對不同轉(zhuǎn)發(fā)等價(jià)類不同的NHLFE,在入口LSR上還

必須維護(hù)一個(gè)FEC到NHLFE的映射(FECTONHLFEMAP:FTN),這個(gè)映射的結(jié)構(gòu)是很

清楚的,比如說對于報(bào)文P,LSRA上就必須包含如下的FTN:

NHLFE

FEC

下一跳發(fā)送接口標(biāo)記操作其他

/24LSRBE1加上標(biāo)記L1

圖表1-2LSRA上的FTN映射

這樣LSRA對于報(bào)文P的轉(zhuǎn)發(fā)流程就很清楚了:當(dāng)LSRA收到P后,根據(jù)其包頭中目

的IP地址按照最長匹配原則查找FTN映射的結(jié)果就是給P打上一個(gè)L1的標(biāo)記,

并且從E1接口發(fā)送出去。

那么這張表格是怎么產(chǎn)生的呢?MPLS怎么知道這個(gè)/24應(yīng)該從E0接口發(fā)送出

去的呢?根本上,這張表格是LSRA和LSRB基于3層路由協(xié)議所得到的可達(dá)性信息利用

標(biāo)記分發(fā)協(xié)議所達(dá)成的共識(shí)。具體的過程我們將在本章的第二節(jié)仔細(xì)討論這個(gè)過程。

在LSRB上,為了轉(zhuǎn)發(fā)報(bào)文P,同樣必須有一個(gè)表達(dá)其轉(zhuǎn)發(fā)行為的NHLFE:下一跳為

>發(fā)送接口為E1、標(biāo)記操作為:去掉原有的標(biāo)記并且打上新的標(biāo)記L2。和LSRA

不同的是:LSRB無須再檢查P的網(wǎng)絡(luò)層頭部得到其目的地址并據(jù)此作為得到這個(gè)NHLFE

的索引,它直接利用P頭部的標(biāo)記L1作為這個(gè)索引就可以了,因?yàn)樗呀?jīng)和LSRA就FEC

和L1的綁定達(dá)成了一致。

對于LSRB而言,我們稱L1為P的入標(biāo)記,而L2為P的出標(biāo)記。當(dāng)然,因?yàn)長SR對

于同一個(gè)FEC內(nèi)所有報(bào)文的轉(zhuǎn)發(fā)行為是一致的,所以我們也可以說L1是FEC/24

的入標(biāo)記,L2是FEC/24的出標(biāo)記。

所以,LSR對于輸入的帶標(biāo)記的報(bào)文是通過一個(gè)叫做入標(biāo)記映射(ILM:IncomingLabel

Map)的過程來得到NHLFE的。具體的,LSRB上就應(yīng)該包含如下的ILM:

NHLFE

入標(biāo)記

下一跳發(fā)送接口標(biāo)記操作其他

L1LSRCE1去掉原來的標(biāo)記,加上標(biāo)記L2

圖表1-3LSRB上的ILM

P上的標(biāo)記L1被置換為L2的過程被稱為標(biāo)記交換(LabelSwapping),在一個(gè)MPLS

網(wǎng)絡(luò)內(nèi)部,標(biāo)記交換就是報(bào)文轉(zhuǎn)發(fā)的主要操作。

對于出口LSRLSRC,它當(dāng)然也是依據(jù)P的輸入標(biāo)記而不是網(wǎng)絡(luò)層包頭識(shí)別報(bào)文,但是

由于它是出口LSR,它并沒有就如何標(biāo)記轉(zhuǎn)發(fā)P和下游路由器達(dá)成一致,所以它只能依據(jù)P

的網(wǎng)絡(luò)層頭部中的目的IP地址10.0.1」來轉(zhuǎn)發(fā)P。所以,此時(shí)的ILM為:

NHLFE

入標(biāo)記

下一跳發(fā)送接口標(biāo)記操作其他

L2LSRC去掉標(biāo)記

圖表1-4LSRC上的ILM

所以,LSRC對于P的處理過程為:先根據(jù)輸入報(bào)文P攜帶的標(biāo)記L2查找ILM,得出

的NHLFE指示它去掉標(biāo)記并將其“轉(zhuǎn)發(fā)”給自己,然后再根據(jù)網(wǎng)絡(luò)層頭部中的目的IP地

址根據(jù)網(wǎng)絡(luò)層路由表將其轉(zhuǎn)發(fā)給RT2。

由上面的分析可以看出:對于LSRC來講,由倒數(shù)第二跳LSRLSRB發(fā)給給它的P中

所攜帶的標(biāo)記L2事實(shí)上對于LSRC的轉(zhuǎn)發(fā)沒有任何幫助。如果LSRB在發(fā)送P時(shí)將L2刪

除,對于LSRC轉(zhuǎn)發(fā)P沒有任何負(fù)面影響,因?yàn)長SRC對于P的有效轉(zhuǎn)發(fā)決定只依賴于網(wǎng)

絡(luò)層頭部的目的IP地址。而且在倒數(shù)第二跳刪除掠出標(biāo)記還可以讓出口只做一次查找工作,

甚至出口LSR可以完全不支持MPLS。當(dāng)然,是否進(jìn)行倒數(shù)第二跳,首先必須決定于倒數(shù)

第二跳是否具備刪除標(biāo)記的能力(有些設(shè)備,比如說一些由ATM交換機(jī)直接升級而成的具

備MPLS功能的設(shè)備,就只具備標(biāo)記交換的能力而不具備刪除標(biāo)記的能力),其次出口LSR

和倒數(shù)第二跳LSR也必須就此達(dá)成一致。

必須注意,我們這里對于LSR的劃分(入口、出口以及內(nèi)部LSR)是對于某一個(gè)FEC

或者對于某個(gè)具體的報(bào)文的LSP而言的,同一個(gè)LSR完全可能同時(shí)是這三個(gè)角色。

下面我們仔細(xì)介紹一下被我們在這里抽象化的標(biāo)記:LI、L2是如何和IP報(bào)文?起傳輸

的。

1.1.2標(biāo)記、標(biāo)記棧與標(biāo)記棧編碼

標(biāo)記在MPLS體系結(jié)構(gòu)中處于核心地位。在標(biāo)記的指示下,LSR以交換的方式讓數(shù)據(jù)

轉(zhuǎn)發(fā)工作盡量只發(fā)生在網(wǎng)絡(luò)層以下,從而提高了數(shù)據(jù)轉(zhuǎn)發(fā)效率。所以MPLS能夠在多大程

度上簡潔的提供通常在網(wǎng)絡(luò)層完成的工作事實(shí)上決定了MPLS的生命力。原因很明顯:如

果在數(shù)據(jù)交換過程中,為了實(shí)現(xiàn)一些基本的功能,數(shù)據(jù)包還必須被傳遞到網(wǎng)絡(luò)層去處理,那

么MPLS的轉(zhuǎn)發(fā)效率優(yōu)勢將不復(fù)存在。這一點(diǎn)事實(shí)上決定了除了標(biāo)記以外,其他應(yīng)該被編

碼進(jìn)數(shù)據(jù)包中的數(shù)據(jù)。

網(wǎng)絡(luò)層有兩個(gè)工作是至關(guān)重要的:一個(gè)是為了控制報(bào)文傳輸范圍的TTL遞減工作,實(shí)

際上IP報(bào)文中TTL這個(gè)域應(yīng)用的廣泛程度是驚人的:許多應(yīng)用(例如:RIP路由協(xié)議)利

用它來防止環(huán)路、許多應(yīng)用(例如:組播)利用它來限制報(bào)文傳輸范圍、廣泛的被使用于網(wǎng)

絡(luò)測試(Tracert),甚至一些黑客程序利用報(bào)文初始TTL來確定操作系統(tǒng)。結(jié)論很清楚:當(dāng)

一個(gè)帶標(biāo)記的報(bào)文在傳輸時(shí),它必須同時(shí)編碼個(gè)TTL域。

另一個(gè)是報(bào)文分類工作。在IP報(bào)文中,DSCP(DifferentiatedServicesCodingPoint)域

被專門用于報(bào)文分類工作,報(bào)文分類工作是實(shí)現(xiàn)QoS的基本組件。QoS的重要作用對于大

型網(wǎng)絡(luò)的重要性是不言而喻的。所以,當(dāng)一個(gè)帶標(biāo)記的報(bào)文在傳輸時(shí),MPLS設(shè)計(jì)者最終認(rèn)

為需要一個(gè)域來標(biāo)識(shí)報(bào)文的類別是值得的。

為了安全、互連私有網(wǎng)絡(luò)、互連不同協(xié)議或是顯式指定某個(gè)數(shù)據(jù)包的路由方法,在網(wǎng)絡(luò)

層領(lǐng)域,隧道技術(shù)被廣泛應(yīng)用。從本質(zhì)上來講,各種(L2TP、GRE、IPSECTunnel模式等)

隧道都是用一個(gè)公開的或是可行的網(wǎng)絡(luò)層頭部封裝一個(gè)內(nèi)部的數(shù)據(jù)包,完成這個(gè)內(nèi)部的包在

特定網(wǎng)絡(luò)上的傳輸,這樣做的主要原因可能是內(nèi)部數(shù)據(jù)包不愿或是不能夠在這個(gè)網(wǎng)絡(luò)上傳

輸。為了支持類似的應(yīng)用需求,MPLS也支持標(biāo)記的層次結(jié)構(gòu),即一個(gè)數(shù)據(jù)包可能包含多個(gè)

標(biāo)記。這多個(gè)標(biāo)記被組織成?個(gè)先進(jìn)后出的棧結(jié)構(gòu),所以這些標(biāo)記被稱為標(biāo)記棧。相應(yīng)的,

最先入棧的標(biāo)記被稱為棧底標(biāo)記,最新入棧的標(biāo)記被稱為棧頂標(biāo)記。但是,標(biāo)記的棧式結(jié)構(gòu)

對于LSR的轉(zhuǎn)發(fā)部件是透明的,所有的轉(zhuǎn)發(fā)決定必須而且只能基于棧頂標(biāo)記。

一個(gè)數(shù)據(jù)包中包含的MPLS標(biāo)記的主要作用在于指示接受到這個(gè)數(shù)據(jù)包的LSR如何轉(zhuǎn)

發(fā)這個(gè)數(shù)據(jù)包。但是必須注意的是,MPLS并沒有被設(shè)計(jì)成網(wǎng)絡(luò)層的替代協(xié)議,MPLS要做

的只是利用網(wǎng)絡(luò)層提供的和其他控制部件所提供的控制信息,實(shí)現(xiàn)高效的并且靈活的轉(zhuǎn)發(fā)同

樣的MPLS也不會(huì)代替鏈路層的工作。所以標(biāo)記棧在數(shù)據(jù)報(bào)的封裝位置應(yīng)該是鏈路層之后,

網(wǎng)絡(luò)層之前。

MPLS標(biāo)記的在數(shù)據(jù)轉(zhuǎn)發(fā)中所起的作用和ATM的VPVVCI或是幀中繼的DLCI是類似

的。所以,就可以使用這些鏈路層數(shù)據(jù)封裝中的這些域來封裝MPLS標(biāo)記。但是,不是所

有的鏈路層都提供這種交換的機(jī)制,比如說PPP或是以太網(wǎng),所以必須定義一個(gè)獨(dú)立于網(wǎng)

絡(luò)層和鏈路層封裝的MPLS頭部。

我們現(xiàn)在描述?種被稱為通用標(biāo)記封裝方法的封裝方法,這種方法可以用于任何鏈路

層。它定義了一個(gè)獨(dú)立于鏈路層的被稱為MPLS薄層的MPLS封裝,可以封裝多個(gè)標(biāo)記,

每個(gè)標(biāo)記包括20位的MPLS標(biāo)記、3位的實(shí)驗(yàn)域(EXP)、1位棧頂標(biāo)記和8位TTL域。

具體結(jié)構(gòu)如下圖所示:

鏈路底頭部MPLS薄房網(wǎng)絡(luò)層頭部

20位標(biāo)簽

圖表1-5

這里標(biāo)記域中所承載的就是我們在LLL里一直討論的Ll、L2這些用于指示轉(zhuǎn)發(fā)行為

的標(biāo)記。標(biāo)記的數(shù)值范圍為:0-2人20,0、1、2、3這四個(gè)標(biāo)記有特殊含義,4-15保留。

標(biāo)記值為0的標(biāo)記叫做IPV4顯式空標(biāo)記,這個(gè)標(biāo)記只能出現(xiàn)在棧底,這個(gè)標(biāo)記對應(yīng)的

轉(zhuǎn)發(fā)動(dòng)作只能是刪除標(biāo)記棧并且這個(gè)數(shù)據(jù)包將會(huì)被送給IPV4模塊處理并轉(zhuǎn)發(fā)。標(biāo)記值為2

的標(biāo)記叫做IPV6顯式空標(biāo)記,其語法和語義和IPV4顯式空標(biāo)記是類似的。

標(biāo)記值為3的標(biāo)記叫做隱式空標(biāo)記。當(dāng)一個(gè)LSR要給一個(gè)數(shù)據(jù)包換上一個(gè)新的標(biāo)記時(shí),

如果被換上的標(biāo)記是這個(gè)標(biāo)記,那么LSR就不會(huì)執(zhí)行標(biāo)記交換操作,相反的,LSR會(huì)在數(shù)

據(jù)包中的標(biāo)記棧上執(zhí)行一個(gè)POP操作。所以這個(gè)標(biāo)記值不會(huì)出現(xiàn)在報(bào)文封裝中,只會(huì)用在

標(biāo)記分發(fā)協(xié)議中。

標(biāo)記值為1的標(biāo)記叫做路山器提醒(RouterAlert)標(biāo)記,其作用類似于IP的路山器提

醒選項(xiàng)(RouterAlerlOption),用于提醒沿途的LSR在轉(zhuǎn)發(fā)這個(gè)數(shù)據(jù)包之前應(yīng)該仔細(xì)檢查這

個(gè)數(shù)據(jù)包,可以用在諸如RSVPPath消息等消息報(bào)文需要沿途路由器而不僅僅是目的主機(jī)處

理的應(yīng)用中。

EXP域(實(shí)驗(yàn)域)原先設(shè)計(jì)目的是用于實(shí)驗(yàn)?zāi)康?,目前主要用于?bào)文分類。起著和IP

報(bào)文中DSCP類似的作用,可以用于編碼不同的PHB(Per-hopBehavior:逐跳行為)。

S比特叫做棧底標(biāo)識(shí)(BottomOfStack)的作用是指示當(dāng)前這個(gè)標(biāo)記是否是棧底標(biāo)記。

TTL域編碼8位TTL值,其基本作用是防止環(huán)路和限制報(bào)文傳輸范圍。通常對于TTL

的處理過程是:在MPLS網(wǎng)絡(luò)入口路由器上,當(dāng)接收到一個(gè)IP報(bào)文后,首先將其IPTTL減

1,當(dāng)它被發(fā)送之前,IPTTL應(yīng)該被拷貝到MPLS頂層標(biāo)記中;在中間LSR上當(dāng)它收到一

個(gè)帶標(biāo)記的報(bào)文時(shí),首先將報(bào)文頂層標(biāo)記中的TTL減1,然后做標(biāo)記交換操作并發(fā)送出去,

這里的交換只交換標(biāo)記棧結(jié)構(gòu)頂層標(biāo)記封裝中的20比特標(biāo)記值;在出口LSR匕當(dāng)它收到

一個(gè)帶標(biāo)記報(bào)文以后,首先會(huì)對MPLSTTL做減1操作,然后做標(biāo)記彈出操作,然后將MPLS

TTL拷貝到報(bào)文的IPTTL域,并將其送給網(wǎng)絡(luò)層發(fā)出。請注意,我們這里的假設(shè)是一層標(biāo)

記棧,對于多層標(biāo)記棧的操作是類似的,我們把這個(gè)問題留到習(xí)題里去。

對于在ATM、幀中繼網(wǎng)絡(luò)上標(biāo)記的封裝一般原則是:頂層(或最上兩層)標(biāo)記封裝在

鏈路層的VPI/VCI或DLCI域中,而標(biāo)記棧的其余標(biāo)記則用我們上面描述的通用標(biāo)記封裝

方法封裝。

我們這里討論的是標(biāo)記隨數(shù)據(jù)報(bào)文一起發(fā)送時(shí)的封裝形式,在下一部分要討論的標(biāo)記分

發(fā)協(xié)議的報(bào)文中,標(biāo)記封裝自然只包含20位標(biāo)記值。

1.2.標(biāo)記分發(fā)協(xié)議

1.1.3標(biāo)記分發(fā)協(xié)議概述

1-0:202.0.2.1/2EL202.0.I.1/24

El:202.0N.EZ02.0.1.2/24

1:0:200.0.0.1/24

1*0:100.0.0.1/24

MPLS域

E0:100.0.0.2/24E0:200.0.0.2/2

loopMck:10.0.0.1

loopback:

圖表1-6

我們在前面討論了一個(gè)LSR如何依據(jù)輸入報(bào)文的頂層標(biāo)記(或網(wǎng)絡(luò)層地址)以及1LM

(或FTN)來確定對于一個(gè)報(bào)文的轉(zhuǎn)發(fā)行為(即得到NHLFE),本節(jié)以及下一節(jié)將以上圖

為例討論ILM、FTN和NHLFE這些控制信息是如何形成的。

我們將把討論限制于一個(gè)特定的FEC:所有目的地址屬于網(wǎng)絡(luò)/24的數(shù)據(jù)包。

對于這個(gè)FEC,我們下面描述一種可能的各LSR上標(biāo)記轉(zhuǎn)發(fā)信息生成過程。

1、當(dāng)LSRB上路由協(xié)議收斂以后,即它發(fā)現(xiàn)FEC/24以后,它就向上游

LSR發(fā)布一個(gè)FCE-Label映射(以后我們將簡稱標(biāo)記映射):</24,17>,

其語義是:“當(dāng)你發(fā)給我的報(bào)文頂層標(biāo)記是17時(shí),我將對其采取FEC/24

的轉(zhuǎn)發(fā)行為"。當(dāng)然,這里的上游LSR只會(huì)是LSRA,而不會(huì)包含LSRC,因

為LSRB從路由協(xié)議知道FEC/24的下一跳路由器是LSRC,因而LSRC

不應(yīng)該將屬于FEC/24的數(shù)據(jù)包轉(zhuǎn)發(fā)給LSRBo

2、當(dāng)LSRA從El口收到V/24,17>這個(gè)映射以后,它就可以建立自己的

FTN映射表了:

NHLFE

FEC

下一跳發(fā)送接口標(biāo)記操作其他

/24LSRBE1加上標(biāo)記17

圖表1-7LSRA上的FTN映射

3、同樣的LSRC也會(huì)給LSRB發(fā)送這樣的標(biāo)記映射:<10.0.10/24,3>,由于標(biāo)

記3具備倒數(shù)第二跳彈出的特殊含義,所以對LSRB而言,這個(gè)映射的語義是:

對于屬于/24這個(gè)FEC要經(jīng)過LSRC轉(zhuǎn)發(fā)的數(shù)據(jù)包,應(yīng)該對原有標(biāo)記

棧執(zhí)行POP操作(而不是將原有標(biāo)記棧頂層標(biāo)記交換為3)。山于LSRB曾經(jīng)

發(fā)布過關(guān)于10.0.L0/24標(biāo)記映射信息,因而現(xiàn)在LSRB就可以把這些信息組合

起來形成一張ILM表了:

NHLFE

入標(biāo)記

下一跳發(fā)送接口出標(biāo)記其他

17LSRCE13

圖表1-8LSRB上的ILM

4、當(dāng)然,對于LSRC而言,由于使用了倒數(shù)第二跳彈出技術(shù),所以也就無需為

/24這個(gè)FEC形成標(biāo)記轉(zhuǎn)發(fā)表了。注意,由于考慮了倒數(shù)第二跳彈出,

所以這里的幾個(gè)表格和1.1.1中的表格并不完全一樣。

從以上過程可以看出,標(biāo)記轉(zhuǎn)發(fā)控制信息形成的關(guān)鍵就是在標(biāo)記轉(zhuǎn)發(fā)的上下游LSR之

間標(biāo)記映射信息的傳遞:本質(zhì)上就是下游LSR將特定標(biāo)記和特定FEC的映射通知給上游

LSR,這個(gè)標(biāo)記映射傳遞過程被稱為標(biāo)記分發(fā)。

當(dāng)然,正如前面所述,這里描述的標(biāo)記分發(fā)方式只是兩種可能的方式之一,上面描述的

這種方式被稱為下游自主(DU:DownstreamUnsolicited)方式,其含義是指下游自主決定

是否給上游分發(fā)標(biāo)記映射,而無需上游顯式請求。另外?種方式叫做下游按需分配(DOD:

DownstreamonDemand)方式,這種方式下游只有在上游顯式提出對于某個(gè)FEC的標(biāo)記請

求才會(huì)向上游分發(fā)和這個(gè)FEC相關(guān)的標(biāo)記映射。

從全局觀點(diǎn)來看,對于特定的FEC,各獨(dú)立〈上游LSR、下游LSR>對于這個(gè)FEC的在

他們之間鏈路上和某個(gè)標(biāo)記的映射最終形成了一條LSP。如在圖表1-6中,對于/24

這個(gè)FEC,最終形成了<LSRA,LSRB,LSRC>這樣一條LSP。在我們上面所說明的過程所

描述的LSP控制方法也是兩種可選方法之?:獨(dú)立LSP控制方法。所謂,獨(dú)立的LSP控制

方式是指一個(gè)LSR在向上游分發(fā)和特定FEC相關(guān)的標(biāo)記映射之前,無需確保自己己經(jīng)獲得

下游關(guān)于這個(gè)FEC的標(biāo)記映射。我們可以看到圖表1-6中的LSRB正是這樣做的:當(dāng)它分

發(fā)標(biāo)記映射<10。1.0/24,17>給LSRA時(shí),它還沒有從LSRC得到關(guān)于/24的標(biāo)記映

射。另外利LSP控制方式被稱為有序方式,這種方式下,?個(gè)LSR在向上游分發(fā)和特定

FEC相關(guān)的標(biāo)記映射之前,必須確保自己已經(jīng)獲得下游關(guān)于這個(gè)FEC的標(biāo)記映射(除非這

個(gè)LSR本身就是對于這個(gè)FEC的出口路由器)。

對于特定FEC的LSP,MPLS標(biāo)記轉(zhuǎn)發(fā)的路由可以使用路由協(xié)議形成的逐跳路由,也

可以不使用即使用某種顯式路由機(jī)制。對于前者我們稱這條LSP是逐跳路由的LSP,后者

則被稱為顯式路由的LSP。截至目前為止,我們討論的都是前者,后者在流量工程中有很重

要的應(yīng)用。

獨(dú)立的LSP控制方式和有序的LSP控制方法各有不同的應(yīng)用場合,前者多用于控制逐

跳路由的LSP,后者多用于控制顯式路由的LSP。經(jīng)管這兩種LSP控制方式可以和任意的

標(biāo)記分發(fā)方式配合工作,但是下游自主的標(biāo)記分發(fā)方式常和前者配合工作,以達(dá)到和路由協(xié)

議同時(shí)快速收斂的目的;相應(yīng)的,F(xiàn)游按需的標(biāo)記分發(fā)方式常和有序的LSP控制方式配合

使用,可以方便的實(shí)施顯式路由。

具體在相鄰LSR之間進(jìn)行標(biāo)記分發(fā)工作的是標(biāo)記分發(fā)協(xié)議,目前可以用于標(biāo)記分發(fā)協(xié)

議的有:LDP(LabelDistributionProtocol)>CR-LDP(Constraint-basedLDP)>RSVP-TE

(ExtensionstoResourceReservationProtocolBGP等。下?節(jié)將介紹LDP協(xié)議,在以后

的章節(jié)中將會(huì)介紹其他的協(xié)議。

1.1.4LDP

正如前一節(jié)所述,LDP(LabelDistributionProtocol)是一種用于在?對標(biāo)記轉(zhuǎn)發(fā)上下游

LSR之間分發(fā)FEC-Label映射信息的協(xié)議。這對標(biāo)記轉(zhuǎn)發(fā)上下游路由器互相被稱為標(biāo)記分發(fā)

對等體。盡管圖表1-6中所示網(wǎng)絡(luò)中,標(biāo)記分發(fā)對等體之間都是直接相連的,但是這并不意

味著標(biāo)記分發(fā)對等體必須直接相連,我們會(huì)在下一章介紹這個(gè)方面的應(yīng)用。

LDP以消息的形式在對等體之間分發(fā)、維護(hù)標(biāo)記映射信息,為了保證標(biāo)記分發(fā)的可靠

性,LDP使用TCP的傳輸服務(wù)。總體上,所有LDP消息可以分為四類:

1、發(fā)現(xiàn)消息用于發(fā)現(xiàn)網(wǎng)絡(luò)中的LDP相鄰體

2、會(huì)話消息用于建立、維護(hù)和中止LDP對等體之間的會(huì)話

3、分發(fā)消息用于創(chuàng)建、改變以及刪除和FEC相關(guān)的標(biāo)記映射

4、通知消息用于提供建議或錯(cuò)誤通知信息

利用這些消息,LDP大致工作過程如下圖所示:

Hello

圖表1-9

從這張圖可以看到,兩個(gè)LDP對等體首先發(fā)現(xiàn)對方,然后和對方建立TCP連接,在連

接上,建立會(huì)話,最終在會(huì)話上傳輸標(biāo)記請求和標(biāo)記映射消息。

我們將在隨后的章節(jié)中仔細(xì)討論這些過程。

LDP發(fā)現(xiàn)

從鄰居發(fā)現(xiàn)的角度看,必須有一個(gè)標(biāo)識(shí)不同LSR的一個(gè)ID,否則無法區(qū)分不同的鄰居。

LDP使用一個(gè)叫做LSRID的四字節(jié)數(shù)標(biāo)識(shí)不同的LSR。由于,同一個(gè)LSR上可能存在完

全的標(biāo)記空間(例如:ATM交換機(jī)每個(gè)接口的VCI是出于不同空間中的),所以從標(biāo)記分

發(fā)的角度應(yīng)該區(qū)分同一LSR上不同標(biāo)記空間,LDP使用一個(gè)2字節(jié)的無符號(hào)整數(shù)來標(biāo)識(shí)標(biāo)

記空間。LDP使用由LSRID和標(biāo)記空間標(biāo)識(shí)組成的被稱為LDP標(biāo)識(shí)符的6字節(jié)無符號(hào)整

數(shù)標(biāo)識(shí)作為一個(gè)獨(dú)立的標(biāo)記分發(fā)對等體。

LDP有兩種發(fā)現(xiàn)鄰居機(jī)制:一是基本發(fā)現(xiàn)機(jī)制,一是擴(kuò)展發(fā)現(xiàn)機(jī)制。

基本發(fā)現(xiàn)機(jī)制用于發(fā)現(xiàn)通過物理鏈路直接相連的LSR,LSR利用承載在目的地址為組

播地址:(網(wǎng)段上所有路由器)UDP報(bào)文上的Hell。消息向網(wǎng)段內(nèi)所有路由器聲明

自己的存在,當(dāng)然這個(gè)UDP報(bào)文的目的端口號(hào)是用于指示其中包含LDP協(xié)議的646。

而擴(kuò)展發(fā)現(xiàn)機(jī)制用于發(fā)現(xiàn)非直接相連(手工配置的)LDP鄰居,LSR利用承載在目的

地址為手工配置的特定LSR地址的UDP報(bào)文上的Hello消息向這個(gè)配置的鄰居聲明自己的

存在,這個(gè)UDP報(bào)文的目的端口號(hào)也是646。

Hello消息并不是直接承載在UDP報(bào)文上,而是封裝在如圖表1-10的LDPPDU頭部之

后,一個(gè)LDPPDU可以包含多個(gè)不同LDP消息。

0123

01234567890123456789012345678901

-I—(-+-+—1—1—1—4—4-4—+-4—+-+—?—?-4-4—H-4—+-+

|Version|PDULength|

4-4—4—4—4—4-4—4—4—4—4—4—4—4—4—4-4—1—4—4—4—4—4—4—4—4—4—4-4—4—1—4—+

|LDPIdentifier|

+4-+-4-4—1-4—t—1-4-4-1-4-4-4-4-4-+

圖表1-10

其中:

Version字段表示LDP協(xié)議版本號(hào),目前為1。

PDULength表示整個(gè)PDU的長度,不包括PDULength和Version域的長度。

LDPIdentifier是指6個(gè)字節(jié)的LDP標(biāo)識(shí)符。

盡管這兩種機(jī)制處理方式并不一樣,但是都利用基本一樣的Hello消息,下圖列出了

Hello消息的格式:

0123

01234567890123456789012345678901

4-4—4—4—4—4-1-4-4—4-4—1-4—4—4-1-4-4—+-4—4—4—4—4—4—1-+-4—+-4—4—4—+

|0|Hello(0x0100)|MessageLength|

4—1-4-1-4-4—I—I—?—I—I—I—I—1-4-4-4-4-4—I—I—I—1-4-4-4—I—I—I—1-4-4-+

MessageID

4—I—4—4—4—4—I—4—I—4—I—4—I—4—4—I—I—I—4—I—4—4—4—4—4—I—I—4—1—4—1—4—+

CommonHelloParametersTLV

4-4—4—4—4—4—1-4-4—+-4—4—4—4—4—1—4—>—+-4—4—4—4—4—4—4-+-4—4—1—4—4—+

OptionalParameters

4—1-4-1-4-4—I—I—?—I—I-I—H--1-4-4-4-4-4-h-4-4—1-4-4-4—I—I—I—1-4—f-+

圖表1-11

Hello消息的第一個(gè)比特通常叫做U比特,用于指示在消息接受者不能識(shí)別這個(gè)消息的

類型(隨后的15比特域)情形下的處理方法:為零則向發(fā)送者發(fā)送一個(gè)錯(cuò)誤通知消息,為

1則安靜的忽略這個(gè)消息。

隨后的15位域用于指示消息的類型,這里的0x0100就是指Hello消息。MessageLength

用于指示從MessageID域開始(包括MessageID域)的Hello消息的長度。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論