畢業(yè)設(shè)計(jì)(論文)基于Mobile IP有線無(wú)線混合網(wǎng)絡(luò)模擬_第1頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于Mobile IP有線無(wú)線混合網(wǎng)絡(luò)模擬_第2頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于Mobile IP有線無(wú)線混合網(wǎng)絡(luò)模擬_第3頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于Mobile IP有線無(wú)線混合網(wǎng)絡(luò)模擬_第4頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于Mobile IP有線無(wú)線混合網(wǎng)絡(luò)模擬_第5頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、目錄引言11 移動(dòng)ipv421 tcp/ip協(xié)議21.1.1 ipv4協(xié)議的特點(diǎn)21.1.2 移動(dòng)ipv4協(xié)議的提出31.2 移動(dòng)ipv4協(xié)議41.2.1 移動(dòng)ipv4解決的問(wèn)題41.2.2 移動(dòng)ipv4應(yīng)用的范圍51.2.3 移動(dòng)ipv4的設(shè)計(jì)要求與目標(biāo)51.2.4 移動(dòng)ipv4的基本內(nèi)容51.2.5 移動(dòng)ip的協(xié)議概述72 ns-2的基本介紹102.1 ns-2概要102.2 ns-2的目錄結(jié)構(gòu)102.3 ns-2網(wǎng)絡(luò)模擬方法112.4 nam概要122.5 trace概要122.6 awk概要122.7 gnuplot概要133 基于mobile ip有線無(wú)線混合網(wǎng)絡(luò)模擬143.1 有線

2、無(wú)線混合模擬的層次化地址設(shè)置143.2 創(chuàng)建移動(dòng)節(jié)點(diǎn)153.3 移動(dòng)節(jié)點(diǎn)的運(yùn)動(dòng)153.4 配置節(jié)點(diǎn)163.4.1 配置無(wú)線節(jié)點(diǎn)163.4.2 配置基站節(jié)點(diǎn)173.5 基于mobile ip 有線無(wú)線混合網(wǎng)絡(luò)模擬實(shí)例173.3.1 純無(wú)線網(wǎng)絡(luò)模擬173.3.2 無(wú)線有線網(wǎng)絡(luò)混合模擬184 總結(jié)20附錄121附錄226致謝27參考資料28引言 隨著internet國(guó)際互聯(lián)網(wǎng)以驚人的速度發(fā)展,人類生活節(jié)奏的加快,越來(lái)越來(lái)的人成為移動(dòng)辦公的一分子,包括遠(yuǎn)程計(jì)算人員、移動(dòng)售貨人員以及其他一些經(jīng)常需要跑來(lái)跑去的人。這些人急切地需要在任何地點(diǎn)、任何時(shí)候都能獲得internet網(wǎng)絡(luò)的服務(wù)。不斷增加的人群、移動(dòng)

3、計(jì)算技術(shù)的發(fā)展和人們對(duì)網(wǎng)絡(luò)技術(shù)越來(lái)越強(qiáng)的依賴,這3方面一起推動(dòng)著將移動(dòng)計(jì)算機(jī)與其他計(jì)算機(jī)相連的要求,包括與固定的和移動(dòng)的計(jì)算機(jī)相連。這使得提供移動(dòng)的internet接入成為當(dāng)前internet技術(shù)研究的熱點(diǎn)之一。 由于ipv4協(xié)議原本是為固定有線網(wǎng)絡(luò)設(shè)計(jì)開(kāi)發(fā)的,缺乏移動(dòng)性的有效支持,因此,ietf(互聯(lián)網(wǎng)任務(wù)工程組)提出了移動(dòng)ipv4協(xié)議,對(duì)ipv4協(xié)議棧進(jìn)行了擴(kuò)充。移動(dòng)ipv4協(xié)議實(shí)現(xiàn)了讓人們?cè)谌魏蔚攸c(diǎn)都可以隨時(shí)連接internet。它的主要設(shè)計(jì)目標(biāo)是移動(dòng)節(jié)點(diǎn)在改變網(wǎng)絡(luò)接入點(diǎn)時(shí),不必改變網(wǎng)絡(luò)的ip地址,能夠在移動(dòng)過(guò)程中保持通信的連續(xù)性。然而,移動(dòng)ipv4所采用的移動(dòng)性管理方案存在許多不足,主

4、要表現(xiàn)在切換的性能不高,信令開(kāi)銷過(guò)大,切換時(shí)延太長(zhǎng),切換中的質(zhì)量難以保證,同時(shí)也存在安全性問(wèn)題。目前,針對(duì)這些問(wèn)題,學(xué)術(shù)界和工業(yè)界正在研究如何對(duì)移動(dòng)ipv4技術(shù)進(jìn)行擴(kuò)展和優(yōu)化,這對(duì)下一代移動(dòng)internet目標(biāo)的實(shí)現(xiàn)至關(guān)重要。 ns-2是目前通信網(wǎng)絡(luò)領(lǐng)域一個(gè)非常流行的模擬軟件,在國(guó)際上被廣泛使用。ns-2是一個(gè)免費(fèi)的軟件,在學(xué)習(xí)和研究中使用該軟件,不需要支付昂貴的費(fèi)用。同時(shí),它具有強(qiáng)大的模擬功能,豐富的網(wǎng)絡(luò)協(xié)議組件。使用ns-2進(jìn)行通信網(wǎng)絡(luò)協(xié)議的學(xué)習(xí)和研究,已經(jīng)成為一個(gè)潮流。但是,由于ns-2是開(kāi)放源代碼的免費(fèi)軟件,文檔資料繁雜,并采用otcl和c+兩種程序設(shè)計(jì)語(yǔ)言,因此,學(xué)習(xí)起來(lái)困難較大。1

5、 移動(dòng)ipv41 tcp/ip協(xié)議 互聯(lián)網(wǎng)是通過(guò)一套規(guī)則或協(xié)議來(lái)保證不同類型的計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)相互通信的,其核心就是著名的tcp/ip協(xié)議。tcpip協(xié)議的中文含意分別是傳輸控制協(xié)議(tcp)和網(wǎng)際協(xié)議(ip),它是在 1983年在互聯(lián)網(wǎng)的前身arpanet上使用并成為標(biāo)準(zhǔn)的通信協(xié)議。所謂通信協(xié)議就是為了使網(wǎng)絡(luò)中不同設(shè)備能相互進(jìn)行正常的數(shù)據(jù)通信,而預(yù)先制定的一整套通信雙方相互了解和共同遵守的格式和約定。tcp/ip協(xié)議幾乎就是互聯(lián)網(wǎng)的代名詞,沒(méi)有tcp/ip協(xié)議,就沒(méi)有今天的互聯(lián)網(wǎng)。下面將介紹tcp/ip協(xié)議的內(nèi)容。1.1.1 ipv4協(xié)議的特點(diǎn)1)ipv4協(xié)議格式 ipv4分組由報(bào)頭和數(shù)據(jù)區(qū)兩

