DVPC - Distributed Virtual Personal Computer

Version 1.3

Current Version, Prior version: November 24, 2005

by Jack Krupansky - Base Technology

This proposal is in the public domain.  It may be copied and modified -- provided that Jack Krupansky and Base Technology are credited and a link back to this original proposal is provided AND these same use and distribution terms are carried along.

Please note that DVPC is only a concept right now, with no implementation or business plan to turn the concept into a product and service.

What is a Distributed Virtual Personal Computer (DVPC)?

One crazy idea I've been thinking about is what I call a "distributed virtual personal computer" or DVPC. The basic idea is that you have your full-blown PC with hard-drive, but the hard-drive is really just a cache, with all your data and settings being redundantly stored (and mirrored and cached) across any number of servers on the net, all transparently. The OS would need to be "upgraded" so that file changes are written through the local hard-drive cache to the distributed virtual drive on the net. If you occasionally are disconnected, such as on a plane or in the mountains, the cache changes would accumulate and then incrementally be written out to the net on future connections. Changes could also be written to a USB hard-drive or flash memory "drive" as well. Your physical PC could act as one or more virtual PCs via a logon, and more than one physical PC could be used to access each of your virtual PCs. Files on a virtual PC could be shared as defined using some access control scheme.

Now, here's the big benefit... you're happy with your PC, you're traveling with all your important business presentations and settings and then... you drop your PC or it's stolen or a virus deletes your files or maybe you've done a bunch of edits and then realize that you deleted or mangled something that you now want to bring back without necessarily losing your later edits. Sure, maybe you remembered to create a backup disk and maybe you even remembered to bring it with you... or maybe not. With my DVPC, you could simply go up to ANY PC, log on and presto, you're accessing your virtual PC with all your data and settings, without your PC needing to be online even operational (as would be required by "remote access tools). Sure, it may take some time for the data to load into the local hard-drive cache, but with a high-speed net, that shouldn't be a real problem.

I also envision that the DVPC "hosting services" would deliver a DVD image of your virtual disk on a weekly or monthly basis (or overnight on an emergency basis) so that you could walk up to any PC with your backup DVD and instantly be up and running. Any recent changes would come from the net or from your USB disk or flash memory drive.

I also envision adding support for "smart versioning" of files. Apps would do auto-save and then the user could go back and view or restore an old version based on backing out changes or select by time of day or date or whatever. You should be able to close an app, restart the app and then hit undo, for example.

I was thinking that the project could start using Linux and OpenOffice so that all the OS and app changes could be made easily, but come up with a reference design that could be "licensed" to MS for Windows and Apple for the Mac.

Summary of key features:

Oh, and this is just the start. The virtual PC would eventually include the ability to "background" a PC task so it runs on a remote server and can be foregrounded as/if desired. This virtual PC network execution environment would be an excellent basis for a software agent platform. And all this would tie in with grid computing as well.  And a great platform for sharing and collaboration.  And an easier way to manage a personal "web" site (e.g., simply put files in a "web" folder, set some attributes for each file and an "auto-web" feature would automatically generate a user-friendly web page for convenient access.)

The DVPC focuses on your data, but can include software as well.  Actually, you wouldn't want to include the actual software, but "links" to the software stored on separate software distribution servers.

One of the side effects of the whole DVPC model is that it really  is "platform independent" to the extent that you store your data in compatible formats that can be read by application software for the different platforms.  So, in theory you could create and edit some text documents, spreadsheets, presentations, graphics, etc. using a Mac and then logon from a Mac or Linux PC and work with your files.

The DVPC is not a "network computer" as the traditional term is used, as in "thin client".  DVPC is not designed to make PCs cheaper or more of a commodity.  It's not designed to eliminate the hard disk.  Rather, it is intended to complement the full features of the personal computing experience, while at the same time focusing on eliminating all the hassles of the local hard-disk without giving up any of the benefits of a local hard-disk.  So, users will still go out and buy a high-end computer with a big fast disk and a fancy graphics card to enrich their personal computing experience, but with DVPC they will no longer have to worry about managing their hard-disk data.

The DVPC would enable and support accessing your virtual PC data using a PDA or smartphone.  This would actually enable a large part of the "vision" of replacing your bulky notebook PC with a PDA or smartphone.

One of my motivations for the DVPC is to "solve" the backup and archive problems once and for all.  Right now, every poor user has to "worry" about backup and many suffer undue anguish whenever something "happens" to their files.  If backup is an inherent, transparent  part of the computing environment, all these problems go away.  Coupled with versioning, the user can simply say "Gee, I'll go back and look at what the file looked like yesterday morning".

In addition to the versioning of files that would be supported by the virtual hard-drive, I envision that the servers would have automated backup software that would in turn mirror the backups to other servers, including geographically dispersed servers, to ABSOLUTELY guarantee data integrity.

In addition to backup, I envision that periodic archives of the virtual hard-drive can automatically be written to DVD and those DVDs shipped off to physically secure sites.  My basic DVPC concept is agnostic as to where to draw the line ass far as what is considered a "basic" service and which services would incur extra fees.  One convenient offshoot of this auto-archive feature is the weekly/monthly/whenever distribution of an archive DVD to the user so that they can conveniently move to any PC anywhere and instantly continue their work without any horrendous latency.

I believe that it is important for the virtual hard-disk to be distributed (as in mirroring) over multiple servers so that the user is not "stuck" if one server goes down or is bogged down by traffic.  Real-world events like earthquakes, back-hoe "accidents", terrorism, and simple human error do happen.  Rather than simple mapping the virtual hard-drive to a specific domain name, there needs to be a multi-domain lookup scheme so that the network access software will automatically select an alternate domain name if access is impeded.  The delta upload process also needs to have a multi-path scheme plus a distribution mechanism so that changes can be distributed to all the mirrored copies on an asynchronous basis.  I would surmise that four mirrored images of a user virtual hard-disk would be the "norm".  Disks are cheap, so the replication should not be a significant cost issue.  Some users might want more replication to gain either greater reliability, to guarantee better access when net traffic is high, or to exploit parallelism.

I envision that something like a USB flash memory "key" or a biometric device of some sort will be desired to assure rock-solid control of access.  Or maybe something as simple and old-fashioned as a small "one-time pad" of passwords that you carry around either physically or on your PDA (e.g., system displays a code word and you scroll down to that code word and enter the corresponding password).  My concept is agnostic as to the access control method, but there are numerous ones that would be acceptable and more can be invented in the future.

My intent is that the initial focus would be on making the consumer PC easy and foolproof to use and manage. Then extend the concept to business and enterprise computing.

There's a lot more to it than that, but that's the basic idea. What do you think?

How is DVPC Different from <Package XYZ>?

There are many products that provide elements of DVPC such as backup, archive, file synchronization, file sharing, remote PC access, revision management, etc., but none provide the full scope of DVPC.

The DVPC is not about remote access to another physical PC such as is provided by pcAnywhere, GoToMyPC, LogMeIn, or Microsoft Remote Desktop Connection.  The distinction between DVPC and remote desktop access is that all of your data is stored on the network as a virtual hard-drive and the local PC accesses that data through DVPC without the need to access another PC elsewhere on the net.  Remote desktop access presumes two PCs and requires that the remote PC be online.  Remote desktop access is running the applications remotely, so there is minimal opportunity to take advantage of any rich hardware (e.g., real-time zooming of large graphic images, playing high-definition movies, etc.).  With DVPC, there is no need for any other physical PC than the one you are currently running on.  With DVPC you no longer have the problems of forgetting to copy file changes if you frequently work with multiple computers (e.g., work, home desktop, notebook, hotel business center, cyber cafe, client work site, etc.)  Also, help desk personnel can be give controlled access to your virtual hard-drive (without the need for an online physical PC) to trouble-shoot files and settings which will then automatically download to your PC when you logon.

DVPC is not a tool for managing enterprise data centers, such as VMware.  DVPC would dovetail nicely with such "virtual infrastructures", but not be competition.

DVPC should not be confused with the traditional "virtual PC" such as in the Microsoft Virtual PC or the VMware Workstation which are designed to let you run multiple operating systems simultaneously on a single physical PC.  They are using the term virtual to mean multiple "virtual" PCs simultaneously on a single physical PC, and they are sharing the hardware between them.  The DVPC refers to having a "virtual" hard-drive out on the internet and then "connecting" to it from any PC and working as if the virtual hard-drive was your local drive.  More properly, DVPC lets you walk up to any DVPC-enabled physical PC and work with your data as if it were already on the local hard-drive.

DVPC by itself is not an interactive collaborative computing environment such as Alan Kay's Croquet.  DVPC focuses on managing a user's persistent data -- the files and settings stored on the hard-drive.  DVPC could also be thought of as a virtual file system.  The DVPC concept is orthogonal to the user interface and collaboration concepts, meaning that DVPC is relevant to any user interface and any collaborative computing environment.  So, you should be able to set up your desktop on one PC, logout, move to a completely separate PC, log back in and be using all the same settings and work with all the same data.  Another way to think of DVPC is to separate the operating system and applications from the underlying data (and settings).  In theory, you should be able to access the same data using different operating systems, different user interfaces, and different collaborative computing environments, assuming that conventions were established so that the different operating systems and applications don't use the same files for different purposes.

DVPC is not simply a way to backup and share files in a local/home network.  Products such as the Mirra Personal Server (from Seagate) are nice for backing up, sharing, and remotely accessing files on your consumer/SOHO network, but don't at all address the problems of power failure, human error, fire, earthquake, flood, theft, and vandalism that can wreak havoc on priceless data and don't address the issues of data on your notebook computer while away from "home".

Connected Data Protector (from Iron Mountain) provides automated backup for PCs, focused on the needs of large organizations.

AllenPort sounds quite similar to DVPC, but the description is too sketchy to be sure.  One difference appears to be than AllenPort stores your data in one centralized location rather than distributed for added protection, although they do claim to support mirroring -- DVPC is inherently designed to be decentralized, with mirroring on top of that.  They also don't support the DVPC smart versioning.  It's not clear to what extent they support disconnected operation and DVD-based operation.

BeInSync synchronizes files, such as between your home and office computers, but doesn't eliminate the need for backups, archives, smart versioning, geographic and vendor diversity, etc. It focuses on remote access as well.

DataPod seems more focused on synchronizing data between multiple computers.  It's not clear how/if they support disconnected and DVD-based operation.  They focus on their peer-to-peer synchronization, but offer no support of the distributed protection of DVPC, nor the ability to logon from an arbitrary PC.  They also focus on a special web interface for managing files.  And they lack support for smart versioning.

FolderShare synchronizes and shares files. Acquired by Microsoft on November 3, 2005.

.Mac iDisk, Sync, and Backup from Apple - an Apple-specific service for network storage, synchronization, and backup. No support for vendor-diversity.

RepliStor from EMC/Legato is a tool for maintaining a master copy of data on an organizational server and then pushing it out to other locations such as branch offices.

Symantec's GoBack is more of a "system" utility than a transparent part of the system.  They do allow you to "go back" to a prior state of your file system, but only to a limited extent.  The ability to restore deleted or modified files is merely a "poor man's" approximation of DVPC's Smart Versioning that would allow you to simultaneously view any number of different versions from the history of the same file, all the way back to the point where you originally began using DVPC, for example.

Microsoft Windows OneCare Backup and Restore helps automate the file backup problem.

Xdrive is yet another approach to creating an internet-based, sharable "drive" for your system, where you can store, backup, share, and access data, but on a more explicit basis, without the transparency and multi-vendor, multi-server capabilities of DVPC.  One of the biggest drawbacks of Xdrive is that it is a single-vendor, single-server solution, so there are the issues of the possibility that they might go out of business or be acquired by a business which allows the service quality to degrade and the vulnerability of their servers to earthquakes, terrorism, and sabotage.

Please contact us with any questions or comments.

Issues

  1. Encryption and privacy issues.
  2. User identity.
  3. Use of peer-to-peer (P2P) approach rather than (or in addition to) remote servers for storage. For example, a group of consumers of any size could informally construct their own overlay network that DVPC could utilize for distributed storage.

Please contact us with any questions or comments.


Hit Counter

Updated: January 30, 2006 08:56:48 PM -0500

Copyright © 2005 John W. Krupansky d/b/a Base Technology