13.07.2015 Views

NICE DCV 2013.0 Guide

NICE DCV 2013.0 Guide

NICE DCV 2013.0 Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Installation and Administration<strong>Guide</strong>Version <strong>2013.0</strong>


ContentsWelcome ......................................................................................................................... ixAbout This <strong>Guide</strong> ..................................................................................................... ixSave this Document ......................................................................................... ixWho Should Read This <strong>Guide</strong> ......................................................................... ixLearn About <strong>NICE</strong> Products .................................................................................... xWorld Wide Web ............................................................................................... x<strong>NICE</strong> <strong>DCV</strong> Documentation ................................................................................ xGet Technical Support ............................................................................................. xi<strong>NICE</strong> Support Contacts ................................................................................... xi1. Introducing Desktop Cloud Visualization ................................................................. 1Overview ................................................................................................................... 1Application Hosts and End Stations ......................................................................... 2Rendering Hosts ....................................................................................................... 2Modes of Operation .................................................................................................. 2Display Isolation Mode ..................................................................................... 2Native Display Mode ......................................................................................... 3External 3D Rendering ............................................................................................ 42. Prerequisites ............................................................................................................... 5Prerequisites ............................................................................................................. 5Additional Requirements for External 3D Rendering ......................................... 7End Stations ...................................................................................................... 8RealVNC Visualization Edition ................................................................................ 10Firewall Configuration ............................................................................................. 10Additional Requirements for External 3D Rendering ....................................... 11X Server Configuration ............................................................................................ 133. Installing <strong>DCV</strong> Server ............................................................................................... 15Before you begin ..................................................................................................... 15Installing on Linux ................................................................................................... 16Installing on Windows ............................................................................................. 17Installing License ..................................................................................................... 18Configuring Default Proxy Support ......................................................................... 19Configuring Encryption Support .............................................................................. 20Advanced Installations ............................................................................................ 22Installing on Linux from RPMs ........................................................................ 22Configure External 3D Rendering on Windows Application Hosts ................... 244. Installing <strong>DCV</strong> End Station ...................................................................................... 25Installing Windows End Stations ............................................................................. 25Installing Mac End Stations .................................................................................... 26Installing Linux End Stations ................................................................................... 27Using Portable End Stations ................................................................................... 28Using Windows Portable End Station ............................................................. 28Using Linux Portable End Station ................................................................... 28Using Mac Portable End Station ..................................................................... 28Advanced Installations ............................................................................................ 29<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> v


Windows Unattended Installation .................................................................... 29Installing Linux End Stations from RPMs ........................................................ 29Configuring Proxy Support .............................................................................. 29Configuring Encryption Support ...................................................................... 305. Diagnostics ................................................................................................................ 31Verifying Installation ................................................................................................ 31Verification of <strong>DCV</strong> Installation on Linux ......................................................... 31Verification with Windows OpenGL Applications ............................................. 32Verification with Windows DirectX Applications .............................................. 33<strong>DCV</strong> Problems ........................................................................................................ 35Cannot Init Local Display ................................................................................ 35VNC Problems ........................................................................................................ 37Font Path Problems ........................................................................................ 37Mirror Driver .................................................................................................... 38X Server Display Problems ..................................................................................... 38No Monitor Attached to the Video Adapter ..................................................... 39Multiple Video Cards ....................................................................................... 39NVIDIA Display Problems ....................................................................................... 41License Problems .................................................................................................... 42Performance Issues ................................................................................................ 43A. dcv.conf .................................................................................................................. 47[Application] .................................................................................................... 47external_rendering_server ................................................................... 47local_display_list .................................................................................. 48local_multisample .................................................................................... 48print_dcv_version .................................................................................... 48target_fps ................................................................................................... 49use_nvidia_grid ........................................................................................ 49use_sample_queries .................................................................................. 50[Endstation] ....................................................................................................... 50console_shortcut ...................................................................................... 50enable_console ........................................................................................... 50encryption ................................................................................................... 51proxy_port ................................................................................................... 51proxy_server ............................................................................................... 51proxy_type ................................................................................................... 52tip_timeout ................................................................................................. 52[License] ............................................................................................................. 52license_file ............................................................................................... 53use_platform_product .............................................................................. 53[Logging] ............................................................................................................. 54log_file ....................................................................................................... 54log_level ..................................................................................................... 54[Remotization] .................................................................................................. 55allow_udp ..................................................................................................... 55codec_qu ....................................................................................................... 55codec_tcp ..................................................................................................... 56default_proxy_port .................................................................................. 56default_proxy_server .............................................................................. 56default_proxy_type .................................................................................. 57vi<strong>Guide</strong><strong>NICE</strong> <strong>DCV</strong> Installation and Administration


Learn About <strong>NICE</strong> ProductsLearn About <strong>NICE</strong> ProductsWorld Wide WebYou can find the latest information about <strong>NICE</strong> <strong>DCV</strong> on its web sitehttp://www.nice-software.com/dcv.For more information about other <strong>NICE</strong> products and about the professional services provided by<strong>NICE</strong> you can refer to the company's web site http://www.nice-software.com.Report problems accessing the aforementioned web sites to .<strong>NICE</strong> <strong>DCV</strong> DocumentationThe latest <strong>NICE</strong> <strong>DCV</strong> documentation is available athttp://www.nice-software.com/download/dcv.x<strong>Guide</strong><strong>NICE</strong> <strong>DCV</strong> Installation and Administration


Get Technical SupportGet Technical SupportContact <strong>NICE</strong> or your <strong>DCV</strong> reseller for technical support.<strong>NICE</strong> Support ContactsUse one of the following to contact <strong>NICE</strong> technical support.EmailWorld Wide Webhttp://www.nice-software.com/dcvPhone+39 0141 901516Mail<strong>NICE</strong> Supportc/o <strong>NICE</strong> s.r.l.Via Milliavacca, 914100 AstiItalyWhen contacting <strong>NICE</strong>, please include your company's full name.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> xi


1Introducing Desktop CloudVisualization<strong>DCV</strong> enhances the graphics functions of 3D applications on Linux and Microsoft Windows onboth OpenGL and DirectX to display complex visual data across multiple, simultaneous distributeddisplays using low-bandwidth networks.Overview<strong>NICE</strong> <strong>DCV</strong> is the remote 3D visualization technology that enables Technical Computing users toconnect to OpenGL or DirectX applications running in a data center. Engineers and scientists areimmediately empowered by taking full advantage of high-end graphics cards, fast I/O performanceand large memory nodes hosted in "Public or Private 3D Cloud", rather than waiting for the nextupgrade of the workstations. The <strong>DCV</strong> protocol adapts to heterogeneous networking infrastructureslike LAN, WAN and VPN, to deal with bandwidth and latency constraints. <strong>NICE</strong> <strong>DCV</strong> multi-sessioncapability allows IT Administrators to consolidate multiple users and/or application services into onenode, or perform effective collaboration among multiple users.Using <strong>NICE</strong> <strong>DCV</strong>, you can remotely work on 3D interactive applications, fully accelerated by highendGPUs on workstations, blades or servers. No matter if you are accessing high-end OpenGLmodeling applications or simple viewers, <strong>NICE</strong> <strong>DCV</strong> lets you connect quickly and securely fromanywhere and experience high frame rates, even with low bandwidth standard Internet connections.The product supports both Microsoft and Linux systems, enabling collaborative capabilities inheterogeneous environments. Moreover, it is perfectly integrated into <strong>NICE</strong> EnginFrame, leveraging2D/3D capabilities over the Web, including the ability to share a session with other users forcollaborative or support purposes.In a typical visualization scenario, a software application sends a stream of graphics commands to agraphics adapter through an input/output (I/O) interface. The graphics adapter renders the data intopixels and outputs them to the local display as a video signal.<strong>DCV</strong> can use low-speed wide area networks (WANs) and high speed local area networks (LANs) toprovide efficient and secure transport of image data to remote displays.The software intercepts OpenGL and DirectX library function calls, by interposing its library intothe graphics software stack of a host system running a 3D graphics application.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 1


Application Hosts and End StationsWhen using <strong>DCV</strong>, the scene geometry and graphics state are rendered on a central server, andrendered images are sent to one or more remote displays.<strong>NICE</strong> <strong>DCV</strong> includes the leading standard RealVNC Visualization Edition 4.6 to access and controlyour desktop applications wherever you are in the world, whenever you need to. VNC has awidespread user base, from individuals to the world's largest multi-national companies, utilizing thetechnology for a range of applications.Application Hosts and End Stations<strong>DCV</strong> uses an application host to run OpenGL or DirectX graphics applications and transmits theoutput to one or more end stations that connect to the application host over the network.The application host sends updates (in the form of pixel data) to each connected end station. Endstations send user events (such as mouse or keyboard actions) to the host. Each end station isresponsible for:• displaying one or more application windows running on the host machine;• sending user interaction with an application host for processing.Rendering Hosts<strong>DCV</strong> application hosts can optionally be configured to delegate the actual 3D rendering to a separatehost, the rendering host.The rendering host:• receives OpenGL commands from the applications running on the application servers;• sends the 3D image updates (in the form of pixel data) to each connected end station.Modes of Operation<strong>DCV</strong> integrates with RealVNC Visualization Edition and extends it to support OpenGL or DirectXapplications.Two configurations are possible:• Display Isolation mode: multi-user, available on Linux application hosts only (see the sectioncalled “Display Isolation Mode ”);• Native Display mode: single-user, available on both Linux and Windows application hosts (seethe section called “Native Display Mode”).In addition to the above mentioned modes, <strong>DCV</strong> application hosts can be configured to use External3D Rendering to delegate the actual 3D rendering to a separate rendering host. (available only forOpenGL applications running on Windows)Display Isolation ModeDisplay Isolation mode provides a virtual desktop on the application host.2 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Native Display ModeFigure 1.1. Display Isolation ModeFigure 1.1, “Display Isolation Mode” illustrates Display Isolation Mode. In this mode, you can createmultiple virtual X11 desktops on the application host for remote viewing. From an end station, youcan run an application on a remote desktop using hardware-accelerated 3D rendering. All virtualsessions remain separate and independent of one-another.Native Display ModeNative Display mode can be used in a single connection with one end station or in a collaborativeconfiguration with multiple end stations sharing the same session.Figure 1.2. Native Display Mode<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 3


External 3D RenderingFigure 1.2, “Native Display Mode” illustrates Native Display mode for remote desktop functionality.The application host sends compressed images to the remote <strong>DCV</strong> end stations. It can also display3D data on the local application windows.For more information on the platforms on which this configuration is supported please refer toChapter 2, Prerequisites.External 3D RenderingA <strong>DCV</strong> application host can be configured to delegate the 3D rendering to a separate rendering host.In this case the OpenGL application runs on an application host which does not provide 3D hardwareacceleration and delegates the OpenGL rendering to a rendering host equipped with one or more 3Daccelerated graphic adapters.This configuration enables virtual machines to act as application hosts even if the virtual hardwareemulated by the hypervisor does not provide OpenGL acceleration.For more information on the platforms on which this configuration is supported please refer toChapter 2, Prerequisites.Figure 1.3. External 3D RenderingFigure 1.3, “External 3D Rendering” illustrates <strong>DCV</strong> configured to delegate 3D rendering to arendering host.4 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


