本技術(shù)涉及profinet工業(yè)以太網(wǎng),尤其是涉及一種改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的方法、設(shè)備和存儲介質(zhì)。
背景技術(shù):
1、profinet(下面簡稱為pn)是iec61158公布的第10類現(xiàn)場總線/工業(yè)以太網(wǎng)標準,屬于實時以太網(wǎng)。在實際組網(wǎng)中,為保證網(wǎng)絡(luò)的可靠性和可用性,通常采用冗余的傳輸路徑(比如環(huán)形拓撲,如圖1所示),當網(wǎng)絡(luò)中發(fā)生單點故障導(dǎo)致一條傳輸路徑失效時,另外的替換路徑可以生效,網(wǎng)絡(luò)通信可以快速恢復(fù)正常。在profinet中定義了介質(zhì)冗余協(xié)議(mediaredundancy?protocol,簡稱mrp),mrp通過對環(huán)型以太網(wǎng)進行狀態(tài)監(jiān)控與控制來實現(xiàn)冗余的傳輸路徑。
2、pn網(wǎng)絡(luò)中的實時數(shù)據(jù),包括pn主站和從站間的周期性交互數(shù)據(jù)。pn主站和從站間典型的實時通信數(shù)據(jù)刷新周期為1~128ms。看門狗時間是指,如果pn設(shè)備在此時間內(nèi)沒有收到對方的周期數(shù)據(jù),則認為對方設(shè)備出現(xiàn)故障,觸發(fā)故障上報。pn設(shè)備中默認的看門狗時間為3倍的數(shù)據(jù)刷新周期時間,對應(yīng)典型值為3~384ms。在profinet協(xié)議中對mrp的性能要求為,當網(wǎng)絡(luò)節(jié)點為50,網(wǎng)絡(luò)中發(fā)生單點故障時,網(wǎng)絡(luò)重構(gòu)時間不大于200毫秒。此重構(gòu)時間并不能滿足數(shù)據(jù)刷新周期時間較小(1~32ms)的業(yè)務(wù)需求,當網(wǎng)絡(luò)中發(fā)生故障時,這些設(shè)備的看門狗會超時,導(dǎo)致pn主站和從站間業(yè)務(wù)中斷,從而pn主站和從站間需要重新建立業(yè)務(wù)鏈接。
3、由于網(wǎng)絡(luò)故障需要重建鏈時,pn主站需要發(fā)送dcp_req報文,并等待pn從站回復(fù)dcp_rsp報文。而此時由于網(wǎng)絡(luò)重構(gòu)并未完成,pn主站發(fā)送的第一個dcp_req報文無法到達從站,pn主站需要等待超時(通常為2秒)后重發(fā)dcp_req報文,這時網(wǎng)絡(luò)已重構(gòu)完成,pn從站可收到此報文并向pn主站回復(fù)dcp_rsp報文。此后pn主站和從站繼續(xù)重建鏈流程,恢復(fù)正常的業(yè)務(wù)。由于等待的超時時間(2秒)較長,總體pn業(yè)務(wù)恢復(fù)時間肯定要大于2秒。對比環(huán)網(wǎng)重構(gòu)時間小于200毫秒,但是pn業(yè)務(wù)恢復(fù)時間卻大于2秒。問題的原因在于pn主站發(fā)出的第一個dcp_req報文無法到達從站,且協(xié)議中規(guī)定的主站等待超時的時間(2秒)過長。
技術(shù)實現(xiàn)思路
1、本技術(shù)的主要目的在于提供了一種改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的方法、設(shè)備和存儲介質(zhì),以解決pn主站發(fā)出的第一個dcp_req報文無法到達從站,且協(xié)議中規(guī)定的主站等待超時的時間過長的技術(shù)問題。
2、為實現(xiàn)上述目的,本發(fā)明提供一種改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的方法,包括:實時監(jiān)測mrp冗余環(huán)網(wǎng)的狀態(tài),并獲取所述mrp冗余環(huán)網(wǎng)中pn主站發(fā)送的dcp_req報文;
3、將所述獲取到的dcp_req報文通過所述mrp冗余環(huán)網(wǎng)中的mrp主交換機緩存到報文緩沖區(qū)中;
4、響應(yīng)于監(jiān)測到所述mrp冗余環(huán)網(wǎng)的狀態(tài)由閉環(huán)狀態(tài)變?yōu)殚_環(huán)狀態(tài),檢測所述報文緩沖區(qū)中是否為空;
5、響應(yīng)于確定所述報文緩沖區(qū)不為空,通過所述mrp主交換機將所述dcp_req報文發(fā)送至pn從站。
6、可選地,所述將所述獲取到的dcp_req報文通過所述mrp冗余環(huán)網(wǎng)中的mrp主交換機緩存到報文緩沖區(qū)中,包括:
7、根據(jù)所述dcp_req報文對應(yīng)的站名,確定所述dcp_req報文是否對應(yīng)所述mrp主交換機;
8、響應(yīng)于確定所述dcp_req報文不對應(yīng)所述mrp主交換機,確定所述mrp主交換機對應(yīng)的mrp角色是否是mrm;
9、響應(yīng)于確定所述mrp主交換機對應(yīng)的mrp角色是mrm,確定所述mrp主交換機對應(yīng)的mrp冗余環(huán)網(wǎng)的狀態(tài);
10、響應(yīng)于確定所述mrp主交換機對應(yīng)的mrp冗余環(huán)網(wǎng)的狀態(tài)是閉環(huán)狀態(tài),將所述獲取到的dcp_req報文和對應(yīng)的當前時間緩存到報文緩沖區(qū)中。
11、可選地,響應(yīng)于確定所述mrp主交換機對應(yīng)的mrp角色不是mrm,不保存所述dcp_req報文。
12、可選地,響應(yīng)于確定所述mrp主交換機對應(yīng)的mrp冗余環(huán)網(wǎng)的狀態(tài)是開環(huán)狀態(tài),不保存所述dcp_req報文。
13、可選地,所述響應(yīng)于監(jiān)測到所述mrp冗余環(huán)網(wǎng)的狀態(tài)由閉環(huán)狀態(tài)變?yōu)殚_環(huán)狀態(tài),檢測所述報文緩沖區(qū)中是否為空,包括:
14、響應(yīng)于接收到所述mrp冗余環(huán)網(wǎng)的狀態(tài)變化通知,確定所述狀態(tài)變化是否是mrp冗余環(huán)網(wǎng)的狀態(tài)由閉環(huán)狀態(tài)變?yōu)殚_環(huán)狀態(tài);
15、響應(yīng)于確定所述狀態(tài)變化是mrp冗余環(huán)網(wǎng)的狀態(tài)由閉環(huán)狀態(tài)變?yōu)殚_環(huán)狀態(tài),確定所述報文緩沖區(qū)中是否有dcp_req報文。
16、可選地,所述響應(yīng)于確定所述報文緩沖區(qū)不為空,通過所述mrp主交換機將所述dcp_req報文發(fā)送至pn從站,包括:
17、響應(yīng)于確定所述報文緩沖區(qū)不為空,從所述報文緩沖區(qū)中選擇一個dcp_req報文;
18、根據(jù)所述dcp_req報文對應(yīng)保存的當前時間,確定所述dcp_req報文是否在報文有效期內(nèi);
19、響應(yīng)于確定所述dcp_req報文在報文有效期內(nèi),確定所述mrp冗余環(huán)網(wǎng)的mrp端口的工作狀態(tài)是否由block變?yōu)閒orward;
20、響應(yīng)于所述mrp端口的工作狀態(tài)由block變?yōu)閒orward,所述mrp主交換機通過所述mrp端口將所述dcp_req報文發(fā)送至所述pn從站。
21、可選地,在所述響應(yīng)于所述mrp端口的工作狀態(tài)由block變?yōu)閒orward,所述mrp主交換機通過所述mrp端口將所述dcp_req報文發(fā)送至所述pn從站之后,所述方法還包括:
22、確定所述報文緩沖區(qū)是否為空;
23、響應(yīng)于確定所述報文緩沖區(qū)不為空,通過所述mrp主交換機將所述dcp_req報文發(fā)送至pn從站。
24、可選地,響應(yīng)于所述mrp端口的工作狀態(tài)未由block變?yōu)閒orward,確定所述報文緩沖區(qū)是否為空;
25、響應(yīng)于確定所述報文緩沖區(qū)為空,所述mrp主交換機不發(fā)送dcp_req報文發(fā)送至pn從站。
26、此外,為實現(xiàn)上述目的,本發(fā)明還提供一種改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的設(shè)備,其特征在于,所述改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的設(shè)備包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的程序,所述改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的程序被所述處理器執(zhí)行時實現(xiàn)如上述中任一項所述的改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的方法的步驟。
27、此外,為實現(xiàn)上述目的,本發(fā)明還提供一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)上存儲有改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的程序,所述改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的程序被處理器執(zhí)行時實現(xiàn)如上述中任一項所述的改進mrp環(huán)網(wǎng)中profinet主從重建鏈過程的方法的步驟。
28、與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
29、通過實時監(jiān)測mrp冗余環(huán)網(wǎng)的狀態(tài),并獲取所述mrp冗余環(huán)網(wǎng)中pn主站發(fā)送的dcp_req報文;將所述獲取到的dcp_req報文通過所述mrp冗余環(huán)網(wǎng)中的mrp主交換機緩存到報文緩沖區(qū)中;響應(yīng)于監(jiān)測到所述mrp冗余環(huán)網(wǎng)的狀態(tài)由閉環(huán)狀態(tài)變?yōu)殚_環(huán)狀態(tài),檢測所述報文緩沖區(qū)中是否為空;響應(yīng)于確定所述報文緩沖區(qū)不為空,通過所述mrp主交換機將所述dcp_req報文發(fā)送至pn從站。本實施例實現(xiàn)了彌補profinet協(xié)議中重建鏈流程的缺陷,可以解決由于網(wǎng)絡(luò)故障導(dǎo)致dcp_req被異常丟棄,pn業(yè)務(wù)恢復(fù)時間過長的問題;可以大大縮短pn主從站間的業(yè)務(wù)重建鏈時間,由數(shù)秒降低為數(shù)十至數(shù)百毫秒;進一步提高profinet網(wǎng)絡(luò)的可靠性和可用性。