RFC 3261:SIP: Session Initiation Protocol
RFC-Ref

SIP


Click on the red underlined text to get to the source

... voice, video, or text messages. The Session Initiation Protocol (SIP) works in concert with these protocols by enabling Internet ...
... like to share. For locating prospective session participants, and for other functions, SIP enables the creation of an infrastructure of network hosts ...
... registrations, invitations to sessions, and other requests. SIP is an agile, general-purpose tool for creating, modifying, and ...


... Overview of SIP Functionality ...
... SIP is an application-layer control protocol that can establish, ...
... multimedia sessions (conferences) such as Internet telephony calls. SIP can also invite participants to already existing sessions, such as multicast ...
... be added to (and removed from) an existing session. SIP transparently supports name mapping and redirection services, which ...
... network location. SIP supports five facets of establishing and terminating multimedia communications: ...
... services. SIP is not a vertically integrated communications system. SIP is rather a component that can be used with other IETF protocols ...
... SIP is not a vertically integrated communications system. SIP is rather a component that can be used with other IETF protocols to ...
... 1]) for describing multimedia sessions. Therefore, SIP should be used in conjunction with other protocols in order to provide complete services ...
... with other protocols in order to provide complete services to the users. However, the basic functionality and operation of SIP does not depend on any of these protocols. ...
... not depend on any of these protocols. SIP does not provide services. Rather, SIP provides primitives that ...
... SIP does not provide services. Rather, SIP provides primitives that can be used to implement different services. For example, SIP ...
... SIP provides primitives that can be used to implement different services. For example, SIP can locate a user and deliver an opaque object to his current location. ...
... services. SIP does not offer conference control services such as floor control or voting and does not prescribe how a conference is to be managed. ...
... services such as floor control or voting and does not prescribe how a conference is to be managed. SIP can be used to initiate a session that uses some other conference control protocol ...
... session that uses some other conference control protocol. Since SIP messages and the sessions they establish can pass through entirely different networks ...
... sessions they establish can pass through entirely different networks, SIP cannot, and does not, provide any kind of network resource reservation ...
... services provided make security particularly important. To that end, SIP provides a suite of security services, which include denial-of-service ...
... services. SIP works with both IPv4 and IPv6. ...


... 2] and indicate requirement levels for compliant SIP implementations. ...


