- SRv6網(wǎng)絡(luò)部署指南
- 金閩偉 李振斌主編
- 3469字
- 2025-07-11 16:39:31
| 1.2 SRv6的原理與特點(diǎn) |
為了基于IPv6數(shù)據(jù)平面實(shí)現(xiàn)Segment Routing,IPv6路由擴(kuò)展報(bào)文頭新增了一種類型,稱為SRH(Segment Routing Header,段路由擴(kuò)展報(bào)文頭)。該擴(kuò)展報(bào)文頭用于指定一個(gè)SRv6的顯式路徑,存儲(chǔ)的是SRv6的路徑信息[即段列表(Segment List),也稱為SID List]。
因?yàn)轭^節(jié)點(diǎn)在IPv6報(bào)文中增加了一個(gè)SRH,由此中間節(jié)點(diǎn)就可以按照SRH里包含的路徑信息進(jìn)行轉(zhuǎn)發(fā)。SRH的格式如圖1-2所示。
IPv6 SRH的關(guān)鍵信息有如下幾個(gè)部分。
● 當(dāng)Routing Type類型值為4時(shí),表明路由擴(kuò)展頭是SRH。
● Segment List(Segment List [0], Segment List [1], Segment List [2],…,Segment List [n])是網(wǎng)絡(luò)路徑信息。
● Segments Left(SL)是一個(gè)指針,指示當(dāng)前活躍的Segment。

圖1-2 SRH的格式
為了便于敘述轉(zhuǎn)發(fā)原理,SRH可以抽象成圖1-3所示的格式,其中圖1-3(a)里的SID排序是正序,使用<>標(biāo)識(shí);圖1-3(b)里的SID排序是逆序,使用()標(biāo)識(shí),逆序更符合SRv6的實(shí)際報(bào)文封裝情況。

圖1-3 SRH的抽象格式
1.SRv6 SID有何特殊之處
SID在SR-MPLS里是標(biāo)簽形式,在SRv6里換成了IPv6地址形式。SRv6通過(guò)對(duì)SID棧的操作來(lái)完成轉(zhuǎn)發(fā),因此它是一種源路由技術(shù)。那么SRv6的SID具有哪些特殊之處呢?要回答這個(gè)問(wèn)題,就得從SRv6 SID的結(jié)構(gòu)說(shuō)起。
SRv6 SID雖然是IPv6地址形式,但不是普通意義上的IPv6地址。SRv6的SID有128 bit,這樣長(zhǎng)的一個(gè)地址,如果僅僅用于路由轉(zhuǎn)發(fā),顯然是很浪費(fèi)的。因此,SRv6的設(shè)計(jì)者對(duì)SID進(jìn)行了更加巧妙的處理。
如圖1-4所示,SRv6 SID由Locator、Function和Arguments(簡(jiǎn)稱Args)3部分組成,其中Arguments是可選的,如果Locator、Function和Arguments這3部分長(zhǎng)度不足128 bit,需要在Arguments后補(bǔ)0,即增加Padding字段,確保字節(jié)對(duì)齊。