2PrerequisitesThis chapter lists the hardware and software prerequisites for installing Desktop Cloud Visualization.Prerequisites<strong>DCV</strong> application hosts can be configured to use Embedded 3D Rendering (default) or External 3DRendering.The requirements for the end station are the same for both application host configurations.When used with Embedded 3D Rendering configuration, <strong>DCV</strong> requires the following hardwaresystems:• a physical application host machine equipped with 3D accelerated video adapters and capable ofrunning the OpenGL or DirectX applications;or a virtual application host machine equipped with 3D accelerated video adapters using GPU passthroughand capable of running the OpenGL or DirectX applications;• one or more remote machines (end stations), each of which is connected to an output display device;• a network connection (WAN/LAN) between the application host and the end station.When used with External 3D Rendering configuration, <strong>DCV</strong> requires the following systems:• a physical Linux rendering host equipped with 3D accelerated video adapters;• a Windows application host machine (physical or virtual) capable of running the OpenGLapplications (DirectX not supported);• one or more remote machines (end stations), each of which is connected to an output display device;• a low latency/high bandwidth network connection between the rendering host and the applicationhost;• a network connection (WAN/LAN) between the application host and the end station and betweenrendering host and the end station.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 5


Prerequisites<strong>DCV</strong> is currently supported on the following systems:Table 2.1. Host RequirementsHost RequirementsOperating systemApplication Host• Linux (with Embedded 3D Rendering)• RedHat Enterprise Linux 5.x, 6.x 32/64-bit• SUSE Enterprise Server 11 32/64-bit• Windows (with Embedded 3D Rendering)• Microsoft Windows XP Professional ServicePack 2 32/64-bit• Microsoft Windows 7 32/64-bit• Microsoft Windows Server 2008 R2 32/64-bit• Windows (with External 3D Rendering)• Microsoft Windows 7 Professional 64-bitRendering Host• Linux RedHat Enterprise Linux 6.x 64-bitWindows 8.x and Windows Server 2012 are currentlynot supported.Graphics card and drivers• NVIDIA Quadro family of ultra high-end andhigh-end graphics adapters• NVIDIA GRID• NVIDIA Tesla M2070-Q.To download the latest NVIDIA graphic adapterdrivers, go to the NVIDIA support site at http://www.nvidia.com.ImportantDifferent versions of RealVNC Server (such as VE 4.5.x or 5.x) or VNCsoftware from other vendors are not compatible with this <strong>DCV</strong> Server release.The installer will ask to uninstall any incompatible version.6 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Additional Requirements forExternal 3D RenderingAdditional Requirements for External 3D RenderingWhen <strong>DCV</strong> is configured to use External 3D Rendering it requires a high bandwidth and low latencynetwork between the application hosts and the rendering host. The required badwidth and maximumlatency may vary from application to application and according to the size and complexity of the3D data.Due to tight networking requirements, it is suggested to keep the application and rendering hosts onthe same physical machine and use a virtual network link between them.The configurations decribed in the following sections have been tested and are known to be working.External 3D Rendering with KVM• physical Linux Rendering host running KVM hypervisor;• virtual Windows Application hosts running as guests on the KVM hypervisor;• Host-only Virtual Network between rendering host and application hosts using VirtIO network.Figure 2.1. External 3D Rendering with KVMFigure 2.1, “External 3D Rendering with KVM” illustrates the typical deployment on KVMhypervisors.External 3D Rendering with XenServer• virtual Linux Rendering host running on XenServer hypervisor with GPU pass-through;• virtual Windows Application hosts running as guests on the same XenServer hypervisor;• Host-only Virtual Network between rendering host and application hosts using optimized networkdrivers from XenServer Tools.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 7


End StationsFigure 2.2. External 3D Rendering with XenServerFigure 2.2, “External 3D Rendering with XenServer” illustrates the typical deployment on XenServerhypervisors.End StationsTable 2.2. End Station RequirementsEnd StationRequirementsOperating systemLinux• RedHat Enterprise Linux 5.x, 6.x 32/64-bit• SUSE Enterprise Server 11 32/64-bitWindows• Microsoft Windows XP Professional Service Pack 2 32/64-bit• Microsoft Windows 7 32/64-bit• Microsoft Windows 8 32/64-bitMac• OS X Snow Leopard (10.6), Lion (10.7), Mountain Lion(10.8), Mavericks (10.9)The <strong>DCV</strong> installer includes and automatically installs RealVNC Visualization Edition 4.6.x (Viewer).8 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


End StationsPortable end station packages which do not require installation are available. See the section called“Using Portable End Stations” for more information.The application host and its end stations can run different operating systems.Different versions of <strong>DCV</strong> Server and <strong>DCV</strong> End Station are compatible but some features may notbe available when not using the latest version.<strong>DCV</strong> is compatible with many plain-VNC clients from third parties. When using such clients, 3Dimages are delivered to the clients using the standard VNC protocol and therefore with reducedperfomances.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 9


RealVNC Visualization EditionRealVNC Visualization EditionIn a <strong>DCV</strong> session, the application user interface is transmitted to an end station using RealVNCVisualization Edition (RealVNC VE).RealVNC VE is an enhanced version of VNC Enterprise Edition designed exclusively for <strong>DCV</strong>. Theuse of other VNC products (whether from RealVNC or another vendor) is not supported.The same RealVNC Enterprise Edition documentation applies to the Visualization Edition.For more information about RealVNC VE, go to http://www.realvnc.com/products/vnc/documentation/4.6.Available <strong>DCV</strong> operation modes (see the section called “Display Isolation Mode ” and the sectioncalled “Native Display Mode”) depend on RealVNC configuration. Please refer to the following tableto understand how RealVNC must be configured according to the desired operational mode.Table 2.3. <strong>DCV</strong> modes and RealVNC configurationOperating System <strong>DCV</strong> mode RealVNC configurationLinuxWindowsDisplay Isolation(multi-user)RecommendedNative Display(single-user)Native Display(single-user)Virtual modevia vncserver programRefer to Starting VNC Server in Virtual Modefrom RealVNC documentation.Service modevia vnc.so X11 moduleRefer to Starting VNC Server in UserMode and in Service Mode from RealVNCdocumentation.Available only with Xorg 1.1.1 and previousversions (RHEL 5.x). Modern Linuxdistribution, such as RHEL 6.x, include newerXorg versions which are not supported.Standard RealVNC configurationNoteFor addition information, please refer to the Getting Started section from theRealVNC documentation:• Linux: http://www.realvnc.com/products/vnc/documentation/4.6Firewall Configuration<strong>DCV</strong> is network aware technology and may require extra firewall configuration. Your firewall shouldallow traffic on the interval of TCP ports between 7300 and 7399. <strong>DCV</strong> uses ports in this interval10 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Additional Requirements forExternal 3D Renderingto establish a connection for the 3D channel. Each new OpenGL or DirectX application uses the nextavailable port in the specified range.The ports can be changed in the dcv.conf configuration file (see Appendix A, dcv.conf).RealVNC requires its own ports to open 2D channel. In a standard configuration your firewall shouldalso allow traffic on:• (Windows) TCP port 5900• (Linux) the interval of TCP ports between 5900 and 5999Please refer to RealVNC documentation for further information.Table 2.4. Summary of default firewall configurationHost Process RuleApplication HostRealVNC Server (Linux) Allow incoming TCP connections on 5900-5999ports from end stations(Windows) Allow incoming TCP connections on 5900port from end stationsOpenGL/DirectXApplicationsAllow incoming TCP connections on 7300-7399 portsfrom end stationsNoteIn addition to local firewall configuration check no external firewall isblocking the communication between end stations and application host.Additional Requirements for External 3D RenderingWhen using <strong>DCV</strong> with External 3D Rendering configuration:• the 3D channel uses connections from the end station to the rendering host (instead of theapplication host);• the <strong>DCV</strong> rendering server uses HTTP connections from the application host to the rendering host(port: 2007);• the OpenGL applications use TCP connections from the application host to the rendering host(ports: starting from 34567, one port for each <strong>DCV</strong> Rendering Agent).The network between the rendering server and application hosts does not need to be exposed to otherhosts and therefore the suggested network topology is:• Host-Only Network: an isolated network between rendering host and application hosts;• Public Network: a network reachable to rendering hosts, application hosts and end stations.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 11


Additional Requirements forExternal 3D RenderingTable 2.5. Summary of default firewall configuration for External 3D RenderingHost Network Process RuleRenderingHostPublic<strong>DCV</strong>RenderingAgentsAllow incoming TCP connections on7300-7399 ports from end stationsHost-Only<strong>DCV</strong>RenderingServerAllow incoming TCP (HTTP) connections on2007 port from application hosts(See Note)Host-Only<strong>DCV</strong>RenderingAgentsAllow incoming TCP connections on 34567port and above (one port for each agent) fromapplication hosts(See Note)ApplicationHostPublicRealVNCServer(Windows) Allow incoming TCP connectionson 5900 port from end stationsHost-OnlyOpenGLApplicationsAllow outgoing TCP connections to renderinghost on 2007 port(See Note)NoteSince the Host-Only Network is an isolated network it is suggested to shutdown on both application host and rendering host the firewall on the Host-Only network interfaces.Figure 2.3. <strong>DCV</strong> with External 3D Rendering12 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


X Server ConfigurationFigure 2.3, “<strong>DCV</strong> with External 3D Rendering” illustrates the typical deployment when <strong>DCV</strong> worksin External 3D Rendering configuration.X Server ConfigurationOn Linux, the host equipped with 3D accelerated video adapters must run an accelerated X Serverconfigured according to these requirements:1. NVIDIA drivers must be correctly working on this display.NoteOfficial NVIDIA Drivers are required, the open source nouveau driversare not supported. Please check the section called “NVIDIA DisplayProblems” for more information;2. in case of multiple GPUs on the same node the suggested configuration is a single X Server forall GPUs, one Screen for each GPU.Example: :0.0 for the first accelerated GPU, :0.1 for the second accelerated GPU...Please check the section called “NVIDIA Display Problems” for more information.NoteAlternative X setups are possible as long as <strong>DCV</strong> is able to open aconnection with the X server managing the GPU card. For instance, when asystem contains a heterogeneous set of GPUs, an administrator may preferto configure a separate X server for each GPU instead of managing themas different screens of the same X Display.3. local UNIX connections to the 3D accelerated X Server displays must be granted to the users ofthe 3D applications.<strong>DCV</strong> libraries run inside the 3D applications launched by the users. They redirect 3D calls to theaccelerated display and so the applications processes run by the users must be able to access it.When running dcvadmin enable, <strong>DCV</strong> automatically searches for well-known X or displaymanager startup scripts and adds a call to /opt/nice/dcv/bin/dcvxgrantaccess. Bydefault dcvxgrantaccess executes xhost +local:. So when X is launched the displayaccess is granted.It is possible to change this behaviour, for example to restrict the access to a subset of users,providing a custom implementation of dcvxgrantaccess.It is important to understand the security risks implied by this configuration: users having accessto a display could send or receive keystrokes and grab images from that display. Therefore it isimportant to never use the 3D accelerated X Server to login in, expecially as root.Please refer to the section called “Grant Local Connections to the 3D Rendering Display” for moreinformation on this topic;4. color depth must be 24-bit.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 13