... This section introduces the basic operations of SIP using simple examples. This section is tutorial in nature and does not contain any normative statements. ...
... any normative statements. The first example shows the basic functions of SIP: location of an end point, signal of a desire to communicate, negotiation of session parameters ...
... established. Figure 1 shows a typical example of a SIP message exchange between two users, Alice and Bob. (Each message is labeled with the letter "F" and a number for reference by the text.) In this example, Alice ...
... two users, Alice and Bob. (Each message is labeled with the letter "F" and a number for reference by the text.) In this example, Alice uses a SIP application on her PC (referred to as a softphone) to call Bob on his SIP ...
... SIP application on her PC (referred to as a softphone) to call Bob on his SIP phone over the Internet. Also shown are two SIP proxy servers that act on behalf of Alice and Bob to facilitate the session establishment ...
... Bob on his SIP phone over the Internet. Also shown are two SIP proxy servers that act on behalf of Alice and Bob to facilitate the session establishment. This typical arrangement is often referred to as the "SIP ...
... SIP proxy servers that act on behalf of Alice and Bob to facilitate the session establishment. This typical arrangement is often referred to as the "SIP trapezoid" as shown by the geometric shape of the dotted lines in Figure 1. ...
... in Figure 1. Alice "calls" Bob using his SIP identity, a type of Uniform Resource Identifier (URI ...
... identity, a type of Uniform Resource Identifier (URI) called a SIP URI. SIP URIs are defined in Section ...
... Uniform Resource Identifier (URI) called a SIP URI. SIP URIs are defined in Section 19.1. It has a similar form to an email address ...
... host name. In this case, it is sip:bob@biloxi.com, where biloxi.com is the domain of Bob's SIP service provider. Alice has a SIP URI ...
... SIP service provider. Alice has a SIP URI of sip:alice@atlanta.com. Alice might have typed in Bob's URI or perhaps clicked on a hyperlink ...
... URI or perhaps clicked on a hyperlink or an entry in an address book. SIP also provides a secure URI, called a SIPS URI ...
... transport (namely TLS) is used to carry all SIP messages from the caller to the domain ...
... domain of the callee. SIP is based on an HTTP-like request/response transaction ...
... transaction begins with Alice's softphone sending an INVITE request addressed to Bob's SIP URI. INVITE is an example of a SIP ...
... SIP URI. INVITE is an example of a SIP method that specifies the action that the requestor (Alice) wants the server (Bob) to take. The INVITE ...
... . . Alice's . . . . . . . . . . . . . . . . . . . . Bob's softphone SIP Phone | | | | | INVITE ...
... | | Figure 1: SIP session setup example with SIP trapezoid ...
... Figure 1: SIP session setup example with SIP trapezoid INVITE ...
... INVITE sip:bob@biloxi.com SIP/2.0 Via: SIP/2.0/UDP ...
... INVITE sip:bob@biloxi.com SIP/2.0 Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhds Max-Forwards: 70 ...
... transaction. To contains a display name (Bob) and a SIP or SIPS URI (sip:bob@biloxi.com) towards which the request was originally ...
... 3]. From also contains a display name (Alice) and a SIP or SIPS URI (sip:alice@atlanta.com) that indicate the originator of the request. ...
... and Call-ID completely defines a peer-to-peer SIP relationship between Alice and Bob and is referred to as a dialog. ...
... sequence number. Contact contains a SIP or SIPS URI that represents a direct route to ...
... message body. The complete set of SIP header fields is defined in Section 20. The details of the session ...
... codec, or sampling rate, are not described using SIP. Rather, the body of a SIP message contains a description of the session ...
... sampling rate, are not described using SIP. Rather, the body of a SIP message contains a description of the session, encoded in some other protocol format. One such format is the Session Description Protocol ...
... SDP message (not shown in the example) is carried by the SIP message in a way that is analogous to a document attachment being carried by an email message, or a web ...
... HTTP message. Since the softphone does not know the location of Bob or the SIP server in the biloxi.com domain, the softphone sends the INVITE ...
... domain, the softphone sends the INVITE to the SIP server that serves Alice's domain, atlanta.com. The address ...
... domain, atlanta.com. The address of the atlanta.com SIP server could have been configured in Alice's softphone, or it could have been discovered by DHCP, for example. ...
... DHCP, for example. The atlanta.com SIP server is a type of SIP server known as a proxy server. A proxy server ...
... The atlanta.com SIP server is a type of SIP server known as a proxy server. A proxy server receives SIP requests ...
... SIP server known as a proxy server. A proxy server receives SIP requests and forwards them on behalf of the requestor. In this example, the proxy server receives ...
... the INVITE to the destination. Responses in SIP use a three-digit code followed by a descriptive phrase. This response contains the same To, From, Call-ID ...
... (Domain Name Service) lookup to find the SIP server that serves the biloxi.com domain. This is described in [4 ...
... INVITE and proxies it to Bob's SIP phone. Bob's SIP ...
... SIP phone. Bob's SIP phone receives the INVITE and alerts Bob to the incoming call ...
... alerts Bob to the incoming call from Alice so that Bob can decide whether to answer the call, that is, Bob's phone rings. Bob's SIP phone indicates this in a 180 (Ringing) response, which is routed back through the two proxies in ...
... In this example, Bob decides to answer the call. When he picks up the handset, his SIP phone sends a 200 (OK) response to indicate that the call has been answered. The 200 (OK) contains a message body ...
... no media session being established. The complete list of SIP response codes is in Section 21. The 200 (OK) (message F9 in Figure 1) might look like this as ...
... Bob sends it out: SIP/2.0 200 OK Via: SIP/2.0/UDP ...
... SIP/2.0 200 OK Via: SIP/2.0/UDP server10.biloxi.com ;branch=z9hG4bKnashds8;received=192.0.2.3 ...
... UDP server10.biloxi.com ;branch=z9hG4bKnashds8;received=192.0.2.3 Via: SIP/2.0/UDP bigbox3.site3.atlanta.com ;branch=z9hG4bK77ef4c2312983.1;received=192.0.2.2 ...
... UDP bigbox3.site3.atlanta.com ;branch=z9hG4bK77ef4c2312983.1;received=192.0.2.2 Via: SIP/2.0/UDP pc33.atlanta.com ;branch=z9hG4bK776asdhds ;received=192.0.2.1 ...
... INVITE request. (There are three Via header field values - one added by Alice's SIP phone, one added by the atlanta.com proxy, and one added by the biloxi.com proxy ...
... proxy, and one added by the biloxi.com proxy.) Bob's SIP phone has added a tag parameter to the To header field ...
... header field contains a URI at which Bob can be directly reached at his SIP phone. The Content-Type and Content-Length ...
... proxy servers can make flexible "routing decisions" to decide where to send a request. For example, if Bob's SIP phone returned a 486 (Busy Here) response, the biloxi.com proxy server ...
... softphone sends an acknowledgement message, ACK, to Bob's SIP phone to confirm the reception of the final response (200 (OK)). In this example, the ACK ...
... to confirm the reception of the final response (200 (OK)). In this example, the ACK is sent directly from Alice's softphone to Bob's SIP phone, bypassing the two proxies. This occurs because the endpoints ...
... ACK three-way handshake used to establish SIP sessions. Full details on session setup are in Section 13. ...
... In general, the end-to-end media packets take a different path from the SIP signaling messages. ...
... INVITE will be discussed later, but relate to the reliability mechanisms in SIP, the length of time it can take for a ringing phone to be answered, and forking. For this reason, request handling in SIP ...
... SIP, the length of time it can take for a ringing phone to be answered, and forking. For this reason, request handling in SIP is often classified as either INVITE or non- INVITE ...
... In some cases, it may be useful for proxies in the SIP signaling path to see all the messaging between the endpoints ...
... session. For example, if the biloxi.com proxy server wished to remain in the SIP messaging path beyond the initial INVITE, it would add to the INVITE ...
... IP address of the proxy. This information would be received by both Bob's SIP phone and (due to the Record-Route header field being passed back in ...
... Registration is another common operation in SIP. Registration is one way that the biloxi.com server can learn the current location of Bob. ...
... way that the biloxi.com server can learn the current location of Bob. Upon initialization, and at periodic intervals, Bob's SIP phone sends REGISTER messages to a server in the biloxi.com domain ...
... REGISTER messages to a server in the biloxi.com domain known as a SIP registrar. The REGISTER messages associate Bob's SIP or SIPS URI ...
... domain known as a SIP registrar. The REGISTER messages associate Bob's SIP or SIPS URI (sip:bob@biloxi.com) with the machine into which he is currently ...
... SIPS URI (sip:bob@biloxi.com) with the machine into which he is currently logged (conveyed as a SIP or SIPS URI in the Contact header field). ...
... proxy for that domain. It is an important concept that the distinction between types of SIP servers is logical, not physical. ...
... Bob is not limited to registering from a single device. For example, both his SIP phone at home and the one in the office could send registrations. This information is stored together in the location ...
... administrator. Finally, it is important to note that in SIP, registration is used for routing ...
... registration is used for routing incoming SIP requests and has no role in authorizing outgoing requests. Authorization ...
... Authorization and authentication are handled in SIP either on a request-by-request basis with a challenge/response mechanism, or by using a lower layer scheme as discussed in Section ...
... 26. The complete set of SIP message details for this registration example is in Section 24.1. ...
... is in Section 24.1. Additional operations in SIP, such as querying for the capabilities of a SIP server or client ...
... Additional operations in SIP, such as querying for the capabilities of a SIP server or client using OPTIONS, or canceling a pending request using CANCEL, will be introduced in later sections. ...


... SIP is structured as a layered protocol, which means that its behavior is described in terms of a set of fairly independent processing stages with only a loose coupling between each stage. The ...
... layer. Furthermore, the elements specified by SIP are logical elements, not physical ...
... The lowest layer of SIP is its syntax and encoding. Its encoding is ...
... BNF). The complete BNF is specified in Section 25; an overview of a SIP message's structure can be found in Section 7. The second layer ...
... sends requests and receives responses and how a server receives requests and sends responses over the network. All SIP elements contain a transport layer. The transport layer ...
... layer. Transactions are a fundamental component of SIP. A transaction is a request sent by a client ...
... layer is called the transaction user (TU). Each of the SIP entities, except the stateless proxy, is a ...
... cancelled (Section 9). The SIP elements, that is, user agent clients and servers, stateless ...
... registrations play an important role in SIP, a UAS that handles a REGISTER is given the special name ...
... Certain other requests are sent within a dialog. A dialog is a peer-to-peer SIP relationship between two user agents that persists for some time. The dialog facilitates sequencing of messages and ...
... The most important method in SIP is the INVITE method, which is used ...
... the purposes of communication. Section 13 discusses how sessions are initiated, resulting in one or more SIP dialogs. Section 14 discusses how characteristics of that session are modified through ...


