本發(fā)明涉及人工智能,尤其涉及一種間歇弱連接環(huán)境下多源能耗數據的傳輸方法。
背景技術:
1、為實現能源系統的智慧化管理,需要數據中心實時獲取能源消耗生命周期內各環(huán)節(jié)產生的數據,在整個傳輸過程中,網絡環(huán)境復雜多樣。在一些邊緣網絡或特殊應用場景中,網絡基礎設施較為薄弱,網絡質量得不到保障,存在弱連接窄帶寬等特點,具體表現在窄帶寬、高延時、高誤碼率、弱連接等方面,導致數據傳輸過程中會出現延遲、丟包、無碼等等不利于數據傳輸的因素。
2、再者,當前能源供需雙側規(guī)模不斷增大,現有信息平臺架構下,能源管理全鏈條內的數據采集設備信息化程度參差不齊,能耗數據類型多、數據量大、格式多樣化,各類數據在能源管理系統中的重要性也不相同。
技術實現思路
1、發(fā)明目的:本發(fā)明的目的是提供一種間歇弱連接環(huán)境下多源能耗數據的傳輸方法,通過對數據進行等級劃分,優(yōu)先實現關鍵數據的傳輸,以高效利用有限的網絡資源,并實現確保數據在不穩(wěn)定網絡環(huán)境下的高質量與可靠傳輸。
2、技術方案:一種間歇弱連接環(huán)境下多源能耗數據的傳輸方法,其中,多源能耗數據的傳輸架構包括傳輸任務調度模塊、數據匯聚模塊、路徑優(yōu)選模塊、訂閱分發(fā)模塊和主動發(fā)現模塊;
3、所述傳輸任務調度模塊,通過各對等端協同完成傳輸任務調度;
4、所述數據匯聚模塊,采用信息目錄增量更新的方式,實現不同子網間信息目錄的弱同步;對數據單元關聯數據對象的存儲路徑分散在各不同子網的端上的情形,采用主動發(fā)現的方式實現數據單元的匯聚下載;
5、所述路徑優(yōu)選模塊,通過綜合考慮傳輸延時和阻塞延時,計算端到端延時最短的路徑作為最優(yōu)路徑;
6、所述訂閱分發(fā)模塊,采用數據關聯和透明壓縮方法,對結構化、非結構化數據進行封裝,實現面向數據單元的數據分發(fā);
7、所述主動發(fā)現模塊,通過匹配調用方的關鍵詞,將匹配到的所有關聯數據的最短下載路徑返回給主動發(fā)現端;
8、實現步驟如下:
9、s1,所述傳輸任務調度模塊通過各對等端協同完成傳輸任務調度,并記錄數據斷點,由數據收發(fā)端和備份節(jié)點協同完成數據續(xù)傳和重傳任務;各協同端基于消息隊列實現對不同格式的數據的緩存,且所述路徑優(yōu)選模塊對緩存數據按照實時性要求進行優(yōu)先級排序,實現實時性要求高的數據優(yōu)先發(fā)送;
10、s2,所述數據匯聚模塊自動感知隨機的網絡情況,所述訂閱分發(fā)模塊通過建立能耗數據的自動訂閱分發(fā)機制,自動切換差異化的數據分發(fā)策略,確保數據傳輸與網絡質量的高度匹配;所述主動發(fā)現模塊將匹配到的所有關聯數據的最短下載路徑返回給主動發(fā)現端。
11、進一步,采用基于改進的dijkstra算法計算端到端延時最短的路徑,實現步驟如下:
12、s11,統計端與端之間所有的可傳輸路徑,并計算每條可傳輸路徑的傳輸延時;
13、s12,統計所有路徑上的節(jié)點的緩存隊列的長度,并計算每個節(jié)點的阻塞延時;
14、s13,將每條路徑的傳輸延時和阻塞延時之和作為其傳輸延時,選擇傳輸延時最短的路徑作為最優(yōu)路徑。
15、進一步,步驟s2中,對于多個邊緣云之間分發(fā)信息時,采用數據分級機制優(yōu)先傳輸對實時性要求較高的數據;所述數據分級機制,首先對數據去重,然后對數據進行分級排序;
16、所述數據去重的具體流程如下:
17、sa1,對收到的數據按照數據名稱進行排序;
18、sa2,比較任意相鄰兩份數據的名稱是否相同,去掉文件名稱相同的數據;
19、sa3,對數據名稱不同的數據,計算數據內容的hash值,比較任意兩份數據的hash結果值,去掉hash值相同的數據;
20、所述數據分級排序是指按傳輸實時性需求將端與端傳輸的數據分為強實時業(yè)務、弱實時業(yè)務和普通業(yè)務;其中,強實時業(yè)務主要包括協同控制信息;弱實時業(yè)務主要包括:數據采集命令和上傳命令;普通業(yè)務包括:文件和圖像。
21、進一步,選擇最優(yōu)路徑的具體流程如下:
22、sb1,對于主動發(fā)現模式,將發(fā)現端作為起點,其他具有下載數據的端作為該起點的可達點;對于訂閱分發(fā)模式,將收端作為起點,其他具有帶分發(fā)數據的端作為可達點;結合網絡狀態(tài),生成有向圖;
23、sb2,通過路徑權重計算方法,獲取有向圖每條邊的權重,并生成具有權重的有向圖;
24、sb3,定義一個數組d保存所有起點到各個端的最短時延;初始條件下,起點到起點距離為0,起點和與之相連的端的距離為該跳路徑的節(jié)點;
25、sb4,定義一個集合t保存所有已經找到出發(fā)點到該點最短路徑的節(jié)點;
26、sb5,選出與起點具有距離最小的端,將該端加入集合t,并以距離起點具有最小時延的端作為新的起點;
27、sb6,依次更新距離新起點的時延值,若該時延值和該端到其他端的時延值之和小于起點直接到達的距離值,則用該值替換直接到達值,否則不做改變;
28、sb7,重復步驟sb1-sb6,直到t中包含了圖中所有的節(jié)點,得到傳輸時延最小的備用路徑。
29、進一步,由發(fā)端數據的備份端實現數據續(xù)傳,數據續(xù)傳的場景包括:收端和發(fā)端網絡間斷場景、發(fā)端設備損壞導致數據丟失場景;兩種場景下,收端只收到部分數據,等待接收剩余部分數據;
30、對于收端和發(fā)端網絡間斷情形下的數據續(xù)傳,具體流程如下:
31、sc1,發(fā)送端發(fā)送分段頭包數據,并要求確認li_data_ack_req,等待應答;
32、sc2,接收端收到數據,應答一個部分確認li_info_sec_req;發(fā)送端收到部分應答,說明此時網絡可以連接,繼續(xù)發(fā)送,進入步驟sc4;
33、sc3,發(fā)送端在最大超時時間內沒有收到對頭包數據的應答,說明網絡阻塞或線路中斷,則停止發(fā)送剩余包數據,查詢全局目錄,找到備份節(jié)點,并發(fā)送文件續(xù)傳請求指令、文件發(fā)送斷點、收發(fā)地址/發(fā)送主題給備份節(jié)點,進入步驟sc7;
34、sc4,發(fā)送端每發(fā)送n個分段中間包,就要確認li_data_ack_req,等待應答;接收端將記錄接收到的每一包數據,應答一個部分確認li_info_sec_req,部分確認包中有這n包的接收標志位信息;
35、sc5,發(fā)送端收到部分應答,重新發(fā)送標志位標識沒有收到的數據,以及發(fā)送下一個分段中間包;
36、sc6,發(fā)送端在最大超時時間內,沒有收到應答信號,則存儲文件發(fā)送斷點,查詢全局目錄,找到備份節(jié)點,并發(fā)送文件續(xù)傳請求指令、文件發(fā)送斷點、收方地址/發(fā)送主題給備份節(jié)點;
37、sc7,備份節(jié)點收到文件續(xù)傳指令后,發(fā)送待續(xù)傳數據的前n個分段中間包,若在最大超時重傳時間內,收到收端對n包的接收標志位信息,則繼續(xù)發(fā)送收端沒有接收成功的數據,以及后續(xù)n個分段的中間包;若在最大超時時間內沒有收到收端的反饋,則說明備份節(jié)點與收端網絡間斷;則從備份節(jié)點收到對最后一包數據的成功收到反饋,說明文件發(fā)送成功;
38、對于發(fā)端設備損壞場景下的數據續(xù)傳,具體流程如下:
39、sd1,發(fā)送端發(fā)送分段的頭包數據,并要求確認li_data_ack_req,等待應答;
40、sd2,接收端收到數據,應答一個部分確認li_info_sec_req;發(fā)送端收到部分應答,說明此時網絡可以連接,繼續(xù)發(fā)送;
41、sd3,發(fā)送端每發(fā)送n個分段中間包,就要確認li_data_ack_req,等待應答;接收端將記錄接收到的每一包數據,應答一個部分確認li_info_sec_req,部分確認包中有這n個分段中間包的接收標志位信息;
42、sd4,接收端在超時時間內沒有收到后續(xù)n個分段中間包,查詢全局信息目標,發(fā)現接收文件備份節(jié)點;
43、sd5,向備份節(jié)點發(fā)起文件續(xù)傳請求,請求頭包括接收端地址、文件標識、文件斷點;
44、sd6,備份節(jié)點收到文件續(xù)傳請求后,首先發(fā)送部分確認,然后發(fā)送待續(xù)傳文件的前n個分段中間包后,收到接收端發(fā)送n個分段中間包的接收標志位信息;
45、sd7,備份節(jié)點繼續(xù)發(fā)送收端沒有接收成功的數據,以及后續(xù)n個分段的中間包,直到收到對最后一包數據的成功收到反饋,說明文件發(fā)送成功。
46、進一步,數據重傳包括:整份數據的重傳;在傳輸過程中數據分組的重傳;
47、對于整份數據的重傳,通過收端重新訂閱該文件,發(fā)端重新發(fā)送整個文件,解決收端數據丟失的問題;
48、對于傳輸過程中數據分組的重傳,由于網絡問題,分組丟包場景下,通過發(fā)端重傳丟掉的分組,解決數據分組丟包的問題。
49、進一步,對于整份數據的重傳,具體實現步驟如下:
50、se1,接收端首先查詢全局目錄,查詢存在該數據的節(jié)點;
51、se2,對等端若存在該數據,則直接分享到共享資源池中,接收端從共享資源池中讀取該數據;
52、se3,對等端若不存在該數據,則像存在該數據的最優(yōu)路徑節(jié)點發(fā)出重傳請求;
53、se4,存在該數據的端首先給出請求接收響應,然后發(fā)送前n個分段中間包,收到n個分段中間包的接收標志位信息;
54、se5,重新發(fā)送接收端沒有接收成功的數據,以及后續(xù)n個分段的中間包,直到收到最后分段中間包成功接收的反饋。
55、進一步,對于數據分組的重傳,具體流程如下:
56、sf1,發(fā)送端發(fā)送分段的頭包數據,并要求確認li_data_ack_req,等待應答;
57、sf2,接收端收到數據,應答一個部分確認li_info_sec_ack;發(fā)送端手收到部分應答,說明此時網絡可以連接,繼續(xù)發(fā)送;
58、sf3,發(fā)送端每發(fā)送n個分段中間包,要求確認li_data_ack_req;
59、sf4,發(fā)送端若在最大超時重傳時間內沒有收到接收端的反饋;
60、sf5,發(fā)送端重新發(fā)送n個分段中間包,重新發(fā)送次數不超過系統最大重新發(fā)送次數;
61、sf6,接收端將記錄接收到的每一包數據,應答一個部分確認li_info_sec_ack,部分確認包中有這n包的接收標志位信息;
62、sf7,發(fā)送端收到部分應答,重新發(fā)送標志位標識沒有收到的數據,以及發(fā)送下一個分段中間包;
63、sf8,重復步驟sf3-sf7;
64、sf9,發(fā)送端收到接收端的收到接收確認報文,說明在分組重傳機制下,收到完成可靠的數據。
65、本發(fā)明與現有技術相比,其顯著效果如下:
66、1、本發(fā)明通過采用基于數據優(yōu)先級和實時網絡傳輸狀態(tài)的最優(yōu)路徑生成方法,保障關鍵性能耗數據的優(yōu)先與高質量傳輸,解決了在不穩(wěn)定網絡環(huán)境下,智慧能源管理系統由于缺乏關鍵數據無法正常運行和調度的問題;
67、2、本發(fā)明通過采用基于訂閱分發(fā)模式的網絡間斷場景下的數據續(xù)傳方法,解決了5g/wifi/以太網/藍牙等不同網絡方式下,由于網絡間歇時斷、弱連接等不確定因素,造成的能耗數據匯聚不完整的問題;
68、3、本發(fā)明通過采用節(jié)點損壞場景下的數據保存與重傳方法,解決了能耗數據采集端和傳輸端因數據發(fā)送或接收設備異?;驌p壞,造成的能耗數據丟失和不完整的問題。