任 智,劉順輝,任 冬,甘澤鋒
(重慶郵電大學 通信與信息工程學院,重慶 400065)
寬帶電力線通信[1](Broadband Power Line Communication,BPLC)是一種以電力線作為信號傳輸媒介的通信方式。BPLC也叫高速電力線通信,能實現1 Mb/s以上的數據傳輸速率且抗干擾能力較強。寬帶電力線通信被廣泛應用在用電信息采集系統[2]、智能電網[3]、智能家居[4]和多表集抄[5]等領域。文獻[6]針對傳統置零法引起的非線性失真問題,提出了一種基于迭代消除非線性失真的改進置零法,可有效增加PLC系統對脈沖噪聲的抵抗能力。文獻[7]提出一種應用在電力線載波通信(Power Line Communication,PLC)里面的Luby變換碼,可明顯降低譯碼的開銷和耗時。
目前,針對寬帶電力線通信的媒體接入控制(Medium Access Control,MAC)協議已有一些研究。文獻[8]采用時分復用(Time Division Multiple Access,TDMA)和帶有沖突避免的載波偵聽多路訪問(Carrier Sense Multiple Access with Collision Avoid,CSMA/CA)混合接入技術,在大規模PLC網絡中能提高網絡的穩定性和數據傳輸效率,但不適用小規模的PLC網絡,具有一定的局限性。文獻[9]提出了一種將電力線和無線通信網絡融合的統一MAC協議,設計并統一MAC時隙劃分、組網過程和資源調度等關鍵技術,但提高了系統的復雜度,只適用于某特殊環境下,不具有普遍性。文獻[10]引入跨層思想,在保證QoS的前提下,提出了一種基于MAC層QoS優先級調度功能的寬帶電力線跨層資源分配方案,根據優先級函數對物理層資源分配,但提高了系統的復雜度,且對物理層要求高。文獻[11]提出了一種改進的自適應P堅持CSMA協議,在負載較高的情況下,通過動態調整概率P,降低了數據包的碰撞概率,但在負載較小的情況下會造成信道使用率較低等問題。文獻[12]考慮到PLC受傳輸距離的限制,提出了一種中繼節點轉發的PLC網絡,在源節點到目的節點中間通過中繼節點轉發,保證數據傳輸的可靠性。文獻[13]提出了一種基于用戶延遲情況和信道條件的自適應MAC協議,通過調整數據發送速率和競爭窗口大小來提高系統的吞吐量,但破壞了節點的公平性。文獻[14]提出了一種改進的CSMA/CA算法,適用于電力線和無線混合網絡場景。該算法與現有標準IEEE1901和802.11中的CSMA/CA算法兼容。文獻[15]對PLC系統MAC協議的最新技術進行了全面調查,目前在PLC系統使用的MAC協議主要是CSMA/CA,少部分使用TDMA協議。由IEEE通信協會電力線通信委員會發布的寬帶電力線通信標準(IEEE1901.1)[16]規定了物理層和媒體訪問控制子層的關鍵技術。草案[17]對文獻[16]的標準做了補充,增加了物理層和MAC層的測試用例和測試場景。然而研究發現,IEEE1901.1 MAC協議存在信標時隙利用不充分和控制開銷過大等問題。
鑒于此,本文提出了一種ELDM-MAC(Efficient and Low Delay Multi-hop MAC)協議,通過基于節點層級號的信標時隙分配機制和基于拓撲信息的信標幀高效廣播機制來有效改善上述問題。
寬帶電力線通信網絡由一個主節點(Central Coordinator,CCO)、多個代理節點(Proxy Coordinator,PCO)和多個普通節點(Station,STA)組成,共同構成多跳樹形場景,如圖1所示。

