Presentation is loading. Please wait.

Presentation is loading. Please wait.

School of Electronics and Information

Similar presentations


Presentation on theme: "School of Electronics and Information"— Presentation transcript:

1 School of Electronics and Information
Introduction to SIP School of Electronics and Information Kyung Hee University Choong Seon HONG

2 Overview of SIP Proposed standard released in 1999, current release in 2002 Session-layer control-plane signaling protocol with support for establishing, modifying and terminating one-to-one or multiparty sessions. Light-weight, ASCII based generic signaling protocol to facilitate multimedia communications over IP Independent of media characteristics and transport protocol properties Work in IETF currently by SIP WG and SIPPING WG Related work by MMUSIC WG, AAA WG, GEOPRIV WG, SIMPLE WG, Internet Telephony WG 3GPP has decided to support it in IP multimedia services (IMS) domain.

3 Overview of SIP (cont’d)
SIP is complimentary to SGCP/MGCP SIP Provides Session Control SGCP/MGCP Provides Device Control

4 The Big FAQ and SIP? Q: You are too IP-centric, aren’t you?
A: Of course, we are. Internet telephony (which has Internet in its name) is about IP. IP telephony runs on top of IP and utilizes the IP service model. It is not about re-engineering PSTN -- PSTN is good enough. SIP is much more similar to HTTP rather than to legacy signaling both in terms of service model and protocol design.

5 Problem description Environment: aging PSTN equipment, carrier fiber overcapacity and arrival of multimedia communications with preparation to millions of mobile hosts that are IP-aware. Additionally, the possibility of programming PSTN-services in a more open environment. Problem: how to enable gradual deployment and transition to avoid the one-big-leap-for-mankind scenarios? Approach: IETF multimedia architecture and interoperability schemes with PSTN and 3GPP. Signaling is one part of this. The multimedia architectures capabilities are related to Quality of Service architecture and IP multicast.

6 IETF Multimedia Architecture

7 What Protocols Are Needed?
Signaling protocol to establish presence, locate users, set up, modify and teardown sessions Media Transport Protocols for transmission of packetized audio/video Supporting Protocols Gateway Location, QoS, interdomain AAA, address translation, IP, etc. AAA = Authentication, Authorization, Accounting

8 What Protocols Are There
Signaling: SIP/SDP (IETF), H.323 (ITU-T) Note: SIP adopted by 3gpp; lower production and operation costs reported Media: RTP (IETF’s, adopted by ITU-T) Transport: UDP, TCP, (Stream Control Transmission Protocol – RFC 2960) Supporting protocols: DNS TRIP - Telephony Routing over IP - discovery and exchange of IP telephony gateway routing tables between providers RSVP - Resource Reservation Setup Protocol COPS - Common Open Policy Service - protocol for for supporting policy control over QoS Diameter - Authentication, Accounting, Authorization

9 SIP Signaling SIP is end-to-end, client-server session protocol
SIP’s primarily provides presence and mobility Protocol primitives: Session setup, termination, changes Arbitrary services built on top of SIP, e.g.: Redirect calls from unknown callers to secretary Reply with a webpage if unavailable Send a JPEG on invitation Features: Textual encoding (telnet, tcpdump compatible) Programmability

10 SIP - General Purpose Presence Protocol
SIP is not limited to Internet SIP establishes user presence SIP messages can convey arbitrary signaling payload: session description, instant messages, JPEGs, any MIME types Suitable for applications having a notion of session distributed virtual reality systems, network games (Quake II/III implementations), video conferencing, etc. Applications may leverage SIP infrastructure (Call Processing, User Location, Authentication) Instant Messaging and Presence SIP for Appliances

11 Internet Multimedia Real Time Protocol (RTP) – media packets
Real Time Control Protocol (RTCP) – monitor & report Session Announcement Protocol (SAP) Session Description Protocol (SDP) Session Initiation Protocol (SIP) Real Time Stream Protocol (RTSP) – play out control Synchronized Multimedia Integration Language (SMIL) – mixes audio/video with text and graphics : August 2001 References: Search keyword at For SMIL -

