Thinck
 
Site Index
Home
Vision
People
Publications
Projects
Current
Atra
Smarta
pTCP / R2CP
Thinck
Garuda
SCT
CtS
WSAN
Past
Sphinx
iQ
eCo
GTCP
MPFD
Sponsors
Links
Contact

Thinck:



Overview |  Results |  Publications |  Software |  People |  References


Overview:

Thin-client computing is an extreme form of proxying where a powerful proxy-server performs all tasks on behalf of the client, and the only communication between the proxy and the client is for dumping screen data and conveying user input information. Although the paradigm itself has existed for several years, it has essentially been considered only as a means to lower technology costs, facilitate easier maintenance, and enable reliable remote computing.

In this project, we consider using thin-client computing on conventional thick-client mobile hosts, with the primary goal of achieving bandwidth, latency, and energy benefits in wireless environments. Through real life experiments with a commercial thin client solution, we profile the trade-offs of using the thin-client paradigm for mobile information access. We show that thin-client computing, when used judiciously in tandem with thick-client computing, can provide promising improvements in bandwidth usage, latency, and energy consumption. At the same time, we identify some critical drawbacks of the thin-client model that prohibit its use as a universal solution for mobile information access. Finally, we present a new model for mobile information access, called Thinck, which leverages the advantages of the thin-client and thick-client computing models, and thereby achieves considerable performance benefits. We evaluate the Thinck model through both simulations, and a real-life prototype implementation.

Results / Status:


Performance Evaluation of Thin-Client Computing in Wireless Environment

As our experimentation environment, we use Georgia Tech campus network having IEEE 802.11b and Sprint cellular network having CDMA2000-1X wireless connectivity. For the thin-client solution, we use Microsoft Terminal Services on the Windows 2000 operating system. In the experiments, we use two classes of applications, the web browser and document processing applications including Adobe Acrobat and Microsoft Office Suite.
Bandwidth Latency Energy
Figure 1Figure 2Figure 3

Our performance results through real-life experiments show that thin-client approaches come with the attractive benefits of saving bandwidth usage and lowering energy consumption while incurring reasonable latency. On the other hand, mobility related hand-offs, and to a more serious extent disconnected operations are the most critical issues that current thin-client solutions poorly handle. Especially, for the longer periods of disconnectivity or fully disconnected operations, existing thin-client solution do not have any means of serving the user despite the maintenance of the display cache at the client. To a less critical extent, the performance during predominantly local operations is quite reasonable. The figure above shows the relative performance of the two models for bandwidth, delay, and energy consumption respectively.

Elements of Thinck

The elements of the Thinck hybrid approach to mobile computing include:

  1. Dynamic Mode Selection: The mode selection mechanism is responsible for choosing the thick-client mode of operation under conditions when either the thin-client mode cannot provide uninterrupted service, or when it is more expensive as in the case of image or video intensive content.
  2. Opportunistic Hoarding: While no data is transferred in the thin-client mode, Thinck allows the user to indicate that some data might be needed in the future during disconnected operations. Opportunistic hoarding of the data is performed in such cases. The advantage of opportunistic hoarding over regular hoarding is that the fetch time is decoupled from the response time when performing the former, and hence the data is treated to be time-insensitive allowing for better multiplexing gains.
  3. Support of Disconnected Operation: Thinck uses a simple tag-on-fetch scheme to maintain associations between user input and fetched content that is stored in the display cache. During disconnected operations, the associations are used to serve the user any content for which the opportunistic hoarding had not completed before the disconnection.
  4. Update Record and Playback: Thinck also records all user inputs during the disconnected operation, and uses a unique playback scheme to synchronize write updates at the proxy server upon reconnection. This is done in lieu of a conventional diff based updated scheme as in file systems such as CODA.
  5. Tuned transport protocol: The graphics data in thin-client computing does not always require reliable delivery. At the same time, certain fragments of the transferred information such as headers are critical for effective operation in the thin-client mode. Thinck uses a dedicated transport protocol called DTP (display transfer protocol) for the thin-client mode.

Thinck Prototype and Performance

We currently have implemented a prototype of Thinck for web browsing by appropriately instrumenting the Virtual Network Computing software and the Squid web proxy cache. Thinck employs a heuristic mode selection algorithm based on the overall raw data size and the user viewable screen size. Preliminary experimental results show that the hybrid approach is able to successfully achieve the better of the thin- and thick-client performance under diverse conditions.

