引 言
本文將簡要介紹HSR/PRP協(xié)議本身的一些概念,和PRP協(xié)議的主要機制,并通過展示虹科與西班牙的合作伙伴SoC-e/RELYUM提供的HSR/PRP相關(guān)解決方案,使各位讀者能夠具體了解HSR/PRP的實際應(yīng)用。
近年來,列車、工控甚至互聯(lián)網(wǎng)等行業(yè)對網(wǎng)絡(luò)可靠性傳輸?shù)男枨蟛粩嗵嵘又?dāng)今的網(wǎng)絡(luò)拓?fù)湟苍絹碓綇?fù)雜,亟需一項兼容性好、易于使用的冗余協(xié)議。如此背景使得HSR/PRP這兩項發(fā)布已久,并在電力行業(yè)已經(jīng)得到廣泛使用、驗證的冗余協(xié)議,再次出現(xiàn)在人們的視野之中。
什么是HSP/PRP?
HSR/PRP全稱分別為High-availability Seamless Redundancy(高可靠性無縫冗余)與Parallel Redundancy Protocol(并行冗余協(xié)議),其所屬的國際標(biāo)準(zhǔn)為IEC 62439,這是一個專注于解決高可靠性自動化網(wǎng)絡(luò)傳輸?shù)臉?biāo)準(zhǔn),共有7個部分,分別描述在鏈路層實現(xiàn)冗余的多種方法:
IEC 62439-1:2010
而HSR/PRP協(xié)議位于其中的第3部分,即IEC 62439-3。
IEC官方協(xié)議的鏈接如下:https://webstore.iec.ch/publication/24438
自2008年標(biāo)準(zhǔn)發(fā)布以來,IEC 62439-3也經(jīng)過了2010年、2012年、2016年的三次修訂,每次修訂均會修訂或添加不少新的內(nèi)容:
IEC 62439-3 各版本修訂內(nèi)容
從中也可以看到實際上2008年第一版的協(xié)議中只有PRP協(xié)議,HSR協(xié)議是在2010年的第二版中才添加進(jìn)去的。
最初,IEC發(fā)布此項標(biāo)準(zhǔn)主要目的是為了滿足IEC 61850-5中所提到的變電站自動化應(yīng)用中各通信組件或服務(wù)故障所要求的恢復(fù)時間問題,但協(xié)議設(shè)計時的通用性,使得這兩項協(xié)議能不僅僅適用于變電站的應(yīng)用場景下,而是成為一項工業(yè)網(wǎng)絡(luò)中的通用解決方案。
什么是PRP冗余機制?
HSR/PRP協(xié)議分別提供獨特的冗余機制進(jìn)行網(wǎng)絡(luò)鏈路的冗余備份,簡要的機制介紹如下:
名詞概念
SAN:Singly Attached Node,單端口節(jié)點,不實現(xiàn)PRP功能
DANP:Doubly Attached Node implementing PRP,PRP的雙端口節(jié)點,可直接發(fā)送PRP流量
RedBox:Redundancy Box,冗余盒,將SAN傳入的流量轉(zhuǎn)換成PRP流量發(fā)送出去
C Frame:原始信息幀,指代用戶想要冗余備份的信息
A Frame、B Frame:附帶特定字段的PRP信息幀,由原始信息幀擴展而來
PRP冗余機制的實現(xiàn),主要依托于兩個邏輯或物理分隔的子網(wǎng)(LAN A,LAN B,即所謂的A網(wǎng)、B網(wǎng)),以上圖中的信息傳輸為例:PRP發(fā)送方(Source DANP)將原始信息幀(C Frame)復(fù)制一份,并在兩份幀中添加一特定字段(RCT,下面會提到這個),形成PRP信息幀(A Frame、B Frame),分別從自身的兩個端口發(fā)送出去(分別對應(yīng)A網(wǎng)、B網(wǎng)),分別途徑兩個獨立的子網(wǎng)到達(dá)同一個PRP接收方(Destination DANP);PRP接收方從兩個端口分別接收到這兩份PRP信息幀后,會經(jīng)過一系列的幀處理算法進(jìn)行處理,簡而言之,就是依據(jù)“先來后到”的原則,將后到達(dá)的PRP信息幀消除,僅保留一份先到達(dá)的PRP信息幀,將特定字段消除后,還原成原來的原始信息,傳遞給上層。
那么問題來了,“A幀”和“B幀”是如何產(chǎn)生和消除的?具體的幀組成又是怎樣的呢?
這是DANP節(jié)點的簡要示意圖,主要分為上層(鏈路層以上)、LRE(Link Redundancy Entity,鏈路層冗余實體)子層、下層(鏈路層及物理層)。可以看到PRP設(shè)備的內(nèi)部實現(xiàn)只是在標(biāo)準(zhǔn)以太網(wǎng)設(shè)備的MAC層中增添了一個LRE子層,這個子層內(nèi)部實現(xiàn)了PRP信息幀的產(chǎn)生和消除算法。具體而言,就是在原始信息幀的基礎(chǔ)上,增加了一個RCT(Redundancy Control Trailer,冗余控制體)字段,并針對這個字段進(jìn)行一系列的處理,基于802.3標(biāo)準(zhǔn)以太網(wǎng)的PRP幀格式如下圖所示:
802.3 PRP幀格式
RCT字段由6個字節(jié)組成,內(nèi)部又會細(xì)分為不同的位域,指代不同的含義,簡要介紹如下:
簡要介紹
Sequence Number: 16位幀序列號,LRE對同一原始信息幀復(fù)制而來的PRP幀賦予相同的序列號,并會隨PRP幀的發(fā)送而遞增序列號的值
LSDU size:12位載荷大小,標(biāo)識Payload字段+RCT字段的總字節(jié)大小
Lan Id:4位子網(wǎng)ID,僅有兩個值可選,0xa、0xb,代表A、B兩個子網(wǎng)
PRP Suffix:16位PRP信息幀后綴,固定為0x88fb
LRE所實現(xiàn)的總體功能,就如先前所提到的:發(fā)送方向,將原始幀復(fù)制一份,打上A、B兩個子網(wǎng)的RCT字段,向兩個端口分別發(fā)送;接收方向,則是根據(jù)源MAC、RCT中的幀序列號識別某一PRP幀,后依據(jù)“先來后到”的原則,僅保留一份PRP信息幀,褪去RCT字段后傳輸給上層應(yīng)用程序。而LRE子層內(nèi)部的具體實現(xiàn),有興趣的讀者可以自行移步IEC官網(wǎng)了解。
下面是筆者測試SoC-eMEZU開發(fā)板(已搭載SoC-e PRP IP核,用作Redbox)時的一些抓包情況,詳細(xì)測試環(huán)境此處省略,僅供各位讀者參考PRP抓包的一些信息:
SoC-e MEZU開發(fā)板,已搭載SoC-e PRP IP核
抓包情況——A網(wǎng)的SAN節(jié)點
可以在A網(wǎng)SAN節(jié)點中wireshark的抓包情況中看到,MEZU開發(fā)板轉(zhuǎn)發(fā)ping幀的末尾中已經(jīng)附帶了6字節(jié)的RCT字段,也對應(yīng)了RCT中的各個位域:
00 04:幀序列號
a:LAN ID,指示這是A網(wǎng)
0 5a:即十進(jìn)制的90,即RCT+Payload段的長度,104減去以太網(wǎng)幀的14個字節(jié)的源MAC、目的MAC、幀類型(不包含前導(dǎo)碼和FCS)
88 fb:PRP幀后綴
另一邊B網(wǎng)中的SAN節(jié)點的抓包情況也大同小異,只是LAN ID字段有所不同:
00 04:幀序列號
b:LAN ID,指示這是B網(wǎng)
0 5a:即十進(jìn)制的90,即RCT+Payload段的長度,104減去以太網(wǎng)幀的14個字節(jié)的源MAC、目的MAC、幀類型(不包含前導(dǎo)碼和FCS)
88 fb:PRP幀后綴
最后對PRP做一個簡要的特點總結(jié):
1、數(shù)據(jù)熱交換,某個子網(wǎng)出現(xiàn)故障時,零恢復(fù)延時,不丟數(shù)據(jù)
2、純二層的實現(xiàn),可用于現(xiàn)有的任何工業(yè)以太網(wǎng)中,對應(yīng)用層的程序透明
3、在任何網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中均可使用
4、支持實時應(yīng)用場景的數(shù)據(jù)傳輸
5、需要搭建兩個物理或邏輯獨立的子網(wǎng)
虹科HSP/PRP解決方案
虹科與西班牙合作伙伴SoC-e/RELYUM給國內(nèi)的客戶帶來了有關(guān)于HSR/PRP的多種解決方案,包括面向OEM廠商的基于FPGA的HPS(HSR/PRPSwitch)、MRS(Managed RedundantSwitch)IP核,面向工業(yè)終端用戶的成品HSR/PRP板卡、交換機等等。關(guān)鍵特性如下:
HPS IP核:
產(chǎn)品介紹
1、集成10/100/1000多速率MAC,可提供(R)(G)MII接口與PHY芯片對接
2、提供基于輸入端口、VLANPCP(802.1Q)、DSCP TOS(IPv4/IPv6)等方式的QoS管理機制
3、支持自定義的基于源、目的MAC的報文幀過濾,支持最高4Kbytes的巨型幀
4、實現(xiàn)HSR/PRP冗余協(xié)議,HSR模式下支持HSR-SAN、HSR-PRP、HSR-HSR三種運行模式
5、支持1588v2混合時鐘(僅從站)、IRIG-B主時鐘的同步方式
6、向外部提供AXI4-Lite、UART、MDIO、CoE(Configurationover Ethernet)這四種配置IP內(nèi)部的控制/統(tǒng)計用寄存器的手段
7、支持Xilinx旗下多個系列、多個型號的FPGA,如6系列的Spartan、Virtex,7系列的Zynq,Spartan, Artix, Kintex, Virtex等
RELY-RB HSR/PRP交換機:
RELY-RB——整體視圖
RELY-RB——正面接口
RELY-RB——背面接口
RELY-RB+2多口HSR/PRP交換機——正面接口
產(chǎn)品介紹
1、產(chǎn)品已經(jīng)推出6年,成熟可靠,并已廣泛應(yīng)用于歐洲各個行業(yè),構(gòu)建高可靠性的工業(yè)網(wǎng)絡(luò)
2、支持豐富的網(wǎng)管、同步、冗余等協(xié)議,如802.1Q、HSR/PRP、RSTP、SNMP、IEEE 1588v2、NTP.。。
3、嵌入式的網(wǎng)頁管理器,不需要安裝額外的配置軟件,配置界面簡潔、友好
4、“1+2+2”的以太網(wǎng)端口配置,提供1個交換機管理接口、2個interlink端口、2個HSR/PRP冗余端口;另有RELY-RB+2的可選型號,可提供高達(dá)“1+7+2”的端口配置
應(yīng)用案例
在以太網(wǎng)技術(shù)和IP技術(shù)廣泛應(yīng)用的現(xiàn)在,傳統(tǒng)的音視頻廣播行業(yè)也完成了向AoIP(Audio over IP)的轉(zhuǎn)型,將以往需要專用硬件(HEADEND)和專用電纜所架構(gòu)的音視頻傳輸網(wǎng)絡(luò),由以太網(wǎng)/IP方案、高級應(yīng)用軟件以及通用服務(wù)器所替代。
但基于以太網(wǎng)/IP的新型的設(shè)備與網(wǎng)絡(luò)架構(gòu)也面臨著新的問題:如何實現(xiàn)零延時的故障恢復(fù),以在故障發(fā)生時保持所有站點間內(nèi)容的緊密同步?
SMPTE 2022-7冗余網(wǎng)絡(luò)場景——實際上與PRP的相同
RTP協(xié)議所處的位置——傳輸層
傳統(tǒng)音視頻網(wǎng)絡(luò)的冗余采用的是SMPTE2022-7這個基于RTP(Real-timeTransport Protocol)協(xié)議的冗余標(biāo)準(zhǔn):與PRP冗余網(wǎng)絡(luò)的場景相同,也是兩個子網(wǎng),發(fā)送方在RTP報頭中插入了序列號等信息(類似于PRP協(xié)議的RCT字段),接收方可以地通過識別RTP報頭中的特定信息,但是此標(biāo)準(zhǔn)在AoIP網(wǎng)絡(luò)中很明顯地會出現(xiàn)“水土不服”——RTP是一個建立在UDP協(xié)議之上的傳輸層的子層,意味著相當(dāng)多不基于UDP的報文(如HTTPS、SSH等等)無法通過這項標(biāo)準(zhǔn)進(jìn)行冗余傳輸。
而PRP正是此困境的解決方案,純二層實現(xiàn)使得更上層的協(xié)議能夠順利的基于PRP進(jìn)行冗余傳輸,而RELY基于自家的RELY-PCIe、RELY-RB產(chǎn)品為歐洲一家老牌的音視頻廣播服務(wù)公司提供PRP冗余方案的實現(xiàn),以下為網(wǎng)絡(luò)的拓?fù)鋱D:
應(yīng)用案例——音視頻廣播行業(yè)
網(wǎng)絡(luò)中,曾經(jīng)的HEADEND如今由數(shù)種肩負(fù)不同功能的設(shè)備組成,包括AoIP網(wǎng)關(guān)、配置服務(wù)器、音視頻流服務(wù)器等等。這些設(shè)備通過使用RELY-PCIe或RELY-RB,接入兩個獨立的子網(wǎng)之中,構(gòu)建了可靠的冗余傳輸網(wǎng)絡(luò),實現(xiàn)了傳統(tǒng)音視頻廣播行業(yè)網(wǎng)絡(luò)升級的最后一步。
責(zé)任編輯:tzh
評論
查看更多