Google setzt sich dafür ein, die Rassengerechtigkeit für schwarze Gemeinschaften zu fördern. Siehe wie.
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

OpenWeave + Happy Cross Netzwerk Multicast Inet Layer HOWTO

jinja-placeholder-0 .md "> Quelle auf GitHub anzeigen

Sie haben beschlossen, mit OpenWeave mit netzwerkübergreifendem Multicast zu experimentieren. Diese Anleitung veranschaulicht die Verwendung des Happy-Netzwerksimulationstools zum Einrichten einer virtuellen Topologie, die die Verwendung der Inet-Schicht von OpenWeave in zwei verschiedenen Netzwerken mit einem Multicast-Proxy demonstriert.

Laden Sie mcproxy herunter und erstellen Sie es

Der IPv6-Multicast-Proxy-Daemon mcproxy dient zum Proxy / Weiterleiten / Weiterleiten von IPv6-Multicast-Verkehr über zwei nicht zusammenhängende IPv6-Netzwerkverbindungen.

Während es nicht besonders wichtig ist, wo Sie die mcproxy Datei des mcproxy Daemons klonen und erstellen, mcproxy Sie sich bitte den Speicherort, an dem Sie sie als relativen oder absoluten Pfad dazu erstellen. mcproxy ist in Schritt 6 unten erforderlich.

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

Downloaden, erstellen und installieren Sie 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

Laden Sie den Openweave-Core herunter und erstellen Sie ihn

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

Richten Sie die Happy-Topologie ein

Dadurch wird eine Topologie erstellt, die dem Happy Codelab sehr ähnlich ist.

 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

Erstellen Sie die mcproxy-Konfiguration für die Happy-Topologie

Dadurch wird eine IPv6-Multicast-Proxy-Konfiguration zwischen der simulierten "Thread" -Netzwerkschnittstelle auf "wpan0" und der simulierten "WiFi" -Netzwerkschnittstelle auf "wlan0" in der Happy-Topologie erstellt, die wir oben in Schritt 4 erstellt haben.

Während es nicht besonders wichtig ist, wo Sie die Datei mcproxy.conf erstellen, notieren Sie sich bitte den Speicherort, an dem Sie sie als relativen oder absoluten Pfad erstellen. mcproxy.conf ist in Schritt 6 erforderlich.

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

Führen Sie die Demonstration aus

Dadurch wird der IPv6-Multicast-Proxy mcproxy auf dem Knoten "BorderRouter" ausgeführt und anschließend der Inet-Layer-Multicast-Funktionstestsender und -empfänger auf den simulierten Knoten "Thread" bzw. "WiFi" gestartet.

Wenn Sie möchten, können Sie den Sender- und den Empfängerknoten transponieren. Das Beispiel funktioniert ebenfalls.

Jeder der folgenden Befehlssätze sollte von parallelen, unabhängigen Shells ausgeführt werden.

Grenzrouter

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

Empfänger

 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

Absender

 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

Ausgabe

Absender

 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.

Empfänger

 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.