Publications & Presentations:


Software Downloads:


People:


References & Related Work:


InfoPad

  • T. E. Truman, T. Pering, R. Doering, and R. W. Brodersen, "The InfoPad Multimedia Terminal: A Portable Device for Wireless Information Access," IEEE Transactions on Computers, vol. 47, no. 10, pp. 1073-1087, Oct. 1998.

Coda

  • M. Satyanarayanan, J. J. Kistler, P. Kumar, M. E. Okasaki, E. H. Siegel and D. C. Steere, "Coda: A Highly Available File System for a Distributed Workstation Environment," IEEE Transactions on Computers, vol. 39, no. 4, pp.447-359, 1990.
  • J. J. Kistler and M. Satyanarayanan, "Disconnected Operation in the Coda File System," ACM Transactions on Computer Systems, vol. 10, no. 1, pp. 3-25, Feb. 1992.
  • L. B. Huston and P. Honeyman, "Disconnected Operation for AFS," Proceedings of the USENIX Mobile and Location-Independent Computing Symposium, Cambridge, MA, pp.1-10, 1993.

Odyssey

  • B. D. Noble, M. Satyanarayanan, D. Narayanan, J. E. Tilton, J. Flinn and K. R. Walker, "Agile Application-Aware Adaptation for Mobility," Sixteen ACM Symposium on Operating Systems Principles, Saint Malo, France, 1997.
  • J. Flinn and M. Satyanarayanan, "Energy-aware adaptation for mobile applications," Symposium on Operating Systems Principles, pp.48-63, 1999.
  • M. Satyanarayanan, "Mobile Information Access," IEEE Personal Communications, vol. 3, no. 1, 1996

Performance Evaluation of Thin-Client Computing in Wired Environment

  • A. Y. Wong and M. Seltzer, "Evaluating Windows NT Terminal Server Performance," Proceedings of the 1999 3rd USENIX Windows NT Symposium, Seattle, WA, Jul. 1999.
  • J. Nieh and S. Yang, "Measuring the Multimedia Performance of Server-Based Computing," Proceedings of the 10th International Workshop on Network and Operating System Support for Digital Audio and Video, Chapel Hill, NC, Jun. 2000.
  • S. J. Yang, Jason Nieh, and N. Novik, "Measuring Thin-Client Performance Using Slow-Motion Benchmarking," Proceedings of the 2001 USENIX Annual Technical Conference, Boston, MA, Jun. 2001.
  • S. J. Yang, J. Nieh, M. Selsky, and N. Tiwari, "The Performance of Remote Display Mechnisms for Thin-Client Computing," Proceedings of the 2002 USENIX Annual Technical Conference, Monterey, CA, Jun. 2002.
  • Albert Lai and Jason Nieh, "Limits of Wide-Area Thin-Client Computing," Proceedings of the ACM SIGMETRICS 2002, Marinadel Rey, CA, Jun. 2002.

Performance Evaluation of Thin-Client Computing in Wireless Environment

  • S. J. Yang, J. Nieh, S. Krishnappa, A. Mohla, and M. Sajjadpour, "Web Browsing Performance of Wireless Thin-Client Computing," Proceeding of Twelfth International World Wide Web Conference, Budapest, Hungary, May 2003.

Mimic:



Overview |  Results |  Publications |  Software |  People |  References


Overview:

File Synchronization

File synchronization is a restoration process of file consistency between a file server and a clinet. In this work, we consider the problem of file synchronization when a mobile host shares files with a backbone file server in a network file system. Several differential schemes have been proposed to improve upon the transfer overheads of conventional file synchronization approaches, which use full file transfer. These schemes compute the binary differential update (diff) of the new file with respect to the old copy at the server and transfer the computed diff to the server for file-synchronization. However, Lee et al. have shown that the performance of diff can be significantly improved upon by shipping user operations as opposed to the data itself. Using this as motivation, we present a purely application-unaware approach called Mimic that relies on transferring raw user activity to the server for file synchronization. Through a simple prototype of the proposed approach, we show that Mimic can outperform differential schemes under many common conditions. We also identify conditions under which diff-based approaches do perform better than the proposed approach, but show that detection of such conditions is straightforward, thus enabling both schemes to be used in tandem with a mobile file system for bandwidth-efficient file synchronization.