12 Stages of IP Signaling Development
Precommercial stage ( ) Research in organizations and universities IETF: Audio/Video Transport (AVT) WG - RTP IETF: Multiparty Multimedia Session Control (MMUSIC) WG – SIP PC-centric stage ( ) First commercial VoIP software, proprietary software Calls from multimedia PC to another multimedia PC ITU: May-June 1995: H.323v1 Most commercial applications H.323 compliant by the end of 1996 Carrier-grade stage (1998-) Service provider VoIP deployment First obstacle: integration to PSTN signalling (gateway functionality) Development of media gateway controller protocols (MGCP and Megaco/H.248) Todays approach: coexistence of SIP, H.323, MGCP and Megaco/H.248

13 SIP History Work began in 1995 in IETF mmusic WG
02/1996: draft-ietf-mmusic-sip-00: 15 ASCII pages, one request type 12/1996: ASCII pages, 2 request types 01/1999: ASCII pages, 6 methods 03/1999: RFC 2543, 153 ASCII pages, 6 methods 11/1999: SIP WG formed 11/2000: draft-ietf-sip-rfc2543bis-02, 171 ASCII pages, 6 methods 12/2000: it was recognized that amount of work at SIP WG was becoming unmanageable; 1 RFC; 18 I-Ds on WG’s agenda; numerous individual submissions 04/2001: proposal for splitting SIP WG into SIP and SIPPING announced 2001: SIP implementations widely available

14 SIP End-devices User Agent (user application)
UA Client (originates calls) UA Server (listens for incoming calls) both SW and HW available

15 SIP Components SIP Proxy Server SIP Redirect Server SIP Registrar
relays call signaling, i.e. acts as both client and server operates in a transactional manner, i.e., it keeps no session state SIP Redirect Server redirects callers to other servers SIP Registrar accept registration requests from users maintains user’s whereabouts at a Location Server (like GSM HLR)

16 SIP/RTP Media Architecture
Telephony on the Internet may not be a stand-alone business, but part of IP services SIP/RTP Media Architecture Public IP Backbone Goes everywhere End-to-end control Consistent for all services DNS – mobility Messaging Web Directory Security QoS Media services Sessions Telephony ………… Telephone Gateway SIP client CAS, Q.931, SS7 MG SG SIP PCM RTP MGCP CAS : channel associated signaling Any other sessions

17 Commercial Grade IP Telephony
Assure baseline PSTN features Leverage and Commonality of telephony with the Web/Internet New services (new revenue) Scalability (Web-like) Baseline PSTN&PBX features Client & user authentication Accounting assured QoS QoS assured signaling Security assured signaling Hiding of caller ID & location Better than PSTN features New & fast service creation Internet (rapid) scalability Mobility Dynamic user preferences End-to-end control Service selection Feature control Mid-call control features Pre-call Mid-call

18 Complete integration of all services under full user control
IP Communications Complete integration of all services under full user control PSTN/PBX-like: POTS AIN CS-1, CS-2 PBX & Centrex User has control of: All addressable devices Caller and called party preferences Better quality than 3.1 kHz Web-like: Presence Voice and text chat Messaging Voice, data, video Multiparty Conferencing Education Games Any quality Most yet to be invented

19 Development of SIP IETF - Internet Engineering Task Force
MMUSIC - Multiparty Multimedia Session Control Working Group SIP developed by Handley, Schulzrinne, Schooler, and Rosenberg Submitted as Internet-Draft 7/97 Assigned RFC 2543 in 3/99 Internet Multimedia Conferencing Architecture. Alternative to ITU’s H.323 H.323 used for IP Telephony since 1994 Problems: No new services, addressing, features Concerns: scalability, extensibility

20 SIP Philosophy Internet Standard
IETF - Reuse Internet addressing (URLs, DNS, proxies) Utilizes rich Internet feature set Reuse HTTP coding Text based Makes no assumptions about underlying protocol: TCP, UDP, X.25, frame, ATM, etc. Support of multicast

21 SIP Clients and Servers - 1
SIP uses client/server architecture Elements: SIP User Agents (SIP Phones) SIP Servers (Proxy or Redirect - used to locate SIP users or to forward messages.) Can be stateless or stateful SIP Gateways: To PSTN for telephony interworking To H.323 for IP Telephony interworking Client - originates message Server - responds to or forwards message

