Amazon Web Services ブログ

Rivian と Volkswagen Technology Group が Amazon Kinesis Video Streams で構築したリアルタイム車両セキュリティ

本記事は、2025 年 11 月 25 日に公開された How Rivian and Volkswagen Technology Group Built Real-Time Vehicle Security with Amazon Kinesis Video Streams を翻訳したものです。

このブログ記事では、Rivian と Volkswagen Group Technologies (Rivian) が AWS と提携し、Rivian の Gear Guard 機能強化を通じて車両のセキュリティ向上に役立てた方法をご紹介します。Amazon Kinesis Video Streams (KVS) を使用することで、Rivian はより洗練されたリアルタイムビデオストリーミングソリューションを構築し、車両所有者が Rivian モバイルアプリケーションから車載カメラのライブ映像をより即座にアクセスできるようになりました。

はじめに

Rivian は、R1T ピックアップトラック、R1S SUV、Electric Delivery Vans(EDVs) で知られる先駆的な電気自動車メーカーで、自動車ソリューションを絶えず革新しています。Rivian の中核的な製品の 1 つである Gear Guard は、オーナーが不在の際に車両とその内容物を保護するための包括的な機能群です。当初の Gear Guard は、車載カメラと AI アルゴリズムを使用して、不審な人的活動を検知し、ビデオを記録し、Rivian モバイルアプリでオーナーに通知するものでした。これらのビデオと記録は、車両のローカルに保存されていました。この重要なセキュリティ機能の自然な進化として、車両からリアルタイムのライブビデオストリーミングを Rivian モバイルアプリに直接導入することになりました。これにより、オーナーは検知された事象中に即座に視覚的にアクセスできるようになりました。

図1 Rivian Gear Guard キャラクター

ライブ動画ストリーミングのビジネス要件と技術要件

Gear Guard のライブビデオストリーミングを実装するには、重要な機能、パフォーマンス、セキュリティ要件に対応できるより堅牢なソリューションが必要でした。このシステムの主な目的は、車両所有者が認証済みのモバイルデバイスから Gear Guard のセキュリティカメラのライブビデオストリームを遠隔で視聴できるようにすることです。車両所有者は、オンデマンドでこのライブビューを開始したり、車両が駐車中、施錠中、無人の状態でも、Gear Guard のアラームシステムからの通知に応じてライブビューを開始したりできます。

Rivian がこの新しいライブ動画ストリーミングサービスを開発する際の主な機能要件は以下のとおりでした:

  • トラックベッドカメラを含む、車両のカメラからのリモート映像の視聴。
  • 特定のカメラを選択するか、カメラの映像を切り替えて表示するモードを選択できる機能。
  • アラームやモーション検知時にモバイル通知を生成し、最も関連性の高いカメラストリームを選択するボタンとサムネイルガイダンスを表示。
  • イベントの同時ライブストリーミングと車内ストレージへの録画。
  • さまざまな携帯通信会社や Wi-Fi ネットワークプロバイダー、モバイル端末に対応。

Rivian が応答性の高いユーザーエクスペリエンスを実現するために重要だった主なパフォーマンス基準は以下の通りです:

  • アクティベーション時間: リクエストからストリーム表示までの時間は 5 秒未満。
  • ストリーム遅延: カメラキャプチャからモバイル表示までの時間は 1 秒未満。
  • カメラ切り替え時間: カメラ選択から表示までの時間は 1 秒未満。

Rivian の主なプライバシーとセキュリティの要件は次のとおりでした:

エンドユーザーのプライバシーは、Rivian にとって設計プロセス全体を通して最重要の関心事でした。プライバシーの閾値分析とセキュリティ脅威分析が行われました。たとえば、Gear Guard アプリケーションは、サラウンドビューの校正への干渉や望まれないビデオトリガーを防ぐため、工場モードでは無効になっています。さらに、Rivian はストーカー行為への悪用を防ぐため、1 セッションおよび 1 日あたりの使用制限を設けました。

Amazon Kinesis Video Streams の選定理由

