亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種應(yīng)用層可靠組播傳輸控制方法

        2023-07-05 13:57:04曹雪君
        航天控制 2023年3期
        關(guān)鍵詞:按序發(fā)送數(shù)據(jù)應(yīng)用層

        曹雪君,童 心

        北京航天自動控制研究所,北京 100854

        0 引言

        隨著航天領(lǐng)域業(yè)務(wù)的發(fā)展,戰(zhàn)術(shù)及運(yùn)載領(lǐng)域?qū)υ囼灁?shù)據(jù)的實(shí)時處理效率不斷地提出新的要求。由于試驗數(shù)據(jù)的種類和數(shù)量越來越多,多屏顯示的需求日益增加。數(shù)據(jù)既需要在多個終端之間實(shí)現(xiàn)可靠傳輸,又需要保證傳輸?shù)男省@肨CP通信技術(shù),發(fā)送方與多個終端同時建立多條TCP傳輸通路可以保證傳輸?shù)目煽啃?但TCP的三次握手及確認(rèn)機(jī)制,使網(wǎng)絡(luò)傳輸?shù)膲毫^大,由此產(chǎn)生的延遲無法滿足航天領(lǐng)域?qū)?shù)據(jù)處理實(shí)時性的要求;基于UDP的組播傳輸能夠解決傳輸效率問題,但由于航天型號試驗中時序數(shù)據(jù)的重要性較高,必須保證傳輸?shù)目煽啃?因此組播的不可靠傳輸又無法滿足此要求。另外,航天領(lǐng)域的特殊性質(zhì)使得設(shè)備的國產(chǎn)化要求日益激增,雖然目前已有一些針對國產(chǎn)化數(shù)據(jù)處理技術(shù)的優(yōu)化方法[1-2],但對于數(shù)據(jù)傳輸?shù)膬?yōu)化研究卻較少。因此,航天領(lǐng)域的數(shù)據(jù)處理對數(shù)據(jù)傳輸提出了更高的要求。

        本文提出了一種應(yīng)用層可靠組播傳輸控制方法,該方法在發(fā)送數(shù)據(jù)時添加額外的序號信息、并定時發(fā)送心跳信息,接收方反饋對數(shù)據(jù)的接收情況,通過收發(fā)雙方不斷地進(jìn)行信息交互,實(shí)現(xiàn)組播傳輸?shù)目煽啃浴?/p>

        1 應(yīng)用層可靠組播傳輸控制技術(shù)研究

        1.1 現(xiàn)有應(yīng)用層組播方法

        目前對應(yīng)用層組播的研究成果方面,文獻(xiàn)[3-6]主要對應(yīng)用層組播算法進(jìn)行了研究和優(yōu)化,提高了組播傳輸?shù)男省⒎€(wěn)定性等,但并不能保證數(shù)據(jù)傳輸?shù)目煽啃?。在提升可靠性方?目前有M-THROM[7]模型,該模型適用于低時延的情況,但由于模型實(shí)現(xiàn)的底層依賴TCP協(xié)議,因此開銷過大;主動隨時較發(fā)[8]通過環(huán)結(jié)構(gòu)提高數(shù)據(jù)傳輸?shù)目煽啃?但該方法依賴概率論,并不保證絕對可靠;此外,基于心跳機(jī)制的差錯控制模型[9]采用了心跳與序列號控制的方法,該方法仍只提供合理保證。本文在該方法的基礎(chǔ)上進(jìn)行擴(kuò)展,進(jìn)一步保證應(yīng)用層組播傳輸?shù)目煽啃浴?/p>

        1.2 可靠組播實(shí)現(xiàn)思路

        基于UDP的組播發(fā)送方只負(fù)責(zé)發(fā)送數(shù)據(jù),不考慮接收方對數(shù)據(jù)的接收情況,若要實(shí)現(xiàn)可靠傳輸,需要收發(fā)雙方進(jìn)行額外的信息交互,互相反饋各自收發(fā)情況。

        對于發(fā)送方,需要定期向接收方反饋已發(fā)送的數(shù)據(jù)報文信息。對于接收方,需要判斷是否存在丟失的數(shù)據(jù)報文,當(dāng)存在丟失的數(shù)據(jù)時,將丟包信息反饋給發(fā)送方進(jìn)行重新發(fā)送。發(fā)送方每發(fā)送一包數(shù)據(jù)報文時,需要先緩存該數(shù)據(jù)報文,以便丟包時重發(fā)。但緩存數(shù)據(jù)又不宜過多,必須定期清除緩存中所有接收方均已收到的數(shù)據(jù)報文。因此,接收方還需要向發(fā)送方反饋已收到的報文信息。基于上述機(jī)理,將可靠組播傳輸思想闡述如下:

        發(fā)送方在發(fā)送數(shù)據(jù)時,對數(shù)據(jù)報文進(jìn)行連續(xù)按序遞增編號,即數(shù)據(jù)報文中攜帶報文序號。發(fā)送方定期廣播心跳報文,心跳報文攜帶已發(fā)送的最大報文序號。接收方接收到心跳報文后,根據(jù)心跳報文中攜帶的序號,判斷是否存在丟包。如若丟包,則向發(fā)送方反饋丟包的數(shù)據(jù)報文序號,以便發(fā)送方在收到丟包信息時重新發(fā)送該序號的數(shù)據(jù)。

        發(fā)送方在發(fā)送數(shù)據(jù)后將數(shù)據(jù)在本地進(jìn)行緩存。接收方定期向發(fā)送方反饋已連續(xù)按序收到的最大報文序號。發(fā)送方根據(jù)所有接收方反饋的序號判斷可以清除的緩存數(shù)據(jù)。

        接收方接收到的數(shù)據(jù)可能存在丟包和亂序,為了提高處理效率,接收方也采用了緩存機(jī)制,將非按序接收到的報文數(shù)據(jù)內(nèi)容進(jìn)行緩存。直到接收到的數(shù)據(jù)包使緩存中的數(shù)據(jù)連續(xù),則從緩存中取數(shù)據(jù)進(jìn)行處理并將該數(shù)據(jù)從緩存清除。

        2 應(yīng)用層可靠組播設(shè)計與實(shí)現(xiàn)

        2.1 報文分類與結(jié)構(gòu)

        傳統(tǒng)的組播傳播方式中,發(fā)送方直接將數(shù)據(jù)內(nèi)容發(fā)送即可,不考慮接收方丟包及亂序的情況。為了實(shí)現(xiàn)組播傳輸?shù)目煽啃?首先對應(yīng)用層的傳輸報文進(jìn)行擴(kuò)展。在本文提出的可靠組播傳輸模型中,發(fā)送方的報文分為2類:數(shù)據(jù)報文和心跳報文。接收方為了反饋接收到的數(shù)據(jù)情況,向發(fā)送方反饋的報文也分為2類:NAK重發(fā)報文和ACK確認(rèn)報文。

        2.1.1 發(fā)送方報文

        數(shù)據(jù)報文:發(fā)送方的數(shù)據(jù)報文攜帶數(shù)據(jù)內(nèi)容和報文序號,其中報文序號從1開始遞增,用來控制組播傳輸數(shù)據(jù)的可靠性與有序性。

        心跳報文:發(fā)送方定時發(fā)送心跳報文,用于通知接收方目前已發(fā)送的最大數(shù)據(jù)報文序號。

        發(fā)送方報文的具體格式見表1。

        表1 發(fā)送方報文格式

        2.1.2 接收方報文

        NAK重發(fā)報文:接收方反饋的NAK重發(fā)報文攜帶丟失的報文序號,用于通知發(fā)送方重新發(fā)送該序號的數(shù)據(jù)報文,以實(shí)現(xiàn)丟包重傳機(jī)制。

        ACK確認(rèn)報文:接收方反饋的ACK確認(rèn)報文攜帶已按序且連續(xù)收到的最大報文序號,用于發(fā)送方清除緩存中的數(shù)據(jù)報文。

        接收方報文的具體格式見表2。

        表2 接收方報文格式

        2.2 發(fā)送方對報文的處理策略

        1)發(fā)送數(shù)據(jù)報文的處理邏輯

        發(fā)送方每發(fā)送一包數(shù)據(jù)報文,首先更新當(dāng)前已經(jīng)發(fā)送的最大報文序號,用于后續(xù)發(fā)送心跳報文時使用;其次緩存該數(shù)據(jù)報文內(nèi)容,以便在接收方丟包時重發(fā)。

        2)發(fā)送心跳報文的處理邏輯

        發(fā)送方定時發(fā)送心跳報文,心跳報文攜帶發(fā)送方已經(jīng)發(fā)送的最大報文序號。

        3)接收NAK重發(fā)報文的處理邏輯

        每當(dāng)發(fā)送方收到一條NAK重發(fā)報文,根據(jù)NAK重發(fā)報文中的序號,在緩存中查找該序號對應(yīng)的數(shù)據(jù)內(nèi)容,將該數(shù)據(jù)內(nèi)容重新進(jìn)行廣播發(fā)送。

        4)接收ACK確認(rèn)報文的處理邏輯

        ACK確認(rèn)報文攜帶該接收方已按序收到的最大報文序號,用于發(fā)送方刪除數(shù)據(jù)報文緩存。由于組播存在多個接收方,每個接收方收到的最大報文序號可能不同,因此需要分別記錄。

        每當(dāng)發(fā)送方收到一條ACK確認(rèn)報文,記錄該報文發(fā)送者的IP地址、發(fā)送時間、以及攜帶的最大報文序號。由于接收方可能中途退出或掉線,當(dāng)發(fā)送方清除數(shù)據(jù)報文緩存時,首先需要判斷當(dāng)前在線的接收方。判斷某個接收方是否在線時,根據(jù)當(dāng)前時間以及最后收到該接收方ACK確認(rèn)報文的時間,當(dāng)兩者之間的時間差超過一定域值時,認(rèn)為該接收方已經(jīng)退出。其次,比較所有在線接收方的最大報文序號,取最小值作為發(fā)送方可以刪除的最大報文序號,這樣可保證所有當(dāng)前在線的接收方均已收到該序號前的所有數(shù)據(jù)報文。發(fā)送方清除該序號前的所有緩存報文。

        2.3 接收方對報文的處理策略

        2.3.1 接收數(shù)據(jù)報文處理邏輯

        應(yīng)用層可靠組播傳輸?shù)暮诵脑谟诮邮辗綄?shù)據(jù)報文的處理。當(dāng)收到亂序甚至丟包的數(shù)據(jù)報文時,如何對報文進(jìn)行緩存、重排處理,是整個可靠組播技術(shù)的關(guān)鍵所在。

        接收方收到數(shù)據(jù)報文后,根據(jù)該數(shù)據(jù)報文的序號,有如下幾種操作方式:丟棄處理、緩存處理、正常處理該報文、處理該報文及緩存報文。

        1)丟棄處理:由于存在多個接收方,某一接收方丟失數(shù)據(jù)并要求發(fā)送方重發(fā)數(shù)據(jù)報文時,其他接收方可能會收到重復(fù)的數(shù)據(jù)報文,對于收到的重復(fù)報文,直接丟棄即可。

        2)緩存處理:當(dāng)收到一條未收到過的非按序的數(shù)據(jù)報文時,將該報文內(nèi)容進(jìn)行緩存,待接收到全部連續(xù)按序報文時再進(jìn)行處理。例如,已收到序號為4~6的數(shù)據(jù)報文,然后收到了序號為8的數(shù)據(jù)報文,則將該報文內(nèi)容緩存,待收到序號為7的數(shù)據(jù)報文后再進(jìn)行處理,以防止亂序。

        3)正常處理該報文:當(dāng)已收到的所有報文序號均連續(xù),且下一條收到的數(shù)據(jù)報文序號也是按序的,則正常處理該報文即可。例如已收到序號為1~5的報文,接下來收到序號為6的數(shù)據(jù)報文。

        4)處理該報文及緩存報文。針對上述2)中緩存數(shù)據(jù)報文的情形,當(dāng)收到的報文使緩存報文按序且連續(xù)時,屬于該情形。如2)中的示例,已收到序號為4、5、6和8的數(shù)據(jù)報文(序號為8的報文已緩存),當(dāng)收到序號為7的數(shù)據(jù)報文時,依次處理序號為7和8的數(shù)據(jù)報文,即處理序號為7的該報文以及序號為8的緩存報文。

        2.3.2 接收心跳報文處理邏輯

        接收方收到心跳報文后,根據(jù)心跳報文中的序號,判斷該序號前的數(shù)據(jù)報文是否有未收到的情形,若存在未收到的數(shù)據(jù)報文,則向發(fā)送方發(fā)送攜帶丟失數(shù)據(jù)報文序號的NAK重發(fā)報文。

        2.4 發(fā)送方與接收方處理流程

        2.4.1 發(fā)送方流程

        發(fā)送方的處理包括以下幾個流程:

        1)發(fā)送數(shù)據(jù):發(fā)送數(shù)據(jù)報文并緩存,其中報文序號從1開始按序遞增。

        2)發(fā)送心跳:定時廣播當(dāng)前已發(fā)送最大數(shù)據(jù)報文序號的心跳報文。

        3)監(jiān)聽反饋報文:若收到NAK重發(fā)報文,優(yōu)先發(fā)送丟失的數(shù)據(jù)報文;若收到ACK確認(rèn)報文,記錄該接收方已按序收到的最大報文序號。

        4)清除緩存:根據(jù)接收方反饋的ACK確認(rèn)報文序號,定時清除緩存中所有當(dāng)前在線接收方均已收到的數(shù)據(jù)報文。

        發(fā)送方的具體處理流程如圖1所示。

        圖1 發(fā)送方處理流程

        2.4.2 接收方流程

        接收方的處理包括以下幾個流程:

        1)監(jiān)聽報文:根據(jù)接收到的報文類型,判斷該報文的處理邏輯。

        2)處理數(shù)據(jù)報文:根據(jù)報文序號進(jìn)行相應(yīng)的處理(包括丟棄、正常處理、緩存等)。

        3)處理心跳報文:首先根據(jù)心跳報文中的報文序號和目前已經(jīng)接收到的數(shù)據(jù)報文序號,判斷是否丟失數(shù)據(jù),在丟失數(shù)據(jù)時發(fā)送NAK重發(fā)報文。其次根據(jù)已按序收到的最大報文序號發(fā)送ACK確認(rèn)報文。

        接收方的具體處理流程如圖2所示。

        圖2 接收方處理流程

        3 實(shí)驗與應(yīng)用

        3.1 實(shí)驗參數(shù)設(shè)置

        實(shí)驗部分,通過不同的實(shí)驗組合驗證組播傳輸?shù)目煽啃?。分別在1~3個接收端的情況下,發(fā)送方連續(xù)發(fā)送700萬條組播數(shù)據(jù),數(shù)據(jù)載荷長度不等,分為長、中、短3個級別。短級別載荷長度包括幾個字節(jié)數(shù)據(jù),中級別載荷長度包括幾十個字節(jié)數(shù)據(jù),長級別載荷長度包括幾百個字節(jié)數(shù)據(jù)。

        實(shí)驗中,人為地模擬丟包情形。在發(fā)送方模擬丟包場景,丟包率分別為2%、1%和0.5%。為了更有效地接近真實(shí)的丟包場景,實(shí)驗中不僅在發(fā)送原始數(shù)據(jù)包時模擬丟包,在發(fā)送重發(fā)數(shù)據(jù)包時也模擬丟包情形。

        3.2 實(shí)驗結(jié)果

        為了直觀地看到接收方是否完整且有序地收到數(shù)據(jù)包,某次實(shí)驗中,令發(fā)送方按序發(fā)送從1開始遞增的數(shù)字,使發(fā)送報文編號與數(shù)據(jù)內(nèi)容一致,便 于記錄每包數(shù)據(jù)對應(yīng)的報文序號。觀察發(fā)送方的重發(fā)數(shù)據(jù)包與接收方收到的數(shù)據(jù)內(nèi)容。

        實(shí)驗中,發(fā)送方模擬丟包并重發(fā)了部分?jǐn)?shù)據(jù)報文,如編號為562、567和573的報文;觀察接收方收到的數(shù)據(jù),接收方能夠按序且完整地收到發(fā)送方重發(fā)的所有數(shù)據(jù)報文。

        此外,對3.1節(jié)不同實(shí)驗參數(shù)下,分別進(jìn)行了各組實(shí)驗。當(dāng)數(shù)據(jù)載荷長度分別為幾字節(jié)、幾十字節(jié)和幾百字節(jié)時,發(fā)送方連續(xù)發(fā)送700萬條組播數(shù)據(jù),在不同丟包率情形下,所有接收方均能收到完整有序的數(shù)據(jù)。因此,實(shí)驗驗證了本文提出的應(yīng)用層可靠組播傳輸方法的有效性。

        3.3 航天領(lǐng)域應(yīng)用

        目前組播主要應(yīng)用于航天型號的運(yùn)載和戰(zhàn)術(shù)領(lǐng)域的數(shù)據(jù)處理。型號在試驗過程中,同時存在多個終端顯示不同的試驗數(shù)據(jù)。發(fā)送方通過組播發(fā)送數(shù)據(jù),多個客戶端同時接收數(shù)據(jù),并對本客戶端所需展示的數(shù)據(jù)進(jìn)行篩選、處理、顯示等操作。

        4 結(jié)論

        基于重傳與確認(rèn)機(jī)制的應(yīng)用層可靠組播傳輸方法結(jié)合了TCP和UDP傳輸?shù)膬?yōu)點(diǎn),實(shí)現(xiàn)了可靠、按序、快速的數(shù)據(jù)傳輸。該方法在較低的網(wǎng)絡(luò)開銷下,有效地滿足了航天運(yùn)載和戰(zhàn)術(shù)領(lǐng)域多個客戶端同時、可靠、高效地顯示不同數(shù)據(jù)的需求。

        猜你喜歡
        按序發(fā)送數(shù)據(jù)應(yīng)用層
        移動自組網(wǎng)中MAC層協(xié)議研究
        深圳翼虎投資董事長余定恒:兔年市場圍繞車聯(lián)網(wǎng)、創(chuàng)新藥、消費(fèi)復(fù)蘇等“按序”展開
        閱讀光陰
        原料自動化立體倉庫按序均衡投料系統(tǒng)設(shè)計
        基于馬爾科夫鏈的LoRaWAN網(wǎng)絡(luò)節(jié)點(diǎn)性能分析
        帶標(biāo)記方式的CRDSA++協(xié)議性能分析*
        基于分級保護(hù)的OA系統(tǒng)應(yīng)用層訪問控制研究
        使用IPSec安全傳輸數(shù)據(jù)
        基于雙線性對的多重數(shù)字簽名方案
        新一代雙向互動電力線通信技術(shù)的應(yīng)用層協(xié)議研究
        亚洲欧美激情在线一区| 精品老熟女一区二区三区在线| 日本一区二区三区专区| 一本到亚洲av日韩av在线天堂| 国产成人国产三级国产精品| 四虎国产精品永久在线| 国产va免费精品观看| 成人午夜视频一区二区无码| 久久精品国产亚洲av夜夜| 日本孕妇潮喷高潮视频| 人妻暴雨中被强制侵犯在线| 精品中文字幕制服中文| 女同重口味一区二区在线| 日韩人妻中文无码一区二区| 婷婷午夜天| 亚洲成AV人片在一线观看| 亚洲av日韩综合一区尤物| 伊人精品久久久久中文字幕| 粗了大了 整进去好爽视频| 中文字幕亚洲精品码专区| 日本精品免费看99久久| 韩国三级中文字幕hd| 亚洲自偷自拍另类图片小说| 亚洲一本之道高清在线观看| 一二三四五区av蜜桃 | 国产成人精品白浆久久69| 久久福利青草精品免费| 精品中文字幕日本久久久| 日韩精品免费一区二区三区观看 | 日韩中文字幕不卡在线| 特级精品毛片免费观看| 国偷自产av一区二区三区| 国产精品国产三级国产一地 | 一级片麻豆| 91久久国产精品综合| 国产精品白丝久久av网站| 人人妻人人爽人人做夜欢视频九色 | 亚洲经典三级| 久久久2019精品视频中文字幕| 亚洲一区二区av天堂| 97精品人人妻人人|