圖1 網絡場景
寬帶電力線通信網絡將信道資源劃分為一個一個的信標周期結構,如圖2所示。從圖中可知,一個信標周期又分為信標時隙、CSMA時隙、TDMA時隙和綁定CSMA時隙,而信標時隙由CCO分為若干個無競爭的小時隙,已入網的節點在此時隙廣播信標幀;節點在CSMA時隙使用CSMA/CA的方式競爭信道進行數據的傳輸;在TDMA時隙,由CCO分配給某些具有特殊業務的節點,采用無競爭的方式接入信道;綁定CSMA時隙由CCO分配給某些特殊業務使用,采用CSMA/CA的方式競爭信道。

圖2 信標周期時隙分配
CCO在信標時隙中的第一個時隙廣播信標幀,信標幀中包含信標周期的所有時隙分配信息。已入網節點收到信標幀后,取出目的地址,形成一跳鄰居表,根據時隙分配信息,確定CCO給自身安排的時隙位置,轉發信標幀;未入網節點收到信標幀后,同樣確定時隙位置和形成一跳鄰居表,在CSMA時隙發送入網請求幀,由已入網節點轉發至CCO,CCO收到后若同意節點加入網絡,則確定該節點的層級號,發送入網確認幀。節點在加入網絡后,在每個路由周期發送10次發現列表報文,發現列表報文包含自身的鄰居節點信息,節點收到發現列表后更新鄰居表,此時鄰居表包含一跳和兩跳鄰居節點。
(1) 節點在發送完信標幀后,不能立即進入CSMA時隙,需要等到信標時隙結束后才進入CSMA時隙。節點在發送完信標幀到CSMA時隙這一段時間都處在等待狀態,不能獲取到任何信道資源,造成了信標時隙利用不充分和信道資源浪費問題,降低了信道利用率。
(2) 由于各個節點無法獲知全網拓撲信息,在廣播過程中,時隙分配信息的內容不會改變,各節點收到信標幀后會無條件地轉發所有節點的時隙分配信息,造成許多無效的時隙分配信息繼續被節點廣播,使得控制開銷過大。
針對IEEE1901.1 MAC協議存在時隙浪費、控制開銷較大和信道利用率低等問題,對IEEE1901.1 MAC協議進行了如下改進:一是提出“基于節點層級號的信標時隙分配”新機制,按照節點層級號從小到大的順序依次分配信標時隙,在節點廣播信標幀后,計算不會對信標幀發送造成干擾的時間,提前進入CSMA時隙;二是提出“基于拓撲信息的信標幀高效廣播”新機制,即通過拓撲信息精簡時隙分配消息,使得節點不再廣播冗余無效的時隙分配消息。
基于節點層級號的信標時隙分配機制的核心思想是:CCO根據節點的層級號從小到大依次分配時隙,層級號越小,在信標時隙中的位置越靠前,且CCO為第0級;然后CCO在信標時隙中的第一個時隙里廣播信標幀;已入網節點收到后獲取時隙分配信息,確定各個時隙段的位置,在CCO安排的時隙廣播信標幀;發送完信標幀后,節點查看自己的鄰居表,等待自身的鄰居節點發送完信標幀后,提前進入CSMA時隙。在這段時間,節點不會與由CCO已經安排需要發送信標幀的節點發送碰撞,提高了時隙利用率。該新機制的具體操作步驟如下:
Step1 CCO在生成時隙分配信息字段前,根據節點的層級號從小到大的順序分配信標時隙,節點層級號越小,其在時隙分配信息表中的位置越靠前,然后在信標時隙中的第一個時隙里廣播信標幀。
Step2 節點收到信標幀后,取出信標幀的目的地址字段,更新一跳鄰居表。根據時隙分配信息獲取信標周期的長度,以及信標時隙、CSMA時隙、TDMA時隙和綁定CSMA時隙的位置。若該節點未入網,節點在CSMA時隙里使用CSMA/CA的方式競爭信道發送入網請求幀;否則,執行Step 3。
Step3 節點根據時隙分配信息計算CCO給自己安排發送信標幀的時隙位置,在該時隙發送信標幀。在發送完信標幀后,節點根據自身的鄰居表,查看自己的兩跳鄰居節點,若有兩跳鄰居節點,轉Step 4;否則,執行Step 5。
Step4 找出時隙分配信息中的兩跳鄰居節點的最大時隙索引號,計算節點發送完信標幀后到最大時隙索引號的節點發送信標幀后的這段時間為T,經過時間T后,節點就可以使用CSMA/CA的方式競爭信道,提前進入CSMA時隙。
Step5 當節點沒有兩跳鄰居節點時,查看時隙分配信息,找出大于自身時隙索引號的一跳節點或同層級號節點的最大時隙索引號。時隙分配信息里是否還有大于最大時隙索引號的節點,若沒有,節點在CAMA時隙里使用CSMA/CA競爭信道的方式接入信道;否則,執行Step 6。
Step6 若存在大于最大時隙索引號的節點的時隙分配信息,則判斷其余節點不是自身節點的子孫節點,計算節點在發送完信標幀后到最大時隙索引號的節點發送信標幀后的時間為T,經過時間T后,節點就可以使用CSMA/CA的方式競爭信道,提前進入CSMA時隙。
基于節點層級號的信標時隙分配新機制的操作流程如圖3所示。

