(57)【要約】      （修正有）【課題】ネットワークを介して伝送されるデータの送信レートを保つことを可能とし、データの欠落が発生する確率を低減可能とする。【解決手段】制御装置（ネットワークコントローラ１０）は、端末が送信したフレームの受信時刻を取得するフレーム受信時刻取得部と、前記端末と関連付けて、前記端末から送信されたフレームの受信時刻を少なくとも記憶する記憶部と、前記端末から今回受信したフレームの受信時刻と、前回受信したフレームの受信時刻との差と、前記端末のフレーム送信間隔に基づき、前記フレームの遅延の変動を検出する遅延変動検出部と、前記フレームの遅延の変動と遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレームの送信間隔を求め、該当する端末に、データサイズとフレームの送信間隔の変更を通知する設定変更部を備える。【選択図】図２
2018152675.tif 000002
【特許請求の範囲】
【請求項１】
データをフレームに含めて一度に送信する端末から送信されたフレームの受信時刻を取得するフレーム受信時刻取得部と、
前記端末と関連付けて、前記端末から送信されたフレームの受信時刻、前記端末がフレームに含めて一度に送信するデータサイズ、及びフレーム送信間隔を少なくとも記憶する記憶部と、
前記端末から今回受信したフレームの受信時刻と、前回受信したフレームの受信時刻との差と、前記端末のフレーム送信間隔に基づき、前記フレームの遅延の変動を検出する遅延変動検出部と、
前記遅延変動検出部で検出された前記フレームの遅延の変動と、予め定められた遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレーム送信間隔を求め、求めた値で前記記憶部における該当する端末のエントリを更新するとともに、該当する端末に、前記データサイズとフレーム送信間隔の変更を通知する設定変更部と、
を備えた、ことを特徴とする制御装置。
【請求項２】
前記設定変更部は、前記端末が前記フレームに含めて一度に送信するデータサイズを増加させ、前記フレーム送信間隔を長くする場合、
前記フレームを送信するのに要する遅延を、
使用する変調方式と、
シンボル当たりのデータサイズと、
シンボル当たりの送信遅延と、
前記フレームの送信に対する応答を受信するまでの遅延と、
に基づき算出し、
前記遅延を、前記フレーム送信間隔で除することで、通信媒体の帯域占有率を求め、
前記帯域占有率が、予め定められた値を超えないように、前記データサイズと前記フレーム送信間隔を決定する、ことを特徴とする、請求項１に記載の制御装置。
【請求項３】
前記遅延変動検出部は、前記端末から今回受信したフレームが再送でない場合には、
前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、
前記今回受信したフレームの受信時刻と、
の差分をとり、
前記差分と、
前記記憶部に記憶されている前記端末の前記フレーム送信間隔に前記遅延変動許容値を加えた値と、
の比較結果に基づき、前記端末が前記フレームに含めて一度に送信するデータサイズとフレーム送信間隔の変更要求を、前記設定変更部に出力する、ことを特徴とする請求項１又は２に記載の制御装置。
【請求項４】
前記遅延変動検出部は、前記端末から今回受信したフレームが再送である場合には、
前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、
前記今回受信したフレームの受信時刻と、
の差分をとり、
前記差分を、前記記憶部に前記端末に関連付けて記憶された遅延変動値に加えた値で、前記遅延変動値を更新し、
更新された前記遅延変動値と、
前記フレーム送信間隔に前記遅延許容値を加えた値と、
の大小の比較結果に基づき、前記端末が前記フレームに含めて一度に送信するデータサイズと前記フレーム送信間隔の変更要求を、前記設定変更部に出力する、ことを特徴とする請求項１又は２に記載の制御装置。
【請求項５】
前記遅延変動検出部は、前記フレームの遅延変動が、前記遅延変動許容値に関する予め定められた第１の閾値を超える場合、
前記第１の閾値を超えた前記端末が前記フレームに含めて一度に送信するデータサイズを増加させ、前記フレーム送信間隔を長くするための変更要求を前記設定変更部に出し、
前記フレームの遅延変動が、前記遅延変動許容値に関する第２の閾値を下回る場合、
前記第２の閾値を下回った端末が送信するデータサイズを減少させ、フレーム送信間隔を短くするための変更要求を前記設定変更部に出し、
前記設定変更部は、前記変更要求に従って、前記端末のデータサイズとフレーム送信間隔を決定する、ことを特徴とする、請求項１乃至４のいずれか１項に記載の制御装置。
【請求項６】
前記遅延変動検出部は、前記フレームの遅延変動が前記遅延許容変動値を超えた回数、又は、前記フレームの遅延変動が前記遅延許容変動値を超えた回数と超えなかった回数の差が、予め定められた値を超えた場合に、前記設定変更部に対して、前記端末がフレームに含めて一度に送信するデータのサイズとフレーム送信間隔を変更するように要求する、ことを特徴とする、請求項１乃至４のいずれか１項に記載の制御装置。
【請求項７】
前記設定変更部は、無線アクセスポイントと通信する端末が追加された際、又は、前記端末が他の無線アクセスポイントに移動した際に、
前記端末とネットワークリソースを共有する端末がフレームに含めて一度に送信するデータサイズとそのフレーム送信間隔を再計算する、ことを特徴する、請求項１乃至６のいずれか１項に記載の制御装置。
【請求項８】
前記端末は、ビーコンフレームを送信し、
前記遅延変動検出部は、前記ビーコンフレームの受信時刻に基づいて遅延の変動を検出する、ことを特徴とする、請求項１乃至７のいずれか１項に記載の制御装置。
【請求項９】
データをフレームに含めて一度に送信する端末と関連付けて、前記端末から送信されたフレームを受信した時刻、前記端末が送信するデータサイズ及びフレーム送信間隔を少なくとも記憶する記憶部を有するコンピュータによるネットワーク制御方法であって、
前記端末が送信したフレームの受信時刻を取得し、
前記端末から今回受信したフレームの受信時刻と、前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻との差と、前記端末のフレーム送信間隔と、に基づき、前記フレームの遅延の変動を検出し、
前記フレームの遅延の変動と、予め定められた遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレームの送信間隔を求め、求めた値で前記記憶部における該当する端末のエントリを更新するとともに、該当する端末に、前記データサイズと前記フレームの送信間隔の変更を通知する、ことを特徴とするネットワーク制御方法。
【請求項１０】
データをフレームに含めて一度に送信する端末と関連付けて、前記端末から送信されたフレームの受信時刻、前記端末が送信するフレームのサイズ及びフレーム送信間隔を少なくとも記憶する記憶部を有するコンピュータに、
前記端末が送信したフレームの受信時刻を取得する処理と、
前記端末から今回受信したフレームの受信時刻と、前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、の差と、前記端末のフレーム送信間隔と、に基づき、前記フレームの遅延の変動を検出する処理と、
前記フレームの遅延の変動と、予め定められた遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレームの送信間隔を求め、求めた値で前記記憶部における該当する端末のエントリを更新するとともに、該当する端末に、前記データサイズと前記フレームの送信間隔の変更を通知する処理と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク制御方法、制御装置、プログラムに関する。
【背景技術】
【０００２】
ＩｏＴ（Internet of Things）が様々な領域に用いられるようになってきており、産業用途にも設備の故障の事前検知や、作業者の健康状態の管理などの目的で導入されてきている。こういった目的のために、設備等に、例えば振動センサや電力量センサ等のセンサを取り付けたり、作業者に心拍や体温を測定するバイタルセンサ等を取り付けたり、と必要な情報を取得可能なセンサが用いられる。これらのセンサから得られたデータ（センサデータ）は、基本的に、無線通信を使用して、パケットやフレーム（本明細書では、パケットはＩＳＯ（International Organization for Standardization）によるＯＳＩ（Open Systems Interconnection）７階層モデルの第３層と第４層で扱う、ネットワーク経由で送受信するためのデータの塊（Program Data Unit: PDU）、フレームはＯＳＩ７階層モデルの第１層と第２層で扱う、ネットワーク経由で送受信するためのデータの塊（PDU）、を意味する用語として用いる）の形で、ネットワークを通じて、センサデータを解析するアプリケーション（以下、「解析アプリケーション」という）に送られる。解析アプリケーションは一般的に、センサとネットワークで接続されたＰＣ（Personal Computer）やサーバなどで動作する。
【０００３】
これらのセンサは、一定間隔でデータを取得するため、一般的にパケットまたはフレームは一定周期で間欠的に送信される。センサがデータを取得するたびに、パケットやフレームを送信するということも考えられるが、無線ネットワークの利用効率等を考慮して、ある一定量のデータがバッファに溜まる度にパケットやフレームを送信する、という方法もありうる。この場合、センサにおけるデータの取得間隔が一定であるため、バッファ（例えばセンサ内のバッファ）に一定量のデータが溜まるまでの時間もまた一定となる。結果として、パケットまたはフレームは一定周期で間欠的に送信される。
【０００４】
このとき、センサがデータを取得する速度よりも、無線通信のアプリケーションレベルのスループット（グッドプット）が高いことが必要となる。これは、センサでのデータの取得速度の方が高い場合、センサデータがセンサ内のバッファに滞留し、バッファサイズを超えた時点で、取得したデータの破棄が発生するためである。データの破棄が発生すると、設備の故障の予兆を検知することができない、作業者の体調不良の検知が遅れ、重篤化する、といった事態が起こり得る。このため、データの破棄は起こらないようにすることが望ましい。
【０００５】
また、設備の故障の予兆を検知すると即座に設備を停止したい、あるいは、作業者の体調不良を早期に検知したい、などの理由により、センサデータは、所定の遅延内に解析アプリケーションに届けられ、解析されることが望ましい。そのため、センサデータは、ネットワークが許容する最大パケットサイズまたは最大フレームサイズ（例えばＭＴＵ（Maximum Transfer Unit））に到達するまで貯められることなく、小サイズのパケットやフレームに格納されて送信されることもある。
【０００６】
この場合、パケットヘッダ／フレームヘッダ、パケット到達確認／フレーム到達確認等のセンサデータのサイズに依存しないオーバヘッドが、ネットワークが許容する最大パケット／フレームサイズで送信するよりも大きくなる。
【０００７】
さて、無線通信を利用する理由としては、作業者はもちろんのこと、設備の中には敷地内や建屋内を移動するために、物理的な配線が必要な有線通信では実現できないこと、特に工場等のような場所では、様々な装置を制御するフィールドバスと呼ばれる有線ネットワークが引かれており、センサのために新たに有線ネットワークを引く物理的なスペースが無い、といったことが挙げられる。
【０００８】
一方で、無線通信の場合、有線通信と異なり、同じ空間内に存在する全てのセンサが同一の通信媒体（空間）を共有するため、同時に通信することなどによる通信エラーを避けるための仕組みが導入されている。これは、複数の電波が重なると、電波同士が干渉し、通信エラーとなってしまうためである。
【０００９】
通信エラーが発生した場合、ＭＡＣ（Media Access Control）層（第２層）の再送機能などによって、フレームが再送される。フレームの再送が発生すると、その分、センサデータが解析アプリケーションに到着する時間が遅れる。さらには、あるセンサが、フレーム再送のために、無線リソースを使用するため、他のセンサがセンサデータを送信できず、遅延の増加が連鎖する事態が発生する場合がある。このため、フレームの再送が発生しないようにすることが望ましい。
【００１０】
無線ＬＡＮ（Local Area Network）規格を定めたＩＥＥＥ（The Institute of Electrical and Electronic Engineers）８０２．１１では、ＣＳＭＡ／ＣＡ（Carrier Sense Multiple Access/Collision Avoidance）の機能によって、同時に通信を行う通信端末（「ステーション」という）が発生しないようにする。ＣＳＭＡ／ＣＡでは、あるステーションがある周波数（チャネル）でフレームを送信しようとした場合、当該周波数がすでに他の通信で使用されていないかどうかを、フレームを送信する前に確認し、使用されていない場合にフレームを送信する。仮に、当該周波数が使用されていた場合（これを「ビジー状態」と呼ぶ）、その周波数が未使用になるまで待機する。
【００１１】
しかし、通信エラーの原因となるのは、同種の通信規格に則ったステーション間の電波干渉だけではなく、例えば、
・インバータを備える設備が発する電磁ノイズや、
・金属製の設備や材料などの電波を遮る遮蔽物、
・こういった遮蔽物の移動、
・反射した電波同士が干渉し合うフェージング、
・異種の無線端末による電波、
などによって、ステーションが発した電波が影響を受け、通信エラーが発生する。
【００１２】
そのため、ある特定の無線通信規格内で、ＣＳＭＡ／ＣＡのような通信エラーを避ける仕組みを導入したとしても、無線通信規格の外の原因による通信エラーを完全に避けるのは難しい。例えば、ＩＥＥＥ８０２．１１にて、あるステーションがＣＳＭＡ／ＣＡによって使用する周波数が空いていると検知し、フレームを送信したとしても、フレーム送信中または送信後にノイズが周囲から発生することでフレームが正常に受信側に届かず、通信エラーとなる可能性がある。つまり、完全に、遅延の制約を守って通信を行うことは難しいと言える。
【００１３】
一方で、このような通信エラーが発生し、センサデータが所定の遅延内に解析アプリケーションに届かなかったとしても、センサデータの使用目的はリアルタイムな解析だけではなく、バッチ処理などで所定の期間のデータを解析するような用途もある。そのため、所定の遅延内に間に合わなくとも、センサデータの欠落が発生しないようにすることが望ましい。しかし、ノイズが長期に渡って発生し続けるなどして、センサデータをいつまでも送信できず、センサが備えるバッファに溢れが生じる可能性がある。このため、センサデータの欠落を完全に防ぐことも、また、難しいと言える。
【００１４】
そのため、センサデータの遅延制約を守れない確率と、センサデータが欠落する確率を、可能な限り低くすることが、このような無線通信に求められる要件であると言える。
【００１５】
通信エラーなど、無線通信の環境が悪化したことを検知し、検知結果に基づいて、通信エラー等の影響を小さくする等の対策を施す関連技術として、例えば以下の特許文献が挙げられる。
【００１６】
特許文献１には、無線環境の状態に応じて、データ送信時刻、送信データ量を変更する手法が開示されている。
【００１７】
特許文献２には、伝送路の帯域に変動があった場合に、パケット送信に要する遅延を計測し、計測した遅延に基づいて、ネットワークの状態を推測し、パケットの送信レートを制御することで、伝送効率を向上させる手法が開示されている。
【００１８】
特許文献３には、応答パケット（ＡＣＫ（Acknowledgement）パケット）の受信間隔の変動に応じて、パケット送信レートを変更し、映像品質の悪化を抑制する手法が開示されている。
【００１９】
特許文献４と特許文献５には、無線環境の状態に応じて、最適な変調方式を選択し、伝送効率の向上、またはスループットの維持・向上を実現する手法が開示されている。
【００２０】
特許文献６には、ＡＣＫパケットの受信状況に応じて、符号化速度、誤り耐性を変更する手法が開示されている。
【００２１】
特許文献７には、無線通信の品質に基づいて符号化パラメータを決定する手法が開示されている。
【００２２】
特許文献８には、パケット伝送の待ち時間と待ち時間の揺らぎに応じて、最適なパケットサイズと最適なパケット間隔を決定する手法が開示されている。
【００２３】
特許文献９には、パケットエラー率の増加を抑えるために、パケットを中継する装置において、パケットサイズおよびパケット送信間隔を変更する手法が開示されている。無線装置は、自己の単位時間当たりのパケット送信量Ｗを検出し、検出したパケット送信量Ｗがしきい値Ｗｔｈ以上に達すると、パケット送信量Ｗがしきい値Ｗｔｈよりも小さくなるようにパケットサイズおよびパケット送信間隔の変更を、送信元の無線装置に指示する。
【００２４】
特許文献１０には、パケットを中継する装置において、パケットを束ねて１つのパケットとして送信することで、パケットエラー率を抑制する手法が開示されている。
【００２５】
特許文献１１には、網資源を有効に活用することができ、遅延時間を最小に抑えることが可能であり、輻輳の発生を抑制する手法が開示されている。最適ウィンドウサイズ計算部は周期毎の往復応答時間の平均値、ＡＣＫパケット受信間隔の平均値を求め、往復応答時間の平均値をＡＣＫパケットの受信間隔の平均値で除算した値以上の最小の整数値Ｗａを求め、ＴＣＰ（Transmission Control Protocol）のように受信局で受信可能なパケット数Ｗｂが通知される場合には、ＷａがＷｂを超える時、最適なウィンドウサイズをＷｂとし、ＷａがＷｂ以下の場合には、最適なウィンドウサイズをＷａとする。
【先行技術文献】
【特許文献】
【００２６】
【特許文献１】国際公開第２０１５／１７８０１７号
【特許文献２】国際公開第２０１４／１７１５４３号
【特許文献３】国際公開第２０１２／１７２７９５号
【特許文献４】特開２００５−３１８５３３号公報
【特許文献５】特開２００５−８６３０４号公報
【特許文献６】特開２００６−１２９２７７号公報
【特許文献７】特開２００４−２１５２２４号公報
【特許文献８】特表２００４−５３３１８４号公報
【特許文献９】特開２００７−２３５８７１号公報
【特許文献１０】特開２００７−２２１５２７号公報
【特許文献１１】特開２００１−１１１６１８号公報
【発明の概要】
【発明が解決しようとする課題】
【００２７】
以下の分析は、本発明によって与えられたものである。
【００２８】
各センサが一定の間隔で一定サイズのデータを取得する場合、ネットワークには一定レートでフレームが送信され、所定の遅延以内に解析アプリケーションに届けられる。そのため、ＯＳＩ７階層モデルにおける、第７層（アプリケーション層）レベルでこのレートが保たれ、かつ可能な限り所定の遅延を守るように、無線ネットワークを制御する必要がある（要件１）。以降、第７層レベルのことを、「アプリケーション層レベル」と記載する。また、アプリケーション層レベルのデータを、「アプリケーションデータ」と記載する。センサデータはアプリケーションデータである。
【００２９】
通信エラーの要因として、電磁ノイズや、異種の無線機器による電波など、特定の通信規格に準拠した通信装置では制御が難しいものが存在する。従って、パケットやフレームの再送がある程度発生するのは避けがたい。しかし、パケットやフレームの再送が発生し、無線ネットワークが混雑した状況でも、パケットやフレームの再送回数の上限に達するなどして、アプリケーションデータが破棄され、欠落するということが可能な限り発生しないように制御することが必要である（要件２）。
【００３０】
つまり、無線ネットワークの混雑状況に応じて、アプリケーション層レベルのレートを保ちつつ、可能な限り最小の遅延でアプリケーションデータを解析アプリケーションに届けることのできる仕組みが必要である。
【００３１】
しかし、特許文献１〜特許文献１１には、遅延を抑えつつ、アプリケーション層レベルでレートが保たれるような仕組みは開示されていない。
【００３２】
仮に、アプリケーション層レベルのレート以下のレートで、ネットワークにフレームを送信するように設定された場合、センサデータ（アプリケーションデータ）の送信元であるセンサ内のバッファが溢れ、該アプリケーションデータが破棄される等して、アプリケーションデータの欠落が発生する可能性がある。
【００３３】
本発明は、上述した課題に鑑みて創案されたものであって、その目的の一つは、ネットワークを介して伝送されるパケットデータの送信レートを保つことを可能とし、パケットデータの欠落が発生する確率を低減可能とするネットワーク制御方法、装置、プログラムを提供することにある。
【課題を解決するための手段】
【００３４】
本発明の一形態によれば、データをフレームに含めて一度に送信する端末から送信されたフレームの受信時刻を取得するフレーム受信時刻取得部と、前記端末と関連付けて、前記端末から送信されたフレームの受信時刻、前記端末がフレームに含めて一度に送信するデータサイズ、及びフレーム送信間隔を少なくとも記憶する記憶部と、前記端末から今回受信したフレームの受信時刻と、前回受信したフレームの受信時刻との差と、前記端末のフレーム送信間隔に基づき、前記フレームの遅延の変動を検出する遅延変動検出部と、前記フレームの遅延の変動と、予め定められた遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレーム送信間隔を求め、求めた値で前記記憶部における該当する端末のエントリを更新するとともに、該当する端末に、前記データサイズとフレーム送信間隔の変更を通知する設定変更部と、を備えた制御装置（ネットワークコントローラ）が提供される。
【００３５】
本発明の一形態の方法によれば、データをフレームに含めて一度に送信する端末と関連付けて、前記端末から送信されたフレームを受信した時刻、前記端末が送信するフレームのサイズ及びフレーム送信間隔を少なくとも記憶する記憶部を有するコンピュータによるネットワークの制御方法であって、
前記端末が送信したフレームの受信時刻を取得し、前記端末から今回受信したフレームの受信時刻と、前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻との差と、前記端末のフレーム送信間隔と、に基づき、前記フレームの遅延の変動を検出し、
前記フレームの遅延の変動と、予め定められた遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレームの送信間隔を求め、求めた値で前記記憶部における該当する端末のエントリを更新するとともに、該当する端末に、前記データサイズと前記フレームの送信間隔の変更を通知する、ネットワーク制御方法が提供される。
【００３６】
本発明の一形態によれば、データをフレームに含めて一度に送信する端末と関連付けて、前記端末から送信されたフレームの受信時刻、前記端末が送信するフレームのサイズ及びフレーム送信間隔を少なくとも記憶する記憶部を有するコンピュータに、
前記端末が送信したフレームの受信時刻を取得する処理と、
前記端末から今回受信したフレームの受信時刻と、前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、の差と、前記端末のフレーム送信間隔と、に基づき、前記フレームの遅延の変動を検出する処理と、
前記フレームの遅延の変動と、予め定められた遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレームの送信間隔を求め、求めた値で前記記憶部における該当する端末のエントリを更新するとともに、該当する端末に、前記データサイズと前記フレームの送信間隔の変更を通知する処理と、を実行させるプログラムが提供される。なお、上記形態の装置、方法、プログラム等において、「フレーム」は「パケット」と読み替えてもよい。
【００３７】
本発明の一形態によれば、上記プログラムは非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納してもよい。当該媒体は、磁気記録媒体（例えば磁気テープ、ハードディスクドライブ等）、光磁気記録媒体（例えば、光磁気ディスク）、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）、ＣＤ−Ｒ（Compact Disc-Recordable）、ＣＤ−Ｒ／Ｗ（Compact Disc-Rewritable）、ＤＶＤ−ＲＯＭ（Digital Versatile Disc-ROM）、ＤＶＤ−Ｒ（Digital Versatile Disc-Recordable）、ＤＶＤ−Ｒ／Ｗ（Digital Versatile Disc-Rewritable）、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＥＰＲＯＭ（Electrically Erasable and Programmable ROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））等であってもよい。
【発明の効果】
【００３８】
本発明によれば、ネットワークを介して伝送されるデータの送信レートを保ち、データの欠落が発生する確率を低減可能としている。
【図面の簡単な説明】
【００３９】
【図１】本発明の例示的な第１の実施形態に係る無線通信システム１の一構成例を例示する図である。
【図２】本発明の例示的な第１の実施形態に係るネットワークコントローラ１０の一構成例を例示する図である。
【図３】本発明の例示的な第１の実施形態に係る無線ステーションデータベース１０４の一構成例を模式的に示す図である。
【図４】ＵＤＰペイロードサイズとＵＤＰペイロード１バイトあたりの送信遅延をプロットしたグラフである。
【図５】本発明の例示的な第１の実施形態における、無線システム起動後の初期設定のシーケンスの一例を説明する図である。
【図６】本発明の例示的な第１の実施形態における、アプリケーションデータサイズとアプリケーションデータ送信間隔を決定する手順を説明するフローチャートである。
【図７】本発明の例示的な第１の実施形態における、フレーム受信時刻情報の通知のシーケンスの一例を説明する図である。
【図８】本発明の例示的な第１の実施形態における、アプリケーションデータサイズとアプリケーションデータ送信間隔を変更する手順を説明するフローチャートである。
【図９】アプリケーションデータパケットサイズ、及びアプリケーションデータパケット送信間隔の変更通知のシーケンスの一例を説明する図である。
【図１０】本発明の例示的な第２の実施形態に係る、ステーションデータベース１０５の一構成例を例示する図である。
【図１１】本発明の例示的な第３の実施形態において、無線ステーションが別の無線アクセスポイントに接続する際のシーケンスの一例を説明する図である。
【図１２】本発明の例示意的な第４の実施形態に係る、無線通信システム２の一構成例を例示する図である。
【図１３】本発明の例示的な第４の実施形態において、接続先の無線アクセスポイントの切り替え時の、設定変更のシーケンスの一例を説明する図である。
【図１４】本発明の例示的な第５の実施形態に係る無線ステーションデータベースの構成を模式的の示す図である。
【図１５】本発明の例示的な第５の実施形態に係る無線ステーションデータベースの別の構成例を例示する図である。
【図１６】本発明の例示的な実施形態に係るネットワークコントローラの一構成例を例示する図である。
【発明を実施するための形態】
【００４０】
本発明の実施形態について、図面を参照して説明する。なお、この説明に付記する図面や参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。本発明の実施形態では、説明を簡潔にするために、無線ネットワークとしてＩＥＥＥ８０２．１１ｇを対象に記載するが、このことは本発明が適用可能な無線ネットワークをＩＥＥＥ８０２．１１ｇに限定することを意図するものではない。本発明の実施形態を説明する図では、同一の要素から構成される要素については、同一の番号の後にａ、ｂ、ｃ…と英小文字を付与して表記する。本明細書中では、特に区別する必要が無い場合には、英小文字を省略して記載する。
【００４１】
［第１の実施の形態］  
［構成の説明］
図１は、本発明の例示的な第１の実施形態に係る、無線通信システム１の一構成例を例示する図である。図１を参照すると、無線通信システム１は、ネットワークコントローラ（ネットワーク制御装置）１０と、ネットワーク１１と、無線アクセスポイント１２と、無線ネットワーク１３と、無線ステーション１４と、有線ネットワーク１５と、データ処理サーバ１６と、を備えている。
【００４２】
ネットワークコントローラ１０は、無線ステーション１４のアプリケーションデータ送信に関する情報を管理する。ネットワークコントローラ１０は、無線ステーション１４のアプリケーションデータの到着に関わる遅延の変動に基づいて、無線ステーション１４の無線通信パラメータを変更する機能を持つ。
【００４３】
ネットワーク１１は、ネットワークコントローラ１０と、無線アクセスポイント１２とを接続するネットワークである。媒体は無線と有線の双方を取りうる。
【００４４】
仮に、ネットワークコントローラ１０が無線アクセスポイント１２や無線ステーション１４が設置されるエリアから離れた場所、例えばインターネット等の広域ネットワーク経由で接続するデータセンタやクラウド環境に設置される場合、ネットワーク１１は、インターネット等の広域ネットワークを含むネットワークとなる。
【００４５】
無線アクセスポイント１２は、無線ステーション１４から送信されたフレームをデータ処理サーバ１６に接続するための中継装置である。無線アクセスポイント１２は、フレームに含まれるＭＡＣ層のヘッダまでの情報を用いて、フレームの中継を行う。
【００４６】
無線ネットワーク１３は、無線アクセスポイント１２と、無線ステーション１４と、を接続するネットワークである。
【００４７】
無線ステーション１４は、例えば、データを周期的に収集するセンサを備える構成としてもよい。この場合、無線ステーション１４は、収集したセンサデータを一定間隔で、データ処理サーバ１６に送信する。無線ステーション１４は、例えば、無線通信機能を有するセンサ（振動センサ等各種センサ）で構成してもよい。
【００４８】
有線ネットワーク１５は、無線アクセスポイント１２と、データ処理サーバ１６と、を接続するネットワークである。各無線ステーション１４が取得したデータを受信するのに十分な帯域が必要とされる。このため、有線媒体によるネットワークとしているが、無線アクセスポイント１２とデータ処理サーバ１６間のネットワークは有線媒体に制限されるものでないことは勿論である。例えば、各無線ステーション１４が取得したデータを受信するのに、十分な帯域が確保できる場合には、無線ネットワークも利用可能である。
【００４９】
仮に、データ処理サーバ１６が無線アクセスポイント１２や無線ステーション１４が設置されるエリアから離れた場所、例えばインターネット経由で接続するデータセンタやクラウド環境に設置される場合、有線ネットワーク１５は、インターネットを含むネットワークとなる。
【００５０】
データ処理サーバ１６は、無線ステーション１４が取得したセンサデータを処理し、様々な事象を検出するためのサーバである。特に制限されないが、データ処理サーバ１６は、例えば、設備故障の予兆検知や、作業員の体調不良の検知を検出する機能を具備してもよい。本実施形態によれば、ネットワークコントローラ１０は、パケットやフレームの再送によるネットワークの混雑した状況を緩和し、アプリケーションデータの欠落が発生する確率を低減させる制御を行う。
【００５１】
図２は、本発明の第１の実施形態に係る、ネットワークコントローラ１０の一構成例を例示する図である。図２を参照すると、ネットワークコントローラ１０は、フレーム受信情報取得部１００と、遅延変動検出部１０２と、無線ステーションデータベース１０４と、設定変更部１０６と、を備えている。
【００５２】
フレーム受信情報取得部１００は、各無線アクセスポイント１２から、各無線アクセスポイント１２が、各無線ステーション１４から受信したフレームの受信時刻に関する情報（「フレーム受信時刻情報」という）を受け取る。
【００５３】
フレーム受信時刻情報には、少なくとも、無線ステーションＩＤ（Identifier）と、無線アクセスポイント１２がフレームを受信した時刻（フレーム受信時刻）と、再送フレームかどうかを示すフラグ（再送フラグ）と、を含むようにしてもよい。
【００５４】
例えば、ＩＥＥＥ８０２．１１では、ＰＬＣＰ（Physical Layer Convergence Protocol）ヘッダに再送フレームであるか否かを示すフラグがある。そのため、無線アクセスポイント１２は、ＰＬＣＰヘッダのこのフラグを参照することで、フレーム受信時刻情報に、再送フラグを立てるか否か（オンとするか否か）を決定することができる。
【００５５】
フレーム受信時刻情報は、データ処理サーバ１６で取得するようにしてもよい。例えば、データ処理サーバ１６が、ネットワークコントローラ１０の機能を備える構成、あるいは、ネットワークコントローラ１０が、データ処理サーバ１６から情報を受け取る構成としてもよい。
【００５６】
図１の例では、ネットワークコントローラ１０は、データ処理サーバ１６とは互いに別ユニットとして構成され、無線アクセスポイント１２からフレーム受信時刻情報を取得する形態で説明するが、このことは、本発明をこの態様に限定することを意図するものではない。
【００５７】
フレーム受信情報取得部１００は、フレーム受信時刻情報を、遅延変動検出部１０２に転送する。
【００５８】
遅延変動検出部１０２は、フレーム受信情報取得部１００から受け取ったフレーム受信時刻情報と、無線ステーションデータベース１０４に格納されている情報を比較し、フレームの遅延の変動を検出する。
【００５９】
フレームの遅延の変動が所定の閾値（遅延変動許容値）を超えている場合には、遅延変動検出部１０２は、設定変更部１０６に対して、パケット／フレームに含めるアプリケーションデータサイズや、データ送信間隔の変更要求を出す。このために、遅延変動検出部１０２は、どの程度の遅延変動を許容するかの遅延変動許容閾値を不図示の記憶部（ROM、EPROM、RAMやHDD（Hard Disk Drive）等であってもよい）に保持する。なお、データはパケットのペイロード部に収容され、該パケットのヘッダとペイロード部は、フレームのヘッダとFCS（Frame Check Sequence）間のデータに収容される。
【００６０】
無線ステーションデータベース１０４は、各無線ステーション１４のアプリケーションデータの送信に関する情報を管理するデータベースである。
【００６１】
図３は、本発明の第１の実施形態に係る、無線ステーションデータベース１０４の一構成例（データ構造）を模式的に示す図である。図３を参照すると、無線ステーションデータベース１０４は、１レコードあたり、少なくとも、無線ステーションＩＤフィールド１０４０、接続先アクセスポイントＩＤフィールド１０４１と、データ取得レートフィールド１０４２と、アプリケーションデータサイズフィールド１０４４と、アプリケーションデータ送信間隔フィールド１０４６と、最終受信時刻フィールド１０４８と、遅延変動値フィールド１０４５と、を含むデータベースである。
【００６２】
無線ステーションＩＤフィールド１０４０は、無線ステーション１４の識別子を保持するフィールドである。
【００６３】
接続先アクセスポイントＩＤフィールド１０４１は、無線ステーション１４が接続する無線アクセスポイント１２の識別子を保持するフィールドである。
【００６４】
データ取得レートフィールド１０４２は、無線ステーション１４が取得するセンサデータの取得レートを保持するフィールドであり、Ｂ／ｓ（Bytes per second）やｂｐｓ（bits per second）といった単位で表現される数値情報である。このような表現方法の他、１回のデータ取得サイズ（単位はByteまたはbit）と、データの取得間隔（単位は秒など）で表現するようにしてもよい。
【００６５】
アプリケーションデータサイズフィールド１０４４は、無線ステーション１４がフレームを送信する際に、何バイトのアプリケーションデータを格納するかを示す情報を保持するフィールドである。アプリケーションデータサイズフィールド１０４４は、ネットワークコントローラ１０が決定し、各無線ステーション１４に通知する値である。
【００６６】
無線ステーション１４側では、例えば、無線ステーション１４で稼働するアプリケーションが、例えば、Unix（登録商標）OS（Operating System）系のネットワークプログラミングのAPI（Application Programming Interface）であるソケットインタフェース（Socket Interface）のsendシステムコール（ソケット経由のデータ送信を行う関数）を呼ぶ際に、送信するデータサイズの引数として指定する値として、アプリケーションデータサイズの情報を用いる。 send関数のシンタックスとして例えばstatus=send(socket, *buffer, buffer-length, flags)というものがある。*bufferは送信するデータへのポインタ、buffer-lengthはバッファサイズ（バイト数）である。戻り値statusは、send()が成功した場合、送信バイト数が設定される。
【００６７】
アプリケーションデータ送信間隔フィールド１０４６は、無線ステーション１４がアプリケーションデータを送信する間隔を保持するフィールドであり、単位が秒などで表現される数値となる。アプリケーションデータ送信間隔は、ネットワークコントローラ１０が決定し、各無線ステーション１４に通知する値である。
【００６８】
無線ステーション１４側では、例えば、無線ステーション１４で稼働するアプリケーションがSocketインタフェースのSendシステムコールなどを呼ぶ間隔として、アプリケーションデータ送信間隔の情報を用いる。
【００６９】
最終受信時刻フィールド１０４８は、フレームを最後に受信した時刻に関する情報を保持するフィールドである。
【００７０】
遅延変動値フィールド１０４５は、アプリケーション層レベルの遅延変動値を保持するフィールドである。
【００７１】
遅延変動検出部１０２は、フレーム受信時刻情報に含まれる無線ステーションＩＤを検索キーとして、無線ステーションデータベース１０４を参照し、アプリケーションデータ送信間隔と、最終受信時刻と、遅延変動値と、に関する情報を取得する。
【００７２】
遅延変動検出部１０２は、フレーム受信時刻情報に含まれる再送フラグが、ＭＡＣ層における再送を示していない場合（再送フラグが立っていない（オンにセットされていない）場合）、フレーム受信時刻情報に含まれるフレーム受信時刻と、無線ステーションデータベース１０４から取得した最終受信時刻フィールド１０４８の値との差分を求める。
【００７３】
そして、遅延変動検出部１０２は、この差分が、アプリケーションデータ送信間隔に遅延変動許容閾値を加えた値を超えているか否かを判定する。
【００７４】
遅延変動検出部１０２は、この差分を、遅延変動値フィールド１０４５に登録する。
【００７５】
また、遅延変動検出部１０２は、フレーム受信時刻情報に含まれる再送フラグが、ＭＡＣ層における再送を示している場合（再送フラグが立っている場合）、フレーム受信時刻情報に含まれるフレーム受信時刻と、無線ステーションデータベース１０４から取得した最終受信時刻の差分を、遅延変動値フィールド１０４５の値に加え、この加えた値を遅延変動値フィールド１０４５に登録する。
【００７６】
そして、遅延変動検出部１０２は、登録した遅延変動値フィールド１０４５の値が、アプリケーションデータ送信間隔１０４６フィールドの値に遅延変動許容閾値を加えた値を超えているか否かを判定する。
【００７７】
登録した遅延変動値フィールド１０４５の値がアプリケーションデータ送信間隔に遅延変動許容閾値を加えた値を超えている場合、遅延変動検出部１０２は、無線ネットワークが混雑してきたと認識し、設定変更部１０６に、対象の無線ステーション１４のアプリケーションデータサイズを増加させ、アプリケーションデータ送信間隔を長くするように、アプリケーションデータ送信に関する設定の変更要求（アプリケーションデータ送信設定変更要求）を出す。
【００７８】
アプリケーションデータ送信設定変更要求には、少なくとも無線ステーション１４のＩＤに関する情報と、アプリケーションデータサイズを増加させ、アプリケーションデータ送信間隔を長くするという変更であることを示す変更種別に関する情報と、が含まれる。
【００７９】
このような変更を行う理由は以下の通りである。
【００８０】
アプリケーションデータサイズを大きくすると、ＭＴＵ（Maximum Transfer Unit）等のフレームサイズの制約を超えない範囲でフレームサイズを大きくすることができる。アプリケーションデータを送信する場合に、送信するフレーム数が減り、パケットやフレームのヘッダ等のオーバヘッドが削減され、無線ネットワークの混雑度が緩和される。
【００８１】
一方、登録した遅延変動値フィールド１０４５の値がアプリケーションデータ送信間隔に遅延変動許容閾値を加えた値を超えていない場合には、遅延変動検出部１０２は、無線ネットワークの混雑が解消されてきたと認識し、対象の無線ステーション１４のアプリケーションデータサイズを減少させ、アプリケーションデータ送信間隔を短くするように、アプリケーションデータ送信設定変更要求を設定変更部１０６に出す。
【００８２】
このアプリケーションデータ送信設定変更要求には、少なくとも無線ステーション１４のＩＤに関する情報と、アプリケーションデータサイズを減少させ、アプリケーションデータ送信間隔を短くするという変更であることを示す変更種別に関する情報と、が含まれる。
【００８３】
このような変更を行う理由は以下の通りである。
【００８４】
アプリケーションデータサイズを小さくすると、結果としてフレームサイズが小さくなる。そのため、一定のアプリケーションデータ送信レートを維持するには、フレーム送信間隔を短くする必要がある。フレーム送信間隔を短くした結果、アプリケーションデータが所定の遅延内に解析アプリケーションで受信されるようになるためである。
【００８５】
遅延変動検出部１０２は、遅延変動値フィールド１０４５の値がアプリケーションデータ送信間隔に第１の遅延変動許容閾値を加えた値を超えている場合、アプリケーションデータサイズを増加させ、アプリケーションデータ送信間隔を長くし、遅延変動値フィールド１０４５の値がアプリケーションデータ送信間隔に第２の遅延変動許容閾値を加えた値を超えていない場合には、対象の無線ステーション１４のアプリケーションデータサイズを減少させ、アプリケーションデータ送信間隔を短くするように、アプリケーションデータ送信設定変更要求を設定変更部１０６に出すようにしてもよい。第１の遅延変動許容閾値と第２の遅延変動許容閾値は同じ値であってもよい。
【００８６】
例えば、フレームサイズが１０００バイトで、フレーム送信間隔が１０秒（ＭＡＣ層のレートは１００Ｂ／ｓ）の場合、解析アプリケーションには１０秒おきにフレームが届く。
【００８７】
一方、フレームサイズが５００バイトで、フレーム送信間隔が５秒（ＭＡＣ層のレートはフレームサイズが１０００バイトの場合と同じく１００Ｂ／ｓ）の場合、解析アプリケーションには５秒おきにフレームが届く。
【００８８】
なお、フレーム受信時刻情報を受信するたびに設定変更部１０６にアプリケーションデータ送信設定変更要求を出すと、設定変更のための多数の制御フレームが無線ネットワーク１３を流れることになり、無線リソースの利用効率が低下する。そのため、無線ステーションデータベース１０４に、フレーム受信時刻情報に含まれるフレーム受信時刻と、無線ステーションデータベース１０４から取得した最終受信時刻の差分が、アプリケーションデータ送信間隔に遅延変動許容閾値を加えた値を超えた回数、越えなかった回数を記録するフィールドを追加した構成としてもよい。
【００８９】
無線ステーションデータベース１０４において、該追加されたフィールドに記録された回数が一定回数を超えた場合に、アプリケーションデータ送信設定変更要求を設定変更部１０６に出すようにすると、設定変更のための制御フレーム数を削減することが可能となる。
【００９０】
また、無線ステーションデータベース１０４に、フレーム受信時刻情報に含まれるフレーム受信時刻と、無線ステーションデータベース１０４から取得した最終受信時刻の差分が、アプリケーションデータ送信間隔に遅延変動許容閾値を加えた値を越えた回数と越えなかった回数をそれぞれ別のフィールドとして備えず、単一のフィールドとして備え、フレーム受信時刻情報に含まれるフレーム受信時刻と、無線ステーションデータベース１０４から取得した最終受信時刻の差分が、アプリケーションデータ送信間隔に遅延変動許容閾値を加えた値を超えた場合に１を加算し、越えなかった場合に１を減算し、この値が一定値を超える、あるいは一定値より小さくなる場合に、アプリケーションデータ送信設定変更要求を設定変更部１０６に出すようにする構成としてもよい。
【００９１】
遅延変動検出部１０２は、無線ステーションデータベース１０４の最終受信時刻を更新する。
【００９２】
また、遅延変動検出部１０２は、無線ステーションデータベース１０４に、フレーム受信時刻情報に含まれるフレーム受信時刻と、無線ステーションデータベース１０４から取得した最終受信時刻の差分が、アプリケーションデータ送信間隔に遅延変動許容閾値を加えた値を超えた回数、越えなかった回数を記録するフィールドが備えられる場合には、その値も更新する。
【００９３】
設定変更部１０６は、遅延変動検出部１０２からアプリケーションデータ送信設定変更要求を受け取ると、アプリケーションデータ送信設定変更要求に含まれる無線ステーションＩＤを検索キーとして、無線ステーションデータベース１０４を参照し、データ取得レートと、アプリケーションデータサイズと、アプリケーションデータ送信間隔に関する情報を取得する。そして、設定変更部１０６は、アプリケーションデータ送信設定変更要求の変更種別に従って、アプリケーションデータサイズとアプリケーションデータ送信間隔を変更する。
【００９４】
設定変更部１０６は、アプリケーションデータサイズとアプリケーションデータ送信間隔の変更後の値が、データ取得レートに、パケット又はフレームのヘッダ等のオーバヘッド分を加算したレートを保つか、あるいは下回らないように変更する。
【００９５】
変更種別が、アプリケーションサイズを増加させ、アプリケーションデータ送信間隔を長くする場合、設定変更部１０６において、アプリケーションデータサイズをどのように変更するか、の一例として、「目標とする帯域占有率」を用いるようにしてもよい。
【００９６】
「目標とする帯域占有率」とは、アプリケーションデータサイズを変更することによって、無線ネットワークの帯域占有率をどこまで上げたいか、あるいは下げたいか、という目標値である。
【００９７】
帯域占有率は、下記の式（１）で与えられる。
【００９８】
帯域占有率［％］＝［アプリケーションデータ送信遅延］÷［アプリケーションデータ送信間隔］×１００      ・・・式（１）
【００９９】
例えば、アプリケーションデータ送信間隔が５ミリ秒で、アプリケーションデータ送信遅延が５００マイクロ秒の場合、帯域占有率は、
５００マイクロ秒÷５ミリ秒×１００＝１０％となる。
【０１００】
アプリケーションデータ送信遅延は、例えば、ＩＥＥＥ８０２．１１では、下記の式（２）で与えられる。
【０１０１】
アプリケーションデータ送信遅延＝［ＭＡＣフレームの送信遅延］＋［ＭＡＣフレームに対するＡＣＫの受信までの遅延］            ・・・式（２）
【０１０２】
例えば、ＩＥＥＥ８０２．１１ｇでは、ＭＡＣフレームの送信遅延と、それに対するＡＣＫの受信までの遅延と、を下記の情報から求めることができる。
（１）バックオフの期間を決定するためのコンテンションウィンドウ（Contention Window）の最小値、
（２）コンテンションウィンドウ（Contention Window）のスロットタイム
（３）変調方式（OFDM(Orthogonal Frequency Division Multiplexing）、またはDSSS(Direct Sequence Spread Spectrum)）、
（４）該変調方式でのシンボル当たりのビット数、
（５）１シンボルを送信するのに要する時間、
（６）ＤＩＦＳ（DCF(Distributed Coordination Function) Inter Frame Space)の期間、
（７）ＰＬＣＰ（Physical Layer Convergence Protocol）プリアンブルの送信時間、
（８）ＰＬＣＰヘッダ信号部の送信時間、
（９）ＰＬＣＰサービス部からＰＬＣＰテイル（Ｔａｉｌ）までのフレームサイズ、
これらの情報は、無線通信機器の設定内容や、ＩＥＥＥ８０２．１１ｇの仕様から取得することが可能である。
【０１０３】
トランスポート層として、ＵＤＰ(User Datagram Protocol)を使用するＩＰ(Internet Protocol)パケットを送信する場合、上記の情報を用いて、ＭＡＣフレームの送信からＡＣＫの受信までの遅延は、下記の式（３）で求めることができる。
【０１０４】
［ＭＡＣフレームの送信からＡＣＫの受信までの遅延］＝
［ＰＬＣＰプリアンブルの送信時間］＋
［ＰＬＣＰヘッダ信号部の送信時間］＋
｛［ＰＬＣＰサービス部のビット数］＋［８０２．１１  ＭＡＣヘッダのビット数］＋［ＬＬＣ(Logical Link Control）ヘッダのビット数］＋［ＩＰ及びＵＤＰヘッダのビット数）＋［ＵＤＰペイロードのビット数］＋［８０２．１１  ＦＣＳ(Frame Check Sequence)のビット数］＋［パディングビット］＋［ＰＬＣＰ  Ｔａｉｌのビット数］｝÷［シンボルあたりのビット数］×［１シンボルを送信するのに要する時間］＋
［無信号期間］＋
［ＳＩＦＳ(Short Inter Frame Space)の期間］＋
［８０２．１１  ＡＣＫフレームの送信時間］＋
［ＤＩＦＳの期間］＋
［平均バックオフ時間］  
・・・式（３）
【０１０５】
式（３）のうち、パディングビットは、式（３）の｛｝内の式の値がシンボルあたりのビット数で割り切れる長さになるように挿入される。
【０１０６】
また、式（３）において、［８０２．１１  ＡＣＫフレームの送信時間］は、下記の式（４）で与えられる。
【０１０７】
［８０２．１１  ＡＣＫフレームの送信時間］＝
［ＰＬＣＰプリアンブルの送信時間］＋
［ＰＬＣＰヘッダ信号部の送信時間］＋
｛［ＰＬＣＰサービス部のビット数］＋［８０２．１１  ＡＣＫフレーム長］＋［８０２．１１  ＦＣＳ(Frame Check Sequence)のビット数］＋［パディング］＋［ＰＬＣＰテイル（Ｔａｉｌ）のビット数｝÷［シンボル当たりのビット数］×［１シンボルを送信するのに要する時間］
・・・式（４）
【０１０８】
また、式（３）において、［平均バックオフ時間］は、下記の式（５）で与えられる。
【０１０９】
［平均バックオフ時間］＝［コンテンションウィンドウの最小値］×［コンテンションウィンドウのスロットタイム］÷２      
・・・式（５）
【０１１０】
アプリケーションデータサイズとアプリケーションデータ送信間隔は、データ取得レートを下回らないように設定されるため、下記の式（６）のような関係がある。
【０１１１】
［データ取得レート］≦［アプリケーションデータサイズ］÷［アプリケーションデータ送信間隔］      ・・・式（６）
【０１１２】
そのため、アプリケーションデータサイズかアプリケーションデータ送信間隔のどちらか一方が決定すると、他方の取るべき値（の範囲）が決定される。ここでは説明を容易、簡潔とするために、
［データ取得レート］＝［アプリケーションデータサイズ］÷［アプリケーションデータ送信間隔］    ・・・式（７）
として説明する。
【０１１３】
式（７）を変形すると、アプリケーションデータ送信間隔は、下記の式（８）のようにアプリケーションデータサイズによって決定されるパラメータであることが分かる。
【０１１４】
［アプリケーションデータ送信間隔］＝［アプリケーションデータサイズ］÷［データ取得レート］      ・・・式（８）
【０１１５】
式（８）を式（１）に代入すると、次式（９）が導かれる。
【０１１６】
帯域占有率［％］＝［アプリケーションデータ送信遅延］÷（［アプリケーションデータサイズ］÷［データ取得レート］）×１００        ・・・式（９）
【０１１７】
式（９）を整理すると、次式（１０）となる。
【０１１８】
帯域占有率［％］＝［アプリケーションデータ送信遅延］×［データ取得レート］÷［アプリケーションデータサイズ］×１００      ・・・式（１０）
【０１１９】
例えば、帯域占有率を所定の値（目標とする帯域占有率）まで下げたい場合、設定変更部１０６は、アプリケーションデータサイズを現在の値より大きな値として仮置きし、式（３）〜（５）からアプリケーションデータ送信遅延を求める。
【０１２０】
そして、設定変更部１０６は、求めた値を式（１）に代入し、帯域占有率が所定の値を下回っているか否かを判定することで、アプリケーションデータサイズの変更値を決定することができる。  
【０１２１】
式で表すと、
＜目標とする帯域占有率＞［％］≧［アプリケーションデータ送信遅延］×［データ取得レート］÷［アプリケーションデータサイズ］×１００    ・・・式（１１）
を満たすアプリケーションデータサイズであればよいことになる。
【０１２２】
一方で、ネットワークにはＭＴＵ(Maximum Transmission Unit)という、１フレームの最大サイズが決められている。ＭＴＵを超えるフレームは分割されて送信される。そのため、変更後のフレームサイズがＭＴＵを超える場合には、変更後のフレームサイズがＭＴＵになるように、アプリケーションデータサイズを変更する構成としてもよい。なお、例えばイーサネット（登録商標）フレームを転送する無線LANにおいて、イーサネット（登録商標）フレームのフレーム長は最大1518オクテットであることから、イーサネット（登録商標）ヘッダ(14オクテット（byte）)とＦＣＳ（Frame Check Sequence）(４オクテット) を差し引いた1500オクテットがＭＴＵサイズとなる。  
【０１２３】
また、単純に、変更後のアプリケーションデータサイズを、所定のサイズだけ増減させる手法を用いてもよい。例えば、アプリケーションデータサイズを３２バイトずつ増加させる、というような具合である。
【０１２４】
アプリケーションデータ送信設定変更要求の変更種別がアプリケーションデータサイズを小さくし、アプリケーションデータの送信間隔を短くするものであった場合、設定変更部１０６は、徐々にアプリケーションデータサイズを小さくしていき、最終的にアプリケーションデータサイズを増加させる前のアプリケーションデータサイズにするようにしてもよい。
【０１２５】
あるいは、設定変更部１０６は、アプリケーションデータサイズを増加させる前のアプリケーションデータサイズに一度に修正する、あるいは、アプリケーションデータサイズを大きくする場合と同様に、目標とする帯域占有率から求める、といった方法を用いてもよい。
【０１２６】
目標とする帯域占有率から求める場合、上式（１１）を用いて、目標とする帯域占有率に限りなく近い値を求めるか、あるいは、上式（１１）を、下記の式（１２）のようにして、目標とする帯域占有率に限りなく近い値を求める、という処理を行う。
【０１２７】
＜目標とする帯域占有率＞［％］≦［アプリケーションデータ送信遅延］×［データ取得レート］÷［アプリケーションデータサイズ］×１００      ・・・式（１２）
【０１２８】
上式（１１）を使用する場合、アプリケーションデータサイズを小さいサイズから徐々に大きくしていくが、上式（１２）を使用する場合、アプリケーションデータサイズを大きなサイズから徐々に小さくしていく。
【０１２９】
設定変更部１０６は、このようにして求めたアプリケーションデータサイズから、式（１０）を用いてアプリケーションデータの送信レートを維持するようにアプリケーションデータ送信間隔を求めることで、アプリケーションデータ送信間隔を決定することができる。
【０１３０】
なお、パケット、またはフレームの再送はＭＡＣ層だけではなく、例えば、トランスポート層でも行われることがある。例えば、トランスポート層でＴＣＰ(Transmission Control Protocol)を使用している場合には、ＴＣＰ層でパケットの受信確認がパケット送信側で取れない場合（ＴＣＰ  ＡＣＫを受信できない場合）、トランスポート層でパケットの再送が行われる。
【０１３１】
ＴＣＰによる再送の場合、受信側でＴＣＰヘッダ中に含まれるシーケンス番号を確認し、既に受信したシーケンス番号を持つパケットであれば、そのパケットが再送パケットであることを検出できる。
【０１３２】
しかし、このケースは、ＴＣＰ層のＡＣＫパケットが送信側に届いていないことによる再送であり、アプリケーションデータ自体は受信側に正常に受信されている。従って、この再送による遅延は、次のパケットの到着が遅れる、という形で検出される。
【０１３３】
一方で、上記とは別の構成で検出することもできる。パケットを送信する無線ステーション１４にＴＣＰ層のＡＣＫパケットが届くまでの遅延を、ＴＣＰパケットの送信時刻とＴＣＰ層のＡＣＫパケットが届いた時刻から計算し、ＴＣＰ層の遅延が変動していることを検出することができる。
【０１３４】
この場合、無線ステーション１４は、ネットワークコントローラ１０に対して、
・センサデータとは別に、遅延が変動していることを通知するためのパケットを送信する、あるいは、
・センサデータを送信するパケット中に、ＴＣＰ層の遅延変動値を含むフィールドを定義しておき、無線ステーション１４が、センサデータとともに遅延変動値をネットワークコントローラ１０に送信する。
【０１３５】
この結果、無線ステーション１４から該パケットを受信したネットワークコントローラ１０側で、アプリケーション層レベルの遅延変動を検出することができる。
【０１３６】
そのため、この構成では、無線ステーション１４側に、ＴＣＰレベルでの遅延変動を検出するための手段として、ＴＣＰパケットの送信時刻をシーケンス番号と対応付けて管理し、そのパケットに対するＡＣＫパケットが届いた時刻から遅延変動を検出する機構を備える。
【０１３７】
また、この構成では、無線ステーションデータベース１０４から、最終受信時刻フィールド１０４８と、遅延変動値フィールド１０４５を除くことが可能である。
【０１３８】
また別の構成では、アプリケーションデータごとに遅延変動が閾値を超えているか否かを判定するのではなく、アプリケーションデータの到着遅延を、遅延変動値フィールド１０４５の値に、アプリケーションデータを受信するたびに加算していき、その合計値が所定の閾値を超えた場合に、アプリケーションデータサイズとアプリケーションデータ送信間隔を変更する構成としてもよい。
【０１３９】
この場合、ネットワークコントローラ１０は、再送フラグが立っていないフレーム受信時刻情報を受信した場合であっても、フレーム受信時刻情報に含まれるフレーム受信時刻情報と最終受信時刻フィールド１０４８の値の差分から、アプリケーションデータ送信間隔フィールド１０４６の値を引いた値を、遅延変動値フィールド１０４５の値に加える、という動作を行う。
【０１４０】
そして、アプリケーションデータサイズとアプリケーションデータ送信間隔の変更処理を機に（契機として）、遅延変動値フィールド１０４５の値を初期化する。
【０１４１】
設定変更部１０６は、このようにして決定したアプリケーションデータサイズとアプリケーションデータ送信間隔を、無線ステーションデータベース１０４の変更対象の無線ステーションＩＤのアプリケーションデータサイズフィールド１０４４とアプリケーションデータ送信間隔フィールド１０４６に登録する。
【０１４２】
設定変更部１０６は、変更後のアプリケーションデータサイズとアプリケーションデータ送信間隔を、アプリケーションデータ送信設定変更要求に含まれる無線ステーションＩＤを持つ無線ステーション１４に通知（アプリケーションデータサイズ・送信間隔変更通知）する。
【０１４３】
無線ステーション１４は、設定変更部１０６から、アプリケーションデータサイズ・送信間隔変更通知を受け取ると、通知に従ったアプリケーションデータサイズとアプリケーションデータ送信間隔でアプリケーションデータを送信するように動作を変更する。無線ステーション１４は、設定変更部１０６から通知された、変更後のアプリケーションデータサイズとアプリケーションデータ送信間隔で、無線ステーション１４内の不図示の記憶部に記憶されたアプリケーションデータサイズとアプリケーションデータ送信間隔を更新する。無線ステーション１４は、アプリケーションデータを送信する場合、不図示の記憶部に記憶されている更新後のアプリケーションデータサイズとし、前回のアプリケーションデータの送信後、更新されたアプリケーションデータ送信間隔が経過した後、次のアプリケーションデータを送信する。
【０１４４】
また、無線ステーション１４は、アプリケーションデータサイズ・送信間隔変更通知を受け取り、動作を変更したことを、ネットワークコントローラ１０に通知する（変更許諾通知）。
【０１４５】
変更許諾通知には、無線ステーションＩＤと、変更が完了したとことを示す情報と、が少なくとも含まれる。
【０１４６】
ネットワークコントローラ１０が備えるフレーム受信情報取得部１００は、変更許諾通知を受け取ると、無線ステーションデータベース１０４の、変更許諾通知に含まれる無線ステーションＩＤのエントリの最終受信時刻フィールド１０４８を、変更許諾通知を受信した時刻に変更する。
【０１４７】
また、無線ステーション１４が、ハードウェアの機能の制約などでアプリケーションデータサイズ・送信間隔変更通知に従った変更ができない場合には、無線ステーションＩＤと、変更ができなかったことを示す情報と、現在のアプリケーションデータサイズと、現在のアプリケーションデータ送信間隔と、を含めて、ネットワークコントローラ１０に通知するように構成してもよい（変更拒否通知）。
【０１４８】
この場合、ネットワークコントローラ１０が備えるフレーム受信情報取得部１００は、変更拒否通知を受け取ると、無線ステーションデータベース１０４において、変更拒否通知に含まれる無線ステーションＩＤのエントリのアプリケーションデータサイズフィールド１０４４と、アプリケーションデータ送信間隔フィールド１０４とを、それぞれ変更拒否通知に含まれる値に変更する。
【０１４９】
さらに、最終受信時刻フィールド１０４８を、変更拒否通知を受信した時刻に変更するように構成してもよい。
【０１５０】
［動作の説明］
次に、本発明の第１の実施形態の動作について、図面を参照して説明する。
【０１５１】
図５は、ネットワークコントローラ１０が、各無線ステーション１４のアプリケーションデータサイズとアプリケーションデータ送信間隔の初期設定を行うシーケンス動作を説明する図である。
【０１５２】
まず、無線ステーション１４は、無線ステーションＩＤと、接続先アクセスポイントＩＤと、データ取得レートを、ネットワークコントローラ１０に通知する（図５のステップＳ５１４０）。
【０１５３】
次に、ネットワークコントローラ１０は、フレーム受信情報取得部１００にて、無線ステーション１４から情報（接続先アクセスポイントＩＤとデータ取得レートを）を受け取るたびに、無線ステーションデータベース１０４に、無線ステーションＩＤと、接続先アクセスポイントＩＤと、データ取得レートと、を登録していく（図５のステップＳ５１００）。
【０１５４】
次に、ネットワークコントローラ１０は、設定変更部１０６にて、所定の一定期間経過後に、図５のステップＳ５１００で登録した無線ステーションデータベース１０４の情報を用いて、接続先アクセスポイントＩＤごとに、各無線ステーション１４のアプリケーションデータサイズ、アプリケーションデータ送信間隔を決定する（図５のステップＳ５１０２）。
【０１５５】
同一の無線アクセスポイント１２に接続する無線ステーション１４のデータ取得レートを元に、ネットワークコントローラ１０が備える設定変更部１０６は、各無線アクセスポイント１２のアプリケーションデータサイズとアプリケーションデータ送信間隔を決定する。
【０１５６】
図６は、ネットワークコントローラ１０の設定変更部１０６（図２）が、各無線ステーション１４のアプリケーションデータサイズとアプリケーションデータ送信間隔を決定する処理手順を説明するフローチャートである。
【０１５７】
まず、設定変更部１０６は、現アプリケーションデータサイズの値を予め決めておいた最大値に設定する（図６のステップＳ６１０６０）。この最大値は、無線ネットワーク１３のＭＴＵからＭＡＣ層などのヘッダサイズを引いたサイズとしてもよい。
【０１５８】
次に、設定変更部１０６は、現アプリケーションデータサイズの値を、前アプリケーションデータサイズの値としてコピーを保持する（図６のステップＳ６１０６１）。
【０１５９】
次に、設定変更部１０６は、現アプリケーションデータサイズでのアプリケーションデータ送信遅延を、式（１）を用いて求める（図６のステップＳ６１０６２）。
【０１６０】
もし、無線ネットワーク１３がＩＥＥＥ  ８０２．１１ｇ以外のネットワークであれば、それに従った式を、式（１）と同様に導出し、導出した式によって、現アプリケーションデータサイズでのアプリケーションデータ送信遅延を求める。
【０１６１】
次に、設定変更部１０６は、各無線ステーション１４に対して、現アプリケーションデータサイズでのアプリケーションデータ送信間隔を求める（図６のステップＳ６１０６３）。
【０１６２】
アプリケーションデータ送信間隔は、現アプリケーションデータサイズを、データ取得レートで割ることで算出することができる。
【０１６３】
次に、設定変更部１０６は、各無線ステーション１４について、図６のステップＳ６１０６２で求めたアプリケーションデータ送信遅延と、図６のステップＳ６１０６３で求めたアプリケーションデータ送信間隔と、を用いて、帯域占有率を、式（６）を用いて求める（図６のステップＳ６１０６４）。
【０１６４】
次に、設定変更部１０６は、各無線ステーション１４の帯域占有率を合計し、目標帯域占有率を超えるか否かを判定する（図６のステップＳ６１０６５）。
【０１６５】
帯域占有率が目標帯域占有率を超える場合（図６のステップＳ６１０６５のＹｅｓ）、設定変更部１０６は、前アプリケーションデータサイズの値を各無線ステーション１４のアプリケーションデータサイズとする（図６のステップＳ６１０６７）。そして、設定変更部１０６は、このアプリケーションデータサイズとアプリケーションデータ送信間隔を各無線ステーション１４に通知し（図６のステップＳ６１０６８）、処理を終了する。
【０１６６】
一方、帯域占有率が目標帯域占有率を超えない場合（図６のステップＳ６１０６５のＮｏ）、設定変更部１０６は、現アプリケーションデータサイズの値を前アプリケーションデータサイズの値としてコピーし、現アプリケーションデータサイズの値を、所定のサイズ減らす（図６のステップＳ６１０６６）。
【０１６７】
そして、設定変更部１０６は、ステップＳ６１０６２の処理を行う。現アプリケーションデータサイズを減らす場合のサイズは、３２バイトや１２８バイト等、予め決めておくようにしてもよい。
【０１６８】
減らすサイズが小さければ、アプリケーションデータサイズを細かく調整可能であるが、アプリケーションデータサイズを決定するまでの時間が伸びる。
【０１６９】
一方、減らすサイズが大きければ、アプリケーションデータサイズは大まかな調整になるが、アプリケーションデータサイズを決定するまでの時間は短くなる。このトレードオフを考慮して、任意の値に決定すればよい。
【０１７０】
以上の処理によって、無線ステーション１４のアプリケーションデータサイズとアプリケーションデータ送信間隔の初期設定が完了する。
【０１７１】
ここでは、各無線ステーション１４のアプリケーションデータサイズは同一となるが、無線ステーション１４のデータ取得レートが低いものを優先してアプリケーションデータサイズを小さくするなど、無線ステーション１４ごとにアプリケーションデータサイズを変えるようにしてもよい。この場合、無線ステーション１４に、優先度を設定し（優先度情報は、例えば無線ステーションデータベース１０４に格納される）、ステップＳ６１０６２からステップＳ６１０６６の処理を、無線ステーション１４の優先度に応じた回数実行する、などの方法で、優先度の高い無線ステーション１４のアプリケーションデータサイズを、より適切なサイズとすることが可能となる。
【０１７２】
例えば、無線ステーション１４の優先度が数値(正の値)で表現され、数値が小さいものの方が高優先度の場合、優先度値の逆数の比をとり、ステップＳ６１０６２からステップＳ６１０６６の処理を行う回数を決定する、というようにしてもよい。例えば、センサの中でもバイタルセンサのように人命に関わるデータを取得するセンサが存在する。このようなセンサのデータは他のセンサ（製造装置に取り付けた振動センサなど）のデータよりも優先度を高くするケースがあり得る。このとき、バイタルセンサのセンサデータについては、無線ネットワークが混雑した状況であっても、アプリケーションデータサイズを大きくし、アプリケーションデータ送信間隔を長くする、つまり、遅延を増加させる処理は、他のセンサのアプリケーションデータサイズ、アプリケーションデータ送信間隔を調整した上で、さらに調整が必要な場合に行う、といった運用形態としてもよい。
【０１７３】
アプリケーションデータ送信間隔を短くするとは、アプリケーションデータサイズを小さくするということである。無線ステーション１４ごとに、アプリケーションデータ到達遅延を超えないアプリケーションデータ送信間隔となる最大アプリケーションデータサイズを求め、設定変更部１０６は、この最大アプリケーションデータサイズに対して、帯域占有率の合計が所定の値を超えないようにアプリケーションデータサイズを減らしていく、ようにしてもよい。
【０１７４】
図７は無線ステーション１４が送信したフレームを無線アクセスポイント１２が受信し、フレーム受信時刻情報をネットワークコントローラ１０に送信するまでのシーケンス動作を説明する図である。
【０１７５】
まず、無線ステーション１４が、フレームをデータ処理サーバ１６に送信する（図７のステップＳ７１４０）。
【０１７６】
次に、無線アクセスポイント１２が、無線ステーション１４が送信したフレームを受信し、そのフレームをデータ処理サーバ１６に送信する（図７のステップＳ７１２０）。このとき、無線アクセスポイント１２は、無線ステーション１４のＩＤと、フレーム受信時刻と、再送フラグが立っているかどうかと、をフレーム受信時刻情報として記憶する。
データ処理サーバ１６はフレームを受信する（図７のステップＳ７１６０）。
【０１７７】
次に、無線アクセスポイント１２は、図７のステップＳ７１２０で記録したフレーム受信時刻情報をネットワークコントローラ１０に送信する（図７のステップＳ７１２２）。
ネットワークコントローラ１０は、無線アクセスポイント１２から、フレーム受信時刻情報を受信する（図７のステップＳ７１００）。
【０１７８】
図８は、ネットワークコントローラ１０が無線ステーション１４のアプリケーションデータサイズとアプリケーションデータ送信間隔を変更する処理手順を説明するフローチャートである。
【０１７９】
まず、フレーム受信情報取得部１００が、フレーム受信時刻情報を無線アクセスポイント１２から受け取り、遅延変動検出部１０２に転送する（図８のステップＳ８１０００）。
【０１８０】
次に、遅延変動検出部１０２は、フレーム受信時刻情報に含まれる無線ステーション１４のＩＤで、無線ステーションデータベース１０４を参照し、該当の無線ステーション１４の最終受信時刻と、アプリケーションデータ送信間隔と、遅延変動値と、の情報を取得する（図８のステップＳ８１０２１）。
【０１８１】
次に、遅延変動検出部１０２は、フレーム受信時刻情報に含まれるフレーム受信時刻と、図８のステップＳ８１０２１で取得した最終受信時刻の差分を算出する（図８のステップＳ８１０２２）。
【０１８２】
次に、遅延変動検出部１０２は、図８のステップＳ８１０２２で算出した差分が、図８のステップＳ８１０２１で取得したアプリケーションデータ送信間隔を超えるかどうか判定する（図８のステップＳ８１０２３）。
【０１８３】
ここで、遅延変動検出部１０２は、フレーム受信時刻情報に含まれる再送フラグが立っていない場合（オフである場合）、フレーム受信時刻情報に含まれるフレーム受信時刻と、無線ステーションデータベース１０４から取得した最終受信時刻フィールド１０４８の値との差分が、アプリケーションデータ送信間隔に遅延変動許容閾値を加えた値を超えているか否かを判定する。そして、遅延変動検出部１０２は、この差分を、遅延変動値フィールド１０４５に登録する。
【０１８４】
また、遅延変動検出部１０２は、フレーム受信時刻情報に含まれる再送フラグが立っている場合、フレーム受信時刻情報に含まれるフレーム受信時刻と、無線ステーションデータベース１０４から取得した最終受信時刻の差分を、遅延変動値フィールド１０４５の値に加え、この加えた値を遅延変動値フィールド１０４５に登録する。
【０１８５】
そして、遅延変動検出部１０２は、登録した遅延変動値フィールド１０４５の値が、アプリケーションデータ送信間隔フィールド１０４６の値に遅延変動許容閾値を加えた値を超えているか否かを判定する。
【０１８６】
図８のステップＳ８１０２２で算出した差分が、アプリケーションデータ送信間隔を超える場合（図８のステップＳ８１０２３のＹｅｓ）、遅延変動検出部１０２は、設定変更部１０６に、アプリケーションデータサイズを増加させ、アプリケーションデータ送信間隔を長くするという変更種別のアプリケーションデータ送信設定変更要求を出す（図８のステップＳ８１０２４）。
【０１８７】
図８のステップＳ８１０２２で算出した差分が、アプリケーションデータ送信間隔を超えない場合（図８のステップＳ８１０２３のＮｏ）、遅延変動検出部１０２は、設定変更部１０６に、アプリケーションデータサイズを減少させ、アプリケーションデータ送信間隔を短くするという変更種別のアプリケーションデータ送信設定変更要求を出す（図８のステップＳ８１０２５）。
【０１８８】
設定変更部１０６は、アプリケーションデータ送信設定変更要求に含まれる変更種別に応じて、式（５）等に基づいて、新たなアプリケーションデータサイズ、アプリケーションデータ送信間隔を求める。設定変更部１０６は、求めた値で、無線ステーションデータベース１０４の該当する無線ステーション１４のエントリの新たなアプリケーションデータサイズフィールド１０４４、アプリケーションデータ送信間隔フィールド１０４６の値を更新する（図８のステップＳ８１０６６）。
【０１８９】
続いて、設定変更部１０６は、新たなアプリケーションデータサイズ、アプリケーションデータ送信間隔を該当の無線ステーション１４に通知する（図８のステップＳ８１０６７）。
【０１９０】
遅延変動検出部１０２は、該当の無線ステーション１４の、無線ステーションデータベース１０４の最終受信時刻フィールド１０４８の情報を、フレーム受信時刻で更新する（図８のステップＳ８１０６８）。
【０１９１】
図９は、ネットワークコントローラ１０が送信したアプリケーションデータサイズ、及びアプリケーションデータ送信間隔の変更通知を無線ステーション１４に通知し、無線ステーション１４がこれらの設定を変更するシーケンス動作を説明する図である。
【０１９２】
まず、ネットワークコントローラ１０が、アプリケーションデータサイズ、及びアプリケーションデータ送信間隔の変更通知を無線ステーション１４に送信する（図９のステップＳ９１００）。
【０１９３】
次に、無線ステーション１４は、アプリケーションデータサイズ、及びアプリケーションデータ送信間隔の変更通知を受け取り（図９のステップＳ９１４０）、これらの設定を変更する。
【０１９４】
無線ステーション１４は、変更が成功した場合は、変更受諾通知、変更が失敗した場合は、変更拒否通知を、ネットワークコントローラ１０に送信する（図９のステップＳ９１４２）。
【０１９５】
ネットワークコントローラ１０は、無線ステーション１４が送信した変更受諾通知、または変更拒否通知を受信する（図９のステップＳ９１０２）。
【０１９６】
ネットワークコントローラ１０は、図９のステップＳ９１０２で変更受諾通知を受け取った場合、無線ステーションデータベース１０４の該当する無線ステーション１４のIDのエントリの最終受信時刻フィールド１０４８の値を、変更受諾通知を受け取った時刻に更新する（図９のステップＳ９１０４）。
【０１９７】
ネットワークコントローラ１０は、図９のステップＳ９１０２で変更拒否通知を受け取った場合、無線ステーションデータベース１０４の該当する無線ステーション１４のアプリケーションデータサイズと、アプリケーションデータ送信間隔と、を変更拒否通知に含まれる値に更新し、最終受信時刻フィールド１０４８の値を、変更拒否通知を受信した時刻に更新する。
【０１９８】
このようにして、無線ステーション１４のアプリケーションデータサイズと、アプリケーションデータ送信間隔が更新される。
【０１９９】
［効果の説明］  
次に、例示的な第１の実施の形態の作用効果について説明する。  
【０２００】
例示的な第１の実施の形態によれば、アプリケーションデータを受信するまでの遅延が増加すると、無線ネットワークが混雑したと判断し、該当する無線ステーション１４のアプリケーションデータサイズを増加させ、アプリケーションデータ送信間隔を長くすることで、ネットワークの混雑状況を緩和するように動作する。また、アプリケーションデータの到達遅延が増大していない間は、アプリケーションデータサイズを可能な限り小さくし、アプリケーションデータ送信間隔を短くすることで、アプリケーションデータサイズの到達遅延を守るように動作する。
【０２０１】
このとき、アプリケーションデータの送信レートは保たれるように、アプリケーションデータサイズとアプリケーションデータ送信間隔は変更される。そのため、アプリケーションデータの送信レートを保つ必要があるアプリケーションであっても、アプリケーションデータの到着遅延の増加が発生した場合、すなわち、パケットやフレームの再送が発生し、ネットワークが混雑している状況を緩和し、パケットやフレームの再送回数の上限に達する確率を下げることで、到達遅延をできるだけ小さくしつつ、アプリケーションデータの欠落が発生する確率を下げることができる。以下では、具体例を用いて、本実施の形態の作用効果についてさらに説明する。
【０２０２】
例えば工場等に置いて、製造装置の異常を検知するために、製造装置の可動部（モーター等）の付近に加速度センサ（３軸（Ｘ方向、Ｙ方向、Ｚ方向）、１０ＫＨｚ（Kilo Herz）サンプリング）を取り付けるケースを想定する。
【０２０３】
データ形式として、｛時刻、Ｘ方向の加速度、Ｙ方向の加速度、Ｚ方向の加速度｝の４つの８バイト値（合計３２バイト値）から構成されるものとする。そして、このセンサを備える製造装置が４台配置されているとする。
【０２０４】
サンプリングレートが１０ＫＨｚ（KiloHerz）であるため、製造装置あたり、毎秒３２０Ｋバイト（３２バイト×１００００回）のデータが加速度センサで取得される。
【０２０５】
仮に、各加速度センサが１ミリ秒ごとに、３２０バイトのデータを送信するものとし、かつ、無線ネットワークがＩＥＥＥ８０２．１１ｇ（変調方式：ＯＦＤＭ、レート：５４Ｍｂｐｓ（Mega bits per second））の場合、上式（３）により、３２０バイトのＵＤＰ（User Datagram Protocol）ペイロードを送信すると、ＭＡＣフレームの送信からＡＣＫの受信までの遅延は２３７．５マイクロ秒となる。
【０２０６】
この値と、データ送信間隔（１ミリ秒）を式（１）に代入すると、
帯域占有率＝２３７．５［マイクロ秒］÷１［ミリ秒］×１００≒２３．８％
となる。
【０２０７】
製造装置が４台存在するため、製造装置全体では、２３．８％×４＝９５．２％の帯域を占有することになる。
【０２０８】
このときに電波環境が悪化し、パケットやフレームの再送によって、ネットワークが混雑し始め、加速度センサのアプリケーションデータサイズ、およびアプリケーションデータ送信間隔を変更する場合の例を以下に説明する。  
【０２０９】
仮に、加速度センサについて、目標とする帯域占有率の合計値を５０％とした場合、加速度センサ１つあたりの目標とする帯域占有率は、式（１１）より、
【０２１０】
５０％／４＝１２．５％≧[アプリケーションデータ送信遅延]×[データ取得レート]÷[アプリケーションデータサイズ]×１００・・・式（１３）
となる。
【０２１１】
加速度センサのアプリケーションデータサイズを、仮に、倍の６４０バイトとした場合、アプリケーションデータ送信遅延は、上式（３）より、２８１．５マイクロ秒となる。
【０２１２】
データ取得レートは変わらず、３２０ＫＢ／秒である。アプリケーションデータサイズは６４０バイトである。  
【０２１３】
これらの値を、上式（１３）に代入すると、上式（１３）の右辺は、
２８１．５［マイクロ秒］×３２０［ＫＢ／秒］÷６４０［バイト］×１００
＝１４．７％≧１２．５％
となり、目標とする帯域占有率を達成できない。
【０２１４】
アプリケーションデータサイズをさらに倍の１２８０バイトとした場合、アプリケーションデータ送信遅延は、上式（３）より、３７７．５マイクロ秒となる。
アプリケーションデータサイズが６４０バイトの場合と同様に、
377.5［マイクロ秒］×320［ＫＢ／秒］÷1280［バイト］×100≒７％≦12.5％
となり、目標とする帯域占有率を達成することができる。
【０２１５】
このとき、加速度センサの総帯域占有率は、
７％×４＝２８％
となり、ノイズ等の干渉を受ける確率が下がり、結果として、アプリケーションデータの再送を繰り返す確率が下がり、再送回数の上限に達する前に解析アプリケーションにアプリケーションデータが届く確率が上がる。つまり、アプリケーションデータの欠落が防がれる可能性が上がる。
【０２１６】
［第２の実施の形態］  
［構成の説明］
次に、本発明の例示的な第２の実施形態について図面を参照して詳細に説明する。なお、以下では、前記した実施形態と同様の構成要素に対しては、図面において、同一の符号を付し、詳細な説明を省略する。図１０は、本発明の例示的な第２の実施形態に係る無線ステーションデータベース１０５の一構成例を示す図である。
【０２１７】
図１０を参照すると、無線ステーションデータベース１０５は、無線ステーションデータベース１０４に、各無線ステーション１４が使用する変調方式を示す変調方式フィールド１０４７を備えている。具体的には、変調方式フィールドは、変調方式と伝送速度の情報から構成される。
【０２１８】
ＩＥＥＥ８０２．１１ｇを例にすると、変調方式として、ＤＳＳＳまたはＯＦＤＭが利用可能である。また、伝送速度として、最低１Ｍｂｐｓから最大で５４Ｍｂｐｓまで、選択可能である。
【０２１９】
伝送速度を高めると、通信可能な距離が短くなるため、実際には、無線ステーション１４と、無線アクセスポイント１２の間の電波環境などに応じて、伝送速度が決定される。ＩＥＥＥ８０２．１１では、変調方式と伝送速度によって、１シンボルに格納可能なビット数が異なる。
【０２２０】
１シンボル当たりの送信時間はＩＥＥＥ８０２．１１の各無線規格で定められており、同一の無線規格内では格納可能なビット数によらず一定であるため、１シンボルに多数のビット数を格納可能な変調方式の方が、同サイズのアプリケーションデータを送信する場合には短いアプリケーションデータ送信遅延となる。そのため、ネットワークコントローラ１０は、各無線ステーション１４のアプリケーションデータサイズとアプリケーションデータ送信間隔を決定する際に、図６のステップＳ６１０６２にて式（３）のシンボルあたりのビット数の項に、変調方式と伝送速度によって決まる値を代入し、無線ステーション１４ごとに異なる可能性のある変調方式、伝送速度に応じたフレーム送信遅延を求める。
【０２２１】
無線ステーション１４がどの変調方式、伝送速度を使用するかは、無線ステーション１４が、図５のステップＳ５１４０で、無線ステーションＩＤなどをネットワークコントローラ１０に通知する際に、同時に、通知する構成としてもよい。
【０２２２】
［効果の説明］  
次に、例示的な第２の実施の形態の作用効果について説明する。
【０２２３】
本実施の形態では、無線ステーション１４が使用する変調方式、伝送速度を考慮して、各無線ステーション１４が使用するアプリケーションデータサイズ、アプリケーションデータ送信間隔を決定するように動作する。これによって、電磁ノイズ等が存在する環境、かつ異なる変調方式、伝送速度が混在する環境であっても、パケットやフレームの再送が発生し、ネットワークが混雑している状況を緩和し、パケットやフレームの再送回数の上限に達する確率を下げることで、遅延を可能な限り小さくしつつ、アプリケーションデータの欠落が発生する確率を下げることができる。
【０２２４】
［第３の実施の形態］  
［動作の説明］
次に、本発明の例示的な第３の実施形態について図面を参照して詳細に説明する。なお、前記した実施形態と同様の構成要素に対しては、図面において、同一の符号を付し、詳細な説明を省略する。図１１は、ある無線ステーション１４が、別の無線アクセスポイント１２に接続する際の動作を示したシーケンス図である。これは、作業者に装着したバイタルセンサのように、移動する対象物に接続されたセンサが対象物の移動に伴って、様々な無線アクセスポイント１２へ接続するケースを想定したものである。ここでは、図１の無線ステーション１４ａが、無線アクセスポイント１２ａから無線アクセスポイント１２ｂに接続するとして、説明する。
【０２２５】
まず、無線ステーション１４ａは、無線アクセスポイント１２ａのエリアから外れ、無線アクセスポイント１２ｂのエリアに入りそうになると、ネットワークコントローラ１０に、接続先無線アクセスポイント変更通知を出す（図１１のステップＳ１１１４０）。
【０２２６】
接続先無線アクセスポイントを変更するか否かの判断基準として、無線アクセスポイントから受信する電波の強度を見て、現在接続している無線アクセスポイント１２ａよりも強度の強い電波を受信可能な無線アクセスポイント１２ｂに切り替える、と判断するようにしてもよい。この接続先無線アクセスポイント変更通知には、無線ステーションＩＤと、接続先無線アクセスポイントＩＤが少なくとも含まれる。
【０２２７】
接続先無線アクセスポイント変更通知を受け取ったネットワークコントローラ１０は、該当する無線ステーション１４の接続先アクセスポイントのフィールドＩＤを、接続先無線アクセスポイント変更通知に含まれる接続先アクセスポイントＩＤに変更する（図１１のステップＳ５１００）。
【０２２８】
無線アクセスポイントの接続先を変更する無線ステーション１４を含めて、接続先アクセスポイントＩＤの無線アクセスポイント１２に接続する全ての無線ステーション１４について、アプリケーションデータサイズとアプリケーションデータ送信間隔を再計算し、アプリケーションデータサイズとアプリケーションデータ送信間隔に変更のある無線ステーション１４に、変更内容を通知する（図１１のステップＳ１１１０２）。
【０２２９】
アプリケーションデータサイズとアプリケーションデータ送信間隔に変更のある無線ステーション１４は、変更通知をネットワークコントローラ１０から受け取ると、設定を変更し（図１１のステップＳ５１４２）、変更が完了した旨をネットワークコントローラ１０に通知する（図１１のステップＳ５１４４）。
【０２３０】
ネットワークコントローラ１０は、無線ステーション１４から、設定完了通知を受け取る（図１１のステップＳ１１１０４）。
【０２３１】
図１１を参照して説明したシーケンスは、無線ステーション１４が移動するケースだけでなく、新規に無線ステーション１４を接続する場合にもあてはまる。この場合、図１１のステップＳ１１１４０において、無線ステーション１４は、無線ステーションＩＤ、接続先アクセスポイントＩＤの他に，データ取得レートをネットワークコントローラ１０に通知する。
【０２３２】
［効果の説明］  
次に、例示的な第３の実施の形態の作用効果について説明する。
【０２３３】
例示的な第３の実施の形態では、無線ステーション１４が接続先のアクセスポイントを変更することを考慮して、ネットワークコントローラ１０が、無線ステーション１４が使用するアプリケーションデータサイズ、アプリケーションデータ送信間隔を変更する。
【０２３４】
これによって、電磁ノイズ等が存在する環境、かつ移動する無線ステーション１４が存在する環境であっても、パケットやフレームの再送が発生し、ネットワークが混雑している状況を緩和し、パケットやフレームの再送回数の上限に達する確率を下げることで、遅延を可能な限り小さくしつつ、アプリケーションデータの欠落が発生する確率を下げることができる。
【０２３５】
［第４の実施の形態］  
［構成の説明］
次に、本発明の第４の実施形態について図面を参照して詳細に説明する。なお、前記した実施形態と同様の構成要素に対しては、図面において、同一の符号を付し、詳細な説明を省略する。図１２は、本発明の第４の実施形態に係る、無線通信システム２の一構成例を示す図である。図１２を参照すると、無線通信システム２では、各無線アクセスポイント１２ａ、１２ｂに対応してネットワークコントローラ１０ａ、１０ｂが備えられている。図１２では無線アクセスポイント１２ａ、１２ｂの外部にネットワークコントローラ１０ａ、１０ｂが配設されているが、ネットワークコントローラ１０が無線アクセスポイント１２の内部に備えるようにしてもよい。
【０２３６】
ネットワークコントローラ１０ａ、１０ｂ同士は、有線または無線のネットワーク（図１２のネットワーク１７）で相互に接続されている。
【０２３７】
ネットワークコントローラ１０は、接続されている無線アクセスポイント１２の配下に存在する無線ステーション１４の管理を行う。
【０２３８】
基本的な動作は第１の実施の形態と同様であるため、詳細な説明を省略する。
【０２３９】
図１３は、無線アクセスポイント１２ａ（およびネットワークコントローラ１０ａ）に接続していた無線ステーション１４が、無線アクセスポイント１２ｂに接続する際の、設定変更のシーケンスを説明する図である。
【０２４０】
まず、接続先の無線アクセスポイント２ａを変更する無線ステーション１４は、ネットワークコントローラ１０ａに接続先無線アクセスポイント変更通知を出す（図１３のステップＳ１３１４０）。
【０２４１】
接続先無線アクセスポイント変更通知には、少なくとも新たな接続先となる無線アクセスポイント１２ｂのＩＤと、無線ステーション１４のＩＤと、が含まれる。
【０２４２】
次に、ネットワークコントローラ１０ａは、変更先となる無線アクセスポイント１２ｂのネットワークコントローラ１０ｂに、移動する無線ステーション１４のＩＤと、データ取得レートを通知する（図１３のステップＳ１３１００）。
【０２４３】
データ取得レートは、ネットワークコントローラ１０ａが備える無線ステーションデータベース１０４を参照することで得られる。
【０２４４】
次に、ネットワークコントローラ１０ｂは、新たに接続する無線ステーション１４を含め、配下の無線ステーション１４のアプリケーションデータサイズとアプリケーションデータ送信間隔を再計算する（図１３のステップＳ１３１０２）。
【０２４５】
次に、無線ステーション１４が変更先の無線アクセスポイント１２ｂに接続し、ネットワークコントローラ１０ｂに、その旨を通知する（図１３のステップＳ１３１４２）。
【０２４６】
次に、ネットワークコントローラ１０ｂは、図１３のステップＳ１３１０２で計算したアプリケーションデータサイズとアプリケーションデータ送信間隔を配下の無線ステーション１４に通知する（図１３のステップＳ１３１０４）。
【０２４７】
ネットワークコントローラ１０ｂと、無線ステーション１４の通知のやりとりは、図１１のステップＳ５１４２からステップＳ１１１０４等を参照のこと。
【０２４８】
次に、ネットワークコントローラ１０ｂは、ネットワークコントローラ１０ａに無線ステーション１４の接続先アクセスポイント変更が完了した通知を出す（図１３のステップＳ１３１０６）。この通知には、少なくとも接続先を変更した無線ステーション１４のＩＤが含まれる。
【０２４９】
次に、ネットワークコントローラ１０ａは、移動した無線ステーション１４のエントリを、無線ステーションデータベース１０４から削除する。
【０２５０】
［効果の説明］  
次に、例示的な第４の実施の形態の作用効果について説明する。例示的な第４の実施の形態では、ネットワークコントローラ１０が、各無線アクセスポイント１２に備えられる。これによって、無線通信システム１乃至２を集中制御するコントローラが存在しない場合でも、電磁ノイズ等が存在する環境で、パケットやフレームの再送が発生し、ネットワークが混雑している状況を緩和し、パケットやフレームの再送回数の上限に達する確率を下げることで、遅延を可能な限り小さくしつつ、アプリケーションデータの欠落が発生する確率を下げることができる。
【０２５１】
［第５の実施の形態］  
［構成の説明］
次に、本発明の第５の実施形態について図面を参照して詳細に説明する。なお、本発明の実施形態と同様の構成要素に対しては、同一の符号を付し、詳細な説明を省略する。図１４は、本発明の第５の実施形態に係る無線ステーションデータベース１０７の構成例を示す図である。
【０２５２】
図１４を参照すると、無線ステーションデータベース１０７は、無線ステーションデータベース１０４のアプリケーションデータ送信間隔フィールド１０４６と、最終受信時刻フィールド１０４８とが、それぞれビーコン送信間隔フィールド１０４９と、ビーコン最終受信時刻フィールド１０５０となっている点、また、遅延変動値フィールド１０４５が存在しない点、が異なる。
【０２５３】
ＩｏＴ（Internet of Things）においては、データの取得レートが数ミリ秒に１回という高いレートのセンサから、数秒〜数分に１回という低いレートのセンサまで、様々なデータ取得レートのセンサが存在する。
【０２５４】
データの取得レートが高いセンサの場合、アプリケーションデータ送信間隔も短くなる傾向があり、アプリケーションデータの到達遅延が増大したことの検出を、比較的早期に行うことができる。
【０２５５】
しかし、データの取得レートが低いセンサの場合、アプリケーションデータ送信間隔も長くなり、アプリケーションデータの到達遅延が増大したことが検出されるのが、数秒〜数分後ということになりかねない。秒〜数分という時間は、無線通信における遅延の時間オーダ（マイクロ秒〜ミリ秒）とは、その差が大きい。
【０２５６】
結果として、アプリケーションデータの到達遅延の増大の検出が遅れ、アプリケーションデータの到着遅延の制約を守れなくなる可能性がある。
【０２５７】
そこで、こういったデータ取得レートが低いセンサを主な対象として、データ取得レートの低いセンサが接続された無線ステーション１４から、ネットワークコントローラ１０へ、定期的にビーコンフレームを送信する、という構成としてもよい。
【０２５８】
ビーコンフレームは、フレームヘッダまたはフレームのデータ部に、ビーコンフレームであることを示す情報が埋め込まれている。
【０２５９】
ネットワークコントローラ１０は、この情報に基づいて、フレーム受信時刻情報の通知なのか、ビーコンフレームなのかを識別する。
【０２６０】
また、ビーコンフレームは、ある決められたフォーマットに従ったフレームであり、その遅延は式（３）などを用いて求めることができる。
【０２６１】
ビーコンフレームの送信間隔は、無線通信システム１、２を管理する管理者が、どの程度早期に遅延の増大を検出したいか、ということに基づいて任意の値を設定することができる。
【０２６２】
ビーコンフレームの送信間隔が極端に短いと、ビーコンフレームの送信によって無線リソースが消費されてしまい、無線リソースの利用効率の低下につながる。
【０２６３】
そのため、例えば、無線アクセスポイント１２の配下に存在するビーコンフレームを送信する無線ステーション１４の個数に応じて、ビーコンフレームの送信間隔を下記の式（１４）で求めるようにしてもよい。
【０２６４】
ビーコンフレームの送信間隔＝[管理者が遅延増大を検出するまでの時間]×[ビーコンフレームを送信する無線ステーション１４の個数]×[スケール]          ・・・式（１４）
【０２６５】
式（１４）において、スケールの項は、ビーコンフレームの送信間隔を調整するための項である。
例えば、管理者が遅延増大を検出するまでの時間を５ミリ秒とし、ビーコンフレームを送信する無線ステーション１４の個数が１０個、スケールが１．０の場合、各無線ステーション１４は、
５ミリ秒×１０個×１．０＝５０ミリ秒
に１回、ビーコンフレームを送信することになる。
【０２６６】
各無線ステーション１４がビーコンフレームを送信するタイミングが十分に分散していれば、平均して５ミリ秒に１回の頻度で、ネットワークコントローラ１０は、ビーコンフレームを受信することができる。
【０２６７】
もし、無線通信システム１又は２の管理者が、より早く遅延の増大を検出したいと考えれば、スケールを０．５のような値とし、
５ミリ秒×１０個×０．５＝２５ミリ秒
に１回、ビーコンフレームを送信するような調整が可能である。
【０２６８】
さらに、式（１４）のビーコンフレームを送信する無線ステーション１４の個数の項を、無線アクセスポイント１２配下の全ての無線ステーション１４の個数、としてもよい。
【０２６９】
これは、データ取得レートの高い無線ステーション１４から受信するフレームによっても、ネットワークコントローラ１０は、遅延の増大を検出可能だからである。
【０２７０】
各無線ステーション１４がビーコンフレームを送信するタイミングの設定方法については、図５のステップＳ５１４０にて、無線ステーション１４がビーコンフレームを送信する旨を、ネットワークコントローラ１０に通知し、ネットワークコントローラ１０は、式（７）のような方法で、ビーコンフレーム送信間隔を図５のステップＳ５１０２で求め、無線ステーション１４に通知する。
【０２７１】
図１５は、第５の実施形態において、ビーコンフレーム送信端末フラグを管理する無線ステーションデータベース１０８の構成を模式的に示す図である。
【０２７２】
ビーコンフレームを送信する無線ステーション１４と、ビーコンフレームを送信しない無線ステーション１４が混在する場合は、図１５に例示するように、例えば、ビーコンフレームを送信する端末であることを示すフラグを管理するフィールド（ビーコンフレーム送信端末フラグフィールド）１０５１を、無線ステーションデータベース１０８に備える。
【０２７３】
ネットワークコントローラ１０が、フレーム受信時刻情報の通知を受けた時に、このビーコンフレーム送信端末フラグフィールド１０５１が無効になっている無線ステーション１４からのフレーム受信時刻情報であった場合に、アプリケーションデータ到達遅延の増大の判定を行う、といった構成とすることが考えられる。
【０２７４】
あるいは、フレーム受信情報取得部１００にて、ビーコンフレームを送信する無線ステーション１４のリストを保持し、このリストに登録されている無線ステーション１４のＩＤが含まれるフレーム受信時刻情報の通知はフィルタリングし、アプリケーションデータ到達遅延の増大の判定を行わないようにする、という構成としてもよい。
【０２７５】
ネットワークコントローラ１０は、ビーコンフレームを送信する無線ステーション１４については、図６のステップＳ６１０６２〜ステップＳ６１０６４の処理で、データの送信に関するフレームによる、帯域占有率の他に、ビーコンフレームによる帯域占有率を求め、図６のステップＳ６１０６５の帯域占有率の合計が所定の値を超えるかどうかの判定に用いる。
【０２７６】
そして、所定の値を超えた場合には、データの送信に関するフレームのアプリケーションデータサイズを、前アプリケーションデータサイズに設定するか、あるいは、ビーコンフレームの送信間隔を、式（７）の管理者が遅延増大を検出するまでの時間やスケールの項を調整することで、データの送信に関するフレームのアプリケーションデータサイズを可能な限り小さくする、ように制御するようにしてもよい。
【０２７７】
ビーコンフレームの送信間隔の変更通知は、例えば、図９のシーケンスに従って行うことができる。
【０２７８】
この場合、アプリケーションデータサイズ、アプリケーションデータ送信間隔の変更を、ビーコンフレームの送信間隔の変更、と置き換える、といったことが考えられる。
【０２７９】
［効果の説明］  
次に、第５の実施の形態の作用効果について説明する。
【０２８０】
第５の実施の形態では、ネットワークコントローラ１０が備える無線ステーションデータベース１０８がビーコンフレームを扱えるように構成されている。
【０２８１】
これによって、アプリケーションデータの送信間隔が長い無線ステーション１４であっても、早期にアプリケーションデータ到着遅延の増大を検出することができる。
【０２８２】
結果として、早期に無線ネットワークの混雑具合が極めて悪くなる前に対処をすることが可能になり、アプリケーションデータサイズとアプリケーションデータ送信間隔の調整幅を小さくすることができるようになる。結果として、遅延を小さく抑えることが可能になる。
【０２８３】
図１６に示すように、ネットワークコントローラ１０は、コンピュータ装置２００に実装してもよい。図１６を参照すると、コンピュータ装置２００は、プロセッサ（ＣＰＵ（Central Processing Unit）、データ処理装置）２０１、半導体メモリ（例えばＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、又は、ＥＥＰＲＯＭ（Electrically Erasable and Programmable ROＭ）等）、ＨＤＤ（Hard Disk Drive）、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）等の少なくともいずれかを含む記憶装置２０２と、表示装置２０３と、ネットワークインタフェース（Network Interface Card: NIC）２０４を備えている。ネットワークインタフェース(NIC）２０４はネットワーク１１を介して無線アクセスポイント１２、あるいは他のネットワークコントローラと通信接続する。記憶装置２０２に、前記各実施形態で説明したネットワークコントローラ１０の機能を実現するプログラムを記憶しておき、プロセッサ２０１が、該プログラムを読み出して実行することで、前記実施形態のネットワークコントローラ１０の機能を実現するようにしてもよい。
【０２８４】
特に制限されないが、上記各実施形態によれば、例えばセンサのような定期的にデータを送信するような端末が存在する環境に適用できる。ただし、端末は、インターネットに接続されるＩｏＴデバイス等が送信するパケットサイズ、パケット送信間隔の制御に制限されるものでなく、例えばある時間帯等で、データ(Uplink Data)を無線アクセスポイント等に所定間隔で送信する設定とされた、任意の通信端末やM2Mデバイス（Machine to Machine）等の通信デバイスを含む通信ネットワーク等に適用可能である。
【０２８５】
なお、上記の特許文献１−１１の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各付記の各要素、各実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ乃至選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【０２８６】
上記した実施形態は、以下のように付記される。
【０２８７】
（付記１）
パケット送信端末からのパケットの到達遅延と、前記パケットと異なるデータをパケットのデータ部に含む直前のパケットの到達遅延の差から、パケット到達遅延の変動を検出する第１の手段と、
パケットの到達遅延の変動が、予め定められた第１の閾値（遅延変動許容値）を超えている場合に、パケット送信端末のデータの取得レートより上回るようにパケットサイズとパケットの送信間隔を求め、前記パケットサイズとパケット送信間隔をパケット送信端末に通知する第２の手段と、
を備えた、ことを特徴とするパケットサイズ調整装置。
【０２８８】
（付記２）
前記第１の手段は、
前記パケット送信端末が送信したパケット受信時刻を取得するパケット受信時刻取得部と、
前記パケット送信端末の識別子と対応付けて受信済みのパケット受信時刻を管理するパケット受信データ管理部と、
前記パケット受信データ管理部が管理する受信済みのパケット受信時刻と、前記パケット受信時刻の差分から、パケット到達遅延の変動を検出する遅延変動検出部と、
を備え、
前記第２の手段は、
前記遅延変動検出部が検出した遅延の変動が、前記第１の閾値を超えている場合に、前記第１の閾値を超えたパケット送信端末、または、前記パケット送信端末とネットワークリソースを共有する全パケット送信端末の、パケットサイズとパケット送信間隔を再計算し、再計算したパケットサイズとパケット送信間隔を、前記全パケット送信端末の全て、またはパケットサイズとパケット送信間隔に変更のあるパケット送信端末に通知する設定変更部を備えた、ことを特徴とする付記１記載のパケットサイズ調整装置。
【０２８９】
（付記３）
前記設定変更部は、パケットを送信するのに要する遅延を、使用する変調方式と、シンボル当たりのデータサイズと、シンボル当たりの送信遅延と、パケットに対する応答を受信するまでの遅延と、から求め、前記求めた遅延を前記パケット送信間隔で割ることで、通信媒体の占有率を求め、占有率が所定の上限を超えないように前記パケットサイズと、前記パケット送信間隔を決定する、ことを特徴とする、付記２に記載のパケットサイズ調整装置。
【０２９０】
（付記４）
前記遅延変動検出部は、前記第１の閾値に加え、第２の閾値を備え、前記第１の閾値を超える遅延の増大を検出した際に、前記第１の閾値を超えたパケット送信端末のパケットサイズを増加させ、パケット送信間隔を長くするための変更要求を前記設定変更部に出し、また、第２の閾値を下回る遅延を検出した際に、前記第２の閾値を下回ったパケット送信端末のパケットサイズを減少させ、パケット送信間隔を短くするための変更要求依頼を前記設定変更部に出し、
前記設定変更部は、前記変更要求に従って、パケットサイズとパケット送信間隔を決定するする、ことを特徴とする、付記２又は３に記載のパケットサイズ調整装置。
【０２９１】
（付記５）
前記遅延変動検出部は、さらに第３の閾値を備え、遅延の変動が閾値を超えた回数を記録し、前記回数が前記第３の閾値を超えた場合に、前記設定変更部に、パケットサイズとパケット送信間隔を変更するように要求する、ことを特徴とする、付記２乃至４のいずれか１に記載のパケットサイズ調整装置。
【０２９２】
（付記６）
前記設定変更部は、新規のパケット送信端末が追加された際、またはパケット送信端末が移動した際に、前記パケット送信端末とネットワークリソースを共有する全てのパケット送信端末のパケットサイズと、パケット送信間隔を再度決定する、ことを特徴する、付記２乃至５のいずれか１に記載のパケットサイズ調整装置。
【０２９３】
（付記７）
前記パケット送信端末は、ビーコンパケットを定期的に送信し、
前記遅延変動検出部は、ビーコンパケットの到達遅延に基づいて遅延の変動を検出する、ことを特徴とする、付記２乃至６のいずれか１に記載のパケットサイズ調整装置。
【０２９４】
（付記８）
付記１乃至７のいずれか１に記載のパケットサイズ調整装置を備えたネットワークコントローラ。
【０２９５】
（付記９）
パケット送信端末からのパケットの到達遅延と、過去のパケットの到達遅延の差から、パケット到達遅延の変動を検出し、
パケットの到達遅延の変動が、所定の閾値を超えている場合に、パケット送信端末のデータの取得レートより上回るようにパケットサイズとパケットの送信間隔を求め、前記パケットサイズとパケット送信間隔をパケット送信端末に通知する、ことを特徴とするパケットサイズ調整方法。
【０２９６】
（付記１０）
パケット送信端末からのパケットの到達遅延と、過去のパケットの到達遅延の差から、パケット到達遅延の変動を検出する処理と、
パケットの到達遅延の変動が、ある閾値を超えている場合に、パケット送信端末のデータの取得レートより上回るようにパケットサイズとパケットの送信間隔を求め、前記パケットサイズとパケット送信間隔をパケット送信端末に通知する処理と、をコンピュータに実行させるプログラム。
【０２９７】
以下の各付記では、上記各付記と同様に、フレームをパケットに置き換えてもよい。
【０２９８】
(付記１１）
データをフレームに含めて一度に送信する端末から送信されたフレームの受信時刻を取得するフレーム受信時刻取得部と、
前記端末と関連付けて、前記端末から送信されたフレームの受信時刻、前記端末がフレームに含めて一度に送信するデータサイズ、及びフレーム送信間隔を少なくとも記憶する記憶部と、
前記端末から今回受信したフレームの受信時刻と、前回受信したフレームの受信時刻との差と、前記端末のフレーム送信間隔に基づき、前記フレームの遅延の変動を検出する遅延変動検出部と、
前記遅延変動検出部で検出された前記フレームの遅延の変動と、予め定められた遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレーム送信間隔を求め、求めた値で前記記憶部における該当する端末のエントリを更新するとともに、該当する端末に、前記データサイズとフレーム送信間隔の変更を通知する設定変更部と、
を備えた、ことを特徴とする制御装置。
【０２９９】
(付記１２）
前記設定変更部は、前記端末が前記フレームに含めて一度に送信するデータサイズを増加させ、前記フレーム送信間隔を長くする場合、
前記フレームを送信するのに要する遅延を、
使用する変調方式と、
シンボル当たりのデータサイズと、
シンボル当たりの送信遅延と、
前記フレームの送信に対する応答を受信するまでの遅延と、
に基づき算出し、
前記遅延を、前記フレーム送信間隔で除することで、通信媒体の帯域占有率を求め、
前記帯域占有率が、予め定められた値を超えないように、前記データサイズと前記フレーム送信間隔を決定する、ことを特徴とする、付記１１に記載の制御装置。
【０３００】
(付記１３）
前記遅延変動検出部は、前記端末から今回受信したフレームが再送でない場合には、
前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、
前記今回受信したフレームの受信時刻と、
の差分をとり、
前記差分と、
前記記憶部に記憶されている前記端末の前記フレーム送信間隔に前記遅延変動許容値を加えた値と、
の比較結果に基づき、前記端末が前記フレームに含めて一度に送信するデータサイズとフレーム送信間隔の変更要求を、前記設定変更部に出力する、ことを特徴とする付記１１又は１２に記載の制御装置。
【０３０１】
(付記１４）
前記遅延変動検出部は、前記端末から今回受信したフレームが再送である場合には、
前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、
前記今回受信したフレームの受信時刻と、
の差分をとり、
前記差分を、前記記憶部に前記端末に関連付けて記憶された遅延変動値に加えた値で、前記遅延変動値を更新し、
更新された前記遅延変動値と、
前記フレーム送信間隔に前記遅延許容値を加えた値と、
の大小の比較結果に基づき、前記端末が前記フレームに含めて一度に送信するデータサイズと前記フレーム送信間隔の変更要求を、前記設定変更部に出力する、ことを特徴とする付記１１又は１２に記載の制御装置。
【０３０２】
(付記１５）
前記遅延変動検出部は、前記フレームの遅延変動が、前記遅延変動許容値に関する予め定められた第１の閾値を超える場合、
前記第１の閾値を超えた前記端末が前記フレームに含めて一度に送信するデータサイズを増加させ、前記フレーム送信間隔を長くするための変更要求を前記設定変更部に出し、
前記フレームの遅延変動が、前記遅延変動許容値に関する第２の閾値を下回る場合、
前記第２の閾値を下回った端末が送信するデータサイズを減少させ、フレーム送信間隔を短くするための変更要求依頼を前記設定変更部に出し、
前記設定変更部は、前記変更要求に従って、前記端末のデータサイズとフレーム送信間隔を決定する、ことを特徴とする、付記１１乃至１４のいずれかに記載の制御装置。
【０３０３】
(付記１６）
前記遅延変動検出部は、前記フレームの遅延変動が前記遅延許容変動値を超えた回数、又は、前記フレームの遅延変動が前記遅延許容変動値を超えた回数と超えなかった回数の差が、予め定められた値を超えた場合に、前記設定変更部に対して、前記端末がフレームに含めて一度に送信するデータのサイズとフレーム送信間隔を変更するように要求する、ことを特徴とする、付記１１乃至１４のいずれかに記載の制御装置。
【０３０４】
(付記１７）
前記設定変更部は、無線アクセスポイントと通信する端末が追加された際、又は、前記端末が他の無線アクセスポイントに移動した際に、
前記端末とネットワークリソースを共有する端末がフレームに含めて一度に送信するデータサイズとそのフレーム送信間隔を再計算する、ことを特徴する、付記１１乃至１６のいずれかに記載の制御装置。
【０３０５】
(付記１８）
前記端末は、ビーコンフレームを送信し、
前記遅延変動検出部は、前記ビーコンフレームの受信時刻に基づいて遅延の変動を検出する、ことを特徴とする、付記１１乃至１７のいずれかに記載の制御装置。
【０３０６】
(付記１９）
データをフレームに含めて一度に送信する端末と関連付けて、前記端末から送信されたフレームを受信した時刻、前記端末が送信するデータサイズ及びフレーム送信間隔を少なくとも記憶する記憶部を有するコンピュータによるネットワーク制御方法であって、
前記端末が送信したフレームの受信時刻を取得し、
前記端末から今回受信したフレームの受信時刻と、前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻との差と、前記端末のフレーム送信間隔と、に基づき、前記フレームの遅延の変動を検出し、
前記フレームの遅延の変動と、予め定められた遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレームの送信間隔を求め、求めた値で前記記憶部における該当する端末のエントリを更新するとともに、該当する端末に、前記データサイズと前記フレームの送信間隔の変更を通知する、ことを特徴とするネットワーク制御方法。
【０３０７】
(付記２０）
前記端末が前記フレームに含めて一度に送信するデータサイズを増加させ、前記フレーム送信間隔を長くする場合、
前記フレームを送信するのに要する遅延を、
使用する変調方式と、
シンボル当たりのデータサイズと、
シンボル当たりの送信遅延と、
前記フレームの送信に対する応答を受信するまでの遅延と、
に基づき算出し、
前記遅延を、前記フレーム送信間隔で除することで、通信媒体の帯域占有率を求め、
前記帯域占有率が、予め定められた値を超えないように、前記データサイズと前記フレーム送信間隔を決定する、ことを特徴とする、付記１９に記載のネットワーク制御方法。
【０３０８】
(付記２１）
前記端末から今回受信したフレームが再送でない場合には、
前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、
前記今回受信したフレームの受信時刻と、
の差分をとり、
前記差分と、
前記記憶部に記憶されている前記端末の前記フレーム送信間隔に前記遅延変動許容値を加えた値と、
の比較結果に基づき、前記端末が前記フレームに含めて一度に送信するデータサイズとフレーム送信間隔の変更要求を出力する、ことを特徴とする付記１９又は２０に記載のネットワーク制御方法。
【０３０９】
(付記２２）
前記端末から今回受信したフレームが再送である場合には、
前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、
前記今回受信したフレームの受信時刻と、
の差分をとり、
前記差分を、前記記憶部に前記端末に関連付けて記憶された遅延変動値に加えた値で、前記遅延変動値を更新し、
更新された前記遅延変動値と、
前記フレーム送信間隔に前記遅延許容値を加えた値と、
の大小の比較結果に基づき、前記端末が前記フレームに含めて一度に送信するデータサイズと前記フレーム送信間隔の変更要求を出力する、ことを特徴とする付記１９又は２０に記載のネットワーク制御方法。
【０３１０】
(付記２３）
前記フレームの遅延変動が、前記遅延変動許容値に関する予め定められた第１の閾値を超える場合、
前記第１の閾値を超えた前記端末が前記フレームに含めて一度に送信するデータサイズを増加させ、前記フレーム送信間隔を長くするための変更要求を出し、
前記フレームの遅延変動が、前記遅延変動許容値に関する第２の閾値を下回る場合、
前記第２の閾値を下回った端末が送信するデータサイズを減少させ、フレーム送信間隔を短くするための変更要求を出し、
前記変更要求に従って、前記端末のデータサイズとフレーム送信間隔を決定する、ことを特徴とする、付記１９乃至２２のいずれかに記載のネットワーク制御方法。
【０３１１】
(付記２４）
前記フレームの遅延変動が前記遅延許容変動値を超えた回数、又は、前記フレームの遅延変動が前記遅延許容変動値を超えた回数と超えなかった回数の差が、予め定められた値を超えた場合に、前記端末がフレームに含めて一度に送信するデータのサイズとフレーム送信間隔を変更するように要求する、ことを特徴とする、付記１９乃至２３のいずれかに記載のネットワーク制御方法。
【０３１２】
(付記２５）
無線アクセスポイントと通信する端末が追加された際、又は、前記端末が他の無線アクセスポイントに移動した際に、
前記端末とネットワークリソースを共有する端末がフレームに含めて一度に送信するデータサイズとそのフレーム送信間隔を再計算する、ことを特徴する、付記１９乃至２４のいずれかに記載のネットワーク制御方法。
【０３１３】
(付記２６）
前記端末は、ビーコンフレームを送信し、
前記ビーコンフレームの受信時刻に基づいて遅延の変動を検出する、ことを特徴とする、付記１９乃至２５のいずれかに記載のネットワーク制御方法。
【０３１４】
（付記２７）
データをフレームに含めて一度に送信する端末と関連付けて、前記端末から送信されたフレームの受信時刻、前記端末が送信するフレームのサイズ及びフレーム送信間隔を少なくとも記憶する記憶部を有するコンピュータに、
前記端末が送信したフレームの受信時刻を取得する処理と、
前記端末から今回受信したフレームの受信時刻と、前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、の差と、前記端末のフレーム送信間隔と、に基づき、前記フレームの遅延の変動を検出する遅延変動検出処理と、
前記フレームの遅延の変動と、予め定められた遅延変動許容値との比較結果に応じて、前記端末がフレームに含めて一度に送信するデータサイズとフレームの送信間隔を求め、求めた値で前記記憶部における該当する端末のエントリを更新するとともに、該当する端末に、前記データサイズと前記フレームの送信間隔の変更を通知する設定変更処理と、
を実行させるプログラム。
【０３１５】
(付記２８）
前記設定変更処理は、前記端末が前記フレームに含めて一度に送信するデータサイズを増加させ、前記フレーム送信間隔を長くする場合、
前記フレームを送信するのに要する遅延を、
使用する変調方式と、
シンボル当たりのデータサイズと、
シンボル当たりの送信遅延と、
前記フレームの送信に対する応答を受信するまでの遅延と、
に基づき算出し、
前記遅延を、前記フレーム送信間隔で除することで、通信媒体の帯域占有率を求め、
前記帯域占有率が、予め定められた値を超えないように、前記データサイズと前記フレーム送信間隔を決定する、ことを特徴とする、付記２７に記載のプログラム。
【０３１６】
(付記２９）
前記遅延変動検出部は、前記端末から今回受信したフレームが再送でない場合には、
前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、
前記今回受信したフレームの受信時刻と、
の差分をとり、
前記差分と、
前記記憶部に記憶されている前記端末の前記フレーム送信間隔に前記遅延変動許容値を加えた値と、
の比較結果に基づき、前記端末が前記フレームに含めて一度に送信するデータサイズとフレーム送信間隔の変更要求を、前記設定変更処理に出力する、ことを特徴とする付記２７又は２８に記載のプログラム。
【０３１７】
(付記３０）
前記遅延変動検出処理は、前記端末から今回受信したフレームが再送である場合には、
前記記憶部に記憶されている、前記端末から前回受信したフレームの受信時刻と、
前記今回受信したフレームの受信時刻と、
の差分をとり、
前記差分を、前記記憶部に前記端末に関連付けて記憶された遅延変動値に加えた値で、前記遅延変動値を更新し、
更新された前記遅延変動値と、
前記フレーム送信間隔に前記遅延許容値を加えた値と、
の大小の比較結果に基づき、前記端末が前記フレームに含めて一度に送信するデータサイズと前記フレーム送信間隔の変更要求を、前記設定変更処理に出力する、ことを特徴とする付記２７又は２８に記載のプログラム。
【０３１８】
(付記３１）
前記遅延変動検出処理は、前記フレームの遅延変動が、前記遅延変動許容値に関する予め定められた第１の閾値を超える場合、
前記第１の閾値を超えた前記端末が前記フレームに含めて一度に送信するデータサイズを増加させ、前記フレーム送信間隔を長くするための変更要求を前記設定変更処理に出し、
前記フレームの遅延変動が、前記遅延変動許容値に関する第２の閾値を下回る場合、
前記第２の閾値を下回った端末が送信するデータサイズを減少させ、フレーム送信間隔を短くするための変更要求依頼を前記設定変更処理に出し、
前記設定変更処理は、前記変更要求に従って、前記端末のデータサイズとフレーム送信間隔を決定する、ことを特徴とする、付記２７乃至３０のいずれかに記載のプログラム。
【０３１９】
(付記３２）
前記遅延変動検出処理は、前記フレームの遅延変動が前記遅延許容変動値を超えた回数、又は、前記フレームの遅延変動が前記遅延許容変動値を超えた回数と超えなかった回数の差が、予め定められた値を超えた場合に、前記設定変更処理に対して、前記端末がフレームに含めて一度に送信するデータのサイズとフレーム送信間隔を変更するように要求する、ことを特徴とする、付記２７乃至３０のいずれかに記載のプログラム。
【０３２０】
(付記３３）
前記設定変更処理は、無線アクセスポイントと通信する端末が追加された際、又は、前記端末が他の無線アクセスポイントに移動した際に、
前記端末とネットワークリソースを共有する端末がフレームに含めて一度に送信するデータサイズとそのフレーム送信間隔を再計算する、ことを特徴する、付記２７乃至３２のいずれかに記載のプログラム。
【０３２１】
(付記３４）
前記端末は、ビーコンフレームを送信し、
前記遅延変動検出処理は、前記ビーコンフレームの受信時刻に基づいて遅延の変動を検出する、ことを特徴とする、付記２７乃至３３のいずれかに記載のプログラム。
【符号の説明】
【０３２２】
１、２、１１  無線通信システム
１０、１０ａ、１０ｂ  ネットワークコントローラ
１１  ネットワーク
１２ａ、１２ｂ  無線アクセスポイント
１３  無線ネットワーク
１４ａ、１４ｂ、１４ｃ、１４ｄ  無線ステーション
１５  有線ネットワーク
１６  データ処理サーバ
１７  ネットワーク
１００  フレーム受信情報取得部
１０２  遅延変動検出処理
１０４、１０５、１０７、１０８  無線ステーションデータベース
１０６  設定変更処理
２００  コンピュータ装置
２０１  プロセッサ
２０２  記憶装置
２０３  表示装置
２０４  ネットワークインタフェース
１０４０  無線ステーションＩＤフィールド
１０４１  接続先アクセスポイントＩＤフィールド
１０４２  データ取得レートフィールド
１０４４  アプリケーションデータサイズフィールド
１０４５  遅延変動値フィールド
１０４６  アプリケーションデータ送信間隔フィールド
１０４７  変調方式フィールド
１０４８  最終受信時刻フィールド
１０４９  ビーコン送信間隔フィールド
１０５０  ビーコン最終受信時刻フィールド
１０５１  ビーコンフレーム送信端末フラグフィールド
【図１】
2018152675.tif 000003
【図２】
2018152675.tif 000004
【図３】
2018152675.tif 000005
【図４】
2018152675.tif 000006
【図５】
2018152675.tif 000007
【図６】
2018152675.tif 000008
【図７】
2018152675.tif 000009
【図８】
2018152675.tif 000010
【図９】
2018152675.tif 000011
【図１０】
2018152675.tif 000012
【図１１】
2018152675.tif 000013
【図１２】
2018152675.tif 000014
【図１３】
2018152675.tif 000015
【図１４】
2018152675.tif 000016
【図１５】
2018152675.tif 000017
【図１６】
2018152675.tif 000018