3-the session initiation protocol

Upload: ho-manh-quy

Post on 05-Apr-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/31/2019 3-The Session Initiation Protocol

    1/42

    The Session Initiation Protocol - SIP

    Internation Institute of Telecommunications inc., 2000-2004

    www.iitelecom.com

  • 7/31/2019 3-The Session Initiation Protocol

    2/42

    IITelecom,2004

    2IIT101

    H.323 Specific Protocols

    TCPUDP

    IP

    Connection (IEEE 802.3)

    RTP/RTCP

    H.261

    H.263

    Audio Video

    T.120H.225

    RAS

    H.225Q.931

    Signaling

    H.245

    of controlsignaling

    Control and managementof the calls

    Data

    G.711G.723.1

    G.726G.728G.729

  • 7/31/2019 3-The Session Initiation Protocol

    3/42

    IITelecom,2004

    3IIT101

    H.323 environment and components

    Network

    IP

    H.323 terminalremote access

    Access Server

    Gatekeeper

    PBX

    Gateway

    PSTN

    IP telephone

    H.323 terminal

    MCU

  • 7/31/2019 3-The Session Initiation Protocol

    4/42

    IITelecom,2004

    4IIT101

    Session Initiation Protocol (SIP)

    Signaling protocol for multimedia applications

    Independent of sub layer protocols (TCP, UDP)

    Standard developed by the IETF (MMUSIC working group) - RFC 2543

    SIP works in various phases of the call

    Localization of the corresponding terminal

    Analyze recipient profile and resources

    Negotiation of the media type and of the communication parameters

    Availability of the correspondent Call set-up and call follow-up

    SIP uses several existing protocols

    Message format (HTTP 1.1)

    Media negotiation (SDP - Session Description Protocol),

    Media (RTP) Name resolution and mobility (DNS and DHCP)

    Applications encoding (MIME)

  • 7/31/2019 3-The Session Initiation Protocol

    5/42

    IITelecom,2004

    5IIT101

    SIP Specific Protocols

    Physical

    IP

    TCP/UDP

    RTP/RTCP

    G.711G.729

    G.723.1

    H.261

    H.263

    Audio Video

    SIP SDP

    Signaling

  • 7/31/2019 3-The Session Initiation Protocol

    6/42

    IITelecom,2004

    6IIT101

    Registering an IP phone

    Proxy Server

    Registration Server

    1. Register

    2. 100 Trying

    5. 200 OK

    4. 200 OK

    3. Register

  • 7/31/2019 3-The Session Initiation Protocol

    7/42 IITelecom,

    2004

    7IIT101

    SIP Addressing

    SIP Addresses are identified by URL, in the form

    user@host user = name or telephone number

    host = domain name or IP addresses

    Examples

    sip:[email protected] sip:[email protected]

    sip:[email protected]; user=phone

  • 7/31/2019 3-The Session Initiation Protocol

    8/42 IITelecom,

    2004

    8IIT101

    SIP Components

    User Agent

    An end user application initiating, receiving and terminating a call

    Proxy Server

    An application server conveying the requests on behalf of the enduser application

    The request is processed and sent to the destination (called person)

    or to another server

    Redirect Server

    An application server determining the destination address (To:)and returning it to the end user application

  • 7/31/2019 3-The Session Initiation Protocol

    9/42 IITelecom,

    2004

    9IIT101

    SIP Components (cont'd)

    Localization Server

    Used by the Proxy Server and Redirect Server to obtain the location ofthe called user (one or more addresses)

    Registration Server

    Accept registration requests from the client applications

    Generally, the service is offered by the Proxy Server or Redirect Server

    DNS Server

    Used to locate the Proxy Server or Redirect Server

  • 7/31/2019 3-The Session Initiation Protocol

    10/42 IITelecom,

    2004

    10IIT101

    SIP components and services

    SIP Servers and services

    ProxySIP Server

    Registrar RedirectLocationDatabase

    Register

    I am here

    Redirect

    Here is the address

    LocateWhere this name is

    or tel. number

    INVITEI want to speak

    with another agent.

    Proxy INVITESI will call it

    for you.

    SIP UserAgents

    GW SIP

    SIP UserAgents

  • 7/31/2019 3-The Session Initiation Protocol

    11/42 IITelecom,

    2004

    11IIT101

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP 192.168.1.20:5060Call-ID: [email protected]: sip: [email protected]: sip:[email protected] 1 INVITESContent-type: application/sdpContent-Length: 98v = (protocol version)O = (owner/creator and session to identify)

    C = (session information)T = (time the session is active)m = (media name and address transport)

    Example: INVITE

    SDP - Session Description Protocol

    SDP defines the conversation parameters on the client application

    (User Agent)

    SDP transmits information required to establish a multimedia

    session

    SDP is similar to H.245 in H.323 functions

    SDP contains the following parameters:

    Medium to be used (codec, sampling rate)

    Destination (IP address and port number)

    Session name Session duration

    Contact

    etc

  • 7/31/2019 3-The Session Initiation Protocol

    12/42

    IITelecom,2004

    12IIT101

    SDP Messages

    v=0

    Indicates the start of the SDP content.

    o=marie 3123 121231 IN IP4 192.190.132.20

    o: session origin and owners name

    c=IN IP4 192.190.132.20

    c: connect information Specifies the IP address of a session.

    m=audio 5004 RTP/AVP 0

    Media name and transport address

  • 7/31/2019 3-The Session Initiation Protocol

    13/42

    IITelecom,2004

    13IIT101

    SIP session set-up

    Contents

    Signaling

    INVITE

    100 Trying

    180 Ringing

    200 OK

    ACK

    Logical opening of RTP channel

    Bye

    200 OKSignaling

    Logical opening of RTCP channel

    Logical opening of RTP channel

    Logical opening of RTCP channel

    Each end knows

    the other one IP address

    Media (UDP)

  • 7/31/2019 3-The Session Initiation Protocol

    14/42

    IITelecom,2004

    14IIT101

    SDP Messages in a SIP session

    INVITE

    100 Trying

    180 Ringing

    200 OK

    ACK

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP 192.168.1.20:5060Call-ID: [email protected]: sip: [email protected]: sip:[email protected] 1 INVITES

    Content-type: application/sdpContent-Length: 98v=0o=marie 3123 121231 IN IP4 192.190.132.20c=IN IP4 192.190.132.20m=audio 5004 RTP/AVP 0

    SIP/2.0 200 OKCall-ID: [email protected]: sip: [email protected]: sip:[email protected] 1 INVITESContent-type: application/sdpContent-Length: 98v=0o=pierre 5664 456456 IP IP4 192.190.132.31c=IN IP4 192.190.132.31m=audio5004 RTP/AVP 0

    ACK sip:[email protected] SIP/2.0Via: SIP/2.0/UDP 192.190.132.20:5060Call-ID: [email protected]: sip: mar [email protected]: sip:[email protected] 1 ACK

    Marie192.168.1.20

    Pierre192.168.1.31

    Each end knows

    the other one IP address

  • 7/31/2019 3-The Session Initiation Protocol

    15/42

    IITelecom,2004

    15IIT101

    SIP message types

    SIP is modeled on HTTP

    Use same syntax and semantics as HTTP Request

    Method (INVITE, ACK, BYE, etc.) Header (Accept, Contact, etc.)

    Answer Status code (200 OK, 180 Ringing, etc.)

    Header (Content-type, Content-encoding, etc.)SIP Methods

    INVITE Initiate a call by inviting a user to take part in a session.

    ACK Confirm that the client received a final response

    to a request INVITES.

    BYE Indicate the end of the call.

    CANCEL Cancel a request.

    REGISTER To register the User Agent.

    OPTIONS Used to know the capacities of the server.

    SIPAnswers

    1xx - Informational Messages.

    2xx - Successful Responses.

    3xx - Redirection Responses.

    4xx - Request Failure Responses.

    5xx - Server Failure Responses.

    6xx - Global Failure Responses.

  • 7/31/2019 3-The Session Initiation Protocol

    16/42

    IITelecom,2004

    16IIT101

    SIP in Proxy mode

    [email protected]

    INVITE [email protected]

    From: [email protected]

    Pierre? [email protected]

    Location

    Server

    [email protected]

    INVITE [email protected]

    From: [email protected]

    200 OK200 OK

    ACKACK

    2 3

    4

    5

    8

    6

    7

    Established sessionProxy

    Server

  • 7/31/2019 3-The Session Initiation Protocol

    17/42

    IITelecom,2004

    17IIT101

    SIP in Redirect mode

    [email protected]

    INVITE [email protected]

    From: [email protected]

    Pierre? [email protected]

    Locationserver

    [email protected]

    INVITE [email protected]

    From: [email protected]

    302 Moved

    Contact: [email protected]

    ACK

    2 3

    6

    200 OK7

    ACK8

    4

    5

    Established session

    Redirect

    Server

  • 7/31/2019 3-The Session Initiation Protocol

    18/42

    IITelecom,2004

    18IIT101

    SIP call exampleCall forward busy from B to C

    INVITE

    100 Trying 486 Busy

    INVITE

    ACK

    INVITE

    180 Ringing

    200 OK

    180 Ringing

    200 OK

    ACK

    Established session

    ACK

    Proxy ServerUA A UA B UA C

  • 7/31/2019 3-The Session Initiation Protocol

    19/42

    IITelecom,2004

    19IIT101

    SIP call exampleCall transfer from A to C

    Bye (also C)

    100 Trying

    INVITE (req A)

    180 Ringing

    200 OK

    ACK

    Established session

    Proxy Server

    Bye (also C)

    200 OK

    INVITE (req A)

    200 OK

    180 Ringing

    200 OK

    ACK

    Established session

    UA A UA B UA C

  • 7/31/2019 3-The Session Initiation Protocol

    20/42

    IITelecom,2004

    20IIT101

    Sending an INVITE through a SIP basedsystem

    1. INVITE

    2. 100 Trying

    6. INVITE

    7. 100 Trying

    3. INVITE

    5. ACK

    10.ACK

    9. 302 MovedTemporary

    8. INVITE

    11. INVITE

    12. 100 Trying

    Proxy Server A

    4. 302 Movedtemporary

    RedirectServer

    Proxy Server B

    SIP Phone ASIP Phone B

  • 7/31/2019 3-The Session Initiation Protocol

    21/42

    IITelecom,2004

    21IIT101

    Call set up through a SIP based phonesystem

    15. 180

    18. 200 OK 17. INVITE

    20. ACK

    13. 180 Ringing

    16. 200 OK

    Proxy Server A

    Redirect Server

    Proxy Server B

    SIP Phone ASIP Phone B

    21. ACK

    14. 180 Ringing

    19. ACK

    22. RTP

  • 7/31/2019 3-The Session Initiation Protocol

    22/42

    IITelecom,2004

    22IIT101

    Call teardown through a SIP-based system

    27. BYE

    28. 100 Trying 26. 100 Trying

    30. ACK

    23. BYE

    24. 100 Trying

    Proxy Server A

    Redirect Server

    Proxy Server B

    SIP Phone A

    SIP Phone B

    31. 200 OK

    25. BYE

    29. 200 OK

  • 7/31/2019 3-The Session Initiation Protocol

    23/42

    IITelecom,2004

    23IIT101

    Forking: sending the invite to two phones

    1. INVITE

    2. 100 Trying

    6. INVITE

    7. 100 Trying

    3. INVITE

    5. ACK

    10.ACK

    9. 302 Moved

    Temporary

    8. INVITE

    11. INVITE

    14. 100 Trying

    Proxy Server A

    4. 302 Moved

    temporary

    RedirectServer

    Proxy Server B

    SIP Phone ASIP Phone B

    12. INVITE 13. 200 Trying

    SIP Phone C

  • 7/31/2019 3-The Session Initiation Protocol

    24/42

    IITelecom,2004

    24IIT101

    Forking: the phones ring

    17. 180 Ringing

    20. 180 Ringing19. 180 Ringing

    15. 180 Ringing

    Proxy Server A

    RedirectServer

    Proxy Server B

    SIP Phone ASIP Phone B

    18. 180 Ringing

    SIP Phone C

    16. 180 Ringing

  • 7/31/2019 3-The Session Initiation Protocol

    25/42

    IITelecom,2004

    25IIT101

    Forking: Phone B answers the phone

    25. 200 OK23. 200 OK

    21. 200OK

    Proxy Server A

    RedirectServer

    Proxy Server B

    SIP Phone ASIP Phone B

    22. CANCEL

    SIP Phone C

    24. 200 OK

  • 7/31/2019 3-The Session Initiation Protocol

    26/42

    IITelecom,2004

    26IIT101

    SIP and Security Considerations

    SIP Security

    Security Mechanisms

    Attack and protection

    Limitations

  • 7/31/2019 3-The Session Initiation Protocol

    27/42

    IITelecom,2004

    27IIT101

    SIP Security

    Authentication: proof of identity

    Confidentiality

    Integrity

  • 7/31/2019 3-The Session Initiation Protocol

    28/42

    IITelecom,2004

    28IIT101

    Attacks and protections

    Registration Hijacking

    Authentication

    Impersonating a Server (spoofing)

    Server Authentication

    Proxy Server can behave as Man in the Middle

    End to end Authentication Confidentiality

    Integrity

  • 7/31/2019 3-The Session Initiation Protocol

    29/42

    IITelecom,2004

    29IIT101

    Attacks and protections ( cont)

    Tearing Down Sessions

    Authentication of the BYE sender Confidentiality

    Denial of Service

    Authentication of Register request

  • 7/31/2019 3-The Session Initiation Protocol

    30/42

    IITelecom,2004

    30IIT101

    User Mobility

    Terminal Mobility

    Terminal Moving between networks

    Session Mobility

    User moving between terminals, in runtime

    User Mobility

    Users changing terminals

    Service Mobility

    Keep same services, while mobile

  • 7/31/2019 3-The Session Initiation Protocol

    31/42

    IITelecom,2004

    31IIT101

    SIP and Terminal Mobility

    Terminal can move between sub networks

    GSM and WLAN makes it possible

    Mobile hosts use Register message to inform their server about their

    new locations.

  • 7/31/2019 3-The Session Initiation Protocol

    32/42

    IITelecom,2004

    32IIT101

    SIP and terminal mobility

  • 7/31/2019 3-The Session Initiation Protocol

    33/42

    IITelecom,2004

    33IIT101

    SIP and Terminal Mobility

  • 7/31/2019 3-The Session Initiation Protocol

    34/42

    IITelecom,2004

    34IIT101

    SIP and Session mobility

    Re-INVITE is used in session mobility

  • 7/31/2019 3-The Session Initiation Protocol

    35/42

    IITelecom,2004

    35IIT101

    SIP and Session Mobility

  • 7/31/2019 3-The Session Initiation Protocol

    36/42

    IITelecom,2004

    36IIT101

    SIP and User Mobility

    User changes terminals

    The users registers themselves to the appropriate server

    Location server tracks the location of user

    Redirect servers prioritize the possible locations of the user

  • 7/31/2019 3-The Session Initiation Protocol

    37/42

    IITelecom,2004

    37IIT101

    SIP and Service Mobility

    Keep same services, while mobile

    Services located at home server

    Call is processed by home servers using RECORD-ROUTE

  • 7/31/2019 3-The Session Initiation Protocol

    38/42

    IITelecom,2004

    38IIT101

    3G and SIP

    3G uses IP technology to deliver multimedia content

    3G uses SIP for call control, multimedia and signaling function.

    Users will be identified by SIP URLs and/or E.164 numbers, the

    numbering system of the telephone system.

    SIP handles the movement of the mobile user from one domain to

    another

  • 7/31/2019 3-The Session Initiation Protocol

    39/42

    IITelecom,2004

    39IIT101

    Benefits of 3G

    Mobility

    Connectivity

    Reachability

    WLAN d SIP

  • 7/31/2019 3-The Session Initiation Protocol

    40/42

    IITelecom,2004

    40IIT101

    WLAN and SIP

    Adds SIP based VoIP communications together with WiFi installations

    Wireless access protocol: CSMA/ CA

    Call control Protocol: SIP

    SIP R f

  • 7/31/2019 3-The Session Initiation Protocol

    41/42

    IITelecom,2004

    41IIT101

    SIP References

    Columbia university Web site

    http://www.cs.columbia.edu/sip/

    IETF SIP working group

    RFC 3261

    http://ietf.org/html.charters/sip-charter.html

    SIP forum

    http://www.sipforum.org

    Ubiquity Information Center : SIP center

    http://www.sipcenter.com

  • 7/31/2019 3-The Session Initiation Protocol

    42/42

    Questions?

    ?