More Related Content
More from Hirokuma Ueno (18)
SNEPは大変だった
- 2. はじめに
「 SNEP 」という、 NFC の通信方法の話をします。
調査してわかったことを話すだけで、応用例などはないです・・・。
聞いていて眠たくなっても、大丈夫です。
知らなくても、生活には困りません。
大丈夫
Slide 2 / 13
- 3. SNEP ?
Solitary Non-Employed Persons
孤立無業 ( 者 )
20 歳以上 59 歳以下の在学中でない未婚者で、
ふだんの就業状態が無業のうち、一緒にいた人が家族以外に
一切いなかった人々
Simple NDEF Exchange Protocol
今回はこちらです。
Android Beam で使われてます。
Windows 8 や Blackberry でも使ってるとのことです。
Slide 3 / 13
- 5. SNEP ??
「すねっぷ」と発音 ( 私は )
NFC 端末同士で NDEF データを交換
端末同士を向かい合わせるような使い方
NDEF (NFC Data Exchange Format)
NFC Forum が決めたデータの形式
URL やファイルなどを渡したりできる ここが SNEP
Slide 5 / 13
- 6. SNEP ???
よくわからんが、こんな感じだと思う
OSI なんとか
アプリケーション層 NDEF
プレゼンテーション層
セッション層
SNEP
トランスポート層
ネットワーク層
LLCP
データリンク層
DEP
NFC R/W
物理層
RF
Slide 6 / 13
- 7. SNEP 自体は大変じゃない
client - server 型の通信
SNEP client SNEP server
要求
応答
要求も少ない
主に Put か Get
「私の NDEF をあげよう」か「お前の NDEF をください」
Slide 7 / 13
- 8. 大変だったのは、 LLCP
NFC Forum のドキュメントを読んでも、よくわからんかった
シーケンスがない
用語がわからん
ISO/IEC 802.2 (LLC) がわかってるといいのかも
とにかく、わからんかった
今も、わかっているとはいいがたい・・・。
DEP は、 R/W が勝手にやってくれた
SNEP
偉い!
LLCP
DEP
Slide 8 / 13
- 10. 通常の NFC 通信と LLCP 時の違い (1)
NFC の通信は、 Initiator - Target という位置関係
R/W が Initiator 、 NFC カードが Target 、など
Initiator から Target に要求を投げ、 Target がそれに応答する。
NRM(Normal Response Mode) と呼んでる
要求
応答
Initiator Target
Slide 10 / 13
- 11. 通常の NFC 通信と LLCP 時の違い (2)
LLCP は、どっちからも要求できる ( 立場が対等 )
ABM(Asynchronous Balanced Mode) と呼んでる
一定時間内に、相手に主導権を渡す
Initiator は、元々 Target に要求を投げることができる
Initiator が要求を投げることで、 Target が応答という形で要求を投げる
一定時間応答がないと、通信を切る
タイムアウト時間は、通信確立時に伝えておく
要求 / 応答
Initiator 要求 / 応答 Target
Slide 11 / 13
- 12. 作って思ったこと
Target になる方が、楽
最初は NRM なので、 Initiator が来るまで待っていればいい。
まあ、通信が始まってしまえばあまり変わらないが。
短い NDEF に限定すると、楽
128byte くらいなら 1 パケットで送信できるから
動作確認をどうやってやるか・・・。
SNEP できる端末は、今のところ Android くらいしかなさそう
このときは、 nfcpy というライブラリ +PaSoRi でテストした
Slide 12 / 13
- 13. おしまい
単に NDEF データを相手に渡すためのしくみ
Android だと、 NFC カードを読み込んだのと区別が付かなさそう
たぶん、 NDEF 読んだよーってインテントを上位層に投げるだけになるのでは
大きいデータを渡すときは、 Bluetooth とか Wi-Fi とか
NFC は認証するだけ・・・。
動的な NDEF データを送ることができる!
カードエミュレーションしても同じことができるやん・・・。
FeliCa Plug は、そういう製品だと思う ( 別名が FeliCa Dynamic Tag だし )
P2P ならではというものが、あまりないような気がしてきた
Slide 13 / 13