6、部分組成,每部分的格式如圖1.1所示: 版本號(hào)頭標(biāo)長(zhǎng)服務(wù)類型總長(zhǎng)度標(biāo)識(shí)符標(biāo)志片偏移量生存時(shí)間協(xié)議ip分組頭校驗(yàn)和源ip地址目的ip地址選項(xiàng)填充域數(shù)據(jù)圖1.1 ipv4頭標(biāo)(1)版本號(hào):版本號(hào)占4位,所有的ip軟件都要檢查ip分組的版本號(hào),若版本不同則需要轉(zhuǎn)換,以保證ip分組的格式與軟件期待的一致。(2)頭標(biāo)長(zhǎng):在ip分組的包頭中,任選項(xiàng)和填充項(xiàng)是不固定的。頭標(biāo)的長(zhǎng)度以行計(jì)算,在515行之間,占4位。(3)服務(wù)類型:描述ip分組所希望獲得的服務(wù)質(zhì)量,占8位。(4)總長(zhǎng)度:占16位,即允許最長(zhǎng)的ip分組為65535字節(jié)。(5)標(biāo)識(shí)符id:id是源主機(jī)賦予ip分組的標(biāo)識(shí)號(hào)。同一源主機(jī)所發(fā)出的各ip分

7、組有惟一的標(biāo)識(shí)。占16位。(6)標(biāo)志:占3位。(7)片偏移量:占13位,用以標(biāo)明當(dāng)前段片在初始ip分組中的位置,目的主機(jī)可以根據(jù)它來(lái)重新組合ip分組。(8)生存時(shí)間:占8位,最大值為255,缺省值為64,單位為妙。(9)協(xié)議:協(xié)議段占8個(gè)字節(jié),用以標(biāo)識(shí)接受的ip分組中的數(shù)據(jù)的高層協(xié)議。(10)ip分組頭校驗(yàn)和:占16位,用以保證ip分組報(bào)頭的完整性。(11)源地址:占32位。(12)目的地址:占32位。(13)任選段:用于存放安全保密、報(bào)文經(jīng)歷等信息,其長(zhǎng)度可變。(14)填充段:ip分組頭長(zhǎng)必須是4字節(jié)的整數(shù)倍,它就是用來(lái)作保證的。2)ipv4編址方案(1)物理地址:計(jì)算機(jī)的物理地址是指分配給

8、網(wǎng)卡的地址。此地址在網(wǎng)卡的生產(chǎn)過(guò)程中就被固定在卡上。有些網(wǎng)卡被稱為可配置卡,它的地址可變。以太網(wǎng)的硬件地址也稱為介質(zhì)訪問(wèn)控制(mac)地址,在以太網(wǎng)環(huán)境中,mac地址與硬件地址可互換使用。(2)ipv4地址:ip協(xié)議提供整個(gè)internet通用的地址格式。為了確保一個(gè)ip地址對(duì)應(yīng)一臺(tái)主機(jī),網(wǎng)絡(luò)地址由internet注冊(cè)管理機(jī)構(gòu)信息中心分配,主機(jī)地址由網(wǎng)絡(luò)管理機(jī)構(gòu)負(fù)責(zé)分配。如圖1.2所示,每個(gè)ip地址占用32位,有a、 b、 c、d和e五類,分別用0、10、110、1110和11110標(biāo)識(shí)。如圖1.2:1 2 3 400網(wǎng)絡(luò)標(biāo)識(shí)符7位主機(jī)編號(hào)24位10網(wǎng)絡(luò)標(biāo)識(shí)符14位主機(jī)編號(hào)16位110網(wǎng)絡(luò)標(biāo)識(shí)

9、符21位主機(jī)編號(hào)8位1110多點(diǎn)廣播地址28位11110 實(shí)驗(yàn)保留地址a類b類c類d類e 類 圖1.2 ipv4地址1.1.2 移動(dòng)ipv4協(xié)議的提出傳統(tǒng)的tcp/ip基于一個(gè)假定,即節(jié)點(diǎn)的ip地址唯一地標(biāo)識(shí)節(jié)點(diǎn)在internet上的接入點(diǎn)。因此,當(dāng)節(jié)點(diǎn)擁有ip地址以后,必須位于其ip地址所標(biāo)識(shí)的子網(wǎng)里,才可能正常地接受到發(fā)向該節(jié)點(diǎn)的數(shù)據(jù)包。而當(dāng)節(jié)點(diǎn)移動(dòng)到另一個(gè)子網(wǎng)時(shí),要么改變其ip地址,使其前綴和所訪問(wèn)的新的子網(wǎng)相同,要么就是在路由器上添加主機(jī)路由來(lái)實(shí)現(xiàn)。而這兩種方法都不可行,前者會(huì)導(dǎo)致上層應(yīng)用程序的中斷,而后者缺乏可擴(kuò)展性。移動(dòng)ipv4位于開(kāi)放系統(tǒng)互連(osi)參考模型的第三層,負(fù)責(zé)將數(shù)據(jù)

10、包從源節(jié)點(diǎn)路由到目的地,中間穿過(guò)由鏈路、交換設(shè)備和路由器等構(gòu)成的各種網(wǎng)絡(luò)拓?fù)?。主機(jī)和路由器則通過(guò)手工配置和動(dòng)態(tài)路由協(xié)議獲得到達(dá)網(wǎng)絡(luò)上各個(gè)目的節(jié)點(diǎn)的路徑。ip為internet提供了路由能力。ip給所有節(jié)點(diǎn)(主機(jī)和路由器)分配邏輯地址,稱為ip地址,每臺(tái)主機(jī)的各個(gè)端口都分別有一個(gè)ip地址,端口是指節(jié)點(diǎn)與一條鏈路相連時(shí)經(jīng)過(guò)的硬件和軟件。ip地址包括網(wǎng)絡(luò)前綴和主機(jī)部分,同一條鏈路上的所有主機(jī)通常由相同的網(wǎng)絡(luò)前綴和不同的主機(jī)部分,這使得ip可以依據(jù)目的節(jié)點(diǎn)ip地址的網(wǎng)絡(luò)前綴部分來(lái)進(jìn)行路由選擇,從而使路由器只需保存一條簡(jiǎn)單的網(wǎng)絡(luò)前綴路由,而不必為每臺(tái)主機(jī)保存一條單獨(dú)的路由,這是internet可擴(kuò)展性的

11、一個(gè)主要特點(diǎn)。由于采用了網(wǎng)絡(luò)前綴路由,如果節(jié)點(diǎn)從一條鏈路切換的到另一條鏈路而沒(méi)有改變它的ip地址,那么它就不可能在新鏈路上接受到數(shù)據(jù)包。從理論上說(shuō),這可以采用特定主機(jī)路由(與網(wǎng)絡(luò)前綴路由相對(duì)應(yīng))來(lái)解決。也就是說(shuō),每當(dāng)主機(jī)移動(dòng)時(shí),就向許多臺(tái)路由器傳送特定主機(jī)路由,然而,這種方法在可擴(kuò)展性、可靠性和安全性方面都存在問(wèn)題。另一種方法是在數(shù)據(jù)鏈路層解決這個(gè)問(wèn)題,這要求對(duì)每一種鏈路定義一種解決方法,而且數(shù)據(jù)鏈路層提供的移動(dòng)能力在地理范圍上受到限制。1.2 移動(dòng)ipv4協(xié)議 1.2.1 移動(dòng)ipv4解決的問(wèn)題前面已經(jīng)介紹過(guò),全球互聯(lián)網(wǎng)的可擴(kuò)展性依賴于網(wǎng)路前綴路由,而不是特定主機(jī)路由,這要求接在同一鏈路上的