22 SIP Clients and Servers - 2
Logical SIP entities are: User Agents User Agent Client (UAC): Initiates SIP requests User Agent Server (UAS): Returns SIP responses Network Servers Registrar: Accepts REGISTER requests from clients Proxy: Decides next hop and forwards request Redirect: Sends address of next hop back to client The different network server types may be collocated

23 SIP Addressing SIP gives you a globally reachable address
Callees bind to this address using SIP REGISTER method. Callers use this address to establish real-time communication with callees. URLs used as address data format; examples: geo.position:=48.54_ _120

24 SIP Addressing (cont’d)
must include host, may include user name, port number, parameters (e.g., transport), etc. may be embedded in Webpages, signatures, printed on your business card, etc. address space unlimited non-SIP URLs can be used as well (mailto:, ...)

25 SIP Registration

26 SIP Session Setup Example
User Agent Client SIP User Agent Server INVITE 200 OK ACK Media Stream BYE 200 OK host.wcom.com sip.uunet.com

27 Proxy Server Example 200 OK BYE host.wcom.com ACK sip.uunet.com SIP
INVITE host.wcom.com ACK INVITE sip.uunet.com SIP User Agent Client Proxy Server Media Stream server.wcom.com

28 SIP Operation in Proxy Mode

29 Proxy Server Functionality
Serve as rendezvous point at which callees are glabally reachable Perform routing function, i.e., determine to which hop (UA/proxy/redirect) signaling should be relayed Allow the routing function to be programmable. Arbitrary logic may be built on top of the protocol user’s signaling preferences AAA firewall control etc. Forking: Several destinations may be tried for a request sequentially or in parallel.

30 Proxy Chaining There may be also cases when a local outbound proxy may be involved provides locally important call processing logic (e.g., identifying nearest 119) manages firewall provides least-gateway-cost routing service IP phones must know address of the proxy:may be configured manually or with a configuration protocol (DHCP, TFTP, ... ) In general, servers may be arbitrarily chained a central company’s server may distribute signaling to departmental servers a user may want to forward incoming calls to her cell phone

31 Proxy Chaining – an Example
Note : signaling (in red) may take a completely different path from media in blue)

32 Redirect Server Example
302 Moved ACK Media Stream INVITE SIP User Agent Client Redirect Server 180 Ringing INVITE REGISTER host.wcom.com sip.uunet.com 200 OK server.wcom.com C RS UAS 1 2 3

33 SIP Operation in Redirect Mode

34 SIP Server - Proxy versus Redirection
A SIP server may either proxy or redirect a request Which of the two method applies is a configuration issue. It may be statically configured or dynamically determined/ Redirection useful if a user moves or changes her provider (PSTN: “The number you have dialed is not available.”) -- caller does not need to try the original server next time. Stateless. Proxy useful if forking, AAA, firewall control needed. In general, proxying grants more control to the server.

35 SIP Requests : RFC2543 Methods
SIP Requests (Messages) defined as: Method SP Request-URI SP SIP-Version CRLF (SP=Space, CRLF=Carriage Return and Line Feed) Example: INVITE SIP/2.0

36 } SIP Requests Example Required Headers (fields):
Via: Shows route taken by request. Call-ID: unique identifier generated by client. CSeq: Command Sequence number generated by client Incremented for each successive request INVITE SIP/2.0 Via: SIP/2.0/UDP host.wcom.com:5060 From: Alan Johnston To: Jean Luc Picard Call-ID: CSeq: 1 INVITE } Uniquely identify this session request

37 SIP Requests Example Typical SIP Request:
INVITE SIP/2.0 Via: SIP/2.0/UDP host.wcom.com:5060 From: Alan Johnston To: Jean Luc Picard Call-ID: CSeq: 1 INVITE Contact: Subject: Where are you these days? Content-Type: application/sdp Content-Length: 124 v=0 o=ajohnston IN IP4 host.wcom.com s=Let's Talk t=0 0 c=IN IP m=audio RTP/AVP 0 3

38 SIP Responses SIP Responses defined as (HTTP-style):
SIP-Version SP Status-Code SP Reason-Phrase CRLF (SP=Space, CRLF=Carriage Return and Line Feed) Example: SIP/ Not Found First digit gives Class of response:

