A Quick Survey of Remote Desktop Technologies
Not too long ago, my family and I traveled from our home in Nashville, Tennessee to visit our extended family in Syracuse, New York. Three days into our vacation, I received a high-priority request from my boss in which he asked me to modify an Adobe Flash interaction I had submitted in the days before my vacation began.
The problem was that although I had Adobe Flash installed on my personal laptop, all of my Flash source files and supporting documentation were located on my work PC in my home office 875 miles away.
Several ideas crossed my mind as to how I could remotely access my work PC from Syracuse, some more complicated than others. Ultimately I settled on the wonderful LogMeIn service, which we will discuss later on in this article. I called our house sitter and stepped her through the simple process of installing the LogMeIn client software on my work PC. Within 10 minutes I found myself viewing my home Windows desktop remotely from my laptop in Syracuse. In 5 additional minutes I transferred the needed assets to my laptop and resolved my boss’s request. Problem solved!
What is Remote Desktop Software?
Most of us have high-speed Internet links in our homes with which we use wired or wireless routers to share connectivity with several devices, including desktop computers, laptop computers, game consoles, and mobile devices. Remote desktop software, simply stated, is software that allows us to view and interact with the user interface of a remote device. For instance, I could use my iPad from my living room to manage my Windows 7 computer located in our home office.
Remote desktop software is available for just about every computing platform. Typically, remote desktop software consists of two components: a server component that is installed on the device to which you want to remotely connect, and a client component that is used on another device to connect to its associated server component.
Many of the protocols (communication rule sets) involved with remote desktop software are proprietary. However, so long as the remote access software vendor makes client and server components available for different operating system platforms, you can transparently cross those OS divides. For example, we can use remote desktop software to manage a Red Hat Linux desktop workstation from a Mac OS X laptop. Or we can use remote desktop technology from our iPhone to interact with an Android tabletand vice versa! It’s really pretty fascinating, isn’t it?
What’s great about remote desktop connectivity is that so long as the devices on either end of the connection speak the same “language” (in other words, use the same protocols), it doesn’t matter what hardware or operating system platform is in use. Thus, someone on a Windows 7 computer can remotely access the Finder of a Mac OS X computer located on the other side of the world.
Issues to Consider with Remote Desktop Connections
As we now know, remote desktop software enables us to view and interact with the desktop of another computer or device located on our local area network (LAN) or another one, even across the public and unsecure Internet.
The problem with some of the more business-oriented or “barebones” remote desktop technologies is that some remote desktop solutions employ connections on non-standard Transmission Control Protocol (TCP) ports. A good example of this is the Virtual Network Connection (VNC) protocol, which we review later on in this article.
The problem this non-standard protocol and port issue poses for the typical home user, however, is that their residential routers need to be configured to forward incoming and outgoing traffic on those port IDs. This presents a learning curve that most non-technical people don’t want to bother with.
The current trend in remote desktop software is to employ connections on standard Web browsing portsnotably TCP 80 (which we use for Hypertext Transfer Protocol, or traditional Web connections) and/or TCP 443 (which is used for secure HTTPyou use HTTPS when you interact with e-commerce Web sites).
The advantage to this schema, of course, is “plug and play” configuration. The potential downside, though, is one of security. This ease of remote access means that we must be extremely careful to choose strong passwords to protect our remote desktop-enabled systems.
A strong password is a password that includes most, if not all, of the following characteristics:
- At least 8 characters in length
- A mixture of uppercase and lowercase letters
- A mixture of letters, numbers, and alphanumeric characters
- No part of the password exists in a dictionary of any language
If you feel that you need some assistance in developing a strong password, then look no further than any of the following Web sites. All of these are great learning and reference resources for you:
- Tips for Creating a Strong Password
- The Ultimate Guide for Creating Strong Passwords
- GRC High Security Password Generator
- Secure Password Generator
Now that we have the preliminaries out of the way, let’s have a look at three popular remote desktop technologies. The first example is free and specific to Microsoft Windows. The second and third products requires are usable with just about any computer or mobile platform.
Windows Remote Assistance/Remote Desktop
Windows Remote Assistance has been a part of consumer Windows since Windows XP. The tool was developed as an easy way for Microsoft Support personnel to see the customer’s Windows Desktop environment to perform, well, remote assistance for the customer.
Figure 1 Windows Remote Assistance
The chief advantage of Remote Assistance is that it that (a) the software is automatically present in all recent versions of Windows; and (b) it is fairly easy to establish a remote help session. For specific usage guidance for Remote Assistance, please see any of the following hand-picked reference links:
- Step-by-Step Guide to Remote Assistance
- How to Use Windows 7 Remote Assistance Easy Connect to Easily Solve Computer Problems
- How to Set Up Remote Desktop with Windows 7
- How to Use Remote Assistance Over the Internet
As you can see in the previously given screenshot, Remote Assistance offers not only remote desktop viewing and interaction, but also support chat and file transfer.
Windows Remote Desktop is the business-class version of Remote Assistance. Whereas Remote Assistance was developed as a “hand-holding” method for two non-techies to share their Windows desktops, Remote Desktop is a stripped-down remote access technology that is intended primarily for Windows systems administrators to remotely connect to Windows server and client systems.
Figure 2 Remote Desktop Connection
Windows Remote Assistance and Remote Desktop have two downsides from my perspective. Number one, the proprietary Remote Desktop Protocol (RDP) operates on a non-standard TCP port (3389, to be exact). Thus, you need to configure openings in your software firewall and/or your router to let the incoming/outbound traffic through.
Number two, this solution applies only to fully-fledged Windows systems.
LogMeIn is a premium service (that is, you’ll need to pay a license fee in order to obtain full benefit), but boy is it ever full-featured. The LogMeIn software enables transparent remote desktop access to a variety of OS platforms, including the following:
- Microsoft Windows
- Apple Mac OS X
- Apple iOS (iPhone, iPad, iPod touch)
- Google Android
Not only that, because the proprietary LogMeIn remote access protocols operate over standard Web ports, you don’t have to worry about port forwarding!
Figure 3 LogMeIn Web-based interface
Besides the license cost, the only downside I experienced with LogMeIn is the fact that every system you want to enable for LogMeIn-enabled remote desktop sharing needs to have the client or app installed. As you read at the beginning of the article, if I didn’t have my house keeper available to install LogMeIn on my home PC, I would not have been able to complete that remote desktop task.
What’s cool about the Virtual Network Computing (VNC) client/server protocol is its universality. Not only is VNC technology free and open-source, but I can’t think offhand of a single desktop or mobile platform that doesn’t support the remote desktop protocol.
You can find VNC server/client packages for Windows, Mac OS X, Linux, iOS, Androidthe list goes on and on. Because all VNC software uses the same protocol standard, the software packages are (for the most part) fully compatible with each other.
Downsides? Well, we have the port forwarding issue to be concerned with (VNC operates on TCP port XXX). Moreover, some of the VNC packages might not be the most secure and/or well programmed. Therefore, you should shop around to find the best-reviewed products before taking the VNC leap.
Finally, you will find that VNC software typically gives you almost no hand-holding. Thus, system admins and propeller-head geeks like me love the cumbersome configuration interface. However, the configuration complexity isn’t likely to win many fans among traditional residential casual computer users.
Figure 4 Using VNC to control Mac OS X from Windows
Here is a heads-up of some of the most popular VNC packages:
So there you have ita nutshell survey of what remote desktop technology is, why it is useful, some caveats with which you should concern yourself, and some tips on finding the right remote desktop package for you. I hope that you found this article informative, and I look forward to hearing from you if you have any questions, comments, or suggestions for future articles.