[General] network = AutomaticMultipathConfigurationShowcase sim-time-limit = 0.1s description = "Automatic multipath stataic stream redundancy configuration" # disable automatic MAC forwarding table configuration *.macForwardingTableConfigurator.typename = "" # all Ethernet interfaces have 100 Mbps speed *.*.eth[*].bitrate = 100Mbps # packet error rate of all links is 20% **.channel.per = 0.2 # enable frame replication and elimination *.*.hasStreamRedundancy = true # source application *.source.numApps = 1 *.source.app[0].typename = "UdpSourceApp" *.source.app[0].io.destAddress = "destination" *.source.app[0].io.destPort = 1000 *.source.app[0].source.displayStringTextFormat = "sent %p pk (%l)" *.source.app[0].source.packetLength = 1200B *.source.app[0].source.productionInterval = truncnormal(100us,50us) # destination application *.destination.numApps = 1 *.destination.app[0].typename = "UdpSinkApp" *.destination.app[0].io.localPort = 1000 # all interfaces must have the same address to accept packets from all streams *.destination.eth[*].address = "0A-AA-12-34-56-78" # visualizer *.visualizer.infoVisualizer.modules = "*.source.app[0].source or *.destination.app[0].sink" # enable stream policing in layer 2 *.*.bridging.streamRelay.typename = "StreamRelayLayer" *.*.bridging.streamCoder.typename = "StreamCoderLayer" # enable automatic stream redundancy configurator *.streamRedundancyConfigurator.typename = "StreamRedundancyConfigurator" # seamless stream redundancy configuration *.streamRedundancyConfigurator.configuration = [{name: "S1", packetFilter: "*", source: "source", destination: "destination", trees: [[["source", "s1", "s2a", "s3a", "destination"]], [["source", "s1", "s2b", "s3b", "destination"]], [["source", "s1", "s2a", "s2b", "s3b", "destination"]], [["source", "s1", "s2b", "s2a", "s3a", "destination"]]]}] # visualizer *.visualizer.streamRedundancyConfigurationVisualizer.displayTrees = true *.visualizer.streamRedundancyConfigurationVisualizer.lineColor = "black"