圖3 基于節點層級號的信標時隙分配流程
基于拓撲信息的信標幀高效廣播機制的核心思想是:CCO根據節點的層級號從小到大的順序分配信標時隙,CCO在信標時隙的第一個時隙里廣播信標幀;已入網的節點收到信標幀后,根據時隙分配信息計算自身發送信標幀的時隙,并且根據拓撲信息,刪除不大于自身層級號的節點和大于其層級號且在兩跳范圍內的非其子孫節點的時隙分配信息,減少不必要的節點時隙分配信息廣播,縮短信標幀的長度和內容,提高接入效率。該新機制的具體操作步驟如下:
Step1 在信標時期,CCO生成時隙分配字段前,CCO按照節點層級號的從小到大的順序進行排序。依次分配信標時隙給每個已經入網的節點發送信標幀,層級號越小的節點在信標時隙中的位置越靠前,在信標時隙的第一個時隙里廣播信標幀。
Step2 普通節點收到信標幀后,取出目的地址,更新自身的鄰居表。根據時隙分配信息計算自身發送信標幀的時隙和信標時隙、CSMA時隙、TDMA時隙和綁定CSMA時隙的位置。
Step3 普通節點在廣播信標幀之前,首先查看自身時隙分配信息的位置,若其位置之前存在其他節點的時隙分配信息,則刪除這些層級號不大于自身層級號節點的時隙分配信息;若還存在大于自身層級號節點的時隙分配信息,則進一步查看鄰居表,若鄰居表中存在與時隙分配信息中相同的節點,則可知這些節點為自身的子孫節點;否則,刪除比自身層級號大且在兩跳范圍內的非子孫節點的時隙分配信息。
Step4 普通節點查看刪除完滿足條件的時隙分配信息后,發現無自身子孫節點的時隙分配信息,則判斷自身為邊緣節點。若為邊緣節點,執行Step 5;否則,執行Step 6。
Step5 節點為邊緣節點,則廣播精簡的信標幀,精簡信標幀的時隙分配信息里只保留信標周期的長度和信標時隙、CSMA時隙、TDMA時隙和綁定CSMA時隙的長度,無信標時隙的分配信息。
Step6 節點廣播刪除完滿足條件的時隙分配信息的信標幀。
基于拓撲信息的信標幀高效廣播新機制的操作流程如圖4所示。

圖4 基于拓撲信息的信標幀高效廣播流程
為驗證ELDM-MAC協議的性能,本文采用OPNET Modeler 14.5仿真工具對ELDM-MAC協議進行仿真驗證,選取IEEE1901.1 MAC協議作為參考協議,分析了信道利用率、控制開銷和數據平均時延等性能。
基于OPNET Modeler 14.5仿真工具,模擬了1個主節點、10~50個代理和普通節點的網絡場景。BPLC網絡場景由1個主節點、多個代理節點和多個普通節點組成,節點之間的通信范圍為800 m,網絡的拓撲層級共有8級。具體仿真參數設置如表1所示。

