
Asterisk SIPサーバーを介して呼び出しが行われると、サーバーは各メディアチャネルに対して2つのポートを開きます。
- 通話レッグ1ビデオ用の2ポート
- コールレッグ2ビデオ用の2ポート
- 通話回線 1 オーディオ用 2 ポート
- 通話回線2オーディオ用の2ポート
Asteriskのメディア通信は双方向なので、コールラインごとに2つのポート(ビデオ1つ、オーディオ1つ)の代わりに4つのポート(ビデオ2つ、オーディオ2つ)が必要なのはなぜですか?特定のレッグとの通信には1つのポートしか使用されていませんが、明らかに2つのポートがnetstat
開いており、2番目の開いているポート(「未使用」ポートと呼ばれます)は、常に使用されているポートより+ 1多いです。たとえば、コール レッグ 1 ビデオ ポートは 17744 ですが、ポート 17745 も開いています。
Wiresharkはローカルトラフィックを分析します。
AsteriskサーバーのNetstat分析:
上から見ると(部分的に簡潔にするために他の呼び出し脚のWiresharkは含まれていません)、すべての呼び出し脚のオーディオポートとビデオポートに同じ問題が適用されるため、4つの状況が発生することがわかります。通話するたびにこの問題が発生します。
だから:サーバーの各通信パスに追加のポートがあるのはなぜですか?
asteriskのメディア通信は、あるポートから別のポートにトラフィックを転送する真の双方向ではありませんか?
また、Asteriskでこれらの一般的な動作が発生しますか?それとも、私の設定にこの動作に影響を与えるものがありますか?
答え1
これがRTCPストリームになります。 SDPを確認してください。
答え2
私はSIPコールが一方向UDP RTPオーディオストリーミングを使用しているのを見たことがあるので、1回の回線に2つ必要です。
Wiresharkを使用してSIPコールをキャプチャしました。 Telphonyメニューは、いくつかのVoIP関連の分析ツールを提供します。上記でキャプチャしたキャプチャでSIPストリームを表示できます。これにより、通話信号が表示されます。 RTP ストリーム表示は、要求されたメディアストリームを表示します。ストリームを選択して[分析]をクリックすると、多くのパケットデータと[ストリーム再生]ボタンを含むダイアログボックスが表示されます。キャプチャの各ストリームには、会話の一側面が含まれていることがわかります。
単一ポートを介した双方向通信では、Asteriskプロジェクトによって開発されたIAX / IAX2を検討しているようです。
~からhttps://www.voip-info.org/iax/
IAX Revision 2プロトコルは、他のIAX対応デバイスに接続するときにSIP、H.323などの代替としてAsteriskチームによって開発されました(リストは現在制限されていますが、非常に急速に増加しています)。 ... IAX2は単一のUDPポート4569を使用するため、NAT環境でうまく機能します(古いIAX1プロトコルはポート5036を使用します)。 IAX2は、制御およびデータトラフィックに1つのUDPポートのみを使用します。 IAXとSIPのトピックの4番目のトピックで述べたように、IAXを使用すると、制御接続を確立できる場合は常にオーディオを使用できます。