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

嵌入式系統(tǒng)Web服務(wù)器應(yīng)用研究開發(fā)

2011-02-28 05:10:30魏宏安徐藝文金志濤
關(guān)鍵詞:頁面嵌入式用戶

魏宏安,徐藝文,金志濤

(福州大學(xué) 物理與信息工程學(xué)院,福建 福州 350002)

信息技術(shù)、網(wǎng)絡(luò)技術(shù)以及嵌入式技術(shù)的飛速發(fā)展和融合,在嵌入式系統(tǒng)中內(nèi)嵌TCP/IP協(xié)議,將Web服務(wù)器技術(shù)引入到嵌入式系統(tǒng)中,可使其系統(tǒng)與現(xiàn)今最大的網(wǎng)絡(luò)Internet實(shí)現(xiàn)無縫連接。嵌入式系統(tǒng)組成的三個基本要素[1]為:嵌入、專用性和計算機(jī)。根據(jù)嵌入式系統(tǒng)本身特性優(yōu)化設(shè)計,引入開源TCP/IP協(xié)議棧,并根據(jù)需要進(jìn)行裁剪,利用公共網(wǎng)關(guān)接口(CGI)應(yīng)用開發(fā),嵌入式Web服務(wù)器可以向任何接入它所在網(wǎng)絡(luò)的合法用戶提供統(tǒng)一的基于瀏覽器方式的操作和控制界面,提供特定交互功能。

1 嵌入式Web服務(wù)器的系統(tǒng)結(jié)構(gòu)

基于當(dāng)前大型服務(wù)器使用的信息管理系統(tǒng)架構(gòu)方案(數(shù)據(jù)庫+Web服務(wù)器+動態(tài)網(wǎng)頁技術(shù)),本文提出一種面向嵌入式、借助CGI網(wǎng)關(guān)接口開發(fā)的B/S結(jié)構(gòu)模式Web服務(wù)器信息交互系統(tǒng),與傳統(tǒng)的兩層C/S模式相比,其有如下優(yōu)點(diǎn):

(1)系統(tǒng)架構(gòu)維護(hù)方便,可根據(jù)需要更新客戶端程序,不用像傳統(tǒng)的兩層C/S模式那樣,必須更新所有客戶端程序,使其保持一致,系統(tǒng)才可以運(yùn)行管理。

(2)客戶機(jī)負(fù)載減輕,無須安裝客戶端軟件,統(tǒng)一的Internet瀏覽器方便了用戶的使用和服務(wù)端的應(yīng)用開發(fā),并提供了友好人機(jī)界面設(shè)計。

(3)系統(tǒng)安全保障提高,避免了客戶端與服務(wù)器的數(shù)據(jù)庫直接相連。

B/S模式組成部分為:表示層:Web瀏覽器,顯示邏輯部分,充當(dāng) Client角色;功能層:Web服務(wù)器,事務(wù)處理邏輯部分;數(shù)據(jù)層:數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)處理邏輯部分。功能層和數(shù)據(jù)層共同充當(dāng)Server角色。B/S模式架構(gòu)如圖1所示。

圖1 B/S架構(gòu)圖

2 Microchip TCP/IP協(xié)議棧[2]

協(xié)議接口設(shè)計借助于Microchip公司提供的免費(fèi)協(xié)議棧——Microchip TCP/IP協(xié)議棧,它是基于TCP/IP的一套應(yīng)用程序,類似于TCP/IP參考模型,Microchip TCP/IP協(xié)議棧將 TCP/IP協(xié)議棧分為多層,如圖 2所示。每層的實(shí)現(xiàn)代碼駐留在一個獨(dú)立的源文件中,而服務(wù)和應(yīng)用程序編程接口(API)是通過頭文件或包含文件定義的。與傳統(tǒng)TCP/IP協(xié)議棧實(shí)現(xiàn)方法的不同,MicrochipTCP/IP協(xié)議棧添加了 StackTask和 ARPTask兩個新模塊。StackTask管理協(xié)議棧以及所有模塊的操作,而ARPTask管理地址解析協(xié)議ARP(Address ResohJtion Protocol)層的服務(wù)。

