Skip to content

Multicast source redundancy

An IPTV service based on multicast requires a multicast source redundancy. When the primary multicast source is unavailable, the system should switch to an active one. Depending on whether you are a content provider or a client depends on what goal you are achieving:

Source redundancy when receiving a multicast stream

Several content providers send the same multicast content to the IXP (Internet Exchange Point), where dozens of operators receive it. Various errors may occur in such a system, such as data duplication or excessive traffic on the receiver. The IXP (Internet Exchange Point) owners have to manage multicast groups so that an operator could receive the required channel.

The IXP (Internet Exchange Point) owners can manage multicast groups in the following ways:

  • Separate providers into different multicast groups: provider-to-multicast group.

    Allocate a separate multicast group for each content provider and keep a single register of multicast groups. This way, providers will broadcast to the separate multicast group addresses. To receive a single channel from a provider, an operator has to filter all the incoming content on the receiver, receiving excessive traffic. For operators to find sources of the same content to achieve redundancy, they have to search for channel duplicates in the multicast group register.

  • Separate channels into different multicast groups: channel-to-multicast group.

    Allocate a separate multicast group for each channel. Content providers will send each channel to its separate multicast group, causing data duplication and confusion at the IXP (Internet Exchange Point). So operators have two ways to connect to the particular source and receive traffic:

    - Filter traffic by source IP address at the receiver. This way, the receiver server will receive excessive traffic.
    
    - Implement SSM (Source-Specific Multicast) with IGMPv3. When connecting to the IXP (Internet Exchange Point), the operator specifies the multicast group address and the channel source to receive the data. If the requested source is unavailable or offline, the receiver will automatically switch to another active source (see [how SSM works](standby-mode-of-multicast-pusher.md#redundant-multicast-streaming-receive-ssm-work)). For SSM to work, the operator should have the source address in advance.  
    The SSM (Source-Specific Multicast) mechanism simplifies the management of multicast groups without creating additional issues at the IXP (Internet Exchange Point) or at the receiver.
    

SSM (Source-Specific Multicast) mechanism achieves the following goals:

  • Multicast source redundancy. SSM supports multiple sources simultaneously broadcasting to the same multicast group. So, if two providers send content to the same multicast group address, without SSM (Source-Specific Multicast) it results in duplicated data and confusion at the receiver, but with SSM (Source-Specific Multicast) it's a standard situation.
  • Receiving a multicast stream from a provider that requires compliance with the standard of multicast stream delivery. Some content providers require the operator's equipment to support SSM (Source-Specific Multicast) and IGMPv3 to receive multicast.

How does SSM work

Note

SSM mechanism requires a switch to support IGMPv3.

SSM works as follows:

  1. Each multicast packet transmits the source IP address in the header. The primary and backup sources simultaneously send data to the same multicast group address.
  2. Using the source IP address, Flussonic calls the switch via IGMPv3 to send the multicast packets from the primary source.
  3. If Flussonic detects packet loss from the primary UDP source within source_timeout that is by default one minute, it switches to the backup source. Using the backup source IP address, Flussonic calls the switch via IGMPv3 to send the multicast packets from the backup source.
  4. While on the backup source, Flussonic polls the primary UDP source every minute for multicast packets.
  5. When the primary source comes back online and starts sending packets, Flussonic switches to it from the backup source.

Diagram 1. SSM with the online primary source SSM with the primary source

Diagram 2. SSM with the offline primary source and online backup source SSM with the backup source

To configure the SSM (Source-Specific Multicast) mechanism for the multicast stream in the Flussonic Admin UI, follow these steps:

  1. Go to the Input tab of the stream settings.
  2. Add a primary source if you don't have one or modify the existing one by specifying the multicast group address, port, and IP address of the primary source like so:

    udp://239.1.1.1:1234?sources=10.10.10.1

    , where:

    • 239.1.1.1.1 is the multicast group address
    • 1234 is the port for Flussonic to listen to
    • 10.10.10.10.1 is the source IP address
  3. Add a backup source by specifying the data as in step 2 for the backup source.

  4. Apply the settings by clicking Save.

Source redundancy when delivering a multicast stream

Suppose you are a content provider and have a server sending multicast streams. You want to deliver multicast streams with maximum reliability for your client so that the server automatically switches to an active server without interrupting the broadcast. You can configure a multicast failover mechanism with Flussonic standby mode for backup server.

To receive a multicast stream, the operator needs to join a multicast group.

Note

This approach works with any IGMP on the receiver, so your clients don't need to buy any special hardware.

How does standby mode work

Standby mode works as follows:

  1. The primary and backup servers output the same set of programs. The primary server sends the stream to the multicast group address.
  2. The backup server constantly checks if any server sends the multicast packets to the multicast group address and stays in standby mode.
  3. If the primary server goes offline, the backup server starts streaming.
  4. As the primary server comes back online, the backup server stops streaming and returns to standby mode.

Diagram 3. Multicast failover with the active primary server Multicast disaster recovery with the primary server

Diagram 4. Multicast failover with the offline primary server and online backup server Multicast disaster recovery with the backup server

To configure the standby mode for your multicast stream in the Flussonic Admin UI by following these steps:

  1. Go to the Output tab of the stream settings.
  2. In the URL column of the Push live video to certain URLs section, specify the multicast group address, port, and IP address of the primary server like so:

    udp://239.1.1.1:1234

    , where:

    • 239.1.1.1.1 is the multicast group address
    • 1234 is the port for Flussonic to listen to
  3. Add a backup server by specifying the data as in step 2 for the backup server.

  4. Open Options and enable the standby mode for the backup server by ticking the Standby box.
  5. Apply the changes by clicking Save.