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
Dive into wireless openflow! (Ja)
Search
kwi
August 08, 2015
Technology
0
850
Dive into wireless openflow! (Ja)
Wireless radio openflow
Presentation at "trema day #7" 2015-08-08
kwi
August 08, 2015
Tweet
Share
More Decks by kwi
See All by kwi
SmartCitizen紹介
kwi
0
270
こんなのどうかな?
kwi
1
340
加古川パスタ♡の件
kwi
0
120
給食データを味わう
kwi
0
77
rocket-up
kwi
0
29
測ってみようよ
kwi
1
370
神戸市ウェブサイト動態
kwi
0
290
Code for 選挙
kwi
0
220
Code for Japan Summit 2017 紹介
kwi
0
93
Other Decks in Technology
See All in Technology
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
180
Amazon Kendra GenAI Index 登場でどう変わる? 評価から学ぶ最適なRAG構成
naoki_0531
0
100
AI時代のデータセンターネットワーク
lycorptech_jp
PRO
1
280
社外コミュニティで学び社内に活かす共に学ぶプロジェクトの実践/backlogworld2024
nishiuma
0
260
ガバメントクラウドのセキュリティ対策事例について
fujisawaryohei
0
530
生成AIのガバナンスの全体像と現実解
fnifni
1
180
watsonx.ai Dojo #5 ファインチューニングとInstructLAB
oniak3ibm
PRO
0
160
サイボウズフロントエンドエキスパートチームについて / FrontendExpert Team
cybozuinsideout
PRO
5
38k
フロントエンド設計にモブ設計を導入してみた / 20241212_cloudsign_TechFrontMeetup
bengo4com
0
1.9k
サービスでLLMを採用したばっかりに振り回され続けたこの一年のあれやこれや
segavvy
2
390
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
1
300
AWS re:Invent 2024で発表された コードを書く開発者向け機能について
maruto
0
190
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
97
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
2
170
Typedesign – Prime Four
hannesfritz
40
2.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Transcript
Dive into wireless openflow! Hiroaki KAWAI <
[email protected]
>
Wireless openflow? • Openflow デモ(2008) – ネットゲームしながらノートPCがWifiローミング – http://archive.openflow.org/wp/2008/10/vide o-of-sigcomm-demo/
• 現在 – ベンダ各社Wifi APにもopenflowを入れつつある • 実は、組み合わせそれ自体は珍しくない
今からの話は これとは別物の話
ところで
Openflow 便利 ! • 流れているパケットに手が届く • 「見えるぞ!私にも敵が見えるッ!」
いっぽう無線は… • 無線もパケット通信なのに! • 「つながらない」 • 「なんかよく分からないけど不安定」 • 「なんか遅い…」 •
「そもそも、どのAPに繋がってるの?」 • etc., Windowsでradiotapできないんですよねー
というわけで • 無線のパケットを観測できるツールが必要! • われらがopenflowがあるじゃないか! • これ使おうコレ – APに入っていれば、状況も見えてくる
Openflow 1.3 based • Openflow 1.3 + experimenter での拡張 –
Stratosphere experimenter • “gopenflow” : PoC implementation – IEEE 802.11 – Bluetooth LE 6LoWPAN
デモ
デモ構成 • 複数APを同一SSIDでデプロイ – SSID: stratos2 – PSK: hogehoge •
管理画面 – http://alpha.local/ • alpha.local = 192.168.23.1 Bonjourが有効なら DEMO
管理画面 : Current session DEMO
管理画面 : Current radio DEMO
現在のAssociationの電波状態 STA (You) AP DEMO
管理画面 : STA DEMO
STAを観測 STA (You) AP AP AP DEMO
管理画面 : AP DEMO
APが使用している電波の状態 STA (You) AP STA STA STA DEMO
管理画面 : Manage DEMO
AP切り替え STA (You) AP AP AP 指定したAPがOKを返すまで再試行する (順番によってはもう一度試さないとダメかも) DEMO OK
デバイスごとの癖 • Windows – Background scanで動作する • Mobile phone –
すぐに sleep に入る • iOS – 802.11kを期待していて、scanしない
Internal
Openflow 対応方法 • Linux netdev = openflow port とした •
無線NIC – cfg80211系ドライバ(今はこれが主流) – 物理インターフェースに netdev を複数作れる • iw dev wlan0 interface add mon0 type monitor • もちろん同時に出せる電波は一つだけ • 何個作れるかはドライバ次第
cfg80211 netdev • AP, managed, monitor など数種類ある • monitor mode
の場合 – ARPHRD_RADIOTAP – LWAPP frame + 拡張 OXM の形 – AP, managed と併用すると便利 • これらは ARPHRD_ETHER になっていて、暗号等は kernel 側で処理される
cfg80211 netdev mon0 phy#0 wlan0 mon0 ethernet radiotap
cfg80211 netdev mode • Monitor & AP 両方存在できるけど…!? – Physical
port と logical port のような関係 – Tunnel encap と WPA encap は似ている – Openflow の packet ベース処理に乗せるには、こ うしたほうが相性がいい • 暗号のステートを保持させる場所の問題 • 802.1Q (VLAN) は stateless で push/popできる
Demo の裏側 • 電波強度は packet_in の OXM match – STROXM_RADIOTAP_DBM_ANTSIGNAL
– 値は radiotap “Antenna signal” – 仕様: https://github.com/hkwi/gopenflow/blob/mast er/ofp4_str_exp.md • IEEE 802.11 MAC / ethernet MAC 変換規則 – 対応関係があるので、それを使って flow rule 生成
Demo の構成 phy#1 wlan0 mon0 hostap gopenflow eth0 Controller uplink
monitor mode AP mode radius openflow
その他 • Wifi controller 歴史の延長上にもある – トラフィック分散型(C-Plane分離) – もっとオープンに! •
非ethernetなフレームを飛ばすとか?
おまけ
6LoWPAN • Bluetooth LE – IPSP (IP support profile=6LoWPAN) –
ノードが直接IPv6通信できる • 考えることが少し減る – Border routerにopenflowが 入ると何かと嬉しい Node Border Router Uplink bluetooth Server
Any questions?