圖2 Microchip TCP/IP協(xié)議棧與TCP/IP參考模型的對比

與完整、復(fù)雜的TCP/IP協(xié)議體系相比,在嵌入式Web服務(wù)器中并不需要實(shí)現(xiàn)所有的協(xié)議,而是基于嵌入式要素特點(diǎn)的要求以及嵌入式系統(tǒng)資源限制進(jìn)行適量裁剪。來自客戶端的數(shù)據(jù)信息通過RJ-45以太網(wǎng)接口和網(wǎng)絡(luò)接口芯片傳遞給微控制器,微控制器通過內(nèi)嵌的Microchip TCP/IP協(xié)議棧實(shí)現(xiàn)了地址解析 (ARP)協(xié)議、Internet控制報文協(xié)議(ICMP)、IP協(xié)議、用戶數(shù)據(jù)報(UDP)等協(xié)議的解析和封包,應(yīng)用層上負(fù)責(zé)Web頁面請求和應(yīng)答的HTTP協(xié)議。本文設(shè)計的協(xié)議棧管理程序基于協(xié)議的層次性,具有模塊化思想。當(dāng)接收到正確的以太網(wǎng)幀后,根據(jù)以太網(wǎng)的數(shù)據(jù)類型將接收的數(shù)據(jù)送至相應(yīng)的模塊進(jìn)行進(jìn)一步處理。

3 CGI技術(shù)

由于傳統(tǒng)的Web服務(wù)器無法實(shí)現(xiàn)Web數(shù)據(jù)庫訪問功能,CGI技術(shù)充當(dāng)了訪問數(shù)據(jù)庫的重要媒介。CGI是使用應(yīng)用相關(guān)軟件增強(qiáng)Web服務(wù)器的一種標(biāo)準(zhǔn)方法,可以用任何語言書寫。CGI根據(jù)需求更新網(wǎng)頁,是一種公共網(wǎng)關(guān)接口。它通過客戶提供給Web服務(wù)器的各種信息,由Web服務(wù)器啟動指定CGI模塊函數(shù),完成客戶端與服務(wù)器端動態(tài)的交互,從而實(shí)現(xiàn)靜態(tài)HTML網(wǎng)頁無法實(shí)現(xiàn)的功能(如表單查詢、數(shù)據(jù)庫查詢等)。通常CGI應(yīng)用程序處于休眠狀態(tài),通過使用一定的網(wǎng)絡(luò)事件觸發(fā)回調(diào)函數(shù)來實(shí)現(xiàn),并顯示動態(tài)頁面。例如,Web服務(wù)器收到一個URL里面包含的網(wǎng)頁請求時,將執(zhí)行結(jié)果返回給HTML網(wǎng)頁,CGI可實(shí)現(xiàn)處理表格、數(shù)據(jù)庫查詢和電子郵件等操作。

3.1 CGI接口規(guī)范數(shù)據(jù)通信方式

CGI定義的接口規(guī)范包括[3]環(huán)境變量、標(biāo)準(zhǔn)輸入和標(biāo)準(zhǔn)輸出。

3.1.1 環(huán)境變量

環(huán)境變量是Web服務(wù)器與CGI程序進(jìn)行數(shù)據(jù)傳遞的途徑,其定義了CGI程序運(yùn)行的環(huán)境。客戶端和服務(wù)器端都將有關(guān)數(shù)據(jù)信息轉(zhuǎn)換成各種變量,CGI模塊函數(shù)從環(huán)境變量中提取服務(wù)器或是瀏覽器提供的參數(shù)信息(網(wǎng)絡(luò)設(shè)備參數(shù)),以此獲取客戶端的信息。

3.1.2 標(biāo)準(zhǔn)輸入

標(biāo)準(zhǔn)輸入(STDIN)指 CGI函數(shù)獲取Web服務(wù)器信息的一種規(guī)范,即使用HTML表單向Web服務(wù)器發(fā)送信息,通常CGI通過兩種調(diào)用方式獲取客戶請求[4]。

