мультикастинг в разные сети в java - PullRequest
0 голосов
/ 19 августа 2011

Я пишу код для работы через сокеты в Java. Я создал многоадресную группу, к которой любой может присоединиться в локальной сети. Но ЛВС имеет много разных сетей, управляемых маршрутизатором, и группа многоадресной рассылки, созданная кодом, будет отличаться в другой сети, и если групповая рассылка какого-либо человека соответствует группе многоадресной рассылки в сети А, она будет получена только присоединенными людьми. только группе в этой сети, а не всем людям в разных сетях.

Например:

Группа многоадресной рассылки, скажем, 224.0.0.1. А в ЛВС есть 2 разные сети.

Сеть A = 172.22.28.0/255.255.254.0

Сеть B = 172.22.30.0/255.255.254.0

Тогда в двух разных сетях будут две разные группы многоадресной рассылки с тем же адресом, что и 224.0.0.1.

Моя проблема в том, как я могу выполнить многоадресную рассылку этих двух различий. сети в локальной сети через Java?

Когда я искал решение, я наткнулся на концепцию IP ENCAPSULATION , в которой я могу добавить внешний IP-адрес в пакет, чтобы он мог проходить через разные сети. Я думаю, что это должно работать, так как я могу инкапсулировать адрес другой сети при отправке пакета.

Может кто-нибудь сказать мне, как это (IP ENCAPSULATION) может быть реализовано в Java? Если нет, есть ли другой возможный метод, который я могу применить.

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 22 августа 2011

Во-первых, 224.0.0.1 - это зарезервированная группа, известная как all-systems.mcast.net, то есть все доступные сетевые машины, см. wikipedia .

Затем вам нужно: IGMP и многоадресная маршрутизация , то есть коммутаторы в пути должны быть настроены для специальной переадресации многоадресной рассылки, а также маршрутизаторы. необходимо знать для пересылки многоадресного трафика между подключенными сетями.

...