路由器是IP網絡的核心設備,其性能的好壞直接影響IP網網絡規模、網絡穩定性以及網絡可擴展性。路由器區別于一般簡單的網絡互連設備,在性能測試時還應該加上路由器特有的性能測試。路由器在計算機網絡中有著舉足輕重的地位,是計算機網絡的橋梁。通過它不僅可以連通不同的網絡,還能選擇數據傳送的路徑,并能阻隔非法的訪問。 路由器的配置對初學者來說,并不是件十分容易的事。
(一)功能測試
路由器功能通常可以劃分為如下方面。
(1)接口功能:該功能用作將路由器連接到網絡。可以分為局域網接口及廣域網接口兩種。局域網接口主要包括以太網、令牌環、令牌總線、FDDI等網絡接口。廣域網接口主要包括E1/T1、E3/T3、DS3、通用串行口(可轉換成X.21DTE/DCE、V.35DTE/DCE、RS232DTE/DCE、RS449DTE/DCE、EIA530DTE)等網絡接口。(2)通信協議功能:該功能負責處理通信協議,可以包括TCP/IP、PPP、X.25、幀中繼等協議。(3)數據包轉發功能:該功能主要負責按照路由表內容在各端口(包括邏輯端口)間轉發數據包并且改寫鏈路層數據包頭信息。(4)路由信息維護功能:該功能負責運行路由協議,維護路由表。路由協議可包括RIP、OSPF、BGP等協議。(5)管理控制功能:路由器管理控制功能包括五個功能,SNMP代理功能,Telnet服務器功能,本地管理、遠端監控和RMON功能。通過多種不同的途徑對路由器進行控制管理,并且允許紀錄日志。(6)安全功能:用于完成數據包過濾,地址轉換,訪問控制,數據加密,防火墻,地址分配等功能。
路由器對上述功能并非必要完全實現。但是由于路由器作為網絡設備,存在最小功能集,對最小功能集所規定的功能,路由器必須支持。因為絕大多數功能測試可以由接口測試、性能測試、協議一致性測試和網管測試所函蓋,所以路由器功能測試一般可以只對其他測試無法涵蓋的功能作驗證性測試。路由器功能測試一般采用遠端測試法。
(二)性能測試
路由器是IP網絡的核心設備,其性能的好壞直接影響IP網網絡規模、網絡穩定性以及網絡可擴展性。由于IETF沒有對路由器性能測試作專門規定,一般來說只能按照RFC2544( Benchmarking Methodology for Network Interconnect Devices)作測試。但路由器區別于一般簡單的網絡互連設備,在性能測試時還應該加上路由器特有的性能測試。例如路由表容量、路由協議收斂時間等指標。
路由器性能測試應當包括下列指標。
(1)吞吐量:測試路由器包轉發的能力。通常指路由器在不丟包條件下每秒轉發包的極限,一般可以采用二分法查找該極限點。(2)時延:測試路由器在吞吐量范圍內從收到包到轉發出該包的時間間隔。時延測試應當重復20次然后取其平均值。(3)丟包率:測試路由器在不同負荷下丟棄包占收到包的比例。不同負荷通常指從吞吐量測試到線速(線路上傳輸包的最高速率),步長一般使用線速的10%。(4)背靠背幀數:測試路由器在接收到以最小包間隔傳輸時不丟包條件下所能處理的最大包數。該測試實際考驗路由器緩存能力,如果路由器具備線速能力(吞吐量=接口媒體線速),則該測試沒有意義。(5)系統恢復時間:測試路由器在過載后恢復正常工作的時間。測試方法可以采用向路由器端口發送吞吐量110%和線速間的較小值,持續60秒后將速率下降到50%的時刻到最后一個丟包的時間間隔。如果路由器具備線速能力,則該測試沒有意義。(6)系統復位:測試路由器從軟件復位或關電重啟到正常工作的時間間隔。正常工作指能以吞吐量轉發數據。
在測試上述RFC2544中規定的指標時應當考慮下列因素。
幀格式:建議按照RFC2544所規定的幀格式測試;幀長:從最小幀長到MTU順序遞增,例如在以太網上采用64, 128, 256, 512, 1024, 1280, 1518字節;認證接收幀:排除收到的非測試幀,例如控制幀、路由更新幀等;廣播幀:驗證廣播幀對路由器性能的影響,上述測試后在測試幀中夾雜1%廣播幀再測試;管理幀:驗證管理幀對路由器性能的影響,上述測試后在測試幀中夾雜每秒一個管理幀再測試;路由更新:路由更新即下一跳端口改變對性能的影響;過濾器:在設置過濾器條件下對路由器性能的影響,建議設置25個過濾條件測試;協議地址:測試路由器收到隨機處于256個網絡中的地址時對性能的影響;雙向流量:測試路由器端口雙向收發數據對性能的影響;多端口測試:考慮流量全連接分布或非全連接分布對性能的影響;多協議測試:考慮路由器同時處理多種協議對性能的影響;混合包長:除測試所建議的遞增包長外,檢查混合包長對路由器性能的影響,RFC2544除要求包含所有測試包長外沒有對混合包長中各包長所占比例作規定。筆者建議按照實際網絡中各包長的分布測試,例如在沒有特殊應用要求時以太網接口上可采用60字節包50%,128字節包10%,256字節包15%,512字節包10%,1500字節包15%。除上述RFC2544建議的測試項外還建議測試如下內容。
①路由震蕩:路由震蕩對路由器轉發能力的影響。路由震蕩程度即每秒更新路由的數量可以依據網絡條件而定。路由更新協議可采用BGP。②路由表容量:測試路由表大小。骨干網路由器通常運行BGP,路由表包含全球路由。一般來說要求超過10萬條路由,建議通過采用BGP輸入導出路由計數來測試。③時鐘同步:在包含相應端口例如POS口的路由器上測試內鐘精度以及同步能力。④協議收斂時間:測試路由變化通知到全網所用時間。該指標雖然與路由器單機性能有關,但是一般只能在網絡上測試,而且會因配置改變而變化。可以在網絡配置完成后通過檢查該指標來衡量全網性能。測試時間應當根據具體項目以及測試目標而定。一般認為測試時間應當介于60秒到300秒之間。另外一般可以根據用戶要求和測試目標作設定選擇。路由器性能測試一般可采用遠端測試法。 (三)一致性測試
路由器一致性測試通常采用“黑箱”方法,被測試設備IUT叫做“黑箱”。測試系統通過控制觀察點PCO與被測試設備接口。
不同的測試事件是通過不同的PCO來控制和觀察的,按照其應答是否遵守規范,即定時關系和數據匹配限制,測試的結果可分為通過、失敗、無結果3種。路由器是一種復雜的網絡互連設備,需要在各個通信層上實現多種協議。例如相應的接口的物理層和鏈路層協議、IP/ICMP等互聯網層協議、TCP/UDP等傳輸層協議、Telnet/SNMP等應用層協議以及RIP/OSPF/BGP等路由協議。
協議一致性測試應當包含路由器所實現的所有協議。由于該測試內容繁多測試復雜,在測試中可以選擇重要的協議以及所關心的內容測試。由于骨干網上路有器可能影響全球路由,所以在路由器測試中應特別重視路由協議一致性測試例如OSPF和BGP協議。由于一致性測試只能選擇有限測試例測試,一般無法涵蓋協議所有內容。所以即使通過測試也無法保證設備完全實現協議所有內容,所以最好的辦法是在現實環境中試運行。路由器一致性測試一般采用分布式測試法或遠端測試法。 |