(1)通過 URL直接調(diào)用,如 http://192.168.16.108。

(2)通過交互式Form調(diào)用,通常是用戶輸入信息主頁后,點(diǎn)擊“確認(rèn)”按鈕后啟動CGI程序。提交數(shù)據(jù)有Get和 Post兩種模式:Get通過環(huán)境變量傳遞給 CGI程序,Post通過環(huán)境變量和標(biāo)準(zhǔn)輸入傳遞給 CGI程序。本文采取上述兩種方式調(diào)用CGI模塊函數(shù),并通過交互式Form調(diào)用,采用Post提交數(shù)據(jù)方式,進(jìn)行網(wǎng)絡(luò)參數(shù)設(shè)置。

3.1.3 標(biāo)準(zhǔn)輸出

標(biāo)準(zhǔn)輸出(STDOUT)是 CGI輸出的一種方式,指CGI程序處理結(jié)束后將結(jié)果(如應(yīng)答信息)發(fā)送給Web服務(wù)器的一種方式。執(zhí)行結(jié)果必須是瀏覽器能夠顯示的HTML標(biāo)準(zhǔn)格式。

3.2 CGI工作原理

通過使用一定的網(wǎng)絡(luò)事件觸發(fā)機(jī)制 (如客戶機(jī))向服務(wù)器發(fā)送HTTP請求,即調(diào)用CGI請求。CGI請求中的網(wǎng)絡(luò)參數(shù)等信息是以標(biāo)簽指示的。當(dāng)應(yīng)用程序CGI模塊函數(shù)被調(diào)用時,初始化工作區(qū),把客戶端請求從環(huán)境變量和標(biāo)準(zhǔn)輸入中取出,創(chuàng)建局部變量以匹配請求中的標(biāo)簽。如果沒有從客戶端傳來參數(shù)信息,則調(diào)用用戶提供的函數(shù)以取得設(shè)備當(dāng)前狀態(tài),顯示給客戶端瀏覽器。此外,用戶可以通過網(wǎng)頁操作界面設(shè)置設(shè)備新的工作網(wǎng)絡(luò)參數(shù)并發(fā)給Web服務(wù)器。Web服務(wù)器利用CGI模塊函數(shù)提取網(wǎng)絡(luò)傳送來的新網(wǎng)絡(luò)參數(shù),并利用應(yīng)用程序設(shè)定設(shè)備新的狀態(tài),同時回送給客戶端瀏覽器,通過客戶端瀏覽器和Web服務(wù)器交互對設(shè)備進(jìn)行控制。作為嵌入式應(yīng)用開發(fā),面對對象環(huán)境要求,嵌入到對象體系中,按對象的要求對其軟件和硬件進(jìn)行裁剪,就像標(biāo)準(zhǔn)的CGI作為獨(dú)立可執(zhí)行文件完成的功能,本文中的應(yīng)用是作為一個CGI模塊函數(shù)嵌入到Web服務(wù)器內(nèi)部,統(tǒng)一編譯后整體運(yùn)行,作為用戶Web開發(fā)的接口。

3.3 CGI工作流程

CGI函數(shù)和服務(wù)器之間通過標(biāo)準(zhǔn)輸入(STDIN)和標(biāo)準(zhǔn)輸出(STDOUT)傳遞信息,如圖3所示。服務(wù)器通過STDOUT向CGI函數(shù)傳遞需求信息,CGI函數(shù)讀取環(huán)境變量和STDIN,根據(jù)流程將滿足條件的信息輸出給STDOUT。即對于Web服務(wù)器而言,STDOUT將信息流送至CGI函數(shù)的 STDIN,CGI函數(shù)的 STDOUT信息流將送至服務(wù)器的STDIN,從而形成一個環(huán)路。

圖3 CGI腳本和Web服務(wù)器之間的輸入輸出流程圖

4 Web服務(wù)器建立及工作過程

4.1 Web服務(wù)器建立

