嵌入式WEB服務(wù)器中TCP/IP協(xié)議棧的設計與實(shí)現
隨著(zhù)因特網(wǎng)的迅速發(fā)展,Web應用越來(lái)越廣泛。由于Web技術(shù)的開(kāi)放性和獨立平臺特性,大大降低了軟件系統和通信系統的設計、維護工作量,節省了人員培訓費用,提高了現場(chǎng)測試和控制設備的管理水平。而嵌入式Web服務(wù)器將Web服務(wù)器引入到現場(chǎng)測試和控制設備中,在相應的硬件平臺和軟件系統的支持下,使傳統的測試和控制設備轉變?yōu)榫邆淞艘訲CP/IP為底層通信協(xié)議,Web技術(shù)為核心的基于互聯(lián)網(wǎng)的網(wǎng)絡(luò )測試和控制設備,有著(zhù)一般Web服務(wù)器所不具有優(yōu)勢。本文就嵌入式Web服務(wù)器在通信協(xié)議的選擇方面做了具體的研究。
1 嵌入式Web服務(wù)器的結構分析
嵌入式Web服務(wù)器運行的目標系統大多是各類(lèi)專(zhuān)用設備,內存資源和存儲器資源非常有限,它通常作為一種監控、管理手段去控制和配置各種電子設備,實(shí)現設備的智能化和信息化。嵌入式Web服務(wù)器的應用系統框架如下圖所示:
圖1 嵌入式Web服務(wù)器的應用系統框架
圖1虛線(xiàn)框中的是嵌入式Web服務(wù)器的框架結構,用戶(hù)接口庫是嵌入式Web服務(wù)器和其他設備的控制接口。內嵌于設備的Web服務(wù)器可以向任何接入它所在網(wǎng)絡(luò )的合法用戶(hù)提供統一的基于瀏覽器方式的操作和控制界面,瀏覽器成了設備的前端控制板。而HTTP引擎是Web服務(wù)器的核心,Web服務(wù)器同Web 瀏覽器之間的通信是通過(guò)HTTP協(xié)議進(jìn)行的,這一通用的、無(wú)狀態(tài)的、面向對象的協(xié)議是Web瀏覽器和Web服務(wù)器之間的應用層協(xié)議,是建構在TCP/IP 協(xié)議基礎之上的。因此在嵌入式Web服務(wù)器中,TCP/IP協(xié)議棧的實(shí)現是整個(gè)系統的基石。
2 嵌入式Web服務(wù)器的TCP/IP協(xié)議棧設計
嵌入式系統最先利用輕型工業(yè)網(wǎng)絡(luò )進(jìn)行互連,比如CAN,PROFIBUS,MODBUS等組織的工業(yè)網(wǎng)絡(luò )能夠進(jìn)行各工業(yè)設備間的互訪(fǎng)和信息交流,但是這些工業(yè)網(wǎng)絡(luò )協(xié)議之間標準不統一,通信半徑也比較短,推廣的前景不樂(lè )觀(guān)。TCP/IP協(xié)議作為一種成熟的網(wǎng)際互聯(lián)手段和事實(shí)標準,毫無(wú)疑問(wèn)成為了嵌入式系統連入互聯(lián)網(wǎng)的首選協(xié)議。但是在嵌入式系統中,硬件資源較少,通常缺乏足夠的處理器和存儲器資源以支持整個(gè)TCP/IP協(xié)議族,因此嵌入式的TCP /IP技術(shù)與常規的TCP/IP實(shí)現有很大的不同。
2.1 嵌入式TCP/IP協(xié)議棧概述
嵌入式系統中實(shí)現的協(xié)議要根據系統自身的特點(diǎn)及功能來(lái)設計自己的協(xié)議族,因此,在嵌入式Web服務(wù)器中并非TCP/IP協(xié)議族中所有的協(xié)議都要實(shí)現,必須針對不同的網(wǎng)絡(luò )應用對協(xié)議棧進(jìn)行刪減,保留其基本功能,以滿(mǎn)足網(wǎng)絡(luò )應用的需要。
考慮到嵌入式Web服務(wù)器的硬件處理速度慢并且存儲容量相對較小的條件限制,在TCP/IP協(xié)議棧中主要能夠實(shí)現ARP,IP,ICMP,TCP協(xié)議即可。具體分析如下:以太網(wǎng)數據的傳輸是采用MAC地址來(lái)識別的,而ARP協(xié)議提供IP地址和數據鏈路層使用的MAC地址之間的轉換功能,為了保證系統在以太網(wǎng)的通信,首先要實(shí)現ARP協(xié)議;由于嵌入式Web服務(wù)器要能在Internet上通信,在網(wǎng)絡(luò )層一定要實(shí)現IP協(xié)議,還要實(shí)現能報告數據傳送差錯等情況的ICMP協(xié)議;同時(shí),Web服務(wù)器同Web瀏覽器之間的通信是通過(guò)HTTP協(xié)議進(jìn)行的,在傳輸層采用TCP協(xié)議,能保證可靠的數據傳輸,進(jìn)而實(shí)現其基礎之上的HTTP協(xié)議。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)tcp/ip相關(guān)文章:tcp/ip是什么
評論