WebRTCゲートウェイは、WebRTCとSIPなどの確立されたVoIPテクノロジーを接続します。WebRTC (Web Real-Time Communication)は、World Wide Web Consortium (W3C)によって起草されたAPI定義であり、内部または外部のプラグインを必要とせずに、音声通話、ビデオチャット、メッセージングのためのブラウザ間アプリケーションをサポートします。[1]
使用シナリオ
異なるアプリケーション プロバイダーを使用するブラウザーが相互に通信できるようにするには (たとえば、アプリケーション プロバイダー X にログインしているユーザーが、アプリケーション プロバイダー Y にログインしているユーザーに電話をかけたい場合)、いわゆる WebRTC 台形を使用できます。この場合、2 つのプロバイダーはSIPなどの広く使用されているVoIPシグナリング プロトコルを使用して、プロバイダー間の連携を行います。ただし、それぞれのブラウザーベースのクライアントは、 HTTPとWebSocket 上に構築された独自のアプリケーション プロトコルを使用して、サーバーに信号を送信します。
WebRTCとSIPを仲介するこのコンポーネントは、WebRTCゲートウェイと呼ばれます。WebRTCゲートウェイは、さまざまなWebRTCアプリケーションを接続するだけでなく、WebRTC電話とVoIPまたはPSTN電話間の通信も可能にします。これにより、WebRTCゲートウェイはWebRTCアプリケーションの範囲を拡張し、より幅広い範囲と使用シナリオを可能にします。[2]

機能性
WebRTC の通常のプロセスでは、ユーザーは WebRTC JavaScriptアプリケーションをダウンロードします。このアプリケーションは、他のユーザーとの通信に使用されます。WebRTC ゲートウェイには通常、ユーザーが WebRTC JavaScriptアプリケーションをダウンロードするサーバーが含まれます。ユーザーからの通話を受信すると、WebRTC ゲートウェイは、着信者が WebRTC 経由で到達可能かどうかを判断する必要があります。到達可能でない場合は、通話をたとえば SIP に変換する必要があります。通話を SIP に変換するには、ゲートウェイはさまざまなレイヤーをマップする必要があります。
- シグナリング: WebRTC アプリケーション用の標準化されたシグナリング プロトコルはありません。ただし、 想定される通信シナリオのほとんどに SIP が適用可能であることと、JsSIP などのオープン ソース ソフトウェアが利用できることから、SIP over WebSocket (RFC 7118) が部分的に使用されることがよくあります。このような場合、ゲートウェイは SIP パケットをWebSocket層からUDP、TCP、またはTLSに再パッケージ化するだけで済みます。
- メディア トランスポート: WebRTC 仕様では、セキュリティ上の理由から、WebRTC アプリケーションはメディア コンテンツのトランスポートにSRTP を使用する必要があります。一部のVoIPアプリケーションも SRTP をサポートしていますが、これはオプションであるため、常にサポートされているわけではありません。着信側が SRTP をサポートしていない場合、WebRTC ゲートウェイは SRTP とRTP をマッピングする必要があります。
- メディア コンテンツ: WebRTC 仕様では、WebRTC アプリケーションはオーディオ通信にオーディオ コーデックとしてG.711またはOPUSのいずれかを使用する必要があります。オーディオ セッションを確立するために SIP を使用するアプリケーションは、任意のタイプのコーデックを自由に選択できます。着信側が OPUS または G.711 をサポートしていない場合、WebRTC ゲートウェイは通信の WebRTC 側と SIP 側の間でトランスコードする必要があります。
- メディア アドレス ネゴシエーション: WebRTC 仕様では、あらゆる種類のNAT を通過できるようにするため、WebRTC アプリケーションは、2 つのエンドポイントがメディア パケットを交換できるアドレスを検出するためにSTUNとICE を使用する必要があると規定されています。これらのテクノロジは一部の SIP ユーザー エージェントでも実装されていますが、これは必須ではありません。着信側がICE をサポートしていない場合、またはメディア トランスポート層でマッピングが必要な場合やメディア トランスコーディングが必要な場合は、WebRTC ゲートウェイが ICE エンドポイントとして機能し、発信側と着信側の間でメディア パケットをルーティングする必要があります。

利用可能なソリューション
WebRTC ゲートウェイ機能を提供するためのオープン ソースおよび商用ソリューションはすでに数多く存在します。メディア処理、シグナリング マッピングなど、WebRTC ゲートウェイに必要な機能の多くはSBCによってサポートされているため、WebRTC ゲートウェイの機能は SBC に統合されているか、SBC ベンダーによって提供されることがよくあります。
オープンソースの WebRTC ゲートウェイ
独自のソリューション
- アホイRTC
- AudioCodes WebRTC 対応 SBC、WebRTC GW
- Cisco Meeting Server (旧 Acano)
- ビデオRTCゲートウェイ(WebRTC)[3]
- FRAFOS ABC WebRTC ゲートウェイ
- フローズンマウンテン - LiveSwitch [4]
- IVèS オーディオ、ビデオ、テキスト WebRTC から SIP GW へ
- オラクル
- Pexip インフィニティ プラットフォーム
- PortSIP WebRTC ゲートウェイ
- REVE WebRTC-SIPゲートウェイ
- Ribbon の Kandy Link Gateway (旧 GENBAND & Sonus)
- テックSIP
- TeleFinity WebRTC-SIPゲートウェイ[5]
- WITソフトウェア
参考文献
- ^ 「WebRTC 1.0: ブラウザ間のリアルタイム通信」。Dev.w3.org 。 2012年9月12日閲覧。
- ^ 「WebRTC:方法と理由」(PDF) . FRAFOS. 2015-01-12.
- ^ 「ビデオRTC」。
- ^ 「非常に柔軟なビデオ、音声、メッセージング | Frozen Mountain Software」。
- ^ 「WebRTC-SIP ゲートウェイ | WebRTC 実装の簡素化」。
