LEAP on Linux PDAs Mohsen Banan public@mohsen.banan.1.byname.net Version 0.2 August 4, 2000 Copyright fcl 2000 Mohsen Banan Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. A Component of The LEAP Manifesto This article is one of a series of articles describing various aspects of the Mobile Messaging industry and the LEAP protocols. For the complete collection of articles see The LEAP Manifesto [5 ], available at http://www.LeapForum.org/LEAP/Manifesto/roadMap/index.html. The LEAP Manifesto is also available at the Free Proto- cols Foundation website at http://www.FreeProtocols.org/LEAP/Manifesto/roadMap/index.html. 1 Contents 1 Summary 3 2 About This Document 4 3 Background 4 3.1 Components involved . . . . . . . . . . . 4 3.1.1 Wireless Network . . . . . . . . . 4 3.1.2 EMSD . . . . . . . . . . . . . . 4 3.1.3 Palm OS . . . . . . . . . . . . . 5 3.1.4 Messaging protocols . . . . . . . 5 4 CDPD, EMSD and PalmOS: High level archi- tecture 6 4.1 EMSD and PalmOS Messaging . . . . . . 6 4.1.1 Integration with Existing E-Mail Applications . . . . . . . . . . . 7 4.1.2 Current Integration Status . . . . 7 4.2 PalmOS and CDPD Modem integration . 8 4.3 EMSD Message Transfer Service and back end mailbox issues . . . . . . . . . . . . 9 5 End User Experience 10 5.1 Assumptions . . . . . . . . . . . . . . . 10 5.2 Acquisition . . . . . . . . . . . . . . . . 10 5.3 Installation . . . . . . . . . . . . . . . . * * 10 6 Conclusions 10 List of Tables 1 Messaging Protocols vs. Supported Func- tions . . . . . . . . . . . . . . . . . . . .* * 6 2 1 Summary Linux on PDAs is great, general purpose mobile com- puting platform which, among other applications, comes bundled with a simple email application called Mail. CDPD, the premier wireless, mobile network with full Internet connectivity has reached critical mass with its large scale deployment and CDPD wireless modems becoming available in ever-shrinking form factors with improving power consumption and other characteristics. A number of CDPD wireless modems are available for use with PalmOS devices. Interpersonal messaging is the most important and proven value proposition of the wireless medium. Exist- ing Internet e-mail protocols have built-in assumptions, which makes them sub-optimal for use over wireless net- works. The EMSD protocol fills this gap, allowing fully open, extensible (MIME) Internet e-mail connectivity over wireless networks. The advantages of EMSD over exist- ing email protocols are described in Operation Whiteberry[1 ]. Given that the fundamental components outlined above (Palm OS, CDPD, EMSD) are real products and tech- nologies, integrating them to create an end-user product is within reach. If the integration is performed properly, the availability of wireless E-mail capability can become straight forward for the end users of this system. Any Palm Pilot user can purchase a "mobile e-mail kit", which includes a CDPD modem, CDPD account ac- tivation and the necessary software add-ons to add the EMSD capability to the palmtop. In fact, there are several channel models which can be used to deliver the wireless messaging capability to the end user, so forming a "mo- bile e-mail kit" is just one of them. This paper focuses on the technical issues of the inte- gration effort at hand as opposed to marketing and chan- nels issues. A WinCE based EMSD/CDPD wireless mes- saging solution, when coupled with the back-end EMSD Message Transfer Agent (MTA) offers a strong value propo- sition with minimal infrastructure. The EMSD MTA can be running at a central server at the CDPD Network Oper- ator site (example mail address: john.doe@emsd.cdpdProvider.net) or as a Customer Premise Equipment (CPE) at the Inter- net ISP or IS Department of an Organization (example mail address: john.doe@emsd.boeing.com). 3 2 About This Document This paper is available in many formats. You may wish to obtain a copy of this document in a more appropriate format before proceeding further. This paper is one of a series of white papers that in- troduces the "world" of Efficient Mail Submission & De- livery (EMSD). If you are not familiar with EMSD General, you may wish to read the "Introduction to EMSD - White Paper" [4 ]. 3 Background 3.1 Components involved 3.1.1 Wireless Network In the context of this paper, any wireless, IP based net- work. Several networks such as the pACT network un- der development by AT&T Wireless Services, as well as the widely deployed CDPD network fit this description. Also applicable are a number of other proprietary wire- less networks which expose an IP interface, such as Ric- ochet wireless IP network from Metricom, Inc. CDPD is a wireless, mobile two-way data network offering coverage footprint equivalent to cellular voice in many markets. CDPD exposes an IP interface and a fixed, "real" IP address to each subscriber node (End System) as assigned by the CDPD Network Service Provider at the time of end user provisioning. CDPD mobile nodes enjoy full mobile connectivity using the same IP address throughout the entire CDPD national coverage area due to inherent support of mobility built into CDPD. 3.1.2 EMSD EMSD is an open, extensible and efficient message sub- mission and delivery protocol designed specifically for the wireless network. It minimizes the network traffic required to send and receive messages, thus producing a messaging protocol that meets the needs of the mo- bile communicator. Fewer and smaller packets means ex- tended battery life, efficient use of carrier bandwidth and support for marginal coverage areas. EMSD is an open specification that is an extension of the existing messag- ing world. 4 EMSD is up to 5 times more efficient than SMTP both in terms of the number of packets transmitted and in terms of number of bytes transmitted (see Efficiency Study of EMSD vs. SMTP/POP3/IMAP (PDF <61 KB)> (Postscript <165 KB>) EMSD protocols are openly available through online RFC Library (ftp://ftp.isi.edu/in-notes/rfc2524.txt) As with other open standards like SMTP, POP, etc., multiple implementations of EMSD are available and var- ious development tools and products are emerging. Being the premier developer of the EMSD Protocols and Imple- mentations, Neda Communications, Inc. offers several products for the mobile device manufacturers, network operators and corporate IS organizations. 3.1.3 Palm OS PalmOS is an open, scalable operating system platform for a broad range of communications, entertainment and mobile-computing devices. Unlike previous PDA offer- ings from various vendors, PalmOS enjoys multiple im- plementations from various hardware vendors, a rich de- velopment environment, which leverages the large com- munity of palm developers, and a core set of built-in Palm applications. These built-in Palm applications make Pal- mOS useful from the get-go not as a stand-alone PDA but as an extension of the office environment. The built-in applications come in two categories: 1. Personal Productivity Apps: These include the com- pact yet capable "Pocket Word", "Pocket Excel" and the Calendar/Contact/Task manager apps. 2. Communications/Networking Apps: These include the capable "Pocket Internet Explorer" and the ex- tensible "Inbox" e-mail front end. All of these applications combine to provide an envi- ronment which feels "intuitive" for Windows9x and NT4.x users. 3.1.4 Messaging protocols Various Internet Messaging Protocols are mentioned through- out this paper. Although all are used for messaging pur- poses, functions supported by these protocols do not nec- essarily match but in many cases complement each other. Given that these protocols came about in an evolutionary 5 _ _ ___ ___ ____ _____ _____ ______ _______ _______ ________ ________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _________ _____________ _____________ __________ ____________ _______Functions_Protocols__________SMTP_______ IMAP _____ POP _____ EMSD* * _____ ______ _______Submission______ _____XXX _____ _____ _____XX* *X _____ _______Delivery______ _____XXX _____ _____ _____XX* *X _____ _______Relay____ _____XXX _____ _____ _____ * * _____ _______Retrieval___ _____ _____XXX _____XXX _____ XX* * _____ _______Mailbox_Access _____ _____XXX _____ X _____ * * _____ ______ Mailbox Sync. _____ _____XXX _____ _____ * * _____ Table 1: Messaging Protocols vs. Supported Functions fashion over time, this makes sense. The following table illustrates this point. In Table 1, the number of "X"es in each box denote to what extent a particular function is supported by a par- ticular protocol. It is important to note that the scope of EMSD proto- cols was deliberately limited to the primary requirement for mobile messaging which is: "submission and delivery of time critical important messages". EMSD is designed to complement existing mailbox access protocols such as IMAP. Although there are proprietary implementations of mes- saging protocols offered by various vendor over various wireless networks, EMSD is the only open efficient mes- saging protocol available. The openness of EMSD is a key attribute to help expand the wireless messaging, just as SMTP and POP helped to establish and expand the (now large) Internet E-mail industry years ago. 4 CDPD, EMSD and PalmOS: High level architecture 4.1 EMSD and PalmOS Messaging There are two different approaches to developing an email application in PalmOS. One is the application is split into two parts, one part in the PalmOS device and the other part is on a desktop machine. The part on the desktop ma- chine performs the actual sending and receiving of email, and the part on the PalmOS device simply synchronises the data with the desktop machine. The other approach is the application completely re- sides within the PalmOS device. The application per- forms the sending and receiving of the messages through the modem connected to the device. Such approach al- 6 lows user to send and receive messages from any place they happen to be. An example of the first approach is the standard Mail application. The software installed in the PalmOS device lacks SMTP or POP3 supports. It depends on its desk- top counterpart to do the actual sending and receiving. Messages written by the user is put into a queue. Upon synchronising with the desktop, the desktop counterpart sends the queued messages and also put received mes- sages into the queue. However there are some works, such as "Top Gun Postman"[3 ] that provides SMTP and POP3 supports within the PalmOS device for these softwares. This enables users of the standard Mail application to send and receive di- rectly from their devices. Examples of the second approach are numerous as they affords the highest mobile flexibility. In particu- lar, "MsgAgent"[6 ] and "DoodleMail"[7 ] are very pop- ular clients. EMSD is layered on top of UDP datagram service offered by the PalmOS' IP stack and as such, is oblivi- ous to the how the IP connectivity is achieved. In other words, whether a direct serial link, a wireline modem or a CDPD modem is used is transparent to the EMSD layer. In fact, much of EMSD development and testing is done over LAN and direct serial links by simply adjusting a few tunable parameters. 4.1.1 Integration with Existing E-Mail Applications Due to the numerous number of email applications avail- able for PalmOS, we are taking a different approach to integrate EMSD to these applications than what we did in WindowsCE case. We encouraged the developers of the applications to integrate the EMSD technology into their softwares. Due to similarities and familiarities of previous protocols, the developers were able to integrate the EMSD technology within a short period of time. 4.1.2 Current Integration Status As of the time of writing, the developers of "Top Gun Postman", "MsgAgent", and "DoodleMail" have success- fully integrated the EMSD technology into their softwares. In addition, we are currently in the process of supporting a number of other developers to make the transition to the EMSD technology. 7 +---------------------+ +---------------------+ _ Standard Mail _ _ MsgAgent _ _ Application _ _ * * _ +---------------------+ _ _ +---------------------+ _ _ _ Message Queue _ _ * * _ +---------------------+ _ _ +---------------------+ _ _ _ Top Gun Postman _ _ _ _ _ _ * * _ _ +--------+ +------+ _ _ +--------+ +------+ _ _ _+------+_ _ _ _ _ _+------+_ _ _ _ _ __ EMSD __ _ SMTP _ _ _ __ EMSD __ _ SMTP _ _ _ _+------+_ _ and _ _ _ _+------+_ _ and _ _ _ _+------+_ _ POP3 _ _ _ _+------+_ _ POP3 _ _ _ __ ESRO __ _ _ _ _ __ ESRO __ _ _ _ _ _+------+_ _ _ _ _ _+------+_ _ _ _ _ +--------+ +------+ _ _ +--------+ +------+ _ +---------------------+ +---------------------+ ============================================================= Berkeley Socket API ============================================================= Figure 1: Integration of EMSD Technology with Existing E-Mail Application for PalmOS Figure 1 illustrates the components involved as well as the layering of services. In Figure 1, boxes drawn with "===" represent pub- lished interfaces within PalmOS. Each email application contains supports for EMSD. Email applications that do not support transferring messages from within the device is enhanced through another application, like depicted in Figure 2 between the Standard Mail Application and Top Gun Postman. For applications supporting SMTP and POP3 protocols, incorporations of support for the EMSD protocol is easy and fast because the EMSD library com- plement the existing SMTP and POP3 library within each application. 4.2 PalmOS and CDPD Modem integration PalmOS is capable of connecting to the Internet Service Provider using PPP or SLIP or CSLIP protocol. PalmOS does not distingush the medium of the connection. A CDPD modem works as well as wire-based connection 8 such as serial line or phone line. 4.3 EMSD Message Transfer Service and back end mailbox issues There are many scenarios in which EMSD can be used to provide messaging services, but for the purposes of this paper, we will consider only the scenario where the following are true: - Target end user already has an email mailbox. - The mailbox mentioned is accessible via POP3/SMTP - The end user would like to be able to access this mailbox via EMSD In all cases, the EMSD component on each mail ap- plications in the PalmOS communicates directly with an EMSD Message Transfer Agent (MTA) which functions as a gateway between EMSD and SMTP. In other words, messages exchanged between the PalmOS and the EMSD MTA are in the efficient EMSD format (in the airlink where EMSD's attributes are needed). The EMSD MTA handles translating EMSD format messages to the Inter- net format (RFC-822)[2 ] and sending them on, or trans- lating incoming Internet messages destined at the EMSD PalmOS node to EMSD format and handing them over using EMSD protocols. The EMSD MTA can reside anywhere on the Internet, including the CDPD service provider, at an ISP or as Cus- tomer Premise Equipment (CPE) at the customer site. Be- cause EMSD MTAs maintain their own subscriber base, all of the above schemes can be deployed simultaneously. For example, The Neda Customer Premise Message Cen- ter was designed as a CPE MTA. When a user is going mobile, s(he) can initiate for- warding of all or certain classes of messages (for example all URGENT messages) to the assigned EMSD address. A mailbox sorter scheme similar to the "Procmail" utility fits well into this model. If the system where the user's mailbox resides is EMSD- aware or is the node where the EMSD-MTA entity is running, then a variety of features can be included. An example would be setting up the attributes of EMSD for- warding on the fly and delivering a message to a user only once... All messages originated from the mobile PalmOS unit would simply be sent via EMSD to the EMSD-MTA with- out any secondary filter processing. Filter processing at 9 the user mailbox level is relevant only for delivery of messages coming from the Internet destined to the EMSD user. 5 End User Experience 5.1 Assumptions - User is already familiar with e-mail concepts - User has a mailbox on an Internet host, accessible via* * SMTP. - User has acquired a PalmOS device. 5.2 Acquisition - The same channel user purchased the PalmOS from has "CDPD Wireless e-mail kits". - Multiple kits can be set up by working with various CDPD modem manufacturers. - Each kit would include modem, CDPD activation info and the EMSD-compatible mail softwares. - Alternatively (or as an extra service) the CDPD ac- tivation info and the EMSD add-on software can be made available on-line over the Internet. 5.3 Installation 1. Activate the CDPD modem. 2. Verify CDPD network connectivity via the activated modem using provided program. 3. Install the EMSD Mail Service Provider 4. Verify the EMSD setup using provided program. 5. Start forwarding of urgent (or other mailbox filter criteria) messages to EMSD at the host maintaining the user's primary mailbox. 6. Use the EMSD-compatible mail software with the EMSD Mail Service Provider. 6 Conclusions Integrating true Internet e-mail connectivity to the Palm OS platform using EMSD over CDPD is very feasible and is a natural fit to the WinCE's "Companion" model. 10 References [1] 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. [2] D. Crocker. Standard for the format of ARPA in- ternet text messages. Request for Comments (Stan- dard) STD 11, 822, Internet Engineering Task Force, August 1982. (Obsoletes RFC733); (Updated by RFC987); (Updated by RFC1327). [3] Ian Goldberg and Steve Gribble. Top gun post- man. 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. [4] Mohsen Banan. Introduction to EMSD. Neda Published Document 103-101-01.03, EMSD Or- ganization, 1998. Online document is avail- able at http://www.emsd.org/pubs/biblio/103-101- 01-03/index.html. [5] Mohsen Banan. Lightweight & Efficient Applica- tion Protocol (LEAP) Manifesto. Technical Re- port 108-101-01, LEAP Forum, Bellevue, WA, January 2000. Online document is available at http://www.freeprotocols.org/pubs/biblio/108-101- 01/index.html. [6] Hiroyuki Okamoto. Msgagent. MsgA- gent is an internet messaging client for PalmOS. To download this software, visit http://members.tripod.com/ hokamoto/MsgAgent.html. [7] AT&T Labs Research. Doodlemail. Doo- dleMail is an email program for the Palm personal digital assistant with Internet con- nectivity. To download this software, visit http://www.research.att.com/ hpk/doodlemail/. 11