GAP: A Tool to Solve the Problem of the Web Contents Visualization in Pocket PC Devices. J. Carlos Olivares R., J. Gabriel González S., Azucena Montes R., Víctor J. Sosa S. e I. Rafael Ponce M. Centro Nacional de Investigación y Desarrollo Tecnológico(cenidet) Cuernavaca, Morelos, México {jcolivares04c, gabriel, amr, vjsosa, rafaxzero4c}@cenidet.edu.mx In this work a system which development is in progress is described. It focuses in attacking the problem of Web resources visualization on mobile devices. The main characteristic of this work is that great part of the system is executed in this kind of devices, in comparison to the great majority of the existing solutions that are executed in traditional platforms.
Abstract This tool intends to fill the existing ‘GAP’ in the Web sites visualization in mobile devices, such as Pocket PC. In order to guarantee that the users can correctly visualize the Web resources, two things are needed: a mechanism for controlling disconnections, and allowing visualization of Web content despite of the device connection state (hoarding), and a mechanism that can adapt the Web content to the specific mobile device features (transcoding). GAP is a tool that integrates these two mechanisms and allows improving of the user’s navigation experience in the Mobile Web. Keywords: Pocket PC, Visualization, Web Resources, Hoarding, Transcoding.
2. Alternatives of solution In order to solve this problem several alternatives are presented: to design a new protocol, to modify and existed protocol or to implement intermediary services that solve the problem.
2.1 New protocols
1. Introduction In this scheme is possible to mention the WAP protocol and the WML language, they work in an analogous way as HTTP-HTML in the traditional Web. The problem strives in that WAP only works with mobile equipment and this would bring the same fragmentation that today has the Web (special pages for all class of devices). In addition, WAP was originally designed for devices with limited resources capacities (monochrome screens, lower bandwidth, etc) which is actually solving day by bay through bandwidth wireless connection (WCDMA, UTMS, 802.11g, WiMax, etc) and with more and more powerful equipment. The best solution would be to create a new protocol. The problem is that this one must be totally compatible with the existing ones, because if not, it would let unusable thousands of existing resources (it would be necessary to modify as much Web servers as Web clients).
Mobile devices are each time closer in time, according with [1]: "By 2009, more than a half of the microprocessors made in the world will be intended for mobile devices." "The software that will really make mobile devices useful isn’t developed yet." These statistics reflect that the use of mobile devices is increasing due to their tiny size and that its power of processing and versatility is growing day by day. The problem of Web resources visualization in mobile devices is the fact that the great majority of Web sites in Internet have not been designed for this type of devices. The mobile devices have limited resources like small screens, little memory, low processing speeds, etc; in comparison with traditional computers equipment. On other hand, the Web and the protocol that manages it: HTTP are connection oriented (they are based on TCP) what causes the transaction to fail if the user, by any reason, becomes disconnected from the network . In this case, it might not be possible to visualize the Web resources in the mobile client. Disconnections are frequent in this type of devices, mainly because of their main advantage: mobility.
2.2 Modification of protocols Within this alternative exits the case of having a new request scheme of Web resources. This new
17
scheme receives the name of Push, whereas traditional scheme receives the name of Pull [2]. The Pull scheme receives the name of “over demand’. Under this scheme, the client (user) is who visualizes a resource in an explicit way. In our case, if a user wants to see the page of cenidet, must write in the Web browser the next URL: http://www.cenidet.edu.mx/. The Push scheme also receives the name of 'subscription-notification'. In this scheme, the user subscribes itself to a service and when some event of interest happens a notification is sent for alerting the user about the event. Generally these two schemes do not live on isolated way. Hybrid schemes (Pull&Push) have been applied in diverse existing services, so is the case of the reception of SMS/MMS messages, where the send of messages is Pull and the reception is Push, since it notifies to users about the existence of new messages. Another service that has made famous devices like the Blackberry to become successful is the Push-mail [3]. This service comes to solve the problem of email visualization in mobile environments. Under the traditional scheme of the electronic mail, for consulting the email, a user must be connected all the time to receive it. This originates great costs if the network connection generates costs per time. With this new scheme, the user is not connected to the mail server. When a new mail in the server is received, it notifies the client of the existence of the new mail and sends it to the mobile client. For this type of schemes, protocols like HTTPU (HTTP over UDP) or HTTPMU (HTTP over multicast UDP) have been proposed, and basically works similar to the HTTP but using datagrams, which are not in an oriented connection way. With these protocols are possible to offer a better quality in the mobile Web [4].
3. Proposal of solution The hoarding process solves the problem of Web resources visualization without concerning the state of the connection of the mobile device. For this, it becomes necessary that the user has already stored, in local way, in his device the resources that he o she will use. As can be observed, the amount of resources to occupy can be immense, whereas the capacity of storage of the devices is limited. In order to give solution against this new problem is necessary to have an effective way to know the resources that a user could use. With hoarding is possible to reduce this, through algorithms of association rules applied on Web logs, is determined the optimal set of resources that will be replicated to the mobile clients [5]. A mechanism which tries to solve the adaptation problem of Web resources to the displaying capacities on mobile devices is transcoding. It consists of transformation of resources, distilling and processing of all those characteristics that are not available in the device is needed. The used mechanism of transcoding uses HTML to a subgroup of HTML transformer, using XML. The system is based on client-server architecture with an intermediate tier on the server side as on the client side. The system is shown in Figure 1.
2.3 Intermediary services This is the more extended solution to solve the problem of Web resources visualization and many other problems present on Web, like the case of firewalls that solve some of the Web security problems like the access control, or proxies’ caches that tries to reduce the access latency to the information. The scheme of intermediaries is widely used because it doesn’t need to modify neither the clients nor the servers; in fact, the client and server processes do not notice the existence of these intermediary services. These services are in charge of the hard work and are transparent to the users. The tool that is described in this article, works under the scheme of intermediary services.
Figure 1. General architecture proposed. The general system has been denominated GASWT (Gestor de Acaparamiento de Sitios Web Transcodificados: Hoarding Manager of Transcoding Web Sites). The intermediary in the client side is denominated GAP (Gestor de Acaparamiento para Pocket PC: Hoarding Manager for Pocket PC), whereas the server side is denominated GAT (Gestor de Acaparamiento y Transcodificación, Hoarding Manager and Transcoding). The GAT is composed by MA (Mecanismo Acaparador: Hoarding Mechanism) and by MT (Mecanismo Transformador: Transcoding
18
Mechanism). The communication between the processes is made through a HTTP request-response scheme. As much the MA as TM are taken from other projects that together with this one, comprise the Moviware project [6], whose main function is to offer a set of services to mobile clients that have frequent disconnections. The general operation of the system is described in the next lines. The user introduces an URL from the Web browser (which has been previously configured to redirect his exit towards the GAP). The GAP receives the request and determines if it is in the local cache of the device, if found, the hoarded resource is sends to the Web browser. When the resource is not hoarded, the system validates the connection existence in order to obtain the resource on line. If for some reason the resource cannot be shown, (because it doesn’t exist or has detected an error in the connection) the system notifies the user by sending an error message. On the other hand, if the Web resource is not hoarded and a pattern of the site in the local device doesn’t exist, the MA sends the Web resources if a pattern for this site exists. If the pattern exists but the hoarded resources in the MA aren’t present, it obtains them by requesting them to MT and soon compresses the resources in zip format to optimize the process. Once the MA has sent the hoarded Web site, the mobile device must decompress the Web site and update its list of patterns. This process happens in transparent way, in a way that the user never notices. MT is responsible of collecting documents and if they are HTML, it transforms them if the configuration parameters indicate that. The transcoding is made on line, because the process is slowed down if the document is too large. The actions that the user can make on the system consist in visualizing Web sites on line, visualizing Web sites on disconnection mode, visualizing error messages, visualization of the requests states and finally, set up the system. The GAP is basically conformed of three main modules which are: Observer, GAL (Gestor de Acaparamiento Local: Local Hoarding Manager) and GDL (Gestor de Desconexión Local: Manager of Local Disconnection). The Observer is responsible of processing each request and to give back the result to the navigator. The GAL is responsible of the manipulation and control of the cache in the device. The users decide which resources are susceptible of hoarding, as well as limiting the storage space. The GDL is responsible of determining the state of the connection. The control of the disconnections has
been used drilling the network during three seconds. Observing the quality of the results, a threshold of 30% of accepted connections determines if the client is connected (if the threshold is surpassed or equaled) or is on disconnection mode (if it is below the threshold) [7]. For the implementation of this tool, we used .NET Compact Framework 1.0 with C # language, because it is the best option to program in Pocket PC platform [8]. The modifications of the MA and MT are being made in Java so that it is language in which these modules are programmed.
4. Results The tool described in the present document has been proven in diverse equipment like Pocket PC 2000 (Compaq iPAQ H3630), Pocket PC 2002 (HP Jornada 5500), Pocket PC 2003 (HP rx3115), emulators of Windows CE, desktop PC (Compaq Presario with Pentium 4 1.4 Ghz. processor, 512 Mb of RAM memory). The first test scenario consisted of acceding to the Web resources in on line mode. We obtained satisfactory results (see Figure 2). In the number two test scenario, the GAP was executed without being connected to the network. Additionally we had a pattern of a hoarded Web site (http://www.cenidet.edu.mx/) and resources. In this case not existing images in the original site were used, because it was possible to verify that the hoarded resources are correctly displayed. The number three test scenario (see Figure 3), demonstrates that it is possible to transcoding the resources in the device as well as showing them in a local way if they are hoarded and without transcoding. It is Also possible to execute the GAP in other platforms like Smartphones (SmartGAP) and a desktop PC (WinGAP). GAP, WinGAP and SmartGAP are the same program but with different name, to differentiate the platforms in which they’re running.
5 Conclusions With the presented tool is being demonstrated that it is possible to execute complex services in Pocket PC devices, so is the case of an intermediary service that it allows to visualize Web resources when it exists or not a network connection. At this time we have verified in an isolated way most of the functions of the system (it lacks the methods of decompression of the hoarded site), it
19
2) Reduction of latency in the access to the information, if the resource is hoarded locally. 3) Energy Saving by the fact to work in disconnection mode. 4) Saving money if the user decides not to connect to a network that receives the service and generates expenses by the access time. 5) Facility of administration of Web sites when not having different versions to each device.
would be necessary the respective integration of components and testing to the system in its totality.
6. Acknowledgments We want to give thanks to Rocío Vargas Arroyo for her contribution in correct this paper.
7. References Figure 2. Case of test 1: Visualization of Web resources with network connection.
[1] SG magazine, http://www.softwareguru.com.mx [visited march 2006] [2] Purushottam Kuikarni, et al., “Handling Client Mobility and Intermittent Connectivity in Mobile Web Accesses”, Department of Computer Science, University of Massachussets. [3] Blackberry’s push technology, http://www.blackberry.com/products/software/integrations/p ush_email.shtml [visited march 2006]. [4] UPnP Forum, http://www.upnp.org/, [visited march 2006] [5] David Valenzuela, “Mecanismos para predicción de acaparamiento de datos en sistemas clientes/servidor móviles”, masther thesis, cenidet, august 2002. [6] Gabriel González. “Plataforma middleware reflexiva para aplicaciones de cómputo móvil en Internet (Movirware)”, cenidet. [7] J. Carlos Olivares, et al, “Control de desconexiones en la visualización de páginas Web en dispositivos móviles Windows CE”, for appear in XVI CIECE’06, april 5,6 and 7 2006, Cd. Obregón, Sonora, México. [8] Gabriel González, Azucena Montes, J. Carlos Olivares, “Comparativa y evaluación de las herramientas de programación para desarrollar aplicaciones en plataforma Pocket PC”. VI CICC’05, Colima, Colima, México, september 2005.
Figure 3. Visualization of Web sites in disconnection mode with hoarded Web resources and without transcoding.
Figure 4. Case of test 3: Visualization of Web sites in connection mode, with hoarded and transcoding resources. The expected benefits at the conclusion of this investigation work are: 1) Visualization of Web sites without mattering if the devices are connected or not.
20