999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于uIP協議棧的嵌入式Web服務器的實現*

2011-05-11 11:58:50朱志紅田茂勝
網絡安全與數據管理 2011年4期
關鍵詞:嵌入式設計

張 勇 ,朱志紅 ,2,田茂勝 ,2

(1.華中科技大學 國家數控系統工程技術研究中心,湖北 武漢430074;2.武漢華中數控股份有限公司,湖北 武漢430223)

數控技術的網絡化是數字制造技術的發展方向,利用網絡技術使數控系統具備遠程監控和故障診斷功能可以極大地提高產品的市場競爭力。TCP/IP協議已經在全球互聯網上取得了巨大成功,通過實現TCP/IP協議使系統直接接入內部網或者互聯網,這種方案利用了現有的網絡線路,避免了成本高昂、繁瑣的布線工作,已成為大多數用戶的選擇。而基于Web服務器的遠程監控技術,可以為用戶提供一個統一、簡潔的操作界面。

整個設計中的關鍵是TCP/IP協議棧的實現,完全從零開始去實現一個嵌入式TCP/IP協議將耗費大量的時間和資源,導致產品跟不上市場需求。而商業的TCP/IP的網絡組件實現過于復雜,需要占用大量的系統資源,同時會導致成本的提高,本設計選用精簡的開源uIP協議棧作為網絡通信協議,采用嵌入式的uIP協議棧,編寫基于DOS操作系統的網絡芯片驅動程序接口,在應用層實現HTTP協議,最后將其運用于華中數控的HNC-21系統,使系統具備了遠程監控功能。

1 uIP協議棧分析

uIP協議棧是專為8/16 bit的嵌入式微處理器設計的小型TCP/IP協議棧,采用BSD授權,遵循RFC標準,完全由C語言編寫,具有良好的互操作性、完整的源代碼和注釋,可免費用于非商業和商業用途。uIP協議棧有多個版本,本設計采用的是uIP0.9。

為了減小代碼量,降低對系統資源的要求,uIP的內部實現具有如下特點[1]:只實現了網絡通信所必要的協議機制;不支持內存動態分配機制,使用單一的全局緩沖區收發數據包;各層協議不嚴格獨立,緊密耦合;應用程序主動參與部分協議棧的功能實現。

uIP協議處于網絡通信的中間層,其設計重點放在IP(網際互聯協議)、ICMP(網絡控制報文協議)和 TCP(傳輸控制協議)的實現上,UDP(用戶數據報協議)和 ARP(地址解析協議)實現只是作為可選模塊。其體系結構[2]如圖1所示。

uIP協議棧提供了三個函數給底層設備驅動程序:uip_periodic()、uip_init()和 uip_input()。 其中 uip_input()和uip_periodic()在內部的實現采用同一個函數,即uip_process(u8_t flag),區別在于調用的參數和使用情況不同。uIP協議棧中應用程序基于事件驅動模式,作為一個獨立的模塊由用戶實現。為了將應用程序掛接到uIP中,用戶需將宏UIP_APPCALL()定義為自己的應用程序函數名。

2 嵌入式Web服務器的實現

uIP協議棧以函數庫的形式提供,本身不提供底層網絡驅動和上層應用程序。因此為了完成指定的功能,開發者必須添加網卡芯片的驅動模塊和特定的應用程序模塊。

2.1 uIP協議棧的移植

協議的實現核心是uip目錄下的7個程序文件[3],本設 計 中 用 到 uip.c、uip.h、uip_arp.c、uip_arp.h、uip_arch.h 5個文件。 其中 uip.c和 uip.h實現了 IP、TCP、ICMP協議,uip_arp.c和uip_arp.h實現了ARP協議。unix目錄下有5個程序文件,本設計中用到的主要是uip_arch.c和uipopt.h。其中uip_arch.c是校驗和文件,uipopt.h是參數配置文件。

設計中根據需要修改uipopt.h,使用靜態IP地址,故將UIP_FIXEDADDR設置為1;不支持數據包分割重組,設置UIP_REASSEMBLY為0;不需要UDP協議支持,設置 UIP_UDP為 0;設置 UIP_CONNS為 5,允許同時開啟5個TCP連接。因為在應用層只需要實現HTTP協議,設置UIP_LISTENPORTS為1。最后根據實際應用修改MAC地址、IP地址、子網掩碼和網關地址中相應的宏變量。

2.2 網卡驅動程序接口

本設計中使用的網絡控制芯片是臺灣Realtek公司的RTL8019AS,系統環境是16位的DOS操作系統。設計中遵循Packet Driver接口協議來操作網卡,提供給上層的函數接口包括網絡芯片的初始、發包、收包。

網卡的初始化接口函數int tapdev_init(void),主要完成獲取網卡句柄和Packet Driver[4-5]提供服務的軟中斷號、注冊網絡數據包的接收程序。函數流程如圖2所示。

圖2 網卡的初始化流程

網卡的接收數據包接口函數為unsignedint tapdev_read(void),主要功能是判斷是否有新的數據包到來。如果有,則將數據存儲到全局變量uip_buf中供進一步的處理,并返回數據包的長度。

網卡的發送數據包接口函數int tapdev_send(void)通過調用Packet Driver的send_pkt()將封裝好的數據包發送到以太網。全局變量uip_len表示要發送的數據包長度。發送數據包的實現代碼如下:

2.3 應用層協議實現

HTTP(HyperText Transfer Protocol)超文本傳輸協議是用于從WWW服務器傳輸超文本到本地瀏覽器的傳送協議。要實現Web服務器[6]的功能,就需要在應用層實現HTTP協議。HTTP協議采用的是客戶端與服務器模式。在客戶端產生數據請求,在服務器端產生應答數據,然后以Web頁面形式返回給客戶端。為了達到統一通用的要求,Web頁面采用HTML格式傳輸。

