Table Of Contents
Table Of Contents

Multicast Streams with Failure Protection

Goals

In this example we replicate the multicast stream example from the IEEE 802.1 CB standard.

INET version: 4.4

The Model

In this configuration we a use a network of TSN switches. A multicast stream is sent through the network from one of the switches to all other switches.

Here is the network:

../../../../../_images/Network16.png

Here is the configuration:

[General]
network = MulticastFailureProtectionShowcase
description = "Automatic multicast static stream redundancy configuration with failure protection"

# disable automatic MAC forwarding table configuration
*.macForwardingTableConfigurator.typename = ""

# enable freme replication and elimination
*.*.hasStreamRedundancy = true

# all Ethernet interfaces have 100 Mbps speed
*.*.eth[*].bitrate = 1Gbps

# application
*.a.numApps = 1
*.a.app[0].typename = "EthernetApp"
*.a.app[0].io.remoteAddress = "01:00:00:00:00:00"
*.a.app[0].source.packetLength = 1200B
*.a.app[0].source.productionInterval = 1ms

# stream redundancy
*.streamRedundancyConfigurator.typename = "StreamRedundancyConfigurator"

# TSN configurator
*.failureProtectionConfigurator.typename = "FailureProtectionConfigurator"
*.failureProtectionConfigurator.gateScheduleConfiguratorModule = ""
*.failureProtectionConfigurator.configuration = [{name: "S", application: "app[0]", source: "a", destination: "not a",
                                                  pcp: 0, packetFilter: "*", destinationAddress: "01:00:00:00:00:00",
                                                  packetLength: 1200B, packetInterval: 1ms, maxLatency: 100us,
                                                  linkFailureProtection: [{any: 1, of: "*->*"}]}]

# visualizer
*.visualizer.failureProtectionConfigurationVisualizer.displayTrees = true
*.visualizer.failureProtectionConfigurationVisualizer.lineStyle = "dashed"
*.visualizer.streamRedundancyConfigurationVisualizer.displayTrees = true
*.visualizer.streamRedundancyConfigurationVisualizer.lineColor = "black"

Discussion

Use this page in the GitHub issue tracker for commenting on this showcase.