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

基于XORP的SNMP網絡協(xié)議實現

2012-09-17 07:54:40一,吳
電視技術 2012年23期
關鍵詞:定義用戶

武 一,吳 桐

(河北工業(yè)大學信息工程學院,天津 300401)

隨著網絡的迅速發(fā)展,數據中心對交換機的傳輸速度要求越來越高,網絡從百兆網卡發(fā)展到現在40G的光模塊通信。交換機上需要支持的協(xié)議也越來越多,而這些協(xié)議直接的通信和用戶配置界面等也越來越復雜。大部分三層交換機使用的代碼不開源,很難進行完全個性化的配置和修改。

XORP是一個開放的網絡平臺,支持OSPF,RIP的BGP,OLSR協(xié)議,PIM,IGMP(組播)和其他路由協(xié)議。大多數協(xié)議支持IPv4和IPv6(如適用)。XORP的首要目標是要成為一個開放式平臺替代專有和封閉的網絡產品。XORP的開放性使得任何個人或者單位可以免費使用其源代碼進行個性的配置以及更改。

簡單網絡管理協(xié)議(Simple Network Management Protocol,SNMP)是由簡單網關監(jiān)控協(xié)議(SGMP)發(fā)展而來的,其同SGMP的主要區(qū)別是加入了符合Internet定義的SMI和MIB體系結構[1]。SNMP的目標是管理互聯(lián)網或者數據中心中各設備的鏈路狀態(tài)以及設備硬件狀態(tài)。現在SNMP協(xié)議發(fā)展到版本3,其增強了SNMP協(xié)議的安全性能,包括封包加密以及認證等??梢允褂肧NMP進行網絡管理,需要管理基站,管理代理,管理信息庫和網絡管理工具等[2]。

本設計主要研究了在XORP平臺上SNMP協(xié)議的實現,包括配置XORP中添加SNMP的XRL、SNMP協(xié)議參數的用戶命令、SNMP協(xié)議的移植以及MIB庫的添加等。

1 XORP介紹

XORP是一個完全開源的網絡平臺,支持多種協(xié)議,提供對IPv4和IPv6的支持。由于其開放性,因此方便用戶對其進行剪裁以及根據本身硬件進行優(yōu)化。其中重要的是rtrmgr(XORP Router Manager Process),XRL接口的解析和模板的解析都是由其完成,CLI(Command Line Interface)用戶命令行向用戶提供設備配置命令行,其負責完成命令樹文件的語法解析以及命令樹和配置樹的生成、不同用戶之間的同步等。XORP進程的結構如圖1所示。

圖1 XORP結構圖

1.1 XRL 接口

在XORP中,XRL接口是各個模塊通信的接口,XORP默認的通信接口定義文件是XIF文件,在編譯過程中會自動利用腳本把XIF文件編譯成.hh和.cc文件。其定義有固定的語法。例如:

其第一個接口定義了一個給SNMP發(fā)送系統(tǒng)內存狀況的接口,0.1是其版本號。“?”的含義是后面是傳給該接口函數的輸入參數,默認添加的返回值是程序執(zhí)行結果,由類XorpError定義。如果需要其他的返回值,則需要一個回調的callback函數,在XRL接口定義中使用“->”標示進行聲明,在該接口函數執(zhí)行完成之后,XORP會自動調用該callback函數。上述聲明生成的XRL在執(zhí)行過程中,實際調用的XRL如下:

在snmp.xif文件中按照上述格式聲明其他協(xié)議,例如OSPF,RIP,IGMP等傳遞給SNMP數據的接口。自動腳本會生成.cc和.hh文件,例如接口set_location會自動生成如下函數:

其生成的只是XRL的接口函數,還需要自行添加該接口的實現函數。

1.2 模板定義

在XORP中,CLI是XORP與用戶進行交互的界面,供用戶來對設備進行個性化配置以及查看設備運行狀態(tài)和各個參數等。默認的CLI模塊命令行中不存在SNMP協(xié)議的命令,需要按照XORP的語法規(guī)定手動添加模板文件,CLI模塊對模板進行解析,XORP中模板有兩種格式,擴展名分別為.tp以及.cmd,其中.tp文件中的命令的調用是通過XRL來實現的,而在.cmd中的命令是用Shell,Linux命令等非XRL來實現的。

SNMP模塊必須提供啟動SNMP協(xié)議、配置SNMP版本號、關閉SNMP協(xié)議、配置SNMP協(xié)議family等接口。示例如下:

1)TP文件示例

上述tp文件中需要聲明SNMP模塊的信息,包括版本號、依賴程序、路徑信息以及默認名稱,除此之外是各個SNMP模塊相關命令的調用XRL以及傳遞參數等。其中接口函數名以及路徑等必須和XRL接口聲明的相同,否則將引起rtrmgr找不到對應的XRL命令而無法啟動。XORP在啟動時會自動對上述模板進行解析,動態(tài)生成相關的配置樹。當在用戶命令行中輸入相關命令時,RTRMGR會按照相應的XRL調用SNMP模塊命令。

2)cmd文件示例

