ER-XのNATスループット(Firewallありのケース)

ER-Xはstatefulなfirewallを搭載しています。これはコネクションのトラッキングが入るので処理としては比較的重いものになりますが、ER-XでNATとstateful firewallをonにするとどの程度スループットが出るのでしょうか。計測してみました。

計測環境

スイッチとして構成されているeth1にCentOS7 Aをクライアント、eth0にCentOS7 Bをサーバーとして配置し、iperf3を実行しスループットの測定を行います。NATとfirewallはBasic Setupでセットアップされる標準的なもののみ設定しています。ER-Xのファームウェアはv1.10.9となります。

計測結果

CentOS7 Aでのiperf3の実行結果が以下となります。-Mオプションを使ってMSSを変えてテストを行っています。消費電力はTAP-TST10での目測値で無負荷時は2.6Wとなります。先ずはoffloadなしで。

offloadなしの場合 receiver sender
MSS Mbps CPU 消費電力 Mbps CPU 消費電力
1460(指定なし) 214 34% 3.3W 253 50% 3.4W
1200 207 51% 3.5W 207 52% 3.5W
800 117 35% 3.2W 116 30% 3.2W
400 45.4 35% 3.2W 58.3 30% 3.2W

やはりoffloadないと結構厳しい結果です。次はhwnat=enableで計測します。

offloadありの場合 receiver sender
MSS Mbps CPU 消費電力 Mbps CPU 消費電力
1460(指定なし) 933 0% 2.7W 934 0% 2.7W
1200 921 0% 2.7W 920 1% 2.7W
800 886 1% 2.7W 885 1% 2.7W
400 795 0% 2.7W 794 0% 2.6W

NATやstateful firewallを入れても単純routingの結果と全く変わりません。

改めて惚れるぜER-X

ハードウェア支援が効きまくっていてCPU負荷も全くあがりませんし、消費電力もほぼ増えません。スペック表によればER-Xのパケット処理能力は1.4Mppsなので、計算上のスループットである1.4M/s×400byte = 560Mbpsを上回っているのはやや不思議ですが。

ER-XのConfig

基本Basic Setupで設定したものとなります。hwnatだけ別途enableにする追加設定を入れています。

set firewall name WAN_IN default-action drop
set firewall name WAN_IN description 'WAN to internal'
set firewall name WAN_IN rule 10 action accept
set firewall name WAN_IN rule 10 description 'Allow established/related'
set firewall name WAN_IN rule 10 state established enable
set firewall name WAN_IN rule 10 state related enable
set firewall name WAN_IN rule 20 action drop
set firewall name WAN_IN rule 20 description 'Drop invalid state'
set firewall name WAN_IN rule 20 state invalid enable
set firewall name WAN_LOCAL default-action drop
set firewall name WAN_LOCAL description 'WAN to router'
set firewall name WAN_LOCAL rule 10 action accept
set firewall name WAN_LOCAL rule 10 description 'Allow established/related'
set firewall name WAN_LOCAL rule 10 state established enable
set firewall name WAN_LOCAL rule 10 state related enable
set firewall name WAN_LOCAL rule 20 action drop
set firewall name WAN_LOCAL rule 20 description 'Drop invalid state'
set firewall name WAN_LOCAL rule 20 state invalid enable
set interfaces ethernet eth0 address dhcp
set interfaces ethernet eth0 description Internet
set interfaces ethernet eth0 firewall in name WAN_IN
set interfaces ethernet eth0 firewall local name WAN_LOCAL
set interfaces switch switch0 address 192.168.100.1/24
set interfaces switch switch0 description Local
set interfaces switch switch0 mtu 1500
set interfaces switch switch0 switch-port interface eth1
set interfaces switch switch0 switch-port interface eth2
set interfaces switch switch0 switch-port interface eth3
set interfaces switch switch0 switch-port interface eth4
set interfaces switch switch0 switch-port vlan-aware disable
set service nat rule 5010 description 'masquerade for WAN'
set service nat rule 5010 outbound-interface eth0
set service nat rule 5010 type masquerade
set system offload hwnat enable

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です