Results:


Components

Mimic is a fully application-unaware strategy that consists of components at the client and the server respectively. At a high level, Mimic captures raw user-activity at the client that pertains to shared files, maintains such activity on a per-file basis, and ships the raw-activity to the server during file synchronization. The server then replays the activities to regenerate the updated files at the client. The realization of the above functionalities in Mimic are done with the goals of reducing the transfer file size, minimizing latencies involved, and incurring minimal overheads in terms of usage of system resources.

Mimic requires interfacing with both the underlying file system and window manager at the client, and with the window manager at the server end. The interfacing with the window manager, however, does not require any changes to the operating system, and instead is achievable through standard interfaces that most window managers export.

Briefly, the primary components of the Mimic approach are:

  1. Record: This component is responsible for the effective capturing of raw-activity at the client end, classifying the activity, and maintaining per-shared-file records.
  2. Replay: This component is responsible for replaying the activity records in the fastest manner possible while ensuring correctness.
  3. Verification: Finally, this component is responsible for verifying whether the replay based re-creation of an updated file is correct. This component includes both forward error correction to correct non-repeatable actions (such as timestamps), and detecting any errors that arise due to improper playback.
System Overviewn
System Overview


Integration with File System

Mimic does not require any interfacing with the file system at the server. We refer to the coupling as loose because Mimic currently relies only on informative callbacks from the file system that is essential for its operations, and requires minimal changes to the file system design and logic.
System Overviewn
Mimic-filesystem-window manager interfaces


Performance Results

The figure shows the overhead results with different update intervals when a user accesses multiple files spending the same time per file, and performs various input activities. The input rate is about 200 operations per minute Microsoft Word and 85 operations per minute for Microsoft Visio. The dominant operations used are insertions.
System Overviewn
Transfer size for Large-Scale User Activity

It can be observed that both Mimic and diff overhead increases in proportion to the update interval for mixed activities. This is because the overall overhead is dominated by the transfer size of Visio, whose overhead is increases almost linearly with a larger interval. Thus, as the interval becomes larger, the overhead difference is also increased linearly. In the experiments, Mimic reduces the size of overhead by about 40%.

Publications & Presentations:

  • T.-Y. Chang, A. Velayutham, and R. Sivakumar, "Mimic: Raw Activity Shipping for File Synchronization in Mobile File Systems," in Proceedings of the 2nd ACM International Conference on Mobile Systems, Applications, and Services (MOBISYS), Boston, MA, USA, June 2004.
  • T.-Y. Chang and R. Sivakumar, "Thinck: A Hybrid Thin-client/Thick-client Approach to Mobile Information Access," Poster Presentation in ACM International Conference on Mobile Systems, Applications, and Services (MOBISYS), San Francisco, CA USA, May 2003.

Software Downloads:


People:


References & Related Work:


Low-Bandwidth Network File System

  • A. Muthitacharoen, B. Chen, and D. Mazieres, "A Low-Bandwidth Network File System," in Proceedings of the 18th Symposium on Operating Systems Principles, Banff, Canada, Oct. 2001.

Operation Shipping for Mobile File Systems

  • Y. Lee, K. Leung, and M. Satyanarayanan, "Operation Shipping for Mobile File Systems," in IEEE Transactions on Computers, vol. 51, no. 12, pp. 1410-1422, Dec. 2002.

Coda

  • M. Satyanarayanan, J. J. Kistler, P. Kumar, M. E. Okasaki, E. H. Siegel and D. C. Steere, "Coda: A Highly Available File System for a Distributed Workstation Environment," IEEE Transactions on Computers, vol. 39, no. 4, pp.447-359, 1990.
  • J. J. Kistler and M. Satyanarayanan, "Disconnected Operation in the Coda File System," ACM Transactions on Computer Systems, vol. 10, no. 1, pp. 3-25, Feb. 1992.
  • L. B. Huston and P. Honeyman, "Disconnected Operation for AFS," Proceedings of the USENIX Mobile and Location-Independent Computing Symposium, Cambridge, MA, pp.1-10, 1993.