久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1184|回復: 0
收起左側

WiMinet 評說1.3:模擬式UDP中繼技術缺陷

[復制鏈接]
ID:1111293 發表于 2024-2-28 10:53 | 顯示全部樓層 |閱讀模式
1、前言

       在《WiMinet 評說 1.2:多跳無線網絡的現狀》一文中,我們提到:在室外長距離的無線自組織網絡中,由于節點之間的鏈路損耗較大,其鏈路預算相對不足,其包誤碼率PER會相應升高,也就是丟包概率 p 會比較大;而在一個大規模網絡中,某些分支節點的通訊鏈路又會比較深,也就是網絡跳數n 比較大,在這種情況下其通訊成功率Pn自然也就顯著下降了,人們的切身感受就是這個鏈路不太穩定。

       此時人們的第一反應自然是上 TCP 算法,在發送節點啟用 TCP Client 算法,在接收點啟用 TCP Server 算法,實現端到端的控制,這樣不就可以解決多跳無線通訊網絡的可靠性了么?我們今天就來深入討論一下這個問題。


2、多跳網絡

       很顯然在一個真實的無線通訊系統中,每一個節點都是具備雙向收發能力的,但是為了更加清晰的描述數據流向,我們將原始數據的發出者定義為發射機,將目標數據的接受者定義為接收機;如下圖所示,我們定義左邊紅色的“鐵塔”為發射機,右邊藍色的“鍋蓋”為接收機。

1.1.png
圖1-發射機與接收機

       在一個較大規模的無線通訊網絡中,中繼通常有兩種存在形式,一種是獨立的中繼器,通常其硬件配置較高,性能也比較強勁,并安裝有多根天線;另外一種是普通的數據節點本身承擔數據轉發的功能,這種節點成本較低,通常僅僅配置一根天線。無論其硬件配置和工作原理如何,它們都可以承擔數據轉發的功能,為了更加直觀的描述中繼的工作機制,我們以雙天線的中繼器為例。

1.2.png


圖2-多跳無線中繼

       在多數情況下,負責參數通訊的還有外部的用戶系統,比如連接數據庫的上位機應用程序和連接現場工業傳感器的嵌入式設備;通常負責發起數據請求的是上位機應用程序,二者以RJ45以太網線或者RS232電纜連接。

上位機現場設備(縮小版).png


圖3-上位機應用軟件
       負責采集數據并回傳的是嵌入式設備,二者以RS232電纜,TTL電平的串口或者GPIO端口直接相連。

下位機現場設備(縮小版).png

圖4-下位機現場設備


3、業務流程與運作機制

       按照我們之前的約定,我們選定網絡中一個具有6跳的(5個中繼)分支鏈路,在該鏈路上一個標準的通訊業務流程通常如下:
(1)  上位機系統發起數據請求
(2)  數據請求通過有線電纜傳遞給發射機
(3)  發射機將數據發送給1號中繼
(4)  數據依次在中繼1→2→3→4→5之間傳遞,最后到達接收機
(5)  接收機將數據通過有線電纜傳遞給嵌入式系統
(6)  嵌入式系統采集數據

       注意到,這里僅僅是數據的下行請求過程,在嵌入式系統完成了數據的采集之后,就會將其作為應答回傳給上位機系統,其上行通訊流程剛好和下行傳輸完全相反:

(1)  嵌入式系統送出采集到的數據
(2)  數據應答通過有線電纜傳送給接收機
(3)  接收機將數據發送給5號中繼
(4)  數據依次在中繼5→4→3→2→1之間傳遞,最后到達發射機
(5)  發射機將數據通過有線電纜傳遞給上位機系統
(6)  上位機系統完成數據的存儲,計算和顯示

4、UDP多跳傳輸模型

       我們都知道,有線通訊由于在封閉的通道中運行,其錯誤率通常在10-9~10-12,可靠性是非常高的,我們基本不用考慮丟包的問題。這里為了敘述方便,我們將上位機應用程序的功能合并到發射機中去,將連接工業傳感器的嵌入式設備的功能合并到接收機中去,這樣簡化之后的模型就是下圖。

UDP多跳(縮小版).png


