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
920
0
Share
Dive into wireless openflow! (Ja)
Wireless radio openflow
Presentation at "trema day #7" 2015-08-08
kwi
August 08, 2015
More Decks by kwi
See All by kwi
SmartCitizen紹介
kwi
0
350
こんなのどうかな?
kwi
1
420
加古川パスタ♡の件
kwi
0
180
給食データを味わう
kwi
0
130
rocket-up
kwi
0
65
測ってみようよ
kwi
1
470
神戸市ウェブサイト動態
kwi
0
340
Code for 選挙
kwi
0
300
Code for Japan Summit 2017 紹介
kwi
0
150
Other Decks in Technology
See All in Technology
先取りMaven4 ~16年ぶりのメジャーアップデート、その進化とは?~
ogiwarat
0
110
Diagnosing performance problems without the guesswork
elenatanasoiu
0
130
OpenID Connectによるサービス間連携
takesection
0
150
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.7k
ポスター発表&デモと総括 / Poster Presentations & Demonstrations and Summary
ks91
PRO
0
180
React、まだ楽しくて草
uhyo
7
1.9k
APIテストとは?
nagix
0
160
地元にいないローカルオーガナイザーの立ち回り
uvb_76
1
400
Spring AI × MCP 入門〜AIエージェントへのツール公開、境界設計から始める最小構成 〜
yuyamiyamoto
0
190
A Harness for Behaviour: how to get AI to generate code that does what we intend, or "TDD in the age of AI"
xpmatteo
1
520
開発を止めない CI/CD ~CI Visibilityによる継続的最適化~
pensuke628
0
220
もりもり新機能を一挙紹介! AgentCoreに入門して、AWS上にAIエージェントを構築しよう
minorun365
PRO
6
350
Featured
See All Featured
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
230
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
280
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
300
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
760
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
210
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
430
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
GitHub's CSS Performance
jonrohan
1033
470k
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?