上述程序聲明了清除SNMP統(tǒng)計信息的命令,commands后面聲明的是需要調用的程序和參數等。XORP也會把cmds文件聲明的命令加入到用戶命令行的命令樹中,與tp文件聲明的命令不同的是,此處調用命令不再使用XRL。

2 SNMP移植

SNMP協(xié)議現在有3個版本,v1現在基本已經淘汰,主要使用v2和v3,v2在RFC 2578中進行了描述,v3在RFC 3411-RFC 3418中定義。在v1中指定5種核心PDU:GET REQUEST,GET NEXT REQUEST,GET RESPONSE,SET REQUEST,TRAP。其他PDU在SNMP的v2中加入,包含GETBULK REQUEST和INFORM。v3中主要增加SNMP在安全性和遠端配置方面的強化。

2.1 SNMP 和 Agent移植

SNMP和Agent有基于GPL發(fā)表的源代碼可供使用,最新的代碼可以從http://agentpp.com/上下載。其移植主要是修改其中的宏定義等配置[3-4]。

1)在移植過程中必須修改SNMP和Agent中對于布爾的變量定義,因為XORP中已經對boolean進行了定義。因此更改agent++.h,去掉boolean的定義,添加如下定義:

2)對SNMP和Agent中所有關于布爾變量的聲明進行更正,把boolean改成agentpp_boolean。

3)根據系統(tǒng)要求更改SNMP以及Agent的配置文件,例如使用的SNMP版本號v2/v3等。

2.2 MIB 庫添加

MIB(Management Information Base)即管理信息庫,其主要由網絡管理協(xié)議訪問的管理對象的數據庫構成[5-6]。MIB庫中每個葉子節(jié)點以及Entry等都具有獨一無二的OID號,RFC以及IEEE提供了大部分協(xié)議的標準MIB庫定義文件。此外,用戶還可以自己添加私有的MIB庫,此類MIB庫需添加到private節(jié)點下。

上述SNMP和Agent中并未包含任何MIB庫,通用的標準MIB庫可以從IEEE等官方網站下載對應的MIB的文本文件,在此之后用第三方的Java工具Agentgen工具將定義的MIB庫轉換成對應的.hh和.cc文件。以RFC1213-MIB為例,其步驟如下:

1)添加該MIB文件到倉庫。命令為

其中 mibrepository是 MIB的二進制的倉庫,pica8mibs是MIB的文本文件倉庫。如果看到“Loading MIB file[./RFC1213 -MIB - rfc1213.txt]...parsed,done”這樣的打印,說明RFC1213-MIB-rfc1213.txt成功加入mibrepository。

2)生成相應的頭文件

#./agentgen.sh ./mibrepository generate RFC1213 - MIB h 3.4 > /tmp/rfc1213_mib.h

3)生成相應的C++文件

#./agentgen.sh ./mibrepository generate RFC1213 - MIB c 3.4 > /tmp/rfc1213_mib.cpp

按照上述方法,將其他協(xié)議的MIB庫全部生成C++文件,并將上述文件添加到Makefile或者Makefile.am中。

2.3 主程序實現

Agent++主程序主要功能是添加MIB庫,完成初始化,添加eventloop事件,注冊SNMP模塊。由于SNMP初始啟動時并無MIB庫葉子節(jié)點的數據,因此其會通過XRL向其他模塊請求數據,來構建初始的數據庫。在此之后基本不再主動請求數據,而是在網絡拓撲結構變化等條件下由其他模塊自動向SNMP傳輸更正的數據,以此來減少XRL調用的次數,提高系統(tǒng)效率。其流程圖如圖2所示。

2.3.1 添加MIB庫代碼

SNMP啟動時需要首先添加相應的MIB庫,例如

圖2 SNMP程序流程圖

SNMP的自帶基礎庫Vacm和OSFP庫等。添加系統(tǒng)描述庫以及OSFP庫的程序示例如下:

2.3.2 初始化

初始化主要是初始化系統(tǒng)使用的時間處理EventLoop,系統(tǒng)描述節(jié)點的初始化,以及UsmUserTable等的初始化,初始化UsmUserTable的程序示例如下:

2.3.3 啟動模塊

SNMP模塊初始化完成后即可啟動,SNMP會通過XRL向rtrmgr注冊SNMP模塊,rtrmgr在收到SNMP的啟動信息后,會向其他模塊下發(fā)該通知,其他模塊收到通知后會自動向SNMP模塊發(fā)送其負責的MIB節(jié)點的數據,來構建初始數據。構建完成之后,其他模塊只有在需要更新MIB庫數據時才會向SNMP模塊發(fā)送數據。例如構建SNMP結點的xrl_snmp_node初始化示例如下:

XrlSnmpNode xrl_snmp_node(eventloop,snmp_target_name,finder_target_name,finder_hostname,finder_port)eventloop.add_ioevent_cb(snmp.get_iv_snmp_session(),IOT_READ,callback(process_snmp),XorpTask::PRIORITY_DEFAULT);

2.4 自定義MIB庫