X Server ConfigurationThe following example illustrates a fragment from an xorg.conf configuration file with thedefault 24-bit color depth:Section "Screen"Identifier "Screen0"Device"Device0"Monitor "Monitor0"DefaultDepth 24SubSection "Display"Depth 24EndSubSectionEndSection5. only when using Native Display mode on Linux with VNC in Service mode additionalconfiguration is required to enable the vnc.so module. Please refer to "Native X displaysupport" documentation from RealVNC available here: http://www.realvnc.com/products/vnc/documentation/4.6/unix/x0.html#x0vncserver14 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


3Installing <strong>DCV</strong> ServerBefore you beginDifferent releases of <strong>DCV</strong> cannot coexist on the same system. In case a previous version of <strong>NICE</strong><strong>DCV</strong> is already installed you can upgrade it following the instructions below. In case of problems itis suggested to uninstall any earlier release, reboot the machine and then install the new release.To remove earlier releases on Windows you can uninstall <strong>DCV</strong> using the corresponding menu itemor from the Windows Control Panel. To remove packages from your system on Linux:• for <strong>DCV</strong> 2012 or earlier, you can use the rpm -e nice-dcv-server command• starting from <strong>DCV</strong> 2013, you can use the uninstaller in /opt/nice/dcv/bin/dcvuninstallThe RealVNC Visualization Edition Server component required by <strong>DCV</strong> is embedded in the <strong>DCV</strong>Server installer. The <strong>DCV</strong> installer will detect RealVNC Visualization Edition Server and install it,in case it is not already available on the system.Different versions of VNC on the same system may conflict with each other. It is suggested touninstall any VNC component different from RealVNC Visualization Edition from the system beforeinstalling <strong>DCV</strong>.Please refer to the section called “RealVNC Visualization Edition” for more information.See the following sections for OS-specific installation instructions.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 15


Installing on LinuxInstalling on LinuxImportantThe <strong>DCV</strong> installer relies on the distribution package manager to installthe required dependencies. Please double check your system has a workingyum (on RedHat) or zypper (on SuSE) installation and can access thedefault distribution packages. <strong>DCV</strong> requires only packages available in theofficial Linux distribution DVD. You must configure the Operating Systeminstallation DVD as the repository source in case you do not have access tothe official RedHat or SuSE repositories.To install or upgrade a Linux application or rendering host perform the following steps:1. log in as root on the node via SSH or directly from the console. It is suggested to run the installerin runlevel 3. To switch to runlevel 3 run:# init 32. run the installer and follow the instructions:# sh nice-dcv-<strong>2013.0</strong>-xxxx.runThe installer will perform checks including the NVIDIA card and driver presence. In case theNVIDIA drivers are not found, the installer can download the latest version from NVIDIA websiteand install them automatically. If the host is not connected to the Internet or you want to provideyour own version of the NVIDIA drivers, you may want to download them manually. Then, placethe NVIDIA installer in the same directory of the <strong>DCV</strong> installer and they will be picked up duringthe installation.At the end of the installation, the diagnostic script dcvdiag will be automatically launched. Checkthe output and, in case of any error or warning, apply the suggested fixes. A log of the installation,including the diagnostic information, will be saved and its location printed in the last page of theinstaller.On successful completion of the installation, the files are installed in the /opt/nice/dcvdirectory.Note<strong>DCV</strong> is automatically enabled on completion of the installation process. Incase you update your graphics drivers, run the dcvadmin enable command asroot to re-enable the software. Refer to the section called “NVIDIA DisplayProblems” for a list of cases in which <strong>DCV</strong> needs to be enabled again.16 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Installing on WindowsInstalling on WindowsUpgrading is supported from any 2012.x release. In case of upgrade from <strong>DCV</strong> 2011.x, it is requiredto uninstall all the old packages and then install the new ones.To install or upgrade an application host perform the following steps:1. log in as an administrator user via Remote Desktop Connection or directly from the console;2. run the appropriate installer depending on your system architecture and follow the displayedinstructions:• on 64-bit systems: nice-dcv-server-<strong>2013.0</strong>-xxx-x64.msi (includes 32-bit binariestoo).• on 32-bit systems: nice-dcv-server-<strong>2013.0</strong>-xxx-x86.msiOn successful installation, if you selected the default installation location, the software is installed\<strong>NICE</strong>\dcv .The installer modifies the system PATH environment variable to make Desktop Cloud Visualizationfiles available to RealVNC Visualization Edition.NoteIn case the installation fails and rollbacks, it is possible to have a completelog of the installation procedure. Open a Command Prompt as Administratorand launch:msiexec /i /log C:\install.logComplete the installation and click Finish at the end, then check C:\install.log.Refer to the section called “Verifying Installation” to make sure your installation successfullycompleted.NoteTo install service packs and updates on Windows, it may be necessary todisable Desktop Cloud Visualization functionality temporarily. To achievethis:1. run dcvadmin.exe disable at the command prompt;2. complete the service pack setup;3. re-enable Desktop Cloud Visualization using the dcvadmin.exe enablecommand.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 17