39 SIP Responses Example Required Headers:
Via, From, To, Call-ID, and CSeq are copied exactly from Request. To and From are NOT swapped! SIP/ OK Via: SIP/2.0/UDP host.wcom.com:5060 From: Alan Johnston To: Jean Luc Picard Call-ID: CSeq: 1 INVITE

40 SIP Responses Example Typical SIP Response (containing SDP)
SIP/ OK Via: SIP/2.0/UDP host.wcom.com From: Alan Johnston To: Jean Luc Picard Call-ID: CSeq: 1 INVITE Contact: Subject: Where are you these days? Content-Type: application/sdp Content-Length: 107 v=0 o=picard IN IP4 uunet.com s=Engage! t=0 0 c=IN IP m=audio 3456 RTP/AVP 0

41 Forking Proxy Example Fork S1 C S2 SIP User Agent Client SIP Proxy
Server SIP User Agent Server 1 SIP User Agent Server 2 INVITE S1 INVITE INVITE C 100 Trying 404 Not Found S2 ACK Fork 180 Ringing 180 Ringing 200 OK 200 OK ACK Media Stream BYE 200 OK host.wcom.com proxy.wcom.com sip.mci.com sip.uunet.com

42 SIP Headers - Partial List

43 SIP Headers - Continued

44 SIP Headers - Continued

45 Via Headers and Routing
Via headers are used for routing SIP messages Requests Request initiator puts address in Via header Servers check Via with sender’s address, then add own address, then forward. (if different, add “received” parameter) Responses Response initiator copies request Via headers. Servers check Via with own address, then forward to next Via address

46 SIP Firewall Considerations
Firewall Problem Can block SIP packets Can change IP addresses of packets TCP can be used instead of UDP Record-Route can be used: ensures Firewall proxy stays in path A Firewall proxy adds Record-Route header Clients and Servers copy Record-Route and put in Route header for all messages

47 SIP Message Body Message body can be any protocol
Most implementations: SDP - Session Description Protocol RFC /98 by Handley and Jacobson Used to specify info about a multi-media session. SDP fields have a required order For RTP - Real Time Protocol Sessions: RTP Audio/Video Profile (RTP/AVP) payload descriptions are often used

48 Session Description Protocol (SDP)
Convey sufficient information to enable participation in a multimedia session SDP includes description of: Media to use (codec, sampling rate) Media destination (IP address and port number) Session name and purpose Times the session is active Contact information Note: indeed SDP is a data format rather than a protocol.

49 SDP Examples v=0 o=sisalem IN IP s=SIP Tutorial c=IN IP t= m=audio RTP/AVP 0 98 a=rtpmap:98 L16/11025/2

50 SDP Examples (cont’d) SDP Example SDP Example v=0
o=ajohnston IN IP4 host.wcom.com s=Let's Talk t=0 0 c=IN IP m=audio RTP/AVP 0 3 SDP Example v=0 o=picard IN IP4 uunet.com s=Engage! t=0 0 c=IN IP m=audio 3456 RTP/AVP 0

51 Another SDP Example (cont’d)
v=0 o=alan IN host.wcom.com s=SSE University Seminar - SIP i=Audio, Listen only u= p= c=IN IP b=CT:128 t= m=audio 3456 RTP/AVP 0 3 a=type:recvonly

52 Authentication & Encryption
SIP supports a variety of approaches: end to end encryption hop by hop encryption Proxies can require authentication: Responds to INVITEs with 407 Proxy-Authentication Required Client re-INVITEs with Proxy-Authorization header. SIP Users can require authentication: Responds to INVITEs with 401 Unathorized Client re-INVITEs with Authorization header

53 SIP Encryption Example
INVITE SIP/2.0 Via: SIP/2.0/UDP host.wcom.com:5060 From: Alan Johnston To: Jean Luc Picard Call-ID: CSeq: 1 INVITE Content-Length: 224 Encryption: PGP version=2.6.2, encoding=ascii hWjasGdg,ddgg+fdgf_ggEO;ALewAKFeJqAFSeDlkjhasdfkj!aJsdfasdfKlfghgasdfasdfa|Gsdf>a!sdasdf3w29451k45mser?we5y;343.4kfj2ui2S8~&djGO4kP%Hk#(Khujefjnjmbm.sd;da’l;12’;123=]aw;erwAo3529ofgk

54 PSTN Features with SIP Features implemented by SIP Phone
Call answering: 200 OK sent Busy: 483 Busy Here sent Call rejection: 603 Declined sent Caller-ID: present in From header Hold: a re-INVITE is issued with IP Addr = Selective Call Acceptance: using From, Priority, and Subject headers Camp On: 181 Call Queued responses are monitored until 200 OK is sent by the called party Call Waiting: Receiving alerts during a call

55 PSTN Features with SIP Features implemented by SIP Server
Call Forwarding: server issues 301 Moved Permanently or 302 Moved Temporarily response with Contact info Forward Don’t Answer: server issues 408 Request Timeout response Voic server 302 Moved Temporarily response with Contact of Voic Server Follow Me Service: Use forking proxy to try multiple locations at the same time Caller-ID blocking - Privacy: Server encrypts From information

56 SIP User Location Example
SIP supports mobility across networks and devices Q=quality gives preference SIP/ Moved temporarily Contact: ;service=IP,voice mail ;media=audio ;duplex=full ;q=0.7 Contact : phone: ; service=ISDN ;mobility=fixed; language=en,es, ;q=0.5 Contact : phone: ; service=pager ;mobility=mobile ;duplex=send-only ;media=text; q=0.1; priority=urgent ;description=“For emergency only” Contact : mailto:

57 Programming SIP Examples Users and third parties may program
“discard all calls from Monica during my business hours” “redirect authenticated friends to my cell phone, anyone else to my secretary” “if busy, return my homepage and redirect to recorder” Users and third parties may program SIP follows HTTP programming model Mechanisms suggested in IETF: CGI, Call Processing Language (CPL), Servlets

58 Call Processing Logic Example

59 SIP Mobility Support 4 Mobile Host SIP Redirect Server 5 SIP Proxy
Foreign Network Home Network 3 1 2 6 7 1 INVITE moved temporarily 3, 4 INVITE 5, 6 OK 7 Data Corresponding Host Global: Wire and wireless No tunneling required No change to routing For fast hand-offs use: Use Cellular IP or Use DRCP * Dynamic Registration and Configuration Protocol

60 Need not bother home registrar: Use multi-stage registration
SIP Mobility Pre-call mobility MH can find SIP server via multicast REGISTER MH acquires IP address via DHCP MH updates home SIP server Mid-call mobility MH->CH: New INVITE with Contact and updated SDP Re-registers with home registrar Need not bother home registrar: Use multi-stage registration Recovery from disconnects

61 Mobile IP Communications
Mobile IP Requirements Transparency above L2: Move but keep IP address and all sessions alive Mobility Within subnet Within domain Global AAA and NAIs Location privacy QoS for r.t. communications Evolution of Wireless Mobility Circuit Switched Mobility based on central INs LAN-MAN: Cellular IP Wide Area: Mobile IP Universal (any net): SIP

62 Presence, Instant Messaging and Voice

63 IP SIP Phones and Adaptors
Are Internet hosts Choice of application Choice of server IP appliance Implementations 3Com (2) Cisco Columbia University Mediatrix (1) Nortel (3) Pingtel 1                  2 3

64 H.323/SIP Comparison

65 H.323 vs. SIP: Basic Call Control

66 H.323 vs. SIP: Advanced features

67 H.323 vs. SIP Scalability

68 H.323 vs. SIP Extensibility of functionality

69 H.323 vs. SIP Ease of customization

70 H.323 vs. SIP Ease of customization

71 H.323 vs. SIP Ease of Implementation

72 Summary :SIP vs H.323

