qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          網絡測試工具Netperf安裝使用

           Netperf是一種網絡性能測試工具,主要針對據域TCP和UDP的傳輸。Netperf根據應用的不同可以進行不同模式的網絡性能測試,既批量數據傳輸模式(bulk data transfer)請求/應答模式(request/response)模式。Netperf測試結果所反映的是一個系統能夠以多快速度向另外一臺系統發送數據,以及另外一個系統能夠以多快速度接收數據。
            Netperf工具以client/server方式工作server端是netserver,用來偵聽來自client端的連接。client端是netperf,用來行server發起網絡測試。在client和server之間,首先建立一個控制連接,傳輸有關測試配置信息,以及測試結果;在控制連接建立并傳輸了測試配置信息以后,client與server之間回再建立一個測試連接,用來來回傳遞特殊的流量模式,以測試網絡的性能。
            1.下載
            下載地址:http://www.netperf.org/netperf/
            這個網站上有最新版本的下載連接和操作手冊
            例如下載的文件為:netperf-2.6.0.tar
            2.解壓
            $ tar -xvf netperf-2.6.0.tar
            3.安裝
            $ cd netperf-2.6.0
            $ ./configure
            $ make
            $ make install
            4.首先在服務器端運行
            $ netserver
            5.運行客戶端
            $ netperf -H host -l testlen -t  testname
            命令參數:
            -H host:  指定遠端運行netserver的server ip地址
            -l testlen: 指定測試的時間長度(秒)
            -t testname: 指定進行的測試類型,包括TCP_STREAM, UDP_STREAM, TCP_RR,UDP_RR, TCP_CRR
            6. 測試案例
            (1)服務器端執行:(ip: 10.10.11.208)
          [root@phpc1 netperf-2.6.0]# netserver
          Starting netserver with host 'IN(6)ADDR_ANY' port '12865' and family AF_UNSPEC
          [root@phpc1 netperf-2.6.0]#
            (2)客戶端運行
          [root@phpc2 netperf-2.6.0]# netperf -H 10.10.11.208 -l 60 -t TCP_STREAM
          MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 10.10.11.208 () port 0 AF_INET
          Recv   Send    Send
          Socket Socket  Message  Elapsed
          Size   Size    Size     Time     Throughput
          bytes  bytes   bytes    secs.    10^6bits/sec
          87380  16384  16384    60.03     [root@phpc2 netperf-2.6.0]# netperf -H 10.10.11.208 -l 60 -t TCP_STREAM
          MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 10.10.11.208 () port 0 AF_INET
          Recv   Send    Send
          Socket Socket  Message  Elapsed
          Size   Size    Size     Time     Throughput
          bytes  bytes   bytes    secs.    10^6bits/sec
          87380  16384  16384    60.03     937.04


           從netperf是輸出結果中我們可以知道以下信息:
            (a) 遠端系統(即server)使用大小為87380字節的socket接受緩沖區
            (b)本地系統(即client)使用大小為16384字節的socket發送緩沖區
            (c)向遠端系統發送的測試分組大小為16384字節
            (d)測試經歷的時間為60秒
            (e)吞吐量的測試結果為  937.04 *10^6bits/sec
            在缺省情況下,netperf向發送的測試分組大小為本地系統所使用的socket發送緩沖大小
            TCP_STREAM方式下與測試相關的局部參數如下所示:
           ?。璼 size:設置本地系統的socket發送與接收緩沖大小
           ?。璖 size:  設置遠端系統的socket發送與接收緩沖大小
           ?。璵 size: 設置本地系統發送測試分組的大小
           ?。璏 size:  設置遠端系統接收測試分組的大小
            -D: 對本地與遠端系統的socket設置TCP_NODELAY選項I/O測試。
            其他網絡性能測試工具如 dbs, iperf, pathrate, nettest, netlogger, tcptrace, ntop.
            7.網絡性能介紹
            (1)TCP網絡性能
            由于TCP協議能夠提供端到端的可靠傳輸,因此被大量的網絡應用程序使用。但是,可靠性的建立是要付出代價的。TCP協議保證可靠性的措施,如建立并維護連接,控制數據有序的傳輸等都會消耗一定的網絡帶寬。
            netperf可以模擬以下三種不同的tcp流量模式:
            (a)單個TCP連接,批量(bulk)傳輸大量數據。
            (b)單個TCP連接,client請求/server應答的方式
            (c)多個TCP連接,每個鏈接中一對請求/應答方式
            (2)UDP網絡性能
            UDP沒有建立連接的負擔,但是udp不能保證傳輸的可靠性,所以使用udp的應用需要自行跟蹤美國發出的分組,并重發丟失的分組,netperf可以模擬兩種udp流量模式:
            (a) 從client到server的單向批量傳輸
            (b)請求/應答方式
            由于udp傳輸的不可靠性,在使用netperf是需要確保發送的緩沖區大小不大于接收緩沖區大小,否則數據丟失,netperf將給出錯誤的結果。因此,對于接收到分組的統計不一定準確,需要結合發送分組的統計綜合得出結論。

          posted on 2013-10-29 10:52 順其自然EVO 閱讀(2000) 評論(0)  編輯  收藏 所屬分類: 性能測試 、web 前端性能測試

          <2013年10月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 鄂托克旗| 大悟县| 陵水| 明星| 泽州县| 萨嘎县| 安阳县| 莱阳市| 区。| 中阳县| 文水县| 贵溪市| 灵宝市| 英山县| 濮阳市| 宁乡县| 新安县| 广安市| 石门县| 吉安县| 宝丰县| 肃宁县| 独山县| 阳江市| 利川市| 淮南市| 乌鲁木齐县| 平度市| 哈密市| 鸡东县| 三原县| 河津市| 肇庆市| 肇源县| 沙洋县| 郁南县| 息烽县| 佛坪县| 灵台县| 沁源县| 建宁县|