《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > D2D通信中基于RLE編碼二叉樹發(fā)現(xiàn)消息的設(shè)計
D2D通信中基于RLE編碼二叉樹發(fā)現(xiàn)消息的設(shè)計
2017年電子技術(shù)應(yīng)用第12期
李小文,李新梅,王曉娟
重慶郵電大學(xué) 移動通信重慶市重點實驗室,重慶400065
摘要: D2D(Device-to-Device)通信是通信網(wǎng)絡(luò)中近鄰設(shè)備之間直接進行信息交換的技術(shù),它使得設(shè)備在具有相同且同處于激活狀態(tài)應(yīng)用程序的情況下,實現(xiàn)與鄰近設(shè)備間的直接鏈路通信。針對大數(shù)據(jù)量的設(shè)備應(yīng)用程序與有限頻譜資源之間存在的矛盾,提出基于RLE編碼二叉樹結(jié)構(gòu)構(gòu)造發(fā)現(xiàn)消息的方法。通過使用應(yīng)用程序標識值范圍替代傳統(tǒng)上使用的應(yīng)用程序標識值,可以減少發(fā)現(xiàn)消息大小以提高節(jié)點發(fā)現(xiàn)的能力,并且在接收到鄰近設(shè)備發(fā)送的發(fā)現(xiàn)消息時,通過解碼后進行的迭代細分查找法可以達到快速查找的目的。最后通過理論分析和仿真實驗進行了結(jié)果的正確性驗證。
中圖分類號: TN929.5
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.170987
中文引用格式: 李小文,李新梅,王曉娟. D2D通信中基于RLE編碼二叉樹發(fā)現(xiàn)消息的設(shè)計[J].電子技術(shù)應(yīng)用,2017,43(12):81-84,88.
英文引用格式: Li Xiaowen,Li Xinmei,Wang Xiaojuan. Finding message design based on RLE encoding binary tree in D2D communication[J].Application of Electronic Technique,2017,43(12):81-84,88.
Finding message design based on RLE encoding binary tree in D2D communication
Li Xiaowen,Li Xinmei,Wang Xiaojuan
Chongqing Key Lab of Mobile Communications Protocol,Chongqing University of Posts and Telecommunications(CQUPT), Chongqing 400065,China
Abstract: Device-to-device communication is the technology for directly exchanging information directly between the neighboring devices, which enables the devices to implement the direct communication between the device and the adjacent device in the case of the same and active application. However, due to the large data and limited resources, a method is proposed of discovering message based on RLE encoding binary tree structure, which is designed to realize the discovery message of the device under the adjacent service. Replacing the traditional application identity value by using an application′s identity value range reduces the discovery message size and improves the discovery capability of the node, and is able to achieve a quick lookup by decoding the discovery messages that send by neighboring devices. The correctness of the proposed method is verified by theoretical analysis and experimental simulation.
Key words : D2D communication;proximity service;binary tree;mobile applications;RLE encoding

0 引言

    作為5G通信的關(guān)鍵候選技術(shù)之一[1]D2D通信技術(shù)可以實現(xiàn)基于鄰近服務(wù)設(shè)備之間的直接通信要求,具有降低服務(wù)基站負荷的優(yōu)勢。D2D發(fā)現(xiàn)過程作為D2D通信中實現(xiàn)基于鄰近服務(wù)的第一步,是以設(shè)備對之間安裝有相同且同處于激活狀態(tài)的應(yīng)用程序[2]為前提來實現(xiàn)的。傳統(tǒng)上進行D2D發(fā)現(xiàn)過程所使用的發(fā)現(xiàn)消息是基于應(yīng)用程序名稱設(shè)計的,這樣不僅使得內(nèi)存方面不能滿足日益增長的數(shù)據(jù)要求,而且也使得數(shù)據(jù)傳輸速率方面有所欠缺。

    因此,對此問題的相關(guān)文獻也不斷涌現(xiàn)。文獻[3]提出了一種基于hash函數(shù)來進行發(fā)現(xiàn)消息的構(gòu)造的方案。文獻[4]在文獻[3]的基礎(chǔ)上添加使用bloom濾波器來進行發(fā)現(xiàn)消息的構(gòu)造,方案中,發(fā)現(xiàn)消息基于bloom過濾器數(shù)據(jù)結(jié)構(gòu)和K個hash函數(shù)來設(shè)計。由文獻[3]、[4]所述,在應(yīng)用程序發(fā)現(xiàn)的過程中,假肯定情況是不可避免的,而且,降低錯誤的概率則會顯著增加發(fā)現(xiàn)信息的大小。

    由此,本文提出了基于RLE編碼二叉樹發(fā)現(xiàn)消息的設(shè)計。發(fā)現(xiàn)消息中使用應(yīng)用程序的標識值范圍而不是標識值來減少發(fā)現(xiàn)消息的大小,隨后通過使用二叉樹[5-6]來表示分頁的范圍,并通過RLE編碼[5]的二叉樹的比特信息來通知作業(yè)設(shè)備應(yīng)用程序的值范圍,以此實現(xiàn)高效無誤的設(shè)備對發(fā)現(xiàn)過程。