圖1-4 SRv6 SID的結(jié)構(gòu)
● Locator具有定位功能,所以一般在SRv6域內(nèi)要唯一。但是在一些特殊場(chǎng)景,比如Anycast保護(hù)場(chǎng)景,多個(gè)設(shè)備可能配置相同的Locator。一個(gè)節(jié)點(diǎn)配置Locator之后,系統(tǒng)會(huì)生成一條Locator網(wǎng)段路由,并且通過(guò)IGP在SRv6域內(nèi)擴(kuò)散。網(wǎng)絡(luò)里其他節(jié)點(diǎn)就可以通過(guò)Locator網(wǎng)段路由定位到該節(jié)點(diǎn),同時(shí)該節(jié)點(diǎn)發(fā)布的所有SRv6 SID也都可以通過(guò)該Locator網(wǎng)段路由到達(dá)。
● Function代表設(shè)備的指令(Instruction),這些指令都由設(shè)備預(yù)先設(shè)定,F(xiàn)unction部分用于指示SRv6 SID的生成節(jié)點(diǎn)進(jìn)行相應(yīng)的功能操作。Function通過(guò)Opcode(Operation Code,操作碼)來(lái)顯性表征。
● Arguments是變量段,占據(jù)IPv6地址的低比特位。支持某些服務(wù)的時(shí)候需要的一些變量參數(shù)可以放在Arguments里面。當(dāng)前一個(gè)重要應(yīng)用是在EVPN(Ethernet Virtual Private Network,以太網(wǎng)虛擬專用網(wǎng))VPLS(Virtual Private LAN Service,虛擬專用局域網(wǎng)業(yè)務(wù))的CE(Customer Edge,用戶邊緣設(shè)備)多歸場(chǎng)景中,轉(zhuǎn)發(fā)BUM(Broadcast & Unknown-unicast & Multicast,廣播、未知單播、組播)流量時(shí),利用Arguments攜帶剪枝信息,以實(shí)現(xiàn)水平分割。
在RFC 8986中定義了很多行為(Behavior)[2],它們也被稱為指令。每個(gè)SID都會(huì)與一個(gè)指令綁定,用于指明在處理SID時(shí)需要執(zhí)行的動(dòng)作。典型的Behavior有End和End.X等。另外,RFC 8986中還定義了SID的一些附加特征(Flavor)。這些附加特征是可選項(xiàng),它們將會(huì)增強(qiáng)End系列指令的執(zhí)行動(dòng)作,滿足更豐富的業(yè)務(wù)需求。常見(jiàn)的附加特征包括PSP(Penultimate Segment Pop of the SRH,倒數(shù)第二段彈出SRH)、USP(Ultimate Segment Pop of the SRH,倒數(shù)第一段彈出SRH)、USD(Ultimate Segment Decapsulation,倒數(shù)第一段解封裝)等。除了以上常規(guī)的附加特征,為了支持SRv6提升傳輸效率,IETF草案draft-ietf-spring-srv6-srh-compression中還定義了REPLACE-C-SID、NEXT-C-SID、NEXT&REPLACE-C-SID等附加特征[4],關(guān)于這些附加特征的詳細(xì)介紹可以參考2.2節(jié)。
一個(gè)有序的SID列表構(gòu)成了SRH。SRH為報(bào)文提供轉(zhuǎn)發(fā)、封裝和解封裝等操作。下面以End SID和End.X SID為例來(lái)說(shuō)明SRv6 SID的結(jié)構(gòu),并簡(jiǎn)單說(shuō)明SRv6 SID的行為。
End SID表示Endpoint SID,用于標(biāo)識(shí)網(wǎng)絡(luò)中的某個(gè)目的節(jié)點(diǎn)(Node)。如圖1-5所示,在各個(gè)節(jié)點(diǎn)上配置Locator,然后為節(jié)點(diǎn)配置Function的Opcode。Locator和Function的Opcode組合就能得到一個(gè)SID,這個(gè)SID可以代表一個(gè)節(jié)點(diǎn),稱為End SID。End SID可以通過(guò)IGP擴(kuò)散到其他網(wǎng)元,并全局可見(jiàn)。

圖1-5 End SID
End.X SID表示三層交叉連接的Endpoint SID,用于標(biāo)識(shí)網(wǎng)絡(luò)中的某條鄰接。如圖1-6所示,在節(jié)點(diǎn)上配置Locator,然后為各個(gè)方向的鄰接配置Function的Opcode。Locator和Function的Opcode組合就能得到一個(gè)SID,這個(gè)SID可以代表一個(gè)鄰接,稱為End.X SID。End.X SID可以通過(guò)IGP擴(kuò)散到其他網(wǎng)元,并全局可見(jiàn)。

