MikroTik RB4011iGS+RMのルーティング スループット
我が家にもMikroTikのフラグシップモデルであるルーターRB4011iGS+RMがついにやってまいりました。EuroDKから購入し価格は$154+送料でした。良く比較されるライバル機のUbiquiti ER-4やER-6Pとの比較では以下となります。
RB4011iGS+RM | ER-4 | ER-6 | |
CPU | ARM 32bit AL21400 | MIPS64 64bit Cavium CN7130 | ← |
コア数 | 4 | 4 | ← |
周波数 | 1.4GHz | 1GHz | ← |
RAM | 1GB | 1GB | ← |
Storage | 512MB | 4GB | ← |
最大消費電力 | 19W | 13W | 16W |
サイズ | W22.8 D12.0 H3.0 | W22.9 D13.6 H3.1 | ← |
インタフェース | 10xGbE + 1xSFP+ | 3xGbE + 1xSFP | 5xGbE + 1xSFP |
IPsecスループット | 1,577Mbps | 非公開 | ← |
2019/6/2時点 価格(EuroDK) |
$147 | $157 | $197 |
特筆すべきは、10GbpsのSFP+ポートを持っていることと、IPsecのスループットが最大1,577Mbpsというところでしょうか。SFP+ポートを持つルーターがほとんどないもしくは極めて高額な中、たったの$147で1ポートとは言え10GbpsのSFP+ポートを追加してきたところにMikroTikの気合を感じます。実際のところSFP+ポートをどう使うかは全く考えていませんが、SFP+ポートを持つ機械を持っておらず、思わずそれだけでポチってしまったということろです。
自分的には一番重要視しているIPsecのスループットに期待しています。ER-4とER-6Pではやや期待外れに終わったので、RB4011iGS+RMのパフォーマンスがよければ入れ替えも検討したいと考えています。
先ずは、単純ルーティングのスループット測定で、RB4011iGS+RMの実力を見ていきたいと思います。本来はSFP+ポート使った実験もしたいのですが、生憎他に10Gbpsのネットワークカード等は持っていないので、こちらについては後日購入次第、追加試験を行う予定です。
計測環境
初期状態ではether1だけがWAN用に独立しており、SFP+ポートを含めた他のポートは全部ブリッジされています。
この初期状態はかなりイマイチです。MikroTikの製品紹介ページで公開されているRB4011のBlock Diagramを見るとRB4011は2つの独立したスイッチを持っており、それぞれが2.5Gbpsのバンド幅でCPUに接続されています(このあたりをキチンと公開しているMikroTikには非常に好感が持てます)。
よって、ハードウェアの性能を一番生かすのであれば、ether1をWANポートとして独立させるとして、以下のようにbridgeを2つ作成し、bridge1にether2-5、bridge2にether6-10を所属させることをまず基本に考えるべきでしょう。
このように変更することで(実際にはさらにbridgeでRSTPが有効になっているのでそれもoff=noneにします)、画面上もハードウェア支援されていることを意味するHのマークが点灯し、bridgeに所属するポート間の通信については条件を満たせばCPU処理とならずwire speedが出ます。configは以下の通りです。
/interface bridge
add admin-mac=XX:XX:XX:XX:XX:XX auto-mac=no comment=defconf name=bridge \
protocol-mode=none
add name=bridge2 protocol-mode=none
/ip pool
add name=dhcp ranges=192.168.100.2-192.168.100.199
add name=dhcp2 ranges=192.168.200.2-192.168.200.199
/ip dhcp-server
add address-pool=dhcp disabled=no interface=bridge name=dhcp1
add address-pool=dhcp2 disabled=no interface=bridge2 name=dhcp2
/interface bridge port
add bridge=bridge interface=ether2
add bridge=bridge interface=ether3
add bridge=bridge interface=ether4
add bridge=bridge interface=ether5
add bridge=bridge2 interface=ether6
add bridge=bridge2 interface=ether7
add bridge=bridge2 interface=ether8
add bridge=bridge2 interface=ether9
add bridge=bridge2 interface=ether10
/interface list member
add comment=defconf interface=bridge list=LAN
add comment=defconf interface=ether1 list=WAN
add interface=bridge2 list=LAN
/ip address
add address=192.168.100.1/24 interface=bridge network=192.168.100.0
add address=192.168.200.1/24 interface=bridge2 network=192.168.200.0
/ip dhcp-server network
add address=192.168.100.0/24 dns-server=192.168.100.1 gateway=192.168.100.1 \
netmask=24
add address=192.168.200.0/24 dns-server=192.168.200.1 gateway=192.168.200.1
太字部分がbridge関連の変更箇所です。赤字の部分はbridge2配下からインターネットアクセスするのに必要です。初期firewallには以下の設定があります。
/ip firewall filter add action=drop chain=input comment="defconf: drop all not coming from LAN" \ in-interface-list=!LAN
このため、bridge2をLANのリストに追加してあげないと、RB4011をDNSサーバーとして稼働させている場合等に、bridge2配下のPCが名前解決できなくなってしまいます。
このように設定を変更した後、ether2にCentOS7 Aをiperf3のクライアントとして設置、ether6にCentOS7 Bをiperf3のサーバーとして設置し、スループットの測定を行います。RB4011のファームウェアはv6.44.3となります。
計測結果
CentOS7 Aでのiperf3 60秒間の実行結果が以下となります。-Mオプションを使ってMSSを変えてテストを行っています。TAP-TST10での目測値で、無負荷時の消費電力は7.8Wとなります。
sender | ||||
MSS | Mbps | Retr | CPU | 消費電力 |
1460(指定なし) | 942 | 0 | 0% | 9.1W |
1200 | 930 | 0 | 0% | 9.2W |
800 | 898 | 0 | 19% | 9.3W |
400 | 812 | 0 | 25% | 9.4W |
RB750Gr3のとき頻発していたre-transmissionもなくなっており、スループットも文句ありません。この辺りはRB4011がMikroTikのフラグシップモデルということもあり驚きはありませんね。