Protocols

NDI

Newtek NDI

NDI stands for Network Device Interface.

https://en.wikipedia.org/wiki/Network_Device_Interface

Also see NDI page https://videng.wiki/en/software/VizRT/NDI

Ports

Port number Type Use
5353 UDP This is the standard port used for mDNS communication and is always used for multicast sending of the current sources onto the network.
5959 TCP NDI Discovery Server is an optional method to have NDI devices perform discovery. This can be beneficial in large configurations, when you need to connect NDI devices between subnets or if mDNS is blocked.
5960 TCP This is a TCP port used for remote sources to query this machine and discover all of the sources running on it. This is used for instance when a machine is added by an IP address in the access manager so that from an IP address alone all of the sources currently running on that machine can be discovered automatically.
5961 and up TCP These are the base TCP connections used for each NDI stream. For each current connection, at least one port number will be used in this range.
5960 and up UDP In version 5 and above, when using reliable UDP connections it will use a very small number of ports in the range of 5960 for UDP. These port numbers are shared with the TCP connections. Because connection sharing is used in this mode, the number of ports required is very limited and only one port is needed per NDI process running and not one port per NDI connection.
6960 and up TCP/UDP When using multi-TCP or UDP receiving, at least one port number in this range will be used for each connection.
7960 and up TCP/UDP When using multi-TCP, unicast UDP, or multicast UDP sending, at least one port number in this range will be used for each connection.
Ephemeral TCP Legacy to NDI v1 - The current versions (4.6 and later) no longer use any ports in the ephemeral port range.

Audinate Dante

Dante

Dante is a combination of software, hardware, and network protocols that delivers uncompressed, multi-channel, low-latency digital audio (and now video) over a standard Ethernet network. Dante is an acronym for Digital Audio Network Through Ethernet.

https://en.wikipedia.org/wiki/Dante_(networking)

FAQ

What is the minimum requirement for switches in a Dante network?

While Gigabit switches are recommended, 100Mbps switches may be used in limited scenarios.

For low channel count (<32) applications, a 100Mbps switch may be used as long as it supports proper QoS, and QoS is active. The use of 100Mbps switches without QoS is not recommended or supported. For higher channel counts, Gigabit switches are essential. QoS is recommended for Gigabit switches on networks that share data with services other than Dante.

Network Configuration

IGMP Snooping

IGMP v2 / v3 on macOS

IGMP is specified in two commonly used versions: v2 and v3. This difference is most easily seen on current macOS computers that use IGMP v3 on built-in Ethernet ports; these may fail when connected to IGMP v2 switches. An easy workaround is to use an Ethernet adapter, all of which use IGMP v2. https://www.audinate.com/blog/post/well-intentioned-mishaps-with-igmp-snooping

Alternately (at the switch level) you can ‘Forward All’ multicast traffic to the Mac. In effect, that disables IGMP snooping for that port. However, assuming the Mac has a Gigabit port, you should be fine.

The primary and secondary interfaces should not share a subnet or IP space. If a Dante device resets to factory default settings it may revert to "Daisy-Chain" mode – meaning it is now bridging your primary and secondary networks instead of offering redudancy - causing multiple interfaces to use the same IP address. {.is-warning}

Troubleshooting

Using Wireshark to Troubleshoot Dante Issues

Filters

Filter Multicast

(eth.dst[0] & 1)

Filter to Port

udp.port == 4440

Reverse Engineering

Some details on this page are derrived from packet inspection or other reverse-engineering techniques and are not officially released from Audinate. {.is-warning}

Ports

8700 (UDP)

4440

5353 (MDNS)

5353 (244.0.0.251 Multicast)