12、ip地址具有相同的網(wǎng)絡(luò)前綴部分。當(dāng)節(jié)點(diǎn)從一條鏈路切換到另一條鏈路,它的ip地址的網(wǎng)絡(luò)前綴部分不再與新鏈路的網(wǎng)絡(luò)前綴相等。這樣,網(wǎng)絡(luò)前綴路由技術(shù)就沒(méi)有辦法將數(shù)據(jù)包發(fā)送到節(jié)點(diǎn)的新位置上。前面也已提到對(duì)這個(gè)問(wèn)題的解決方法特定主機(jī)路由和改變移動(dòng)節(jié)點(diǎn)的ip地址,這些方法不適于在全互聯(lián)上提供節(jié)點(diǎn)的移動(dòng)功能。特定主機(jī)路由技術(shù)存在可擴(kuò)展性差、可靠性低和安全隱患大等問(wèn)題,而節(jié)點(diǎn)在移動(dòng)時(shí)改變ip地址又使鏈路切換使無(wú)法保持現(xiàn)有通信。移動(dòng)ipv4是一種在全球互聯(lián)網(wǎng)上提供移動(dòng)功能的方案,它具有可擴(kuò)展性較高、可靠性較強(qiáng)和安全性較高等特定,并使節(jié)點(diǎn)在切換鏈路時(shí)仍可保持正在進(jìn)行的通信。值得特別注意的是,移動(dòng)ipv4提供了一種

13、ip路由機(jī)制,使移動(dòng)節(jié)點(diǎn)可以用一個(gè)永久的ip地址連接在任何鏈路上。1.2.2 移動(dòng)ipv4應(yīng)用的范圍移動(dòng)ipv4協(xié)議適合于宏觀移動(dòng)的場(chǎng)合,即ip子網(wǎng)間移動(dòng);而對(duì)微觀移動(dòng)的支持則需要對(duì)移動(dòng)ipv4協(xié)議加以擴(kuò)展。所謂宏觀移動(dòng),是指節(jié)點(diǎn)的移動(dòng)跨越了不同的子網(wǎng),而微觀移動(dòng)是指節(jié)點(diǎn)在小范圍的一個(gè)子網(wǎng)里移動(dòng)。在微觀移動(dòng)的場(chǎng)合,切換必須在很短的時(shí)間里完成。1.2.3 移動(dòng)ipv4的設(shè)計(jì)要求與目標(biāo) 設(shè)計(jì)ipv4時(shí)有以下幾個(gè)要求:(1)移動(dòng)節(jié)點(diǎn)在改變數(shù)據(jù)鏈路層的接入點(diǎn)后應(yīng)仍能與互聯(lián)網(wǎng)上的其它節(jié)點(diǎn)通信;(2)無(wú)論移動(dòng)節(jié)點(diǎn)連接哪個(gè)數(shù)據(jù)鏈路層接入點(diǎn),它應(yīng)仍能用原來(lái)的ip地址進(jìn)行通信;(3)移動(dòng)節(jié)點(diǎn)應(yīng)能與不具備移動(dòng)ip

14、功能的計(jì)算機(jī)通信;(4)移動(dòng)節(jié)點(diǎn)不應(yīng)比互聯(lián)網(wǎng)上的其它節(jié)點(diǎn)面臨新的或更多的安全威脅。設(shè)計(jì)ipv4時(shí)有以下幾個(gè)目標(biāo):移動(dòng)計(jì)算和無(wú)線通信天生就是一對(duì)。筆記本電腦使計(jì)算不僅限于臺(tái)式機(jī),但有線的網(wǎng)絡(luò)連接限制了它們的使用場(chǎng)合。一些無(wú)線網(wǎng)絡(luò)使計(jì)算機(jī)在任何時(shí)間、任何地方都可以進(jìn)行通信,但許多這種網(wǎng)絡(luò)要么太貴要么太慢,或者是又貴又慢。包括移動(dòng)ipv4在內(nèi),路由協(xié)議都要求在網(wǎng)絡(luò)的各種節(jié)點(diǎn)間傳送路由更新信息。為使移動(dòng)ipv4能在無(wú)線鏈路上工作,使這些更新信息的數(shù)量和頻率盡量減少是設(shè)計(jì)目標(biāo)之一。另一個(gè)設(shè)計(jì)目標(biāo)是盡量簡(jiǎn)化移動(dòng)節(jié)點(diǎn)軟件,這可以增加使用移動(dòng)ipv4的節(jié)點(diǎn)數(shù)目,特別是那些內(nèi)存和處理能力受到限制的尋呼機(jī)、智能蜂

15、窩電話、個(gè)人記事本以及筆記本電腦。最后,前面已經(jīng)提到,因特網(wǎng)已經(jīng)認(rèn)識(shí)到了ipv4地址的短缺問(wèn)題,因此,移動(dòng)ipv4的另一個(gè)目標(biāo)是,盡量避免要求移動(dòng)節(jié)點(diǎn)使用多個(gè)地址,或要求為移動(dòng)節(jié)點(diǎn)準(zhǔn)備一個(gè)大的地址空間。1.2.4 移動(dòng)ipv4的基本內(nèi)容1)移動(dòng)ipv4的功能實(shí)體 移動(dòng)ipv4網(wǎng)絡(luò)中包含四種功能實(shí)體:家鄉(xiāng)代理(ha)、外地代理(fa)、移動(dòng)節(jié)點(diǎn)(mn)、對(duì)端節(jié)點(diǎn)(cn)。圖1.3給出了移動(dòng)ipv4的網(wǎng)絡(luò)體系結(jié)構(gòu)。(1)移動(dòng)節(jié)點(diǎn)(mobile node-mn).是指從一個(gè)網(wǎng)絡(luò)或子網(wǎng)鏈路上切換到另一個(gè)網(wǎng)絡(luò)或子網(wǎng)的主機(jī)或者路由器。移動(dòng)節(jié)點(diǎn)可以改變它的網(wǎng)絡(luò)接入點(diǎn),但不需要改變ip地址,并且使用原有的ip

16、地址能夠繼續(xù)與其他節(jié)點(diǎn)通信。(2)家鄉(xiāng)代理(home agent-ha)。是指位于移動(dòng)節(jié)點(diǎn)家鄉(xiāng)鏈路(home link)上的路由器。當(dāng)移動(dòng)節(jié)點(diǎn)離開(kāi)家鄉(xiāng)網(wǎng)絡(luò)時(shí),它負(fù)責(zé)把發(fā)往移動(dòng)節(jié)點(diǎn)的分組通過(guò)隧道轉(zhuǎn)發(fā)給移動(dòng)節(jié)點(diǎn),并且維護(hù)移動(dòng)節(jié)點(diǎn)當(dāng)前位置的信息。(3)外地代理(foreign agent-fa)。是指位于移動(dòng)節(jié)點(diǎn)所訪問(wèn)的網(wǎng)絡(luò)上的路由器,為注冊(cè)的移動(dòng)節(jié)點(diǎn)提供路由器服務(wù)。它接受移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)代理通過(guò)隧道發(fā)來(lái)的報(bào)文,進(jìn)行拆封后發(fā)給移動(dòng)節(jié)點(diǎn);對(duì)于移動(dòng)節(jié)點(diǎn)發(fā)出的報(bào)文,外地代理提供類似默認(rèn)路由器的服務(wù)。(4)cn是與mn進(jìn)行通信的節(jié)點(diǎn),一個(gè)mn可能有多個(gè)cn。圖1.3 移動(dòng)ipv4的網(wǎng)絡(luò)體系結(jié)構(gòu)移動(dòng)節(jié)點(diǎn)在家鄉(xiāng)網(wǎng)

