純粋に分散化されたピアツーピア通信に WebRTC を使用しようとしています。ノードが他のノードの詳細を交換して接続できるようにする P2P オーバーレイ ネットワークを構築しようとしています。
ノード間でSDP ブロブ (セッション記述オブジェクト)を交換した場合、このブロブと ICE 候補が与えられただけでノードへの接続を確立できるという意味で再利用可能ですか?
純粋に分散化されたピアツーピア通信に WebRTC を使用しようとしています。ノードが他のノードの詳細を交換して接続できるようにする P2P オーバーレイ ネットワークを構築しようとしています。
ノード間でSDP ブロブ (セッション記述オブジェクト)を交換した場合、このブロブと ICE 候補が与えられただけでノードへの接続を確立できるという意味で再利用可能ですか?
通常はいいえ: ソース PeerConnection からのオファーが必要です。PC1 の BLOB を PC2 で使用できるという保証はありません (おそらく使用できません)。ここで、ピア接続を作成し、CreateOffer を実行し、その SDP が使用されるまでピア接続を保持している場合は、そうですが、実際には「再使用」ではありません。
うまくいくかもしれませんが、現在または将来のさまざまなことがあなたを半ランダムに壊す可能性があります. 最善の解決策は、ソース ノードからオファーを作成し、それを p2p ネットワーク経由でターゲット ノードに渡すことです。ターゲット ノードは応答を返すことができます。着信トランザクションを待機するために PC を稼働させておくことができれば、「ソース」はそれを createAnswer に使用し、p2p ネットワークを介して 1 回のトリップをカットできます。衝突に対処する必要があります (ネットワークを介して配布された同じオファーを使用しようとする 2 つのノード。基本的に、必要になるまれなケースでは、失敗/再試行のセットアップでそれを処理する必要があります)。競合が発生した場合に備えて使用するオファーを回答に含めることもできます。