64

Pocket Guide Sip

Embed Size (px)

DESCRIPTION

SIP

Citation preview

  • 1SIP Pocket Guide

    SIP Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    SIP Network Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    SIP User Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    Presence Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    SIP Gateways . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    SIP Proxy Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    SIP Redirect Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    SIP Registration Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    SIP Protocol Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    SIP Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    SIP Message Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    Generic Message Structure . . . . . . . . . . . . . . . . . . . . . . . . . 9

    SIP Method Message Structure . . . . . . . . . . . . . . . . . . . . . . 9

    SIP Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    SIP Responses Class 1XX . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    SIP Responses Class 2XX . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    SIP Responses Class 3XX . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    SIP Responses Class 4XX . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    SIP Responses Class 5XX . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    SIP Responses Class 6XX . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    Legend for Header Table . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    Header Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    SIP Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

    SIP Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    SDP Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    SDP Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    SDP Field Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

    SIP Responses to ISUP Release Cause Mapping . . . . . . . . . . 35

    SIP Call Flow Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

    Call Flow Messages

    Invite #1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    Invite #2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    100 Trying #3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

    100 Trying #4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

    180 Ringing #5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

    180 Ringing #6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

    200 OK #7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    Table of Contents _____________________________

  • 200 OK #8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    ACK #9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    ACK #10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    BYE #11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

    BYE #12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

    200 OK #13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

    200 OK #14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

    Registration Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

    Registration Messages

    Register #1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    402 Unauthorized #2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    Register #3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

    200 OK #4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    Additional Sample Messages

    Cancel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    Subscribe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    302 Moved Temporarily . . . . . . . . . . . . . . . . . . . . . . . . . 50

    401 Unauthorized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

    403 Forbidden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

    404 Unknown User Account . . . . . . . . . . . . . . . . . . . . . . 52

    407 Proxy Authentication Required . . . . . . . . . . . . . . . . . 52

    408 Request Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    481 Transaction Does Not Exist . . . . . . . . . . . . . . . . . . . . 53

    487 Request Terminated . . . . . . . . . . . . . . . . . . . . . . . . . 53

    Glossary of SIP Related Terms . . . . . . . . . . . . . . . . . . . . . . . 54

    References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    Table of Contents (Continued)_____________________

    2 SIP Pocket Guide

  • 3SIP Pocket Guide

    SIP DEFINITION

    Session Initiation Protocol (SIP) is a signaling protocol specified by the Internet

    Engineering Task Force (IETF) for establishing, modifying, and terminating sessions

    in an IP network. These session are independent of the SIP protocol and can be

    voice, video, or any other type of media. The current baseline specification for SIP is

    IETF RFC 3261 with other RFCs further defining extensions to the SIP Protocol.

    SIP NETWORK ARCHITECTURE

    NOTES:

  • 4 SIP Pocket Guide

    SIP USER AGENTS

    Rules for User Agents _____________________________________________ UAs must be capable of establishing media sessions with other UAs.

    UAs must maintain call states of calls it initiates or participates in.

    Even after the call has been terminated the UA must maintain the call state for 32 seconds in case of lost messages.

    UAs must support UDP transport.

    UAs must support TCP transport if they send messages greater than 1000 octets.

    UAs must support Session Description Protocol (SDP) for media description.

    UAs must be understand extensions contained in the Require header of received request from other UAs.

    UAs may ignore unknown header fields.

    SIP User Agents are SIP-enabled devices that take input from users and act on

    their behalf.

    200 OK

    NOTES:

  • 5SIP Pocket Guide

    PRESENCE AGENTS

    SIP GATEWAYS

    NOTES:

    Support the SIP Event Specification (RFC 3856).

    Receives subscription request (SUBSCRIBE Messages).

    Validates the SUBSCRIBE Messages.

    Can collect presence information from multiple sources.

    - User Agents publishing presence information

    - Registration servers

    - Non SIP Sources

    Sometimes acts as a presence agent collecting presence information.

    Sometimes acts as a proxy forwarding subscription request to other Presence Agents.

    Authenticates the Subscription Request.

    Applications that allow a SIP network to interface with a non-SIP network (PSTN, H323 etc.).

    Can be thought of as protocol converters or media converters depending on the type of network being interfaced.

  • 6 SIP Pocket Guide

    SIP PROXY SERVERS

    Accept session request from a SIP User Agent and query the SIP Registration Server for the address of the callED party.

    It then forwards the session invitation to either the SIP User Agent or another Proxy Server based on whether the callED party is in the same domain as the callING party.

    Proxy Servers may be either Stateful or Stateless.

    SIP REDIRECT SERVERS

    Receive SIP Request.

    Respond to but do not forward SIP Request.

    Uses databases or Location Servers to find user location.

    Respond to originator with 300 Class.

    Response messages (redirection class).

    SIP REGISTRATION SERVERS

    Registration Servers are databases that contain the location of User Agents within a

    domain. They retrieve and send participants IP address and other information to the

    SIP Proxy Server.

    NOTES:

  • 7SIP Pocket Guide

    SIP PROTOCOL STACK

    Med

    ia Cod

    ing

    SDP

    RTSP TCP

    SCTP

    UDP

    IP

    SIP

    RTP

    DNS

    DHCP

    V.90

    Ethe

    rnet

    PPP

    SIGNALING

    MED

    IAUTILITY

    NOTES:

  • 8 SIP Pocket Guide

    SIP ADDRESSING

    Is used to identify a user by its SIP Uniform Resource Identifiers (URI) (RFC 2396).

    A SIP URI consists of a user and a domain delimited by one @, as is shown in the following examples:

    user@domainuser@machineuser@ip_addresstelephone_number@gateway

    SIP Methods _____________________________________________________SIP Messages that request an action to take place in another user agent or server.

    SIP Responses___________________________________________________SIP Messages generated by a UA or SIP server in response to a SIP request ormethod.

    SIP MESSAGE DEFINITIONS

    NOTES:

  • 9SIP Pocket Guide

    Item Description MaximumLengthRequest Line /

    Start LineIdentifies the message type, address of recipientand the version of SIP 256 Bytes

    Header #1 Transport specific information determined by theheader type 256 Bytes

    Header #N Transport specific information determined by theheader type 256 Bytes

    MessageBody

    This portion of the message contains SessionDescription Protocol (SDP) which defines themedia information

    1000 Bytes

    GENERIC MESSAGE STRUCTURE

    Item Description

    Request Line /Start Line

    Identifies the message type, address of recipient, and theversion of SIP

    MethodDefines the method type: ACK, BYE, CANCEL, INFO,INVITE, MESSAGE, NOTIFY OPTIONS, PRACK, PUBLISH,REFER, REGISTER, SUBSCRIBE, and UPDATE

    Request URI Remote target addressSIP Version "SIP/2.0" current version of SIP

    Message Headers Transport specific information determined by the header type

    Header #1 Information for 1st headerHeader #N Information for Nth header

    Message Body This portion of the message contains Session DescriptionProtocol (SDP) which defines the media information

    SDP Fields

    Defines parameters associated with required media. SDP Fields: Protocol Version Number, Owner/Creator,Session Name, Session Info., Uniform Resource Identifier,E-Mail Address, Phone Number, Connection Information,Bandwidth Info., Timer Sessions (Start/Stop, Repeat Times,and Time Zone Corrections) Encryption Key, Attribute Lines,Media Info., and Media Attributes

    SIP METHOD MESSAGE STRUCTURE

    NOTES:

  • 10 SIP Pocket Guide

    SIP METHODS

    ACK (RFC 3261) _________________________________________________The ACK method is used to acknowledge the final response to an INVITE method. Final responses are response classes 2XX, 3XX, 4XX, and 5XX.

    Bye (RFC 3261) _________________________________________________The Bye method is used to terminate an established media session.

    Cancel (RFC 3261) _____________________________________________________The Cancel method is used to terminate a session before the session is established.

    Info (RFC 2976) __________________________________________________The INFO method is used to carry call signaling information from a user agent to another user agent, with which it has an established media session.

    Invite (RFC 3261) ________________________________________________The Invite method is used by a user agent to request the establishment of asession to another user agent.

    Message (RFC 3428) _____________________________________________The Message method is used to transfer Instant Message information in SIP.

    Notify (RFC 3265) ________________________________________________The Notify method is used to provide the updated event and status information requested in the Subscribe Method.

    Options (RFC 3261) ______________________________________________The Options method is used to query a user agent or server about its capabilities and discover its current availability.

    PRACK (RFC 3262) ______________________________________________The PRACK method is used to acknowledge reliability transported provisionalresponses (1XX Class responses).

    Publish (RFC 3903) ______________________________________________The Publish method is used by a user agent to send/publish event state information to a SIP Server known as an Event State Compositor (ESC).

  • 11SIP Pocket Guide

    SIP METHODS (Continued)

    Refer (RFC 3515) ________________________________________________The Refer method is used by a user agent to request another user agent accessto a particular SIP URI. This method is also used to perform a call transfer.

    Register (RFC 3261) _____________________________________________The Register method is used by a SIP User Agent to notify the SIP network ofits current Contact URI (IP Address) and to provide the URI that should be used for the routing of request to the User Agent.

    Subscribe (RFC 3265) ____________________________________________The Subscribe method is used to request event and status updates from a remote device.

    Update (RFC 3311) _______________________________________________The Update method is used to modify the state of a session without changingthe state of the existing dialog.

    NOTES:

  • 12 SIP Pocket Guide

    SIP RESPONSES CLASS 1XX

    Provisional Response Class (1XX)Provisional responses, also known as informational responses, indicate that the server contacted is performing some further action and does not yet have a definitive response. A server sends a 1XX response if it expects to take more than200 ms to obtain a final response.

    100 Trying (RFC 3261) ___________________________________________This response indicates that the request has been received by the next-hop server and that some unspecified action is being taken on behalf of this call.

    180 Ringing (RFC 3261) __________________________________________The UA receiving the INVITE is trying to alert the user. This response MAY be used to initiate local ringback.

    181 Call Is Being Forwarded (RFC 3261) ___________________________A server MAY use this status code to indicate that the call is being forwarded to a different set of destinations.

    182 Queued (RFC 3261) __________________________________________The called party is temporarily unavailable, but the server has decided to queue the call rather than reject it. When the callee becomes available, it will return the appropriate final status response.

    183 Session Progress (RFC 3261) _________________________________The 183 (Session Progress) response is used to convey information about the progress of the call that is not otherwise classified.

    NOTES:

  • 13SIP Pocket Guide

    SIP RESPONSES CLASS 2XX

    Success Response Class (2XX)Success responses indicate that the request was successful.

    200 OK (RFC 3261) __________________________________________The request has succeeded. The information returned with the responsedepends on the method used in the request.

    202 Accepted (RFC 3265) _________________________________________Indicates that the subscription request has been understood, and that authorization may or may not have been granted.

    SIP RESPONSES CLASS 3XX

    Redirection Class (3XX)3XX responses give information about the user's new location, or about alternativeservices that might be able to satisfy the call.

    300 Multiple Choice (RFC 3261) ___________________________________The address in the request resolved to several choices, each with its own specific location, and the user (or UA) can select a preferred communication end point and redirect its request to that location.

    301 Moved Permanently (RFC 3261) _______________________________The user can no longer be found at the address in the Request-URI, and therequesting client SHOULD retry at the new address given in the Contact header field.

    302 Moved Temporarily (RFC 3261) ________________________________The requesting client SHOULD retry the request at the new address(es) given inthe Contact header field.

    305 Use Proxy (RFC 3261) ________________________________________The requested resource MUST be accessed through the proxy listed in the Contact field. The Contact field gives the URI of the proxy.

    380 Alternative Service (RFC 3261) ________________________________The call was not successful, but alternative services are possible. The alternative services are described in the message body of the response.

  • 14 SIP Pocket Guide

    SIP RESPONSES CLASS 4XX

    Client Error Class (4XX)4XX responses are failure responses from a particular server. The client SHOULDNOT retry the same request without modification.

    400 Bad Request (RFC 3261) _____________________________________The request could not be understood due to malformed syntax. The Reason-Phrase SHOULD identify the syntax problem in more detail, for example, "Missing Call-ID header field."

    401 Unauthorized (RFC 3261) _____________________________________The request requires user authentication. This response is issued by UASs and Registrars.

    402 Payment Required (RFC 3261) ________________________________Reserved for future use.

    403 Forbidden (RFC 3261) ________________________________________The server understood the request, but is refusing to fulfill it. Authorization will not help, and the request SHOULD NOT be repeated.

    404 Not Found (RFC 3261) ________________________________________The server has definitive information that the user does not exist at the domainspecified in the Request-URI.

    405 Method Not Allowed (RFC 3261) _______________________________The method specified in the Request-Line is understood, but not allowed for the address identified by the Request-URI. The response MUST include an Allowheader field containing a list of valid methods for the indicated address.

    406 Not Acceptable (RFC 3261) ___________________________________The resource identified by the request is only capable of generating response entities that have content characteristics not acceptable according to the Accept header field sent in the request.

    407 Proxy Authentication Required (RFC 3261) ______________________This response indicates that the client MUST first authenticate itself with the proxy.

    408 Request Timeout (RFC 3261) __________________________________The server could not produce a response within a suitable amount of time, for example, if it could not determine the location of the user in time.

  • 15SIP Pocket Guide

    SIP RESPONSES CLASS 4XX (Continued)

    410 Gone (RFC 3261) ____________________________________________The requested resource is no longer available at the server and no forwarding address is known. This condition is expected to be considered permanent.

    412 Conditional Request Failed (RFC 3903) _________________________Indicates that the precondition given for the request has failed.

    413 Request Entity Too Large (RFC 3261) __________________________The server is refusing to process a request because the request entity-body is larger than the server is willing or able to process.

    414 Request-URI Too Long (RFC 3261) _____________________________The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret.

    415 Unsupported Media Type (RFC 3261) ___________________________The server is refusing to service the request because the message body of the request is in a format not supported by the server for the requested method. The server MUST return a list of acceptable formats using the Accept, Accept-Encoding, or Accept-Language header field, depending on the specific problem with the content.

    416 Unsupported URK Scheme (RFC 3261) _________________________The server cannot process the request because the scheme of the URI in the Request-URI is unknown to the server.

    417 Unknown Resource-Priority (RFC 4412) _________________________A request containing Require: resource-priority and an unknown value for Resource-Priority header field will receive the 417 Unknown Resource Priority response.

    420 Bad Extension (RFC 3261) ____________________________________The server did not understand the protocol extension specified in a Proxy-Require or Require header field.

    421 Extension Required (RFC 3261) _______________________________The UAS needs a particular extension to process the request, but this extensionis not listed in a Supported header field in the request. Responses with this status code MUST contain a Require header field listing the required extensions.

  • 16 SIP Pocket Guide

    SIP RESPONSES CLASS 4XX (Continued)

    422 Session Interval Too Small (RFC 4028) _________________________Indicates that the session timer duration was too small.

    423 Interval Too Brief (RFC 3261) __________________________________The server is rejecting the request because the expiration time of the resource refreshed by the request is too short.

    429 Provide Referror Identify (RFC 3892) ___________________________Is used by the refer target to indicate that the referee must provide a validReferred-BY token.

    433 Anonymity Disallowed (RFC 4079) _____________________________Indicates that the server refused to fulfill the request because the requestor was anonymous. Its default reason phrase is "Anonymity Disallowed."

    436 Bad Identity-Info (RFC 4474) __________________________________This response code is used when the Identity-Info header contains a URI thatcannot be de-referenced by the verifier (either the URI scheme is unsupportedby the verifier, or the resource designated by the URI is otherwise unavailable).

    437 Unsupported Certificate (RFC 4474) ____________________________This response code is used when the verifier cannot validate the certificate referenced by the URI of the Identity-Info header

    438 Invalid Identity Header (RFC 4474) _____________________________This response code is used when the verifier receives a message with an Identity signature that does not correspond to the digest-string calculated by the verifier.

    470 Consent Needed (RFC 5360) __________________________________Indicates that the request that triggered the response contained a URI list with atleast one URI for which the relay had no permissions.

    480 Temporarily Unavailable (RFC 3261) ____________________________The callee's end system was contacted successfully but the callee is currentlyunavailable (for example, is not logged in, logged in but in a state that precludescommunication with the callee, or has activated the "do not disturb" feature.

  • 17SIP Pocket Guide

    SIP RESPONSES CLASS 4XX (Continued)

    481 Call/Transaction Does Not Exist (RFC 3261) _____________________This status indicates that the UAS received a request that does not match any existing dialog or transaction.

    482 Loop Detected (RFC 3261) ____________________________________The server has detected a loop.

    483 Too Many Hops (RFC 3261) ___________________________________The server received a request that contains a Max-Forwards header field with the value zero.

    484 Address Incomplete (RFC 3261) _______________________________The server received a request with a Request-URI that was incomplete. Additional information SHOULD be provided in the reason phrase.

    485 Ambiguous (RFC 3261) _______________________________________The Request-URI was ambiguous. The response MAY contain a listing of possible unambiguous addresses in Contact header fields.

    486 Busy Here (RFC 3261) ________________________________________The callee's end system was contacted successfully, but the callee is currently not willing or able to take additional calls at this end system.

    487 Request Terminated (RFC 3261) _______________________________The request was terminated by a BYE or CANCEL request. This response is never returned for a CANCEL request itself.

    488 Not Acceptable Here (RFC 3261) _______________________________The response has the same meaning as 606 (Not Acceptable), but only applies to the specific resource addressed by the Request-URI and the request may succeed elsewhere.

    489 Bad Event (RFC 5360) ________________________________________Indicates that the specified event/event class is not understood.

    491 Request Pending (RFC 3261) __________________________________The request was received by a UAS that had a pending request within the samedialog.

  • NOTES:

    18 SIP Pocket Guide

    SIP RESPONSES CLASS 4XX (Continued)

    493 Undecipherable (RFC 3261) ___________________________________The request was received by a UAS that contained an encrypted MIME body for which the recipient does not possess or will not provide an appropriate decryption key.

    494 Security Agreement Required (RFC 3329) _______________________A server receiving an unprotected request that contains a Require or Proxy-Require header field with the value "sec-agree" MUST respond to the client with a 494 (Security Agreement Required) response.

  • 19SIP Pocket Guide

    SIP RESPONSES CLASS 5XX

    Server Failure (5XX)5XX responses are failure responses given when a server itself has erred.

    500 Server Internal Error (RFC 3261) _______________________________The server encountered an unexpected condition that prevented it from fulfilling the request. The client MAY display the specific error condition and MAY retrythe request after several seconds.

    501 Not Implemented (RFC 3261) __________________________________The server does not support the functionality required to fulfill the request.

    502 Bad Gateway (RFC 3261) _____________________________________The server, while acting as a gateway or proxy, received an invalid responsefrom the downstream server it accessed in attempting to fulfill the request.

    503 Service Unavailable (RFC 3261) _______________________________The server is temporarily unable to process the request due to a temporaryoverloading or maintenance of the server.

    504 Server Time-Out (RFC 3261) ___________________________________The server did not receive a timely response from an external server it accessedin attempting to process the request.

    505 Version Not Supported (RFC 3261) _____________________________The server does not support, or refuses to support, the SIP protocol version thatwas used in the request.

    513 Message Too Large (RFC 3261) _______________________________The server was unable to process the request since the message length exceeded its capabilities.

    580 Precondition Failure (RFC 3312) _______________________________When a UAS, acting as an answerer, cannot or is not willing to meet the preconditions in the offer, it SHOULD reject the offer by returning a 580 Precondition-Failure) response.

    NOTES:

  • 20 SIP Pocket Guide

    SIP RESPONSES CLASS 6XX

    Global Failures (6XX)6XX responses indicate that a server has definitive information about a particularuser, not just the particular instance indicated in the Request-URI.

    600 Busy Everywhere (RFC 3261) __________________________________The callee's end system was contacted successfully but the callee is busy and does not wish to take the call at this time.

    603 Decline (RFC 3261) __________________________________________The callee's machine was successfully contacted but the user explicitly does notwish to or cannot participate.

    604 Does Not Exist Anywhere (RFC 3261) __________________________The server has authoritative information that the user indicated in the RequestURI does not exist anywhere.

    606 Not Acceptable (RFC 3261) ___________________________________The user's agent was contacted successfully but some aspects of the sessiondescription such as the requested media, bandwidth, or addressing style werenot acceptable.

    NOTES:

  • 21SIP Pocket Guide

    LEGEND FOR HEADER TABLE

    Legend

    Where column:R = Header field may only appear in requestr = Header field may only appear in responses2XX, 4XX, etc. = Numerical value of the range of response codesc = Header field copied from the request to the responsesEmpty field = Header field may be present in all request and responses

    Proxy column:a = Proxy can add or concatenate the header field if not presentm = Proxy can modify an existing header field valued = Proxy can delete a header field valuer = Proxy must be able to read the header field value, thus this header

    field cannot be encrypted

    "Named Request" column:m = Header field is mandatorym* = Header field SHOULD be sent, however clients/servers need to be

    prepared to receive the message without the header fieldo = Header field is Optionalt = Header field SHOULD be sent, however clients/servers need to be

    prepared to receive the message without the header field - = Header field is not applicable

    NOTES:

  • 22 SIP Pocket Guide

    HEADER TABLEHeader Field

    RFC No.

    Where

    Proxy

    ACK

    BYE

    CAN

    INV

    OPT

    REG

    PRA

    SUB

    NOT

    UPD

    MSG

    REF

    INF

    PUB

    Accep

    t32

    61R

    o

    o

    m*

    oo

    oo

    o

    oo

    o

    Accep

    t32

    612X

    X

    om*

    o

    o

    o

    Accep

    t32

    6141

    5

    c

    cc

    cc

    oo

    cm*

    co

    m*

    Accep

    t-Con

    tact

    3261

    Rar

    oo

    oo

    o

    Accep

    t-Encod

    ing

    3261

    R

    o

    oo

    oo

    oo

    o

    oo

    o

    Accep

    t-Encod

    ing

    3261

    2XX

    o

    m*

    o

    o

    o

    Accep

    t-Encod

    ing

    3261

    415

    c

    c

    cc

    co

    oc

    m*

    co

    m*

    Accep

    t-Lan

    guag

    e32

    61R

    o

    o

    oo

    oo

    oo

    o

    o

    Accep

    t-Lan

    guag

    e32

    612X

    X

    om*

    o

    o

    o

    Accep

    t-Lan

    guag

    e32

    6141

    5

    c

    cc

    cc

    oo

    cm*

    co

    m*

    Accep

    t-Resou

    rce-Prio

    rity

    4412

    200

    amdr

    o

    oo

    oo

    oo

    oo

    oo

    oo

    Accep

    t-Resou

    rce-Prio

    rity

    4412

    417

    amdr

    o

    oo

    oo

    oo

    oo

    oo

    oo

    Alert-Info

    3261

    Rar

    o

    Alert-Info

    3261

    180

    ar

    o

    Allow

    3261

    R

    o

    oo

    oo

    oo

    oo

    oo

  • 23SIP Pocket Guide

    HEADER TABLE (Continued)Header Field

    RFC No.

    Where

    Proxy

    ACK

    BYE

    CAN

    INV

    OPT

    REG

    PRA

    SUB

    NOT

    UPD

    MSG

    REF

    INF

    PUB

    Allow

    3261

    2XX

    o

    m*

    m*

    oo

    oo

    oo

    m

    Allow

    3261

    r

    o

    oo

    oo

    oo

    oo

    o

    Allow

    3261

    405

    m

    m

    mm

    mm

    mm

    m*

    mo

    Allow-Events

    3265

    Ro

    o

    oo

    oo

    oo

    o

    Allow-Events

    3265

    2XX

    o

    o

    oo

    oo

    o

    Allow-Events

    3265

    489

    m

    m

    m

    Answer-M

    ode

    5373

    Authe

    ntication-Info

    3261

    2XX

    o

    o

    oo

    oo

    oo

    oo

    o

    Autho

    rization

    3261

    Ro

    oo

    oo

    oo

    oo

    oo

    oo

    o

    Call-ID

    3261

    Cr

    mm

    mm

    mm

    mm

    mm

    mm

    mm

    Call-Info

    3261

    ar

    oo

    o

    oo

    o

    Con

    tact

    3261

    Ro

    mo

    o

    mm

    m

    mo

    Con

    tact

    3261

    1XX

    o

    o

    oo

    Con

    tact

    3261

    2XX

    m

    oo

    m

    om

    m

    Con

    tact

    3261

    3XX

    d

    o

    oo

    oo

    mm

    oo

    o

    o

  • 24 SIP Pocket Guide

    HEADER TABLE (Continued)Header Field

    RFC No.

    Where

    Proxy

    ACK

    BYE

    CAN

    INV

    OPT

    REG

    PRA

    SUB

    NOT

    UPD

    MSG

    REF

    INF

    PUB

    Con

    tact

    3261

    485

    o

    o

    oo

    oo

    oo

    oo

    o

    Con

    tent-Dispo

    sition

    3261

    oo

    o

    oo

    oo

    oo

    oo

    o

    Con

    tent-Encod

    ing

    3261

    oo

    o

    oo

    oo

    oo

    oo

    oo

    Con

    tent-Lan

    guag

    e32

    61o

    o

    oo

    oo

    oo

    oo

    oo

    Con

    tent-Len

    gth

    3261

    art

    tt

    tt

    tt

    tt

    tt

    tt

    t

    Con

    tent-Type

    3261

    **

    *

    **

    **

    **

    **

    **

    Cseq

    3261

    Cr

    mm

    mm

    mm

    mm

    mm

    mm

    mm

    Date

    3261

    ao

    oo

    oo

    oo

    oo

    oo

    oo

    o

    Error-In

    fo32

    6130

    0-69

    9a

    o

    oo

    oo

    oo

    oo

    oo

    o

    Event

    3265

    R

    mm

    m

    Expire

    s32

    61

    o

    o

    o

    o

    oo

    o

    EXPIRES

    3261

    2XX

    m

    m

    From

    3261

    Cr

    mm

    mm

    mm

    mm

    mm

    mm

    mm

    History-In

    fo42

    44am

    dr

    oo

    o

    oo

    o

    o

    o

    Iden

    tity

    4474

    Ra

    oo

    o

    oo

    oo

    oo

    oo

    oo

  • 25SIP Pocket Guide

    Header Field

    RFC No.

    Where

    Proxy

    ACK

    BYE

    CAN

    INV

    OPT

    REG

    PRA

    SUB

    NOT

    UPD

    MSG

    REF

    INF

    PUB

    Iden

    tity-Info

    4474

    Ra

    oo

    o

    oo

    oo

    oo

    oo

    oo

    In-Rep

    ly-To

    3261

    Rr

    o

    Join

    3911

    R

    o

    Max-Forwards

    3261

    Ram

    rm

    mm

    mm

    mm

    mm

    mm*

    mo

    m

    Min-Expire

    s32

    6142

    3

    m

    m

    m

    MIM

    E-Version

    3261

    oo

    o

    oo

    oo

    oo

    oo

    Min-SE

    4028

    Ram

    r

    o

    o

    Min-SE

    4028

    422

    m

    m

    Organ

    ization

    3261

    ar

    oo

    o

    o

    oo

    oo

    o

    P-Access-Network-Info

    3455

    dr

    o

    oo

    oo

    oo

    oo

    oo

    o

    P-Answer-State

    4964

    18X,

    2XX

    ar

    o

    P-Answer-State

    4964

    R

    P-Asserted-Iden

    tity

    3325

    adr

    o

    o

    o

    oo

    o

    P-Associated-URI

    3455

    2XX

    o

    P-Called-Party-ID

    3455

    Ram

    r

    oo

    o

    o

    o

    HEADER TABLE (Continued)

  • 26 SIP Pocket Guide

    HEADER TABLE (Continued)Header Field

    RFC No.

    Where

    Proxy

    ACK

    BYE

    CAN

    INV

    OPT

    REG

    PRA

    SUB

    NOT

    UPD

    MSG

    REF

    INF

    PUB

    P-Charging-Fu

    nction-Address

    3455

    adr

    o

    o

    oo

    oo

    oo

    oo

    oo

    P-Charging-Ve

    ctor

    3455

    admr

    o

    o

    oo

    oo

    oo

    oo

    oo

    P-DCS-Trace-Party-ID

    3603

    Rdr

    o

    P-DCS-OSPS

    3603

    Rdr

    o

    o

    P-DCS-Billing-Info

    3603

    admr

    o

    P-DCS-LAES

    3603

    adr

    o

    P-DCS-Redirect

    3603

    adr

    o

    P-Early-M

    edia

    5009

    Ram

    r

    o

    o

    o

    P-Early-M

    edia

    5009

    18X

    amr

    o

    P-Early-M

    edia

    5009

    2XX

    amr

    o

    o

    P-M

    edia-Authorization

    3313

    Rad

    o

    o

    o

    o

    P-M

    edia-Authorization

    3313

    2XX

    ad

    o

    o

    o

    P-M

    edia-Authorization

    3313

    101-

    199

    ad

    o

    P-Preferred-Id

    entity

    3325

    adr

    o

    o

    o

    o

    o

    o

    P-Profile-Key

    5002

  • 27SIP Pocket Guide

    Header Field

    RFC No.

    Where

    Proxy

    ACK

    BYE

    CAN

    INV

    OPT

    REG

    PRA

    SUB

    NOT

    UPD

    MSG

    REF

    INF

    PUB

    P-User-Datab

    ase

    4457

    P-Visited-Network-ID

    3455

    Rad

    o

    oo

    o

    oo

    Path

    3327

    Rar

    o

    Path

    3327

    2XX

    o

    Prio

    rity

    3261

    Rar

    o

    o

    o

    oo

    Priv-Answer-M

    ode

    5373

    Privacy

    3323

    amdr

    oo

    oo

    oo

    oo

    oo

    oo

    oo

    Proxy-Authe

    nticate

    3261

    407

    ar

    m

    mm

    mm

    mm

    mm

    mo

    m

    Proxy-Authe

    nticate

    3261

    401

    ar

    oo

    oo

    oo

    oo

    oo

    Proxy-Autho

    rization

    3261

    Rar

    oo

    o

    oo

    oo

    oo

    oo

    oo

    Proxy-Req

    uire

    3261

    Rar

    o

    o

    oo

    oo

    oo

    oo

    oo

    RAck

    3262

    R

    mo

    Rea

    son

    3326

    Record-Rou

    te32

    61R

    aro

    oo

    oo

    o

    oo

    o

    oo

    Record-Rou

    te32

    612X

    X,

    18X

    mr

    o

    oo

    o

    oo

    oo

    oo

    HEADER TABLE (Continued)

  • 28 SIP Pocket Guide

    HEADER TABLE (Continued)Header Field

    RFC No.

    Where

    Proxy

    ACK

    BYE

    CAN

    INV

    OPT

    REG

    PRA

    SUB

    NOT

    UPD

    MSG

    REF

    INF

    PUB

    Refer-Sub

    4488

    R, 2

    XX

    o

    Refer-To

    3515

    R

    Referred-By

    3892

    R

    o

    oo

    o

    Rejec

    t-Con

    tact

    3841

    Rar

    oo

    oo

    o

    Rep

    lace

    s38

    91R

    o

    Rep

    ly-To

    3261

    o

    o

    Req

    uest-D

    ispo

    sitio

    n38

    41R

    aro

    oo

    oo

    o

    Req

    uire

    3261

    ar

    c

    cc

    cc

    oo

    cc

    co

    o

    Res

    ource-Prio

    rity

    4412

    Ram

    dro

    oo

    oo

    oo

    oo

    oo

    oo

    o

    Retry-Afte

    r32

    6140

    4,41

    3,48

    0,48

    6

    oo

    oo

    oo

    oo

    oo

    oo

    o

    500, 503

    o

    oo

    oo

    oo

    oo

    oo

    oo

    600, 603

    oo

    oo

    oo

    oo

    oo

    oo

    o

    Rou

    te32

    61R

    adr

    cc

    cc

    cc

    cc

    cc

    oc

    oc

    Rse

    q32

    621X

    X

    o

    oo

    Sec

    urity-C

    lient

    3329

    Rard

    o

    o

    oo

    o

    oo

    o

    o

  • 29SIP Pocket Guide

    HEADER TABLE (Continued)Header Field

    RFC No.

    Where

    Proxy

    ACK

    BYE

    CAN

    INV

    OPT

    REG

    PRA

    SUB

    NOT

    UPD

    MSG

    REF

    INF

    PUB

    Sec

    urity-Serve

    r33

    2942

    1,49

    4

    o

    oo

    o

    oo

    oo

    o

    Sec

    urity-Verify

    3329

    Rard

    o

    o

    oo

    o

    oo

    o

    oo

    Serve

    r32

    61r

    o

    oo

    oo

    oo

    oo

    oo

    Service

    -Rou

    te36

    082X

    Xar

    o

    Ses

    sion

    Exp

    ires

    4028

    Ram

    r

    o

    o

    Ses

    sion

    Exp

    ires

    4028

    2XX

    ar

    o

    o

    SIP-ETa

    g39

    032X

    X

    m

    SIP-If-M

    atch

    3903

    R

    o

    Sub

    ject

    3261

    R

    o

    o

    o

    o

    Sub

    scrip

    tion-State

    3265

    R

    m

    o

    Sup

    porte

    d32

    61R

    o

    om*

    oo

    oo

    oo

    oo

    Sup

    porte

    d32

    612X

    X

    oo

    m*

    m*

    oo

    oo

    oo

    o

    Target-D

    ialog

    4538

    Times

    tamp

    3261

    oo

    oo

    oo

    oo

    oo

    oo

    o

    To32

    61C

    rm

    mm

    mm

    mm

    mm

    mm

    mm

  • 30 SIP Pocket Guide

    Header Field

    RFC No.

    Where

    Proxy

    ACK

    BYE

    CAN

    INV

    OPT

    REG

    PRA

    SUB

    NOT

    UPD

    MSG

    REF

    INF

    PUB

    Trigger-Consent

    5360

    Unsupporte

    d3261

    420

    m

    m

    mm

    mo

    om

    oo

    oo

    User-Agent

    3261

    oo

    oo

    oo

    oo

    oo

    oo

    oo

    Via

    3261

    Ram

    rm

    mm

    mm

    mm

    mm

    mm

    mm

    m

    Via

    3261

    rcdr

    mm

    mm

    mm

    mm

    mm

    mm

    mm

    Warning

    3261

    r

    oo

    oo

    oo

    o

    oo

    oo

    o

    WWW-Authenticate

    3261

    401

    ar

    m

    mm

    mm

    mm

    mm

    mo

    m

    WWW-Authenticate

    3261

    407

    ar

    o

    oo

    oo

    oo

    oo

    oo

    o

    HEADER TABLE (Continued)

  • NOTES:

    31SIP Pocket Guide

    SIP EVENTS

    SIP events provide a mechanism whereby an interested UA can be notified of thestate of another UA. The SIP events are primarily used in the Subscribe and Notifymethods.

    SIP EVENTS

    Event Description RFC

    Conference Provides a list of URIs for participants of the conference.4575

    Dialog Allows the subscribed party to be notified if the target changes state.4235

    KPML

    Enables monitoring of Dual Tone Multi-Frequency(DTMF) signals and uses Extensible MarkupLanguage (XML) documents referred to as KeyPress Markup Language (KPML).

    4730

    Message/Summary/

    Message Waiting

    Carries message waiting status and message sum-maries from a messaging system to an interestedUser Agent.

    3842

    PoC-SettingsSupports publication, subscription, and notification ofadditional capabilities required by the "Push to Talkover Cellular" service.

    4354

    PresencePresence, also known as presence information, conveys the ability and willingness of a user to communicate across a set of devices.

    3856

    Registrations Allows the subscribed to be notified if the target hasa change in registration.3680

    Refer Is used in a call transfer to indicate to the transferorthe states of the transfer.3515

    WinfoWatcher information refers to the set of users subscribed to a particular resource within a particularevent package.

    3857

  • 32 SIP Pocket Guide

    SIP TIMERS

    SIP TIMERS

    Timer Value RFC 3261 Section Meaning

    T1 500 ms Default Section 17.1.1.1 RTT Estimate

    T2 4S Section 17.1.2.2

    The maximum retransmitinterval for non-INVITErequests and INVITE

    responses

    T4 5S Section 17.1.2.2Maximum duration amessage will remain in

    the network

    Timer A initially T1 Section 17.1.1.2INVITE request retransmitinterval, for UDP only

    Timer B 64*T1 Section 17.1.1.2INVITE transaction

    timeout timer

    Timer C > 3min Section 16.6 bullet 11proxy INVITE transaction

    timeout

    Timer D > 32s for UDP 0sfor TCP/SCTPSection 17.1.1.2 Wait time for responseretransmits

    Timer E initially T1 Section 17.1.2.2non-INVITE requestretransmit interval,

    UDP only

    Timer F 64*T1 Section 17.1.2.2non-INVITE transaction

    timeout timer

    Timer G initially T1 Section 17.2.1INVITE responseretransmit interval

    Timer H 64*T1 Section 17.2.1 Wait time for ACK receipt

    Timer I T4 for UDP 0s forTCP/SCTPSection 17.2.1 Wait time for ACKretransmits

    Timer J 64*T1 for UDP 0sfor TCP/SCTPSection 17.2.2 Wait time for non-INVITErequest retransmits

    Timer K T4 for UDP 0s forTCP/SCTPSection 17.1.2.2 Wait time for responseretransmits

    NOTES:

  • 33SIP Pocket Guide

    SDP DESCRIPTION

    SDP is used to convey information about media streams in multimedia sessions. It allows the recipients of a session description to participate in the session. SDP isprimarily intended for use in an internetwork, although it is sufficiently general that itcan describe conferences in other network environments. Media streams can bemany-to-many. Sessions need not be continually active.

    SDP FIELDS

    Field Name Mandatory/Optionalv Protocol Version m

    o Origin m

    s Session Name m

    i Session Information o

    u Uniform Resource Identifier o

    e Email Address o

    p Phone Number o

    c Connection Data m

    b Bandwidth Information m

    t Time Sessions Starts and Stops m

    r Repeat Times o

    z Time Zone Corrections o

    k Encryption Key o

    a Attribute Lines o

    m Media Information o

    NOTES:

  • 34 SIP Pocket Guide

    SDP FIELD DESCRIPTIONS

    Protocol VersionIs 0 for SDP version 0.

    OriginContains information about the originator of the session and session identifiers.

    Session NameContains the name of the session.

    Session InformationContains information about the session.

    Uniform Resource IdentifierContains a uniform resource identifier with more information about the session.

    Email AddressContains the email address of the host of the session.

    Phone NumberContains the phone number of the Originator. Should be in the format of + countrycode, city code and number.

    Connection DataContains IN for internet, the address type IP4 or IP6 for IPv4 or IPv6, and addresssending packets.

    Bandwidth InformationContains information about the bandwidth required.

    Time Session Starts and StopsContains the start and stop time of the session.

    Repeat TimesContains information about the repeat times in NTP or days, hour, and minutes.

    Time Zone CorrectionsGives the time zone offset to be used, i.e., daylight-savings to standard time.

    Encryption KeyContains the encryption key for the session where the encryption key equals clear,base64, URI, or prompt.

    Attribute LinesContains information about the described media session.

    Media InformationContains information about the type of media session required, i.e., audio, video,application data, telephone-event, or control.

    All underlined letters indicate the short version of the parameter names.

  • 35SIP Pocket Guide

    SIP RESPONSES TO ISUP RELEASE CAUSE MAPPING

    SIP to ISUP Mapping

    # Received Response # ISUP Cause Value

    400 Bad Request 41 Temporary Failure

    401 Unauthorized 21 Call Rejected

    402 Payment Required 21 Call Rejected

    403 Forbidden 21 Call Rejected

    404 Not Found 1 Unallocated Number

    405 Method Not Allowed 63 Service or Option Unavailable

    406 Not Acceptable 79 Service or Option Not Implemented

    407 Proxy Authentication Required 21 Call Rejected

    408 Request Timeout 102 Recovery on Timer Expiry

    410 Gone 22 Number Changed w/o Diagnostics

    413 Request Entity Too Long 127 Interworking

    414 Request URI Too Long 127 Interworking

    415 Unsupported Media Type 79 Service or Option Not Implemented

    416 Unsupported URI Scheme 127 Interworking

    420 Bad Extension 127 Interworking

    421 Extension Required 127 Interworking

    423 Interval Too Brief 127 Interworking

    480 Temporarily Unavailable 18 No User Responding

    481 Call/Transaction Does Not Exist 41 Temporary Failure

    482 Loop Detected 25 Exchange Error Routing

    483 Too Many Hops 25 Exchange Error Routing

    484 Address Incomplete 28 Invalid Number Format

    485 Ambiguous 1 Unallocated Number

    486 Busy Here 17 User Busy

    487 Request Terminated (NOT MAPPED)

    488 Not Accepted Here (NOT MAPPED)

    500 Server Internal Error 41 Temporary Failure

    501 Not Implemented 79 Service or Option Not Implemented

    502 Bad Gateway 38 Network Out of Order

    503 Service Unavailable 41 Temporary Failure

    504 Server Timeout 102 Recovery on Timer Expiry

    505 Version Not Supported 127 Interworking

    513 Message Too Large 127 Interworking

    600 Busy Everywhere 17 User Busy

    603 Decline 21 Call Rejected

    604 Does Not Exist Anywhere 1 Unallocated Number

    606 Not Acceptable (NOT MAPPED)

  • 36 SIP Pocket Guide

    SIP CALL FLOW NETWORK

    NOTES:

  • 37SIP Pocket Guide

    RequestLine INVITE sip:[email protected] SIP/2.0

    Headers

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-2651db598629a27e-1---d8754z-;rport

    Max-Forwards: 70

    Contact:

  • 38 SIP Pocket Guide

    RequestLine INVITE sip:[email protected]:56912 SIP/2.0

    Headers

    Via: SIP/2.0/UDP 192.168.16.140:5060;branch=z9hG4bK-85z25d58d7461b9

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-2651db598629a27e-1---d8754z-;received=192.168.16.105;rport=44646 Max-Forwards: 69

    Contact:

    To: "Jane Doe"

    From: "JohnSmith";tag=5c06d71d

    Call-ID:Yzk2ZjQ5YzJhOWVmNTJmNjk5MWMxYmMxMmJiNzQwOTg.

    CSeq: 2 INVITE

    Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY,MESSAGE, SUBSCRIBE, INFO

    Record-Route:

    User-Agent: X-Lite release 1104o stamp 56125

    Content-Type: application/sdp

    Content-Length: 322

    Empty Line

    MessageBodySDP

    v=0

    o=- 3 2 IN IP4 192.168.16.105

    s=CounterPath X-Lite 3.0

    c=IN IP4 192.168.16.105

    t=0 0

    m=audio 32854 RTP/AVP 107 0 8 101

    a=alt:1 2 : oND7cBBb qhQukSDp 10.100.100.250 32854

    a=alt:2 1 : napYhQOC H731+lWt 192.168.16.105 32854

    a=fmtp:101 0-15

    a=rtpmap:107 BV32/16000

    INVITE #2

    NOTES:

  • 39SIP Pocket Guide

    100 TRYING #3

    RequestLine SIP/2.0 100 Trying

    Headers

    Via: SIP/2.0/UDP 192.168.16.140:5060;branch=z9hG4bK-85z25d58d7461b9

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-2651db598629a27e-1---d8754z-;received=192.168.16.105;rport=44646

    To: "Jane Doe"

  • 40 SIP Pocket Guide

    180 RINGING #5

    RequestLine SIP/2.0 180 Ringing

    Headers

    Via: SIP/2.0/UDP 192.168.16.140:5060;branch=z9hG4bK-85z25d58d7461b9

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-2651db598629a27e-1---d8754z-;received=192.168.16.105;rport=44646

    Record-Route:

  • 41SIP Pocket Guide

    200 OK #7

    RequestLine SIP/2.0 200 OK

    Headers

    Via: SIP/2.0/UDP 192.168.16.140:5060;branch=z9hG4bK-85z25d58d7461b9

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-2651db598629a27e-1---d8754z-;received=192.168.16.105;rport=44646

    Record-Route:

  • 42 SIP Pocket Guide

    200 OK #8

    RequestLine SIP/2.0 200 OK

    Headers

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-2651db598629a27e-1---d8754z-;received=192.168.16.105;rport=44646

    Contact:

  • 43SIP Pocket Guide

    ACK #9

    RequestLine ACK sip:[email protected]:56912 SIP/2.0

    Headers

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-cd63ad64065fb73c-1---d8754z-;rport

    Max-Forwards: 70

    Route:

  • 44 SIP Pocket Guide

    BYE #11

    RequestLine BYE sip:[email protected]:56912 SIP/2.0

    Headers

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-f8728d218024a502-1---d8754z-;rport

    Max-Forwards: 70

    Route:

    Contact:

    To: "Jane Doe";tag=f63e876c

    From: "JohnSmith";tag=5c06d71d

    Call-ID:Yzk2ZjQ5YzJhOWVmNTJmNjk5MWMxYmMxMmJiNzQwOTg.

    CSeq: 3 BYE

    Proxy-Authorization: Digest user-name="9103683957",realm="192.168.16.140",nonce="2b028e9e929f845f097aa41196e511ac",uri="sip:[email protected]:56912",response="4fe9122045c410cf3b5c2b2f828142e3",cnonce="ffec2900d9477f14248fcbb76b4d020

    User-Agent: X-Lite release 1104o stamp 56125

    Reason: SIP;description="User Hung Up"

    Content-Length: 0

    BYE #12

    RequestLine BYE sip:[email protected]:56912 SIP/2.0

    Headers

    Via: SIP/2.0/UDP 192.168.16.140:5060;branch=z9hG4bK-85zf7828d7482d1

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-f8728d218024a502-1---d8754z-;received=192.168.16.105;rport=44646

    Max-Forwards: 69

    Contact:

  • 45SIP Pocket Guide

    200 OK #13

    RequestLine SIP/2.0 200 OK

    Headers

    Via: SIP/2.0/UDP 192.168.16.140:5060;branch=z9hG4bK-85zf7828d7482d

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-f8728d218024a502-1---d8754z-;received=192.168.16.105;rport=44646

    Record-Route:

  • 46 SIP Pocket Guide

    REGISTRATION PROCESS

    NOTES:

  • 47SIP Pocket Guide

    REGISTRATION MESSAGES

    Register #1

    RequestLine REGISTER sip:192.168.16.140 SIP/2.0

    Headers

    Via: SIP/2.0/UDP 192.168.16.102:10658;branch=z9hG4bK-d8754z-f64d606d85428835-1---d8754z-;rport

    Max-Forwards: 70

    Contact:

    To: Jane Doe"

    From: JaneDoe";tag=74215226

    Call-ID: MjNmYjBlZjhiODJiZmI4MjdhMzViNmIyMDFkNzk5MzQ.

    CSeq: 1 REGISTER

    Expires: 3600

    Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY,MESSAGE, SUBSCRIBE, INFO

    User-Agent: X-Lite release 1104o stamp 56125

    Content-Length: 0

    402 Unauthorized #2

    RequestLine SIP/2.0 401 Unauthorized

    Headers

    Via: SIP/2.0/UDP 192.168.16.102:10658;branch=z9hG4bK-d8754z-f64d606d85428835-1---d8754z-;received=192.168.16.102;rport=10658

    To: Jane Doe"

    From: JaneDoe";tag=74215226

    Call-ID: MjNmYjBlZjhiODJiZmI4MjdhMzViNmIyMDFkNzk5MzQ.

    CSeq: 1 REGISTER

    WWW-Authenticate: Digest realm="192.168.16.140",qop="auth",nonce="b409d25d445aa41753167c2d96645524",opaque="",stale=FALSE

    Server: TekSIP/v2.7

    Content-Length: 0

    NOTES:

  • 48 SIP Pocket Guide

    REGISTRATION MESSAGES (Continued)

    Register #3

    RequestLine REGISTER sip:192.168.16.140 SIP/2.0

    Headers

    Via: SIP/2.0/UDP 192.168.16.102:10658;branch=z9hG4bK-d8754z-8c733834e54a867d-1---d8754z-;rport

    Max-Forwards: 70

    Contact:

    To: Jane Doe"

    From: JaneDoe";tag=74215226

    Call-ID: MjNmYjBlZjhiODJiZmI4MjdhMzViNmIyMDFkNzk5MzQ.

    CSeq: 2 REGISTER

    Expires: 3600

    Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY,MESSAGE, SUBSCRIBE, INFO

    User-Agent: X-Lite release 1104o stamp 56125

    [truncated] Authorization: Digest user-name="9103682854",realm="192.168.16.140",nonce="b409d25d445aa41753167c2d96645524",uri="sip:192.168.16.140",response="3017cba4e1a09d6deafdbb876cff13ca",cnonce="6def0392c6f264bc88216693693ec23a",nc=00000001,qo

    Content-Length: 0

    NOTES:

  • 49SIP Pocket Guide

    200 OK #4

    StatusLine SIP/2.0 200 OK

    Headers

    Via: SIP/2.0/UDP 192.168.16.102:10658;branch=z9hG4bK-d8754z-8c733834e54a867d-1---d8754z-;received=192.168.16.102;rport=10658

    Max-Forwards: 69

    Contact:

    To: Jane Doe";tag=43a8aa5e

    From: JaneDoe";tag=74215226

    Call-ID: MjNmYjBlZjhiODJiZmI4MjdhMzViNmIyMDFkNzk5MzQ.

    CSeq: 2 REGISTER

    Allow: INVITE, BYE, CANCEL, OPTIONS, ACK, REGISTER, SUB-SCRIBE, PUBLISH

    Server: TekSIP/v2.7

    Date: Fri, 30 Jul 2010 15:19:23 GMT

    Allow-Events: presence, presence.winfo, message-summary

    Expires: 3600

    Content-Length: 0

    REGISTRATION MESSAGES (Continued)

    Cancel

    ADDITIONAL SAMPLE MESSAGES

    RequestLine CANCEL sip:[email protected] SIP/2.0

    Headers

    From:sip:[email protected];tag=206c220a

    To:"John Smith" Call-ID:89ba95c0a00025ac4c52f44c62f6aCSeq:32042 CANCELVia:SIP/2.0/UDP 192.168.16.124;branch=z9hG4bK5vz9fc21Contact:Max-Forwards:70User-Agent:Whistle/iPhone 1.11 (VailSIP 20100330)

    Content-Length:0

    NOTES:

  • 50 SIP Pocket Guide

    Subscribe

    ADDITIONAL SAMPLE MESSAGES (Continued)

    RequestLine SUBSCRIBE sip:[email protected] SIP/2.0

    Headers

    Via: SIP/2.0/UDP 192.168.16.105:35948;branch=z9hG4bK-d8754z-286c717328298f0b-1---d8754z-;rport Max-Forwards: 70

    Contact:

  • 51SIP Pocket Guide

    401 Unauthorized

    ADDITIONAL SAMPLE MESSAGES (Continued)

    StatusLine SIP/2.0 401 Unauthorized

    Headers

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK- d8754z-57270431f4098616-1---d8754z-;received=192.168.16.105;rport=44646

    To: "John Smith"

    From: "JohnSmith";tag=80131533

    Call-ID:NGU3ODEyMjZmMTA2NmVjMWNhMTgxYzJmODY2MTcyYTg.

    CSeq: 1 SUBSCRIBE

    WWW-Authenticate: Digest realm="192.168.16.140", qop="auth",nonce="722568b6b454974a153a48f363aa21a8", opaque="",stale=FALSE

    Server: TekSIP/v2.7

    Content-Length: 0

    403 Forbidden

    StatusLine SIP/2.0 403 Forbidden

    Headers

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK- d8754z-8c2d83501a781052-1---d8754z-;received=192.168.16.105;rport=44646

    To: "John Smith"

    From: "JohnSmith";tag=932b104c

    Call-ID: ZWFlMjEzZTk2NGI0MGQzM2NmM2JjYTczYTQyYzE1Mzc.

    CSeq: 2 SUBSCRIBE

    Server: TekSIP/2.7

    Content-Length: 0

    NOTES:

  • 52 SIP Pocket Guide

    407 Proxy Authentication Required

    StatusLine SIP/2.0 407 Proxy Authentication Required

    Headers

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-436c29051a613325-1---d8754z-;received=192.168.16.105;rport=44646

    To: "Jane Doe"

    From: "JohnSmith";tag=f432004c

    Call-ID:MzZlNWZkMWQ3MmYyMTBkNGJmZTYyYzAzNDRjZGNjZTY.

    CSeq: 1 INVITE

    Proxy-Authenticate: Digest realm="192.168.16.140", qop="auth",nonce="2809403cbd9d849c8193a3c1945100bb", opaque="",stale=FALSE

    Server: TekSIP/v2.7

    Max-Forwards: 70

    Content-Length: 0

    ADDITIONAL SAMPLE MESSAGES (Continued)

    NOTES:

    404 Unknown User Account

    StatusLine SIP/2.0 404 Unknown user account

    Headers

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-e937b55f7a01eb67-1---d8754z-;received=192.168.16.105;rport=44646

    To: "Operator"

    From: "JohnSmith";tag=ba2caa50

    Call-ID:MTZhOWZkMTNmMjMwODZiMzUwNzlhOTIzMDUyNjAwMGY.

    CSeq: 2 INVITE

    Server: TekSIP/v2.7

    Content-Length: 0

  • 53SIP Pocket Guide

    408 Request Timeout

    Status Line SIP/2.0 408 Request Timeout

    Headers

    Via: SIP/2.0/UDP 192.168.16.140:5060;branch=z9hG4bK-85zc6b38d7423a3;received=208.69.225.66

    Via: SIP/2.0/UDP 192.168.16.105:44646;branch=z9hG4bK-d8754z-c263ba338c372e5b-1---d8754z-;received=192.168.16.105;rport=44646

    To: "15402042001";tag=8e6t8arXaZr8m

    From: "JohnSmith";tag=61163c00

    Call-ID:OWY2N2QzODU5OGZhNjkzNmE4MmE3YjcyOTA3ZDM4YTQ.

    CSeq: 3 BYE

    Server: CWU SIP GW

    Content-Length: 0

    481 Transaction Does Not Exist

    Status Line SIP/2.0 481 Call/Transaction Does Not Exist

    Headers

    Via: SIP/2.0/UDP 192.168.16.140:5060;branch=z9hG4bK-pOuOgO6t

    Via: SIP/2.0/UDP 192.168.16.124;branch=z9hG4bKpgOOu6Ot;received=192.168.16.124

    To: "John Smith";tag=9317f75f

    From: ;tag=2f488d9b

    Call-ID: 9b5a99ed1f38aabb4c52f472c4872

    CSeq: 26145 BYE

    Accept-Language: en

    Content-Length: 0

    ADDITIONAL SAMPLE MESSAGES (Continued)

    487 Request Terminated

    Status Line SIP/2.0 487 Request Terminated

    Headers

    Via: SIP/2.0/UDP 192.168.16.140:5060;branch=z9hG4bK-5zf2v9c1

    Via: SIP/2.0/UDP192.168.16.124;branch=z9hG4bK5vz9fc21;received=192.168.16.124

    To: "John Smith";tag=fe3ce576

    From: ;tag=206c220a

    Call-ID: 89ba95c0a00025ac4c52f44c62f6a

    CSeq: 32044 INVITE

    User-Agent: X-Lite release 1104o stamp 56125

    Content-Length: 0

  • 54 SIP Pocket Guide

    GLOSSARY OF SIP RELATED TERMS

    DHCP _____________________________________________________Dynamic Host Configuration Protocol

    DNS ______________________________________________________Domain Name System

    IETF ______________________________________________________Internet Engineering Task Force

    IP ______________________________________________________________Internet Protocol

    PPP ______________________________________________________Point-to-Point Protocol

    PSTN _____________________________________________________Public Switched Telephone Network

    RFC ______________________________________________________Request for Comments

    RTP_______________________________________________________Real-time Transport Protocol

    RTSP _____________________________________________________Real-time Streaming Protocol

    SCTP _____________________________________________________Stream Control Transmission Protocol

    SDP ______________________________________________________Session Description Protocol

    SIP _______________________________________________________Session Initiation Protocol

    TCP ______________________________________________________Transmission Control Protocol

    UA________________________________________________________User Agent

    UAC ______________________________________________________User Agent Client

    UAS ______________________________________________________User Agent Server

    UDP ______________________________________________________User Datagram Protocol

    URI _______________________________________________________Uniform Resource Identifier

  • 55SIP Pocket Guide

    REFERENCES

    RFC 2976

    RFC 3261

    RFC 3262

    RFC 3265

    RFC 3311

    RFC 3312

    RFC 3313

    RFC 3323

    RFC 3325

    RFC 3326

    RFC 3327

    RFC 3329

    RFC 3372

    RFC 3398

    RFC 3428

    RFC 3455

    RFC 3515

    RFC 3578

    RFC 3588

    RFC 3603

    RFC 3605

    The SIP INFO Method

    SIP: Session Initiation Protocol

    Reliability of Provisional Responses in Session Initiation Protocol(SIP)

    Session Initiation Protocol (SIP) - Specific Event Notification

    The Session Initiation Protocol (SIP) UPDATE Method

    Integration of Resource Management and Session InitiationProtocol (SIP)

    Private Session Initiation Protocol (SIP) Extensions for MediaAuthorization

    A Privacy Mechanism for the Session Initiation Protocol (SIP)

    Private Extensions to the Session Initiation Protocol (SIP) forAsserted Identity within Trusted Networks

    The Reason Header Field for the Session Initiation Protocol(SIP)

    Session Initiation Protocol (SIP) Extension Header Field forRegistering Non-Adjacent Contracts

    Security Mechanism Agreement for the Session InitiationProtocol (SIP)

    Session Initiation Protocol for Telephones (SIP-T): Context andArchitectures

    Integrated Services Digital Network (ISDN) User Part (ISUP) toSession Initiation Protocol (SIP) Mapping

    Session Initiation Protocol (SIP) Extension for Instant Messaging

    Private Header (P-Header) Extensions to the Session InitiationProtocol (SIP) for the 3rd-Generation Partnership Project (3GPP)

    The Session Initiation Protocol (SIP) Refer Method

    Mapping of Integrated Services Digital Network (ISDN) User Part(ISUP) Overlap Signaling to the Session Initiation Protocol (SIP)

    Diameter Base Protocol

    Private Session Initiation Protocol (SIP) Proxy-to-ProxyExtensions for Supporting the PacketCable Distributed CallSignaling Architecture

    Real Time Control Protocol (RTCP) Attribute in SessionDescription Protocol (SDP)

  • 56 SIP Pocket Guide

    REFERENCES (Continued)

    RFC 3608

    RFC 3841

    RFC 3891

    RFC 3892

    RFC 3903

    RFC 3911

    RFC 4028

    RFC 4244

    RFC 4354

    RFC 4412

    RFC 4457

    RFC 4474

    RFC 4488

    RFC 4538

    RFC 4566

    RFC 4964

    RFC 5002

    RFC 5009

    RFC 5079

    RFC 5360

    Session Initiation Protocol (SIP) Extension Header Field forService Route Discovery During Registration

    Caller Preferences for the Session Initiation Protocol (SIP)

    The Session Initiation Protocol (SIP) Replaces Header

    The Session Initiation Protocol (SIP) Referred-By MechanismSession Initiation Protocol (SIP)

    Extension for Event State Publication

    The Session Initiation Protocol (SIP) Join Header

    Session Timers in the Session Initiation Protocol (SIP)

    An Extension to the Session Initiation Protocol (SIP) for RequestHistory Information

    A Session Initiation Protocol (SIP) Event Package and DataFormat for Various Settings in Support for the Push-to-Talk overCellular (PoC) Service

    Communications Resource Priority for the Session InitiationProtocol (SIP)

    The Session Initiation Protocol (SIP) P-User-Database Private-Header (P-Header)

    Enhancements for Authenticated Identify Management in theSession Initiation Protocol (SIP)

    Suppression of Session Initiation Protocol (SIP) REFER MethodImplicit Subscription

    Request Authorization through Dialog Identification in theSession Initiation Protocol (SIP)

    SDP: Session Description Protocol

    The P-Answer-State Header Extension to the Session InitiationProtocol for the Open Mobile Alliance Push-to-Talk over Cellular

    The Session Intiation Protocol (SIP) P-Profile-Key PrivateHeader (P-Header)

    Private Header (P-Header) Extension to the Session InitiationProtocol (SIP) for Authorization of Early Media

    Rejecting Anonymous Requests in the Session Initiation Protocol(SIP)

    A Framework for Consent-Based Communications in the SessionInitiation Protocol (SIP)

  • 57SIP Pocket Guide

    REFERENCES (Continued)

    RFC 5373

    RFC 5503

    RFC 5630

    RFC 5876

    Requesting Answering Modes for the Session Initiation Protocol(SIP)

    Private Session Initiation Protocol (SIP) Proxy-to-ProxyExtensions for Supporting the PacketCable Distributed CallSignaling Architecture

    The Use of the SIPS URI Scheme in the Session InitiationProtocol (SIP)

    Updates to Asserted Identify in the Session Initiation Protocol(SIP)

    The Internet Engineering Task Force: www.ietf.org

    Johnston, Alan B., SIP Understanding the Session InitiationProtocol (2009, ARTECH HOUSE Norwood MA)

    Camarillo, Gonzalo, SIP Demystified (2002, McGraw-Hill)

    Sinnreich, Henry & Johnston, Alan B. Internet CommunicationsUsing SIP (2006, Wiley Publishing, Indianapolis, IN)

    Jenkins, Thomas W. SIP to ISUP Mapping course (2004,Center Point Consulting, Inc., Swansboro, NC)

    Jenkins, Thomas W. SIP Protocol course (2004, Center PointConsulting, Inc., Swansboro, NC)

  • 58 SIP Pocket Guide

    NOTES:NOTES: