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