Application Framework for e-business: Pervasive computing Page 1 of 8
Application Framework for e-business: Pervasive computing Krishna Akella (akella@us.ibm.com) IBM Akio Yamashita (E07799@jp.ibm.com) IBM 01 November 1999 The IBM Application Framework for e-business allows a diverse set of devices to connect via open network standards to enterprise data and applications anytime and anywhere. Leading- edge technology is provided to enable mobile users to be as productive on the road as they are in the office. In this paper, you'll see how pervasive computing is the next evolutionary extension of the IBM Application Framework for e-business and its supporting products. Computing technologies are being embedded into various information appliances or devices ranging from personal digital assistants to mobile phones and home entertainment systems. The emergence of wireless networking has allowed such information appliances to become network connected. Pervasive computing enables enterprises, telephone service providers, Internet Service Providers (ISPs), and Application Service Providers (ASPs) to leverage all of their data assets regardless of disparate protocols, language, and formats. e-business content can now be delivered effectively, efficiently, and economically to anywhere, and to any device. developerWorks ibm.com/developerWorks/ Application Framework for e-business: Pervasive computing Page 2 of 8 Pervasive computing extends and enhances several layers of the Application Framework for e- business as illustrated by the check marks in the figure below. It enables people to access Web- based applications using a new class of intelligent and portable devices. It provides convenient access to relevant information stored on one seamlessly integrated system providing access to information from disparate, unrelated sources. Mobile e-business Today, professionals are conducting an increasing number of business activities outside traditional office settings, and the pervasive computing environment is large and growing rapidly: According to the McKenna Group, the pervasive computing market could be worth $120 billion in the next 3-5 years. According to a Forester Research interview, the Global 2,500 network managers report that about 23% of their user populations don't currently connect to the corporate network from a fixed location. They further expect that the number of mobile users will rise to 35% within two years -- an increase of 57%. International Data Corp. (IDC) expects 18.9 million handheld PC companions to be shipped worldwide in 2003, which will contribute to the 34.6% CAGR in the handheld market over the 1999 to 2003 period. Pervasive computing provides mobile professionals with the tools and services that allow them to access and interact with information (and services) and to work more efficiently with their customers, colleagues, and enterprises -- to leverage the value of e-business. Pervasive computing services support the growing number of nomadic computer users. The main objective is to provide mobile users with access to the data and applications they require to be productive. To do this effectively, several unique characteristics of the mobile environment must be addressed: Most mobile links are high latency, low bandwidth, unreliable connections, especially when compared to office networks. Disconnected operation is the rule, not the exception. Most roaming users use two or more devices to support their activities. The diversity of devices, networks, network connections, and operating systems negates a "one size fits all" solution. Remote and disconnected access makes mobile users more difficult to support and manage. Users must be able to access applications and data in a consistent and natural manner from multiple devices through various network connections. For example, calendar information must be consistent whether it is accessed from a LAN-attached laptop or a wireless smart phone. Due to the lower performance of wireless networks, typical mobile users operate in disconnected mode. Even when users are not connected to the network, they must be able to browse Web pages, read and respond to e-mail, and access calendar information and other groupware and desktop productivity applications. When roaming users do connect to the network, they must be ibm.com/developerWorks/ developerWorks Application Framework for e-business: Pervasive computing Page 3 of 8 able to access enterprise applications, synchronize their local data with the server, and receive updates from the network in an efficient manner. As part of the Framework, IBM has defined a complete set of pervasive computing services to satisfy the unique requirements of the mobile user. Mobile enhanced network services provide efficient, cost-effective, secure, and reliable communication support for mobile users enabling access to data and services. Transcoding services filter, enhance, convert, or reformat content to enable access to data by different devices, networks, and I/O mechanisms (such as speech). Disconnected services support operations -- such as caching, data synchronization, and asynchronous message queuing -- which give devices currently disconnected from the network access to data and applications. Pervasive device support enables a wide variety of devices and their unique characteristics. Systems management addresses the unique requirements of the mobile environment in the areas of software distribution, configuration management, availability, and inventory management. The IBM WebSphere Everyplace Suite is a comprehensive software platform that provides all of these key pervasive computing services in a single, integrated offering. Mobile enhanced network services The basic network protocol supported by pervasive enablement is TCP/IP. Several components of the Framework's network infrastructure provide unique pervasive support. Mobile enhancements to TCP/IP are being discussed within IETF and will provide improvements for management, security, and roaming capabilities for the mobile user. Enhancements supported by the Framework include DHCP and dynamic DNS updates, IPv6, IP security, and mobile IP support. Mobile access to the corporate intranet today requires either broad local modem pool coverage, or dialing directly to the corporate intranet via long-distance or toll-free numbers. Telephone charges and management of modem pools is expensive especially for smaller companies or those with widely dispersed users. Many enterprises would prefer to use the developerWorks ibm.com/developerWorks/ Application Framework for e-business: Pervasive computing Page 4 of 8 Internet rather than interconnecting islands of intranets. The Framework addresses this problem by supporting Virtual Private Networks (VPN), which provide a secure and cost- effective extension of a private intranet across the public Internet that enables a mobile user to reach the home corporate intranet. This support is accomplished via "tunneling" using authentication and encryption protocols, which are being developed and standardized within the IETF under the topic of IP security. Wireless Internet and intranet access, in addition to traditional analog telephone (POTS) or LAN connectivity, is supported by the Framework, because many customers are moving to wireless solutions as speeds improve, coverage increases, and costs decrease. Wireless solutions require a "gateway" for attachment of a diverse set of international wireless network technologies to the TCP/IP infrastructure. The gateway enables the optimized exchange of information across wireless and wire line networks using intelligent caching, protocol reduction, header reduction, and data compression. The Wireless Application Protocol (WAP) is the de-facto standard for the presentation and delivery of information and telephony services on mobile phones and other wireless devices. The Framework supports the WAP gateway, which converts Web session, security, and transport protocols to the corresponding WAP protocols, enabling WAP-capable devices to access applications and content hosted on public Web servers and corporate information systems. IBM SecureWay Wireless Gateway enables immediate, secure, and optimized mobile communications for customers, allowing them to access their existing TCP/IP applications unchanged across wireless and wired networks. Transcoding service Transcoding logic can be deployed as a proxy or network intermediary, as a servlet running in a Web application server, or as Javabeans. Therefore, transcoding can be invoked dynamically when Web pages are being generated or statically as part of a build time tool package. Several basic content transcoding mechanisms are supported: Filtering content to reduce the connection time and expense by discarding data that the device is incapable of using, or is unwilling to wait or pay for. For example, images can be ibm.com/developerWorks/ developerWorks Application Framework for e-business: Pervasive computing Page 5 of 8 discarded when they are destined for a device that can only display text. In addition, when a device is connected over a very slow link, the server may filter out all files above a certain size limit. Converting content to more quickly transfer and render on constrained devices. For example, image formats are scaled, colors are changed, and formats are converted (such as JPEG to GIF) to make images smaller. Other examples include text-to-speech and XML schema translations. Reformatting traditional enterprise data into Web formats. For example, a 3270 banking application can be extended to the Web to allow customers to check their account balances from a cell phone. IBM WebSphere Transcoding Publisher modifies content presented to users based on modality, device constraints, network constraints, user preferences, and organizational policies. Disconnected services To complement transcoding services, the Framework also enables users to be productive when they are disconnected from the network. In many cases, mobile users need to access the network only when they require data to be synchronized with the server. Disconnected services include both server-side and client-side infrastructure; this helps users transmit and receive information reliably when they establish a network connection. It also provides higher effective bandwidth by optimizing re-transmission of data on unreliable wireless networks. Services that support this disconnected mode of operation include: Caching of data and applications on devices. A typical use of caching is to pre-fetch Web pages for off-line browsing. The mobile user can refresh certain Web pages while connected and then browse those pages when disconnected. Replication and synchronization of data maintained on the device and the network server. The Framework supports a "mirroring" model in which the user specifies information to be automatically replicated and synchronized based on an update policy. Replication may be peer-based or server-based depending on the application and device capabilities. Server-based synchronization can eliminate the need for users of small handheld devices to maintain a complex desktop computer, because the network maintains the user's data. IBM's DB/2 Everyplace, Mobile Services for Domino, and IBM Mobile Connect support data synchronization between server and client, which allows mobile workers immediate, reliable access to critical corporate data. Message queuing, which supports asynchronous message delivery on both the mobile device and network server. When disconnected, work is queued on the client or server and can be selectively transmitted when an appropriate connection occurs. Message queuing facilities can range from heavy-duty, highly fault-tolerant systems to small queues implemented specifically for a single application. MQSeries Everyplace provides the ability to queue up messages and transfer them when a network connection is established. Proxies are one design model for supporting disconnected operations. Proxies typically intercept requests and act on them in a synchronous way. A proxy is ordinarily transparent to the user even though it may be active as part of the communication path between the application and the device. developerWorks ibm.com/developerWorks/ Application Framework for e-business: Pervasive computing Page 6 of 8 A typical use of proxies is to improve Web browser performance by batching requests, reducing protocol header size, and maintaining persistent or virtual socket sessions. Other examples include proxies that support thin client remote console operations and dynamic content adaptation. Agents are another design for supporting disconnected operations. An agent is an autonomous, asynchronous entity that acts on behalf of the user even when the user is disconnected. Agents take a specific request and perform many actions that are not under direct user control and are independent of the communications path. Agents can handle disconnected operations by queuing information such as mail, fax, software distributions, Web pages, or other content. Content can be efficiently packaged and selectively transmitted once a suitable connection exists. Agents can find, select, filter, and personalize information; negotiate for services; automate tedious tasks; and act on the user's behalf for delegated tasks. Pervasive device support The convergence of computing, telecommunications, and consumer electronics is causing a tremendous growth in the number and variety of pervasive computing devices. Information appliances and device manufacturers are focused on bringing leading-edge technology to mobile professionals. The advent of pervasive computing enables the multitude of emerging devices including laptops, sub notebooks, handheld computers (such as PDAs and companion devices), and other small appliances (such as smart phones, pagers, simple messaging devices, and wearable devices) to connect to e-business applications. The Framework supports all of these devices. Examples of key client platforms include mobile Java devices, Palm Pilot/IBM WorkPad, Psion, Zaurus, EPOC/Symbian, and Microsoft Windows CE devices. Pervasive device configurations range from embedded machine devices without a user interface to devices with multi-modal interfaces such as traditional keyboard and mouse interfaces, small text screens, pen, touch screens, speech-to-text, text-to-speech, and other emerging technologies. The Framework enables the development of applications for a wide range of devices by providing a set of common components and tools that support appropriate user interface and application services for different devices. Specific pervasive device support within the Framework includes: The embedded Java platform, which addresses the software needs of memory-constrained, dedicated embedded devices A multi-modal user interface shell that establishes a tighter synchronization between text and speech browsers Support of embedded speech engines that recognize limited vocabulary words and can be used for command and control type applications Asynchronous messaging that supports disconnected operations; refer to "Disconnected Services" in this paper for details Data synchronization that supports storing information locally on the device; refer to "Disconnected Services" in this paper for details Systems management Pervasive computing management support is more complex because devices are resource constrained, and users are remote and often disconnected. For example, a new software ibm.com/developerWorks/ developerWorks Application Framework for e-business: Pervasive computing Page 7 of 8 distribution may need to wait for a suitable connection and the end user must be made aware of its availability and importance. Further, the actual distribution may take a long time and/or be complicated by slow speed and intermittent connections. Thus new methodologies are required to minimize end user difficulty in such an environment. Specific mobile enhancements to existing systems management services include: Receiving alert messages from mobile devices and taking appropriate actions. Viewing and managing device and connection status. This is of particular importance for wireless devices, which are inherently more complex to manage. Viewing and managing the inventory of users and devices including their current location. Viewing and managing applications/services -- cost to use, user access rights, resource usage, licensing terms and conditions, billing, and default preferences. Supporting client software distribution via "push" or "pull" models. Configuring (groups of) devices, device profiles, agents, and proxies. Standards support With the diversity of mobile devices and solutions, open standards are more important than ever. Standards can include protocols to insure interoperability and APIs that allow application portability. IBM contributes actively in a broad range of standards activities and industry groups including: IETF W3C The Open Group WAP Bluetooth ISRF Open Service Gateway Initiative Salutation Open Card In addition, work is ongoing to coordinate the activities of these groups. The Application Framework for e-business will continue to evolve and incorporate appropriate standards as they mature. developerWorks ibm.com/developerWorks/ Application Framework for e-business: Pervasive computing Page 8 of 8 About the authors Krishna Akella Krishna Akella is a senior engineer and works for IBM's e-business Technical Strategy group. You can reach him at akella@us.ibm.com. Akio Yamashita Akio Yamashita is a member of IBM Research, Tokyo Research Laboratory. He currently works for the e-business Technical Strategy group as an international assignee. He received a B.E. and a M.E. in Electrical Engineering from the University of Tokyo in 1983 and 1985 respectively. You can reach him at E07799@jp.ibm.com. Copyright IBM Corporation 1999 (www.ibm.com/legal/copytrade.shtml) Trademarks (www.ibm.com/developerworks/ibm/trademarks/)