みなさん、こんにちは
AWSチームの宮澤です。
AWSチームの宮澤です。
今回、社内にYAMAHAの新型ルータRTX810がついに導入されましたので、以前利用していたRTX1500と比較検証を行いたいと思います。
今回の検証はAmazon VPCとのVPN速度測定を行い、その比較をしたいと思います。
今回の検証はAmazon VPCとのVPN速度測定を行い、その比較をしたいと思います。
1.目的
では、改めて目的です。
先ほども書きましたが、社内にYAMAHAの新しいルータRTX810が登場しました。そこで、交換前の機種であるRTX1500との機能を比較したいと思います。
YAMAHAの情報によると、Gigabitに対応、さらにVPNのスループットが最大200Mbpsに強化されているとのことでした。
そのため、今回はVPNの速度の比較として、VPCインスタンスとのスループットを比較し、どの程度差が現れるのかを確かめたいと思います。
先ほども書きましたが、社内にYAMAHAの新しいルータRTX810が登場しました。そこで、交換前の機種であるRTX1500との機能を比較したいと思います。
YAMAHAの情報によると、Gigabitに対応、さらにVPNのスループットが最大200Mbpsに強化されているとのことでした。
そのため、今回はVPNの速度の比較として、VPCインスタンスとのスループットを比較し、どの程度差が現れるのかを確かめたいと思います。
2.使用機材
3.環境設定
- VPCを準備する
- YAMAHAルータの設定
- iperfのインストール
- iperfの使い方
今回の比較検証では以下の図のような構成でVPCを構築します。
以下の構成は最もオーソドックスな構成で、会社(データセンター)とAWSをIPSecVPNで接続するという構成です。
以下の構成は最もオーソドックスな構成で、会社(データセンター)とAWSをIPSecVPNで接続するという構成です。
YAMAHAルータの設定はYAMAHAの公式ページのAmazon VPC 設定例を参考にして設定を行います。
VPC(IPSec)を設定する場合は、Pingに以下のオプションを用いてMTU、MSSのサイズを調査し、設定を行います。
VPC(IPSec)を設定する場合は、Pingに以下のオプションを用いてMTU、MSSのサイズを調査し、設定を行います。
オプション名 | 説明 |
---|---|
-f | IPフラグメントを禁止する |
-l | パケットのデータサイズを指定する(デフォルトは32byte) |
-n | 指定した秒数ごとに結果を表示する |
以下の実行結果では1333バイトのデータは送れないが、1332バイトのデータが送れるということがわかりました。
ちなみに、MTUとMSSは以下のような関係となっています。
MTU=Pingで分かったbyte数+IPヘッダ(20byte)+ICMPヘッダ(8byte) MSS=MTU-TCP/IPヘッダ(40byte)
そのため、今回のMSSは"1320"となるので、VPCのTunelの設定は"ip tunnel tcp mss limit 1320"と設定します。
以下に今回使用したルータの設定内容を記述します。
YAMAHAルータの設定内容
以下に今回使用したルータの設定内容を記述します。
#PPPoEの設定 ip route default gateway pp 1 ip lan1 address 192.168.44.254/24 pp select 1 pp always-on on pppoe use lan2 pppoe auto connect on pp auth accept pap chap pp auth myname xxxxx@yyy.zz.jp ******** ppp lcp mru on 1454 ppp ipcp ipaddress on ppp ipcp msext on ppp ccp type none ip pp nat descriptor 1 pp enable 1
#1つ目のIPSecのトンネル設定 tunnel select 1 ipsec tunnel 201 ipsec sa policy 201 1 esp aes-cbc sha-hmac ipsec ike duration ipsec-sa 1 3600 ipsec ike encryption 1 aes-cbc ipsec ike group 1 modp1024 ipsec ike hash 1 sha ipsec ike keepalive use 1 on dpd 10 3 ipsec ike local address 1 192.168.44.254 ipsec ike pfs 1 on ipsec ike pre-shared-key 1 text ********** ipsec ike remote address 1 27.0.1.16 ipsec tunnel outer df-bit clear ip tunnel address 169.254.252.18/30 ip tunnel remote address 169.254.252.17 ip tunnel tcp mss limit 1320 tunnel enable 1
#2つ目のIPSecトンネルの設定 tunnel select 2 ipsec tunnel 202 ipsec sa policy 202 2 esp aes-cbc sha-hmac ipsec ike duration ipsec-sa 2 3600 ipsec ike encryption 2 aes-cbc ipsec ike group 2 modp1024 ipsec ike hash 2 sha ipsec ike keepalive use 2 on dpd 10 3 ipsec ike local address 2 192.168.44.254 ipsec ike pfs 2 on ipsec ike pre-shared-key 2 text ********** ipsec ike remote address 2 27.0.1.144 ipsec tunnel outer df-bit clear ip tunnel address 169.254.252.22/30 ip tunnel remote address 169.254.252.21 ip tunnel tcp mss limit 1320 tunnel enable 2
#NATの設定 nat descriptor type 1 masquerade nat descriptor masquerade static 1 1 192.168.44.254 esp nat descriptor masquerade static 1 2 192.168.44.254 udp 500
#BGPの設定 bgp use on bgp autonomous-system 65000 bgp neighbor 1 10124 169.254.252.17 hold-time=30 local-address=169.254.252.18 bgp neighbor 2 10124 169.254.252.21 hold-time=30 local-address=169.254.252.22 bgp import filter 1 equal 0.0.0.0/0 bgp import 10124 static filter 1
#汎用的な設定 ipsec use on ipsec auto refresh on tftp host any dhcp service server dhcp scope 1 192.168.44.2-192.168.44.20/24 dns server pp 1 dns private address spoof on httpd service on httpd host any
今回は"iperf"を利用して測定を行います。iperfはネットワークのスループットを測定するためのツールです。ネットワークを利用してマシンのメモリ間のデータ転送を行うため、ディスクのボトルネックを考えずにスループットを測定できます。
<Linuxの場合>
ubuntuでは以下のコマンドで簡単にインストールできます。
root@ubuntu:~# apt-get install iperf
AmazonLinuxでは以下のようにインストールを行います。
# wget ftp://ftp.univie.ac.at/systems/linux/dag/redhat/el5/en/i386/dag/RPMS/iperf-2.0.4-1.el5.rf.i386.rpm # rpm -ivh iperf-2.0.4-1.el5.rf.i386.rpm
<Windowsの場合>
windowsでiperfを利用する場合はセントラルフロリダ大学のページから"iperf.exe"をダウンロードを行い、
コマンドプロンプトのホームディレクトリ配置することで利用できます。
コマンドプロンプトのホームディレクトリ配置することで利用できます。
iperfコマンドの使い方はサーバーモードとクライアントモードの二つがあります。
iperfコマンドの後に各オプションをつけることで使い分けることができます。
例えば、クライアントモードの場合は-cオプションの後に宛先IPアドレスを入力するという使い方です。
iperfコマンドの後に各オプションをつけることで使い分けることができます。
例えば、クライアントモードの場合は-cオプションの後に宛先IPアドレスを入力するという使い方です。
オプション名 | 説明 |
---|---|
-c | クライアントモードで起動する |
-s | サーバーモードで起動する |
-i | 指定した秒数ごとに結果を表示する |
-u | UDPモードで動作させる |
-p | 使用するポート番号を指定する |
-w | ウィンドウサイズを指定する |
-t | 指定した秒数だけ送受信する |
<使用例1>
オプション無しで実行する
オプション無しで実行する
<使用例2>
一秒ごとに送受信結果を表示するオプションを付けて実行する
一秒ごとに送受信結果を表示するオプションを付けて実行する
4.スループット測定結果
先ほどの使用例2のように1秒ごとに結果を表示する方法で計測を行い、グラフ化します。また、今回の計測は"ローカルマシン⇒VPCインスタンス"、"VPCインスタンス⇒ローカルマシン"のように上り下りともに測定を行います。
何度か計測を行った結果、上りに関しては平均速度に大きな差はありませんでしたが、RTX810では安定した速度が出ていました。
一方、下りの速度は平均値で約50Mbit/secという大きな差がが現れました。やはり、RTX810ではVPNのスループット速度が強化されているということもあって、かなり高い値で安定していることがわかりました。
一方、下りの速度は平均値で約50Mbit/secという大きな差がが現れました。やはり、RTX810ではVPNのスループット速度が強化されているということもあって、かなり高い値で安定していることがわかりました。
5.まとめ
検証を行った結果、RTX810は速度が速く、安定してVPCと通信を行うことができるということがわかりました。
そのため、社内システムの運用をVPCで行うことも、不便なく利用できると思います。
また、Amazon VPCは、どんどん新機能が追加され、RDSも利用可能になりました。導入を検討している方は是非、導入していただきたいです。
なお、当社ではAmazon VPC スターターパックを提供しておりますので、興味がある方はぜひご覧いただければと思います。
そのため、社内システムの運用をVPCで行うことも、不便なく利用できると思います。
また、Amazon VPCは、どんどん新機能が追加され、RDSも利用可能になりました。導入を検討している方は是非、導入していただきたいです。
なお、当社ではAmazon VPC スターターパックを提供しておりますので、興味がある方はぜひご覧いただければと思います。