999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

移動Ad hoc中發布/訂閱路由協議的網絡仿真

2009-01-01 00:00:00王婷婷翟立東馬曉雷劉元安
計算機應用研究 2009年4期

(北京郵電大學, 北京 100876)

摘 要:通過在Ad hoc多播路由協議(ADMR)中加入發布/訂閱匹配算法,將發布/訂閱中間件與移動Ad hoc網絡相結合,設計出適應發布/訂閱分布式網絡的多播路由協議(PSMR),中間件使用該協議將發布者的數據分發到相匹配的訂閱者。使用NS2網絡仿真平臺實現了該協議,將其與ADMR進行性能比較,大大減少了網絡中分組轉發次數,提高了網絡效率。

關鍵詞:發布/訂閱;移動自組織網絡;多播路由協議;ADMR;PSMR

中圖分類號:TP393.04文獻標志碼:A

文章編號:1001-3695(2009)04-1450-03

Simulation of publish/subscribe multihop routing in mobile Ad hoc network

WANG Ting-ting,ZHAI Li-dong,MA Xiao-lei,LIU Yuan-an

(Beijing University of Posts Telecommunications, Beijing 100876, China)

Abstract:PSMR(publish/subscribe multihop routing) protocol is designed to adapt the publish/subscribe distributed system by adding the publish/subscribe match algorithm to Ad hoc multicast routing protocol ADMR(adaptive demand-driven multicast routing).PSMR was integrated publish/subscribe middleware and mobile Ad hoc network. The middleware was used PSMR to distribute the publisher’s data to relevant subscribers. This protocol PSMR was simulated by NS2 and compared with ADMR in some performances. Simulation conclusion shows that PSMR can greatly reduce the number of packet transmission and enhance the mobile Ad hoc network overall efficiency.

Key words:publish/subscribe; mobile Ad hoc network; multicast routing protocol; ADMR; PSMR

發布/訂閱(publish/subscribe,pub/sub)系統具有異步、多點通信的特點,為信息的發布者和接收者提供了解耦裝置和選擇性的信息分發路徑,使通信的參與者在空間、時間和控制流上完全解耦,適應高度動態的網絡環境和以數據為中心的網絡路由,在開發大規模分布式系統中日益得到廣泛應用[1]。但是發布/訂閱機制在移動Ad hoc網絡中實現比較困難,主要是因為Ad hoc網絡的網絡拓撲是動態變化的,具有很高的靈活性。隨著移動手提式設備的廣泛使用和分布式系統規模的擴大,pub/sub系統必須在移動的、無線的以及高速動態的環境下工作,因此研究移動及無線環境下pub/sub系統的通信具有迫切的必要性。

Ad hoc網絡環境的多播路由協議可以大致分成兩類[2]:a)基于樹結構的多播路由協議。它們使用了固定網絡中基于樹的組播協議的思想,其特點是在源節點與接收節點之間建立一條路徑,如ADMR[3]、AMRoute[4]、AMRIS[5]。b)基于網格結構的多播路由協議。它們能在傳輸數據時為源與接收者之間提供多條路由,如ODMRP[6]、CAMP[7]、DRMR[8]。

將發布/訂閱中間件應用在移動Ad hoc網絡上,目前國際上也有一些成果。STEAM[9]是用于無線Ad hoc網絡的基于事件的中間件;GREEN[10]是一種能夠支持普遍計算應用的發布/訂閱中間件方案,該方案可以支持異構網絡和異構設備;EMMA[11]是JMS在Ad hoc網絡中的應用。

由于移動Ad hoc網絡的動態拓撲特性,要在其上實現發布/訂閱中間件,就必須尋找一種可靠的路由算法。筆者對ADMR協議作了改進,提出了一種新的適用于發布/訂閱中間件的網絡層協議PSMR[12,13],文獻[12,13]從理論的角度詳細論述了該協議。本文從仿真實現的角度,以ADMR協議為基礎,在其上增加了支持發布訂閱特性的模塊,在網絡仿真平臺NS2上模擬實現了PSMR協議,并且對ADMR和PSMR兩個協議進行了性能仿真與比較。

1 發布/訂閱系統與多播路由協議的結合

