Copyright ©2000-2001 Mohsen Banan
Verbatim Copying Permitted. Permission is granted to make and
distribute verbatim copies of this document provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute translations of this document into another language, under the above conditions for verbatim copying, except that this permission notice must be stated in a translation approved by the Copyright holder. |
This document contains draft versions of articles intended for future inclusion in The LEAP Manifesto.
The LEAP Manifesto is a collection of articles which provide a comprehensive description of the LEAP protocols and their intended role in the development of the Mobile Messaging industry. Each article is largely self-contained, and can be read and understood independently of the others.
The LEAP Manifesto is a work in progress, and various additional articles are planned for future inclusion in the Manifesto. Some of these future articles already exist in draft form, and are provided in this document for preview by interested persons. At present, this document includes the following draft article:
This article is currently under development. As it and other articles are completed, they will be incorporated into the Manifesto.
The Draft Manifesto Articles are available in multiple formats, including HTML, PDF, PostScript, and plain text. You can view or download the drafts in any of these formats from the LEAP Forum website at http://www.leapforum.org/draft-leapManifesto/.
The latest version of the Manifesto is available on the LEAP Forum website at http://www.LeapForum.org/leap/index.html. The LEAP Manifesto is also available on the Free Protocols Foundation website at http://www.FreeProtocols.org/leap/index.html.
This is one of a series of articles that describes the implementation and integration issues involved in incorporating the LEAP protocols into particular PDA environments.
The starting point for incorporation of LEAP in PDAs consists of the Mobile Messaging application, and is based on the Efficient Mail Submission and Delivery (EMSD) protocol [1]. EMSD is the e-mail component of the LEAP family of protocols [2].
A complete description of how EMSD provides everything necessary to enable end-users to benefit from true end-to-end open mobile messaging based on patent-free protocols and open source and free software is provided in the article Operation Whiteberry [3]. The present article is part of the more general Operation WhiteBerry model. Before reading this article, the reader is strongly encouraged to read Operation Whiteberry so that he/she has a clear understanding of the general implementation framework.
It is our goal to make LEAP widespread on all PDAs. However, the incorporation of LEAP into each platform follows a particular approach and strategy. Each of the articles in this series outlines our strategy for a specific platform.
A standard mail application called Inbox is bundled with all Windows CE devices. Microsoft has defined a generic mail transport service provider interface underneath Inbox, which allows alternative mail submission and delivery protocols to be integrated with Inbox. Microsoft has also defined a winsock interface which provides access to UDP[14] and TCP[15] by third party applications. These well-defined APIs allow a new mail submission and delivery protocol to be integrated with Inbox in the Windows CE environment.
Our strategy for integration of EMSD in the Windows CE environment has been to provide a complete Mail Transport Service provider underneath Inbox. We have done so by providing EMSD binary distribution packages which end-users can quickly and easily plug in, allowing immediate implementation of the WhiteBerry model.
Additionally, the entire source code package for EMSD on Windows CE is available subject to the Gnu General Public License (GPL). The availability of this software package in source form allows tight integration with wireless modems, and other customizations/enhancements.
The existing open-source implementation is available at http://www.mailmeanywhere.org.
It is highly desirable that there exist complete open-source and free software platforms as alternatives to the commercial PDA platforms such as Windows CE and Palm OS.
At the present time two such open-source platforms are Linux Based PDAs and eCos. Recently there have been numerous announcements of new Embedded Linux support for PDAs and other handheld personal computing devices. Various suitable eCos platforms are also now in place.
See the article LEAP on Linux PDAs [4] for more details.
Palm OS is an effective, general purpose mobile computing platform which, among other applications, comes bundled with a simple e-mail application called Mail. In contrast to the Windows CE Inbox application, however, the standard Palm OS mail application has only a very rudimentary set of features and capabilities. Also in contrast to Windows CE, the Palm OS does not include a set of well defined APIs to facilitate the integration of alternative mail protocols.
To complicate matters further, various third party mail user agents have now become widely available for Palm OS (largely because of the limitations of the standard Palm OS mail application), with a variety of different user interfaces. Because of this multiplicity of incompatible Palm OS mail applications, each integration of LEAP with Palm OS must be specific to a particular Palm OS mail user agent.
For these reasons our strategy for integration of the EMSD protocol engine in the Palm OS environment is different from that for Windows CE.
We start with a very basic example implementation of EMSD for Palm OS. This example implementation is specific to the standard mail application, based on file access.
Based on the availability of this package in source form, subject to the Gnu General Public License, a variety of Palm mail user agents can become EMSD-enabled very rapidly. To accomodate this further we have selected certain mail user agents which we consider particularly desirable, and we will participate in the integration of EMSD with these mail user agents.
There are two basic alternative approaches to developing an e-mail application in the Palm OS environment. These are:
Our goal in this article is to accommodate incorporation of EMSD as a Mail Transport Service provider in both models.
In the separate mail user interface and mail transport service model, the application is split into two parts. One part is responsible for transferring the mail message, while the other part is responsible for processing and displaying the message.
An example of this approach is the standard Palm Mail application. The basic distribution of Palm OS lacks mail transport services such as SMTP[16], POP[12], or IMAP[7]. It normally depends on its desktop synchronization capabilities to accomplish the actual sending and receiving. Messages written by the user are put into a queue; then upon synchronization with the desktop, the desktop counterpart sends the queued messages and also retrieves received messages.
However there are add-on packages, such as Top Gun Postman [8] that provide SMTP and POP/IMAP support within the Palm OS device. This enables users of the standard Mail application to send and receive messages directly from their devices via a wireless modem.
Incorporation of EMSD into packages such as Top Gun Postman can be rapidly accomplished as an add-on or replacement for SMTP/POP/IMAP. Figure 2.1 shows the components involved as well as the layering of services in this model.
For example, the incorporation of EMSD support with Top Gun Postman can be very quick and easy because of the availaibility of EMSD protocol engines as a Palm OS library.
In the integrated mail user interface and mail transport service model, the application is entirely self-contained.
There are numerous examples of this approach, since it offers greater convenience of operation and usage in the Palm OS environment. In particular MsgAgent [13] and DoodleMail [17] are very popular clients.
Figure 2.2 shows the components involved and the layering of services.
For example, the incorporation of EMSD support with MsgAgent can be very quick and easy because of the availaibility of EMSD protocol engines as a Palm OS library.
As described in Operation WhiteBerry, the incorporation of EMSD in Palm OS mail packages presents enormous benefits.
We invite the developers of Palm OS mail application packages to incorporate EMSD into their software. EMSD protocol engines ready for the Palm OS environment are readily available, and can be easily integrated with your software. Complete implementations of EMSD in open-source form are available at http://www.mailmeanywhere.org.
This is one of a series of articles that describes the implementation and integration issues involved in incorporating the LEAP protocols into particular PDA environments.
The starting point for incorporation of LEAP in PDAs consists of the Mobile Messaging application, and is based on the Efficient Mail Submission and Delivery (EMSD) protocol [1]. EMSD is the e-mail component of the LEAP family of protocols [2].
A complete description of how EMSD provides everything necessary to enable end-users to benefit from true end-to-end open mobile messaging based on patent-free protocols and open source and free software is provided in the article Operation Whiteberry [3]. The present article is part of the more general Operation WhiteBerry model. Before reading this article, the reader is strongly encouraged to read Operation Whiteberry so that he/she has a clear understanding of the general implementation framework.
It is our goal to make LEAP widespread on all PDAs. However, the incorporation of LEAP into each platform follows a particular approach and strategy. Each of the articles in this series outlines our strategy for a specific platform.
A standard mail application called Inbox is bundled with all Windows CE devices. Microsoft has defined a generic mail transport service provider interface underneath Inbox, which allows alternative mail submission and delivery protocols to be integrated with Inbox. Microsoft has also defined a winsock interface which provides access to UDP[14] and TCP[15] by third party applications. These well-defined APIs allow a new mail submission and delivery protocol to be integrated with Inbox in the Windows CE environment.
Our strategy for integration of EMSD in the Windows CE environment has been to provide a complete Mail Transport Service provider underneath Inbox. We have done so by providing EMSD binary distribution packages which end-users can quickly and easily plug in, allowing immediate implementation of the WhiteBerry model.
Additionally, the entire source code package for EMSD on Windows CE is available subject to the Gnu General Public License (GPL). The availability of this software package in source form allows tight integration with wireless modems, and other customizations/enhancements.
The existing open-source implementation is available at http://www.mailmeanywhere.org.
See the article EMSD on Windows CE [9] for more details.
Palm OS is an effective, general purpose mobile computing platform which, among other applications, comes bundled with a simple e-mail application called Mail. In contrast to the Windows CE Inbox application, however, the standard Palm OS mail application has only a very rudimentary set of features and capabilities. Also in contrast to Windows CE, the Palm OS does not include a set of well defined APIs to facilitate the integration of alternative mail protocols.
To complicate matters further, various third party mail user agents have now become widely available for Palm OS (largely because of the inadequacy of the standard Palm OS mail application), with a variety of different user interfaces. Because of this multiplicity of incompatible Palm OS mail applications, each integration of LEAP with Palm OS must be specific to a particular Palm OS mail user agent.
For these reasons our strategy for integration of the EMSD protocol engine in the Palm OS environment is different from that for Windows CE.
We start with a very basic example implementation of EMSD for Palm OS. This example implementation is specific to the standard mail application, based on file access.
Based on the availability of this package in source form, subject to the Gnu General Public License, a variety of Palm mail user agents can become EMSD-enabled very rapidly. To accomodate this further we have selected certain mail user agents which we consider particularly desirable, and we will participate in the integration of EMSD with these mail user agents.
See the article LEAP on Palm OS [5] for more details.
Reference implementations of the LEAP protocols are available as open-source and free software, subject to the Gnu General Public License (GPL).
It is highly desirable for there to exist useful and complete open-source and free software platforms as alternatives to the commercial PDA platforms such as Windows CE and Palm OS.
At the present time two such open-source platforms are of particular importance. These are:
Our goal in this article is to accommodate the incorporation of the LEAP protocols, in particular EMSD as a Mail Transport Service provider, on both of the above platforms.
Recently there have been numerous announcements of new Embedded Linux support for PDAs and other handheld personal computing devices.
Such development efforts can benefit from efficient protocols which are specifically oriented towards the needs of miniaturized devices and mobile applications. As we have previously argued in the articles The WAP Trap [11] and WAP Scraps [6], the integration of pseudo-open protocols such as WAP with Embedded Linux is the wrong strategy. We are offering LEAP as an alternative [10].
Given the rapid emergence of Embedded Linux as a major third alternative to Palm OS and Microsoft Windows CE for handheld personal computing devices, we view the integration of LEAP with Embedded Linux as having special importance.
For a frequently updated overview of available and developing Linux-based PDA support, visit The Linux-PDA and PDA-Linux Quick Reference Guide at http://www.linuxdevices.com/articles/AT8728350077.html.
Because LEAP implementations on Linux and other Unix platforms are already in place, the incorporation of LEAP into Linux-based PDAs is simply a matter of portation.
The integration of EMSD as a Mail Transport Service provider with open-source Mail User Agents is often quite rapid. For example Pine, and GNUS and VM from Emacs, are major user agents for which EMSD integrations have already been completed.
The work of putting ESRO in kernel space, and providing a socket-based interface to ESRO, is currently in progress.
We consider the full and optimized integration of LEAP with Linux to be a strategic goal. We will continue to improve the quality of existing integrations, and the range of platforms for which LEAP and Linux support is provided.
eCos is an open-source embedded operating system which is well in tune with the open-source and Linux software development framework. For more information (including source code), see http://sourceware.cygnus.com/ecos
Close integration of LEAP with eCos is highly desirable, because LEAP provides key applications that can greatly increase the utility and value of eCos. Note that on its own, eCos is just an operating system. But in combination with LEAP, eCos can provide Mobile Messaging and other powerful applications.
We intend to integrate LEAP with eCos in the context of a specific embedded hardware platform specifically, the cell phone hardware platform. A cell phone platform running eCos and LEAP is extremely desirable.
If any such development effort is already underway, we would be pleased to hear about it. We will do all we can to cooperate in the creation of cell-phone-based open-source mobile applications and platforms. Please contact us at the e-mail address shown on the article title page.
As described in Operation WhiteBerry, the incorporation of EMSD in open-source PDA platforms presents enormous benefits.
We invite the developers of open-source PDA platforms to incorporate EMSD into their software. EMSD protocol engines ready for the Linux environment are readily available, and can be easily integrated with your software. Complete implementations of EMSD in open-source form are available at http://www.mailmeanywhere.org.
[1] M. Banan. Nedas Efficient Mail Submission and Delivery (EMSD) Protocol Specification Version 1.3. Request for Comments (Informational) 2524, Neda Communications, Inc., February 1999. Online document is available at ftp://ftp.isi.edu/in-notes/rfc2524.txt.
[2] Mohsen Banan. EMSD: The LEAP E-mail Component. A component of LEAP Manifesto, LEAP Forum, January 2000. Online document is available at http://www.LEAPForum.org/leap.
[3] Mohsen Banan. Operation WhiteBerry. A component of LEAP Manifesto, LEAP Forum, January 2000. Online document is available at http://www.LEAPForum.org/operationWhiteberry/index.html.
[4] Mohsen Banan. LEAP on Linux PDAs. A component of LEAP Manifesto, LEAP Forum, September 2001. Online document is available at http://www.LEAPForum.org/draft-leapManifesto.
[5] Mohsen Banan. LEAP on Palm OS. A component of LEAP Manifesto, LEAP Forum, September 2001. Online document is available at http://www.LEAPForum.org/leap.
[6] Mohsen Banan. WAP Scraps. A component of LEAP Manifesto, LEAP Forum, August 2001. Online document is available at http://www.LEAPForum.org/leap.
[7] M. Crispin. Internet message access protocol - version 4rev1. Request for Comments (Proposed Standard) 2060, Internet Engineering Task Force, December 1996. (Obsoletes RFC1730).
[8] Ian Goldberg and Steve Gribble. Top gun postman. Top Gun Postman is a POP3/APOP3 and SMTP capable mail dispatcher that runs on the Palm Pilot Professional. To download this software, visit http://www.palmgear.com.
[9] Mohsen Banan. EMSD on Windows CE. Neda Published Document 103-101-01.02, EMSD Organization, 1998. Online document is available at http://www.emsd.org/pubs/biblio/103-101-01-02/index.html.
[10] Mohsen Banan. LEAP: One Alternative to WAP. A component of LEAP Manifesto 108-102-02, LEAP Forum, Bellevue, WA, February 2000. Online document is available at http://www.freeprotocols.org/pubs/biblio/108-102-02/index.html.
[11] Mohsen Banan. The WAP Trap. FPF Published Document 108-102-01, Free Protocols Foundation, Bellevue, WA, January 2000. Online document is available at http://www.freeprotocols.org/wapTrap.
[12] J. Myers and M. Rose. Post office protocol - version 3. Request for Comments (Standard) STD 53, 1939, Internet Engineering Task Force, May 1996. (Obsoletes RFC1725).
[13] Hiroyuki Okamoto. Msgagent. MsgAgent is an internet messaging client for PalmOS. To download this software, visit http://members.tripod.com/ hokamoto/MsgAgent.html.
[14] J. Postel. User datagram protocol. Request for Comments (Standard) STD 6, 768, Internet Engineering Task Force, August 1980.
[15] J. Postel. Transmission control protocol. Request for Comments (Standard) STD 7, 793, Internet Engineering Task Force, September 1981. (Obsoletes RFC761).
[16] J. Postel. Simple mail transfer protocol. Request for Comments (Standard) STD 10, 821, Internet Engineering Task Force, August 1982. (Obsoletes RFC788).
[17] AT&T Labs Research. Doodlemail. DoodleMail is an email program for the Palm personal digital assistant with Internet connectivity. To download this software, visit http://www.research.att.com/ hpk/doodlemail/.