自定義MIB庫需添加到MIB的private節(jié)點之下,必須按照標準對于節(jié)點進行聲明,例如如下代碼聲明了一個關于CPU利用率的節(jié)點[7-9],其中 SYSTAX 聲明該結點顯示使用的是字符串格式,MAX-ACCES聲明客戶端的操作權限,此處為只讀,STATUS聲明狀態(tài)信息,DESCRIPTION是關于該節(jié)點的描述信息。最后一行聲明該結點是hostStatusGroup組的第一個結點。

自定義MIB庫的編譯方法和標準MIB庫相同,但必須將其在客戶端重新編譯添加到客戶端MIB庫中才可以獲取到數據[10]。

圖3 客戶端顯示結果(截圖)

3 測試結果

經測試,本設計的SNMP協(xié)議在XORP上可以正常啟動,并在客戶端可以正常獲取和配置數據(見圖3)。

[1]李文杰.EPON網管代理中SNMP與OAM的設計實現[J].光通信技術,2011,35(5):78-81.

[2]肖鋼.基于SNMP、WBEM和WSDM的系統(tǒng)管理技術比較[J].北京郵電大學學報,2009,32(S1):134-139.

[3]劉振海.核心交換機嵌入式重啟裝置研究與設計[J].電子技術應用,2010,36(11):141-145.

[4]吳迪.基于嵌入式操作系統(tǒng)的網管代理實現方法[J].計算機及網絡技術應用,2010,8(5):41-43.

[5]張登銀.基于SNMP的MIB庫轉化成C文件的實現[J].計算機技術與發(fā)展,2011,21(9):6-9.

[6]王海穎.基于LINUX嵌入式系統(tǒng)的NMP及其代理(Agent)的設計與實現[D].遼寧:遼寧科技大學,2008.

[7]陳波.基于SNMP的多元網絡統(tǒng)一管理模型研究[J].電視技術,2011,35(10):68-71.

[8]陶寧.基于SNMP的光纖放大器遠程監(jiān)控系統(tǒng)設計[J].激光技術,2011,35(3):365-371.

[9]張亮.基于SNMP的網絡設備管理系統(tǒng)設計與實現[D].河北:河北科技大學,2010.

[10]魏煜欣.一種基于SNMP網絡性能管理數據的采集方法[J].計算機工程與應用,2011,21(9):6-9.

猜你喜歡
定義用戶
永遠不要用“起點”定義自己
海峽姐妹(2020年9期)2021-01-04 01:35:44
定義“風格”
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
Camera360:拍出5億用戶
100萬用戶
如何獲取一億海外用戶
修辭學的重大定義
當代修辭學(2014年3期)2014-01-21 02:30:44
主站蜘蛛池模板: 91福利片| 播五月综合| 亚洲一级毛片在线观播放| 欧美区一区二区三| 永久免费无码成人网站| 欧美v在线| 国产真实乱子伦视频播放| 色综合a怡红院怡红院首页| 一区二区三区四区精品视频| 无码网站免费观看| 91色国产在线| 国产簧片免费在线播放| 2019年国产精品自拍不卡| 综合色亚洲| 国产美女一级毛片| 国产亚洲精品97AA片在线播放| 久久黄色一级视频| 99re视频在线| 女人毛片a级大学毛片免费| 免费在线观看av| 国产激情国语对白普通话| 精品欧美视频| 久热re国产手机在线观看| 大陆精大陆国产国语精品1024| 亚洲国产中文在线二区三区免| 巨熟乳波霸若妻中文观看免费 | 国产对白刺激真实精品91| 久久久国产精品免费视频| 欧美精品另类| 日本免费一区视频| 亚洲天堂日韩av电影| 色综合久久88| 精品国产福利在线| 欧美成人A视频| 国产麻豆aⅴ精品无码| 精品福利一区二区免费视频| 免费在线播放毛片| 免费一级毛片在线观看| 欧美日韩一区二区三区四区在线观看| hezyo加勒比一区二区三区| 国产白丝av| 毛片一级在线| 91伊人国产| 亚洲人成人无码www| 久久美女精品| 欧美特黄一级大黄录像| 亚洲欧洲一区二区三区| 九九九精品成人免费视频7| 国产青青草视频| 久久人与动人物A级毛片| 国产裸舞福利在线视频合集| 99热这里只有精品免费国产| 中文字幕日韩欧美| 无码电影在线观看| 就去色综合| 五月婷婷丁香综合| 黄色网址免费在线| 无码视频国产精品一区二区 | 国产精品亚洲精品爽爽| 亚洲色精品国产一区二区三区| 国产99精品久久| 欧美日韩高清在线| 啦啦啦网站在线观看a毛片| 久久99国产综合精品女同| 无码久看视频| 国产美女在线免费观看| 精品国产Av电影无码久久久| 青青草国产在线视频| 亚洲精品自产拍在线观看APP| 久久一级电影| 中国一级特黄视频| 麻豆国产原创视频在线播放| 日韩黄色精品| 国产欧美在线观看精品一区污| a亚洲天堂| 国产精品污视频| 亚洲丝袜中文字幕| 中文字幕在线观| 亚洲第一精品福利| 久久综合亚洲鲁鲁九月天| 亚洲V日韩V无码一区二区| 91久久偷偷做嫩草影院免费看|