IPv6 源路由 · SRH 擴展報頭

基於 IPv6 的段路由

應用於 IPv6 數據面的 SR:段列表以 IPv6 地址序列的形式編碼在 SRH 擴展頭中,從而無需 MPLS 標籤或額外封裝開銷即可實現源路由。

SRv6 SID List 轉發

一個數據包穿越三個 SR 端點。SID 列表直接編碼在 IPv6 目的地址中:每一跳彈出當前活動的 uSID,並按下一個進行轉發。

SRv6 封包流經三個 endpoint,IPv6 SID list 為 fc00::1、fc00::2、fc00::3
SRv6:封包依 IPv6 SID list 依序通過三個 endpoint。

什麼是 Segment Routing?

Segment Routing(RFC 8402)是一種源路由架構。頭端將報文所經過的路徑編碼為一個稱為段(segment)的有序指令列表,網路依據該列表進行轉發,無需在每一跳維護逐流狀態。它運行於兩種數據平面:SR-MPLS 以 MPLS 標籤棧承載段列表,SRv6 以 IPv6 地址列表承載段列表。本頁介紹 SRv6,SR-MPLS 數據平面在其專屬頁面中說明。

什麼是 SRv6

SRv6(RFC 8986)將源端發起的路徑編碼為一個有序的 IPv6 地址列表,稱為 SID、每個 SID 表示特定節點上的拓撲指令(段)。Segment Routing Header(SRH, RFC 8754)在 IPv6 擴展報頭棧中承載 SID 列表。每個 SR 節點上,活躍 SID 被處理,SL(Segments Left)指針遞減,IPv6 DA 被更新為下一個 SID。

SRv6 SID 是可路由的 IPv6 地址,由 Locator(具有拓撲意義的前綴,通常為 /48 或 /64)和 Function(行為標識符)組成。這意味著 SR 轉發狀態嵌入在 IPv6 路由表中:無需獨立的標籤空間、無需 LFIB,也無需 MPLS 專用硬體資源。除非中轉節點為 SR 端點,否則無需感知 SRH。

SRv6 uSID (draft-ietf-spring-srv6-srh-compression) 顯著壓縮 SID 編碼:多個 uSID 被打包進單個 128 位 IPv6 地址,將每跳處理與報頭開銷降至在典型 SP 部署中可與 SR-MPLS 競爭的水平。

SRv6 Network Programming

RFC 8986 定義了一組 SRv6 端點行為:End(SR 端點)、End.X(帶交叉連接的端點)、End.T(帶表查找的端點)、End.DT4/DT6/DT46(帶解封裝和 L3 表查找的端點)。這些行為在 SID 語義中完整實現 VPN 轉發功能,可在純 IPv6 核心上提供 L3VPN 和 L2VPN 服務。

OcNOS-SP Implementation

IS-IS SRv6 Extensions

支持 SRv6 擴展(draft-ietf-lsr-isis-srv6-extensions)的 IS-IS:包含 Locator 通告、按前綴的 SID sub-TLV,以及適用於拓撲感知 SID 分配的 Flexible Algorithms。

uSID 壓縮

依據 draft-ietf-spring-srv6-srh-compression 實現 uSID。/32 塊,/48 locator。每個 128 位地址打包多個 uSID。與現有 IPv6 轉發硬體兼容:中轉無需 SRH 處理。

H.Encaps 行為

在頭端封裝插入帶 SRH 的新 IPv6 外層頭;支持 H.Encaps.Red 精簡 SRH(單 SID),並可根據匹配條件實現基於策略的轉向。

SRv6-TE 策略

支持包含顯式 SID 列表的 SRv6 流量工程策略,通過 PCEP 由 PCE 計算路徑,並支持跨域策略分發的 BGP SR-TE。

基於 SRv6 的 L3VPN

採用 End.DT46 行為進行解封裝和 VRF 查找。按 RFC 9252(BGP Overlay Services on SRv6)以 SRv6 傳輸承載 BGP L3VPN。從 Locator 塊為每個 VRF 分配 SID。

SR-MPLS Co-existence

