October 02, 2008
NTTコミュニケーションズの有志の方が新たなビジネス創出のためにWire Free Gadgets Networkというコンセプトと実際に動くデモを見せていただきました。
どういうものかというと、例えば、デジカメで撮影した写真をネットワーク経由で送信すると、Wire Free Gadgets Networkなる仕組みが、写真データを「チャンネル」と呼ばれる論理的な「場所」に送信。そこにアクセスしているデジタルフォトフレームなどに画像が出力されると言う情報のルーティング技術。
アクセスするチャンネルのあり方次第で、「家族だけのチャンネル」や、「インターネットコミュニティのチャンネル」、「友達やサークルのチャンネル」などを簡単に作ることができる技術。
以下が、帰りの電車の中で書いたシステムイメージ。
我ながら、あまりわかりやすくはないと思うが、デジカメなどのデバイスから無線LANを経由してデータが送信される。
プロトコルはHTTPやSMTPなどの「普通の通信手段」を通じて、データはAtomPPというXMLベースのフォーマットを使って送信される。
送信先としての「チャンネル」に送られた写真データは、Wire Free Gadgets Network内で適切なチャンネルに送信される。
受信側として、例えばデジタルフォトフレームのスイッチを入れておけば、リアルタイムにその写真が送られてくる。
ここでのポイントは、沢山の人が写真を送信した場合に、Wire Free Gadgets Networkの方で自動的にキューイングの処理をしてあげるので、同時のデータが一気に送られてくるわけではなく、自動的にデータが整理されて送られてくる。
また、出力先もチャンネル定義を工夫することで、複数の入力元のデータを受信することができる。
例えば、オフィスで撮った写真と、現場Aで撮った写真、現場Bで撮った写真を、一カ所や複数のデバイスで受信するようなコントロールを自動的に行ってくれる。
また、受信デバイスを繋いだときには、まるでライブストリーミングやテレビを見るように、直近のデータから受信できるので、昔のデータが一気に流れてくるようなことはない。
こういった、情報の流れを簡単にコントロールできるサーバアプリケーションと、NTTコミュニケーションズが持つインフラ技術、そしてエンドツーエンドに存在するデバイスやWebサービスアプリケーションなどを組み合わせることで、例えば、ソーシャルインフラとしてのデータの流れが実現できそうな研究の発表である。
まだ具体的にサービスとして販売されたりするものではないが、アプリケーション自体はEC2の上で動いているものがあるので、もう使えるものであるそうだ。
この話を聞いていて、このエントリーを思い出していた。
「F's Garage:plaggerで夢見るソーシャルインフラの構築」
ここで言う、チャンネル制御とは、要は電話をかける、とか電気のコンセントをつなぐような感じで、画像やテキストのデータが送受信できるようになるということだ。
こういうネットワークを個々で作るのではなく、中継網として利用することで、スケーラブルな情報通信社会が作れるようになるのではないか?
しかし、こういうのはベンチャー企業が始めたばかりのスケーラビリティが求められない段階では、普通にApache + Mysql + PHPとかPerlとかRubyで作ってしまうだろうし、そのままスケールしてしまうと、MySQLを200台とか置いて頑張ってしまうから、そうではなくアプリケーション自体は公開してしまって、最初からその仕掛けを利用されるようにできれば良いのではないかと思う。
この技術のポイントはデータストリームの両側にあるデバイスやアプリケーションサーバだけを作れば、チャンネルに対してデータを投げれば、向こう側に到達するわけだから、エンドツーエンドの両側に専念すれば良いというものである。
とは言え、真ん中の部分を一社に依存するのは、やっぱり普及段階では障壁になってしまうし、プロトコルレベルの位置づけが囲い込まれるのはインターネット的ではないような気もするので、そこの仕様やアプリケーションは公開してしまった方が良いように思える。
なお、この技術に似ているもので他に思い出したモノが2点あるので、ちょっと解説しておこうと思う。
一つは、Flash Media Serverである。
Flash Media Serverというと動画のストリーミングが一番イメージするところかもしれないが、元々の技術は、個々のFlashファイル(swf)と、サーバとの間で共有オブジェクトを持って、かつメッセージ通信をしましょうというものだ。
そのデータ通信の利用例として動画ストリーミングやビデオチャットが存在する。
Flashプレーヤーが接続することが想定されており、クライアントのAction Scriptと、データ制御のためのサーバサイドAction Scriptを書けば通信できる。サーバサイドアクションスクリプトは、チャットのように全員で共有もできるし、適切なユーザーに送信することもできるし、アクセスログのようなデータを、ColdFusionに投げることも可能だ。その辺は、全部サーバサイドアクションスクリプトで書けば良い。
そういう意味では、Wire Free Gadget Networkよりも、一レイヤー低いところに位置するとは思う。ただし、まさにプロプライエタリな技術であり、サーバサイドAction Scriptは、それまでのFlash Developerのスキルとは違う分、なかなか普及していないというのはあるのかもしれない。
(出会い系チャットなどでは、これを使って利益を出しているそうだ)
次に思ったのは、twitterだ。
twitterというサービスの本質は、メッセージルーティングのプラットフォームだったハズ。
つまり、テキストによる電話交換機みたいなもの。
自分が何も指定しないでつぶやくと、友達全員にメッセージをブロードキャストできる。
@ユーザー名で相手を指定すると、相手と、相手と自分の共通の友達にメッセージが届く。
d ユーザー名で相手を指定すると、その人とだけ話ができる。
「ユーザー」をbotなどのコンピューターと見なすとわかりやすいが、Wire Free Gadgets Networkで言う「チャンネル」と同じだ。
受信側の「ユーザー」がフォローするコントロールをすることで、複数のチャンネルの情報がシリアライズされ、RSSやAPIで取得できる。
そこにWebブラウザやRSSリーダー以外に、モバツイッターのようなサーバがぶら下がっている。
基本的な考え方は、Wire Free Gadgets Networkと変わらないと思う。
しかも、圧倒的に簡単な仕組みでapiを利用できるので、あっという間に沢山のクライアントアプリが出てきたのはご存じの通り。
今はテキストデータだけが送られているが、極端なことを言えば、ishやBase64でエンコードしたデータを一行ずつ送っていけば、今は写ツで送っている画像データが専用クライアント上では直接再生できるようになっても良い。
もしapiに制限がなくなれば、そのうちwaresのようなプログラムや画像そのものをtwitterを経由して送る人が出てくるだろう。
まぁそれが非現実またはリッチすぎたとしても、現段階では1ライナーのようなプチプログラムや制御データをtwitter経由で送って面白い動作がするデバイスやサービスがあっても良いだろう。
例えば位置情報を元にGoogle Maps上にマッピングしてくれるサービスなんてのがあるが、そこで使われている「L:」と「緯度経度」を、それぞれ「コマンド」と「パラメータ」と見なせば、すでに存在しているとも言える。
また、「Twitterやインスタントメッセンジャーでバイク便の集荷受付--ライドアンドコネクト:ニュース - CNET Japan」のような試みも、ある種、Plaggerでピザを注文してみた、というのと同じようなものではないかと思う。
twitterの発想は壮大なのだが、twitterに慣れているユーザーほど、こういったインフラに成長するか?という部分では安定性の面で結構疑問であろう。
コンセプトに対して実装面、技術が追いついていないという印象は拭えない。
そういう部分を、今回のWire Free Gadgets Networkが品質面で凌駕できたら、新しいガラパゴスのネタとして、かなり期待できるのではないだろうか。
こういうインフラが整って、日本ではさまざまなメッセージを簡単にいろんなところに送れるんだよ、なんてことがあっても良いような気がする。
もちろん、オープンテクノロジを使っているこの技術は、ワールドワイドで利用されても良いと思う。シンプルさを保つことこそが、日本発のテクノロジが、ガラパゴスとして日本だけでしか利用されないということを防ぐ方法だと思うので、うまく実現できたら面白いのではないだろうか。
あとは、こういうインフラの上にサービスを置く会社が如何にお金を稼ぐか?というビジネスモデルにかかっている。こういうインフラは、転送料課金が正しい課金モデルだと思うので、転送量に対して利益を出せるモデルになることが大事。最初は無理でも、ユーザーが蓄積すれば逆転する、でも良い。
こういう技術が実用になるのも、インフラに応じたビジネスモデルを構築できるサービス事業者がいてこそ、だと思う。