Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
パケットせよ
Hiroki SHIROKURA @slankdev
SHIROKURA Hiroki
- SNS: slankdev
- Web: http://slankdev.net
活動
- セキュリティキャンプ 2015,2016,2017 (16からチューター)
- サイボウズラボユース 「パケット」...
パケットする
とか
10GbaseT x4 のマシンの全てのポートで
帯域を使い切って遊ぶ          
とか
可能性は無限大!
超パケットせよ
1. パケットを愛せよ
2. 高性能, 高機能にパケットを処理せよ (すみません割愛) 
3. DPDKの良いスレッドデザインを採用せよ
その1
パケットを愛せよ
パケットを愛せよ
● 愛すると、ずっと見つめてしまう
● パケットをずっと見つめよう!
● Wireshark -> 黒い画面で見たい
● Tcpdump  -> ださい!
Cuishark
- Wiresharkの真似 on TUI
- GUIいらない
- リッチなフロントエンド?
https://github.com/slankdev/cuishark
GitHubで「cuishark」
なんでつくったか
VTYの実装のために必要になった
sudo cuishark -i lo -f "tcp[13]&8!=0 and tcp dst port 8888"
こんなことをするとデバッグが楽
反応
- プロトコルの解析部分自分で書い...
その2
高性能, 高機能にパケットを処理せよ
その3
DPDKの良いスレッドデザインを採用せよ
DPDK (Data Plane Development Kit)
性能維持のためにkernelとは関わらない (もちろん連携可)
用途例
- ルータ (ex, Brocade Vyatta)
- Openflowスイッチ
2017.6時点のア...
昨今の通信業界の概念
CGN
(NAT)
HW
Fire
Wall
HW
DPI
HW
Router
HW
CGN
(NAT)
Fire
Wall
DPI Router
Commodiy Hardware
Virtualization Lyer...
DPDKの使い方
- 全てのコアをどのように使い切るかを考えなくてはいけない
- スレッドの多重化をしたり, パイプライン処理をしたり
- スレッドのデザインが大変
誤字
7Mppsです
①
②
③
④
⑤
実際は...
Lagopus という Openflowスイッチ
NVF基盤とかを実現したばあい
動的自動最適化するl2fwd: デモ
10GbENIC
10GbENIC
10GbENIC
10GbENIC
Traffic
Generator/
Analyzer
Smart
L2Fwder
Rx TxWk
NIC Rx
NIC Rx
NIC...
概要
「環境に対して自動で最適化を行う高性能通信基盤」
ルータやスイッチをデプロイする基盤を開発
ルータやFirewallなどのネットワーク機能(NF)に対し
スレッドベースの最適化を動的に行うことで
数百万円の安価な汎用PCとソフトウェアでN...
パケットせよ: fin
Kernel vm13lt
Nächste SlideShare
Wird geladen in …5
×

Kernel vm13lt

401 Aufrufe

Veröffentlicht am

カーネルVM探検隊13回でのLT資料です

Veröffentlicht in: Internet
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Kernel vm13lt

  1. 1. パケットせよ Hiroki SHIROKURA @slankdev
  2. 2. SHIROKURA Hiroki - SNS: slankdev - Web: http://slankdev.net 活動 - セキュリティキャンプ 2015,2016,2017 (16からチューター) - サイボウズラボユース 「パケット」 - IIJ研 アルバイト 「パケット」 - 2017年 未踏事業   「パケット」 生まれてからパケットしか考えてない
  3. 3. パケットする とか 10GbaseT x4 のマシンの全てのポートで 帯域を使い切って遊ぶ           とか 可能性は無限大!
  4. 4. 超パケットせよ 1. パケットを愛せよ 2. 高性能, 高機能にパケットを処理せよ (すみません割愛)  3. DPDKの良いスレッドデザインを採用せよ
  5. 5. その1 パケットを愛せよ
  6. 6. パケットを愛せよ ● 愛すると、ずっと見つめてしまう ● パケットをずっと見つめよう! ● Wireshark -> 黒い画面で見たい ● Tcpdump  -> ださい!
  7. 7. Cuishark - Wiresharkの真似 on TUI - GUIいらない - リッチなフロントエンド? https://github.com/slankdev/cuishark GitHubで「cuishark」
  8. 8. なんでつくったか VTYの実装のために必要になった sudo cuishark -i lo -f "tcp[13]&8!=0 and tcp dst port 8888" こんなことをするとデバッグが楽 反応 - プロトコルの解析部分自分で書いたの? すごい! - wiresharkのソースとコンパチでないの? だめじゃん 今後展望 - ディスプレイフィルタの実装 - Wiresharkのdissectorを使えるようにする
  9. 9. その2 高性能, 高機能にパケットを処理せよ
  10. 10. その3 DPDKの良いスレッドデザインを採用せよ
  11. 11. DPDK (Data Plane Development Kit) 性能維持のためにkernelとは関わらない (もちろん連携可) 用途例 - ルータ (ex, Brocade Vyatta) - Openflowスイッチ 2017.6時点のアカデミアでの最速はBGP full route 145Gbps - CPUの論理コアを1つのスレッドで占有 - ユーザランド上で 独自のポーリング専用NICドライバ - Hugepagesを用いた独自のメモリ管理
  12. 12. 昨今の通信業界の概念 CGN (NAT) HW Fire Wall HW DPI HW Router HW CGN (NAT) Fire Wall DPI Router Commodiy Hardware Virtualization Lyer NFV ネットワーク機能(NF)を汎用PC上の仮想的(ソフト)に実現 サービスチェイニング 複数のNFを数珠繋ぎ -> 高機能なNF ソフトウェアのほうが圧倒的にフレキシブル。性能に関しては....
  13. 13. DPDKの使い方 - 全てのコアをどのように使い切るかを考えなくてはいけない - スレッドの多重化をしたり, パイプライン処理をしたり - スレッドのデザインが大変 誤字 7Mppsです
  14. 14. ① ② ③ ④ ⑤
  15. 15. 実際は... Lagopus という Openflowスイッチ
  16. 16. NVF基盤とかを実現したばあい
  17. 17. 動的自動最適化するl2fwd: デモ 10GbENIC 10GbENIC 10GbENIC 10GbENIC Traffic Generator/ Analyzer Smart L2Fwder Rx TxWk NIC Rx NIC Rx NIC Tx NIC Tx Que Que Rx Tx WkNIC Rx NIC Rx NIC Tx NIC Tx Que Que Wk
  18. 18. 概要 「環境に対して自動で最適化を行う高性能通信基盤」 ルータやスイッチをデプロイする基盤を開発 ルータやFirewallなどのネットワーク機能(NF)に対し スレッドベースの最適化を動的に行うことで 数百万円の安価な汎用PCとソフトウェアでNFVを高性能に実現 x86 PC ここ!! Router Firewall コンセプト - 環境情報から自動最適化 - 複数NFのデプロイするNFV基盤 (no VM)
  19. 19. パケットせよ: fin

×