一種星型結構下無線傳感器網絡擁塞控制方法
【技術領域】
[0001] 本發(fā)明涉及無線傳感器網絡傳輸控制領域,特別是指一種星型結構下無線傳感器 網絡擁塞控制方法。
【背景技術】
[0002] 無線傳感器網絡是由一組分布式部署的微小型節(jié)點組成的網絡,這些微小節(jié)點配 備有嵌入式計算設備,擁有傳感器或執(zhí)行器的接口。在網絡覆蓋區(qū)域內各節(jié)點協作感知、監(jiān) 測、處理和傳輸被采集的對象的信息,并使用短距離無線通信方式進行數據傳輸,最終把感 知信息傳輸至網絡"中心"節(jié)點一一sink節(jié)點中。無線傳感器網絡技術在近年來有了飛速 的發(fā)展,應用前景也越來越廣闊。
[0003] 星型結構是無線傳感器網絡的一種簡單而又常見的拓撲結構,它是樹型網絡、網 狀網絡和分簇網絡等其他拓撲結構的末端組成部分。星型網絡的擁塞會導致網絡傳輸能力 下降,數據堆積在節(jié)點隊列中,時延增大,隊列溢出數據包丟失,嚴重影響網絡的服務質量。 這對星型網絡的具體應用危害很大,因此,星型網絡的擁塞控制成為了一項關鍵技術。
[0004] 星型網絡是由一個協調器和多個子節(jié)點組成的簡單拓撲網絡,子節(jié)點負責事件信 息的感知與采集,并把數據發(fā)送至協調器中,協調器起網關的作用,負責與外界進行數據交 互。在星型網絡中,很容易出現由緩存隊列溢出而造成的節(jié)點級擁塞。這種擁塞出現的原 因是:當感知區(qū)域有未知突發(fā)事件發(fā)生時,傳感器采集頻率增加,隊列輸入速率增加,大量 數據流在短時間內涌入網絡,節(jié)點緩存隊列迅速增長并溢出,導致網絡丟包率、時延增加, 吞吐量下降。這對星型網絡的危害很大,特別是對于時延、可靠性要求較高的網絡。因此, 必須采取有效的擁塞控制措施,阻止緩存隊列的快速增長和溢出,保證信息的可靠傳輸。
[0005] 在星型網絡場景下進行擁塞控制主要有以下技術問題:如何及時、有效的進行擁 塞檢測、通告和解除;如何利用緩存隊列進行擁塞的準確判斷;如何進行有效的速率調節(jié), 保證協調器和子節(jié)點隊列在網絡擁塞時能有效減緩隊列的增長速率并阻止隊列溢出而造 成丟包。
[0006] 現有的擁塞控制技術大多都是針對網狀網絡、樹型網絡等多跳傳輸的網絡。傳統(tǒng) 的擁塞控制機制一般分為三個部分:擁塞檢測、擁塞通告和擁塞解除。
[0007] 現有的擁塞檢測機制主要有:基于緩存隊列長度的檢測,基于信道采樣的檢測,基 于數據包丟失狀況的檢測,基于擁塞度的檢測,基于數據包時延的檢測等?;诰彺骊犃虚L 度的檢測是現階段使用最多的擁塞檢測方法,但對緩存隊列設置單一閾值的方法并不是一 個有效的擁塞檢測方法,因此,如何基于隊列長度設計一種有效的檢測方法成為研宄者們 的一個挑戰(zhàn)。
[0008] 擁塞通告機制分為隱式通告和顯示通告兩種方式。兩種方式各有優(yōu)缺點。隱式通 告方式把擁塞信息放在控制幀或信息幀里,不需要為擁塞信息增加額外開銷,但存在一定 延時,有時候不能將擁塞信息進行及時的通告。顯示通告方式為擁塞信息增加專門的通告 幀,進行及時的擁塞通告,但是卻增加了網絡傳輸負擔。
[0009] 擁塞解除機制主要有:速率調節(jié)、傳輸調度、流量調度、資源控制、網內聚集處理、 速率預分配、分組丟棄等方式。其中,速率調節(jié)是最主要的擁塞解除手段。當得知下一跳節(jié) 點擁塞后,降低發(fā)送速率;當本地節(jié)點擁塞時,提升發(fā)送速率。
【發(fā)明內容】
[0010] 有鑒于此,本發(fā)明的目的在于提出一種星型結構下無線傳感器網絡擁塞控制方 法,能有效解決星型網絡中的節(jié)點級擁塞問題。
[0011] 基于上述目的本發(fā)明提供的星型結構下無線傳感器網絡擁塞控制方法,包括:
[0012] 無線傳感器網絡初始化,包括設置協調器的擁塞控制周期以及根據協調器服務速 率設定子節(jié)點正常狀態(tài)下的發(fā)送速率;
[0013] 監(jiān)測協調器擁塞狀況并得到協調器在當前擁塞控制周期的隊列長度和隊列擁塞 指數,判斷當前擁塞控制周期的協調器所處的擁塞狀態(tài);
[0014] 協調器把其當前擁塞控制周期的擁塞信息通告給每個子節(jié)點,所述擁塞信息包 括:協調器在當前擁塞控制周期中所處的擁塞狀態(tài)以及協調器在當前擁塞控制周期的隊列 擁塞指數;
[0015] 子節(jié)點接收所述擁塞信息并監(jiān)測子節(jié)點自身的當前擁塞控制周期的擁塞狀況并 得到子節(jié)點自身的當前擁塞控制周期的隊列長度和隊列擁塞指數,判斷當前擁塞控制周期 的子節(jié)點自身所處的擁塞狀態(tài);
[0016] 子節(jié)點根據協調器和自身的擁塞狀態(tài),調節(jié)子節(jié)點自身的發(fā)送速率及其所帶有的 傳感器的采集速率。
[0017] 在一些實施方式中,所述擁塞控制周期需根據具體應用場景擁塞出現的頻率或采 用具體協議棧的情況而定。
[0018] 在一些實施方式中,為保證協調器不出現擁塞狀態(tài),正常狀態(tài)下子節(jié)點的發(fā)送速 率應設置為小于或等于協調器的服務速率。
[0019] 在一些實施方式中,所述協調器把其當前擁塞控制周期的擁塞信息通告給每個子 節(jié)點的步驟中,擁塞通告采取隱式通告的方式。
[0020] 在一些實施方式中,所述協調器和/或子節(jié)點的隊列擁塞指數的計算公式為:
[0021] 隊列擁塞指數=(當前擁塞控制周期的隊列長度-上一擁塞控制周期的隊列長 度)+ (隊列總長度-當前擁塞控制周期的隊列長度)。
[0022] 在一些實施方式中,根據具體應用的需求,對隊列長度和隊列擁塞指數設置若干 閾值,確定不同的擁塞狀態(tài)。
[0023] 在一些實施方式中,根據隊列長度和隊列擁塞指數,在進行擁塞狀態(tài)劃分時,把節(jié) 點(包括協調器和/或子節(jié)點)劃分為5種擁塞狀態(tài),劃分規(guī)則如下:
[0024] 狀態(tài)0 :初始狀態(tài),隊列長度等于零,隊列擁塞指數等于零;
[0025] 狀態(tài)1 :正常發(fā)送狀態(tài),表明所述節(jié)點無擁塞狀況,隊列長度小于初級門限值,隊 列擁塞指數為任意值;
[0026] 狀態(tài)2 :輕度擁塞狀態(tài),隊列長度介于初級門限與高級門限之間,隊列擁塞指數小 于固定門限;
[0027] 狀態(tài)3 :中度擁塞狀態(tài),隊列長度介于初級門限與高級門限之間,隊列擁塞指數大 于固定門限;
[0028] 狀態(tài)4:重度擁塞狀態(tài),隊列長度超過高級門限的最大值,隊列擁塞指數為任意 值。
[0029] 在一些實施方式中,所述子節(jié)點根據協調器和自身的擁塞狀態(tài),調節(jié)子節(jié)點自身 的發(fā)送速率及其所帶有的傳感器的采集速率的步驟包括:
[0030] 若協調器和子節(jié)點都無擁塞狀態(tài),說明網絡處于正常狀態(tài),當前擁塞控制周期發(fā) 送速率等于初始值,采集速率無需調節(jié);
[0031] 若檢測出協調器或子節(jié)點出現擁塞狀態(tài),則計算當前擁塞控制周期的傳感器發(fā)送 速率和子節(jié)點采集速率并對傳感器發(fā)送速率和子節(jié)點采集速率進行調節(jié),其計算方法為:
[0032] 根據子節(jié)點的擁塞狀態(tài),以降低隊列擁塞指數為目的,采用迭代的方法逐步降低 傳感器采集速率;
[0033] 根據子節(jié)點和協調器擁塞程度的嚴重性,以迭代的方式逐步提升或降低子節(jié)點發(fā) 送速率。
[0034] 從上面所述可以看出,本發(fā)明提供的一種星型結構下無線傳感器網絡擁塞控制方 法,根據星型網絡的特點,采用基于緩存隊列的擁塞檢測方法,協調器使用隱式通告的方式 向子節(jié)點廣播其擁塞狀況,并采用調節(jié)子節(jié)點發(fā)送速率和采集速率的方式進行擁塞的解 除。
【附圖說明】
[0035] 圖1為本發(fā)明所處的星型結構下的無線傳感器網絡實施例的結構示意圖;
[0036] 圖2為本發(fā)明提供的星型結構下無線傳感器網絡擁塞控制方法的一個實施例的 流程示意圖;
[0037] 圖3為本發(fā)明提供的星型結構下無線傳感器網絡擁塞控制方法的另一個實施例 的流程示意圖;
[0038] 圖4為本發(fā)明提供的星型結構下無線傳感器網絡擁塞控制方法實施例中擁塞檢 測方法的節(jié)點狀態(tài)轉移示意圖;
[0039] 圖5為本發(fā)明提供的星型結構下無線傳感器網絡擁塞控制方法實施例擁塞通告 中擁塞信息存儲內容示意圖。
【具體實施方式】
[0040] 為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚明白,以下結合具體實施例,并參照 附圖,對本發(fā)明進一步詳細說明。
[0041] 依照本發(fā)明,星型結構下的無線傳感器網絡實施例的結構如圖1所示。網絡由1 個協調器和N個子節(jié)點組成。子節(jié)點和協調器中分別各維護一個發(fā)送隊列和接收隊列。子 節(jié)點所帶傳感器以一定采集速率rrallert進行數據采集,并把數據放入發(fā)送隊列中,傳感器 采集速率rrallec;t會隨環(huán)境變化,并且可以調節(jié)。子節(jié)點具有最大發(fā)送速率R_,子節(jié)點當前 的發(fā)送速率為