資料介紹
引言
遠程信息監測系統是通過網絡遠程收集目標信息并監控目標對象運行狀態的嵌入式系統。遠程信息監測系統中嵌入式Web服務器的使用,可以使用戶通過瀏覽器訪問遠端的嵌入式設備,這樣能夠大大提高系統的易用性和可維護性。目前,在遠程監測系統中普遍采用的實時數據采集方法是在網頁上嵌入Applet或ActiveX控件,但是這種方法不僅會威脅到客戶端的安全,還增加了服務器的負擔,從而限制了Web服務器的實現和應用。為了滿足資源有限的嵌入式系統的需要,本文采用微型TCP/IP協議棧uIP,在協議棧之上設計實現了基于CGI的動態Web服務器,并將AJAX技術應用到客戶端與服務器的實時數據交互中。AJAX技術的實現是將JavaScript程序內嵌在網頁中,不需要在瀏覽器上另外安裝插件,降低了系統成本和Web服務器實現的難度。
1 uIP協議棧分析
uIP是專為8/16位嵌入式微處理器設計的輕量級TCP/IP協議棧。uIP本身的源代碼和占用的內存資源都非常少,其源代碼只有幾KB,RAM僅占幾百字節。uIP采用BSD授權,遵循RFC標準,完全由C語言編寫,具有良好的可移植性,可免費用于非商業和商業用途。uIP協議棧有多個版本,本設計采用的是uIP 1.0。
為了減少對系統資源的要求,uIP的內部實現主要采用以下設計措施:
①不支持動態內存分配機制,使用單一的全局緩沖區uip_buf收發網絡數據;
②著重實現了與完整TCP/IP通信所必需的ARP(地址解析協議)、IP(網際互聯協議)、TCP(傳輸控制協議),而UDP(用戶數據包協議)、ICM P(網絡控制報文協議)只作為可選模塊;
③各層協議緊密耦合,應用協議也參與了部分協議棧功能的實現。
uIP的體系結構如圖1所示。由圖1可以看出,uIP協議棧處于網絡通信的中間層,用戶需要為uIP提供底層網卡驅動程序和定時器驅動程序。
而uIP為底層系統提供了4個接口函數:uip_init()完成協議棧的初始化;uip_input()用于處理從以太網接收到的IP數據包;uip_perio dic()用于協議內核周期性地對各TCP連接的輪詢;uip_udp_periodic()則用于UDP服務下對各UDP連接的輪詢。其中,uip_input()和uip_per iodic()在協議的內部采用同一個函數void uip_process(u8_t flag)實現,區別在于調用的參數不同。uIP主程序清晰地展示了各接口函數的調用方法,其主程序流程圖如圖2所示。
uIP的各處理程序會調用UIP_APPCALL()進行應用程序處理,用戶需要將UIP_APPCALL宏定義為實際的應用函數名,應用程序就可以掛接到uIP中,而uip_flags是協議棧提供給應用層查詢的狀態變量。
遠程信息監測系統是通過網絡遠程收集目標信息并監控目標對象運行狀態的嵌入式系統。遠程信息監測系統中嵌入式Web服務器的使用,可以使用戶通過瀏覽器訪問遠端的嵌入式設備,這樣能夠大大提高系統的易用性和可維護性。目前,在遠程監測系統中普遍采用的實時數據采集方法是在網頁上嵌入Applet或ActiveX控件,但是這種方法不僅會威脅到客戶端的安全,還增加了服務器的負擔,從而限制了Web服務器的實現和應用。為了滿足資源有限的嵌入式系統的需要,本文采用微型TCP/IP協議棧uIP,在協議棧之上設計實現了基于CGI的動態Web服務器,并將AJAX技術應用到客戶端與服務器的實時數據交互中。AJAX技術的實現是將JavaScript程序內嵌在網頁中,不需要在瀏覽器上另外安裝插件,降低了系統成本和Web服務器實現的難度。
1 uIP協議棧分析
uIP是專為8/16位嵌入式微處理器設計的輕量級TCP/IP協議棧。uIP本身的源代碼和占用的內存資源都非常少,其源代碼只有幾KB,RAM僅占幾百字節。uIP采用BSD授權,遵循RFC標準,完全由C語言編寫,具有良好的可移植性,可免費用于非商業和商業用途。uIP協議棧有多個版本,本設計采用的是uIP 1.0。
為了減少對系統資源的要求,uIP的內部實現主要采用以下設計措施:
①不支持動態內存分配機制,使用單一的全局緩沖區uip_buf收發網絡數據;
②著重實現了與完整TCP/IP通信所必需的ARP(地址解析協議)、IP(網際互聯協議)、TCP(傳輸控制協議),而UDP(用戶數據包協議)、ICM P(網絡控制報文協議)只作為可選模塊;
③各層協議緊密耦合,應用協議也參與了部分協議棧功能的實現。
uIP的體系結構如圖1所示。由圖1可以看出,uIP協議棧處于網絡通信的中間層,用戶需要為uIP提供底層網卡驅動程序和定時器驅動程序。
而uIP為底層系統提供了4個接口函數:uip_init()完成協議棧的初始化;uip_input()用于處理從以太網接收到的IP數據包;uip_perio dic()用于協議內核周期性地對各TCP連接的輪詢;uip_udp_periodic()則用于UDP服務下對各UDP連接的輪詢。其中,uip_input()和uip_per iodic()在協議的內部采用同一個函數void uip_process(u8_t flag)實現,區別在于調用的參數不同。uIP主程序清晰地展示了各接口函數的調用方法,其主程序流程圖如圖2所示。
uIP的各處理程序會調用UIP_APPCALL()進行應用程序處理,用戶需要將UIP_APPCALL宏定義為實際的應用函數名,應用程序就可以掛接到uIP中,而uip_flags是協議棧提供給應用層查詢的狀態變量。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- Web服務器開源分享
- 嵌入式web服務器系統,嵌入式Web服務器的設計與實現
- 嵌入式web服務器系統設計,基于-ARM簡單嵌入式WEB服務器系統設計.doc
- 基于高斯混合模型的Web代理服務器緩存 17次下載
- 基于ARM的嵌入式Web服務器設計方案 20次下載
- 面向Web服務器的隨機種子調度算法 11次下載
- 基于ARM的嵌入式Web服務器的設計方案 27次下載
- 反向代理:Web服務器的經紀人 8次下載
- Web服務器的網絡負載均衡
- 使用IIS為Web內容配置Web服務器權限
- 基于Linux的WEB服務器的設計與實現
- 基于Java移動代理的Web服務器負載監控系統
- 用SVG技術實現動態圖形輸出的嵌入式Web服務
- 嵌入式Web 服務器的分析與研究
- 基于ARM的嵌入式uClinux系統設計與Web服務器應用的
- 使用NS1串口服務器HTTP模式上傳服務器數據 97次閱讀
- 顯示Web服務器中的內存使用情況 556次閱讀
- 如何關閉服務器VNC服務 3034次閱讀
- 在服務器BMC Web門戶無法查看加密的SNMP共同體 722次閱讀
- 基于ESP32的簡易web服務器設計 3294次閱讀
- 如何使用ESP8266制作可配置的Web服務器 1.2w次閱讀
- 三種常見的服務器詳細介紹 8231次閱讀
- 嵌入式Web服務器BOA移植與測試設計概述 1692次閱讀
- 基于嵌入式系統的Web服務器建立設計 3223次閱讀
- 最適合企業的 7 個開源 Web 服務器 5266次閱讀
- 應用服務器配置要求及方案 3.2w次閱讀
- 應用服務器是什么_應用服務器有哪些 3.4w次閱讀
- 一文讀懂應用服務器與Web服務器的區別 2943次閱讀
- 一種嵌入式Web服務器的設計方案 4151次閱讀
- DCS系統中動態數據服務器如何設置? 2036次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多