實(shí)現(xiàn)動態(tài)Web頁面的準(zhǔn)備工作是利用HTML語言編寫Web頁及內(nèi)建表單,依據(jù)Web網(wǎng)頁提交的信息項(xiàng)目,編寫對應(yīng)的CGI模塊程序。

HTML表單是一種把一組URL(如主機(jī)上的一個文件名)下的控件組成集合的方法,同時每個控件保持自己獨(dú)立的標(biāo)識。該表單仿效可填寫的紙質(zhì)表單,帶有文本區(qū)域和選擇框等。當(dāng)用戶填完表單,即通過網(wǎng)頁形式設(shè)置設(shè)備的網(wǎng)絡(luò)參數(shù)后,用戶點(diǎn)擊保存按鈕,把它提交給服務(wù)器。在此過程中,服務(wù)器接收瀏覽器提取的表單信息,決定返回哪一個頁面[5]。

利用標(biāo)記將輸入域組合起來,說明表單的名稱、數(shù)據(jù)傳達(dá)的目的地點(diǎn)以及傳送方法等。

采用POST方式進(jìn)行數(shù)據(jù)提交。

4.2 Web服務(wù)器工作過程

客戶端利用IE瀏覽器登錄到服務(wù)器發(fā)出服務(wù)器請求,此處的服務(wù)器就是VOIP系統(tǒng)通話終端設(shè)備。服務(wù)器響應(yīng)用戶請求,并引導(dǎo)到指定的腳本程序,即CGI模塊函數(shù)。處于安全的考慮,需要進(jìn)行相應(yīng)的身份驗(yàn)證,身份驗(yàn)證登錄界面如圖4所示。

身份驗(yàn)證后,執(zhí)行CGI應(yīng)用程序,進(jìn)入終端網(wǎng)絡(luò)參數(shù)信息的設(shè)置主頁面,以達(dá)到通過網(wǎng)絡(luò)遠(yuǎn)程控制嵌入式設(shè)備的目的,如圖5所示。

圖4 身份驗(yàn)證登錄界面

圖5 設(shè)置主頁面

點(diǎn)擊左欄的網(wǎng)絡(luò)應(yīng)用配置,進(jìn)入到網(wǎng)絡(luò)應(yīng)用配置頁面,HTML表單語言為:

注冊服務(wù)器IP地址以標(biāo)簽(config_regserverip)指示,點(diǎn)擊保存按鈕后,服務(wù)器進(jìn)行相應(yīng)處理,此時,提取文本框中用戶的輸入信息“192.168.16.104.”替換標(biāo)簽,即利用表單域中的值進(jìn)行替換,以達(dá)到用戶遠(yuǎn)程對設(shè)備參數(shù)的設(shè)置功能。所以變成了。

然后利用自定義HTTPPrint_config_regserverip()函數(shù)直接定向到TCP連接,將用戶設(shè)置參數(shù)信息顯示在HTML表單頁面里。

最終配置頁面如圖6所示,完成遠(yuǎn)程配置任務(wù)。

圖6 配置頁面

終端參數(shù)控制只是B/S模式嵌入式Web遠(yuǎn)程控制系統(tǒng)的一個簡單應(yīng)用,借助于CGI技術(shù)實(shí)現(xiàn)了Web服務(wù)器和客戶端之間的動態(tài)交互,使得用戶能在網(wǎng)絡(luò)環(huán)境的多種平臺上充分利用統(tǒng)一的客戶工具——瀏覽器,從而為網(wǎng)絡(luò)化遠(yuǎn)程操作提供了可靠保障。

本文設(shè)計的嵌入式Web服務(wù)器利用以太網(wǎng)作為通信介質(zhì),具有最大的普及范圍;采用標(biāo)準(zhǔn)公開化的HTTP通信協(xié)議,獨(dú)立于系統(tǒng)平臺,在客戶端使用任意與Internet互連的標(biāo)準(zhǔn)PC(標(biāo)準(zhǔn)瀏覽器)可以實(shí)現(xiàn)隨時隨地訪問。所使用的Web架構(gòu)獨(dú)立于系統(tǒng)平臺,可以移植到任何嵌入式設(shè)備中,使得該Web服務(wù)器具有通用性。經(jīng)實(shí)際測試證明,該Web服務(wù)器性能穩(wěn)定可靠,可應(yīng)用在實(shí)時監(jiān)控、網(wǎng)絡(luò)電話等產(chǎn)品中。

