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
語るっ!Zodiac FX
Search
kwi
July 02, 2016
Technology
0
1.2k
語るっ!Zodiac FX
せっかくなのでZodiacFX のこれまでの知見をまとめました。開発へのお誘いです~
kwi
July 02, 2016
Tweet
Share
More Decks by kwi
See All by kwi
SmartCitizen紹介
kwi
0
270
こんなのどうかな?
kwi
1
340
加古川パスタ♡の件
kwi
0
120
給食データを味わう
kwi
0
80
rocket-up
kwi
0
30
測ってみようよ
kwi
1
380
神戸市ウェブサイト動態
kwi
0
290
Code for 選挙
kwi
0
230
Code for Japan Summit 2017 紹介
kwi
0
95
Other Decks in Technology
See All in Technology
Oracle Exadata Database Service(Dedicated Infrastructure):サービス概要のご紹介
oracle4engineer
PRO
0
12k
今から、 今だからこそ始める Terraform で Azure 管理 / Managing Azure with Terraform: The Perfect Time to Start
nnstt1
0
240
comilioとCloudflare、そして未来へと向けて
oliver_diary
6
450
AWS Community Builderのススメ - みんなもCommunity Builderに応募しよう! -
smt7174
0
180
ゼロからわかる!!AWSの構成図を書いてみようワークショップ 問題&解答解説 #デッカイギ #羽田デッカイギおつ
_mossann_t
0
1.5k
2024AWSで個人的にアツかったアップデート
nagisa53
1
110
「隙間家具OSS」に至る道/Fujiwara Tech Conference 2025
fujiwara3
7
6.5k
Cloudflareで実現する AIエージェント ワークフロー基盤
kmd09
0
290
2024年活動報告会(人材育成推進WG・ビジネスサブWG) / 20250114-OIDF-J-EduWG-BizSWG
oidfj
0
230
生成AIのビジネス活用
seosoft
0
110
Azureの開発で辛いところ
re3turn
0
240
AIアプリケーション開発でAzure AI Searchを使いこなすためには
isidaitc
1
120
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
244
12k
Facilitating Awesome Meetings
lara
51
6.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
960
GitHub's CSS Performance
jonrohan
1030
460k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
Designing for humans not robots
tammielis
250
25k
Navigating Team Friction
lara
183
15k
Transcript
語るっ! Zodiac FX ! Kawai, Hiroaki <
[email protected]
>
ZodiacFX • Kickstarter で始まった – “affordable” openflow hardware switch •
普通に売ってるやつは、お試しするには高すぎる – 過去にも ONetSwitch という FPGA を使ったプロ ジェクトはあった • 期限ギリギリに達成! – 正直ヒヤヒヤした…
現在 • Kickstarter 枠も順番に配布が終わった • ファームウェアは絶賛開発中 ^^; • Northbound Networks
(Australia) から直販 – $99.00 AUD(送料込み・諸経費除く) 実機をお分けできるように持ってきました
配送 • 安心のFedEx – 発注 5/25 – 発送 5/25 –
着荷 5/30 AU JP CN
Architecture Atmel 4e ARM SoC Micrel Ethernet Switch 電源 兼
Serial SPI Debug JTAG Cortex-M 120MHz
使い方 デフォルトでは 4 番がコントローラへの接続 Switch は 10.0.1.99 を名乗っている Controller は
tcp:10.0.1.8:6633 を期待している Openflow port 1, 2, 3 となる スイッチの設定は USB Serial でできるほか、 Telnet で入れるようになる予定(0.64?)
CLI • Debug コマンドがある – register と出てくるのは、Switch のもの。 – Micrel
KSZ8795CLX のドキュメントと対応。 • ドキュメントの読み方にコツがある • レジスタ番号が特定できれば勝ち – trace コマンドはそこそこ便利
ファームの書き込み • SAM-BAでUSB シリアル経由で書き込み – 電源を切る – ERASE ジャンパをオンにする –
電源を入れて10秒ほど待つ – 電源を切る – ERASE ジャンパを開放に戻す – SAM-BA で書き込み(LOCKはしない) 昔のバージョンから 上げたときは Factory Reset が必要なことも (EEPROM)
Kickstarter Beta tester枠 • 腕に自信のある人限定でお願い!という案内 • Beta board が先に届く キタコレ!
Beta tester でやったこと • Forum に beta アカウントで入れた – ファームやドキュメントがダウンロードできた
• 不具合報告したり…というか、ほとんど動かない… – だいぶ後になってソースコードもダウンロードできるよ うになった。 • 最初は zip ファイルだった • Github に出して欲しいなーとか、そのタイミングでお願いをし たり • 実は大して作業できず(むしろ今からが本番)
Beta & Production 認証 認証取得の模様は: https://www.kickstarter.com/projects/northboundnetworks/zodiac-fx-the-worlds-smallest-openflow-sdn-switch/posts/1469205
開発環境 • Atmel IDE (free) – 現行バイナリのビルドには 6.2 を使用 –
バージョンを上げると内部の gcc が変わる • Atmel ICE debugger (事実上必須) – USB 接続の箱 – SoC に接続して IDE から step 実行したりできる – ≪ 超便利 ≫ 私はdigikeyで 買いました
開発の始め方 # git clone https://github.com/NorthboundNetworks/ZodiacFX and open
Branch • 一般的な流儀と異なるので注意 – 最新Release版 → master – 次期開発版 →
Dev_064 • Github で時期開発版に PR 出す – 「折れる心」と「折れない心」が重要 • OSS運営はよちよち歩きなので生暖かく眺める感じで – 仲間募集中!
開発時の注意点 3.12 cm 電源を信号線に 近づけない 動作中に 触らない ノイズのせいで バイナリ転送が 遅くなったり
失敗したりします Ethernet portが 明らかに挙動不審に なります
Software • ARM SoC 環境がターゲット – Atmel にサンプルコードがある – 今は
Arduino みたいに loop が回る構成 • いわゆる OS はない • 一番最初は FreeRTOS 使おうかなと言っていた • 主に次の二つのドキュメントを引くことになる – Atmel SAM4E Datasheet – Micrel KSZ8795CLX
in logical view Atmel 4e ARM SoC Micrel Ethernet Switch
電源 兼 Serial SPI Debug JTAG 1 2 3 4 5 eth SPI 電源投入直後のレジスタは 普通のスイッチングハブとして 動作するようになっています。 起動後にすべて5番に 吸い上がるように レジスタを設定しています。 5 – eth の間は ethernet フレームの最後に 1 byte 追加でポート番号が 入るようになっています。
hkwi voyager 版 • Openflow を行けるところまで実装してみた版 – 一気に作って、オリジナルをほとんど書き換えたの で、本家にはマージされず –
プロプラ製品との接続性がテストできない?問題 • HP?のコントローラとの接続性?に問題? • こちらで追試できないんだよな… – lwIP 2.0.0RC1 に置き換え • IPv6 対応
hkwi voyager 版 • (バースト)スループットが出にくい – Loop 処理の構造上の問題か? • FreeRTOS版の
loop も見てみないと – なので、meter は未実装 • 自分でビルドする人は: – まずは gcc -O0 でビルドすべし – 正に「闇」
Ryu certificate • hkwi/ZodiacFX_RyuCert – ログを置いてます – 対向スイッチは trema-switch (trema-edge)
Another aspect: • ZodiacFX is 4 port “white box switch”
• 極論するとOpenflowじゃなくてもいい • Micrel switch + ARM な GPL ソースコード • Northbound Networksがハードを供給 – MAC アドレスも 1 つついてくる ひょっとしてOpenWRTよりも簡単…?
Zodiac FX やろうぜ! 円高のうちに買っちゃおうぜ!