1 發(fā)現(xiàn)過程及其模型

    為了方便標識設(shè)備中各個應(yīng)用程序,本文采用應(yīng)用程序名稱對應(yīng)的ASCII值的總和作為其標識值。因為各個應(yīng)用程序的名稱不相同,所以標識值可以唯一標識各個應(yīng)用程序。統(tǒng)計當下設(shè)備中各個應(yīng)用程序的名稱,發(fā)現(xiàn)所占字節(jié)數(shù)如圖1所示。

tx2-t1.gif

    從普遍性的角度,可用72個比特來標識各個應(yīng)用程序的名稱。假設(shè)在某個發(fā)現(xiàn)周期中,作業(yè)應(yīng)用程序的個數(shù)為n,非作業(yè)應(yīng)用程序的個數(shù)為m,n≥1,m≥0,那么在發(fā)現(xiàn)周期中所涉及到的應(yīng)用程序的總數(shù)為L=n+m,假定應(yīng)用程序標識值的最大值為M,M=272,那么作業(yè)應(yīng)用程序的分頁范圍的最大長度就為M,最小長度為1。特定發(fā)現(xiàn)周期中的所有分頁范圍構(gòu)成分頁集合Gp,其互補集合就是未分頁區(qū)域的值范圍。

    實際上,發(fā)現(xiàn)消息就是經(jīng)過RLE編碼之后的分頁集合Gp的標識之一。

2 發(fā)現(xiàn)消息設(shè)計

    本文提出的基于RLE編碼的二叉樹方法,通過一個經(jīng)過RLE編碼的分頁二叉樹Tp來唯一地表示這種分布,且一個Tp對應(yīng)一個Gp[6]。下面介紹具體過程。

2.1 發(fā)現(xiàn)消息二叉樹的構(gòu)造

    設(shè)備在發(fā)現(xiàn)周期中可以根據(jù)應(yīng)用程序標識值唯一地創(chuàng)建發(fā)現(xiàn)消息二叉樹。當通過二叉樹表示分頁范圍時,迭代中點細分法用于將整個值范圍[0,M-1]劃分為不確定長度的多個節(jié)點,如a∈{M,M/2,M/4,M/8,…}。在迭代細分過程中,若每個劃分范圍只包含非作業(yè)的應(yīng)用程序或作業(yè)的應(yīng)用程序,則結(jié)束此過程;若較?。ㄝ^大)范圍不包含作業(yè)應(yīng)用程序和非作業(yè)應(yīng)用程序,則執(zhí)行較?。ㄝ^大)范圍的中點進行迭代細分。每個細分操作伴隨著在現(xiàn)有二叉樹上添加一個左(右)節(jié)點,并將一個根節(jié)點進行初始化。以此類推,直到?jīng)]有范圍包含作業(yè)或非作業(yè)應(yīng)用程序后,完成發(fā)現(xiàn)消息的二叉樹的構(gòu)造。

    基于上述過程,設(shè)備可以通過算法1為特定Gp構(gòu)造一顆二叉樹。

    算法1:

    (1)設(shè)置初始搜素范圍[x,y],其中x=0,y=M-1,將當前節(jié)點設(shè)置為根節(jié)點;

    (2)對于搜索范圍[x,y],通過中點二分法分成兩部分,分別為[x,(x+y)/2]和[(x+y)/2,y];

    (3)若較?。ù螅┓秶鷥H包含作業(yè)應(yīng)用程序標識,則不進行下一步劃分。一個葉節(jié)點和一個邊緣被添加到當前節(jié)點的左(右)側(cè);

    (4)若較?。ù螅┓秶鷥H包含非作業(yè)的應(yīng)用程序標識值,則不進行下一步劃分。在當前節(jié)點的左(右)側(cè)不添加節(jié)點;

    (5)若較?。ù螅┓秶瑑煞N不同的應(yīng)用程序標識值,那么進行下一步的劃分。在當前節(jié)點的左(右)側(cè)添加一個節(jié)點和一個邊緣,并且將搜索范圍改為[x,(x+y)/2]和([(x+y)/2,y]),進行步驟(2)的操作;

    (6)若沒有范圍進一步劃分,那么發(fā)現(xiàn)消息二叉樹構(gòu)造完成,否則,轉(zhuǎn)到步驟(2)。

