Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
seccamp2018_Z4_DPDK_FW
Search
agodoriru
August 19, 2018
Programming
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
seccamp2018_Z4_DPDK_FW
agodoriru
August 19, 2018
More Decks by agodoriru
See All by agodoriru
tmuxで快適CLI生活
agodoriru
0
69
Other Decks in Programming
See All in Programming
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
230
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
120
OSもどきOS
arkw
0
560
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
4.3k
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
250
エージェンティックRAGにAWSで入門しよう!
har1101
8
1.5k
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
220
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
540
Inside Stream API
skrb
1
710
ふつうのFeature Flag実践入門
irof
7
3.9k
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
260
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
130
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
410
A Soul's Torment
seathinner
6
2.9k
sira's awesome portfolio website redesign presentation
elsirapls
0
280
Amusing Abliteration
ianozsvald
1
200
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
230
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The Curious Case for Waylosing
cassininazir
1
390
How STYLIGHT went responsive
nonsquared
100
6.2k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Transcript
Z4 DPDKを用いた 圧倒的高速なファイアウォールの実装 @AG0D0R1RV
作成したもの DPDKを用いたFW 5tuple filter(ip-src/ip-dst/ip-protocol/port-src/port-dst)で 決められたパケットを通過させないようdropする • pcapを読み込んで、パケットをfilterして、特定のパケットを 一つのpcapに書き出すプログラム • DPDKのブリッジを改造して、filterしてmatchしたものをdrop
するプログラム
DPDKとは? DPDK…Data Plane Development Kit ネットワーク処理を高速化するC言語のライブラリ (ルーターやプロトコルスタックではない) ・Official site www.dpdk.org
DPDKの動作 user space linux DPDK linux kernel NIC user space
linux kernel NIC ・kernelをバイパス ・CPUを占有(polling)
[pcap]パケットフィルタリングの性能改善 0 20000000 40000000 60000000 80000000 100000000 120000000 140000000 strcmp
no strcmp log出力なし 処 理 時 間
[DPDK]パケット転送速度改善 (1filter) 0 2000 4000 6000 8000 10000 12000 log出力あり
高速化なしlog出力なし 高速化ありlog出力なし filterなし 処 理 速 度 [Mbits/s]
測定結果
今後の課題(開発を続けていく予定) • 壊れたパケットの処理の実装 • IP headerのoptionの解析 • CUIをかっこよくしたい • フィルターの条件を変えられるように変更
セキュキャン△感想 • 楽しい(治安悪い) • Zトラック圧倒的受講生密着型(一対一)