• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      計算機(jī)網(wǎng)絡(luò)協(xié)議棧實(shí)驗平臺的設(shè)計與實(shí)現(xiàn)——基于MSP430

      2015-05-30 12:05:34魯麗廖劍鋒
      計算機(jī)教育 2015年10期

      魯麗 廖劍鋒

      摘要:針對計算機(jī)網(wǎng)絡(luò)課程教學(xué)中協(xié)議棧實(shí)驗部分的教學(xué)實(shí)際,分析協(xié)議棧學(xué)習(xí)對于計算機(jī)網(wǎng)絡(luò)課程的重要性,探討目前的實(shí)驗方法,提出基于msp430的計算機(jī)網(wǎng)絡(luò)協(xié)議棧實(shí)驗平臺的設(shè)計及實(shí)現(xiàn)方案,指出通過此實(shí)驗平臺,學(xué)生可進(jìn)行協(xié)議棧重演,真切感受到抽象協(xié)議的具體應(yīng)用方法,提高學(xué)生的協(xié)議分析能力和開發(fā)能力。

      關(guān)鍵詞:網(wǎng)絡(luò)實(shí)驗;協(xié)議棧重演;msp430實(shí)驗平臺

      O、引言

      計算機(jī)網(wǎng)絡(luò)原理課程是計算機(jī)專業(yè)主干課程之一,在專業(yè)教學(xué)體系中占有非常重要的地位。計算機(jī)網(wǎng)絡(luò)原理課程中,最重要的是對于協(xié)議棧的理解和掌握。目前,計算機(jī)網(wǎng)絡(luò)原理課程均設(shè)置有實(shí)驗環(huán)節(jié),實(shí)驗內(nèi)容主要包括4方面:①通過數(shù)據(jù)嗅探軟件-sniffer/winshark/Ethereal等分析數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層和傳輸層協(xié)議;②利用網(wǎng)絡(luò)仿真器如NS2分析網(wǎng)絡(luò)協(xié)議及其性能;③協(xié)議開發(fā),即利用套接字編程進(jìn)行應(yīng)用層協(xié)議開發(fā);④網(wǎng)絡(luò)設(shè)備配置實(shí)驗,包括交換機(jī)、路由器、服務(wù)器等的配置,這些實(shí)驗都涉及協(xié)議。通過前兩類分析網(wǎng)絡(luò)協(xié)議的實(shí)驗,學(xué)生可以觀察協(xié)議的內(nèi)部原理、數(shù)據(jù)包的格式等基本理論知識,但是此類實(shí)驗屬于驗證性實(shí)驗,會令學(xué)生對于協(xié)議的具體應(yīng)用仍然模糊,無法達(dá)到培養(yǎng)和鍛煉學(xué)生設(shè)計新協(xié)議和獨(dú)立設(shè)計開發(fā)協(xié)議能力的目標(biāo)。通過套接字編程實(shí)驗,學(xué)生可以開發(fā)新的應(yīng)用層協(xié)議,但是仍然缺乏對底層協(xié)議的認(rèn)知和運(yùn)用。網(wǎng)絡(luò)設(shè)備配置實(shí)驗也有類似的問題。

      目前,計算機(jī)網(wǎng)絡(luò)原理實(shí)驗課程存在的主要問題是實(shí)驗的片段性和隔離性導(dǎo)致學(xué)生對知識點(diǎn)掌握得不完整、不系統(tǒng),不能形成有機(jī)的整體,不能將針對協(xié)議的學(xué)習(xí)成果應(yīng)用于具體的協(xié)議棧設(shè)計,缺少對協(xié)議棧開發(fā)方法的整體理解。

      基于上述問題,為了更好地培養(yǎng)學(xué)生綜合運(yùn)用理論知識分析問題和解決問題的實(shí)踐能力,筆者結(jié)合華中科技大學(xué)文華學(xué)院計算機(jī)網(wǎng)絡(luò)實(shí)驗教學(xué)的現(xiàn)狀,構(gòu)建基于MSP430的汁算機(jī)網(wǎng)絡(luò)協(xié)議棧實(shí)驗平臺,設(shè)計一套實(shí)驗方案,期望學(xué)生通過在實(shí)驗平臺上的操作,加深對協(xié)議棧的理解,提高分析協(xié)議棧的能力和實(shí)踐動手能力。

      1、實(shí)驗平臺設(shè)計概述

      嵌入式實(shí)驗平臺的硬件部分主要由MSP430和CS8900網(wǎng)絡(luò)接口芯片組成,如圖1所示。平臺采用的微控制器是德州儀器公司(TI)的MSP430F149。這是功耗極低的Flash型16位RISC指令集單片機(jī),采用Crystal公司的CS8900作為太網(wǎng)接口芯片。CS8900功耗低,控制簡單,可以直接和微控制器相連,通過微控制器的I/O口對CS8900進(jìn)行控制。為擴(kuò)展路由協(xié)議驗證模塊,實(shí)驗平臺的MSP430F149與兩片CS8900連接。

      2、實(shí)驗內(nèi)容設(shè)計

      2.1實(shí)驗1:Ethereal數(shù)據(jù)包嗅探

      對協(xié)議棧的學(xué)習(xí)和開發(fā)都離不開數(shù)據(jù)包嗅探軟件,Ethereal是目前比較流行的協(xié)議分析軟件。計算機(jī)網(wǎng)絡(luò)原理課程的第一個實(shí)驗是要求學(xué)生掌握Ethereal軟件的用法,通過包嗅探軟件熟悉和掌握數(shù)據(jù)包的格式,為后續(xù)的復(fù)雜實(shí)驗打好基礎(chǔ)。這部分實(shí)驗可以在PC機(jī)上完成。

      實(shí)驗內(nèi)容包括:①掌握Ethereal軟件的使用方法;②掌握通過數(shù)據(jù)包嗅探進(jìn)行協(xié)議分析的方法;③截獲典型數(shù)據(jù)包進(jìn)行協(xié)議分析;④掌握一些經(jīng)典協(xié)議(PPP協(xié)議、ARP協(xié)議、ICMP協(xié)議、Telnet協(xié)議、TCP協(xié)議和Smtp協(xié)議)并閱讀相應(yīng)的RFC文檔。

      2.2實(shí)驗2:網(wǎng)絡(luò)層lP協(xié)議、ARP協(xié)議、ICMP協(xié)議的實(shí)現(xiàn)

      在網(wǎng)絡(luò)層實(shí)現(xiàn)lP分組封裝,ARP協(xié)議的實(shí)現(xiàn)是數(shù)據(jù)最終能夠到達(dá)目的地的保證;設(shè)計完成部分ICMP協(xié)議;通過在接入段運(yùn)行Ping命令驗證實(shí)驗結(jié)果的正確性。

      2.3實(shí)驗3:傳輸層TCP協(xié)議的實(shí)現(xiàn)

      根據(jù)TCP有限狀態(tài)機(jī)實(shí)現(xiàn)TCP協(xié)議可不考慮復(fù)雜的通信環(huán)境,忽略發(fā)送窗口、接受窗口、擁塞控制部分的實(shí)現(xiàn)。

      2.4Http和Smtp協(xié)議的實(shí)現(xiàn)

      用HTML寫一個簡單的Web頁面,嵌入到實(shí)驗平臺,在平臺上實(shí)現(xiàn)Http協(xié)議,以便局域網(wǎng)內(nèi)其他終端可以通過Http協(xié)議訪問實(shí)驗平臺在實(shí)驗平臺上實(shí)現(xiàn)Smtp協(xié)議,使實(shí)驗平臺在啟;動時或在某個事件驅(qū)動下完成向某個郵箱一動發(fā)送郵件的過程。

      3、實(shí)驗平臺擴(kuò)展

      3.1簡單IPv6協(xié)議

      隨著嵌入式技術(shù)研究的深入發(fā)展,許多小型智能電子設(shè)備如智能家電、智能儀表等也接入到互聯(lián)網(wǎng)中,導(dǎo)致IPv4地址空間明顯不足,而IPv6協(xié)議解決了IPv4公共地址空間耗盡的問題IPv6協(xié)議使得移動電話、PDA、汽車、儀表甚至個人都可以獲得多個公共IP地址,并且IPv6具有無狀態(tài)地址自動配置、內(nèi)置安全性強(qiáng)、服務(wù)質(zhì)量高等諸多優(yōu)點(diǎn),是嵌入式設(shè)備進(jìn)行網(wǎng)絡(luò)互聯(lián)的較好選擇。實(shí)驗平臺可以實(shí)現(xiàn)簡單的IPv6協(xié)議棧,幫助學(xué)生理解IPv6協(xié)議與lPv4協(xié)議的異同。

      1) IPv6協(xié)議棧的實(shí)現(xiàn)

      IPv6協(xié)議棧的實(shí)現(xiàn)主要包括IPv6模塊和ICMPv6模塊,協(xié)議棧的結(jié)構(gòu)如圖2所示。

      由于實(shí)驗平臺資源有限,目前不考慮IPv6協(xié)議與IPv4協(xié)議的兼容問題,不支持IPv6擴(kuò)展報頭,不支持分片;測試運(yùn)行在本地局域網(wǎng),不涉及路由器;忽略MTU探測決定路徑上的最大傳輸單元;將報文大小設(shè)定為小于以太網(wǎng)最大傳輸單元,避免報文分片。

      ICMPv6模塊具有IPv4的ICMP常用功能,可回送請求報文和回送應(yīng)答報文,可在應(yīng)用層進(jìn)行ping6操作,測試網(wǎng)絡(luò)的連通性和IPv6地址解析的正確性。IPv6中的鄰節(jié)點(diǎn)發(fā)現(xiàn)過程是用一系列的報文和步驟確定鄰節(jié)點(diǎn)之間關(guān)系的過程。鄰節(jié)點(diǎn)發(fā)現(xiàn)取代了IPv4中使用的ARP報文、ICMP路由器發(fā)現(xiàn)和ICMP重定向報文。鄰節(jié)點(diǎn)發(fā)現(xiàn)報文使用ICMPv6的報文結(jié)構(gòu)。

      實(shí)驗平臺的鄰節(jié)點(diǎn)發(fā)現(xiàn)模塊支持地址解析,省略了重復(fù)性探測和路由功能。程序設(shè)計在保證實(shí)現(xiàn)IPv6協(xié)議?;竟δ艿幕A(chǔ)上盡量減少代碼復(fù)雜度,只考慮運(yùn)行時的一般情況,忽略特殊情況需要的額外開銷。實(shí)現(xiàn)該協(xié)議棧的重要內(nèi)容之一是正確處理數(shù)據(jù)流程,實(shí)驗平臺數(shù)據(jù)處理流程如下。

      當(dāng)網(wǎng)絡(luò)上有終端(主機(jī))要訪問嵌入式設(shè)備時,主機(jī)在適當(dāng)?shù)慕涌谏习l(fā)送多播幀,即IPv6主機(jī)發(fā)送多播鄰節(jié)點(diǎn),請求報文發(fā)現(xiàn)鏈路上IPv6節(jié)點(diǎn)的鏈路層地址。鄰節(jié)點(diǎn)請求報文的多播地址是從日標(biāo)IP地址得到的。鄰節(jié)點(diǎn)請求報文格式如圖3所示。

      這時必須正確設(shè)置網(wǎng)絡(luò)接口芯片CS8900地址濾波寄存器的值,以保證主機(jī)發(fā)送的多播鄰節(jié)點(diǎn)請求報文可以通過地址濾波器;實(shí)驗平臺收到鄰節(jié)點(diǎn)請求報文后,根據(jù)鄰節(jié)點(diǎn)請求報文的信息,向報文發(fā)送方——主機(jī)發(fā)送一個單播鄰節(jié)點(diǎn)公告報文,地址解析完畢;然后,實(shí)驗平臺根據(jù)TCP狀態(tài)機(jī)的狀態(tài)完成相應(yīng)處理過程,接收數(shù)據(jù)時,從網(wǎng)絡(luò)接口芯片緩沖區(qū)讀取數(shù)據(jù),依次提取:①以太網(wǎng)幀頭信息——用于保存發(fā)送方MAC地址;②IPv6頭信息——提取IPv6報文頭中下一個頭部的值。如果不是ICMPv6和TCP中的任何一個,就發(fā)送ICMPv6目的不可達(dá)報文;如果是ICMPv6,就進(jìn)一步判斷;如果是REQUES報文,就發(fā)送REPLY報文;如果是鄰居請求報文,則發(fā)送鄰居宣告報文。因為實(shí)驗平臺的TCP/IP連接是由主機(jī)發(fā)起的,所以嵌入式設(shè)備不會接收到鄰居宣告報文。

      實(shí)驗平臺采用TCP方式發(fā)送數(shù)據(jù)。嵌入式設(shè)備不主動向主機(jī)發(fā)送數(shù)據(jù),而是根據(jù)主機(jī)的請求傳送數(shù)據(jù),根據(jù)主機(jī)發(fā)送的請求數(shù)據(jù)包得到同的地址相關(guān)信息,將發(fā)送的數(shù)據(jù)包送入發(fā)送緩沖區(qū),添加以太網(wǎng)幀頭部、IPv6數(shù)據(jù)報報頭、TCP報文段首部等信息,更改相關(guān)標(biāo)志位,將數(shù)據(jù)送人鏈路層。網(wǎng)絡(luò)接口芯片負(fù)責(zé)將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)。

      2) IPv6協(xié)議棧的測試。

      由于HTML不支持使用文字形式的IPv6地址格式作為URL(通用地址),因此需要一臺運(yùn)行Windows 2000 Server的計算機(jī)作為DNS服務(wù)器,在DNS服務(wù)器中添加實(shí)驗平臺IPv6地址的AAAA記錄;同時需要正確配置測試局域網(wǎng)中主機(jī)的掩碼,網(wǎng)關(guān)以及DNS服務(wù)器。

      測試在本地局域網(wǎng)進(jìn)行,除上述DNS服務(wù)器外,其他主機(jī)運(yùn)行Windows XP或Windows2000操作系統(tǒng)。每臺計算機(jī)都配置IPv4地址、安裝IPv6協(xié)議棧并配置IPv6的鏈路本地地址。將嵌入式系統(tǒng)連入該網(wǎng)絡(luò),啟動系統(tǒng),系統(tǒng)的IPv6地址通過程序?qū)懭肫銻AM中,我們就可以通過該局域網(wǎng)內(nèi)的一個網(wǎng)絡(luò)終端訪問嵌入式系統(tǒng)的主頁。例如,在一臺計算機(jī)輸入“ping6嵌入式設(shè)備IPv6地址”,如果網(wǎng)絡(luò)沒有問題就可以返回信息。在Http的URL中輸入嵌入式?jīng)]備對應(yīng)的域名,就可以看到其主頁,這說明上述實(shí)驗環(huán)境可以使IPv6協(xié)議棧得到較好的測試。

      3.2RIP和OSPF路由協(xié)議的實(shí)現(xiàn)

      為了在實(shí)驗平臺上驗證RIP和OSPF路由協(xié)議,我們在實(shí)驗平臺上設(shè)計2個網(wǎng)絡(luò)接口。由于實(shí)驗平臺資源有限且路由協(xié)議實(shí)現(xiàn)復(fù)雜,我們僅搭建圖4所示的規(guī)模較小的網(wǎng)絡(luò)拓?fù)?。?shí)驗平臺不設(shè)置接收緩沖區(qū),不采用隨機(jī)早期檢測,僅實(shí)現(xiàn)RIP路由協(xié)議和OSPF路由協(xié)議。

      4、結(jié)語

      計算機(jī)網(wǎng)絡(luò)協(xié)議分析與開發(fā)實(shí)驗一直是計算機(jī)網(wǎng)絡(luò)實(shí)驗教學(xué)中的難點(diǎn),如何讓學(xué)生通過實(shí)驗掌握協(xié)議分析與開發(fā)的精髓,具備協(xié)議分析與開發(fā)實(shí)踐能力,是此類實(shí)驗應(yīng)重點(diǎn)關(guān)注的內(nèi)容。基于msp430的計算機(jī)網(wǎng)絡(luò)協(xié)議棧實(shí)驗平臺可以開展專業(yè)相關(guān)的各種實(shí)驗,還可擴(kuò)展進(jìn)行IPv6協(xié)議和RIP、OSPF路由協(xié)議實(shí)驗。學(xué)生通過實(shí)驗可以重演TCP/IP協(xié)議棧,也可獨(dú)立沒計并開發(fā)類TCP/IP的網(wǎng)絡(luò)協(xié)議,對學(xué)生協(xié)議分析、設(shè)計和開發(fā)能力的提高有很大幫助。

      黔西| 阳泉市| 洛隆县| 汉寿县| 来凤县| 湖口县| 怀仁县| 昆明市| 桐庐县| 区。| 镇江市| 礼泉县| 遂宁市| 开化县| 乌恰县| 宁陵县| 耿马| 临颍县| 吐鲁番市| 姜堰市| 晴隆县| 准格尔旗| 松滋市| 崇信县| 江西省| 邓州市| 深州市| 建宁县| 北海市| 华宁县| 裕民县| 海淀区| 张北县| 文安县| 滕州市| 沈丘县| 宁明县| 云林县| 云和县| 富宁县| 四川省|