(1)WebRTCとは?
今回取り上げるWebRTCは、Webブラウザに関する技術の1つで、技術者だけでなく一般のインターネットユーザーにも大きな影響を及ぼす存在として今、高い関心を集めている。
WebRTCはWeb Real-Time Communicationsの略で、Webブラウザにプラグインを追加することなく、Webブラウザ上でリアルタイムコミュニケーションを可能にするオープンフレームワークである。WebRTCは2011年にGoogleによって提唱され、WebRTCのAPIレベルでの標準化はW3Cで、プロトコルレベルでの標準化はIETFでそれぞれ進められている。
WebRTCプロジェクトにはGoogleだけでなく、Mozilla、Operaも参加しており、現在はChrome、Firefox、Operaの各ブラウザにこの技術が実装されている(図表1参照)。
OS環境 | 対応ブラウザ |
Windows / Mac | Chrome 26以降 Firefox 22以降 Opera 15以降 |
Android | Chrome 29以降 |
iOS | 開発中 |
WebRTCは図表2に示す通信形態をサポートしながらWebブラウザだけで次の機能を実現できる。
▼端末上のカメラやマイクからのストリームデータの取り込み
▼ストリームデータのP2P通信
▼テキストデータやバイナリデータのP2P通信
つまり、WebRTCにはインタラクティブなリアルタイムコミュニケーション機能を持つアプリケーションを開発するためのビルディングブロック(コンポーネント)が含まれており、JavaScript APIを介してアクセスすることができる。また、P2P通信を利用した端末間の相互接続も可能で、P2Pによるビデオチャットやファイル共有をWebブラウザだけで実現できる。
図表2 WebRTCの通信形態
片方向通信 | 双方向通信 |
1 → 1 |
1 対 1 |
1 → n |
n 対 n |