1、2002-11-05,Session Initiation Protocol,What is SIP?,“,”,Session Initiation Protocol - An application layer signaling protocol that defines initiation, modification and termination of interactive, multimedia communication sessions between users.,IETF RFC 2543 Session Initiation Protocol,SIP Framework
2、,Session initiation. Multiple users. Interactive multimedia applications.,Conferencing,Distance Learning,Email,Video Conferencing,Instant Messaging,Voice Calls,MPEG, MP3, Audio, HTML,XML,Personal Mobility,Redirect Server,SIP Distributed Architecture,Location Server,Registrar Server,User Agent,Proxy
3、Server,Gateway,PSTN,SIP Components,Proxy Server,User Agents,An application that initiates, receives and terminates calls. User Agent Clients (UAC) An entity that initiates a call. User Agent Server (UAS) An entity that receives a call.Both UAC and UAS can terminate a call.,Proxy Server,An intermedia
4、ry program that acts as both a server and a client to make requests on behalf of other clients. Requests are serviced internally or by passing them on, possibly after translation, to other servers. Interprets, rewrites or translates a request message before forwarding it.,Location Server,A location
5、server is used by a SIP redirect or proxy server to obtain information about a called partys possible location(s).,Redirect Server,A server that accepts a SIP request, maps the address into zero or more new addresses and returns these addresses to the client. Unlike a proxy server, the redirect serv
6、er does not initiate its own SIP request. Unlike a user agent server, the redirect server does not accept or terminate calls.,Registrar Server,A server that accepts REGISTER requests. The register server may support authentication. A registrar server is typically co-located with a proxy or redirect
7、server and may offer location services.,SIP Messages Methods and Responses,SIP Methods: INVITE Initiates a call by inviting user to participate in session. ACK - Confirms that the client has received a final response to an INVITE request. BYE - Indicates termination of the call. CANCEL - Cancels a p
8、ending request. REGISTER Registers the user agent. OPTIONS Used to query the capabilities of a server. INFO Used to carry out-of-bound information, such as DTMF digits.,SIP Responses: 1xx - Informational Messages. 2xx - Successful Responses. 3xx - Redirection Responses. 4xx - Request Failure Respons
9、es. 5xx - Server Failure Responses. 6xx - Global Failures Responses.,SIP components communicate by exchanging SIP messages:,SIP Headers,SIP borrows much of the syntax and semantics from HTTP. A SIP messages looks like an HTTP message message formatting, header and MIME support. An example SIP header
10、: -SIP Header - INVITE sip:5120192.168.36.180 SIP/2.0 Via: SIP/2.0/UDP 192.168.6.21:5060 From: sip:5121192.168.6.21 To: Call-ID: c2943000-e0563-2a1ce-2e323931192.168.6.21 CSeq: 100 INVITE Expires: 180 User-Agent: Cisco IP Phone/ Rev. 1/ SIP enabled Accept: application/sdp Contact: sip:5121192.168.6.
11、21:5060 Content-Type: application/sdp,SIP Addressing,The SIP address is identified by a SIP URL, in the format: userhost. Examples of SIP URLs: sip:hostnamevovida.org sip:hostname192.168.10.1 sip:14083831088vovida.org,Process for Establishing Communication,Establishing communication using SIP usuall
12、y occurs in six steps: Registering, initiating and locating the user. Determine the media to use involves delivering a description of the session that the user is invited to. Determine the willingness of the called party to communicate the called party must send a response message to indicate willin
13、gness to communicate accept or reject. Call setup. Call modification or handling example, call transfer (optional). Call termination.,Registration,Each time a user turns on the SIP user client (SIP IP Phone, PC, or other SIP device), the client registers with the proxy/registration server. Registrat
14、ion can also occur when the SIP user client needs to inform the proxy/registration server of its location. The registration information is periodically refreshed and each user client must re-register with the proxy/registration server. Typically the proxy/registration server will forward this inform
15、ation to be saved in the location/redirect server.,SIP Messages: REGISTER Registers the address listed in the To header field. 200 OK.,Proxy/ Registration Server,SIP Phone User,Location/ Redirect Server,Simplified SIP Call Setup and Teardown,302 (Moved Temporarily),ACK,INVITE,302 (Moved Temporarily)
16、,ACK,Call Teardown,Media Path,Call Setup,Location/Redirect Server,Proxy Server,Proxy Server,User Agent,User Agent,INVITE,SIP Design Framework,SIP was designed for: Integration with existing IETF protocols. Scalability and simplicity. Mobility. Easy feature and service creation.,Integration with IETF
17、 Protocols (1),Other IETF protocol standards can be used to build a SIP based application. SIP can works with existing IETF protocols, for example: RSVP - to reserve network resources. RTP Real Time Protocol -to transport real time data and provide QOS feedback. RTSP Real Time Streaming Protocol - f
18、or controlling delivery of streaming media. SAP Session Advertisement Protocol - for advertising multimedia session via multicast.,Integration with IETF Protocols (2),SDP Session Description Protocol for describing multimedia sessions. MIME Multipurpose Internet Mail Extension defacto standard for d
19、escribing content on the Internet. HTTP Hypertext Transfer Protocol - HTTP is the standard protocol used for serving web pages over the Internet. COPS Common Open Policy Service. OSP Open Settlement Protocol.,Scalability,The SIP architecture is scalable, flexible and distributed. Functionality such
20、as proxying, redirection, location, or registration can reside in different physical servers. Distributed functionality allows new processes to be added without affecting other components.,Simplicity,SIP is designed to be: “Fast and simple in the core.” “Smarter with less volume at the edge.” Text b
21、ased for easy implementation and debugging.,Mobility,SIP supports user mobility by proxying and redirecting requests to a users current location. The user can be using a PC at work, PC at home, wireless phone, IP phone, or regular phone. The user must register their current location. The proxy serve
22、r will forward calls to the users current location. Example mobility applications include presence and call forking.,Feature Creation,A SIP based system can support rapid feature and service creations. For example, features and services can be created using: Call Processing Language (CPL). Common Ga
23、teway Interface (CGI).,Feature Creation (2),SIP can support these features and applications: Basic call features (call waiting, call forwarding, call blocking etc.). Unified messaging. Call forking. Click to talk. Presence. Instant messaging. Find me / Follow me.,References,For more information on SIP refer to: IETF http:/www.ietf.org/html.charters/sip-charter.html Henning Schulzrinnes SIP page http:/www.cs.columbia.edu/hgs/sip/,