複数のオプションを評価した結果、Rivian は機能、パフォーマンス/スケーリング、セキュリティ/プライバシーの要件をすべて満たしていたため、ビデオストリーミングサービスとして Amazon KVS を選択しました。意思決定プロセスで重要だった Kinesis Video Streams の主な機能は次のとおりです。

  • 複数のストリーミングおよびメッセージングプロトコル (Web リアルタイム通信 (WebRTC)、リアルタイムストリーミングプロトコル (RTSP)、ストリーム伝送制御プロトコル (SCTP)) をサポートします。
  • 堅牢なシグナリングインフラストラクチャ – フルマネージドシグナリング、自動スケーリングとコミュニケーション用のチャネルの動的作成をサポートする STUN および TURN サーバー。
  • 包括的な監視機能 – サーバーの正常性と稼働時間のリアルタイム監視、コスト監視、メトリクスとアラートのための Amazon CloudWatch との統合、パフォーマンス追跡用のカスタムダッシュボード作成機能。
  • セキュリティ – Rivian のセキュリティモデルと適切に統合される AWS セキュリティとその他ネイティブサービスとの組み込み統合。
  • 拡張性 – オープンな標準 API をサポート (例: V4 signer URL を生成して、有効な署名付き一時 URL を生成し、Rivian の IoT およびモバイルデバイスでベンダーニュートラルな機能を許可)。複数の言語でアルゴリズム、クライアント側の実装、およびリファレンス SDK が利用可能です。
  • パフォーマンス – Native WebRTC は、サブ秒レイテンシーのストリーミングをサポートし、同時に数百万のストリームをサポートするための自動スケーリングと、最適なパフォーマンスのための地域展開をサポートします。
  • 深い技術的コラボレーション – Amazon Kinesis Video Streams サービスチームとの緊密なパートナーシップにより、SDK 統合と SigV4 デバッグ機能が実現し、開発の加速と複雑な実装課題の解決が可能になりました。

システムアーキテクチャ

Gear Guard のライブカメラアーキテクチャは、WebRTC を中心に構築されています。WebRTC は低レイテンシーを実現し、双方向のオーディオ/ビデオをサポートしているため、将来的にクライアントから車両への音声インタラクションを可能にする助けとなります。

図2 Gear Guard のテクニカルアーキテクチャ

ストリーミングシーケンスを開始

1 認証済みでペアリングされたモバイルアプリケーションのインスタンスがリモートトリガーを開始します。このリモートトリガーはモバイルゲートウェイを経由してクラウド上のリモートコマンドプロセッサに渡され、車両に送信されます。
2 モバイルと車両はそれぞれ、クラウドサービスから署名付きシグナリングサーバーの URL と TURN サーバーの詳細を要求し、Amazon KVS インフラストラクチャに接続できるようになります。
3 Amazon KVS シグナリングチャネルは、車両とモバイルアプリケーション間のピア間 IP アドレスの対話型検索を含む ICE を容易にし、Amazon KVS WebRTC TURN サーバーを経由した接続にフォールバックします。車両のカメラストリーミングとモバイルビューアーアプリケーションは、SDK ハンドシェイクで開始され、直接または間接的な接続を介して送信されるビデオストリームのパラメータを確立するのに役立ちます。
4 車両は WebRTC SRTP (暗号化) チャネルを介して RTSP ビデオストリームをモバイルに転送します。モバイルは WebRTC データチャネルを介してコマンドを送信し、別の SVS カメラから RTSP ストリームを選択できます。

主要な実装の概要

モバイルと車両間のメトリクスとイベントの交換にデータチャネルを使用する。

WebRTC データチャネルを利用することで、モバイルアプリケーションと車両間の情報のより堅牢な双方向の交換が可能になりました。これには、モバイルアプリケーションから車両へのカメラ切り替え要求などのリモートコマンドの送信が含まれ、ユーザーが異なるカメラビューを選択できるようになりました。逆に、ストリーミングセッションの終了を示すセッション終了要求が車両からモバイルアプリケーションに送信されました。さらに、データチャネルはストリーミング開始までの時間などの重要なメトリクスの送信を容易にし、パフォーマンスの監視と最適化を可能にしました。より効率的で構造化された通信を確保するため、このチャネルを介して送信されるすべてのデータは、プロトコルバッファ (protobuf) を使用してフォーマットされました。

シグナリングサーバーの資格情報を配信するための、車両証明書ベースの認証

