【導(dǎo)讀】首先說(shuō)明一下,這篇文檔的主要目的是提取網(wǎng)絡(luò)發(fā)送和接收數(shù)據(jù)的函數(shù)接口。們自己的驅(qū)動(dòng)網(wǎng)卡的接口函數(shù)替代程序中的接口??梢蕴^(guò)第一、二、三章,直接閱讀第四章,使用我們的接口代替第四章的接口就行了。傳統(tǒng)的,或者說(shuō)是典型的TCP/IP協(xié)議族的設(shè)計(jì)都是按照分層的思想來(lái)設(shè)計(jì)的。樣設(shè)計(jì)有個(gè)好處,就是每層相對(duì)于其他層獨(dú)立,代碼方便理解。缺點(diǎn)就是,每層之間進(jìn)行數(shù)。據(jù)交互的時(shí)候必須要進(jìn)行復(fù)制,而數(shù)據(jù)的復(fù)制是很耗時(shí)的,這就降低了實(shí)時(shí)性。LWIP各層之間沒(méi)有明顯的界限,各層之間都??梢栽L問(wèn)到共享在內(nèi)存中的數(shù)據(jù)。產(chǎn)生的性能損失。而這些模塊就共同組成了LWIP整體。下面一章將分析LWIP. 的源碼,結(jié)合源碼介紹這些模塊。TCP協(xié)議在LWIP協(xié)議棧中占得比例最大,有將近一半的代碼是。專門(mén)用來(lái)實(shí)現(xiàn)TCP協(xié)議的。并且無(wú)線音頻項(xiàng)目采用的也是TCP. 應(yīng)用層主要是使用LWIP協(xié)議棧開(kāi)發(fā)相應(yīng)的網(wǎng)絡(luò)通信程序。三種接口分別為RAWAPI,NetconnAPI和BSDSocketAP。應(yīng)用程序與LWIP協(xié)議棧處在同一個(gè)進(jìn)程中。