Session-initiation-protocol-basic-call-flow
提供:Dev Guides
SIP-基本的なコールフロー
次の図は、SIPセッションの基本的なコールフローを示しています。
以下は、上記のコールフローの段階的な説明です-
- プロキシサーバーに送信されるINVITE要求は、セッションの開始を担当します。
- プロキシサーバーは、呼び出し側(アリス)に 100 Trying 応答をすぐに送信して、INVITE要求の再送信を停止します。
- プロキシサーバーは、ロケーションサーバーでボブのアドレスを検索します。 アドレスを取得した後、INVITE要求をさらに転送します。
- その後、ボブによって生成された 180 Ringing (暫定応答)がアリスに返されます。
- ボブが電話を拾った直後に 200 OK 応答が生成されます。
- Bobは 200 OK を取得すると、Aliceから ACK を受け取ります。
- 同時に、セッションが確立され、RTPパケット(会話)が両端から流れ始めます。
- 会話の後、参加者(アリスまたはボブ)は、セッションを終了するために BYE リクエストを送信できます。
- BYE は、プロキシサーバーをバイパスしてアリスからボブに直接到達します。
- 最後に、Bobは 200 OK 応答を送信してBYEを確認し、セッションは終了します。
- 上記の基本的なコールフローでは、3つの*トランザクション*(1、2、3としてマーク)が利用可能です。
完全な呼び出し(INVITEから200 OKまで)は Dialog と呼ばれます。
SIP台形
プロキシは、あるユーザーを別のユーザーに接続するのにどのように役立ちますか? 次の図を使用して調べてみましょう。
図に示されているトポロジは、SIP台形と呼ばれます。 プロセスは次のように行われます-
- 発信者が呼び出しを開始すると、INVITEメッセージがプロキシサーバーに送信されます。 INVITEを受信すると、プロキシサーバーは、DNSサーバーの助けを借りて、呼び出し先のアドレスを解決しようとします。
- 次のルートを取得した後、発信者のプロキシサーバー(プロキシ1、発信プロキシサーバーとも呼ばれる)は、INVITE要求を着信者の着信プロキシサーバー(プロキシ2)として機能する着信者のプロキシサーバーに転送します。
- インバウンドプロキシサーバーはロケーションサーバーに接続して、ユーザーが登録した着信者のアドレスに関する情報を取得します。
- ロケーションサーバから情報を取得した後、コールを宛先に転送します。
- ユーザーエージェントが自分のアドレスを知ると、コールをバイパスできます。つまり、会話は直接通過します。