Go プログラミング言語ベースのクラウドサービスが、一時的な資格情報を持つ SigV4 署名付き URL、TURN と STUN 接続の詳細を車両とモバイルアプリケーションに認証して提供します。これにより、SDP オファーを開始し、ICE 候補を確立できます。リクエストの順序は関係ありませんが、SDP オファーは 5 秒以内に開始する必要があります。車両はサービスに対して mTLS で認証され、その ID は証明書に埋め込まれています。モバイルアプリケーションのリクエストは oauth2 JWT で認証され、ユーザーが要求された車両にプロビジョニングされているかどうかを確認します。

このサービスは、車両の信号チャネルが存在するかどうかを確認するために、マルチリージョン Amazon DynamoDB テーブルを使用し、その後、車両に新しい Amazon Kinesis Video Streams 信号チャネルを提供するか、既存のものを再利用します。Amazon DynamoDB レコードは、30 日間の有効期限を設定するのに役立ち、リクエストごとに更新されます。

Amazon DynamoDB のレコード有効期限切れイベントが Lambda 関数をトリガーし、30 日間使用されていない場合にシグナリングチャネルを削除するのに役立ちます。これにより、Gear Guard サービスのアクティブユーザーを追跡し、プロビジョニングされたリソースのコストを削減するのに役立ちます。wss エンドポイントは SDP オファーを送信するために使用されます。SigV4 署名付き URL には、ChannelARN、ClientId、有効期限、セキュリティトークンなどが埋め込まれています。このサービスには、STUN サーバーと TURN サーバー (UDP、セキュア UDP、TCP) と資格情報も含まれています。

図3 Gear Guard ライブカメラフィード

AWS リージョンベースのシグナリングサーバーと TURN サーバーの割り当て:

ピア間接続で TURN サーバーを使用する場合、車両の位置と同じ AWS リージョンにシグナリングと TURN サーバーを割り当てたいと思います。これは、米国西海岸に車両とモバイルアプリケーションがあり、シグナリングチャネルが米国東海岸にプロビジョニングされる可能性を回避するためです。組み合わせは次のとおりです。

図4 Gear Guard の地域展開

最適化された実装では、AWS Elastic Kubernetes Service (Amazon EKS) 上で us-east-1 および us-west-2 の両リージョンにデプロイされているクラウドサービスが、カスタムの地理位置情報サービスを使用して、車両がカンザス州レバノン (39°50′N 98°35′W) の東側か西側のどちらに位置するかを特定するのに役立ちます。AWS と Rivian は、この地点を米国の中心地と特定しています (図 4 の破線で示されています)。このサービスは、車両が存在するリージョンに共存するアプリケーションの Kinesis Video Streams シグナリングチャネルをプロビジョニングするのに役立ちます。上記の例 (図 4) では、モバイルデバイスが東海岸または西海岸のどちらにあるかに関係なく、car-01 は us-west-2 にシグナリングチャネルが設定されます。同様に、car-02 は us-east-1 リージョンに設定されます。

プロダクション環境での学び (1 年間の振り返り)

1 年間の運用を経て、以下の重要な知見が得られました。

  • レイテンシ: WebRTC の選択は、HTTP Live Streaming (HLS) などの他のストリーミングプロトコルよりも低レイテンシストリーミングを実現するのに効果的でした。
  • 複数の視聴者に対するスケーラビリティ: WebRTC のピア・ツー・ピア方式の主な設計上の課題は、各クライアントが一意の暗号化キーを使用した個別の SRTP/SRTCP ストリームを必要とすることです。つまり、2 番目のクライアントが同じ車両からストリームを要求した場合、新しいストリームを開始する必要があり、単一の車両ストリームを複数のピアで直接共有することが制限されます。現在の設計は、ライブ視聴用の 1 つのピア・ツー・ピア接続に最適化されており、シグナリングチャネルごとに最大 10 人の参加者がサポートされています。
  • コスト管理: 接続サービスを介したユーザー要求に応じたシグナリングチャネルのプロビジョニングと削除の最適化。これにより、機能を使用していないエンドユーザーにシグナリングチャネルが事前にプロビジョニングされることがなくなります。
  • 課題と解決策:
    • ネットワークインターフェースへのバインディング: AWS SDK for C ++ では、ソケット接続に特定のネットワークインターフェースをバインドすることができませんでしたが、Rivian のストリーミング APN はデフォルトのネットワークインターフェースとは異なるため、これは不可欠でした。しかし、SDK はオープンソースなので、Rivian はネットワークバインディングのパッチを作成し、ストリーミングインターフェースにバインドすることができました。
    • 車両のウェイクアップ時間: スリープ中の車両がモバイルコマンドに応答し、ストリーミングを開始するまでの時間を最適化することが、重要なパフォーマンス要件でした。

