LEMONADE Architecture - Supporting
OMA Mobile Email (MEM) using Internet MailNew HampshireUSA+1 530-267-7447eburger@standardstrack.comhttp://www.standardstrack.comNortel Networks3500 Carling AvenueOttawaONK2H 8E9Canada+1 613 763 7582gparsons@nortel.com
Applications
LEMONADE Working GroupThis 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 guideline for the
LEMONADE Profile.This document describes the architecture of OMA mobile email (MEM)
using Internet Mail protocols defined by the IETF. The LEMONADE work
group has enhanced many of these protocols for use in the mobile
environment and are summarized in the LEMONADE
profile and its revision LEMONADE
profile bis . This document shows how the OMA MEM Requirement document , OMA MEM Architecture , and OMA MEM Technical Specification relate to the
work of LEMONADE.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 has based much of our Internet
Mail enhancements based on their input. This section summarizes the
output of the OMA.The OMA MEM activity collected a set of use cases and derived
requirements for a mobile email enabler (MEM). The OMA MEM Requirements summarizes this work.
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.This section introduces the OMA MEM Architecture.The OMA MEM activity has derived a logical architecture from the
requirements and use cases described in . A simplification for illustrative purposes
is shown in , where
arrows indicate content flows. identifies the
following elements: The MEM client that 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.The MEM server that implements the server-side functionality
of the OMA Mobile Email Enabler (MEM).The MEM protocol between the MEM Client and MEM Server. It is
responsible for all the in-band 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.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 out-of-band notification, where
out-of-band notifications that are server to client event
exchanges not transported by the MEM protocol but via other
channels, andBilling, charging, and so on.OMA identifies different interfaces: ME-1: MEM client interface to interact via the MEM protocol
with the MEM serverME-2: Corresponding interface of the MEM serverME-3: Out-of-band MEM server interfaces, for example to
support generation of server to client notifications.ME-4: Out-of-band MEM client interfaces (e.g. to receive
server to client notifications).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 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
the backend consists of IETF IMAP and Submit servers. However, we
also discuss the relationship to other cases. The I2 interface is an
OMA notation to designate protocol / interfaces that are not
specified by the MEM enabler but may be standardized elsewhere.The OMA MEM Architecture document
further identifies deployment models.The OMA MEM Architecture document
identifies OMA MEM server proxies as server components
that may be deployed ahead of firewalls to facilitate firewall
traversal.OMA MEM identifies that each component (MEM client, MEM
servers, other enablers, and the 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 targets support of configurations where: All components are within the same domain, such as in a
mobile operatorMEM client and other enablers are in the mobile operator
domain, there is a MEM proxy, and the MEM server and email
server are in the domain of the email service providerMEM 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 providerMEM 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 providerMEM client, other enabler and MEM server are in the mobile
operator domain and email server is in the domain of the email
service providerMEM 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
providerThe e-mail service provider can be either a third-party service
provider, a network service provider, or an enterprise e-mail
service.The OMA MEM activity will conclude with a specification for a
mobile email enabler (MEM). The ongoing work is in OMA MEM Technical Specification . 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 out-of-band notification
mechanisms, as well as filter specifications (such as XDM), remote
device deactivation, and other, non-Internet activities.This section introduces the LEMONADE Architecture.The IETF LEMONADE activity has derived a LEMONADE profile with the logical
architecture represented in , where arrows indicate
content flows.The LEMONADE profile assumes: IMAP protocol including LEMONADE profile extensionsSUBMIT protocol, including LEMONADE
profile extensionsLEMONADE profile compliant IMAP store connected to MTA (Mail
Transfer Agent) via ESMTPLEMONADE profile compliant Submit server connected to an MTA,
often via ESMTPOut-of-band server to client notifications relying on external
notification mechanisms (and notification protocols) that may be out
of scope of the LEMONADE profile.A LEMONADE aware MUA (Mail User Agent). While use of out-of-band
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 protocol stack and architecture can
be found in
illustrates the mapping of the IETF LEMONADE logical architecture on
the OMA MEM logical architecture.As described in , 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 servers. Mapping to the OMA MEM
logical architecture, for the case considered and specified by the
LEMONADE profile, we logically combine the MEM server and email
server. However, in lemonade we split them logically into a distinct
LEMONADE message store and a LEMONADE submit server. ME-2 consists of
two interfaces. ME-2a is IMAP extended according to the LEMONADE
profile. ME-2b is SUBMIT extended according to the LEMONADE
profile.The MUA is part of the MEM client.The external notifications mechanism is part of OMA enablers
specified by the OMA.The OMA MEM activity is not limited to enabling Lemonade compliant
servers. It explicitly identifies the need to support other back-ends.
This is, of course, outside the scope of the IETF Lemonade
activity.
illustrates the case of IMAP servers that are not LEMONADE
compliant. In such case, the I2 interface between the MEM server
components and the IMAP store and submit server are IMAP and SUBMIT
without Lemonade extensions.
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.I2 designates proprietary adapters to the back-ends.OMA MEM RD and AD emphasize the need to provide mechanisms for
server to client notifications of email events and filtering. illustrates how
notification and filtering works in the LEMONADE
profile.In , we
define four categories of filters: AF: Administrative Filters - The e-mail service provider usually
sets administrative filters. The user typically does not configure
AF. AF applies policies covering content filtering, virus
protection, spam filtering, etc.DF: Deposit Filters - Filters that are executed on deposit of new
emails. They can be defined as SIEVE
filters. They can include vacation
notices.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 .NF: Notification Filters - Filters that define for what email
server event an out-of-band notification is sent to the client, as
described in .The MUA can manage the NF and DF filters using the SIEVE management protocol.We note there are security risks associated with:Out-of-band notificationsServer configuration by clientClient configuration by serverPresence of MEM proxy serversPresence of MEM servers as intermediariesMeasures to address the need to traverse firewallsWe refer the reader to the relevant Internet Mail, IMAP, SUBMIT, and
Lemonade documents for how we address these issues.None.The authors acknowledge and appreciate the work and comments of the
IETF LEMONADE working group and the OMA MEM working group. We extracted
the contents of this document from sections of
draft-ietf-lemonade-profile-bis-05.txt by Stephane Maes, Alexey Melnikov
and Dave Cridland, as well as sections of
draft-ietf-lemonade-notifications-04.txt by Stephane Maes and Ray
Cromwell.Mobile Email Architecture DocumentOpen Mobile AllianceMobile Email Requirements DocumentOpen Mobile AllianceMobile Email Technical SpecificationOpen Mobile AllianceInternet Email to Support Diverse Service Environments
(Lemonade) ProfileThis document describes a profile (a set of required
extensions, restrictions, and usage modes) of the IMAP and mail
submission protocols. This profile allows clients (especially
those that are constrained in memory, bandwidth, processing power,
or other areas) to efficiently use IMAP and Submission to access
and submit mail. This includes the ability to forward received
mail without needing to download and upload the mail, to optimize
submission, and to efficiently resynchronize in case of loss of
connectivity with the server.</t><t> The Internet
Email to Support Diverse Service Environments (Lemonade) profile
relies upon extensions to IMAP and Mail Submission protocols;
specifically, the URLAUTH and CATENATE IMAP protocol (RFC 3501)
extensions and the BURL extension to the SUBMIT protocol (RFC
4409). [STANDARDS TRACK]The Lemonade ProfileThis document describes a profile (a set of required
extensions, restrictions and usage modes) of the IMAP and mail
submission protocols. This profile allows clients (especially
those that are constrained in memory, bandwidth, processing power,
or other areas) to efficiently use IMAP and Submission to access
and submit mail. This includes the ability to forward received
mail without needing to download and upload the mail, to optimize
submission and to efficiently resynchronize in case of loss of
connectivity with the server. The Lemonade profile relies upon
several extensions to IMAP and Mail Submission protocols.INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1The Internet Message Access Protocol, Version 4rev1 (IMAP4rev1)
allows a client to access and manipulate electronic mail messages
on a server. IMAP4rev1 permits manipulation of mailboxes (remote
message folders) in a way that is functionally equivalent to local
folders. IMAP4rev1 also provides the capability for an offline
client to resynchronize with the server. IMAP4rev1 includes
operations for creating, deleting, and renaming mailboxes,
checking for new messages, permanently removing messages, setting
and clearing flags, RFC 2822 and RFC 2045 parsing, searching, and
selective fetching of message attributes, texts, and portions
thereof. Messages in IMAP4rev1 are accessed by the use of numbers.
These numbers are either message sequence numbers or unique
identifiers. IMAP4rev1 supports a single server. A mechanism for
accessing configuration information to support multiple IMAP4rev1
servers is discussed in RFC 2244. IMAP4rev1 does not specify a
means of posting mail; this function is handled by a mail transfer
protocol such as RFC 2821. [STANDARDS TRACK]Simple Mail Transfer ProtocolThis document is a self-contained specification of the basic
protocol for the Internet electronic mail transport. [STANDARDS
TRACK]Message Submission for MailThis memo splits message submission from message relay,
allowing each service to operate according to its own rules (for
security, policy, etc.), and specifies what actions are to be
taken by a submission server.</t><t> Message relay and
final delivery are unaffected, and continue to use SMTP over port
25.</t><t> When conforming to this document, message
submission uses the protocol specified here, normally over port
587.</t><t> This separation of function offers a
number of benefits, including the ability to apply specific
security or policy requirements. [STANDARDS TRACK]Sieve Email Filtering: Vacation ExtensionThis document describes an extension to the Sieve email
filtering language for an autoresponder similar to that of the
Unix "vacation" command for replying to messages. Various safety
features are included to prevent problems such as message loops.
[STANDARDS TRACK]Seive: An Email Filtering LanguageLemonade Notifications ArchitectureThis document discusses how to provide notification and
filtering mechanisms to mail stores to meet Lemonade goals. This
document also discusses the use of server to server notifications,
and how server to server notifications fit into an architecture
which provides server to client notifications. Gellens [page 1]
Expires January 2009 Internet Draft Lemonade Notifications
Architecture July 2008Internet Mail ArchitectureOver its thirty-five year history Internet Mail has undergone
significant changes in scale and complexity, as it has become a
global infrastructure service. The first standardized architecture
for networked email specified little more than a simple split
between the user world and the transmission world. Core aspects of
the service, such as the styles of mailbox address and basic
message format, have remained remarkably constant. However today's
Internet Mail is distinguished by many independent operators, many
different components for providing service to users and many
others for performing message transfer. Public discussion of the
service often lacks common terminology and a common frame of
reference for these components and their activities. Having a
common reference model and terminology facilitates discussion
about problems with the service, changes in policy, or enhancement
to the service's functionality. This document offers an enhanced
Internet Mail architecture that targets description of the
existing service, in order to facilitate clearer and more
efficient technical, operations and policy discussions about
email.A Protocol for Remotely Managing Sieve ScriptsSieve scripts allow users to filter incoming email. Message
stores are commonly sealed servers so users cannot log into them,
yet users must be able to update their scripts on them. This
document describes a protocol "ManageSieve" for securely managing
Sieve scripts on a remote server. This protocol allows a user to
have multiple scripts, and also alerts a user to syntactically
flawed scripts.