圖1-6 End.X SID
End SID和End.X SID分別代表節(jié)點(diǎn)和鄰接,都是路徑SID,二者組合編排的SID棧足夠表征任何一條SRv6路徑。SID棧代表了路徑信息,在IPv6 SRH中攜帶,SRv6就是通過(guò)這種方式實(shí)現(xiàn)了TE。
此外,也可以為VPN/EVPN實(shí)例等分配SID,這種SID就代表業(yè)務(wù)。由于IPv6地址空間足夠大,所以SRv6 SID能夠支持足夠多的業(yè)務(wù)。
當(dāng)前SRv6 SID主要包括路徑SID和業(yè)務(wù)SID兩種類型,例如End SID和End.X SID分別代表SRv6路徑所需要的節(jié)點(diǎn)和鄰接,而End.DT4 SID和End.DT6 SID分別代表IPv4 VPN和IPv6 VPN等。
SRv6節(jié)點(diǎn)的FIB(Forwarding Information Base,轉(zhuǎn)發(fā)信息庫(kù))中包含所有在本節(jié)點(diǎn)生成的SRv6 SID信息,例如End SID、End.X SID等。除了SRv6 SID,F(xiàn)IB里還包含綁定到這些SID的指令信息,以及這些指令相關(guān)的轉(zhuǎn)發(fā)信息。
2.SRv6 SRH的處理過(guò)程
在SRv6的SRH里,SL和Segment List信息共同決定報(bào)文頭部的IPv6 DA(Destination Address,目的地址)。SL最小值是0,最大值為SRH里的SID個(gè)數(shù)減1。如圖1-7所示,在SRv6中,每處理完一個(gè)SRv6 SID,SL字段就減1,IPv6 DA的信息隨之變換一次,其取值是指針當(dāng)前指向的SID的值。在圖1-7中,Segment List中包含n+1個(gè)SID,SL初始為n。
● 如果SL值是n,則IPv6 DA取值就是SID [n]的值。
● 如果SL值是n-1,則IPv6 DA取值就是SID [n-1]的值。
…………
● 如果SL值是1,則IPv6 DA取值就是SID [1]的值。
● 如果SL值是0,則IPv6 DA取值就是SID [0]的值。
如果節(jié)點(diǎn)不支持SRv6或者本節(jié)點(diǎn)的SID不在Segment List中,則不執(zhí)行上述動(dòng)作,僅按照最長(zhǎng)匹配查找普通IPv6路由轉(zhuǎn)發(fā)表進(jìn)行處理。

