1 / 83

Session Initiation Protocol SIP

2. Introduction. A powerful alternative to H.323More flexible, simplerEasier to implementAdvanced featuresBetter suited to the support of intelligent user devicesA part of IETF multimedia data and control architectureSDP, RTSP (Real-Time Streaming Protocol), SAP (Session Announcement Protocol)

toan
Télécharger la présentation

Session Initiation Protocol SIP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Session Initiation Protocol (SIP) Chapter 5

    2. 2 Introduction A powerful alternative to H.323 More flexible, simpler Easier to implement Advanced features Better suited to the support of intelligent user devices A part of IETF multimedia data and control architecture SDP, RTSP (Real-Time Streaming Protocol), SAP (Session Announcement Protocol)

    3. 3 The Popularity of SIP Originally Developed in the MMUSIC A separate SIP working group RFC 2543 Many developers SIP + MGCP/MEGACO The VoIP signaling in the future back-off Test products against each other Will be hosted by ETSI

    4. 4 SIP Architecture A signaling protocol The setup, modification, and tear-down of multimedia sessions SIP + SDP Describe the session characteristics Separate signaling and media streams

    5. 5 SIP Network Entities Clients User agent clients Application programs sending SIP requests Servers Responds to clients requests Clients and servers may be in the same platform Proxy Acts as both clients and servers

    6. 6 Four types of servers Proxy servers Handle requests or forward requests to other servers Can be used for call forwarding

    7. 7 Redirect servers Map the destination address to zero or more new addresses Do not initiate any SIP requests

    8. 8 A user agent server Accept SIP requests and contacts the user The user responds ? an SIP response A SIP device E.g., an SIP-enabled telephone A registrar Accepts SIP REGISTER requests Indicating the user is at a particular address Typically combined with a proxy or redirect server

    9. 9 SIP Call Establishment It is simple A number of interim responses

    10. 10 SIP Advantages Attempt to keep the signaling as simple as possible Various pieces of information can be included within the messages Including non-standard information Enable the users to make intelligent decisions The user has control of call handling No need to subscribe call features

    11. 11 Call Completion to Busy Subscriber service

    12. 12 Overview of SIP Messaging Syntax Text-based Similar to HTTP SIP messages message = start-line *message-header CRLF [message-body] start-line = request-line | status-line Request-line specifies the type of request The response line The success or failure of a given request

    13. 13 Message headers Additional information of the request or response E.g., The originator and recipient Retry-after header Subject header Message body Describe the type of session The media format SDP, Session Description Protocol Could include an ISDN User Part message Examined only at the two ends

    14. 14 SIP Requests method SP request-URI SP SIP-version CRLF request-URI The address of the destination Methods INVITE, ACK, OPTIONS, BYE, CANCLE, REGISTER INVITE Initiate a session Information of the calling and called parties The type of media ~IAM (initial address message) of ISUP ACK only the final response

    15. 15 BYE Terminate a session Can be issued by either the calling or called party Options Query a server as to its capabilities A particular type of media The response if sent an INVITE CANCEL Terminate a pending request E.g., an INVITE did not receive a final response REGISTER Log in and register the address with a SIP server all SIP servers multicast address (224.0.1.1750) Can register with multiple servers Can have several registrations with one server

    16. 16 SIP Responses SIP version SP status code SP reason-phrase CRLF reason-phrase A textual description of the outcome Could be presented to the user status code, RFC 2543 A three-digit number 1XX Informational 2XX Success (only code 200 is defined) 3XX Redirection 4XX Request Failure 5XX Server Failure 6XX Global Failure All responses, except for 1XX, are considered final Should be ACKed

    17. 17 One number service

    18. 18 SIP Addressing SIP URLs (Uniform Resource Locators) user@host E.g., sip:collins@home.net sip:3344556789@telco.net Supplement the URL sip:3344556789@telco.net;user=phone

    19. 19 Message Headers Provide further information about the message ~information elements E.g., To:header in an INVITE The called party From:header The caling party Four main categories General, request, response, and entity headers A list in Table 5-2 Mapping in Table 5-3

    20. 20 General Headers Used in both requests and responses Basic information E.g., To:, From:, Call-ID:, Contact: A URL for future communication May be different from the From: header Requests passed through proxies

    21. 21 Request Headers Apply only to SIP requests Addition information about the request or the client E.g., Subject: Priority:, urgency of the request Authorization:, authentication of the request originator Response Headers Further information about the response E.g., Unsupported:, features Retry-After

    22. 22 Entity Header Session information presented to the user Session description, SDP The RTP payload type, an address and port Content-Length, the length of the message body Content-Type, the media type of the message Content-Encoding, for message compression Content Disposition, Content-Language, Allow, used in a Request to indicate the set of methods supported Expires, the date and time

    23. 23 Example of SIP Message Sequences Registration Via: Call-ID: host-specific Content-Length: Zero, no msg body Cseg: Avoid ambiguity Expires: TTL 0, unreg Contact: *

    24. 24 Invitation A two-party call Subject: optional Content-Type: application/sdp

    25. 25

    26. 26 Termination of a Call Cseq: Has changed

    27. 27 Redirect Servers An alternative address 302, Moved temporarily Another INVITE Same Call-ID Cseq ++

    28. 28 Proxy Servers Entity headers are omitted Changes the Req-URI Via: The path Loop detected, 482 For a response The 1st Via: header Checked removed

    29. 29

    30. 30 Proxy state Can be either stateless or stateful Record-Route: The messages and responses may not pass through the same proxy Use Contact: A Proxy might require that it remains in the signaling path In particular, for a stateful proxy Insert its address into the Record-Route: header The response includes the Record-Route: header The Record-Route: header is used in the subsequent requests The Route: header = the Record-Route: header in reverse order, excluding the first proxy Each proxy remove the next from the Route: header

    31. 31 Forking Proxy fork requests A user is registered at several locations ;branch=xxx

    32. 32

    33. 33 The Session Description Protocol The message body SDP, RFC 2327 The Structure of SDP Session Level Info Name The originator The time Media Level Info Media type Port number Transport protocol Media format

    34. 34 SDP Syntax A number of lines of text In each line field=value Session-level fields first Media-level fields Begin with media description field (m=)

    35. 35 Mandatory Fields v=(protocol version) o=(session origin or creator and session id) s=(session name), a text string t=(time of the session), the start time and stop time m=(media) Media type The transport port The transport protocol The media format, an RTP payload format

    36. 36 Optional Fileds i=(session information) A text description At both session and media levels u=(URI of description) Where further session information can be obtained Only at session level e=(e-mail address) Who is responsible for the session Only at the session level p=(phone number) Only at the session level

    37. 37 c=(connection information) Connection type, network type, and connection address At session or media level b=(bandwidth information) In kilobits per second At session or media level r=(repeat times) For regularly scheduled session How often and how many times z=(timezone adjustments) For regularly scheduled seesion Standard time and Daylight Savings Time

    38. 38 k=(encryption key) An encryption key or a mechanism to obtain it At session or media level a=(attributes) Describe additional attributes

    39. 39 Ordering of Fields Session Level Protocol version (v) Origin (o) Session name (s) Session information (i) URI (u) E-mail address (e) Phone number (p) Connection info (c) Bandwidth info (b) Time description (t) Repeat info (r) Time zone adjustments (z) Encryption key (k) Attributes (a) Media level Media description (m) Media info (i) Connection info (c) Optional if specified at the session level Bandwidth info (b) Encryption key (k) Attributes (a)

    40. 40 Subfields Field = <value of subfield1> <value of subfield2> <value of subfield3>. Origin (o) Username, the originators login id or - session ID A unique ID Make use of NTP timestamp version, a version number for this particular session network type A text string IN refers to Internet address type IP4, IP6 Address, a fully-qualified domain name or the IP address

    41. 41 Connection Data The network and address at which media data are to be received Network type Address type Connection address Media Information Media type Audio, video, application, data, or control Port, 1024-65535 Format List the various types of media RTP/AVP payload types m= audio 45678 RTP/AVP 15 3 0 G.728, GSM, G.711

    42. 42 Attributes Property attribute a=sendonly a=recvonly value attribute a=orient:landscape rtpmap attribute The use of dynamic payload type a=rtpmap:<payload type> <encoding name>/<clock rate> [/<encoding parameters>]. m=video 54678 RTP/AVP 98 a=rtpmap 98 L16/16000/2

    43. 43 Usage of SDP with SIP SIP for the establishment of multimedia sessions SDP a structured language for describing the sessions The entity header

    44. 44 Negotiation of Media Fig 5-15 G.728 is selected If a mismatch 488 or 606 Not Acceptable A Warning header INVITE with multiple media streams Unsupported should also be returned With a port number of zero

    45. 45

    46. 46 Options Method Determine the capabilities of a potential called party

    47. 47 Usage of SIP for Features/Services Personal mobility by registration Can carry MIME (Multi-Purpose Internet Mail Extension) content Text, HTML documents, an image, etc. SIP address is a URL Click-to-call applications Supplementary Custom Local Area Signaling Service (CLASS) services Call waiting, call forwarding, multi-party calling, call screening Proxy-controlled: QoS, IN SCP, INAP

    48. 48 Call Forwarding On busy 486, busy here

    49. 49 Consultation Hold C=0 An address

    50. 50

    51. 51 SIP Extensions and Enhancements RFC 2543, March 1999 Proposed standard, March 2002 SIP-T Include various extensions Will be enhanced considerably before it becomes an Internet standard

    52. 52 183 Session-Progress Message The addition of a new response Status code 183 To open a one-way media path From the called party to calling party Enable in-band call progress information to be transmitted Tones or announcements ACM (address complete message) of SS7 For SIP PSTN SIP connections When a temporary media stream is needed Note that alerting signal can be Status code 180 (ringing) The temporary media stream will be terminated As soon as the called user answers

    53. 53 SIP INFO Method A new SIP method The transfer of information in the middle of a call DTMF digits, account-balance information, mid-call signaling information (from PSTN) A powerful, flexible tool to support new services

    54. 54 The SIP Supported Header The Require header a client indicates to a server that the server must support certain features In responses 421, extension required The Supported header For server to know a clients capabilities Included in both requests and responses BYE, CANCEL, INVITE, OPTIONS and REGISTER Should not be included in the ACK

    55. 55

    56. 56 Reliability of Provisional Responses Provisional Responses 100 (trying), 180 (ringing), 183 (session in progress) Are not answered with an ACK If the messages is sent over UDP Unreliable Lost provisional response may cause problems when interoperating with other network 180, 183 ? Q931 alerting or ISUP ACM To drive a state machine E.g., a call to an unassigned number ACM to create a one-way path

    57. 57 RSeq Response seq +1, when retxm Rack Response ACK PRACK Prov Resp ACK Should not Apply to 100

    58. 58

    59. 59 Integration of SIP an Resource Mang The signaling might take a different path from the media Assume resource-reservation mechanisms available (Chapter 8) A new SIP header in the INVITE Resources reservation is needed The user should not yet be alerted But unrecognized header is ignored

    60. 60 Integration of Resource Management and SIP for IP Telephony A new method, PRECONDITION-MET The far-end phone will not ring until Also specifies extensions to SDP Can define any number of preconditions in SDP without revise SIP every time Being sent end-to-end a=qos: strength-tag SP direction-tag [SP confirmation-tag] a=secure: strength-tag SP direction-tag [SP confirmation-tag] If failed, could select a lower-bandwidth codec

    61. 61

    62. 62 Interworking PSTN Interworking A SIP URL A network gateway Fig. 5-23 SIP to PSTN call Fig. 5-24 PSTN to SIP call PSTN SIP PSTN MIME media types For ISUP and QSIG

    63. 63

    64. 64 Interworking with H.323 An Internet draft SIP-H.323 interworking gateway

    65. 65

    66. 66

    67. 67

    68. 68

    69. 69 Summary The future for signaling in VoIP networks Simple, yet flexible Easier to implement Fit well with the media gateway control protocols

    70. 70 Reference Architecture of R00

    71. 71 Support of Roaming Subscribers via the service platform in the Home Network via an external service platform

    72. 72 UE Accessing IM Subsystem Services In the visited network

    73. 73 Public and Private Identities One private user identity IMSI within a NAI One or more public user identities

    74. 74 Roles of CSCF Call State Control Function SIP proxy servers Proxy CSCF The first contact point within the IM subsystem Forward the SIP register requests from the UE to an I-CSCF Forward the SIP messages from the UE to the S-CSCF CDR FFS Authorization, QoS management, security

    75. 75 Interrogating CSCF The contact point within an operators network Assign an S-CSCF to a user performing SIP Reg Obtain from HSS the address of the S-CSCF Forward SIP messages to the S-CSCF Forward SIP messages to the MGCF CDR FFS Inter-operator security

    76. 76 Serving CSCF Perform the session control services A registrar Interaction with Services Platforms On behalf of an originating endpoint On behalf of an destination endpoint CDR FFS Security issues

    77. 77 Registration Information Flow

    78. 78 Registration

    79. 79 Call flow

    80. 80

    81. 81 Different Kinds of CSCFs

    82. 82 Interwork with PSTN

    83. 83

More Related