Using multiple NI Controllers with GigE Cameras in my company network, high network traffic occurs through broadcasting

Updated Mar 20, 2020

Reported In

Hardware

  • Industrial Controller
  • CVS-1458
  • CVS-1456
  • CompactRIO Controller

Software

  • LabVIEW
  • Vision Software Suite

Driver

  • NI-IMAQdx

Operating System

  • LabVIEW Real-Time (NI Linux Real-Time)

Issue Details

In my company network I have several NI Controllers (CVS, IC, cRIO) with Vision Acquisition Software installed. Those are set to do image acquisition with GigE cameras. These controllers send UDP messages for IMAQdx discovery broadcast, which cause a high background traffic. What can I do against that?
 

Solution

This behavior is – by default – expected. As soon as you install NI Vision Acquisiton Software with the NI IMAQdx driver, your devices will send a GigE discovery broadcast every several miliseconds on all Ethernet ports to recognize new GigE cameras.

If the device discovery leads to too much background traffic for your network, you can reduce the discovery interval by adding a DiscoveryDelay in the registry:
1.  Set up a WebDAV connection to your target
2. Now you will see the Linux folder structure in your windows explorer

3. go to ..\etc\natinst\share

4. Open ni-rt.ini. You will find a [IMAQDX] area, looking similar to this:

[IMAQDX]
GigEVisionSupportEnabled=true
U3VCameraSupportEnabled=true
U3V_MaximumCurrentUSB20_mA=1000
UVCCameraSupportEnabled=true
InstalledVersion=19.5.0.3.0

4.1 add DiscoveryDelay
DiscoveryDelay=x, x = [number of miliseconds before any discovery]

If you want to disable the discovery, then you can set
DiscoveryDelay=-1

resulting in

[IMAQDX]
DiscoveryDelay=-1
GigEVisionSupportEnabled=true
U3VCameraSupportEnabled=true
U3V_MaximumCurrentUSB20_mA=1000
UVCCameraSupportEnabled=true
InstalledVersion=19.5.0.3.0


Attention:

If you completely disable discovery,
1. you will not be able to see cameras in NI MAX any more
2. in your LabVIEW Code, you will have to run IMAQdx Discover Ethernet Cameras.vi once after every restart, to have your cameras recognized.
 
 

Additional Information

This issue typically happens in networks with several 10 or more real-time target devices in a network. Still, these discovery broadcasts also happen on Windows Devices with NI Vision Acquisition installed.
If you want to change the behavior of IMAQdx on your windows device,

1. Go to your registry:


2. In your registry, go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\niimaqdxk\Parameters

3. create a new DWORD (32-bit) Value
 

3. Name it DiscoveryTimeout and set its value to 0xffffffff or 0x00000000