日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

aodv协议C语言代码,AODV协议的运行方式

發(fā)布時間:2023/12/19 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 aodv协议C语言代码,AODV协议的运行方式 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

這也是一個網(wǎng)管必須具備的知識。那么在前面的文章中,我們已經(jīng)對AODV協(xié)議的基礎(chǔ)內(nèi)容作了介紹,在這里我們主要講解一下它的運行方式。

(a)AODV路由發(fā)現(xiàn)

AODV路由協(xié)議是一種典型的按需驅(qū)動路由協(xié)議,該算法可被稱為純粹的需求路由獲取系統(tǒng),那些不在活躍路徑上的節(jié)點不會維持任何相關(guān)路由信息,也不會參與任何周期路由表的交換?此外,節(jié)點沒有必要去發(fā)現(xiàn)和維持到另一節(jié)點的路由,除非這兩個節(jié)點需要進行通信?移動節(jié)點間的局部連接性可以通過幾種方法得到,其中包括使用局部廣播Hello消息?這種算法的主要目的是:在需要時廣播路由發(fā)現(xiàn)分組一般的拓撲維護;區(qū)別局部連接管理(鄰居檢測)和一般的拓撲維護;向需要連接信息的鄰居移動節(jié)點散播拓撲變化信息?

AODV使用廣播路由發(fā)現(xiàn)機制,它依賴中間節(jié)點動態(tài)建立路由表來進行分組的傳送?為了維持節(jié)點間的最新路由信息,AODV協(xié)議借鑒了DSDV中的序列號的思想,利用這種機制就能有效地防止路由環(huán)的形成?當源節(jié)點想與另外一個節(jié)點通信,而它的路由表中又沒有相應(yīng)的路由信息時,它就會發(fā)起路由發(fā)現(xiàn)過程?每一個節(jié)點維持兩個獨立的計數(shù)器:節(jié)點序列號計數(shù)器和廣播標識?源節(jié)點通過向自己的鄰居廣播 RREQ(Route Requests)分組來發(fā)起一次路由發(fā)現(xiàn)過程?

(b)AODV協(xié)議反向路由的建立

在RREQ分組中包含了兩個序列號:源節(jié)點序列號和源節(jié)點所知道的最新的目的序列號?源節(jié)點序列號用于維持到源的反向路由的特性,目的序列號表明了到目的地的最新路由?當RREQ分組從一個源節(jié)點轉(zhuǎn)發(fā)到不同的目的地時,沿途所經(jīng)過的節(jié)點都要自動建立到源節(jié)點的反向路由?

節(jié)點通過記錄收到的第一個RREQ分組的鄰居地址來建立反向路由,這些反向路由將會維持一定時間,一該段時間足夠RREQ分組在網(wǎng)內(nèi)轉(zhuǎn)發(fā)以及產(chǎn)生的RREP分組返回源節(jié)點?當RREQ分組到達了目的節(jié)點,目的節(jié)點就會產(chǎn)生RREP分組,并利用建立的反向路由來轉(zhuǎn)發(fā)RREP?

(c)AODV協(xié)議正向路由的建立

RREQ分組最終將到達一個節(jié)點,該節(jié)點可能就是目的節(jié)點,或者這個節(jié)點有到達目的節(jié)點的路由?如果這個中間節(jié)點有到達目的的路由項,它就會比較路由項里的目的序列號和RREQ分組里的目的序列號的大小來判斷自己已有的路由是否是比較新的?

如果RREQ分組里的目的序列號比路由項中的序列號大,則這個中間節(jié)點不能使用己有的路由來響應(yīng)這個RREQ分組,只能是繼續(xù)廣播這個RREQ分組?中間節(jié)點只有在路由項中的目的序列號不小于RREQ中的目的序列號時,才能直接對收到的RREQ分組做出響應(yīng)?如果節(jié)點有到目的地的最新路由,而且這個RREQ還沒有被處理過,這個節(jié)點將會沿著建立的反向路由返回RREP分組?

在RREP轉(zhuǎn)發(fā)回源節(jié)點的過程中,沿著這條路徑上的每一個.節(jié)點都將建立到目的節(jié)點的同向路由,也就是記錄下RREP是從哪一個鄰居節(jié)點來的地址,然后更新有關(guān)源和目的路由的定時器信息以及記錄下RREP中目的節(jié)點的最新序列號?對于那些建立了反向路由,但RREP分組并沒有經(jīng)過的節(jié)點,它們中建立的反向路由將會在一定時間(Active-Route-Timeout)后自動變?yōu)闊o效?收到RREP分組的節(jié)點將會對到某一個源節(jié)點的第一個RREP分組進行轉(zhuǎn)發(fā),對于其后收到的到同一個源的RREP分組,只有當后到的RREP分組中包含了更高的目的序列號或雖然有相同的目的序列號但所經(jīng)過的跳數(shù)較少時,節(jié)點才一會重新更新路由信息,以及把這個RREP分組轉(zhuǎn)發(fā)出去?

這種方法有效地抑制了向源節(jié)點轉(zhuǎn)發(fā)的RREP分組數(shù),而且確保了最新及最快的路由信息?AODV協(xié)議中規(guī)定,源節(jié)點將在收到第一個RREP分組后,就開始向目的節(jié)點發(fā)送數(shù)據(jù)分組?如果以后源節(jié)點了解到的更新的路由,它就會更新自己的路由信息?

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的aodv协议C语言代码,AODV协议的运行方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。