Supporting Work-From-Anywhere Users with ControlUp Remote DX

STOP if you’ve heard these before:

  • [NAME OF PROVIDER] doesn’t work!

  • When I work from home, my app is slow!

  • My app keeps disappearing on me!

  • I keep getting disconnected!

We’ve now taken a full trip around the sun since the COVID-19 pandemic changed our lives forever. In that time, organizations the world over have had to pivot to a remote working model to try and maintain productivity. And, along with that pivot, complaints like the ones above have become ever more frequent, as people try to deal with accessing work resources from their homes while their kids are attending school virtually, partners or spouses are using the same resources to connect to their own applications, and don’t even get us started on the dogs and cats (we want to see the doggos and kittehs).

Putting An End To Those Complaints 

But we digress. How do you respond to gripes like these?

Without visibility into a user’s home, IT admins are flying blind, throwing virtual darts, hoping they get lucky and hit the target. Common “hits” are “try upgrading your internet” or “try a different device” or “try tethering to your phone” or “try…” 

These suggestions are invariably followed—with the administrator crossing their fingers—by, “Did it work?” and the hope that your technical dart hit the target. If the answer comes back, “no,” it’s back to the drawing board.  

“OK, can you try…”

Last year, as the lockdowns began and our customers started migrating to this new workstyle, they started asking, “can you help me with our remote users? They are having problems and we are struggling to make things work better for them.”

We listened. And since that time, ControlUp has invested heavily in developing this technology to give you greater flexibility and control, so you can improve your remote work force.

ControlUp Edge DX brings real-time metrics, actions, and reporting for physical endpoints. With it, you can monitor Windows-, Mac-, Linux-, or IGEL-based machines and their metrics with just a simple internet connection.

Once physical endpoints were sorted, we wanted to see what we could do for ControlUp’s real-time data. Could we pull that data into ControlUp from the endpoint? Could we monitor, in real-time, the end-user’s device?

Yes, we could. Yes, we can. And YES, WE HAVE. 

Introducing ControlUp Remote DX

Remote DX is an add-on to ControlUp Real-Time DX and ControlUp Solve that gives IT loads of new functionality. With Remote DX, we collect the following data from remote devices:

  • Client Device Score — An aggregate score of the client metrics columns that display the overall health of your remote devices, based on your defined stress settings.
  • Client OS Name — The name of the user’s operating system
  • Client OS Version — The operating system version
  • Client NIC Type — The type of network connection from the user’s device
  • Wi-Fi Radio Type — The radio type of the connection to the access point
  • Wi-Fi Signal — The strength of the wireless signal expressed in percent
  • Client NIC Speed — The speed of the device’s network connection
  • LAN Latency — How long a ping takes to the devices local gateway
  • Internet Latency — How long a ping to google’s DNS server takes (8.8.8.8)
  • Total Session Latency — How long the average of three pings takes from the resource in the datacenter to the client device through the virtual channel
  • Local Router IP — IP Address space of the local router
  • Client Public IP — the internet service provider’s IP assigned to the user’s home router
  • Client NIC Name — The name of the network device
  • Wi-Fi BSSID — Hardware ID of the access point
  • Wi-Fi SSID — The friendly name of the Wi-Fi network
  • Wi-Fi Authentication — The authentication type of the wireless connection
  • Wi-Fi Channel — The channel of the wireless connection
  • Client Inactive Time — Shows how long a user has been idle
  • Client Packet Loss — percentage of network packet loss on the client device connected to the session

These new metrics can help you identify whether issues are related to the customer network or to the user’s local environment. How do we start?

ControlUp provides a virtual channel driver that works with the EUC environment of your choice! ControlUp provides a virtual channel driver that works with the EUC environment of your choice! Citrix Virtual Apps and Desktops, and VMware Horizon are all supported, along with all the major operating systems: Windows, MacOS, Linux and IGEL.

Bonus for ControlUp Ultimate customers: Remote DX is part of your license and is already enabled.

How ControlUp Remote DX Works

ControlUp has a per-session helper utility called ‘cuagenthelper.exe’. By default, it starts with each session and allows ControlUp to provide some advanced functionality, like getting the Active Application Title, Active Application, Active Browser URL, and more. Taking advantage of this utility, we found we could communicate on a per-session basis through the virtual channel back to the client device. However, in order to communicate with it, we needed something to respond. We created the virtual channel driver (cuepux.dll) to handle this.

 

Virtual Channel Driver

The ControlUp Virtual Channel Driver is responsible for polling data on the client end and sending it to the CUAgentHelper.exe when requested. The CUAgentHelper polls the session every five seconds; the virtual channel driver on the client will query the local system for these details and respond accordingly. Because the virtual channel driver calls some system-level APIs to get this data, you could get prompts on your EUC client application to ask for additional permissions.

Remote DX Operation

Once the virtual channel driver is installed on the client and is connected to a session being monitored by ControlUp, Remote DX will be polled by cuagenthelper.exe and displayed in the ControlUp Management Console and ControlUp Solve. 

Here is what it looks like:

You can see, in ControlUp Solve, we have even more new features! If you click on the ‘home’ button next to the Remote DX Device Score, you will see a topology view of the user’s network, as well as a visual representation of the client metrics.

With this view, you can see how each metric corresponds to its value. The “LAN Latency” in this image is the 2ms value from the client “MACOS1” to the gateway (“THOME2”). You can also see “Internet Latency,” which is measured as the time a packet takes to travel from a device to the Google DNS servers (8.8.8.8). The final metric is “Total Session Latency,” which is related to the standard latency metrics found in ControlUp. The biggest difference is ControlUp’s implementation of the latency measurement. ControlUp sends three packets from the virtual channel driver and measures the average time the packets took to return.

Finally, you can see the metadata of the client device—operating system, client inactive time, client NIC speed, and lots more.

Stay tuned for Part Two of this series, where I’ll go over my experiences with ControlUp Remote DX, what the values mean, and how they can help you pinpoint their root cause.