LEMONADE Working Group E. Burger Internet-Draft BEA Intended status: Informational G. Parsons Expires: May 15, 2008 Nortel November 12, 2007 LEMONADE Architecture - Supporting OMA Mobile Email (MEM) using Internet Mail draft-ietf-lemonade-architecture-00.txt Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on May 15, 2008. Copyright Notice Copyright (C) The IETF Trust (2007). Burger & Parsons Expires May 15, 2008 [Page 1] Internet-Draft LEMONADE architecture November 2007 Abstract This document specifies the architecture for mobile email, as described by the OMA, using Internet Mail protocols. This architecture is the basis of the work of the LEMONADE WG and is a guidleine for the LEMONADE Profile. Burger & Parsons Expires May 15, 2008 [Page 2] Internet-Draft LEMONADE architecture November 2007 Conventions used in this document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [1]. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. OMA Mobile Email (MEM) . . . . . . . . . . . . . . . . . . . . 5 2.1. OMA MEM Requirements . . . . . . . . . . . . . . . . . . . 5 2.2. OMA MEM Architecture . . . . . . . . . . . . . . . . . . . 5 2.2.1. OMA MEM logical Architecture . . . . . . . . . . . . . 5 2.2.2. OMA MEM Deployment Issues . . . . . . . . . . . . . . 7 2.3. OMA MEM Technical Specification . . . . . . . . . . . . . 8 3. IETF LEMONADE Architecture . . . . . . . . . . . . . . . . . . 9 3.1. Relationship between the OMA MEM and LEMONADE logical architectures . . . . . . . . . . . . . . . . . . . . . . 10 3.2. LEMONADE realization of OMA MEM with non-LEMONADE compliant servers . . . . . . . . . . . . . . . . . . . . 12 3.2.1. LEMONADE realization of OMA MEM with non-LEMONADE IMAP servers . . . . . . . . . . . . . . . . . . . . . 12 3.2.2. LEMONADE realization of OMA MEM with non-IMAP servers . . . . . . . . . . . . . . . . . . . . . . . 13 4. Filters and server to client notifications and LEMONADE . . . 14 5. Notifications objectives . . . . . . . . . . . . . . . . . . . 16 6. Security considerations . . . . . . . . . . . . . . . . . . . 17 7. IANA considerations . . . . . . . . . . . . . . . . . . . . . 18 8. Version history . . . . . . . . . . . . . . . . . . . . . . . 19 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 20 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 23 Intellectual Property and Copyright Statements . . . . . . . . . . 24 Burger & Parsons Expires May 15, 2008 [Page 3] Internet-Draft LEMONADE architecture November 2007 1. Introduction This document describes the architecture of OMA mobile email (MEM) using Internet Mail protocols defined by the IETF. Many of these protocols have been enhanced by the LEMONADE work group for use in the mobile environment and are summarized in the LEMONADE profile [5] and its revision LEMONADE profile bis [6]. This document shows how the OMA MEM Requirement document [3] , OMA MEM Architecture [2] and OMA MEM Technical Specification [4] relate to the work of LEMONADE. Burger & Parsons Expires May 15, 2008 [Page 4] Internet-Draft LEMONADE architecture November 2007 2. OMA Mobile Email (MEM) The OMA Mobile Email (MEM) sub-working group has spent some time studying the requirements and architecture of mobile email. IETF LEMONADE has been liaising with them and have based much of our Internet Mail enhancements based on their input. This section summarizes the output of the OMA. 2.1. OMA MEM Requirements The OMA MEM activity has collected a set of use cases and derived requirements for a mobile email enabler (MEM). the resulting work is summarized in OMA MEM Requirements [3]. Some requirements relates to email protocols, some involve other OMA technologies outside the scope of IETF and some relate to implementations and normative interoperability statements for clients and servers. 2.2. OMA MEM Architecture This section gives a brief introduction to the OMA MEM Architecture. 2.2.1. OMA MEM logical Architecture The OMA MEM activity has derived a logical architecture from the requirements and use cases described in [3]. A simplification for illustrative purposes is shown inFigure 1, where arrows indicate content flows. __________ | Other | ----| Mobile |<--- | | Enablers | | | |__________| | |ME-4 |ME-3 _v____ ___v____ ________ | | | | | | | MEM |ME-1 | MEM | I2 | Email | |Client|<------->| Server |<---->| Server | |______| ME-2|________| |________| ^ |ME-5 | Figure 1: Basic OMA MEM logical architecture It identifies the following elements: Burger & Parsons Expires May 15, 2008 [Page 5] Internet-Draft LEMONADE architecture November 2007 o The MEM client which implements the client-side functionality of the OMA Mobile Email Enabler. It is also responsible for providing the mobile email user experience and interface to the user and storing the email and data to be sent to the MEM server when not connected. o The MEM server which implements the server-side functionality of the OMA Mobile Email Enabler (MEM). o The MEM protocol between the MEM Client and MEM Server. It is responsible for all the inband data exchanges that take place between the MEM client and server in order to update the MEM client with email server changes, the email server with changes in the MEM client and to send new email from the email server. o Other OMA enablers are needed to directly support the mobile email enabler. They are out of scope of IETF but they may include support for: * Client provisioning and management for over the air installation of the MEM client on the device, provisioning of its settings and revocation * Messaging enablers for outband notification, where outband notifications that are server to client event exchanges not transported by the MEM protocol but via other channels. OMA identifies different interfaces: o ME-1: MEM client interface to interact via the MEM protocol with the MEM server o ME-2: Corresponding interface of the MEM server o ME-3: Outband MEM server interfaces (e.g. to support generation of server to client notifications). o ME-4: Outband MEM client interfaces (e.g. to receive server to client notifications). o ME-5: Interface for management of MEM enabler server settings, user preferences and filters (globally and per account) The MEM server enables an email server. In a particular implementation, the email server may be packaged with (internal to it) the MEM server or be in a separate component. In such cases, interfaces to the email server are out of scope of the OMA MEM specifications. In the present document, we focus on the case where Burger & Parsons Expires May 15, 2008 [Page 6] Internet-Draft LEMONADE architecture November 2007 the backend consists of IETF IMAP and Submit servers. However, relationship to other cases are also discussed. The I2 interface is an OMA notation to designate protocol / interfaces that are not specified by the MEM enabler but may be standardized elsewhere. 2.2.2. OMA MEM Deployment Issues The OMA MEM Architecture document [2] further identifies deployment models. 2.2.2.1. OMA MEM proxy The OMA MEM Architecture document [2] identifies OMA MEM server proxies as server components that may be deployed ahead of firewalls to facilitate traversa of firewalls. 2.2.2.2. OMA MEM deployment cases OMA MEM identifies that each component (MEM client, MEM servers, Other enablers and email server) may be deployed in different domains, possibly separated by firewalls and other network intermediaries. MEM proxies may be involved in front of firewall that protects the MEM server domain. OMA MEM target support of configurations where: o All components are within a same domain (Mobile operator) o MEM client and other enablers are in the mobile operator domain, a MEM proxy is involved and MEM server and email server are in the domain of the email service provider o MEM client and other enablers as well as a MEM proxy are in the mobile operator domain, MEM server and email server are in the domain of the email service provider o MEM client and other enablers are in the mobile operator domain, a MEM proxy is in a third party service provider domain and MEM server and email server are in the domain of the email service provider o MEM client, other enabler and MEM server are in the mobile operator domain and email server is in the domain of the email service provider o MEM client and other enablers are in the mobile operator domain, MEM server is in a third party service provider domain and the email server is in the domain of the email service provider Burger & Parsons Expires May 15, 2008 [Page 7] Internet-Draft LEMONADE architecture November 2007 2.3. OMA MEM Technical Specification The OMA MEM activity will conclude with a specification for a mobile email enabler (MEM). The ongoing work is in OMA MEM Technical Specification [4]. LEMONADE is a basis for the mechanism, however, some additional details that are outside the scope of IETF will also be included. OMA provides ways to perform provisioning via OMA client provisioning and device management. Other provisioning specifications are available (e.g. SMS based). OMA provides enablers to support outband notifications: the outband notification mechanisms. Also, OMA XDM may be considered also for outband filter changes. . Burger & Parsons Expires May 15, 2008 [Page 8] Internet-Draft LEMONADE architecture November 2007 3. IETF LEMONADE Architecture This section gives a brief introduction to the LEMONADE Architecture. The IETF LEMONADE activity has derived a LEMONADE profile [5] with the logical architecture represented in Figure 2, where arrows indicate content flows. ______________ | | _________| Notification | | | Mechanism | | |______________| |Notif. ^ |Protocol | | ___|______ | | | _____ __v__ IMAP | LEMONADE | ESMTP | | | |<----------->| IMAP |<---------------| MTA | | MUA |- | Store | |_____| |_____| \ |__________| \ | \ |URLAUTH \SUBMIT | \ ____v_____ \ | | _____ \ | LEMONADE | ESMTP | | ---->| Submit |--------------->| MTA | | Server | |_____| |__________| Figure 2: LEMONADE logical architecture The LEMONADE profile [5] assumes: o IMAP protocol [7] including LEMONADE profile extensions [5] o SUBMIT protocol (SMTP [9], ...) including LEMONADE profile extensions o LEMONADE profile compliant IMAP store connected to MTA (Mail Transfer Agent) via ESMTP [8] o LEMONADE profile compliant Submit server connected to MTA via ESMTP o Lemonade profile message store / submit server protocols (URLAUTH) (see [5]). Burger & Parsons Expires May 15, 2008 [Page 9] Internet-Draft LEMONADE architecture November 2007 o Outband server to client notifications relying on external notification mechanisms (and notification protocols) that may be out of scope of the LEMONADE profile. o A LEMONADE aware MUA (Mail User Agent). While use of outband notification is described in the LEMONADE profile, support for the underlying notifications mechanisms/protocols is out of scope of the LEMONADE specifications. Further details on the IETF email protcol stack and architecture can be found in [16] 3.1. Relationship between the OMA MEM and LEMONADE logical architectures Figure 3 illustrates the mapping of the IETF LEMONADE logical architecture on the OMA MEM logical architecture. Burger & Parsons Expires May 15, 2008 [Page 10] Internet-Draft LEMONADE architecture November 2007 _____________________ | Other_Mob. Enablers | | |--------------| | _________| Notification | | | | | Mechanism | | | | |______________| | |Notif. |____________^________| |Protocol ______|__________ ME-4 | | ___|_ME-3_ | ___|____ | | | | _____ | __v__ | IMAP | | LEMONADE | | ESMTP | | || |<----------->| IMAP |<-----------| MTA | || MUA || ME-2a | | Store | | |_____| ||_____||\ME-1 | |__________| | | MEM | \ | | | | Client| \ | |URLAUTH | |_______| \SUBMIT | | \ | ____v_____ | \ | | | | _____ \ | | LEMONADE | | ESMTP | | ---->| Submit |----------->| MTA | ME-2b | | Server | | |_____| | |__________| | |MEM Email | |Server Server| |_________________| ^ |ME-5 | Figure 3: Mapping of LEMONADE logical architecture onto the OMA MEM logical architecture. As described in Section 3, the LEMONADE profile assumes LEMONADE profile compliant IMAP stores and Submit servers. Because the LEMONADE profile extends the IMAP store and the submit server, the mobile enablement of email provided by the LEMONADE profile is directly provided in these server. Mapped to OMA MEM logical architecture, for the case considered and specified by the LEMONADE profile, the MEM server and email server logically combined. They are however split into distinct LEMONADE message store and LEMONADE submit server. ME-2 consists of two interfaces ME-2a and ME-2b associated respectively to IMAP extended according to the LEMONADE profile and SUBMIT extended according to the LEMONADE profile. The MUA is part of the MEM client. External notifications mechanism can be part of the other OMA enabler Burger & Parsons Expires May 15, 2008 [Page 11] Internet-Draft LEMONADE architecture November 2007 specified by OMA (or other activities). 3.2. LEMONADE realization of OMA MEM with non-LEMONADE compliant servers The OMA MEM activity is not limited to enabling Lemonade compliant servers. It explicitly identifies the need to support other backends. 3.2.1. LEMONADE realization of OMA MEM with non-LEMONADE IMAP servers Figure 4 illustrates the case of IMAP servers that are not (yet) LEMONADE compliant. In such case, the I2 interface between the MEM server components and the IMAP store and submit server are IMAP and SUBMIT. ______________ | | _________| Notification | | | Mechanism | | |______________| |Notif. ^ |Protocol | | ___|______ _____________ | | LEMONADE | | | _____ __v__ IMAP | MEM | IMAP |NON-LEMONADE | ESMTP | | | |<--------->|Enabler |<------>|IMAP |<----->| MTA | | MUA |\ ME-2a | Server | |Store | |_____| |_____| \ |__________| |_____________| \ | \ |URLAUTH \SUBMIT | \ ____v_____ _____________ \ | | | | _____ \ | LEMONADE | SUBMIT |NON-LEMONADE | ESMTP | | -->| MEM | |Submit | | | | Enabler |------->|Server |------>| MTA | ME-2b | Server | | | |_____| |__________| |_____________| Figure 4: Architecture to support non-LEMONADE IMAP servers with a LEMONADE realization of OMA MEM enabler. Burger & Parsons Expires May 15, 2008 [Page 12] Internet-Draft LEMONADE architecture November 2007 3.2.2. LEMONADE realization of OMA MEM with non-IMAP servers Figure 5 illustrates the cases where the message store and submit servers are not IMAP store or submit servers. They may be POP3 servers or other proprietary message stores. ______________ | | _________| Notification | | | Mechanism | | |______________| |Notif. ^ |Protocol | | ___|______ _____________ | | LEMONADE | | | _____ __v__ IMAP | MEM | I2 |Proprietary | ESMTP | | | |<--------->|Enabler |<------>|Message |<----->| MTA | | MUA |\ ME-2a | Server | |Store | |_____| |_____| \ |__________| |_____________| \ | \ |URLAUTH \SUBMIT | \ ____v_____ _____________ \ | | | | _____ \ | LEMONADE | I2 |Proprietary | ESMTP | | -->| MEM | |Submit | | | | Enabler |------->|Server |------>| MTA | ME-2b | Server | | | |_____| |__________| |_____________| Figure 5: Architecture to support non-IMAP servers with a LEMONADE realization of OMA MEM enabler. I2 designates proprietary adapters to the backends. They may invoved functions performed in the message stores or submit server as well as in the MEM enabler server. Burger & Parsons Expires May 15, 2008 [Page 13] Internet-Draft LEMONADE architecture November 2007 4. Filters and server to client notifications and LEMONADE OMA MEM RD [3] and AD [2] emphasize the need to provide mechanisms for server to client notifications of email events and filtering. Figure 6 illustrates how notification and filterings are introduced in LEMONADE profile [5]. ______________ | | _________| Notification | | | Mechanism | | |______________| |Notif. ^ |Protocol -------\ _|_ | ______| ___\>|NF|____ | | | ---- | _____ __v__| IMAP |__ LEMONADE |___ ESMTP __| | | |<-------->|VF| IMAP |DF |<--------|AF| MTA | | MUA |\ ME-2a |-- Store |-^- --|_____| |_____| \ |_____________| | \_\_______________|_______| \ |URLAUTH \SUBMIT | \ ____v_____ \ | | _____ \ | LEMONADE | ESMTP | | ---->| Submit |--------------->| MTA | ME-2b | Server | |_____| |__________| Figure 6: Filtering mechanism defined in LEMONADE architecture In Figure 6, four categories of filters are defined: o AF: Administrative Filters - Set up by email service provider. AF are typically not configured by the user and set to apply policies content filtering, virus protection, spam filtering etc... o DF: Deposit Filters - Filters that are executed on deposit of new emails. They can be defined as SIEVE filters [10]. They can include vacation notices. o VF: View Filters - Filters that define which emails are visible to the MUA. View filters can be performed via IMAP using the facilities described in [6]. Burger & Parsons Expires May 15, 2008 [Page 14] Internet-Draft LEMONADE architecture November 2007 o NF: Notification Filters - Filters that define for what email server event an outband notification is sent to the client, as described in [6]. The filters are manageable from the MUA: o NF and DF: via SIEVE management protocol Burger & Parsons Expires May 15, 2008 [Page 15] Internet-Draft LEMONADE architecture November 2007 5. Notifications objectives According to these analyses, there is a need to support: # Mechanisms for event-based (server to client) synchronization: * Defines the relationship between notification mechanisms and the IMAP4 protocol - To minimize the latency observed for email events on the email server to be reflected in the email client. - To avoid unnecessary polling and requests from the e-mail clients: . To reduce the total amount of data to be exchanged between email server and client, e.g. by allowing the email client to select which messages to synchronize and how to synchronize. . To reduce the amount of transactions. * Needs to cope with possible lost or delayed notifications * Support in-band (within IMAP band) and out-band notifications (Exchanged via other servers / enablers). - Specified in ways that are network transport independent but may contain some bindings to particular notification channels (e.g. SMS binary, WAP Push, SIP Notification, ...) - When the email client is connected to the email server, only inband notifications is expected take place * Defines notification payload for inband and outband mechanisms. # Server-side filtering to decide which messages will be accessible by the email client. * Filtering results into the following logical types: - Type A: Messages filtered out and not accessible by the email client (no notification, no header access, no access) - Type B: Messages that are accessible by the mobile e-mail enabler client but no outband notification takes place. Inband notification might however take place if email client is already connected to email server. - Type C: Messages that are accessible by the e-mail client for which notifications (outband or inband) are always sent to the email client. # Notions of Filters: * View filters: Filters that determine which email messages are of type B and C or A * Notification filters: Filters that determine which email messages are of type C or B * Event filters: Filters that determines what events are to be notified to the client # Mechanisms to allow the user to update the filters from the email client # Mechanisms to allow configuration and exchange of settings between the client and the server in band or outband: - Server to client: e.g. server ID, account name, policies, ... - Client to server: e.g. rules filters vacation notices, notification channel, ... Burger & Parsons Expires May 15, 2008 [Page 16] Internet-Draft LEMONADE architecture November 2007 6. Security considerations This specification provides no security measures beyond those in the referenced Internet Mail and LEMONADE documents. We note however that there are security risks associated to: o Outband notifications o Server configuration by client o Client configuration by server o Presence of MEM proxy servers o Presence of MEM servers as intermediaries o Measures to addess the need to traverse firewalls Burger & Parsons Expires May 15, 2008 [Page 17] Internet-Draft LEMONADE architecture November 2007 7. IANA considerations No specific IANA considerations have been identified that are not covered by the different drafts and RFCs included in the realization described in this document. Burger & Parsons Expires May 15, 2008 [Page 18] Internet-Draft LEMONADE architecture November 2007 8. Version history Version 0: This document was extracted from sections of draft-ietf-lemonade-profile-bis-05.txt and draft-ietf-lemonade-notifications-04.txt. Burger & Parsons Expires May 15, 2008 [Page 19] Internet-Draft LEMONADE architecture November 2007 9. Acknowledgements The authors acknowledge and appreciate the work and comments of the IETF LEMONADE working group and the OMA MEM working group. Burger & Parsons Expires May 15, 2008 [Page 20] Internet-Draft LEMONADE architecture November 2007 10. References [1] Bradner, S., "Key words for use in RFCs to Indicate Requirements Levels", RFC 2119, BCP 14, March 1997. [2] "Mobile Email Architecture Document", OMA http://www.openmobilealliance.org/, June 2007. [3] "Mobile Email RequirementS Document", OMA http://www.openmobilealliance.org/, Oct 2005. [4] "Mobile Email Technical Specification", OMA (Work in Progress), http://www.openmobilealliance.org/, Oct 2007. [5] Maes, S. and A. Melnikov, "LEMONADE profile", RFC 4550. [6] Maes, S. and A. Melnikov, "LEMONADE profile bis", draft-ietf-lemonade-profile-bis-0x (work in progress). [7] Crispin, M., "IMAP4, Internet Message Access Protocol Version 4 rev1", RFC 3501, March 2003. [8] Klensin, J., "SMTP Service Extensions", RFC 1861, November 1995. [9] Klensin, J., "Simple Mail Transfer Protocol", RFC 2821, April 2001. [10] "SIEVE", Internet Draft draft-ietf-sieve-3028bis-12. [11] Leiba, B., "IMAP4 IDLE command", RFC 2177, June 1997. [12] Newman, C., "Internet Message Store Events", draft-newman-lemonade-msgevent-0x (work in progress). [13] "Open Mobile Alliance Email Notification Version 1.0", OMA http://www.openmobilealliance.org/, August 2002. [14] Maes, S. and et Al., "CONVERT", draft-ietf-lemonade-convert-0x (work in progress). [15] Melnikov, A. and et Al., "IMAP URL Scheme", draft-ietf-lemonade-rfc2192bis-0x (work in progress). [16] Crocker, D., "Internet Mail Architecture", draft-crocker-email-arch-0x (work in progress). [17] Melnikov, A. and et Al., "IMAP4 extension for quick reconnect", Burger & Parsons Expires May 15, 2008 [Page 21] Internet-Draft LEMONADE architecture November 2007 draft-ietf-lemonade-reconnect-0x (work in progress). Burger & Parsons Expires May 15, 2008 [Page 22] Internet-Draft LEMONADE architecture November 2007 Authors' Addresses Eric Burger BEA Systems, Inc. Boston, MA USA Phone: +1 781 993 7437 Email: eburger@bea.com Glenn Parsons Nortel Networks 3500 Carling Avenue Ottawa, ON K2H 8E9 Canada Phone: +1 613 763 7582 Email: gparsons@nortel.com Burger & Parsons Expires May 15, 2008 [Page 23] Internet-Draft LEMONADE architecture November 2007 Full Copyright Statement Copyright (C) The IETF Trust (2007). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Burger & Parsons Expires May 15, 2008 [Page 24]