圖1-7 SRv6 SRH的處理過(guò)程
從以上描述可見(jiàn),節(jié)點(diǎn)對(duì)SRv6 SRH是從下到上進(jìn)行逆序操作,而且SRv6 SRH中的Segment在經(jīng)過(guò)節(jié)點(diǎn)處理后也不會(huì)彈出。
3.SRv6的兩種工作模式
SRv6有SRv6 Policy和SRv6 BE(Best Effort,盡力而為)兩種工作模式。這兩種模式都可以承載常見(jiàn)的傳統(tǒng)業(yè)務(wù),例如,BGP(Border Gateway Protocol,邊界網(wǎng)關(guān)協(xié)議)L3VPN(Layer 3 Virtual Private Network,三層虛擬專用網(wǎng))、EVPN L3VPN、EVPN VPLS/VPWS(Virtual Private Wire Service,虛擬專用線路業(yè)務(wù))、IPv4/IPv6公網(wǎng)等。SRv6 Policy既可以實(shí)現(xiàn)流量工程,也可以配合控制器更好地響應(yīng)業(yè)務(wù)的差異化需求,做到業(yè)務(wù)驅(qū)動(dòng)網(wǎng)絡(luò)。SRv6 BE是一種簡(jiǎn)化的SRv6實(shí)現(xiàn),正常情況下不含SRH,只能提供盡力而為的轉(zhuǎn)發(fā),不具備流量工程能力。SRv6 BE僅使用一個(gè)業(yè)務(wù)SID來(lái)指引報(bào)文轉(zhuǎn)發(fā)到生成該SID的節(jié)點(diǎn),并由該節(jié)點(diǎn)執(zhí)行業(yè)務(wù)SID的指令。
SRv6可以兼容IPv6路由轉(zhuǎn)發(fā),也可以基于聚合路由轉(zhuǎn)發(fā)。SRv6 BE只需要在網(wǎng)絡(luò)的頭尾節(jié)點(diǎn)部署,在中間節(jié)點(diǎn)僅支持IPv6轉(zhuǎn)發(fā)即可,這種方式對(duì)部署普通VPN具有獨(dú)特的優(yōu)勢(shì)。比如視頻業(yè)務(wù)在省級(jí)中心和市中心之間傳送,需要跨越數(shù)據(jù)中心網(wǎng)絡(luò)、城域網(wǎng)絡(luò)、國(guó)家IP骨干網(wǎng)絡(luò),如果以傳統(tǒng)方式部署MPLS VPN,則不可避免地需要跟國(guó)省干線的相關(guān)主管單位進(jìn)行協(xié)調(diào),各方配合執(zhí)行部分操作才能成功,開(kāi)通時(shí)間比較慢;如果采用SRv6 BE承載VPN,只需要在省級(jí)中心和市中心部署兩臺(tái)支持SRv6 VPN的PE(Provider Edge,運(yùn)營(yíng)商邊緣設(shè)備),基于IPv6路由的可達(dá)性很快就可以開(kāi)通業(yè)務(wù)。
在SRv6發(fā)展早期,基于IPv6路由的可達(dá)性,利用SRv6 BE快速開(kāi)通業(yè)務(wù),具有明顯優(yōu)勢(shì);在后續(xù)演進(jìn)中,可以按需升級(jí)網(wǎng)絡(luò)的中間節(jié)點(diǎn),部署SRv6 Policy,滿足高價(jià)值業(yè)務(wù)的需求。
SRv6 BE與SRv6 Policy的對(duì)比如表1-1所示。
表1-1 SRv6 BE與SRv6 Policy的對(duì)比

4.SRv6的主要特點(diǎn)
SRv6豐富的網(wǎng)絡(luò)編程能力能夠更好地滿足新的網(wǎng)絡(luò)業(yè)務(wù)的需求,而其兼容IPv6的特性也使得網(wǎng)絡(luò)業(yè)務(wù)部署更為簡(jiǎn)便。SRv6打破了云和網(wǎng)絡(luò)的邊界,可以促進(jìn)云網(wǎng)融合,實(shí)現(xiàn)應(yīng)用級(jí)的SLA保障,使千行百業(yè)受益。
SRv6也提供了豐富的編程空間,具備強(qiáng)大的編程能力來(lái)應(yīng)對(duì)新業(yè)務(wù)的發(fā)展。
如圖1-8所示,SRv6支持三重編程空間。

圖1-8 SRv6的三重編程空間
● Segment List編程空間:SRv6 SID可以自由組合并進(jìn)行路徑編程,由業(yè)務(wù)提出需求,控制器響應(yīng)業(yè)務(wù)需求、定義轉(zhuǎn)發(fā)路徑。
● SID編程空間:SRv6 Segment的長(zhǎng)度是128 bit,相比32 bit的MPLS標(biāo)簽封裝,有了一個(gè)更大的空間,并且可以靈活分段,提供比MPLS豐富、靈活的編程功能。
● Optional TLV(Type Length Value,類型長(zhǎng)度值)編程空間:SRH里還有可選TLV,可以用于進(jìn)一步自定義功能。SRH TLV提供了更好的擴(kuò)展性,可以攜帶長(zhǎng)度可變的數(shù)據(jù),例如,加密、認(rèn)證信息和性能檢測(cè)信息等。
SRv6是基于IPv6數(shù)據(jù)平面的SR技術(shù),結(jié)合了SR源路由優(yōu)勢(shì)和IPv6簡(jiǎn)潔、易擴(kuò)展的特質(zhì),具有其獨(dú)特的優(yōu)勢(shì)。SRv6技術(shù)特點(diǎn)及價(jià)值可以歸納為以下幾點(diǎn)。
● 智慧:SRv6具有強(qiáng)大的可編程能力。SRv6支持三重可編程空間,能滿足大量業(yè)務(wù)的不同訴求,契合了業(yè)務(wù)驅(qū)動(dòng)網(wǎng)絡(luò)的大潮流。
● 極簡(jiǎn):如圖1-9所示,SRv6不再使用LDP(Label Distribution Protocol,標(biāo)簽分發(fā)協(xié)議)/RSVP-TE(Resource Reservation Protocol-Traffic Engineering,資源預(yù)留協(xié)議流量工程),也不需要MPLS標(biāo)簽,既簡(jiǎn)化了協(xié)議,又使管理變得簡(jiǎn)單。EVPN和SRv6的結(jié)合,可以使得IP承載網(wǎng)絡(luò)簡(jiǎn)化、歸一。SRv6打破了MPLS跨AS(Autonomous System,自治系統(tǒng))邊界,部署簡(jiǎn)單,還提升了跨AS的體驗(yàn)。

