Threadネットワークにて承認されたコミッショナーがあると、新たなThreadデバイスが参加することができるようになる。Threadネットワークに参加できるようになる前のデバイスは、ジョイナーと呼ばれる。実際の参加プロセスは連載第6回の「システムのトポロジー」で記したように、システムのトポロジーに依存する。4つのシナリオをおさらいすると、以下のようになっている。
ケース1:外部コミッショナーでボーダールーターがジョイナールーターではない。
ケース2:外部コミッショナーでボーダールーターがジョイナールーターである。
ケース3:ネイティブコミッショナーでジョイナールーターがコミッショナーではない。
ケース4:ネイティブコミッショナーで、ジョイナールーターがコミッショナーである。
これが4つのシナリオのうち、最も複雑なケースである。このケースでは、認証のトラフィック(DTLSハンドシェーク)が以下の3つの別々の経路を通る。
3つの経路は互いに接続し、ジョイナールーターとボーダールーターの中継エージェントとクライアント、サーバの組み合わせで、保安のための認証トラフィックをつなぐ。
この通信は、セキュリティが確保されていない1ホップのIEEE 802.15.4無線リンクでやりとりとなる。つまり、全てのジョイナーとジョイナールーター間のトラフィックは、真正チェックがされていない解放された環境でのやりとりとなる。これは、基本的にジョイナールーターは、いかなるジョイナーからのトラフィックも全く認証されていないものとして扱わなくてはならないということを意味する。
通常のThreadネットワークは、Threadデバイスの周りにセキュリティが保たれていないIEEE 802.15.4通信は無視されるように作られた閉じた通信システムである。しかし、ジョイナールーターは接続が許可されると、セキュリティが保たれていないIEEE 802.15.4通信を注意深く警備して、認証トラフィックであると確認を行う。
まず、DTLSハンドシェークで最初のジョイナーと、ジョイナールーター間通信の確立が行われる。これは特定のUDPポートが用いられ、他のトラフィックとは別であると区別される。リレーエージェントは入ってくるトラフィックを警備し、ジョイナールーターは、DTLSクライアントハンドシェークをジョイナーとジョイナールーターのアドレスとポートの詳細と合わせてボーダールーターへ中継する。
アドレスとポートの詳細により、リレーされたDTLSハンドシェークのレスポンスメッセーがジョイナールーターからジョイナーへ中継して返ってくることを確認する。
ジョイナールーターとボーダールーター間の通信は、IEEE 802.15.4リンク層でホップ毎にセキュリティが確保されたThreadネットワークを通じて行われ、ジョイナールーターとボーダールーター間の通信では、複数ホップの中継が行われると想定される。ジョイナールーターはボーダールーターとの認証トラフィックをアドレスとポートの詳細に沿ってDTLSハンドシェークパケットを運ぶメッセージを中継させていく。
無線LANを経由する通信は、ペティショニングで貼られた既存のコミッショニングセッションを活用する。ボーダールーターとコミッショナー間では、コミッショニングキープアライブ通知でメンテナンスされている。コミッショナーとのやりとりをするDTLSハンドシェークを運ぶのに、コミッショニング中継メッセージが使われ、メッセージはセキュアなコミッショニングセッションを基にしたDTLSレコード層で守られる。
Copyright © ITmedia, Inc. All Rights Reserved.