... The following terms have special significance for SIP. Address-of-Record ...
... Address-of-Record: An address-of-record (AOR) is a SIP or SIPS URI that points to a domain ...
... Client: A client is any network element that sends SIP requests and receives SIP responses. Clients ...
... network element that sends SIP requests and receives SIP responses. Clients may or may not interact directly with a human user ...
... Core: Core designates the functions specific to a particular type of SIP entity, i.e., specific to either a stateful or stateless proxy ...
... Dialog: A dialog is a peer-to-peer SIP relationship between two UAs that persists for some time. A dialog is established by ...
... UAs that persists for some time. A dialog is established by SIP messages, such as a 2xx response to an INVITE request. A dialog is identified by a call identifier ...
... user agent server. Final Response: A response that terminates a SIP transaction, as opposed to a provisional response that does not. All 2xx, 3xx, ...
... Header: A header is a component of a SIP message that conveys information about the message. It is structured as a sequence of header fields ...
... Header Field: A header field is a component of the SIP message header. A header field ...
... Home Domain: The domain providing service to a SIP user. Typically, this is the domain present in the URI ...
... Location Service: A location service is used by a SIP redirect or proxy server to obtain information about a callee's possible ...
... router. Message: Data sent between SIP elements as part of the protocol. SIP messages are either requests or responses. ...
... Message: Data sent between SIP elements as part of the protocol. SIP messages are either requests or responses. Method ...
... Provisional Response: A response used by the server to indicate progress, but that does not terminate a SIP transaction. 1xx responses are provisional, other responses are considered ...
... ACK, or CANCEL. Request: A SIP message sent from a client to a server, for the purpose of invoking a particular operation. ...
... purpose of invoking a particular operation. Response: A SIP message sent from a server to a client, for indicating the status of a request sent from the client to the server ...
... Route Set: A route set is a collection of ordered SIP or SIPS URI which represent a list of proxies ...
... field. SIP Transaction: A SIP transaction ...
... SIP Transaction: A SIP transaction occurs between a client and a ...
... transaction. Spiral: A spiral is a SIP request that is routed to a proxy, forwarded onwards, and arrives once again at that proxy ...
... user agent server is a logical entity that generates a response to a SIP request. The response accepts, rejects, or redirects the request. This role lasts ...