2.2 發(fā)現(xiàn)消息的構(gòu)造

    為了便于在無線信道中實現(xiàn)D2D通信過程,本文進行了消息二叉樹轉(zhuǎn)換二進制比特串的過程。

    由2.1節(jié)可知,根據(jù)節(jié)點的度數(shù)和連接性可以將節(jié)點劃分為以下4種不同的類型:

    (1)具有左和右子樹/葉節(jié)點的節(jié)點;

    (2)只有左子樹/葉節(jié)點的節(jié)點;

    (3)只有右子樹/葉節(jié)點的節(jié)點;

    (4)葉節(jié)點本身。

    因此,可以根據(jù)表1所示的原理將每個節(jié)點用兩個比特來表示,并依據(jù)二叉樹遵循寬度優(yōu)先的遍歷準則,按順序輸出每個節(jié)點的兩位以形成二進制比特串,隨后通過算法2使用的RLE編碼將比特串編碼為最終的發(fā)現(xiàn)消息。

tx2-b1.gif

    由于該比特串中只含有‘0’和‘1’兩種不同的數(shù)值,所以可以使用兩個字節(jié)來進行發(fā)現(xiàn)消息的RLE編碼的過程。

    算法2:

    (1)計算比特串長度值,初始化計數(shù)變量和位置指針,并讀取由算法1生成的比特串;

    (2)對比循環(huán)讀取的值與當前要進行RLE編碼的值:

    ①若相等,計數(shù)器加1,位置指針加1,直到不相等的數(shù)值出現(xiàn),按照計數(shù)值在前數(shù)值在后的規(guī)則,進行發(fā)現(xiàn)消息的構(gòu)造,進行步驟(3);

    ②否則,直接存儲該值到發(fā)現(xiàn)消息中,并將位置指針加1,進行步驟(3);

    (3)若讀取到比特串的末尾處,則結(jié)束程序;

    (4)結(jié)束程序,完成發(fā)現(xiàn)消息的構(gòu)造。

    由此,設(shè)備中的應(yīng)用程序可以根據(jù)發(fā)現(xiàn)消息的比特串來判斷自身是否被激活。首先,設(shè)備通過RLE進行比特串的解碼,然后按照寬度優(yōu)先準則,將比特串轉(zhuǎn)化為一棵二叉樹,隨后判斷設(shè)備中的應(yīng)用程序標識值是否屬于由該二叉樹表示的集合,僅當其標識值屬于該集合時,才可認為含有此應(yīng)用程序的終端就是目標設(shè)備,具體的判斷方法如下:

    (1)首先,接收到經(jīng)過RLE編碼的比特串;

    (2)循環(huán)讀取當前的數(shù)值val,若val≠0且val≠1,則按照此數(shù)值將其后的值補充為val進行顯示;若val=0或val=1,則按原值顯示;

    (3)初始化節(jié)點的取值范圍,起始和結(jié)束位置為Start=0和end=0,將當前的判斷節(jié)點視為根節(jié)點;

    (4)對于每個當前判斷的節(jié)點,設(shè)備中的應(yīng)用程序都應(yīng)判斷其標識值是否屬于該節(jié)點指示的范圍;

    (5)若當前判斷節(jié)點為葉節(jié)點,則認為設(shè)備中的此應(yīng)用程序是作業(yè)的,退出判斷過程。否則,設(shè)置中點為mid=(Start+end)/2;

    (6)如果當前判斷的標識值>mid;

    ①若當前節(jié)點的右子樹存在,那么設(shè)置Start=mid,將其右子樹的根節(jié)點為當前判斷節(jié)點,執(zhí)行步驟(2);

    ②否則,即不存在右子樹,那么設(shè)備認為它沒有要被作業(yè)的應(yīng)用程序;

    (7)如果判斷的標識值<mid;

    ①若當前節(jié)點的左子樹存在,設(shè)置end=mid,將該節(jié)點的左子樹的根節(jié)點為當前判斷節(jié)點,執(zhí)行步驟(2);

    ②否則,退出程序;

    (8)結(jié)束程序。

    綜上所述,發(fā)現(xiàn)消息是被復(fù)制到一個二進制比特串中的,這樣可以達到減少發(fā)現(xiàn)消息大小的目的。同時由于使用比特串,所以即使存在大量的作業(yè)應(yīng)用程序,所提出的方法也不會出現(xiàn)假肯定性錯誤[4]。而且就其復(fù)雜度而言,它與二進制搜索算法一樣高效的。

