javamulticastaeronreliable-multicast

Aeron - Issues with Multicast across Switches


I am trying to run a Basic Publisher/Subscriber pair on the same Multicast/Port. It works perfectly when the hosts are connected to the same Switch, but not if the subscriber is on a different Switch.

Publisher

java '-Daeron.sample.channel=aeron:udp?endpoint=224.0.1.1:40123|interface=192.168.1.0/24' -Daeron.sample.embeddedMediaDriver=true -cp ./lib/aeron-all-1.29.0.jar io.aeron.samples.BasicPublisher

Subscriber

java '-Daeron.sample.channel=aeron:udp?endpoint=224.0.1.1:40123|interface=192.168.9.0/24' -Daeron.sample.embeddedMediaDriver=true -cp ./lib/aeron-all-1.29.0.jar io.aeron.samples.BasicSubscriber

Since the hosts has multiple interfaces, I have explicitly tried to bind the Publisher/Subscriber to a specific interface, by defining the interface parameter as a part of the Channel Configuration.

Mulit-cast routes between the 2 boxes has been verified using iperf


Solution

  • I was able to make it work with adding a ttl config option.

    Publisher

    java '-Daeron.sample.channel=aeron:udp?endpoint=224.0.1.1:40123|interface=192.168.1.0/24|ttl=16' -Daeron.sample.embeddedMediaDriver=true -cp ./lib/aeron-all-1.29.0.jar io.aeron.samples.BasicPublisher
    

    Subscriber

    java '-Daeron.sample.channel=aeron:udp?endpoint=224.0.1.1:40123|interface=192.168.9.0/24|ttl=16' -Daeron.sample.embeddedMediaDriver=true -cp ./lib/aeron-all-1.29.0.jar io.aeron.samples.BasicSubscriber