NTT DATA

DATA INSIGHT

NTTデータの「知見」と「先見」を社会へ届けるメディア

絞り込み検索
キーワードで探す
カテゴリで探す
サービスで探す
業種で探す
トピックで探す
キーワードで探す
カテゴリで探す
サービスで探す
業種で探す
トピックで探す
background-image-careers
2016年3月31日技術ブログ

次世代のリアルタイムコミュニケーション技術「WebRTC」

ブラウザ間でのP2Pリアルタイムコミュニケーションを実現するオープンな技術WebRTC(Web Real-Time Communication)が注目を集めています。特別なソフトやプラグインを使わず、簡単にブラウザ上でSkypeのような映像共有アプリケーションを作成できます。

WebRTCの概要

WebRTCは、2011年5月にGoogleがオープンソース化した、ブラウザ間でP2P通信により映像・音声等のデータ送受信を行う技術です。WebRTCのJavaScript APIを使うことで、これまでは専門的な知識・技術が必要であった映像共有システムを、プラットフォームに依存せず簡単に構築できます。2016年3月時点では、ChromeやFirefox等一部のブラウザがWebRTCに対応しています(対応状況はCanIUse参考1に記載されています)。後述の通り、NTTデータでは、映像・音声共有機能を活用した遠隔作業支援システムにWebRTCを活用しています。

WebRTCを体験できるサイトとして、AppRTC参考2があります。二台の端末(PC、スマートフォン、タブレット)からWebRTC対応ブラウザを使ってAppRTCへアクセスし、ブラウザだけで映像共有が行えることを体験してみてください。

WebRTCが備える3つの特徴

WebRTCの主な特徴は以下の3点です。

  • 通信帯域に応じた解像度およびフレームレートの自動調整

    通常はHD画質で映像を送信するが、ネットワーク(以降NW)輻輳時には解像度やフレームレートを落として映像を送信する、という自動調整が可能です。これにより、通信速度が不安定な状況でも、遅延を軽減して滑らかな映像表示を可能とします。

  • 異なるNW機器(NAT、ファイアーウォール)配下の端末間通信

    さまざまなNW環境下の端末を接続するために、ICE(Interactive Connectivity Establishment)参考3プロトコルが用いられます。ICEでは、まずOSに設定されたIPアドレスでP2P通信を試み、接続できなければSTUN(Session Traversal Utilities for NAT)参考4によって外部から見たIPアドレスを交換し、再度P2P接続を試みます。それでも接続できなければ、TURN(Traversal Using Relay around NAT)参考5によって外部サーバー経由で映像・音声の通信が行われます。このようにさまざまなNW環境で最善の通信を行うことができます。

  • データの暗号化

    WebRTCでは、映像・音声データをSRTP(Secure Real-time Transport Protocol)参考6によって暗号化して送信するため、データを盗聴されても、第三者による映像・音声の覗き見を防げます。SRTPにおいて、暗号化の方式にはAES(Advanced Encryption Standard)参考7が用いられます。

また、1対1通信に限らず、1対多や多対多の映像配信にWebRTCを利用するケースも増えてきています。その場合、各端末の映像を1本に合成して配信するMCU(Multipoint Control Unit)や、各端末の映像を集約した上で配信先をコントロールするSFU(Selective Forward Unit)を利用して、映像の多地点配信を実現します。

【図】

図:WebRTCによるP2P通信の様子(遠隔作業支援システムの場合)

NTTデータの取り組み

昨年8月、NTTデータは社内において、スマートグラスを活用した遠隔作業支援システムの利用を開始しました参考8。多様なデバイスに対応するため、遠隔作業支援システムは、映像・音声の共有機能にWebRTCを利用しています。WebRTCによる映像・音声の共有は、基本的にサーバーを介さず端末間(スマートグラス⇔確認者PC)のP2P通信で行われるため、サーバーにかかる負荷および映像の遅延を低減できました。

まとめ

本稿ではWebRTCの概要を紹介しました。現在、Facebook Messenger、Google Hangout、Slack等有名なアプリケーションのビデオ通話にWebRTCが使われており、今後もさまざまなWebアプリケーションの登場が期待されます。

NTTデータでは、WebRTCを活用してスマートグラスによる映像・音声の共有機能の改善を行っています。そのほかさまざまなシステムにおけるリアルタイムコミュニケーションの活用を提案していきます。

お問い合わせ