設計中將應用層函數http_call定義為宏UIP_APPCALL,主程序首先調用函數uip_listen開啟80號端口監聽。如果監測到遠程連接請求,分配一個連接項給客戶端,然后等待客戶端的發送具體的數據請求。在接收到客戶端的數據請求后,根據相應語法解析請求指令,將相關信息以網頁形式返回到客戶端。

用戶只要通過標準的瀏覽器輸入相應的IP地址就可以查看服務器提供的Web網頁。Web服務器軟件實現框圖如圖3所示。

圖3 Web服務器軟件實現框圖

3 Web服務器的應用

將設計的Web服務器應用于華中數控HNC-21系統,可遠程監控機床的當前運行位置、參數設置、報警信息等。設置數控系統的IP地址為192.168.0.2,同時設置相應的子網掩碼和默認網關,然后將數控系統接入局域網。在接入同一局域網的PC機上打開瀏覽器窗口,在地址欄中輸入192.168.0.2,出現圖4所示界面,說明Web服務器已運行成功。

按照本設計中的配置參數,整個系統中核心協議的實現代碼量約為20 KB,核心協議的實現占用的內存約為10 KB,資源占用量很小,能很好地滿足資源有限環境下的應用需求。采用移植精簡的TCP/IP協議棧uIP,使數控系統具有網絡接入功能,是一種低成本、高效的網絡接入方案。通過實現Web服務器的功能,可以讓用戶使用統一、簡潔的界面對數控系統進行遠程監控,降低了用戶的使用難度。

[1]ADAM D.uIP-a free small TCP/IP stack[EBOL].[2010-06-25].http://www.sic.se/~adam/download/uip-doc-0.6.pdf.

[2]ADAM D.FullTCP/IP for8-bitarchitectures[EBOL].[2010-06-25].http://www.sics.se/~adam/mobisys2003.pdf.

[3]Doxygen.uIP 0.9 reference manual[EBOL].[2010-06-25].http://www.sics.se/~adam/download/uip-0.9-refman.pdf.

[4]FTP Software Inc.PC/TCP packet driver specification[EBOL].[2010-06-25].http://www.crynwr.com/packet_driver.html.

[5]黃皓.ARP協議分析及在網絡安全中的應用實現 [D].成都:電子科技大學,2007.

[6]JEREMEY B.嵌入式系統Web服務器-TCP/IP Lean[M].陳向群,譯.北京:機械工業出版社,2003:313-319.

猜你喜歡
嵌入式設計
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
TS系列紅外傳感器在嵌入式控制系統中的應用
電子制作(2019年7期)2019-04-25 13:17:14
嵌入式系統通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
搭建基于Qt的嵌入式開發平臺
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
Altera加入嵌入式視覺聯盟
主站蜘蛛池模板: 不卡的在线视频免费观看| 尤物亚洲最大AV无码网站| 亚洲国语自产一区第二页| 性色在线视频精品| 国产噜噜在线视频观看| 欧美亚洲一区二区三区在线| 久久鸭综合久久国产| www精品久久| 无码专区第一页| 亚洲天堂首页| 永久免费AⅤ无码网站在线观看| 9999在线视频| 波多野结衣的av一区二区三区| 国产精品亚洲五月天高清| 凹凸国产熟女精品视频| 2022精品国偷自产免费观看| 无码粉嫩虎白一线天在线观看| 四虎国产永久在线观看| 国产精品福利尤物youwu| 亚洲无限乱码| aⅴ免费在线观看| 国产精品刺激对白在线| 亚洲天堂视频在线播放| 成人小视频在线观看免费| 国产剧情无码视频在线观看| 亚洲水蜜桃久久综合网站| 日韩毛片基地| 国产69精品久久久久孕妇大杂乱 | 日本亚洲国产一区二区三区| 欧美性爱精品一区二区三区| 欧美国产日韩另类| 久久综合色视频| 亚洲中文在线视频| 欧美日韩综合网| 无码一区18禁| 白丝美女办公室高潮喷水视频| 中国精品自拍| 欧美www在线观看| 亚洲免费福利视频| 国产本道久久一区二区三区| 亚洲天堂首页| 欧美综合区自拍亚洲综合绿色 | 暴力调教一区二区三区| 欧美日韩国产在线播放| 国产丝袜啪啪| аⅴ资源中文在线天堂| 亚洲色图欧美| 日本伊人色综合网| 亚洲视频一区在线| 欧美成人aⅴ| 精品欧美日韩国产日漫一区不卡| 无码aⅴ精品一区二区三区| 99精品一区二区免费视频| 亚洲天堂视频在线观看免费| 欧美福利在线| 午夜毛片免费看| 亚洲a级毛片| 欧美日韩中文国产| 久草视频福利在线观看| 国产欧美专区在线观看| 欧美激情福利| 亚洲一区第一页| 日韩毛片基地| 精品一区二区三区波多野结衣 | 91午夜福利在线观看| 亚洲国产第一区二区香蕉| 免费国产福利| 免费jizz在线播放| 91极品美女高潮叫床在线观看| 国产91无毒不卡在线观看| 国产欧美精品午夜在线播放| 国产成人精品免费视频大全五级| 国产在线精彩视频论坛| 日韩亚洲综合在线| 久久99国产综合精品1| 国产尤物视频网址导航| 亚洲一区二区视频在线观看| 99久久精品国产综合婷婷| 欧美一级在线| 东京热一区二区三区无码视频| 91免费在线看| 亚洲综合经典在线一区二区|