Forgot your password?
typodupeerror
Graphics Linux

Remote Desktop Backend Merged into Wayland 215

Posted by Unknown Lamer
from the thought-no-one-used-that-feature dept.
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."
This discussion has been archived. No new comments can be posted.

Remote Desktop Backend Merged into Wayland

Comments Filter:
  • by Anonymous Coward on Wednesday April 03, 2013 @09:05AM (#43346753)

    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.

    • by CajunArson (465943) on Wednesday April 03, 2013 @09:14AM (#43346819) Journal

      Even better... watch the full video and you'll note that any version of X that isn't in a museum does not actually implement network transparency anymore (instead it's more of a network fallback to a less-capable graphics display).

    • by unixisc (2429386)
      In fact, doesn't this resolve the one concern X11 fans have about Wayland - the loss of remote desktop support? Aside from the fact that X clients can be supported on Wayland?
  • by etnoy (664495) on Wednesday April 03, 2013 @09:07AM (#43346765) Homepage
    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.
    • by kobaz (107760) on Wednesday April 03, 2013 @09:15AM (#43346833)

      The way X11 does forwarding is very handy and useful, and I make use of it fairly often. But as usual, there's more than one proverbial way to skin the proverbial cat.

      X11 forwarding is great for high speed and low latency connections such as a lan. Using it on anything else is asking for trouble, because if you lose your connection, you lose your app. Perhaps an improvement can be made to X11 forwarding in the new path forward (wayland) to make it more like screen where you can attach and detach to a running X11 app from a networked endpoint.

      Remote desktop using RDP is superior to X11 forwarding for lossy connections because once the screen is loaded, very minimal draw/drag/etc communications are sent between the server and client for updates, X11 is far more data intensive for screen updates. And of course if you lose your connection (which I frequently do, trying to RDP from my cell phone), you'll get your apps back when you reconnect.

      Having both X11 forwarding and RDP is a great choice, and I hope something similar to my aforementioned improvement makes it into the app.

      • by Skrapion (955066)

        The nice thing about the Wayland stack is that it's much easier to replace parts of the stack with something else. I'm sure this won't be the last remoting protocol we see layered on top of Wayland.

        • by Hatta (162192)

          Great, just what we need, multiple incompatible remote rendering back ends.

          • by Skrapion (955066)

            You already have multiple incompatible remote rendering back ends in X, it's just really hard to do in X. The reason the Unix mantra "do one thing well" is so important is because it allows you to swap out parts and innovate more easily.

            • by Hatta (162192)

              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.

              • by nebosuke (1012041)

                There needs to be a universal standard.

                This just cries out for the obligatory xkcd [xkcd.com].

      • by Bill_the_Engineer (772575) on Wednesday April 03, 2013 @09:58AM (#43347237)

        Using it on anything else is asking for trouble, because if you lose your connection, you lose your app. Perhaps an improvement can be made to X11 forwarding in the new path forward (wayland) to make it more like screen where you can attach and detach to a running X11 app from a networked endpoint.

        I used NX for X11 over VPN. It works very well and I am able to resume where I left off if my VPN connection drops or I want to let something run overnight but don't want to remain online. NoMachine closed source their server at version 4.0, but FreeNX and Neatx took its place.

    • by jabuzz (182671) on Wednesday April 03, 2013 @09:17AM (#43346851) Homepage

      The problem is that the current implementation is effectively VNC done using the RDP protocol. That is it is just sending the changed areas of the screen. What is needed is something more like x11rdp. That is an X11 server that rather than talking to hardware spits out RDP protocol instead. Draw a rectangle on the X11 screen and the corresponding RDP gets spat down the line to the client. It is much much faster than VNC which is a total dog over slow links, rather like X11 being a total dog on links that don't have really low latency.

      • The problem is that the current implementation is effectively VNC done using the RDP protocol.

        heh yes. At some point they'll realise that it's a good idea to have display related settings tied to a physical screen, not a local filesystem and reimplement xrdb too.

  • by CajunArson (465943) on Wednesday April 03, 2013 @09:11AM (#43346795) Journal

    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....

    • by Alioth (221270) <no@spam> on Wednesday April 03, 2013 @09:37AM (#43347055) Journal

      That's just pedantry.

      In terms of "network transparent", what is meant is that a program doesn't care (it just communicates with whatever DISPLAY is set to) and the end user doesn't care. What the server does behind the scenes is irrelevant to how it's used.

      If on Wayland, while you're in an SSH session to a remote machine you think..."hmm, I could really do with a couple of wterms" (or whatever the Wayland xterm equivalent is), or "I could really do with firing up wireshark", you can't just type "xterm" and be done then it's not network transparent to the user. If you then have to set up another session and do some desktop-style login (and the remote server has to be running some sort of GUI login manager or equivalent to handle it) then it's a lot less useful than what you get with X11 at the moment.

      If on the other hand Wayland will allow the equivalent of ssh -X, then it doesn't matter how it's implemented, so long as the program running at the other end runs and doesn't care that the display is remote, and the user sees a window on their screen, then they have the functional equivalent however it's implemented.

    • by rnturn (11092)

      ``... you are breaking the classic backwards server-client paradigm of X.''

      I found it hard to take much of your argument seriously when you wrote the above. "Client-server" does not mean "PC client running Windows-Windows server. The Wintel crowd pretty much co-opted the term "client-server" and when they encounter a case where "server" doesn't mean a Windows server, they go nuts.

  • by Junta (36770) on Wednesday April 03, 2013 @09:32AM (#43346993)

    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...

    • by caseih (160668)

      I too eagerly await details.

      X11 remoting is much more powerful than many people imagine. Like you say, it allows remote applications to display their icons in the local system tray. It also allows remote connections to communicate with locally-running apps. For example (and sometimes this behavior is not what I want!), running firefox on a remote machine will first check to see if there's an existing firefox instance on the X server running, and communicate with it to open the url. So on the remote machi

      • X11 remoting is much more powerful than many people imagine. Like you say, it allows remote applications to display their icons in the local system tray.

        These days, most system tray icons are handled through DBUS, even under X11. Wayland probably won't bother with general client-to-client communication; instead, you'll forward your DBUS session alongside Wayland (and PulseAudio, CUPS, etc.) via a "ssh -X" equivalent which transparently handles all the details.

    • That's a large gap in X, where audio is consider just completely unrelated to the remoting...

      That's a curious gap--espacially now. X11 is capable of forwarding pretty much arbitrary data. One could quite easily imagine a deamon which ships pulseaudio data over X11.

      Or, alternatively, I assume that you could forward the pulseaudio port over ssh while you do X forwarding as well. I don't see why that wouldn't work. Of course you'd have to make sure that programs attempt to connect to the right pulse daemon.

  • 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.

    Als

  • by DigiShaman (671371) on Wednesday April 03, 2013 @10:15AM (#43347369) Homepage

    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.

    • by armanox (826486)

      You realize you only mentioned VNC and services that use VNC as things you've tried, right? And VNC is very inefficient compared to just about anything (X over network, ssh -CX, RDP, NX, etc)

  • by awakecoding (2887237) on Wednesday April 03, 2013 @12:11PM (#43348807)
    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 [youtube.com] 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.
    • THAT IS USELESS! You didn't show forwarded Xterms using the exact same perfect protocol that was cool in 1985! Your system is obviously bloated and inefficient compared to X11 and a complete waste of time!! /sarcasm

      Much more seriously, thank you very much for your hard work and for pushing forward with implementing this technology in an open & cross-platform way. The video is fantastic!

This place just isn't big enough for all of us. We've got to find a way off this planet.

Working...