自組織基本路由協(xié)議及混合型路由協(xié)議技術(shù)
?、诮Y(jié)點(diǎn)對RREQ分組的處理。
(a)如果在最近收到的f歷史RREQ列表”中已存在,則丟棄該RREQ分組,不作進(jìn)一步的處理;
(b)如果“路由記錄”中包括本結(jié)點(diǎn),則丟棄該RREQ分組,不作進(jìn)一步的處理;
?。╟)如果本結(jié)點(diǎn)就是RREQ指定的信宿,發(fā)送“路由回答分組”RREP,否則將本結(jié)點(diǎn)的地點(diǎn)添加到“路由記錄”的后面,重新廣播更新后的RREQ分組。
?、坌潘薜穆酚苫卮餜REP。RREP包含有由信宿接收到RREQ分組的路由記錄。RREP的目的是如何把這個(gè)路由記錄告訴給信源。先假設(shè)網(wǎng)絡(luò)中所有的鏈路是雙向的。如果信宿到信源的“反向路由”存在,則RREP分組沿“反向路由”點(diǎn)到點(diǎn)傳輸?shù)叫旁矗蝗绻潘薜叫旁吹?ldquo;反向路由”不存在,則按RREQ中的“路由記錄”(前向路由)進(jìn)行反向傳送。
?、艽嬖趩蜗蜴溌贰P潘迗?zhí)行與信源相同的反向路由發(fā)現(xiàn)過程,所不同的是信宿RREQ分組稍帶傳送RREP分組。
按需路由協(xié)議中,沒有周期性的網(wǎng)絡(luò)測試過程,各結(jié)點(diǎn)需要執(zhí)行路由維護(hù)進(jìn)程,動態(tài)地監(jiān)視活動路由的運(yùn)行情況。該協(xié)議的路由維護(hù)過程如下:
?、?ldquo;逐跳MAC確認(rèn)”的網(wǎng)絡(luò)。這種網(wǎng)絡(luò)中,鏈路的故障或變化由MAC層通告,結(jié)點(diǎn)將發(fā)送“路由錯誤分組”RRER到信源;信源結(jié)點(diǎn)將刪除該路由,重新進(jìn)行路由發(fā)現(xiàn)。
?、?ldquo;逐跳MAC不確認(rèn)”的網(wǎng)絡(luò)。這種情況下,可利用無線傳輸?shù)目臻g廣播性,實(shí)現(xiàn)等效的“被動ACK”。當(dāng)結(jié)點(diǎn)A轉(zhuǎn)發(fā)分組到下一跳B時(shí),B到C的分組轉(zhuǎn)發(fā)可被A監(jiān)聽到。
③利用“端到端確認(rèn)”的路由維護(hù)。端到端的確認(rèn)(如TCP層的確認(rèn)機(jī)制)也可以實(shí)現(xiàn)路由維護(hù),信源端將檢測到并發(fā)起新的路由請求。
(2)AODV協(xié)議
AODV協(xié)議是在DSDV協(xié)議基礎(chǔ)上,結(jié)合類似DSR中的按需路由機(jī)制進(jìn)行改進(jìn)后提出的。不同之處在于AODV采用了逐跳轉(zhuǎn)發(fā)分組方式,而DSR是源路由方式。因此,AODV在每個(gè)中間結(jié)點(diǎn)隱式保存了路由請求和回答的結(jié)果,而DSR將結(jié)果顯示保存在路由請求和路由回答分組中。此外,AODV的另一個(gè)顯著特點(diǎn)是它加人了組播路由協(xié)議擴(kuò)展,并支持QoS。它的缺點(diǎn)是不支持單向信道,原因是AODV協(xié)議基于雙向信道的假設(shè)工作,路由回答分組直接沿著路由請求的反方向回到源結(jié)點(diǎn)。AODV與DSR的路由發(fā)現(xiàn)有所不同,該協(xié)議的路由發(fā)現(xiàn)過程如下:
①RREQ分組。結(jié)點(diǎn)在需要(沒有到信宿的活動路由)時(shí),向其鄰居廣播RREQ分組用于路由發(fā)現(xiàn)。RREQ分組包括信源地址、信源序列號、廣播ID、信宿地址、信宿序列號、跳計(jì)數(shù)。
(a)(信源地址+廣播ID)唯一地標(biāo)識了一個(gè)RREQ分組;
?。╞)信源序列號由信源結(jié)點(diǎn)維護(hù),用于表示“到信源的反向路由”的新舊;
?。╟)信宿序列號表示信源可接受的“到信宿的前向路由”的新舊,等于過去接收到的有關(guān)信宿的最大序列號??梢?,結(jié)點(diǎn)需要為每一個(gè)信宿維護(hù)一個(gè)信宿序列號;
?。╠)RREQ的跳計(jì)數(shù)=0。
②對RREQ的處理。接收到RREQ的結(jié)點(diǎn)的處理方法為:創(chuàng)建一個(gè)表項(xiàng),先不分配有效的序列號,用于記錄反向路徑。如果在“路由發(fā)現(xiàn)定時(shí)”內(nèi)已收到一個(gè)具有相同標(biāo)識的RREQ分組,則拋棄該分組,不作任何的處理,否則對該表項(xiàng)進(jìn)行更新如下:
?。╝)信源序列號=RREQ分組的信源序列號;
(b)下一跳結(jié)點(diǎn)=廣播RREQ的鄰居;
?。╟)跳數(shù)=RREQ分組的“跳計(jì)數(shù)”字段值;
?。╠)設(shè)置表項(xiàng)的“過時(shí)定時(shí)器”。
如果該結(jié)點(diǎn)是信宿,結(jié)點(diǎn)的路由表中有到信宿的活動表項(xiàng),且表項(xiàng)的信宿的序列號大于RREQ中的信宿序列號(新),則該結(jié)點(diǎn)將產(chǎn)生“路由回答分組”RREP,并發(fā)送到信源,否則更新RREQ分組,并廣播更新后的RREQ分組。
p2p機(jī)相關(guān)文章:p2p原理
評論