3 性能分析

    發(fā)現(xiàn)消息的理想設(shè)計是通過最短的消息發(fā)現(xiàn)大量的設(shè)備,并且不會出現(xiàn)錯誤率?;谏鲜龇治?,所提出的發(fā)現(xiàn)消息可以精確指示多個應(yīng)用程序。此外,本文所提出的設(shè)計性能取決于設(shè)備中作業(yè)和非作業(yè)應(yīng)用程序的數(shù)量。

    由于分頁二叉樹上的每個節(jié)點由兩個比特表示,因此首先分析的是二叉樹上的節(jié)點的期望數(shù)量。假設(shè)在[0,M-1]分布范圍內(nèi)有L個應(yīng)用程序,由于發(fā)現(xiàn)消息二叉樹是基于應(yīng)用程序標識值的不同分布而變化的,因此期望函數(shù)E(M,n,m)被定義為發(fā)現(xiàn)二叉樹中的期望節(jié)點數(shù),其中M≥n+m,n≥1。根據(jù)節(jié)點的不同特征,本文采用遞歸分析的方法計算E(M,n,m)。假設(shè)在范圍[0,M-1]中存在n個作業(yè)和m個非作業(yè)應(yīng)用程序,那么在此情況下構(gòu)造的特定二叉樹的概率被定義為P(M,n,m,i,j),含義:在該特定二叉樹中,由根節(jié)點的左子樹表示的范圍包含i個作業(yè)和j個非作業(yè)應(yīng)用程序,而由右子樹表示的范圍內(nèi)包含n-i個作業(yè)和m-j個非作業(yè)應(yīng)用程序。表2給出了不同特定二叉樹的節(jié)點數(shù)和其概率。

tx2-b2.gif

tx2-gs1.gif

    那么,二叉樹中的總節(jié)點數(shù)分為一個根節(jié)點和左、右子樹中節(jié)點數(shù)的總數(shù)。左子樹和右子樹中的預(yù)期節(jié)點數(shù)可以分別表示為E(M/2,i,j)和E(M/2,n-i,m-j)。

    基于統(tǒng)計期望的定義,表2中列出的其他情況也可以以相同的方式來進行分析。對于初始情況,則E(2,1,1)=2和E(M,n,0)=1,其中n≥1,m=0,M>2。

    由表2可得發(fā)現(xiàn)二叉樹的節(jié)點統(tǒng)計期望:

     tx2-gs2.gif

    由于作業(yè)應(yīng)用程序的數(shù)量遠小于總的應(yīng)用程序的數(shù)量,本文中,只考慮n≤M/2的情況,對于某個m,m≥n,那么節(jié)點數(shù)量最大的概率為:

    tx2-gs3.gif

    假定消息二叉樹的節(jié)點數(shù)為式(2)中的E(M,n,m),那么該E(M,n,m)所對應(yīng)的信息如表3所示。

