Googleは、黒人コミュニティのための人種的衡平の促進に取り組んでいます。 方法をご覧ください。
このページは Cloud Translation API によって翻訳されました。
Switch to English

OpenWeave + Happy Cross Network Multicast Inet Layer HOWTO

jinja-placeholder-0 .md "> GitHubでソースを表示する

OpenWeaveを使用してクロスネットワークマルチキャストを試すことを決定しました。このハウツーガイドでは、ハッピーネットワークシミュレーションツールを使用して仮想トポロジを設定し、OpenWeaveのInetレイヤーをマルチキャストプロキシを使用する2つの異なるネットワーク間で使用する方法を示します。

mcproxyをダウンロードしてビルドする

IPv6マルチキャストプロキシデーモンであるmcproxy 、2つの独立したIPv6ネットワークリンクを介してIPv6マルチキャストトラフィックをプロキシ/転送/ルーティングする役割を果たします。

mcproxyデーモン実行可能ファイルのクローンを作成してビルドする場所は特に重要ではありませんが、以下のステップ6で必要な相対パスまたは絶対パスとして作成する場所に注意してください。

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

幸せなダウンロード、ビルド、インストール

 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

openweave-coreをダウンロードしてビルドする

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

Happyトポロジーを確立する

これにより、 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

Happyトポロジーのmcproxy構成を作成する

これにより、上記の手順4で作成したHappyトポロジで、「wpan0」のシミュレートされた「スレッド」ネットワークインターフェースと「wlan0」のシミュレートされた「WiFi」ネットワークインターフェースの間にIPv6マルチキャストプロキシ構成が作成されます。

mcproxy.confファイルをどこに作成するかは特に重要ではありませんが、ステップ6で必要な相対パスまたは絶対パスとして作成する場所をメモしてください。

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

デモを実行する

これにより、「BorderRouter」ノードでIPv6マルチキャストプロキシmcproxyが実行され、シミュレートされた「スレッド」ノードと「WiFi」ノードでそれぞれInetレイヤーマルチキャスト機能テストの送信側と受信側が起動されます。

必要に応じて、送信者ノードと受信者ノードを転置することができ、サンプルも同様に機能します。

次の各コマンドセットは、独立した並列シェルから実行する必要があります。

ボーダールーター

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

受信機

 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

送信者

 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

出力

送信者

 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.

受信機

 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.