Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[24]車載網路中基於網路編碼技術之封包聚集機制

MC2013
August 28, 2013
130

 [24]車載網路中基於網路編碼技術之封包聚集機制

MC2013

August 28, 2013
Tweet

Transcript

  1. 李佩珊 曾冠嵐 王讚彬 車載網路中基於網路編碼技術之封包聚集機制 前言 車載網路中的應用服務在網路中產生大量封包容易造成 封包碰撞進而遺失封包的問題。封包聚集技術可幫助節 省無線資源,減少網路中封包的數量,進一步可減少封 包發生碰撞的機率,適當地增加throughput。 本文提出兩種各以傳統聚集和網路編碼為基礎的封包合

    併方法,另外再提出動態切換傳統聚集或網路編碼的選 擇機制,研究三者在減少封包數量上可以達到多少效益。 且因為無線網路「發送封包即為廣播」的特性,本文用 「節點發送封包次數」來當作評估封包數量的標準。 相關研究 適應性聚集封包機制使用傳統聚集並動態決定要聚集的 封包數量,同時利用兩段式表頭壓縮技術,在聚集封包 的同時壓縮原始封包的表頭,讓聚集封包內可以填入更 多原始封包資訊。 COPE使用XOR的編碼方法,在IP層和MAC層中插入一個 coding shim,負責決定何時要編碼封包以及要編碼哪些 封包。 基於Network Coding之封包合併方法 (1) 機制流程 圖一是整個機制的流程圖,主要分成三個步驟: 1. 接收封包:節點要先確認該封包是否可被合併。 2. 合併封包:本文提出傳統聚集、網路編碼以及動態選 擇三種合併封包的方法,詳細的做法將在下一節說明。 3. 送出封包:為了避免Hidden Terminal碰撞問題,節 點在發送封包前會先用RTS/CTS偵測。 圖一 封包處理流程圖 國立臺中教育大學資工系 國立臺中教育大學資工系 國立臺中教育大學資工系 [email protected] [email protected] [email protected] 國科會計畫編號 NSC101-2221-E-142-005 (2) 合併封包方法 1. 傳統聚集(Aggregation)是直接將原始封包內容串接起來、 形成新的聚集封包,如圖二所示。 2. 網路編碼(Network Coding)是用XOR計算、將封包合併起 來的方法,如圖三所示。 圖二 傳統聚集示意圖 圖三 網路編碼示意圖 3. 動態選擇(Adaptive)讓封包在合併前先根據封包大小來 決定合併的方法,決定的方法如圖四的演算法。 模擬實驗與數據分析 本章模擬兩個節點在交換封包時,網路中節點所需的總發送 次數,並討論減少封包數量對於封包傳輸時間的影響。 表一 模擬實驗參數 圖四 選擇合併方法之演算法 圖五為兩端節點完全交換完封包,平均一個封包所需的傳輸 時間(單位:回合)。根據暫停次數來決定節點的發送順序, 對於傳輸時間也是有影響的,如圖六所示。 (a)暫停次數多的節點先發送 (b)暫停次數少的節點先發送 圖五 平均傳輸時間 圖六 暫停次數對於平均傳輸時間之影響 結論 本文針對網路中的過多封包,提出三種合併封包的方法,分別是使用傳統聚集的Aggregation、使用網路編碼的Network Cod- ing,以及綜合兩者優點的動態選擇Adaptive,目的是減少網路中的封包數量來避免封包碰撞。而在最後的模擬實驗中,證明 了合併封包的方法確實可以有效減少網路中的封包數量,尤其有使用網路編碼的Network Coding和Adaptive減少的數量更多。 同時也因為封包數量減少,使得封包流動的速度加快,讓節點可以更快完成封包的交換。 摘要 車載隨意行動網路(Vehicular Ad Hoc Network,稱為VANET)中,因為各種應用逐漸發展,使得網路中的封包數量增多,過多 的封包容易讓網路中的其他封包在傳輸時產生碰撞,使得封包遺失或傳輸失敗的機率增加,因此有必要進一步減少在網路中 流動的封包數量。我們提出三種合併封包的方法來減少網路中的封包數量,分別是傳統聚集、網路編碼和動態選擇,再利用 無線網路傳輸的特性將多個封包內容一次傳輸給各個目的地節點,減少節點發送封包的次數及網路中流動的封包數量。
  2. 車載網路中基於網路編碼技術之封包聚集機制 李佩珊 國立臺中教育大學 資訊工程學系 [email protected] 曾冠嵐 國立臺中教育大學 資訊工程學系 [email protected] 王讚彬

    國立臺中教育大學 資訊工程學系 [email protected] 摘要 在車載隨意行動網路(Vehicular Ad Hoc Network,稱為 VANET)中,因為各種應用逐 漸發展,使得網路中的封包數量增多,過多的 封包容易會讓網路中的其他封包在傳輸時產 生碰撞,使得封包遺失或傳輸失敗的機率增 加,因此有必要進一步減少在網路中流動的封 包數量。在本篇論文中,我們提出三種合併封 包的方法來減少網路中的封包數量,分別是傳 統聚集、網路編碼和動態選擇,再利用無線網 路傳輸的特性將多個封包內容一次傳輸給各 個目的地節點,減少節點發送封包的次數及網 路中流動的封包數量。最後的實驗結果證實了 本論文提出的方法可有效減少封包發送次數 並減少傳輸時間。 關鍵詞:多重路徑傳輸、Network Coding、聚 集 一、前言 在無線網際網路的發展中,IEEE 802.11 (a)(b)(g)(n)[2]已經相當成熟,但由於近年來車 載網路的快速發展,出現各式各樣的應用服 務,這些應用的流通也在網路中產生大量封 包。然而,一旦網路中的封包數量增加,就容 易產生封包碰撞進而遺失封包,封包遺失會造 成許多影響,例如:因為重送導致該封包的延 遲時間增加,使得封包內容的有效時間失效; 或者因為重送而使得網路中相同種類的封包 變多,更容易產生碰撞或浪費無線資源。 而封包聚集技術可幫助節省無線資源,減 少網路中封包的數量,進一步可減少封包發生 碰撞的機率,適當地增加 throughput。以圖一 來說,節點 A、C 要交換封包,如果不合併封 包來傳送需要四次發送,但如果先在節點 B 合併封包的話,則可減少為三次。如果可以先 將多個封包聚集後再送出,不但可以減少節點 發送封包的次數以及網路中的封包數量,還可 以用單次傳輸來發送多個封包,增加封包發送 的效率。 合併封包的方法有許多種,其中一種是傳 (a)不合併封包 (b)合併封包 圖一 交換封包所需次數 統聚集,就是直接將兩個原始封包串接起來, 加上新的表頭後形成聚集封包,這種方法的優 點是作法直接簡單,不需要額外的技術就可合 併或拆開封包,但缺點就是,封包大小有 Maximum Transmission Unit(MTU)的限制,不 能無限聚集,因此能減少的封包數量有限。另 一種方法是網路編碼技術,發送端利用 XOR 或線性計算等方法,將多個封包合成一個編碼 封包,而接收端再利用對應的解碼器將編碼封 包解碼,這種方法的好處是,編碼封包沒有 MTU 的限制,理論上要同時編碼幾個封包都 可以,但缺點就是,接收端除了對應的解碼器 外,還必須具備一部分編碼封包內的原始封包 資料,才能成功解碼,且因為合併封包是用邊 解碼的方式,對於節點來說,在計算上的負擔 會較大。 本文提出兩種各以傳統聚集和網路編碼 為基礎的封包合併方法,另外再提出動態切換 傳統聚集或網路編碼的選擇機制,研究三者在 減少封包數量上可以達到多少效益。且因為無
  3. 線網路「發送封包即為廣播」的特性,本文用 「節點發送封包次數」 來當作評估封包數量的 標準。 本文的組織如下:第二節介紹使用傳統聚 集及網路編碼技術的相關研究;第三節提出我 們的方法設計;第四節是模擬的結果與比較分 析;第五節則是本文的總結。 二、相關研究 論文[1]提出適應性聚集封包機制

    , 使用傳 統聚集並動態決定要聚集的封包數量,同時利 用兩段式表頭壓縮技術,在聚集封包的同時壓 縮原始封包的表頭,讓聚集封包內可以填入更 多原始封包資訊。詳細的流程如圖二,有以下 三個步驟:1.先對原始封包做壓縮靜態欄位: 靜態欄位是表頭內數值為固定的欄位,在同一 session 內靜態欄位的值不會改變 , 於是將這些 多餘的欄位省去。2.將壓縮過的原始封包聚集 起來。3.對聚集封包內的原始封包做動態壓 縮,可動態壓縮的部分是在連續的封包之間按 照順序改變或很少改變數值的欄位(例:序 號),這些欄位內容的變化有固定規律,可從 其他封包表頭推算出來,即使省略也不會對解 壓縮造成影響。動態壓縮可使聚集封包縮小, 進一步地放入更多原始封包內容。 圖二 聚集與壓縮表頭流程圖 而在聚集的部分分成兩個步驟:adaptive 和 aggregation。在 adaptive 中,根據整體的 delay 來決定要聚集的封包數量,當 delay 超過 門檻值時就減少聚集封包的量。而 aggregation 則是將封包從 Queue 中取出並聚集,若 Queue 中的封包數量不足指定的聚集數量,則等待 Queue 中的封包數量足夠再開始聚集,但考量 到各封包的 delay 時間,若 Queue 中有封包的 等待時間超過許可範圍,則節點可將目前在 Queue 中的封包先行聚集後送出,而不需等待 封包數量足夠。 論文[7]利用網路編碼技術 , 提出一個名為 COPE 、 使用 XOR 的編碼方法 , 在 IP 層和 MAC 層中插入一個 coding shim , 負責決定何時要編 碼封包以及要編碼哪些封包。優點是一次可編 碼多個封包,缺點則是必須先具備其中 N-1 個 原始封包資訊才能解碼出第 N 個原始封包。 COPE 主要包含以下三個步驟:1.Opportunistic Listening:為了蒐集解碼用的原始封包,COPE 讓節點可竊聽頻道上的所有封包。此外,每個 節點都會廣播 reception report,用來告知附近 的鄰居節點,自己有哪些原始封包可用來解 碼。2.Opportunistic Coding:決定要聚集哪些 原始封包才會有最大的效益並執行聚集。決定 的條件是,哪種封包組合會讓最多數量的接收 端能夠解碼並得到它們想要的資訊。如圖三的 範例,節點 B 要從 Queue 中選擇編碼哪些封 包並送出,其中封包 P1、P2、P3 及 P4 有各 自的接收端,而 P1+P3+P4 會是最好的編碼組 合,因為三個接收端都可解碼出自己所需要的 封包。3.Learning Neighbor State:在 COPE 中, 節點必須知道其他鄰居節點各有哪些原始封 包資訊可供解碼,才能決定要編碼哪些封包會 有最大效益,而要得知鄰居節點具有那些原始 封包,除了從接收 reception report 得知之外, 另外還得用機率去猜測鄰居節點是否具備某 個特定封包。COPE 利用無線的路由協定,去 計算任兩點之間的傳遞機率,並利用這些機率 值來猜測鄰居節點是否具有該原始封包。若猜 錯的話會導致部分接收端無法解碼封包,此時 會將封包與其他封包重新編碼後再送出。
  4. 三、基於 Network Coding 之封包合併 方法 本文提出三種合併封包方法─傳統聚 集、網路編碼及動態選擇,目的是減少網路中 的封包數量,也就是減少節點發送封包之次 數,降低封包碰撞的發生機率。 (一)

    機制流程 圖四是整個機制的流程圖,主要分成三個 步驟: 圖四 封包處理流程圖 1.處理剛接收的封包:節點接收到封包 時,要先該封包是否可被合併。為了避點同種 封包被多次重覆發送、浪費資源,同時減少節 點發送的次數,節點都維護一個 record table, 用來記錄發送過的封包,並會定時清除 record table 的資料。當節點收到封包之後,會先去 record table 檢查,若是有該封包的紀錄,表示 相同的封包曾在短時間發送過,於是丟棄封 包;若是沒有紀錄,表示可以發送。接著檢查 buffer,若是 buffer 中有其他封包,就可以跟 新封包一起送去合併;若是沒有,則把新封包 放到 buffer 暫存,等待其他封包進來合併。 2.合併封包:本文提出三種合併封包的方 法─傳統聚集、網路編碼以及動態選擇,詳細 的做法將在下一節說明。三種合併方法一次都 只合併兩個封包,而且已經合併後的聚集或編 碼封包也不再跟其他封包合併。 3.送出封包:因為節點在短時間內不重覆 發送相同的封包,為了避免 Hidden Terminal 碰撞問題而傳輸失敗,節點在發送封包前會先 用 RTS/CTS 偵測,確認可以發送後才會送出 封包。如果相鄰的兩節點同時要發送封包(可 能發生碰撞),則根據節點暫停發送的次數來 決定發送的優先順序,讓暫停次數較多的節點 先發送,或者相反。 (二) 合併封包方法 本節介紹本方法所提出的三種合併封包 機制,分別是傳統聚集、網路編碼及動態選 擇。 1. 傳統聚集(Aggregation) 傳統聚集是直接將原始封包內容串接起 來、形成新的聚集封包,如圖五所示。聚集封 包的大小取決於原始封包的大小總和,若是聚 集後的大小會超過 MTU 的話則不能聚集,兩 個原始封包必須各自發送。使用傳統聚集的優 點在於實做簡單,發送端和接收端都不須額外 的技術或資訊就可以聚集或拆開封包,且任意 大小的封包都可聚集(只要不超過 MTU) ; 而缺 點就是,聚集封包本身有大小限制,不能將所 有原始封包都聚集在一個聚集封包內,使得能 降低的網路封包數量有限。 圖五 傳統聚集示意圖 2. 網路編碼(Network Coding) 網路編碼是用 XOR 計算、將封包合併起 來的方法,如圖六所示。在編碼時,原始封包 的大小必須一樣才能計算,若兩者大小不一樣 的話需將較小的封包補上空白字元。而解碼 時,解碼端必須有對應的解碼器及部分原始封 包資訊,才能將編碼封包完整解開。使用網路 編碼的優點是,封包沒有 MTU 的限制,理論 上可以無上限地編碼封包;但缺點是,解碼時 必須先具備部分原始封包資訊,如果遺失了先 前傳輸的封包,很有可能無法成功解碼。 圖六 網路編碼示意圖
  5. 3. 動態選擇(Adaptive) 傳統聚集的優點是實作技術簡單,可輕易 地聚集或解聚集;而網路編碼的優點是封包沒 有 MTU 的限制,任兩個封包都可一起編碼。 但先前的兩種機制,讓封包只能固定選擇傳統 聚集或網路編碼,若完全使用傳統聚集,有可 能原始封包太大不能聚集而必須分開發送;而

    如果完全使用網路編碼,在編解碼時所需的計 算成本又比傳統聚集高。 因此本文提出第三種機制─動態選擇,讓 封包在合併前先根據封包大小來決定合併的 方法,決定的方法如圖七的演算法。若是合併 後的封包大小不會超過 MTU,就使用聚集機 制,因為聚集機制在計算上的成本較低;若是 會超過 MTU,則使用網路編碼,因為網路編 碼一定能合併各種大小的封包,所以可以減少 網路中的封包數量。 圖七 選擇合併方法之演算法 四、模擬實驗與數據分析 本章模擬兩個節點在交換封包時,網路中 節點所需的總發送次數,並討論減少封包數量 對於封包傳輸時間的影響。 表一 模擬實驗參數 使用工具 Java 環境模型 Manhattan Model 環境大小 5*5 路徑數量 1 各環境場景數 10 各場景模擬次數 3 交換封包數量 5,6,7 5-10、5-15、5-20 隨機 封包大小 SMALL(0-500) MEDIUM(501-1000) LARGE(1001-1500) MTU 2312 bytes 表一為實驗參數。本實驗在水平及垂直道 路數量皆為 5 的 Manhattan Model 中執行,並 產生 10 種隨機決定來源節點位置的場景。交 換封包數量是指兩個來源節點各自發送的封 包數,而封包大小有三種,在產生時會被隨機 指定大小。另外為了簡化設計,模擬中所使用 的延遲時間單位為回合,假設節點之間的時間 完全同步,使得一個回合就是做發送封包或接 收封包一件事。而要比較的方法有四種:不合 併 封 包 的 Normal 、 使 用 傳 統 聚 集 的 Aggregation、使用網路編碼的 Network Cod- ing,以及動態選擇的 Adaptive。 (一) 發送次數比較 圖八為發送次數比較圖。圖中可明顯看 出,有合併封包的方法所需的發送次數,比沒 有合併封包的方法還要少,因為合併方法將兩 個封包合成一個並一次發送出去,減少原始封 包數量也就減少了發送次數,由此可判斷網路 中的封包數量確實有一定幅度的減少。此外, Network Coding 和 Adaptive 所需的次數又比 Aggregation 少許多,因為 Network Coding 和 Adaptive 確 實 可 以 將 兩 個 封 包 合 併 , 而 Aggregation 卻因為 MTU 的限制,有可能聚集 失敗而必須將封包分開發送 , 因此 Aggregation 在減少封包數量方面並不會有太大成果,而 Network Coding 和 Adaptive 有較好的成效。 (a)暫停發送次數多的節點先發送 (b)暫停發送次數少的節點先發送 圖八 總發送次數
  6. 而圖八(a)(b)兩圖之間的差異在於,暫停 發送次數多的節點先發送,或者是暫停次數少 的節點先發送,差異從圖九看較明顯。對於同 一種方法,暫停次數少(shorter first)的總發送 次數比暫停次數多(longer first)的還要來得 少 , 這是因為

    shorter first 是讓暫停次數少的節 點先發送封包,而另一個暫停次數多的節點就 是一直在接收封包,接收的封包越多,就有更 多機會去合併封包,合併得越多就可以減少發 送次數。 圖九 暫停次數對於總發送次數之影響 (二) 傳輸時間比較 圖十為兩端節點完全交換完封包,平均一 個封包所需的傳輸時間(單位:回合)。Normal 的方法為沒有合併封包,網路中的封包數量最 多,完成交換的所需時間最長;而合併封包方 法因為一次可發送兩個封包內容,減少了需傳 送的封包數量,所以完成封包交換的的時間較 少。此外,因為 Network Coding 和 Adaptive 一定能將封包合併,而能減少的封包數量較 Aggregation 多,相對的交換封包所需的時間 也比 Aggregation 少。 (a)暫停次數多的節點先發送 (b)暫停次數少的節點先發送 圖十 平均傳輸時間 而根據暫停次數來決定節點的發送順 序,對於傳輸時間也是有影響的,如圖十一所 示。以同一種方法來比較的話,(b)的平均傳輸 時間要較(a)來得多,因為(b)是讓暫停次數少 的節點先發送,相對的,暫停次數多的節點就 是一直在等待,以至於拉長了整體的傳輸時 間。 圖十一 暫停次數對於平均傳輸時間之影響 (三) 使用網路編碼之次數比較 Network Coding 和 Adaptive 在發送次數 及傳輸時間上的模擬數據都一樣,因為這兩種 方法在每次的合併封包時,都一定可以將封包 合併起來,差別只在於是完全都使用網路編碼 或部分使用網路編碼。因此本文在 Network Coding 和 Adaptive 之間比較使用網路編碼之 次數 , 討論 Adaptive 在編碼執行時可以為節點 節省多少在計算上的負擔。 圖十二為 Network Coding 和 Adaptive 使 用網路編碼次數的比較表,兩者之間的數據差 即為 Adaptive 使用傳統聚集的次數 。 從圖中可 以看出,Adaptive 使用網路編碼的次數約為 Network Coding 的 2/3,意思是有 1/3 的合併 封包機會是可以使用傳統聚集,也因此使用 Adaptive 的方法,在計算的負擔上會比使用 Network Coding 還要減少 1/3。
  7. 圖十二 使用 Network Coding 次數比 五、結論 本文針對網路中的過多封包,提出三種合 併 封 包

    的 方 法 , 分 別 是 使 用 傳 統 聚 集 的 Aggregation、使用網路編碼的 Network Cod- ing,以及綜合兩者優點的動態選擇 Adaptive, 目的是減少網路中的封包數量來避免封包碰 撞。 而在最後的模擬實驗中,證明了合併封包 的方法確實可以有效減少網路中的封包數 量,尤其有使用網路編碼的 Network Coding 和 Adaptive 減少的數量更多 。 同時也因為封包 數量減少,使得封包流動的速度加快,讓節點 可以更快完成封包的交換。 致謝 This work was supported in part by the Science Council under grant No. 101-2221-E-142 -005-, Taiwan. 參考文獻 [1] 陳昱群,An Adaptive Mechanism for Packet Aggregation for Header Compression in VANET,碩士論文,國立臺中教育大學, 台中市,2011。 [2] “IEEE Std 802.11-2007(Revision of IEEE Std 802.11-1999,” June 12, 2007. [3] IEEE 802.11p, “Part11:WLAN MAC and PHY Specifications: Wireless Access in Ve- hicular Environments(WAVE),” IEEE Standards Association, July 15, 2010. [4] Ahlswede, R., Ning Cai, Li, S.-Y.R., Yeung, R.W., “Network Information Flow,” IEEE Transactions on Information Theory, vol.46, iss.4, pp.1204-1216, July 2000. [5] Sandra Céspedes, Xuemin (Sherman) Shen, and Christian Lazo, “IP Mobility Manage- ment for Vehicular Communication Net- works: Challenges and Solutions,” IEEE Communications Magazine, vol.49, iss.5, pp. 187-194, May 2011. [6] Chou, P.A., Yunnan Wu, “Network Coding for the Internet and Wireless Networks,” IEEE Signal Processing Magazine, vol.24, iss.5, pp.77-85, Sep. 2007. [7] Katti, S., Rahul, H., Wenjun Hu, Katabi, D., Medard, M., Crowcroft, J., “XORs in the Air: Practical Wireless Network Coding”, IEEE/ACM Transactions on Networking, vol.16, iss.3, pp.497-510, June 2008. [8] D. Kidston, “IP Header Compression and Packet Aggregation in Mobile Tactical Netwrks,” in IEEE Military Communica- tions, 2009, pp. 1-7. [9] Koetter, R., Medard, M., “An Algebraic Ap- proach to Network Coding, " IEEE/ACM Transactions on Networking, vol.11, iss.5, pp.782-795, Oct. 2003. [10] Baochun Li, Di Niu, “Random Network Coding in Peer-to-Peer Networks: From Theory to Practice,” Proceedings of the IEEE, vol.99, iss.3, pp.513-523, Mar. 2011. [11] Li, S.-Y.R., Sun, Q.T., Ziyu Shao, “Linear Network Coding: Theory and Algorithms, ” Proceedings of the IEEE, vol.99, iss.3, pp.372-387, Mar. 2011. [12] Nascimento, A.G.O., Mota, E.S., Queiroz, S.J.B., and Nascimento, E., “An Alternative Approach for Header Compression Over Wireless Mesh Networks,” International Conference on Advanced Information Net- working and Applications Workshops, Bradford, pp. 165-169, May 2009. [13] Dong Nguyen, Tuan Tran, Thinh Nguyen, Bose, B., “Wireless Broadcast Using Net- work Coding, ” IEEE Transactions on Ve- hicular Technology, vol.58, iss.2, pp.914-925, Feb. 2009. [14] Bo Yu, Cheng-Zhong Xu, Minyi Guo, “Adaptive Forwarding Delay Control for VANET Data Aggregation,” IEEE Transac- tions on Parallel and Distributed Systems, vol.23, iss.1, pp.11-18, Jan. 2012.