... SIP Messages ...
... SIP is a text-based protocol and uses the UTF-8 charset (RFC 2279(-> 3629std63) ...
... 7]). A SIP message is either a request from a client to a server, or a response from a server to a client ...
... 3], even though the syntax differs in character set and syntax specifics. (SIP allows header fields that would not be valid ...
... Except for the above difference in character sets, much of SIP's message and header field syntax is identical to HTTP/1.1 ...
... 8]). However, SIP is not an extension of HTTP. ...
... SIP requests are distinguished by having a Request-Line for a start- line. A Request-Line contains a method ...
... SP Request-URI SP SIP-Version CRLF ...
... sessions, BYE for terminating sessions, and OPTIONS for querying servers about their capabilities. SIP extensions, documented in standards track RFCs, may define additional methods ...
... Request-URI: The Request-URI is a SIP or SIPS URI as described in Section 19.1 or a general URI ...
... control characters and MUST NOT be enclosed in "<>". SIP elements MAY support Request-URIs with schemes other than "sip" and "sips", for example the "tel" URI scheme ...
... 2806(-> 3966prop) [9]. SIP elements MAY translate non-SIP URIs using any ...
... 2806(-> 3966prop) [9]. SIP elements MAY translate non-SIP URIs using any mechanism at their disposal, resulting in SIP URI ...
... SIP URIs using any mechanism at their disposal, resulting in SIP URI, SIPS URI, or some other scheme. ...
... or some other scheme. SIP-Version: Both request and response messages include the ...
... request and response messages include the version of SIP in use, and follow [H3.1] (with HTTP replaced ...
... H3.1] (with HTTP replaced by SIP, and HTTP/1.1 replaced by SIP/2.0) regarding version ...
... by SIP, and HTTP/1.1 replaced by SIP/2.0) regarding version ordering, compliance requirements ...
... requirements, and upgrading of version numbers. To be compliant with this specification, applications sending SIP messages MUST include a SIP-Version ...
... version numbers. To be compliant with this specification, applications sending SIP messages MUST include a SIP-Version of "SIP ...
... SIP-Version of "SIP/2.0". The SIP-Version string is case-insensitive ...
... Version of "SIP/2.0". The SIP-Version string is case-insensitive, ...
... Unlike HTTP/1.1, SIP treats the version number as a literal ...
... SIP responses are distinguished from requests by having a Status-Line as their start-line. A Status-Line consists of the protocol version ...
... CRLF sequence. Status-Line = SIP-Version SP Status-Code SP ...
... referred to as a "1xx response", any response with a status code between 200 and 299 as a "2xx response", and so on. SIP/2.0 allows six values for the first digit: ...
... SIP header fields are similar to HTTP header fields in both syntax and semantics. In particular, SIP header fields ...
... SIP header fields are similar to HTTP header fields in both syntax and semantics. In particular, SIP header fields follow the [H4.2] definitions of syntax for the message-header and the rules for ...
... name whose value is a comma-separated list can be combined into one header field. That applies to SIP as well, but the specific rule is different because of the different grammars. Specifically, any SIP ...
... header field. That applies to SIP as well, but the specific rule is different because of the different grammars. Specifically, any SIP header whose grammar is of the form ...
... SIP provides a mechanism to represent common header field names in an abbreviated form. This may be useful when messages would otherwise ...
... header field that does not contain multipart. SIP messages MAY contain binary bodies or body parts. When no explicit charset parameter is provided by the sender ...
... The "chunked" transfer encoding of HTTP/1.1 MUST NOT be used for SIP. (Note: The chunked encoding modifies the body of a message in order ...
... Framing SIP Messages ...
... Unlike HTTP, SIP implementations can use UDP or other unreliable datagram protocols. Each such datagram ...
... transports. Implementations processing SIP messages over stream-oriented transports ...
... Content-Length header field value is used to locate the end of each SIP message in a stream. It will always be present when SIP messages are sent over stream ...
... each SIP message in a stream. It will always be present when SIP messages are sent over stream-oriented transports. ...


... peer-to-peer relationship between user agents and are established by specific SIP methods, such as INVITE ...
... A valid SIP request formulated by a UAC MUST, at a minimum, contain the following header fields ...
... Call-ID, Max-Forwards, and Via; all of these header fields are mandatory in all SIP requests. These six header fields are the fundamental building blocks of a SIP message ...
... SIP requests. These six header fields are the fundamental building blocks of a SIP message, as they jointly provide for most of the critical message routing ...
... which contains the method, Request-URI, and SIP version. ...
... UA by a user or service provider manually, or through some other non-SIP mechanism. When a provider wishes to configure a UA ...
... not be the ultimate recipient of the request. The To header field MAY contain a SIP or SIPS URI, but it may also make use of other URI schemes (the tel URL ...
... 2806(-> 3966prop) [9]), for example) when appropriate. All SIP implementations MUST support the SIP URI scheme. Any implementation that supports TLS ...
... 9]), for example) when appropriate. All SIP implementations MUST support the SIP URI scheme. Any implementation that supports TLS MUST support the SIPS URI scheme ...
... to choose how to interpret this input. Using the string to form the user part of a SIP URI implies that the UA wishes the name to be resolved in the domain ...
... resolved in the domain to the right-hand side (RHS) of the at-sign in the SIP URI (for instance, sip:bob@example.com). Using the string to form the user part of a SIPS URI ...
... header field, it contains a URI and optionally a display name. It is used by SIP elements to determine which processing rules to apply to a request (for example, automatic call rejection). As such, it is ...
... globally unique identifier over space and time unless overridden by method-specific behavior. All SIP UAs must have a means to guarantee that the Call- ID header fields ...
... originates with a value that SHOULD be 70. This number was chosen to be sufficiently large to guarantee that a request would not be dropped in any SIP network when there were no loops, but not so large as to consume proxy resources when a loop does occur. Lower values ...
... version in the header field MUST be SIP and 2.0, respectively. The Via header field value MUST contain a branch parameter. This parameter is used to identify the ...
... The Contact header field provides a SIP or SIPS URI that can be used to contact that specific instance of the UA ...
... UA for subsequent requests. The Contact header field MUST be present and contain exactly one SIP or SIPS URI in any request that can result in the establishment of a ...
... If the UAC supports extensions to SIP that can be applied by the server to the response, the UAC SHOULD include a Supported header field ...
... method. SIP requests MAY contain a MIME-encoded message-body. Regardless of ...
... In some cases, the response returned by the transaction layer will not be a SIP message, but rather a transaction layer error. When a ...
... URI scheme not supported by the server. The client SHOULD retry the request, this time, using a SIP URI. If a 420 (Bad Extension) response is received (Section 21.4.15), the ...
... header field is used by a UAC to tell a UAS about SIP extensions that the UAC expects the UAS ...
... Note that Require and Proxy-Require MUST NOT be used in a SIP CANCEL request, or in an ACK request sent for a non-2xx response. These ...
... UAS: INVITE sip:watson@bell-telephone.com SIP/2.0 Require: 100rel ...
... UAS->UAC: SIP/2.0 420 Bad Extension Unsupported: 100rel ...
... header field in the request. If the desired extension is not supported, the server SHOULD rely only on baseline SIP and any other extensions supported by the client. In rare circumstances, where the server cannot process the request ...
... A redirect server does not issue any SIP requests of its own. After receiving a request other than CANCEL, the server either refuses the ...
... well-formed CANCEL requests, it SHOULD return a 2xx response. This response ends the SIP transaction. The redirect server maintains ...
... transaction state for an entire SIP transaction. It is the responsibility of clients ...
... parameters such as a different server or multicast address to try, or a change of SIP transport from UDP to TCP ...
... Note that a Contact header field value MAY also refer to a different resource than the one originally called. For example, a SIP call connected to PSTN gateway may need to deliver a special informational ...
... header field can contain any suitable URI indicating where the called party can be reached, not limited to SIP URIs. For example, it could contain URIs ...


