2014-12-09 1 views
1

Итак, я работаю в распределенной системе pub/sub и пытаюсь реализовать многоадресную рассылку с использованием Java.IPv6 Многоадресная локальная сеть pub/sub, необходимо указать интерфейс?

В принципе, у меня есть два локально развернутых компонента на ВМ, датчик температуры и абонент.

Датчик публикует событие (через сокет дейтаграммы) с использованием многоадресного адреса ff7e: 230: 0: 0: 0: 0: 0: 1234. Абонент имеет многоадресный сокет, который присоединился к группе с адресом ff7e: 230: 0: 0: 0: 0: 0: 1234.

Проблема в том, что абонент не получает пакет. Я тестировал одно и то же, используя только loopback-адреса (публикация сенсора до :: 1, а абонент прослушивал пакеты, предназначенные для :: 1). Используя wirehark, я замечаю, что vm отправляет событие в ff7e: 230: 0: 0: 0: 0: 0: 1234, но он не «отправляется» назад или не принимается подписчиком.

Мне было интересно, мне нужно указать интерфейс для сообщений mlc? Например, используя eth0, должны ли адреса и группы быть ff7e: 230: 0: 0: 0: 0: 0: 1234% eth0.

Любые другие вещи, которые я должен проверить?

ответ

-1

Попробуйте использовать две JVM. С точки зрения ядра пакеты отправляются JVM, и почему пакеты отправителя должны быть отозваны обратно в тот же самый процесс?

+0

Здесь нет никаких доказательств того, что он * не * использует два JVM. Также вы, кажется, не слышали о кольцевой петле многоадресной передачи. – EJP

+0

Я слышал о многоадресной петле. Однако Wireshark видит только исходящий пакет, поэтому попытка с двумя отдельными виртуальными машинами - это легко и быстро проверить. Кроме того, не стоит ли говорить «два компонента на виртуальной машине»? Возможно, я ожидаю большей точности, чем разумно на обычном языке. – arnt

 Смежные вопросы

  • Нет связанных вопросов^_^