WebRTCの仕組みを理解する。効率的な使い方とは?

  • 映像伝送
  • #映像ネットワーク
  • #ライブ配信

目次

「WebRTC」はブラウザをベースとしたUDP/データ伝送プロトコル を活用した映像伝送をおこなうための技術です。

ブラウザで利用できる、また、そのための特別な機器を必要としない、という特長がありますが、実際にこの「WebRTC」というテクノロジーを利用、活用するには、どのようなことが必要になるのでしょうか?

この記事では、「WebRTC」の仕組みを理解し、このテクノロジーの利用/活用方法を解説します。

WebRTCの仕組み

前述のとおり、「WebRTC」はブラウザをベースとしたUDP/データ伝送プロトコルを活用した映像伝送をおこなうための技術です。

「WebRTC」は、リアルタイムで比較的大きなデータを送受信することができ、なによりも、オープン規格であることが現在の大きな普及に繋がっています。今後も、「WebRTC」を利用した映像伝送の映像や音声の品質を改善していくことで、利用するユーザーへの提供価値を向上させていくことが見込まれています。

「WebRTC」は、サーバと組み合わせることで利用が可能となりますが、サーバの構築方法は、その用途や規模により色々な選択肢があります。ここでは代表的なサーバの構築方法を見ていきましょう。

P2P(ピアツーピア)で通信する(STUN/TURNサーバ)

「WebRTC」の仕組みを理解するには、P2Pの仕組みが参考になります。
P2Pはサーバを介さずに端末同士で直接通信する仕組みです。これを利用するために必要なサーバは、それぞれの通信相手の情報を共有するためのシグナリングサーバや、STUN / TURNといったものです。

一般的に、PCやモバイルデバイスがインターネットに接続するためには、ローカルIPアドレスが割り当てられたうえで、それらがインターネットプロバイダから割り振られた一つのグローバルIPアドレスに変換された状態で、パブリックなネットワークにアクセスする必要があります。

このIPアドレスの変換機能を NAT(Network Address Transration) といいますが、パブリックからローカルへ情報を送信したいサービス側は、実際に送信したい端末のローカルIPアドレスがわからないため通信が不可能になってしまいます。
これを解決するため、いわゆる “NAT越え” を実現するために STUNサーバとTURNサーバが必要になるのです。

  • STUNサーバ
    外部ネットワーク、つまりパブリックネットワークからみた端末自身のIPアドレスを教えてくれるサーバを指します。ローカルIPアドレスとグローバルIPアドレスが違うことでNAT越えが必要かどうかを判断できます。
  • TURNサーバ
    パブリックネットワークから見た時に、NATの背後におかれたシングルピアの端末を見つけ、NATを超えて、グローバルIPアドレスとローカルIPアドレスの間をブリッジするために必要な機能を実装したサーバです。

SFUサーバ経由で接続する

一方、「WebRTC」で通信する映像や音声データをP2Pではなく、サーバを介して伝送する技術も存在します。それが SFU(Selective Forwarding Unit)と呼ばれる技術です。

P2Pで通信する以上、大容量データかつ複数の送信先が存在すると、サーバの負荷が大きくなり、低遅延で伝送/共有するといった特長が失われます。そのような場合、このSFUサーバを利用してサーバ経由での映像伝送/共有をおこなうことで、高品質な映像や音声を低遅延で且つ複数のユーザ/端末に届けることができるのです。

■関連記事:WebRTCとは?その特長と活用方法を理解しよう

記事をシェア

お客様の課題や要件に合わせて
製品とワークフローをご提案します

お問い合わせは
こちらから

専門知識を持った担当者が
お客様の課題や要件をお伺いします

お電話でも
お問い合わせできます

平日9:00~18:00

03-3518-6273