• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于SNMP的嵌入式Proxy代理的設(shè)計與實現(xiàn)

      2011-07-26 11:03:48馬素剛李宥謀
      自動化儀表 2011年11期
      關(guān)鍵詞:管理站專用串口

      馬素剛 李宥謀

      (西安郵電學(xué)院計算機(jī)學(xué)院,陜西 西安 710121)

      0 引言

      隨著嵌入式技術(shù)與網(wǎng)絡(luò)通信技術(shù)的發(fā)展,嵌入式設(shè)備不斷推陳出新,對設(shè)備的網(wǎng)絡(luò)化也提出了更高的要求。然而,許多早期的嵌入式設(shè)備沒有網(wǎng)絡(luò)接口,無法通過網(wǎng)絡(luò)實現(xiàn)遠(yuǎn)程監(jiān)控。對嵌入式設(shè)備的管理與維護(hù),必須是操作人員在工作現(xiàn)場操作設(shè)備面板或攜帶筆記本電腦連接專用接口(如 RS-232、I2C、SPI、GPIB等)進(jìn)行調(diào)試。這種方式無法滿足設(shè)備調(diào)試的實時性要求,也浪費(fèi)了人力和財力。

      簡單網(wǎng)絡(luò)管理協(xié)議(simple network management protocol,SNMP)是目前TCP/IP網(wǎng)絡(luò)中應(yīng)用較為廣泛的網(wǎng)絡(luò)管理協(xié)議[1],使用SNMP要求通信雙方都支持UDP和IP協(xié)議。由于許多早期的嵌入式設(shè)備不支持TCP/IP協(xié)議,為實現(xiàn)對這些非標(biāo)準(zhǔn)設(shè)備的管理,可以采用委托(Proxy)代理[2]。Proxy代理將SNMP管理站發(fā)出的SNMP報文轉(zhuǎn)換為設(shè)備特定的消息格式,從而使管理者能夠管理多種類型的設(shè)備。

      本文闡述了Proxy代理的軟硬件設(shè)計方法,以及如何通過串口連接將委托代理應(yīng)用于微波傳輸設(shè)備的遠(yuǎn)程管理。

      1 網(wǎng)管系統(tǒng)總體結(jié)構(gòu)

      SNMP采用代理/管理站模型[3],其系統(tǒng)總體結(jié)構(gòu)如圖1所示。Proxy代理使得非標(biāo)準(zhǔn)SNMP設(shè)備具有網(wǎng)絡(luò)管理功能。

      圖1 系統(tǒng)總體結(jié)構(gòu)Fig.1 System architecture

      1.1 系統(tǒng)組成

      整個系統(tǒng)由管理站(network management station,NMS)、Internet、Proxy代理和被管設(shè)備組成。管理站運(yùn)行網(wǎng)絡(luò)管理軟件(如AT-SNMPc、HP OpenView等),通過Internet與Proxy代理連接。Proxy代理通過專用接口與被管設(shè)備連接,發(fā)送查詢、控制命令,同時接收被管設(shè)備主動發(fā)送的告警信息。被管設(shè)備(如一些常用的儀器儀表、傳輸設(shè)備等)運(yùn)行自身的監(jiān)測程序,負(fù)責(zé)數(shù)據(jù)的采集傳輸,同時還需要提供專用調(diào)試接口。

      1.2 工作原理

      管理站對被管設(shè)備的監(jiān)控主要包括查詢設(shè)備信息、設(shè)置設(shè)備參數(shù)以及處理告警信息。

      1.2.1 設(shè)備信息的查詢

      查詢設(shè)備信息按以下步驟進(jìn)行。

      ①管理站上運(yùn)行的網(wǎng)絡(luò)管理軟件,通過SNMP協(xié)議,向Proxy代理發(fā)送查詢信息的Get請求,運(yùn)行于Proxy代理中的Agent進(jìn)程接收查詢請求。

      ②Agent進(jìn)程讀取Proxy代理中保存被管設(shè)備信息的文件,并通過SNMP協(xié)議向管理站作出回應(yīng)。為保證Proxy代理保存信息的實時性,被管設(shè)備定期(如1 s)通過專用接口(如RS-232)向Proxy代理發(fā)送自身的各種參數(shù)信息。

      1.2.2 設(shè)備參數(shù)的設(shè)置

      設(shè)置設(shè)備參數(shù)的流程如下。

      ①管理站通過SNMP協(xié)議,向Proxy代理發(fā)送設(shè)置參數(shù)的Set請求,運(yùn)行于Proxy代理中的Agent進(jìn)程接收設(shè)置請求。

      ②Proxy代理收到設(shè)置請求后,采用專用通信協(xié)議(如串口通信協(xié)議),把設(shè)置請求傳送到被管設(shè)備。被管設(shè)備完成設(shè)置操作后,對Proxy代理作出回應(yīng)。

      ③Proxy代理向管理站回應(yīng)完成設(shè)置信息。

      1.2.3 告警信息的處理

      對于被管設(shè)備中發(fā)生的告警,需要主動向管理站發(fā)送告警信息,工作流程如下。

      ①運(yùn)行于被管設(shè)備上的監(jiān)測程序發(fā)現(xiàn)有告警產(chǎn)生時,通過專用接口把告警信息主動發(fā)送到Proxy代理。

      ②運(yùn)行于Proxy代理的Agent進(jìn)程發(fā)現(xiàn)有告警產(chǎn)生時,及時通過SNMP Trap報文把告警信息發(fā)送至管理站。

      2 軟硬件設(shè)計

      Proxy代理負(fù)責(zé)將管理站發(fā)送的Get、Set請求轉(zhuǎn)換為專用命令,然后發(fā)送至被管設(shè)備;同時把被管設(shè)備主動發(fā)送的告警信息轉(zhuǎn)換為Trap報文并發(fā)送至管理站。Proxy代理采用S3C2410 CPU和嵌入式Linux操作系統(tǒng),運(yùn)行SNMP Agent程序以及與被管設(shè)備相關(guān)的專用通信程序。

      2.1 硬件結(jié)構(gòu)

      Proxy代理采用韓國Samsung公司的S3C2410高性能ARM處理器[4],運(yùn)行頻率可達(dá)266 MHz。S3C2410處理器基于ARM920T內(nèi)核(16/32 bit RISC CPU),集成了大量的功能單元,主要包括內(nèi)存管理單元MMU、獨(dú)立的16 kB 指令 Cache、16 kB 數(shù)據(jù) Cache、4通道 DMA、3通道UART、2通道SPI、PLL數(shù)字鎖相環(huán)等。Proxy代理還包括存儲器(64 MB SDRAM、64 MB Nand Flash)、CS8900以太網(wǎng)控制器、2個輸出串口、SPI接口、I2C接口和JTAG調(diào)試接口等元件。

      Proxy代理的硬件結(jié)構(gòu)如圖2所示。

      圖2 Proxy代理的硬件結(jié)構(gòu)Fig.2 Hardware architecture of Proxy Agent

      2.2 SNMP Agent設(shè)計

      在Proxy代理硬件平臺上成功移植了基于2.6內(nèi)核的嵌入式Linux操作系統(tǒng)[5],并使用C語言編寫了SNMP Agent程序。

      SNMP Agent是在net-snmp軟件包的基礎(chǔ)上,通過二次開發(fā)來實現(xiàn)的[6]。擴(kuò)展后的Agent除了可以響應(yīng)管理站發(fā)來的Get、Set請求外,還可以把專用通信程序接收的告警信息轉(zhuǎn)換為Trap報文,并發(fā)送至管理站。Agent設(shè)計主要完成管理信息庫(management information base,MIB)設(shè)計和Agent程序擴(kuò)展。

      2.2.1 MIB 庫的設(shè)計

      通過對實際設(shè)備功能及應(yīng)用場合的分析[7],從配置管理、性能管理和故障管理等方面增加管理對象。擴(kuò)展的MIB庫對象屬于私有MIB變量,它們在iso.org.dod.internet.private.enterprises 子樹下加以定義。MIB庫采用OSI的抽象語法標(biāo)志ASN.1編寫。

      2.2.2 Agent程序的擴(kuò)展

      Agent程序主要包含 Init、Get、Set和 Notification 這4個子模塊。

      ①Init模塊:Init模塊通過函數(shù)init_NMS()完成代理的初始化功能,即注冊擴(kuò)展的MIB、初始化自定義變量和設(shè)置定時器等。

      ② Get模塊:Get(讀)操作是SNMP的基本操作之一,用于對被管設(shè)備信息的查詢。Get模塊通過函數(shù)var_NMS()實現(xiàn)Get功能。該函數(shù)的結(jié)構(gòu)比較簡單,主要內(nèi)容即為一個switch-case結(jié)構(gòu),每一個分支處理一個管理對象。

      ③Set模塊:Set(寫)操作用于設(shè)置被管設(shè)備的參數(shù)信息,通過名稱類似“write_****”的寫函數(shù)實現(xiàn)。對于不同的管理對象,分別定義寫函數(shù)用于設(shè)置不同的參數(shù)。對被管對象的設(shè)置操作可以分配到6個不同階段完成。各階段功能如表1所示。

      表1 各階段功能表Tab.1 Functions of each stages

      ④Notification模塊:Notification模塊通過發(fā)送Trap報文,處理告警信息。Agent程序定時(如1 μs)查看與專用通信程序共享的管道,如果檢測到來自被管設(shè)備的告警信息,則立即調(diào)用函數(shù)send_v2trap(),并通過Trap報文向管理站發(fā)送告警信息。

      3 Proxy代理的應(yīng)用

      早期的微波通信設(shè)備沒有網(wǎng)絡(luò)接口,使用Proxy代理能夠?qū)崿F(xiàn)對它的遠(yuǎn)程管理[8]。微波通信設(shè)備和Proxy代理之間通過RS-232連接,采用專用串口通信協(xié)議[9]。

      3.1 串口通信協(xié)議

      串口通信采用異步通信方式,數(shù)據(jù)傳輸率為19200 bit/s。串口數(shù)據(jù)幀格式如圖3所示。

      圖3 串口數(shù)據(jù)幀格式Fig.3 Frame format for serial port data

      串口數(shù)據(jù)幀主要包含以下字段。

      ① 起始位:取值為0xcc或0xc3,其中0xcc表示設(shè)置信息,0xc3表示響應(yīng)信息。

      ②長度位:表示幀中命令位和數(shù)據(jù)位長度之和。

      ③命令位:用來標(biāo)志幀的功能。

      ④數(shù)據(jù)位:用于標(biāo)志設(shè)置信息或響應(yīng)信息。

      ⑤校驗和:將命令位、數(shù)據(jù)位按字節(jié)相加。

      ⑥ 結(jié)束位:表示一幀結(jié)束,取值為0xf3。

      3.2 移植與測試

      交叉編譯環(huán)境如圖4所示[10]。

      圖4 交叉編譯環(huán)境Fig.4 Cross-compiling environment

      開發(fā)人員在宿主機(jī)(PC機(jī))上編譯生成適合在目標(biāo)機(jī)(Proxy代理)上運(yùn)行的執(zhí)行代碼,包含Agent程序(snmpd)和串口通信程序(s_port),并通過NFS方式下載到Proxy代理中。

      通過對網(wǎng)管系統(tǒng)進(jìn)行的測試可以看出,Proxy代理實現(xiàn)了預(yù)定功能。在管理站使用AT-SNMPc能夠?qū)ξ⒉ㄍㄐ旁O(shè)備進(jìn)行有效的監(jiān)視和控制,從而提高了微波通信網(wǎng)絡(luò)的服務(wù)質(zhì)量。

      4 結(jié)束語

      本文設(shè)計實現(xiàn)的Proxy代理適用于多種接口的非SNMP設(shè)備,在不改變原有設(shè)備軟硬件結(jié)構(gòu)的基礎(chǔ)上,增強(qiáng)了被管設(shè)備的可管理性能,有利于設(shè)備的快速升級。Proxy代理支持標(biāo)準(zhǔn) SNMP 協(xié)議[11-12],使得非SNMP標(biāo)準(zhǔn)設(shè)備能夠加入網(wǎng)管軟件中統(tǒng)一管理。Proxy代理在保護(hù)用戶已有投資的基礎(chǔ)上,拓寬了用戶對自身設(shè)備的管理能力。然而,由于SNMPv2協(xié)議支持的安全措施有限,帶來了一定的安全隱患,整個系統(tǒng)的安全性有待進(jìn)一步提高。

      [1]雷震甲.計算機(jī)網(wǎng)絡(luò)管理[M].西安:西安電子科技大學(xué)出版社,2006.

      [2]Chavan S S,Madanagopal R.Generic SNMP proxy agent framework for management of heterogeneous network elements[C]//Bangalore:Communication Systems and Networks and Workshops,2009:1-6.

      [3]Zeng Wenxian,Wang Yue.Design and implementation of server monitoring system based on SNMP[C]//Hainan Island:International Joint Conference on Artificial Intelligence,2009:680 -682.

      [4]李敏,何平.基于ARM920T的薄膜厚度在線測量系統(tǒng)設(shè)計[J].自動化儀表,2009,30(8):61 -63.

      [5]張?zhí)m云,張高偉.基于ARM9和Linux的GPS定位數(shù)據(jù)的采集與管理[J].自動化儀表,2008,29(10):14 -17.

      [6]馬素剛.微波中繼站中嵌入式網(wǎng)管Agent實現(xiàn)[J].西安郵電學(xué)院學(xué)報,2009,14(1):120 -124.

      [7]羅毅,姚桂玲.基于SNMP的MIB構(gòu)結(jié)樹高效算法研究[J].計算機(jī)工程與設(shè)計,2010,31(15):3386 -3389.

      [8]劉釗遠(yuǎn),王亞剛,許振文.基于SNMP的數(shù)字微波網(wǎng)管系統(tǒng)設(shè)計與實現(xiàn)[J].通信技術(shù),2009,42(9):139 -141.

      [9]畢國玲,陳濤,王建立,等.多功能嵌入式遠(yuǎn)程信息采集與監(jiān)控系統(tǒng)[J].微電子學(xué)與計算機(jī),2010,27(10):174 -177.

      [10]馬素剛,王力,許振文.基于嵌入式Linux的Web服務(wù)器的設(shè)計與實現(xiàn)[J].計算機(jī)與數(shù)字工程,2010,38(9):183 -186.

      [11]蔡偉鴻,舒兆港,劉震,等.基于SNMP協(xié)議的以太網(wǎng)拓?fù)渥詣影l(fā)現(xiàn)算法研究[J].計算機(jī)工程與應(yīng)用,2005,41(14):156-157.

      [12]陳雷,董博,王雪,等.基于SNMP協(xié)議的全局網(wǎng)絡(luò)流量分析系統(tǒng)的設(shè)計與實現(xiàn)[J].大連理工大學(xué)學(xué)報:工學(xué)版,2005(S1):69-71.

      猜你喜歡
      管理站專用串口
      體能測試專用鞋
      體能測試專用鞋
      體能測試專用鞋
      淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
      宿遷市救助管理站:小團(tuán)隊如何撬動大社會
      中國民政(2019年12期)2020-01-02 09:12:02
      大連市救助管理站:多個“第一”背后的秘密
      中國民政(2019年12期)2020-01-02 09:12:02
      愛它就給它專用的設(shè)備
      USB接口的多串口數(shù)據(jù)并行接收方法探索
      基于藍(lán)牙串口適配器的GPS接收機(jī)與AutoCAD的實時無線通信
      地礦測繪(2015年3期)2015-12-22 06:27:26
      基于并行控制的FPGA多串口拓展實現(xiàn)
      南乐县| 兰西县| 聂拉木县| 白银市| 南投县| 绥芬河市| 无棣县| 南郑县| 广西| 迁西县| 米脂县| 台北县| 香河县| 柳林县| 勃利县| 木兰县| 乃东县| 贵州省| 始兴县| 陆川县| 远安县| 宜阳县| 永安市| 清水河县| 定州市| 延川县| 英德市| 界首市| 香港| 尚志市| 房产| 双鸭山市| 台山市| 张家口市| 治多县| 临沂市| 天峻县| 香港| 尉氏县| 湟中县| 新民市|