200 likes | 560 Views
Session Initiation Protocol. Presenter: Kideok Cho ( kdcho@mmlab.snu.ac.kr ) 2005. 10. 19. Contents. Session Initiation Protocol SIP Entities SIP Messages Message Flow in SIP Extending SIP Current Status of SIP Conclusion. Session Initiation Protocol. Main goal
E N D
Session Initiation Protocol Presenter: Kideok Cho (kdcho@mmlab.snu.ac.kr) 2005. 10. 19
Contents • Session Initiation Protocol • SIP Entities • SIP Messages • Message Flow in SIP • Extending SIP • Current Status of SIP • Conclusion
Session Initiation Protocol • Main goal • Originally designed to invite users to existing multimedia conference • Today, used to create, modify, and terminate multimedia sessions • To deliver a “session description” to a user at their current location • RFC3261 and some related RFCs • About 70 related-RFCs
Session Description • Contains • Information for the remote user to join the session • Such as, IP address, Port #, codecs • Most common format • Session Description Protocol (SDP), RFC 2327 v=0 o=Alice 26764646 46734 IN IP4 192.0.01 s=Let’s talk about swimming techniques c=IN IP4 192.0.0.1 t=0 0 m=audio 20000 RTP/AVP 0 a=sendrecv m=video 20002 RTP/AVP 31 a=sendrecv
SIP Uniform Resource Identifier (URI) • SIP URI: e-mail-like address • Consists of user name and domain • sip:kdcho@mmlab.snu.ac.kr • To provide personal mobility • Public URI vs. Current URI • sip:kdcho@yonsei.ac.kr • Need to map public URI to current URI • Registrar
SIP Entities (1/2) • User Agent • SIP endpoint: usually handled by users • User Agent Client (UAC) • User Agent Server (UAS) • Registrar • Maintains public URI to current URI mappings • Accepts REGISTER requests • Update a location database with the contact information
SIP Entities (2/2) • Proxy Server • SIP Router • Receives SIP messages from a user agent or another proxy server • Routes it towards its destination • Redirect Server • Maps the SIP address of the called party into new address(es) and returns them • Unlike Proxy server, Redirect server don’t pass the request on to other servers
SIP messages • Request Methods • INVITE, REGISTER, ACK, BYE, CANCEL, etc • Response type • Provisional: 1xx class • Provisional, searching, ringing, queuing etc. • Final: 2xx, 3xx, 4xx, 5xx, 6xx class • Success • Redirection, forwarding • Request failure, server failure, global failure
Message Format • SIP is a textual request-response protocol Start line A number of header fields Empty line Optional message body INVITE sip:laptop1@factoryA.com SIP/2.0 Via: SIP/2.0/UDP pc33.company.com; branch=33 Max-Forwards: 70 To: sip:latptop1@factoryA.com From: sip:TN@company.com Call-id: 1234@pc33.company.com Cseq: 1 INVITE Contact: sip:TN@pc33.company.com v=0 o=Alice 26764646 46734 IN IP4 192.0.01 s=Let’s talk about swimming techniques c=IN IP4 192.0.0.1 t=0 0 m=audio 20000 RTP/AVP 0 a=sendrecv SIP/2.0 200 OK Via: SIP/2.0/UDP pc33.company.com; branch=33 Max-Forwards: 70 To: sip:latptop1@factoryA.com From: sip:TN@company.com Call-id: 1234@pc33.company.com Cseq: 1 200 OK Contact: sip:TN@pc33.company.com v=0 o=Alice 26764646 46734 IN IP4 192.0.01 s=Let’s talk about swimming techniques c=IN IP4 192.0.0.1 t=0 0 m=audio 30000 RTP/AVP 0 a=sendrecv
2. INVITE 3. Location Request 1. INVITE 5. 302 Moved Temporarily 4. Location Reply 10. 200 OK 6. INVITE SIP proxy 9. 200 OK 11. ACK Media Session 7. INVITE 8. 200 OK SIP Call Redirection SIP proxy Redirect Server Location Server Alice Bob
Extending SIP (1/2) • Event Notification (RFC 3265) • To obtain the status of a given resource • To track changes in that status • E.g. online, offline Alice Alice’s Voicemail SUBSCRIBE Event: message-summary 200 OK NOTIFY Message-Waiting: yes Message-Account: sip:alice@vmail.example.com Voice-Message: 2/8 (0/2) 200 OK
Extending SIP (2/2) • User Agent Capability (RFC 3840) • SIP methods it supports • Video, audio, text communication • Business or personal communication, etc • Signaling Compression (RFC 3320) • Textual encoding makes SIP messages grow dramatically as soon as several extensions are used at the same time
IP Multimedia Subsystem (IMS) • To offer Internet services everywhere and at any time using cellular technologies • Session Control Protocol • SIP(RFC 3261) was chosen among the three candidates (BICC, H.323, SIP)
Email / SIP / URL Telephone Network Telephone No. INTERNET ENUM No. Mobile No. Fax No. ENUM DNS tElephone NUmber Mapping (ENUM) • Protocol to identify ordinary phones, fax machines, pagers, email clients, etc, by one E.164 number From Jaeyoung Choi’s presentation
Conclusion • Session Initiation Protocol is new standard • Many advantages • Text-based encoding • Application layer protocol • Many extensions • Makes SIP more useful • VoIP, IMS, ENUM, etc