SRv6探險(xiǎn)之旅(2)技術(shù)與測(cè)試方法解讀(下)
隨著SRv6技術(shù)應(yīng)用的日益普及,其測(cè)試工作的重要性也日益凸顯。通過(guò)全面的測(cè)試,我們可以有效驗(yàn)證網(wǎng)絡(luò)設(shè)備在SRv6控制面協(xié)議以及處理SRv6流量時(shí)是否符合相關(guān)標(biāo)準(zhǔn)和規(guī)范,例如SID的識(shí)別與處理、Segment List的解析與流量轉(zhuǎn)發(fā)等,這不僅有助于確保不同設(shè)備間的互操作性,還能通過(guò)測(cè)試深入評(píng)估網(wǎng)絡(luò)設(shè)備在處理SRv6流量時(shí)的性能表現(xiàn),包括轉(zhuǎn)發(fā)吞吐量、丟包率、時(shí)延等一系列關(guān)鍵指標(biāo),從而為SRv6技術(shù)的廣泛應(yīng)用提供有力保障。
上一篇文章《SRv6探險(xiǎn)之旅(1)技術(shù)與測(cè)試方法解讀(上)》闡述了SRv6 的原理部分,而本文將在此基礎(chǔ)上,進(jìn)一步介紹Spirent TestCenter如何配置及測(cè)試SRv6,包括:
1. SRv6 流量構(gòu)造
2. ISIS for SRv6測(cè)試
3. OSPFv3 for SRv6測(cè)試
4. BGP SRv6 Policy測(cè)試
1、SRv6 流量構(gòu)造
在掌握SRv6的基本原理之后,在構(gòu)建SRv6流量時(shí)便顯得簡(jiǎn)單多了。在Spirent TestCenter,我們可通過(guò)創(chuàng)建Raw Stream,并定義SR Header及目的IPv6地址等信息,能夠輕松生成源節(jié)點(diǎn)或任意段端點(diǎn)的SRv6數(shù)據(jù)包。這一方法可有效地驗(yàn)證被測(cè)設(shè)備在作為SRv6 Policy Transit節(jié)點(diǎn)或Egress節(jié)點(diǎn)時(shí)轉(zhuǎn)發(fā)SRv6流量、處理SRH以及解封裝SRv6報(bào)文等方面的性能。
以下是Spirent TestCenter中配置SRv6 Raw Stream的步驟:
--測(cè)試端口添加一條Raw StreamBlock
--構(gòu)造SRv6 Stream的報(bào)文封裝,默認(rèn)為IPv4封裝,刪除原IPv4 header
--添加IPv6 Header、IPv6 SR Header及SRv6 Payload(如 Payload內(nèi)層報(bào)文為IPv4)
--SRH Option List右鍵添加Segments
--編輯SRv6 Stream的各個(gè)Header相關(guān)字段
2. Last Entry:SRH頭中Segment List最后一個(gè)元素的索引,如上圖的Last Entry值為2,即轉(zhuǎn)發(fā)路徑的第一個(gè)SID的索引值
3. Segment Left:剩余未處理的Segment 個(gè)數(shù),每處理完一個(gè)SID,SL值減1,如上圖的Segment Left值為2,即當(dāng)前的SL指向第一個(gè)SID
4. IPv6 Destination:SRv6報(bào)文的目的地址,即SL指針?biāo)赶虻腟ID 地址
5. Destination MAC:和測(cè)試儀互連的DUT接口MAC地址
--根據(jù)如上的配置,Spirent Testcenter生成的SRv6報(bào)文解析如下
2、ISIS For SRv6 測(cè)試
在上一篇文章中,我們已介紹ISIS協(xié)議對(duì)于SRv6擴(kuò)展的TLV及Sub-TLV。本章節(jié)將說(shuō)明如何利用Spirent TestCenter配置ISIS協(xié)議,以通告SRv6的Locator及各類SID的Sub-TLV,旨在驗(yàn)證被測(cè)設(shè)備生成及處理Locator路由及SID表項(xiàng)方面的能力。
--添加ISIS Device并生成ISIS LSP,在生成ISIS LSP 的配置向?qū)Р襟E,使能SRv6
--或可通過(guò)編輯ISIS LSP 通告SRv6 Locator TLV及End.x/End SID 的Sub-TLV
通告SRv6 End.X/LAN End.X SID的Sub-TLV,在Neighbor TLV下添加
--配置完成,點(diǎn)擊Start Device并通告ISIS LSP,抓包可觀察到ISIS報(bào)文解析后的SRv6 TLV字段
3、OSPFv3 For SRv6測(cè)試
類似于ISIS SRv6擴(kuò)展,OSPFv3的SRv6擴(kuò)展同樣能夠通告Locator信息與SID信息。通過(guò)傳播SRv6 Locator LSA和Router LSA并攜帶End SID/End.X SID,使其服務(wù)于路徑編程,以驗(yàn)證被測(cè)設(shè)備對(duì)于OSPFv3 SRv6的支持和處理能力。以下是Spirent TestCenter配置OSPFv3 SRv6的具體方法:
--OSPFv3 Device使能擴(kuò)展LSA
--在生成OSPFv3 LSA 的配置向?qū)Р襟E,使能SRv6,配置Locator,End-SID及Adjacencies END.X SID等
--或可通過(guò)編輯OSPFv3 LSA 通告SRv6 Locator LSA及End.x/End SID 的Sub-TLV
通告SRv6 Locator LSA及End SID 的Sub-TLV,在SRv6 Locator LSA下添加
通告SRv6 End.X/LAN End.X SID的Sub-TLV,在Router LSA下添加
--配置完成,點(diǎn)擊Start Device并通告OSPFv3 LSA,抓包可觀察OSPFv3報(bào)文解析后的SRv6 字段
4、BGP SRv6 Policy測(cè)試
Spirent TestCenter具備仿真SDN控制器的能力,能夠利用Netconf、PCEP以及BGP等協(xié)議,將SRv6 Policy部署至轉(zhuǎn)發(fā)設(shè)備中。鑒于BGP協(xié)議其高度的成熟性且功能豐富、互通性好等優(yōu)勢(shì),已然成為了SDN南向協(xié)議的主流選擇。本章節(jié)介紹Spirent TestCenter如何利用BGP協(xié)議,實(shí)現(xiàn)SRv6 Policy路由的通告過(guò)程。
2、更新部分Segment Sub-TLV 的Type.
--創(chuàng)建IPv6的BGP
--配置AFI/Sub-AFI為IPv6:SR-TE-Policy
--選擇BGP SR-TE version,可根據(jù)被測(cè)設(shè)備支持情況選擇
--添加SR-TE Policy 路由,指定IP version 、SRv6 Policy的color和endpoint 地址
--指定通告SRv6 Policy路由時(shí)需要攜帶的Sub-TLV,例如Policy Name, CP (Candidate Path) Name及Preference等
--為每個(gè)CP設(shè)計(jì)轉(zhuǎn)發(fā)路徑Segment List并添加SID
每個(gè)CP可配置多個(gè)Segment List,在多個(gè)Segment List間,接收SRv6 Policy路由的源節(jié)點(diǎn)設(shè)備可根據(jù)配置的Sub-TLV Weight(可選)為不同的Segment List 指定不同的權(quán)重,以實(shí)現(xiàn)非等價(jià)負(fù)載分擔(dān)。每個(gè)Segment List可配置多個(gè)SID,在draft-sr-te-policy-03版本下,Type 2的Sub-TLV表示SRv6 SID;在draft-sr-te-policy-14版本下,Type B(13) 的Sub-TLV表示SRv6 SID。
--BGP 通告的SRv6-Policy路由解析如下
上述內(nèi)容僅是SRv6測(cè)試領(lǐng)域的冰山一角,隨著SRv6技術(shù)的不斷成熟,其應(yīng)用場(chǎng)景也越來(lái)越廣。后續(xù)還將介紹SRv6在VPN 場(chǎng)景的測(cè)試,敬請(qǐng)持續(xù)關(guān)注。