On Friday Google launched the public beta of the "Google Remote Desktop" extension for the Chrome browser. This extension allows one computer to remote control another, all done via Chrome extensions on both ends. We first learned that Google was working on something like this over a year ago. (Back then they were calling this "Chromoting"), but this is the first time that the general public has access to this capability.
The current beta requires that a user is present on both ends. The person whose desktop is being remotely controlled clicks a button that says something along the lines of "I would like to be controlled" which generates a key. Then the remote controller types that key into the Chrome web app to initiate the remote control session.
The requirement to have a user present on the remote end means that Google Remote Desktop is not ready to replace LogMeIn or GoToMyPC. However, Google's official description of the extension says: The goal of this beta release is to demonstrate the core Chrome Remoting technology and get feedback from users. ... Additional use cases such as being able to access your own computer remotely are coming soon.
From a technical standpoint, a message on the Chromium-dev mailing list reveals some basic details about how it works. Responding to a question about what protocol and what libraries it uses, Alpha (Hin-Chung) Lam wrote:
The protocol is something we designed and based on several google technologies:
- Bottom layer is a P2P connection established by libjingle. This can be RDP, TCP or a relay through Google.
- We use PseudoTcp implementation in libjingle to provide reliable connection.
- On top of that is SSL connection.
- protobuf is used for structured data and framing.
- Graphics are encoded using VP8.
Digging into that, this basically looks like a peer-to-peer, secure, reliable connection, with VP8 encoding happing at the remote host and a simple VP8 player on the client. (Although the client also has to have the ability to send keyboard and mouse data to the remote host.)
What's this mean for Google?
Now that we've seen the basics of how Chrome Remote Desktop works and we're hearing what Google might want to do with it, what does this actually mean for Google? Why are they going down this path?
At the most basic level, Chrome Remote Desktop means that Google can enable access to legacy desktop apps from Chromebooks without needed any third party software. As long as a user had a desktop running Chrome somewhere, they could access that desktop and those apps.
Of course we've already seen similar concepts from other vendors. Citrix actually showed off their HTML5 "clientless" Receiver at the Chrome launch. And we've also seen (either released or in preview form) full browser-only clients from Ericom, InstallFree, and VMware. So this is nothing new per se. But why is Google going down this path?
Is there maybe an angle here for Windows apps from the cloud? Maybe it's about the cloud and not about your own desktop apps running at home. Although I can't see Google caring too much about the cloud. Certainly their platform can't run these apps. Sure, we can understand Microsoft doing this with Azure, but they have twenty years of legacy apps to protect. Google doesn't.
Then again, who's the real audience? Will personal end users still have apps? And if they do, won't they be intense apps that won't work in the chromoting environment anyway? I mean if people are just getting occasional access to MS Office, wouldn't they just switch to Google Docs?