Conventions and Tools


The user interface environment to the DAQ system is hosted in VNC servers running on DAQ cluster computers at various sites. Users interact with these via VNC viewers hosted on control room desktops, and for experts, on their own desktop or laptop.

The NovaControlRoom package contains icons and scripts to automatically set up the needed ssh tunnels, and launch the VNC viewers.

VNC Viewers

The command to start a viewer is in the script launched by the desktop icons, but the underlying command is of the form

 vncviewer -Fullscreen -Shared -passwd ~/.vnc/passwd :<NN> 

 -Fullscreen # starts in full screen mode
 -Shared # keeps other users from getting disconnected from the server when you connect
 NN # two-digit port number (relative to 5900) 


VNC Servers

In the current model (as of 2019-05-27), we employ 2 VNC servers for each detector, 2 expert desktops, and one for synoptic displays. In order to allow for different desktop environments on a single host machine, each VNC server on is run under a different account, using a dedicated port. We tend to use certain servers for particular functions, but this is subject to change.

The table below gives the machine, account, and port information for the stations used at a Remote Operation Center (ROC):

Station Functions Host Account Gateway Remote Port Gateway Port Local Port
1 FD Run Control
Message Logger
novadaq-far-master-02 novacr01 novadaq-far-gateway-01 5951 variable 5981
2 FD Event Display
Online Monitoring
APD Cooling GUI
novadaq-far-master-02 novacr02 novadaq-far-gateway-01 5952 variable 5982
3 Synoptics nova-cr-03 novacr03 novadaq-near-gateway-01 5953 variable 5973
5 ND Run Control
Message Logger
novadaq-near-master novacr01 novadaq-near-gateway-01 5951 variable 5991
6 ND Event Display
Online Monitoring
APD Cooling GUI
novadaq-near-master novacr02 novadaq-near-gateway-01 5952 variable 5992
-- FD Expert Desktop novadaq-far-master novacr03 novadaq-far-gateway-01 5953 variable 5983
-- ND Expert Desktop novadaq-near-master novacr03 novadaq-near-gateway-01 5953 variable 5993

The gateway and gateway port are what you need to know to set up your own SSH tunnels so that you can view the sessions from your local machine. The gateway port can vary depending on the order the tunnels are set up. There are ROC scripts that determine the correct tunnel and can setup a new one if the tunnel does not exist. The local port is a recommendation for what port to use on your local machine.

The servers for each of these is set up to occupy a 1x2 monitor grid, with total pixel count 2560x2880.

ssh Tunnels

ssh tunnels are required to access the port for a VNC server on a remote host from a localhost (e.g., your laptop, or a control room desktop). Once launched, the tunnel can remain active indefinitely. The ssh command has the form

ssh -L <local_port>:localhost:<remote_port> -N -f -l <remote account> <remote host> 

The ssh tunnel is authenticated using a kerberos ticket on the localhost. That principle must be in the .k5login file for the remote account, and the remote host must be directly reachable from the localhost.