tx2-b3.gif

    由文獻[5]可得,在不失一般性的情況下,假定在比特串中某一位置出現(xiàn)0的概率為p,0≤p≤1,那么出現(xiàn)1的概率為1-p;以此類推,長度為p的0游程出現(xiàn)的概率為pl(1-p),長度為l的1游程出現(xiàn)的概率為p(1-p)l

    在本文中,某一位置出現(xiàn)0的概率為:

tx2-gs4-5.gif

    比較式(4)、式(5)可得,所提出的方法可以顯著減少統(tǒng)計標準中的發(fā)現(xiàn)消息大小。這在后續(xù)的仿真結(jié)果中可以得到進一步的驗證。

    發(fā)現(xiàn)消息的大小是實現(xiàn)高效D2D通信的關(guān)鍵問題之一[7],因此本文通過研究發(fā)現(xiàn)消息大小的方式來評估所提方法的性能。圖2顯示了所提方案在不同作業(yè)應(yīng)用程序下的累積分布圖,由該圖可得在90%的仿真結(jié)果中,所提方案可以在較小比特長度的情況下,能夠很好地發(fā)現(xiàn)作業(yè)的應(yīng)用程序;由圖3可以得出,所提方案中的發(fā)現(xiàn)消息大小優(yōu)于其他3種方案。傳統(tǒng)方案中,由于發(fā)現(xiàn)消息是含有全部應(yīng)用程序的名稱,其大小為72n bit,與傳統(tǒng)方案相比,其余3種方案對于發(fā)現(xiàn)消息減少方法都實現(xiàn)了顯著的增強。而且所提方案相比于bloom方案存在的假肯定性錯誤和比特個數(shù)而言,它的效果顯然是更優(yōu)的。并且本文所提方案在二叉樹的基礎(chǔ)上又進行了一次RLE編碼,更好地實現(xiàn)了縮短發(fā)現(xiàn)消息大小的目的。

tx2-t2.gif

tx2-t3.gif

4 結(jié)論

    本文提出了一種通過減少發(fā)現(xiàn)消息大小來解決D2D通信系統(tǒng)中發(fā)現(xiàn)容量問題的新方法。經(jīng)過RLE編碼的發(fā)現(xiàn)消息二叉樹被設(shè)計為指示作業(yè)應(yīng)用程序的標識范圍,這要比傳統(tǒng)機制中攜帶作業(yè)應(yīng)用程序的名稱列表更為有效。而且經(jīng)過理論分析和仿真模擬可得,預(yù)期發(fā)現(xiàn)消息的大小得以顯著減少。因此,本文提出的方法增加了D2D通信系統(tǒng)的發(fā)現(xiàn)能力,能夠支持大量的設(shè)備通信。對于未來的工作,所提出的方案還可以被優(yōu)化,以便處理消息尺寸超重這一個罕見的情況。

參考文獻

[1] ASADI A,Wang Qing.A survey on Device-to-Device communication in cellular Networks[J].Arash IEEE Communications Surveys and Tutorials,2014,16(4):1801-1809.

[2] 董自強,劉燦燦.基于鄰近服務(wù)的D2D節(jié)點發(fā)現(xiàn)技術(shù)綜述[J].微型機與應(yīng)用,2016,35(16):60-62,66.

[3] CHOI K W,LEE H,CHANG S C.Discovering mobile applications in Device-to-Device communications:Hash function-based approach[C].2014 IEEE 79th Vehicular Technology Conference(VTC Spring),2014:1-5.

[4] CHOI K W,WIRIAATMADJA D T.Discovering mobile applications in cellular Device-to-Device communications:Hash function and bloom filter-based approach[J].IEEE Transaction on Mobile Computing,2016,15(3):336-349.

[5] 周愛武,吳國進,崔丹丹.一種改進的二叉樹多分支持向量機算法[J].微型機與應(yīng)用,2011,30(6):14-21.

[6] Shi Yulong,Xi Wei,Zhou Hua.Effiicient paging message design based on binary tree in NB-IoT system[C].IEEE Conference on Standards for Communicaions and NetWorking(CSCN),2016:1-6.

[7] CHOI K W,Zhu Han.Device-to-Device discovery for proximity-based service in LTE-advanced system[J].IEEE Journal on Selected Areas in Communications,2015,33(1):55-66.



作者信息:

李小文,李新梅,王曉娟

(重慶郵電大學(xué) 移動通信重慶市重點實驗室,重慶400065)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。