En Google, luchamos por la equidad racial de la comunidad negra. Más información
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

OpenWeave + Cruz feliz de red de multidifusión Inet COMO Capa

Jinja-marcador de posición-0 .md "> Ver código fuente en GitHub

Usted ha decidido que le gustaría experimentar con multidifusión entre redes usando OpenWeave. Esta guía de instrucciones ilustra el uso de la herramienta de simulación de la red feliz para configurar una topología virtual que demuestra el uso de la capa de Inet OpenWeave a través de dos redes distintas con un proxy de multidifusión.

Descargar y generar mcproxy

El IPv6 multicast demonio de proxy, mcproxy , sirve para proxy de avance / ruta IPv6 tráfico / multidifusión a través de dos enlaces de red IPv6 disjuntos.

Si bien no es particularmente importante cuando se clona y construir el mcproxy demonio ejecutable, por favor tome nota de la ubicación donde se crea como una ruta relativa o absoluta de que es necesario 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

Descarga, generar e instalar feliz

 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

Descargar y generar openweave núcleos

 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 la de experimento feliz .

 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

Crear la configuración mcproxy para la topología feliz

Esto crea un IPv6 multicast configuración de proxy entre el "hilo" de la interfaz de red simulada en "wpan0" y la interfaz simulado "Wi-Fi" en la red "wlan0" en la topología feliz que hemos creado anteriormente en el paso 4.

Si bien no es particularmente importante cuando se crea el mcproxy.conf archivo, por favor tome nota de la ubicación donde se crea como una ruta relativa o absoluta de que es necesario en el paso 6.

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

Ejecutar la demostración

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

Si lo desea, puede transponer el remitente y los nodos receptores y el ejemplo funcionará igual de bien.

Cada uno de los siguientes conjuntos de comandos debe ejecutarse a partir de conchas paralelas e independientes.

enrutador de frontera

 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

Salida

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.