表1 主要仿真參數表
主節點在每個信標周期內廣播信標幀,節點收到信標幀后獲取時隙分配信息,繼續廣播信標幀。在仿真驗證中,通過設置不同的網絡節點數,重復50次實驗得到信道利用率、數據平均時延和控制開銷的平均值,來驗證節點數目對信道利用率、數據平均時延和控制開銷等性能指標的影響。
由于TDMA和綁定CSMA時隙目前還未有具體的用途,在仿真過程中不做考慮,即信標周期只包含信標和CSMA時隙。
3.2.1 信道利用率
信道利用率指節點占用信道進行有效數據傳輸所用的時間與網絡運行時間的比值。圖5所示為在節點數目不同的條件下,ELDM-MAC和IEEE1901.1 MAC兩種協議的信道利用率。由圖可知,隨著節點數量的增加,信道利用率都在顯著提高。這是由于信道還未達到飽和,但隨著業務量增加,信道趨向飽和,信道利用率隨著提高。ELDM-MAC協議的信道利用率要高于原IEEE1901.1 MAC協議。由于在ELDM-MAC協議里使用了基于節點層級號的信標時隙分配,節點在由CCO指定時隙發送完信標幀后,節點根據自己的鄰居表和時隙分配信息計算自身進入CSMA時隙的時間,而不是和IEEE1901.1 MAC那樣,在信標時隙中自身只占用一個時隙發送信標幀,其空閑時間一直在等待CSMA時隙的到來,ELDM-MAC協議會使自身提前進入到CSMA時隙,節點通過CSMA/CA的方式競爭信道。在信標時隙期間增加了節點占用信道進行數據傳輸的時間,減少了信標時隙的浪費,從而提高了信道利用率。

圖5 信道利用率
3.2.2 數據平均時延
數據平均時延指數據幀從產生到目的節點成功接收的平均耗時。圖6所示為在節點數目不同的條件下,ELDM-MAC和IEEE1901.1 MAC兩種協議的平均時延。由圖可見,所提出的ELDM-MAC協議的平均時延性能優于IEEE1901.1 MAC協議。這是由于ELDM-MAC協議通過基于節點層級號的信標時隙分配新機制,節點能盡早地進入到CSMA時隙傳輸數據消息,使節點有足夠的時隙來傳輸數據包,從而減少數據消息的時延。

圖6 數據平均時延
3.2.3 控制開銷
圖7所示為ELDM-MAC協議和IEEE1901.1 MAC協議的控制開銷,由圖可知,在這兩種協議下的控制開銷隨著節點數的增加而增加,相較于IEEE1901.1 MAC協議,ELDM-MAC協議通過基于拓撲信息的信標幀高效廣播新機制,降低了網絡的控制開銷。每個節點在廣播信標幀時,節點只廣播其兩跳節點以內的子孫節點和大于兩跳節點的所有時隙分配信息,冗余的時隙分配信息不再廣播,刪除時隙分配信息里不必要的相關字段,縮短了信標幀的長度,降低了控制開銷。

圖7 控制開銷
本文針對寬帶電力線通信網絡,提出了一種高效低時延的多跳MAC協議。ELDM-MAC協議在保證數據傳輸可靠性的前提下,通過基于節點層級號的信標時隙分配機制有效減少了信標時隙的浪費,提高了信道利用率;基于拓撲信息的信標幀高效廣播機制有效減少了節點廣播無效的時隙分配信息,降低了網絡的控制開銷。OPNET Modeler 14.5仿真結果表明,ELDM-MAC協議在信道利用率、數據平均時延和控制開銷等性能指標方面均優于IEEE1901.1 MAC協議。未來的研究工作可圍繞進一步減少信標時隙浪費問題展開。