[[labs.beatcraft.com]]~ [[bc10-router]]~ *bc10-routerのネットワークパフォーマンス [#o82d89ce] arago project の arago-console-image をベースにして、~ bc10 を市販の家庭用ブロードバンドルーターと同様の無線LAN AP機能を持つルーターに設定した場合の~ ネットワークパフォーマンスを測定しました。 **ネットワーク構成、機器接続構成 [#q6eca0a3] +--------------------------------------+ | | 無線LAN +--------+ | +-----------+ = = = = = = = = = + PC 2 + | +---USB---------+ USB Wi-Fi | +--------+ | | +-----------+ = 192.168.30.75 | | wlan0 = | | 192.168.30.1 = +--------+ | | | = | DNS | 有線LAN +-----------+ +----+----+ +--------+ | = THE INTERNET----+ DHCP +---+----------+ USB-ether +-USB-+ USB Hub +-USB-+ bc10 | | = | server | | +-----------+ +---------+ +--------+ | = +--------+ | eth0 | +--------+ | 192.168.0.138 | + PC 3 | | | | +--------+ | | bc10-router | 192.168.30.74 | +--------------------------------------+ | +--------+ +--+ PC 1 | +--------+ 192.168.0.121 WAN側 Network LAN側 Network 192.168.0.0 192.168.30.0 **測定ツール[#r84389a7] 測定に使用したアプリケーションは以下のものです。 ***iperf [#p7321435] http://iperf.sourceforge.net/~ The National Laboratory for Applied Network Research(NLANR).Distributed Applications Support Team(DAST).~ (すでにこの組織/Projectは終了し現在は存在しません。)~ で開発され、オープンソース・ソフトウェアとしてメンテナンスが続けられているネットワークスループット測定ツールです。~ サーバ機能とクライアント機能を持ち、同じコマンドをネットワークの各終端でサーバとクライアントとして動作させて~ 2終端間のスループットを測定することができます。~ -コマンド実行例~ サーバ側~ # iperf -s ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local 192.168.0.121 port 5001 connected with 192.168.0.138 port 57944 [ ID] Interval Transfer Bandwidth [ 4] 0.0-10.1 sec 113 MBytes 93.9 Mbits/sec 実行するとクライアントからの通信を待ち受け、通信を受けると測定結果を表示します。~ default では TCP port5001 を待ち受けます。~ ~ クライアント側~ # iperf -c 192.168.0.121 ------------------------------------------------------------ Client connecting to 192.168.0.121, TCP port 5001 TCP window size: 20.7 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.0.138 port 57944 connected with 192.168.0.121 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 113 MBytes 94.4 Mbits/sec 指定したサーバ側に向けて10秒間にどれだけのデータを送ることができたかでスループットを計測します。 ***nuttcp [#l61d18d2] http://www.nuttcp.net/nuttcp/Welcome%20Page.html~ ttcpを改良したnttcpを元に開発されたネットワークパフォーマンス測定ツールです。~ iperfと同様、同じnuttcpコマンドを一方のPCではサーバとして実行し、~ もう一方のPCからサーバの待ち受けしているPCへ通信を行いベンチマークを測定します。~ -コマンド実行例~ サーバ側~ # nuttcp -S クライアント側~ 以下の実行例では -i で1秒ごとに状況を表示させています。 # nuttcp -i1 192.168.30.1 3.4375 MB / 1.00 sec = 28.8239 Mbps 0 retrans 4.2500 MB / 1.00 sec = 35.6477 Mbps 0 retrans 4.4375 MB / 1.00 sec = 37.2260 Mbps 0 retrans 4.0000 MB / 1.00 sec = 33.5599 Mbps 0 retrans 4.1875 MB / 1.00 sec = 35.1245 Mbps 0 retrans 4.6250 MB / 1.00 sec = 38.7930 Mbps 0 retrans 5.0625 MB / 1.00 sec = 42.4717 Mbps 0 retrans 4.7500 MB / 1.00 sec = 39.8342 Mbps 0 retrans 4.8750 MB / 1.00 sec = 40.8950 Mbps 0 retrans 4.9375 MB / 1.00 sec = 41.4344 Mbps 0 retrans 44.8750 MB / 10.07 sec = 37.3973 Mbps 3 %TX 18 %RX 0 retrans 2.07 msRTT 10.07秒で44.8750MBのデータを送信しているので37.3973Mbpsの速度が出ています。~ TXはクライアント側のCPU使用率、~ RXはサーバ側のCPU使用率、~ retransはTCP再送パケット数~ msRTTは往復遅延時間(RoundTripTime/micro second単位)~ です。 **測定機器 [#u5d51205] スループットの測定では測定ツールを動作させるマシンの処理能力が影響するため、~ テストに使用する機器のスペック、処理能力を以下に挙げます。 -bc10-router~ bc10~ Processor : ARMv7 Processor rev 3 (v7l) (OMAP3530 600MHz)~ BogoMIPS : 585.04~ ~ USBセルフパワードHUB~ WAN側インタフェース:USB-Ethernetアダプター バッファロー LUA3-U2-ATX(ASIX AX88772)~ LAN側インタフェース(アクセスポイント):USB Wi-Fi アダプター バッファロー WLI-UG-G301N(Ralink 2870USB)~ ~ -PC1~ model name : Intel(R) Atom(TM) CPU N280 @ 1.66GHz~ cpu MHz : 800.000~ bogomips : 3324.89~ ~ ネットワークインタフェース:Atheros Communications Inc. AR8132 Fast Ethernet -PC2~ model name : Intel(R) Atom(TM) CPU N270   @ 1.60GHz~ cpu MHz : 800.000~ bogomips : 3191.84~ ~ ネットワークインタフェース:USB Wi-Fi アダプター LAN-W150N/U2IPH(Ralink 2870USB) **測定手順 [#x7228df1] ルーターとしてのパフォーマンスを測定するためには、上記ネットワーク構成図の~ bc10-router を挟んだ WAN側 PC1 と LAN側 PC2 の間で測定ツールを動作させ、~ スループットを測定する必要があります。~ ~ また、ルーターとしてのパフォーマンス上~ ネットワークの経路のどの部分がボトルネックになっているかを調べるため、~ ・WAN側インタフェース間 PC1 --- bc10-router eth0~ ・LAN側インタフェース間 bc10-router wlan0 --- PC2~ のスループットも測定します。~ **測定結果 [#kc9cb437] 測定は~ WAN側:サーバ動作~ LAN側:クライアント動作~ で行い、10回試行した平均求めています。~ iperf はクライアント側で表示された計測値を使用しています。~ ***PC1---bc10-router eth0間 [#l7c00ebf] -iperfによる測定~ PC1 iperf -s~ bc10-router iperf -c 192.168.0.121~ | 回| 1| 2| 3| 4| 5| 6| 7| 8| 9| 10|Avg.|h |Mbps|94.3|94.4|94.3|94.4|94.5|94.5|94.5|94.4|94.5|94.5|94.4| ~ -nuttcpによる測定~ PC1 nuttcp -S~ bc10-router nuttcp 192.168.0.121~ |回 | 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| Avg.|h |Mbps |93.8193|93.8823|93.8867|93.8905|93.8875|93.8842|93.8800|93.8964|93.8765|93.8819|93.8785| |%TX |51 |50 |50 |50 |50 |50 |49 |50 |50 |49 |49.9 | |%RX |23 |23 |23 |23 |23 |23 |23 |23 |23 |23 |23 | |retrans|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | |msRTT |0.73 |0.85 |1.17 |0.92 |0.89 |0.89 |0.89 |1.04 |0.85 |1.37 |0.96 | ~ 有線接続のため変動はほとんどなく、100Mの性能上限までスループットが出ています。 ***bc10-router wlan0---PC2間 [#yb827a50] -iperfによる測定~ bc10-router iperf -s~ PC2 iperf -c 192.168.30.1~ | 回| 1| 2| 3| 4| 5| 6| 7| 8| 9| 10|Avg.|h |Mbps|25.9|23.9|18.5|18.8|20.1|18.2|20.0|19.2|18.4|21.3|20.4| ~ -nuttcpによる測定~ bc10-router nuttcp -S~ PC2 nuttcp 192.168.30.1~ |回 | 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| Avg.|h |Mbps |18.8347|17.9976|19.0259|19.7316|18.6814|19.8820|20.3099|20.0888|18.5085|21.3733|19.4434| |%TX |1 |1 |1 |1 |1 |1 |1 |1 |1 |1 |1 | |%RX |10 |9 |10 |10 |10 |10 |10 |10 |10 |11 |10 | |retrans|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | |msRTT |2.62 |1.48 |1.65 |1.83 |1.73 |1.75 |1.64 |5.18 |1.68 |1.47 |2.10 | ~ bc10-routerのAPは11nで設定してあり、クライアントのPC2もワンストリームの11nで接続していますが~ 11gの最高実効性能を少し上回る程度のスループットしか出ていません。~ 無銭ルーターとしてはこの通信区間が速度のボトルネックになっています。~ ~ ***PC1---(bc10-router)---PC2間 [#wefaac03] -iperfによる測定~ PC1 iperf -s~ PC2 iperf -c 192.168.0.121~ | 回| 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| Avg.|h |Mbps|25.1|23.1|25.6|22.8|22.2|22.7|19.5|19.0|17.8|20.7|21.85| ~ -nuttcpによる測定~ PC1 nuttcp -S~ PC2 nuttcp 192.168.0.121~ |回 | 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| Avg.|h |Mbps |26.7209|21.7524|23.4219|23.3507|22.5851|21.9455|19.2291|20.6303|19.0659|19.6408|21.8342| |%TX |1 |1 |1 |1 |1 |1 |1 |1 |1 |1 |1 | |%RX |8 |7 |7 |7 |7 |7 |6 |6 |6 |6 |6.7 | |retrans|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | |msRTT |1.80 |1.79 |1.71 |2.02 |2.16 |4.13 |1.77 |1.80 |1.93 |2.21 |2.13 | ~ 測定ツールのサーバ側、クライアント側ともCPU処理性能がbc10を上回るPCで動作させて測定しているため、~ bc10-router wlan0--PC2間よりスループットが上回っています。~ AP-PC2間が無線LANのため周囲の電波状況によりやや大きな変動がありますが、22Mbps前後のスループットが出ています。~