MONAC * Messaging over Opportunistic Network And Clouds

Download Report

Transcript MONAC * Messaging over Opportunistic Network And Clouds

MONAC
Messaging over Opportunistic Network And Clouds
MONAC – Messaging over
Opportunistic Network And Clouds
概要
• DTN (Delay Tolerant Network/Opportunistic
Network) と Cloud をシームレスにつなぎメッ
セージ交換するしかけを開発する
目標:DTN側で発
信されたメッセー
ジをTwitter へ投
稿可能にする
Cloud
DTN(すれちがい通信)
用途例
• 公衆網が不安定となる移動中やインターネット接続が無いイベント会
場等における情報共有と発信
• 通信不可能な状態を意識せずにメッセージを送信,通信可能となっ
たときに自動的に Cloud へ転送
• 現場でのユーザ間の情報共有や議論を自動的に Cloud と同期など
Cloud
通信可能地域
への移動
あとから同期
XXXは問題
では
羽田を出た
ところなう
トンネルの出入りによる接続断
オフライン環境
での情報共有
@xxx その点
はXXXです
イベント会場
用途例(災害時)
•
•
•
公衆網が未整備または断絶状態となった地域,避難所等における情報共有と発信
巡回者(パトロールやボランティアなど)がメッセージの転送を仲介
安否情報(災害直後)・不足物資(災害後)・センサ観測値(環境破壊時)の収集と発信
など
XXXが不足
しています.
Cloud
XXX地点の汚
XXXが不足
染度:YYY
XXXさんは
しています.
元気です
XXXさんは
元気です
XXX地点の汚
染度:YYY
構成
• jp.android_group.payforward.monac
– Android アプリ
– 認証, メッセージ発信
– PIAX DTN の組み込み
• jp.android_group.payforward.monac_gateway
– Servlet (Amazon EC2)
– 認証, メッセージのTwitterとの同期
monac アプリの構成
(4) Request token
monac gateway
Avail Message_ids
Missing Message_ids
Messages
Message
Synchronizer
(5) AccessToken
AccessSecret
(9) Pub-key
Certificate,
Secret key
(8) Secret
+ Pub-key
Cert
Retrieval
(6) Secret
(2) OAuth request
(3) redirect
(7)Secret
(1) OAuth request
Browser
PIAX DTN for Android
メッセージ+暗号化+署名+Cert
monac app
monac app
P2P/DTN
Device Discovery:
Bluetooth Discovery (Device Name)
WiFi IP multicast Discovery
Data Transfer:
Bluetooth Rfcomm (Not yet)
WiFi TCP/IP
MONAC
Messaging over Opportunistic Network And Clouds
monac gateway の構成
monac gateway
OAuth
Twitter handling
Tweet 投稿
Twitter-id,text,image
Login
(OAuth)
Issue
Cert
Message
Synchronizer
Verify
Cert
HTTPS(予定)
Twitter_id, Pub-key
Avail Message_ids
Node-id, Certificate,
Missing Message_ids
Pub-key
Secret key
Messages
monac app
投稿済みmessage_id
Twitter_id, Pub-key
HTTP
各 Message には Private-key による Signature 付与.
利用者以外への開示を制限(Secret key で暗号化)
DTN 内では certificate も添付.
課題/ToDo
•
•
•
•
TLにアイコン画像もほしい
画像,位置情報の発信もしたい
ダイレクトメッセージの扱い(相手宛が自分すら読めない)
Bouncycastle のサイズがおおきい
•
•
•
データベースが Sqljet による実装になっている
大量に同期するメッセージがあるときに一定数ごとに分割して送信
同期時のmsgリスト交換で既に同期済みのものを送信しない
•
•
•
•
•
•
•
返信の扱い(in_reply_to にならない)
Twitter 転送済みメッセージがどれか知りたい
いちど投げた投稿は削除できない
Twitter(クラウド側)から DTN への配信
容量の大きいデータの扱い
インターネット接続できる端末への転送の優先
人のメッセージを明示的に転送して転送回数制限/期限を延ばす(文字通りの
Retweet)
DTN側でのフォロー/フォローワ
匿名対応(認証していない端末の情報の転送)
NFC 対応
•
•
•
アプリアイコン
ONAC
バナー
ng over Opportunistic Network And Clouds