Installing LicenseInstalling License<strong>DCV</strong> supports two different license configurations:• node locked: a license file must be installed on each application host;• floating: a license server distributes licenses to application hosts. A license file must beinstalled on the license host. No license key is required on application hosts.You do not need to install a license key on <strong>DCV</strong> End Stations. You do not need to install a licensekey on <strong>DCV</strong> Rendering Hosts (in this case they cannot be used as Application Hosts too).You can request a license to your <strong>NICE</strong> commercial contact or to. When requesting a license please include the host IDwhich identifies the host where the license will to be installed.To retrieve the host ID run the following command:• \<strong>NICE</strong>\dcv\bin\rlmhostid.exe on Windows systems;• /opt/nice/dcv/license/rlm/rlmhostid on Linux systems.This is an example of the rlmhostid output containing the host ID:rlmhostid v9.1Copyright (C) 2006-2011, Reprise Software, Inc. All rights reserved.Hostid of this machine: XXXXXXXXXXXXAfter processing your request, you will receive a license.lic file containing your license-key.For node locked installations, install the license file into:1. \<strong>NICE</strong>\dcv\license\ on Windows application hosts;2. /opt/nice/dcv/license/ on Linux application hosts.For floating installations a RepriseLM server is needed. <strong>DCV</strong> server installation for Linux comes witha bundled RepriseLM server. The bundled binaries are installed in /opt/nice/dcv/license/rlm.A separate package to install RLM on a dedicated license server is available from the <strong>DCV</strong> downloadweb site both for Windows and Linux.Start the RepriseLM server with:service rlm startRefer to the RepriseLM documentation for further options that can be specified to the rlm command.<strong>DCV</strong> also includes a rlm init script that can be installed on your system to start the RepriseLM serverautomatically. The script can be found in /opt/nice/dcv/etc/init.d/rlm and should becopied to the /etc/init.d/ directory and then enabled using the chkconfig command. Referto your system documentation for further details on installing and enabling init scripts.18 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Configuring Default Proxy SupportTo check the RepriseLM server is started correctly check its output or its log file. It should contain:... (rlm) RLM License Server Version 9.1BL3Copyright (C) 2006-2011, Reprise Software, Inc. All rights reserved.... (rlm) License server started on ...... (rlm) Server architecture: ...... (rlm) License files:... (rlm) /opt/nice/dcv/license/license.lic... (rlm)... (rlm) Web server starting on port 5054... (rlm) Using TCP/IP port 5053... (rlm) Starting ISV servers:... (rlm) ... nice on port 56151... (nice) RLM License Server Version 9.1BL3 for ISV "nice"... (nice) Server architecture: x64_l1Copyright (C) 2006-2011, Reprise Software, Inc. All rights reserved.RLM contains software developed by the OpenSSL Projectfor use in the OpenSSL Toolkit (http//www.openssl.org)Copyright (c) 1998-2008 The OpenSSL Project. All rights reserved.Copyright (c) 1995-1998 Eric Young (eay@cryptsoft.com) All rights reserved.... (nice)... (nice) Server started on e4 (hostid: XXXXXXXXXXXX) for:... (nice) dcv... (nice)... (nice) License files:... (nice) /opt/nice/dcv/license/license.lic... (nice)To configure the application host to connect to the RepriseLM server:1. open the <strong>DCV</strong>_ROOT/conf/dcv.conf file with a text editor;2. add to the [License] section the following line and change to point it to your RepriseLM server:license_file = 5053@myRLMserverhostConfiguring Default Proxy Support<strong>DCV</strong> End Station supports connection to a server behind a HTTP or a SOCKS5 proxy. When proxyis activated only TCP connections are supported and Low Bandwidth Support cannot be used.The proxy support can be configured directly on end stations or can be configured on the server whichwill push the configuration to the end stations.Proxy configuration on end stations overrides the proxy configuration from the server.To configure the server to push proxy configurations to end stations you need to specify the proxytype, server address and port in the dcv.conf file in the [Remotization] section. Pleaserefer to Appendix A, dcv.conf for more information.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 19


Configuring Encryption SupportIn the following dcv.conf extract, the server is configured to push as a default to end stations anHTTP proxy running on port 3128 (the default port for Squid server) on node proxy.intranet.[Remotization]default_proxy_port=3128default_proxy_server=proxy.intranetdefault_proxy_type=HTTPIn the following example, the server pushes a SOCKS5 proxy running on port 1080 (the default portfor Antinat server) on node proxy.intranet.[Remotization]default_proxy_port=1080default_proxy_server=proxy.intranetdefault_proxy_type=SOCKS5ImportantThe proxy push feature is not supported by older pre-2012.1 end stations andmay prevent them to connect.In case you want to use the proxy push feature but need to retaincompatibility with older end stations (pre 2012.1) you must specify in the[Remotization] section the host parameter.Additional configuration on version-2012.0 end stations is required to connectvia proxy.Version 2011.0 end stations do not support proxy and need direct access tothe <strong>DCV</strong> Server to work.To enable the proxy support in RealVNC please refer to the RealVNC documentation available here:http://www.realvnc.com/products/vnc/documentation/4.6/docs/Chapter3.html in the "ConfiguringVNC Viewer before you connect" paragraph.Configuring Encryption Support<strong>DCV</strong> supports encryption of the 3D channel between the end station and the server.By default, communication between end station and server is not encrypted. This chapter explainshow to tighten the encryption rules if necessary.You can keep this configuration if you are sure all potential client computers are within asecure network environment and all potential users are trustworthy. This also provides backwardcompatibility with older end stations and may improve performance in particular on low end clientmachines.You can tighten the encryption rules by forcing AES with 128-bit keys or make connections ultrasecureforcing 256-bit keys. This may impact performance. It also means only new end stations canconnect to the server.The encryption actually used on the channel is the result of the handshake between the end stationand the server.20 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Configuring Encryption SupportNoteA connecting end station can request that the encryption rules be tightened,but not relaxed.You can configure <strong>DCV</strong> Server using the dcv.conf on the <strong>DCV</strong> Application Server (or the <strong>DCV</strong>Rendering Server in case you are using an External Rendering Server).The encryption setting in the [Remotization] section supports the following values:• PreferOff (default): encryption is preferably off. Choose this option to allow older versions of<strong>DCV</strong> End Station to connect. A connecting user can request the encryption to be turned on, eitherto 128-bit AES (by setting encryption on end station to PreferOn or AlwaysOn), or 256-bit AES(by setting encryption on the end station to AlwaysMaximum).• PreferOn: encryption is preferably on using 128-bit keys. A connecting user can request eitherto turn it off (by setting the encryption on the end station to PreferOff), or the AES key size beincreased to 256-bit (by setting encryption on end station to AlwaysMaximum).• AlwaysOn: encryption is always on. The AES key size is 128-bit or 256-bit if the connecting userrequires a 256-bit encrypted connection.• AlwaysMaximum: encryption is always on. The AES key size is always 256-bit. A connectinguser cannot request the encryption to be turned off, or the AES key size reduced to 128-bit.ImportantTo ensure all information is encrypted:• RealVNC server and viewer must be configured to use encryption;• <strong>DCV</strong> Server must be configured to use AlwaysOn or AlwaysMaximumencryption.Note this configuration will prevent older end stations to connect. To preservebackward compatibility with older end stations the server must be configuredto PreferOn or PreferOff.Please refer to the section called “Configuring Encryption Support” for information on encryptionconfiguration on the end station.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 21


Advanced InstallationsAdvanced InstallationsThis section describes advanced installation topics.Installing on Linux from RPMsThe installer takes care of installing all required packages and dependencies and is the suggestedway to install <strong>DCV</strong>. However, if you prefer to install each component using your preferred packagemanager you can find the RPMs inside the <strong>DCV</strong> CD-ROM which can be downloaded <strong>NICE</strong> web site.ImportantUpgrading is supported from any 2012.x release. In case of upgrade from older<strong>DCV</strong> versions, it is required to uninstall all the old packages and then installthe new ones.In case of upgrade, you must close all your VNC sessions (Xvnc processes)before upgrading your <strong>DCV</strong> installation.After upgrading, VNC sessions which were using RealVNC VisualizationEdition 4.5 will NOT be able to start new OpenGL applications and will getthe following error message when trying:ERROR: the RealVNC VE version is too oldTo install or upgrade an application host, log in as root and perform the following steps:1. from a terminal go to the directory containing the installation files;2. install the appropriate packages depending on your distribution:• RHEL 32 bit:# yum install --nogpgcheck vnc-VE4_6_3-x86_linux.rpm \nice-dcv-server-<strong>2013.0</strong>-xxx.i686.rpm• RHEL 64 bit:# yum install --nogpgcheck vnc-VE4_6_3-x64_linux.rpm \nice-dcv-server-<strong>2013.0</strong>-xxx.i686.rpm \nice-dcv-server-<strong>2013.0</strong>-xxx.x86_64.rpm• SLES 32 bit:# zypper install -f vnc-VE4_6_3-x86_linux.rpm \nice-dcv-server-<strong>2013.0</strong>-xxx.i686.rpm• SLES 64 bit:22 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Installing on Linux from RPMs# zypper install -f vnc-VE4_6_3-x64_linux.rpm \nice-dcv-server-32bit-<strong>2013.0</strong>-xxx.i686.rpm \nice-dcv-server-<strong>2013.0</strong>-xxx.x86_64.rpmNote<strong>DCV</strong> is automatically enabled on completion of the installation process. Incase you update your graphics drivers, run the dcvadmin enable command asroot to re-enable the software. Refer to the section called “NVIDIA DisplayProblems” for a list of cases in which <strong>DCV</strong> needs to be enabled again.On successful completion of the installation, the files are installed in the /opt/nice/dcvdirectory.In case of upgrade the old dcv.conf configuration file will be preserved. The configuration fileincluded in the installer is installed for reference as dcv.conf.rpmnew.Refer to the section called “Verifying Installation” to make sure your installation successfullycompleted.Configure a Rendering HostsThe Linux <strong>DCV</strong> Server can receive OpenGL commands from Application Server and act as as anExternal 3D Rendering Rendering Server. To make the <strong>DCV</strong> Server work in this way the followingsteps are required:1. follow the instructions to install <strong>DCV</strong> on a Linux Application host;2. open the <strong>DCV</strong>_ROOT/conf/dcv.conf file;3. in the [RenderingServer] section it is possible to specify the host value to the IP addressof the low latency/high bandwidth network interface to which the rendering server should bind. Ifnot specified the rendering server process will bind to all available interfaces;4. if needed, in the [RenderingServer] section set the local_display_list value with aspace separated list of local X accelerated displays to use. The default value is :0.05. in the [Remotization] section set the host value to the IP address on the network interfacereachable from the end station. If not specified the hostname of the rendering host will be used;6. start the <strong>DCV</strong> rendering server process on the node. As the root user run:# /opt/nice/dcv/etc/init.d/dcvrenderingserver startThe dcvrenderingserver process will run as the dcv unpriviledged user.It is suggested to install the dcvrenderingserver as a system service. As the root user run thefollowing steps:1. link the start the dcvrenderingserver script from <strong>DCV</strong> /etc/init.d:<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 23


Configure External 3D Renderingon Windows Application Hosts# ln -s /opt/nice/dcv/etc/init.d/dcvrenderingserver /etc/init.d/dcvrenderingserver2. add the dcvrenderingserver to system services:# chkconfig --add dcvrenderingserverConfigure External 3D Rendering on Windows Application Hosts<strong>DCV</strong> can enable a machine without 3D capabilities to run 3D applications. To achieve this, <strong>DCV</strong>delegates the rendering to a separate machine, called External Rendering Server, equipped with a3D graphics card.When the <strong>DCV</strong> installer detects the machine is missing 3D acceleration (typically a VM withoutpassthrough), it asks to specify the address of an External Rendering Server.In case you want to force or modify this settings afterwards, follow these steps:1. open the <strong>DCV</strong>_ROOT\conf\dcv.conf file;2. in the [Application] section, set the external_rendering_server to the hostnameor IP address of the host running the external rendering server. OpenGL applications will delegate3D rendering to this host.ImportantFor performance reasons, the communication between the applications andthe rendering server must happen on a low latency/high bandwidth network.24 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


4Installing <strong>DCV</strong> End StationTwo components are needed to remotely connect to a <strong>DCV</strong> Server from a client machine:• RealVNC Visualization Edition Viewer• <strong>NICE</strong> <strong>DCV</strong> End StationThe installation of these components requires administrative access to the client host. In caseadministrative access is not available, portable packages which do not require any installation can beused. See the section called “Using Portable End Stations” for more information.The <strong>DCV</strong> End Station component is already included in the <strong>DCV</strong> Server packages, on both Linuxand Windows. The purpose of using an application or rendering host as a <strong>DCV</strong> End Station is fortesting only.See the following sections for OS-specific installation instructions.Installing Windows End StationsImportantThe RealVNC Visualization Edition Viewer component required by <strong>DCV</strong> isembedded in the <strong>DCV</strong> End Station installer.Different versions of VNC on the same system may conflict with each other.It is suggested to uninstall any VNC component different from RealVNCVisualization Edition from the system before installing <strong>DCV</strong>.Please refer to Chapter 2, Prerequisites for more information on the requiredRealVNC version.Upgrading is supported from any 2012.x release. In case of upgrade from older <strong>DCV</strong> version, it isrequired to uninstall all the old packages and then install the new ones.To install on a Windows system that will be used as an <strong>DCV</strong> End Station, log in as an administratorand perform the following steps:<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 25


Installing Mac End Stations1. download from http://www.nice-software.com/dcv the <strong>DCV</strong> End Station MSIarchive for your system architecture;2. navigate to the folder containing the installation files;3. run the installer and follow the displayed instructions:• nice-dcv-endstation-<strong>2013.0</strong>-xxx-Release.msiThe <strong>DCV</strong> installer will detect RealVNC Visualization Edition Viewer and install it, in case it isnot already available on the system.4. log off and log in again. This action updates the system path so that you can begin using thesoftware.NoteIn case the installation fails and rollbacks, it is possible to have a completelog of the installation procedure. Open a Command Prompt as Administratorand launch:msiexec /i /log C:\install.logComplete the installation and click Finish at the end, then check C:\install.log.Installing Mac End StationsImportantThe RealVNC Visualization Edition Viewer component required by <strong>DCV</strong> isembedded in the Mac <strong>DCV</strong> End Station.Different versions of VNC on the same system may conflict with each other.It is suggested to uninstall any VNC component from the system beforeinstalling <strong>DCV</strong>.To install on a Mac system that will be used as an <strong>DCV</strong> End Station, perform the following steps:1. download from http://www.nice-software.com/dcv the <strong>DCV</strong> End Station DMGarchive;2. open the installer DMG;3. drag and drop the <strong>DCV</strong> End Station application from the DMG to the Applications folder;4. to always open .vnc files using the <strong>DCV</strong> End Station press CMD+I on a .vnc file, select Openwith <strong>DCV</strong> End Station and press Change all.To access the dcv.conf configuration file right click on the <strong>DCV</strong> End Station application, selectShow Package Contents and navigate to the Contents/Resources/conf directory.26 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Installing Linux End StationsNoteIn case of upgrade the full application contents, including the dcv.conf file,will be replaced with the defaults. Remember to backup the configuration incase you changed it.Installing Linux End StationsUpgrading is supported from any 2012.x release. In case of upgrade from older <strong>DCV</strong> versions, it isrequired to uninstall all the old packages and then install the new ones.To install on a Linux system that will be used as an <strong>DCV</strong> End Station, log in as a root user andperform the following steps:1. download from http://www.nice-software.com/dcv the <strong>DCV</strong> End Station .runarchive;2. from a terminal go to the directory containing the installation files;3. run the installer and follow the instructions:# sh nice-dcv-endstation-<strong>2013.0</strong>-xxx.run<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 27


Using Portable End StationsUsing Portable End Stations<strong>DCV</strong> Portable End Station is a bundled version of <strong>DCV</strong> End Station including everything is neededto remotely connect to a <strong>DCV</strong> Server. It does not require an installation making it easy to use fromany client computer.Using Windows Portable End StationTo use the <strong>DCV</strong> Portable End Station on a Windows system perform the following steps:1. download from http://www.nice-software.com/dcv the <strong>DCV</strong> Portable End StationZIP archive;2. expand the archive to a local folder or a USB stick and open its contents;3. double click on setup-niceviewer.bat to always open .vnc files with this <strong>DCV</strong> PortableEnd Station;4. double click on niceviewer.bat to start a VNC Viewer instance.Using Linux Portable End StationTo use the <strong>DCV</strong> Portable End Station on a Linux system, perform the following steps:1. download from http://www.nice-software.com/dcv the <strong>DCV</strong> Portable End StationTAR.GZ archive;2. expand the archive to a local folder with:$ tar xvzf nice-dcv-portable-<strong>2013.0</strong>-xxx.tar.gz3. to start a VNC Viewer instance run:$ dcv/niceviewerUsing Mac Portable End StationThe <strong>DCV</strong> End Station provided in the DMG package can be used directly without installing it.28 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Advanced InstallationsAdvanced InstallationsWindows Unattended InstallationTo deploy the client components of <strong>NICE</strong> <strong>DCV</strong> (RealVNC Visualization Edition Viewer and <strong>DCV</strong>End Station) in a unattended mode you can use the Windows tool msiexec, with the followingswitches:C:\> msiexec /Q /NORESTART /I nice-dcv-endstation-<strong>2013.0</strong>-xxx-Release.msiInstalling Linux End Stations from RPMsUpgrading is supported from any 2012.x release. In case of upgrade from <strong>DCV</strong> 2011.x, it is requiredto uninstall all the old packages and then install the new ones.To install on a Linux system that will be used as an <strong>DCV</strong> End Station, log in as a root user andperform the following steps:1. download from http://www.nice-software.com/dcv the <strong>DCV</strong> End Station RPMarchive for your system architecture;2. from a terminal go to the directory containing the installation files;3. install the appropriate packages depending on your distribution:• RHEL 32 bit:# yum install --nogpgcheck vnc-VE4_6_3-x86_linux.rpm \nice-dcv-endstation-<strong>2013.0</strong>-xxx.i686.rpm• RHEL 64 bit:# yum install --nogpgcheck vnc-VE4_6_3-x64_linux.rpm \nice-dcv-endstation-<strong>2013.0</strong>-xxx.x86_64.rpm• SLES 32 bit:# zypper install -f vnc-VE4_6_3-x86_linux.rpm \nice-dcv-endstation-<strong>2013.0</strong>-xxx.i686.rpm• SLES 64 bit:# zypper install -f vnc-VE4_6_3-x64_linux.rpm \nice-dcv-endstation-<strong>2013.0</strong>-xxx.x86_64.rpmConfiguring Proxy Support<strong>DCV</strong> End Station supports connection to a server behind an HTTP or SOCKS5 proxy. When proxyis activated only TCP connections are supported and Low Bandwidth Support cannot be used.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 29


Configuring Encryption SupportTo enable proxy support you need to specify the proxy type, server address and port in the dcv.conffile. Please refer to Appendix A, dcv.conf for more information.In the following dcv.conf extract, the end station is configured to connect to an HTTP proxyrunning on port 3128 (the default port for Squid server) on node proxy.intranet.[Endstation]proxy_port=3128proxy_server=proxy.intranetproxy_type=HTTPIn the following example, the end station connects to a SOCKS5 proxy running on port 1080 (thedefault port for Antinat server) on node proxy.intranet.[Endstation]proxy_port=1080proxy_server=proxy.intranetproxy_type=SOCKS5To enable the proxy support in RealVNC please refer to the RealVNC documentation available here:http://www.realvnc.com/products/vnc/documentation/4.6/docs/Chapter3.html in the "ConfiguringVNC Viewer before you connect" paragraph.Configuring Encryption Support<strong>DCV</strong> supports encryption of the 3D channel between the end station and the server.By default, an end station uses the server encryption preferences. This chapter explains how the endstation can be configured to tighten the encryption rules if supported by the server.You can configure <strong>DCV</strong> End Station using the dcv.conf.The encryption setting in the [Endstation] section supports the following values:• Server (default): uses the server's encryption preferences.• PreferOff: use an unencrypted connection if possible.• PreferOn: use an encrypted connection if possible.• AlwaysOn: do not connect to servers that do not use at least 128-bit encrypted connections.• AlwaysMaximum: do not connect to servers that do not use 256-bits encrypted connections.30 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


5DiagnosticsVerifying InstallationWhen the installation procedure is complete, you can verify that <strong>DCV</strong> is properly installed.Desktop Cloud Visualization includes a simple OpenGL/DirectX application that can be used to testwhether <strong>DCV</strong> is working correctlyVerification of <strong>DCV</strong> Installation on LinuxTo verify <strong>DCV</strong> installation Linux, follow these steps:1. on the application host:• Display Isolation mode: launch a new vncserver process;• Native Display mode: check the X11 server process is running and RealVNC server is runningin User Mode or Service Mode;2. on the end station: start VNC Viewer and connect to the appropriate display on the applicationhost. Refer to the section called “RealVNC Visualization Edition” for more information.You should now see the remote desktop;3. from the remote desktop, check the <strong>DCV</strong> Config tray icon and click on it;4. check <strong>DCV</strong> is switched on. If needed use the <strong>DCV</strong> Status control to turn it on;5. run the Desktop Cloud Visualization test application on the application host using the dcvtestcommand.6. The application should start with the following window title: "<strong>NICE</strong> <strong>DCV</strong> - Test Application".An item (dcvtest.bin) should appear in the <strong>DCV</strong> Config Applications area.If the graphics are displayed as in Figure 5.1, “Linux <strong>DCV</strong> Test Application” then the installationon the application host was successful.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 31


Verification with Windows OpenGLApplicationsFigure 5.1. Linux <strong>DCV</strong> Test ApplicationVerification with Windows OpenGL ApplicationsTo verify <strong>DCV</strong> installation on Windows for OpenGL, follow these steps:1. on the application host: check the VNC server process is running;2. on the end station: start VNC Viewer and connect to the application host. Refer to the sectioncalled “RealVNC Visualization Edition” for more information.You should now see the remote desktop;3. from the remote desktop, check the <strong>DCV</strong> Config tray icon and click on it;4. check <strong>DCV</strong> is switched on. If needed use the <strong>DCV</strong> Status control to turn it on;5. run the Desktop Cloud Visualization test application:click Start > All Programs > <strong>NICE</strong> > <strong>DCV</strong> > <strong>DCV</strong> Test Application.6. The application should start with the following window title: "<strong>NICE</strong> <strong>DCV</strong> - Test Application(OpenGL)".An item (dcvtest.exe) should appear in the <strong>DCV</strong> Config Applications area.If the graphics are displayed as in Figure 5.2, “Windows <strong>DCV</strong> Test Application using OpenGL”then the installation on the application host was successful.32 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Verification with Windows DirectXApplicationsFigure 5.2. Windows <strong>DCV</strong> Test Application using OpenGLVerification with Windows DirectX ApplicationsTo verify <strong>DCV</strong> installation on Windows for DirectX, follow these steps:1. check DirectX 9 or greater are correctly installed and working using dxdiag Microsoft utility.Note <strong>DCV</strong> supports only:a. physical machines with a NVIDIA DirectX accelerated video adapterb. or virtual machines with pass-through to a NVIDIA DirectX accelerated video adapter2. on the application host: check the VNC server process is running;3. on the end station: start VNC Viewer and connect to the application host. Refer to the sectioncalled “RealVNC Visualization Edition” for more information.You should now see the remote desktop;4. from the remote desktop, check the <strong>DCV</strong> Config tray icon and click on it;5. check <strong>DCV</strong> is switched on. If needed use the <strong>DCV</strong> Status control to turn it on;6. open a Command Prompt Start > All Programs > Accessories > CommandPrompt.run the Desktop Cloud Visualization test application with DirectX: dcvtest -directx97. The application should start with the following window title: "<strong>NICE</strong> <strong>DCV</strong> - Test Application(DirectX9)".An item (dcvtest.exe) should appear in the <strong>DCV</strong> Config Applications area.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 33


Verification with Windows DirectXApplicationsIf the graphics are displayed as in Figure 5.3, “Windows <strong>DCV</strong> Test Application using DirectX”then the installation on the application host was successful.Figure 5.3. Windows <strong>DCV</strong> Test Application using DirectX34 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


<strong>DCV</strong> Problems<strong>DCV</strong> ProblemsThis chapter describes how to detect and solve problems that might occur with <strong>DCV</strong>.Starting from version 2013, <strong>DCV</strong> for Linux ships with a useful diagnostic script able to detect themost common problems and provide suggestions on how to fix them.NoteIn case you are experiencing a problem with Linux, run dcvdiag as rootbefore contacting <strong>NICE</strong> support.If you cannot determine the cause of failure, request the assistance of the <strong>NICE</strong>support contacting .Provide the log file of dcvdiag in your support requests.If you encounter any problems using <strong>DCV</strong>, isolate the component causing the problem by varyingthe configuration as described in the following list. If any of these actions causes the system to issue amessage, follow the actions suggested by the message. If a command is not working correctly, verifythat the proper command-line options and environment variables are set. If these actions do not solvethe problem, follow local problem-reporting procedures.1. Use only a single end station.2. If the Windows end station does not display the 3D graphics, ensure that the system PATHenvironment variable on the end station contains the correct <strong>DCV</strong> binary directories.After an end station installation a reboot may be required for the changes to the system PATHto take effect.3. Run the installation verification procedure. See the section called “Verifying Installation” .Cannot Init Local DisplayWhen launching an OpenGL application on Linux application hosts it does not start and you see thefollowing error:Xlib: connection to ":0.0" refused by serverXlib: No protocol specified<strong>DCV</strong> RVN: error, cannot init local display.<strong>DCV</strong> uses a 3D hardware accelerated X11 display, the "3D rendering display", to render OpenGLaccelerated graphics. In Native Display mode the same rendering display is used for 3D and 2Dgraphics. In Display Isolation mode the 3D rendering display is used by different users, while for 2Dgraphics a dedicated virtual VNC display is used for each session.Usually the 3D rendering display is the first display, :0, but it may change for different reasons, forexample in case multiple 3D video cards are installed.To ensure <strong>DCV</strong> can render 3D graphics:<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 35


Cannot Init Local Display1. the OpenGL application must know the 3D rendering display to connect to;2. the 3D rendering display must grant X connections from the local machine to any user.Specify the 3D Rendering Display to UseBy default <strong>DCV</strong> will use the first :0.0 display as 3D rendering display.In case the 3D rendering display is different it is possible to explicitly specify the display to use.You can permanently configure the display in the dcv.conf file (see Appendix A, dcv.conf)or, if you want to change the display just for the execution of an application, you can use theRVN_LOCAL_DISPLAY environment variable.Example: to make the <strong>DCV</strong> Test application use the second screen on the first display, use thefollowing line:RVN_LOCAL_DISPLAY=:0.1 dcvtestGrant Local Connections to the 3D Rendering DisplayTo let the 3D rendering display accept X connections on a production system we suggest one of thefollowing methods:1. the system starts at runlevel 5 (graphics mode with GDM or other Display Manager for login).In the GDM startup script add the following command at the beginning:/usr/bin/xhost +local:# Enable local Unix Domain Sockets connections# (Check xhost path on your distribution)the appropriate script location may change depending on the Linux distribution or the installedDisplay Manager. For example on a RedHat Enterprise Linux 5 using the script is /etc/gdm/Init/Default while on SuSE it is /etc/opt/gnome/gdm/Init/Default.If your system is using KDM the suggested script is Xsetup usually located under /usr/share/config/kdm, /etc/kde3/kdm or /etc/kde4/kdm.Please refer to your Linux distribution documentation for further information.NoteWhen using this method the display ":0" (console) will continue to showthe GDM login screen but it should NOT be used. Logging-in and out causethe X process on display ":0" to be restarted. All applications using <strong>DCV</strong>,that actually renders 3D on display ":0", will loose their 3D panel or theycan even crash.2. the system starts at runlevel 3 (text mode).Configure a startup script for X into /etc/init.d and make proper links under the rc3.d.The script must launch the X server using a command like the following:36 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


VNC Problems/usr/X11R6/bin/X :0 -nolisten tcp vt7 # Start X server# on virtual terminal 7 and# disallow TCP connectionsxhost +local:# Enable only local Unix Domain# Sockets connections to XImportantOpening X access to local users will let them use the shared X display. Since<strong>DCV</strong> uses the shared X display only for off-screen 3D rendering, a usergrabbing the shared X display will not see the images rendered by other users.If needed, X access can be opened to selected users using:xhost +SI:localuser:USERNAMESee man xhost for more information.Cannot grab screenshots of 3D imagesWhen taking screenshots with grabbing tools running server side the 3D portions of the screen arenot grabbed.This is a known problem in previous <strong>DCV</strong> versions. Starting from <strong>DCV</strong> 2012.2 this problem hasbeen solved on Linux. Update the <strong>DCV</strong> server components to solve the problem.VNC ProblemsFont Path ProblemsWhen launching a vncserver process you may get the following error:VNC Server Visualization Edition VE4.6.x (rXXXXX)Copyright (C) 2002-2009 RealVNC Ltd.See http://www.realvnc.com for information on VNC.[...]Could not init font path element /usr/X11R6/lib/X11/fonts/100dpi/ [...]Fatal server error:could not open default font 'fixed'New versions of X servers expect fonts to be in a different location so you must specify the correctfont paths in the /etc/vnc/config.This is an example configuration from a RedHat Enterprise Linux 5 installation:<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 37


Mirror Driver# Default vncserver configuration. See the vncserver man page for details.-PasswordFile $HOME/.vnc/passwd# Location of VncAuth password-desktop "$HOSTNAME:$DISPLAYNUM ($USER)" # Desktop name-pn# Continue even if standard# ports fail-httpd # Serve Java viewer inline# Default RGB database file-co "/usr/share/X11/rgb"# Updated font paths for RedHat Enterprise Linux 5-fp "/usr/share/X11/fonts/misc/:unscaled, /usr/share/X11/fonts/100dpi/:unscaled, /usr/share/X11/fonts/75dpi/:unscaled, /usr/share/X11/fonts/misc/, /usr/share/X11/fonts/Type1/, /usr/share/X11/fonts/100dpi/, /usr/share/X11/fonts/75dpi/, /usr/share/X11/fonts/TTF/"Mirror DriverOn Windows application servers, RealVNC Server must be running using VNC Mirror Driver foroptimal performances.In case RealVNC Server installation is done remotely via Remote Desktop Connection, RealVNC isunable to install the VNC Mirror Driver.To install RealVNC Server remotely on Windows proceed in this way:• connect via Remote Desktop Connection and install <strong>DCV</strong> which in turn installs the RealVNCServer;• VNC installation will warn with the following message:VNC Mirror Driver can only be installed on the console orover a VNC connection.Please reconnect via VNC and install the VNC Mirror Driver manually.Ignore the message and continue the installation;• disconnect from RDP and connect via VNC;• right click on the VNC tray icon, select Status...; the VNC Server Status window will displaya warning: "VNC Mirror Driver is not available [ details ]". Click on the "[ details ]" link;• a tooltip will popup explaining the issue: "[...] If you have not installed it yet, please click here todo so. [...]". Click on the "click here" link;• the mirror driver will be installed, the screen may be blocked during the installation. Disconnect(you should be disconnected automatically after a while);• reconnect and check the VNC Server Status window. It will display a green status: "VNC Serveris working normally in Service-Mode".X Server Display ProblemsIf you are having problems related to X Server display, check the following information:38 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


No Monitor Attached to the VideoAdapter• /var/log/XFree86.0.log or /var/log/Xorg.0.log• This file contains information about the X Server.• xdpyinfo• This display utility provides information for X, including whether accelerated 3D graphics areenabled and whether required modules are loaded.To check whether 3D acceleration is enabled on the :0 display run:# DISPLAY=:0 xdpyinfo | grep GLXThe output should contain the "GLX" and "NV-GLX" words.The following Bash example shows how to check the :0 display loaded the RECORD moduleused in Native Display mode with by vnc.so:# DISPLAY=:0 xdpyinfo | grep RECORD• xhostThe output should contain the "RECORD" word.• Shows information about which machines are allowed to display on the local X Server.No Monitor Attached to the Video AdapterIn case there is no monitor attached to the NVIDIA video adapters some X Servers may refuse to start.To solve the problem modify the Device section in the xorg.conf: add the UseDisplayDeviceoption and set it to none.Example:Section "Device"Identifier "Device0"Driver "nvidia"Option "UseDisplayDevice" "none"EndSectionMultiple Video CardsIn case there are multiple video adapters the X Server must be configured to use them and with thecorrect drivers.For each NVIDIA card a Device section (specifying the appropriate Driver and BusID values)and a Screen section (using the device) must be present. An appropriate ServerLayout sectionmust also be present to arrange the screens.Using the nvidia-xconfig NVIDIA utility, it is possible to automatically create an xorg.conffile including all available NVIDIA GPUs:<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 39


Multiple Video Cards# nvidia-xconfig --enable-all-gpus -o autodetected.xconf.confAfter creating the new configuration file, check its correctness before using it.Below an extract of an xorg.conf showing the Device, Screen, ServerLayout sections for a dual cardserver. The UseDisplayDevice has been manually added.Section "ServerLayout"Identifier "Default Layout"Screen 0 "Screen0"Screen 1 "Screen1" RightOf "Screen0"InputDevice "Mouse0" "CorePointer"InputDevice "Keyboard0" "CoreKeyboard"EndSectionSection "Device"Identifier "Device0"Driver "nvidia"VendorName "NVIDIA Corporation"BoardName "Tesla M2070"BusID "PCI:6:0:0"Option "UseDisplayDevice" "none"EndSectionSection "Device"Identifier "Device1"Driver "nvidia"VendorName "NVIDIA Corporation"BoardName "Tesla M2070"BusID "PCI:7:0:0"Option "UseDisplayDevice" "none"EndSectionSection "Screen"Identifier "Screen0"Device"Device0"DefaultDepth 24SubSection "Display"Depth 24EndSubSectionEndSectionSection "Screen"Identifier "Screen1"Device"Device1"Monitor "Monitor1"DefaultDepth 24SubSection "Display"Depth 24EndSubSectionEndSectionThe BusID value can be obtained on modern NVIDIA drivers using:# nvidia-xconfig --query-gpu-infoIn case the nvidia-xconfig is not available on your system, you can use the lspci command:40 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


NVIDIA Display Problems# lspci...06:00.0 VGA compatible controller: nVidia Corporation GT200GL [...]07:00.0 3D controller: nVidia Corporation GT200 [...]NoteNote the output by lspci is in hexadecimal format and must be convertedbefore using in xorg.conf. For example, 25:00.0 must be converted toPCI:37:0:0NVIDIA Display ProblemsIf you are having NVIDIA display problems on Linux, go through the following check-list and takethe suggested corrective actions if needed:• NVIDIA drivers conflict with the open source nouveau drivers shipped with some modern Linuxdistributions. Check the nouveau drivers are not loaded with the following command:lsmod | grep nouveauThe output must be empty.To prevent nouveau drivers to be loaded from the Linux Kernel you may need to blacklist themboth in the bootloader and the modprobe configuration. Please refer to the documentation fromyour Linux distribution for specific information.On RHEL 6 this is the suggested way to disable nouveau drivers:• In /boot/grub/grub.conf append the following two kernel options:rdblacklist=nouveau nouveau.modeset=0 as in this example:title CentOSroot (hd0,0)kernel /vmlinuz-... rdblacklist=nouveau nouveau.modeset=0initrd /initramfs-...• In /etc/modprobe.d/blacklist append a new line at the end as in this example:...# nouveau driverblacklist nouveau• Reboot the system, check nouveau drivers are not loaded and install NVIDIA drivers.• if you update the Linux Kernel, you will need to re-install display drivers;• if you install or upgrade display drivers, you will need to reboot the system and run again thedcvadmin enable adminstrator level command;<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 41


License Problems• check the nvidia kernel module is correctly installed executing:lsmod | grep nvidiaThe output should contain a line like the following:nvidia 11704102 40• check the the PCI Bus is reporting the display card executing:lspciThe output should contain a line like the following:06:00.0 VGA compatible controller: nVidia Corporation Device 06dd (rev a3)• check the availability of nvidia-smi program and execute:nvidia-smi -aIn case nvidia-smi is not available on your installation, try to execute:cat /proc/driver/nvidia/versionVerify that the correct driver version is installed, and reinstall it if necessary.• check the availability of nvidia-smi program and execute:nvidia-smi -aIn case nvidia-smi is not available on your installation, try to execute:cat /proc/driver/nvidia/cards/0verify that the reported card is a supported display adapter. If the adapter is not supported, installa supported card and its associated driver.• if these actions do not solve the problem, follow local problem-reporting procedures.License ProblemsWhen trying to turn on <strong>DCV</strong> via dcv command you see an error similar to the following:dcv on<strong>DCV</strong> cannot be switched ONCheck the license file is present, its expiration and the host id matches the one returned by therlmhostid.42 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Performance IssuesFor more information set the RLM_EXTENDED_ERROR_MESSAGES environment variable and tryto turn on <strong>DCV</strong> again.In case the problem persists, contact or <strong>NICE</strong> Salesproviding the output from the dcv on command.Performance IssuesIn case you experience performance issue running <strong>DCV</strong> go through the following check-list and takethe suggested corrective actions if needed:• check the behavior of the same OpenGL application when running directly on the server machineconsole;ImportantIf the application is not performing as expected on the console contact thesupport from the application or hardware vendor.• on Linux servers, check the GPU is configured for performance running as administrator from agraphic session:dcv-nvidia-settingsFor each GPU check on the PowerMizer page the Performance Level is the greatest possible. Toenable this setting you can set the Preferred Mode to Prefer Maximum Performance from theNVIDIA settings GUI but this setting will be lost after a reboot.To force the PowerMizer setting and preserve after a reboot, edit the /etc/X11/xorg.conf file and add the "RegistryDwords" option to the NVIDIA device section with thefollowing value on a single line: "PowerMizerEnable=0x1; PerfLevelSrc=0x2222;PowerMizerDefault=0x1; PowerMizerDefaultAC=0x1" as in the followingexample:Section "Device"Identifier "Device0"Driver "nvidia"VendorName "NVIDIA Corporation"...Option "RegistryDwords" "PowerMizerEnable=0x1;..."EndSection• on Windows servers, check the RealVNC Mirror Driver is correctly installed and working;• on Linux servers check the CPU performance configuration. Refer to you Linux distributiondocumentation for more information.On RedHat Enterprise Linux 5/6 you can check the current scaling governor for each core running:cat /sys/devices/system/cpu/cpuX/cpufreq/scaling_governor<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 43


Performance IssuesThe output should be: performanceTo change the current value edit /etc/sysconfig/cpuspeed and set the GOVERNOR paramto performance:GOVERNOR=performanceThen restart cpuspeed with:# /etc/init.d/cpuspeed restartand check the changes are applied with:# /etc/init.d/cpuspeed statusCheck cpuspeed is started at boot in runlevel 3 and 5 with:# chkconfig --list cpuspeed<strong>DCV</strong> Config reports client without <strong>DCV</strong> End StationIn case the <strong>DCV</strong> End Station is not correctly installed or the client is not using the <strong>DCV</strong> End Stationbut a different VNC Viewer, the <strong>DCV</strong> Config tool reports at least one of the "Connected Users" is"without <strong>DCV</strong> Endstation". <strong>DCV</strong> cannot optimize the 3D images for such clients.If the client supports the <strong>DCV</strong> End Station follow Chapter 4, Installing <strong>DCV</strong> End Station and reinstallit.Maximum number of FPSOn Linux and Windows VMs <strong>DCV</strong> optimizes bandwidth usage by limiting the maximum number offrames per second sent over the network. The default FPS limit is set to 25 which is usually fine forthe most use cases but it can be changed if required.Please refer to the usage of the section called “target_fps” for more information.Performance Issues with External 3D RenderingAdditional considerations apply when running <strong>DCV</strong> with External 3D Rendering:• check network latency between rendering host and application host running the ping command.To ensure good performance the roundtrip time reported by the ping command should not beabove 0.3 milliseconds;• check network bandwidth between the rendering host and the application host in both directions.To ensure good performance the bandwidth should not be below 1-4 Gbit/s.To measure the actual bandwidth between the rendering host and the application host you canuse the iperf (http://sourceforge.net/projects/iperf/) tool which is freelyavailable for both Linux and Windows. You can test the upload bandwidth from the applicationhost to the rendering host running the following commands, on the rendering server:44 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


Performance Issuesiperf -s -B (on the rendering serveiperf -c (on the application server• check general virtual application host performance (vCPU, vDisk, RAM). Refer to the hypervisormanual for VM performance tuning.As reference the Windows guest should have Windows Experience Index values in line with orbetter than:• Processor: 7• Memory (RAM): 7• Primary Hard Disk: 6<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 45


Appendix A. dcv.confYou can customize <strong>DCV</strong> via the dcv.conf configuration file located in the conf directory underthe <strong>DCV</strong> installation.This file specifies rules for different <strong>DCV</strong> components.It is a text file with a basic structure composed of "sections" and "properties" based on the INI format.The section name appears on a line by itself, in square brackets. All properties after the sectiondeclaration are associated with that section. There is no explicit "end of section" delimiter; sectionsend at the next section declaration, or the end of the file. Sections can not be nested.Each property has a key and a value, delimited by an equals sign. The key appears to the left of theequals sign. Properties may be grouped into arbitrarily named sections.Lines starting with a hash mark or semi-colon and empty lines are ignored.Each entry in dcv.conf has one of the following forms:• [section]• KEY=VALUE[Application]List of [Application] settings.external_rendering_serverSyntaxexternal_rendering_server = host[:port]DescriptionSpecifies the hostname or IP address followed by the port of the external rendering server thatthe OpenGL applications must use to delegate 3D rendering.The value of the external_rendering_server parameter can be overridden by settingthe environment variable <strong>DCV</strong>_RENDERING_SERVER.Valid ValuesHostname or IP address followed by the port of a <strong>DCV</strong> rendering server. Port may be omitted.Default ValueNo external rendering server. In case just host is specified the default port is 2007.NoteThe communication between OpenGL applications and the <strong>DCV</strong> renderingserver must go through a high bandwidth/low latency network connection.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 47


local_display_listlocal_display_listSyntaxlocal_display_list = :display[.screen] ...DescriptionList of local 3D accelerated X displays and screens used by <strong>DCV</strong> for OpenGL rendering.The value of the local_display_list parameter can be overridden by setting theenvironment variable RVN_LOCAL_DISPLAY.Valid ValuesSpace separated list of local 3D accelerated X displays.Default Value:0.0local_multisampleSyntaxlocal_multisample = integerDescriptionSpecifies the number of samples to request. Use 0 to turn off multisampling, use -1 to choosethe highest supported value.The value of the local_multisample parameter can be overridden by setting theenvironment variable RVN_LOCAL_MULTISAMPLE.Valid Values• -1: highest supported multisampling;• 0: turn multisampling off;• greater than 0: the multisampling number to use.Default Value0NoteIncreasing the number of multisampling requires more computing power anddecreases OpenGL rendering performances.print_dcv_versionSyntaxprint_dcv_version = booleanDescriptionSpecifies if <strong>DCV</strong> should print a message with the <strong>DCV</strong> version when an OpenGL applicationstarts.48 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


target_fpsThe value of the print_dcv_version parameter can be overridden by setting theenvironment variable <strong>DCV</strong>_PRINT_VERSION.Valid Valuestrue | falseDefault Valuefalsetarget_fpsSyntaxtarget_fps = integerDescriptionSpecifies the frame rate at which frames are grabbed and sent on the network. The Target FPScan be reached or not depending on:• Whether or not the application is generating enough frames on server side;• The time spent to generate compressed the frames;• The available bandwidth permits to send the frames;• The end station is able to decompressed the frames.The value of the target_fps parameter can be overridden by setting the environment variableRVN_TARGET_FPS.Valid Values• -1, 0: disables the limit;• greater than 0: sets the limit to that number.Default Value25use_nvidia_gridSyntaxuse_nvidia_grid = booleanDescriptionSpecifies to use the Nvidia GRID technology.The value of the use_nvidia_grid parameter can be overridden by setting the environmentvariable <strong>DCV</strong>_USE_NVIDIA_GRID.Valid Valuestrue | falseDefault Valuetrue<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 49


use_sample_queriesuse_sample_queriesSyntaxuse_sample_queries = booleanDescriptionSpecifies whether <strong>DCV</strong> should use GL sample queries or not.The value of the use_sample_queries parameter can be overridden by setting theenvironment variable RVN_USE_SAMPLE_QUERIES.Valid Valuestrue | falseDefault Valuetrue[Endstation]List of [Endstation] settings.console_shortcutSyntaxconsole_shortcut = should be something like "F9"DescriptionSets the shortcut to launch the consoleThe value of the console_shortcut parameter can be overridden by setting the environmentvariable RVN_CONSOLE_SHORTCUT.Valid ValuesValid modifiers are Control, Shift and Alt. These values must be contained between < and >characters.Default ValueF9NoteSee that in order to set these characters in an environment varaible you needto escape them with ^ on Windows and with \ on Linux.enable_consoleSyntaxenable_console = booleanDescriptionSpecifies whether to load and use the client-side console.The value of the enable_console parameter can be overridden by setting the environmentvariable <strong>DCV</strong>_ENDSTATION_ENABLE_CONSOLE.50 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


encryptionValid Valuestrue | falseDefault ValuetrueencryptionSyntaxencryption = server | alwaysmaximum | alwayson| preferon | preferoffDescriptionThe endstation encryption mode.The value of the encryption parameter can be overridden by setting the environment variable<strong>DCV</strong>_ENDSTATION_ENCRYPTION.Valid Valuesserver uses the server's encryption preferences alwaysmaximum to use always encryptionwith a 256 bits encryption key alwayson to connect to servers that use at least 128-bit encryptedconnections preferon to use 128 bits encryption if the endstation allows the server to decideor if sets preferon preferoff to not use encryptionDefault Valueserverproxy_portSyntaxproxy_port = integerDescriptionSpecify the TCP port number of the HTTP or SOCKS5 proxy server that the <strong>DCV</strong> end stationmust use to connect to the <strong>DCV</strong> server.The value of the proxy_port parameter can be overridden by setting the environment variable<strong>DCV</strong>_PROXY_PORT.Valid ValuesA valid TCP port number.Default Value8123proxy_serverSyntaxproxy_server = hostname | IP addressDescriptionSpecify the hostname or IP address of the HTTP or SOCKS5 proxy server that the <strong>DCV</strong>endstation must use to connect to the <strong>DCV</strong> server.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 51


proxy_typeThe value of the proxy_server parameter can be overridden by setting the environmentvariable <strong>DCV</strong>_PROXY_SERVER.Valid ValuesHostname or IP address of a HTTP or SOCKS5 proxy server. Empty string to directly connectto the <strong>DCV</strong> server without using any proxy server.Default ValueNo proxy server.NoteProxy servers that require authentication are not supported. This may be thesubject of a future release.proxy_typeSyntaxproxy_type = HTTP | SOCKS5DescriptionSpecify the type of proxy server that the <strong>DCV</strong> end station must use to connect to the <strong>DCV</strong> server.The value of the proxy_type parameter can be overridden by setting the environment variable<strong>DCV</strong>_PROXY_TYPE.Valid ValuesHTTP to use a HTTP proxy or SOCKS5 to use a SOCKS5 proxyDefault ValueHTTPtip_timeoutSyntaxtip_timeout = millisecondsDescriptionSets the time the console shortcut tip will be present.The value of the tip_timeout parameter can be overridden by setting the environmentvariable <strong>DCV</strong>_ENDSTATION_TIP_TIMEOUT.Valid ValuesAny positive integer.Default Value10000[License]List of [License] settings.52 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


license_filelicense_fileSyntaxlicense_file = filename | port@hostDescriptionSpecifies a demo license file or RepriseLM-based license used by <strong>DCV</strong>.The value of the license_file parameter can be overridden by setting the environmentvariable <strong>DCV</strong>_LICENSE_FILE.Valid ValuesThe value for license_file can be either of the following:• The full path name to the license file.Linux example:license_file = /opt/nice/dcv/license/license.licWindows example:license_file = C:\Program Files\<strong>DCV</strong>\license\license.lic• For a permanent license, the name of the license server host and TCP port number used by therlm daemon, in the format port@host.For example:license_file = 5053@licserverThe port number must be the same as that specified in the HOST line of the license file.Default ValueIf you installed <strong>DCV</strong> with a default installation, the license file is expected to be in the licensedirectory under <strong>DCV</strong> installation path.use_platform_productSyntaxuse_platform_product = ...DescriptionForce the use of the old platform-specific products (dcv_linux, dcv_windows, dcv_windows_vm)The value of the use_platform_product parameter can be overridden by setting theenvironment variable <strong>DCV</strong>_LICENSE_USE_PLATFORM_PRODUCT.Valid Values...<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 53


[Logging]Default Valuefalse[Logging]List of [Logging] settings.log_fileSyntaxlog_file = filepathDescriptionSpecifies the full file path prefix used by <strong>DCV</strong> to create log file to which <strong>DCV</strong> messages arelogged into. Each log file will be created in the form: log_file.pid, where pid is an integeridentifying the OpenGL process using <strong>DCV</strong>.For example:log_file = /tmp/dcv.logwill make <strong>DCV</strong> create log files as:/tmp/dcv.log.1234The value of the log_file parameter can be overridden by setting the environment variable<strong>DCV</strong>_LOG_FILE.Valid ValuesA file path where the user running the <strong>DCV</strong> application can write.log_levelSyntaxlog_level = stringDescriptionSpecifies the logging level of <strong>DCV</strong> messages.For example:log_level = INFOThe value of the log_level parameter can be overridden by setting the environment variable<strong>DCV</strong>_LOG_LEVEL.Valid ValuesThe log levels in order from highest to lowest are:• error54 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


[Remotization]• warning• info• debugThe most important <strong>DCV</strong> messages are at the error or warning level. Messages at the infoand debug level are only useful for debugging.Default Valuewarning[Remotization]List of [Remotization] settings.allow_udpSyntaxallow_udp = ...DescriptionWhether to allow to use UDP.The value of the allow_udp parameter can be overridden by setting the environment variable<strong>DCV</strong>_ALLOW_UDP.Valid Valuestrue | falseDefault Valuefalsecodec_quSyntaxcodec_qu = stringDescriptionSpecifies the codec <strong>DCV</strong> should use for static image quality enhancement.See also the enable_update_quality setting for enabling the static image qualityenhancement.The value of the codec_qu parameter can be overridden by setting the environment variableRVN_CODEC_QU.Valid ValuesSupported codecs:• jpeg: lossy JPEG compression;<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 55


codec_tcp• rle: lossless run-length encoding.• zrle: lossless run-length encoding.Default Valuezrlecodec_tcpSyntaxcodec_tcp = stringDescriptionSpecifies the codec <strong>DCV</strong> should use on TCP connections.The value of the codec_tcp parameter can be overridden by setting the environment variableRVN_CODEC_TCP.Valid ValuesSupported codecs:• jpeg: lossy JPEG compression;• rle: lossless run-length encoding.• zrle: lossless run-length encoding.Default Valuejpegdefault_proxy_portSyntaxdefault_proxy_port = integerDescriptionSpecify the TCP port number of the HTTP or SOCKS5 proxy server that the <strong>DCV</strong> end stationwill use as a default to connect to the <strong>DCV</strong> server. The proxy properties on the end station willoverride these defaults.The value of the default_proxy_port parameter can be overridden by setting theenvironment variable <strong>DCV</strong>_DEFAULT_PROXY_PORT.Valid ValuesA valid TCP port number.Default Value8123default_proxy_serverSyntaxdefault_proxy_server = hostname | IP address56 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


default_proxy_typeDescriptionSpecify the hostname or IP address of the HTTP or SOCKS5 proxy server that the <strong>DCV</strong>endstations will use as a default to connect to the <strong>DCV</strong> server. The proxy properties on the endstation will override these defaults.The value of the default_proxy_server parameter can be overridden by setting theenvironment variable <strong>DCV</strong>_DEFAULT_PROXY_SERVER.Valid ValuesHostname or IP address of a HTTP or SOCKS5 proxy server. Do not specify this setting if youwant to directly connect to the <strong>DCV</strong> server without using any proxy server.Default ValueNo proxy server.NoteProxy servers that require authentication are not supported. This may be thesubject of a future release.default_proxy_typeSyntaxdefault_proxy_type = HTTP | SOCKS5DescriptionSpecify the type of proxy server that the <strong>DCV</strong> end station will use as a default to connect to the<strong>DCV</strong> server. The proxy properties on the end station will override these defaults.The value of the default_proxy_type parameter can be overridden by setting theenvironment variable <strong>DCV</strong>_DEFAULT_PROXY_TYPE.Valid ValuesHTTP to use a HTTP proxy or SOCKS5 to use a SOCKS5 proxyDefault ValueHTTPenable_quality_updateSyntaxenable_quality_update = booleanDescriptionSpecify if <strong>DCV</strong> must send a higher quality image (the quality update) when the 3D image is notchanging.See also the quality_update_quality setting for tweaking the quality level of the staticimages.The value of the enable_quality_update parameter can be overridden by setting theenvironment variable RVN_ENABLE_QUALITY_UPDATE.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 57


encryptionValid Valuestrue | falseDefault ValuetrueencryptionSyntaxencryption = alwaysmaximum | alwayson | preferon | preferoffDescriptionThe server application encryption mode.The value of the encryption parameter can be overridden by setting the environment variable<strong>DCV</strong>_ENCRYPTION.Valid Valuesalwaysmaximum to use always encryption with a 256 bits encryption key alwayson to usealways encryption with a 128 bits encryption key preferon to use 128 bits encryption if theendstation allows the server to decide or if sets preferon preferoff to not use encryptionDefault ValuepreferoffhostSyntaxhost = hostDescriptionSpecifies the hostname or IP address of the external rendering server that the OpenGLapplications must use to delegate 3D rendering. In case it is specified it must be a valid addressreachable from the end station.The value of the host parameter can be overridden by setting the environment variableRVN_RENDERING_HOST.Valid ValuesHostname or IP address of a <strong>DCV</strong> rendering server.image_qualitySyntaximage_quality = integerDescriptionSpecify the quality level of dynamic images when using TCP connections. Higher valuescorrespond to higher image quality and more data transfer. Lower values reduce quality andreduce bandwidth usage.The value of the image_quality parameter can be overridden by setting the environmentvariable RVN_IMAGE_QUALITY.58 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


quality_update_intervalValid Values1-100Default Value80quality_update_intervalSyntaxquality_update_interval = integerDescriptionInterval in milliseconds before a quality update is sent after a dynamic quality frame was sent.The value of the quality_update_interval parameter can be overridden by setting theenvironment variable RVN_QUALITY_UPDATE_INTERVAL.Valid ValuesValues greater than zero are valid.Default Value300quality_update_qualitySyntaxquality_update_quality = integerDescriptionSpecify the quality level of static images. Higher values correspond to higher image qualityand more data transfer. Lower values reduce quality and reduce bandwidth usage. See also theenable_update_quality setting for enabling the static image quality enhancement.The value of the quality_update_quality parameter can be overridden by setting theenvironment variable RVN_QUALITY_UPDATE_QUALITY.Valid Values1-100Default Value95tcp_max_portSyntaxtcp_max_port = integerDescriptionEnd of the range of TCP ports used by <strong>DCV</strong> to listen to end stations.The value of the tcp_max_port parameter can be overridden by setting the environmentvariable RVN_MINI_MAX_PORT.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 59


tcp_start_portValid ValuesA valid TCP port number greater than tcp_start_port.Default Value7399tcp_start_portSyntaxtcp_start_port = integerDescriptionStart of the range of TCP ports used by <strong>DCV</strong> to listen to end stations.The value of the tcp_start_port parameter can be overridden by setting the environmentvariable RVN_MINI_START_PORT.Valid ValuesA valid TCP port number.Default Value7300udp_qualitySyntaxudp_quality = integerDescriptionSpecify the quality level of dynamic images when using UDP connections. Higher valuescorrespond to higher image quality and more data transfer. Lower values reduce quality andreduce bandwidth usage.The value of the udp_quality parameter can be overridden by setting the environmentvariable RVN_UDP_QUALITY.Valid Values1-100Default Value80udp_start_portSyntaxudp_start_port = integerDescriptionStart of the range of UDP ports used by <strong>DCV</strong> to listen to end stations.The value of the udp_start_port parameter can be overridden by setting the environmentvariable RVN_UDP_START_PORT.60 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


use_udpValid ValuesA valid UDP port number.Default Value7300use_udpSyntaxuse_udp = integerDescriptionSpecify whether <strong>DCV</strong> should use TCP or UDP connections.The value of the use_udp parameter can be overridden by setting the environment variableRVN_USE_UDP.Valid Values0 | 1 | 2Default Value0[RenderingServer]List of [RenderingServer] settings.agent_max_portSyntaxagent_max_port = integerDescriptionMaximum value of the ports interval used by the rendering agents.The value of the agent_max_port parameter can be overridden by setting the environmentvariable SVN_SOCKETS_MAX_PORT.Valid ValuesA TCP port number.Default Value60000agent_start_portSyntaxagent_start_port = integerDescriptionStart of the ports interval used by the rendering agents.<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 61


hostThe value of the agent_start_port parameter can be overridden by setting the environmentvariable SVN_SOCKETS_PORT.Valid ValuesA TCP port number.Default Value34567hostSyntaxhost = IP addressDescriptionSpecifies the network interface to which the rendering server should bind.The value of the host parameter can be overridden by setting the environment variable<strong>DCV</strong>_RENDERING_SERVER_HOST.Valid ValuesThe rendering host IP address to which application host are connected via a high bandwidth/lowlatency network.local_display_listSyntaxlocal_display_list = :display[.screen] ...DescriptionList of local 3D accelerated X displays and screens used by <strong>DCV</strong> for OpenGL rendering.The value of the local_display_list parameter can be overridden by setting theenvironment variable <strong>DCV</strong>_LOCAL_DISPLAY_LIST.Valid ValuesSpace separated list of local 3D accelerated X displays.Default Value:0.0NoteAccess to the selected displays must be granted to the user running therendering server.portSyntaxport = integer62 <strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong>


userDescriptionSpecifies the TCP port where the rendering server should listen on.The value of the port parameter can be overridden by setting the environment variable<strong>DCV</strong>_RENDERING_SERVER_PORT.Valid ValuesA free TCP port number above 1024.Default Value2007userSyntaxuser = operating system usernameDescriptionSpecifies the user account the rendering server is running as.The value of the user parameter can be overridden by setting the environment variable<strong>DCV</strong>_RENDERING_SERVER_USER.Valid ValuesAny unprivileged operating system username.Default Valuedcv[Wrapper]List of [Wrapper] settings.disable_driver_unloadSyntaxdisable_driver_unload = booleanDescriptionSpecifies if explicit unload of the driver's GL library must be disabled.The value of the disable_driver_unload parameter can be overridden by setting theenvironment variable <strong>DCV</strong>_DISABLE_DRIVER_UNLOAD.Valid Valuestrue | falseDefault Valuetrue - Unload GL library<strong>NICE</strong> <strong>DCV</strong> Installation and Administration<strong>Guide</strong> 63

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!