圖1-9 SRv6簡(jiǎn)化網(wǎng)絡(luò)協(xié)議
● 純IP化:SRv6可以基于Native IPv6進(jìn)行轉(zhuǎn)發(fā)。SRv6是通過(guò)擴(kuò)展報(bào)文頭來(lái)實(shí)現(xiàn)的,沒(méi)有改變?cè)蠭Pv6報(bào)文的封裝結(jié)構(gòu),因此SRv6報(bào)文依然是IPv6報(bào)文,普通的IPv6設(shè)備也可以轉(zhuǎn)發(fā)SRv6報(bào)文。SRv6設(shè)備能夠和普通IPv6設(shè)備共同部署,對(duì)現(xiàn)有網(wǎng)絡(luò)具有更好的兼容性,可以支撐業(yè)務(wù)快速上線、平滑演進(jìn)。SRv6具有易于增量部署的優(yōu)點(diǎn),可以最大限度地保護(hù)用戶的投資。也因?yàn)镮P化,SRv6可以使用聚合路由工作,相比于MPLS,大大減少了表項(xiàng)數(shù)量,提升了可擴(kuò)展性。
基于以上特點(diǎn),SRv6不僅成為簡(jiǎn)化IP網(wǎng)絡(luò)架構(gòu)的利器,也為IPv6的發(fā)展帶來(lái)了新的發(fā)展機(jī)遇。
- 自動(dòng)駕駛網(wǎng)絡(luò):自智時(shí)代的網(wǎng)絡(luò)架構(gòu)
- 物聯(lián)網(wǎng)(IoT)基礎(chǔ):網(wǎng)絡(luò)技術(shù)+協(xié)議+用例
- 智能網(wǎng)聯(lián)汽車V2X與智能網(wǎng)聯(lián)設(shè)施I2X
- Hands-On Chatbot Development with Alexa Skills and Amazon Lex
- 物聯(lián)網(wǎng)+BIM:構(gòu)建數(shù)字孿生的未來(lái)
- 物聯(lián)網(wǎng)關(guān)鍵技術(shù)及應(yīng)用
- 企業(yè)私有云建設(shè)指南
- 網(wǎng)絡(luò)安全技術(shù)與解決方案(修訂版)
- 互聯(lián)網(wǎng)安全的40個(gè)智慧洞見(jiàn):2015年中國(guó)互聯(lián)網(wǎng)安全大會(huì)文集
- Getting Started with WebRTC
- 雷達(dá)饋線技術(shù)
- Mastering Dart
- 搶占下一個(gè)智能風(fēng)口:移動(dòng)物聯(lián)網(wǎng)
- 網(wǎng)絡(luò)設(shè)計(jì)與應(yīng)用(第2版)
- TD-LTE無(wú)線網(wǎng)絡(luò)規(guī)劃與設(shè)計(jì)