ネットワークについて

TWELITE NETでは無線パケットの配送について、2つの方式を用意しています。

単純ネット

単純ネットでは、アプリケーションIDとアドレスのみでの通信を行います。電波範囲内の通信は自由です。親機と子機という概念も存在せず、アプリケーションが役割を決定します。

例えば、ショートアドレスを 0 を親局とし、子局は1〜100の最大101台のネットワークです。子局は常にアドレス 0 に送信すれば親局への通信となります。

単純ネットでは以下の通信を行います。

また、通信の成功を知る方法も用意されています。

MAC ACK は、相手先への到着確認が出来る(例外的に正しく確認ができない場合があります。)という点で便利ですが、相手先のアドレスが事前にわかっていなければなりません。

MAC ACK を使用する場合は、一定回数の再送が自動的に行われますが、電波状況が良い場合は再送がありませんが、悪い場合は最大回数再送を行う振る舞いをします。対して使用しない場合は、常に2回または3回同じパケットを送信します。どちらが良いかはケースバイケースです。

MAC ACK を使用する場合の難点の一つが、中継を行う場合です。子局が親局へ中継機を通じて通信したい場合、子局は送信前に親局へ直接送信するか、中継機に送信するかを決めなければ MAC ACK は利用できません。事前に設置時に送り先が決まっていれば問題ありませんが、多くのアプリケーションでは動的に近い局に送信するような設置をする要求がありますが、最も近在にあり通信可能性が高い局を決定するには、少なくとも1往復の通信が必要になります。この通信は失敗する場合もありますし不確実な中継先を選ぶ可能性もあります。また電池消耗の原因にもなります。安定した通信が見込める中継機が確定し、その状態が維持される限り効率的な通信が可能ですがそうでない場合は、通信途絶など不安定なネットワークになります。

App_Twelite など、単純ネットを用いるアプリケーションでは、MAC ACK を敢えて使用せず、同報通信により中継を行っています。パケットが一定回数中継したらそれ以上中継しない、同じパケットは再度中継しないという2つの単純なルールにより中継を行います。中継段数が多くない場合はそれほど効率は悪化しませんし、なによりも、子局がパケットを送りさえすれば、周りに中継機が居る限り常に親局へ届く可能性が高いという点で安定的です。

中継ネット

中継ネットは、ネットワークの構成などに一定の条件を定め、その範囲で中継ネットワークの構築と配送を自動化します。