[レポート] WebRTC による超低遅延配信技術と CDN x エッジコンピューティングを実現する EdgeFunctions のご紹介 #interbee2020

2020.11.18

こんにちは、大前です。

本日 11/18 より Inter BEE 2020 ONLINE が開催中です!

例年は幕張メッセで開催していた本イベントも昨今の情勢からオンライン開催となりました。

幕張メッセに足を運んでいろんなブースを見て回る楽しみがなくなったのは残念ですが、オンライン開催ということで様々なセッションを手軽に視聴できるのは良いですね。

本記事は、Inter BEE 2020 ONLINE のセッション「革新!1秒未満の超低遅延配信技術とCDNエッジで提供するサーバーレスコンピューティングサービスのご紹介」のセッションレポートです。

セッション情報

セッションタイトル

革新!1秒未満の超低遅延配信技術とCDNエッジで提供するサーバーレスコンピューティングサービスのご紹介

セッション概要

スポーツ、e スポーツ、エンターテインメント、Eラーニングなど様々な分野におけるインターネットによる動画コンテンツ配信の需要が急増している中で、動画配信プラットフォームサービスの選定は、ユーザーの視聴品質とお客様のビジネスの成功に大きく影響します。

本セッションでは、ライムライトの1秒未満の超低遅延動画配信プラットフォームサービス Limelight Realtime Streamingの最新バージョンと、CDN エッジで提供されるサーバーレスコンピューティングサービス Limelight EdgeFunctionsの最新情報をお伝えします。

セッションリンク

該当のセッションはこちらから視聴が可能です。

スピーカー

  • 土居 大介 氏 ライムライト・ネットワークス・ジャパン株式会社
  • 山本 実里 氏 ライムライト・ネットワークス・ジャパン株式会社

セッションレポート

アジェンダ

  1. ライムライト・ネットワークスのご紹介
  2. セッション1: ネットワークエッジでのサーバーレスコンピューティング -EdgeFunctions のご紹介-
  3. セッション2: WebRTC を用いた 1秒未満の超低遅延配信について -Limelight Realtime Streaming(RTS)のご紹介-

ライムライト・ネットワークスのご紹介

  • ライムライト・ネットワークスとは
    • 世界最大規模のグローバルプライベートネットワークを保持
      • 80Tbps 以上の配信容量
      • 世界各国に数万台のキャッシュサーバ
      • 主要 ISP および IX と直接ピアリング
      • 冗長化されたプライベートバックボーン
    • 複数のビジネスを展開している
      • オンデマンドおよびライブビデオ配信
      • ソフトウェア、ファイル、デジタルメディア、ダウンロード
      • Web コンテンツ
      • エッジコンピュートワークロード
  • ライムライトを選ぶ理由
    • 高速・グローバルスケールなネットワーク
    • 自動化、カスタマイズ、管理されたソフトウェア
    • 幅広いサポート

セッション1: ネットワークエッジでのサーバーレスコンピューティング -EdgeFunctions のご紹介-

  • 本セッションで紹介すること
    • CDN とサーバーレスエッジコンピューティングとは
    • Limelight EdgeFunctions: ライムライトのサーバレスコンピューティング
    • EdgeFunctions のユースケース
    • サマリー
  • 3つのキーワード
    • CDN とは?
      • 複数のキャッシュサーバーから成る、コンテンツ配信用に最適化されたネットワーク
      • アクセスの集中やコンテンツのスケールにも対応可能と成る
    • サーバーレスコンピューティングとは
      • サーバーの構築や保守などの管理をユーザーにて行う必要がなくなる仕組み
    • エッジコンピューティングとは
      • ネットワークにおける端末機器において情報を処理したり、ネットワークにサーバを分散配置して処理を行ったりする分散処理型
  • どうして CDN とエッジコンピューティングに注目?
    • IDC の調査報告によると IP トラフィックの大部分は CDN トラフィックとなり、2023年には約80%に達する
    • そのため、今後サービスを提供していくにあたって CDN の存在は重要な役割を担うことになる
  • CDN とエッジコンピューティングを組み合わせるメリット
    • エッジで様々な仕組みを提供できるようになる
      • デバイスやユーザ毎に適切なコンテンツを配信する、など
  • ビジネスニーズの存在
    • 遅延の影響を受けやすい複雑なビデオワークフローの存在
    • アーキテクチャもマイクロサービス化
    • アプリケーションには CDN が不可欠になってきている
  • ライムライト社がリリースした EdgeFunctions
    • 3つの特徴
      • エッジ上でサーバレスコンピューティングが動作
        • 低遅延なアプリケーションを実現
        • スケーラビリティもあり
      • ライムライト社のグローバルネットワークと統合
        • ビデオ配信に最適
      • 開発者フレンドリー
        • API ベース
        • Node.js/Python/GO に対応
        • 充実した開発者ツール
          • API, CLI, CI/CDツール, サンプルなど、幅広いツールやサポートを提供
  • ライムライト EdgeFunctions が実現すること
    • パーソナライズされたストリーミング
      • ユーザーのデバイス、設定、帯域幅などに最適化されたビデオを配信
    • アクセス制御/コンプライアンス
      • ビデオへのアクセスを認証/承認またはブロックする
    • 動的広告挿入
      • 視聴者または地域のプロファイルでターゲティングされた広告で収益を最大化
    • フォレンジック透かし
      • 視聴者ごとに一意に識別可能なストリームで海賊行為を阻止
    • オブジェクト操作
      • 最適な配信とプレゼンテーションの為にビデオセグメントまたは画像を操作する
    • データ収集
      • オーディエンスと使用状況データを分析にフィード
    • A/Bテスト
      • パフォーマンス比較で使いやすさを向上
    • インテリジェントなリダイレクト
      • アクティブなオリジン選択でパフォーマンスを最適化


