スキップしてコンテンツを表示

UDP 443 が閉じている環境で、KVS WebRTC が TURN/TLS (TCP 443) の relay candidate を生成し、接続を成功させるための前提条件と設定を教えてください

0

背景

ネットワーク制約

アウトバウンドは TCP 443 と UDP 53 のみ許可。

目的

UDP 443 を解放せずに、上記ネットワーク制約内で通信を成功させたい。 TURN TCP/TLS (turns:…:443?transport=tcp) のリレー経由で映像を流すことで可能であると推測している。

現状

GetIceServerConfig API で取得した ICE サーバー情報

[
  {
    "urls": "stun:stun.kinesisvideo.ap-northeast-1.amazonaws.com:443"
  },
  {
    "urls": [
      "turn:(略).kinesisvideo.ap-northeast-1.amazonaws.com:443?transport=udp",
      "turns:(略).kinesisvideo.ap-northeast-1.amazonaws.com:443?transport=udp",
      "turns:(略).kinesisvideo.ap-northeast-1.amazonaws.com:443?transport=tcp"   // ←期待するエンドポイント
    ],
    "username": "(略):(略)",
    "credential": "(略)"
  },
(以下略)

KVS WebRTC Test Page の設定

forceSTUN: false
forceTURN: false   // ← true も試したが結果は変わらず
useTrickleICE: true

sendUdpCandidates: false
acceptUdpCandidates: false
sendTcpCandidates: true
acceptTcpCandidates: true
sendHostCandidates: true
acceptHostCandidates: true

Test Page ログから、

  • host candidatesrflx candidate は生成されること
  • relay candidate が 1 件も出てこないこと
  • sendUdpCandidates / acceptUdpCandidatesfalse のため、 connectingfailed で終了

試したこと①

  • forceTURNtrue に変更
  • sendHostCandidates / acceptHostCandidatesfalse に変更 上記を組み合わせても relay candidate は生成されず。

試したこと②

GetIceServerConfig 応答から 5 分以内 に username , credential , turns:…:443?transport=tcp を抽出し、 Trickle ICE で candidate 取得を試行 relay candidate は生成されず。

補足情報

ネットワーク制約を撤廃して、UDP 443 でも通信できるように変更をした。 その際に、GetIceServerConfig 応答から 5 分以内 に username , credential , turns:…:443?transport=udp を抽出し、 Trickle ICE で candidate 取得を試行 relay candidate は生成されず。

質問

UDP 443 が閉じている環境で、KVS WebRTC が TURN/TLS (TCP 443) の relay candidate を確実に生成し接続を成功させるための前提条件と設定を教えてください。

  • 公式にサポート対象かどうか
  • Test Page / SDK で必須となるフラグ(例: sendUdpCandidates, forceTURN など)
  • sendUdpCandidates:false が transport=tcp の relay candidate 生成に与える既知の影響

同様の制約で KVS WebRTC を運用されている方、あるいは AWS 仕様に詳しい方からの設定例・確認手順の共有をお待ちしています。よろしくお願いします。

質問済み 9ヶ月前133ビュー
1回答
0

Based on the information available, I cannot provide a definitive answer about using Amazon Kinesis Video Streams (KVS) with WebRTC in an environment where UDP 443 is blocked, specifically regarding the generation of TURN/TLS (TCP 443) relay candidates.

The sources provided don't contain specific information about KVS WebRTC's behavior with TCP-only networks or the configuration required to ensure relay candidates are generated over TCP 443. There is some information about WebRTC error codes and debugging in the context of KVS, but nothing that addresses your specific network constraints and configuration needs.

One source mentions an error related to SDP packets in KVS WebRTC (error code 0x5600000f for STATUS_SDP_ATTRIBUTE_MAX_EXCEEDED), which was resolved by updating to a newer version of the Amazon KVS with WebRTC C SDK. This suggests that keeping your SDK updated might help with some WebRTC connection issues, but it doesn't specifically address your TCP relay candidate generation problem.

For your specific questions about:

  • Whether TCP-only connections are officially supported
  • Required flags in Test Page/SDK for TCP relay candidates
  • The impact of sendUdpCandidates:false on TCP relay candidate generation

I would recommend:

  1. Consulting the official AWS documentation for KVS WebRTC
  2. Opening a support case with AWS if you have a support plan
  3. Posting your question on AWS re:Post for community assistance

Without more specific information about KVS WebRTC's behavior in TCP-only environments, I cannot provide the configuration guidance you're seeking.
Sources
Amazon Kinesis Video Streams with WebRTC operation returned status code: 0x5600000f | AWS re:Post

回答済み 9ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

関連するコンテンツ