几种开源的TCP/IP协议栈分析
1:BSD TCP/IP協(xié)議棧,BSD棧歷史上是其他商業(yè)棧的起點,大多數(shù)專業(yè)TCP/IP棧(VxWorks內嵌的TCP/IP棧)是BSD棧派生的。這是因為 BSD棧在BSD許可協(xié)議下提供了這些專業(yè)棧的雛形,BSD許用證允許BSD棧以修改或未修改的形式結合這些專業(yè)棧的代碼而無須向創(chuàng)建者付版稅。同時, BSD也是許多TCP/IP協(xié)議中的創(chuàng)新(如廣域網中餓擁塞控制和避免)的開始點。
ftp://ftp.FreeBSD.org/pub/FreeBSD-stable/src/sys.netinet
2:uC/IP是由Guy Lancaster編寫的一套基于uC/OS且開放源碼的TCP/IP協(xié)議棧,亦可移植到其它操作系統(tǒng),是一套完全免費的、可供研究的TCP/IP協(xié)議棧,uC/IP大部分源碼是從公開源碼BSD發(fā)布站點和KA9Q(一個基于DOS單任務環(huán)境運行的TCP/IP協(xié)議棧)移植過來。uC/IP具有如下一些特點:帶身份驗證和報頭壓縮支持的PPP協(xié)議,優(yōu)化的單一請求/回復交互過程,支持IP/TCP/UDP協(xié)議,可實現(xiàn)的網絡功能較為強大,并可裁減。 UCIP協(xié)議棧被設計為一個帶最小化用戶接口及可應用串行鏈路網絡模塊。根據采用CPU、編譯器和系統(tǒng)所需實現(xiàn)協(xié)議的多少,協(xié)議棧需要的代碼容量空間在 30-60KB之間。
http://ucip.sourceforge.net
3、 LwIP是瑞士計算機科學院(Swedish Institute of Computer Science)的Adam Dunkels等開發(fā)的一套用于嵌入式系統(tǒng)的開放源代碼TCP/IP協(xié)議棧。LwIP的含義是Light Weight(輕型)IP協(xié)議,相對于uip。LwIP可以移植到操作系統(tǒng)上,也可以在無操作系統(tǒng)的情況下獨立運行。LwIP TCP/IP實現(xiàn)的重點是在保持TCP協(xié)議主要功能的基礎上減少對RAM的占用,一般它只需要幾十K的RAM和40K左右的ROM就可以運行,這使 LwIP協(xié)議棧適合在低端嵌入式系統(tǒng)中使用。LwIP的特性如下:支持多網絡接口下的IP轉發(fā),支持ICMP協(xié)議,包括實驗性擴展的的UDP(用戶數(shù)據報協(xié)議),包括阻塞控制,RTT估算和快速恢復和快速轉發(fā)的TCP(傳輸控制協(xié)議),提供專門的內部回調接口(Raw API)用于提高應用程序性能,并提供了可選擇的Berkeley接口API。
http://sics.se/~sdam/lwip/
4、uIP是專門為8位和16位控制器設計的一個非常小的TCP/IP棧。完全用C編寫,因此可移植到各種不同的結構和操作系統(tǒng)上,一個編譯過的??梢栽趲譑B ROM或幾百字節(jié)RAM中運行。uIP中還包括一個HTTP服務器作為服務內容。許可:BSD許用證http://dunkels.com/adam/uip/
5、TinyTcp 棧是TCP/IP的一個非常小和簡單的實現(xiàn),它包括一個FTP客戶。TinyTcp是為了燒入ROM設計的并且現(xiàn)在開始對大端結構似乎是有用的(初始目標是68000芯片)。TinyTcp也包括一個簡單的以太網驅動器用于3COM多總線卡http://ftp.ecs.soton.ac.uk/pub/elks/utils/tiny-tcp.txt
總結
以上是生活随笔為你收集整理的几种开源的TCP/IP协议栈分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 西瓜书学习笔记(一)
- 下一篇: 小米手机6官方刷机包ROM合集