發布/訂閱系統是一種使分布式系統中的各參與者,能以發布/訂閱的方式進行交互的中間件系統。在發布/訂閱系統中,信息的生產者和消費者之間所交互的信息被稱為事件。發布者將事件發送給發布/訂閱中間件,訂閱者則向發布/訂閱中間件發出一個訂閱條件,表示對系統中的哪些事件感興趣,如果不再感興趣,也可以取消訂閱。而發布/訂閱中間件則保證將發布者發布的事件及時、可靠地傳送給所有對該事件感興趣的訂閱者。匹配算法負責高效地找到與給定的事件相匹配的所有訂閱條件;而路由算法負責選擇適當的路徑,將一個事件從發布者傳送給訂閱者。

分布式發布/訂閱系統中的信息分發與網絡組播集群類似, 發布/訂閱機制對應于Ad hoc網絡中的多播機制。在發布訂閱多跳網絡中,中間件使用多播路由協議將數據分發到相應的訂閱者那里。發布者如同組播集群源 ,將信息傳遞給多個訂閱者,即組播集群接收者。

在Ad hoc網絡中的多播協議中,當信源需要給某個多播組發布信息數據時,只需將數據發布到該多播組對應的多播組地址中,這樣相應的信宿就會接收到多播信息。在發布/訂閱中間件中,多播地址的概念就轉換為主題的概念。數據發布者將具有指定主題的數據信息發布到網絡中,而需要指定主題信息的訂閱者能夠接收該數據。

2 多播協議ADMR

ADMR是一種基于樹的按需組播路由協議,它盡可能地減少任何非按需成分。每個組播數據包從發送者到接收者沿著設置成組播轉發狀態的最小延遲路徑進行轉發。針對網絡中節點移動或無線傳輸條件的變化,接收者動態地適應發送者的發送模式,以有效平衡開銷。ADMR有一個很重要的特點,就是接收節點可以主動加入多播組。

2.1 ADMR協議報頭格式

ADMR協議是按需路由協議,沒有周期性地控制報文,所以ADMR的每個數據分組報頭都攜帶有控制信息,插入在IP報頭之后。ADMR協議報頭分為固定部分和選項部分,結構如圖1所示。其中固定部分包含在所有ADMR報頭中。

Payload length:指出ADMR報頭的長度,不包括固定部分。這個值定義了ADMR中攜帶的所有選項的總長度。

Options :可變長度域。它的長度由payload length指出。包含0或者更多塊選項信息。

ADMR協議定義了如下選項[3]:

-Source Information Option

-Receiver Join Option

-Multicast Solicitation Option

-Repair Notification Option

-Reconnect Option 

-Reconnect Reply Option

-Multicast Group Address Option

Multicast Sender Address Option

-Pad1 Option 

-PadN Option 

2.2 ADMR協議原理

ADMR協議多播狀態的建立可以通過信宿發現和信源發現兩種方式[3]。本文主要使用信源發現方式。

當節點R上有一個應用要求加入多播組G時,作為接收節點的R主動在全網洪泛multicast-solicitation分組。任一針對多播組G的源節點S接收到multicast-solicitation分組,都回復該分組,告之R其是組G的發送者。節點R收到multicast-solicitation分組的回復時,單播一個receiver-join分組給源節點S,生成〈S,G〉的轉發狀態,將自己連接到該組和源的多播轉發樹中。源節點生成組內的多播數據包在轉發樹之間洪泛,轉發節點收到數據包,根據receiver-join分組形成的反向路由將包轉發到接收節點。

與Ad hoc中其他多播路由協議相比較,ADMR協議是一種按需路由協議,使得協議開銷較小,路由選擇最小延遲路由,無須單播路由協議的支持,具有一定的有效性和可擴展性,更適合應用在發布/訂閱系統中。但是,ADMR協議直接應用在發布/訂閱系統中是有缺陷的。ADMR協議在本質上來說是屬于通道過濾或主題過濾的范疇,按照主題的不同劃分多播組,而且只是采用惟一的多播地址而不是通道或主題形成的多播轉發網格。在網絡中主題數量很大時,該協議所要求的節點的存儲能力很大,且會出現大量重復存儲,多播路由的選擇也變得非常復雜,不易實現。

在這種情況下,本文提出了一種發布訂閱多跳路由協議,用PSMR來表示。PSMR協議是在ADMR協議基礎上進行改進,解決了上述問題,使其更適于發布/訂閱系統。

