IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社国際電気通信基礎技術研究所の特許一覧

特許7513251ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-01
(45)【発行日】2024-07-09
(54)【発明の名称】ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体
(51)【国際特許分類】
   H04W 28/10 20090101AFI20240702BHJP
   H04L 45/12 20220101ALI20240702BHJP
   H04W 12/12 20210101ALI20240702BHJP
   H04W 24/08 20090101ALI20240702BHJP
【FI】
H04W28/10
H04L45/12
H04W12/12
H04W24/08
【請求項の数】 19
(21)【出願番号】P 2020100713
(22)【出願日】2020-06-10
(65)【公開番号】P2021197579
(43)【公開日】2021-12-27
【審査請求日】2023-06-08
【新規性喪失の例外の表示】特許法第30条第2項適用 発行日が令和 1年12月12日である電子情報通信学会信学技報 vol.119 no.344 NS2019-142,第44-49頁にて公開
【新規性喪失の例外の表示】特許法第30条第2項適用 発行日が令和 2年 2月16日であるInternational Conference on Advanced Communications Technology(ICACT),p319-323にて公開
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和2年度支出負担行為担当官、総務省大臣官房会計課企画官、研究テーマ「周波数有効利用のためのIoTワイヤレス高効率広域ネットワークスキャン技術の研究開発」に関する委託研究、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】393031586
【氏名又は名称】株式会社国際電気通信基礎技術研究所
(74)【代理人】
【識別番号】100112715
【弁理士】
【氏名又は名称】松山 隆夫
(72)【発明者】
【氏名】鈴木 健太
(72)【発明者】
【氏名】栗原 拓哉
(72)【発明者】
【氏名】滕 睿
(72)【発明者】
【氏名】矢野 一人
(72)【発明者】
【氏名】鈴木 義規
【審査官】田畑 利幸
(56)【参考文献】
【文献】国際公開第2019/239608(WO,A1)
【文献】特開2012-039565(JP,A)
【文献】特開2010-103786(JP,A)
【文献】特表2021-527879(JP,A)
【文献】GR2000 ソフトウェアマニュアル 運用ガイド Ver.06-04対応 第3版 ,株式会社日立製作所,2002年04月,第3版,第35頁-第36頁
【文献】GR2000 ソフトウェアマニュアル 運用コマンドレファレンス Ver.06-04対応 第3版 ,日本,株式会社日立製作所,2002年04月,第3版,第358頁-第365頁
(58)【調査した分野】(Int.Cl.,DB名)
H04W 4/00-99/00
H04L 12/50-12/66
H04L 45/00-49/9057
(57)【特許請求の範囲】
【請求項1】
ネットワークスキャンを実行するときに使用する複数の第1のネットワークの無線通信区間におけるホップ段数を推定するネットワークスキャン装置であって、
前記複数の第1のネットワークを使用して複数の端末装置の複数のIPアドレスに対してスキャンパケットを送信してネットワークスキャンを実行するスキャン手段と、
前記スキャンパケットを送信してからスキャン応答を受信するまでの時間であるスキャン応答遅延を計測し、その計測した計測スキャン応答遅延を前記IPアドレスに対応付けて記録する記録処理を前記複数の端末装置の全てについて実行する記録手段と、
前記ネットワークスキャン装置と前記端末装置との間に有線通信区間と1ホップからなる無線通信区間とが存在する第2のネットワークを想定して前記計測スキャン応答遅延から前記第2のネットワークにおける前記有線通信区間の遅延を減算した第1の減算結果を前記第2のネットワークにおける前記無線通信区間の最小遅延と比較して前記ホップ段数を推定する推定処理を前記複数の端末装置の全てについて実行する推定手段と、
前記推定手段によって推定された前記ホップ段数が第1のホップ段数であるとき前記ネットワークスキャンにおけるスキャンパケットの通信速度を第1の通信速度に設定し、前記推定手段によって推定された前記ホップ段数が前記第1のホップ段数よりも多い第2のホップ段数であるとき前記スキャンパケットの通信速度を前記第1の通信速度よりも低い第2の通信速度に設定して前記ネットワークスキャンのスキャンスケジュールを作成するスケジュール作成手段とを備え、
前記スキャン手段は、前記スケジュール作成手段によって作成された前記スキャンスケジュールに従って前記ネットワークスキャンを実行する、ネットワークスキャン装置。
【請求項2】
前記推定手段は、前記推定処理において、前記計測スキャン応答遅延の最小値から前記第2のネットワークにおける前記有線通信区間の遅延を減算して前記第1の減算結果の最小値を算出し、前記最小遅延に基づいて複数のしきい値を算出し、前記第1の減算結果の最小値を前記複数のしきい値と比較して前記ホップ段数を推定する、請求項1に記載のネットワークスキャン装置。
【請求項3】
前記複数のしきい値は、Th~Th(Nは、2以上の整数)からなり、
前記推定手段は、前記推定処理において、前記最小遅延を基準値に設定し、前記最小遅延から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して第2の減算結果を算出し、Th=(基準値)+(第2の減算結果)×Nによって前記複数のしきい値を算出し、前記第1の減算結果の最小値を前記算出した複数のしきい値と比較して前記ホップ段数を推定する、請求項2に記載のネットワークスキャン装置。
【請求項4】
前記推定手段は、前記推定処理において、前記計測スキャン応答遅延の最小値から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して前記第1の減算結果の最小値を算出し、前記最小遅延を第1のしきい値に設定し、前記最小遅延から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して第2の減算結果を算出し、前記第1のしきい値に前記第2の減算結果を加算して第2のしきい値を算出し、前記第1の減算結果の最小値から前記第1のしきい値を減算して第3の減算結果を算出し、前記第2のしきい値から前記第1のしきい値を減算して第4の減算結果を算出し、前記第3の減算結果が負であるとき、前記ホップ段数を“1”と推定し、前記第3の減算結果が零以上であるとき、前記第3の減算結果を前記第4の減算結果で除算した除算結果を切り上げて得られる整数に1を加算した加算結果を前記ホップ段数として推定する、請求項1に記載のネットワークスキャン装置。
【請求項5】
前記推定手段は、前記推定処理において、前記計測スキャン応答遅延の平均値から前記第2のネットワークにおける前記有線通信区間の遅延を減算して前記第1の減算結果の平均値を算出し、前記最小遅延に基づいて複数のしきい値を算出し、前記第1の減算結果の平均値を前記複数のしきい値と比較して前記ホップ段数を推定する、請求項1に記載のネットワークスキャン装置。
【請求項6】
前記複数のしきい値は、Th~Th(Nは、2以上の整数)からなり、
前記推定手段は、前記推定処理において、前記最小遅延と前記最小遅延の2倍との中点を基準値に設定し、前記最小遅延から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して第2の減算結果を算出し、Th=(基準値)+(第2の減算結果)×Nによって前記複数のしきい値を算出し、前記第1の減算結果の平均値を前記算出した複数のしきい値と比較して前記ホップ段数を推定する、請求項5に記載のネットワークスキャン装置。
【請求項7】
前記推定手段は、前記推定処理において、前記計測スキャン応答遅延の平均値から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して前記第1の減算結果の平均値を算出し、前記最小遅延から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して第2の減算結果を算出し、その算出した第2の減算結果を前記最小遅延と前記最小遅延の2倍との中点からなる基準値に加算して第1のしきい値を算出し、前記第1のしきい値に前記第2の減算結果を加算して第2のしきい値を算出し、前記第1の減算結果の平均値から前記第1のしきい値を減算して第3の減算結果を算出し、前記第2のしきい値から前記第1のしきい値を減算して第4の減算結果を算出し、前記第3の減算結果が負であるとき、前記ホップ段数を“1”と推定し、前記第3の減算結果が零以上であるとき、前記第3の減算結果を前記第4の減算結果で除算した除算結果を切り上げて得られる整数に1を加算した加算結果を前記ホップ段数として推定する、請求項1に記載のネットワークスキャン装置。
【請求項8】
前記複数の第1のネットワークの種別を前記複数の端末装置の属性として判定する判定手段を更に備え、
前記推定手段は、前記推定処理において、前記端末装置の属性に対応する前記計測スキャン応答遅延から前記第2のネットワークにおける前記有線通信区間の遅延を減算した第1の減算結果を前記第2のネットワークにおける前記無線通信区間の最小遅延と比較して前記ホップ段数を推定する、請求項1から請求項7のいずれか1項に記載のネットワークスキャン装置。
【請求項9】
前記スケジュール作成手段は、更に、第3のしきい値以上である前記計測スキャン応答遅延の個数を前記スキャン応答の個数で除算したときの比が第4のしきい値よりも大きくないとき、前記スキャンパケットの通信速度を維持し、または前記第1の通信速度よりも高い第3の通信速度に設定して前記ネットワークスキャンのスキャンスケジュールを作成する、請求項1から請求項8のいずれか1項に記載のネットワークスキャン装置。
【請求項10】
ネットワークスキャンを実行するときに使用する複数の第1のネットワークの無線通信区間におけるホップ段数の推定をコンピュータに実行させるプログラムであって、
スキャン手段が、前記複数の第1のネットワークを使用して複数の端末装置の複数のIPアドレスに対してスキャンパケットを送信してネットワークスキャンを実行する第1のステップと、
記録手段が、前記スキャンパケットを送信してからスキャン応答を受信するまでの時間であるスキャン応答遅延を計測し、その計測した計測スキャン応答遅延を前記IPアドレスに対応付けて記録する記録処理を前記複数の端末装置の全てについて実行する第2のステップと、
推定手段が、前記ネットワークスキャンを実行するネットワークスキャン装置と前記端末装置との間に有線通信区間と1ホップからなる無線通信区間とが存在する第2のネットワークを想定して前記計測スキャン応答遅延から前記第2のネットワークにおける前記有線通信区間の遅延を減算した第1の減算結果を前記第2のネットワークにおける前記無線通信区間の最小遅延と比較して前記ホップ段数を推定する推定処理を前記複数の端末装置の全てについて実行する第3のステップと、
スケジュール作成手段が、前記第3のステップにおいて推定された前記ホップ段数が第1のホップ段数であるとき前記ネットワークスキャンにおけるスキャンパケットの通信速度を第1の通信速度に設定し、前記第3のステップにおいて推定された前記ホップ段数が前記第1のホップ段数よりも多い第2のホップ段数であるとき前記スキャンパケットの通信速度を前記第1の通信速度よりも低い第2の通信速度に設定して前記ネットワークスキャンのスキャンスケジュールを作成する第4のステップとをコンピュータに実行させ、
前記スキャン手段は、前記第1のステップにおいて、前記第4のステップにおいて作成された前記スキャンスケジュールに従って前記ネットワークスキャンを実行する、コンピュータに実行させるためのプログラム。
【請求項11】
前記推定手段は、前記第3のステップの前記推定処理において、前記計測スキャン応答遅延の最小値から前記第2のネットワークにおける前記有線通信区間の遅延を減算して前記第1の減算結果の最小値を算出し、前記最小遅延に基づいて複数のしきい値を算出し、前記第1の減算結果の最小値を前記複数のしきい値と比較して前記ホップ段数を推定する、請求項10に記載のコンピュータに実行させるためのプログラム。
【請求項12】
前記複数のしきい値は、Th~Th(Nは、2以上の整数)からなり、
前記推定手段は、前記第3のステップの前記推定処理において、前記最小遅延を基準値に設定し、前記最小遅延から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して第2の減算結果を算出し、Th=(基準値)+(第2の減算結果)×Nによって前記複数のしきい値を算出し、前記第1の減算結果の最小値を前記算出した複数のしきい値と比較して前記ホップ段数を推定する、請求項11に記載のコンピュータに実行させるためのプログラム。
【請求項13】
前記推定手段は、前記第3のステップの前記推定処理において、前記計測スキャン応答遅延の最小値から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して前記第1の減算結果の最小値を算出し、前記最小遅延を第1のしきい値に設定し、前記最小遅延から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して第2の減算結果を算出し、前記第1のしきい値に前記第2の減算結果を加算して第2のしきい値を算出し、前記第1の減算結果の最小値から前記第1のしきい値を減算して第3の減算結果を算出し、前記第2のしきい値から前記第1のしきい値を減算して第4の減算結果を算出し、前記第3の減算結果が負であるとき、前記ホップ段数を“1”と推定し、前記第3の減算結果が零以上であるとき、前記第3の減算結果を前記第4の減算結果で除算した除算結果を切り上げて得られる整数に1を加算した加算結果を前記ホップ段数として推定する、請求項10に記載のコンピュータに実行させるためのプログラム。
【請求項14】
前記推定手段は、前記第3のステップの前記推定処理において、前記計測スキャン応答遅延の平均値から前記第2のネットワークにおける前記有線通信区間の遅延を減算して前記第1の減算結果の平均値を算出し、前記最小遅延に基づいて複数のしきい値を算出し、前記第1の減算結果の平均値を前記複数のしきい値と比較して前記ホップ段数を推定する、請求項10に記載のコンピュータに実行させるためのプログラム。
【請求項15】
前記複数のしきい値は、Th~Th(Nは、2以上の整数)からなり、
前記推定手段は、前記第3のステップの前記推定処理において、前記最小遅延と前記最小遅延の2倍との中点を基準値に設定し、前記最小遅延から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して第2の減算結果を算出し、Th=(基準値)+(第2の減算結果)×Nによって前記複数のしきい値を算出し、前記第1の減算結果の平均値を前記算出した複数のしきい値と比較して前記ホップ段数を推定する、請求項14に記載のコンピュータに実行させるためのプログラム。
【請求項16】
前記推定手段は、前記第3のステップの前記推定処理において、前記計測スキャン応答遅延の平均値から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して前記第1の減算結果の平均値を算出し、前記最小遅延から前記第2のネットワークにおける前記有線通信区間の平均遅延を減算して第2の減算結果を算出し、その算出した第2の減算結果を前記最小遅延と前記最小遅延の2倍との中点からなる基準値に加算して第1のしきい値を算出し、前記第1のしきい値に前記第2の減算結果を加算して第2のしきい値を算出し、前記第1の減算結果の平均値から前記第1のしきい値を減算して第3の減算結果を算出し、前記第2のしきい値から前記第1のしきい値を減算して第4の減算結果を算出し、前記第3の減算結果が負であるとき、前記ホップ段数を“1”と推定し、前記第3の減算結果が零以上であるとき、前記第3の減算結果を前記第4の減算結果で除算した除算結果を切り上げて得られる整数に1を加算した加算結果を前記ホップ段数として推定する、請求項10に記載のコンピュータに実行させるためのプログラム。
【請求項17】
判定手段が、前記複数の第1のネットワークの種別を前記複数の端末装置の属性として判定する第5のステップを更にコンピュータに実行させ、
前記推定手段は、前記第3のステップの前記推定処理において、前記端末装置の属性に対応する前記計測スキャン応答遅延から前記第2のネットワークにおける前記有線通信区間の遅延を減算した第1の減算結果を前記第2のネットワークにおける前記無線通信区間の最小遅延と比較して前記ホップ段数を推定する、請求項10から請求項16のいずれか1項に記載のコンピュータに実行させるためのプログラム。
【請求項18】
前記スケジュール作成手段は、前記第4のステップにおいて、更に、第3のしきい値以上である前記計測スキャン応答遅延の個数を前記スキャン応答の個数で除算したときの比が第4のしきい値よりも大きくないとき、前記スキャンパケットの通信速度を維持し、または前記第1の通信速度よりも高い第3の通信速度に設定して前記ネットワークスキャンのスキャンスケジュールを作成する、請求項10から請求項17のいずれか1項に記載のコンピュータに実行させるためのプログラム。
【請求項19】
請求項10から請求項18のいずれか1項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体に関するものである。
【背景技術】
【0002】
第5世代移動通信(5G)システムの実用化に伴って、携帯端末、コンピュータ、センサおよびウェブカメラ等の多くの物がインターネットに接続されることになる。このようなインターネットに接続された携帯端末およびコンピュータ等は、IoT(Internet of Things)機器と呼ばれている。
【0003】
IoT時代には、通信ネットワークに接続されるIoT機器の個数は、急速に増大することが見込まれる。IoT機器のうち、無線通信を行うIoT機器は、十分にセキュリティを確保できないまま、不正使用され、DDoS(Distributed Denial of Service attack)攻撃のようなサイバー攻撃に悪用されるケースが増大すると予想される。
【0004】
このような事態を回避するために、通信ネットワークに接続されたIoT機器に対して、ネットワークスキャンを行い、セキュリティ対策が各IoT機器になされているかを調査する必要がある。
【0005】
ネットワークスキャンは、ネットワークの接続状態および脆弱なデバイスを調査および検出するための重要な方法である(非特許文献1,2)。ネットワークスキャンによって、スキャナは、応答遅延およびポート使用状態のようなターゲットとするIoT機器の情報を取得する。そして、これらのネットワークスキャン結果は、ネットワーク機器をモニターし、混雑状態をチェックし、脆弱なIoT機器を識別するためにネットワーク管理者を助ける。
【先行技術文献】
【非特許文献】
【0006】
【文献】K. Yano, N. Egashira, T. Kurihara, S. Shimizu, and Y. Suzuki, “Research and Development on Wide Area Network Scan Techniques for IoT Wireless Equipment,” IEICE Tech. Rep., pp.203-208, NS2019-85, July 2019.
【文献】R. Das, N. Baranasuriya, V. Padmanabhan, C. Rodbro, and S. Gilbert, “Informed Bandwidth Adaptation in Wi-Fi Networks using Ping-Pair,” Proc. CoNEXT 2017, pp.376-388, Dec 2017.
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、従来では、マルチホップ端末装置に対するスケジューリングを考慮せずにネットワークスキャンを実行するときのスキャンスケジュールを作成する。その結果、マルチホップ端末装置へのネットワークスキャンは、シングルホップ端末装置に対するネットワークスキャンで想定している以上の無線リソースを必要とするため、無線区間が混雑し、ネットワークスキャンの失敗またはスキャンパケットの再送が発生するという問題がある。特に、Wi-SUN(Wireless Smart Utility Network)では、マルチホップ通信を前提としているため、マルチホップ端末装置に対するスケジューリングを考慮せずにネットワークスキャンを実行すると、ネットワークスキャンの失敗またはスキャンパケットの再送が発生するという問題が顕在化する。
【0008】
そこで、この発明の実施の形態によれば、マルチホップ通信によるネットワークスキャンを実行するときの無線リソースを低減可能なネットワークスキャン装置を提供する。
【0009】
また、この発明の実施の形態によれば、マルチホップ通信によるネットワークスキャンを実行するときの無線リソースの低減をコンピュータに実行させるためのプログラムを提供する。
【0010】
更に、この発明の実施の形態によれば、マルチホップ通信によるネットワークスキャンを実行するときの無線リソースの低減をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【課題を解決するための手段】
【0011】
(構成1)
この発明の実施の形態によれば、ネットワークスキャン装置は、ネットワークスキャンを実行するときに使用する複数の第1のネットワークの無線通信区間におけるホップ段数を推定するネットワークスキャン装置であって、スキャン手段と、記録手段と、推定手段と、スケジュール作成手段とを備える。スキャン手段は、複数の第1のネットワークを使用して複数の端末装置の複数のIPアドレスに対してスキャンパケットを送信してネットワークスキャンを実行する。記録手段は、スキャンパケットを送信してからスキャン応答を受信するまでの時間であるスキャン応答遅延を計測し、その計測した計測スキャン応答遅延をIPアドレスに対応付けて記録する記録処理を複数の端末装置の全てについて実行する。推定手段は、ネットワークスキャン装置と端末装置との間に有線通信区間と1ホップからなる無線通信区間とが存在する第2のネットワークを想定して計測スキャン応答遅延から第2のネットワークにおける有線通信区間の遅延を減算した第1の減算結果を第2のネットワークにおける無線通信区間の最小遅延と比較してホップ段数を推定する推定処理を複数の端末装置の全てについて実行する。スケジュール作成手段は、推定手段によって推定されたホップ段数が第1のホップ段数であるときネットワークスキャンにおけるスキャンパケットの通信速度を第1の通信速度に設定し、推定手段によって推定されたホップ段数が第1のホップ段数よりも多い第2のホップ段数であるときスキャンパケットの通信速度を第1の通信速度よりも低い第2の通信速度に設定してネットワークスキャンのスキャンスケジュールを作成する。そして、スキャン手段は、スケジュール作成手段によって作成されたスキャンスケジュールに従ってネットワークスキャンを実行する。
【0012】
(構成2)
構成1において、推定手段は、推定処理において、計測スキャン応答遅延の最小値から第2のネットワークにおける有線通信区間の遅延を減算して第1の減算結果の最小値を算出し、第2のネットワークにおける無線通信区間の最小遅延に基づいて複数のしきい値を算出し、第1の減算結果の最小値を複数のしきい値と比較してホップ段数を推定する。
【0013】
(構成3)
構成2において、複数のしきい値は、Th~Th(Nは、2以上の整数)からなる。推定手段は、推定処理において、第2のネットワークにおける無線通信区間の最小遅延を基準値に設定し、第2のネットワークにおける無線通信区間の最小遅延から第2のネットワークにおける有線通信区間の平均遅延を減算して第2の減算結果を算出し、Th=(基準値)+(第2の減算結果)×Nによって複数のしきい値を算出し、第1の減算結果の最小値を、算出した複数のしきい値と比較してホップ段数を推定する。
【0014】
(構成4)
構成1において、推定手段は、推定処理において、計測スキャン応答遅延の最小値から第2のネットワークにおける有線通信区間の平均遅延を減算して第1の減算結果の最小値を算出し、第2のネットワークにおける無線通信区間の最小遅延を第1のしきい値に設定し、第2のネットワークにおける無線通信区間の最小遅延から第2のネットワークにおける有線通信区間の平均遅延を減算して第2の減算結果を算出し、第1のしきい値に第2の減算結果を加算して第2のしきい値を算出し、第1の減算結果の最小値から第1のしきい値を減算して第3の減算結果を算出し、第2のしきい値から第1のしきい値を減算して第4の減算結果を算出し、第3の減算結果が負であるとき、ホップ段数を“1”と推定し、第3の減算結果が零以上であるとき、第3の減算結果を第4の減算結果で除算した除算結果を切り上げて得られる整数に1を加算した加算結果をホップ段数として推定する。
【0015】
(構成5)
構成1において、推定手段は、推定処理において、計測スキャン応答遅延の平均値から第2のネットワークにおける有線通信区間の遅延を減算して第1の減算結果の平均値を算出し、第2のネットワークにおける無線通信区間の最小遅延に基づいて複数のしきい値を算出し、第1の減算結果の平均値を複数のしきい値と比較してホップ段数を推定する。
【0016】
(構成6)
構成5において、複数のしきい値は、Th~Th(Nは、2以上の整数)からなる。推定手段は、推定処理において、第2のネットワークにおける無線通信区間の最小遅延と第2のネットワークにおける無線通信区間の最小遅延の2倍との中点を基準値に設定し、第2のネットワークにおける無線通信区間の最小遅延から第2のネットワークにおける有線通信区間の平均遅延を減算して第2の減算結果を算出し、Th=(基準値)+(第2の減算結果)×Nによって複数のしきい値を算出し、第1の減算結果の平均値を、算出した複数のしきい値と比較してホップ段数を推定する。
【0017】
(構成7)
構成1において、推定手段は、推定処理において、計測スキャン応答遅延の平均値から第2のネットワークにおける有線通信区間の平均遅延を減算して第1の減算結果の平均値を算出し、第2のネットワークにおける無線通信区間の最小遅延から第2のネットワークにおける有線通信区間の平均遅延を減算して第2の減算結果を算出し、その算出した第2の減算結果を第2のネットワークにおける無線通信区間の最小遅延と第2のネットワークにおける無線通信区間の最小遅延の2倍との中点からなる基準値に加算して第1のしきい値を算出し、第1のしきい値に第2の減算結果を加算して第2のしきい値を算出し、第1の減算結果の平均値から第1のしきい値を減算して第3の減算結果を算出し、第2のしきい値から第1のしきい値を減算して第4の減算結果を算出し、第3の減算結果が負であるとき、ホップ段数を“1”と推定し、第3の減算結果が零以上であるとき、第3の減算結果(D)を第4の減算結果(D)で除算した除算結果を切り上げて得られる整数に1を加算した加算結果をホップ段数として推定する。
【0018】
(構成8)
構成1から構成7のいずれかにおいて、ネットワークスキャン装置は、判定手段を更に備える。判定手段は、複数の第1のネットワークの種別を複数の端末装置の属性として判定する。推定手段は、推定処理において、端末装置の属性に対応する計測スキャン応答遅延から第2のネットワークにおける有線通信区間の遅延を減算した第1の減算結果を第2のネットワークにおける無線通信区間の最小遅延と比較してホップ段数を推定する。
【0019】
(構成9)
構成1から構成8のいずれかにおいて、スケジュール作成手段は、更に、第3のしきい値以上である計測スキャン応答遅延の個数をスキャン応答の個数で除算したときの比が第4のしきい値よりも大きくないとき、スキャンパケットの通信速度を維持し、または第1の通信速度よりも高い第3の通信速度に設定してネットワークスキャンのスキャンスケジュールを作成する。
【0020】
(構成10)
また、この発明の実施の形態によれば、プログラムは、ネットワークスキャンを実行するときに使用する複数の第1のネットワークの無線通信区間におけるホップ段数の推定をコンピュータに実行させるプログラムであって、
スキャン手段が、複数の第1のネットワークを使用して複数の端末装置の複数のIPアドレスに対してスキャンパケットを送信してネットワークスキャンを実行する第1のステップと、
記録手段が、スキャンパケットを送信してからスキャン応答を受信するまでの時間であるスキャン応答遅延を計測し、その計測した計測スキャン応答遅延をIPアドレスに対応付けて記録する記録処理を複数の端末装置の全てについて実行する第2のステップと、
推定手段が、ネットワークスキャン装置と端末装置との間に有線通信区間と1ホップからなる無線通信区間とが存在する第2のネットワークを想定して計測スキャン応答遅延から第2のネットワークにおける有線通信区間の遅延を減算した第1の減算結果(α)を第2のネットワークにおける無線通信区間の最小遅延と比較してホップ段数を推定する推定処理を複数の端末装置の全てについて実行する第3のステップと、
スケジュール作成手段が、第3のステップにおいて推定されたホップ段数が第1のホップ段数であるときネットワークスキャンにおけるスキャンパケットの通信速度を第1の通信速度に設定し、推定手段によって推定されたホップ段数が第1のホップ段数よりも多い第2のホップ段数であるときスキャンパケットの通信速度を第1の通信速度よりも低い第2の通信速度に設定してネットワークスキャンのスキャンスケジュールを作成する第4のステップとをコンピュータに実行させ、
スキャン手段は、第1のステップにおいて、第4のステップにおいて作成されたスキャンスケジュールに従ってネットワークスキャンを実行する、コンピュータに実行させるためのプログラムである。
【0021】
(構成11)
構成10において、推定手段は、第3のステップの推定処理において、計測スキャン応答遅延の最小値から第2のネットワークにおける有線通信区間の遅延を減算して第1の減算結果の最小値を算出し、第2のネットワークにおける無線通信区間の最小遅延に基づいて複数のしきい値を算出し、第1の減算結果の最小値を複数のしきい値と比較してホップ段数を推定する。
【0022】
(構成12)
構成11において、複数のしきい値は、Th~Th(Nは、2以上の整数)からなる。推定手段は、第3のステップの推定処理において、第2のネットワークにおける無線通信区間の最小遅延を基準値に設定し、第2のネットワークにおける無線通信区間の最小遅延から第2のネットワークにおける有線通信区間の平均遅延を減算して第2の減算結果を算出し、Th=(基準値)+(第2の減算結果)×Nによって複数のしきい値を算出し、第1の減算結果の最小値を算出した複数のしきい値と比較してホップ段数を推定する。
【0023】
(構成13)
構成10において、推定手段は、第3のステップの推定処理において、計測スキャン応答遅延の最小値から第2のネットワークにおける有線通信区間の平均遅延を減算して第1の減算結果の最小値を算出し、第2のネットワークにおける無線通信区間の最小遅延を第1のしきい値に設定し、第2のネットワークにおける無線通信区間の最小遅延から第2のネットワークにおける有線通信区間の平均遅延を減算して第2の減算結果を算出し、第1のしきい値に第2の減算結果を加算して第2のしきい値を算出し、第1の減算結果の最小値から第1のしきい値を減算して第3の減算結果を算出し、第2のしきい値Th2から第1のしきい値を減算して第4の減算結果を算出し、第3の減算結果が負であるとき、ホップ段数を“1”と推定し、第3の減算結果が零以上であるとき、第3の減算結果を第4の減算結果で除算した除算結果を切り上げて得られる整数に1を加算した加算結果をホップ段数として推定する。
【0024】
(構成14)
構成10において、推定手段は、第3のステップの推定処理において、計測スキャン応答遅延の平均値から第2のネットワークにおける有線通信区間の遅延を減算して第1の減算結果の平均値を算出し、第2のネットワークにおける無線通信区間の最小遅延に基づいて複数のしきい値を算出し、第1の減算結果の平均値を複数のしきい値と比較してホップ段数を推定する。
【0025】
(構成15)
構成14において、複数のしきい値は、Th~Th(Nは、2以上の整数)からなる。推定手段は、第3のステップの推定処理において、第2のネットワークにおける無線通信区間の最小遅延と第2のネットワークにおける無線通信区間の最小遅延の2倍との中点を基準値に設定し、第2のネットワークにおける無線通信区間の最小遅延から第2のネットワークにおける有線通信区間の平均遅延を減算して第2の減算結果を算出し、Th=(基準値)+(第2の減算結果)×Nによって複数のしきい値を算出し、第1の減算結果の平均値を算出した複数のしきい値と比較してホップ段数を推定する。
【0026】
(構成16)
構成10において、推定手段は、第3のステップの推定処理において、計測スキャン応答遅延の平均値から第2のネットワークにおける有線通信区間の平均遅延を減算して第1の減算結果の平均値を算出し、第2のネットワークにおける無線通信区間の最小遅延から第2のネットワークにおける有線通信区間の平均遅延を減算して第2の減算結果を算出し、その算出した第2の減算結果を第2のネットワークにおける無線通信区間の最小遅延と第2のネットワークにおける無線通信区間の最小遅延の2倍との中点からなる基準値に加算して第1のしきい値を算出し、第1のしきい値に第2の減算結果を加算して第2のしきい値を算出し、第1の減算結果の平均値から第1のしきい値を減算して第3の減算結果を算出し、第2のしきい値から第1のしきい値を減算して第4の減算結果を算出し、第3の減算結果が負であるとき、ホップ段数を“1”と推定し、第3の減算結果が零以上であるとき、第3の減算結果を第4の減算結果(で除算した除算結果を切り上げて得られる整数に1を加算した加算結果をホップ段数として推定する。
【0027】
(構成17)
構成10から構成16のいずれかにおいて、プログラムは、判定手段が、複数の第1のネットワークの種別を複数の端末装置の属性として判定する第5のステップを更にコンピュータに実行させ、
推定手段は、第3のステップの推定処理において、端末装置の属性に対応する計測スキャン応答遅延から第2のネットワークにおける有線通信区間の遅延を減算した第1の減算結果を第2のネットワークにおける無線通信区間の最小遅延と比較してホップ段数を推定する。
【0028】
(構成18)
構成10から構成17のいずれかにおいて、スケジュール作成手段は、第4のステップにおいて、更に、第3のしきい値以上である計測スキャン応答遅延の個数をスキャン応答の個数で除算したときの比が第4のしきい値よりも大きくないとき、スキャンパケットの通信速度を維持し、または第1の通信速度よりも高い第3の通信速度に設定してネットワークスキャンのスキャンスケジュールを作成する。
【0029】
(構成19)
更に、この発明の実施の形態によれば、記録媒体は、構成10から構成18のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【0030】
マルチホップ通信によるネットワークスキャンを実行するときの無線リソースを低減できる。
【図面の簡単な説明】
【0031】
図1】この発明の実施の形態における通信システムの概略図である。
図2図1に示すネットワークスキャン装置の概略図である。
図3図2に示すホスト情報データベースに格納される対応表の概念図である。
図4図2に示すホスト情報データベースに格納される別の対応表の概念図である。
図5図4に示す対応表に格納される対応表の概念図である。
図6】スキャンスケジュールの概念図である。
図7】1ホップの遅延時間を算出する方法を説明するための図である。
図8】ネットワーク種別、最小スキャン応答遅延および平均スキャン応答遅延の対応表を示す図である。
図9】ネットワーク種別がWired LANであるときのスキャン応答遅延とネットワークスキャンの回数との関係を示す図である。
図10】ネットワーク種別がWired LANであるときのスキャン応答遅延の確率分布関数を示す図である。
図11】ネットワーク種別がWLAN、Wi-SUNおよびLoRaであるときのスキャン応答遅延とネットワークスキャンの回数との関係を示す図である。
図12】ネットワーク種別がWLANであるときのスキャン応答遅延の確率分布関数を示す図である。
図13】ネットワーク種別がWi-SUNであるときのスキャン応答遅延の確率分布関数を示す図である。
図14】ネットワーク種別がLoRaであるときのスキャン応答遅延の確率分布関数を示す図である。
図15】ネットワークの概念図である。
図16】ネットワークNW1-1,NW2-1における遅延時間の概念図である。
図17】ネットワークNW1-2,NW2-2における遅延時間の概念図である。
図18】しきい値Thi_Nの概念図である。
図19】しきい値Thi_Nを算出する方法を説明するための図である。
図20】しきい値Thi_Nを算出する別の方法を説明するための図である。
図21】しきい値Thi_Nを用いたホップ段数の推定方法を説明するための図である。
図22】αとしきい値Thi_1,Thi_2とを用いてホップ段数を算出する方法について説明するための図である。
図23】リストLS1の概念図である。
図24】リストLS2の概念図である。
図25】リストLS3の概念図である。
図26】リストLS4の概念図である。
図27】スキャンパケットの通信速度を制御する方法を説明するための図である。
図28】スキャンパケットの通信速度の制御を示す概念図である。
図29図2に示すネットワークスキャン装置の動作を説明するためのフローチャートである。
図30図29のステップS1の詳細な動作を説明するためのフローチャートである。
図31図30のステップS14の詳細な動作を説明するためのフローチャートである。
図32図30のステップS15の詳細な動作を説明するためのフローチャートである。
図33図29のステップS2の詳細な動作を説明するためのフローチャートである。
図34図33のステップS34の詳細な動作を説明するためのフローチャートである。
図35図33のステップS34の詳細な動作を説明するための別のフローチャートである。
図36図29のステップS2の詳細な動作を説明するための別のフローチャートである。
図37図36のステップS34Aの詳細な動作を説明するためのフローチャートである。
図38図36のステップS34Aの詳細な動作を説明するための別のフローチャートである。
図39図29のステップS3の詳細な動作を説明するためのフローチャートである。
図40図1に示すネットワークスキャン装置の別の概略図である。
図41】複数のネットワークにおけるスキャン応答遅延SRTTの累積分布関数を示す図である。
図42】スキャンパケットの通信速度とネットワーク種別との関係を示す対応表TBL5の概念図である。
図43図40に示すネットワークスキャン装置の動作を説明するためのフローチャートである。
図44図43に示すステップS3Aの詳細な動作を説明するためのフローチャートである。
図45図44に示すステップS3-3Aの詳細な動作を説明するためのフローチャートである。
図46】最小スキャン応答遅延をしきい値として用いたときのネットワーク種別を判定する実験結果を示す図である。
図47】平均スキャン応答遅延をしきい値として用いたときのネットワーク種別を判定する実験結果を示す図である。
【発明を実施するための形態】
【0032】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【0033】
図1は、この発明の実施の形態における通信システムの概略図である。図1を参照して、この発明の実施の形態による通信システム10は、ネットワークスキャン装置1と、インターネットプロバイダISPと、基地局BS1~BS4と、端末装置TM1~TM5とを備える。
【0034】
ネットワークスキャン装置1、インターネットプロバイダISP(Internet Service Provider)、基地局BS1~BS4および端末装置TM1~TM5は、通信空間に配置される。
【0035】
インターネットプロバイダISPは、ネットワークNW1の通信事業者である。基地局BS1~BS4は、それぞれ、ネットワークNW2~NW5の基地局である。ネットワークNW1は、例えば、有線LAN(Wired LAN)であり、ネットワークNW2は、例えば、無線LAN(WLAN)であり、ネットワークNW3は、例えば、Wi-SUN(Wireless Smart Utility Network)であり、ネットワークNW4は、例えば、LoRa(Long Range)であり、ネットワークNW5は、例えば、LTE(Long Term Evolution)である。ネットワークNW1~NW5は、相互に異なる通信規格に従って通信を行う。
【0036】
端末装置TM1~TM5は、それぞれ、ネットワークNW1~NW5内に配置され、インターネットプロバイダISPおよび基地局BS1~BS4と通信を行う。
【0037】
なお、図1においては、ネットワークNW1~NW5のそれぞれにおいて、1個の端末装置が図示されているが、実際には、ネットワークNW1~NW5のそれぞれにおいて、複数の端末装置が存在する。
【0038】
この発明の実施の形態においては、端末装置TM1~TM5の各々が無線端末である場合があり、端末装置TM1~TM5の一部が無線端末からなり、かつ、残りが有線端末からなる場合もある。
【0039】
端末装置TM1は、有線を介してインターネットプロバイダISPに接続される。
【0040】
端末装置TM2~TM5は、それぞれ、無線通信によって基地局BS1~BS4と通信を行う。
【0041】
ネットワークスキャン装置1は、後述する方法によって、端末装置TM1~TM5に対してネットワークスキャンを行い、ネットワークNW1~NW5の種別を判定する。また、ネットワークスキャン装置1は、後述する方法によって、端末装置TM1~TM5までの無線通信区間におけるホップ段数を推定するとともに、その推定したホップ段数に応じたスキャンスケジュールを作成してネットワークスキャンを実行する。
【0042】
図2は、図1に示すネットワークスキャン装置1の概略図である。図2を参照して、ネットワークスキャン装置1は、ネットワークスキャナ11と、スキャン解析マネージャ12と、ホスト情報データベース13と、スキャンスケジューラ14とを備える。
【0043】
ネットワークスキャナ11は、スキャンスケジューラ14からスキャンスケジュールを受ける。そして、ネットワークスキャナ11は、1,2,3,・・・,g(gは、3以上の整数)のいずれかの数値に設定されたTTL(Time To Live)を含むg個のスキャンパケット(例えば、Pingパケットなど)を生成する。そうすると、ネットワークスキャナ11は、スキャンスケジュールに基づいて、g個のPingパケットを送信し、スキャン対象のネットワーク20に接続された端末装置に対してネットワークスキャンを行う。
【0044】
そして、ネットワークスキャナ11は、ネットワーク20に接続された端末装置からネットワークスキャンのスキャン応答を受信し、その受信したスキャン応答をユーザ(ネットワークセキュリティ等からなる)30およびスキャン解析マネージャ12へ出力する。
【0045】
スキャン解析マネージャ12は、ネットワークスキャナ11からスキャン応答を受け、ネットワークスキャン中に通信ログを受ける。そして、スキャン解析マネージャ12は、スキャン応答に基づいてスキャン対象の端末装置のアドレスと、スキャン応答とを対応付けたスキャン結果を生成し、その生成したスキャン結果をホスト情報データベース13に格納することによってホスト情報データベース13を作成または更新する。
【0046】
また、スキャン解析マネージャ12は、複数の端末装置を対象とするネットワークスキャンのスキャン応答遅延に基づいて、後述する方法によって、ネットワーク20(ネットワークNW1~NW5)の種別を判定する。
【0047】
更に、スキャン解析マネージャ12は、スキャン応答遅延に基づいて、後述する方法によって端末装置までの無線通信区間におけるホップ段数を推定する。
【0048】
ホスト情報データベース13は、スキャン結果を記憶する。
【0049】
スキャンスケジューラ14は、ホスト情報データベース13からスキャン結果を読み出す。また、スキャンスケジューラ14は、スキャン要件をユーザ30から受ける。スキャンスケジューラ14は、ネットワークスキャンを行う領域(例えば、日本国内)に存在する全ての端末装置のグローバルIPアドレスおよびドメイン名を予め保持している。
【0050】
そして、スキャンスケジューラ14は、スキャン要件およびスキャン結果に基づいて、後述する方法によって、ネットワークスキャンのスキャンタイミングと各スキャンタイミングにおけるネットワークスキャンの対象となる端末装置とを対応付けたスキャンスケジュールを作成する。そうすると、スキャンスケジューラ14は、スキャンスケジュールをネットワークスキャナ11へ出力してスキャンスケジュールに従ってネットワークスキャンを実行するようにネットワークスキャナ11を制御する。
【0051】
図3は、図2に示すホスト情報データベース13に格納される対応表の概念図である。なお、対応表TBL1は、ネットワークの種別を判定するときの対応表である。
【0052】
図3を参照して、対応表TBL1は、時刻tと、IPアドレスAdd(i=1~m、mは、端末装置の総数)と、IPアドレスAddi_jと、ドメイン名DNと、基地局と、スキャン応答SRと、スキャン応答遅延SRTTと、仮判定と、仮判定回数と、最終判定とを含む。時刻t、IPアドレスAdd、IPアドレスAddi_j、ドメイン名DN、基地局、スキャン応答SR、スキャン応答遅延SRTT、仮判定、仮判定回数および最終判定は、相互に対応付けられる。
【0053】
時刻tは、YYYY/MM/DD/hh/mm/ss(年/月/日/時/分/秒)によって表される。そして、時刻tは、ネットワークスキャンにおけるPingパケットをネットワークスキャンの対象である端末装置へ送信した時間を表す。
【0054】
IPアドレスAddは、ネットワークスキャンの対象である端末装置のグローバルIPアドレスからなる。
【0055】
IPアドレスAddi_jは、ネットワークスキャン装置1からネットワークスキャンの対象である端末装置(IPアドレスAddを有する端末装置)までの間に存在するルータのIPアドレスからなる。IPアドレスAdd1_1,Add1_2は、IPアドレスAddに対応付けられ、ネットワークスキャン装置1と、IPアドレスAddを有する端末装置との間に存在するルータを表す。IPアドレスAdd2_1,Add2_2,Add2_3は、IPアドレスAddに対応付けられ、ネットワークスキャン装置1と、IPアドレスAddを有する端末装置との間に存在するルータを表す。IPアドレスAdd3_1は、IPアドレスAddに対応付けられ、ネットワークスキャン装置1と、IPアドレスAddを有する端末装置との間に存在するルータを表す。IPアドレスAdd4_1,Add4_2、・・・、IPアドレスAddm-1_1およびIPアドレスAddm_1についても同様である。従って、IPアドレスAddi_jにおける“j”は、正の整数からなる。また、IPアドレスAdd1_1,Add1_2およびIPアドレスAdd2_1,Add2_2,Add2_3は、相互に一致する場合、一部が相互に一致する場合、および相互に異なる場合がある。図3に示すルータのIPアドレスAdd1_1,Add1_2;IPアドレスAdd2_1,Add2_2,Add2_3;IPアドレスAdd3_1;IPアドレスAdd4_1,Add4_2;・・・;IPアドレスAddm-1_1およびIPアドレスAddm_1の任意の複数のIPアドレス間(IPアドレスAdd2_1,Add2_2,Add2_3とIPアドレスAdd4_1,Add4_2との間、およびIPアドレスAdd4_1,Add4_2とIPアドレスAddm-1_1との間等)についても同様である。
【0056】
ドメイン名DNは、IPアドレスAddに基づいてPTR(PoinTeR record)レコードを用いて変換されたものである。
【0057】
基地局、スキャン応答SR、スキャン応答遅延SRTT、仮判定、仮判定回数および最終判定は、端末装置iのIPアドレスAddに対応して設けられる。
【0058】
スキャン応答SRは、端末装置iのIPアドレスAddに対応付けられている。対応表TBL1において、スキャン応答SR1_1,SR1_2、・・・は、端末装置1のIPアドレスAddからのスキャン応答を表し、スキャン応答SR3_1,SR3_2、・・・は、端末装置3のIPアドレスAddからのスキャン応答を表し、スキャン応答SRm-1_1,SRm-1_2、・・・は、端末装置m-1のIPアドレスAddm-1からのスキャン応答を表す。なお、1つのIPアドレスAddに対して複数のスキャン応答SRが存在するのは、1つのIPアドレスAddの複数のポートに対してネットワークスキャンが実行されるからである。
【0059】
スキャン応答SR1_1,SR1_2、・・・;スキャン応答SR3_1,SR3_2、・・・;・・・;スキャン応答SRm-1_1,SRm-1_2、・・・の各々は、スキャン応答が返って来たとき、“1”からなり、スキャン応答が返って来なかったとき、“0”からなる。
【0060】
なお、この発明の実施の形態においては、端末装置iのIPアドレスAddごとにネットワークスキャンの結果を知りたいので、上述したように、スキャン応答SRは、端末装置iのIPアドレスAddに対応付けられている。従って、端末装置iの複数のポート番号の少なくとも1つのポート番号からスキャン応答が返って来たとき、スキャン応答SRは、1からなり、端末装置iの複数のポート番号の全てからスキャン応答が返って来なかったとき、スキャン応答SRは、0からなる。
【0061】
図3においては、端末装置から返って来たスキャン応答SRについては、返って来たスキャン応答SRの個数分のスキャン応答がホスト情報データベース13に格納される。これは、上述したように、ネットワークスキャンは、g個のPingパケットを送信して行われるため、最大でg個のスキャン応答SRが返って来る。g個のスキャン応答SRのうち、少なくとも1個のスキャン応答SRが返って来れば、スキャン応答が返って来たことを示す“1”ではなく、返って来た個数分のスキャン応答SRが対応表TBL1に格納されている。
【0062】
スキャン応答遅延SRTTは、Pingパケットを送信した時刻からスキャン応答SRが返って来るまでの時間からなる。対応表TBL1においては、スキャン応答遅延SRTT1_1,SRTT1_2,・・・は、端末装置1のIPアドレスAddに対してネットワークスキャンを実行したときのスキャン応答遅延を表し、スキャン応答遅延SRTT3_1,SRTT3_2,・・・は、端末装置3のIPアドレスAddに対してネットワークスキャンを実行したときのスキャン応答遅延を表し、スキャン応答遅延SRTTm-1_1,SRTTm-1_2,・・・は、端末装置m-1のIPアドレスAddm-1に対してネットワークスキャンを実行したときのスキャン応答遅延を表す。そして、スキャン応答遅延SRTTは、スキャン応答SRが返って来たことに基づいて計測されるので、対応表TBL1には、返って来たスキャン応答SRの個数と同じ個数のスキャン応答遅延SRTTが格納される。従って、例えば、スキャン応答遅延SRTT1_1,SRTT1_2,・・・は、それぞれ、スキャン応答SR1_1,SR1_2に対応付けられている。スキャン応答遅延延SRTT1_1,SRTT1_2,・・・以外のスキャン応答遅延延SRTT3_1,SRTT3_2、・・・等についても同様である。
【0063】
仮判定は、後述する方法によって判定されたネットワークの種別Typeからなる。種別Typeは、種別Type1~Type5のいずれかからなる。種別Type1は、Wired LANからなり、種別Type2は、WLANからなり、種別Type3は、Wi-SUNからなり、種別Type4は、LoRaからなり、種別Type5は、LTEからなる。
【0064】
仮判定回数は、仮判定に含まれる1個以上の種別に対応付けられた1個以上の仮判定回数からなる。仮判定回数Nd_1_1,Nd_1_2,Nd_1_3は、端末装置1のIPアドレスAddに対してネットワークスキャンを実行したときのネットワーク種別の仮判定回数を表し、仮判定回数Nd_3_1,Nd_3_2は、端末装置3のIPアドレスAddに対してネットワークスキャンを実行したときのネットワーク種別の仮判定回数を表し、仮判定回数Nd_m-1_1,Nd_m-1_2,Nd_m-1_3,Nd_m-1_4は、端末装置m-1のIPアドレスAddm-1に対してネットワークスキャンを実行したときのネットワーク種別の仮判定回数を表す。そして、仮判定回数は、対象ネットワークの種別を種別Type(種別Type1~Type5のいずれか)と仮判定した回数からなる。例えば、仮判定回数Nd_1_1は、対象ネットワークの種別を種別Type3と仮判定した回数からなる。他の仮判定回数Nd_1_2,Nd_1_3,Nd_3_1,Nd_3_2,Nd_m-1_1,Nd_m-1_2,Nd_m-1_3,Nd_m-1_4についても同様である。
【0065】
最終判定は、最も多い仮判定回数に対応付けられた仮判定からなる。例えば、種別Type3からなる最終判定は、種別Type1,Type3,Type4のうち、仮判定回数が最も多い仮判定回数Nd_1_1に対応付けられた種別Type3からなる。また、IPアドレスAddm-1に対応付けられた最終判定が“unknown”であるのは、仮判定回数Nd_m-1_1,Nd_m-1_2,Nd_m-1_3,Nd_m-1_4のうちの複数の仮判定回数が最も多く、相互に同じ回数であったためである。このように、仮判定回数が同じであるネットワーク種別が複数存在するとき、ネットワーク種別が“unknown”であると判定する。なお、“unknown”は、ネットワークの種別が不明であることを示す。
【0066】
図4は、図2に示すホスト情報データベース13に格納される別の対応表の概念図である。なお、対応表TBL2は、ネットワークの無線通信区間のホップ段数を推定するときの対応表である。
【0067】
図4を参照して、対応表TBL2は、スキャン実施回数s(s=1~S)と、対応表TBL3_sとを含む。スキャン実施回数sおよび対応表TBL3_sは、相互に対応付けられる。
【0068】
スキャン実施回数sは、ネットワークスキャンが実行された回数を示す。そして、スキャン実施回数Sは、ホップ段数を推定する時点におけるスキャン実施回数を示す。また、スキャン実施回数1~S-1は、過去のネットワークスキャンの実施回数である。
【0069】
対応表TBL2は、常に、S(Sは、2以上の整数)個の対応表TBL3_1~TBL3_Sを含む。そして、対応表TBL3_Sよりも新しい対応表TBL3_S+1が対応表TBL2に格納されたとき、最も古い対応表TBL3_1が削除される。
【0070】
図5は、図4に示す対応表TBL2に格納される対応表TBL3の概念図である。図5を参照して、対応表TBL3は、時刻t’と、IPアドレスAdd’と、ポート番号PNと、スキャン応答SRと、スキャン応答遅延SRTTと、αと、最小値αi_MINと、平均値αi_AVEと、属性ATBと、有線通信区間の平均遅延RRTTi_AVEと、無線通信区間の最小遅延WRTTi_MINと、ホップ段数Nとを含む。
【0071】
時刻t’、IPアドレスAdd’、ポート番号PN、スキャン応答SR、スキャン応答遅延SRTT、α、最小値αi_MIN、平均値αi_AVE、属性ATB、有線通信区間の平均遅延RRTTi_AVE、無線通信区間の最小遅延WRTTi_MINおよびホップ段数Nは、相互に対応付けられる。
【0072】
対応表TBL3においては、ドメイン名DNおよび基地局が格納されていないが、実際には、ドメイン名DNおよび基地局も格納されている。
【0073】
時刻t’は、YYYY/MM/DD/hh/mm/ss(年/月/日/時/分/秒)によって表される。そして、時刻t’は、ネットワークスキャンにおけるPingパケットをネットワークスキャンの対象である端末装置へ送信した時間を表す。
【0074】
IPアドレスAdd’は、ネットワークスキャンの対象である端末装置のグローバルIPアドレスからなる。
【0075】
ポート番号PNは、IPアドレスAdd’のポート番号である。スキャン応答SRおよびスキャン応答遅延SRTTは、図3において説明したとおりである。そして、対応表TBL3においては、スキャン応答SRおよびスキャン応答遅延SRTTは、ポート番号PNに対応付けられる。
【0076】
αは、スキャン応答遅延SRTTから有線通信区間の平均遅延RRTTi_AVEを減算した減算結果からなる。そして、αは、ポート番号PNに対応付けられる。対応表TBL3において、α1_1,α1_2は、IPアドレスAdd’に対してネットワークスキャンを実行したときのαを表し、α2_1,α2_2は、IPアドレスAdd’に対してネットワークスキャンを実行したときのαを表し、α3_1,α3_2,α3_3は、IPアドレスAdd’に対してネットワークスキャンを実行したときのαを表し、αm-1_1,αm-1_2,αm-1_3は、IPアドレスAdd’m-1に対してネットワークスキャンを実行したときのαを表し、αm_1,αm_2,αm_3は、IPアドレスAdd’に対してネットワークスキャンを実行したときのαを表す。
【0077】
αi_MINは、αの最小値であり、IPアドレスAdd’に対応付けられる。そして、最小値αi_MINは、ポート番号PNに対応付けられた1個以上のαのうちの最小値を取るαのインデックスを選択することによって決定される。即ち、ポート番号PNに対応付けられたαがα,α,α(例えば、αが最小値)のように複数個存在する場合、最小値αi_MINは、複数個のα(α,α,α)のうちのインデックス“2”を有する最小値αからなる。この場合、複数個のα(α,α,α)のうちの最小値が複数個(例えば、α,αが最小値)存在する場合、最小値αi_MINは、複数個の最小値(=α,α)の任意の1つからなる。一方、ポート番号PNに対応付けられたαが1個である場合、最小値αi_MINは、その1個のαからなる。
【0078】
最小値αi_MINは、初回のネットワークスキャンが実行されたとき、必ず、更新される。また、最小値αi_MINは、2回目以降にネットワークスキャンが実行されたとき、新たに実行されたネットワークスキャンにおいて取得されるスキャン応答遅延SRTTに基づいて算出されたαを対応表TBL3に既に記録された最小値αi_MINと比較し、αが記録済の最小値αi_MINよりも小さいとき、記録済の最小値αi_MINを新たに算出されたαに置き換えて最小値αi_MINを更新する。一方、新たに算出されたαが記録済の最小値αi_MIN以上である場合、最小値αi_MINを更新しない。
【0079】
αi_AVEは、αの平均値であり、IPアドレスAdd’に対応付けられる。平均値αi_AVEは、次式によって算出されるD α_aveからなる。
【0080】
【数1】
【0081】
式(1)において、D α_aveは、S回目のネットワークスキャンを実施したときのαの平均値である。また、D α_qは、s回目のネットワークスキャンを実施したときのq(qは、正の整数)番目のスキャン応答に対応するαである。更に、N αは、s回目のネットワークスキャンを実施したときのαの個数である。対応表TBL3においては、αは、ポート番号PNに対応付けられるので、N αは、1~Ptotal(Ptotalは、ポートの総数)である。そして、式(1)の分母は、S回のネットワークスキャンを実施したときのαの総数を表す。
【0082】
このように、平均値αi_AVEは、過去(1回目からS-1回目)のネットワークスキャンにおけるαと、ホップ段数の推定時のネットワークスキャンにおけるαとの平均値からなる。
【0083】
なお、式(1)によって平均値αi_AVE(D α_ave=)を算出することは、平均値αi_AVEを更新することに相当する。
【0084】
属性ATBiは、図3の対応表TBL1に格納された最終判定からなる。
【0085】
有線通信区間の平均遅延RRTTi_AVEは、後述するネットワークスキャン装置1が想定しているネットワークにおける有線通信区間の平均遅延である。そして、有線通信区間の平均遅延RRTTi_AVEは、事前に、実験またはシミュレーションによって取得され、対応表TBL3に格納される。
【0086】
無線通信区間の最小遅延WRTTi_MINは、後述するネットワークスキャン装置1が想定しているネットワークにおける無線通信区間の最小遅延である。そして、無線通信区間の最小遅延WRTTi_MINは、事前に、実験またはシミュレーションによって取得され、対応表TBL3に格納される。
【0087】
ホップ段数Nは、端末装置に対して実際にネットワークスキャンを行うときのネットワークにおける無線通信区間の推定されたホップ数からなる。そして、ホップ段数Nが推定されていない場合、Nには、無効値からなる初期値が格納される。
【0088】
なお、図4に示す対応表TBL3_1~TBL3_Sの各々は、図5に示す対応表TBL3からなる。
【0089】
図6は、スキャンスケジュールの概念図である。図6を参照して、スキャンスケジュールSCSHDは、スキャン総時間長T_totalを有し、T(Tは、1以上の整数)個のスキャンタイミング1~スキャンタイミングTを含む。
【0090】
スキャン総時間長T_totalは、例えば、1日に設定され、スキャンタイミング1~スキャンタイミングTの各々は、例えば、1時間の時間長を有する。スキャンタイミングt(t=1~T)は、開始時刻tstartと、終了時刻tendと、対象アドレスAdd~Add(mは、1以上の整数)と、通信速度V~Vとを含む。
【0091】
開始時刻tstartは、スキャンタイミングtにおいてネットワークスキャンを開始する時刻を表し、終了時刻tendは、スキャンタイミングtにおいてネットワークスキャンを終了する時刻を表す。従って、ネットワークスキャナ11は、スキャンタイミングtにおいて終了時刻tendが到来すると、ネットワークスキャンを終了する。
【0092】
対象アドレスAdd~Addの各々は、グローバルIPアドレスからなる。そして、対象アドレスAdd~Addは、ネットワークスキャンの対象であるm個の端末装置を表す。
【0093】
通信速度V~Vは、ネットワークスキャンを行うときのスキャンパケットの通信速度である。そして、通信速度V~Vは、それぞれ、対象アドレスAdd~Addに対応付けられている。
【0094】
従って、ネットワークスキャナ11は、スキャンタイミングtにおいてネットワークスキャンを行うとき、対象アドレスAdd~Addに対して、それぞれ、通信速度V~Vでg個のスキャンパケットを送出する。
【0095】
なお、スキャンタイミングt以外のスキャンタイミング1~(t-1),(t+1)~Tの各々も、図6に示すスキャンタイミングtと同じ構成からなる。
【0096】
スキャンタイミング1~Tは、相互に同じ時間長(=tend-tstart)を有していてもよく、相互に異なる時間長(=tend-tstart)を有していてもよい。また、スキャンタイミング1~Tは、相互に同じ個数のIPアドレスを有していてもよく、相互に異なる個数のIPアドレスを有していてもよい。
【0097】
また、スキャンタイミングtは、1つの時刻を意味するのではなく、開始時刻tstartから終了時刻tendまでの所定の時間長を有する概念である。
【0098】
ネットワークスキャンの対象となるネットワークの種別を判定する方法について説明する。
【0099】
スキャン解析マネージャ12は、1つのスキャンタイミングtにおけるネットワークスキャンが終了すると、ホスト情報データベース13の対応表TBL1を参照して、1つのIPアドレスAddに対応付けられたスキャン応答SRおよびスキャン応答遅延SRTTを読み出す。
【0100】
そして、スキャン解析マネージャ12は、スキャン応答SRに含まれるTTLを検出する。この場合、スキャン解析マネージャ12は、IPアドレスAddに対応付けられたスキャン応答SR11,SR12,・・・からそれぞれTTL11,TTL12,・・・を検出する。
【0101】
TTLは、Pingパケットが端末装置からネットワークスキャン装置1へ返って来るまでのホップ数を表す。1台のルータを通過する度に1ホップ増加するため、TTLは、Pingパケットが端末装置からネットワークスキャン装置1へ返って来るまでに通過したルータの台数+1を示す数値である。
【0102】
スキャン解析マネージャ12は、TTL11,TTL12,・・・を検出すると、スキャン応答SR11,SR12,・・・に対応付けられたスキャン応答遅延SRTT11,SRTT12,・・・を検出する。そして、スキャン解析マネージャ12は、TTL11,TTL12,・・・およびスキャン応答遅延SRTT11,SRTT12,・・・に基づいて、1ホップの遅延時間を算出する。
【0103】
図7は、1ホップの遅延時間を算出する方法を説明するための図である。図7を参照して、ネットワークスキャン装置1と、ネットワークスキャンの対象となる端末装置との間には、K(Kは、1以上の整数)個のルータが存在する。
【0104】
TTL=1を含むPingパケットは、ルータ1まで到達し、TTL=2を含むPingパケットは、ルータ2まで到達し、以下、同様にして、TTL=K-1を含むPingパケットは、ルータK-1まで到達し、TTL=Kを含むPingパケットは、ルータKまで到達し、TTL=K+1を含むPingパケットは、端末装置まで到達する。
【0105】
端末装置は、Pingパケットを受信すると、Pingパケットからなるスキャン応答SRを送信する。スキャン応答SRは、端末装置からネットワークスキャン装置1までの間の各種の経路を経由してネットワークスキャン装置1に到達する。そして、スキャン応答SRは、ネットワークスキャン装置1に到達したとき、通過したルータの個数からなるTTLを含む。
【0106】
そこで、この発明の実施の形態においては、端末装置からネットワークスキャン装置1に到達したスキャン応答に含まれるTTLのうち、最小のTTLをネットワーク経路の段数とする。そして、図7においては、最小のTTLを“K+1”とする。
【0107】
そうすると、スキャン解析マネージャ12は、端末装置よりも1段手前のルータKからのスキャン応答SRに対応付けられたスキャン応答遅延SRTTをホスト情報データベース13の対応表TBL1から検出し、その検出したスキャン応答遅延SRTTをLast hop RTTとする。即ち、Last hop RTTは、端末装置からネットワークスキャン装置1へ到達したPingパケットに含まれるTTLによって表されるネットワークの段数K+1よりも1段だけ手前のルータKに対するスキャン応答遅延である。
【0108】
ネットワークスキャン装置1と端末装置との間に配置されたK個のルータ1~Kは、Pingパケットをネットワークスキャン装置1と端末装置との間で伝送するときの経路を制御する。従って、K個のルータ1~Kのうちスキャン応答SRが返って来たルータであり、かつ、端末装置に最も近いルータを「最近接ルータ」としたとき、ルータ1から最近接ルータまでの1個以上のルータを通過するときの経路段数を「経路制御段数」とする。その結果、ルータ1から最近接ルータまでの1個以上のルータは、通常、K個のルータ1~Kからなり、K個のルータ1~Kを通過するときの経路制御段数は、Kとなる。
【0109】
スキャン解析マネージャ12は、式(1)によって1ホップの遅延時間を算出する。
【0110】
1ホップの遅延時間=(Last hop RTT)/(経路制御段数)・・・(1)
Last hop RTTを用いて、1ホップの遅延時間を算出するのは、送信したい情報を含むパケットを送信先の端末装置へ送信する場合、送信先の端末装置は、最終的に、1個のルータを介してパケットを受信するので、ルータKと端末装置とからなるネットワークをネットワークスキャンの対象である対象ネットワークとするためである。また、TTL=K+1を含むPingパケットがルータKまで到達した後、ルータKを通過するスキャン応答SRは、端末装置によって送信されたものであり、ネットワークスキャン装置1からルータKまでのスキャン応答遅延RTTと、ネットワークスキャン装置1から端末装置までのスキャン応答遅延RTTとを区別できないからである。
【0111】
その結果、1ホップの遅延時間は、K個のルータ1~Kにおける遅延時間の平均遅延時間からなる。
【0112】
また、1ホップの遅延時間は、複数の端末装置について算出された複数の1ホップ当たりの遅延時間の平均値からなっていてもよい。
【0113】
このように、この発明の実施の形態においては、ネットワークスキャンは、ネットワークスキャン装置1からネットワークスキャンの対象である端末装置までの間に複数のルータが存在する多段ネットワークにおいて実行される。
【0114】
スキャン解析マネージャ12は、1ホップの遅延時間を算出すると、1ホップの遅延時間にネットワークの経路段数(=K+1)よりも1段小さいKからなる経路制御段数を乗算して経路遅延RRTT_TYPE(=1ホップの遅延時間×経路制御段数K)を算出する。
【0115】
なお、式(1)によって、Last hop RTTを経路制御段数Kで除算して1ホップの遅延時間を算出し、1ホップの遅延時間に経路制御段数Kを乗算して経路遅延RRTTを算出するのは、次の理由による。
【0116】
Last hop RTTは、実際には、バラツキを有するので、Last hop RTTを経路制御段数Kで除算して1つのルータを通過するときの平均的な遅延時間を1ホップの遅延時間として算出し、その算出した1ホップの遅延時間に経路制御段数Kを乗算して経路遅延RRTT_TYPEを算出することによって、Last hop RTTのバラツキを丸めるためである。
【0117】
そして、ルータKからスキャン応答SRが返って来ない場合には、ネットワークスキャン装置1がPingパケットを送信してからルータK-1からのスキャン応答SRを受信するまでのスキャン応答遅延RTTをLast hop RTTとして、上述した方法によって経路遅延RRTT_TYPEを算出してもよく、ルータK-1,Kからスキャン応答SRが返って来ない場合には、ネットワークスキャン装置1がPingパケットを送信してからルータK-2からのスキャン応答SRを受信するまでのスキャン応答遅延RTTをLast hop RTTとして、上述した方法によって経路遅延RRTT_TYPEを算出してもよい。従って、一般的には、複数のルータ1~Kのうちの最近接ルータから返って来たスキャン応答遅延RTTTをLast hop RTTとして、上述した方法によって経路遅延RRTT_TYPEを算出すればよい。
【0118】
経路遅延RRTT_TYPEを算出した後、スキャン解析マネージャ12は、端末装置からのスキャン応答SRに対応付けられたスキャン応答遅延SRTTをホスト情報データベース13の対応表TBL1から検出する。そして、スキャン解析マネージャ12は、スキャン応答遅延SRTTから経路遅延RRTT_TYPE(=1ホップの遅延時間×経路制御段数K)を減算してアクセス系部分の伝送遅延ARTT(=スキャン応答遅延RTT-経路遅延RRTT_TYPE(=1ホップの遅延時間×経路制御段数K))を算出する。
【0119】
なお、ルータKからスキャン応答SRが返って来ない場合には、上述の方法により1ホップの遅延時間を算出し、その算出した1ホップの遅延時間に多段ネットワークの段数から1を減じた値(すなわち、ネットワークスキャン装置1からルータK(=端末装置に最も近い位置に配置されたルータ)までのネットワーク段数)を乗算して経路遅延RRTT_TYPEを算出してもよい。このようにすることで、ルータKからスキャン応答SRが返って来ない場合においても、ルータKから端末装置までの遅延をアクセス系部分の伝送遅延ARTTとして求めることができる。
【0120】
図8は、ネットワーク種別、最小スキャン応答遅延および平均スキャン応答遅延の対応表を示す図である。
【0121】
図8を参照して、対応表TBL4は、ネットワーク種別と、最小スキャン応答遅延と、平均スキャン応答遅延とを含む。最小スキャン応答遅延および平均スキャン応答遅延は、ネットワーク種別に対応付けられる。
【0122】
ネットワーク種別は、Wired LAN、WLAN、Wi-SUN、LoRaおよびLTEからなる。
【0123】
0.310[ms]の最小スキャン応答遅延および0.41[ms]の平均スキャン応答遅延は、Wired LANに対応付けられる。0.839[ms]の最小スキャン応答遅延および2.16[ms]の平均スキャン応答遅延は、WLANに対応付けられる。180[ms]の最小スキャン応答遅延および460.4[ms]の平均スキャン応答遅延は、Wi-SUNに対応付けられる。3808[ms]の最小スキャン応答遅延および5250[ms]の平均スキャン応答遅延は、LoRaに対応付けられる。12.5[ms]の最小スキャン応答遅延および19.3[ms]の平均スキャン応答遅延は、LTEに対応付けられる。
【0124】
このように、Wired LAN、WLAN、Wi-SUN、LoRaおよびLTEは、相互に異なる最小スキャン応答遅延または平均スキャン応答遅延を有する。
【0125】
そして、最小スキャン応答遅延または平均スキャン応答遅延は、対象ネットワークの種別を判定するためのしきい値DT_thを構成する。
【0126】
スキャン解析マネージャ12は、対応表TBL4を保持している。そして、スキャン解析マネージャ12は、伝送遅延ARTTを算出すると、その算出した伝送遅延ARTTをしきい値DT_thと比較し、伝送遅延ARTTに最も近いしきい値DT_thに対応付けられたネットワーク種別を対象ネットワークの種別と仮判定する。
【0127】
図9は、ネットワーク種別がWired LANであるときのスキャン応答遅延とネットワークスキャンの回数との関係を示す図である。
【0128】
図9において、縦軸は、スキャン応答遅延を表し、横軸は、ネットワークスキャンの回数を表す。そして、図9は、実測されたスキャン応答遅延と、ネットワークスキャンの回数との関係を示す。
【0129】
図9を参照して、Wired LANにおいて、スキャン応答遅延は、1000回までのネットワークスキャンに対して、概ね、0.30[ms]~0.55[ms]までの間に分布している。
【0130】
図10は、ネットワーク種別がWired LANであるときのスキャン応答遅延の確率分布関数を示す図である。
【0131】
図10において、縦軸は、確率分布関数を表し、横軸は、スキャン応答遅延を表す。図10を参照して、スキャン応答遅延の平均は、0.41[ms]であり、スキャン応答遅延の最小値は、0.310[ms]であり、スキャン応答遅延の最大値は、0.560[ms]である。
【0132】
図11は、ネットワーク種別がWLAN、Wi-SUNおよびLoRaであるときのスキャン応答遅延とネットワークスキャンの回数との関係を示す図である。
【0133】
図11において、縦軸は、スキャン応答遅延を表し、横軸は、ネットワークスキャンの回数を表す。そして、図11は、実測されたスキャン応答遅延と、ネットワークスキャンの回数との関係を示す。
【0134】
図11を参照して、スキャン応答遅延は、1500回までのネットワークスキャンに対して、WLAN、Wi-SUNおよびLoRaの間で大きく異なっている。そして、スキャン応答遅延は、WLANにおいて、最も小さく、Wi-SUNにおいて、2番目に小さく、LoRaにおいて、最も大きい。
【0135】
図12は、ネットワーク種別がWLANであるときのスキャン応答遅延の確率分布関数を示す図である。
【0136】
図12において、縦軸は、確率分布関数を表し、横軸は、スキャン応答遅延を表す。図12を参照して、スキャン応答遅延の平均は、2.16[ms]であり、スキャン応答遅延の最小値は、0.839[ms]である。
【0137】
図13は、ネットワーク種別がWi-SUNであるときのスキャン応答遅延の確率分布関数を示す図である。図13において、縦軸は、確率分布関数を表し、横軸は、スキャン応答遅延を表す。図13を参照して、スキャン応答遅延の平均は、460.4[ms]であり、スキャン応答遅延の最小値は、180[ms]である。
【0138】
図14は、ネットワーク種別がLoRaであるときのスキャン応答遅延の確率分布関数を示す図である。図14において、縦軸は、確率分布関数を表し、横軸は、スキャン応答遅延を表す。図14を参照して、スキャン応答遅延の平均は、5250[ms]であり、スキャン応答遅延の最小値は、3808[ms]である。
【0139】
なお、ネットワーク種別がLTEである場合も、上述したWired LAN、WLAN、Wi-SUNおよびLoRaと同様にして、実測したスキャン応答遅延の分布に基づいて、最小スキャン応答遅延および平均スキャン応答遅延の値を決定した。
【0140】
スキャン解析マネージャ12は、終了条件が満たされるまで仮判定を繰り返し実行する。終了条件は、次の終了条件1および終了条件2のいずれかからなる。
【0141】
(終了条件1)
仮判定を所定の回数Zだけ実施した場合
なお、Zは、例えば、10回である。
【0142】
(終了条件2)
あるネットワーク種別に対する仮判定回数が支配的になった場合
例えば、あるネットワーク種別に対する仮判定回数がZ/2回以上になった場合である。
【0143】
また、スキャン解析マネージャ12は、終了条件1を用いる場合、所定の時間内に仮判定回数がZ回に達しないとき、ネットワーク種別を“unknown”と判定する。
【0144】
ホップ段数の推定方法について説明する。図15は、ネットワークの概念図である。図15の(a)を参照して、ネットワークNW1は、ネットワークスキャン装置1(=ネットワークスキャナ11)と、有線ルータ2と、Wi-SUNルータ3,4と、Wi-SUN端末装置5とを含む。
【0145】
ネットワークNW1は、端末装置に対してネットワークスキャンを実行するときに使用するネットワークである。
【0146】
ネットワークスキャナ11と有線ルータ2との間および有線ルータ2とWi-SUNルータ3との間は、有線通信区間である。
【0147】
Wi-SUNルータ3とWi-SUNルータ4との間およびWi-SUNルータ4とWi-SUN端末装置5との間は、無線通信区間である。
【0148】
このように、ネットワークNW1は、複数ホップの有線通信区間と1ホップ以上の無線通信区間とからなる。
【0149】
図15の(b)を参照して、ネットワークNW2は、ネットワークスキャン装置1(=ネットワークスキャナ11)と、有線ルータ2,6と、Wi-SUNルータ4と、Wi-SUN端末装置5とを含む。
【0150】
ネットワークNW2は、ネットワークスキャン装置1(=ネットワークスキャナ11)が想定しているネットワークである。
【0151】
ネットワークスキャナ11と有線ルータ2との間、有線ルータ2と有線ルータ6との間および有線ルータ6とWi-SUNルータ4との間は、有線通信区間である。
【0152】
Wi-SUNルータ4とWi-SUN端末装置5との間は、無線通信区間である。
【0153】
このように、ネットワークNW2は、複数ホップの有線通信区間と1ホップの無線通信区間とからなる。
【0154】
ネットワークNW1は、ネットワークNW1-1,NW1-2からなり、ネットワークNW2は、ネットワークNW2-1,NW2-2からなる。
【0155】
図16は、ネットワークNW1-1,NW2-1における遅延時間の概念図である。図16を参照して、遅延時間SRTT_NW1-1は、ネットワークNW1-1におけるネットワークスキャナ11とWi-SUN端末装置5との間の遅延時間を示し、遅延時間SRTT_NW2-1は、ネットワークNW2-1におけるネットワークスキャナ11とWi-SUN端末装置5との間の遅延時間を示す。
【0156】
遅延時間SRTT_NW1-1は、ネットワークスキャナ11と有線ルータ2との間の遅延時間(1)と、有線ルータ2とWi-SUNルータ3との間の遅延時間(2)と、Wi-SUNルータ3とWi-SUNルータ4との間の遅延時間(3)と、Wi-SUNルータ4とWi-SUN端末装置5との間の遅延時間(4)とからなる。
【0157】
そして、遅延時間(1),(2)の各々は、有線通信区間の遅延時間RRTTであり、遅延時間(3),(4)の各々は、無線通信区間の遅延時間WRTTである。
【0158】
従って、遅延時間SRTT_NW1-1は、2つの有線通信区間の遅延時間RRTTと、2つの無線通信区間の遅延時間WRTTとからなる。
【0159】
遅延時間SRTT_NW2-1は、ネットワークスキャナ11と有線ルータ2との間の遅延時間(1)と、有線ルータ2と有線ルータ6との間の遅延時間(2)と、有線ルータ6とWi-SUNルータ4との間の遅延時間(3)と、Wi-SUNルータ4とWi-SUN端末装置5との間の遅延時間(4)とからなる。
【0160】
そして、遅延時間(1),(2),(3)の各々は、有線通信区間の遅延時間RRTTであり、遅延時間(4)は、無線通信区間の遅延時間WRTTである。
【0161】
従って、遅延時間SRTT_NW2-1は、3つの有線通信区間の遅延時間RRTTと、1つの無線通信区間の遅延時間WRTTとからなる。
【0162】
遅延時間SRTT_NW1-1は、実測値であり、遅延時間SRTT_NW2-1は、端末装置の属性判定における認識である。
【0163】
遅延時間SRTT_NW1-1に含まれる無線通信区間の遅延時間(3),(4)は、遅延時間SRTT_NW2-1に含まれる無線通信区間の遅延時間(4)と異なる。
【0164】
遅延時間SRTT_NW2-1に含まれる無線通信区間の遅延時間(4)は、実測されたスキャン応答遅延SRTT(=対応表TBL3に含まれるスキャン応答遅延SRTT)から遅延時間SRTT_NW2-1に含まれる有線通信区間の遅延時間(1),(2),(3)を減算することによって算出される。そして、この減算結果がネットワークNW2-1における無線通信区間の遅延時間(4)に相当するαである。
【0165】
対応表TBL3に含まれる有線通信区間の平均遅延RRTTi_AVEは、実験またはシミュレーションによって事前に求められた平均遅延時間であるので、αは、α=(SRTT-3×RRTTi_AVE)によって算出される。
【0166】
また、ネットワークNW2-1における1つの無線通信区間(=Wi-SUNルータ4とWi-SUN端末装置5との区間)における遅延時間WRTTの最小値WRTTi_MINも、実験またはシミュレーションによって事前に求められ、対応表TBL3に格納されている。そして、最小値WRTTi_MINは、1ホップの無線通信における遅延時間の最小値である。
【0167】
そこで、算出したαを最小値WRTTi_MINと比較することによって無線通信区間におけるホップ段数を推定する。より具体的には、αが最小値WRTTi_MINの何倍であるかを判定してホップ段数を推定する。
【0168】
図17は、ネットワークNW1-2,NW2-2における遅延時間の概念図である。ネットワークNW1-2は、ネットワークNW1-1における有線ルータ2をWi-SUNルータ7に変えたネットワークである。
【0169】
ネットワークNW1-2において、ネットワークスキャナ11とWi-SUNルータ7との間は、有線通信区間であり、Wi-SUNルータ7とWi-SUNルータ3との間、Wi-SUNルータ3とWi-SUNルータ4との間、およびWi-SUNルータ4とWi-SUN端末装置5との間は、無線通信区間である。
【0170】
従って、ネットワークNW1-2は、1ホップの有線通信区間と3ホップの無線通信区間とからなるネットワークである。
【0171】
ネットワークNW2-2は、ネットワークNW2-1と同じように、3ホップの有線通信区間と1ホップの無線通信区間とからなる。但し、ネットワークNW2-2における1ホップの無線通信区間の遅延時間(4)は、ネットワークNW2-1における1ホップの無線通信区間の遅延時間(4)よりも大きい。これは、次の理由による。
【0172】
有線LANにおける遅延時間は、例えば、最小値が0.31[msec]であり、平均値が0.41[msec]であり、最大値が0.56[msec]である。一方、Wi-SUNにおける遅延時間は、例えば、最小値が180[msec]であり、平均値が511[msec]であり、最大値が1389[msec]である。
【0173】
また、ネットワークNW1-2は、1つの有線通信区間と3つの無線通信区間とを含み、ネットワークNW1-1は、2つの有線通信区間と2つの無線通信区間とを含むので、ネットワークNW1-2は、ネットワークNW1-1よりも多くの無線通信区間を含む。そして、上述したように無線通信区間の遅延時間(100~1000[msec])は、有線通信区間の遅延時間(1[msec]未満)よりも非常に大きいので、ネットワークNW1-1の1個の有線通信区間を1個の無線通信区間に変えたネットワークNW1-2において実測されたスキャン応答遅延SRTTは、ネットワークNW1-1において実測されたスキャン応答遅延SRTTよりも大きくなる。従って、ネットワークNW2-2における1ホップの無線通信区間の遅延時間(4)は、ネットワークNW2-1における1ホップの無線通信区間の遅延時間(4)よりも大きくなる。
【0174】
そして、図16において説明した方法によってαを算出し、その算出したαを最小遅延WRTTi_MINと比較することによって無線通信区間におけるホップ段数を推定する。
【0175】
この発明の実施の形態においては、無線通信区間におけるホップ段数を推定する方法は、次の2つの方法がある。
(I)αをしきい値Thi_N(N=1,2,3,・・・)と比較してホップ段数を推定する。
(II)αとしきい値Thi_1,Thi_2とを用いてホップ段数を算出する。
【0176】
図18は、しきい値Thi_Nの概念図である。図18を参照して、Thi_1は、1ホップと2ホップとの間のしきい値であり、Thi_2は、2ホップと3ホップとの間のしきい値であり、Thi_3は、3ホップと4ホップとの間のしきい値である。
【0177】
1ホップで通信する端末装置のαのサンプルをしきい値Thi_1と比較し、αがしきい値Th_未満であれば、ホップ段数が“1”であると推定し、αがしきい値Th_以上であれば、αをしきい値Thi_2と比較する。
【0178】
そして、αがしきい値Thi_2未満であれば、ホップ段数が“2”であると推定する。
【0179】
また、2ホップで通信する端末装置のαのサンプルをしきい値Thi_2と比較し、αがしきい値Thi_2未満であれば、ホップ段数が“2”であると推定し、αがしきい値Thi_2以上であれば、αをしきい値Thi_3と比較する。
【0180】
更に、3ホップで通信する端末装置のαのサンプルをしきい値Thi_3と比較し、αがしきい値Thi_3未満であれば、ホップ段数が“3”であると推定し、αがしきい値Thi_3以上であれば、αをしきい値Thi_4と比較する。
【0181】
以下、同様にして、αをしきい値Thi_Nと比較し、αがThi_N-1≦α<Thi_Nを満たすとき、ホップ段数が“N-1”であると推定する。
【0182】
上記の(I)または(II)によってホップ段数を推定する場合、αの最小値αi_MINまたは平均値αi_AVEが用いられる。
【0183】
図19は、しきい値Thi_Nを算出する方法を説明するための図である。なお、図19においては、αとしてαの最小値αi_MINを用いるときのしきい値Thi_Nを算出する方法を説明する。
【0184】
図19を参照して、1ホップの無線通信区間の遅延時間WRTTの最小値WRTTi_MINを基準値とする。そして、最小値WRTT_MINから1つの有線通信区間の遅延時間の平均値RRTTi_AVEを減算してLを算出する。ここで、最小値WRTTi_MINから平均値RRTTi_AVEを減算するのは、ネットワークスキャナ11が、ネットワークスキャンに使用されたネットワークNW1の構成をネットワークNW2の構成と誤認したため、その誤認識分を補正するためである。
【0185】
を算出すると、その算出したLを基準値(=WRTTi_MIN)に加算してしきい値Thi_1を算出する。また、Lをしきい値Thi_1に加算してしきい値Thi_2を算出する。更に、Lをしきい値Thi_2に加算してしきい値Th_を算出する。以下、同様にして、しきい値Thi_4~Thi_Nを算出する。
【0186】
従って、しきい値Thi_Nは、次式によって算出される。
【0187】
【数2】
【0188】
αi_MINがαi_MIN<Thi_1を満たすとき、ホップ段数を“1”と推定し、αi_MINがThi_1≦αi_MIN<Thi_2を満たすとき、ホップ段数を“2”と推定し、αi_MINがThi_2≦αi_MIN<Thi_3を満たすとき、ホップ段数を“3”と推定し、以下、同様にして、αi_MINがThi_N-1≦αi_MIN<Thi_Nを満たすとき、ホップ段数を“N-1”と推定する。
【0189】
図20は、しきい値Thi_Nを算出する別の方法を説明するための図である。なお、図20においては、αとしてαの平均値αi_AVEを用いるときのしきい値Thi_Nを算出する方法を説明する。
【0190】
図20を参照して、WRTTi_MINと2×WRTTi_MINとの中点(=1.5×RTTi_MIN)を算出し、その算出した中点(=1.5×WRTTi_MIN)を基準値とする。
【0191】
そして、Lを基準値(=1.5×WRTTi_MIN)に加算してしきい値Thi_1を算出する。また、Lをしきい値Thi_1に加算してしきい値Thi_2を算出する。更に、Lをしきい値Thi_2に加算してしきい値Thi_3を算出する。以下、同様にして、しきい値Thi_4~Thi_Nを算出する。
【0192】
従って、しきい値Thi_Nは、次式によって算出される。
【0193】
【数3】
【0194】
平均値αi_AVEがαi_AVE<Thi_1を満たすとき、ホップ段数を“1”と推定し、平均値αi_AVEがThi_1≦αi_AVE<Thi_2を満たすとき、ホップ段数を“2”と推定し、平均値αi_AVEがThi_2≦αi_AVE<Thi_3を満たすとき、ホップ段数を“3”と推定し、以下、同様にして、平均値αi_AVEがThi_N-1≦αi_AVE<Thi_Nを満たすとき、ホップ段数を“N-1”と推定する。
【0195】
上述したように、しきい値Thi_Nは、式(2)または式(3)によって算出されるので、しきい値Thi_Nは、一般的には、次式によって算出される。
【0196】
【数4】
【0197】
式(4)において、STDは、基準値である。式(4)の基準値STDに最小遅延WRTTi_MINを代入すると、式(2)が得られ、式(4)の基準値STDに1.5×WRTTi_MINを代入すると、式(3)が得られる。従って、式(4)は、しきい値Thi_Nを算出する一般式である。
【0198】
図21は、しきい値Thi_Nを用いたホップ段数の推定方法を説明するための図である。なお、図21においては、上述したネットワークNW1-2において実測されたスキャン応答遅延SRTTを用いてホップ段数の推定方法を説明する。
【0199】
図21を参照して、上述した方法によって、実測されたスキャン応答遅延SRTTから有線通信区間の平均遅延RRTTi_AVEを減算してαを算出する。
【0200】
そして、αをしきい値Thi_1と比較してαがしきい値Thi_1よりも大きいと判定する。その後、αをしきい値Thi_2と比較してαがしきい値Thi_2よりも大きいと判定する。更に、αをしきい値Thi_3と比較してαがしきい値Thi_3よりも小さいと判定する。従って、ホップ段数を“3”と推定する。
【0201】
なお、図21においては、αの最小値αi_MINおよび平均値αi_AVEのいずれを用いた場合も、図21において説明した方法によってホップ段数を推定できる。
【0202】
引き続いて、αとしきい値Thi_1,Thi_2とを用いてホップ段数を算出する方法について説明する。
【0203】
図22は、αとしきい値Thi_1,Thi_2とを用いてホップ段数を算出する方法について説明するための図である。なお、図22においては、上述したネットワークNW1-2において実測されたスキャン応答遅延SRTTを用いてホップ段数の推定方法を説明する。
【0204】
図22を参照して、αからしきい値Thi_1を減算してDi_1を算出する。また、しきい値Thi_2からしきい値Thi_1を減算してDi_2を算出する。
【0205】
そうすると、Di_が負であるか否かを判定する。そして、Di_が負であるとき、ホップ段数を“1”と推定する。一方、Di_が負でないとき、1+Ceil[Di_/Di_]の演算結果をホップ段数であると推定する。ここで、Ceil[Di_/Di_]は、Di_をDi_で除算した除算結果を切り上げた整数を出力することを表す。従って、図22に示す例では、αがしきい値Thi_2よりも大きいので、Ceil[Di_/Di_]=2となり、ホップ段数は、“3”であると推定される。
【0206】
なお、図22においても、αの最小値αi_MINおよび平均値αi_AVEのいずれを用いた場合も、図22において説明した方法によってホップ段数を推定できる。
【0207】
スキャンスケジューラ14は、推定されたホップ段数に基づいてネットワークスキャンにおけるスキャンパケットの通信速度を設定してスキャンスケジュールを作成する。
【0208】
ネットワークスキャンに用いられたネットワークの無線通信区間のホップ段数を推定するとき、リストLS1,LS2,LS3,LS4が作成される。
【0209】
図23から図26は、それぞれ、リストLS1~LS4の概念図である。図23を参照して、リストLS1は、属性が判定された端末装置のIPアドレスAdd’i_aと、最小値αi_MIN_aと、平均値αi_AVE_aとを含む。IPアドレスAdd’i_a、最小値αi_MIN_aおよび平均値αi_AVE_aは、相互に対応付けられる。IPアドレスAdd’i_a、最小値αi_MIN_aおよび平均値αi_AVE_aにおける「a」は、属性が判定済みであることを表す。
【0210】
図24を参照して、リストLS2は、リストLS2-1,LS2-2からなる。リストLS2-1は、最小値αi_MINが更新された端末装置のIPアドレスAdd’i_upと、更新された最小値αi_MIN_upとを含む。IPアドレスAdd’i_upおよび最小値αi_MIN_upは、相互に対応付けられる。IPアドレスAdd’i_upおよび最小値αi_MIN_upにおける「up」は、更新済みであることを表す。
【0211】
リストLS2-2は、平均値αi_AVEが更新された端末装置のIPアドレスAdd”i_upと、更新された平均値αi_AVE_upとを含む。IPアドレスAdd”i_upおよび平均値αi_AVE_upは、相互に対応付けられる。IPアドレスAdd”i_upおよび平均値αi_AVE_upにおける「up」は、更新済みであることを表す。そして、IPアドレスAdd”i_upは、リストLS2-1のIPアドレスAdd’i_upと同じであることもあれば、異なっていることもある。
【0212】
図25を参照して、リストLS3は、属性が判定済みであり、かつ、ホップ段数が初期値(無効値)である端末装置のIPアドレスAdd’i_a_invと、最小値αi_MIN_a_invと、平均値αi_AVE_a_invとを含む。IPアドレスAdd’i_a_inv、最小値αi_MIN_a_invおよび平均値αi_AVE_a_invは、相互に対応付けられる。IPアドレスAdd’i_a_inv、最小値αi_MIN_a_invおよび平均値αi_AVE_a_invにおける「a」は、属性が判定済みであることを表し、「inv」は、ホップ段数が初期値(無効値)であることを表す。
【0213】
図26を参照して、リストLS4は、リストLS4-1,LS4-2からなる。リストLS4-1は、属性が判定済みであり、かつ、最小値αi_MINが更新された端末装置のIPアドレスAdd’i_a_upと、更新された最小値αi_MIN_a_upとを含む。IPアドレスAdd’i_a_upおよび最小値αi_MIN_a_upは、相互に対応付けられる。IPアドレスAdd’i_a_upおよび最小値αi_MIN_a_upにおける「a」は、属性が判定済みであることを表し、「up」は、更新済みであることを表す。
【0214】
リストLS4-2は、属性が判定済みであり、かつ、平均値αi_AVEが更新された端末装置のIPアドレスAdd”i_a_upと、更新された平均値αi_AVE_a_upとを含む。IPアドレスAdd”i_a_upおよび平均値αi_AVE_a_upは、相互に対応付けられる。IPアドレスAdd”i_a_upおよび平均値αi_AVE_a_upにおいて、「a」は、属性が判定済みであることを表し、「up」は、更新済みであることを表す。そして、IPアドレスAdd”i_a_upは、リストLS4-1のIPアドレスAdd’i_a_upと同じであることもあれば、異なっていることもある。
【0215】
図27は、スキャンパケットの通信速度を制御する方法を説明するための図である。図27を参照して、スキャンスケジューラ14は、ホップ段数Nが“2”であるとき、スキャンパケットの通信速度を1ホップの通信速度の1/2に制御する。また、スキャンスケジューラ14は、ホップ段数Nが“3”であるとき、スキャンパケットの通信速度を1ホップの通信速度の1/3に制御する。更に、スキャンスケジューラ14は、ホップ段数Nが“4”であるとき、スキャンパケットの通信速度を1ホップの通信速度の1/4に制御する。以下、同様にして、スキャンスケジューラ14は、ホップ段数Nが“N”であるとき、スキャンパケットの通信速度を1ホップの通信速度の1/Nに制御する。
【0216】
図28は、スキャンパケットの通信速度の制御を示す概念図である。図28を参照して、無線通信区間のホップ段数は、“2”である。スキャンパケットの通信速度を制御しない場合、例えば、スキャンパケットは、無線通信区間において、4[個/sec]の通信速度で送信される(図28の(a)参照)。
【0217】
一方、スキャンパケットの通信速度を制御した場合、例えば、スキャンパケットは、無線通信区間において、2[個/sec]の通信速度で送信される(図28の(b)参照)。
【0218】
従って、ホップ段数に応じて無線通信区間のスキャンパケットの通信速度を制御することによって無線通信区間の無線リソースを低減できる。
【0219】
図29は、図2に示すネットワークスキャン装置1の動作を説明するためのフローチャートである。
【0220】
図29を参照して、ネットワークスキャン装置1の動作が開始されると、スキャン解析マネージャ12は、端末装置の属性を判定する(ステップS1)。
【0221】
その後、スキャン解析マネージャ12は、マルチホップの段数を推定する(ステップS2)。
【0222】
引き続いて、スキャンスケジューラ14は、推定されたホップ段数を反映してスキャンスケジュールを作成し(ステップS3)、その作成したスキャンスケジュールをネットワークスキャナ11へ出力してスキャンスケジュールに従ってネットワークスキャンを実行するようにネットワークスキャナ11を制御する。
【0223】
ネットワークスキャナ11は、スキャンスケジュールをスキャンスケジューラ14から受け、その受けたスキャンスケジュールに従ってネットワークスキャンを実行する(ステップS4)。これによって、ネットワークスキャン装置1の動作が終了する。
【0224】
図30は、図29のステップS1の詳細な動作を説明するためのフローチャートである。図30を参照して、ネットワークスキャン装置1の動作が開始されると、スキャン解析マネージャ12は、i=1を設定する(ステップS11)。そして、ネットワークスキャナ11は、Pingパケットを送信してネットワークスキャンを実行する(ステップS12)。
【0225】
その後、スキャン解析マネージャ12は、スキャン応答遅延を計測する(ステップS13)。
【0226】
引き続いて、スキャン解析マネージャ12は、ネットワークの経路段数およびスキャン応答遅延に基づいてアクセス系部分の伝送遅延ARTTを算出する(ステップS14)。
【0227】
そして、スキャン解析マネージャ12は、伝送遅延ARTTをしきい値と比較し、ネットワーク種別を仮判定する(ステップS15)。
【0228】
そうすると、スキャン解析マネージャ12は、仮判定の終了条件を満たすか否かを判定する(ステップS16)。より具体的には、スキャン解析マネージャ12は、上述した終了条件1または終了条件2を満たすか否かを判定することによって仮判定の終了条件を満たすか否かを判定する。
【0229】
ステップS16において、仮判定の終了条件を満たないと判定されたとき、スキャン解析マネージャ12は、所定時間が経過したか否かを判定する(ステップS17)。
【0230】
ステップS17において、所定時間が経過したと判定されたとき、スキャン解析マネージャ12は、“unknown”を端末装置iの最終判定結果に設定する(ステップS18)。
【0231】
一方、ステップS17において、所定時間が経過していないと判定されたとき、一連の動作は、ステップS12へ移行し、ステップS16において、所定時間が経過するまでに仮判定の終了条件を満たすと判定されるまで、ステップS12~ステップS17が繰り返し実行される。
【0232】
そして、ステップS16において、仮判定の終了条件を満たすと判定されると、スキャン解析マネージャ12は、仮判定回数が支配的であるか否かを判定する(ステップS19)。
【0233】
ステップS19において、仮判定回数が支配的であると判定されたとき、スキャン解析マネージャ12は、仮判定回数が支配的になった仮判定結果を端末装置iの最終判定結果に設定する(ステップS20)。
【0234】
一方、ステップS19において、仮判定回数が支配的でないと判定されたとき、スキャン解析マネージャ12は、判定回数が最も多い仮判定結果を端末装置iの最終判定結果に設定する(ステップS21)。
【0235】
そして、スキャン解析マネージャ12は、ステップS18、ステップS20およびステップS21のいずれかの後、i=mであるか否かを判定する(ステップS22)。
【0236】
ステップS22において、i=mでないと判定されたとき、スキャン解析マネージャ12は、i=i+1を設定する(ステップS23)。その後、一連の動作は、ステップS12へ移行し、ステップS22において、i=mであると判定されるまで、ステップS12~ステップS23が繰り返し実行される。
【0237】
そして、ステップS22において、i=mであると判定されると、スキャン解析マネージャ12は、最終判定結果をホスト情報データベース13の対応表TBL1に記録する(ステップS24)。そして、ステップS24の後、一連の動作は、図29のステップS2へ移行する。
【0238】
図30に示すフローチャートにおいては、ステップS16において、上述した終了条件2(仮判定回数が支配的になった)を満たすと判定することによって仮判定の終了条件を満たすと判定した場合、ステップS19,S21を実行せずにステップS20を実行するようにしてもよい。
【0239】
図31は、図30のステップS14の詳細な動作を説明するためのフローチャートである。図31を参照して、図30のステップS13の後、スキャン解析マネージャ12は、端末装置iからのスキャン応答SRに含まれるTTLを検出し、その検出したTTLの数値K+1をネットワークの経路段数に設定する(ステップS141)。
【0240】
そして、スキャン解析マネージャ12は、端末装置の1つ手前に位置するルータKからのスキャン応答SRに対応するスキャン応答遅延SRTTを検出する(ステップS142)。
【0241】
その後、スキャン解析マネージャ12は、スキャン応答遅延SRTTをネットワークスキャン装置1からルータKまでのホップ数である経路制御段数Kで除算して1ホップの遅延時間を算出する(ステップS143)。
【0242】
引き続いて、スキャン解析マネージャ12は、1ホップの遅延時間にネットワークスキャン装置からルータKまでの経路制御段数Kを乗算して経路遅延を算出する(ステップS144)。
【0243】
そうすると、スキャン解析マネージャ12は、端末装置iからのスキャン応答SRに対応付けられたスキャン応答遅延SRTTから経路遅延を減算して伝送遅延ARTTを算出する(ステップS145)。その後、一連の動作は、図30のステップS15へ移行する。
【0244】
図32は、図30のステップS15の詳細な動作を説明するためのフローチャートである。
【0245】
図32を参照して、図30のステップS14の後、スキャン解析マネージャ12は、保持している対応表TBL4からWired LAN、WLAN、Wi-SUN、LoRaおよびLTEのネットワークにおけるしきい値DT_th1~DT_th5を読み出す(ステップS151)。
【0246】
この場合、スキャン解析マネージャ12は、Wired LANにおけるしきい値としてしきい値DT_th1を読み出し、WLANにおけるしきい値としてしきい値DT_th2を読み出し、Wi-SUNにおけるしきい値としてしきい値DT_th3を読み出し、LoRaにおけるしきい値としてしきい値DT_th4を読み出し、LTEにおけるしきい値としてしきい値DT_th5を読み出す。
【0247】
また、スキャン解析マネージャ12は、対応表TBL4の最小スキャン応答遅延または平均スキャン応答遅延をしきい値DT_th1~DT_th5として読み出す。
【0248】
ステップS151の後、スキャン解析マネージャ12は、j=1を設定し(ステップS152)、伝送遅延ARTTとしきい値DT_thjとの差の絶対値|ARTT―DT_thj|を算出する(ステップS153)。
【0249】
そして、スキャン解析マネージャ12は、j=NNWであるか否かを判定する(ステップS154)。なお、NNWは、ネットワークの総数である。
【0250】
ステップS154において、j=NNWでないと判定されたとき、スキャン解析マネージャ12は、j=j+1を設定する(ステップS155)。その後、一連の動作は、ステップS153へ移行し、ステップS154において、j=NNWであると判定されるまで、ステップS153~ステップS155が繰り返し実行される。
【0251】
そして、ステップS154において、j=NNWであると判定されると、スキャン解析マネージャ12は、複数の絶対値|ARTT―DT_thj|から最小値を検出する(ステップS156)。
【0252】
そうすると、スキャン解析マネージャ12は、最小値が複数有るか否かを判定する(ステップS157)。
【0253】
ステップS157において、最小値が複数有ると判定されたとき、スキャン解析マネージャ12は、対象ネットワークの種別を“unknown”と仮判定する(ステップS158)。
【0254】
一方、ステップS157において、最小値が複数無いと判定されたとき、スキャン解析マネージャ12は、最小値の算出に用いられたしきい値DT_thjに対応するネットワーク種別を対象ネットワークの種別として仮判定する(ステップS159)。
【0255】
そして、ステップS158またはステップS159の後、スキャン解析マネージャ12は、仮判定結果と仮判定回数をホスト情報データベース13に記録する(ステップS160)。その後、一連の動作は、図30のステップS16へ移行する。
【0256】
図33は、図29のステップS2の詳細な動作を説明するためのフローチャートである。
【0257】
図33を参照して、図29のステップS1の後、スキャン解析マネージャ12は、ホスト情報データベース13の対応表TBL3に基づいて、属性が判定された端末装置のリストLS1を作成する(ステップS31)。この場合、スキャン解析マネージャ12は、対応表TBL2の対応表TBL3_Sを構成する対応表TBL3(即ち、ホップ段数の推定時における対応表TBL3)に基づいて、属性が判定された端末装置のリストLS1を作成する。
【0258】
ステップS31の後、スキャン解析マネージャ12は、対応表TBL2の対応表TBL3_Sを構成する対応表TBL3(即ち、ホップ段数の推定時における対応表TBL3)に基づいて、上述した方法によって、IPアドレスAddの全てについて最小値αMINを更新し、最小値αMINが更新された端末装置のリストLS2(=LS2-1)を作成する(ステップS32)。
【0259】
ステップS32の後、スキャン解析マネージャ12は、リストLS1に基づいて、属性が判定され、かつ、ホップ段数が初期値(無効値)である端末装置のリストLS3を作成する(ステップS33)。
【0260】
そして、スキャン解析マネージャ12は、リストLS3に含まれる全ての端末装置についてホップ段数を推定する(ステップS34)。
【0261】
その後、スキャン解析マネージャ12は、リストLS1,LS2(=LS2-1)に基づいて、属性が判定され、かつ、最小値αi_MINが更新された端末装置のリストLS4(=LS4-1)を作成する(ステップS35)。
【0262】
引き続いて、スキャン解析マネージャ12は、リストLS4(=LS4-1)に含まれる全ての端末装置についてホップ段数を推定する(ステップS36)。その後、一連の動作は、図29のステップS3へ移行する。
【0263】
なお、ステップS35,S36は、既に、ホップ段数が推定されているが、最小値αi_MINが更新されたので、既に推定されたホップ段数を更新するために実行されるステップである。
【0264】
図34は、図33のステップS34の詳細な動作を説明するためのフローチャートである。なお、図34に示すフローチャートは、αの最小値αi_MINをしきい値Thと比較してホップ段数を推定するフローチャートである。
【0265】
図34を参照して、図33のステップS33の後、スキャン解析マネージャ12は、p=1を設定する(ステップS341)。ここで、pは、リストLS3に含まれる更新後の最小値αi_MINの引数であり、1~Pであり、Pは、更新後の最小値αi_MINの総数である。
【0266】
ステップS341の後、スキャン解析マネージャ12は、リストLS3から最小値αp_MINを検出し(ステップS342)、N=1を設定する(ステップS343)。ここで、Nは、ホップ段数である。
【0267】
その後、スキャン解析マネージャ12は、現在時点における対応表TBL3_S(=TBL3)から無線通信区間の最小遅延WRTTi_MINおよび有線通信区間の平均遅延RRTTi_AVEを検出し、その検出した最小遅延WRTTi_MINおよび平均遅延RRTTi_AVEを式(2)に代入してしきい値Thを算出する(ステップS344)。
【0268】
そうすると、スキャン解析マネージャ12は、最小値αp_MINがしきい値Th以上であるか否かを判定する(ステップS345)。
【0269】
ステップS345において、最小値αp_MINがしきい値Th以上であると判定されたとき、スキャン解析マネージャ12は、N=N+1を設定する(ステップS346)。その後、一連の動作は、ステップS344へ移行し、ステップS345において、最小値αp_MINがしきい値Th以上でないと判定されるまで、ステップS344~ステップS346が繰り返し実行される。
【0270】
そして、ステップS345において、最小値αp_MINがしきい値Th以上でないと判定されると、スキャン解析マネージャ12は、Nの最終値をホップ段数に設定する(ステップS347)。
【0271】
その後、スキャン解析マネージャ12は、設定したホップ段数をホスト情報データベース13の対応表TBL3(現在時点の対応表TBL3_S)に記録する(ステップS348)。
【0272】
そして、スキャン解析マネージャ12は、p=Pであるか否かを判定する(ステップS349)。
【0273】
ステップS349において、p=Pでないと判定されたとき、スキャン解析マネージャ12は、p=p+1を設定する(ステップS350)。その後、一連の動作は、ステップS342へ移行し、ステップS349において、p=Pであると判定されるまで、ステップS342~ステップS350が繰り返し実行される。
【0274】
そして、ステップS349において、p=Pであると判定されると、一連の動作は、図33のステップS35へ移行する。
【0275】
ステップS343において、N=1を設定した後に、ステップS344において、しきい値Thが算出される。そして、ステップS345において、最小値αp_MINがしきい値Th以上であると判定されると、ステップS346において、N=1+1=2が設定される。即ち、ホップ段数Nが“2”に設定される。
【0276】
そして、ステップS346において、N=2が設定された後に、ステップS344において、しきい値Thが算出され、ステップS345において、最小値αp_MINがしきい値Th以上であると判定されると、ステップS346において、N=2+1=3が設定される。即ち、ホップ段数Nが“3”に設定される。
【0277】
以後、ステップS345において、最小値αp_MINがしきい値Th以上でないと判定されるまで(即ち、最小値αp_MINがしきい値Thよりも小さいと判定されるまで)、ステップS344~ステップS346が繰り返し実行される。
【0278】
そして、ステップS345において、最小値αp_MINがしきい値Th以上でないと判定されたときのNの値が最終値となり、ステップS347において、Nの最終値が、推定されたホップ段数に設定される。
【0279】
なお、図33のステップS36の詳細な動作も、図34に示すフローチャートに従って実行される。この場合、pは、リストLS4に含まれる更新後の最小値αi_MINの引数であり、Pは、更新後の最小値αi_MINの総数である。
【0280】
図35は、図33のステップS34の詳細な動作を説明するための別のフローチャートである。なお、図35に示すフローチャートは、αの最小値αi_MINおよびしきい値Th,Thを用いた演算によりホップ段数を推定するフローチャートである。
【0281】
図35に示すフローチャートは、図34に示すフローチャートのステップS343~ステップS347をステップS351~ステップS356に変えたものであり、その他は、図34に示すフローチャートと同じである。
【0282】
図35を参照して、図33のステップS33の後、上述したステップS341,S342が順次実行される。
【0283】
ステップS342の後、スキャン解析マネージャ12は、式(2)によってしきい値Th,Thを算出する(ステップS351)。
【0284】
そして、スキャン解析マネージャ12は、D=αp_MIN-ThおよびD=Th-Thを算出する(ステップS352)。
【0285】
その後、スキャン解析マネージャ12は、Dが“0”よりも小さいか否かを判定する(ステップS353)。
【0286】
ステップS353において、Dが“0”よりも小さいと判定されたとき、スキャン解析マネージャ12は、N=1を設定する(ステップS354)。
【0287】
一方、ステップS353において、Dが“0”よりも小さくないと判定されたとき、スキャン解析マネージャ12は、N=1+Ceil[D/D]を設定する(ステップS355)。
【0288】
そして、ステップS354またはステップS355の後、スキャン解析マネージャ12は、Nをホップ段数に設定する(ステップS356)。その後、上述したステップS348~ステップS350が順次実行され、ステップS349において、p=Pであると判定されると、一連の動作は、図33のステップS35へ移行する。
【0289】
図36は、図29のステップS2の詳細な動作を説明するための別のフローチャートである。
【0290】
図36に示すフローチャートは、図33に示すフローチャートのステップS32,S35,S36をそれぞれステップS32A,S35A,S36Aに変えたものであり、その他は、図33に示すフローチャートと同じである。
【0291】
図36を参照して、図29のステップS1の後、上述したステップS31が実行される。
【0292】
ステップS31の後、スキャン解析マネージャ12は、対応表TBL2の対応表TBL3_Sを構成する対応表TBL3(即ち、ホップ段数の推定時における対応表TBL3)に基づいて、上述した方法によって、IPアドレスAddの全てについて平均値αi_AVEを更新し、平均値αi_AVEが更新された端末装置のリストLS2(=LS2-2)を作成する(ステップS32A)。
【0293】
そして、上述したステップS33,S34が順次実行された後、スキャン解析マネージャ12は、リストLS1,LS2(=LS2-2)に基づいて、属性が判定され、かつ、平均値αAVEが更新された端末装置のリストLS4(=LS4-2)を作成する(ステップS35A)。
【0294】
引き続いて、スキャン解析マネージャ12は、リストLS4(=LS4-2)に含まれる全ての端末装置についてホップ段数を推定する(ステップS36A)。その後、一連の動作は、図29のステップS3へ移行する。
【0295】
なお、ステップS35A,S36Aは、既に、ホップ段数が推定されているが、平均値αi_AVEが更新されたので、既に推定されたホップ段数を更新するために実行されるステップである。
【0296】
図37は、図36のステップS34Aの詳細な動作を説明するためのフローチャートである。なお、図37に示すフローチャートは、αの平均値αi_AVEをしきい値Thと比較してホップ段数を推定するフローチャートである。
【0297】
図37に示すフローチャートは、図34に示すフローチャートのステップS342,S344,S345をそれぞれS342A,S344A,S345Aに変えたものであり、その他は、図34に示すフローチャートと同じである。
【0298】
図37を参照して、図36のステップS33の後、上述したステップS341が実行される。そして、ステップS341の後、スキャン解析マネージャ12は、リストLS3から平均値αp_AVEを検出する(ステップS342A)。
【0299】
ステップS342Aの後、上述したステップS343が実行されると、スキャン解析マネージャ12は、現在時点における対応表TBL3_S(=TBL3)から無線通信区間の最小遅延WRTTi_MINおよび有線通信区間の平均遅延RRTTi_AVEを検出し、その検出した最小遅延WRTTi_MINおよび平均遅延RRTTi_AVEを式(3)に代入してしきい値Thを算出する(ステップS344A)。
【0300】
その後、スキャン解析マネージャ12は、平均値αp_AVEがしきい値Th以上であるか否かを判定する(ステップS345A)。
【0301】
ステップS345Aにおいて、平均値αp_AVEがしきい値Th以上であると判定されたとき、上述したステップS346が実行される。そして、ステップS345Aにおいて、平均値αp_AVEがしきい値Th以上でないと判定されるまで、ステップS344A,S345A,S346が繰り返し実行される。
【0302】
そして、ステップS345Aにおいて、平均値αp_AVEがしきい値Th以上でないと判定されると、上述したステップS347~ステップS350が順次実行され、ステップS349において、p=Pであると判定されると、一連の動作は、図36のステップS35へ移行する。
【0303】
ステップS343において、N=1を設定した後に、ステップS344Aにおいて、しきい値Thが算出される。そして、ステップS345Aにおいて、平均値αp_AVEがしきい値Th以上であると判定されると、ステップS346において、N=1+1=2が設定される。即ち、ホップ段数Nが“2”に設定される。
【0304】
そして、ステップS346において、N=2が設定された後に、ステップS344Aにおいて、しきい値Thが算出され、ステップS345Aにおいて、平均値αp_AVEがしきい値Th以上であると判定されると、ステップS346において、N=2+1=3が設定される。即ち、ホップ段数Nが“3”に設定される。
【0305】
以後、ステップS345Aにおいて、平均値αp_AVEがしきい値Th以上でないと判定されるまで(即ち、平均値αp_AVEがしきい値Thよりも小さいと判定されるまで)、ステップS344A,S345A,S346が繰り返し実行される。
【0306】
そして、ステップS345Aにおいて、平均値αp_AVEがしきい値Th以上でないと判定されたときのNの値が最終値となり、ステップS347において、Nの最終値が、推定されたホップ段数に設定される。
【0307】
なお、図36のステップS36Aの詳細な動作も、図37に示すフローチャートに従って実行される。この場合、pは、リストLS4(=LS4-2)に含まれる更新後の平均値αp_AVEの引数であり、Pは、更新後の平均値αp_AVEの総数である。
【0308】
図38は、図36のステップS34Aの詳細な動作を説明するための別のフローチャートである。なお、図38に示すフローチャートは、αの平均値αi_AVEおよびしきい値Th,Thを用いた演算によりホップ段数を推定するフローチャートである。
【0309】
図38に示すフローチャートは、図35に示すフローチャートのステップS342,S351,S352をそれぞれステップS342A,S351A,S352Aに変えたものであり、その他は、図35に示すフローチャートと同じである。
【0310】
図38を参照して、図36のステップS33の後、上述したステップS341が実行される。
【0311】
ステップS341の後、スキャン解析マネージャ12は、リストLS3から平均値αp_AVEを検出し(ステップS342A)、式(3)によってしきい値Th,Thを算出する(ステップS351A)。
【0312】
そして、スキャン解析マネージャ12は、D=αp_AVE-ThおよびD=Th-Thを算出する(ステップS352A)。
【0313】
その後、上述したステップS353~S356,S348~S350が順次実行され、ステップS349において、p=Pであると判定されると、一連の動作は、図33のステップS35へ移行する。
【0314】
図39は、図29のステップS3の詳細な動作を説明するためのフローチャートである。
【0315】
図39を参照して、図29のステップS2の後、スキャンスケジューラ14は、i=1を設定する(ステップS3-1)。そして、スキャンスケジューラ14は、対応表TBL2の対応表TBL3_Sを構成する対応表TBL3を参照して、IPアドレスAdd’に対応するホップ段数Nを検出する(ステップS3-2)。
【0316】
その後、スキャンスケジューラ14は、ホップ段数Nに基づいてスキャンパケットの通信速度Vを設定する(ステップS3-3)。より具体的には、スキャンスケジューラ14は、1ホップのときのスキャンパケットの通信速度の(1/N)倍になるようにスキャンパケットの通信速度Vを設定する。
【0317】
そして、スキャンスケジューラ14は、IPアドレスAdd’、開始時刻ti_start、終了時刻ti_end、および通信速度Vをスキャンタイミングtに設定する(ステップS3-4)。
【0318】
そうすると、スキャンスケジューラ14は、i=mであるか否かを判定する(ステップS3-5)。
【0319】
ステップS3-5において、i=mでないと判定されたとき、スキャンスケジューラ14は、i=i+1を設定する(ステップS3-6)。その後、一連の動作は、ステップS3-2へ移行し、ステップS3-5において、i=mであると判定されるまで、ステップS3-2~S3-6が繰り返し実行される。
【0320】
そして、ステップS3-5において、i=mであると判定されると、スキャンスケジューラ14は、スキャンスケジュールSCSHDをネットワークスキャナ11へ出力し(ステップS3-7)、スキャンスケジュールSCSHDに従ってネットワークスキャンを実行するようにネットワークスキャナ11を制御する。その後、一連の動作は、図29のステップS4へ移行する。
【0321】
上述したネットワークスキャン装置1の動作によれば、ネットワークスキャン装置1は、ネットワークスキャンに使用するネットワークにおける無線通信区間のホップ段数Nを推定し、その推定したホップ段数Nに基づいて1ホップのときのスキャンパケットの通信速度の(1/N)倍になるようにスキャンパケットの通信速度Vを設定し、その設定した通信速度Vでスキャンパケットを送信してネットワークスキャンを実行する。
【0322】
その結果、単位時間当たりに送出されるスキャンパケットの量は、ホップ段数に応じてスキャンパケットの通信速度を制御しない場合に比べて少なくなる。
【0323】
従って、ホップ段数に応じてスキャンパケットの通信速度を制御しない場合に比べて無線リソースを低減できる。
【0324】
図40は、図1に示すネットワークスキャン装置1の別の概略図である。この発明の実施の形態によるネットワークスキャン装置は、図40に示すネットワークスキャン装置1Aであってもよい。
【0325】
図40を参照して、ネットワークスキャン装置1Aは、図2に示すネットワークスキャン装置1のスキャンスケジューラ14をスキャンスケジューラ14Aに変えたものであり、その他は、ネットワークスキャン装置1と同じである。
【0326】
スキャンスケジューラ14Aは、1回目から(S-1)回目のネットワークスキャンによって取得されたスキャン応答SRおよびスキャン応答SRTTを対応表TBL2の対応表TBL3_s(s=1~S-1)から検出する。この場合、スキャンスケジューラ14Aは、対応表TBL3_1~TBL3_S-1の各々において、1つのIPアドレスAdd’に対応するスキャン応答SRおよびスキャン応答SRTTを検出する。ここで、スキャン応答SRは、“1”からなるスキャン応答SRであり、スキャン応答SRTTは、“1”からなるスキャン応答SRに対応付けられたスキャン応答SRTTである。
【0327】
そして、スキャンスケジューラ14Aは、検出したスキャン応答SRの個数NSRiをカウントし、検出したスキャン応答遅延SRTTのうち、しきい値rATBi th以上のスキャン応答遅延SRTTの個数NSRTTiをカウントする。ここで、しきい値rATBi thは、ネットワーク種別(=属性ATBi)ごとに決められたしきい値であり、スキャンスケジューラ14Aは、ネットワーク種別(=属性ATB)に対応付けてしきい値rATBi thを予め保持している。
【0328】
スキャンスケジューラ14Aは、個数NSRiおよび個数NSRTTiをカウントすると、個数NSRTTiを個数NSRiで除算した比c(=NSRTTi/NSRi)を算出する。
【0329】
そして、スキャンスケジューラ14Aは、比c(=NSRTTi/NSRi)がしきい値CATBiよりも大きいか否かを判定する。
【0330】
スキャンスケジューラ14Aは、比c(=NSRTTi/NSRi)がしきい値CATBiよりも大きいと判定したとき、スキャンパケットの通信速度Vを下げる。即ち、スキャン解析マネージャ12Aは、1ホップのときのスキャンパケットの通信速度の(1/N)倍になるようにスキャンパケットの通信速度Vを設定する。
【0331】
一方、スキャンスケジューラ14Aは、比c(=NSRTTi/NSRi)がしきい値CATBiよりも大きくないと判定したとき、比c(=NSRTTi/NSRi)が零であるか否かを判定する。なお、スキャンスケジューラ14Aは、しきい値CATBiを予め保持している。
【0332】
そして、スキャンスケジューラ14Aは、比c(=NSRTTi/NSRi)が零であると判定したとき、スキャンパケットの通信速度Vを上げる。
【0333】
一方、スキャンスケジューラ14Aは、比c(=NSRTTi/NSRi)が零でないと判定したとき、スキャンパケットの通信速度Vを維持する。
【0334】
スキャンスケジューラ14Aは、上述した動作を全てのIPアドレスAdd’について実行する。
【0335】
スキャンスケジューラ14Aは、その他、スキャンスケジューラ14と同じ機能を果たす。
【0336】
図41は、複数のネットワークにおけるスキャン応答遅延SRTTの累積分布関数を示す図である。
【0337】
図41において、縦軸は、スキャン応答遅延SRTTの累積分布関数を表し、横軸は、スキャン応答遅延SRTTを表す。また、曲線k1は、Wired LAN(Local Area Network)におけるスキャン応答遅延SRTTの累積分布関数を示し、曲線k2は、WLAN(Wireless LAN(Local Area Network))におけるスキャン応答遅延SRTTの累積分布関数を示し、曲線k3は、LTE(Long Term Evolution)におけるスキャン応答遅延SRTTの累積分布関数を示し、曲線k4は、Wi-SUN(Wireless Smart Utility Network)におけるスキャン応答遅延SRTTの累積分布関数を示し、曲線k5は、LoRa(Long Range)におけるスキャン応答遅延SRTTの累積分布関数を示す。
【0338】
図41を参照して、LAN、WLAN、LTE、Wi-SUNおよびLoRaにおけるしきい値rWired LAN th,rWLAN th,rLTE th,rWi-SUN th,rLoRa thは、例えば、混雑していない無線ネットワークに対するスキャン応答遅延SRTTの累積分布関数CDF(Cumulative Distribution Function)が0.95であるときのスキャン応答遅延SRTTに設定される。
【0339】
なお、スキャンスケジューラ14Aは、例えば、しきい値rATBi thとしてしきい値rWired LAN th,rWLAN th,rLTE th,rWi-SUN th,rLoRa thを予め保持する。
【0340】
図42は、スキャンパケットの通信速度とネットワーク種別との関係を示す対応表TBL5の概念図である。
【0341】
図42を参照して、対応表TBL5は、通信速度1~4とネットワーク種別A,Bとを含む。
【0342】
ネットワーク種別Aにおいては、通信速度1は、50[packet/スキャンタイミングt]からなり、通信速度2は、10[packet/スキャンタイミングt]からなり、通信速度3は、2[packet/スキャンタイミングt]からなり、通信速度4は、1[packet/スキャンタイミングt]からなる。
【0343】
また、ネットワーク種別Bにおいては、通信速度1は、10[packet/スキャンタイミングt]からなり、通信速度2は、4[packet/スキャンタイミングt]からなり、通信速度3は、2[packet/スキャンタイミングt]からなり、通信速度4は、設定されない。
【0344】
このように、通信速度1~4(または通信速度1~3)は、ネットワーク種別A,Bに応じて、1つのスキャンタイミングt当たりに送出されるスキャンパケットの個数からなる。
【0345】
なお、ネットワークスキャン装置1Aにおいては、対応表TBL5がホスト情報データベース13に格納される。
【0346】
図43は、図40に示すネットワークスキャン装置1Aの動作を説明するためのフローチャートである。
【0347】
図43に示すフローチャートは、図29に示すフローチャートのステップS3をステップS3Aに変えたものであり、その他は、図29に示すフローチャートと同じである。
【0348】
図43を参照して、ネットワークスキャン装置1Aの動作が開始されると、上述したステップS1,S2が順次実行される。この場合、ステップS1の詳細な動作は、図30に示すフローチャートによって実行され、図30のステップS14の詳細な動作は、図31に示すフローチャートによって実行され、図30のステップS15の詳細な動作は、図32に示すフローチャートによって実行される。また、ステップS2の詳細な動作は、図33に示すフローチャートまたは図36に示すフローチャートによって実行され、図33のステップS34の詳細な動作は、図34に示すフローチャートまたは図35に示すフローチャートによって実行され、図36のステップS34の詳細な動作は、図37に示すフローチャートまたは図38に示すフローチャートによって実行される。
【0349】
ステップS2の後、スキャンスケジューラ14Aは、推定された段数Nと、スキャン応答遅延SRTTとを反映してスキャンスケジュールを作成する(ステップS3A)。なお、ステップS3Aの詳細な動作は、後述する図44に示すフローチャートによって実行される。
【0350】
そして、ステップS3Aの後、上述したステップS4が実行され、ネットワークスキャン装置1Aの動作が終了する。
【0351】
図44は、図43に示すステップS3Aの詳細な動作を説明するためのフローチャートである。
【0352】
図44に示すフローチャートは、図39に示すフローチャートのステップS3-3をステップS3-3Aに変えたものであり、その他は、図39に示すフローチャートと同じである。
【0353】
図44を参照して、図43のステップS2の後、上述したステップS3-1,S3-2が順次実行される。そして、ステップS3-2の後、スキャンスケジューラ14Aは、ホップ段数Nおよびスキャン応答遅延SRTTに基づいてスキャンパケットの通信速度Vを設定する(ステップS3-3A)。
【0354】
その後、上述したステップS3-4~ステップS3-7が順次実行され、一連の動作は、図43のステップS4へ移行する。
【0355】
図45は、図44に示すステップS3-3Aの詳細な動作を説明するためのフローチャートである。
【0356】
図45を参照して、図44のステップS3-2の後、スキャンスケジューラ14Aは、i=1を設定する(ステップS41)。
【0357】
そして、スキャンスケジューラ14Aは、ホスト情報データベース13に格納された対応表TBL2の(S-1)個の対応表TBL3を参照して、IPアドレスAdd’に対応するスキャン応答SR(“1”からなるスキャン応答SR)およびスキャン応答遅延SRTTを検出する(ステップS42)。
【0358】
その後、スキャンスケジューラ14Aは、スキャン応答SRの総数NSRi_totalを検出する(ステップS43)。
【0359】
引き続いて、スキャンスケジューラ14Aは、s=1を設定し(ステップS44)、NSRTTi_total=0を設定する(ステップS45)。なお、sは、(S-1)個の対応表TBL3から検出したスキャン応答遅延SRTTの番号を表し、NSRDi_totalは、しきい値rATBi th以上であるスキャン応答遅延SRTTの総数を表す。
【0360】
ステップS45の後、スキャンスケジューラ14Aは、ネットワーク種別ATBに対応するしきい値rATBi thを選択し、スキャン応答遅延SRTTi_sがしきい値rATBi th以上であるか否かを判定する(ステップS46)。
【0361】
ステップS46において、スキャン応答遅延SRTTi_sがしきい値rATBi th以上であると判定されたとき、スキャンスケジューラ14Aは、NSRDi_total=NSRDi_total+1を設定する(ステップS47)。即ち、スキャンスケジューラ14Aは、スキャン応答遅延SRTTi_sがしきい値rATBi th以上であるとき、個数NSRDi_totalを“1”だけインクリメントする。
【0362】
一方、ステップS46において、スキャン応答遅延SRTTi_sがしきい値rATBi th以上でないと判定されたとき、一連の動作は、ステップS48へ移行する。
【0363】
そして、ステップS46において、スキャン応答遅延SRTTi_sがしきい値rATBi th以上でないと判定されたとき、またはステップS47の後、スキャンスケジューラ14Aは、s=NSRi_totalであるか否かを判定する(ステップS48)。なお、スキャン応答遅延SRTTの番号を表す“s”がスキャン応答SRの総数NSRi_totalと等しいか否かを判定するのは、ステップS42で検出されたスキャン応答SR(“1”からなるスキャン応答SR)の個数およびスキャン応答遅延SRTTの個数は、相互に等しいからである。
【0364】
ステップS48において、s=NSRi_totalでないと判定されたとき、スキャンスケジューラ14Aは、s=s+1を設定する(ステップS49)。その後、一連の動作は、ステップS46へ移行し、ステップS48において、s=NSRi_totalであると判定されるまで、ステップS46~ステップS49が繰り返し実行される。
【0365】
そして、ステップS48において、s=NSRi_totalであると判定されると、スキャンスケジューラ14Aは、c=NSRTTi_total/NSRi_totalによって比cを算出する(ステップS50)。
【0366】
その後、スキャンスケジューラ14Aは、ネットワーク種別ATBに対応するしきい値CATBiを選択し、比cがしきい値CATBiよりも大きいか否かを判定する(ステップS51)。
【0367】
ステップS51において、比cがしきい値CATBiよりも大きいと判定されたとき、スキャンスケジューラ14Aは、図27に示す対応表、または対応表TBL5を参照して、スキャンパケットの通信速度Vを1ホップのときのスキャンパケットの通信速度よりも1段階下げる(ステップS52)。
【0368】
一方、ステップS51において、比cがしきい値CATBiよりも大きくないと判定されたとき、スキャンスケジューラ14Aは、比cが“0”であるか否かを判定する(ステップS53)。
【0369】
ステップS53において、比cが“0”であると判定されたとき、スキャンスケジューラ14Aは、対応表TBL5を参照して、スキャンパケットの通信速度Vを1ホップのときのスキャンパケットの通信速度よりも1段階上げる(ステップS54)。
【0370】
そして、ステップS52の後、またはステップS53において比cが“0”でないと判定されたとき、またはステップS54の後、スキャンスケジューラ14Aは、i=mであるか否かを判定する(ステップS55)。
【0371】
ステップS55において、i=mでないと判定されたとき、スキャンスケジューラ14Aは、i=i+1を設定する(ステップS56)。その後、一連の動作は、ステップS42へ移行し、ステップS55において、i=mであると判定されるまで、ステップS42~ステップS56が繰り返し実行される。
【0372】
そして、ステップS55において、i=mであると判定されると、一連の動作は、図44のステップS3-4へ移行する。
【0373】
なお、ステップS53において、比cが零でないと判定された後、一連の動作がステップS55へ移行することは、スキャンパケットの通信速度Vを維持することに相当する。
【0374】
また、スキャンスケジューラ14Aは、ステップS52において、スキャンパケットの通信速度Vを1段階に限らず、任意の段階だけ下げてもよく、ステップS54において、スキャンパケットの通信速度Vを1段階に限らず、任意の段階だけ上げてもよい。
【0375】
更に、図45に示すフローチャートにおいては、スキャン応答SRの総数NSRi_totalが零であるか否かを判定し、スキャン応答SRの総数NSRi_totalが零であるとき、ステップS52を実行するようにしてもよい。総数NSRi_totalが零であることは、1つのIPアドレスAdd’に対するネットワークスキャンを実行した場合、スキャン応答SRが全く返って来なかったことを意味するので、スキャンパケットの通信速度Vを下げることによってネットワークスキャンに使用されるネットワークにおける混雑を低減してネットワークスキャンの結果の信頼性を向上できるからである。
【0376】
図45に示すフローチャートによれば、しきい値rATBi th以上であるスキャン応答遅延SRTTの個数NSRTTi_totalと、スキャン応答SRの個数NSRDi_totalとの比cがしきい値CATBiよりも大きくないとき、1ホップのときのスキャンパケットの通信速度よりもスキャンパケットの通信速度Vを下げない(ステップS53~ステップS55参照)。
【0377】
従って、ホップ段数Nが多くても、1ホップのときのネットワークスキャンに要する時間を少なくとも維持でき、ネットワークスキャンに必要な無線リソースの増加を抑制できる。
【0378】
また、比cが零(即ち、しきい値rATBi th以上であるスキャン応答遅延SRTTの個数NSRTTi_totalが零)であるとき、スキャンパケットの通信速度Vを上げる(ステップS53の“YES”→ステップS54参照)。
【0379】
従って、ホップ段数Nが多くても、1ホップのときよりもネットワークスキャンに要する時間を更に短くでき、ネットワークスキャンに必要な無線リソースを更に抑制できる。
【0380】
図46は、最小スキャン応答遅延をしきい値として用いたときのネットワーク種別を判定する実験結果を示す図である。
【0381】
図46においては、ネットワーク種別としてWLAN、Wi-SUNおよびLoRaを用いた。また、実験の試行回数は、各ネットワークの種別に対してそれぞれ200回である。
【0382】
図46を参照して、図30に示すフローチャート(図31および図32に示すフローチャートを含む。)に従ってネットワーク種別を判定した結果、対象ネットワークの種別がWLANであると判定された回数、対象ネットワークの種別がWi-SUNであると判定された回数、および対象ネットワークの種別がLoRaであると判定された回数は、全て、200回であった。
【0383】
このように、しきい値Dt_thjとして最小スキャン応答遅延を用いたとき、100%の確率で対象ネットワークの種別をWLAN、Wi-SUNおよびLoRaのいずれかであると判定することができることが分かった。
【0384】
図47は、平均スキャン応答遅延をしきい値として用いたときのネットワーク種別を判定する実験結果を示す図である。
【0385】
図47においても、ネットワーク種別としてWLAN、Wi-SUNおよびLoRaを用い、実験の試行回数も、各ネットワークの種別に対してそれぞれ200回である。
【0386】
図47を参照して、図30に示すフローチャート(図31および図32に示すフローチャートを含む。)に従ってネットワーク種別を判定した結果、対象ネットワークの種別がWLANであると判定された回数は、200回である。また、対象ネットワークの種別がWi-SUNであると判定された回数が194回であり、対象ネットワークの種別がWLUNであると判定された回数が6回である。更に、対象ネットワークの種別がLoRaであると判定された回数は、200回である。
【0387】
このように、しきい値Dt_thjとして平均スキャン応答遅延を用いたとき、WLANおよびLoRaのネットワークについては、100%の確率で対象ネットワークの種別を判定でき、Wi-SUNのネットワークについては、97%の確率で対象ネットワークの種別を判定できることが分かった。
【0388】
図46および図47に示す実験結果によって、図30に示すフローチャート(図31および図32に示すフローチャートを含む。)によるネットワーク種別の判定方法は、高い確率で対象ネットワークの種別を判定できることが分かった。そして、しきい値DT_thjとして最小スキャン応答遅延を用いることにとって、対象ネットワークの種別を判定する確率を100%に向上できることが分かった。
【0389】
従って、スキャン解析マネージャ12は、好ましくは、図32のステップS151において、対応表TBL1から最小スキャン応答遅延をしきい値DT_th1~DT_th5として読み出す。
【0390】
上述したように、図30に示すフローチャート(図31および図32に示すフローチャートを含む。)に従ってネットワーク種別を判定することによって対象ネットワークの種別を正確に判定することができる。
【0391】
この発明の実施の形態においては、ネットワークスキャン装置1の動作は、ソフトウェアによって実現されてもよい。この場合、ネットワークスキャン装置1は、CPU(Central Processing Unit)、ROM(Read Only Memory)およびRAM(Random Access Memory)を備える。そして、ROMは、図29に示すフローチャート(図30から図39に示すフローチャートを含む。)の各ステップからなるプログラムProg_Aを記憶する。
【0392】
CPUは、ROMからプログラムProg_Aを読み出し、その読み出したプログラムProg_Aを実行して、対象ネットワークの種別を判定するとともに対象ネットワークの無線通信区間のホップ段数を推定する。RAMは、算出された1ホップの遅延時間、経路遅延、伝送遅延ARTT、複数の絶対値|ARTT-DT_thj|、複数の絶対値|ARTT-DT_thj|の最小値およびしきい値Th等を一時的に記憶する。
【0393】
また、プログラムProg_Aは、CD,DVD等の記録媒体に記録されて流通してもよい。プログラムProg_Aを記録した記録媒体がコンピュータに装着されると、コンピュータは、記録媒体からプログラムProg_Aを読み出して実行し、対象ネットワークの種別を判定するとともに対象ネットワークの無線通信区間のホップ段数を推定する。
【0394】
従って、プログラムProg_Aを記録した記録媒体は、コンピュータ読み取り可能な記録媒体である。
【0395】
また、この発明の実施の形態においては、ネットワークスキャン装置1Aの動作は、ソフトウェアによって実現されてもよい。この場合、ネットワークスキャン装置1Aは、CPU、ROMおよびRAMを備える。そして、ROMは、図43に示すフローチャート(図30から図38図44および図45に示すフローチャートを含む。)の各ステップからなるプログラムProg_Bを記憶する。
【0396】
CPUは、ROMからプログラムProg_Bを読み出し、その読み出したプログラムProg_Bを実行して、対象ネットワークの種別を判定するとともに対象ネットワークの無線通信区間のホップ段数を推定する。RAMは、算出された1ホップの遅延時間、経路遅延、伝送遅延ARTT、複数の絶対値|ARTT-DT_thj|、複数の絶対値|ARTT-DT_thj|の最小値およびしきい値Th等を一時的に記憶する。
【0397】
また、プログラムProg_Bは、CD,DVD等の記録媒体に記録されて流通してもよい。プログラムProg_Bを記録した記録媒体がコンピュータに装着されると、コンピュータは、記録媒体からプログラムProg_Bを読み出して実行し、対象ネットワークの種別を判定するとともに対象ネットワークの無線通信区間のホップ段数を推定する。
【0398】
従って、プログラムProg_Bを記録した記録媒体は、コンピュータ読み取り可能な記録媒体である。
【0399】
上記においては、スキャンパケットの通信速度Vをホップ段数Nに応じて1ホップのときのスキャンパケットの通信速度の(1/N)倍に設定すると、説明したが、この発明の実施の形態においては、これに限らず、ホップ段数Nが2ホップ以上であるときのスキャンパケットの通信速度がホップ段数Nの増加に伴って1ホップのときのスキャンパケットの通信速度から直線的に減少するようにしてもよい。
【0400】
ホップ段数Nが2ホップ以上であるときのスキャンパケットの通信速度をこのようにして決定することによって、1ホップのときのスキャンパケットの通信速度の(1/N)倍になるようにホップ段数Nが2ホップ以上であるときのスキャンパケットの通信速度を制御する場合に比べて、ホップ段数Nが多い領域におけるスキャンパケットの通信速度を大きく低下させることができるので、無線リソースを更に低減できる。
【0401】
なお、この発明の実施の形態においては、スキャンパケットの通信速度Vは、ホップ段数Nが第1の値であるとき第1の通信速度に設定され、ホップ段数Nが第1の値よりも大きい第2の値であるとき第1の通信速度よりも低い第2の通信速度に設定されればよい。
【0402】
また、上記においては、ネットワーク種別(=端末装置の属性)を判定した場合において、ネットワークの無線通信区間のホップ段数Nを推定すると説明したが、この発明の実施の形態においては、これに限らず、ネットワーク種別(=端末装置の属性)を判定しない場合において、ネットワークの無線通信区間のホップ段数Nを推定するようにしてもよい。ホップ段数Nを推定する方法自体は、ネットワーク種別によって変わらないからである。従って、ネットワーク種別が1個である場合について、上述した方法によってホップ段数を推定するようにしてもよい。
【0403】
更に、上述した実施の形態によれば、α(=αMINまたはαAVE)を算出し、その算出したα(=αMINまたはαAVE)をしきい値Thと比較してホップ段数Nを推定する。そして、しきい値Thは、上述した式(4)(即ち、式(2)または式(3))によって算出される。その結果、しきい値Thは、最小遅延WRTTi_MINに基づいて算出されることになる。従って、この発明の実施の形態においては、α(=αMINまたはαAVE)を算出し、その算出したα(=αMINまたはαAVE)を最小遅延WRTTi_MINと比較してネットワークスキャンに使用するネットワークにおける無線通信区間のホップ段数Nを推定することを特徴とする。
【0404】
この発明の実施の形態においては、K個のルータ1~Kのうちスキャン応答SRが返って来たルータであり、かつ、端末装置に最も近いルータを「最近接ルータ」としたとき、最近接ルータからのスキャン応答遅延RTTは、「経路制御応答遅延」を構成する。
【0405】
また、この発明の実施の形態においては、TTLは、「段数指標」を構成する。
【0406】
更に、この発明の実施の形態においては、Pingパケットを送信するネットワークスキャナ11は、「送信手段」を構成する。
【0407】
更に、この発明の実施の形態においては、スキャン応答SRを受信するネットワークスキャナ11は、「受信手段」を構成する。
【0408】
更に、この発明の実施の形態においては、スキャン応答遅延RTTを計測するスキャン解析マネージャ12は、「計測手段」を構成する。
【0409】
更に、この発明の実施の形態においては、対象ネットワークの種別を判定するスキャン解析マネージャ12は、「判定手段」を構成する。
【0410】
更に、この発明の実施の形態においては、ネットワークスキャンに使用するネットワークの無線通信区間のホップ段数を推定するスキャン解析マネージャ12は、「推定手段」を構成する。
【0411】
更に、この発明の実施の形態においては、推定されたホップ段数に応じてスキャンパケットの通信速度を設定してスキャンスケジュールを作成するスキャンスケジューラ14は、「スケジュール作成手段」を構成する。
【0412】
更に、この発明の実施の形態においては、α(=αi_MINまたはαi_AVE)は、「第1の減算結果」を構成する。
【0413】
更に、この発明の実施の形態においては、対応表TBL1,TBL2(TBL3を含む)を作成するスキャン解析マネージャ12は、「記録手段」を構成する。
【0414】
更に、この発明の実施の形態においては、ネットワークNW1は、「第1のネットワーク」を構成し、Wired LAN、WLAN、Wi-SUN、LoRaおよびLTEは、「複数の第1のネットワーク」を構成する。
【0415】
更に、この発明の実施の形態においては、ネットワークNW2は、「第2のネットワーク」を構成する。
【0416】
更に、この発明の実施の形態においては、対応表TBLに格納されたスキャン応答遅延SRTTは、「計測スキャン応答遅延」を構成する。
【0417】
更に、この発明の実施の形態においては、(WRTTi_MIN-RRTTi_AVE)または(DWRTT_min-DRRTT_ave)は、「第2の減算結果」を構成し、Dは、「第3の減算結果」を構成し、Dは、「第4の減算結果」を構成する。
【0418】
更に、この発明の実施の形態においては、しきい値Thは、「第1のしきい値」を構成し、しきい値Thは、「第2のしきい値」を構成する。
【0419】
更に、この発明の実施の形態においては、しきい値rATBi thは、「第3のしきい値」を構成し、しきい値CATBiは、「第4のしきい値」を構成する。
【0420】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【0421】
この発明は、ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体に適用される。
【符号の説明】
【0422】
1 ネットワークスキャン装置、10 通信システム、11 ネットワークスキャナ、12 スキャン解析マネージャ、13 ホスト情報データベース、14 スキャンスケジューラ、20 スキャン対象ネットワーク、30 ユーザ。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33
図34
図35
図36
図37
図38
図39
図40
図41
図42
図43
図44
図45
図46
図47