17、路上申請(qǐng)一個(gè)長(zhǎng)期的ip地址。這個(gè)家鄉(xiāng)地址和家鄉(xiāng)網(wǎng)絡(luò)上固定主機(jī)的地址一樣。當(dāng)移動(dòng)節(jié)點(diǎn)離開(kāi)家鄉(xiāng)網(wǎng)絡(luò)以后,移動(dòng)節(jié)點(diǎn)在外地網(wǎng)絡(luò)將獲得一個(gè)反映移動(dòng)節(jié)點(diǎn)當(dāng)前位置的轉(zhuǎn)交地址。移動(dòng)節(jié)點(diǎn)使用家鄉(xiāng)地址作為發(fā)送數(shù)據(jù)包的源地址。2)其他的常用術(shù)語(yǔ) (1)代理通告。是一種特殊的路由通告消息。(2)通信對(duì)端節(jié)點(diǎn)。是指除移動(dòng)節(jié)點(diǎn)通信的對(duì)等實(shí)體,可簡(jiǎn)稱為通信對(duì)端。它可以是移動(dòng)節(jié)點(diǎn)或者位置固定的節(jié)點(diǎn)。(3)外地網(wǎng)絡(luò)。是除移動(dòng)節(jié)點(diǎn)家鄉(xiāng)網(wǎng)絡(luò)外的任何網(wǎng)絡(luò),也就是網(wǎng)絡(luò)前綴與移動(dòng)節(jié)點(diǎn)家鄉(xiāng)地址與網(wǎng)絡(luò)前綴不同的網(wǎng)絡(luò)。(4)移動(dòng)代理。是指家鄉(xiāng)代理或外地代理。(5)家鄉(xiāng)網(wǎng)絡(luò)。是指與移動(dòng)節(jié)點(diǎn)家鄉(xiāng)地址具有相同前綴的網(wǎng)絡(luò)。發(fā)往移動(dòng)節(jié)點(diǎn)家鄉(xiāng)地址的ip分

18、組會(huì)被標(biāo)準(zhǔn)的ip路由機(jī)制轉(zhuǎn)發(fā)到其家鄉(xiāng)網(wǎng)絡(luò)上。(6)鏈路層。是指節(jié)點(diǎn)通信的載體,是網(wǎng)絡(luò)層的下層。(7)節(jié)點(diǎn)。是指主機(jī)或路由器。(8)隧道。當(dāng)一個(gè)數(shù)據(jù)分組被封裝在另一個(gè)數(shù)據(jù)分組的載荷中進(jìn)行傳送時(shí),所經(jīng)過(guò)的路徑。1.2.5 移動(dòng)ip的協(xié)議概述1)移動(dòng)ipv4協(xié)議中的三種功能移動(dòng)ipv4定義了三種功能,包括代理搜索、注冊(cè)和隧道。(1)代理搜索:代理搜索是mn確定它的當(dāng)前位置、檢查它是否移動(dòng)了以及得到一個(gè)外地代理轉(zhuǎn)交地址的方法。如果在mn的外地鏈路上沒(méi)有外地代理,那么mn可以通過(guò)手工配置或通過(guò)dhcp(動(dòng)態(tài)主機(jī)配置協(xié)議)得到一個(gè)配置轉(zhuǎn)交地址。代理搜索通過(guò)ha和外地代理周期的發(fā)送代理廣播消息來(lái)實(shí)現(xiàn),代理廣

19、播消息是icmp(因特網(wǎng)控制報(bào)文協(xié)議)路由器廣播消息的擴(kuò)展,mn也可以發(fā)送代理請(qǐng)求來(lái)要求在它當(dāng)前鏈路上的代理立即發(fā)送一條廣播。(2)注冊(cè):注冊(cè)是mn向它的ha通知它當(dāng)前的轉(zhuǎn)交地址的一種認(rèn)證機(jī)制,也是mn在回到家鄉(xiāng)鏈路上后注銷轉(zhuǎn)交地址的機(jī)制。mn也可以通過(guò)注冊(cè)過(guò)程得到它的ha的地址。注冊(cè)請(qǐng)求消息是由mn發(fā)往它的ha的,途中可能會(huì)經(jīng)過(guò)外地代理。ha通過(guò)向mn回答一條注冊(cè)應(yīng)答消息來(lái)通知mn對(duì)它的請(qǐng)求的處理接受或拒絕。注冊(cè)應(yīng)答也可能經(jīng)過(guò)外地代理。(3)隧道:隧道技術(shù)是移動(dòng)ipv4定義的第三種主要功能,是對(duì)數(shù)據(jù)包進(jìn)行路由的特殊規(guī)程,尤其是對(duì)源或目的地是當(dāng)前連接在外地鏈路上的mn的數(shù)據(jù)包。連接在家鄉(xiāng)鏈路上

20、的mn則和其它固定主機(jī)或路由器一樣進(jìn)行數(shù)據(jù)包的路由。隧道協(xié)議被用來(lái)向那些連接在外地鏈路上的mn傳送數(shù)據(jù)包。要發(fā)往mn家鄉(xiāng)地址的數(shù)據(jù)包先被路由到它的家鄉(xiāng)鏈路上,這是采用網(wǎng)路前綴路由的必然結(jié)果。在家鄉(xiāng)鏈路上,ha截獲數(shù)據(jù)包,然后通過(guò)隧道將數(shù)據(jù)包送到mn的轉(zhuǎn)交地址。在那里,數(shù)據(jù)包被從隧道中取出,然后送往mn。在相反的方向,mn產(chǎn)生的數(shù)據(jù)包用它的家鄉(xiāng)地址直接路由到它們的目的地。如果有外地代理,它將作為mn的默認(rèn)路由器。從對(duì)端節(jié)點(diǎn)發(fā)往mn的數(shù)據(jù)包通常采用未經(jīng)優(yōu)化的路徑,數(shù)據(jù)包先被送往mn的家鄉(xiāng)鏈路,然后再經(jīng)過(guò)隧道送往mn的當(dāng)前位置上。要解決這個(gè)問(wèn)題,必須讓mn將它當(dāng)前的轉(zhuǎn)交地址送給各個(gè)對(duì)端節(jié)點(diǎn)。2)家鄉(xiāng)

