freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于web的網(wǎng)管系統(tǒng)設(shè)計開發(fā)-資料下載頁

2025-02-26 10:56本頁面
  

【正文】 統(tǒng)一的元素進(jìn)行管理,實(shí)質(zhì)上就是設(shè)備的專用第 三 章 網(wǎng)管系統(tǒng)的設(shè)計開發(fā) 27 信息庫。是對不同的設(shè)備需求而構(gòu)建的被管元素機(jī)器相關(guān)信息的數(shù)據(jù)庫。 私 有 代 碼S N M P A g e n t膠 合 代 碼M I B w a y I n t e r f a c e R o u t i n e sR C BR a p i d C o n t r o l f o r W e bC G I G e t H a n d l e rC G I P o s t H a n d l e rS M T PH T T P 1 . 0 / 1 . 1操 作 系 統(tǒng) 抽 象 層實(shí) 時 操 作 系 統(tǒng) 圖 Rapid Control 的 Web 組件的軟件結(jié)構(gòu) ( 1)操作系統(tǒng)抽象成就是將網(wǎng)絡(luò)堆棧操作的代碼與不同的操作系統(tǒng)進(jìn)行分隔,以便軟件可以跨平臺運(yùn)行。 它對每一種操作系統(tǒng)都編寫了兩個文件,其中一個是,定義了一系列系統(tǒng)服務(wù)的包裹函數(shù)( wrapper functions)供 Rapid Control for Web 組件進(jìn)行系統(tǒng)調(diào)用;另一個是 ,包含一個網(wǎng)絡(luò)連接服務(wù)程序,用來建立必要的 HTTP 連接線程以處理收到的請求。這兩個源文件一定要包含到 VC 工程 中去 。 通過操作系統(tǒng)抽象層的調(diào)用此操作系統(tǒng)相對應(yīng)的文件代碼,就可以對設(shè)備的代碼操作。 ( 2) The Web Server 包含一套 CGI 的處理程序( GET Handler 和 POST Handler), 包含了實(shí)現(xiàn)公共網(wǎng)關(guān)接口的相關(guān)例程。 CGI 還定義了 HTTP 服務(wù)器和它的輔助程序之間數(shù)據(jù)交換方 式的標(biāo)準(zhǔn)。 G E T E n g i n eR a p i d C o n t r o l B a c k p l a n eP O S T E n g i n eR a p i d C o n t r o l O p e r a t i n g S y s t e mH T T P R e q u e s t H T T P R e p o n s eH T T P S e v e r 圖 Web Server 的系統(tǒng)架構(gòu) 28 基于 WEB 的網(wǎng)管系統(tǒng)設(shè)計開發(fā) 另外 Rapid Control for Web 組件 還有符合 RFC2068 要求的 程序。 Web Server 有兩個主要的工作 機(jī)制 : ● 獲取 (GET)機(jī)制 獲取機(jī)制就是 向服務(wù)器發(fā)送獲取表 單的要求,并從服務(wù)器上獲取數(shù)據(jù)。 在HTML 語句中,一對特 定 的符號(“ $%”和“ $”)之間的字符串并不是一個普通的 HTML 代碼字符串, “ $%” 表示其后是一個 Rapid Mark,“ $”是 該 Rapid Mark的結(jié)束標(biāo)記。 這樣,當(dāng) Web Server 從 CGI 流中解析到這對符號時,就會意識到 這對符號之間的字符串是一個變量的訪問入口,而不是一個簡單的需要顯示的文本字符串。 例如 下面這句 HTML 語句存在于一個名為 的文件中: input type=text name=username value=$%username$ 該 HTML 語句 用于用戶登錄 時輸入用戶名,其中 變量類型為 單行文本框 text,變量名為 username。單行文本 框在基于 Web 的管理中是一個很 常用的元素,使用戶可以通過瀏覽器讀取或修改特定的字符串(如設(shè)備名、 IP 地址)。在上面這個例子中,除了一個特別的 VALUE 域 表示 Rapid Mark 之外 ,上面的代碼與標(biāo)準(zhǔn)HTML 代碼基本相同 。 當(dāng)用戶通過 Web 瀏覽器訪問對應(yīng)于 的 URL 時,相當(dāng)于 對設(shè)備發(fā)出一個 HTTP 的“ GET”請求,如 圖 所示 : W e b 瀏 覽 器H T T P G E TM y f i l e . h t m圖 瀏覽器用戶訪問位于嵌入式設(shè)備上的 Web 文件 Web 服務(wù)器 首先會 對 URL 進(jìn)行解析,并在設(shè)備的文件系統(tǒng)中查找該文件。若文件存在 ,則 會從設(shè)備的文件系統(tǒng)中 下載該文件到服務(wù)器中的一個用于對 CGI 數(shù)據(jù)流進(jìn)行處理的 Get 函數(shù)中, 如 圖 所示: 第 三 章 網(wǎng)管系統(tǒng)的設(shè)計開發(fā) 29 操 作 系 統(tǒng) 抽 象 層R C BM I B w a y I n t e r f a c e R o u t i n e s膠 合 代 碼C G I G e t H a n d l e rC G I P o s t H a n d l e rS N M P A g e n t文 件 存 儲 區(qū)M y f i l e①②③實(shí) 時 操 作 系 統(tǒng)R a p i d C o n t r o l f o r W e bS M T PH T T P 1 . 0 / 1 . 1私 有 代 碼 圖 位于嵌入式設(shè)備上的 Web 服務(wù)器處理 Get 請求的工作流程 然后, 這個 Get 函數(shù)對 HTML 文件中的每個 字符進(jìn)行解析,直到遇到“ $%” ,Get 函數(shù)會停止對該文件的解析,轉(zhuǎn)而在 RCB 中查找“ $%” 和“ $”之間的內(nèi)容。在這個例子中, 也就是在 RCB 中查找名字為 username 的 Rapid Mark,并 獲得 了其讀寫函數(shù)例程。 如 圖 中的表項 : userN am e“ 讀 ” 函 數(shù) 指 針“ 寫 ” 函 數(shù) 指 針 圖 RCB 中的 userName 表項 通過“讀例程”的函數(shù)指針,在“讀例程” 訪問設(shè)備的底層代碼,得到 username的相關(guān)數(shù)據(jù)。通過某種轉(zhuǎn)換和處理后,將獲取的數(shù)據(jù)存放在“讀函數(shù)”的輸出緩沖區(qū)中。通過“讀函數(shù)”的返回值,再把輸出緩沖區(qū)中的數(shù)據(jù)復(fù)制到 HTML 頁面。最后, Get 函數(shù)在對 HTML 文件進(jìn)行這種 Rapid Mark 的替換之后,將 HTML 文件通過 HTTP 服務(wù)器發(fā)送給 Web 瀏覽器,從而在瀏覽器中顯示結(jié)果。 ● 提交( POST)機(jī)制 提交機(jī) 制就是 發(fā)送頁面中的表單值,并向服務(wù)器發(fā)送一個提交請求。當(dāng)一個用戶修改了該文本框中的內(nèi)容,并點(diǎn)擊提交按鈕時, Web 瀏覽器向 Web 服務(wù)器發(fā)回HTTP POST 消息,其中加載著 CGI 數(shù)據(jù)流(表單上的所有的信息), CGI 數(shù)據(jù)流中包含著被提交的變量名稱與新的變量值。 [9] 這個 CGI 流在被嵌入式 Web 服務(wù)器收到后被傳遞給了 CGI Post 處理函數(shù)中,然后由 Post 函數(shù)來解析 CGI 流。當(dāng)它解析到 username 是一個 Rapid Mark 后, Post30 基于 WEB 的網(wǎng)管系統(tǒng)設(shè)計開發(fā) 函數(shù)開始在 RCB 中查詢 username 并獲得相應(yīng)讀寫函數(shù)例程。該表項與前 面 GET操作所獲得表項是相同的,如 圖 所示 。 私 有 代 碼R a p i d C o n t r o l f o r W e b操 作 系 統(tǒng) 抽 象 層R C BM I B w a y膠 合 代 碼C G I G e t H a n d l e rC G I P o s t H a n d l e rS M T PH T T P 1 . 0 / 1 . 1S N M P A g e n tM I B實(shí) 時 操 作 系 統(tǒng)①②③H T T P P O S TC G I 流 圖 位于設(shè)備上的 HTTP 服務(wù)器處理 POST 請求的工作流程 這樣, Post 函數(shù)就獲得了指向?qū)υ?Rapid Mark 進(jìn)行寫操作例程的函數(shù)指針,通過以新的變量值為參數(shù)調(diào)用“寫”例程,設(shè)備底層代碼中相應(yīng)的數(shù)據(jù)得到修改。 綜上所述,通過將 HTML 文件中的 Rapid Mark 與表單元素的名稱相匹配,相同的數(shù)據(jù)庫表項就可以用于“讀”“寫”兩個方向的操作。 用 HTML 表單元素描述設(shè)備上的數(shù)據(jù) Rapid Mark和 RCB技術(shù)將設(shè)備上的動態(tài)變化的數(shù)據(jù)與 HTML頁面上的數(shù)據(jù)關(guān)聯(lián)在一起的,而 Web 服務(wù)器對于 HTML 頁面的處理又是通過對 HTML 表單對象的處理來完成的。因此,設(shè)計這個設(shè)備網(wǎng)管軟件的關(guān)鍵就是如何將 Rapid Mark 與表單元素連接在一起,使 Web 服務(wù)器對表單元素進(jìn)行處理,進(jìn)而訪問到 Rapid Mark以及與之相關(guān)的讀寫例程。 表單是容納表單元素的簡單容器,表單元素是為了網(wǎng)頁的交互性而設(shè)計的,服務(wù)器通過表單獲得用戶提交的信息,用戶也可以從表單元素顯示的值來獲取某種信息。當(dāng)用戶提交表單時,表單的 內(nèi)容就發(fā)送至 Web 服務(wù)器,由服務(wù)器負(fù)責(zé)處理提交的信息。但當(dāng)我們向服務(wù)器提交含有表單的網(wǎng)頁時,在表單之外的表單元素不會被 Web 服務(wù)器處理的。比如說一個網(wǎng)頁上有多個表單,各個表單內(nèi)容不相同,而每個表單上都有一個用于提交的按鈕,當(dāng)我們單擊提交鍵來請求提交我們的網(wǎng)頁時,只有我們點(diǎn)擊的這個按鈕所在的表單中的內(nèi)容才會被 Web 服務(wù)器處理,而第 三 章 網(wǎng)管系統(tǒng)的設(shè)計開發(fā) 31 其他表單中的內(nèi)容不會被提交,因此不會被服務(wù)器處理,這樣就大大地減輕了服務(wù)器數(shù)據(jù)處理的負(fù)擔(dān)。 表單元素是用來收集訪問者輸入的信息,從而實(shí)現(xiàn)網(wǎng)站與用戶的信息交互。單行文本框 text、密碼框 password、提交域 submit、復(fù)位域 reset、 隱藏域 hidden、 單選按鈕 radio、 復(fù)選框 checkbox 和 按鈕 button 等都是常用的 HTML 表單( FORM)元素。這些表單元素實(shí)質(zhì)上是一些變量,變量名在 NAME 域中指定,變量值在VALUE 域中指定。并且在 HTML 語言中都有自己的屬性,比如 TYPE, NAME,VALUE 等。我們要利用這些元素的屬性,在程序中實(shí)現(xiàn)參數(shù)傳遞。 另外,設(shè)計 HTML 頁面上的表單元素其中一個重要的原則就是與用戶交互的易用性,即用什么樣的表單元素來表達(dá)這個變量從而使用戶更易于 接受,并且便于信息的傳遞。當(dāng)用戶需要輸入數(shù)字、字符等信息時,并以文本的格式顯示不同的內(nèi)容,可以用文本框來描述這個變量,這樣用戶可以在文本域輸入文本;當(dāng)用戶需要表示的變量是個枚舉值時,可以用下拉列表框或者是一組單選框來描述它,下拉列表框中的每個選項或者單選框組中的每個選項也就對應(yīng)著設(shè)備數(shù)據(jù)的每個枚舉值;當(dāng)用戶確認(rèn)或提交表單中的內(nèi)容時,可以用一個提交域 submit 來表示。 MIBway 介紹 [10] Rapid Control 的 MIBway 機(jī)制是為 RCB 與 SNMP 代理之間架起了一道橋梁。通過 MIBway 技術(shù), RCB 可以直接通過系統(tǒng)中的 SNMP 代理操作被管對象,從而減少了管理例程代碼的開發(fā)量。 MIBway 它本身是一個庫文件的集合,用于處理來自 RCB 的特定請求。它含有一個 SNMP 協(xié)議棧抽象層,使其可以與不同的 SNMP協(xié)議棧配合使用;格式轉(zhuǎn)換例程,將各種類型數(shù)據(jù)轉(zhuǎn)換為字符格式便于顯示輸出;以及支持 SNMP 高級操作 (如 SNMP 表操作 )的邏輯。 MIBway 主要包含了以下兩個部分: ( 1) MIBway 的“桶”墻機(jī)制,用于接收處理所有在 RCB 中沒有記錄的 Rapid Mark; ( 2) 為了對 SNMP 表格變量進(jìn)行 操作, MIBway 提供了一些稱為 metaRapid Mark 的特殊的 Rapid Mark,并為這些 meta— Rapid Mark 提供了相應(yīng)的操作例程,用于處理復(fù)雜的 SNMP 表格。 MIBway 為已有的 MIB 對象建立 Rapid Mark,并將它的數(shù)據(jù)類型設(shè)為“ MIB32 基于 WEB 的網(wǎng)管系統(tǒng)設(shè)計開發(fā) 變量 ” ,當(dāng)檢索到的 rapid mark 為 MIB 類型時,按照名稱找到對應(yīng)的 OID,并按照本地 SNMP Agent 需要的格式構(gòu)建 PDU 數(shù)據(jù)包,然后調(diào)用 SNMP Agent 的 PDU處理例程得到結(jié)果。 下面介紹一下 MIBway 的工作流程: ● 對標(biāo)量 MIB 對象的操作 首先,定義了一個名字為 sysName 的 Rapid Mark,并且,假定我們想要利用己開發(fā)的 SNMP 管理例程而不是重新為它書寫讀寫操作例程。于是,在對 Rapid Mark 設(shè)計進(jìn)行設(shè)計的時候,將它的數(shù)據(jù)類型設(shè)為 SNMP 變量。前面我們提到過,在 RCB 中只儲存非 SNMP 類型的 Rapid Mark, CGI 程序在對 RCB 進(jìn)行查詢時,正是以此為依據(jù)來判斷 Rapid Mark 的管理例程是否使用 SNMP 的管理例程的。也就是說, sysName 這個 Rapid Mark 表項在 RCB 中并不存在。 再假定 HTML 文件 中有如下 HTML 語句: INPUT Type=text Size=20 Name=sysName Value=$% sysName$ 如前所述,這是一個描述單行文本輸入框的表單元素,用于讓終端用戶讀寫數(shù)據(jù)。 當(dāng) Web 服務(wù)器收到對
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1