[1]田澤.嵌入式系統(tǒng)開發(fā)與應(yīng)用[M].北京:北京航天航空大學(xué)出版社,2005.

[2]Microchip Technology Inc.Microchip TCP/IP協(xié)議棧[EB/OL].http://ww1.microchip.com/downloads/en/AppNotes/00833c.pdf,2008-08-21.

[3]李勇.CGI技術(shù)在嵌入式WEB服務(wù)器中的應(yīng)用和實(shí)現(xiàn)[J].網(wǎng)絡(luò)與通信,2008,24(30):110-111.

[4]何克右.用CGI方式進(jìn)行網(wǎng)頁交互[J].交通與計算機(jī),2000,18(1):22-23.

[5]JEREMY B.嵌入式系統(tǒng)Web服務(wù)器—TCP/IP Lean[M].陳向群等譯.北京:機(jī)械工業(yè)出版社,2003.

猜你喜歡
頁面嵌入式用戶
大狗熊在睡覺
刷新生活的頁面
搭建基于Qt的嵌入式開發(fā)平臺
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
Altera加入嵌入式視覺聯(lián)盟
倍福 CX8091嵌入式控制器
自動化博覽(2014年4期)2014-02-28 22:31:15
主站蜘蛛池模板: 久久久久久午夜精品| 免费在线国产一区二区三区精品 | 免费在线a视频| 免费看美女自慰的网站| 99精品高清在线播放| 中国一级特黄大片在线观看| 久久精品亚洲中文字幕乱码| 亚洲性一区| 欧美成人A视频| 国产91久久久久久| 亚洲另类色| 亚洲欧美h| 人人艹人人爽| 国产精品网拍在线| 欧美一级大片在线观看| 亚洲精品动漫| 亚洲国产成人无码AV在线影院L| 在线欧美国产| 伊人色天堂| 国产a在视频线精品视频下载| 国产高清在线精品一区二区三区| 久久精品丝袜| 国产成人精品优优av| 91区国产福利在线观看午夜| 香蕉视频国产精品人| 精品综合久久久久久97| 国产成人1024精品| 中文字幕无码制服中字| 欧美黄网站免费观看| A级全黄试看30分钟小视频| a国产精品| 91精品国产福利| 91国内在线观看| 亚洲成人网在线播放| 色噜噜狠狠狠综合曰曰曰| 久久精品66| 亚洲午夜综合网| 9啪在线视频| 亚洲成人动漫在线观看| 中文字幕免费视频| 中国一级特黄大片在线观看| 亚洲一级毛片在线观播放| 亚洲日韩AV无码精品| 91成人试看福利体验区| 99久久精品国产精品亚洲| 久久特级毛片| 亚洲国产91人成在线| 亚洲视频影院| 国产人人射| 国内精品视频区在线2021| 伊人色天堂| 亚洲第一成年人网站| 极品国产在线| 九一九色国产| 国产女同自拍视频| 成年片色大黄全免费网站久久| 在线日韩一区二区| 国产精品区网红主播在线观看| 她的性爱视频| 日韩精品一区二区三区大桥未久 | a毛片免费在线观看| 一级高清毛片免费a级高清毛片| 久久国产精品无码hdav| 亚洲色精品国产一区二区三区| 亚洲欧美日韩天堂| 不卡网亚洲无码| 亚洲无码A视频在线| 国产鲁鲁视频在线观看| 97视频精品全国免费观看| 免费毛片视频| 高清免费毛片| 囯产av无码片毛片一级| 综合久久五月天| 欧美精品二区| 色综合久久无码网| 国产欧美日韩精品第二区| 91无码网站| 青青青伊人色综合久久| 99久久国产精品无码| 99精品在线看| 欧美日韩精品综合在线一区| 米奇精品一区二区三区|