メインコンテンツまでスキップ

5. ICE Candidate Gathering and Exchange (ICE候補の収集と交換)

ICE処理の一環として、開始エージェントと応答エージェントの両方が候補を収集し、優先順位を付け、冗長な候補を排除し、使用プロトコル(ICE使用法)で定義されているようにピアと候補情報を交換します。

5.1. Full Implementation (完全実装)

5.1.1. Gathering Candidates (候補の収集)

ICEエージェントは、通信が差し迫っていると判断したときに候補を収集します。すべての候補にはトランスポートアドレスがあります。また、タイプとベースもあります。本仕様では4つのタイプが定義され収集されます:ホスト候補、サーバー反射候補、ピア反射候補、リレー候補。

5.1.1.1. Host Candidates (ホスト候補)

ホスト候補は、ホスト上のインターフェース(物理または仮想、VPNインターフェースを含む)に接続されたIPアドレスのポートにバインドすることによって取得されます。

各コンポーネントには「コンポーネントID」と呼ばれるIDが割り当てられます。RTP/RTCPデータストリームの場合、RTPとRTCPが同じUDPポートで多重化されていない限り、RTP自体のコンポーネントIDは1、RTCPのコンポーネントIDは2です。

5.1.1.2. Server-Reflexive and Relayed Candidates (サーバー反射候補とリレー候補)

エージェントは、サーバー反射候補とリレー候補を取得すべきです(SHOULD)。ただし、特定のネットワークではSTUNおよびTURNサーバーの使用は不要な場合があります。