Holy Guacamole!

36 views
Skip to first unread message

John Fields

unread,
Aug 8, 2015, 6:42:44 PM8/8/15
to The HomeFrontRouter Project
This is EXACTLY the kind of thing I was looking for.  It is a gateway that translates VNC and RDP to a websockets encoded stream to HTML5 canvas element.  In short, a little bit of magic...


What is Guacamole?

Guacamole is a clientless remote desktop gateway. It supports standard protocols like VNC and RDP.

We call it clientless because no plugins or client software are required.

Thanks to HTML5, once Guacamole is installed on a server, all you need to access your desktops is a web browser.

__________________________________


There still needs to be a VNC host installed on the target machine, but it makes a screen share to your tech person super easy.


I am expecting (well, hoping really) there is enough horsepower on the BPI-R1 to do a few transcoding streams at a time.  That way only the lean stream of video packets come way from the router over the internet.  Then in control center hosted in your VPS the Tomcat servlet handles everything else.


Who wants to see if it can work for our hardware use case? :)

John Fields

unread,
Aug 10, 2015, 8:33:58 PM8/10/15
to The HomeFrontRouter Project
So apparently you can run the guacd on a Raspberry Pi! 


What remains to be seen is the performance required to do at least two streams simultaneously.  The method it uses is to encode the deltas in a PNG, much like a animated GIF.  That is a math heavy process and the ARM processors we have (the A20) may not be able to offload that math and so brute force COULD sap the available resources.

I think we are just going to have to build it and test it.  Test what you may ask?

Running the guacd proxy on the homefront router at the user's home so the VNC (or RDP) frame updates are all on the local network.  Then the PNG deltas are sent over the VPN to the server and finally to the support guy.  Worst case scenario there is the video stream has to go to the "hub" and is rerouted to the support guy: so 3 hops (HFR -> HFS -> HSR) or HFR -> HFS (SSL wrapper) -> router (at starbucks?). IF we get lucky we might be able to mesh and go straight between the two.  Or require a tinc client on the laptop, or something else.

HFR = Home Front Router
HFS = Home Front Server

This configuration requires a custom API driven front end because of what we want to do, a seamless HF front end for the support guy.  But the Tomcat app controls the switching/connections and has an API for just that reason.

Time to setup guacd on the RP1, and hide it behind my router, and setup a Digital Ocean Droplet with the Tomcat setup. I'll do the RP1 first in case anyone wants to build the Tomcat side in a Droplet I will provide. Just let me know you want to try it!
 
Reply all
Reply to author
Forward
0 new messages