機能強化と今後の計画

Rivian は、Gear Guard ライブカメラ機能を進化させ続け、次の機能強化を計画しています:

  • ユーザーインターフェースの次世代アップデートには、接続の異なる段階でのユーザーの可視性の向上や、ストリーミング中の車両ネットワーク状況の可視化が含まれます。
  • 適応ビットレートと ICE 再起動などの最適化により、セッション成功率 (この機能の最も重要な KPI) の向上を含め、成功したセッションを強化します。AWS WebRTC SDK はメディアチャネルの TWCC をサポートしており、これを適応ビットレート実装に使用できます。また、SDK は restartIce() をサポートしており、これを使って接続の切断/ネットワークの切り替え時に再接続する予定です。

結論

Rivian の Amazon Kinesis Video Streams を使用した Gear Guard ライブカメラの実装は、所有者のプライバシーを最優先にしながら (Rivian のインフラストラクチャや AWS クラウドにビデオ録画が保存されない)、車両のセキュリティ強化を支援するより高度なソリューションを示しています。WebRTC の低レイテンシと双方向通信機能、Kinesis Video Streams との密接な統合による堅牢なシグナリングと安全な資格情報管理を戦略的に活用することで、Rivian はパワフルなリアルタイムビデオストリーミング体験を実現しました。

Anirban Kundu

Anirban Kundu は、Rivian および Volkswagen Technology Group において、データプラットフォーム部門の IoT およびストリーミングのディレクターを務めています。分散型コンピューティングとビッグデータ処理、特にデータ収集とストリーム処理に情熱を注いでいます。過去にはゲノム解析や三次分析、産業用インターネットなど、世界をより良くするという利他的な目標に向けた取り組みに携わってきました。

Adam Arsenault

Adam Arsenault は、Rivian および Volkswagen Technology Group のプリンシパルソフトウェアエンジニアである。Rivian 車両と連携する iOS および Android モバイルアプリケーションのエンドツーエンドアーキテクチャと開発に注力している。25 年以上の経験を持つアダムは、顧客を魅了する階層化され信頼性が高くスケーラブルな分散アプリケーションの構築、およびデータとメトリクスを用いた情報に基づいた意思決定に尽力している。

Aditya Purohit

Aditya Purohit は、Rivian および Volkswagen Technology Group のスタッフソフトウェアエンジニアであり、スケーラブルでインテリジェントなコネクテッドカーシステムの開発に注力している。組み込みソフトウェアとデータ処理の深い専門知識を活かし、車載コンピューティングとクラウドベースの知見を連携させ、より豊かでリアルタイムなコネクテッドカー機能を実現する取り組みを行っている。EV 技術とエッジ AI の進化に情熱を注ぐアディティアは、車両の知能性、効率性、プライバシー、安全性を高めるシステムの設計を楽しんでいる。仕事以外では、ハイキングやアウトドア探索、新しいスポーツに挑戦する時間を過ごしている。

Asif Khan

Asif Khan は、Amazon Web Services のプリンシパルソリューションアーキテクトとして、自動車業界の企業顧客を支援している。自動車産業向けに革新的でコスト効率が高くスケーラブルなソリューションを設計・構築・提供することに情熱を注いでいる。仕事以外では、若手プロフェッショナルのメンタリングや、プロトタイプ構築を通じて新興技術トレンドを把握することを楽しんでいる。

Ajay Paknikar

AWS のプリンシパルカスタマーソリューションマネージャーである Ajay Paknikar は、グローバルな自動車顧客をサポートしています。アジャイは、AWS の優れた機能を活用して成功したビジネス成果を確保し、企業の AWS 導入プロセスを導くことに情熱を注いでいます。クライアント経営陣への戦略的アドバイザーとして、クラウド導入とクラウド成熟度の向上に注力しています。

本記事は Senior Solutions Architect の 長谷川 仁志 が翻訳しました。