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

        ?

        基于線程池技術(shù)的空間數(shù)據(jù)同步傳輸方法仿真

        2021-11-17 06:52:56黃小平張明軍謝蓉蓉
        計(jì)算機(jī)仿真 2021年7期
        關(guān)鍵詞:方法

        黃小平,張明軍,謝蓉蓉

        (1. 廣州軟件學(xué)院網(wǎng)絡(luò)技術(shù)系,廣東 廣州 510990;2. 西安石油大學(xué)計(jì)算機(jī)學(xué)院,陜西 西安 710065)

        1 引言

        信息采集技術(shù)的迅猛發(fā)展使空間數(shù)據(jù)量快速增長(zhǎng),因此對(duì)數(shù)據(jù)傳輸提出更高要求??臻g數(shù)據(jù)就是描述空間目標(biāo)位置、形狀、大小以及分布特征的信息,具有定位、定性等特征。而空間數(shù)據(jù)的管理形式也從集中式管理發(fā)展為利用分布式系統(tǒng)管理海量數(shù)據(jù)。在分布式系統(tǒng)中,大多通過異步方式實(shí)現(xiàn)數(shù)據(jù)傳輸,該方法對(duì)時(shí)序要求較低,導(dǎo)致傳輸效率較低。近年來,一些學(xué)者研究了同步傳輸方法在空間數(shù)據(jù)傳輸中的應(yīng)用。

        江渝川[1]等人提出基于似然估計(jì)補(bǔ)償機(jī)制的數(shù)據(jù)同步傳輸算法。首先設(shè)置分層區(qū)域節(jié)點(diǎn)-子節(jié)點(diǎn)的數(shù)據(jù)傳輸結(jié)構(gòu),完成區(qū)域節(jié)點(diǎn)初始化;利用數(shù)據(jù)分子雙向交互方式建立似然估計(jì)補(bǔ)償機(jī)制,同時(shí)計(jì)算頻率與相位偏移程度;最后對(duì)子節(jié)點(diǎn)信息進(jìn)行精確同步。王松明[2]將JESD204B協(xié)議的數(shù)模轉(zhuǎn)換器和現(xiàn)場(chǎng)可編程門陣列相結(jié)合,確定系統(tǒng)基本結(jié)構(gòu);分析數(shù)據(jù)傳輸延時(shí)情況,按照同步原理實(shí)現(xiàn)接收與發(fā)送多通道數(shù)據(jù)同步傳輸。

        以上方法雖然可以實(shí)現(xiàn)數(shù)據(jù)同步傳輸,但是數(shù)據(jù)傳輸?shù)陌踩缘貌坏奖U?。為此,本文利用線程池技術(shù)實(shí)現(xiàn)空間數(shù)據(jù)同步傳輸。線程的概念較為抽象,其涵蓋了一個(gè)計(jì)算機(jī)操作某項(xiàng)任務(wù)時(shí)所做的全部事件,屬于CPU上調(diào)度的程序狀態(tài)[3]。線程和進(jìn)程有很大區(qū)別,進(jìn)程是由代碼、數(shù)據(jù)和寄存器構(gòu)成的,而線程則是由表示程序運(yùn)行狀況的寄存器與棧構(gòu)成,可以被普通用戶組成的線程庫訪問。由于同步傳輸是通過相同的時(shí)鐘節(jié)拍來實(shí)現(xiàn)數(shù)據(jù)發(fā)送,因此信號(hào)源碼之間的位置是固定的,因此必須確定線程池同步數(shù)據(jù)的時(shí)序圖[4],構(gòu)建統(tǒng)一的時(shí)鐘信號(hào),建立收發(fā)方的密鑰機(jī)制[5],只有這樣才能保證空間數(shù)據(jù)安全同步傳輸。

        2 空間數(shù)據(jù)傳輸過程分析

        2.1 傳輸系統(tǒng)結(jié)構(gòu)

        空間數(shù)據(jù)傳輸系統(tǒng)組成結(jié)構(gòu)主要包括客戶、接口服務(wù)與儲(chǔ)存四個(gè)模塊,每個(gè)模塊之間相互協(xié)作,共同完成數(shù)據(jù)傳輸任務(wù)。

        1)客戶模塊

        客戶模塊是空間數(shù)據(jù)的發(fā)送方,位于各監(jiān)測(cè)站臺(tái),由發(fā)送與傳輸控制協(xié)議[6](Transfer Control Protocol,TCP)加速兩個(gè)子模塊構(gòu)成。發(fā)送端主要任務(wù)是數(shù)據(jù)的監(jiān)視、調(diào)度與執(zhí)行。如果有新的數(shù)據(jù)信息生成,發(fā)送任務(wù)會(huì)自動(dòng)添加到發(fā)送列表,通過控制器進(jìn)行調(diào)度;TCP子模塊的主要任務(wù)是控制數(shù)據(jù)傳輸速度。

        2)接口模塊

        接口部分屬于站臺(tái)和數(shù)據(jù)中心的通信接口,規(guī)定了訪問控制驗(yàn)證、文件名更改、文件格式定義等數(shù)據(jù)傳輸協(xié)議。

        3)服務(wù)模塊

        服務(wù)模塊是空間數(shù)據(jù)傳輸?shù)慕邮辗剑ūO(jiān)聽器、接收器、文件池、控制器與數(shù)據(jù)處理引擎等設(shè)備。其中監(jiān)聽器收到訪問請(qǐng)求后,將任務(wù)分配給接收器;接收器負(fù)責(zé)數(shù)據(jù)接收,并將數(shù)據(jù)存放到文件池;控制器為處理引擎分配相應(yīng)任務(wù);處理引擎則對(duì)文件池中的數(shù)據(jù)做解析處理。

        4)儲(chǔ)存模塊

        數(shù)據(jù)儲(chǔ)存方法包括兩種,二進(jìn)制[7]與圖片類型的數(shù)據(jù)通過文件形式保存到服務(wù)器中;記錄類的數(shù)據(jù)利用數(shù)據(jù)庫表的方式儲(chǔ)存。

        2.2 數(shù)據(jù)傳輸過程分析

        空間數(shù)據(jù)有助于相關(guān)人員了解空間環(huán)境,對(duì)保障空間安全具有重要意義。空間業(yè)務(wù)預(yù)報(bào)必須以大量的、真實(shí)的、多維數(shù)據(jù)為支撐,因此對(duì)數(shù)據(jù)傳輸過程提出如下要求。

        1)空間數(shù)據(jù)傳輸必須滿足穩(wěn)定性需求,因此要求始終保持7×24小時(shí)穩(wěn)定傳輸。

        2)不僅需要在較短時(shí)間內(nèi)傳輸海量數(shù)據(jù),還要確保較高的發(fā)送速度,避免數(shù)據(jù)堆積。

        3)針對(duì)數(shù)據(jù)發(fā)送端,傳輸中斷后可以自動(dòng)補(bǔ)發(fā)數(shù)據(jù);對(duì)于接收端,需保證數(shù)據(jù)完整程度。

        為滿足上述要求,確定空間數(shù)據(jù)傳輸?shù)幕具^程如圖1所示。

        圖1 空間數(shù)據(jù)傳輸過程示意圖

        3 實(shí)現(xiàn)基于線程池的空間數(shù)據(jù)同步傳輸

        3.1 分析線程池邏輯單元

        基于上述對(duì)數(shù)據(jù)傳輸系統(tǒng)工作過程的分析,要想實(shí)現(xiàn)數(shù)據(jù)的同步傳輸,需引入線程池技術(shù)。線程處理最普遍的用例就是用戶界面,利用線程,用戶通過按鈕啟動(dòng)程序,而并非讓用戶等待到任務(wù)結(jié)束后再響應(yīng)。將線程池在數(shù)據(jù)同步傳輸中的使用共分為以下四個(gè)邏輯單元:

        1)主線程

        主線程首先需要完成任務(wù)類、線程管理類的構(gòu)造與實(shí)例化,做好全部環(huán)境準(zhǔn)備。為確保處理速度,再?gòu)臄?shù)據(jù)庫中挑選出適量的數(shù)據(jù)進(jìn)行處理,并將這些任務(wù)引入到隊(duì)列中。至此主線程任務(wù)結(jié)束,等待線程池并發(fā)處理,當(dāng)獲得完成通知后重新挑選一定數(shù)量任務(wù)處理,直到全部同步傳輸任務(wù)均實(shí)現(xiàn)。

        在主線程退出操作時(shí),必須釋放各類目標(biāo)以便安全退出。

        2)管理線程

        管理線程并不是程序中單獨(dú)的線程,在該類中,其關(guān)鍵技術(shù)是需要構(gòu)建并同時(shí)啟動(dòng)N個(gè)工作線程。為便于線程做單獨(dú)處理,這些線程需利用同一個(gè)目標(biāo)對(duì)其保存,例如某些變量賦值、暫停與啟動(dòng)線程等。

        3)工作線程

        工作線程即任務(wù)處理模塊,主要執(zhí)行的任務(wù)主要包括從隊(duì)列中獲取某項(xiàng)任務(wù)、結(jié)合任務(wù)項(xiàng)從數(shù)據(jù)庫中獲得初始數(shù)據(jù)、形成制定格式語句[8]、按照處理結(jié)果返寫標(biāo)志四項(xiàng)內(nèi)容。

        4)查詢線程

        主線程創(chuàng)造了查詢線程,但在創(chuàng)建后必須等待主線程的喚醒成功后才能執(zhí)行,其主要任務(wù)為持續(xù)探測(cè)任務(wù)數(shù)量。查詢線程有助于確定任務(wù)處理進(jìn)度,同時(shí)將處理情況通知主線程。如果得知全部任務(wù)均已完成,主線程會(huì)發(fā)出完成標(biāo)志。

        3.2 確定同步傳輸時(shí)序

        確定線程池具備的四個(gè)邏輯單元后,需要進(jìn)一步分析這些單元的處理邏輯時(shí)序。

        1)線程池線路數(shù)量

        對(duì)于線程池?cái)?shù)量,通常情況下的計(jì)算公式為

        N=ηCPU*2+2

        (1)

        其中,ηCPU為CPU數(shù)量。由式(1)可知,線程數(shù)量取決于CPU數(shù)量。在本文中,為充分使用數(shù)據(jù)庫讀寫時(shí)間,工作線程將在數(shù)據(jù)庫中反復(fù)讀寫,以達(dá)到并發(fā)處理目的。

        2)任務(wù)列表同步

        在數(shù)據(jù)同步傳輸過程中可能會(huì)遇到如下問題,隊(duì)列中的任務(wù)存在亂碼現(xiàn)象,和理想情況不同導(dǎo)致程序報(bào)錯(cuò)。此種現(xiàn)象由于主線程與工作線程同時(shí)挑選隊(duì)列任務(wù)造成的。因此本文利用臨界區(qū)域技術(shù),將兩個(gè)線程操作放入相同過程中讀寫。臨界區(qū)為某段獨(dú)占共享資源的訪問代碼,無論在任何時(shí)刻都只允許一個(gè)線程訪問共享資源。若存在多個(gè)資源同時(shí)訪問,則會(huì)有一個(gè)線程被掛起,直到進(jìn)入臨界區(qū)的線程離開。這樣可以不僅保證隊(duì)列安全,應(yīng)用程序也會(huì)減少出錯(cuò)。

        3)主線程進(jìn)度獲取

        主線程需要隨時(shí)了解已知任務(wù)的進(jìn)展情況,但是若利用主線程直接監(jiān)測(cè),通常會(huì)導(dǎo)致主進(jìn)程鎖死。因此通過查詢線程監(jiān)測(cè)進(jìn)度,并將監(jiān)測(cè)情況報(bào)告給主程序。詳細(xì)過程為:預(yù)定一個(gè)信息,主線程會(huì)對(duì)該消息做出反應(yīng),并且定義某個(gè)單獨(dú)計(jì)數(shù)器,當(dāng)任務(wù)實(shí)現(xiàn)后計(jì)數(shù)器數(shù)值加1。通過比較計(jì)數(shù)器和任務(wù)數(shù)量來判斷任務(wù)進(jìn)程,當(dāng)計(jì)數(shù)器與任務(wù)數(shù)量相同時(shí)則表示該任務(wù)已完成。

        圖2表述了線程池處理邏輯的時(shí)序圖。

        圖2 線性池?cái)?shù)據(jù)同步時(shí)序圖

        3.3 空間數(shù)據(jù)同步傳輸

        利用線性池方法確定同步傳輸?shù)臅r(shí)序后,為了使同步傳輸更加安全可靠,本文使用基于馬爾可夫決策過程的空間數(shù)據(jù)加密同步算法實(shí)現(xiàn)數(shù)據(jù)同步傳輸。

        3.3.1 同步傳輸動(dòng)態(tài)路徑獲取

        在對(duì)空間數(shù)據(jù)同步傳輸過程中,需綜合分析時(shí)延與丟包率[9]對(duì)吞吐量造成的影響,結(jié)合最佳策略選取不同路徑進(jìn)行數(shù)據(jù)傳輸,具體實(shí)現(xiàn)過程如下。

        (2)

        (3)

        (4)

        2)在傳輸路徑k上如果出現(xiàn)丟失狀況,則k中擁塞窗口cwk會(huì)減少到cwk/2;

        (5)

        (6)

        (7)

        (8)

        在狀態(tài)i時(shí)選擇不同行動(dòng)后的理想吞吐量表示反饋,理想吞吐量即為數(shù)據(jù)同步傳輸路徑的吞吐量,根據(jù)吞吐量情況選擇最佳傳輸路徑。

        3.3.2 同步傳輸

        將數(shù)據(jù)密鑰協(xié)商和同步傳輸相結(jié)合,使通信雙方彼此構(gòu)成的密鑰協(xié)商數(shù)據(jù)進(jìn)行分片,同時(shí)為每個(gè)分片加上時(shí)間戳,通過私鑰對(duì)數(shù)據(jù)內(nèi)容簽名[10],完成全部數(shù)據(jù)的分片后利用上述選擇的最佳路徑傳輸空間數(shù)據(jù),這樣不但可以保證傳輸?shù)耐叫?,還提高了數(shù)據(jù)傳輸安全性。詳細(xì)過程如下:

        假設(shè)通信雙方A與B通過某條傳輸路徑已經(jīng)得到密鑰協(xié)商的公用參數(shù)p與g。則密鑰協(xié)商過程如下:

        (9)

        在所選的路徑上向B傳輸空間數(shù)據(jù)

        (10)

        式中,m′為數(shù)據(jù)傳輸?shù)姆制偭?,Tai為每一條路徑的時(shí)間戳,可避免數(shù)據(jù)同步傳輸過程中受到攻擊,SA代表A的私鑰,ESA(kai,Tai,m′)描述A利用自身私鑰SA對(duì)數(shù)據(jù)進(jìn)行簽名,以便接收方可以及時(shí)認(rèn)證消息。B按照和A相似的過程進(jìn)行同步數(shù)據(jù)傳輸加密分片:

        (11)

        在所選擇的同步傳輸路徑上向A傳輸如下數(shù)據(jù)

        (12)

        當(dāng)通信方Tbi接收到數(shù)據(jù)Mj后,根據(jù)隨機(jī)數(shù)kb和Tbi判斷數(shù)據(jù)是否重放,如果重放則直接去除,反之通過對(duì)方公鑰進(jìn)行簽名核實(shí)。則發(fā)送發(fā)A傳輸空間數(shù)據(jù)的流程如下。

        發(fā)送方A采用數(shù)據(jù)密鑰Ka,b加密需要傳輸?shù)臄?shù)據(jù),假設(shè)需發(fā)送的空間數(shù)據(jù)包為M′,C=EKab(M)代表經(jīng)過加密處理的數(shù)據(jù)密文,A將密文C分解為n″個(gè)子數(shù)據(jù)包,同時(shí)對(duì)數(shù)據(jù)包添加會(huì)話序號(hào)seq、塊標(biāo)識(shí)i′與時(shí)間戳Ti′,則

        (13)

        接收方B接收數(shù)據(jù)流程為,B接收到數(shù)據(jù)后,按照認(rèn)證碼對(duì)空間數(shù)據(jù)進(jìn)行認(rèn)證,通過認(rèn)證后根據(jù)塊標(biāo)識(shí)對(duì)數(shù)據(jù)包做解碼處理,恢復(fù)明文數(shù)據(jù)包,實(shí)現(xiàn)數(shù)據(jù)同步且安全傳輸。

        4 仿真數(shù)據(jù)分析與研究

        為證明所提傳輸方法的有效性,在如圖3所示的拓?fù)渚W(wǎng)絡(luò)中進(jìn)行仿真。實(shí)驗(yàn)參數(shù)如表1所示。

        圖3 仿真拓?fù)浣Y(jié)構(gòu)圖

        表1 實(shí)驗(yàn)參數(shù)表

        將大小不同的數(shù)據(jù)通過本文方法、文獻(xiàn)[1]、文獻(xiàn)[2]方法進(jìn)行同步傳輸,記錄每次傳輸?shù)臅r(shí)間,測(cè)試結(jié)果如表2所示。

        表2 不同方法數(shù)據(jù)同步傳輸所需時(shí)間記錄表

        由表2可知,當(dāng)空間數(shù)據(jù)小于5kB時(shí),三種方法同步傳輸所需時(shí)間均相同,沒有出現(xiàn)明顯差異。但隨著數(shù)據(jù)量的不斷增大,本文方法的傳輸速率優(yōu)勢(shì)較為明顯,當(dāng)空間數(shù)據(jù)達(dá)到200kB時(shí),本文方法的傳輸時(shí)間為58.12×10-3s,而文獻(xiàn)[1]方法和文獻(xiàn)[2]方法分別為61.34×10-3s和67.23×10-3s。這是因?yàn)榛诰€程池技術(shù)的傳輸時(shí)序圖發(fā)揮出重要作用,具有較強(qiáng)的處理邏輯可以減少同步傳輸時(shí)間。此外為證明不同方法的傳輸安全性能,對(duì)累計(jì)傳輸錯(cuò)誤率進(jìn)行對(duì)比試驗(yàn),試驗(yàn)結(jié)果如圖4所示。

        圖4 不同方法同步傳輸累計(jì)錯(cuò)誤率

        由圖4可知,本文方法的累計(jì)錯(cuò)誤率最低,最高為數(shù)據(jù)140kB時(shí)的0.12%,比文獻(xiàn)[1]方法和文獻(xiàn)[2]方法在數(shù)據(jù)140kB時(shí)的0.18%和0.3%累計(jì)錯(cuò)誤率更低。這是因?yàn)楸疚脑趥鬏斶^程中加入密鑰機(jī)制,可以有效保證數(shù)據(jù)安全性,減少錯(cuò)誤傳輸概率。

        5 結(jié)論

        為滿足空間數(shù)據(jù)傳輸對(duì)速度與安全性的要求,本文將線程池技術(shù)與基于馬爾可夫的空間數(shù)據(jù)加密算法相結(jié)合,設(shè)計(jì)一種同步傳輸方法。

        1)該方法對(duì)于不同大小的空間數(shù)據(jù)均能快速傳輸,當(dāng)空間數(shù)據(jù)達(dá)到200kB時(shí),本文方法的傳輸時(shí)間為58.12×10-3s。

        2)本文方法的累計(jì)錯(cuò)誤率最低,最高為數(shù)據(jù)140kB時(shí)的0.12%,相較于對(duì)比方法累計(jì)錯(cuò)誤率更低,更能保障數(shù)據(jù)安全。

        3)雖然線程池技術(shù)擁有強(qiáng)大的處理能力,但是也存在一定風(fēng)險(xiǎn),其應(yīng)用程序容易受到其它多線程的破壞,導(dǎo)致死鎖。當(dāng)處理較長(zhǎng)時(shí)間的并發(fā)任務(wù)時(shí),還需改善其性能,使其具有更加廣闊的應(yīng)用前景。

        猜你喜歡
        方法
        中醫(yī)特有的急救方法
        中老年保健(2021年9期)2021-08-24 03:52:04
        高中數(shù)學(xué)教學(xué)改革的方法
        化學(xué)反應(yīng)多變幻 “虛擬”方法幫大忙
        變快的方法
        兒童繪本(2020年5期)2020-04-07 17:46:30
        學(xué)習(xí)方法
        可能是方法不對(duì)
        用對(duì)方法才能瘦
        Coco薇(2016年2期)2016-03-22 02:42:52
        最有效的簡(jiǎn)單方法
        山東青年(2016年1期)2016-02-28 14:25:23
        四大方法 教你不再“坐以待病”!
        Coco薇(2015年1期)2015-08-13 02:47:34
        賺錢方法
        欧美成人免费观看国产| 国产98色在线 | 国产| 精品亚洲一区二区三区在线观看| 老熟女毛茸茸浓毛| 亚洲AV无码中文AV日韩A| 精品成人av人一区二区三区| 亚洲av综合一区二区在线观看| 四虎影视在线影院在线观看| 欧美日韩国产亚洲一区二区三区 | 国产午夜无码视频免费网站| www久久久888| 国产人妖视频一区二区| 国产在线精品一区二区三区直播| 日韩av无码成人无码免费| 国产美女被遭强高潮露开双腿 | 无码91 亚洲| 日本女优中文字幕在线播放| 激情伊人五月天久久综合| 久久夜色撩人精品国产小说 | 久久久精品网站免费观看| 精品无码一区二区三区爱欲| 丰满人妻被中出中文字幕| 99国产综合精品-久久久久| 一本色道久久88加勒比综合| 国产老熟女网站| 福利视频黄| 在线免费观看国产视频不卡| 日本中文字幕有码网站| 特级做a爰片毛片免费看108| 久久久国产精品免费无卡顿| 中文字幕人妻av一区二区| 99999久久久久久亚洲| 五月天精品视频在线观看| 男女干逼视频免费网站| 亚洲最大水蜜桃在线观看| 97精品国产手机| 午夜爽毛片| 国产亚洲成人精品久久久| 日韩视频中文字幕精品偷拍| 国产AV无码一区精品天堂| 国产精品后入内射日本在线观看 |