3 發布訂閱多跳路由協議PSMR

3.1 PSMR協議報頭格式

PSMR協議的報頭是在ADMR協議報頭中加入了發布/訂閱機制所需的信息,即在源節點的通知分組中的source information option選項中加入發布屬性信息;在接收節點的多播請求分組中,除multicast solicitation option 選項外,增加一種新的選項,即訂閱選項,用來儲存訂閱屬性信息。訂閱選項格式如圖2所示。

3.2 PSMR協議原理

該協議主要是將路由層的多播協議ADMR與中間件層的發布/訂閱機制結合,其路由建立的策略與ADMR協議基本一致,區別在于[12,13]:

a)在每個發布節點(源節點)處增加了發布過濾機制。發布過濾(pub filter)表示發布者對發布信息的約束,其約束條件即屬性,在通知分組中描述。只有與發布過濾相匹配的發布信息才可以被成功發布。

b)在每個訂閱節點(接收節點)處增加了訂閱過濾機制。訂閱過濾表示訂閱者對所要訂閱信息的約束,其約束條件在多播請求分組中描述。只有與訂閱過濾相匹配的發布信息才可以被訂閱者成功收到。

c)在每個轉發節點處增加了訂閱屬性登記表,記錄所有經過它轉發的訂閱者的地址和各自的訂閱屬性。

d)在每個轉發節點處增加了網格節點過濾機制,以適應發布訂閱的具體要求。該機制利用節點處的訂閱屬性登記表,通過添加匹配函數來實現。匹配函數實現發布信息分組和轉發節點的訂閱屬性登記表中屬性條目之間的匹配。當發布者發布信息分組時,只有滿足匹配條件的分組才能夠繼續向前洪泛,而不滿足條件的分組則被網格節點丟棄。網格節點過濾可以減少無效數據在無線Ad hoc網絡的轉發次數,從而減少了發布信息在網絡中的資源占用,提高了網絡的資源占有率。

3.3 PSMR協議代碼實現

3.3.1 主要數據結構

1)發布訂閱消息的屬性定義

enum attribute{A,B,C,D,E}

2)訂閱選項定義

typedef struct{/*訂閱過濾選項*/

#define SUB_OPTION_SIZE32 /*該選項大小*/

int valid_;/*valid_=1,則該選項有效*/

attribute attr;/*訂閱過濾屬性*/

}sub_option;

3)訂閱屬性的存儲

在每個節點處定義了一個數據結構SFTable(表1),以實現節點處的網格過濾機制。

3.3.2 主要函數

PSMR協議代碼只要實現數據分組的發布、訂閱與接收,包括source information option、receiver join option、multicast solici-tation option等各種選項內容的寫入、讀出與處理;狀態表的寫入與讀出等。PSMR協議優于ADMR協議,更適合發布訂閱網絡,其關鍵在于增加了匹配函數。匹配函數用來作發布屬性與訂閱屬性的匹配運算,匹配成功的數據分組繼續在轉發樹中轉發,匹配失敗的數據分組則被丟棄。

本文在實現PSMR協議時,匹配函數定義如下:

intMulticastState::match(int src_id, attribute pubattr){

SFTable *temp = NULL;/* 訂閱屬性存儲指針 */

SFTableEntry *temp2 = NULL;

int m=0; /* 定義并初始化一個匹配成功標記量 */

temp=sf_table; /* 初始化指針,指向列表的第一個元素 */

while(temp) {

temp2=temp->table_entry;

while(temp2) {

if(temp2->attr == pubattr){

/*若列表中的屬性與發布屬性一致 */

FILE* file = fopen(\"output.txt\",\"a\"); /* 輸出信息 */

fprintf(file,\"match success\\");

fclose(file); 

int gid = temp->sub_id;

ForwarderState* addFwdTableEntry(int gid,int src_id);

/*匹配成功,則轉發數據分組*/

m=1;/* 匹配成功標記量置1 */

break;

}else {

temp2=temp2->next;

/*匹配不成功,則指針指向下一元素*/

FILE* file=fopen(\"output.txt\",\"a\");

fprintf(file,\"match failed\\");

fclose(file);

m=0;/* 匹配成功標記量置0 */

}

}

if(m==1) {

FILE* file = fopen(\"output.txt\",\"a\");/* 輸出標記量 */

fprintf(file,\"m=1\\");

fclose(file); 

break;

} else { 

FILE* file = fopen(\"output.txt\",\"a\");

fprintf(file,\"m=0\\");

fclose(file);

temp=temp->next;

/*匹配失敗,指針指向下一節點登記條目*/

}

}

if(m==1){

return SUCCESS; 

} else {

return FAILURE;

}

}

4 NS2仿真分析

仿真平臺:NS2

仿真環境參數設置如表2所示。

表1 訂閱屬性存儲結構SFTable

node_1(訂閱節點ID)

node_1的訂閱屬性1

node_1的訂閱屬性2

node_1的訂閱屬性3

node_2

node_2的訂閱屬性1

node_2的訂閱屬性2

node_2的訂閱屬性3

node_3

node_3的訂閱屬性1

node_3的訂閱屬性2

node_4node_4的訂閱屬性1

……

表2 仿真環境參數設置

參數數值

節點個數(n)100

仿真環境(m)1 200×800

節點移動模型隨機點過程

節點移動速度(m/s)可變值,最大20

每個group中發布者個數3

group數目3

為簡化程序設計,突出協議性能方面的比較,本文采用枚舉類型設計發布和訂閱的信息屬性,將信息屬性設為{A,B,C,D,E}五種;采用二維數組類型設計每個轉發節點處的訂閱屬性登記表。當節點收到發布者發布的數據包時,提取其中的發布信息屬性,遍歷本地訂閱屬性登記表,將其元素與發布信息屬性進行比較,當發布信息屬性包含于訂閱屬性時,繼續轉發該數據包,否則丟棄該數據包。PSMR仿真時序如圖3所示。

ADMR與PSMR包的轉發次數比較如圖4所示。由圖4可以看出,由于增加了網格過濾機制,將發布訂閱匹配算法結合在多播路由協議中, PSMR協議的包轉發次數要遠小于ADMR協議的包轉發次數,這樣可以極大地減少無用的數據傳送,同時減少能量的消耗,極大地提高了網絡效率和網絡的整體生存時間。ADMR與PSMR信息傳送概率比較如圖5所示。由圖5可以看出,由于使用相同的路由策略,ADMR協議和PSMR協議在信息傳送概率上是基本一致的,但是由于過濾機制的使用,PSMR協議的信息傳送概率略低于ADMR協議。

5 結束語

本文將發布訂閱機制與移動Ad hoc網絡的多播路由協議ADMR相結合,設計出適應發布訂閱的多播協議PSMR,建立了發布訂閱多跳網絡。PSMR采用了發布過濾、訂閱過濾和網格過濾機制,當分發信息在多播網格中進行轉發時,中間節點需要使用網格節點過濾對數據進行匹配判決,是繼續進行網格洪泛還是銷毀分發信息。因此,與ADMR協議相比,網絡中包的轉發次數大大減少。筆者還將繼續對PSMR協議作進一步改進,結合QoS算法,使得發布訂閱多跳路由協議更加完善。

參考文獻:

[1]

EUGSTER P T,FELBER P A,GUERRAOUI R,et al.The many faces of publish/subscribe [J].ACM Computing Surveys,2003,35(2):114-131.

[2]周元,李光勝,詹永照,等.三種Ad hoc網絡組播協議的性能分析與比較[J].計算機科學,2006,33(10):40-48.

[3]JETCHEVA J G,JOHNSON D B.Adaptive demand-driven multicast routing in multi hop wireless Ad hoc networks[C]//Proc of Mobihoc.Long Beach,CA:[s.n.],2001:33-44.

[4]XIE J,ROUTE A M.Ad hoc multicast routing protocol[J].Mobile Networks and Applications,2002,7(6):429-439.

[5] WU C W, TAY Y C.AMRIS:a multicast protocol for Ad hoc wireless networks[C]//Proc of IEEE Military Communications Conference.Atlantic City:[s.n.],1999:25-29.

[6]LEE S J,GERLA M,CHIANG C C.On-demand multicast routing protocol in multi hop wireless mobile networks[J].Mobile Networks and Applications,2002,7(6):441-453.

[7]GARCIA-LUNA-ACEVES J J, MADRUGA E L.Core-assisted Mesh protocol[J].IEEE Journal on Selected Areas in Communications,1999,17(8):1380-1394.

[8]ZHOU Yuan,LI Guang-sheng,ZHAN Yong-zhao,et al.DRMR:dynamic-ring-based multicast routing protocol for Ad hoc networks[J].Journal of Computer Science Technology,2004,19(6):909-919.

[9]MEIER R,CAHILL V.Steam:event-based middleware for wireless Ad hoc networks[C]//Proc ofthe 22nd International Conference on Distributed Computing Systems.2002:639-644.

[10]SIVAHARAN T,BLAIR G,COULSON G.GREEN: a configurable and re-configurable publish-subscribe middleware for pervasive computing [C]//Proc ofDistributed Objects and Applications.Agia Napa, Cyprus:[s.n.],2005:732-749.

[11]MUSOLESI M,MASCOLO C,HAILES S.Adapting asynchronous messaging middleware to Ad hoc networking [C]//Proc of the 2nd Workshop on Middleware for Pervasive and Ad hoc Computing.2004:121-126.

[12]ZHAI Li-dong,MA Xiao-lei,GAO Jin-chun,et al.PSMR:publish/subscribe multi-cast routing for wireless Ad hoc networks[C]//Proc of International Conference on Computational Intelligence and Security. Harbin:IEEE Computer Society,2007:554-557.

[13]ZHAI Li-dong,LIU Yuan-an,MA Xiao-lei,et al.Research of publish/subscribe paradigm for mobile Ad hoc networks [J].Journal of Beijing University of Posts and Telecommunications,2008,31(2):30-34.

主站蜘蛛池模板: 国产午夜小视频| 久久特级毛片| 国产老女人精品免费视频| 欧美亚洲综合免费精品高清在线观看 | 色135综合网| 亚洲区欧美区| 中文字幕在线永久在线视频2020| 亚洲国产中文欧美在线人成大黄瓜 | 黄色网站不卡无码| 精品福利视频导航| 伊人久久婷婷| 国产小视频在线高清播放| 国产毛片不卡| 亚洲黄色高清| 国产一区二区三区日韩精品 | 亚洲黄色片免费看| 亚洲精品国产精品乱码不卞| 精品国产网站| 日韩成人午夜| 日韩中文字幕免费在线观看| 欧美视频二区| 亚洲高清无在码在线无弹窗| 国产一级毛片网站| 污网站免费在线观看| 国产玖玖玖精品视频| 欧美黄色a| 日韩精品高清自在线| Jizz国产色系免费| 久久免费观看视频| 美女被操黄色视频网站| 四虎精品黑人视频| 亚洲第一成年网| 国产大片喷水在线在线视频| 国产拍揄自揄精品视频网站| 亚洲精品你懂的| 久久久波多野结衣av一区二区| 在线精品亚洲国产| 欧美一级高清片欧美国产欧美| 精品人妻一区无码视频| 亚洲综合第一区| 最新午夜男女福利片视频| 国产精品3p视频| 中文字幕在线看| 这里只有精品免费视频| 国产精品欧美激情| 欧美第一页在线| 亚洲啪啪网| 亚洲成人免费在线| 青青青草国产| 精品国产三级在线观看| 色精品视频| 亚洲久悠悠色悠在线播放| 久久这里只精品热免费99| 又黄又爽视频好爽视频| 国产精品自拍合集| 国产乱人免费视频| 久久久无码人妻精品无码| 日本高清免费不卡视频| 久久精品国产999大香线焦| 色妞永久免费视频| 红杏AV在线无码| 97国产在线视频| 亚洲三级成人| 日韩高清在线观看不卡一区二区| 久久香蕉欧美精品| 99久久性生片| 伊人成色综合网| 国产成+人+综合+亚洲欧美| 婷婷六月综合网| 91午夜福利在线观看| 欧美中文字幕在线播放| 日韩大乳视频中文字幕| 丰满人妻一区二区三区视频| 久久久久无码国产精品不卡| 国产亚洲美日韩AV中文字幕无码成人| 久久毛片网| 亚洲天堂精品在线| 蜜桃臀无码内射一区二区三区| 91福利免费| 欧美在线伊人| 国产精品视频观看裸模 | 国产乱人免费视频|