2008年7月5日(土)

[つぶやき]通過連絡運輸の切符

2008年6月27日(金)でも書いた切符のことですが、昨日、また使う機会があったから、写真を撮っておきました。こんな変なデザインの切符です。

2008/07/04180829.jpg

[P2P]コミュニティーエンジン訪問

もう日付は変わりましたが、先ほど、Tomoさんの企画によりコミュニティーエンジン社のオフィスを訪問してきました。

2000年5月創業、ネットワークミドルウェアの開発、ネットワークを活用したアプリケーションの開発などを行っています。初台のスクウェア・エニックスビルの6階にあります。ビルの名前からも分かるように、ゲーム関係のお仕事が多いようです。

CEOの中嶋さんが、デモを2つ見せてくださいました。が、ひとつの詳細はオフレコとのことで書けません。アレをアレして皆さん大盛り上がりでした。もうひとつは、無線を使ってP2Pで動画の転送をしていました。チャットもできるそうです。何に使うんでしょうか。面白そう。

2008/07/05024225.jpg

コミュニティーエンジンは、リアルタイム通信アプリケーション用に「VCE」と呼ばれるミドルウェアを提供しており、その上に「LiquidSync」というP2Pメッシュネットワークを構成するミドルウェアを載せることができます。詳細なドキュメントが公開されていますので、リンク先をご覧ください。今回のメインは、そのLiquidSyncです。

LiquidSyncは各ノードのセッション数(ノード次数)が4本を超えないように、できるだけたくさんつないでいき、メッシュ構造を作るそうです。「4」という数字が出てきたので、なにかわけがあるのだろうと思い、ホップ数と次数の両者をできるだけ最小化するのに適したグラフ構造であるde Bruijn graphをすぐに思い浮かべてしまったのですが(ある参加者も同じことを言っていました)、とくにこの数字にこだわりはなく、3000ノードぐらいの規模では大体このぐらいの本数が現実的だとのことです。

また、LiquidSyncにはブロードキャストに特化することでアルゴリズムを単純化しているという特徴があります。これにより、メモリやCPUの使用量を抑えています。ブロードキャストに特化するのは、適用先のアプリケーションがブロードキャストを多用し、マルチキャストはあまりしないからだそうです。

また、パケットは落ちても再送しないそうです。確実ではないのですが、データが欠けても良いものに特化するということで、逆に再送をしないことを良い特徴としてアピールしているように感じました。

P2Pを使っているのも、やろうとしていることに対してP2Pがよさそうだから使っているということで、もしなにか違う良いアプローチがあるのなら、そちらを使うとのこと。

VCEで提供される暗号化も電子署名まではやらないそうで、これにLiquidSyncのブロードキャストが加わると、man-in-the-middle attackの標的になってしまいそうなものですが、10%程度のパケットは必ずサーバを通すことで攻撃を回避するとのこと。

これらの話を聞いていて、とても割り切りがいいなぁと思いました。あまりにも汎用的なものは求めずに、必要とされているアプリケーションに最適な軽い物を作るというアプローチは、非常に理にかなっていますね。大企業には普通にはまねできないので、ちょっとうらやましく思ってしまいました。

やっぱり、実際に動いているものを見せられると、納得感が違います。自分も納得してもらえるように、作らなきゃなー。

企画してくださったTomoさん、訪問させていただいたコミュニティーエンジン中嶋さん、ありがとうございました!

参加者の方々も、いろいろお話させていただいて、楽しかったです。今後とも、よろしくお願いします!

[つぶやき][本]あたらしい戦略の教科書を予約

→[amazon asin=4887596448 type=inline]