路由信息協(xié)議模擬器及其路由信息協(xié)議通信測試方法
【專利摘要】本發(fā)明公開一種路由信息協(xié)議通信測試方法,該方法包含:生成并啟動一路由信息協(xié)議模擬器;路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行路由信息協(xié)議交互;通過獲取路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間的交互的數(shù)據(jù)包,查看路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備的交互過程。本發(fā)明利用pylibpcap模塊驅(qū)動網(wǎng)卡模擬路由信息協(xié)議通信設(shè)備與被測設(shè)備進行交互,相對于現(xiàn)有技術(shù)中采用集成路由信息協(xié)議測試功能的測試儀進行路由信息協(xié)議測試,測試端口資源豐富,操作簡單、成本低廉。
【專利說明】路由信息協(xié)議模擬器及其路由信息協(xié)議通信測試方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種路由信息協(xié)議路由測試技術(shù),具體涉及一種路由信息協(xié)議模擬器及其路由信息協(xié)議通信測試方法。
【背景技術(shù)】
[0002]在使用自動化腳本測試路由器或者三層交換機上的路由信息協(xié)議(RIP)路由協(xié)議時,需要遵循會話發(fā)起協(xié)議接口協(xié)議(RFC)對協(xié)議功能進行詳細的驗證。而不同廠商的設(shè)備提供的命令行風(fēng)格不一致,實現(xiàn)相同的RIP的功能,需要不同的配置。
[0003]在Testcenter, Smartbit等測試儀上有集成RIP協(xié)議測試的功能,可模擬進行RIP的發(fā)包測試。然而現(xiàn)有技術(shù)的缺點在于,具備RIP協(xié)議測試的測試儀一般價格較高,且可用的測試端口資源有限,無法多人同時使用;只能發(fā)RIP報文,無法對收到的RIP報文做出回應(yīng)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種路由信息協(xié)議模擬器及其路由信息協(xié)議通信測試方法,利用普通網(wǎng)卡實現(xiàn)測試不同廠家的路由器或三層交換機上運行的路由信息協(xié)議功能,操作簡單、成本低廉。
[0005]為實現(xiàn)上述目的,本發(fā)明公開一種路由信息協(xié)議通信測試方法,其特點是,該方法包含:
生成并啟動一路由信息協(xié)議模擬器;
路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行路由信息協(xié)議交互;
通過獲取路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間的交互的數(shù)據(jù)包,查看路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備的交互過程。
[0006]上述生成路由信息協(xié)議模擬器的方法包含:
選擇一個用于模擬路由信息協(xié)議交互的無線通信設(shè)備;
通過Iinux系統(tǒng)的pylibpcap模塊配置該無線通信設(shè)備的版本號、源IP、目的IP、源端口、目的端口、接口數(shù)、更新時間和路由表。
[0007]上述啟動路由信息協(xié)議模擬器的方法包含:
pylibpcap模塊創(chuàng)建周期性更新線程,調(diào)用pcap發(fā)包接口以更新時間為周期發(fā)送周期更新的回復(fù)報文;
pylibpcap模塊創(chuàng)建監(jiān)聽線程,調(diào)用pcap發(fā)包接口監(jiān)聽從無線通信設(shè)備收到的路由信息協(xié)議報文。
[0008]上述pylibpcap模塊配置無線通信設(shè)備的版本號時,設(shè)置錯誤的版本號或目的IP或目的端口或路由表的metric值,使路由信息協(xié)議模擬器發(fā)送錯誤的路由信息協(xié)議報文,測試路由信息協(xié)議的容錯性。
[0009]上述路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行路由信息協(xié)議交互包含:
路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間相互發(fā)送請求報文;
路由信息協(xié)議模擬器或被測路由信息協(xié)議通信設(shè)備收到請求報文,響應(yīng)該請求并回復(fù)包含本地路由表信息的響應(yīng)報文。
[0010]上述路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行路由信息協(xié)議交互包含:
路由信息協(xié)議模擬器調(diào)用pcap發(fā)包接口,定期發(fā)送組播或廣播的相應(yīng)報文,該報文中包含本地的路由表信息。
[0011]上述路由信息協(xié)議模擬器在啟動過程中還根據(jù)測試要求修改配置,包含修改更新周期和修改路由表。
[0012]上述路由信息協(xié)議模擬器的路由表更新時觸發(fā)修改路由表,路由信息協(xié)議模擬器調(diào)用Pcap發(fā)包接口發(fā)送組播或廣播的更新報文,更新報文中包含更新的路由表信息。
[0013]一種上述路由信息協(xié)議通信測試方法適用的路由信息協(xié)議模擬器,其特點是,該路由信息協(xié)議模擬器包含:
無線通信設(shè)備,用于路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行通信交互;
pylibpcap模塊,其與無線通信設(shè)備通信連接,用于驅(qū)動和配置無線通信設(shè)備模擬路由信息協(xié)議路由器,進行路由信息協(xié)議報文的收發(fā)包操作,與被測路由信息協(xié)議通信設(shè)備進行協(xié)議交互。
[0014]上述的無線通信設(shè)備采用網(wǎng)卡或普通的計算機。
[0015]本發(fā)明路由信息協(xié)議模擬器及其路由信息協(xié)議通信測試方法和現(xiàn)有技術(shù)路由信息協(xié)議通信設(shè)備測試技術(shù)相比,其優(yōu)點在于,本發(fā)明基于pylibpcap驅(qū)動普通的計算機或網(wǎng)卡模擬路由信息協(xié)議通信設(shè)備與被測設(shè)備進行交互,相對于現(xiàn)有技術(shù)中采用集成路由信息協(xié)議測試功能的測試儀進行路由信息協(xié)議測試,測試端口資源豐富,不需要對不同廠家的路由器或三層交換機配備不同的測試儀,僅采用普通的計算機或網(wǎng)卡,操作簡單、成本低廉
MTv ο
【專利附圖】
【附圖說明】
[0016]圖1為本發(fā)明路由信息協(xié)議通信測試方法的方法流程圖;
圖2為本發(fā)明路由信息協(xié)議模擬器的結(jié)構(gòu)示意圖。
【具體實施方式】
[0017]以下結(jié)合附圖,進一步說明本發(fā)明的具體實施例。
[0018]如圖1所示,本發(fā)明公開一種路由信息協(xié)議通信(RIP)測試方法,該方法包含以下步驟:
步驟1、生成并啟動一路由信息協(xié)議模擬器。
[0019]步驟1.1、選擇一個用于模擬路由信息協(xié)議交互的無線通信設(shè)備。
[0020]步驟1.2、通過Iinux系統(tǒng)的pylibpcap模塊驅(qū)動該無線通信設(shè)備生成路由信息協(xié)議模擬器,pylibpcap模塊為一個使用C語言編寫的可被python調(diào)用的抓包模塊,。本發(fā)明中pylibpcap模塊驅(qū)動該無線通信設(shè)備形成路由信息協(xié)議模擬器,是通過tcl/tk與python語言實現(xiàn)的,支持跨平臺運行,其中Python為一種面向?qū)ο蟮木幊陶Z言,Tcl/tk為一種腳本語目。
[0021]如圖2所示,為一種路由信息協(xié)議模擬器的實施例,該路由信息協(xié)議模擬器包含:無線通信設(shè)備I和與無線通信設(shè)備I通信連接的pylibpcap模塊2。
[0022]無線通信設(shè)備I用于路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備3之間進行通信交互。實際操作中,無線通信設(shè)備I可采用網(wǎng)卡或普通的計算機PC,生簡單且成本低廉,可批量復(fù)制。
[0023]pylibpcap模塊2用于驅(qū)動和配置無線通信設(shè)備I模擬路由信息協(xié)議路由器,進行路由信息協(xié)議報文的收發(fā)包操作,與被測路由信息協(xié)議通信設(shè)備3進行協(xié)議交互。
[0024]pylibpcap模塊對無線通信設(shè)備的版本號、源IP、目的IP、源端口、目的端口、接口數(shù)、更新時間和路由表進行配置。
[0025]優(yōu)選的,pylibpcap模塊配置無線通信設(shè)備的版本號可設(shè)置錯誤的版本號,從而在進行RIP測試時使路由信息協(xié)議模擬器發(fā)送錯誤的RIP報文,來測試RIP協(xié)議的容錯性。
[0026]配置無線通信設(shè)備的目的IP中,RIP協(xié)議報文的目的IP默認為組播地址:224.0.0.9。優(yōu)選的,可設(shè)置錯誤的目的IP,從而在進行RIP測試時使路由信息協(xié)議模擬器發(fā)送錯誤的RIP報文,來測試RIP協(xié)議的容錯性。
[0027]配置無線通信設(shè)備的目的端口中,RIP協(xié)議報文目的端口為520。優(yōu)選的,可設(shè)置錯誤的目的端口,從而在進行RIP測試時使路由信息協(xié)議模擬器發(fā)送錯誤的RIP報文,來測試RIP協(xié)議的容錯性。
[0028]接口數(shù)具體為:路由信息協(xié)議模擬器模擬的接口總數(shù)。
[0029]更新時間(Update timer)表示路由表更新時間間隔,定時發(fā)送更新的回復(fù)(Response)報文。更新時間的默認值可以為30秒。
[0030]路由表可手動添加,也可根據(jù)收到的報文進行更新同步。路由表字段包含:宣告網(wǎng)段、網(wǎng)絡(luò)掩碼、Metric值、下一跳、出接口。
[0031 ] 其中,Metric值到達某網(wǎng)絡(luò)的路由跳數(shù)(0_16)。優(yōu)選的,在進行RIP測試時,可設(shè)置某條路由的Metric值為錯誤值,使路由信息協(xié)議模擬器發(fā)送錯誤的RIP報文,來測試RIP協(xié)議的容錯性。
[0032]步驟1.3、啟動路由信息協(xié)議模擬器的方法包含:
pylibpcap模塊創(chuàng)建周期性更新線程,調(diào)用pcap發(fā)包接口以更新時間為周期發(fā)送周期更新的回復(fù)(Response)報文。
[0033]pylibpcap模塊創(chuàng)建監(jiān)聽線程,調(diào)用pcap發(fā)包接口監(jiān)聽從無線通信設(shè)備(即網(wǎng)卡)收到的路由信息協(xié)議報文。
[0034]步驟2、路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間相連接,在被測路由信息協(xié)議通信設(shè)備接口捕捉RIP的數(shù)據(jù)報文。路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行路由信息協(xié)議交互,從而進行RIP功能的測試。
[0035]對于本發(fā)明的路由信息協(xié)議模擬器而言進行路由信息協(xié)議交互包含:發(fā)送報文、處理收到的RIP報文,以及在啟動的過程中修改配置。
[0036]發(fā)送報文具體包含: O發(fā)送請求報文:路由信息協(xié)議模擬器啟動后,調(diào)用pcap發(fā)包接口向被測的路由器發(fā)送Request請求報文。
[0037]同樣,被測路由信息協(xié)議通信設(shè)備(被測的路由器或三層交換機)也向路由信息協(xié)議模擬器發(fā)送Request請求報文。
[0038]2)周期性更新:路由信息協(xié)議模擬器定期調(diào)用pcap發(fā)包接口,以更新時間(Update timer)為周期發(fā)送組播或者廣播的response回復(fù)報文?;貜?fù)報文中包含有本地的路由表信息。
[0039]3)回復(fù)收到的Request請求報文:路由信息協(xié)議模擬器或被測路由信息協(xié)議通信設(shè)備收到request請求報文后,響應(yīng)該請求,用pcap發(fā)包接口回送包含本地路由表信息的單播Response響應(yīng)報文。
[0040]4)觸發(fā)更新:當(dāng)路由信息協(xié)議模擬器的路由表改變時,會導(dǎo)致觸發(fā)更新。路由信息協(xié)議模擬器調(diào)用pcap發(fā)包接口,發(fā)送組播或者廣播的response更新報文,報文中有改變的路由表信息。
[0041 ] 處理收到的RIP報文具體包含:
O收到request請求報文(對特定查詢的回復(fù)):路由信息協(xié)議模擬器收到request請求報文后,響應(yīng)該請求,調(diào)用pcap發(fā)包接口回送包含本地路由表信息的單播Response響應(yīng)報文。
[0042]2)收到response回復(fù)報文:路由信息協(xié)議模擬器收到Response響應(yīng)報文后,更新本地路由表,同時調(diào)用pcap發(fā)包接口向相鄰路由器發(fā)送觸發(fā)更新Response報文,廣播路由更新信息,并刷新本發(fā)明的路由表界面,顯示最新的路由表信息。
[0043]在啟動的過程中根據(jù)測試要求修改配置具體包含:
O修改更新周期:在啟動過程中修改更新周期,路由信息協(xié)議模擬器定期發(fā)送的更新報文的發(fā)送周期也會同時發(fā)生變化。
[0044]2)修改路由表(調(diào)用pcap發(fā)包接口向外發(fā)送觸發(fā)更新的request請求報文):在啟動過程中修改路由表時,會導(dǎo)致觸發(fā)更新。路由信息協(xié)議模擬器調(diào)用pcap發(fā)包接口,發(fā)送組播或者廣播的response更新報文,報文中有改變的路由表信息。
[0045]步驟3、獲取路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間的交互的數(shù)據(jù)包,查看路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備的交互過程。
[0046]本發(fā)明路由信息協(xié)議模擬器及其路由信息協(xié)議通信測試方法與Testcenter等測試技術(shù)相比:通過pylibpcap模塊與通用的網(wǎng)卡或通用的PC實現(xiàn)報文的收發(fā)和過濾,不依賴于測試儀器,成本低;使用tcl/tk與python語言開發(fā),支持跨平臺;可與被測路由信息協(xié)議通信設(shè)備進行協(xié)議交互,模擬真實測試場景;界面化設(shè)置RIP協(xié)議參數(shù),易用性強;可通過設(shè)置錯誤的報文參數(shù)來測試RIP協(xié)議的容錯性。
[0047]盡管本發(fā)明的內(nèi)容已經(jīng)通過上述優(yōu)選實施例作了詳細介紹,但應(yīng)當(dāng)認識到上述的描述不應(yīng)被認為是對本發(fā)明的限制。在本領(lǐng)域技術(shù)人員閱讀了上述內(nèi)容后,對于本發(fā)明的多種修改和替代都將是顯而易見的。因此,本發(fā)明的保護范圍應(yīng)由所附的權(quán)利要求來限定。
【權(quán)利要求】
1.一種路由信息協(xié)議通信測試方法,其特征在于,該方法包含: 生成并啟動一路由信息協(xié)議模擬器; 路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行路由信息協(xié)議交互; 通過獲取路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間的交互的數(shù)據(jù)包,查看路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備的交互過程。
2.如權(quán)利要求1所述的路由信息協(xié)議通信測試方法,其特征在于,所述生成路由信息協(xié)議模擬器的方法包含: 選擇一個用于模擬路由信息協(xié)議交互的無線通信設(shè)備; 通過Iinux系統(tǒng)的pylibpcap模塊配置該無線通信設(shè)備的版本號、源IP、目的IP、源端口、目的端口、接口數(shù)、更新時間和路由表。
3.如權(quán)利要求2所述的路由信息協(xié)議通信測試方法,其特征在于,所述啟動路由信息協(xié)議模擬器的方法包含: pylibpcap模塊創(chuàng)建周期性更新線程,調(diào)用pcap發(fā)包接口以更新時間為周期發(fā)送周期更新的回復(fù)報文; pylibpcap模塊創(chuàng)建監(jiān)聽線程,調(diào)用pcap發(fā)包接口監(jiān)聽從無線通信設(shè)備收到的路由信息協(xié)議報文。
4.如權(quán)利要求2所述的路由信息協(xié)議通信測試方法,其特征在于,所述pylibpcap模塊配置無線通信設(shè)備的版本號時,設(shè)置錯誤的版本號或目的IP或目的端口或路由表的metric值,使路由信息協(xié)議模擬器發(fā)送錯誤的路由信息協(xié)議報文,測試路由信息協(xié)議的容錯性。
5.如權(quán)利要求1或2所述的路由信息協(xié)議通信測試方法,其特征在于,所述路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行路由信息協(xié)議交互包含: 路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間相互發(fā)送請求報文; 路由信息協(xié)議模擬器或被測路由信息協(xié)議通信設(shè)備收到請求報文,響應(yīng)該請求并回復(fù)包含本地路由表信息的響應(yīng)報文。
6.如權(quán)利要求1或2所述的路由信息協(xié)議通信測試方法,其特征在于,所述路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行路由信息協(xié)議交互包含: 路由信息協(xié)議模擬器調(diào)用pcap發(fā)包接口,定期發(fā)送組播或廣播的相應(yīng)報文,該報文中包含本地的路由表信息。
7.如權(quán)利要求2所述的路由信息協(xié)議通信測試方法,其特征在于,所述路由信息協(xié)議模擬器在啟動過程中還根據(jù)測試要求修改配置,包含修改更新周期和修改路由表。
8.如權(quán)利要求2所述的路由信息協(xié)議通信測試方法,其特征在于,所述路由信息協(xié)議模擬器的路由表更新時觸發(fā)修改路由表,路由信息協(xié)議模擬器調(diào)用pcap發(fā)包接口發(fā)送組播或廣播的更新報文,更新報文中包含更新的路由表信息。
9.一種如權(quán)利要求1至8中任意一項權(quán)利要求所述路由信息協(xié)議通信測試方法適用的路由信息協(xié)議模擬器,其特征在于,該路由信息協(xié)議模擬器包含: 無線通信設(shè)備,用于路由信息協(xié)議模擬器與被測路由信息協(xié)議通信設(shè)備之間進行通信交互; pylibpcap模塊,其與無線通信設(shè)備通信連接,用于驅(qū)動和配置無線通信設(shè)備模擬路由信息協(xié)議路由器,進行路由信息協(xié)議報文的收發(fā)包操作,與被測路由信息協(xié)議通信設(shè)備進行協(xié)議交互。
10.如權(quán)利要求9所述的路由信息協(xié)議通信測試方法,其特征在于,所述的無線通信設(shè)備采用網(wǎng)卡或普通的計算機。
【文檔編號】H04L12/26GK104468281SQ201410814110
【公開日】2015年3月25日 申請日期:2014年12月24日 優(yōu)先權(quán)日:2014年12月24日
【發(fā)明者】劉小麗, 谷穎 申請人:上海斐訊數(shù)據(jù)通信技術(shù)有限公司