290 likes | 476 Views
SIP and Its Application to Presence and Instant Messaging. Jonathan Rosenberg Chief Scientist. Presentation Outline. Presence and Instant Messaging (IM) Current state of market Future directions Technical Challenges How SIP Can Support Presence and IM Technology proof points
E N D
SIP and Its Application to Presence and Instant Messaging Jonathan Rosenberg Chief Scientist
Presentation Outline • Presence and Instant Messaging (IM) • Current state of market • Future directions • Technical Challenges • How SIP Can Support Presence and IM • Technology proof points • Operational advantages
Also Known as Buddy Lists Presence Indicates Online/Offline Status Largely to Enable IM Users subscribe to “Friends” List When User is Online Click to send instant message Initiate voice chat (newer) When Friends Log On/Off, Notifications are Sent Sometimes User Status Can Be Indicated Busy, Not At My Desk Subscriber Subscriber PresenceServer Publisher Subscriber Notify Subscribe Publish Presence Today
Instant Messaging IM Today • May or May Not be Stored (Similar to Email) • Rapid Delivery - Almost Real Time • Notion of a “Session” Similar to Email Thread • Generally Text Only • Usually Tied to Presence
AOL is Number One Instant Messenger Ships with Windows Tens of millions of subscribers Flat name space ICQ Owned by AOL but incompatible Yahoo! Messenger Microsoft MSN Messenger Integrates with hotmail, Netmeeting Who Are the Players?
Excite Voice chat provided by Lipstream koz.com Provider of ichat and other components for building chat and IM solutions Tribal Voice Owned by CMGI Also acquired Activerse PowWow Client Eight million users Voice chat, voice messaging, IM, presence, shared white board and shared browsing Who Are the Players? cont.
Will Describe Much More Than Online/Offline StatusPresence is the dynamically changing set of means, willingness, capabilities, characteristics and ability for users to communicate and interact with each other The Means VoIP IM Cell phone PSTN phone Email Games Presence Tomorrow
Willingness “Only if urgent” “Try cell phone first, then business line” “Always send email” Capabilities and Characteristics Voicemail available Voice or video Mobile or fixed Language spoken Secretary available Presence Tomorrow cont.
Define Rules How and to Whom Presence Data is Conveyed Current Systems Support Limited Access Controls Only friends are allowed to subscribe Access Controls will Evolve to Become Much More Functional and Customizable User-based groups of users - friends, colleagues passwords blacklisting Access Controls
Time-based Weekday/weekends During day, after work Location-Based “Only send friends my presence when I am at home” Lying Generate false presence information depending on subscriber Access Controls cont.
Instant Messaging and Presence Protocol (IMPP) Working Group Formed in 1998 to Define Requirements and Model Requirements and Model Work Completed Earlier This Year Group Attempted to Design Actual Protocols Presence Data Format Presence Protocol IM Data Format IM Protocol IETF Efforts on Presence
IETF Efforts on Presence cont. • IMPP Working Group Made Limited Progress • Lack of leadership • Difficult to design protocol by committee • Got caught in nits • IMPP Working Group Forced Dormant • IETF 47, Adelaide, April 2000 • IESG now seeking proposals for complete solution • IESG will choose one proposal that IMPP will move forward with
Subscription Means to subscribe to some entity Requires huge scalability distributed subscription state lightweight transactions Authentication of subscribers Ability to convey complex subscription rules Routing and namespace partitioning Components of a Presence Solution
Publication Enables a user to send information to server for distribution Must be possible to have multiple entities publish for a single address my cell phone my IM client Describes communications means, state, capabilities and characteristics Components of a Presence Solution cont.
Notification Rapid delivery of published data to subscribers Makes use of distributed subscription state Highly scalable Presence data changes often Many subscribers Must be able to convey a variety of presence data formats Components of a Presence Solution cont.
SIP Requires Presence State to Route Calls from A to B SIP and presence protocol use same data But SIP is asynchronous; presence protocol is synchronous SIP and Presence Share Similar Scalability Requirements SIP can handle more than phone calls - supports all types of sessions Namespace partitioning for scale Stateless/UDP operation for scale “Fast in the core, smart at the edge” model needed in both cases SIP and Presence/IM are Closely Related
SIP and Presence/IM are Closely Related cont. • SIP and Presence Share Similar Security Requirements • End-to-end authentication of messages and responses • Not mandatory • Hop by Hop encryption and authentication for privacy and authentication • transitivity to achieve scale
SIP and Presence/IM Both Require Routing Difficult part of IM is finding user to deliver IM Difficult part of SIP is finding user to deliver session invitation Presence also requires same routing - finding presence server for user SIP and presence/IM share similar extensibility requirements Both are core communications services Both have broad uses Both are wide area services SIP and Presence/IM are Closely Related cont.
SIP and Presence/IM are Cousins cont. • SIP and presence/IM share similar content carriage requirements • SIP and presence will need to carry a common data format • SIP carries SDP • Presence carries presence data format • IM needs to support MIME • SIP provides MIME
REGISTER is a Publication Message for Locations Allows for SIP and Other URL Types Multiple Entities Can Publish for the Same Address SIP Caller Preferences Extension Allows for Attributes for Locations mobile, landline home, business preferences audio,video - MIME capability Registrar Client Client Client SIP Already Provides Publication Capability
Define New Entity: Presence Server Possibly co-located with registrar Extend with New SUBSCRIBE Method SIP’s Routing, naming, security, content, transaction labeling and sequencing capabilities are all required Define distributed subscription state Similar to mailing lists Requirements for SIP to Support Presence
Requirements for SIP to Support Presence cont. • Extend with New NOTIFY Method • Create Mechanism to Fetch Friend Lists • REGISTER response? • Need not be a SIP mechanism • Define Presence URL
Possible Approaches IM is a session, established with INVITE IM is a messaging service, Would need new SIP method IM as a Session Supportable with SIP now New RTP payload format for text Allows tight synchronization with voice and video One character at a time readily supported Similar to chat Requirements for SIP to Support IM cont.
Requirements for SIP to Support IM cont. • IM as a Messaging Service • No session setup needed • Ordering not important • Simplifies storage for later delivery • All messages need to travel through servers, rather than be sent directly to user • No notion of session over which lifetime of an address exists • Can be easily done using new method, MESSAGE
Unifies Major Communications Services Voice/video IM Presence Shared Databases Shared Proxies Shared Servers Advantages of Using SIP for Presence and IM
Reduces Management Costs One infrastructure instead of two One NOC instead of two One set of managers instead of two Enables New Combined Services Combined services integrate voice, video, IM, presence, web, email These new services will be “killer app” for communications on the Internet Delivery of combined services is greatly facilitated by alignment of presence and communication signaling protocols Advantages of Using SIP For Presence and IM
Conclusions • Presence and IM are Rapidly Growing Applications with Huge Market Potential • Development of Presence and IM is Held Back By Lack of Standards • SIP Provides Many of the Key Components Needed for Scalable, Secure IM and Presence Service • Using SIP for Presence Yields Compelling Benefits • Shared infrastructure for reduced costs • One-stop communications solution
Information Resource • Jonathan Rosenberg • jdrosen@dynamicsoft.com • +1 732.741.7244