21、地址與轉(zhuǎn)交地址 每個(gè)mn有兩個(gè)地址:(1)家鄉(xiāng)地址:這是mn的cn所知道的mn的ip地址。當(dāng)mn移動(dòng)時(shí),它的家鄉(xiāng)地址是不變的。mn家鄉(xiāng)地址的網(wǎng)路前綴與它的家鄉(xiāng)鏈路上的節(jié)點(diǎn)的網(wǎng)絡(luò)前綴是一樣的。(2)轉(zhuǎn)交地址:mn將這個(gè)地址暫時(shí)作為從mn的ha發(fā)出的隧道的出口。當(dāng)mn在internet上移動(dòng)時(shí),轉(zhuǎn)交地址是會(huì)改變的。轉(zhuǎn)交地址有兩類:外地代理轉(zhuǎn)交地址是有一個(gè)端口在mn當(dāng)前鏈路上的那臺(tái)外地代理的地址,而配置轉(zhuǎn)交地址是暫時(shí)分配給mn某一個(gè)端口的地址。mn的轉(zhuǎn)交地址、外地鏈路和外地代理是密切相關(guān)的。3)移動(dòng)ip協(xié)議的總體流程 移動(dòng)ip協(xié)議大致包括以下流程:(1)移動(dòng)代理通過(guò)代理公布消息公布其存在,移動(dòng)節(jié)點(diǎn)可

22、以通過(guò)請(qǐng)求一個(gè)代理公布消息,或者接受到代理公布消息。(2)移動(dòng)節(jié)點(diǎn)通過(guò)代理公布消息后,可以確定是在家鄉(xiāng)網(wǎng)絡(luò)還是外地網(wǎng)路。(3)如果移動(dòng)節(jié)點(diǎn)發(fā)現(xiàn)自己在家鄉(xiāng)網(wǎng)路,它將不運(yùn)行移動(dòng)程序。如果移動(dòng)節(jié)點(diǎn)從外地網(wǎng)絡(luò)回到家鄉(xiāng)網(wǎng)絡(luò),它將取消在家鄉(xiāng)代理上的注冊(cè)。(4)如果移動(dòng)節(jié)點(diǎn)檢測(cè)到它移動(dòng)到了外地網(wǎng)絡(luò)時(shí),從外地網(wǎng)絡(luò)上獲取一個(gè)轉(zhuǎn)交地址。(5)移動(dòng)節(jié)點(diǎn)和家鄉(xiāng)代理通過(guò)交還注冊(cè)請(qǐng)求與注冊(cè)應(yīng)答消息,通過(guò)外地代理在家鄉(xiāng)代理上進(jìn)行注冊(cè)。(6)到達(dá)移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)地址的數(shù)據(jù)包被家鄉(xiāng)代理截獲,通過(guò)隧道傳送到移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址。在隧道的末端,由外地代理或者移動(dòng)節(jié)點(diǎn)自己解封后到達(dá)移動(dòng)節(jié)點(diǎn)上的應(yīng)用。(7)在相反的方向上,有移動(dòng)節(jié)點(diǎn)發(fā)送的

23、數(shù)據(jù)包用標(biāo)準(zhǔn)的ip路由機(jī)制進(jìn)行轉(zhuǎn)發(fā),不需要再通過(guò)家鄉(xiāng)代理。如圖1.4所示為移動(dòng)ipv4的協(xié)議流程。 圖1.4 移動(dòng)ip協(xié)議流程圖1.4中,“1”表示發(fā)往mn的數(shù)據(jù)包經(jīng)過(guò)標(biāo)準(zhǔn)的ip路由機(jī)制被轉(zhuǎn)發(fā)到ha?!?”表示數(shù)據(jù)包被ha截獲,經(jīng)過(guò)解封后,通過(guò)隧道轉(zhuǎn)發(fā)到fa?!?”表示fa對(duì)數(shù)據(jù)包進(jìn)行了解封裝,并傳遞給mn?!?”是mn通過(guò)標(biāo)準(zhǔn)的ip路由機(jī)制把數(shù)據(jù)包轉(zhuǎn)發(fā)給cn。2 ns-2的基本介紹2.1 ns-2概要ns-2是一個(gè)免費(fèi)的網(wǎng)絡(luò)協(xié)議模擬軟件,采用開(kāi)放體系結(jié)構(gòu),有大量的協(xié)議庫(kù)支持,廣泛應(yīng)用于局域網(wǎng)、廣域網(wǎng)和衛(wèi)星網(wǎng)絡(luò)模擬。ns-2是一個(gè)基于兩種語(yǔ)言otcl和c+的,面向?qū)ο蟮哪M器。它用c+語(yǔ)言來(lái)編

24、寫和實(shí)現(xiàn),用otcl作為一個(gè)解釋器,來(lái)執(zhí)行用戶的命令腳本。ns-2實(shí)現(xiàn)了很多的網(wǎng)絡(luò)協(xié)議,這些協(xié)議構(gòu)成了一個(gè)庫(kù),而且由兩個(gè)相互影射的體系構(gòu)成,一個(gè)是c+編譯對(duì)象體系,另一個(gè)是otcl解釋對(duì)象體系。編譯對(duì)象體系使得模擬的執(zhí)行速度很快,而otcl解釋對(duì)象體系使得配置一個(gè)模擬的場(chǎng)景更加直接和簡(jiǎn)單。ns-2的特點(diǎn)如下說(shuō)明:(1)采用面向?qū)ο?、離散事件驅(qū)動(dòng)的模擬方法,易于對(duì)實(shí)際網(wǎng)絡(luò)建模,模擬效率高,系統(tǒng)易于擴(kuò)展。而面向?qū)ο蟮哪M使得網(wǎng)絡(luò)實(shí)體和模擬模型之間的對(duì)應(yīng)顯得更加直接。(2)ns-2使用otcl和c+兩種程序設(shè)計(jì)語(yǔ)言,兼顧模擬效率和系統(tǒng)建模的靈活性。編程者可以使用面向?qū)ο?、解釋?zhí)行的腳本程序設(shè)計(jì)語(yǔ)言o

25、tcl進(jìn)行模擬配置,并通過(guò)編寫c+組件擴(kuò)充系統(tǒng)的模擬能力。(3)具有豐富的協(xié)議支持,支持tcp/ip棧中各層所涉及到的協(xié)議,幾乎在網(wǎng)絡(luò)領(lǐng)域出現(xiàn)的所有協(xié)議,都有不同的ns-2開(kāi)發(fā)者在進(jìn)行開(kāi)發(fā)。(4)支持對(duì)模擬結(jié)果的處理和直觀顯示。利用gawk、gnuplot可以對(duì)模擬結(jié)果進(jìn)行數(shù)據(jù)分析,利用nam軟件,可以將模擬結(jié)果文件“*.nam”和”*.tr”以nam進(jìn)行動(dòng)態(tài)顯示。(5) ns-2可以運(yùn)行在多種操作系統(tǒng)平臺(tái)上。在windows平臺(tái)上,安裝cygwin后再安裝ns-2,也是一個(gè)非常合適的方案。2.2 ns-2的目錄結(jié)構(gòu)如圖2.1所示為ns-2.2x的目錄結(jié)構(gòu):ns-2.2x中包含有幾個(gè)很重要的目