セッション2: WebRTC を用いた 1秒未満の超低遅延配信について -Limelight Realtime Streaming(RTS)のご紹介-

  • アジェンダ
    • WebRTC の基礎について
    • WebRTC の性能について
    • WebRTC の課題について
    • Limelight Networks Realtime Streaming(RTS)が解決する課題について
  • ライブ配信ビジネスにおいて、超低遅延双方向コミュニケーションに関する期待値は上がっている
    • ライブスポーツ&イベント
      • 試合状況と視聴の間に遅延がないことによる高い臨場感の提供
      • 複数視点での観戦体験
    • ニュース・報道
      • 1秒でも早くニュースを届ける速報性への貢献
    • インタラクティブストリーミング
      • オンラインでのコメント、チャット、投票など
    • ライブ・イベント会場
      • ライブ映像と見比べられるストリーミング体験
      • 複数視点でのライブ体験
  • 現代の様々なストリーミングソリューション
    • 従来型の HTTP ライブストリーミングや LL-HLS, LL-DASH, CMAF などが存在する
    • 低遅延配信はライブ配信とは異なり、今回のテーマである WebRTC という技術を使用する
  • zoom と WebRTC の比較
    • Web会議向け、かつリアルタイム配信という点では共通
    • zoom
      • より Web 会議に特化している
      • 想定される視聴者数は 100 - 1000 ほど
      • 視聴者が多いと遅延が増す
      • 1.2Mbps 以下帯域では映像の受信が困難(=高品質な映像をやりとりできるわけではない)
    • WebRTC
      • 個別のアプリケーションや UI をカスタマイズ可能
      • ABR に対応
      • 視聴者側はアプリやプラグインのインストールが不要
      • 高画質な配信が可能
    • zoom, WebRTC 共に大規模配信への対応という点では共に課題を抱えている
  • WebRTC の 2つの用途
    • 会議サービス
      • zoom 等に近いイメージ
    • 視聴者向けサービス
      • ライブ配信の様な形式
  • WebRTC はどのブラウザをサポートしている?
    • IE を除き、主要なブラウザはほぼサポートしている
    • コーデックは VP8, H.264, Opus への対応が求められる
    • 将来的には VP9, AV1, H.265 あたりの対応が予想される
  • WebRTC はなぜリアルタイムで配信できるのか?
    • UDP ベースの通信方式を採用している
    • また、HTTP ベースのストリーミング形式は基本的にチャンク(映像を決められた感覚で区切って送出する)である為、遅延が発生する
    • WebRTC はチャンクという概念はなく、とにかくストリームを送り続けるイメージ
      • その為、よりリアルタイムな配信が実現できる
  • WebRTC の仕組み
    • 様々な要素が登場する複雑な仕組みとなっている
      • 接続
        • UDP, ICE, STUN, TURN, SDP, シグナリング
      • 独自フレームワーク
        • メディアチャネル, データチャネル, 輻輳制御, 再送制御
      • 暗号化通信
        • DTLS, SRTP, SRTCP, SCTP
    • WebRTC はどうやって接続を確立する?
      • ICE によって接続経路と接続の候補が確認される
      • STUN によって NAT 越えが実現され, SDP(Session Description Protocol)で通信に必要な情報を交換する
      • P2P 通信ができない環境などでは、中継サーバとして TURN が使用されることもある
    • WebRTC で使用されているプロトコルは?
      • IP の上に様々なプロトコルが乗っており、非常に複雑
      • ベースは UDP による通信で、DTLS と呼ばれる TLS に似たプロトコルで通信の暗号化を行う
        • DTLS によって暗号化された経路上で、SRTP や SRTCP といった各種情報をやりとりするためのプロトコルが使用されている
      • SCTP とは
        • データチャネルがやりとりされるプロトコル
        • UDP 上で TCP の様な輻輳制御等を行ってくれるプロトコルだが、まだ未熟な部分も存在
        • SCTP に変わるプロトコルとして、Google が研究開発している QUIC というプロトコルが期待されている
  • WebRTC の性能は?
    • 実際に環境を用意してテストを実施した
    • 遅延
      • 250ms - 300ms で安定して超低遅延を実現
    • 画質
      • 基本的に高いビットレートで鮮明な映像を配信できる
      • 一方で、変化の大きい映像には対応しきれない部分も
    • 検証
      • FHD / HD / SD かつ 3 - 9Mbps で配信
      • UDP ベースの技術であるため映像のフレーム落ちはたまに発生するが仕方ない部分
      • 音声については Opus の仕組みからほぼ欠ける事がないため安定している
      • 解像度やビットレート、フレームレートを高くするとエンコーダーが耐えられなくなってしまう
      • FHD であっても 3Mbps あれば十分と感じた
    • 安定性
      • udpなのでフレーム落ちは発生するが安定している
      • 音声はOpus上に実装されたFECにより、途切れにくく安定している
    • スマホ視聴
      • 非常に綺麗に見える
      • 1-3Mbpsあればサービスは成り立つのではないか
    • 同時接続数
      • 同時接続数拡張に課題を持っている
    • 双方向性の実現
      • チャットやベッティング、音声コミュニケーションなど、様々な機能が提供されてきている
    • トラブルシュート
      • ほとんどは送受信側のネットワークやエンコーダのトラブル
      • エンコーダ自体の冗長化や帯域の確保などは推奨される
    • ユースケース
      • テレビのセカンドスクリーンや多視点配信など、様々なユースケースが考えられる
  • 対応エンコーダーについて
    • 下記エンコーダで検証済みとのこと
      • AWS Elemental Live
      • Haivison Kulabyte
      • OBS Studio
      • Telestream Wirecast
      • CEREVO LiveShell.X
  • WebRTC における課題と優位性
    • 課題
      • 低遅延と止まらない再生はトレードオフ。仕組み上、コマ落ちなどはどうしても発生する
      • 同時接続数の拡張に課題
        • 今後もより大規模な配信に対応する事が求められるはず
      • UDP や配信プロトコルのフェイルオーバーなどに課題
    • 優位性
      • 超低遅延であることのレスポンス性
      • チャットなどの双方向通信が与える臨場感
      • 超低遅延な複数視点を切り替えて視聴する AR 的体験の構築
  • ライムライト社が提供する Limelight Realtime Streaming - RTS は何を解決するのか?
    • 超低遅延配信における課題を解決し、優位性についてはより拡張する事を目指し、アップデートが行われている
    • 4つのキーワード
      • Resilience
        • 超低遅延ライブビデオストリームでも安定的かつ、より多くの同時視聴者数をサポートする、協力なアーキテクチャ
      • Scalability
        • ニーズに基づき、継続的に拡張ができる事
      • Picture Quality
        • より高いビットレートのビデオストリームをサポートする
      • Interactive Data
        • Shared object のサポートを容易に
  • RTS を体験できるウェビナーを実施予定
    • https://www.sbbit.jp/eventinfo/59978/

おわりに

Inter BEE 2020 ONLINE のセッション「革新!1秒未満の超低遅延配信技術とCDNエッジで提供するサーバーレスコンピューティングサービスのご紹介」のレポートでした。

前半の EdgeFunctions は AWS でいうところの Lambda Edge と考えて良いでしょうか。AWS だけでなく、こういった製品の存在を頭に入れておくと選択肢が広がって良いと思いました。

また、後半のセッションでは WebRTC の技術的な解説もあり、非常に勉強になるセッションでした。

動画配信の世界では超低遅延は今後もキーワードになっていくはずですので、WebRTC についてもしっかりとキャッチアップしていきたいところです。。


以上、AWS 事業本部の大前でした。

参考