24,416 瀏覽數

IxChariot

IxChariot (一) Performance Endpoints

IxChariot Performance Endpoints 是一套專門用來測試網路效能的程式,一般我們可以過 iperf : http://benjr.tw/462 來知道網路整體的吞吐量(Throughput),但是要看瞬間或是針對 TX / RX 來看效能時 iperf 就不適用了.所以先來看一下 IxChariot Performance Endpoints 主要的程式分為兩個,1.就是 Endpoint (主要在執行網路傳輸的程式) , 和 2.console(只負責將結果整合報告出來)
我們先來看看 Endpoint ,Endpoint 可以使用在很多平台不管是 Windows / Linux / Mac / Solaris ..
下載點為 : http://www.ixiacom.com/support/endpoint_library/
這邊只作 Linux 的示範.目前我的環境為 RHEL5 64bits 的作業系統.檔案有兩種 .tar 和 .rpm 直接使用 rpm 的會比較方便.

endpoint01

[root@benjr ~]# rpm -ivh pelinux_amd64_670.rpm
[root@benjr ~]# /usr/local/Ixia/endpoint &

執行完 endpoint 的程式工作就告一段落了,接下來就是 console 端設定的工作.幾點事情要注意就是 firewall (iptables) 不要開啟.待測的 endpoint 可以為任何作業系統.
console 只能為 windows.

Endpoint 官方的說明文件
http://www.ixiacom.com/endpoint_library/6.70/chariotperformanceendpoints.pdf

IxChariot (二) Performance console

IxChariot Performance console 端就不是免費了需要 $$ 但是你可下載免費試用10天,下面是下載點,需要填寫資料. http://www.ixchariot.com/evaluation.html
目前網站是最新的已經到 6.X 版本,不過我我還是使用 5.X 的版本作為示範.其實程式下載來之後就可以安裝在 All Programes / Ixchariot / Ixchariot Console 執行程式就可以的.重點是看一下如何設定:再未開始跑主程式有些預設選項要修改是必須的.在 Run / Set Run Options / Run Options 可以看到.
1.How to end a test run :預設是當 endpoint 有問題發生時才會中斷測試,要不然會繼續執行下去.不過我這邊的測試重點是效能 Performance 當然如果是要看網路品質 Quality 那就使用預設值即可.通常不用太長時間一分鐘也就可以了.
2.勾選 "collect endpoint CPU utilization" :會去收集 endpoing 的 CPU 使用率,好處是可以讓我們看到endpoint 端是否因為網路傳送的瓶頸是 CPU 而不是網路頻寬.
ixchariot01
IxChariot 可以測試範圍包括單向的(RX,TX)或是同時雙向(RX,TX),方式後面會一一介紹.

我的測試環境如下:
ixchariot02
主要測試的是三台 Linux(IP:192.8.1.249 , 192.8.1.116 ,192.8.1.189) ,其中的  Linux(IP:192.8.1.249) 是主要被測試機台. Windows (IP:192.8.1.54) 只要是當作 console .

在這邊所有的範例大多是 1 對 2 的效能測試,雖然可以測試但是這樣通常不會逼出最佳的效能值,如果要達到網路的最佳效能.可能還需要做到 1 對 5 或是 1 對 10 的測試環境.

IxChariot (三) TX RX

TX(uni-direction):
基本上 Linux 安裝完 endpoint 就算完成了,我先跑單向(TX:Transfer)很簡單只要指定誰向誰傳送 IP:192.8.1.249 -> 192.8.1.116 , 192.8.1.189

Pair comment : 就隨便取個你記得住的名稱或是一看就知道跑怎麼樣的測試的名稱.
Endpoint 1 to Endpoint 2 : 這邊概念很簡單就是 Endpoint 1 會向 Endpoint 2 傳送資料.如果待測主機是 Endpoint 1 (IP :192.8.1.249) 那我們就是要測試 TX. 反過來就是 RX.
Endpoint 1 network address : 192.8.1.249
Endpoint 2 network address : 192.8.1.116
ixchariot03
Selected Script: Ixchariot 準備了很多的 script 給我們選擇,因為是要跑出最佳效能所以選擇了  High _Performance_Throughput.scr 這個 script.

這樣還沒結束主要我們使用 1 對 2 的方式測試,剛剛設定第一對,接下來使用 tool bar 上的 copy / paste 再修改 Endpoint 2 network address : 192.8.1.189
ixchariot04
OK!!前置工作完成,選擇ixchariot06 Run 就會開始進行 TX 的測試.結果是即時回應的所以你可以立刻看到目前所有的結果.
ixchariot05

RX(uni-direction):
在 tool bar 上面有一個選項是 ixchariot08Swap Endpoints" 可以很輕易的將測試 TX 變成 RX.可以很清楚看到測試方向180度改變.IP:192.8.1.116 , 192.8.1.189 -> 192.8.1.249