26、錄,其中,tcl目錄包含了需要編譯的tcl代碼,以及ex目錄,其中包含了很多例子腳本。lib目錄中包含了ns-2需要的很多庫(kù)文件,是模擬中經(jīng)常需要閱讀和改寫的代碼。ns-allinone-2.28xgraphns-2.2xnam1.xtclc1-otcl-1.xtk8.xtcl8.xc+codens-tutorialtcllanmplsmobilityytestlibex圖2.1 ns-2.2x的目錄結(jié)構(gòu)2.3 ns-2網(wǎng)絡(luò)模擬方法進(jìn)行ns-2模擬一般分兩種情況:(1) ns-2已有的網(wǎng)絡(luò)組件可以實(shí)現(xiàn)模擬的目標(biāo)。在這種情況下,不需要對(duì)ns-2的組件進(jìn)行任何修改,只要編寫otcl腳本。確定模擬的

27、目標(biāo)利用進(jìn)行ns-2協(xié)議模擬的流程圖如圖2.2所示:分析是否可以利用現(xiàn)有模塊完成模擬 修改ns-2組件,可能需要修改otcl和c+代碼否 是 是編寫 otcl模擬腳本運(yùn)行模擬腳本對(duì)模擬結(jié)果進(jìn)行分析 需要修改腳本 需要修改組件是否要修改腳本或ns-2組件不需要改組件或腳本模擬結(jié)束圖2.2 ns-2協(xié)議模擬的流程圖(2) 網(wǎng)絡(luò)中的組件不能實(shí)現(xiàn)模擬的目的,這時(shí)候就需要建立新的組件,或者修改現(xiàn)有的組件。即首先對(duì)ns-2進(jìn)行擴(kuò)展。這時(shí)候需要添加新的c+和otcl類,然后再編寫otcl腳本進(jìn)行模擬。2.4 nam概要nam是一個(gè)基于tcl/tk的動(dòng)畫程序,用來(lái)觀察網(wǎng)絡(luò)模擬的軌跡或者真實(shí)環(huán)境中生成的包的軌跡

28、。nam支持拓?fù)涞膶哟危С职?jí)的動(dòng)畫和多種多樣的數(shù)據(jù)分析工具。nam可以從namtrace文件中讀取動(dòng)畫事件的命令,事件命令保存在文件中,在演示時(shí)進(jìn)行讀取和播放。要使用nam對(duì)模擬過(guò)程進(jìn)行演示,首先要產(chǎn)生一個(gè)namtrace文件,它是在模擬過(guò)程中由ns寫入的。在ns模擬過(guò)程中,可以產(chǎn)生拓?fù)渑渲?、調(diào)整、包的跟蹤等信息,任何應(yīng)用都可以產(chǎn)生namtrace文件。nam在讀取namtrace文件后創(chuàng)建一個(gè)拓?fù)?,彈出窗口,進(jìn)行調(diào)整,然后停止在時(shí)間0。nam中可以顯示各種各樣的網(wǎng)絡(luò)對(duì)象,包括節(jié)點(diǎn)、鏈路(有線網(wǎng)絡(luò))、數(shù)據(jù)流、無(wú)線網(wǎng)絡(luò)中的丟包等。2.5 trace概要trace的功能是詳細(xì)記錄模擬的過(guò)程,t

29、race可以根據(jù)用戶的需要記錄模擬過(guò)程中的任何一個(gè)細(xì)節(jié)。當(dāng)一次模擬結(jié)束之后,所留下的唯一記錄就是trace文件,所有的對(duì)模擬的分析都是基于trace文件的。為了支持trace記錄,每個(gè)分組都包含一個(gè)特殊的common分組頭,在這個(gè)分組頭中包含了分組的序列號(hào)、分組的類型值、分組的大小和端口標(biāo)識(shí)等。trace功能的實(shí)現(xiàn)是在c+中,同時(shí)ns在tcl中提供了一系列實(shí)例過(guò)程作為c+中trace對(duì)象的接口。 無(wú)線模擬的trace文件格式:r 160.09 6 rtr-5 tcp 1492 a2 4 6 800-65536:0 16777984:0 31 16777984 1 0 2 0該條trace中的意

30、思為:一個(gè)id為6的節(jié)點(diǎn)收到一個(gè)tcp分組,這個(gè)分組的uid為5、長(zhǎng)度為1492。接受節(jié)點(diǎn)的mac地址為6,發(fā)送節(jié)點(diǎn)的mac地址為4,ip頭的trace信息包括源地址(65536:0)和目標(biāo)地址(16777984:0),分組的ttl值為31。2.6 awk概要 awk是一種程序語(yǔ)言。它具有一般程序語(yǔ)言常見(jiàn)的功能。對(duì)于資料的處理具有很強(qiáng)的功能,可以使用很短的代碼輕易地完成對(duì)文本檔案做修改、分析、提取和比較等處理。因此,awk語(yǔ)言具有某些特點(diǎn),如:使用直譯器(interpreter)不需先行編譯;變量無(wú)型別之分(typeless),可使用文字當(dāng)數(shù)組的注標(biāo)(associative array)等特色

31、。因此,使用awk撰寫程序比起使用其它語(yǔ)言更簡(jiǎn)潔便利且節(jié)省時(shí)間。awk還具有一些內(nèi)建功能,使得awk擅于處理具有資料列(record),字段(field)型態(tài)的資料;此外,awk內(nèi)建有pipe的功能,可將處理中的資料傳送給外部的 shell命令加以處理,再將shell命令處理后的資料傳回awk程序,這個(gè)特點(diǎn)也使得awk程序很容易使用系統(tǒng)資源。2.7 gnuplot概要gnuplot 是一個(gè)命令導(dǎo)向的交談式繪圖程序(command-driven interactive function plotting program)。可以運(yùn)行在windwos、dos和linux操作系統(tǒng)中。本文中使用的gnu

32、plot是在cygwin和windows結(jié)合下安裝的。使用者輸入的每一項(xiàng)命令,可以逐步設(shè)定或修改繪圖環(huán)境。它以圖形表達(dá)數(shù)據(jù)或函數(shù),使我們可以利用圖形做更進(jìn)一步的分析。3 基于mobile ip有線無(wú)線混合網(wǎng)絡(luò)模擬3.1 有線無(wú)線混合模擬的層次化地址設(shè)置 ns-2中地址有三個(gè)層次,即域(domain)、簇(cluster)和節(jié)點(diǎn)(node)。需要?jiǎng)?chuàng)建三種節(jié)點(diǎn),網(wǎng)絡(luò)模擬中,需要?jiǎng)?chuàng)建有線節(jié)點(diǎn)、基站節(jié)點(diǎn)和無(wú)線節(jié)點(diǎn)。要注意,基站節(jié)點(diǎn)是一個(gè)特殊的節(jié)點(diǎn),它既是有線節(jié)點(diǎn),也是無(wú)線節(jié)點(diǎn)。所有的無(wú)線節(jié)點(diǎn)必須設(shè)置一個(gè)基站,以便與該無(wú)線域外的其他有線節(jié)點(diǎn)進(jìn)行通信。 如圖3.1所示網(wǎng)絡(luò)拓?fù)洌簝蓚€(gè)無(wú)線局域網(wǎng)通過(guò)一個(gè)路由器

