Real Time Media Flow Protocol
Real Time Media Flow Protocol (RTMFP) は Adobe が開発しているプロトコル。RTMFP は低レイテンシの UDP ストリーミングや複数の Adobe Flash プレーヤー間の P2P 通信を可能にし、リッチなライブのリアルタイムコミュニケーションを可能にする。Flash Player 10.0 から利用可能。サーバー側は Adobe Media Server が対応。UDPポート番号1935および19350〜65535。
概要
[編集]RTMFP を使うと、ソーシャルネットワークやマルチユーザーゲームなどの、ライブ・リアルタイムコミュニケーションを利用しているアプリケーションはより高品質なコミュニケーションを提供できる。RTMFP はエンドユーザー間を直接つなぎ、それぞれのコンピュータのマイクとカメラで直接通信ができる。
P2P の確立にはUDPホールパンチングを利用しており、ファイアウォールなどにより、UDPホールパンチングが失敗する場合は、P2P 通信は利用できない。
RTMP と RTMFPの違い
[編集]主な違いは、それぞれのプロトコルがどのネットワークを使うかにある。RTMFP は User Datagram Protocol (UDP) を利用するのに対して、RTMP は Transmission Control Protocol (TCP) を利用する。ライブストリーミングメディアを配信する際、レイテンシやオーバーヘッドを減らしたり、信頼性を犠牲にしてもパケット損失により大きな耐性があるなど、UDP を利用するプロトコルはTCP を利用するプロトコルに比べていくつかの利点がある。無線インターネット接続など、パケットロスの多い通信環境では、TCP を利用すると再送のためレイテンシが大きくなる。
UDP であるにもかかわらず、TCP のような信頼性のある通信にも Flash Player 10.1 から対応しており、クライアント側の flash.net.NetStream
の dataReliable
などで設定する。
サーバーからの UDP ユニキャストにも使えるが、RTMPとは異なり、RTMFP はデータをサーバーを経由せずに直接他の Adobe Flash プレーヤーに送ることもできる。ただし、最初の P2P コネクションを確立するために、サーバーサイドの接続は必要となる。
アプリケーションレベルマルチキャスト
[編集]Flash Player 10.0 までの P2P は機能としては、1対1の通信のみであったが、10.1 からアプリケーションレベルでマルチキャストが行えるようになった。Flash Player 側で適切な配信経路(オーバーレイ・ネットワーク)を見つけ出し、P2P でつながったグループ全体に配信できるようになった。
歴史
[編集]この技術は2006年の Amicima の買収に基づく。
関連項目
[編集]外部リンク
[編集]- Cirrus | Real Time Media Flow Protocol (RTMFP) - Adobe Labs
- Adobe Flash Media Server - ピアアシストネットワーキングアプリケーションの構築
- FAQ for Real-Time Media Flow Protocol - Adobe
- RTMFP in Flash Player 10 beta - Justin's Flash Blog
- Peer to Peer (P2P) in Flash Player 10 beta - Justin's Flash Blog
- Video tutorial - Basics of P2P in Flash/Flex - FlashRealtime.com
- RTMFP for Flash
- OpenRTMFP Cumulus - RTMFP の P2P 接続を確立するためのオープン クロスプラットフォーム ランデブー サービス
- 仕様など