【文章內(nèi)容簡介】
Java 的解釋是一種 被稱為 Java 虛擬機(jī)( JVM)的設(shè)備,它可以應(yīng)用于千變?nèi)f化的其他處理器上,而且可以被綁定在 Web 瀏覽器上,使得瀏覽 器能夠執(zhí)行Java 代碼。 Java 提供了一套獨(dú)立而完備的程序 applets 專用于 Web。 Applets 能夠被傳送到瀏覽器,并且在瀏覽器的本地機(jī)上運(yùn)行。 Applet 具有瀏覽器強(qiáng)制安全機(jī)制,第 二 章 基于 Web 的網(wǎng)絡(luò)管理 15 可以對本地系統(tǒng)資源和網(wǎng)絡(luò)資源的訪問進(jìn)行安全控制。 WBM 中的安全性考慮 WBM 的安全問題在眾多網(wǎng)絡(luò)安全問題中是首要的。 一個(gè)安全的 WBM 系統(tǒng)要能夠保證網(wǎng)絡(luò)管理信息的保密性、完整性和真實(shí)性。保密性不僅涉及網(wǎng)管信息的存放,更重要的是在于網(wǎng)絡(luò)的管理信息的傳輸。信息的完整性是指通過網(wǎng)絡(luò)對信息進(jìn)行增刪改,以及對信息進(jìn)行及時(shí)的傳 遞時(shí),要保證相關(guān)信息不能殘缺不全或被人有意篡改。信息的真實(shí)性是指主要通信雙方的身份進(jìn)行驗(yàn)證,以防止對系統(tǒng)的非法訪問、對信息的破壞記憶通信雙方對信息的真實(shí)性發(fā)生爭議。 通常一個(gè)安全網(wǎng)絡(luò)需要使用防火墻這樣的設(shè)備與 Inter 隔離開,以保護(hù)資源防止外部 Inter中的非授權(quán)的訪問。為了提高 Intra 的安全性,服務(wù)器訪問必須通過 口令控制 和訪問地址過濾等手段加強(qiáng)來控制。 在一個(gè)網(wǎng)絡(luò)中 WBM 控制著關(guān)鍵資源,所以它被嚴(yán)格要求只有 Inter 上的授權(quán)用戶才能夠訪問。幸運(yùn)的是,基于 Web 設(shè)備控制訪 問的能力與其向用戶提供方便訪問的能力同樣值得信賴。管理人員能夠設(shè)置 Web 服務(wù)器從而使用戶必須通過口令 登錄。 WBM 的安全技術(shù)與現(xiàn)存的安全方法并不沖突,如目錄系統(tǒng)、文件名結(jié)構(gòu)以及其它由 Windows NT 或 UNIX 所創(chuàng)建的東西。而且,管理人員能夠輕而易舉地對它們的 WBM 系統(tǒng)應(yīng)用更復(fù)雜的權(quán)限技術(shù)。 網(wǎng)絡(luò)管理人員的網(wǎng)絡(luò)數(shù)據(jù)非常敏感,需要加密。 WBM 得益于在 WWW 上進(jìn)行數(shù)據(jù)傳輸?shù)陌踩苑矫娴拈L久努力。保護(hù) Inter 上的敏感數(shù)據(jù)是電子貿(mào)易所必須面對的嚴(yán)肅問題,所以很多公司正致力于加密工作以使它們的網(wǎng)絡(luò) 傳輸能夠免受干擾,例如在金融機(jī)構(gòu)中,使用加密以保護(hù)客戶的電子儲(chǔ)蓄信息。 WBM 能夠?qū)⑦@些方案更安全地應(yīng)用于保護(hù)公司內(nèi)部網(wǎng)數(shù)據(jù)。用戶通過簡單的在服務(wù)器中施加安全加密措施能夠加密所有從瀏覽器到服務(wù)器的通信,服務(wù)器和瀏覽器一起進(jìn)行加密并解密所有數(shù)據(jù)。請注意 , 這對于 SNMP 或 Tel 在安全性方面是一次進(jìn)步,SNMP 和 Tel 是從不加密的。 這里有一些涉及 Java Applet 安全概念的討論。既然 Java Applet 不是二進(jìn)制代碼并且將字符串和其它的數(shù)據(jù) “ 暴露于光天化日之下 ” ,那么在理論上就完全可16 基于 WEB 的網(wǎng)管系統(tǒng)設(shè)計(jì)開發(fā) 能被改變替代或被中斷。在 Java Applets 中有一些固有的安全性保障, Applets 被定義成不能寫磁盤、破壞系統(tǒng)內(nèi)存或生成到非法站點(diǎn)的超連接。像顯示圖像或添加動(dòng)畫制作等這類無危害的 Java 作業(yè)是基本的初級的。從長遠(yuǎn)上講,隨著 Java 的嵌入將執(zhí)行更為廣泛的作業(yè), Java 代碼的完整性當(dāng)然需要保護(hù)。為了實(shí)現(xiàn)這些,已經(jīng)出現(xiàn)了一些技術(shù)去加密(或加入其他 “ 電子標(biāo)志 ” ) Applets 的技術(shù)。這些技術(shù)將保證收到的 Applets 與原作完全相同,因此使用戶不會(huì)受到被 Applet 串改破壞的影響。 第 三 章 網(wǎng)管系統(tǒng)的設(shè)計(jì)開發(fā) 17 第三章 網(wǎng)管系統(tǒng) 的 設(shè)計(jì) 開發(fā) 網(wǎng)管系統(tǒng)的軟件架構(gòu) 在 網(wǎng)管系統(tǒng)的 客戶端, 網(wǎng)絡(luò) 設(shè)備管理者可以通過 Web 瀏覽器、 Tel 終端或SNMP 網(wǎng)管平臺對 網(wǎng)絡(luò)設(shè)備 進(jìn)行訪問和管理。 網(wǎng)絡(luò)管理 軟件集成在被 管理的網(wǎng)絡(luò)設(shè)備中,構(gòu)成網(wǎng)絡(luò)管理系統(tǒng)的服務(wù)器端。網(wǎng)絡(luò)設(shè)備一旦加電啟動(dòng),網(wǎng)管軟件運(yùn)行后就 會(huì)啟動(dòng)守候進(jìn)程。守候進(jìn)程在服務(wù)器端循環(huán)守候,直到接收到來自客戶端 管理者 的管理請求,然后 就 對請求進(jìn)行分析處理 響應(yīng) 。 網(wǎng)管應(yīng)用程序就是服務(wù)器端對于接收到的請求進(jìn)行處理的程序。 對于 基于 Web的網(wǎng)絡(luò)管理 , 網(wǎng)管應(yīng)用程序 就是一些對網(wǎng)頁上表單元素處理的 CGI( 公共 網(wǎng)關(guān)接口)程序。當(dāng)對請求進(jìn)行解析處理后, 解析 出該請求要操作的管理對象,在管理信息庫中查找被管對象,從而找到與被管對象相關(guān)聯(lián)的管理例程,調(diào)用設(shè)備的 Glue Code( 膠合代碼 ) ,對被管對象進(jìn)行管理操作。 T e l n e t R S 2 3 2 S N M PH T T PW e b S e r v e r守 候 進(jìn) 程T e l n e t S e r v e r守 候 進(jìn) 程C o n s o l e S e r v e r守 候 進(jìn) 程S N M P S e r v e r守 候 進(jìn) 程W e b S e r v e r T e l n e t S e r v e r C o n s o l e S e r v e r S N M P S e r v e r網(wǎng) 管 應(yīng) 用 程 序管 理 信 息 庫 M I B設(shè) 備 專 用 的 驅(qū) 動(dòng) 代 碼被 管 對 象管 理 例 程客 戶 端W e b 瀏 覽 器 、 T e ln e t 終端 、 串 口 終 端 或 S N M P網(wǎng) 管 平 臺設(shè) 備 端 圖 網(wǎng)管系統(tǒng)的軟件結(jié)構(gòu) 設(shè)備管理者 可以 通過 任意一個(gè)連接到網(wǎng)絡(luò)的客戶端中使用 Web 瀏覽器對被管18 基于 WEB 的網(wǎng)管系統(tǒng)設(shè)計(jì)開發(fā) 設(shè)備進(jìn)行 訪問和管理 ??蛻舳讼虮还?理 設(shè)備發(fā)送 TCP 連接請求,被管設(shè)備端的Web Server 守護(hù)進(jìn)程 接 收到客戶端的連接請求后, 然后 經(jīng)過三次握手,雙方建立可靠 的 連接,此時(shí)客戶端向被管設(shè)備發(fā)出 HTTP 請求, Web Server 守護(hù)進(jìn)程將收到的HTTP 請求傳遞 給 Web Server, Web Server 通過對 HTTP 請求 進(jìn)行 分析,調(diào)用網(wǎng)管應(yīng)用程序中相應(yīng)的模塊和設(shè)備專用的驅(qū)動(dòng)代碼, 最后將 結(jié)果通過 HTTP 數(shù)據(jù)包傳回 給客戶端,從而完成對被管設(shè)備的 訪問和 管理。 [7] 管理信息庫的構(gòu)建 管理信息庫( MIB)是網(wǎng)絡(luò)管理系統(tǒng)中的重要的組成部分,是網(wǎng)管軟件的設(shè)計(jì)主要內(nèi)容,管理信息庫是根據(jù)被管理設(shè)備的軟硬件所 能 提供的網(wǎng)絡(luò)管理 能力,將設(shè)備的可管理元素抽象成為能夠進(jìn)行訪問和管理的數(shù)據(jù)的集合。 其中,管理信息庫可以分為兩部分:一是第三方公共網(wǎng)管軟件所提供的標(biāo)準(zhǔn)管理信息庫,包括接口組、系統(tǒng)信息組等等;二是設(shè)備專用的管理信息庫,如設(shè)備的寄存器信息等。因此,論文的主要開發(fā)工作的內(nèi)容是開發(fā)基于 Web 的管理所需要的專用的管理信息庫。 設(shè)備的網(wǎng)管軟件的管理信息庫主要由以下幾個(gè)部分組成:用戶管理組、遠(yuǎn)程網(wǎng)絡(luò)管理信息組( RMON)、系統(tǒng)信息組、系統(tǒng)配置組、端口配置信息組、 VLAN配置信息組、端口流量組、 MAC 配置信息組等。系統(tǒng)信息組描述設(shè)備全局只讀的系統(tǒng)信息;端口配置信息組和端口流量組主要描述設(shè)備的每個(gè)交換模塊和交換端口的寄存器信息;系統(tǒng)配置組主要描述設(shè)備的全局的可讀寫的系統(tǒng)信息;用戶管理組主要描述 訪問用戶的管理信息; VLAN 配置信息組主要描述虛擬局域網(wǎng)的設(shè)置信息; MAC 配置信息組主要描述了設(shè)備系統(tǒng)中 MAC 地址表信息。其中的系統(tǒng)配置組、系統(tǒng)信息組和端口流量組中的管理對象是標(biāo)準(zhǔn)管理信息庫中的內(nèi)容,第三方的公共網(wǎng)管軟件就有提供,是已開發(fā)的公共管理信息庫,是可以利用的開發(fā)成果。需要做的是用 Web 瀏覽器或 Tel 方式直接去訪問這一些標(biāo)準(zhǔn)管理信息庫對象。而構(gòu) 建的專用管理信息庫對象,可以開發(fā)其相對于的讀寫例程。 用戶管理 用戶分為普通用戶、管理員和超級管理員三個(gè)等級,不同的等級有不同的管第 三 章 網(wǎng)管系統(tǒng)的設(shè)計(jì)開發(fā) 19 理級別和權(quán)限 。普通用戶只可以對系統(tǒng)配置和運(yùn)行狀態(tài)等信息進(jìn)行查看;管理員可以除了查看設(shè)備信息還可以對設(shè)備的配置進(jìn)行修改等操作;超級管理員除了就有管理員的權(quán)限外,還可以對管理賬戶進(jìn)行管理,是設(shè)備管理的最高級別。對應(yīng)于這三個(gè)級別,不同的管理功能要設(shè)置不同的訪問權(quán)限,只有當(dāng)?shù)卿浾哔~戶權(quán)限大于或者等于一個(gè)功能的權(quán)限級別才可以使用此管理的功能。 表 登錄賬戶表 登錄名 登錄 口令 權(quán)限級別 User user_password 5(普通用戶 ) Admin admin_password 10(管理員 ) Super super_password 15(超級管理員 ) 賬戶管理內(nèi)容有:添加新用戶、刪除用戶、修改用戶管理權(quán)限以及修改用戶密碼。用戶只有在 Web 頁面上正確輸入用戶名以及用戶密碼才可以進(jìn)入管理系統(tǒng)比且使用相應(yīng)的管理功能。為此,在此模塊代碼的設(shè)計(jì)為一個(gè)數(shù)據(jù)結(jié)構(gòu),并且定義了一個(gè)全局變量來描述賬戶表,定義如下: typedef struct UserEntry { sbyte userName[kMaxLoginLen]; sbyte passWord[kMaxPasswordLen]; Access accessLevel; } UserEntry; 接口的性能管理以及計(jì)費(fèi)管理 除了控制寄存器,對應(yīng)于每個(gè)以太網(wǎng)端口還有一個(gè)計(jì)數(shù)器 (一個(gè)專門的寄存器 ),記錄流經(jīng)端口的數(shù)據(jù)流量的統(tǒng)計(jì)信息。通過對各端口計(jì)數(shù)器的數(shù)據(jù)流量的記錄和對各端口性能參數(shù)的統(tǒng)計(jì),實(shí)現(xiàn)以太網(wǎng)端口的性能管理。端口的性能參數(shù)是 MIBII中用于性能管理的 Interface 組 對象的值。網(wǎng)管軟件依據(jù)這些對象的值計(jì)算設(shè)備的20 基于 WEB 的網(wǎng)管系統(tǒng)設(shè)計(jì)開發(fā) 性能特性。表 中給出了這些對象的列表。這些對象的值是通過讀取以太網(wǎng)交換控制器的 MIB 計(jì)數(shù)器的數(shù)值來得到的 。 表 性能管理對象 對象 說明 IfInOctets 接口收到的字節(jié)數(shù) IfOutOctets 接口發(fā)送的字節(jié)數(shù) IfInDiscards 接口丟棄的輸入包數(shù) IfOutDiscards 接口丟棄的輸出包數(shù) IfInErrors 錯(cuò)誤的輸入包數(shù) IfOutErrors 錯(cuò)誤而不能傳輸?shù)妮敵霭鼣?shù) 接口利用率的計(jì)算方法如下: ( 1) 首先取 得兩個(gè)不同時(shí)刻 (x 時(shí)刻和 Y 時(shí)刻 )之間傳輸?shù)目傋止?jié)數(shù): 總字節(jié)數(shù) =(iflnOctetsy— iflnOctetsx, )+(ifOutOctetsy— ifOutOctetsx)。 ( 2) 然后計(jì)算每秒的總字節(jié)數(shù): 每秒總字節(jié)數(shù) =總字節(jié)數(shù) /(y— x)。 ( 3) 則接口的利用率為: 利用率 =f 每秒總字節(jié)數(shù) 8)/接口速率 。 ( 4) 接口錯(cuò)誤率的計(jì)算方法如下: 輸入錯(cuò)誤率 =iflnErrors/(iflnUcastPkts+iflnNUcastPkts); 輸出錯(cuò)誤率 =ifOutErrors/(ifOutUcastPkts+ifOutNUcastPkts)。 ( 5) 接口的丟包率的計(jì)算方法如下: 輸入丟包率 =iflnDiscards/(iflnUcastPkts+iflnNUcastPkts); 輸出丟包率 =ifOutDiscards/(ifOutUcastPkts+ifOutNUcastPkts)。 通過對以太網(wǎng)交換芯片的端口計(jì)數(shù)器的管理,網(wǎng)管軟件可以對各端口的數(shù)據(jù)流量進(jìn)行統(tǒng)計(jì)和分析,并可以完成對計(jì)數(shù)器清零的操作,從而實(shí)現(xiàn)對設(shè)備的性能管第 三 章 網(wǎng)管系統(tǒng)的設(shè)計(jì)開發(fā) 21 理和計(jì)費(fèi)管理。 MAC 地址管理 以太網(wǎng)交換工作在 OSI 的第二層,在這里,交換 控制芯片可以理解為一個(gè)多端口網(wǎng)橋。在每個(gè)交換芯片中維護(hù)著一張能夠容納 4K 個(gè)地址的 MAC 地址表,這張MAC 地址表記錄著設(shè)備學(xué)習(xí)到的 MAC 地址.表項(xiàng)的內(nèi)容包括 MAC 地址、屬于哪個(gè)端口、是否靜態(tài)地址、是否鎖定的地址以及是否老化等。交換控制芯片通過對 MAC 地址的學(xué)習(xí)和過濾,進(jìn)行各個(gè)端口間數(shù)據(jù)的交換。下面以 GT 48350 為例,詳細(xì)說明 MAC 地址的自學(xué)習(xí)過程。 GT 48350 通過檢查從端口輸入的所有以太幀的源 MAC 地址,來自學(xué)習(xí)與之相連的網(wǎng)絡(luò)設(shè)備上的端口信息。如果在自己的 MAC 地址表中沒有找到這個(gè)源地址,GT 48350 就自動(dòng)在 MAC 地址表中添加此源地址和此源地址所在的端口信息和VLAN 等信息,并借助于 New Address 消息通知系統(tǒng)中其他的 Gal 設(shè)備,更新其他的 Gal 設(shè)備的 MAC 地址表。也就是說,系統(tǒng)中所有的 Gal 設(shè)備上的 MAC地址表是同時(shí)維護(hù),保持一致的。 在自學(xué)習(xí)的過程中, MAC 地址表的內(nèi)容不斷的更新, GT48350 每隔一段時(shí)間就會(huì)對 MAC 地址表進(jìn)行掃描,如果某個(gè)動(dòng)態(tài) MAC 地址項(xiàng)在這段時(shí)間間隔內(nèi)并未傳輸任何幀,則該地址會(huì)自動(dòng)從表中被刪除。這個(gè) MAC 地址表更新的時(shí)間門限稱為地址老化時(shí)間。地址老 化時(shí)間不能太長,否則 MA