33、連接在一起?;竞鸵苿?dòng)節(jié)點(diǎn)之間采用ieee 802.11空中接口進(jìn)行通信,基站和路由器之間使用有線鏈路進(jìn)行通信。圖3.1 網(wǎng)絡(luò)拓?fù)鋱D按照上面的拓?fù)?,需要設(shè)置三個(gè)域,即兩個(gè)無(wú)線域和一個(gè)有線域,如圖3.2所示 圖3.2 域的劃分方案每個(gè)域中的簇的個(gè)數(shù)為1,各簇中的節(jié)點(diǎn)個(gè)數(shù)為4、1、4。因此,可以用寫如下的腳本來(lái)配置層次化地址。設(shè)置節(jié)點(diǎn)采用層次化地址$ns_ node-config -addresstype hierarchical設(shè)置域的數(shù)目為3addrparams set domain_num_ 3設(shè)置三個(gè)域中簇的個(gè)數(shù)分別為1、1、1lappend cluster_num 1 1 1 addrp

34、arams set cluster_num_ $cluster_num設(shè)置每個(gè)域中簇的節(jié)點(diǎn)的個(gè)數(shù)lappend eilastlevel 4 1 4addrparams set nodes_num_ $eilastlevel 3.2 創(chuàng)建移動(dòng)節(jié)點(diǎn) mobilenode是node類的派生類,它對(duì)node類做了一些改進(jìn),這樣它可以用來(lái)創(chuàng)建移動(dòng)、無(wú)線的模擬環(huán)境。mobilenode是一個(gè)由c+和otcl共同實(shí)現(xiàn)的對(duì)象,它的功能(包括節(jié)點(diǎn)移動(dòng)、周期性的位置更新、維護(hù)拓?fù)溥吔绲龋┦窃赾+中實(shí)現(xiàn)的,而設(shè)定mobilenode的各個(gè)網(wǎng)絡(luò)構(gòu)件(例如mac、channel、ll等)則是在otcl中實(shí)現(xiàn)的。具體創(chuàng)建

35、如下:set node_(0) $ns_ node $node_(0) random-motion 0set node_(1) $ns_ node $node_(1) random-motion 03.3 移動(dòng)節(jié)點(diǎn)的運(yùn)動(dòng)移動(dòng)節(jié)點(diǎn)可以在一個(gè)三維的拓?fù)渲羞\(yùn)動(dòng),然而實(shí)際上第三維(z軸)并沒(méi)有使用。這樣移動(dòng)節(jié)點(diǎn)就總是在一個(gè)z=0的二維平面中運(yùn)動(dòng)。其創(chuàng)建如下:$node set x_$node set y_$node set z_$ns at time $node setdest 在time時(shí)刻,節(jié)點(diǎn)從起始位置(x1,y1)向目標(biāo)位置(x2,y2)運(yùn)動(dòng),移動(dòng)速度為speed。然而,在創(chuàng)建移動(dòng)節(jié)點(diǎn)之前要定

36、義移動(dòng)節(jié)點(diǎn)的移動(dòng)范圍,通常使用下面的方法定義平面拓?fù)涞拈L(zhǎng)和寬:set topo new topography$topo load_flatgrid x y3.4 配置節(jié)點(diǎn)3.4.1 配置無(wú)線節(jié)點(diǎn) 配置節(jié)點(diǎn)就是在創(chuàng)建節(jié)點(diǎn)之前定義它的各種屬性,函數(shù)simulator:node config用來(lái)配置節(jié)點(diǎn)的屬性。節(jié)點(diǎn)的屬性包括節(jié)點(diǎn)的地址類型、移動(dòng)節(jié)點(diǎn)的各個(gè)網(wǎng)絡(luò)構(gòu)件的類型、移動(dòng)節(jié)點(diǎn)的路由協(xié)議、是否打開(kāi)各層的trace功能等等。配置如下:#以下為網(wǎng)絡(luò)配置的選項(xiàng)set val(prop) propagation/tworaygroundset val(netif) phy/wirelessphyset va

37、l(mac) mac/802_11set val(ifq) queue/droptail/priqueueset val(ll) llset val(ant) antenna/omniantennaset val(ifqlen) 50set val(rp) dsdv#無(wú)線節(jié)點(diǎn)配置$ns_ node-config -adhocrouting $val(rp) #設(shè)定所使用的路由協(xié)議 -lltype $val(ll) 設(shè)定mn的邏輯鏈路層 -mactype $val(mac) 設(shè)定mn的mac層類型 -ifqtype $val(ifq) 設(shè)定mn的隊(duì)列類型 -ifqlen $val(ifqlen)

38、 設(shè)定mn的隊(duì)列長(zhǎng)度 -anttype $val(ant) 設(shè)定mn的天線類型 -proptype $val(prop) 設(shè)定mn的無(wú)線信號(hào)傳輸模型 -phytype $val(netif) 設(shè)定mn的物理層類型 -channel type channel/wirelesschannel設(shè)定mn的無(wú)線信道類型 topoinstance $topo 設(shè)定mn的拓?fù)鋵?duì)象 -agenttrace on 是否打開(kāi)應(yīng)用層的trace -routertrace off #是否打開(kāi)路由的trace -mactrace on #是否打開(kāi)mac的trace -movementtrace off 是否打開(kāi)節(jié)點(diǎn)位置

39、和移動(dòng)信息的trace3.4.2 配置基站節(jié)點(diǎn)基站的其他特性與移動(dòng)節(jié)點(diǎn)相同,唯一不同的是基站支持有線路由(wiredrouting)。通過(guò)這種方式,可以在需要是改變節(jié)點(diǎn)的配置。在用node config命令修改節(jié)點(diǎn)屬性后,創(chuàng)建的所有節(jié)點(diǎn)具有相同的屬性,也就是說(shuō)屬性值會(huì)保持不變,直到用戶node config命令改變它們。因此在創(chuàng)建了支持aodv的移動(dòng)節(jié)點(diǎn)和基站后,如果想創(chuàng)建所有屬性值均為缺省值的簡(jiǎn)單節(jié)點(diǎn),則需要使用reset選項(xiàng)來(lái)重新置所有屬性為缺省值:$ns_ node-config reset。3.5 基于mobile ip 有線無(wú)線混合網(wǎng)絡(luò)模擬實(shí)例3.3.1 純無(wú)線網(wǎng)絡(luò)模擬1)純無(wú)線網(wǎng)絡(luò)

40、模擬腳本程序(見(jiàn)附錄1)2)運(yùn)行結(jié)果分析(1) 利用gawk命令,從simple.tr中提取出所有的tcp包,包括發(fā)送的包和接受的包,并將相關(guān)信息存儲(chǔ)在tcp.tr中。(gawk命令見(jiàn)附錄2)相關(guān)信息存在send.tr中; 利用awk命令,提取節(jié)點(diǎn)0發(fā)出的包的序列號(hào)和時(shí)間,并將提取節(jié)點(diǎn)2接受到的包的序列號(hào)和時(shí)間,將相關(guān)信息存在receive.tr中。 (提取發(fā)包與接包的程序見(jiàn)附錄2) nam示意圖如圖3.3。 圖3.3 nam演示 利用gnuplot命令,將send.tr 和receive.tr分別繪制成曲線。如3.4圖所示。圖3.4 利用gnuplot繪制的曲線 從圖中可以看出兩節(jié)點(diǎn)進(jìn)行正常

