Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

OpenWeave + Happy Cross Network Multicast Inet Layer HOWTO

Ver fuente en GitHub

Ha decidido que le gustaría experimentar con la multidifusión entre redes utilizando OpenWeave. Esta guía práctica ilustra el uso de la herramienta de simulación de red Happy para configurar una topología virtual que demuestra el uso de la capa Inet de OpenWeave en dos redes distintas con un proxy de multidifusión.

Descarga y compila mcproxy

El demonio de proxy de multidifusión IPv6, mcproxy , sirve para proxy / reenviar / enrutar tráfico de multidifusión IPv6 a través de dos enlaces de red IPv6 separados.

Si bien no es particularmente importante dónde clona y mcproxy ejecutable del daemon mcproxy , tome nota de la ubicación donde lo crea, ya que es necesaria una ruta relativa o absoluta en el Paso 6 a continuación.

git clone https://github.com/mcproxy/mcproxy.git mcproxy
sudo apt-get install qt5-qmake qt5-default
cd mcproxy/mcproxy
qmake
make

Descargue, compile e instale happy

git clone https://github.com/openweave/happy.git happy
sudo apt-get install bridge-utils python-lockfile python-psutil python-setuptools
cd happy
sudo make install

Descarga y compila openweave-core

git clone https://github.com/openweave/openweave-core.git openweave-core
cd openweave-core
./configure
make

Establecer la topología feliz

Esto crea una topología muy similar a Happy Codelab .

happy-network-add ThreadNetwork thread
happy-network-address ThreadNetwork fd00:0000:0000:0006::
happy-network-add WiFiNetwork wifi
happy-network-address WiFiNetwork fd00:0000:0000:0001::
happy-network-address WiFiNetwork 192.168.1.0
happy-node-add ThreadNode
happy-node-add WiFiNode
happy-node-add BorderRouter
happy-node-join ThreadNode ThreadNetwork
happy-node-join WiFiNode WiFiNetwork
happy-node-join BorderRouter ThreadNetwork
happy-node-join BorderRouter WiFiNetwork
happy-network-route --prefix fd00:0000:0000:0006:: ThreadNetwork BorderRouter
happy-network-route --prefix fd00:0000:0000:0001:: WiFiNetwork BorderRouter
happy-network-route --prefix 192.168.1.0 WiFiNetwork BorderRouter

Cree la configuración mcproxy para la topología Happy

Esto crea una configuración de proxy de multidifusión IPv6 entre la interfaz de red "Thread" simulada en "wpan0" y la interfaz de red "WiFi" simulada en "wlan0" en la topología Happy que creamos en el paso 4.

Si bien no es particularmente importante dónde crea el archivo mcproxy.conf , tome nota de la ubicación donde lo crea, ya que es necesaria una ruta relativa o absoluta en el Paso 6.

cat > mcproxy.conf << EOF
protocol MLDv2;
pinstance myProxy: wpan0 ==> wlan0;
EOF

Ejecuta la demostración

Esto ejecuta el proxy de multidifusión IPv6, mcproxy , en el nodo "BorderRouter" y luego lanza el remitente y el receptor de prueba funcional de multidifusión de la capa Inet en los nodos "Thread" y "WiFi" simulados, respectivamente.

Si lo desea, puede transponer los nodos emisor y receptor y el ejemplo funcionará igualmente.

Cada uno de los siguientes conjuntos de comandos debe ejecutarse desde shells independientes y paralelos.

Enrutador de borde

happy-shell BorderRouter
<path-to-mcproxy-from-step1>/mcproxy -f <path-to-mcproxy-config-from-step5>/mcproxy.conf

Receptor

happy-shell WiFiNode
openweave-core/src/test-apps/TestInetLayerMulticast -6 --udp -I wlan0 -g 5 --group-expected-rx-packets 5 --group-expected-tx-packets 0 -l

Remitente

happy-shell ThreadNode
openweave-core/src/test-apps/TestInetLayerMulticast -6 --udp -I wpan0 -g 5 --group-expected-rx-packets 0 --group-expected-tx-packets 5 -L

Producción

Remitente

openweave-core/src/test-apps/TestInetLayerMulticast -6 --udp -I wlan0 -g 5 ... -L
Weave Node ready to service events; PID: 50845; PPID: 46482
Using UDP/IPv6, device interface: wpan0 (w/o LwIP)
Will join multicast group ff15::5
1/5 transmitted for multicast group 5
2/5 transmitted for multicast group 5
3/5 transmitted for multicast group 5
4/5 transmitted for multicast group 5
5/5 transmitted for multicast group 5
Will leave multicast group ff15::5
WEAVE:IN: Async DNS worker thread woke up.
WEAVE:IN: Async DNS worker thread exiting.
WEAVE:IN: Async DNS worker thread woke up.
WEAVE:IN: Async DNS worker thread exiting.

Receptor

openweave-core/src/test-apps/TestInetLayerMulticast -6 --udp -I wlan0 -g 5 ... -l
Weave Node ready to service events; PID: 50826; PPID: 46499
Using UDP/IPv6, device interface: wlan0 (w/o LwIP)
Will join multicast group ff15::5
Listening...
UDP packet received from fd00::6:8693:b7ff:fe5a:1dc1:4242 to ff15::5:4242 (59 bytes)
1/5 received for multicast group 5
UDP packet received from fd00::6:8693:b7ff:fe5a:1dc1:4242 to ff15::5:4242 (59 bytes)
2/5 received for multicast group 5
UDP packet received from fd00::6:8693:b7ff:fe5a:1dc1:4242 to ff15::5:4242 (59 bytes)
3/5 received for multicast group 5
UDP packet received from fd00::6:8693:b7ff:fe5a:1dc1:4242 to ff15::5:4242 (59 bytes)
4/5 received for multicast group 5
UDP packet received from fd00::6:8693:b7ff:fe5a:1dc1:4242 to ff15::5:4242 (59 bytes)
5/5 received for multicast group 5
Will leave multicast group ff15::5
WEAVE:IN: Async DNS worker thread woke up.
WEAVE:IN: Async DNS worker thread exiting.
WEAVE:IN: Async DNS worker thread woke up.
WEAVE:IN: Async DNS worker thread exiting.