新聞中心

EEPW首頁(yè) > 網(wǎng)絡(luò)與存儲(chǔ) > 設(shè)計(jì)應(yīng)用 > 基于嵌入式TCP/IP軟件體系結(jié)構(gòu)的優(yōu)化設(shè)計(jì)與實(shí)現(xiàn)(06-100)

基于嵌入式TCP/IP軟件體系結(jié)構(gòu)的優(yōu)化設(shè)計(jì)與實(shí)現(xiàn)(06-100)

——
作者:北京郵電大學(xué) 電信工程學(xué)院 廖日坤 紀(jì)越峰 時(shí)間:2008-04-03 來(lái)源:電子產(chǎn)品世界 收藏

  輸入時(shí),Timer()函數(shù)調(diào)用每個(gè)接口的Input函數(shù)。IP層判斷IP版本、IP校驗(yàn)和、判斷是否應(yīng)該轉(zhuǎn)發(fā)數(shù)據(jù)包,然后根據(jù)IP頭部的protocol字段將包傳給相應(yīng)的高層處理。TCP層,需要判斷TCP校驗(yàn)和,然后在現(xiàn)有的套接字中查找,判斷是否有套接字可以接收這個(gè)數(shù)據(jù)包,判斷TCP序號(hào)是否為希望的,然后更新這個(gè)連接的狀態(tài)(包括釋放被應(yīng)答的數(shù)據(jù)包和TCP狀態(tài)機(jī)的轉(zhuǎn)化等),調(diào)用該套接字的回調(diào)函數(shù)recv。

本文引用地址:http://m.butianyuan.cn/article/81179.htm

  圖2程序主流程是一個(gè)大循環(huán),在循環(huán)中處理發(fā)送數(shù)據(jù)包等應(yīng)用層協(xié)議同時(shí)查詢變量bTimeOut,在定時(shí)中斷中將bTimerOut設(shè)置為真,應(yīng)用層在程序流程中反復(fù)查詢bTimerOut是否為真,真則調(diào)用Timer(),然后置bTimerOut為假。

  嵌入式設(shè)計(jì)優(yōu)化

  因?yàn)?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/網(wǎng)絡(luò)">網(wǎng)絡(luò)中數(shù)據(jù)非常多,如果把所有的數(shù)據(jù)都讀到內(nèi)存中再判斷是否應(yīng)該丟棄幀顯然效率不高。所以邊讀取數(shù)據(jù)邊判斷而沒(méi)有一開(kāi)始就把整個(gè)幀全部讀到內(nèi)存中,同時(shí)在程序里定義幀中各個(gè)部分的相對(duì)地址,可以方便的對(duì)幀的各個(gè)字節(jié)尋址。這樣的設(shè)計(jì)是基于提高訪問(wèn)速度考慮的。

tcp/ip相關(guān)文章:tcp/ip是什么




關(guān)鍵詞: 網(wǎng)絡(luò) TCP/IP Internet

評(píng)論


相關(guān)推薦

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

關(guān)閉