Regarding Apple Remote Desktop
I got some mail asking why I was giving Apple Remote Desktop a hard time in a previous post, and I suppose I should quantify my comment: while I do just find dealing with ARD loathsome, it's primarily from using Windows, and it's only because I want what ARD can't offer.
If you haven't used it, ARD the software Apple sells to let you control Apple Computers remotely via a GUI. You get client software and an administration utility to access/control them.
It's a little more than that, as it also incorporates management tools; I.E., create a disk image of what you want on your 300 Macs and then push it out to them. If you ask administrators who have to take care of a bunch of Macs, they'll usually say it's invaluable. Then they'll spit, because it kinda sucks compared to what's on the other side.
It's buggy and it's slow. This isn't to say things like VNC and such that you'll use for Linux are speed demons, but by and large, using later versions with updated compression, it feels like an order of magnitude faster than ARD.
I've never had ARD feel remotely fast, and never been under the illusion that I was actually sitting at the other computer. It's not too bad over 100BT, but the idea of using it over the internets (broadband) at this point just wigs me out. Let alone 10BT. Or wireless. We won't even speak about what wireless does to ARD. 802.11b, 802.11.g, whatever, it doesn't care, it chokes them all.
Microsoft pretty much blows it all out of the water with RDC, or Remote Desktop Connection for Windows. It's incredibly fast. You can use it over the internets (broadband, not modem) and it's, well, usable. You can sit on a computer in one room, but be working on the computer in the next room over wireless, and it feels like you're actually sitting at the other computer. It's built-in, and it works really, really well. Hell, Microsoft released a client for the Mac so you can access your Windows client/server and it smokes.
Which isn't to say you don't have access to this stuff already with your Mac; I can login via SSH for the command line, but for GUI I'm out of luck when it comes to what's built-in. There is nothing I can just plug into. I can download and install VNC solutions for this that allow you to control a variety of platforms, and these have improved greatly on the Mac lately... but they're still always slow. One example I've heard is that the widgets and shadows and such of Aqua don't compress well, and that might contribute to it, but I doubt it's the whole story.
If I want to shell out $$$, I can buy Apple Remote Desktop and install the client on any machines (remember, nothing is built-in on OS X) and then install the administrator app on the machine I want to control it with. There are always old mainstays like Timbuktu, but that hasn't made the leap to OS X all that well.
And none of them, none of them, come even close to what you get if you are using Windows. And this isn't because a Windows screenshot compresses so much better than an Aqua one. There's real, solid technology making it happen.
A primary problem of this is Quartz itself, it wasn't really designed with multiple users in mind, let alone streaming it out over a network. IIRC, this was actually something that was given up in the move from Display Postscript to Quartz.
To get a bastardized idea of the differences, think of VNC as taking a snapshot of the 'host' systems screen and passing it out over the network to the 'controller', along with a small stream of data going back and forth giving information such as where the mouse is, and that something has been clicked at coordinates x and y.
The first optimization you can do is compress the screenshot, the second might be to have some logic to figure out what on the screen has actually changed. But you're still sending out a lot of graphical data for just about everything, and the larger your screen the crazier it can get. Even a quarter of a 1600x1200 desktop is a sizable snapshot to send off over and over.
Now imagine something that works much more in the vein of how an internet-based game works: you start using prediction for where the mouse is going, and above all you send as little actual image data as possible. All the things like the widgets, windows, etc. get drawn locally by the controller system which is just being fed a series of commands saying "draw a standard window here, move a standard window there".
I've had Mac users say this graphical remote access is an unnecessary feature, not something people really want, and as such it doesn't matter that OS X doesn't have it. These same people said pretty much the same about 'Active User Switching' which was something else Windows had built-in which Apple eventually adopted. They're the kind of things that allow you to use your computer in different ways, and can help change how you work, and this is only going to get more important as time goes on.
A feature like Active User Switching allows a family with one computer not to have to log out daughter when Mom needs to check for an important email or vice versa. Before that, daughter would have to close down everything, log out, let mom log in and do her thing, etc. It allows developers to easier test software, it allows administrators to make better use of their labs, and a whole host of other things I'm not mentioning.
But more and more, homes have more than one computer, generally from a mix of:
- The average cost of a computer has fallen so that this is in the realm of fiscal reality for more and more people to indulge the convenience of letting a parent work on Quicken while daughter works on finding malware to download
- Reliability of the hardware we buy has fallen drastically while dependancy has ballooned. The amount of users who can do without their computer for a few days to a week has shrunk in a big way, and almost everything out there isn't trustworthy, especially notebooks, and yes, this included iBooks and Powerbooks.
- Different hardware is better suited to different tasks; doing real video work on an iBook is painful, and doing emails and web browsing on the sofa with a G5 in your lap is equally so.
As we become more and more dependent on multiple machines, we're going to care less and less about which actual machine we're using. We're just going to want to do what we want to do. And that's pretty much what I want; if I'm sitting in the next room working on my portable, I want to be able to connect to the other computer and work with it in a reasonable way for whatever I want to do.
I'm not going to list a ton of examples, as these are different for everyone. But if you've ever tried to walk someone through troubleshooting on the phone, I'm sure you can think of a few.
Comments (14)
Posted by: Cap'n Hector at November 6, 2004 02:53 PM
ARD Client is built-in to 10.3 and higher.
Posted by: Anioc at November 6, 2004 05:19 PM
ARD Client is built-in to 10.3 and higher.
Yes but you have to purchase the administrator program to use the client...
Posted by: NOBODY at November 7, 2004 01:05 AM
You don't need to buy the admin program -- use the ARD "client" and a VNC client to connect to it.
Posted by: Stephanie Mailor at November 7, 2004 02:24 AM
I have 10.3 (panther), where do I find the Apple Remote Access program to turn it on and how do I connect?
Posted by: Diggory Laycock at November 7, 2004 08:22 AM
Stephanie - see here:
http://www.macosxhints.com/article.php?story=20041013050458686&query=vnc
Posted by: Mindflayer at November 7, 2004 07:49 PM
Drunk:
After our IM chat this weekend, I checked out ARD. Gah. You're right, it does stink. I am not a huge fan of VNC, but you're right on the comparison. Hell, running xnest was faster.
Here's what I am thinking, though. Maybe Apple is a Johnny-Come-Lately since you can ssh in and fix things? With Microsoft Windows™ products, as a sysadmin, you were pretty much required to use something like PC Anywhere (don't get me started). RDC was the solution for remotely admining a GUI-powered desktop or server. Yes, I know there are ways to remote console into a Windows server, but I am talking about the general Windows admin.
I love RDC. I use it all the time, from admining servers to helping my father-in-law.
Posted by: kirn at November 8, 2004 01:30 PM
What I don't understand is why Apple refuses to implement (open access to?) X-Windows style application forwarding.
The advantages of being able to forward just one application at a time into an X11 window are obvious, as Drunk mentioned the widgets doing the drawing can operate only on the end the user is on, you're just running the application on a remote machine. The bandwidth/time-delay becomes much less of an issue.
Apple's X11 software supports using a Linux machine to forward X applications, it should also be able to support another Mac on the other end.
Posted by: Mat at November 8, 2004 09:49 PM
To help with performance issues you can switch the observe/control display to black & white. It helps a little.
Posted by: Cap'n Hector at November 8, 2004 11:39 PM
Is there any VNC-type tech that has decent speed on Mac? I've tried ARD and OSXVNC with Chicken of the VNC using IP-over-FW, and the response time is dismal…It's using ~200k a second for updates, but I've got way more bandwidth than that open for it.
Interestingly, VNC was the fastest, with ARD a close second…but ARD looked better in general. But I'd expect some real speed…and ARD in black and white didn't help.
Posted by: Jeffrey Holton at October 1, 2005 02:19 AM
I dunno.
I just installed it a few minutes ago, and I can't even get it to connect at all to the remote client.
Yes, they're both running 2.2, and yes, I admit, I'm running it wirelessly. ...but shouldn't I at least get a connection??
To be fair, I've never been able to play nice with the running VNC server, either. I dunno what's up with this.
Posted by: Mothra at November 25, 2005 04:25 AM
I like to be able to control my home computers' desktops from work (for various reasons). I can do this easily using Microsoft's RDC (either from a PC or my Powerbook) but there's no way I can access my iMac desktop in the same way - it's just too slow. In fact, that's an understatement - it's so slow as to be unusable. I tried to calculate just how much slower, but Mircrosoft RDC is so fast, that this is very difficult.
To give an example though, I can control my home PC (6 miles away) from a 10Mbps office LAN to a 2MBps cable connection as if it's right here on my desk (but running a tad slow).
When connecting to my home iMac (either from Windows or Mac), it takes approximately 30 seconds just to draw the screen.
It is surely embarassing that Microsoft have managed to find a way to do this efficiently and have given that technology away free, yet Apple charge a fortune for a far inferior product.
At best, it shows a lack of vision or imagination - surely qualities that Apple would like to be renowned for?
Look, I hate Microsoft and their crappy OS. I only run it at home for a few applications that aren't available yet on the Mac (Guitar Pro for one), otherwise my last remaining PC would be in a skip by now. But you have to admit - Windows users are laughing at us over this one.
Posted by: Duffin at January 1, 2006 04:31 AM
Hmmmm... for me ARD is MUCH faster than VNC on Mac OS X.
All you guys saying VNC is better, which client are you using? Chicken of the VNC? It's not even usable for me over slow WiFi (802.11b) while ARD (2.2) over the same network seems pretty impressive (for a bitmap pusher I mean).
What gives?
Posted by: Case at January 21, 2006 10:38 PM
I've got a cluster of minis running headless as my "home media" system. I've been using a 12" PowerBook and ARD as the terminal to control the minis...Oh, and the PB connects via WiFi.11g - works great for about 6 months now.
Last week I was "forced" To bring an XP box home from work to run some goofey-assed proprietary database they've got. (One day I'll convert it to a mac app, but that's a whole different story.) Now that I'm spending time on the WinTel machine, I keep wanting to VNC into the minis to change a tune or play a movie while I work. I keep getting a variety of "this version is not compatible" errors when I connect from the Windows box... any ideas?
Oh, and for anyone who can't get ARD to connect (I was skimming, so I missed the name...sorry!) Check the firewall and router settings to be sure both ARD ports are open... on BOTH ends of the connection. Actually, it could be more than 2 ends. My first go-round wasn't so smooth until I realized that the ports had to be open on both software firewalls (on each machine) then on the AirPort router as well. To make it even more complex, try adding your neighbor who's on a different 'net connection... multiply the permutations by however many firewalls HE'S got and it's a real mess...








"As we become more and more dependent on multiple machines, we're going to care less and less about which actual machine we're using."
That's pretty much one of the reasons I bought my Mac: SSH, X11, Quartz, and RDC. Nine times out of ten, the "other machine" is one of the dual-booting boxes I admin, or my personal Linux box. The iBook makes a perfect terminal AND light-use workstation (coding, designing websites, screwing around over the network or on the command line).
That said, I would like to see ARD stop sucking, because we're expanding our labs to include some iMacs, and because it's such a great technology. But Apple, historically isn't a back-end company, I don't think: I mean, yeah, we have an Xserve cluster, and while they're expensive they're good -- but we talk to it with SSH, not ARD. Unix is backend, Apple is not; if they wanna improve as a backend company for the point-and-click set, then yeah, ARD will get better, but I think most of the folks buying Macs are 1) using them for the client side, like me or 2) Unixy enough not to care about ARD.
Then again, we don't use most of the OS X maintenance tools for our cluster, so I don't know how that situation'd change if my counterparts over at the machine room all of a sudden decided they wanted to use Xgrid...