Windows remote desktop: which PC is really doing the work?

I have 3 PCs running Windows XP, and I regularly use 2 of them (not at the same time) to remote desktop to the third. When I do this, where is the actual processing taking place, at the PC I’m touching (which I assume is the client) or at the PC I’m operating remotely (which I assume is the host)?

This seems like yet another thing I should know or be able to figure out intuitively, but every time I think I’m comfortable with an answer, I come up with a reason it doesn’t seem right. For instance: the fact that I can be downloading a very large file or group of very large files and disconnect my remote desktop session without interrupting that download suggests to me that the host is doing the processing. Yet, the fact that things seem to run much faster when I’m connected via my fastest PC suggests to me that the client is doing the processing.

A bit of both - Remote Desktop Protocol is more complex than VNC - which is just streaming you a picture of the desktop and echoing your mouse and keyboard actions back to the host. RDP includes transport mechanisms for all sorts of stuff - so graphics rendering might be done locally by the client, along with stuff like printer spooling. I think the host is doing most of the actual processing of instructions in executable files, but even that might not be true with .NET applications.

The remote computer that you’re connecting to is doing all the work; any action you initiate is executed by that computer’s CPU, not your local CPU; when info is loaded into RAM, the memory chips involved are those of the remote computer.

What your local computer does is draw the remote computer’s screen for you, and convey your mouse and keyboard activity to the remote computer. None of the data is ever “in” or “on” your local computer, aside from the pixel-info of the remote computer’s screen.

ETA: On second thought I’ll defer to Mangetout’s greater knowledge in this area. I thought it would be the same as Timbuktu and VNC.

Cool. Thanks!

Steady on - RDP is right on the perphery of my knowledge - but a quick scan of that Wiki article (if it’s correct) seems to suggest that the client handles a fair bit of the interface layer, with the host doing the actual number-crunching.

But I think the implication is that, say, a client with a fast graphics card, connected by a fat pipe to a host with a slower one, could achieve greater performance in some graphical tasks than if the roles were reversed.

most of the processing workload would be done by the remote computer. for example, if you opened up Internet Explorer on the remote computer and downloaded files, it would be via the remote computer’s internet connection, and to the remote computer’s drive (unless you did something like map a network drive and send it there).

I regularly do database transformations this way, because I can kick them off via remote desktop, disconnect (not the same as logging off) and my processes will continue to run for me to check on later. Later, I re-connect and all of my open widows, etc are there waiting for me, just like if I had left the computer on.

Your computer (to the extent that it is able to communicate with the remote computer) hndles the drawing of the screen on your machine based on input from the remote computer. It can also habdle things like print spooling, etc. Remote Desktop will allow you to copy and paste from your desktop to the remote one, so I can copy a script I receive in e-mail and paste it into an application window on the remote server and execute it. That’s very handy.

Another thing to keep in mind…unlke with VNC or PCAnywhere, someone sitting at the remote desktop will not see windows pop open magically, the arrow moving around, etc. that’s remote assistance, where someone else takes over your desktop. Remote Desktop used to be called Terminal Services, because you were basically using your machine as a dumb terminal to execute commands on another PC.

:eek: :eek:
That quote is bad enough, but when combined with that username…