Designing a web application for a wireless node is different from designing a web application for a workstation. Bandwidth is a precious resource in the wireless domain and it must be utilized in the most efficient fashion. Research focuses on streamlining applications to make the best use of the available bandwidth. These options include using dynamic documents which use the resources of the mobile node itself to generate parts of a document or partitioning the application between a client and the server.
Dynamic documents can address the variable resources requirement of mobile computers accessing the Web. Dynamic documents are programs executed by programs such as Web browsers in order to generate the actual information displayed to the user. Execution of a dynamic document cause the client to perform any number of actions in order to generate a final presentation to the user. Dynamic documents are flexible enough to address many mobile computing resource constraints. Documents can be customized at the client depending on available resources. (Kaashoek, 1994)
Application partitioning can also be used over a wireless link for more effective use of the wireless link. Much like a client/sever system, applications and their functionality can be divided into different parts. the boundaries between how much of the application should be run on the client side vs. the server side can be determined dynamically and based upon the availability of the bandwidth. The data and their functions are packaged into hyperobjects. The purpose of hyperobjects is to expose a certain level of application structure and semantics to the system in a uniform and manageable way. The system will use this hyperobject structure, along with observations of access patterns to make informed decisions. (Watson, 1995)
Partitioning documents are combined with several other well-known techniques to increase the effectiveness of wireless clients such as browsers.
Applications specify the caching attributes of an object or a number of objects. The default is to optimistically replicate objects on the mobile device. Explicit synchronization can be used to make the cache consistent with the wired network if the wireless link is up. (Watson, 1995)
As a document is loaded and displayed on a mobile device, the links in a hiarchial fashion are used to prefetch the relevant documents and cached. In a hyperobject application the system will use its knowledge of the relevancy and the position of various objects in order to anticipate and prefetch other objects. Prefetching can only be done if the system resources allow it. For example, as a user is viewing the first page of a document, the relevant objects for that document are being prefetched into the cache, given the wireless link is up and functioning. Prefetching hides the latency of the link, and it will also filter the burstiness by spreading the traffic over a longer time.
Data reduction can be dynamically decided by the user for various high bandwidth applications such as video transmissions. A video stream delivers certain number of frames per constant unit of time. As the number of frames are reduced, it adversely affects the quality of the video, but the bandwidth needed is also reduced; hence, the user can dynamically find a balance between what the available resources and the desired video quality. The same principal can be applied to the sound, and also any real-time stream of data over the wireless link.
17.3.4 Mobile WWW Browsers
Web infrastructure as it exists today can not easily accommodate mobile clients, because of the fact that almost all information resides statically in HTML documents. The dynamic information that the Web supports is returned to the client without incorporating any user context, or is incorporated explicitly using forms-based interfaces that require user input on the client. Extensions to the Web have been created to include:
Active documents are HTML documents that allow the Web client to automatically react to changes in mobile computing environment. If the information in an active document that the client is displaying becomes invalid, then the client can be notified of that change so that more relevant information can be displayed. Variables such as location can be updated as the mobile user roams from one cell area to the next. Active documents are written just like any other HTML file with only a minor addition. A subscribe command is embedded in an HTML comment line. By having the subscribe command embedded in a comment line, backward compatibility can be preserved, thus allowing regular Web browsers to view the documents. (Voelker)
Ordinarily URLs are links to set static documents on the Web. Dynamic URLs will reference a user to a different document based upon other variables, such as the location variable. Dynamic URLs exist in active documents in order to receive the variables from the client. When a user selects a dynamic URL in a document, the client browser is responsible for resolving all references to dynamic variables within the URL. When all variable references have been resolved, the result is a standard URL that the client then sends to the server. (Voelker)
Copyright © 1996 Farhood Moslehi, All Rights Reserved
Farhood Moslehi <moslehi@vt.edu>
Last modified: Dec 10, 1996