當(dāng)前最新的車載網(wǎng)絡(luò)廣泛采用以太網(wǎng)作為主干網(wǎng)絡(luò),為了增強(qiáng)網(wǎng)絡(luò)的可靠性,通常采用了環(huán)網(wǎng)拓?fù)浣Y(jié)構(gòu),允許數(shù)據(jù)通過多條路徑傳輸。然而,引入環(huán)網(wǎng)拓?fù)浣Y(jié)構(gòu)可能導(dǎo)致環(huán)路形成,進(jìn)而帶來廣播風(fēng)暴等潛在風(fēng)險(xiǎn)。為了規(guī)避這些問題,我們通常需要借助STP/RSTP等技術(shù)來防止環(huán)路形成,并在檢測(cè)到通信鏈路故障時(shí)實(shí)現(xiàn)無縫切換,從而減小故障對(duì)網(wǎng)絡(luò)通信的不良影響。然而,STP/RSTP等技術(shù)在鏈路切換時(shí)的收斂速度通常超過1秒,遠(yuǎn)遠(yuǎn)無法滿足車載網(wǎng)絡(luò)通信的要求。相比之下,ERPS技術(shù)為以太網(wǎng)環(huán)網(wǎng)提供了一種更快速的故障檢測(cè)和切換解決方案,確保在發(fā)生故障時(shí)網(wǎng)絡(luò)能夠以更快的速度恢復(fù)正常,因此在車載網(wǎng)絡(luò)中具有廣泛應(yīng)用的潛力。
什么是ERPS
ERPS全稱是Ethernet Ring Protection Switching,即以太網(wǎng)環(huán)路保護(hù)切換,是ITU-T定義的一種二層破壞性協(xié)議標(biāo)準(zhǔn),標(biāo)準(zhǔn)號(hào)為ITU-T G.8032/Y1344,因此又稱為G.8032,它定義了R-APS(Ring Auto Protecting Switching)協(xié)議報(bào)文和保護(hù)切換機(jī)制。ERPS包含v1和v2兩個(gè)版本,其中v2版本新增了子環(huán)等功能,且v2完全兼容v1。
以太網(wǎng)交換網(wǎng)絡(luò)中為了進(jìn)行鏈路備份,提高網(wǎng)絡(luò)可靠性而引入的環(huán)網(wǎng)拓?fù)鋾?huì)使網(wǎng)絡(luò)上產(chǎn)生環(huán)路,可能會(huì)引起廣播風(fēng)暴以及MAC地址表不穩(wěn)定等現(xiàn)象,從而影響用戶通信質(zhì)量,甚至導(dǎo)致通信中斷。為解決環(huán)路問題,引入了一系列的環(huán)網(wǎng)協(xié)議,包括RRPP、STP/RSTP/MSTP、SEP、ERPS等,其中ERPS旨在提供快速的故障檢測(cè)和切換,以確保網(wǎng)絡(luò)在出現(xiàn)故障時(shí)能夠迅速地從備用路徑傳輸數(shù)據(jù),減小網(wǎng)絡(luò)中斷的時(shí)間,從而有效保證用戶通信質(zhì)量。
ERPS技術(shù)和STP/RSTP/MSTP、RRPP、SEP等其他二層環(huán)路協(xié)議比較,具有以下優(yōu)勢(shì):
收斂速度快
ERPS吸取了STP/RSTP/MSTP等環(huán)網(wǎng)保護(hù)技術(shù)的優(yōu)點(diǎn),優(yōu)化了檢測(cè)機(jī)制,收斂速度更快,可以達(dá)到ms級(jí)。
兼容性高
ERPS是ITU-T發(fā)布的標(biāo)準(zhǔn)二層環(huán)路協(xié)議,如果環(huán)網(wǎng)內(nèi)制造商的設(shè)備都支持該協(xié)議,則可以實(shí)現(xiàn)互通。
ERPS原理
1.ERPS基本概念
ERPS的基本原理是通過阻塞環(huán)路中的部分端口,達(dá)到消除環(huán)路的目的,并通過快速檢測(cè)環(huán)路中的故障,選擇備份路徑并在切換后盡快恢復(fù)數(shù)據(jù)傳輸,以確保在發(fā)生故障時(shí)網(wǎng)絡(luò)能夠迅速而有效地繼續(xù)運(yùn)行。下面結(jié)合圖1的單環(huán)結(jié)構(gòu),介紹ERPS涉及到的一些基本概念。
圖1. ERPS單環(huán)示意圖
環(huán)(Ethernet ring)
ERPS環(huán)是 ERPS協(xié)議的基本單位,是由一組配置了相同的控制 VLAN 且互連的交換設(shè)備構(gòu)成。對(duì)于多環(huán)結(jié)構(gòu),則包含一個(gè)主環(huán)和至少一個(gè)子環(huán)。
節(jié)點(diǎn)(Ethernet ring node)
加入ERPS環(huán)的二層交換設(shè)備稱之為節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)不能多于兩個(gè)端口加入同一個(gè)ERPS環(huán)中,圖1中的Switch A ~ Switch D即為此ERPS環(huán)中的4個(gè)節(jié)點(diǎn)。
環(huán)網(wǎng)保護(hù)鏈路(RPL - Ring Protection Link)
非故障狀態(tài)下通過阻塞該鏈路兩端的端口防止形成環(huán)路,其兩端的端口分別為RPL owner端口與RPL neighbour端口。
端口角色(Port role)
ERPS協(xié)議中規(guī)定的端口角色主要有RPL owner端口、RPL neighbour端口和普通端口三種類型。其中RPL neighbour端口類型只有ERPSv2版本支持,v1版本不支持。
RPL owner端口
處于RPL鏈路一端的端口,由用戶配置指定,一個(gè)ERPS環(huán)只有一個(gè)RPL owner端口。非故障狀態(tài)下RPL owner 端口處于阻塞狀態(tài),以防止鏈路產(chǎn)生環(huán)路。含有RPL owner端口的節(jié)點(diǎn)又稱為RPL owner節(jié)點(diǎn)。
RPL neighbour端口
處于RPL鏈路另一端的端口,RPL neighbour端口指的是與RPL owner端口直接相連的節(jié)點(diǎn)端口。非故障狀態(tài)下,RPL neighbour端口處于阻塞狀態(tài),以防止產(chǎn)生環(huán)路。當(dāng) ERPS環(huán)網(wǎng)非RPL鏈路出現(xiàn)故障時(shí),RPL owner端口和 RPL neighbour端口都會(huì)被打開。含有RPL neighbour端口的節(jié)點(diǎn)又稱為RPL neighbour節(jié)點(diǎn)。
普通端口
在ERPS環(huán)中,除RPL owner和RPL neighbour以外的端口都是普通端口。普通端口負(fù)責(zé)監(jiān)測(cè)自己直連的鏈路狀態(tài),并把鏈路狀態(tài)變化及時(shí)通知環(huán)網(wǎng)中其他節(jié)點(diǎn)。
2.ERPS協(xié)議報(bào)文
ERPS協(xié)議傳遞消息使用的是R-APS PDU,其格式如圖2所示,這是OAM消息定義中的一種,具體可參考IUT-T G.8013/Y1731的定義。R-APS PDU的目標(biāo)MAC地址為0x01-0x19-0xA7-0x00-0x00-[Ring ID],其中Ring ID的默認(rèn)值為0x01。
圖2. R-APS PDU格式
MEL:標(biāo)識(shí)維護(hù)實(shí)例等級(jí)。
Version:ERPS協(xié)議版本,0x00為v1版本,0x01為v2版本。
OpCode:取固定值0x28,表明這是R-APS PDU。
Flags:取固定值0x00,此字段在接收時(shí)會(huì)被忽略。
TLV Offset:取固定值0x20,表示此PDU中的TLV從本字段之后偏移32個(gè)字節(jié)后開始。
R-APS Specific Information:攜帶ERPS環(huán)的重要信息,后文再詳細(xì)介紹。
Optional TLV:用戶可自定義需要攜帶的額外信息,如無額外信息需要攜帶,則無此字段。
End TLV:取固定值0x00。
針對(duì)R-APS Specific Information,在ERPS v2版本中的定義如圖3所示。
圖3. R-APS specific information格式
Request/State:標(biāo)識(shí)該信息是請(qǐng)求信息或當(dāng)前狀態(tài)信息。
表1. Request/status取值含義表
Sub-code:配合Request/status字段使用,當(dāng)Request/status取值為1110時(shí),本字段為0000表示FDB表項(xiàng)刷新請(qǐng)求。當(dāng)Request/status取值為其他值時(shí),本字段為保留字段,且在接收過程中會(huì)被忽略。
Status:包含特定的狀態(tài)信息。
RB(RPL Blocked):對(duì)于RPL owner節(jié)點(diǎn),取值為1表示RPL鏈路被阻塞,取值為0表示RPL鏈路解除阻塞。非RPL owner節(jié)點(diǎn)發(fā)送的R-APS PDU中此值為0。
DNF(Do Not Flush):取值為1表示接收方應(yīng)執(zhí)行FDB表切換,取值為0表示接收方不執(zhí)行FDB表切換。
BPR(Blocked Port Reference):阻塞端口標(biāo)志位,取值為0表示阻塞ERPS環(huán)的第一個(gè)端口,取值為1表示阻塞ERPS環(huán)的第二個(gè)端口。
Node ID:發(fā)送此消息的節(jié)點(diǎn)MAC地址,屬于信息類字段,不影響ERPS環(huán)的保護(hù)切換過程。
Reserved 2:保留
3.ERPS單環(huán)鏈路故障保護(hù)切換過程
前文提到ERPS環(huán)是通過阻塞RPL Owner及RPL Neighbor端口達(dá)到消除環(huán)路的目的,并在檢測(cè)到環(huán)路中出現(xiàn)故障時(shí),通過更新FDB表和端口狀態(tài)快速切換數(shù)據(jù)傳輸路徑保證數(shù)據(jù)傳輸,接下來將按照非故障-故障-故障移除的過程分析ERPS環(huán)網(wǎng)的保護(hù)切換過程。
1.非故障狀態(tài)如圖4所示,在非故障狀態(tài)下會(huì)阻塞RPL owner端口和RPL neighbour端口以防止形成環(huán)路,同時(shí)RPL owner節(jié)點(diǎn)會(huì)向其所在ERPS環(huán)的其他節(jié)點(diǎn)周期發(fā)送NRRB R-APS報(bào)文(即Request/State取值為0000,同時(shí)Status字段的RB位取值為1,表示RPL鏈路處于阻塞狀態(tài)),表明當(dāng)前ERPS環(huán)中無故障。
圖4. ERPS單環(huán)非故障狀態(tài)
2.鏈路故障如圖5所示,當(dāng)Switch C和Switch D之間的鏈路發(fā)生故障時(shí)(即檢測(cè)到鏈路link down),啟動(dòng)保護(hù)切換機(jī)制,將故障鏈路兩端的端口阻塞并刷新本設(shè)備的FDB表。然后Switch C和Switch D通過發(fā)送SF R-APS報(bào)文將故障信息發(fā)送給ERPS環(huán)中的其他節(jié)點(diǎn)。當(dāng)Switch A和Switch B收到SF R-APS報(bào)文后,分別打開RPL owner端口和RPL neighbour端口并刷新FDB表,保證通信暢通。
圖5. ERPS單環(huán)鏈路故障狀態(tài)
3.鏈路故障移除如圖6所示,當(dāng)Switch C和Switch D之間的鏈路故障移除后(即檢測(cè)到鏈路重新link up),啟動(dòng)故障回切模式,首先Switch C和Switch D停止發(fā)送SF R-APS報(bào)文并向外發(fā)送NR R-APS報(bào)文表明故障移除,Switch A和Switch B收到NR R-APS報(bào)文后,分別阻塞RPL owner端口和RPL neighbour端口并刷新FDB表,同時(shí)RPL owner節(jié)點(diǎn)向外發(fā)送NRRB R-APS報(bào)文,當(dāng)Switch C和Switch D收到NRRB R-APS報(bào)文后,將原先故障狀態(tài)下阻塞的端口打開,停止發(fā)送NR R-APS報(bào)文并刷新FDB表。
圖6. ERPS單環(huán)鏈路故障移除狀態(tài)
總結(jié)
ERPS是以太網(wǎng)環(huán)網(wǎng)技術(shù)中的一種,主要通過阻塞部分端口來避免環(huán)路帶來的廣播風(fēng)暴風(fēng)險(xiǎn)等問題。同時(shí),通過快速故障檢測(cè)等機(jī)制實(shí)現(xiàn)通信鏈路的快速切換,可以滿足車載網(wǎng)絡(luò)等場(chǎng)景的應(yīng)用需求。近些年出現(xiàn)的環(huán)網(wǎng)冗余技術(shù)中還有時(shí)間敏感網(wǎng)絡(luò)TSN中的IEEE 802.1 CB協(xié)議,北匯信息針對(duì)CB協(xié)議的測(cè)試開發(fā)及測(cè)試實(shí)施也積累了豐富的經(jīng)驗(yàn),期待后續(xù)有機(jī)會(huì)與大家分享。
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5460瀏覽量
172590 -
通信
+關(guān)注
關(guān)注
18文章
6069瀏覽量
136372 -
車載網(wǎng)絡(luò)
+關(guān)注
關(guān)注
6文章
160瀏覽量
31839
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論