寬帶路由器的參數認識
寬帶路由器還是比較常用的,于是我研究了一下寬帶路由器的各種參數,在這里拿出來和大家分享一下,希望對大家有用。Throughput(吞吐量)表示的是路由器每秒能處理的數據量。打個形象的比方,路由器的工作過程很像郵局包裹業務,郵局寄包裹是大家把物品、寄件人、收件人等信息交給郵局,郵局把物品包好,并貼上格式化的包裹單,檢查無誤后投遞到目的地,收包裹是相反過程。
路由器基本一樣,只不過收發的東西是數據而已。Throughput就相當于郵局單位時間里的包裹處理能力,是路由器性能的直觀反映。但同時,這個數據后面隱藏的名堂也是最多的。首先應該說明路由器的Throughput,一定是LAN-to-WAN的Throughput,數據流出或流入局域網才需要路由器處理,才能代表路由器性能。
而不是LAN-to-LAN,這代表的是路由器內部小交換機性能,一點意義都沒有。這就像郵局單位時間里的包裹處理能力,一定指的是運出和運進郵局的包裹量,而不是從郵局一個房間搬到另一個房間的包裹量。
其次,路由器Throughput,應該是在NAT(網絡地址轉換)開啟、防火墻關閉的情況下得出的測試數據。這是因為NAT是寬帶路由器最基本、最核心的功能,不開啟NAT就不成其為寬帶路由器了,而且軟件設計的好壞直接影響到NAT效率和路由器性能,所以NAT開啟的Throughput才是有意義的。而防火墻,應該算做寬帶路由器附帶的高級功能,有的產品防火墻規則很多很復雜,能過濾很多東西,有的產品規則就又少又簡單。規則多、復雜的,CPU用來過濾數據的時間就長,規則少、簡單的,過濾數據的時間就短,這對Throughput測試數據影響還是挺大的。為公平起見,在測試路由器Throughput時,特別是在不同產品性能比較時,把防火墻關閉是合理的。防火墻的評判,一般放在功能里比較而不是性能比較。
常見Throughput測試方法有兩種,一是Smartbits測試,一是Chariot測試。Smartbits測試是使用全球最權威的網絡設備測試儀Smartbits2000或6000,配以專業的測試軟件SmartApplication,用連續不斷的UDP包,來測出對不同大小的數據包,路由器每秒能處理的包數量。路由器在處理數據包時,主要的時間花在處理包頭、包尾上,對不同大小的數據包,路由器每秒能處理的包數量差別不會太大。這就像郵局處理包裹,主要的時間是花在處理寄件人、收件人和物品信息以及檢查上,包裹重一點輕一點對處理速度影響不會太大。如128Byte包每秒能處理10000個,并不能做到64 Byte包每秒處理20000個,而是只比10000個略多一點點,比如10100個。例如:有些說法認為路由器在處理最大的1518Byte包時每秒8000個(理論上處理1518Byte包達到100M線速的極限值是每秒8127個),折算出Throughput是100M*8000/8127=98.44M,于是稱該路由器Throughput高達98.44M;而實際上這個路由器在處理最小的64Byte包時每秒是11000個(理論上的極限值是每秒148810個),折算只有100M*11000/148810=7.39M,兩者相差13倍多!同樣,說路由器的“Throughput高達97M”,也很可能是1518Byte包達到97M,而處理64Byte的包卻很可能只有7.39M!
更為重要的是,小包轉發的處理能力才能真正體現路由器的Throughput能力!目前市場上大多數的主流路由器處理512、1024和1518Byte這樣的大包,Throughput大都能近似線速(當然,也有一些雜牌路由器大包轉發能力都不行),而測試256、128和64Byte等小包的時候,性能差異立即體現。而大多數路由器的實際應用里小包轉發能力十分關鍵,比如網吧里經常玩游戲,每操作一個游戲指令,每扣動一個扳機,轉發的全部是小包,如果路由器處理小包的能力不夠強,就很難應付游戲的大量小包轉發需求,游戲玩起來就很不順暢。所以NAT開啟64 Byte小包的LAN-to-WAN 的Throughput才真正具有評價意義。
另外,以目前寬帶路由器普遍所采用的硬件來看,基本上都不足以達到64Byte小包Throughput線速,因此有些產品宣稱可以達到線速,可能是采用了所謂的NAT硬件加速技術,Throughput是很好看,但代價是所有數據都不通過CPU,無法做數據過濾,防火墻不起作用,路由器沒有任何管理功能。這就像郵局根本不檢查郵包里是什么東西,有沒有易燃易爆物品,地址是不是火星,收件人是不是本·拉登,照單全發。
Chariot測試則是用兩臺服務器,安裝NETIQ公司的軟件Chariot,一臺接路由器WAN口,一臺接LAN口,通過統計一個預定長度和格式的腳本文件無差錯地從一臺服務器傳送到另一臺服務器的時間來計算出路由器的Throughput。這里面學問就大了,一是與服務器性能有關,不誠實的廠家在測試自家的產品時用高性能的服務器,而測試別人的產品時用低性能的服務器,故意貶低數據。二是建立連接數,建立的連接數越多,對路由器軟件的性能要求越高,軟件寫得差的,在連接數增加時,其Throughput會直線下降,甚至導致無法連接;而軟件寫得好的路由器則很平穩,甚至會隨連接數的增加反而略有上揚。
三是Chariot測試不象Smartbits測試那樣是測試UDP“包”,而是數據“流”,其數據封裝成多大TCP包和服務器操作系統相關,但一般都封裝為1518Byte大包,所以其測試數據會比用Smartbits測試64 Byte小包的數據好看很多倍,這一點很能迷惑人。四是Chriot測試Throughput結果是有效數據負載,不包括TCP協議損耗、幀間隔、應答和Chriot本身系統損耗,此部分典型損耗根據理論計算約6M,就是說即使你接的是一臺能線速轉發的交換機,不是路由器,測出來的Throughput也只可能是94M左右,這是理論極限值,因此如果宣稱某路由器產品Chriot測試Throughput達 97M、98M,那就毫無疑問是信口開河欺騙消費者了。
用戶進階:
Throughput是LAN-to-WAN的Throughput,一般應該是在NAT開啟,防火墻關閉的情況下得出的測試數據,而且有Smartbits測試和Chariot測試兩種方式,得出的結果可以很不相同。根據現在普遍的硬件能力,Smartbits大包測試數據大家都很容易達到線速,就像測試大學生的智力,題目是1+1=?,大家都能答上來,比不出高下。所以要做客觀的評估,題目應該出難一點,比較64Byte小包測試數據,高下立判。當然如果有NAT硬件加速要把它關掉再測試。
至于Chariot測試,應該是在同樣的測試環境和方法、同樣的連接數下進行比較才公平,而且在實際網絡應用中,幾乎不可能是單連接的,所以Chariot測試最好是在多連接下進行,一般可以選擇100對連接基本上就可以看出端倪了。總之,單獨的一個Throughput數據是毫無意義的,一定要說明這個數據是用什么方法測出來的才有用,相互性能的比較一定要在同樣的測試環境和方法下進行比較才公平和有意義。最好的方法是看Smartbits測試NAT開啟64 Byte小包的LAN-to-WAN Throughput。
更多路由器設置路由器產品請訪問http://m.1cnz.cn/zhuanti/20111208254803.html
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%
相關閱讀:
- [電子說] 寬帶路由器故障的解決辦法 2020-11-19
- [RF/無線] 無線寬帶路由器設置詳細講解 2012-05-03
- [傳輸網/接入網/交換網] 路由器,寬帶路由器 2010-04-03
- [RF/無線] 寬帶路由器的工作原理 2008-01-30
( 發表人:小蘭 )