Remote Desktop Backend Merged into Wayland
New submitter Skrapion writes "One month ago, an independent developer submitted patches to the Wayland's Weston compositor which adds support for FreeRDP, an open-source remote desktop protocol. Now, after six revisions, the remote desktop code has been merged into the trunk. While remote desktop has been prototyped in Weston once before by Wayland developer Kristian Høgsberg, this is the first time Wayland/Weston has officially supported the feature. For a summary of why we can expect Wayland's remote desktop to surpass X.Org's network transparency, see Daniel Stone's excellent talk from Linux.conf.au."
Why show we care about freeRDP?
Doesn't RDP forward an entire desktop? If so, that's no replacement for X forwarding. But maybe FreeRDP is more capable than Microsoft's version. What the hell are we using Microsoft technology anyway?
Give me Classic Slashdot or give me death!
For the past 10 years I have been repeatedly lambasted for complaining that RDP and ICA were superior to X11 transparency and VNC with seemingly nothing being done to address the issue. Naturally, this made me a clueless troll. Blah, blah blah.
Now, with RDP copied and inserted into Wayland "we can expect Wayland's remote desktop to surpass X.Org's network transparency".
Fan boys are pathetic. LOL. I for one, welcome any improvement over X11 transparency and VNC. Anything at all.
The big benefit of the X11 protocol is that you don't need to pull the full desktop. If I need a window each from multiple machines I don't need a desktop to go with it. That takes far too much space. I want to have a remote running application on my desktop. I don't want the remote desktop on mine.
This is excellent news and has changed my mind regarding Wayland. A successor to X11 really needs good remote control functionality, but it doesn't have to be done the way X11 did it. I now look forward to a future with Wayland.
Quantum hacker.
is going to be pissed!
We don't Salute You!
For the next 100 posts whining about how this isn't exactly like forwarding an Xterm over an SSH tunnel (think about how stupid that is for a second)... X IS NOT NETWORK TRANSPARENT
What? That a lie! 1985 sez X is network transparent!
Well guess what: Modern versions of X are *not* network transparent anymore because to use any of the modern features of X that make using a modern Linux desktop even remotely enjoyable, you are breaking the classic backwards server-client paradigm of X. Sure, there's still a fallback mode for transferring data over networks, but lots and lots of modern features that you expect in a modern desktop GUI break in the process, which is *not* transparency, but is instead more of a network fallback.
Frankly, having tried to use both X and RDP over real connections using the real Internet, I'd take RDP any day of the week. I still remember the finger-pointing amongst developers of different projects when I pointed out that packets were being sent over the network each and every time my cursor blinked. Get over it guys, 1985 wasn't the be-all end-all pinnacle of graphics development.
Still don't believe me? How about clicking the link to Dan's talk about X where he says the exact same thing I just said. He's only been working on X development for over 10 years though, so I'm sure that some guy who sorta got X forwarding working over a gigabit link is much much more informed that he is....
AntiFA: An abbreviation for Anti First Amendment.
Are doomed to re-implement it. Poorly.
Starting in 2008 RDP doesn't require this either, please go read all about it: http://en.wikipedia.org/wiki/Remote_Desktop_Protocol#Version_6.1
AntiFA: An abbreviation for Anti First Amendment.
RDP can now do this as well. ICA has been doing it since the mid 1990's. But, even when pulling the entire desktop, or just an app window. RDP is orders of magnitude faster and uses orders of magnitude less bandwidth than X11, even when transferring video and sound!
While Wayland may solve some mundane issues with the client-server nature of remote desktops, I think in general a completely different programming model is needed for client-server applications. For one, the programming language should naturally support the notion of doing stuff in a non-blocking way (C/C++ does not naturally support this; simulating this requires working with threads or tinkering with even more low-level machinery).
If Pandora's box is destined to be opened, *I* want to be the one to open it.
...which adds support for FreeRDP, an open-source remote desktop protocol.
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license.
FreeRDP is NOT a protocol in itself.. :-/
I had to go to the website to sort out the confusion..
Hmm. A pedantic retort that completely ignores the root issue. Are you one of the fan boys, or am I misinterpreting your post?
The issue is that the end user functionality of using remote desktop like features under X11, Xorg, Wayland, all suck massive balls when compared to the likes of RDP and ICA. The only thing close to being as unpleasant to use as X11 is VNC. They may have been the best available in 1995, but they have sucked since then and continue to do so today. Any attempt to defend them in this regard is a clear indication that the defender has never used the the other products or attempted to do an real graphical work over a connection of less than 10Mbps.
RDP is no panacea. But, it is many times faster than X11-esque methods, most especially on lower bandwidth connections.
Does this allow per-application forwarding? (All sorts of people blasting that Microsoft can do it, not many people speaking to whether *this* specific implementation can).
Does this allow remote applications to cleanly appear in things like notification areas? That was one problem I had with NX, even the rootless mode failed to properly incorporate that.
Does Wayland+FreeRDP provide a more unified approach to audio+video being grouped together? That's a large gap in X, where audio is consider just completely unrelated to the remoting...
XML is like violence. If it doesn't solve the problem, use more.
RDP is truly impressive, but not everyone wants to have a desktop on their server.
Is it capable of letting me launch graphical applications from an OS without a local graphical display? I ask because my understanding is windows 2008 has added that as an option.
Wait a second, you are trying to run a graphicall application from your server on another desktop one? What?
n/t
The big benefit of the X11 protocol is that you don't need to pull the full desktop. If I need a window each from multiple machines I don't need a desktop to go with it. That takes far too much space. I want to have a remote running application on my desktop. I don't want the remote desktop on mine.
If only someone invented X forwarding over some sort of socketing. A secure sort of course.
Don't forget the added brainfuck of X11 remoting: what's the client and what's the server? The answer will probably surprise you...
Yes, this is very common.
I have KVM installed on a server, I use virt-manager to play with it. I forward X over SSH to run virt-manager and have it display on my local machine. The server has no graphical output. You can feel free to substitute any program with a graphical output you like for virt-manager in my example.
I never understood why sound on Linux was kept separate from X
sounds like a nice improvement. as long as:
* The interface is still the same. i.e. i ssh -X in to a machine, start a graphical program (evince or whatever), and it displays locally. I dont want to have to configure stuff, or start some additional server on the remote machine.
* It works in mixed environments. I might be running wayland on my laptop next year. but some of the machines i log into a currently on Scientific Linux 5. I guess RHEL 7 will still be X11 based and i would not make bets about RHEL8.
Also this will score double bonus points if it works with gnu screen. i.e. i ssh into a machine, start screen, start a tunnelled graphical app. drop the network connection, or suspend, or switch to a different machine, and it re-attaches the graphical app.
As long as I'm guaranteed that my local display can talk to remote applications, no matter what the flavor of the month is, I'll be happy. There needs to be a universal standard.
You do realize you probably prompted some brain-addled dev someplace to come up with the equivalent of PulseAudio for display technology, right?
All problems in computer science can be solved by another level of indirection—except for the problem of too many layers of indirection.
—David Wheeler
Aside from one major security vulnerability (Microsoft Security Bulletin MS12-020), RDP has been rock solid and secure. But perhaps most interesting is that it performs the best. I've tried just about all the major remote desktop protocols out there. VNC, LogMeIn, WebEx, GoToMyPC, TeamViewer. None of them compare to RDP in terms of responsiveness and ability to hold up under excessive gateway saturation of an ISP connection.
Life is not for the lazy.
No fucking wonder Linux on the desktop has failed. I'm looking at Wayland on youtube and it looks..... unready. The windows have no bordering. The applications are jerky. Applications are crashing. I've used X, and multiple windows managers, and I use all the remote tech out there, from NX, VNC, through to RDP. And given the educated commentry, X is more complete, only because its older. And its a somewhat cleaned up mess.
What a crap shoot. What a mess.
We`re all equal
Just guessing here, but I'd imagine 10^6 $100 bills are more convenient than 10^8 $1 bills.
I browse on +1 so AC's need not respond, I won't see it.
Well, a single bill is approximately 1 gram, so that's approximately 1000 kg in $100 bills. Not convenient at all, even neglecting volume.
Besides, no doubt it is all in massless, abstract data bits. Unless, of course, you count the additional mass of a full hard drive vs. an empty one... haha.
Sounds like a conventional Windows application installer, doesn't it?
Never wanted to install software from some 3rd party proprietary vendor? It's not like Free Software where you can just integrated it into some yum or apt repository.
Plus you're basically stuck dealing with whatever the vendor wants to give you.
A Pirate and a Puritan look the same on a balance sheet.
That's exactly all I use X for. I felt dirty for putting a windowing system on a server, but the payoff in ease of use was worth it.
Hi, I am Marc-Andre Moreau, founder and leader of the FreeRDP project. I was not directly involved with the FreeRDP Wayland backend. First, definitely take this backend as a first step. There is a *lot* more than can be done in the future, and I can tell you it has the potential to make your best dreams come true in terms of remote desktop. Here is a screencast I took about a month ago showing FreeRDP on Linux connecting to Windows 8 with RemoteFX, playing videos with sound smoothly: http://www.youtube.com/watch?v=JUF8xPKBQJM Even if this is impressive at this point, it is just a fraction of what we're going after in the future. RemoteFX was introduced in RDP 7.1, and is what FreeRDP implements. It basically encodes everything on-the-fly for fast encoding on the server and fast decoding on the client. This means the videos played in that remote desktop session I've recorded are re-encoded to RemoteFX, they are not sent as H264. RDP also provides a functionality allowing the redirection of the compressed video stream for local decoding and playback, but from experience RemoteFX provides a better user experience. RDP may be a protocol designed by Microsoft, it is part of the Microsoft Open Specifications. The long term goal of the project is not to make it a "FreeRDP to Microsoft" technology, but really to make it a "FreeRDP to FreeRDP" technology, where high quality clients and servers will be available for all platforms in existence. Like it or not, RDP is an extremely powerful protocol that has all the potential necessary to compete with leading commercially-supported alternatives, except that this one is open specification and open source with FreeRDP. We are also considering the possibility of defining our own community extensions to the RDP protocol to fill in the gaps left by Microsoft. We currently have clients on Linux, Windows, Mac OS X, Android and iOS. We have servers (still in their early stage) on Linux, Windows, Mac OS X and now Wayland. All of this is available under the Apache license. One common mistake about RDP is to compare only in terms of the core feature set, which is graphics remoting and input. RDP provides support for disk redirection, audio input and output redirection, multimedia redirection, smartcard redirection, printer redirection, usb device redirection, multitouch input, serial & parallel device redirection, etc. It has a very rich set of security features which we work very hard on supporting well (Network Level Authentication, TS Gateway, etc). As for graphics remoting, it is very elaborate in the RDP protocol, and it just keeps getting better with newer versions of the protocol. The next step for us is to jump on RDP8 support, which will bring many new features such as a progressive graphics codec, dynamic adaptation based on changing network conditions, a high performance codec for anti-aliased fonts, support for multitransport (TCP + UDP), enhanced support for WAN and higher-latency/low bandwith environments, etc. All of this can be brought to all platforms with the FreeRDP project, for the benefit of all. Brace yourselves, FreeRDP is coming.
Is there a reason that you aren't using a more standard exponential notation, ie. $10^8?
You mean a standard exponential notation... like Engineering notation?
Unless you're going to complain it's slower over the network. But then again, no display is going to manage that.
Either pointless or wrong. Pick.
I haven't tried this, but jack is a networked sound protocol... it should be possible to export that to your end of a remote session.
Need a Linux consultant in New Orleans?
This is great news and solves the long-standing question about how Wayland was going to handle remote clients in an acceptable manner.
But... the grandparent poster DIDN'T put a windowing system on the server!
virt-manager is a pretty simple X client, and the GUI is solely on your workstation. No GUI on the server at all. And, if that's what YOU do, you also don't have a GUI on the server:
[myworkstation] $ ssh -X myname@myserver ... and virt-manager appears in a window on your workstation.
[myserver] $ virt-manager
clicky, clicky, happy.
Folks - that's ALL there is to it. Except... myserver can be something completely different - A Solaris box, AIX, HP-UX, IRIX.
But, we get farther away... The Solaris application that has it's display on my workstation cannot use notifications (which should have been designed as an X extension, but the kids didn't know...). XBell seems to be deprecated. Without hackery, the xterm (that may be running on that AIX box) can't make a sound on my workstation (using that newfangled "pulse" thing). It can be hacked to work, though.
RDP? Will that help me? Probably not -- I don't log in to a single system that supports RDP.
Local X clients on my workstation can do fancier stuff, off course. But all the applications render to my X server, and the compositing happens locally, anyway. My Solaris and AIX X applications can push bitmaps, but they generally don't. Those applications really don't care.
The biggest problems with X today? Notifications. Other crap that uses other inter-application communications (like DBUS) instead of X. Deprecation of XBell. Network sound that is far too complicated.
If it takes "Wayland" to solve this, make sure that there is a simple proxy that can easily be deployed that lets me use those X applications. However, that doesn't fix my X issues, and just adds an additional layer.
How does this stack up? About the same as if I run an X Server (say Hummingbird, or Cygwin) on a Windows workstation. Interesting, that...the PRIMARY reason I (personally) run Linux as a workstation OS is to allow me to use an X Server as my primary display.
If that were not the case, I would just leave Windows (whatever version) on my workstation, and start from there.
Well... that and being able to simply recompile my code to run on the workstation or the servers as appropriate. I generally use Tk as a GUI for applications anyway (at least for one-off apps).
Just another "Cubible(sic) Joe" 2 17 3061
Sorry, this will NOT directly replace all you can do with X11. Not by a long shot.
Wow, that's amusing. I am an engineer and I have never heard of that.
I liked Daniel's video. It provided more detail about X than I've seen from any Wayland link so far and cleared up a lot about Wayland to finally get me interested in it's development. Daniel in particular is the first person I've seen talking about Wayland that I'm interested in listening to since he actually knows facts and can communicate them well as well as have a great attitude about what he's doing
That said, and I know I'm biased in favor of X, I'm very disappointed in the solution to all the problems in X11 that he detailed. Due to issues with how X handles it's job, the solution has been for years to let the client fix it at their end and use very little of X. Avoid fixing X. The Wayland solution sounds like take that work around and build a new display around it. Not encouraging.
From his description I agree: the X11 code cannot be fixed. But, my impression is that as coders/developers they applied a coders take to the problem and came up with a coders solution: Take the code written app-side as a work around and build a design on it. Reverse engineer a design based on code that exists. That sounds really negative and I know that will raise some bile, especially since the standard answer is "if you think they are wrong, code it yourself". Based on that video, there's no way I could code at his level so there's no ground for me to stand on there.
What makes me comment on this topic is that I like the X11 design/architecture and feel strongly it is more useful now than the alternatives (RDP/VNC/etc.) and will be more useful as time goes on. I would like a designers solution in that fix the design, then work towards getting that design coded. From the sound of things, that would mean dumping backwards compatibility with X11 protocol, but I would still rather loose X to a better design than loose it to what I see in the Wayland design. Unfortunately those who would be able to handle that kind of development look to be focused elsewhere...
AB HOC POSSUM VIDERE DOMUM TUUM
yum and apt aren't restricted to Free software; there's proprietary software that uses these (at least apt, not sure about yum) to maintain themselves too. A couple of examples are Opera and Google Talk.