ixchariot07

TX+RX(Bi-direction)
要同是跑 TX+RX 就是把剛剛所有的 TX 和 RX 加在一起跑,方式一樣使用 tool bar 上的 copy / paste 再 Swap Endpoints 產生4個 pair.

ixchariot09

IxChariot (四) Performance report

辛辛苦苦跑完了,當然要一個報告,在 File / Export / 報告方式有三種 HTML / Text / CSV 不過建議還是使用 HTML 的格式.
report01
Export 匯出後就可以透過 IE 或是 firefox 來檢視網路卡效能是否有符合規格所說的.

38 個網友的想法 “IxChariot

  1. Hi 版主你好,我是只有二台電腦用對接,一台裝console 6.7 和 endpoint pevista64_730, 另一台只有裝endpoint pevista64_730, win 7 OS都是64位元;有時可以跑,但有時會出現CHR0245, CHR0200; 這也都是console和endpoint版本不合嗎??

  2. 自動參照通知: 500Mb寬頻測速得200Mbps?如何正確測測試網路速度和Router路由設備性能 | by Upsangel

  3. 自動參照通知: Network Performance Test | Benjr.tw

    • 我後來很少使用 IxChariot,都是透過 iperf 或是 qperf 簡單測試網路速度.

      試過 Intel 的 82599 速度大約落在 9.3 ~9.4Gb

      Server command

      # iperf -s -w 2M -l 64k
      

      Client command

      # iperf -c Server_IP - t 600 -i 10 -w 2M -l 64K -P4
      

      iperf 使用請參考 http://benjr.tw/462

      • CPU core 運算弱時,最好用多點traffic。像port啦……我是這樣用:

        Host Tx> iperf –c xxx.xxx.xxx.xxx(ip of receiver) –i 5 –w 64K –l 64K –P 8 –t 20
        Server (sender,Tx送端)的規格要在講究點比較安全。

        Host Rx> iperf –s
        iperf -s -B xxx.xxx.xxx.xxx (ip address of the 1st NIC) -p 8 ; Client Rx 端都用default 就行。不過還要在視著微調看看。
        –i 5    ; report display period in unit sec
        –w 64K ; TCP window size at unit=kB, by default 8kB.
        –l 64K ; traffic payload buffer at unit=kB.  
        –P 8    ; port# for payload transmitting and receiving.
        –t 20   ; Testing duration y default 10 sec.
        -B    ; Bound at dedicate ip address or port#

  4. ThreadX 有Endpoint可以裝嗎??
    請教大大,有在printer上使用Endpoint嗎?
    Platform是Conexant/Zoran,OS是ThreadX.

  5. 請問RX測試
    你好
    請問我做Tx測試(endpoint1->endpoint2)是正常的
    可跑出正確的throughput
    但按Swap Endpoints改成Rx
    則無法測試, 出現CHRXXXX錯誤訊息
    但再改回Tx就ok
    請問這是什麼問題
    謝謝

  6. 請問大大,我的endpoint如何裝在embedded linux上?
    敢問大大:
    我有塊待測的平台(embedded linux, kernel 2.6),不是ARM也不是X86,我從Ixchariot網站下載(Embedded endpoint)直接在板子上run,結果出現…

    # ./endpoint
    ./endpoint: line 1: syntax error: unexpected word (expecting “)")

    我是在這裡抓 http://www.ixiacom.com/support/endpoint_library/embedded_endpoints

    出現這error的訊息,應該是代表它無法適用在我的CPU架構,所以我要去哪抓source code重新compiler?

    感謝大大!這困擾我一陣子了,希望有所方向,感恩!

    • IxChariot 只支援下列的平台
      Platform Endpoints

      Linux for Itanium (IA64)
      Linux x86 / 32-Bit (i386)
      Linux x86 / 64-Bit (x86_64)
      Embedded Endpoints

      iPhone 2.2.1 / 3.0
      Android 2.1
      Symbian
      Linux / ARM
      Linux / PPC 4xx
      Linux / PPC 6xx
      如果你只要要測試網路頻寬建議使用 iperf – http://sourceforge.net/projects/iperf

  7. 請問,IPv6要怎麼設定呢?
    我修改Endpoint 1 and 2 network address都沒有用@~@
    都跑出CHR0144的錯誤訊息
    但是IPv6的兩個IP我確定是ok的(可以互相ping到,沒問題)

  8. 該軟體有無封包大小功能測試
    不知這個測試軟體預設送出的封包大小是 ?
    可不可以調整送出的封包大小呢? 因封包大小的不同,應該也會影響測試數據。

  9. 錯誤訊息產生
    報告大大,Ixchariot 5.4 裝好後,endpoint 也都就緒,但測試時發生的錯誤訊息, 跟之前樓下網友所遭遇的狀況一模一樣,我懷疑是 endpoint 版本太新的問題。 我使用 qcheck 測試是 ok 的,但換成 Ixchariot 5.4 就掛點。 想在網路上找 endpoint 比較舊的版本,但找不到,所以能不能請大大寄給我 目前您正在使用的 endpoint 軟體?

    • CHR0124: Partner program sent data that could not be successfully parsed. 是 console 和 endpoint 版本不相容所致.

      • 搞定了,將 endpoint 版本降為 5.1 之後,即可正常運行。
        另外常聽說 IxChariot 可於 endpoint1 及 endpoint2 之間模擬多連結測試,不曉得是要在哪作設定,5.4版有支援嗎?

  10. 大大能不能拜託你一件事,給我Ixchariot 軟體及試用序號,甚麼版本都可以。 幾天前我到官網註冊下載 Ixchariot 最新版,也安裝上去了,然而卻因沒序號而無法使用, Ixchariot台灣代理商有打電話跟我聯絡,聯絡完後也沒寄試用序號過來,我感覺他們說的試用十天, 應該是針對公司行號,個人的話,聽它們口氣好像不太願意給。 最近忙著寫論文,急需該軟體測試,不知大大能否幫一下忙呢?

  11. 防火牆效能測試問題
    1.如果endpoint1為host1,endpoint2為host2,那所測得的TX是指從host2到host1的傳輸速度對嗎?
    2.一般所謂的throughput 是指哪方面的處理能力呢?因我不太懂這個單字的真正含意。
    2.如果主機上有大量的iptables規則,我想測試封包通過這台主機的效能,比如原本100條規則,現在簡化成60條,
    我想測試規則變動後,封包通過防火牆速度的效能有無提昇,那像這個樣子,適合使用IxChariot軟體測試嗎 ?
    有其他這方面的軟體可用嗎?

    不好意思問那麼多,因最近正好做這方面研究,謝謝。

    • 1.如果endpoint1為host1,endpoint2
      1.如果endpoint1為host1,endpoint2為host2,那所測得的TX是指從host2到host1的傳輸速度對嗎?
      A:Endpoint 1 會向 Endpoint 2 傳送資料,如果待測主機是 Endpoint 1 那我們就是要測試 Endpoint 1 的 TX 傳輸 (TX:Transfer)

      2.一般所謂的throughput 是指哪方面的處理能力呢?因我不太懂這個單字的真正含意。
      A:IxChariot 主要測試的是網路效能,所以這邊所提到的 Throughput 指的是網路的吞吐量.

      3.如果主機上有大量的iptables規則,我想測試封包通過這台主機的效能,比如原本100條規則,現在簡化成60條,
      我想測試規則變動後,封包通過防火牆速度的效能有無提昇,那像這個樣子,適合使用IxChariot軟體測試嗎 ?
      有其他這方面的軟體可用嗎?
      A:有沒有 iptables 應該不會影響到網卡效能,會影響的是 CPU 的使用率,如果 CPU 來不及處理這些封包效能就會連帶影響了.

      在使用 IxChariot 時勾選 “collect endpoint CPU utilization" 可以順便收集 endpoing 的 CPU 使用率,可以讓我們看到endpoint 端是否因為網路傳送的瓶頸是 CPU 而不是網路頻寬.
      如果你有硬體的測試設備如 smartbits 是比較適合用來測試 iptables 的.

      • 我懂了,如果測試是HOST1->HOST2的TX,那對HOST1而言就是TX,如對HOST2而言為RX。
        另外請教大大,我查過smartbit這台機器的價格不斐,不曉得有無類似這類機器的軟體可以替代?
        通常會有這種測試機器的都是甚麼機構呢?謝謝。

        • 目前做網通的公司大部分都會使用 smartbits 來做驗證,我常用的也只有 IxChariot 和 iperf.他們主要都是針對效能的.

  12. 我有IxChariot 上的問題
    您好,我照著你的設定做,但是都會出現 chr0124 的錯誤,請問這可能是哪裡設定有問題呢

    我用的是XP版本的

    謝謝

      • 我是在console端執行run的時候會顯示這個訊息
        所以這是屬於console端的錯誤嗎?

        不好意思 我之前沒有用過這套軟體

        很感謝您的耐心答覆

    • CHR0124: Partner program sent data that could not be successfully parsed. 是 console 和 endpoint 版本不相容所致.

  13. 可以测试10g 网口的吞吐量吗?
    设置包的大小貌似最大1g。

    测试10g的方法如何?

  14. 自動參照通知: 網路效能測試工具 “iperf" | Benjr.tw

  15. 自動參照通知: 常用的 Performance / Monitor 測試工具 | Benjr.tw

發表迴響