... SIP offers a discovery capability. If a user wants to initiate a session with another user, SIP ...
... SIP offers a discovery capability. If a user wants to initiate a session with another user, SIP must discover the current host(s) at which the destination ...
... which the destination user is reachable. This discovery process is frequently accomplished by SIP network elements such as proxy servers ...
... receiving a request, determining where to send it based on knowledge of the location of the user, and then sending it there. To do this, SIP network elements consult an abstract service ...
... domain. These address bindings map an incoming SIP or SIPS URI, sip:bob@biloxi.com, for example, to one or more URIs ...
... Bob is known to be a member of the engineering department through access to a corporate database. However, SIP provides a mechanism for a UA to create ...
... elements. SIP does not mandate a particular mechanism for implementing the location service. The only requirement ...
... reading that same data. A registrar MAY be co-located with a particular SIP proxy server for the same domain. ...
... registration is meant (for example, "sip:chicago.com"). The "userinfo" and "@" components of the SIP URI MUST NOT be present. To: The To header field ...
... user name. This address-of-record MUST be a SIP URI or SIPS URI. ...
... REGISTER request sent to a registrar includes the contact address(es) to which SIP requests for the address-of-record should be forwarded. The address-of-record ...
... The Contact header field values of the request typically consist of SIP or SIPS URIs that identify particular SIP endpoints (for example, ...
... SIP or SIPS URIs that identify particular SIP endpoints (for example, "sip:carol@cube2214a.chicago.com"), but they MAY use any URI scheme. ...
... "sip:carol@cube2214a.chicago.com"), but they MAY use any URI scheme. A SIP UA can choose to register telephone numbers ...
... address-of-record "sip:carol@chicago.com", would register with the SIP registrar of the domain chicago.com. Her registrations ...
... domain to route requests for Carol's address-of-record to her SIP endpoint. Once a client ...
... address is guaranteed by other means. This may be applicable to URIs that invoke protocols other than SIP, or SIP devices secured by protocols other than TLS ...
... URIs that invoke protocols other than SIP, or SIP devices secured by protocols other than TLS. ...
... Request-URI and address the request there, using the normal SIP server location mechanisms [4]. For example, the UA for ...
... registrations are addressed to the well-known "all SIP servers" multicast address "sip.mcast.net" (224.0.1.75 for IPv4 ...
... IPv6 multicast address has been allocated; such an allocation will be documented separately when needed. SIP UAs MAY listen to that address ...
... UAC. Mechanisms for the authentication of SIP user agents are described in Section 22. Registration behavior in no way overrides the generic ...
... authentication framework for SIP. If no authentication mechanism is available, the registrar MAY take the From address ...


... The SIP method OPTIONS allows a UA to query ...
... Request-URI, which could identify another UA or a SIP server. If the OPTIONS is addressed to a proxy server, the Request-URI ...
... An OPTIONS request is constructed using the standard rules for a SIP request as discussed in Section 8.1.1. A Contact header field ...
... Example OPTIONS request: OPTIONS sip:carol@chicago.com SIP/2.0 Via: SIP/2.0/UDP ...
... OPTIONS sip:carol@chicago.com SIP/2.0 Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKhjhs8ass877 Max-Forwards: 70 ...
... The response to an OPTIONS is constructed using the standard rules for a SIP response as discussed in Section 8.2.6. The response code chosen MUST be the same that would have been chosen had the request ...
... request in Section 11.1): SIP/2.0 200 OK Via: SIP/2.0/UDP ...
... SIP/2.0 200 OK Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKhjhs8ass877 ;received=192.0.2.4 ...


