次々回の某勉強会でFortigateを触ることになっているのですが、やることが結構多いので、いつもの行き当たりばったりハンズオン形式では絶対に間に合わないと言うことでそのアシスタント役として動くことになりました。
その為、アシスタント役のくせに当日分からなくて\もうだめだ-!/とならないようにする為の事前講習と言うことで、アシスト講師候補の人で集まり、日曜日に久しぶりにがっつりFortigateを触ったのですが、以前300Aをあけたときのメモとしていくつか書いてないことがあったのを思い出しました。どうせなのでそのネタを消費してみます。実際にやったのは多分もう1年近く前になりますが。また例によってgdgdと長いです。
Fortigate300Aは、箱を開けるとこのようになっているのですが、ACL以外の処理などASICで出来ない処理の為のCPUとしてSocket478のCPUとDDR1(PC2700)で構成されています。最初から載っているのはCeleron 2AGHz(2GHZ/128 L2/400 FSB)なのですが、これはPentium4に置き換えることが出来ます。NorthWoodの3GHzまでは確認しました。
Pentium4 3CGHzにするとHTが有効になるので、起動時に
RAM activation
CPU(00:00000f25 bfebfbff): Do MP initialization
CPU(01:00000f25 bfebfbff): Do MP initialization
Total RAM: 1024MB
というふうにSMPとして認識されるようです。
RAMはデフォルトでは256x2なのですが、それも1GBx2まで拡張できます。RAMが大きいとACLを沢山書いたりルーティングテーブルを沢山書いたり、多人数でWebPortalを使うとセッションをとても消費するのでそういったときにRAMが大きいと有利らしいです。
実際にあった変化としては、Pentium4 3CGHzとMem1Gにした状態で、SSLのWebPortalの機能であるCIFS参照のスループットがPort5(GibE)ポートからPort6(GibE)の転送で50M-40Mbpsから70-80Mbps程度まで上がりました。また、WebPortalのFTPProxyのスループットは90Mbpsから168-210Mbps程度まで伸びました。WebPortalのSSL処理はCPUが全て負担しているので、CPUを早くすればそれ相応に早くなるようです。最近のCore iシリーズのCPUが載ればCPUでAESエンコードが出来るので速いんですけどね…。
ただし、元々載っていたCPUはもう無いので再検証が出来ず、変更前の数値は記憶でものを言っている部分があります。確かその程度だったと思うのですが記録に残っていないので…。
消費電力は変更前がアイドル時が7-80Wでしたが変更すると15W程度上がります。ただ、WebSSL-VPNによるCPUフルロード時でもアイドル時でも消費電力にあまり変化がないので、EST的なCPUの省エネクロック制御はないようです。さすがPen4…。
ちなみにPSUは250Wまでは出力できるのでスペック的には問題なさそうです。熱に関しても、以前は1ヶ月は動いていたので、銅のCPUクーラーで廃熱は出来ているようです。
また、Giga1からGiga2へVIP(ポートフォアードではなくて完全なIPエイリアス)を使ってNATし、iperf(windows 7/windows7同士)でやった結果はこんな感じでした。ACLは特に書かず、AcceptとSSL-VPNの許可のみの設定です。
C:\Users\NF680i>iperf -c 172.18.1.197 -i 1 -w 1
WARNING: TCP window size set to 1 bytes. A small window size
will give poor performance. See the Iperf documentation.
------------------------------------------------------------
Client connecting to 172.18.1.197, TCP port 5001
TCP window size: 1.00 Byte
------------------------------------------------------------
[156] local 172.18.1.23 port 60954 connected with 172.18.1.197 port 5001
[ ID] Interval Transfer Bandwidth
[156] 0.0- 1.0 sec 15.9 MBytes 134 Mbits/sec
[156] 1.0- 2.0 sec 18.1 MBytes 152 Mbits/sec
[156] 2.0- 3.0 sec 25.4 MBytes 213 Mbits/sec
[156] 3.0- 4.0 sec 25.0 MBytes 210 Mbits/sec
[156] 4.0- 5.0 sec 24.7 MBytes 207 Mbits/sec
[156] 5.0- 6.0 sec 26.4 MBytes 222 Mbits/sec
[156] 6.0- 7.0 sec 29.1 MBytes 244 Mbits/sec
[156] 7.0- 8.0 sec 25.9 MBytes 217 Mbits/sec
[156] 8.0- 9.0 sec 26.2 MBytes 220 Mbits/sec
[156] 9.0-10.0 sec 25.8 MBytes 216 Mbits/sec
[156] 0.0-10.0 sec 243 MBytes 203 Mbits/sec
C:\Users\NF680i>iperf -c 172.18.1.197 -i 1 -w 8K
------------------------------------------------------------
Client connecting to 172.18.1.197, TCP port 5001
TCP window size: 8.00 KByte
------------------------------------------------------------
[156] local 172.18.1.23 port 61091 connected with 172.18.1.197 port 5001
[ ID] Interval Transfer Bandwidth
[156] 0.0- 1.0 sec 16.1 MBytes 135 Mbits/sec
[156] 1.0- 2.0 sec 22.4 MBytes 188 Mbits/sec
[156] 2.0- 3.0 sec 25.1 MBytes 211 Mbits/sec
[156] 3.0- 4.0 sec 25.1 MBytes 210 Mbits/sec
[156] 4.0- 5.0 sec 24.7 MBytes 207 Mbits/sec
[156] 5.0- 6.0 sec 29.3 MBytes 246 Mbits/sec
[156] 6.0- 7.0 sec 26.5 MBytes 223 Mbits/sec
[156] 7.0- 8.0 sec 26.3 MBytes 221 Mbits/sec
[156] 8.0- 9.0 sec 26.0 MBytes 218 Mbits/sec
[156] 9.0-10.0 sec 26.2 MBytes 220 Mbits/sec
[156] 0.0-10.0 sec 248 MBytes 208 Mbits/sec
C:\Users\NF680i>iperf -c 172.18.1.197 -i 1 -w 16K
------------------------------------------------------------
Client connecting to 172.18.1.197, TCP port 5001
TCP window size: 16.0 KByte
------------------------------------------------------------
[156] local 172.18.1.23 port 61209 connected with 172.18.1.197 port 5001
[ ID] Interval Transfer Bandwidth
[156] 0.0- 1.0 sec 46.5 MBytes 390 Mbits/sec
[156] 1.0- 2.0 sec 44.9 MBytes 377 Mbits/sec
[156] 2.0- 3.0 sec 49.2 MBytes 413 Mbits/sec
[156] 3.0- 4.0 sec 48.6 MBytes 408 Mbits/sec
[156] 4.0- 5.0 sec 44.8 MBytes 376 Mbits/sec
[156] 5.0- 6.0 sec 44.5 MBytes 374 Mbits/sec
[156] 6.0- 7.0 sec 41.4 MBytes 348 Mbits/sec
[156] 7.0- 8.0 sec 47.0 MBytes 394 Mbits/sec
[156] 8.0- 9.0 sec 46.5 MBytes 390 Mbits/sec
[156] 9.0-10.0 sec 43.5 MBytes 365 Mbits/sec
[156] 0.0-10.0 sec 457 MBytes 383 Mbits/sec
C:\Users\NF680i>iperf -c 172.18.1.197 -i 1 -w 64K
------------------------------------------------------------
Client connecting to 172.18.1.197, TCP port 5001
TCP window size: 64.0 KByte
------------------------------------------------------------
[156] local 172.18.1.23 port 61311 connected with 172.18.1.197 port 5001
[ ID] Interval Transfer Bandwidth
[156] 0.0- 1.0 sec 84.2 MBytes 706 Mbits/sec
[156] 1.0- 2.0 sec 84.6 MBytes 710 Mbits/sec
[156] 2.0- 3.0 sec 86.4 MBytes 725 Mbits/sec
[156] 3.0- 4.0 sec 87.3 MBytes 733 Mbits/sec
[156] 4.0- 5.0 sec 86.2 MBytes 723 Mbits/sec
[156] 5.0- 6.0 sec 86.8 MBytes 728 Mbits/sec
[156] 6.0- 7.0 sec 86.8 MBytes 728 Mbits/sec
[156] 7.0- 8.0 sec 86.8 MBytes 728 Mbits/sec
[156] 8.0- 9.0 sec 87.3 MBytes 732 Mbits/sec
[156] 9.0-10.0 sec 86.6 MBytes 726 Mbits/sec
[156] 0.0-10.0 sec 863 MBytes 724 Mbits/sec
C:\Users\NF680i>iperf -c 172.18.1.197 -i 1 -w 128K
------------------------------------------------------------
Client connecting to 172.18.1.197, TCP port 5001
TCP window size: 128 KByte
------------------------------------------------------------
[156] local 172.18.1.23 port 61410 connected with 172.18.1.197 port 5001
[ ID] Interval Transfer Bandwidth
[156] 0.0- 1.0 sec 105 MBytes 883 Mbits/sec
[156] 1.0- 2.0 sec 106 MBytes 886 Mbits/sec
[156] 2.0- 3.0 sec 106 MBytes 888 Mbits/sec
[156] 3.0- 4.0 sec 107 MBytes 894 Mbits/sec
[156] 4.0- 5.0 sec 106 MBytes 886 Mbits/sec
[156] 5.0- 6.0 sec 105 MBytes 882 Mbits/sec
[156] 6.0- 7.0 sec 105 MBytes 884 Mbits/sec
[156] 7.0- 8.0 sec 106 MBytes 888 Mbits/sec
[156] 8.0- 9.0 sec 106 MBytes 890 Mbits/sec
[156] 9.0-10.0 sec 106 MBytes 891 Mbits/sec
[156] 0.0-10.0 sec 1.03 GBytes 887 Mbits/sec
C:\Users\NF680i>iperf -c 172.18.1.197 -i 1 -w 256K
------------------------------------------------------------
Client connecting to 172.18.1.197, TCP port 5001
TCP window size: 256 KByte
------------------------------------------------------------
[156] local 172.18.1.23 port 61701 connected with 172.18.1.197 port 5001
[ ID] Interval Transfer Bandwidth
[156] 0.0- 1.0 sec 104 MBytes 869 Mbits/sec
[156] 1.0- 2.0 sec 99.7 MBytes 836 Mbits/sec
[156] 2.0- 3.0 sec 102 MBytes 859 Mbits/sec
[156] 3.0- 4.0 sec 100 MBytes 841 Mbits/sec
[156] 4.0- 5.0 sec 106 MBytes 886 Mbits/sec
[156] 5.0- 6.0 sec 99.3 MBytes 833 Mbits/sec
[156] 6.0- 7.0 sec 102 MBytes 857 Mbits/sec
[156] 7.0- 8.0 sec 102 MBytes 859 Mbits/sec
[156] 8.0- 9.0 sec 105 MBytes 884 Mbits/sec
[156] 9.0-10.0 sec 105 MBytes 881 Mbits/sec
[156] 0.0-10.0 sec 1.00 GBytes 860 Mbits/sec
C:\Users\NF680i>
そのときのCPUロードです。
最大通信でもCPUには若干余裕がありました。試しに元IPとポートなどをごちゃごちゃ混ぜたポリシーを50個ほど書いてみましたが、ASICががんばっているのか、あまりCPU使用率は変わらないようです。それともACLが50個では足りないのでしょうか…
まとめ
・基本的なACLやポリシーではASICが処理するのであまりCPUは使われない
・WebPortalをよく使うのであればCPUを変える意味はある ※ただしCPU交換が出来るのは300A以上の機種に限る
・ただし消費電力が相応に上がる
疑問
・MiniPCIに何かさしたら楽しいことが出来る?
まあ、今は300Aは動かしていないのですけどね…。いやあげませんよ?
ツイート
コメントを書く
必要事項とコメントを入力して下さい。