新聞中心

        EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > IPv4/IPv6雙協(xié)議棧實現(xiàn)方案解析

        IPv4/IPv6雙協(xié)議棧實現(xiàn)方案解析

        作者: 時間:2012-05-09 來源:網(wǎng)絡(luò) 收藏

        3.3 6模塊

        6[2]模塊主要包括兩部分的功能,一是負(fù)責(zé)從網(wǎng)絡(luò)接口層接收6數(shù)據(jù)包,對數(shù)據(jù)包進行一定的處理后發(fā)送給上層處理模塊(TCP或ICMPv6)。二是從上層接收數(shù)據(jù),進行報文的選路,封裝IPv6報頭后將數(shù)據(jù)報發(fā)送給網(wǎng)絡(luò)接口層。

        3.3.1 ICMPv6[3]的簡化分析

        ⑴ICMPv6信息報文

        嵌入式設(shè)備只需作為Ping的接收端,所以不需要發(fā)送回顯請求報文和處理回顯應(yīng)答報文。為了讓客戶端可以測試網(wǎng)絡(luò)狀態(tài)以及測試使用,必須支持接收請求報文和發(fā)送相應(yīng)的應(yīng)答報文。

        ⑵ICMPv6錯誤報文

        由于嵌入式設(shè)備不會作為路由轉(zhuǎn)發(fā)設(shè)備,所以需要實現(xiàn)發(fā)送端口不可達(dá)報文,同時要支持超時報文通告對端超時錯誤。在BSD中,IP層沒有發(fā)送參數(shù)問題報文, ICMPv6無需支持處理參數(shù)問題報文。

        3.3.2鄰居發(fā)現(xiàn)協(xié)議(NDP)的簡化分析

        NDP[4]是IPv6協(xié)議的一個基本組成部分,它用于地址解析、鄰居發(fā)現(xiàn)以及路由器及網(wǎng)絡(luò)參數(shù)發(fā)現(xiàn)。本不支持路由功能,所以無需實現(xiàn)發(fā)送路由器通告報文,但必須接受路由器通告報文,以完成路由發(fā)現(xiàn)功能。同時支持鄰居通告和鄰居請求報文的接收和發(fā)送,以實現(xiàn)地址解析和重復(fù)探測。

        3.4 TCP模塊

        在TCP之上實現(xiàn)有限的WEB服務(wù),可以對該協(xié)議的實現(xiàn)機制作相應(yīng)的簡化及優(yōu)化。

        3.4.1 TCP模塊的擴展

        TCP對IPv4和IPv6報文的處理過程沒有任何的不同,但是由于IPv4和IPv6地址結(jié)構(gòu)不同,需要對使用IP地址的部分進行擴展。

        ⑴數(shù)據(jù)結(jié)構(gòu)擴展

        PCB是用來記錄每個TCP連接狀態(tài)的,包括本地IP地址和遠(yuǎn)程IP地址,擴展時使用union結(jié)構(gòu)添加IPv6地址,同時添加標(biāo)識位區(qū)別連接。

        ⑵操作擴展

        在TCP處理過程中包括輸入時對IP地址和端口號的匹配,輸出時校驗和的計算和路由的查找。由于對IPv4和IPv6報文調(diào)用相同的處理函數(shù),需要在實現(xiàn)時在這幾個函數(shù)的處理過程中加入對相應(yīng)PCB中標(biāo)識位的判斷。

        3.4.2 簡化TCP狀態(tài)機

        TCP的面向連接和可靠性傳輸?shù)忍匦詻Q定了每一個標(biāo)準(zhǔn)的TCP狀態(tài)機龐大而且復(fù)雜,對于嵌入式應(yīng)用,可以根據(jù)需要進行簡化。

        建立連接分為主動打開和被動打開,本設(shè)計作為監(jiān)聽狀態(tài)的服務(wù)器端,僅實現(xiàn)被動打開。在設(shè)計中去掉了CLOSED狀態(tài),讓它一開始就處于LISTEN狀態(tài),等待對方發(fā)起連接。

        斷開連接分為主動斷開和被動斷開,從安全性的角度考慮,本設(shè)計僅實現(xiàn)主動斷開連接。當(dāng)服務(wù)器發(fā)送完數(shù)據(jù)時,向客戶機發(fā)送關(guān)閉連接請求。

        通過以上分析,根據(jù)特定的應(yīng)用不失一般性的裁減掉復(fù)雜和冗余的機制,除去標(biāo)準(zhǔn)狀態(tài)機中的客戶端部分,簡化連接的建立和關(guān)閉過程,就得到如圖2所示的簡化的TCP狀態(tài)機模型。


        圖2 簡化TCP有限狀態(tài)機



        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 岑溪市| 定远县| 星座| 威宁| 龙山县| 金华市| 江安县| 梨树县| 通许县| 光山县| 达孜县| 织金县| 静宁县| 行唐县| 共和县| 玉门市| 普格县| 罗江县| 南靖县| 邳州市| 北京市| 阆中市| 东山县| 墨玉县| 宜州市| 交城县| 和田县| 宿州市| 达日县| 和龙市| 乡城县| 淮安市| 桃源县| 富锦市| 永顺县| 米易县| 连平县| 绿春县| 威远县| 西昌市| 白沙|