... user agent is that of a dialog. A dialog represents a peer-to-peer SIP relationship between two user agents that persists for some time. The dialog facilitates sequencing of ...
... between both of them. The dialog represents a context in which to interpret SIP messages. Section 8 discussed method independent UA ...
... request that contains a tag in the To field. The rules for computing the dialog ID of a message depend on whether the SIP element is a UAC or UAS ...
... host. The URI provided in the Contact header field MUST be a SIP or SIPS URI. If the request that initiated the dialog contained a ...
... UAC sends a request that can establish a dialog (such as an INVITE) it MUST provide a SIP or SIPS URI with global scope (i.e., the same SIP URI ...
... SIP or SIPS URI with global scope (i.e., the same SIP URI can be used in messages outside this dialog) in the Contact header field of the request. If the request has a Request- ...


... Content-Disposition is "session". SIP uses an offer/answer model where one UA sends a session ...
... offer/answer exchange is within the context of a dialog, so that if a SIP INVITE results in multiple dialogs, each is a separate offer/answer ...
... (for example, you cannot make a new offer while one is in progress). This results in restrictions on where the offers and answers can appear in SIP messages. In this specification, offers and answers can only appear in INVITE requests and responses, and ACK ...


... This section describes the procedures for terminating a session established by SIP. The state of the session and the state ...
... ACK for its 2xx response or until the server transaction times out. If no SIP extensions have defined other application layer states associated with the dialog, the BYE also ...
... established by any 2xx responses, or MAY terminate them with BYE. The notion of "hanging up" is not well defined within SIP. It is specific to a particular, albeit common, user interface. ...


... SIP proxies are elements that route ...
... proxies are elements that route SIP requests to user agent servers and SIP responses to user agent ...
... route SIP requests to user agent servers and SIP responses to user agent clients. A request may ...
... Being a proxy is a logical role for a SIP element. When a request arrives, an element that can play the role ...
... When stateful, a proxy is purely a SIP transaction processing engine. Its behavior is modeled here in terms of the server and client ...
... header field (Section 20.22) is used to limit the number of elements a SIP request can traverse. If the request does not contain a Max-Forwards header field ...
... service created by a SIP Registrar, reading a database, consulting a presence server, utilizing other protocols, or simply performing an ...
... dynamic source of information while building the target set (for instance, if it consults a SIP Registrar), it SHOULD monitor that source for the duration of processing the request. New locations SHOULD be added to the target set ...
... identity of that next hop, expressed as a SIP or SIPS URI, is inserted as the top-most Route ...
... URI placed in the Record-Route header field value MUST be a SIP or SIPS URI. This URI MUST contain an lr parameter (see ...
... element, so it must restrict itself to the mandatory elements of a SIP implementation: SIP URIs ...
... elements of a SIP implementation: SIP URIs and either the TCP or UDP ...
... server location procedures of [4] are applied to it, so that subsequent requests reach the same SIP element. If the Request-URI contains a SIPS URI ...
... The Record-Route process is designed to work for any SIP request that initiates a dialog. INVITE is the only such request in this specification, but extensions to the protocol ...
... proxy has already attempted. 3xx responses may contain a mixture of SIP, SIPS, and non-SIP URIs ...
... 3xx responses may contain a mixture of SIP, SIPS, and non-SIP URIs. A proxy ...
... URIs. A proxy may choose to recurse on the SIP and SIPS URIs and place the remainder into the response context ...
... URI Scheme) response to a request whose Request-URI scheme was not SIP, but the scheme in the original received request was