Introduction

In this document you will find a list and explanation of all the configurable options for the Network Controller. These options can be found in the file: ‘C:\ProgramData\Naverisk\Network Controller\NC.cfg’.

After making changes to this file, please restart the Naverisk Agent service for the changes to take effect.

Please remember to take a Backup of your Naverisk Database and the NC.cfg file prior to making any changes. Placing your Site Controller in Maintenance Mode will help with suppressing alerts during the change.

1.0 What is a Network Controller?

A Network Controller is an entity in Naverisk which is used as an intermediary for Agent – Site Controller communications. The idea is that Agent connections can be processed and streamlined by the Network Controller before being passed on, thereby reducing processing load on the Site Controller.

The Site Controller is the core of the Naverisk system, the program which processes information, interacts with Agents, the Network Controller, the database and the website to provide the functions of your Naverisk system.

2.0 Parameters Available for Customisation

2.1 NetworkControllerID

The NetworkControllerID is simialr to an Agent's AgentID - it is a unique identifier assigned by the Site Controller for any new Network Controller.

2.2 ClientID

The ClientID defines which Client in the Naverisk system this Network Controller belongs to. If the Network Controller configuration contains 'Global=1', then this Network Controller will accept connections from any Client's Agent; if it is 0, it will only accept connections from its own Client's Agents.

2.3 SiteControllerInternalAddress, SiteControllerExternalAddress

These addresses are used to by the Network Controller to contact the Site Controller.

2.4 AgentListenPort

This is the network port used by the Network Controller to listen for Agents.

2.5 AgentPackVersion

The AgentPackVersion specifies the Agent Package version installed on the Network Controller. Connections from Agents with any other Version will result in the Network Controller deploying an Upgrade Package to the Agent with the outdated version.

2.6 LogLevel

This controls the detail level which logging will be written with. It is not recommended that this option be changed as a reduction of Log information may prevent Naverisk Support from diagnosing faults with your Naverisk installation. Similarly overly detailed Logs can be more difficult to interpret and may require excessive disk space to store. If it is required, this setting specifies the least severe Log level that will be written to the Naverisk Agent and Package Logs. It can be set to a value between 0 and 5 inclusive. The default value is 4. Additional logging levels may be requested by Naverisk Support.

0: Always

1: Fatal

2: Warning

3: Message

4: Info

5: Trace

E.g. if LogLevel=2 is used, only Logs with the levels Always, Fatal and Warning will be added to the Log File. Logs with the level Message, Info and Trace will be discarded.

2.7 Global

The Global parameter indicates whether this particular Network Controller is a Global Network Controller. Global Network Controller’s are able to accept connections from Agents of any Client. Non-Global Network Controller’s can accept connections from only their own Client (as in ClientID, above). Only the Network Controller installed on your Naverisk Server should be set to Global; all remote Network Controller’s should be non-Global. The value 0 indicates non-Global status; 1 indicates Global.

2.8 ConcurrentDownloads

The ConcurrentDownloads parameter is used to limit the number of downloads the Network Controller will support at any one time. If the Network Connection used to host your Naverisk installation has limited bandwidth, you may want to set this to a value that is suitable for the connection’s capacity. Use this option with caution, as it can slow down Naverisk upgrades.

2.9 NCLoopDelay

The NCLoopDelay parameter defines the number of milliseconds the Network Controller will wait before starting the next processing loop. This number must be less than 100 and is to be used to prevent the Network Controller overloading due to poor data connections. If this number is too large the Network Controller will become unstable.

2.10 NCPingTimeoutMultiplier

The NCPingTimeoutMultiplier defines the number of pings the Network Controller will miss before it restarts the connection to the Site Controller. If this number is too large the Network Controller will not restart the connection when communication is broken. The default value is 4.1.

The reason for the default being 4.1 is to compensate for any network delay. If it was exactly 4, you would assume the network times are always the same. If they vary slightly then you end up with only 3 as the 4th could arrive late due to network latency changes of a millisecond or 2. Hence the 0.1 adds a window for the 4th packet to arrive with network delay being accounted for. 

2.11 DataStoragePath

The DataStoragePath indicates the location which this Network Controller will store temporary data in. An example of the transient data stored at this path is data awaiting upload to the Site Controller.

2.12 SystemID

The SystemID is unique for each Site Controller and is shared by all the agents of that Site Controller. The Network Controller will only accept connections from Agents with the same SystemID unless AllowForeignAgents is set to 1 (see below).

2.13 AllowForeignAgents

The AllowForeignAgents parameter can be used to ignore the condition set by SystemID (above). Setting AllowForeignAgents=1 will allow Agents from other Naverisk systems to connect to this Network Controller. Use this setting with caution; if the Agents are not configured correctly for their new system, they could be uninstalled by the system.

2.15 NCProxy

The NCProxy parameter can be used to enable the Network Controller’s Proxy mode. In this mode, the Network Controller provides access to the Site Controller for Agents on a private network. The value must be the address of the Site Controller, and the port on which the Network Controller should listen for connections from Agents, separated by a comma. E.g. NCProxy=200.201.190.191, 9833.

Did this answer your question?