Dante: When SHOULD I use multicast?
If you have only sent a few microphone channels from your I/O box to the mixer and from there to one or two power amplifiers, then you will not have had any contact with multicast. And as long as your setup doesn't change, you will certainly be happy with pure unicast connections for a long time to come. By default, Dante initiates the connections between devices as unicast, so that there is initially no need to deal with multicast at all.
As soon as the number of channels and the number of Dante devices in the network increases, one should take a look at the potential of multicast.
Multicast as an option
Let's start with the situation that does not necessarily require multicast, because the use of pure unicast connections would also work. Let's look at a typical example:
The sum of the mixer should be transmitted to the amplifiers via Dante. If we do the processing for the loudspeakers in the power amplifiers, two channels are actually sufficient between the mixer and the amps. Since a mixer usually has many input and output channels available on the Dante side and supports a corresponding number of flows, we can simply send our two output channels to all power amplifiers in parallel.
Each power amplifier requests the two channels from the mixer and receives its own unicast flow. Such a flow usually offers space for 4 audio channels and occupies about 6Mbit/s bandwidth in the network (at 48kHz).
Accordingly, the unicast flows for five amps add up to 30 Mbit/s in our example, and together with the five amps on the other side of the stage, there are 10 flows with 6 Mbit/s each, i.e. a total bandwidth of 60 Mbit/s from the FOH to the Stage. The mixer sends 10 flows to the network at the same time.
As mentioned, this can work well if the mixer can provide enough flows on the output side. Likewise, 60MBit/s is not a huge burden for a gigabit network. How well and stable it all works depends on how busy the Dante network is overall. In addition to the outputs, the inputs are usually also integrated via Dante.
Since each power amplifier needs the same two channels from the mixer, switching to multicast is useful in this situation to save resources. Let's take a look at the network load when we switch the two output channels on the mixer to multicast:
First of all, it is noticeable that a flow only needs 3Mbit / s. While unicast transmission usually reserves 4 audio channels per flow, even if we only use two of them, the flow size in multicast mode depends on the actual number of channels. If we only pack two channels into our flow, then bandwidth is only used for two channels.
The big advantage of multicast is that our mixer only has to send the two output channels once. Instead of 10 individual unicast flows, only a single multicast flow is sent. Accordingly, the load on the network is only 3 Mbit/s everywhere. The switches distribute the packets. They send the incoming multicast packets on to all ports so that each amp receives the same data.
Another advantage for the mixer is that when using multicast, only one flow is used and no longer 10. Regardless of how many recipients want to receive this flow, the mixer simply sends it permanently to the network, and only once.
Dante Controller thinks for you
A warning in the Dante controller causes frowns again and again: the so-called Fan Out message, or more precisely: “Fanout Configuration detected”. This is displayed when an audio signal is routed to several receivers. The Dante Controller notices that several unicast flows have to be set up for the same content. The fan out warning is therefore a well-intentioned indication that you can relieve the sender and the network by creating a multicast flow. However, the Dante controller only gives the indication that it does not change the type of transmission by itself. After all, the change from unicast to multicast has certain consequences for the network. Whether the information is used is entirely up to the user, i.e. you.
As an example, I have recreated a scenario in which the fan out message arises. I have routed two channels of my microphone interface (Nio Xcel 1201) to three receivers. In the Dante Controller, the green LED for Event Log changes its color to red. Clicking on this LED takes you to the event log list and sees the fan out message.
Exercise: create multicast flow
Enough talk about the possibilities, are you ready for a little practice? If you have not yet created a multicast flow, let's go through the whole thing briefly in the Dante controller.
The whole thing also works with the Dante Virtual Soundcard if you don't have a Dante device available right now.
Double-click on the device for which you want to create a multicast flow
Select the transmit page
Click on the multicast button
Select some channels
Click on "Create"
... and the multicast flow is already set up! Your new flow will appear on the right side of the transmit page. And you can delete it again using the Delete button. Dante automatically takes over the change from unicast to multicast and back, if audio connections already exist. However, there may be brief interruptions. The change from unicast / multicast should therefore not be made during a live show.
Dangers when activating multicast
In this example, the use of multicast is ideal. And the very low load of 3MBit/s is actually a significant improvement over the unicast signal flow.
Nonetheless, using multicast also has disadvantages. Because multicast data packets are sent from the switch to ALL devices, regardless of whether they can do something with the content or not.
For example, if you send the 64 audio signals from the stage box to the mixer as multicast flows, the network has a load of almost 100Mbit / s. If one or the other signal is added, for example for the output stages, the network load is over 100Mbit/s. Devices with a 100Mbit port are overloaded. Data packets will be lost and the receiver will mute the audio signal.
You should therefore only create multicast flows if resources can actually be saved and always keep an eye on the overall multicast load. Incidentally, the Dante Controller permanently shows the current network load from multicast traffic in the footer:
If you have just created a multicast flow on one of your devices, there should now be a number greater than 0Mbps.
A very important technique for reducing the network and port load is called IGMP snooping. If you want or need to use multicast, I would like to warmly recommend you to get familiar with this technology and then of course to activate IGMP snooping.
Conclusion
To return to the initial question: Multicast always makes sense when a Dante device is supposed to send its audio signal to several receivers at the same time. Instead of several unicast connections, he can then only initiate a single multicast connection and thus reduce the network load.
In addition to these scenarios in which multicast is possible, there are of course also situations in which multicast is simply necessary. These are covered in the next blog article!
More blog posts about Dante: