Proceedings of the 13th International Congress on Computer Science Research CIICC´06 November 15 -17, 2006, Tampico, Mexico
Evaluation of Pocket PC Devices for its Use as Mobile Servers J. Carlos Olivares R., J. Gabriel González S., Azucena Montes R. y Víctor J. Sosa S Centro Nacional de Investigación y Desarrollo Tecnológico (cenidet) Cuernavaca, Morelos (México) E-mail: {jcolivares04c, gabriel, amr, vjsosa}@cenidet.edu.mx
Abstract This paper has the purpose of showing the viability use of Pocket PC (PPC) devices for its use as mobile servers. Within Distributed Systems Laboratory at cenidet a Proxy server was designed whose main characteristic is that it executes in this type of mobile devices. The obtained results conclude that the use of these devices in distributed computing and ubiquity computing applications are feasible as mobile servers with some considerations to be taken into account.
1. Introduction In a world where the only constant is the change, mobilization and ubiquity of the information are playing a very important role in modern societies. Until recently, mobile devices had computing characteristics very limited but at the moment, thanks to the technological advances people have computing devices with every time greater benefits. Due to these new characteristics and potentialities of mobile devices a question jumps to the air: are PPCs able to execute processes as mobile servers? That is to say, in the past it has been seen mobile devices like light clients or dumb terminals but at the moment, the concept of smart clients is being taken into account in where the devices make more processes than simply make requests and give back the results to users. The main hypothesis that appears in this work consists of determining if with the present characteristics that have these mobile devices, the technology is sufficiently mature to thinking about to speak of mobile servers instead of mobile clients.
2. Pocket PC Mobile Devices A Pocket PC (PPC) is defined according to Microsoft as “a hand device that allows you to record, send and receive e-mails, contacts, appointments, show multimedia archives, games, interchange text messages with MSN Messenger, browse the Web and more”[1]. These devices are classified within the PDA (Personal Digital Assistant) segment, that is not another thing that an electronic organizer or pocket-size computer. From a more formal point, PPC is a Microsoft’s standard that imposes to hardware and software of mobile devices. Between these characteristics are the following ones:
209
• • • • •
Execute the Microsoft Windows CE operating system Have a set of applications in ROM such as: Microsoft Outlook, Internet Explorer, Word, Excel, Windows Media Player, etc. Include a touch screen and a stylus (pointing device similar to a pen) Include a set of hardware buttons to activate applications Based on a compatible processor with ARM (the older Pocket PCs could have a MIPS or SH3 processor)
2.1 Windows CE Windows CE is the operating system for embedded electronics whose purpose is to maintain a version the most faithful Windows in computer devices with limited characteristics. It is a 32 bits operating system, multitask and real time. It porthole most of the Win32 APIs but it’s being totally different in its architecture. The Pocket PC devices have a special shell (graphical user interface) that it makes different from other Windows CE-based devices as they are Smartphones and Handhelds. The PPC 2000 platform uses Windows CE version 3.0, the PPC 2002 platform uses a special version of Windows CE 3.0, PPC 2003 platform (Windows Mobile 2003) uses Windows CE 4.2 (Windows CE .NET) and the most recent platform PPC 2005 (Windows Mobile 5) uses Windows CE version 5.0.
3. Feasibility Within the Distributed Systems group in the mobile computing area, a software platform called Moviware is being developed (already almost to conclude). It provides services to mobile clients who are prone to frequent disconnections [2]. Inside Moviware, we finished implementing the module called GAP (-Gestor de Acaparamiento para Pocket PCs- by its abbreviations in Spanish, Hoarding Manager for PPCs) [3], which is basically a small Proxy cache server that supports operations in disconnection mode allowing to visualize resources prefetched on the mobile device. When we made tests on this development we found some information that we considered as interesting of being disclosed. We selected to work on PPC devices and not to choose other mobile devices due to many factors. One of them is that the mobile devices are very heterogeneous; that is to say, there are many types of mobile devices generally with incompatible characteristics to each other. The Pocket PC devices in certain way are homogenized thus allowing to obtain less problems in general. In addition, they have been designed to be computers with small dimensions thus are more powerful than other platforms like PalmOS and Symbian. On the other hand, according to statistic, at the moment more PPCs are sold that Palm or Symbian (it does not the same to telephones, in where this platform is clearly superior in sales) [4].
210
In the GAP development we used .NET Compact Framework 1.0 because we want to obtain a binary compatibility support for a great diversity of Pocket PC platforms. At the moment, other services that are able to execute on mobile devices are the Web servers, doing feasible also their application such as electronic mail mobile servers, FTP, among others. An example of this is Microsoft HTTP server for Pocket PC 2003 and superior (httpd) or the mini Web server implemented at cenidet as GAP previous work (see Figure 1).
Figure 1 Mini Web server for Pocket PC devices. Note that the service is executed in command line and is acceded from port 10800 (register at IANA). The main problematic appears when making the tests on Internet. The Web access time is a phenomenon difficult to model as well as to formalize. The response times can depend on many factors so is the case of bandwidth, the routing that follow the packages, etc. All this entails to response times are not the same whenever the test is executed. Some works have used statistical methods with the intention of predicting the response times; these methods are for example the Montecarlo method [5]. In our case, it is not of our interest predict the response time, the latency in the response times is taken into account since the measurements were made on a real environment of execution and this penalty at the time of showing the results is due to take into account. The case of test consisted of the GAP execution in diverse Pocket PC platforms (emulators and devices) registering the access time when obtaining the index page of 100 different Web sites. The times obtained traverse of the system log analysis (see Figure 2). The main page average was of 30,476.81 bytes (approx 30 Kb), which contain an average of 56.99 objects (images, other resources, etc). In order to take to finish our tests plan we were based on the methodology and tests plan used in [6]. Before making the tests the following hypotheses considered: H1 = the access time through emulators is slower that through a normal device, because the process is emulated.
211
H2 = the access time through emulators is faster because latency in the access times does not exist since when executing on local mode, it is not put under external factors that they could affect the communication and the access to the resources. H3 = the access time is affected by the type and version of the platform used; that is to say, more recent platforms have faster accesses.
Figure 2 Visualization of the GAP log in the WordPad of Windows CE 4.2 emulator (left image) and PPC 2000 device (right). H4 = the access time to the resources is affected by the characteristics of the device; that is to say; between more resources the device have less is the executing time. H5 = the speed of the access time is superior with more recent Pocket PC devices. H6 = the use of .NET CF 2.0 has better result in the access speed that version 1.0. H7 = the use of the same operating system version but with different computing capacities devices produces an improvement in the access times. H8 = the independent use of GAP and the Web client (browser) in another device, improves the access times because we have less applications running on a PPC device (dedicated system).
4. Results The test results using emulators are showed in Figure 3. Figure 4 shows the GAP execution in Windows CE emulator and Windows XP device. Where: ePPC03 ePPC03PE
Pocket PC 2003 emulator, Pocket PC 2003 Phone Edition emulator,
212
ePPC03SE eWince5 eWince4.2 PPC03SE
Pocket PC 2003 Second Edition emulator, Windows CE 5.0 emulator, Windows CE 4.2 (Windows CE .NET) emulator, Pocket PC 2003 Second Edition device (HP iPAQ rx3115)
Figure 3 Obtained results of the GAP execution on emulators.
Figure 4 Example of the GAP execution in the Windows CE 5 emulator (left) and Windows XP device (right). The test results using devices Pocket PC are showed at Figure 5. Where: PPC00 PPC03SE PC.NETCF2 PC.NETCF1 PPC03NCF2
Pocket PC 2000 device, Pocket PC 2003 SE, PC device with .NET Compact Framework 2.0, PC device with .NET CF 1.0, Pocket PC 2003 SE device with .NET CF 2.0,
213
PPC03SE/PC Pocket PC 2003 SE device running the GAP (server) and a PC acting as client, PPC03SE1 Pocket PC 2003 SE device with more memory (128 RAM, HP iPAQ rx3715).
Figure 5 Evaluation of GAP times on PPC devices. 4.1 Discussion of the obtained results The time average of access GAP in the emulators was 225.53% slower than a physical device. This demonstrates that H1 is certain. H2 turned out to be false since the test results indicate that the access time is not diminished. This time depends to a certain extent on the capacities of the PC in where it runs the emulators. H3 turned out to be certain since the most recent version (Windows CE 5.0) is faster than the other versions of the emulators. The version of the PPC 2003 SE emulator is faster that his counterpart of the Pocket PC 2003 emulator. H4 turned out to be certain. Between more capacity of main memory, storage and processor have a mobile device or emulator, greater is their benefits. For example, this can be observed that the version of the PPC 2003 Phone Edition emulator is superior to the emulator standard version, mainly must that to the being a version of PPC with a module called radio (that is what it makes a telephone) has in general greater benefit and capacities of storage and processing that the standard version. The use of persistent memory in Windows Mobile 5 (Windows CE 5.0) contributes to better performance as it is in the results, being in this platform the best time obtained within the different emulators.
214
Of the obtained results, we demonstrate that on a PPC 2000 device is 71.29% slower than a PPC 2003 device, which represents H5 considered like certain. In order to solve H6, the test was divided in two parts, on the one hand in traditional PC devices and by another one with PPC devices. Figure 6 shows the GAP execution in Windows Mobile 2003 SE and Windows Mobile 5 PPC devices.
Figure 6 GAP Execution in a Pocket PC 2003 SE device (left) and Windows Mobile 5 PPC device (right). Making the quantitative analysis of the results in a PC device, it is appraised that version 2 is slower, doing an analysis more detailed of the data was appraised that they have almost identical times only vary in some requests where the second version took more time. In the analysis of quantitative of Pocket PC devices it is appraised that in the collected data a great variation or improvement in the access times does not exist, reason why H6 is rejected. This must to that it needs to optimize the application so that removes benefit to the new characteristics from the new version of the Framework. The slight increase in the access time must to that .NET CF 2 consumes more resources in the device leaving less space for the applications. When making the tests a result of 65.11% better was obtained with a Pocket PC device with 128 RAM than using a device with 64 Mb, reason why H7 was accepted as valid. For H8 it was obtained that the access times are very similar with the reservation of some requests that went off too much. Reason why we conclude that a substantial improvement does not exist reason why H8 is rejected. This test mechanism helps separating GAP respect the Web browser for being able to visualize of better way the processes than they are executed in a Pocket PC, since only one a window can be visualized simultaneously on a PPC device.
215
5. Conclusions Of the obtained tests, it is deduced that the mobile devices are able at the moment to work as mobile servers although with small service loads; that is to say, the volume of transactions that can take care of at the moment is very limited. For applications not as intensive as our case the use of a service of personal network is feasible and has good performance. The actual mobile devices are out of phase approximately 5 to 6 years; that is to say; the most powerful mobile device at the moment was the computer average that was sold 6 years ago. One could think that 6 years ago already Proxy servers ran for PC so why it does not run in a PPC? The answer is that the power processing of these devices is distributed in many things not considered in traditional devices like the writing or voice recognition, the displaying of the information, the maintenance of the own operating system, the persistence of the information, etc. Of this form one is due to leave in clear that although a PC works as server is not recommendable to use it like dedicated server, for it are used specialized equipment like workstations, mainframes and if the processing is too complex can be used super computers. The same occurs with PPC.
6. Further Work As future work is tried to do another tests on others PPC devices; for example, verifying if the microprocessor architecture as well as other factors influence of remarkable way in the execution of services on mobile devices. For example, one considers solving the following hypothesis: H1 = If we had different devices with the same characteristics but different platforms, the superior platform is slightly faster than the other version. Other future work is the accomplishment of the test in Smartphone devices with Windows Mobile to verify that so feasible it is to make applications of services (mobile servers) in this platform. The hypotheses that are desired to verify are the following ones: H2 = the execution of GAP (and in general of processes) in PPC is faster than using Smartphone devices. H3 = the speed of the access times is affected by the type of connection (GSM-GPRS, WiFi, Bluetooth, etc.) without depending to the used device type. Finally, the accomplishment of tests in PC with the same capacities of processing sets out that a PPC, with the objective to determine that so powerful it is a PPC with the same characteristics that a PC, this with the purpose of verifying the following hypothesis: H4 = a PC with the same characteristics that a Pocket PC has quicker access times because it has a different architecture that is designed to run more powerful services.
216
References [1]
Pocket PC, Wikipedia, http://es.wikipedia.org/wiki/Pocket_PC, Last consulted: september 2006
[2]
J. Gabriel González S., et al., “Plataforma middleware reflexiva para aplicaciones de cómputo móvil en Internet (Moviware)”, Centro Nacional de Investigación y Desarrollo Tecnológico (cenidet), project financing by COSNET: 570.01-P. J. Carlos Olivares R., “MoviWeb: Plataforma para Soportar el Acceso a Sitios Web desde Dispositivos Móviles”, master thesis in progress, cenidet, september 2006. Infochannel, consultado: junio de 2006 http://www.infochannel.com.mx/busqueda6.asp?id_nota=13718&seccion=buscador Martha A. Fernández S., Rogelio Ferreira E.,"Predicción en el Tiempo de Respuesta en Páginas Web", ROPEC VI (Reunión de Otoño de Potencia, Electrónica y Computación), IEEE Sección Centro Occidente, November 2004, Morelia, Michoacán, México. Homero Jiménez P., “Evaluación del Tiempo de Respuesta de un servicio Web en función de su estructura interna”, master thesis, cenidet, February 2006.
[3] [4] [5]
[6]
217