View
869
Download
2
Category
Preview:
Citation preview
VYATTA USERS MEETING Autumn 2013
FPGAで実装するネットワーク監視
三好 健文株式会社イーツリーズ・ジャパン
1
VYATTA USERS MEETING Autumn 2013
(株)イーツリーズ・ジャパン
2
ハードウェアWebキャッシュサーバ Since 2006
http://e-trees.jp/index.php/製品/freeocean/
最大スループット: 1Gbps
最大同時処理コネクション数: 50万
秒間同時接続数: 約2万HTTPリクエスト
最大消費電力: 約160W
VYATTA USERS MEETING Autumn 2013
FPGAとは独自の回路を実現できるハードウェア
特定の処理を低消費電力で高性能処理
デバイスに近い処理を簡単に実現
自由なI/Oポートの定義
ASIC開発のプロトタイプとして
特定用途向け少数生産の製品として
3
http://www.micron.com/about/news-and-events/events/xfest-2012
http://japan.xilinx.com/products/boards-and-kits/EK-K7-KC705-G.htm
VYATTA USERS MEETING Autumn 2013
FPGAの応用事例
4
1) http://www.thenewstribe.com/2012/11/01/infotech-becomes-pakistans-first-netezza-certified-ibm-partner/2) http://techon.nikkeibp.co.jp/article/NEWS/20110502/191552/
1)
2)
DB,金融,油田探索
VYATTA USERS MEETING Autumn 2013
用途に応じたFPGAソリューション
5
exStick
10/100Mbps
10Gbps1Gbps
制御機器シリアルの置換
演算コンポーネントストリーム処理
高解像度動画もっとストリーム処理
@29,800円
*1
*1@500,000円
@250,000円
*1
*1) ボード+ボード限定のUDP/IP IPコア付きの価格(2013年10月時点)
FPGA
e7UDP/IP IPコア
Apps Apps Apps・・・
VYATTA USERS MEETING Autumn 2013
用途に応じたFPGAソリューション
6
exStick
10/100Mbps
10Gbps1Gbps
制御機器シリアルの置換
演算コンポーネントストリーム処理
高解像度動画もっとストリーム処理
@29,800円これを使ってネットワーク監視システムを作ってみよう
*1
*1@500,000円
@250,000円
*1) ボード+ボード限定のUDP/IP IPコア付きの価格(2013年10月時点)
FPGA
e7UDP/IP IPコア
Apps Apps Apps・・・
のプロト
VYATTA USERS MEETING Autumn 2013
FPGAで実現するネットワーク監視
7
対象とするノードにpingを打つ
帰ってくる回数をカウントする
ちゃんと帰ってくれば生きてる!!
FPGAシステム
監視対象
監視対象
監視対象
NW
VYATTA USERS MEETING Autumn 2013
もう少し詳細な実装
8
10.0.0.1 10.0.0.100
10.0.0.100 10.0.0.200
192.168.10.100 192.168.10.200
255.255.255.255 255.255.255.255
~~ ~~
ROM:1Mbit (最大16Kエントリ)
FPGA
10.0.0.1 0
10.0.0.2 0
10.0.0.3 255
10.0.0.4 0
192.168.10.199 0
RAM: 1Mbit (ex. 最大128Kエントリ)
~~ ~~
NW設定,制御
結果
対象ホストのリスト結果
ICMP Request/Reply(UDP)
VYATTA USERS MEETING Autumn 2013
ハードウェアの中身は分からなくもOK
9
FPGA設定,制御
結果
cmdcmdcmdcmd
addraddraddraddr
lenlenlenlen
data data data data
data data data data
~~ ~~
data data data data
data data data data
~~ ~~
0x01: result read0x21: config read0x22: config write0x31: start0x32: running?
write_target_list(list)start_ping_counter()wait_ping_counter()read_result
(UDP)
VYATTA USERS MEETING Autumn 2013
動作の様子
10
ICM
P Request/R
eply
Rubyスクリプトで設定,制御
tcpdumpで動作確認
VYATTA USERS MEETING Autumn 2013
FPGAの中の動作の様子
11
Replyを待っている時間(=145μ秒)
Requestの出力にかかる時間(=14μ秒)
MacBook Air mid 2012とThunderbolt-Etherアダプタ経由で直結
VYATTA USERS MEETING Autumn 2013
FPGAを使うメリット/デメリット vsソフト
監視システムにおけるパケット送出の完全コントロールが可能→○ : クロックレベルで動作が確定
PCとは異なる故障特性→○
消費電力→○ (一概に比較するのは,とても難しいけど.)
電源ONですぐ起動→○
運用ノウハウ活用→×
OSなし,単機能→○/×
操作性→× : あれもこれも,というのは難しい
柔軟性→△ : 高位合成でプログラマビリティは向上/HWリソースとの勝負12
ランニングコスト
操作性
ハードウェアならではの特徴
VYATTA USERS MEETING Autumn 2013
FPGAを使うメリット/デメリット vsソフト
監視システムにおけるパケット送出の完全コントロールが可能→○ : クロックレベルで動作が確定
PCとは異なる故障特性→○
消費電力→○ (一概に比較するのは,とても難しいけど今回のHWは1W未満)
電源ONですぐ起動→○
運用ノウハウ活用→×
OSなし,単機能→○/×
操作性→× : あれもこれも,というのは難しい
柔軟性→△ : 高位合成でプログラマビリティは向上/HWリソースとの勝負13
ランニングコスト
操作性
ハードウェアならではの特徴
VYATTA USERS MEETING Autumn 2013
まとめと今後の展望
ICMP Request/Replyを利用したFPGAによるネットワーク監視システムのプロトタイプを紹介
Requestの多重発行→並列化による高速化
Syslog/SNMPなど標準ツール群との連携
“あれもこれもはFPGAでできない”のを補う
他の確立済みのサービスをFPGA化...?
14
一言でまとめると
今後の展望
VYATTA USERS MEETING Autumn 2013
10Gbps@FPGAの世界
15
おまけ10GbE
2524 cycle(12.620u秒)
251 cycle(1.255u秒)
32Byte
1460Byte
0 2.5 5 7.5 10スループット(Gbps)
ペイロードサイズ
Recommended