可在同一節點同時啟用 SRv6 與 SR-MPLS,按 VPN 選擇傳輸面,並通過互通功能在域邊界完成跨域拼接。

OcNOS-Validated Hardware

僅供參考。 以下平台是經 SRv6 驗證硬體的代表性子集。完整且實時更新的合格平台列表(含 ASIC、埠密度與版本覆蓋情況)維護於 OcNOS 硬體兼容性列表中。

UfiSpace S9600-56DX
Qumran2c · 4×25G + 48×100G + 8×400G
UfiSpace S9600-28DX
Qumran2c · 4×25G + 24×100G + 4×400G
UfiSpace S9600-32X
Qumran2c · 32×100G
UfiSpace S9600-64X
Qumran2c · 64×100G
UfiSpace S9610-46DX
Qumran2c+ · 4×25G + 40×100G + 6×400G
UfiSpace S9510-28DC
Qumran2a · 24×25G + 2×100G + 2×400G
Edgecore AS7535-28XB
Qumran2a · 24×25G + 2×100G + 2×400G
UfiSpace S9510-30XC
Qumran2u · 28×25G + 2×100G

對比所有 OcNOS 驗證平台上的 SRv6 支持

Open Feature Matrix →
常見問題

常見問題

什麼是 SRv6?
SRv6(Segment Routing over IPv6)是一種直接使用 IPv6 資料平面的分段路由。每個分段被編碼為一個稱為 SID 的 128 位元 IPv6 位址,因此網路無需 MPLS 標籤堆疊,即可透過原生 IPv6 轉送沿著規劃路徑引導流量。
SRv6 與 SR-MPLS 有何區別?
SRv6 將分段編碼為 128 位元 IPv6 位址並在 IPv6 資料平面上轉送,而 SR-MPLS 將分段編碼為 MPLS 標籤並在 MPLS 資料平面上轉送。SRv6 在核心中僅需 IPv6,而 SR-MPLS 則保留一個 MPLS 轉送平面。
SRv6中的uSID是什麼?
uSID(micro-SID)將多條 SRv6 指令封裝進單個 128 位元 IPv6 位址,因此一個位址可承載多個分段。這縮短了分段清單,降低了封包負擔,並使更長的規劃路徑能夠納入標準 IPv6 轉送範圍之內。
SRv6 是否需要 MPLS?
不需要,SRv6無需MPLS。它執行於原生IPv6資料平面上,並使用IPv6位址作為區段識別碼,因此核心僅基於IPv6進行轉發。這使營運商無需MPLS標籤交換平面即可開展流量工程與服務路由。
SRv6中的SRH是什麼?
SRH(Segment Routing Header)是一種IPv6擴充標頭,用於承載封包必須遵循的SID有序清單。當封包沿路徑轉發時,SRH中的作用中區段決定下一跳,從而將經過設計的路由編碼在IPv6封包本身之內。
應選擇 SRv6 還是 SR-MPLS?
這取決於核心數據平面。SRv6 移除 MPLS,在原生 IPv6 上運行流量工程與 VPN 業務,適合 IPv6 優先及全新建設(greenfield)網路。SR-MPLS 保留 MPLS 轉發平面,適合已部署 MPLS 基礎、希望在不改變數據平面的前提下引入段路由的電信業者。OcNOS-SP 同時支持兩者,因此網路可以逐個域遷移,並在邊界處實現互通。
SRv6 是否支持 L3VPN?
支持。SRv6 使用 RFC 8986 定義的 End.DT4、End.DT6 和 End.DT46 端點行為承載 L3VPN,這些行為對報文進行解封裝並在目標 VRF 中查找。BGP 按照 RFC 9252 將每個 VPN 的 SID 作為 SRv6 業務進行通告,因此 VPN 可在純 IPv6 核心上運行,無需 MPLS 業務標籤。
OcNOS 中哪些硬體支持 SRv6?
OcNOS-SP 藉助 uSID 壓縮在 Broadcom Qumran 服務提供商平台上運行 SRv6,因此中轉節點無需 SRH 處理即可基於標準 IPv6 轉發。經過 SRv6 認證的平台的最新列表(含 ASIC、埠密度和版本)維護於 OcNOS Hardware Compatibility List 中。