Multicast Testing
Last updated
Last updated
2024 @ NDI Vizrt AB.
With large and even mid-size NDI workflows, multicast is becoming more and more of a necessity in an environment where any video stream can be pulled by any receiver at any time. While multicast can be enabled, testing would require additional software.
Download and install Wireshark
Reduce the network connection to just a single NIC, coming from the network that the NDI device is on
Ensure that the switch the devices are connected to are managed, multicast capable, and have IGMP snooping enabled to prevent broadcast storms
Launch the NDI device or software, and enable Multicast
If this is from software that uses the NDI Access Manager to enable it, do the following: First, launch Access Manager
Navigate to the Advanced Tab, then click the Multicast dropdown button
Check the box by IP. A warning will come up that doing so could cause consequences on an improperly managed network. Press OK to dismiss that message
Unless you know the IP and address, Mask, and TTL values to use, leave it as-is
Press OK to save your changes, then Launch your NDI device device or software
Launch Wireshark on the receiving PC, and double click the interface that's receiving the connection. In my example, I'm clicking Ethernet, as that has active data.
If the only two devices are this network are the receive and sender in multicast, you should see the data flow look like the below picture. The important things to note are
The Source IP is the IP of the device that's sending Multicast
The Destination IP is a reserved multicast IP (https://datatracker.ietf.org/doc/html/rfc5771). If the destination IP is the local IP of the system running Wireshark, then it's not a multicast stream
Typically, the transmit data for multicast is UDP (but not always- sometimes it's QUIC). If the protocol shown is TCP, then it's not multicast
If there's too much data from other programs or devices on the network or machines and you need to isolate to just the sending system, use the filters for multicast: ip.addr==IP ADDRESS
Disable multicast and view the Wireshark output- it should change the Destination address to the local IP and may change the protocl to TCP. Re-enabled multicast and confirm it changes back
Restart the device and confirm the test again.