Sign up ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I need to connect to a headless X Windows server (running on Ubuntu) from my MS Windows 7 computer over a 100 Mbit network. I could use VNC (or any other remote viewer) but the 3D graphics performance would be lousy I imagine. I used to have it hooked up to a monitor, but that's broken now and I can't afford a new one. A friend advised that I could try and use an X client, and that the 3D graphics wont suffer too much over 100 Mbit. Cygwin seems to be an option, but I was wondering if there were any more lightweight options.

share|improve this question

closed as off-topic by Michael Kjörling, DavidPostill, fixer1234, Kevin Panko, Nifle May 26 at 11:51

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking product, service, or learning material recommendations are off-topic because they become outdated quickly and attract opinion-based answers. Instead, describe your situation and the specific problem you're trying to solve. Share your research. Here are a few suggestions on how to properly ask this type of question." – Michael Kjörling, DavidPostill, fixer1234, Kevin Panko, Nifle
If this question can be reworded to fit the rules in the help center, please edit the question.

There is something I call the physical terminology, that is servers (think of the machine) have a keyboard and a screen (and sometimes a mouse). However, they provide services to other users and machines (dhcp, dns, mail...), but that is what I call the virtual terminology. In the case of X, the server is taking your input (physical) and providing you with access to remote applications and services (virtual). So applications you run (on Linux) connect to the server (on Windows), and send their commands to the server, which draws them on the screen for you. Hence why it is a server you need. =) – Wolf Jan 22 '10 at 16:02

5 Answers 5

up vote 18 down vote accepted

Xming is popular and free, although since I use the rest of Cygwin anyway, I tend to use Cygwin's X server.

Oh and by the way, the client/server terminology in X seems backwards until you think about it the right way: servers are the things that provide a display service; they display the graphics and take mouse/keyboard input (like your Windows box); clients are the programs (running on Ubuntu in your case) that need the display service.

share|improve this answer
Nice thanks for the info. Installed that now, just need to figure out how to use it. – nbolton Jan 22 '10 at 15:38
To use Xming, SSH into your Ubuntu box with PuTTY, but make sure to check "Enable X11 Forwarding" under the Connection > SSH > X11 section. Set the display to localhost:0 (IIRC), and then startup the programs you want. Good luck! – Steiv Jan 22 '10 at 17:27

I tried transmitting 3D graphics over the network one time and figured out one thing: performance is bad. This happens because all accelerated graphics drivers do not really transmit any 3D data through the network (even if this is loopback or even UNIX abstract socket) but do some direct rendering.

The configurations I tested included both Xming (Xming is really ported Xorg) on Windows + X clients on Linux and both Xorg and clients on Linux. Network was 100Mbit, graphics card was NVidia GeForce FX 5200 (that's not a very recent card, but it definitely can handle glxgears), and both computers have PIV class processors and around 1Gb of RAM through for these two limits were not reached.

I started glxgears as a client. In both cases it displayed very chopped animation and FPS values around 30 or 50. To compare, I also run glxgears native and it showed around 8000 on Linux host and IIRC 500 on Xming with ported glxgears (that was about a year ago and Xming performance may be better now). So network performance is definitely the bottleneck for 3D graphics.

Also I must note that VNC operates only with 2D graphics: it has a very simple protocol that consists mostly of commands like "show this rectangular image on that coordinates", so it definitely won't show any 3D performance.

share|improve this answer
Nice answer. I wonder if gigabit ethernet improves performance... – nbolton Jan 27 '10 at 17:08
It should: multiply everything by 10. – whitequark Jan 27 '10 at 17:49

As of 2015, I'd favor VcXsrv Windows X Server after using Xming for years.

It's free, it's open-source, and 64-bit versions are offered.

share|improve this answer
Note that it's just Xorg built using MSVC instead of GCC – Johan Boule Jul 30 at 15:12
The SF page introduces it as follows: "Windows X-server based on the xorg git sources (like xming or cygwin's xwin), but compiled with Visual C++ 2012 Express Edition." - Recent versions of XMing (Xorg) are only available for paying members. Thats where VcXsr enters the stage. – GKrost Aug 1 at 14:16

You might want to try Xming. Also, check out this LinuxJournal article, which gives a lot of info on the subject.

Note that on Linux, for security reasons, xdmcp is not enabled by default. For added security, I recommend you encrypt your connection using SSH. See this section from TLDP for more information about how to set everything up.

share|improve this answer

It sounds like VirtualGL is the kind of thing you're looking for, though I know even less about it than the Wikipedia article. Good luck!

share|improve this answer
+1 didn't knew about it. – whitequark Jan 23 '10 at 20:11

Not the answer you're looking for? Browse other questions tagged or ask your own question.