国产亚洲精品AA片在线观看,丰满熟妇HD,亚洲成色www成人网站妖精,丁香五月天婷婷五月天男人天堂

新聞中心

EEPW首頁 > 手機與無線通信 > 設(shè)計應用 > VxWorks下基于緩沖隊列的網(wǎng)絡通信

VxWorks下基于緩沖隊列的網(wǎng)絡通信

作者: 時間:2010-04-09 來源:網(wǎng)絡 收藏
具體表現(xiàn)為,消息初始為空,數(shù)據(jù)發(fā)送任務阻塞在消息上,網(wǎng)絡正常情況下,每有新的消息單元到達時,數(shù)據(jù)發(fā)送任務就將該消息單元指向的數(shù)據(jù)包立刻發(fā)送出去;如果某個時刻網(wǎng)絡受到外界環(huán)境的影響變地不穩(wěn)定或發(fā)生短暫阻塞,數(shù)據(jù)包不能及時發(fā)出,該數(shù)據(jù)包就可緩存在 Buffer中,其地址信息緩存在消息中,而不會丟失,等網(wǎng)絡正常后再發(fā)送出去。隊列的模式如圖 3所示。根據(jù)待傳輸信息的緊急程度,不同的任務可以選擇 FIFO或優(yōu)先級向緩存隊列中寫入消息單元。

本文引用地址:http://www.ljygm.com/article/157520.htm


實驗時,以一臺普通 PC機作為上位機服務器,采樣節(jié)點和服務器之間通過一個百兆的機相連。采樣節(jié)點的所有采集通道全開,均設(shè)為最大采樣率,服務器每隔 5秒鐘查詢一次節(jié)點狀態(tài),此時數(shù)據(jù)傳輸率約為 65Mbit/s,系統(tǒng)連續(xù)運行 8小時。實驗結(jié)果顯示服務器收到的數(shù)據(jù)包數(shù)目和采樣節(jié)點發(fā)送的數(shù)據(jù)包數(shù)目相同,數(shù)據(jù)傳輸丟失率為 0.0%。

4網(wǎng)絡監(jiān)測原理

當網(wǎng)絡發(fā)生中斷時,系統(tǒng)軟件應該能夠盡快發(fā)現(xiàn)網(wǎng)絡故障,并在網(wǎng)絡恢復后仍可正常運行,因此軟件應該具備網(wǎng)絡監(jiān)控功能,實時監(jiān)測網(wǎng)絡的連通性。監(jiān)測網(wǎng)絡連通性的一個比較簡單的方法就是通過服務器向采樣節(jié)點不間斷發(fā)送 ICMP(Internet控制消息協(xié)議 )包,如果能收到回應則證明網(wǎng)絡連通,反之則表示網(wǎng)絡中斷。此法雖然簡單,但是當節(jié)點比較多時,大量的 ICMP數(shù)據(jù)包會占用 CPU資源,降低服務器的效率,故此法不可行。圖 4是我們設(shè)計的一個網(wǎng)絡監(jiān)控原理圖。




為避免影響到數(shù)據(jù)的實時傳輸,通信雙方各建立兩個 socket端口,一個作為數(shù)據(jù)通道專門用來傳遞數(shù)據(jù)信息,另一個用作監(jiān)控通道,傳遞應答信號,監(jiān)測網(wǎng)絡的連通性;監(jiān)控通道負責管理和維護數(shù)據(jù)通道。節(jié)點和服務器端運行的監(jiān)控任務都是無限循環(huán)任務,每若干秒運行一次。在每一個循環(huán)周期內(nèi),采樣節(jié)點都會向服務器發(fā)起一次連接,服務器端收到采樣節(jié)點的連接請求后,和其建立連接,然后向其發(fā)送信號指令。采樣節(jié)點收到信號指令后,向服務器發(fā)送應答信號,服務器若能在 T_wait時間內(nèi)收到應答信號,則判定網(wǎng)絡通暢,否則認為網(wǎng)絡中斷。如果某時刻網(wǎng)絡出現(xiàn)斷線,那么重新建立連接后,服務器會向采樣節(jié)點發(fā)送重新連接指令,采樣節(jié)點收到重新連接指令后,會關(guān)閉原有的數(shù)據(jù)傳輸 socket,重新和服務器建立數(shù)據(jù)傳輸通道。


實驗時,通過插拔網(wǎng)線模擬網(wǎng)絡的連通和斷線。結(jié)果表明,在系統(tǒng)進行數(shù)據(jù)傳輸時拔掉網(wǎng)線,若在 20秒內(nèi)再接上,由于采樣節(jié)點具有一定的緩存能力,數(shù)據(jù)不會丟失,網(wǎng)絡仍可正常工作;若拔掉網(wǎng)線,超過 20秒之后再接上網(wǎng)線,采樣節(jié)點和服務器之間會重新建立連接,網(wǎng)絡仍可正常工作,但由于緩存隊列溢出,數(shù)據(jù)會發(fā)生丟失;若拔掉網(wǎng)線超過 30分鐘,采樣節(jié)點會判定網(wǎng)絡中斷、記錄故障并自動關(guān)閉系統(tǒng),插上網(wǎng)線后,服務器通過網(wǎng)絡遠程啟動采樣節(jié)點,系統(tǒng)繼續(xù)正常工作。

5總結(jié)

利用 對多任務和網(wǎng)絡的良好支持,本文提出了一種隊列的帶網(wǎng)絡狀態(tài)監(jiān)測功能的模式,目前已經(jīng)在我們開發(fā)的分布式監(jiān)控系統(tǒng)中得到應用。該模式使系統(tǒng)能夠應付一定的網(wǎng)絡故障,提高了系統(tǒng)的可靠性。該模式還可以方便地應用到其它嵌入式網(wǎng)絡開發(fā)中,具有廣泛的應用前景。本文作者創(chuàng)新點:本文提出的這種基于隊列的帶網(wǎng)絡狀態(tài)監(jiān)測功能的網(wǎng)絡通信模式,充分地利用了 對多任務和網(wǎng)絡的良好支持,消息隊列不僅同步任務,還可作為緩存隊列用來緩存數(shù)據(jù),使系統(tǒng)能夠應付一定的網(wǎng)絡波動;監(jiān)控任務的工作模式使系統(tǒng)能夠快速發(fā)現(xiàn)網(wǎng)絡故障并做出響應,待網(wǎng)絡故障排除后仍可正常運行。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