73 Internet Drafts Session Timers in the Session Initiation Protocol (SIP) Caller Preferences for the Session Initiation Protocol (SIP) Guidelines for Authors of Extensions to the Session Initiation Protocol (SIP) The Stream Control Transmission Protocol as a Transport for for the Session Initiation Protocol The Session Inititation Protocol (SIP) 'Replaces' Header The SIP Referred-By Mechanism Compressing the Session Initiation Protocol Session Initiation Protocol Extension to Assure Congestion Safety A Mechanism for Content Indirection in Session Initiation Protocol (SIP) Messages The Session Inititation Protocol (SIP) 'Join' Header SIP Authenticated Identity Body (AIB) Format S/MIME AES Requirement for SIP An Extension to the Session Initiation Protocol for Request History Information Communications Resource Priority for the Session Initiation Protocol (SIP) Indicating User Agent Capabilities in the Session Initiation Protocol (SIP) Connection Reuse in the Session Initiation Protocol (SIP) The Internet Assigned Number Authority Universal Resource Identifier Parameter Registry for the Session Initiation Protocol The Internet Assigned Number Authority Header Field Parameter Registry for the Session Initiation Protocol Session Initiation Protocol (SIP) Extension for Event State Publication Interactions of Preconditions with Session Mobility in the Session Initiation Protocol (SIP) Obtaining and Using Globally Routable User Agent (UA) URIs (GRUU) in the Session Initiation Protocol (SIP)

74 RFCs The SIP INFO Method (RFC 2976)
MIME media types for ISUP and QSIG Objects (RFC 3204) SIP: Session Initiation Protocol (RFC 3261) Reliability of Provisional Responses in SIP (RFC 3262) SIP: Locating SIP Servers (RFC 3263) SIP-Specific Event Notification (RFC 3265) DHCP Option for SIP Servers (RFC 3361) Hypertext Transfer Protocol (HTTP) Digest Authentication Using Authentication and Key Agreement (AKA) (RFC 3310) The Session Initiation Protocol UPDATE Method (RFC 3311) Integration of Resource Management and SIP (RFC 3312) Internet Media Type message/sipfrag (RFC 3420) A Privacy Mechanism for the Session Initiation Protocol (SIP) (RFC 3323) Private Extensions to the Session Initiation Protocol (SIP) for Asserted Identity within Trusted Networks (RFC 3325) Session Initiation Protocol Extension for Instant Messaging (RFC 3428) The Reason Header Field for the Session Initiation Protocol (SIP) (RFC 3326) Session Initiation Protocol Extension for Registering Non-Adjacent Contacts (RFC 3327) Security Mechanism Agreement for the Session Initiation Protocol (SIP) Sessions (RFC 3329) Private Session Initiation Protocol (SIP)Extensions for Media Authorization (RFC 3313) The Session Initiation Protocol (SIP) Refer Method (RFC 3515) Dynamic Host Configuration Protocol (DHCPv6)Options for Session Initiation Protocol (SIP) Servers (RFC 3319) An Extension to the Session Initiation Protocol (SIP) for Symmetric Response Routing (RFC 3581) Session Initiation Protocol Extension Header Field for Service Route Discovery During Registration (RFC 3608)

75 Relevant IETF Working Groups
Audio/Video Transport (avt) - RTP Differentiated Services (diffserv) – QoS in backbone IP Telephony (iptel) – CPL, GW location, TRIP Integrated Services (intserv) – end-to-end QoS Media Gateway Control (megaco) – IP telephony gateways Multiparty Multimedia Session Control (mmusic) – SIP, SDP, conferencing PSTN and Internet Internetworking (pint) – mixt services Resource Reservation Setup Protocol (rsvp) Service in the PSTN/IN Requesting InTernet Service (spirits) Session Initiation Protocol (sip) – signaling for call setup Signaling Transport (sigtran) – PSTN signaling over IP Telephone Number Mapping (enum) – surprises ! Instant Messaging and Presence Protocol (impp)

76 SIP Summary SIP is: SIP is not: Relatively easy to implement
Gaining vendor and carrier acceptance Very flexible in service creation Extensible and scaleable Appearing in products right now SIP is not: Going to make PSTN interworking easy Going to solve all IP Telephony issues (QoS)

77 References Book on “Internetworking Multimedia” by Jon Crowcroft, Mark Handley, Ian Wakeman, UCL Press, 1999 by Morgan Kaufman (USA) and Taylor Francis (UK) RFC 3261: “SIP: Session Initiation Protocol” The IETF SIP Working Group home page SIP Home Page Papers on IP Telephony


Download ppt "School of Electronics and Information"

Similar presentations


Ads by Google