Internet Engineering Task Force G. Chen Internet-Draft China Mobile Intended status: Informational July 4, 2011 Expires: January 5, 2012 XMPP Pubsub Extenstion for Long-lived TCP Services draft-chen-xmpp-pubsub-extension-00 Abstract This memo defines extensions to pubsub features of the Extensible Messaging and Presence Protocol (XMPP) that will address issues encountered by a long-lived TCP connection in mobile environments. Network resources consumption issues are happenned when there are frequent notification messages have been transmitted periodically. Depending on raised issues, the extension for XMPP pubsub protocol could be considered to optimize network quality. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on January 5, 2012. Copyright Notice Copyright (c) 2011 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of Chen Expires January 5, 2012 [Page 1] Internet-Draft Pubsub-Extention July 2011 the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 3 4. Functional Summary . . . . . . . . . . . . . . . . . . . . . . 4 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 6. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 7. Normative References . . . . . . . . . . . . . . . . . . . . . 5 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 5 Chen Expires January 5, 2012 [Page 2] Internet-Draft Pubsub-Extention July 2011 1. Introduction The Extensible Messaging and Presence Protocol (XMPP) is an open and XML-based protocol, which has evolved through an open development within the Jabber open-source community. It provides a solid, flexible foundation which enables the near-real-time exchange for a wide variety of applications between any two or more network entities. With the advancement of XMPP Core [RFC6120] within the Internet standards process, interest in building XMPP-based applications and extensions has accelerated even further. Various applications can be layered on top of the core by sending application-specific data qualified by particular XML namespaces. XMPP Pubsub[XEP-0060]defines an XMPP protocol extension for generic publish-subscribe functionality. The protocol enables XMPP entities to create topics at a pubsub service and publish information at those nodes; an event notification is then broadcasted to all entities that have subscribed to the node. Pubsub therefore adheres to the classic observer design pattern and can serve as the foundation for a wide variety of applications that requires event notifications. This memo defines extensions to pubsub features of the Extensible Messaging and Presence Protocol(XMPP) that will address issues encountered by a long-lived TCP connection in mobile environments. A message synchronization feature has been proposed to add into XMPP Pubsub in order to reduce frequency of sending notification. Depending on that, resources consumption and network congestion issues are likely reduced by unified push mechanism. 2. Terminology Node: A virtual location to which information can be published and from which event notifications and/or payloads can be received. Owner: The manager of a node, of which there may be more than one; often but not necessarily the node creator. Publisher: An entity that is allowed to publish items to a node and that is automatically subscribed to the node. Subscriber/User: An entity that is subscribed to a node. 3. Requirements Originally,XMPP Pubsub has proposed basic requirements, which can be driven by end-user needs as well as the needs of other components and Chen Expires January 5, 2012 [Page 3] Internet-Draft Pubsub-Extention July 2011 services which can use the service. In general, it describes two fundamental aspects: o An entity publishes information to a node at a publish-subscribe service. o The pubsub service pushes an event notification to all entities that are authorized to learn about the published information. Regarding to XMPP Pubsub extension in wireless environments, new requirements have been generated in term of reducing frequent notifications. The applications based on long-lived TCP are prevalent in mobile network, such as Instant Message. Mobile terminals are often "sleep" to extend battery life and save air resources.During this time, the terminal will release air interface resource and terminal status will be changed to idle. Notification messages need always to wake-up mobile terminals by assigning dedicated air resource. A number of notification will occupy significant part of air resources. Since all applications have their own notification mechanism and none of them care about what happens to large-scale link layers. There is periodic congestion in the wireless environments. According to the timing behavior, messages could be categorized as time-sensitive and time-insensitive messages. for the time-sensitive parts, online chatting message, friends information update and keepalive message require near-real-time exchanges. for the time- insensitive part, news,offline posted comments, photo tag and email have relatively delay tolerant. In order to reduce notifications frequency, XMPP Pubsub should be extended to synchronize several notification coming from different publisher-owners. A unified scheduling should be set acoording to the different timing behavior. Based on new extended features, it will greatly decrease frequency of waking up terminals. 4. Functional Summary This non-normative section provides a developer-friendly, functional summary of XMPP-Pubsub extension. Upon fulfillment of the preconditions specified in XMPP-CORE [RFC6120], an XMPP client has a long-lived XML stream with an XMPP server, which enables users to subscribe/create a node. Also, the publisher could also can broadcast notification to the users. Such a stream can be used to exchange time-sensitive or time-insensitive messages. Different schduling rules could apply to these message Chen Expires January 5, 2012 [Page 4] Internet-Draft Pubsub-Extention July 2011 delivery. After negotiation of the XML stream, the typical flow for XMPP-pubsub extension is as follows: o Owners create/configure a node with attributes of timing character. o Users subscribe to a node, it sends a subscription request to the pubsub service. o Publishers push subsribed items to users. According to timing features of message, publisher batchs multiple notifications in a single transmission to deliver message to users. 5. IANA Considerations This memo includes no request to IANA. 6. Security Considerations TBD 7. Normative References [RFC6120] Saint-Andre, P., "Extensible Messaging and Presence Protocol (XMPP): Core", RFC 6120, March 2011. [XEP-0060] Millard, P. and Saint-Andre, P., "Publish-Subscribe", XSF XEP-0060, July 2010. Author's Address Gang Chen China Mobile 53A,Xibianmennei Ave., Xuanwu District, Beijing 100053 China Email: chengang@chinamobile.com Chen Expires January 5, 2012 [Page 5]