41、通信的時(shí)間大概是在95s117s之間。這也正說(shuō)明了兩個(gè)移動(dòng)節(jié)點(diǎn)能進(jìn)行通信是在一定的通信半徑范圍之內(nèi),超過(guò)了一定范圍,兩者將失去聯(lián)系。由于tcp的慢啟動(dòng)性,通信的效率不高,直到95s左右才開(kāi)始進(jìn)行相對(duì)流暢的ftp通信,然而隨著兩者之間的距離的增大,兩者又失去了通信。(2)封包遺失率:number of packet sent:17789 lost:82the rate of loss packet is: 0.4610(計(jì)算封包遺失率的程序見(jiàn)附錄2)3.3.2 無(wú)線有線網(wǎng)絡(luò)混合模擬1)無(wú)線有線網(wǎng)絡(luò)混合模擬腳本程序(見(jiàn)附錄1)2)運(yùn)行結(jié)果分析(1) nam顯示如圖3.5所示: 圖3.5 nam示意

42、圖 利用gawk命令,從wiredcumwirelee.tr中提取出所有mn收到的tcp包和發(fā)出的ack包的序列號(hào)和時(shí)間,并將相關(guān)信息分別存儲(chǔ)在tcp.tr和ack.tr中。 利用gnuplot繪制通信過(guò)程示意圖如圖3.6所示。圖3.6 gnuplot繪制通信的過(guò)程示意圖橫軸為模擬時(shí)間,縱軸為序列號(hào)。 從圖中可以看出,通信在100s前、120s前后和157s前后完全失敗。這是由于mn的移動(dòng)所導(dǎo)致的。同時(shí),tcp的慢啟動(dòng)特性也降低了通信的效率。(2) 封包遺失率: number of packet sent:43414 lost:75the rate of loss packet is: 0.1

43、728 4 總結(jié) 在本次畢業(yè)設(shè)計(jì)中,讓我學(xué)到了很多東西。由于選擇的課題(基于mobile ip 有線無(wú)線混合網(wǎng)絡(luò)模擬)比較前沿,在平時(shí)學(xué)習(xí)與生活中,都比較少見(jiàn)。因此,給我?guī)?lái)了很多困難,但在指導(dǎo)老師以及同組成員的幫組下,以及通過(guò)自己不斷的努力,終于順利地完成了任務(wù)。然而由于自身水平的限制,未能夠做到對(duì)課題做更深入的研究,比如:ns-2中的類的理解、模擬運(yùn)行結(jié)果分析的不夠全面、移動(dòng)ipv4的擴(kuò)展技術(shù)等。下面是我論文的主要內(nèi)容:本文先對(duì)ipv4協(xié)議的特點(diǎn)作了分析,并指出了ipv4在移動(dòng)性方面的不足。在這種情況下,引出了移動(dòng)ipv4協(xié)議,并詳細(xì)闡述了移動(dòng)ipv4所能解決的問(wèn)題、應(yīng)用的范圍、設(shè)計(jì)的目標(biāo)

44、和它的基本內(nèi)容,以及移動(dòng)ipv4的協(xié)議的功能和總體流程。接著,對(duì)ns-2作了基本介紹,主要包括ns-2的目錄結(jié)構(gòu)、ns-2的網(wǎng)絡(luò)模擬方法以及四個(gè)重要的輔助性工具(nam、gnuplot、gawk、trace)。最后,引入了本文的主體,基于mobile ip有線無(wú)線混合網(wǎng)絡(luò)模擬,在本章中對(duì)有線無(wú)線混合模擬的層次化地址設(shè)置、創(chuàng)建移動(dòng)節(jié)點(diǎn)、移動(dòng)節(jié)點(diǎn)的運(yùn)動(dòng)以及基站節(jié)點(diǎn)和無(wú)線節(jié)點(diǎn)配置的方法作了介紹。同時(shí),引入了兩個(gè)實(shí)例,通過(guò)動(dòng)畫顯示了模擬中移動(dòng)節(jié)點(diǎn)的運(yùn)動(dòng)過(guò)程,并對(duì)實(shí)例的運(yùn)行結(jié)果作了詳細(xì)分析,包括模擬中移動(dòng)節(jié)點(diǎn)通信的過(guò)程以及通信中的丟包率,在其中包括對(duì)運(yùn)行結(jié)果分析的方法和步驟。附錄1純無(wú)線網(wǎng)絡(luò)模擬腳本程序

45、:# 模擬選項(xiàng)set val(chan) channel/wirelesschannel ;# channel typeset val(prop) propagation/tworayground ;# radio-propagation modelset val(netif) phy/wirelessphy ;# network interface typeset val(mac) mac/802_11 ;# mac typeset val(ifq) queue/droptail/priqueue ;# interface queue typeset val(ll) ll ;# link l

46、ayer typeset val(ant) antenna/omniantenna ;# antenna modelset val(ifqlen) 50 ;# max packet in ifqset val(nn) 2 ;# number of mobilenodesset val(rp) dsdv ;# routing protocol#建立一個(gè)simulator實(shí)例set ns_new simulator#設(shè)置traceset tracefd open simple.tr w$ns_ trace-all $tracefd set nf open simple.nam w$ns_ namt

47、race-all-wireless $nf 500 500#建立topography對(duì)象set topo new topography$topo load_flatgrid 500 500#創(chuàng)建godcreate-god $val(nn)#無(wú)線節(jié)點(diǎn)配置 $ns_ node-config -adhocrouting $val(rp) -lltype $val(ll) -mactype $val(mac) -ifqtype $val(ifq) -ifqlen $val(ifqlen) -anttype $val(ant) -proptype $val(prop) -phytype $val(net

48、if) -channeltype $val(chan) -topoinstance $topo -agenttrace on -routertrace off -mactrace on -movementtrace off#新建節(jié)點(diǎn) set node_(0) $ns_ node $node_(0) random-motion 0set node_(1) $ns_ node $node_(1) random-motion 0#節(jié)點(diǎn)標(biāo)簽與初始位置設(shè)定$node_(0) label mn1$node_(0) set x_ 5.0$node_(0) set y_ 2.0$node_(0) set z_

49、 0.0$node_(1) label mn2$node_(1) set x_ 390.0$node_(1) set y_ 385.0$node_(1) set z_ 0.0#節(jié)點(diǎn)移動(dòng)性$ns_ at 50.0 $node_(1) setdest 25.0 20.0 15.0$ns_ at 10.0 $node_(0) setdest 20.0 18.0 1.0$ns_ at 100.0 $node_(1) setdest 490.0 480.0 15.0 #建立ftp業(yè)務(wù),基于tcp來(lái)承載set tcp new agent/tcp$tcp set class_ 2set sink new agent/tcpsink$ns_ attach-agent $node_(0) $tcp$ns_ attach-agent $node_(1) $sink$ns_ connect $tcp $sinkset ftp new application/ftp$ftp attach-agent $tcp$ns_ at 5.0 $ftp start #事件安排f

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論