移植IPV6至嵌入式系統(tǒng)的研究
發(fā)布時間:2021-07-08 12:54
隨著24小時在線網(wǎng)絡(luò)變得越來越流行,不光是普通的個人電腦要和因特網(wǎng)相連,各種嵌入式設(shè)備,比如傳感器,家用設(shè)備、音視頻設(shè)備等都要和因特網(wǎng)相連。為了把無數(shù)的設(shè)備接入因特網(wǎng),我們需要大量的IP地址,為此我們引入了IPv6—新一代網(wǎng)絡(luò)技術(shù)。嵌入式設(shè)備作為后PC時代和后網(wǎng)絡(luò)時代的新秀,其專用于網(wǎng)絡(luò)模塊的硬件資源很有限,要在這些設(shè)備上實現(xiàn)IPv6規(guī)范所有的功能是很困難的,并且設(shè)備五花八門,功能各異,因此為它們量身定制IPv6成為很自然的要求。 本論文在分析了IPv6的基本特點后,在基于三星公司的ARM7 S3C4510B型網(wǎng)絡(luò)處理器和風(fēng)河公司的嵌入式實時操作系統(tǒng)VxWorks之上移植了開放源代碼的Lwip協(xié)議,并作了相應(yīng)的測試。 論文首先介紹了IPv6協(xié)議,包括IPv4的缺點、IPv4升級到IPv6的進(jìn)步性,IPv6報頭和擴(kuò)展報頭以及地址體系結(jié)構(gòu)、ICMPv6協(xié)議,鄰居發(fā)現(xiàn)協(xié)議和嵌入式設(shè)備上實現(xiàn)網(wǎng)絡(luò)協(xié)議的草案;接著介紹了基于S3C4510B網(wǎng)絡(luò)處理器的硬件平臺以及使用中的關(guān)鍵技術(shù)即特殊功能寄存器的配置和避免假寫Flash的方法;然后介紹了VxWorks的開發(fā)環(huán)境Tornado,VxWo...
【文章來源】:西南交通大學(xué)四川省 211工程院校 教育部直屬院校
【文章頁數(shù)】:82 頁
【學(xué)位級別】:碩士
【部分圖文】:
Vxwbkrs的歡迎界面
圖4一1SENS網(wǎng)絡(luò)驅(qū)動程序的結(jié)構(gòu)4·2.1SENS驅(qū)動程序如圖4一1所示,SENS網(wǎng)絡(luò)驅(qū)動程序由一個協(xié)議層驅(qū)動,一個MUX層和一個END驅(qū)動程序組成。SENS插入一個MUX層,把網(wǎng)絡(luò)驅(qū)動程序的硬件接口與網(wǎng)絡(luò)協(xié)議接口分開;MUX層的API,支持獨立的網(wǎng)絡(luò)協(xié)議接口同步訪問獨立的NED接口;SNES允許在驅(qū)動程序中加入新的特性:組播、輪詢式操作、零拷貝緩沖等。從MUX的角度來看,網(wǎng)絡(luò)驅(qū)動程序被分成一個協(xié)議組件和一個硬件(END)組件。這樣,可以有多個網(wǎng)絡(luò)驅(qū)動程序和多個協(xié)議層協(xié)議,通過一個統(tǒng)一的MUXAPI接口來通信。圖4一2中,協(xié)議a和協(xié)議b都在利用MUX層分別與各自的數(shù)據(jù)鏈路層通信。MUX只要一個
冊的函數(shù)來實現(xiàn)。這種方法使得任何與MUX接口相兼容的網(wǎng)絡(luò)服務(wù)可以使用與MUX兼容的網(wǎng)絡(luò)驅(qū)動程序。協(xié)議層和協(xié)議驅(qū)動層、網(wǎng)絡(luò)驅(qū)動程序與MtJX層的調(diào)用關(guān)系如圖4一3所示。中間的MUX層提供的API函數(shù)可以供協(xié)議層或網(wǎng)絡(luò)驅(qū)動層調(diào)用。箭頭表示調(diào)用關(guān)系,比如muxUnbindO指向了stackshutdo認(rèn)nRtn(),表示muxUnbind()要調(diào)用stackshutdo場叭RtnO。協(xié)議驅(qū)動層必須提供4個函數(shù)為[241:stackshutdownRtn()一用于卸載驅(qū)動程序之前,每個綁定到該設(shè)備的網(wǎng)絡(luò)服務(wù)對該服務(wù)注冊的stackshutdow川趕n()函數(shù)進(jìn)行調(diào)用都會收到一條關(guān)閉報文。stackRcvRtn()一muxReceiv(e)使用該回調(diào)函數(shù)將驅(qū)動程序接收到的數(shù)據(jù)報轉(zhuǎn)發(fā)往協(xié)議層。協(xié)議層要通過satcRkvcRtn()返回一定的值給muXReeeiveO,以通知驅(qū)動程序是否要自己去釋放剛收到的數(shù)據(jù)報占用的緩沖。sactEkorrRru(t)一當(dāng)被MUK調(diào)用時,驅(qū)動程序遇到的出錯信息就被傳送到協(xié)議層。由協(xié)議層對接收到的出錯信息采取必要的措施。sactkRestartRniO一MUX調(diào)用該函數(shù)重新啟動先前己經(jīng)停止的網(wǎng)絡(luò)服務(wù)。
【參考文獻(xiàn)】:
碩士論文
[1]IPv6在小設(shè)備中的實現(xiàn)[D]. 沈捷.華東師范大學(xué) 2004
[2]VxWorks下IPv6協(xié)議的實現(xiàn)[D]. 黃河.北京工業(yè)大學(xué) 2003
本文編號:3271610
【文章來源】:西南交通大學(xué)四川省 211工程院校 教育部直屬院校
【文章頁數(shù)】:82 頁
【學(xué)位級別】:碩士
【部分圖文】:
Vxwbkrs的歡迎界面
圖4一1SENS網(wǎng)絡(luò)驅(qū)動程序的結(jié)構(gòu)4·2.1SENS驅(qū)動程序如圖4一1所示,SENS網(wǎng)絡(luò)驅(qū)動程序由一個協(xié)議層驅(qū)動,一個MUX層和一個END驅(qū)動程序組成。SENS插入一個MUX層,把網(wǎng)絡(luò)驅(qū)動程序的硬件接口與網(wǎng)絡(luò)協(xié)議接口分開;MUX層的API,支持獨立的網(wǎng)絡(luò)協(xié)議接口同步訪問獨立的NED接口;SNES允許在驅(qū)動程序中加入新的特性:組播、輪詢式操作、零拷貝緩沖等。從MUX的角度來看,網(wǎng)絡(luò)驅(qū)動程序被分成一個協(xié)議組件和一個硬件(END)組件。這樣,可以有多個網(wǎng)絡(luò)驅(qū)動程序和多個協(xié)議層協(xié)議,通過一個統(tǒng)一的MUXAPI接口來通信。圖4一2中,協(xié)議a和協(xié)議b都在利用MUX層分別與各自的數(shù)據(jù)鏈路層通信。MUX只要一個
冊的函數(shù)來實現(xiàn)。這種方法使得任何與MUX接口相兼容的網(wǎng)絡(luò)服務(wù)可以使用與MUX兼容的網(wǎng)絡(luò)驅(qū)動程序。協(xié)議層和協(xié)議驅(qū)動層、網(wǎng)絡(luò)驅(qū)動程序與MtJX層的調(diào)用關(guān)系如圖4一3所示。中間的MUX層提供的API函數(shù)可以供協(xié)議層或網(wǎng)絡(luò)驅(qū)動層調(diào)用。箭頭表示調(diào)用關(guān)系,比如muxUnbindO指向了stackshutdo認(rèn)nRtn(),表示muxUnbind()要調(diào)用stackshutdo場叭RtnO。協(xié)議驅(qū)動層必須提供4個函數(shù)為[241:stackshutdownRtn()一用于卸載驅(qū)動程序之前,每個綁定到該設(shè)備的網(wǎng)絡(luò)服務(wù)對該服務(wù)注冊的stackshutdow川趕n()函數(shù)進(jìn)行調(diào)用都會收到一條關(guān)閉報文。stackRcvRtn()一muxReceiv(e)使用該回調(diào)函數(shù)將驅(qū)動程序接收到的數(shù)據(jù)報轉(zhuǎn)發(fā)往協(xié)議層。協(xié)議層要通過satcRkvcRtn()返回一定的值給muXReeeiveO,以通知驅(qū)動程序是否要自己去釋放剛收到的數(shù)據(jù)報占用的緩沖。sactEkorrRru(t)一當(dāng)被MUK調(diào)用時,驅(qū)動程序遇到的出錯信息就被傳送到協(xié)議層。由協(xié)議層對接收到的出錯信息采取必要的措施。sactkRestartRniO一MUX調(diào)用該函數(shù)重新啟動先前己經(jīng)停止的網(wǎng)絡(luò)服務(wù)。
【參考文獻(xiàn)】:
碩士論文
[1]IPv6在小設(shè)備中的實現(xiàn)[D]. 沈捷.華東師范大學(xué) 2004
[2]VxWorks下IPv6協(xié)議的實現(xiàn)[D]. 黃河.北京工業(yè)大學(xué) 2003
本文編號:3271610
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/3271610.html
最近更新
教材專著