[要約] 要約:RFC 3665は、SIPの基本的な呼び出しフローの例を提供しています。 目的:SIPの実装者や開発者に、SIPの基本的な呼び出しフローを理解し、実装するためのガイドを提供することです。
Network Working Group A. Johnston Request for Comments: 3665 MCI BCP: 75 S. Donovan Category: Best Current Practice R. Sparks C. Cunningham dynamicsoft K. Summers Sonus December 2003
Session Initiation Protocol (SIP) Basic Call Flow Examples
セッション開始プロトコル(SIP)基本的なコールフローの例
Status of this Memo
本文書の位置付け
This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements. Distribution of this memo is unlimited.
このドキュメントは、インターネットコミュニティのインターネットの最良のプラクティスを指定し、改善のための議論と提案を要求します。このメモの配布は無制限です。
Copyright Notice
著作権表示
Copyright (C) The Internet Society (2003). All Rights Reserved.
Copyright(c)The Internet Society(2003)。無断転載を禁じます。
Abstract
概要
This document gives examples of Session Initiation Protocol (SIP) call flows. Elements in these call flows include SIP User Agents and Clients, SIP Proxy and Redirect Servers. Scenarios include SIP Registration and SIP session establishment. Call flow diagrams and message details are shown.
このドキュメントは、セッション開始プロトコル(SIP)コールフローの例を示します。これらのコールフローの要素には、SIPユーザーエージェントとクライアント、SIPプロキシ、リダイレクトサーバーが含まれます。シナリオには、SIP登録とSIPセッションの確立が含まれます。コールフロー図とメッセージの詳細が表示されます。
Table of Contents
目次
1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. General Assumptions. . . . . . . . . . . . . . . . . . . 3 1.2. Legend for Message Flows . . . . . . . . . . . . . . . . 3 1.3. SIP Protocol Assumptions . . . . . . . . . . . . . . . . 4 2. SIP Registration . . . . . . . . . . . . . . . . . . . . . . . 4 2.1. Successful New Registration. . . . . . . . . . . . . . . 5 2.2. Update of Contact List . . . . . . . . . . . . . . . . . 7 2.3. Request for Current Contact List . . . . . . . . . . . . 8 2.4. Cancellation of Registration . . . . . . . . . . . . . . 9 2.5. Unsuccessful Registration. . . . . . . . . . . . . . . . 10 3. SIP Session Establishment. . . . . . . . . . . . . . . . . . . 12 3.1. Successful Session Establishment . . . . . . . . . . . . 12 3.2. Session Establishment Through Two Proxies. . . . . . . . 15 3.3. Session with Multiple Proxy Authentication . . . . . . . 26 3.4. Successful Session with Proxy Failure. . . . . . . . . . 37 3.5. Session Through a SIP ALG. . . . . . . . . . . . . . . . 46 3.6. Session via Redirect and Proxy Servers with SDP in ACK . 54 3.7. Session with re-INVITE (IP Address Change) . . . . . . . 61 3.8. Unsuccessful No Answer . . . . . . . . . . . . . . . . . 67 3.9. Unsuccessful Busy. . . . . . . . . . . . . . . . . . . . 75 3.10. Unsuccessful No Response from User Agent . . . . . . . . 80 3.11. Unsuccessful Temporarily Unavailable . . . . . . . . . . 85 4. Security Considerations. . . . . . . . . . . . . . . . . . . . 91 5. References . . . . . . . . . . . . . . . . . . . . . . . . . . 91 5.1. Normative References . . . . . . . . . . . . . . . . . . 91 5.2. Informative References . . . . . . . . . . . . . . . . . 91 6. Intellectual Property Statement. . . . . . . . . . . . . . . . 91 7. Acknowledgments. . . . . . . . . . . . . . . . . . . . . . . . 92 8. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 93 9. Full Copyright Statement . . . . . . . . . . . . . . . . . . . 94
The call flows shown in this document were developed in the design of a SIP IP communications network. They represent an example minimum set of functionality.
このドキュメントに示されているコールフローは、SIP IP通信ネットワークの設計で開発されました。これらは、機能の最小セットの例を表します。
It is the hope of the authors that this document will be useful for SIP implementers, designers, and protocol researchers alike and will help further the goal of a standard implementation of RFC 3261 [1]. These flows represent carefully checked and working group reviewed scenarios of the most basic examples as a companion to the specifications.
このドキュメントがSIP実装者、デザイナー、プロトコル研究者にとっても役立つことを著者の希望であり、RFC 3261 [1]の標準的な実装の目標を促進するのに役立ちます。これらのフローは、仕様のコンパニオンとして、最も基本的な例のシナリオを慎重にチェックし、ワーキンググループをレビューしたことを表しています。
These call flows are based on the current version 2.0 of SIP in RFC 3261 [1] with SDP usage described in RFC 3264 [2]. Other RFCs also comprise the SIP standard but are not used in this set of basic call flows.
これらの呼び出しフローは、RFC 3261 [1]のSIPの現在のバージョン2.0に基づいており、RFC 3264 [2]に記載されているSDP使用法があります。他のRFCもSIP標準を構成しますが、この一連の基本的なコールフローでは使用されません。
Call flow examples of SIP interworking with the PSTN through gateways are contained in a companion document, RFC 3666 [5].
Gatewaysを介してPSTNとのSIPインターワーキングのコールフローの例は、コンパニオンドキュメントRFC 3666 [5]に含まれています。
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14, RFC 2119 [4].
「必須」、「そうしない」、「必須」、「shall」、「shall "、" ingle "、" should "、" not "、" becommended "、" bay "、および「optional」は、BCP 14、RFC 2119 [4]に記載されているように解釈される。
A number of architecture, network, and protocol assumptions underlie the call flows in this document. Note that these assumptions are not requirements. They are outlined in this section so that they may be taken into consideration and to aid in the understanding of the call flow examples.
このドキュメントのコールフローの根底にある多くのアーキテクチャ、ネットワーク、およびプロトコルの仮定があります。これらの仮定は要件ではないことに注意してください。これらは、このセクションで概説されているため、考慮され、コールフローの例の理解を支援することができます。
The authentication of SIP User Agents in these example call flows is performed using HTTP Digest as defined in [1] and [3].
これらの例コールフローのSIPユーザーエージェントの認証は、[1]および[3]で定義されているHTTPダイジェストを使用して実行されます。
Some Proxy Servers in these call flows insert Record-Route headers into requests to ensure that they are in the signaling path for future message exchanges.
これらのコールフローの一部のプロキシサーバーは、レコードルートヘッダーをリクエストに挿入して、将来のメッセージ交換の信号パスにいることを確認します。
These flows show TCP, TLS, and UDP for transport. See the discussion in RFC 3261 for details on the transport issues for SIP.
これらのフローは、輸送用のTCP、TLS、およびUDPを示しています。SIPの輸送問題の詳細については、RFC 3261のディスカッションを参照してください。
Dashed lines (---) represent signaling messages that are mandatory to the call scenario. These messages can be SIP or PSTN signaling. The arrow indicates the direction of message flow.
破線(---)は、コールシナリオに必須のシグナルメッセージを表します。これらのメッセージは、SIPまたはPSTNシグナル伝達にすることができます。矢印は、メッセージフローの方向を示します。
Double dashed lines (===) represent media paths between network elements.
ダブルダッシュライン(===)は、ネットワーク要素間のメディアパスを表します。
Messages with parentheses around their name represent optional messages.
名前の周りに括弧が付いたメッセージは、オプションのメッセージを表します。
Messages are identified in the Figures as F1, F2, etc. This references the message details in the list that follows the Figure. Comments in the message details are shown in the following form:
メッセージは、図でF1、F2などとして識別されます。これは、図に次のようなメッセージの詳細を参照しています。メッセージの詳細のコメントは、次の形式で表示されます。
/* Comments. */
This document does not prescribe the flows precisely as they are shown, but rather the flows illustrate the principles for best practice. They are best practices usages (orderings, syntax, selection of features for the purpose, handling of error) of SIP methods, headers and parameters. IMPORTANT: The exact flows here must not be copied as is by an implementer due to specific incorrect characteristics that were introduced into the document for convenience and are listed below. To sum up, the basic flows represent well-reviewed examples of SIP usage, which are best common practice according to IETF consensus.
このドキュメントでは、フローが表示されている間、フローを正確に規定していませんが、むしろフローがベストプラクティスの原則を示しています。これらは、SIPメソッド、ヘッダー、パラメーターのベストプラクティスの使用(注文、構文、目的のための機能の選択、エラーの処理)です。重要:ここでの正確なフローは、利便性のためにドキュメントに導入され、以下にリストされている特定の誤った特性のために、実装者がそうであるようにコピーしてはなりません。要約すると、基本的なフローは、IETFコンセンサスに従って最も一般的な慣行であるSIP使用のよくレビューされた例を表しています。
For simplicity in reading and editing the document, there are a number of differences between some of the examples and actual SIP messages. For example, the HTTP Digest responses are not actual MD5 encodings. Call-IDs are often repeated, and CSeq counts often begin at 1. Header fields are usually shown in the same order. Usually only the minimum required header field set is shown, others that would normally be present such as Accept, Supported, Allow, etc are not shown.
ドキュメントの読み取りと編集を簡単にするために、いくつかの例と実際のSIPメッセージの間には多くの違いがあります。たとえば、HTTPダイジェスト応答は実際のMD5エンコーディングではありません。Call-IDはしばしば繰り返され、CSEQカウントはしばしば1で始まります。ヘッダーフィールドは通常同じ順序で表示されます。通常、必要な最小ヘッダーフィールドセットのみが表示され、通常は受け入れ、サポート、許可などなど、存在するものは表示されません。
Actors:
俳優:
Element Display Name URI IP Address ------- ------------ --- ----------
User Agent Alice alice@atlanta.example.com 192.0.2.101 User Agent Bob bob@biloxi.example.com 192.0.2.201 User Agent bob@chicago.example.com 192.0.2.100 Proxy Server ss1.atlanta.example.com 192.0.2.111 Proxy/Registrar ss2.biloxi.example.com 192.0.2.222 Proxy Server ss3.chicago.example.com 192.0.2.233 ALG alg1.atlanta.example.com 192.0.2.128
Registration binds a particular device Contact URI with a SIP user Address of Record (AOR).
登録は、特定のデバイスにURIに連絡し、SIPユーザーアドレスのレコード(AOR)にバインドします。
Bob SIP Server | | | REGISTER F1 | |------------------------------>| | 401 Unauthorized F2 | |<------------------------------| | REGISTER F3 | |------------------------------>| | 200 OK F4 | |<------------------------------| | |
Bob sends a SIP REGISTER request to the SIP server. The request includes the user's contact list. This flow shows the use of HTTP Digest for authentication using TLS transport. TLS transport is used due to the lack of integrity protection in HTTP Digest and the danger of registration hijacking without it, as described in RFC 3261 [1]. The SIP server provides a challenge to Bob. Bob enters her/his valid user ID and password. Bob's SIP client encrypts the user information according to the challenge issued by the SIP server and sends the response to the SIP server. The SIP server validates the user's credentials. It registers the user in its contact database and returns a response (200 OK) to Bob's SIP client. The response includes the user's current contact list in Contact headers. The format of the authentication shown is HTTP digest. It is assumed that Bob has not previously registered with this Server.
ボブはSIPレジスタリクエストをSIPサーバーに送信します。リクエストには、ユーザーの連絡先リストが含まれています。このフローは、TLS輸送を使用した認証のためにHTTPダイジェストの使用を示しています。TLS輸送は、RFC 3261 [1]に記載されているように、HTTPダイジェストに整合性保護の欠如と登録のハイジャックの危険性があるために使用されます。SIPサーバーは、ボブに挑戦します。ボブは、有効なユーザーIDとパスワードに入ります。BobのSIPクライアントは、SIPサーバーが発行した課題に従ってユーザー情報を暗号化し、SIPサーバーに応答を送信します。SIPサーバーは、ユーザーの資格情報を検証します。連絡先データベースでユーザーを登録し、ボブのSIPクライアントに応答(200 OK)を返します。応答には、連絡先ヘッダーにユーザーの現在の連絡先リストが含まれます。表示されている認証の形式は、HTTPダイジェストです。ボブは以前にこのサーバーに登録されていないと想定されています。
Message Details
メッセージの詳細
F1 REGISTER Bob -> SIP Server
F1レジスタボブ - > SIPサーバー
REGISTER sips:ss2.biloxi.example.com SIP/2.0 Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 Max-Forwards: 70 From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com> Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER Contact: <sips:bob@client.biloxi.example.com> Content-Length: 0 F2 401 Unauthorized SIP Server -> Bob
SIP/2.0 401 Unauthorized Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com>;tag=1410948204 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER WWW-Authenticate: Digest realm="atlanta.example.com", qop="auth", nonce="ea9c8e88df84f1cec4341ae6cbe5a359", opaque="", stale=FALSE, algorithm=MD5 Content-Length: 0
F3 REGISTER Bob -> SIP Server
F3レジスタボブ - > SIPサーバー
REGISTER sips:ss2.biloxi.example.com SIP/2.0 Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashd92 Max-Forwards: 70 From: Bob <sips:bob@biloxi.example.com>;tag=ja743ks76zlflH To: Bob <sips:bob@biloxi.example.com> Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 2 REGISTER Contact: <sips:bob@client.biloxi.example.com> Authorization: Digest username="bob", realm="atlanta.example.com" nonce="ea9c8e88df84f1cec4341ae6cbe5a359", opaque="", uri="sips:ss2.biloxi.example.com", response="dfe56131d1958046689d83306477ecc" Content-Length: 0
F4 200 OK SIP Server -> Bob
F4 200 OK SIPサーバー - >ボブ
SIP/2.0 200 OK Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashd92 ;received=192.0.2.201 From: Bob <sips:bob@biloxi.example.com>;tag=ja743ks76zlflH To: Bob <sips:bob@biloxi.example.com>;tag=37GkEhwl6 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 2 REGISTER Contact: <sips:bob@client.biloxi.example.com>;expires=3600 Content-Length: 0
Bob SIP Server | | | REGISTER F1 | |------------------------------>| | 200 OK F2 | |<------------------------------| | |
Bob wishes to update the list of addresses where the SIP server will redirect or forward INVITE requests.
ボブは、SIPサーバーがリクエストをリダイレクトまたは転送するアドレスのリストを更新したいと考えています。
Bob sends a SIP REGISTER request to the SIP server. Bob's request includes an updated contact list. Since the user already has authenticated with the server, the user supplies authentication credentials with the request and is not challenged by the server. The SIP server validates the user's credentials. It registers the user in its contact database, updates the user's contact list, and returns a response (200 OK) to Bob's SIP client. The response includes the user's current contact list in Contact headers.
ボブはSIPレジスタリクエストをSIPサーバーに送信します。ボブのリクエストには、更新された連絡先リストが含まれています。ユーザーはすでにサーバーで認証されているため、ユーザーはリクエストで認証資格情報を提供し、サーバーによって挑戦されません。SIPサーバーは、ユーザーの資格情報を検証します。連絡先データベースでユーザーを登録し、ユーザーの連絡先リストを更新し、BobのSIPクライアントに応答(200 OK)を返します。応答には、連絡先ヘッダーにユーザーの現在の連絡先リストが含まれます。
Message Details
メッセージの詳細
F1 REGISTER Bob -> SIP Server
F1レジスタボブ - > SIPサーバー
REGISTER sips:ss2.biloxi.example.com SIP/2.0 Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 Max-Forwards: 70 From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com> Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER Contact: mailto:bob@biloxi.example.com Authorization: Digest username="bob", realm="atlanta.example.com", qop="auth", nonce="1cec4341ae6cbe5a359ea9c8e88df84f", opaque="", uri="sips:ss2.biloxi.example.com", response="71ba27c64bd01de719686aa4590d5824" Content-Length: 0
F2 200 OK SIP Server -> Bob
F2 200 OK SIPサーバー - >ボブ
SIP/2.0 200 OK Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com>;tag=34095828jh Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER Contact: <sips:bob@client.biloxi.example.com>;expires=3600 Contact: <mailto:bob@biloxi.example.com>;expires=4294967295 Content-Length: 0
Bob SIP Server | | | REGISTER F1 | |------------------------------>| | 200 OK F2 | |<------------------------------| | |
Bob sends a register request to the Proxy Server containing no Contact headers, indicating the user wishes to query the server for the user's current contact list. Since the user already has authenticated with the server, the user supplies authentication credentials with the request and is not challenged by the server. The SIP server validates the user's credentials. The server returns a response (200 OK) which includes the user's current registration list in Contact headers.
ボブは、連絡先ヘッダーを含むプロキシサーバーにレジスタリクエストを送信し、ユーザーがユーザーの現在の連絡先リストを照会したいと考えています。ユーザーはすでにサーバーで認証されているため、ユーザーはリクエストで認証資格情報を提供し、サーバーによって挑戦されません。SIPサーバーは、ユーザーの資格情報を検証します。サーバーは、連絡先ヘッダーにユーザーの現在の登録リストを含む応答(200 OK)を返します。
Message Details
メッセージの詳細
F1 REGISTER Bob -> SIP Server
F1レジスタボブ - > SIPサーバー
REGISTER sips:ss2.biloxi.example.com SIP/2.0 Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 Max-Forwards: 70 From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com> Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER Authorization: Digest username="bob", realm="atlanta.example.com", nonce="df84f1cec4341ae6cbe5ap359a9c8e88", opaque="", uri="sips:ss2.biloxi.example.com", response="aa7ab4678258377c6f7d4be6087e2f60" Content-Length: 0
F2 200 OK SIP Server -> Bob
F2 200 OK SIPサーバー - >ボブ
SIP/2.0 200 OK Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 ;received=192.0.2.201
From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com>;tag=jqoiweu75 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER Contact: <sips:bob@client.biloxi.example.com>;expires=3600 Contact: <mailto:bob@biloxi.example.com>;expires=4294967295 Content-Length: 0
Bob SIP Server | | | REGISTER F1 | |------------------------------>| | 200 OK F2 | |<------------------------------| | |
Bob wishes to cancel their registration with the SIP server. Bob sends a SIP REGISTER request to the SIP server. The request has an expiration period of 0 and applies to all existing contact locations. Since the user already has authenticated with the server, the user supplies authentication credentials with the request and is not challenged by the server. The SIP server validates the user's credentials. It clears the user's contact list, and returns a response (200 OK) to Bob's SIP client.
ボブは、SIPサーバーへの登録をキャンセルしたいと考えています。ボブはSIPレジスタリクエストをSIPサーバーに送信します。リクエストの有効期限は0で、既存のすべての連絡先場所に適用されます。ユーザーはすでにサーバーで認証されているため、ユーザーはリクエストで認証資格情報を提供し、サーバーによって挑戦されません。SIPサーバーは、ユーザーの資格情報を検証します。ユーザーの連絡先リストをクリアし、ボブのSIPクライアントへの応答(200 OK)を返します。
Message Details
メッセージの詳細
F1 REGISTER Bob -> SIP Server
F1レジスタボブ - > SIPサーバー
REGISTER sips:ss2.biloxi.example.com SIP/2.0 Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 Max-Forwards: 70 From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com> Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER Expires: 0 Contact: * Authorization: Digest username="bob", realm="atlanta.example.com", nonce="88df84f1cac4341aea9c8ee6cbe5a359", opaque="", uri="sips:ss2.biloxi.example.com", response="ff0437c51696f9a76244f0cf1dbabbea" Content-Length: 0
F2 200 OK SIP Server -> Bob SIP/2.0 200 OK Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com>;tag=1418nmdsrf Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER Content-Length: 0
Bob SIP Server | | | REGISTER F1 | |------------------------------>| | 401 Unauthorized F2 | |<------------------------------| | REGISTER F3 | |------------------------------>| | 401 Unauthorized F4 | |<------------------------------| | |
Bob sends a SIP REGISTER request to the SIP Server. The SIP server provides a challenge to Bob. Bob enters her/his user ID and password. Bob's SIP client encrypts the user information according to the challenge issued by the SIP server and sends the response to the SIP server. The SIP server attempts to validate the user's credentials, but they are not valid (the user's password does not match the password established for the user's account). The server returns a response (401 Unauthorized) to Bob's SIP client.
ボブはSIPレジスタリクエストをSIPサーバーに送信します。SIPサーバーは、ボブに挑戦します。ボブは彼女/彼のユーザーIDとパスワードに入ります。BobのSIPクライアントは、SIPサーバーが発行した課題に従ってユーザー情報を暗号化し、SIPサーバーに応答を送信します。SIPサーバーはユーザーの資格情報を検証しようとしますが、それらは有効ではありません(ユーザーのパスワードは、ユーザーのアカウントに確立されたパスワードと一致しません)。サーバーは、ボブのSIPクライアントに応答(401)を返します。
Message Details
メッセージの詳細
F1 REGISTER Bob -> SIP Server
F1レジスタボブ - > SIPサーバー
REGISTER sips:ss2.biloxi.example.com SIP/2.0 Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com> Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER Contact: <sips:bob@client.biloxi.example.com> Content-Length: 0 F2 Unauthorized SIP Server -> Bob
SIP/2.0 401 Unauthorized Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl To: Bob <sips:bob@biloxi.example.com>;tag=1410948204 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 1 REGISTER WWW-Authenticate: Digest realm="atlanta.example.com", qop="auth", nonce="f1cec4341ae6ca9c8e88df84be55a359", opaque="", stale=FALSE, algorithm=MD5 Content-Length: 0
F3 REGISTER Bob -> SIP Server
F3レジスタボブ - > SIPサーバー
REGISTER sips:ss2.biloxi.example.com SIP/2.0 Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashd92 Max-Forwards: 70 From: Bob <sips:bob@biloxi.example.com>;tag=JueHGuidj28dfga To: Bob <sips:bob@biloxi.example.com> Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 2 REGISTER Contact: <sips:bob@client.biloxi.example.com> Authorization: Digest username="bob", realm="atlanta.example.com", nonce="f1cec4341ae6ca9c8e88df84be55a359", opaque="", uri="sips:ss2.biloxi.example.com", response="61f8470ceb87d7ebf508220214ed438b" Content-Length: 0
/* The response above encodes the incorrect password */
F4 401 Unauthorized SIP Server -> Bob
F4 401不正なSIPサーバー - >ボブ
SIP/2.0 401 Unauthorized Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashd92 ;received=192.0.2.201 From: Bob <sips:bob@biloxi.example.com>;tag=JueHGuidj28dfga To: Bob <sips:bob@biloxi.example.com>;tag=1410948204 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com CSeq: 2 REGISTER WWW-Authenticate: Digest realm="atlanta.example.com", qop="auth", nonce="84f1c1ae6cbe5ua9c8e88dfa3ecm3459", opaque="", stale=FALSE, algorithm=MD5 Content-Length: 0
This section details session establishment between two SIP User Agents (UAs): Alice and Bob. Alice (sip:alice@atlanta.example.com) and Bob (sip:bob@biloxi.example.com) are assumed to be SIP phones or SIP-enabled devices. The successful calls show the initial signaling, the exchange of media information in the form of SDP payloads, the establishment of the media session, then finally the termination of the call.
このセクションでは、2人のSIPユーザーエージェント(UAS)の間のセッションの確立について詳しく説明しています。アリスとボブ。Alice(sip:alice@atlanta.example.com)とBob(sip:bob@biloxi.example.com)は、SIP電話またはSIP対応デバイスであると想定されています。成功した呼び出しは、最初のシグナル伝達、SDPペイロードの形でのメディア情報の交換、メディアセッションの確立、そして最後にコールの終了を示します。
HTTP Digest authentication is used by Proxy Servers to authenticate the caller Alice. It is assumed that Bob has registered with Proxy Server Proxy 2 as per Section 2 to be able to receive the calls via the Proxy.
HTTP Digest認証は、プロキシサーバーによって使用され、発信者アリスを認証します。Bobは、プロキシを介して通話を受信できるように、セクション2に従ってProxy Server Proxy 2に登録していると想定されています。
Alice Bob | | | INVITE F1 | |----------------------->| | 180 Ringing F2 | |<-----------------------| | | | 200 OK F3 | |<-----------------------| | ACK F4 | |----------------------->| | Both Way RTP Media | |<======================>| | | | BYE F5 | |<-----------------------| | 200 OK F6 | |----------------------->| | |
In this scenario, Alice completes a call to Bob directly.
このシナリオでは、アリスはボブへの呼び出しを直接完了します。
Message Details
メッセージの詳細
F1 INVITE Alice -> Bob
F1アリスを招待 - >ボブ
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F2 180 Ringing Bob -> Alice
F2 180リンギングボブ - >アリス
SIP/2.0 180 Ringing Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=8321234356 Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com;transport=tcp> Content-Length: 0
F3 200 OK Bob -> Alice
F3 200 OKボブ - >アリス
SIP/2.0 200 OK Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=8321234356 Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000 F4 ACK Alice -> Bob
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bd5 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=8321234356 Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 ACK Content-Length: 0
/* RTP streams are established between Alice and Bob */
/* Bob Hangs Up with Alice. Note that the CSeq is NOT 2, since Alice and Bob maintain their own independent CSeq counts. (The INVITE was request 1 generated by Alice, and the BYE is request 1 generated by Bob) */
F5 BYE Bob -> Alice
F5バイボブ - >アリス
BYE sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/TCP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 Max-Forwards: 70 From: Bob <sip:bob@biloxi.example.com>;tag=8321234356 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 BYE Content-Length: 0
F6 200 OK Alice -> Bob
F6 200 OKアリス - >ボブ
SIP/2.0 200 OK Via: SIP/2.0/TCP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sip:bob@biloxi.example.com>;tag=8321234356 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 BYE Content-Length: 0
Alice Proxy 1 Proxy 2 Bob | | | | | INVITE F1 | | | |--------------->| | | | 407 F2 | | | |<---------------| | | | ACK F3 | | | |--------------->| | | | INVITE F4 | | | |--------------->| INVITE F5 | | | 100 F6 |--------------->| INVITE F7 | |<---------------| 100 F8 |--------------->| | |<---------------| | | | | 180 F9 | | | 180 F10 |<---------------| | 180 F11 |<---------------| | |<---------------| | 200 F12 | | | 200 F13 |<---------------| | 200 F14 |<---------------| | |<---------------| | | | ACK F15 | | | |--------------->| ACK F16 | | | |--------------->| ACK F17 | | | |--------------->| | Both Way RTP Media | |<================================================>| | | | BYE F18 | | | BYE F19 |<---------------| | BYE F20 |<---------------| | |<---------------| | | | 200 F21 | | | |--------------->| 200 F22 | | | |--------------->| 200 F23 | | | |--------------->| | | | |
In this scenario, Alice completes a call to Bob using two proxies Proxy 1 and Proxy 2. The initial INVITE (F1) contains a pre-loaded Route header with the address of Proxy 1 (Proxy 1 is configured as a default outbound proxy for Alice). The request does not contain the Authorization credentials Proxy 1 requires, so a 407 Proxy Authorization response is sent containing the challenge information. A new INVITE (F4) is then sent containing the correct credentials and the call proceeds. The call terminates when Bob disconnects by initiating a BYE message.
このシナリオでは、アリスは2つのプロキシプロキシ1とプロキシ2を使用してボブへの呼び出しを完了します。最初の招待(F1)には、プロキシ1のアドレスを持つ事前にロードされたルートヘッダーが含まれています(プロキシ1はアリスのデフォルトのアウトバウンドプロキシとして構成されています)。リクエストには認証資格情報のプロキシ1が必要としないため、チャレンジ情報を含む407プロキシ認証応答が送信されます。次に、新しい招待状(F4)が、正しい資格情報とコール収益を含む送信されます。BobがByeメッセージを開始することにより、Bobが切断されるとコールが終了します。
Proxy 1 inserts a Record-Route header into the INVITE message to ensure that it is present in all subsequent message exchanges. Proxy 2 also inserts itself into the Record-Route header. The ACK (F15) and BYE (F18) both have a Route header.
Proxy 1は、レコードルートヘッダーを招待メッセージに挿入して、後続のすべてのメッセージ交換に存在することを確認します。Proxy 2は、レコードルートヘッダーにも挿入されます。ACK(F15)とBye(F18)の両方にルートヘッダーがあります。
Message Details
メッセージの詳細
F1 INVITE Alice -> Proxy 1
F1アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74b43 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Proxy 1 challenges Alice for authentication */
F2 407 Proxy Authorization Required Proxy 1 -> Alice
F2 407プロキシ承認が必要ですプロキシ1->アリス
SIP/2.0 407 Proxy Authorization Required Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74b43 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=3flal12sf Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 INVITE Proxy-Authenticate: Digest realm="atlanta.example.com", qop="auth", nonce="f84f1cec41e6cbe5aea9c8e88d359", opaque="", stale=FALSE, algorithm=MD5 Content-Length: 0 F3 ACK Alice -> Proxy 1
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74b43 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=3flal12sf Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 ACK Content-Length: 0
/* Alice responds be re-sending the INVITE with authentication credentials in it. */
F4 INVITE Alice -> Proxy 1
f4アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="", uri="sip:bob@biloxi.example.com", response="42ce3cef44b22f50c6a6071bc8" Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Proxy 1 accepts the credentials and forwards the INVITE to Proxy 2. Client for Alice prepares to receive data on port 49172 from the network. */ F5 INVITE Proxy 1 -> Proxy 2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F6 100 Trying Proxy 1 -> Alice
f6 100プロキシ1->アリスを試す
SIP/2.0 100 Trying Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 INVITE Content-Length: 0
F7 INVITE Proxy 2 -> Bob
F7招待プロキシ2->ボブ
INVITE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 68 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr>
From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F8 100 Trying Proxy 2 -> Proxy 1
F8 100プロキシ2を試す - >プロキシ1
SIP/2.0 100 Trying Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 INVITE Content-Length: 0
F9 180 Ringing Bob -> Proxy 2
F9 180リンギングボブ - >プロキシ2
SIP/2.0 180 Ringing Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 3848276298220188511@atlanta.example.com Contact: <sip:bob@client.biloxi.example.com;transport=tcp> CSeq: 2 INVITE Content-Length: 0 F10 180 Ringing Proxy 2 -> Proxy 1
SIP/2.0 180 Ringing Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 3848276298220188511@atlanta.example.com Contact: <sip:bob@client.biloxi.example.com;transport=tcp> CSeq: 2 INVITE Content-Length: 0
F11 180 Ringing Proxy 1 -> Alice
F11 180リンギングプロキシ1->アリス
SIP/2.0 180 Ringing Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 3848276298220188511@atlanta.example.com Contact: <sip:bob@client.biloxi.example.com;transport=tcp> CSeq: 2 INVITE Content-Length: 0
F12 200 OK Bob -> Proxy 2
F12 200 OK BOB->プロキシ2
SIP/2.0 200 OK Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.biloxi.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.BILOXI.EXAMPLE.COM S = -C = IN IP4 192.0.2.201 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F13 200 OK Proxy 2 -> Proxy 1
F13 200 OKプロキシ2->プロキシ1
SIP/2.0 200 OK Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.biloxi.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.BILOXI.EXAMPLE.COM S = -C = IN IP4 192.0.2.201 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F14 200 OK Proxy 1 -> Alice
F14 200 OKプロキシ1->アリス
SIP/2.0 200 OK Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.biloxi.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.BILOXI.EXAMPLE.COM S = -C = IN IP4 192.0.2.201 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F15 ACK Alice -> Proxy 1
F15 ACKアリス - >プロキシ1
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74b76 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr>, <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 ACK Content-Length: 0
F16 ACK Proxy 1 -> Proxy 2
F16 ACKプロキシ1->プロキシ2
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74b76 ;received=192.0.2.101 Max-Forwards: 69 Route: <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 ACK Content-Length: 0
F17 ACK Proxy 2 -> Bob
F17 ACKプロキシ2->ボブ
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74b76 ;received=192.0.2.101 Max-Forwards: 68 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 3848276298220188511@atlanta.example.com CSeq: 2 ACK Content-Length: 0
/* RTP streams are established between Alice and Bob */
/* Bob Hangs Up with Alice. */
/* Again, note that the CSeq is NOT 3. Alice and Bob maintain their own separate CSeq counts */
F18 BYE Bob -> Proxy 2
f18 bye bob-> proxy 2
BYE sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/TCP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 Max-Forwards: 70 Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 BYE Content-Length: 0
F19 BYE Proxy 2 -> Proxy 1
F19 Bye Proxy 2->プロキシ1
BYE sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/TCP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 ;received=192.0.2.201 Max-Forwards: 69 Route: <sip:ss1.atlanta.example.com;lr> From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 BYE Content-Length: 0 F20 BYE Proxy 1 -> Alice
BYE sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/TCP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 ;received=192.0.2.201 Max-Forwards: 68 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 BYE Content-Length: 0
F21 200 OK Alice -> Proxy 1
F21 200 OKアリス - >プロキシ1
SIP/2.0 200 OK Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/TCP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 BYE Content-Length: 0
F22 200 OK Proxy 1 -> Proxy 2
F22 200 OKプロキシ1->プロキシ2
SIP/2.0 200 OK Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/TCP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 ;received=192.0.2.101 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 BYE Content-Length: 0 F23 200 OK Proxy 2 -> Bob
SIP/2.0 200 OK Via: SIP/2.0/TCP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 3848276298220188511@atlanta.example.com CSeq: 1 BYE Content-Length: 0
Alice Proxy 1 Proxy 2 Bob | | | | | INVITE F1 | | | |----------->| | | | 407 Proxy Authorization Required F2 | |<-----------| | | | ACK F3 | | | |----------->| | | | INVITE F4 | | | |----------->| | | | 100 F5 | | | |<-----------| INVITE F6 | | | |---------->| | | | 407 Proxy Authorization Required F7 | |<----------| | | | ACK F8 | | | |---------->| | | 407 Proxy Authorization Required F9 | |<-----------| | | | ACK F10 | | | |----------->| | | | INVITE F11| | | |----------->| | | | 100 F12 | | | |<-----------| INVITE F13| | | |---------->| | | | 100 F14 | | | |<----------| INVITE F15 | | | |------------>| | | | 200 OK F16 | | | 200 OK F17|<------------| | 200 OK F18 |<----------| | |<-----------| | | | ACK F19 | | | |----------->| ACK F20 | | | |---------->| ACK F21 | | | |------------>| | RTP Media Path | |<====================================>|
In this scenario, Alice completes a call to Bob using two proxies Proxy 1 and Proxy 2. Alice has valid credentials in both domains. Since the initial INVITE (F1) does not contain the Authorization credentials Proxy 1 requires, so a 407 Proxy Authorization response is sent containing the challenge information. A new INVITE (F4) is then sent containing the correct credentials and the call proceeds after Proxy 2 challenges and receives valid credentials. The call terminates when Bob disconnects by initiating a BYE message.
このシナリオでは、アリスは2つのプロキシプロキシ1とプロキシ2を使用してボブへの呼び出しを完了します。アリスは両方のドメインで有効な資格情報を持っています。最初の招待(F1)には承認資格情報が含まれていないため、プロキシ1が要求するため、チャレンジ情報を含む407プロキシ認証応答が送信されます。次に、新しい招待状(F4)が正しい資格情報を含む送信され、コールはプロキシ2の課題の後に収益を上げ、有効な資格情報を受け取ります。BobがByeメッセージを開始することにより、Bobが切断されるとコールが終了します。
Proxy 1 inserts a Record-Route header into the INVITE message to ensure that it is present in all subsequent message exchanges. Proxy 2 also inserts itself into the Record-Route header.
Proxy 1は、レコードルートヘッダーを招待メッセージに挿入して、後続のすべてのメッセージ交換に存在することを確認します。Proxy 2は、レコードルートヘッダーにも挿入されます。
Message Details
メッセージの詳細
F1 INVITE Alice -> Proxy 1
F1アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b03 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Proxy 1 challenges Alice for authentication */
F2 407 Proxy Authorization Required Proxy 1 -> Alice
F2 407プロキシ承認が必要ですプロキシ1->アリス
SIP/2.0 407 Proxy Authorization Required Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b03 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=876321 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Proxy-Authenticate: Digest realm="atlanta.example.com", qop="auth", nonce="wf84f1cczx41ae6cbeaea9ce88d359", opaque="", stale=FALSE, algorithm=MD5 Content-Length: 0 F3 ACK Alice -> Proxy 1
ACK sip:bob@biloxi.example.com SIP/2.0 Max-Forwards: 70 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b03 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=876321 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
/* Alice responds be re-sending the INVITE with authentication credentials in it. The same Call-ID is used, so the CSeq is increased. */
F4 INVITE Alice -> Proxy 1
f4アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b21 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Contact: <sip:alice@client.atlanta.example.com> Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="", uri="sip:bob@biloxi.example.com", response="42ce3cef44b22f50c6a6071bc8" Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Proxy 1 accepts the credentials and forwards the INVITE to Proxy 2. Client for Alice prepares to receive data on port 49172 from the network. */ F5 100 Trying Proxy 1 -> Alice
SIP/2.0 100 Trying Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b21 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Content-Length: 0
F6 INVITE Proxy 1 -> Proxy 2
F6招待プロキシ1->プロキシ2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b21 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Proxy 2 challenges Alice for authentication */
F7 407 Proxy Authorization Required Proxy 2 -> Proxy 1
F7 407プロキシ認証が必要ですプロキシ2->プロキシ1
SIP/2.0 407 Proxy Authorization Required Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b21 ;received=192.0.2.101
From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=838209 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Proxy-Authenticate: Digest realm="biloxi.example.com", qop="auth", nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="", stale=FALSE, algorithm=MD5 Content-Length: 0
F8 ACK Proxy 1 -> Proxy 2
F8 ACKプロキシ1->プロキシ2
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b21 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=838209 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 ACK Content-Length: 0
/* Proxy 1 forwards the challenge to Alice for authentication from Proxy 2 */
F9 407 Proxy Authorization Required Proxy 1 -> Alice
F9 407プロキシ承認が必要ですプロキシ1->アリス
SIP/2.0 407 Proxy Authorization Required Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b21 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=838209 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Proxy-Authenticate: Digest realm="biloxi.example.com", qop="auth", nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="", stale=FALSE, algorithm=MD5 Content-Length: 0
F10 ACK Alice -> Proxy 1
F10 ACK Alice-> Proxy 1
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b21 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=838209 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 ACK Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="", uri="sip:bob@biloxi.example.com", response="42ce3cef44b22f50c6a6071bc8" Content-Length: 0
/* Alice responds be re-sending the INVITE with authentication credentials for Proxy 1 AND Proxy 2. */
F11 INVITE Alice -> Proxy 1
f11アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 INVITE Contact: <sip:alice@client.atlanta.example.com> Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="", uri="sip:bob@biloxi.example.com", response="42ce3cef44b22f50c6a6071bc8" Proxy-Authorization: Digest username="alice", realm="biloxi.example.com", nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="", uri="sip:bob@biloxi.example.com", response="f44ab22f150c6a56071bce8" Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Proxy 1 finds its credentials and authorizes Alice, forwarding the INVITE to Proxy. */ F12 100 Trying Proxy 1 -> Alice
SIP/2.0 100 Trying Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 INVITE Content-Length: 0
F13 INVITE Proxy 1 -> Proxy 2
F13招待プロキシ1->プロキシ2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 INVITE Contact: <sip:alice@client.atlanta.example.com> Proxy-Authorization: Digest username="alice", realm="biloxi.example.com", nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="", uri="sip:bob@biloxi.example.com", response="f44ab22f150c6a56071bce8" Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Proxy 2 finds its credentials and authorizes Alice, forwarding the INVITE to Bob. */ F14 100 Trying Proxy 2 -> Proxy 1
SIP/2.0 100 Trying Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 INVITE Content-Length: 0
F15 INVITE Proxy 2 -> Bob
F15招待プロキシ2->ボブ
INVITE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK31972.1 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 68 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Bob answers the call immediately */ F16 200 OK Bob -> Proxy 2
SIP/2.0 200 OK Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK31972.1 ;received=192.0.2.222 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=9103874 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.BILOXI.EXAMPLE.COM S = -C = IN IP4 192.0.2.201 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F17 200 OK Proxy 2 -> Proxy 1
F17 200 OKプロキシ2->プロキシ1
SIP/2.0 200 OK Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=9103874 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
F18 200 OK Proxy 1 -> Alice
F18 200 OKプロキシ1->アリス
SIP/2.0 200 OK Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=9103874 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.BILOXI.EXAMPLE.COM S = -C = IN IP4 192.0.2.201 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F19 ACK Alice -> Proxy 1
F19 ACKアリス - >プロキシ1
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b44 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr>, <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=9103874 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 ACK Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="", uri="sip:bob@biloxi.example.com", response="42ce3cef44b22f50c6a6071bc8" Proxy-Authorization: Digest username="alice", realm="biloxi.example.com", nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="", uri="sip:bob@biloxi.example.com", response="f44ab22f150c6a56071bce8" Content-Length: 0
F20 ACK Proxy 1 -> Proxy 2
F20 ACKプロキシ1->プロキシ2
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b44 ;received=192.0.2.101 Max-Forwards: 69 Route: <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=9103874 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 ACK Contact: <sip:bob@client.biloxi.example.com> Proxy-Authorization: Digest username="alice", realm="biloxi.example.com", nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="", uri="sip:bob@biloxi.example.com", response="f44ab22f150c6a56071bce8" Content-Length: 0
F21 ACK Proxy 2 -> Bob
F21 ACKプロキシ2->ボブ
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK31972.1 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b44 ;received=192.0.2.101 Max-Forwards: 68 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=9103874 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 3 ACK Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
Alice Proxy 1 Proxy 2 Bob | | | | | INVITE F1 | | | |--------------->| | | | INVITE F2 | | | |--------------->| | | | INVITE F3 | | | |--------------->| | | | INVITE F4 | | | |--------------->| | | | INVITE F5 | | | |--------------->| | | | INVITE F6 | | | |--------------->| | | | INVITE F7 | | | |--------------->| | | | INVITE F8 | | |-------------------------------->| | | 407 F9 | | |<--------------------------------| | | ACK F10 | | |-------------------------------->| | | INVITE F11 | | |-------------------------------->| INVITE F12 | | 100 F13 |--------------->| |<--------------------------------| | | | 180 F14 | | 180 F15 |<---------------| |<--------------------------------| | | | 200 F16 | | 200 F17 |<---------------| |<--------------------------------| | | ACK F18 | | |-------------------------------->| ACK F19 | | |--------------->| | Both Way RTP Media | |<================================================>| | | BYE F20 | | BYE F21 |<---------------| |<--------------------------------| | | 200 F22 | | |-------------------------------->| 200 F23 | | |--------------->| | | |
In this scenario, Alice completes a call to Bob via a Proxy Server. Alice is configured for a primary SIP Proxy Server Proxy 1 and a secondary SIP Proxy Server Proxy 2 (Or is able to use DNS SRV records to locate Proxy 1 and Proxy 2). Alice has valid credentials for both domains. Proxy 1 is out of service and does not respond to INVITEs (it is reachable, but unresponsive). Alice then completes the call to Bob using Proxy 2.
このシナリオでは、アリスはプロキシサーバーを介してBOBへの呼び出しを完了します。Aliceは、プライマリSIPプロキシサーバープロキシ1およびセカンダリSIPプロキシサーバープロキシ2用に構成されています(または、DNS SRVレコードを使用してプロキシ1とプロキシ2を見つけることができます)。アリスは両方のドメインに対して有効な資格情報を持っています。Proxy 1は使用不能であり、招待状に応答しません(到達可能ですが、反応しません)。その後、アリスはプロキシ2を使用してボブへの呼び出しを完了します。
Message Details
メッセージの詳細
F1 INVITE Alice -> Proxy 1
F1アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK465b6d Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F2 INVITE Alice -> Proxy 1
F2アリスを招待 - >プロキシ1
Same as Message F1
メッセージF1と同じ
F3 INVITE Alice -> Proxy 1
F3アリスを招待 - >プロキシ1
Same as Message F1
メッセージF1と同じ
F4 INVITE Alice -> Proxy 1
f4アリスを招待 - >プロキシ1
Same as Message F1 F5 INVITE Alice -> Proxy 1
メッセージF1 f5と同じアリス - >プロキシ1を招待する
Same as Message F1
メッセージF1と同じ
F6 INVITE Alice -> Proxy 1
F6アリスを招待 - >プロキシ1
Same as Message F1
メッセージF1と同じ
F7 INVITE Alice -> Proxy 1
f7アリスを招待 - >プロキシ1
Same as Message F1
メッセージF1と同じ
/* Alice gives up on the unresponsive proxy */
F8 INVITE Alice -> Proxy 2
F8 Aliceを招待 - > Proxy 2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b8a Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Proxy 2 challenges Alice for authentication */
F9 407 Proxy Authorization Required Proxy 2 -> Alice
F9 407プロキシ承認が必要ですプロキシ2->アリス
SIP/2.0 407 Proxy Authorization Required Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b8a ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=2421452 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 1 INVITE Proxy-Authenticate: Digest realm="biloxi.example.com", qop="auth", nonce="1ae6cbe5ea9c8e8df84fqnlec434a359", opaque="", stale=FALSE, algorithm=MD5 Content-Length: 0
F10 ACK Alice -> Proxy 2
F10 ACK Alice-> Proxy 2
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b8a Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=2421452 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 1 ACK Content-Length: 0
/* Alice responds by re-sending the INVITE with authentication credentials in it. */
F11 INVITE Alice -> Proxy 2
f11アリスを招待 - >プロキシ2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 2 INVITE Contact: <sip:alice@client.atlanta.example.com> Proxy-Authorization: Digest username="alice", realm="biloxi.example.com", nonce="1ae6cbe5ea9c8e8df84fqnlec434a359", opaque="", uri="sip:bob@biloxi.example.com", response="8a880c919d1a52f20a1593e228adf599" Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Proxy 2 accepts the credentials and forwards the INVITE to Bob. Client for Alice prepares to receive data on port 49172 from the network. */
F12 INVITE Proxy 2 -> Bob
F12招待プロキシ2->ボブ
INVITE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 2 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F13 100 Trying Proxy 2 -> Alice
F13 100プロキシ2を試す - >アリス
SIP/2.0 100 Trying Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 2 INVITE Content-Length: 0
F14 180 Ringing Bob -> Proxy 2
F14 180リンギングボブ - >プロキシ2
SIP/2.0 180 Ringing Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222
Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F15 180 Ringing Proxy 2 -> Alice
F15 180リンギングプロキシ2->アリス
SIP/2.0 180 Ringing Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F16 200 OK Bob -> Proxy 2
F16 200 OK BOB->プロキシ2
SIP/2.0 200 OK Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000 F17 200 OK Proxy 2 -> Alice
SIP/2.0 200 OK Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.BILOXI.EXAMPLE.COM S = -C = IN IP4 192.0.2.201 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F18 ACK Alice -> Proxy 2
F18 ACKアリス - >プロキシ2
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b8g Max-Forwards: 70 Route: <sip:ss2.biloxi.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 2 ACK Content-Length: 0
F19 ACK Proxy 2 -> Bob
F19 ACKプロキシ2->ボブ
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b8g ;received=192.0.2.101 Max-Forwards: 69 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 2 ACK Content-Length: 0
/* RTP streams are established between Alice and Bob */
/* Bob Hangs Up with Alice. */
F20 BYE Bob -> Proxy 2
F20バイボブ - >プロキシ2
BYE sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/UDP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 Max-Forwards: 70 Route: <sip:ss2.biloxi.example.com;lr> From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 1 BYE Content-Length: 0
F21 BYE Proxy 2 -> Alice
F21バイプロキシ2->アリス
BYE sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/UDP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 ;received=192.0.2.201 Max-Forwards: 69 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 1 BYE Content-Length: 0
F22 200 OK Alice -> Proxy 2
F22 200 OKアリス - >プロキシ2
SIP/2.0 200 OK Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/UDP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 1 BYE Content-Length: 0 F23 200 OK Proxy 2 -> Bob
SIP/2.0 200 OK Via: SIP/2.0/UDP client.biloxi.example.com:5060;branch=z9hG4bKnashds7 ;received=192.0.2.201 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 4Fde34wkd11wsGFDs3@atlanta.example.com CSeq: 1 BYE Content-Length: 0
Alice ALG Proxy 2 Bob | | | | | INVITE F1 | | | |--------------->| INVITE F2 | | | 100 F3 |--------------->| INVITE F4 | |<---------------| 100 F5 |--------------->| | |<---------------| 180 F6 | | | 180 F7 |<---------------| | 180 F8 |<---------------| | |<---------------| | 200 F9 | | | 200 F10 |<---------------| | 200 F11 |<---------------| | |<---------------| | | ACK F12 | | |--------------->| ACK F13 | | |-------------------------------->| | RTP Media | Both Way RTP Media | |<==============>|<===============================>| | BYE F14 | | |--------------->| BYE F15 | | |-------------------------------->| | | 200 F16 | | 200 F17 |<--------------------------------| |<---------------| | | | |
Alice completes a call to Bob through a ALG (Application Layer Gateway) and a SIP Proxy. The routing through the ALG is accomplished using a pre-loaded Route header in the INVITE F1. Note that the media stream setup is not end-to-end - the ALG terminates both media streams and bridges them. This is done by the ALG modifying the SDP in the INVITE (F1) and 200 OK (F10) messages, and possibly any 18x or ACK messages containing SDP.
アリスは、アルグ(アプリケーションレイヤーゲートウェイ)とSIPプロキシを介してボブへの呼び出しを完了します。ALGを通るルーティングは、Invite F1の事前ロードされたルートヘッダーを使用して達成されます。メディアストリームのセットアップはエンドツーエンドではないことに注意してください - アルグは両方のメディアストリームを終了し、それらを橋渡しします。これは、Invite(F1)および200 OK(F10)メッセージのSDPを変更するALG、およびSDPを含む18xまたはACKメッセージを変更することによって行われます。
In addition to firewall traversal, this Back-to-Back User Agent (B2BUA) could be used as part of an anonymizer service (in which all identifying information on Alice would be removed), or to perform codec media conversion, such as mu-law to A-law conversion of PCM on an international call.
ファイアウォールトラバーサルに加えて、この連続したユーザーエージェント(B2BUA)は、匿名サービス(アリスに関するすべての識別情報が削除される)の一部として使用できます。国際呼び出しに対するPCMのA-LAW変換への法律。
Also note that Proxy 2 does not Record-Route in this call flow.
また、プロキシ2はこのコールフローで記録されていないことに注意してください。
Message Details
メッセージの詳細
F1 INVITE Alice -> SIP ALG
f1アリスを招待 - > sip alg
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Route: <sip:alg1.atlanta.example.com;lr> Proxy-Authorization: Digest username="alice", realm="biloxi.example.com", nonce="85b4f1cen4341ae6cbe5a3a9c8e88df9", opaque="", uri="sip:bob@biloxi.example.com", response="b3f392f9218a328b9294076d708e6815" Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* Client for Alice prepares to receive data on port 49172 from the network. */
F2 INVITE SIP ALG -> Proxy 2
F2招待SIPアルグ - >プロキシ2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Proxy-Authorization: Digest username="alice", realm="biloxi.example.com", nonce="85b4f1cen4341ae6cbe5a3a9c8e88df9", opaque="", uri="sip:bob@biloxi.example.com", response="b3f392f9218a328b9294076d708e6815" Content-Type: application/sdp Content-Length: 150
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.128 t=0 0 m=audio 2000 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.128 t = 0 0 M = audio 2000 rtp/avp 0 a = rtpmap:0 pcmu/8000
F3 100 Trying SIP ALG -> Alice
F3 100 SIP ALG-> Aliceを試してみます
SIP/2.0 100 Trying Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
/* SIP ALG prepares to proxy data from port 192.0.2.128/2000 to 192.0.2.101/49172. Proxy 2 uses a Location Service function to determine where Bob is located. Based upon location analysis the call is forwarded to Bob */
F4 INVITE Proxy 2 -> Bob
F4招待プロキシ2->ボブ
INVITE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1 Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 ;received=192.0.2.128 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 68 Record-Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 150
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.128 t=0 0 m=audio 2000 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.128 t = 0 0 M = audio 2000 rtp/avp 0 a = rtpmap:0 pcmu/8000
F5 100 Trying Proxy 2 -> SIP ALG
f5 100プロキシ2を試す - > sip alg
SIP/2.0 100 Trying Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 ;received=192.0.2.128 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F6 180 Ringing Bob -> Proxy 2
F6 180リンギングボブ - >プロキシ2
SIP/2.0 180 Ringing Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.222 Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 ;received=192.0.2.128 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F7 180 Ringing Proxy 2 -> SIP ALG
F7 180リンギングプロキシ2-> SIPアルグ
SIP/2.0 180 Ringing Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 ;received=192.0.2.128
Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F8 180 Ringing SIP ALG -> Alice
F8 180リンギングSIPアルグ - >アリス
SIP/2.0 180 Ringing Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F9 200 OK Bob -> Proxy 2
F9 200 OK BOB->プロキシ2
SIP/2.0 200 OK Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.222 Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 ;received=192.0.2.128 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
F10 200 OK Proxy 2 -> SIP ALG
F10 200 OKプロキシ2-> SIPアルグ
SIP/2.0 200 OK Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 ;received=192.0.2.128 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.BILOXI.EXAMPLE.COM S = -C = IN IP4 192.0.2.201 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F11 200 OK SIP ALG -> Alice
F11 200 OK SIPアルグ - >アリス
SIP/2.0 200 OK Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.128 t=0 0 m=audio 1734 RTP/AVP 0 a=rtpmap:0 PCMU/8000
/* The ALG prepares to proxy packets from 192.0.2.128/ 1734 to 192.0.2.201/3456 */
F12 ACK Alice -> SIP ALG
F12 ACKアリス - > SIPアルグ
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bhh Max-Forwards: 70 Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
F13 ACK SIP ALG -> Bob
F13 ACK SIP ALG-> BOB
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bhh ;received=192.0.2.101 Max-Forwards: 69 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
/* RTP streams are established between Alice and the ALG and between the ALG and B*/
/* Alice Hangs Up with Bob. */
F14 BYE Alice -> SIP ALG
f14 bye alice-> sip alg
BYE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74be5 Max-Forwards: 70 Route: <sip:alg1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 BYE Content-Length: 0
F15 BYE SIP ALG -> Bob
f15 bye sip alg-> bob
BYE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74be5 ;received=192.0.2.101 Max-Forwards: 69 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 BYE Content-Length: 0
F16 200 OK Bob -> SIP ALG
f16 200 ok bob-> sip alg
SIP/2.0 200 OK Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1 ;received=192.0.2.128 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74be5 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 BYE Content-Length: 0
F17 200 OK SIP ALG -> Alice
F17 200 OK SIPアルグ - >アリス
SIP/2.0 200 OK Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74be5 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 BYE Content-Length: 0
Alice Redirect Server Proxy 3 Bob | | | | | INVITE F1 | | | |--------------->| | | | 302 F2 | | | |<---------------| | | | ACK F3 | | | |--------------->| | | | INVITE F4 | | |-------------------------------->| INVITE F5 | | 100 F6 |--------------->| |<--------------------------------| 180 F7 | | 180 F8 |<---------------| |<--------------------------------| | | | 200 F9 | | 200 F10 |<---------------| |<--------------------------------| | | ACK F11 | | |-------------------------------->| ACK F12 | | |--------------->| | Both Way RTP Media | |<================================================>| | | BYE F13 | | BYE F14 |<---------------| |<--------------------------------| | | 200 F15 | | |-------------------------------->| 200 F16 | | |--------------->| | | |
In this scenario, Alice places a call to Bob using first a Redirect server then a Proxy Server. The INVITE message is first sent to the Redirect Server. The Server returns a 302 Moved Temporarily response (F2) containing a Contact header with Bob's current SIP address. Alice then generates a new INVITE and sends to Bob via the Proxy Server and the call proceeds normally. In this example, no SDP is present in the INVITE, so the SDP is carried in the ACK message.
このシナリオでは、アリスは最初にリダイレクトサーバーを使用してプロキシサーバーを使用してBOBに呼び出しを行います。Inviteメッセージは、最初にRedirectサーバーに送信されます。サーバーは、ボブの現在のSIPアドレスを含むコンタクトヘッダーを含む一時的に移動した302移動応答(F2)を返します。その後、アリスは新しい招待状を生成し、プロキシサーバーを介してボブに送信し、通話は正常に進行します。この例では、招待にはSDPが存在しないため、SDPはACKメッセージに掲載されています。
The call is terminated when Bob sends a BYE message.
ボブがさようならメッセージを送信すると、呼び出しが終了します。
Message Details
メッセージの詳細
F1 INVITE Alice -> Redirect Server
F1 Aliceを招待 - >サーバーをリダイレクトします
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bKbf9f44 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Length: 0
F2 302 Moved Temporarily Redirect Proxy -> Alice
F2 302は一時的にリダイレクトプロキシ - >アリスを移動しました
SIP/2.0 302 Moved Temporarily Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bKbf9f44 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=53fHlqlQ2 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@chicago.example.com;transport=tcp> Content-Length: 0
F3 ACK Alice -> Redirect Server
F3 ACK Alice-> Redirect Server
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bKbf9f44 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=53fHlqlQ2 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
F4 INVITE Alice -> Proxy 3
f4アリスを招待 - >プロキシ3
INVITE sip:bob@chicago.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Content-Length: 0
F5 INVITE Proxy 3 -> Bob
F5招待プロキシ3->ボブ
INVITE sip:bob@client.chicago.example.com SIP/2.0 Via: SIP/2.0/TCP ss3.chicago.example.com:5060;branch=z9hG4bK721e.1 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:ss3.chicago.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Content-Length: 0
F6 100 Trying Proxy 3 -> Alice
F6 100プロキシ3->アリス
SIP/2.0 100 Trying Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Content-Length: 0
F7 180 Ringing Bob -> Proxy 3
F7 180リンギングボブ - >プロキシ3
SIP/2.0 180 Ringing Via: SIP/2.0/TCP ss3.chicago.example.com:5060;branch=z9hG4bK721e.1 ;received=192.0.2.233 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss3.chicago.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.chicago.example.com;transport=tcp> Content-Length: 0 F8 180 Ringing Proxy 3 -> Alice
SIP/2.0 180 Ringing Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss3.chicago.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.chicago.example.com;transport=tcp> Content-Length: 0
F9 200 OK Bob -> Proxy 3
F9 200 OK BOB->プロキシ3
SIP/2.0 200 OK Via: SIP/2.0/TCP ss3.chicago.example.com:5060;branch=z9hG4bK721e.1 ;received=192.0.2.233 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss3.chicago.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.chicago.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 148
v=0 o=bob 2890844527 2890844527 IN IP4 client.chicago.example.com s=- c=IN IP4 192.0.2.100 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.CHICAGO.EXAMPLE.COM S = -C = IN IP4 192.0.2.100 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F10 200 OK Proxy -> Alice
F10 200 OKプロキシ - >アリス
SIP/2.0 200 OK Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss3.chicago.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 INVITE Contact: <sip:bob@client.chicago.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 148
v=0 o=bob 2890844527 2890844527 IN IP4 client.chicago.example.com s=- c=IN IP4 192.0.2.100 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.CHICAGO.EXAMPLE.COM S = -C = IN IP4 192.0.2.100 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
/* ACK contains SDP of Alice since none present in INVITE */
F11 ACK Alice -> Proxy 3
F11 ACK Alice-> Proxy 3
ACK sip:bob@client.chicago.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bq9 Max-Forwards: 70 Route: <sip:ss3.chicago.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 ACK Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F12 ACK Proxy 3 -> Bob
F12 ACKプロキシ3->ボブ
ACK sip:bob@client.chicago.example.com SIP/2.0 Via: SIP/2.0/TCP ss3.chicago.example.com:5060;branch=z9hG4bK721e.1 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bq9 ;received=192.0.2.101 Max-Forwards: 69 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 ACK Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/* RTP streams are established between Alice and Bob */
/* Bob Hangs Up with Alice. */
F13 BYE Bob -> Proxy 3
f13 bye bob-> proxy 3
BYE sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/TCP client.chicago.example.com:5060;branch=z9hG4bKfgaw2 Max-Forwards: 70 Route: <sip:ss3.chicago.example.com;lr> From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 BYE Content-Length: 0
F14 BYE Proxy 3 -> Alice
F14 Bye Proxy 3-> Alice
BYE sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/TCP ss3.chicago.example.com:5060;branch=z9hG4bK721e.1 ;received=192.0.2.100 Via: SIP/2.0/TCP client.chicago.example.com:5060;branch=z9hG4bKfgaw2 Max-Forwards: 69 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 BYE Content-Length: 0
F15 200 OK Alice -> Proxy 3
F15 200 OKアリス - >プロキシ3
SIP/2.0 200 OK Via: SIP/2.0/TCP ss3.chicago.example.com:5060;branch=z9hG4bK721e.1 ;received=192.0.2.233 Via: SIP/2.0/TCP client.chicago.example.com:5060;branch=z9hG4bKfgaw2 ;received=192.0.2.100 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 BYE Content-Length: 0
F16 200 OK Proxy 3 -> Bob
F16 200 OKプロキシ3->ボブ
SIP/2.0 200 OK Via: SIP/2.0/TCP client.chicago.example.com:5060;branch=z9hG4bKfgaw2 ;received=192.0.2.100 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 BYE Content-Length: 0
Alice Proxy 2 Bob | F1 INVITE | | |------------------->| F2 INVITE | | F3 100 Trying |------------------->| |<-------------------| F4 180 Ringing | | F5 180 Ringing |<-------------------| |<-------------------| | | | F6 200 OK | | F7 200 OK |<-------------------| |<-------------------| | | F8 ACK | |---------------------------------------->| | Both Way RTP Media Established | |<=======================================>| | | | Bob changes IP address | | | | F9 INVITE | |<----------------------------------------| | F10 200 OK | |---------------------------------------->| | F11 ACK | |<----------------------------------------| | New RTP Media Stream | |<=======================================>| | F12 BYE | |---------------------------------------->| | F13 200 OK | |<----------------------------------------| | |
This example shows a session in which the media changes midway through the session. When Bob's IP address changes during the session, Bob sends a re-INVITE containing a new Contact and SDP (version number incremented) information to A. In this flow, the proxy does not Record-Route so is not in the SIP messaging path after the initial exchange.
この例は、メディアがセッションの途中で変化するセッションを示しています。セッション中にボブのIPアドレスが変更されると、ボブは新しい連絡先とSDP(バージョン番号増分)情報を含む再インバイトをAに送信します。最初の交換。
Message Details
メッセージの詳細
F1 INVITE Alice -> Proxy 2
f1アリスを招待 - >プロキシ2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F2 INVITE Proxy 2 -> Bob
F2招待プロキシ2->ボブ
INVITE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000 F3 100 Trying Proxy 2 -> Alice
SIP/2.0 100 Trying Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F4 180 Ringing Bob -> Proxy 2
F4 180リンギングボブ - >プロキシ2
SIP/2.0 180 Ringing Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.222 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F5 180 Ringing Proxy 2 -> Alice
F5 180リンギングプロキシ2->アリス
SIP/2.0 180 Ringing Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F6 200 OK Bob -> Proxy 2
F6 200 OK BOB->プロキシ2
SIP/2.0 200 OK Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.222 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.BILOXI.EXAMPLE.COM S = -C = IN IP4 192.0.2.201 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F7 200 OK Proxy 2 -> Alice
F7 200 OKプロキシ2->アリス
SIP/2.0 200 OK Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Type: application/sdp Content-Length: 147
v=0 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com s=- c=IN IP4 192.0.2.201 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844527 IN IP4 CLIENT.BILOXI.EXAMPLE.COM S = -C = IN IP4 192.0.2.201 T = 0 0 M = Audio 3456 RTP/AVP 0 A = RTPMAP:0 PCMU/8000
F8 ACK Alice -> Bob
F8 Ack Alice-> Bob
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74b7b Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
/* RTP streams are established between Alice and Bob */
/* Bob changes IP address and re-INVITEs Alice with new Contact and SDP */
F9 INVITE Bob -> Alice
F9ボブを招待します - >アリス
INVITE sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/UDP client.chicago.example.com:5060;branch=z9hG4bKlkld5l Max-Forwards: 70 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 14 INVITE Contact: <sip:bob@client.chicago.example.com> Content-Type: application/sdp Content-Length: 149
v=0 o=bob 2890844527 2890844528 IN IP4 client.chicago.example.com s=- c=IN IP4 192.0.2.100 t=0 0 m=audio 47172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = BOB 2890844527 2890844528 IN IP4 CLIENT.CHICAGO.EXAMPLE.COM S = -C = IN IP4 192.0.2.100 T = 0 0 M = Audio 47172 RTP/AVP 0 A = RTPMAP:0 PCMU/8000000000000000000000
F10 200 OK Alice -> Bob
F10 200 OKアリス - >ボブ
SIP/2.0 200 OK Via: SIP/2.0/UDP client.chicago.example.com:5060;branch=z9hG4bKlkld5l ;received=192.0.2.100 Max-Forwards: 70 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 14 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 150
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 1000 RTP/AVP 0 a=rtpmap:0 PCMU/8000
F11 ACK Bob -> Alice
F11 ACK BOB->アリス
ACK sip:alice@client.atlanta.example.com SIP/2.0 Via: SIP/2.0/UDP client.chicago.example.com:5060;branch=z9hG4bKlkldcc Max-Forwards: 70 From: Bob <sip:bob@biloxi.example.com>;tag=314159 To: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 14 ACK Content-Length: 0
/* New RTP stream established between Alice and Bob */
/* Alice hangs up with Bob */
F12 BYE Alice -> Bob
F12バイアリス - >ボブ
BYE sip:bob@client.chicago.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bo4 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 BYE Content-Length: 0
F13 200 OK Bob -> Alice
F13 200 OKボブ - >アリス
SIP/2.0 200 OK Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bo4 ;received=192.0.2.101 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 2 BYE Content-Length: 0
Alice Proxy 1 Proxy 2 Bob | | | | | INVITE F1 | | | |--------------->| INVITE F2 | | | 100 F3 |--------------->| INVITE F4 | |<---------------| 100 F5 |--------------->| | |<---------------| | | | | 180 F6 | | | 180 F7 |<---------------| | 180 F8 |<---------------| | |<---------------| | | | CANCEL F9 | | | |--------------->| | | | 200 F10 | | | |<---------------| CANCEL F11 | | | |--------------->| | | | 200 F12 | | | |<---------------| | | | | CANCEL F13 | | | |--------------->| | | | 200 F14 | | | |<---------------| | | | 487 F15 | | | |<---------------| | | | ACK F16 | | | 487 F17 |--------------->| | |<---------------| | | | ACK F18 | | | 487 F19 |--------------->| | |<---------------| | | | ACK F20 | | | |--------------->| | | | | | |
In this scenario, Alice gives up on the call before Bob answers (sends a 200 OK response). Alice sends a CANCEL (F9) since no final response had been received from Bob. If a 200 OK to the INVITE had crossed with the CANCEL, Alice would have sent an ACK then a BYE to Bob in order to properly terminate the call.
このシナリオでは、アリスはボブが答える前にコールをあきらめます(200のOK応答を送信します)。アリスは、ボブから最終的な応答がなかったため、キャンセル(F9)を送信します。招待者への200 OKがキャンセルと交差していた場合、アリスはACKを送信してから、コールを適切に終了するためにボブにさようならを送っていました。
Note that the CANCEL message is acknowledged with a 200 OK on a hop by hop basis, rather than end to end.
キャンセルメッセージは、エンドツーエンドではなく、ホップごとに200 OKで認められていることに注意してください。
Message Details
メッセージの詳細
F1 INVITE Alice -> Proxy 1
F1アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="ze7k1ee88df84f1cec431ae6cbe5a359", opaque="", uri="sip:bob@biloxi.example.com", response="b00b416324679d7e243f55708d44be7b" Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/*Client for Alice prepares to receive data on port 49172 from the network.*/
F2 INVITE Proxy 1 -> Proxy 2
F2招待プロキシ1->プロキシ2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151 v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
F3 100 Trying Proxy 1 -> Alice
F3 100プロキシ1->アリスを試してください
SIP/2.0 100 Trying Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F4 INVITE Proxy 2 -> Bob
F4招待プロキシ2->ボブ
INVITE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> Max-Forwards: 68 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000 F5 100 Trying Proxy 2 -> Proxy 1
SIP/2.0 100 Trying Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F6 180 Ringing Bob -> Proxy 2
F6 180リンギングボブ - >プロキシ2
SIP/2.0 180 Ringing Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F7 180 Ringing Proxy 2 -> Proxy 1
F7 180リンギングプロキシ2->プロキシ1
SIP/2.0 180 Ringing Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F8 180 Ringing Proxy 1 -> Alice
F8 180リンギングプロキシ1->アリス
SIP/2.0 180 Ringing Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F9 CANCEL Alice -> Proxy 1
f9アリスキャンセル - >プロキシ1
CANCEL sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Route: <sip:ss1.atlanta.example.com;lr> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 CANCEL Content-Length: 0
F10 200 OK Proxy 1 -> Alice
F10 200 OKプロキシ1->アリス
SIP/2.0 200 OK Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 CANCEL Content-Length: 0 F11 CANCEL Proxy 1 -> Proxy 2
CANCEL sip:alice@atlanta.example.com SIP/2.0 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 CANCEL Content-Length: 0
F12 200 OK Proxy 2 -> Proxy 1
F12 200 OKプロキシ2->プロキシ1
SIP/2.0 200 OK Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 CANCEL Content-Length: 0
F13 CANCEL Proxy 2 -> Bob
F13 Proxy 2-> Bobをキャンセルします
CANCEL sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 CANCEL Content-Length: 0
F14 200 OK Bob -> Proxy 2
F14 200 OK BOB->プロキシ2
SIP/2.0 200 OK Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 CANCEL Content-Length: 0 F15 487 Request Terminated Bob -> Proxy 2
SIP/2.0 487 Request Terminated Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F16 ACK Proxy 2 -> Bob
F16 ACKプロキシ2->ボブ
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
F17 487 Request Terminated Proxy 2 -> Proxy 1
F17 487リクエスト終了プロキシ2->プロキシ1
SIP/2.0 487 Request Terminated Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0 F18 ACK Proxy 1 -> Proxy 2
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
F19 487 Request Terminated Proxy 1 -> Alice
F19 487リクエスト終了プロキシ1->アリス
SIP/2.0 487 Request Terminated Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE
F20 ACK Alice -> Proxy 1
F20 ACKアリス - >プロキシ1
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="ze7k1ee88df84f1cec431ae6cbe5a359", opaque="", uri="sip:bob@biloxi.example.com", response="b00b416324679d7e243f55708d44be7b" CSeq: 1 ACK Content-Length: 0
Alice Proxy 1 Proxy 2 Bob | | | | | INVITE F1 | | | |--------------->| INVITE F2 | | | 100 F3 |--------------->| INVITE F4 | |<---------------| 100 F5 |--------------->| | |<---------------| | | | | 486 F6 | | | |<---------------| | | | ACK F7 | | | 486 F8 |--------------->| | |<---------------| | | | ACK F9 | | | 486 F10 |--------------->| | |<---------------| | | | ACK F11 | | | |--------------->| | | | | | |
In this scenario, Bob is busy and sends a 486 Busy Here response to Alice's INVITE. Note that the non-2xx response is acknowledged on a hop-by-hop basis instead of end-to-end. Also note that many SIP UAs will not return a 486 response, as they have multiple line and other features.
このシナリオでは、ボブは忙しく、アリスの招待に486の忙しい応答を送信します。非2XX応答は、エンドツーエンドではなく、ホップバイホップベースで認められていることに注意してください。また、多くのSIP UAは、複数のラインやその他の機能を備えているため、486の応答を返さないことに注意してください。
Message Details
メッセージの詳細
F1 INVITE Alice -> Proxy 1
F1アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="dc3a5ab2530aa93112cf5904ba7d88fa", opaque="", uri="sip:bob@biloxi.example.com", response="702138b27d869ac8741e10ec643d55be" Content-Type: application/sdp Content-Length: 151 v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
/*Client for Alice prepares to receive data on port 49172 from the network.*/
F2 INVITE Proxy 1 -> Proxy 2
F2招待プロキシ1->プロキシ2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F3 100 Trying Proxy 1 -> Alice
F3 100プロキシ1->アリスを試してください
SIP/2.0 100 Trying Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0 F4 INVITE Proxy 2 -> Bob
INVITE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 68 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com;transport=tcp> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F5 100 Trying Proxy 2 -> Proxy 1
F5 100プロキシ2を試す - >プロキシ1
SIP/2.0 100 Trying Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F6 486 Busy Here Bob -> Proxy 2
f6 486忙しいここでボブ - >プロキシ2
SIP/2.0 486 Busy Here Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F7 ACK Proxy 2 -> Bob
F7 ACKプロキシ2->ボブ
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
F8 486 Busy Here Proxy 2 -> Proxy 1
F8 486忙しいここでプロキシ2->プロキシ1
SIP/2.0 486 Busy Here Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F9 ACK Proxy 1 -> Proxy 2
F9 ACKプロキシ1->プロキシ2
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0 F10 486 Busy Here Proxy 1 -> Alice
SIP/2.0 486 Busy Here Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F11 ACK Alice -> Proxy 1
F11 ACKアリス - >プロキシ1
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="dc3a5ab2530aa93112cf5904ba7d88fa", opaque="", uri="sip:bob@biloxi.example.com", response="702138b27d869ac8741e10ec643d55be" Content-Length: 0
Alice Proxy 1 Proxy 2 Bob | | | | | INVITE F1 | | | |--------------->| INVITE F2 | | | 100 F3 |--------------->| INVITE F4 | |<---------------| 100 F5 |--------------->| | |<---------------| INVITE F6 | | | |--------------->| | | | INVITE F7 | | | |--------------->| | | | INVITE F8 | | | |--------------->| | | | INVITE F9 | | | |--------------->| | | | INVITE F10 | | | |--------------->| | | | INVITE F11 | | | 480 F12 |--------------->| | |<---------------| | | | ACK F13 | | | 480 F14 |--------------->| | |<---------------| | | | ACK F15 | | | |--------------->| | | | | | |
In this example, there is no response from Bob to Alice's INVITE messages being re-transmitted by Proxy 2. After the sixth re-transmission, Proxy 2 gives up and sends a 480 No Response to Alice.
この例では、ボブからアリスの招待メッセージへの応答はありません。プロキシ2によって再送信されます。6回目の再送信の後、プロキシ2はあきらめて、アリスに480の応答を送信します。
Message Details
メッセージの詳細
F1 INVITE Alice -> Proxy 1
F1アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="cf5904ba7d8dc3a5ab2530aa931128fa", opaque="", uri="sip:bob@biloxi.example.com", response="7afc04be7961f053c24f80e7dbaf888f" Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/*Client for Alice prepares to receive data on port 49172 from the network.*/
F2 INVITE Proxy 1 -> Proxy 2
F2招待プロキシ1->プロキシ2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F3 100 Trying Proxy 1 -> Alice
F3 100プロキシ1->アリスを試してください
SIP/2.0 100 Trying Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101
From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F4 INVITE Proxy 2 -> Bob
F4招待プロキシ2->ボブ
INVITE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 68 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F5 100 Trying Proxy 2 -> Proxy 1
F5 100プロキシ2を試す - >プロキシ1
SIP/2.0 100 Trying Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0 F6 INVITE Proxy 2 -> Bob
Resend of Message F4
メッセージF4の再送信
F7 INVITE Proxy 2 -> Bob
F7招待プロキシ2->ボブ
Resend of Message F4
メッセージF4の再送信
F8 INVITE Proxy 2 -> Bob
F8招待プロキシ2->ボブ
Resend of Message F4
メッセージF4の再送信
F9 INVITE Proxy 2 -> Bob
F9招待プロキシ2->ボブ
Resend of Message F4
メッセージF4の再送信
F10 INVITE Proxy 2 -> Bob
F10招待プロキシ2->ボブ
Resend of Message F4
メッセージF4の再送信
F11 INVITE Proxy 2 -> Bob
F11招待プロキシ2->ボブ
Resend of Message F4
メッセージF4の再送信
/* Proxy 2 gives up */
F12 480 No Response Proxy 2 -> Proxy 1
F12 480応答なしプロキシ2->プロキシ1
SIP/2.0 480 No Response Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0 F13 ACK Proxy 1 -> Proxy 2
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
F14 480 No Response Proxy 1 -> Alice
F14 480応答なしプロキシ1->アリス
SIP/2.0 480 No Response Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F15 ACK Alice -> Proxy 1
F15 ACKアリス - >プロキシ1
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="cf5904ba7d8dc3a5ab2530aa931128fa", opaque="", uri="sip:bob@biloxi.example.com", response="7afc04be7961f053c24f80e7dbaf888f" Content-Length: 0
Alice Proxy 1 Proxy 2 Bob | | | | | INVITE F1 | | | |--------------->| INVITE F2 | | | 100 F3 |--------------->| INVITE F4 | |<---------------| 100 F5 |--------------->| | |<---------------| 180 F6 | | | 180 F7 |<---------------| | 180 F8 |<---------------| | |<---------------| | 480 F9 | | | |<---------------| | | | ACK F10 | | | 480 F11 |--------------->| | |<---------------| | | | ACK F12 | | | 480 F13 |--------------->| | |<---------------| | | | ACK F14 | | | |--------------->| | | | | | |
In this scenario, Bob initially sends a 180 Ringing response to Alice, indicating that alerting is taking place. However, then a 480 Unavailable is then sent to Alice. This response is acknowledged then proxied back to Alice.
このシナリオでは、ボブは最初にアリスに180のリンギング応答を送信し、アラートが行われていることを示しています。ただし、その後、480が利用できないことがアリスに送信されます。この応答は認められ、その後、アリスに賛成されました。
Message Details
メッセージの詳細
F1 INVITE Alice -> Proxy 1
F1アリスを招待 - >プロキシ1
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="aa9311cf5904ba7d8dc3a5ab253028fa", opaque="", uri="sip:bob@biloxi.example.com", response="59a46a91bf1646562a4d486c84b399db" Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
/*Client for Alice prepares to receive data on port 49172 from the network.*/
F2 INVITE Proxy 1 -> Proxy 2
F2招待プロキシ1->プロキシ2
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 69 Record-Route: <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F3 100 Trying Proxy 1 -> Alice
F3 100プロキシ1->アリスを試してください
SIP/2.0 100 Trying Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F4 INVITE Proxy 2 -> Bob
F4招待プロキシ2->ボブ
INVITE sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Max-Forwards: 68 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:alice@client.atlanta.example.com> Content-Type: application/sdp Content-Length: 151
v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
V = 0 O = Alice 2890844526 2890844526 in ip4 client.atlanta.example.com s = -c = In ip4 192.0.2.101 t = 0 0 M = audio 49172 rtp/avp 0 a = rtpmap:0 pcmu/8000000000000000000
F5 100 Trying Proxy 2 -> Proxy 1
F5 100プロキシ2を試す - >プロキシ1
SIP/2.0 100 Trying Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com> Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0 F6 180 Ringing Bob -> Proxy 2
SIP/2.0 180 Ringing Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F7 180 Ringing Proxy 2 -> Proxy 1
F7 180リンギングプロキシ2->プロキシ1
SIP/2.0 180 Ringing Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F8 180 Ringing Proxy 1 -> Alice
F8 180リンギングプロキシ1->アリス
SIP/2.0 180 Ringing Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 Record-Route: <sip:ss2.biloxi.example.com;lr>, <sip:ss1.atlanta.example.com;lr> From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Contact: <sip:bob@client.biloxi.example.com> Content-Length: 0
F9 480 Temporarily Unavailable Bob -> Proxy 2
F9 480一時的に利用できないボブ - >プロキシ2
SIP/2.0 480 Temporarily Unavailable Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 ;received=192.0.2.222 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F10 ACK Proxy 2 -> Bob
F10 ACKプロキシ2->ボブ
ACK sip:bob@client.biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
F11 480 Temporarily Unavailable Proxy 2 -> Proxy 1
F11 480一時的に利用できないプロキシ2->プロキシ1
SIP/2.0 480 Temporarily Unavailable Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 ;received=192.0.2.111 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0 F12 ACK Proxy 1 -> Proxy 2
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 ACK Content-Length: 0
F13 480 Temporarily Unavailable Proxy 1 -> Alice
F13 480一時的に利用できないプロキシ1->アリス
SIP/2.0 480 Temporarily Unavailable Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 ;received=192.0.2.101 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com CSeq: 1 INVITE Content-Length: 0
F14 ACK Alice -> Proxy 1
F14 ACKアリス - >プロキシ1
ACK sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl To: Bob <sip:bob@biloxi.example.com>;tag=314159 Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com Proxy-Authorization: Digest username="alice", realm="atlanta.example.com", nonce="aa9311cf5904ba7d8dc3a5ab253028fa", opaque="", uri="sip:bob@biloxi.example.com", response="59a46a91bf1646562a4d486c84b399db" CSeq: 1 ACK Content-Length: 0
Since this document contains examples of SIP session establishment, the security considerations in RFC 3261 [1] apply. RFC 3261 describes the basic threats including registration hijacking, server impersonation, message body tampering, session modifying or teardown, and denial of service and amplification attacks. The use of HTTP Digest as shown in this document provides one-way authentication and protection against replay attacks. TLS transport is used in registration scenarios due to the lack of integrity protection in HTTP Digest and the danger of registration hijacking without it, as described in RFC 3261 [1]. A full discussion of the weaknesses of HTTP Digest is provided in RFC 3261 [1]. The use of TLS and the Secure SIP (sips) URI scheme provides a better level of security including two-way authentication. S/MIME can provide end-to-end confidentiality and integrity protection of message bodies, as described in RFC 3261.
このドキュメントにはSIPセッションの確立の例が含まれているため、RFC 3261 [1]のセキュリティ上の考慮事項が適用されます。RFC 3261は、登録ハイジャック、サーバーのなりすまし、メッセージボディの改ざん、セッションの修正または分解、サービスおよび増幅攻撃の拒否などの基本的な脅威について説明しています。このドキュメントに示されているHTTPダイジェストの使用は、リプレイ攻撃に対する一元配置認証と保護を提供します。TLSトランスポートは、RFC 3261 [1]に記載されているように、HTTPダイジェストの完全性保護の欠如と登録のハイジャックの危険性により、登録シナリオで使用されます。HTTPダイジェストの弱点についての完全な議論は、RFC 3261 [1]で提供されています。TLSとSecure SIP(SIPS)URIスキームの使用は、双方向認証を含むより良いレベルのセキュリティを提供します。S/MIMEは、RFC 3261で説明されているように、メッセージ本体のエンドツーエンドの機密性と整合性保護を提供できます。
[1] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, June 2002.
[1] Rosenberg、J.、Schulzrinne、H.、Camarillo、G.、Johnston、A.、Peterson、J.、Sparks、R.、Handley、M.、E。Schooler、 "SIP:SESSION INIATIATION Protocol"、RFC 3261、2002年6月。
[2] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model with SDP", RFC 3264, April 2002.
[2] Rosenberg、J。およびH. Schulzrinne、「SDPによるオファー/回答モデル」、RFC 3264、2002年4月。
[3] Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S., Leach, P., Luotonen, A. and L. Stewart, "HTTP authentication: Basic and Digest Access Authentication", RFC 2617, June 1999.
[3] Franks、J.、Hallam-Baker、P.、Hostetler、J.、Lawrence、S.、Leach、P.、Luotonen、A。and L. Stewart、「HTTP認証:基本および消化アクセス認証」、RFC 2617、1999年6月。
[4] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[4] Bradner、S。、「要件レベルを示すためにRFCで使用するためのキーワード」、BCP 14、RFC 2119、1997年3月。
[5] Johnston, A., Donovan, S., Sparks, R., Cunningham, C. and K. Summers, "Session Initiation Protocol (SIP) Public Switched Telephone Network (PSTN) Call Flows", BCP 76, RFC 3666, December 2003.
[5] Johnston、A.、Donovan、S.、Sparks、R.、Cunningham、C。and K. Summers、「セッション開始プロトコル(SIP)公開電話ネットワーク(PSTN)コールフロー」、BCP 76、RFC 3666、2003年12月。
The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification can be obtained from the IETF Secretariat.
IETFは、知的財産またはその他の権利の有効性または範囲に関して、この文書に記載されているテクノロジーの実装または使用に関連すると主張される可能性のある他の権利、またはそのような権利に基づくライセンスがどの程度であるかについての程度に関連する可能性があるという立場はありません。利用可能;また、そのような権利を特定するために努力したことも表明していません。標準トラックおよび標準関連のドキュメントの権利に関するIETFの手順に関する情報は、BCP-11に記載されています。出版のために利用可能にされた権利の請求のコピーと、利用可能になるライセンスの保証、またはこの仕様の実装者またはユーザーによるそのような独自の権利の使用のための一般的なライセンスまたは許可を取得しようとする試みの結果を得ることができますIETF事務局から。
The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director.
IETFは、関心のある当事者に、この基準を実践するために必要な技術をカバーする可能性のある著作権、特許、または特許出願、またはその他の独自の権利を注意深く招待するよう招待しています。情報をIETFエグゼクティブディレクターに宛ててください。
This document is has been a group effort by the SIP and SIPPING WGs. The authors wish to thank everyone who has read, reviewed, commented, or made suggestions to improve this document.
このドキュメントは、SIPとSipping WGSによるグループの努力でした。著者は、この文書を改善するために、読んだり、レビューしたり、コメントしたり、提案したことを示してくれたすべての人に感謝したいと考えています。
Thanks to Rohan Mahy, Adam Roach, Gonzalo Camarillo, Cullen Jennings, and Tom Taylor for their detailed comments during the final review. Thanks to Dean Willis for his early contributions to the development of this document.
Rohan Mahy、Adam Roach、Gonzalo Camarillo、Cullen Jennings、およびTom Taylorの最終レビュー中の詳細なコメントに感謝します。この文書の開発への初期の貢献について、ディーン・ウィリスに感謝します。
The authors wish to thank Kundan Singh for performing parser validation of messages.
著者は、メッセージのパーサー検証を実行してくれたKundan Singhに感謝したいと考えています。
The authors wish to thank the following individuals for their participation in the review of this call flows document: Aseem Agarwal, Rafi Assadi, Ben Campbell, Sunitha Kumar, Jon Peterson, Marc Petit-Huguenin, Vidhi Rastogi, and Bodgey Yin Shaohua.
著者は、このコールフロードキュメントのレビューへの参加について次の個人に感謝したいと考えています:Aseem Agarwal、Rafi Assadi、Ben Campbell、Sunitha Kumar、Jon Peterson、Marc Petit-Huguenin、Vidhi Rastogi、およびBodgey Yin Shaohua。
The authors also wish to thank the following individuals for their assistance: Jean-Francois Mule, Hemant Agrawal, Henry Sinnreich, David Devanatham, Joe Pizzimenti, Matt Cannon, John Hearty, the whole MCI WorldCom IPOP Design team, Scott Orton, Greg Osterhout, Pat Sollee, Doug Weisenberg, Danny Mistry, Steve McKinnon, and Denise Ingram, Denise Caballero, Tom Redman, Ilya Slain, Pat Sollee, John Truetken, and others from MCI WorldCom, 3Com, Cisco, Lucent and Nortel.
著者はまた、ジャン・フランソワ・ラバ、ヘマント・アグラワル、ヘンリー・シン・デヴァナタム、ジョー・ピジメンティ、マット・キャノン、ジョン・ハーティ、マック・ワールドコム・イポップ・デザインチーム、スコット・オートン、グレッグ・オステルハウト、パット・ソルリー、ダグ・ワイゼンバーグ、ダニー・ミストリー、スティーブ・マッキノン、デニス・イングラム、デニス・カバレロ、トム・レッドマン、イリヤ・スレイン、パット・ソルリー、ジョン・トルエットケン、その他MCI Worldcom、3com、Cisco、Lucent、Nortelのその他。
All listed authors actively contributed large amounts of text to this document.
リストされているすべての著者は、このドキュメントに大量のテキストを積極的に提供しました。
Alan Johnston MCI 100 South 4th Street St. Louis, MO 63102 USA
アラン・ジョンストン・マクイ100サウス4番街セントルイス、ミズーリ州63102 USA
EMail: alan.johnston@mci.com
Steve Donovan dynamicsoft, Inc. 5100 Tennyson Parkway Suite 1200 Plano, Texas 75024 USA
Steve Donovan Dynamicsoft、Inc。5100 Tennyson Parkway Suite 1200 Plano、Texas 75024 USA
EMail: sdonovan@dynamicsoft.com
Robert Sparks dynamicsoft, Inc. 5100 Tennyson Parkway Suite 1200 Plano, Texas 75024 USA
Robert Sparks Dynamicsoft、Inc。5100 Tennyson Parkway Suite 1200 Plano、Texas 75024 USA
EMail: rsparks@dynamicsoft.com
Chris Cunningham dynamicsoft, Inc. 5100 Tennyson Parkway Suite 1200 Plano, Texas 75024 USA
Chris Cunningham Dynamicsoft、Inc。5100 Tennyson Parkway Suite 1200 Plano、Texas 75024 USA
EMail: ccunningham@dynamicsoft.com
Kevin Summers Sonus 1701 North Collins Blvd, Suite 3000 Richardson, TX 75080 USA
ケビン・サマーズソヌス1701ノースコリンズブルバード、スイート3000リチャードソン、テキサス75080 USA
EMail: kevin.summers@sonusnet.com
Copyright (C) The Internet Society (2003). All Rights Reserved.
Copyright(c)The Internet Society(2003)。無断転載を禁じます。
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
このドキュメントと翻訳は他の人にコピーされて提供される場合があります。また、それについてコメントまたは説明する派生作品、またはその実装を支援することは、いかなる種類の制限なしに、準備、コピー、公開、および部分的に配布される場合があります。、上記の著作権通知とこの段落がそのようなすべてのコピーとデリバティブ作品に含まれている場合。ただし、このドキュメント自体は、インターネット協会や他のインターネット組織への著作権通知や参照を削除するなど、いかなる方法でも変更できない場合があります。インターネット標準プロセスに従うか、英語以外の言語に翻訳するために必要な場合に従う必要があります。
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assignees.
上記の限られた許可は永続的であり、インターネット社会やその後継者または譲受人によって取り消されることはありません。
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
この文書と本書に含まれる情報は、「現状」に基づいて提供されており、インターネット社会とインターネットエンジニアリングタスクフォースは、ここにある情報の使用が行われないという保証を含むがこれらに限定されないすべての保証を否認します。特定の目的に対する商品性または適合性の権利または黙示的な保証を侵害します。
Acknowledgement
謝辞
Funding for the RFC Editor function is currently provided by the Internet Society.
RFCエディター機能の資金は現在、インターネット協会によって提供されています。