A Demonstration of Virtual Machine Streaming Richard Potter (JST) Mizuki Oka (University of Tsukuba) Kazuhiko Kato (University of Tsukuba and JST) One of the most effective techniques for optimizing the migration of large virtual machine states is on-demand fetching of disk and memory blocks [1], however the latencies incurred can be potentially large. We have built a prototype system for exploring how predictive block prefetching can minimize or eliminate this latency by streaming the needed parts of the virtual machine in the order needed. We are focusing our efforts on the "Web Page Snapshot" feature of SBUML [2,3], which allows entire Linux virtual machines to be suspended in mid-execution and posted to websites so that users can download and restore them with one mouse click. Web Page Snapshots are useful for distributing preconfigured demonstrations or for distributing web based applications. Since Web Page Snapshots can be shared by many users, there is opportunity for capturing enough statistics for generating accurate and flexible predictions. The result is like video streaming, because needed data is buffered and network latencies are minimized. However virtual machines do not use blocks with a preset linear ordering, so it is really a form of speculative prefetching. Therefore two questions for this research are how to make accurate predictions and how to gather usage data upon which to base the predictions. Our current solution does both on the server side, which logs the demand fetching from many users over long periods of time. These logs are then used to choose blocks for prefetching based on the first few demand fetches requested by new clients. The sequential pattern mining techniques work well for roughly identical uses of identical Linux snapshots, so it produces the desired benefits for our specific purpose. We are currently investigating other algorithms and protocols that adapt well to unexpected variations in use and also are able to make use of information from the client side. [1] C. Sapuntzakis, R. Chandra, B. Pfaff, J. Chow, M. S. Lam, and M. Rosenblum, "Optimizing the Migration of Virtual Computers," Proc. of the 5th Symposium on Operating Systems Design and Implementation (OSDI), 2002. [2] Potter, R., "One-Click Distribution of Preconfigured Linux Runtime State," in WIP Session of the 3rd Virtual Machine Research and Technology Symposium (VM04), May 6-7, 2004, San Jose, CA, USA [3] http://sbuml.sourceforge.net/