專利名稱:網絡設備的測試方法及裝置的制作方法
技術領域:
本發明涉及通信技術領域,特別是涉及一種網絡設備的測試方法及裝置。
背景技術:
網絡技術迅猛發展,網絡產品層出不窮,如何對相關產品和相關網絡進行準確測試,一直是網絡測試的要點和難點。一旦測試結果不準確的網絡產品上線,就可能造成網絡閃斷、網絡癱瘓等重大網絡事故,給運營商和網絡用戶帶來數以百萬計的經濟損失。在現有技術中,對投入運營前的網絡產品進行測試,主要是通過對真實網絡流量的抓取和回放的方式,來對網絡產品進行網絡測試和評價。本申請的發明人在長期的研發過程中發現,現有的抓包回放技術,是基于循環發送的方式來實現回放的,僅僅是加快了網絡用戶的動作,無法正確模擬網絡流量的倍增。
發明內容
本發明實施例中提供了一種網絡設備的測試方法及裝置,能夠真實地模擬網絡流量的增加。第一方面,本發明實施例提供了一種網絡設備的測試方法,包括根據從網絡流量中獲取的抓包文件獲得第一數據包與第二數據包之間的第一發送時隙;根據所述第一發送時隙以及為所述第一數據包所屬數據流預設的放大倍數獲得第二發送時隙;根據所述第一數據包以及為所述第一數據包所屬數據流預設的IP地址池中的N個IP地址構造N個測試數據包,其中,所述N的值與所述放大倍數的值相同;根據所述第二發送時隙向被測設備發送所述N個測試數據包;接收所述被測設備轉發的測試數據包;根據接收的測試數據包獲得測試結果。在第一方面的第一種可能的實現方式中,所述根據接收的測試數據包獲得測試結果包括:根據接收的測試數據包與發送的測試數據包的數量獲得所述被測設備的丟包率;或者根據接收的測試數據包使用的所述IP地址池中的IP地址確定測試所述數據流的下一個數據包的放大倍數及使用的IP地址。結合第一方面的第一種可能的實現方式,在第一方面的第二種可能的實現方式中,所述構造所述N個測試數據包還包括:在所述構造的N個測試數據包的IP頭部的標識的高字節位寫入所述第一數據包所屬數據流的流序號的哈希值,并重新計算所述測試數據包的IP頭部的校驗和。結合第一方面的第一種可能的實現方式,在第一方面的第三種可能的實現方式中,所述構造所述N個測試數據包還包括:若所述第一數據包的協議類型為多通道協議,則在使用所述N個IP地址替換所述第一數據包的源IP地址的同時同步替換所述第一數據包中有效荷載部分的IP地址,并重新計算所述N個測試數據包的數據部分的校驗和。結合第一方面的第一至第三中任一種可能的實現方式,在第一方面的第四種可能的實現方式中,所述第二發送時隙為所述第一發送時隙與所述放大倍數的商。
第二方面,本發明實施例提供了一種網絡設備的測試裝置,所述裝置包括:第一獲得模塊,用于根據從網絡流量中獲取的抓包文件獲得第一數據包與第二數據包之間的第一發送時隙;第二獲得模塊,用于根據所述第一發送時隙以及為所述第一數據包所屬數據流預設的放大倍數獲得第二發送時隙;構造模塊,用于根據所述第一數據包以及為所述第一數據包所屬數據流預設的IP地址池中的N個IP地址構造N個測試數據包,其中,所述N的值與所述放大倍數的值相同;發送模塊,用于根據所述第二發送時隙向被測設備發送所述N個測試數據包;接收模塊,用于接收所述被測設備轉發的測試數據包;第三獲得模塊,用于根據接收的測試數據包獲得測試結果。在第二方面的第一種可能的實現方式中,所述第三獲得模塊具體用于根據接收的測試數據包與發送的測試數據包的數量獲得所述被測設備的丟包率;或者根據接收的測試數據包使用的所述IP地址池中的IP地址確定測試所述數據流的下一個數據包的放大倍數及使用的IP地址。結合第二方面的第一種可能的實現方式,在第二方面的第二種可能的實現方式中,所述構造模塊還用于在所述構造的N個測試數據包的IP頭部的標識的高字節位寫入所述第一數據包所屬數據流的流序號的哈希值,并重新計算所述測試數據包的IP頭部的校驗和。結合第二方面的第一種可能的實現方式,在第二方面的第三種可能的實現方式中,所述構造模塊還用于在所述第一數據包的協議類型為多通道協議時,在使用所述N個IP地址替換所述第一數據包的源IP地址的同時同步替換所述第一數據包中有效荷載部分的IP地址,并重新計算所述N個測試數據包的數據部分的校驗和。結合第二方面的第一至第三中任一種可能的實現方式,在第二方面的第四種可能的實現方式中,所述第二發送時隙為所述第一發送時隙與所述放大倍數的商。本發明實施例根據從網絡流量中獲取的抓包文件獲得第一數據包與第二數據包之間的第一發送時隙;根據第一發送時隙以及為第一數據包所屬數據流預設的放大倍數獲得第二發送時隙;根據第一數據包以及為第一數據包所屬數據流預設的IP地址池中的N個IP地址構造N個測試數據包,其中,N的值與放大倍數的值相同;根據第二發送時隙向被測設備發送N個測試數據包;接收被測設備轉發的測試數據包;根據接收的測試數據包獲得測試結果。通過這種方式,能夠真實的模擬網絡流量的增加,從而實現對網絡設備進行性能評估。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。圖1是本發明實施例提供的網絡設備的測試方法的應用場景示意圖;圖2是本發明實施例提供的網絡設備的測試方法的流程圖;圖3是本發明實施例提供的網絡設備的測試方法的另一流程圖;圖4是本發明實施例提供的網絡設備的測試方法的又一流程圖5是本發明實施例提供的網絡設備的測試方法的又一流程圖;圖6是本發明實施例提供的網絡設備的測試裝置的一結構示意圖;圖7是本發明實施例提供的網絡設備的測試裝置的又一結構示意圖。
具體實施例方式為了使本技術領域的人員更好地理解本發明方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分的實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬于本發明保護的范圍。下面結合附圖和實施例對本發明進行詳細說明。參閱圖1,圖1是本發明實施例提供的網絡設備的測試方法的應用場景示意圖。本發明的主要應用場景是用于被測設備13 (包括但不限于交換機、路由器、防火墻等)在抓包流量下的測評,測評內容包括被測設備13在抓包流量下的性能表現、穩定性表現、網絡時延、丟包、應用層協議處理能力等。具體地,如圖1所示,本發明的測試系統14發送的測試報文經過模擬測試網絡11、被測設備13以及模擬測試網絡12后返回測試系統14,從而實現對被測設備13的測試評估。其中,模擬測試網絡11和模擬測試網絡12可以分別模擬網絡中的內部網絡和外部網絡,例如,外部網絡12中的主機可以通過被測設備13訪問內部網絡11。參閱圖2,圖2是本發明實施例提供的網絡設備的測試方法的流程圖,包括:步驟SlOl:根據從網絡流量中獲取的抓包文件獲得第一數據包與第二數據包之間的第一發送時隙。抓包就是將網絡傳輸發送與接收的數據包進行截獲、重發、編輯、轉存等操作,使用抓包工具將網絡流量中的數據包進行截獲等操作即可獲得抓包文件。時隙是指任何能夠唯一識別和定義的周期性時段,是專用于某一個單個通道的時隙信息的串行自復用的一個部分,是時分復用模式(TDM)中的一個時間片。根據抓包文件可以獲得第一數據包和第二數據包之間的第一發送時隙。其中,第一數據包與第二數據包為網絡流量中相鄰的兩個數據包,第一數據包與第二數據包可以屬于相同的數據流,也可以屬于不同的數據流。步驟S102:根據所述第一發送時隙以及為所述第一數據包所屬數據流預設的放大倍數獲得第二發送時隙。其中,所述第二發送時隙為所述第一發送時隙與所述放大倍數的商。為了能夠模擬真實的網絡環境,同一個數據流的數據包構造后續的測試數據包時,是按照相同的數據流預設的放大倍數進行構造的。因此,根據第一發送時隙以及為第一數據包所屬數據流預設的放大倍數可以獲得第二發送時隙,即第二發送時隙等于第一發送時隙除以第一數據包所屬數據流預設的放大倍數。步驟S103:根據所述第一數據包以及為所述第一數據包所屬數據流預設的IP地址池中的N個IP地址構造N個測試數據包,其中,所述N的值與所述放大倍數的值相同。利用第一數據包所屬數據流預設的IP地址池中的N個IP地址為第一數據包構造N個測試數據包,該N個IP地址可用于構造N個測試數據包的源IP地址,或者構造N個測試數據包的目的IP地址,其中,N的值與第一數據包所屬數據流預設的放大倍數的值相同。步驟S104:根據所述第二發送時隙向被測設備發送所述N個測試數據包。按照步驟S102所獲得的第二發送時隙向被測設備發送N個測試數據包。需要說明的是,在實際應用中,可以一邊構造測試數據包,一邊按照第二發送時隙發送構造的測試數據包,也可以將N個測試數據包構造完畢后,再按照第二發送時隙進行發送,在實際應用中可以根據具體的情況確定,在此不作限制。步驟S105:接收所述被測設備轉發的測試數據包。被測設備接收到測試數據包后,將接收的測試數據包進行轉發,因此測試系統接收被測設備轉發的測試數據包,以便于測試系統獲得被測設備的測試性能。步驟S106:根據接收的測試數據包獲得測試結果。根據接收的測試數據包獲得測試結果,例如:被測設備的丟包率、能處理的網絡流量,應用層協議處理能力等。本發明實施例根據從網絡流量中獲取的抓包文件獲得第一數據包與第二數據包之間的第一發送時隙;根據第一發送時隙以及為第一數據包所屬數據流預設的放大倍數獲得第二發送時隙;根據第一數據包以及為第一數據包所屬數據流預設的IP地址池中的N個IP地址構造N個測試數據包,其中,N的值與放大倍數的值相同;根據第二發送時隙向被測設備發送N個測試數據包;接收被測設備轉發的測試數據包;根據接收的測試數據包獲得測試結果。通過這種方式,能夠真實的模擬網絡流量的增加,從而實現對網絡設備進行性能評估。參閱圖3至圖5,圖3至圖5是本發明實施例提供的網絡設備的測試方法的三個流程圖,包括:步驟S201:根據數據流信息的五元組,確定第一數據包所屬的數據流。數據流信息的五元組包括:源IP地址、源端口、目的IP地址、目的端口以及傳輸層協議。根據數據流的五元組信息,即可確定第一數據包所屬的數據流,同一個數據流的五元組信息相同。屬于同一個數據流的數據包按照同樣的放大倍數構造與放大倍數相同數量的測試數據包。步驟S202:根據從網絡流量中獲取的抓包文件獲得第一數據包與第二數據包之間的第一發送時隙。時隙是指任何能夠唯一識別和定義的周期性時段,是專用于某一個單個通道的時隙信息的串行自復用的一個部分,是時分復用模式(TDM)中的一個時間片。根據抓包文件可以獲得第一數據包和第二數據包之間的第一發送時隙。其中,第一數據包與第二數據包為網絡流量中相鄰的兩個數據包,第一數據包與第二數據包可以屬于相同的數據流,也可以屬于不同的數據流。步驟S203:根據所述第一發送時隙以及為所述第一數據包所屬數據流預設的放大倍數獲得第二發送時隙。為了能夠模擬真實的網絡環境,在為同一個數據流的數據包構造測試數據包時,是按照相同的數據流預設的放大倍數進行構造的。因此,根據第一發送時隙以及為第一數據包所屬數據流預設的放大倍數可以獲得第二發送時隙,即第二發送時隙等于第一發送時隙除以第一數據包所屬數據流預設的放大倍數,即第二發送時隙為所述第一發送時隙與所述放大倍數的商。步驟S204:根據所述第一數據包以及為所述第一數據包所屬數據流預設的IP地址池中的N個IP地址構造N個測試數據包,其中,所述N的值與所述放大倍數的值相同。利用第一數據包所屬數據流預設的IP地址池中的N個IP地址為第一數據包構造N個測試數據包,該N個IP地址可用于通過分別替換第一數據包中的N個測試數據包的源IP地址的方式來構造測試數據包,也可以用N個IP地址分別替換第一數據包中的目的地址來的方式來構造N個測試數據包,其中,N的值與第一數據包所屬數據流預設的放大倍數的值相同。其中,一個IP數據包包括頭部和數據部分,如表I所示,IP數據包頭部的數據格式可以如表2所示。表IIP數據包的組成表
權利要求
1.一種網絡設備的測試方法,其特征在于,包括: 根據從網絡流量中獲取的抓包文件獲得第一數據包與第二數據包之間的第一發送時隙; 根據所述第一發送時隙以及為所述第一數據包所屬數據流預設的放大倍數獲得第二發送時隙; 根據所述第一數據包以及為所述第一數據包所屬數據流預設的IP地址池中的N個IP地址構造N個測試數據包,其中,所述N的值與所述放大倍數的值相同; 根據所述第二發送時隙向被測設備發送所述N個測試數據包; 接收所述被測設備轉發的測試數據包; 根據接收的測試數據包獲得測試結果。
2.根據權利要求1所述的方法,其特征在于,所述根據接收的測試數據包獲得測試結果包括: 根據接收的測試數據包與發送的測試數據包的數量獲得所述被測設備的丟包率;或者根據接收的測試數據包使用的所述IP地址池中的IP地址確定測試所述數據流的下一個數據包的放大倍數及使用的IP地址。
3.根據權利要求2所述的方法,其特征在于,所述構造所述N個測試數據包還包括: 在所述構造的N個測試數據包的IP頭部的標識的高字節位寫入所述第一數據包所屬數據流的流序號的哈希值,并重新計算所述測試數據包的IP頭部的校驗和。
4.根據權利要求2所述的方法,其特征在于,所述構造所述N個測試數據包還包括: 若所述第一數據包的協議類型為多通道協議,則在使用所述N個IP地址替換所述第一數據包的源IP地址的同時同步替換所述第一數據包中有效荷載部分的IP地址,并重新計算所述N個測試數據包的數據部分的校驗和。
5.根據權利要求1-4任意一項所述的方法,其特征在于,所述第二發送時隙為所述第一發送時隙與所述放大倍數的商。
6.一種網絡設備的測試裝置,其特征在于,所述裝置包括: 第一獲得模塊,用于根據從網絡流量中獲取的抓包文件獲得第一數據包與第二數據包之間的第一發送時隙; 第二獲得模塊,用于根據所述第一發送時隙以及為所述第一數據包所屬數據流預設的放大倍數獲得第二發送時隙; 構造模塊,用于根據所述第一數據包以及為所述第一數據包所屬數據流預設的IP地址池中的N個IP地址構造N個測試數據包,其中,所述N的值與所述放大倍數的值相同;發送模塊,用于根據所述第二發送時隙向被測設備發送所述N個測試數據包; 接收模塊,用于接收所述被測設備轉發的測試數據包; 第三獲得模塊,用于根據接收的測試數據包獲得測試結果。
7.根據權利要求6所述的裝置,其特征在于,所述第三獲得模塊具體用于根據接收的測試數據包與發送的測試數據包的數量獲得所述被測設備的丟包率;或者根據接收的測試數據包使用的所述IP地址池中的IP地址確定測試所述數據流的下一個數據包的放大倍數及使用的IP地址。
8.根據權利要求7所述的裝置,其特征在于,所述構造模塊還用于在所述構造的N個測試數據包的IP頭部的標識的高字節位寫入所述第一數據包所屬數據流的流序號的哈希值,并重新計算所述測試數據包的IP頭部的校驗和。
9.根據權利要求7所述的裝置,其特征在于,所述構造模塊還用于在所述第一數據包的協議類型為多通道協議時,在使用所述N個IP地址替換所述第一數據包的源IP地址的同時同步替換所述第一數據包中有效荷載部分的IP地址,并重新計算所述N個測試數據包的數據部分的校驗和。
10.根據權利要求6-9任意一項所述的裝置,其特征在于,所述第二發送時隙為所述第一發送時隙與所述放 大倍數的商。
全文摘要
本發明公開了一種網絡設備的測試方法及裝置,該方法包括根據從網絡流量中獲取的抓包文件獲得第一數據包與第二數據包之間的第一發送時隙;根據所述第一發送時隙以及為所述第一數據包所屬數據流預設的放大倍數獲得第二發送時隙;根據所述第一數據包以及為所述第一數據包所屬數據流預設的IP地址池中的N個IP地址構造N個測試數據包,其中,所述N的值與所述放大倍數的值相同;根據所述第二發送時隙向被測設備發送所述N個測試數據包;接收所述被測設備轉發的測試數據包;根據接收的測試數據包獲得測試結果。通過上述方式,本發明能夠真實地模擬網絡流量的增加。
文檔編號H04L12/26GK103209103SQ20131009735
公開日2013年7月17日 申請日期2013年3月25日 優先權日2013年3月25日
發明者王晨, 吳黎明, 邱國平 申請人:華為技術有限公司