圖5-UDP多跳傳輸模型

       在該模型中,每一個角色的基本工作原理如下:
(1)  發射機:產生數據請求,發送給中繼1,然后轉入接收狀態,等待來自目標節點(接收機)的應答數據;如果在指定的時間之內收到了應答數據則代表通訊成功;如果沒有則重新發送請求并增加計數器;當計數器到達某個限定數值則認定通訊失敗。
(2)  接收機:平時處于接收等待狀態,一旦從中繼5接收到了來自發射機的請求數據,則立刻生成應答數據,并交給中繼5。
(3)  中繼器:按照報文約定的指定的傳輸方向,復制報文并以重新發送給下一個接收節點,包括中繼,發射機和接收機。

      上圖是丟包概率p = 10% 的時候的一種效果模擬圖。這里設定了5次數據重傳,從該圖我們看出來每一次的通訊丟包情況都不同:
(1)  新數據請求,在發射機到中繼1的下行鏈路上就丟失了
(2)  第1次重傳,在中繼2到中繼3的下行鏈路上丟失了
(3)  第2次重傳,下行鏈路各跳全部成功,接收機正確的收到了數據,并生成了應答,但是應答數據在中繼5→中繼4的上行鏈路上丟失了
(4)  第3次重傳,在中繼3到中繼4的下行鏈路上丟失了
(5)  第4次重傳,下行鏈路各跳全部成功,接收機正確的收到了數據,并生成了應答,但是應答數據在中繼2→中繼1的上行鏈路上丟失了
(6)  第5次重傳,在在中繼5到接收機的下行鏈路上丟失了
(7)  重傳計數器到達極限,應用程序判定當前鏈路不穩定,通訊失敗!

5、總結

       當然有的讀者心里會想,這個效果模擬圖太過于極端,上述流程中有好幾次差一點就通訊成功了呢,就差一口氣!如果我們加大嘗試的次數,說不定就成功了呢?

       事實上在大多數情況下,加大嘗試次數,通訊成功率的確會有一定的改善,但無法從根本上消除問題。考慮到有線鏈路的和無線多跳的通訊延遲,再疊加上目標設備的數據采集行為,下行或者上行鏈路的傳輸時間可能高達數百毫秒。

       在真實的環境中,還要考慮到各種系統延遲和等待操作,比如Windows,Linux等主流桌面操作系統的調度延遲,各級無線節點的單片機延遲,這個時間往往還需要進一步加大,最終這個總的時間往往高達數秒甚至幾十秒,在一個有幾百個節點的數據采集系統中,系統整體掃描一遍,耗時將會比較長了。

       從上述分析可以看出,端到端的重傳機制在跳數較深的無線自組織網絡中難以保證足夠的可靠性,即便犧牲延時,加大重傳次數,效果也不會有根本性的改善。那么問題來了!我們要怎么做才可以獲得理想的可靠性與實時性呢?敬請關注后續系列文章的深入解讀。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 网色| 一区二区三区在线电影 | 国产亚洲欧美在线 | 我爱操 | 精品无码三级在线观看视频 | 丝袜 亚洲 另类 欧美 综合 | 免费国产视频 | 奇米久久久 | 一区二区精品在线 | 国产精品色| 成人a视频在线观看 | 精品视频一区二区三区 | 日韩在线小视频 | 丝袜一区二区三区 | 欧美一区二区激情三区 | 亚洲精品国产成人 | 亚洲一区二区电影在线观看 | 欧美日韩久久久 | 午夜免费网站 | 国产在线观看一区二区 | 日日摸天天添天天添破 | 久久精品国产久精国产 | 精品国产欧美一区二区三区成人 | 夜夜久久 | 香蕉大人久久国产成人av | 色999视频| 北条麻妃av一区二区三区 | 黄色网址在线播放 | 久久久久久久电影 | 久久成人精品视频 | 日韩欧美三区 | 久久精品91 | 中国一级特黄视频 | 青久草视频 | 二区中文字幕 | 日韩av免费在线观看 | 成人免费观看视频 | 国产精品网址 | 精品成人一区二区 | 欧洲在线视频 | 国产最新视频在线 |