(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-12
(45)【発行日】2024-07-23
(54)【発明の名称】ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体
(51)【国際特許分類】
H04L 43/0864 20220101AFI20240716BHJP
【FI】
H04L43/0864
(21)【出願番号】P 2020137753
(22)【出願日】2020-08-18
【審査請求日】2023-07-14
(31)【優先権主張番号】P 2020055291
(32)【優先日】2020-03-26
(33)【優先権主張国・地域又は機関】JP
【新規性喪失の例外の表示】特許法第30条第2項適用 滕 睿、荒木 白幸、矢野 一人、鈴木 義規が、電子情報通信学会信学技報,vol.119,no.344,NS2019-142,pp.45-49,2019年12月にて、滕 睿、荒木 白幸、矢野 一人、鈴木 義規がした、Statistical Study on Response Delay Characteristics of Network Scan to IoT Devicesについて公開。
【新規性喪失の例外の表示】特許法第30条第2項適用 滕 睿、矢野 一人、鈴木 義規が、International Conference on Advanced Communications Technology(ICACT),p319-323にて、滕 睿、矢野 一人、鈴木 義規がした、Identification of IoT Network Type Based on The Response Delay Propertyについて公開。
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和2年度支出負担行為担当官、総務省大臣官房会計課企画官、研究テーマ「周波数有効利用のためのIoTワイヤレス高効率広域ネットワークスキャン技術の研究開発」に関する委託研究、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】393031586
【氏名又は名称】株式会社国際電気通信基礎技術研究所
(74)【代理人】
【識別番号】100112715
【氏名又は名称】松山 隆夫
(72)【発明者】
【氏名】滕 睿
(72)【発明者】
【氏名】荒木 白幸
(72)【発明者】
【氏名】矢野 一人
(72)【発明者】
【氏名】鈴木 義規
【審査官】前田 健人
(56)【参考文献】
【文献】特表2009-543075(JP,A)
【文献】矢野 一人 Kazuto YANO,IoTワイヤレス機器に対する広域ネットワークスキャン技術の研究開発 Research and Development on Wide Area Network Scan Techniques for IoT Wireless Equipment,電子情報通信学会技術研究報告 Vol.119 No.106 IEICE Technical Report,日本,一般社団法人電子情報通信学会 The Institute of Electronics,Information and Communication Engineers,2019年07月03日,第119巻,pp.177-182
(58)【調査した分野】(Int.Cl.,DB名)
H04L 43/08
(57)【特許請求の範囲】
【請求項1】
複数のルータを介して情報を端末装置へ送信する多段ネットワークにおいて、ネットワークスキャンを行うためのパケットであるスキャンパケットを
ルータが1個であり、かつ、ネットワークスキャンの対象となる対象ネットワークに接続された前記端末装置へ送信する送信手段と、
前記多段ネットワークにおいて、前記スキャンパケットに対する応答であるスキャン応答を
前記端末装置から受信する受信手段と、
前記送信手段が前記スキャンパケットを
前記端末装置へ送信してから前記受信手段が前記スキャン応答を
前記端末装置から受信するまでのスキャン応答遅延を計測する計測手段と、
ネットワークスキャン装置から前記複数のルータのうち前記スキャン応答が返って来たルータであり、かつ、前記端末装置に最も近い最近接ルータまでの段数である経路制御段数と前記スキャン応答遅延とに基づいて、
前記対象ネットワークにおける伝送遅延を算出する演算手段と、
前記演算手段によって算出された伝送遅延に基づいて前記対象ネットワークの種別を判定する判定手段とを備えるネットワークスキャン装置。
【請求項2】
前記演算手段は、前記経路制御段数に基づいて
前記ネットワークスキャン装置から前記対象ネットワークまでの間に存在するルータによる遅延時間である経路遅延を算出し、その算出した経路遅延を前記スキャン応答遅延から減算して前記伝送遅延を算出する、請求項1に記載のネットワークスキャン装置。
【請求項3】
前記演算手段は、前記スキャン応答に含まれる前記多段ネットワークの段数よりも小さい段数を前記経路制御段数とし、前記最近接ルータに対するスキャン応答遅延である経路制御応答遅延を前記経路制御段数で除算して
複数の前記端末装置について算出された複数の1ホップ当たりの遅延時間の平均値からなる1ホップ当たりの遅延時間を算出し、その算出した1ホップ当たりの遅延時間に
前記ネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または前記経路制御段数を乗算して前記経路遅延を算出し、その算出した経路遅延を
前記計測手段によって計測された前記スキャン応答遅延から減算して前記伝送遅延を算出する、請求項2に記載のネットワークスキャン装置。
【請求項4】
前記演算手段は、前記平均値に
前記ネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または前記経路制御段数を乗算して前記経路遅延を算出し、その算出した経路遅延を前記スキャン応答遅延から減算して前記伝送遅延を算出する、請求項3に記載のネットワークスキャン装置。
【請求項5】
前記判定手段は、前記伝送遅延をネットワークの種別に応じて決定されたしきい値と比較し、前記伝送遅延が最も近い前記しきい値に対応するネットワークの種別を前記対象ネットワークの種別として判定する仮判定を実行し、前記仮判定の回数が最も多い種別を前記対象ネットワークの種別として決定する、請求項1から請求項4のいずれか1項に記載のネットワークスキャン装置。
【請求項6】
前記しきい値は、スキャン応答遅延の最小値である最小スキャン応答遅延からなる、請求項5に記載のネットワークスキャン装置。
【請求項7】
前記判定手段は、前記仮判定の回数が同じである種別が複数存在するとき、前記対象ネットワークの種別を不明であると判定する、請求項5または請求項6に記載のネットワークスキャン装置。
【請求項8】
前記判定手段による判定結果に基づいてネットワーク種別が判定された前記対象ネットワークを抽出し、その抽出した対象ネットワークにおいて、1回のネットワークスキャンに要する時間リソース量を算出し、ネットワークスキャンを実行する時間帯の長さと前記時間帯における混雑度とに基づいて前記時間帯におけるネットワークスキャンに
利用可能なリソース量を算出し、前記時間リソース量に基づいて前記
利用可能なリソース量を超えないようにネットワークスキャンのスケジュールを作成するスケジュール作成処理を実行するスケジュール作成手段を更に備える、請求項1から請求項7のいずれか1項に記載のネットワークスキャン装置。
【請求項9】
前記スケジュール作成手段は、前記スケジュール作成処理において、前記対象ネットワークにおけるスキャン応答遅延の平均値にマージン係数を乗算して前記時間リソース量を算出する、請求項8に記載のネットワークスキャン装置。
【請求項10】
前記スケジュール作成手段は、前記判定手段による判定結果に基づいて複数の対象ネットワークを抽出したとき、前記複数の対象ネットワークの全てについて前記スケジュール作成処理を実行する、請求項8または請求項9に記載のネットワークスキャン装置。
【請求項11】
送信手段が、複数のルータを介して情報を端末装置へ送信する多段ネットワークにおいて、ネットワークスキャンを行うためのパケットであるスキャンパケットを
ルータが1個であり、かつ、ネットワークスキャンの対象となる対象ネットワークに接続された前記端末装置へ送信する第1のステップと、
受信手段が、前記多段ネットワークにおいて、前記スキャンパケットに対する応答であるスキャン応答を
前記端末装置から受信する第2のステップと、
計測手段が、前記第1のステップにおいて前記スキャンパケットが
前記端末装置へ送信されてから前記第2のステップにおいて前記スキャン応答が
前記端末装置から受信されるまでのスキャン応答遅延を計測する第3のステップと、
演算手段が、ネットワークスキャン装置から前記複数のルータのうち前記スキャン応答が返って来たルータであり、かつ、前記端末装置に最も近い最近接ルータまでの段数である経路制御段数と前記スキャン応答遅延とに基づいて、
前記対象ネットワークにおける伝送遅延を算出する第4のステップと、
判定手段が、前記第4のステップにおいて算出された伝送遅延に基づいて前記対象ネットワークの種別を判定する第5のステップとをコンピュータに実行させるためのプログラム。
【請求項12】
前記演算手段は、前記第4のステップにおいて、前記経路制御段数に基づいて
前記ネットワークスキャン装置から前記対象ネットワークまでの間に存在するルータによる遅延時間である経路遅延を算出し、その算出した経路遅延を前記スキャン応答遅延から減算して前記伝送遅延を算出する、請求項11に記載のコンピュータに実行させるためのプログラム。
【請求項13】
前記演算手段は、前記第4のステップにおいて、前記スキャン応答に含まれる前記多段ネットワークの段数よりも小さい段数を前記経路制御段数とし、前記最近接ルータに対するスキャン応答遅延である経路制御応答遅延を前記経路制御段数で除算して
複数の前記端末装置について算出された複数の1ホップ当たりの遅延時間の平均値からなる1ホップ当たりの遅延時間を算出し、その算出した1ホップ当たりの遅延時間に
前記ネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または前記経路制御段数を乗算して前記経路遅延を算出し、その算出した経路遅延を
前記第3のステップにおいて計測された前記スキャン応答遅延から減算して前記伝送遅延を算出する、請求項12に記載のコンピュータに実行させるためのプログラム。
【請求項14】
前記演算手段は、前記第4のステップにおいて、前記平均値に
前記ネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または前記経路制御段数を乗算して前記経路遅延を算出し、その算出した経路遅延を前記スキャン応答遅延から減算して前記伝送遅延を算出する、請求項13に記載のコンピュータに実行させるためのプログラム。
【請求項15】
前記判定手段は、前記第5のステップにおいて、前記伝送遅延をネットワークの種別に応じて決定されたしきい値と比較し、前記伝送遅延が最も近い前記しきい値に対応するネットワークの種別を前記対象ネットワークの種別として判定する仮判定を実行し、前記仮判定の回数が最も多い種別を前記対象ネットワークの種別として決定する、請求項11から請求項14のいずれか1項に記載のコンピュータに実行させるためのプログラム。
【請求項16】
前記しきい値は、スキャン応答遅延の最小値である最小スキャン応答遅延からなる、請求項15に記載のコンピュータに実行させるためのプログラム。
【請求項17】
前記判定手段は、前記第5のステップにおいて、前記仮判定の回数が同じである種別が複数存在するとき、前記対象ネットワークの種別を不明であると判定する、請求項15または請求項16に記載のコンピュータに実行させるためのプログラム。
【請求項18】
スケジュール作成手段が、前記判定手段による判定結果に基づいてネットワーク種別が判定された前記対象ネットワークを抽出し、その抽出した対象ネットワークにおいて、1回のネットワークスキャンに要する時間リソース量を算出し、ネットワークスキャンを実行する時間帯の長さと前記時間帯における混雑度とに基づいて前記時間帯におけるネットワークスキャンに
利用可能なリソース量を算出し、前記時間リソース量に基づいて前記
利用可能なリソース量を超えないようにネットワークスキャンのスケジュールを作成するスケジュール作成処理を実行する第6のステップを更にコンピュータに実行させる、請求項11から請求項17のいずれか1項に記載のコンピュータに実行させるためのプログラム。
【請求項19】
前記スケジュール作成手段は、前記第6のステップの前記スケジュール作成処理において、前記対象ネットワークにおけるスキャン応答遅延の平均値にマージン係数を乗算して前記時間リソース量を算出する、請求項18に記載のコンピュータに実行させるためのプログラム。
【請求項20】
前記スケジュール作成手段は、前記第6のステップにおいて、前記判定手段による判定結果に基づいて複数の対象ネットワークを抽出したとき、前記複数の対象ネットワークの全てについて前記スケジュール作成処理を実行する、請求項18または請求項19に記載のコンピュータに実行させるためのプログラム。
【請求項21】
請求項11から請求項20のいずれか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, 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.
【文献】F. Adelantado, X. Vilajosana, P. Tuset-Peiro, B. Martinez, J. Melia-Segui and T. Watteyne, “Understanding the Limits of LoRaWAN,” IEEE Commun. Mag., vol.55, Issue 9, pp.34-40, Sept 2017.
【文献】H. Harada, K. Mizutani, J. Fujikawa, K. Mochizuki, K. Obata,and R. Okumura, “IEEE 802.15.4g Based Wi-SUN Communication Systems,” IEICE Trans. Commun., vol.E100B, pp.1032-1043, 2017.
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、大規模なネットワークスキャンは、非常に多くのIoT機器を調査するために非常に多くのスキャンオーバーヘッドの原因となる。ネットワークスキャンのトラフィックがIoT機器に与える影響は、IoTネットワークの種別によって変化する。例えば、有線LAN(Local Area Network)およびLPWA(Low Power, Wide Area)ネットワークにおけるIoT機器は、異なった通信リソース、データレート、エネルギー消費効率およびバックグランドトラフィックを有する(非特許文献3,4)。ネットワークスキャンの実行によって、IoTネットワークおよびIoT機器は、通信の中断を被る。また、無線IoT機器は、無線IoTネットワークに利用可能な無線リソースが限られているため、有線で接続されたIoT機器よりも多くの影響を受ける。
【0008】
従って、IoTネットワークの種別を識別することは、ネットワークスキャンのスケジュールおよび動作を成功させるための1つの重要な課題である。
【0009】
そこで、この発明の実施の形態によれば、ネットワークスキャンの対象となるネットワークの種別を判定するネットワークスキャン装置を提供する。
【0010】
また、この発明の実施の形態によれば、ネットワークスキャンの対象となるネットワークの種別の判定をコンピュータに実行させるためのプログラムを提供する。
【0011】
更に、この発明の実施の形態によれば、ネットワークスキャンの対象となるネットワークの種別の判定をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【課題を解決するための手段】
【0012】
(構成1)
この発明の実施の形態によれば、ネットワークスキャン装置は、送信手段と、受信手段と、計測手段と、演算手段と、判定手段とを備える。送信手段は、複数のルータを介して情報を端末装置へ送信する多段ネットワークにおいて、ネットワークスキャンを行うためのパケットであるスキャンパケットを送信する。受信手段は、多段ネットワークにおいて、スキャンパケットに対する応答であるスキャン応答を受信する。計測手段は、送信手段がスキャンパケットを送信してから受信手段がスキャン応答を受信するまでのスキャン応答遅延を計測する。演算手段は、当該ネットワークスキャン装置から複数のルータのうちスキャン応答が返って来たルータであり、かつ、端末装置に最も近い最近接ルータまでの段数である経路制御段数とスキャン応答遅延とに基づいて、ルータが1個であり、かつ、ネットワークスキャンの対象となる対象ネットワークにおける伝送遅延を算出する。判定手段は、演算手段によって算出された伝送遅延に基づいて対象ネットワークの種別を判定する。
【0013】
(構成2)
構成1において、演算手段は、経路制御段数に基づいて当該ネットワークスキャン装置から対象ネットワークまでの間に存在するルータによる遅延時間である経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0014】
(構成3)
構成2において、演算手段は、スキャン応答に含まれる多段ネットワークの段数よりも小さい段数を経路制御段数とし、最近接ルータに対するスキャン応答遅延である経路制御応答遅延を経路制御段数で除算して1ホップ当たりの遅延時間を算出し、その算出した1ホップ当たりの遅延時間に当該ネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または経路制御段数を乗算して経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0015】
(構成4)
構成3において、1ホップ当たりの遅延時間は、ネットワークスキャンの対象である複数の端末装置について算出された複数の1ホップ当たりの遅延時間の平均値からなる。演算手段は、平均値に当該ネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または経路制御段数を乗算して経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0016】
(構成5)
構成1から構成4のいずれかにおいて、判定手段は、伝送遅延をネットワークの種別に応じて決定されたしきい値と比較し、伝送遅延が最も近いしきい値に対応するネットワークの種別を対象ネットワークの種別として判定する仮判定を実行し、仮判定の回数が最も多い種別を対象ネットワークの種別として決定する。
【0017】
(構成6)
構成5において、しきい値は、スキャン応答遅延の最小値である最小スキャン応答遅延からなる。
【0018】
(構成7)
構成5または構成6において、判定手段は、仮判定の回数が同じである種別が複数存在するとき、対象ネットワークの種別を不明であると判定する。
【0019】
(構成8)
構成1から構成7のいずれかにおいて、ネットワークスキャン装置は、スケジュール作成手段を更に備える。スケジュール作成手段は、判定手段による判定結果に基づいてネットワーク種別が判定された対象ネットワークを抽出し、その抽出した対象ネットワークにおいて、1回のネットワークスキャンに要する時間リソース量を算出し、ネットワークスキャンを実行する時間帯の長さと時間帯における混雑度とに基づいて時間帯におけるネットワークスキャンに必要なリソース量を算出し、時間リソース量に基づいてリソース量を超えないようにネットワークスキャンのスケジュールを作成するスケジュール作成処理を実行する。
【0020】
(構成9)
構成8において、スケジュール作成手段は、スケジュール作成処理において、対象ネットワークにおけるスキャン応答遅延の平均値にマージン係数を乗算して時間リソース量を算出する。
【0021】
(構成10)
構成8または構成9において、スケジュール作成手段は、判定手段による判定結果に基づいて複数の対象ネットワークを抽出したとき、複数の対象ネットワークの全てについてスケジュール作成処理を実行する。
【0022】
(構成11)
また、この発明の実施の形態によれば、プログラムは、
送信手段が、複数のルータを介して情報を端末装置へ送信する多段ネットワークにおいて、ネットワークスキャンを行うためのパケットであるスキャンパケットを送信する第1のステップと、
受信手段が、多段ネットワークにおいて、スキャンパケットに対する応答であるスキャン応答を受信する第2のステップと、
計測手段が、第1のステップにおいてスキャンパケットが送信されてから第2のステップにおいてスキャン応答が受信されるまでのスキャン応答遅延を計測する第3のステップと、
演算手段が、ネットワークスキャン装置から複数のルータのうちスキャン応答が返って来たルータであり、かつ、端末装置に最も近い最近接ルータまでの段数である経路制御段数とスキャン応答遅延とに基づいて、ルータが1個であり、かつ、ネットワークスキャンの対象となる対象ネットワークにおける伝送遅延を算出する第4のステップと、
判定手段が、第4のステップにおいて算出された伝送遅延に基づいて対象ネットワークの種別を判定する第5のステップとをコンピュータに実行させるためのプログラムである。
【0023】
(構成12)
構成11において、演算手段は、第4のステップにおいて、経路制御段数に基づいて当該ネットワークスキャン装置から対象ネットワークまでの間に存在するルータによる遅延時間である経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0024】
(構成13)
構成12において、演算手段は、第4のステップにおいて、スキャン応答に含まれる多段ネットワークの段数よりも小さい段数を経路制御段数とし、最近接ルータに対するスキャン応答遅延である経路制御応答遅延を経路制御段数で除算して1ホップ当たりの遅延時間を算出し、その算出した1ホップ当たりの遅延時間にネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または経路制御段数を乗算して経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0025】
(構成14)
構成13において、1ホップ当たりの遅延時間は、ネットワークスキャンの対象である複数の端末装置について算出された複数の1ホップ当たりの遅延時間の平均値からなり、
演算手段は、第4のステップにおいて、平均値にネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または経路制御段数を乗算して経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0026】
(構成15)
構成11から構成14のいずれかにおいて、判定手段は、第5のステップにおいて、伝送遅延をネットワークの種別に応じて決定されたしきい値と比較し、伝送遅延が最も近いしきい値に対応するネットワークの種別を対象ネットワークの種別として判定する仮判定を実行し、仮判定の回数が最も多い種別を対象ネットワークの種別として決定する。
【0027】
(構成16)
構成15において、しきい値は、スキャン応答遅延の最小値である最小スキャン応答遅延からなる。
【0028】
(構成17)
構成15または構成16において、判定手段は、第5のステップにおいて、仮判定の回数が同じである種別が複数存在するとき、対象ネットワークの種別を不明であると判定する。
【0029】
(構成18)
プログラムは、スケジュール作成手段が、判定手段による判定結果に基づいてネットワーク種別が判定された対象ネットワークを抽出し、その抽出した対象ネットワークにおいて、1回のネットワークスキャンに要する時間リソース量を算出し、ネットワークスキャンを実行する時間帯の長さと時間帯における混雑度とに基づいて時間帯におけるネットワークスキャンに必要なリソース量を算出し、時間リソース量に基づいてリソース量を超えないようにネットワークスキャンのスケジュールを作成するスケジュール作成処理を実行する第6のステップを更にコンピュータに実行させる。
【0030】
(構成19)
構成18において、スケジュール作成手段は、第6のステップのスケジュール作成処理において、対象ネットワークにおけるスキャン応答遅延の平均値にマージン係数を乗算して時間リソース量を算出する。
【0031】
(構成20)
構成18または構成19において、スケジュール作成手段は、第6のステップにおいて、判定手段による判定結果に基づいて複数の対象ネットワークを抽出したとき、複数の対象ネットワークの全てについてスケジュール作成処理を実行する。
【0032】
(構成21)
更に、この発明の実施の形態によれば、記録媒体は、構成11から構成20のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【0033】
ネットワークスキャンの対象となるネットワークの種別を判定できる。
【図面の簡単な説明】
【0034】
【
図1】この発明の実施の形態における通信システムの概略図である。
【
図2】
図1に示すネットワークスキャン装置の実施の形態1における概略図である。
【
図3】
図2に示すホスト情報データベースの概念図である。
【
図5】1ホップの遅延時間を算出する方法を説明するための図である。
【
図6】ネットワーク種別、最小スキャン応答遅延および平均スキャン応答遅延の対応表を示す図である。
【
図7】ネットワーク種別がWired LANであるときのスキャン応答遅延とネットワークスキャンの回数との関係を示す図である。
【
図8】ネットワーク種別がWired LANであるときのスキャン応答遅延の確率分布関数を示す図である。
【
図9】ネットワーク種別がWLAN、Wi-SUNおよびLoRaであるときのスキャン応答遅延とネットワークスキャンの回数との関係を示す図である。
【
図10】ネットワーク種別がWLANであるときのスキャン応答遅延の確率分布関数を示す図である。
【
図11】ネットワーク種別がWi-SUNであるときのスキャン応答遅延の確率分布関数を示す図である。
【
図12】ネットワーク種別がLoRaであるときのスキャン応答遅延の確率分布関数を示す図である。
【
図13】ネットワーク種別を判定する動作を説明するためのフローチャートである。
【
図14】
図13のステップS4の詳細な動作を説明するためのフローチャートである。
【
図15】
図13のステップS5の詳細な動作を説明するためのフローチャートである。
【
図16】ネットワーク種別を判定する動作を説明するための別のフローチャートである。
【
図17】最小スキャン応答遅延をしきい値として用いたときのネットワーク種別を判定する実験結果を示す図である。
【
図18】平均スキャン応答遅延をしきい値として用いたときのネットワーク種別を判定する実験結果を示す図である。
【
図19】
図1に示すネットワークスキャン装置の実施の形態2における概略図である。
【
図20】1回のネットワークスキャンに必要な時間リソース量の例を示す図である。
【
図21】
図19に示すネットワークスキャン装置の動作を説明するためのフローチャートである。
【
図22】
図19に示すネットワークスキャン装置の動作を説明するための別のフローチャートである。
【発明を実施するための形態】
【0035】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【0036】
図1は、この発明の実施の形態における通信システムの概略図である。
図1を参照して、この発明の実施の形態による通信システム10は、ネットワークスキャン装置1と、インターネットプロバイダISPと、基地局BS1~BS4と、端末装置TM1~TM5とを備える。
【0037】
ネットワークスキャン装置1、インターネットプロバイダISP(Internet Service Provider)、基地局BS1~BS4および端末装置TM1~TM5は、通信空間に配置される。
【0038】
インターネットプロバイダISPは、ネットワークNW1の通信事業者である。基地局BS1~BS4は、それぞれ、ネットワークNW2~NW5の基地局である。ネットワークNW1は、例えば、有線LANであり、ネットワークNW2は、例えば、無線LAN(WLAN)であり、ネットワークNW3は、例えば、Wi-SUN(Wireless Smart Utility Network)であり、ネットワークNW4は、例えば、LoRa(Long Range)であり、ネットワークNW5は、例えば、LTE(Long Term Evolution)である。ネットワークNW1~NW5は、相互に異なる通信規格に従って通信を行う。
【0039】
端末装置TM1~TM5は、それぞれ、ネットワークNW1~NW5内に配置され、インターネットプロバイダISPおよび基地局BS1~BS4と通信を行う。
【0040】
なお、
図1においては、ネットワークNW1~NW5のそれぞれにおいて、1個の端末装置が図示されているが、実際には、ネットワークNW1~NW5のそれぞれにおいて、複数の端末装置が存在する。
【0041】
この発明の実施の形態においては、端末装置TM1~TM5の各々が無線端末である場合があり、端末装置TM1~TM5の一部が無線端末からなり、かつ、残りが有線端末からなる場合もある。
【0042】
端末装置TM1は、有線を介してインターネットプロバイダISPに接続される。
【0043】
端末装置TM2~TM5は、それぞれ、無線通信によって基地局BS1~BS4と通信を行う。
【0044】
ネットワークスキャン装置1は、後述する方法によって、端末装置TM1~TM5に対してネットワークスキャンを行い、ネットワークNW1~NW5の種別を判定する。
【0045】
[実施の形態1]
図2は、
図1に示すネットワークスキャン装置1の実施の形態1における概略図である。
図2を参照して、ネットワークスキャン装置1は、ネットワークスキャナ11と、スキャン解析マネージャ12と、ホスト情報データベース13と、スキャンスケジューラ14とを備える。
【0046】
ネットワークスキャナ11は、スキャンスケジューラ14からスキャンスケジュールを受ける。そして、ネットワークスキャナ11は、1,2,3,・・・,g(gは、3以上の整数)のいずれかの数値に設定されたTTL(Time To Live)を含むg個のスキャンパケット(例えば、Pingパケットなど)を生成する。そうすると、ネットワークスキャナ11は、スキャンスケジュールに基づいて、g個のPingパケットを送信し、スキャン対象のネットワーク20に接続された端末装置に対してネットワークスキャンを行う。
【0047】
そして、ネットワークスキャナ11は、ネットワーク20に接続された端末装置からネットワークスキャンのスキャン応答を受信し、その受信したスキャン応答をユーザ(ネットワークセキュリティ等からなる)30およびスキャン解析マネージャ12へ出力する。
【0048】
スキャン解析マネージャ12は、ネットワークスキャナ11からスキャン応答を受け、ネットワークスキャン中に通信ログを受ける。そして、スキャン解析マネージャ12は、スキャン応答に基づいてスキャン対象の端末装置のアドレスと、スキャン応答とを対応付けたスキャン結果を生成し、その生成したスキャン結果をホスト情報データベース13に格納することによってホスト情報データベース13を作成または更新する。
【0049】
また、スキャン解析マネージャ12は、複数の端末装置を対象とするネットワークスキャンのスキャン応答遅延に基づいて、後述する方法によって、ネットワーク20(ネットワークNW1~NW5)の種別を判定する。
【0050】
ホスト情報データベース13は、スキャン結果を記憶する。
【0051】
スキャンスケジューラ14は、ホスト情報データベース13からスキャン結果を読み出す。また、スキャンスケジューラ14は、スキャン要件をユーザ30から受ける。スキャンスケジューラ14は、ネットワークスキャンを行う領域(例えば、日本国内)に存在する全ての端末装置のグローバルIPアドレスおよびドメイン名を予め保持している。
【0052】
そして、スキャンスケジューラ14は、スキャン要件およびスキャン結果に基づいて、後述する方法によって、ネットワークスキャンのスキャンタイミングと各スキャンタイミングにおけるネットワークスキャンの対象となる端末装置とを対応付けたスキャンスケジュールを作成する。そうすると、スキャンスケジューラ14は、スキャンスケジュールをネットワークスキャナ11へ出力してスキャンスケジュールに従ってネットワークスキャンを実行するようにネットワークスキャナ11を制御する。
【0053】
図3は、
図2に示すホスト情報データベース13の概念図である。
図3を参照して、ホスト情報データベース13は、時刻tと、IPアドレスAdd
i(i=1~I、Iは、端末装置の総数)と、ドメイン名DN
iと、基地局と、スキャン応答SR
iと、スキャン応答遅延RTT
iと、仮判定と、仮判定回数と、最終判定とを含む。時刻t、IPアドレスAdd
i、ドメイン名DN
i、基地局、スキャン応答SR
i、スキャン応答遅延RTT
i、仮判定、仮判定回数および最終判定は、相互に対応付けられる。
【0054】
時刻tは、YYYY/MM/DD/hh/mm/ss(年/月/日/時/分/秒)によって表される。そして、時刻tは、ネットワークスキャンにおけるPingパケットをネットワークスキャンの対象である端末装置へ送信した時間を表す。
【0055】
IPアドレスAddiは、ネットワークスキャンの対象である端末装置のグローバルIPアドレスと、ネットワークスキャン装置1からネットワークスキャンの対象である端末装置までの間に存在するルータのIPアドレスとからなる。例えば、IPアドレスAdd1,Add11,Add12,・・・においては、IPアドレスAdd1は、端末装置のグローバルIPアドレスを表し、IPアドレスAdd11,Add12,・・・は、ネットワークスキャン装置1からネットワークスキャンの対象である端末装置(=IPアドレスAdd1)までの間に存在するルータのIPアドレスを表す。他のIPアドレスAdd2,Add21,Add22,・・・~AddI-1,AddI-11,AddI-12,・・・,AddI,AddI1,AddI2,・・・についても同様である。
【0056】
ドメイン名DNiは、IPアドレスAddiに基づいてPTR(PoinTeR record)レコードを用いて変換されたものである。
【0057】
基地局、スキャン応答SRi、スキャン応答遅延RTTi、仮判定、仮判定回数および最終判定は、端末装置iのIPアドレスAddiに対応して設けられる。
【0058】
スキャン応答SRiは、スキャン応答が返って来たとき、“1”からなり、スキャン応答が返って来なかったとき、“0”からなる。ネットワークスキャンは、通常、端末装置iのポート番号ごとに実行されるが、この発明の実施の形態においては、端末装置iのIPアドレスAddiごとにネットワークスキャンの結果を知りたいので、スキャン応答SRiは、端末装置iのIPアドレスAddiに対応付けられている。従って、端末装置iの複数のポート番号の少なくとも1つのポート番号からスキャン応答が返って来たとき、スキャン応答SRiは、1からなり、端末装置iの複数のポート番号の全てからスキャン応答が返って来なかったとき、スキャン応答SRiは、0からなる。
【0059】
図3においては、端末装置から返って来たスキャン応答SR
iについては、返って来たスキャン応答SR
iの個数分のスキャン応答がホスト情報データベース13に格納される。これは、上述したように、ネットワークスキャンは、g個のPingパケットを送信して行われるため、最大でg個のスキャン応答SR
iが返って来る。g個のスキャン応答SR
iのうち、少なくとも1個のスキャン応答SR
iが返って来れば、スキャン応答が返って来たことを示す“1”ではなく、返って来た個数分のスキャン応答SR
iがホスト情報データベース13に格納されている。
【0060】
そして、スキャン応答SR1,SR11,SR12,・・・において、スキャン応答SR1は、端末装置(=IPアドレスAdd1)から返って来たスキャン応答を表し、スキャン応答SR11は、ネットワークスキャン装置1と端末装置(=IPアドレスAdd1)との間に存在するルータのうち、ネットワークスキャン装置1に最も近いルータから返って来たスキャン応答を表し、スキャン応答SR12は、ネットワークスキャン装置1と端末装置(=IPアドレスAdd1)との間に存在するルータのうち、ネットワークスキャン装置1に2番目に近いルータから返って来たスキャン応答を表す。スキャン応答SR1,SR11,SR12,・・・以外のスキャン応答SR3,SR31,SR32,・・・~SRI-1,SRI-11,SRI-12,・・・についても同様である。
【0061】
スキャン応答遅延RTTiは、Pingパケットを送信した時刻からスキャン応答SRiが返って来るまでの時間からなる。そして、スキャン応答遅延RTTiは、スキャン応答SRiが返って来たことに基づいて計測されるので、ホスト情報データベース13には、返って来たスキャン応答SRiの個数と同じ個数のスキャン応答遅延RTTiが格納される。従って、例えば、スキャン応答遅延RTT1,RTT11,RTT12,・・・は、それぞれ、スキャン応答SR1,SR11,SR12に対応付けられている。スキャン応答遅延RTT1,RTT11,RTT12,・・・以外のスキャン応答遅延RTT3,RTT31,RTT32,・・・~RTTI-1,RTTI-11,RTTI-12,・・・についても同様である。
【0062】
そして、スキャン応答遅延RTT1,RTT11,RTT12,・・・において、スキャン応答遅延RTT1は、スキャン応答SR1が端末装置(=IPアドレスAdd1)から返って来たときのスキャン応答遅延を表し、スキャン応答遅延RTT11は、ネットワークスキャン装置1と端末装置(=IPアドレスAdd1)との間に存在するルータのうち、ネットワークスキャン装置1に最も近いルータからスキャン応答SR11が返って来たときのスキャン応答遅延を表し、スキャン応答遅延RTT12は、ネットワークスキャン装置1と端末装置(=IPアドレスAdd1)との間に存在するルータのうち、ネットワークスキャン装置1に2番目に近いルータからスキャン応答SR12が返って来たときのスキャン応答遅延を表す。スキャン応答遅延RTT3,RTT31,RTT32,・・・~RTTI-1,RTTI-11,RTTI-12,・・・についても同様である。
【0063】
仮判定は、後述する方法によって判定されたネットワークの種別Typeからなる。種別Typeは、種別Type1~Type5のいずれかからなる。種別Type1は、Wired LANからなり、種別Type2は、WLANからなり、種別Type3は、Wi-SUNからなり、種別Type4は、LoRaからなり、種別Type5は、LTEからなる。
【0064】
仮判定回数は、仮判定に含まれる1個以上の種別に対応付けられた1個以上の仮判定回数からなる。仮判定回数は、対象ネットワークの種別を種別Type(種別Type1~Type5のいずれか)と仮判定した回数からなる。例えば、仮判定回数Nd_11は、対象ネットワークの種別を種別Type3と仮判定した回数からなる。他の仮判定回数Nd_12,Nd_13,Nd_31,Nd_32,Nd_51,Nd_I-11,Nd_I-12,Nd_I-13,Nd_I-14についても同様である。
【0065】
最終判定は、それぞれ、端末装置のIPアドレスAdd1~AddIに対応付けられる。そして、最終判定は、最も多い仮判定回数に対応付けられた仮判定からなる。例えば、IPアドレスAdd1に対応付けられた種別Type3からなる最終判定は、種別Type1,Type3,Type4のうち、仮判定回数が最も多い仮判定回数Nd_11に対応付けられた種別Type3からなる。また、IPアドレスAddI-1に対応付けられた最終判定が“unknown”であるのは、仮判定回数Nd_I-11,Nd_I-12,Nd_I-13,Nd_I-14のうちの複数の仮判定回数が最も多く、相互に同じ回数であったためである。このように、仮判定回数が同じであるネットワーク種別が複数存在するとき、ネットワーク種別が“unknown”であると判定する。なお、“unknown”は、ネットワークの種別が不明であることを示す。更に、IPアドレスAddIに対応付けられた最終判定は、全てのスキャン応答SRIが返って来なかったので、対象ネットワークの種別を判定する動作を実行できなかったことを表す“-----”からなる。
【0066】
図4は、スキャンスケジュールの概念図である。
図4を参照して、スキャンスケジュールSCSHDは、スキャン総時間長T
S_totalを有し、T
S(T
Sは、1以上の整数)個のスキャンタイミング1
S~スキャンタイミングT
Sを含む。
【0067】
スキャン総時間長TS_totalは、例えば、1日に設定され、スキャンタイミング1S~スキャンタイミングTSの各々は、例えば、1時間の時間長を有する。スキャンタイミングtS(tS=1S~TS)は、開始時刻tstartと、終了時刻tendと、対象アドレスAdd1~Addn(nは、1以上I以下の整数)とを含む。
【0068】
開始時刻tstartは、スキャンタイミングtSにおいてネットワークスキャンを開始する時刻を表し、終了時刻tendは、スキャンタイミングtSにおいてネットワークスキャンを終了する時刻を表す。従って、ネットワークスキャナ11は、スキャンタイミングtSにおいて終了時刻tendが到来すると、ネットワークスキャンを終了する。
【0069】
対象アドレスAdd1~Addnの各々は、グローバルIPアドレスからなる。そして、対象アドレスAdd1~Addnは、ネットワークスキャンの対象であるn個の端末装置を表す。
【0070】
なお、スキャンタイミングt
S以外のスキャンタイミング1
S~(t-1)
S,(t+1)
S~T
Sの各々も、
図4に示すスキャンタイミングt
Sと同じ構成からなる。
【0071】
スキャンタイミング1S~TSは、相互に同じ時間長(=tend-tstart)を有していてもよく、相互に異なる時間長(=tend-tstart)を有していてもよい。また、スキャンタイミング1S~TSは、相互に同じ個数のIPアドレスを有していてもよく、相互に異なる個数のIPアドレスを有していてもよい。
【0072】
また、スキャンタイミングtSは、1つの時刻を意味するのではなく、開始時刻tstartから終了時刻tendまでの所定の時間長を有する概念である。
【0073】
ネットワークスキャンの対象となるネットワークの種別を判定する方法について説明する。
【0074】
スキャン解析マネージャ12は、1つのスキャンタイミングtSにおけるネットワークスキャンが終了すると、ホスト情報データベース13を参照して、1つのIPアドレスAddiに対応付けられたスキャン応答SRiおよびスキャン応答遅延RTTiを読み出す。
【0075】
そして、スキャン解析マネージャ12は、スキャン応答SRiに含まれるTTLiを検出する。この場合、スキャン解析マネージャ12は、例えば、IPアドレスAdd1に対応付けられたスキャン応答SR1,SR11,SR12,・・・からそれぞれTTL1,TTL11,TTL12,・・・を検出する。
【0076】
TTLは、Pingパケットが端末装置からネットワークスキャン装置1へ返って来るまでのホップ数を表す。1台のルータを通過する度に1ホップ増加するため、TTLは、Pingパケットが端末装置からネットワークスキャン装置1へ返って来るまでに通過したルータの台数+1を示す数値である。
【0077】
スキャン解析マネージャ12は、TTL1,TTL11,TTL12,・・・を検出すると、スキャン応答SR1,SR11,SR12,・・・にそれぞれ対応付けられたスキャン応答遅延STT1,RTT11,RTT12,・・・を検出する。そして、スキャン解析マネージャ12は、TTL1,TTL11,TTL12,・・・およびスキャン応答遅延STT1,RTT11,RTT12,・・・に基づいて、1ホップの遅延時間を算出する。
【0078】
なお、スキャン解析マネージャ12は、IPアドレスAdd1以外のIPアドレスAdd2~AddIについても、同様にして1ホップの遅延時間を算出する。
【0079】
図5は、1ホップの遅延時間を算出する方法を説明するための図である。
図5を参照して、ネットワークスキャン装置1と、ネットワークスキャンの対象となる端末装置との間には、K(Kは、1以上の整数)個のルータが存在する。
【0080】
TTL=1を含むPingパケットは、ルータ1まで到達し、TTL=2を含むPingパケットは、ルータ2まで到達し、以下、同様にして、TTL=K-1を含むPingパケットは、ルータK-1まで到達し、TTL=Kを含むPingパケットは、ルータKまで到達し、TTL=K+1を含むPingパケットは、端末装置まで到達する。
【0081】
端末装置は、Pingパケットを受信すると、Pingパケットからなるスキャン応答SRiを送信する。スキャン応答SRiは、端末装置からネットワークスキャン装置1までの間の各種の経路を経由してネットワークスキャン装置1に到達する。そして、スキャン応答SRiは、ネットワークスキャン装置1に到達したとき、通過したルータの個数からなるTTLを含む。
【0082】
そこで、この発明の実施の形態においては、端末装置からネットワークスキャン装置1に到達したスキャン応答に含まれるTTLのうち、最小のTTLをネットワーク経路の段数とする。そして、
図5においては、最小のTTLを“K+1”とする。
【0083】
そうすると、スキャン解析マネージャ12は、端末装置よりも1段手前のルータKからのスキャン応答SRに対応付けられたスキャン応答遅延RTTをホスト情報データベース13から検出し、その検出したスキャン応答遅延RTTをLast hop RTTとする。即ち、Last hop RTTは、端末装置からネットワークスキャン装置1へ到達したPingパケットに含まれるTTLによって表されるネットワークの段数K+1よりも1段だけ手前のルータKに対するスキャン応答遅延である。
【0084】
ネットワークスキャン装置1と端末装置との間に配置されたK個のルータ1~Kは、Pingパケットをネットワークスキャン装置1と端末装置との間で伝送するときの経路を制御する。従って、K個のルータ1~Kのうちスキャン応答SRが返って来たルータであり、かつ、端末装置に最も近いルータを「最近接ルータ」としたとき、ルータ1から最近接ルータまでの1個以上のルータを通過するときの経路段数を「経路制御段数」とする。その結果、ルータ1から最近接ルータまでの1個以上のルータは、通常、K個のルータ1~Kからなり、K個のルータ1~Kを通過するときの経路制御段数は、Kとなる。
【0085】
スキャン解析マネージャ12は、式(1)によって1ホップの遅延時間を算出する。
【0086】
1ホップの遅延時間=(Last hop RTT)/(経路制御段数)・・・(1)
式(1)における“Last hop RTT”は、ルータKに対して、複数回、Pingパケットを送信して取得した複数の「ルータKに対するスキャン応答遅延」の平均値からなっていてもよい。
【0087】
Last hop RTTを用いて、1ホップの遅延時間を算出するのは、送信したい情報を含むパケットを送信先の端末装置へ送信する場合、送信先の端末装置は、最終的に、1個のルータを介してパケットを受信するので、ルータKと端末装置とからなるネットワークをネットワークスキャンの対象である対象ネットワークとするためである。また、TTL=K+1を含むPingパケットがルータKまで到達した後、ルータKを通過するスキャン応答SRは、端末装置によって送信されたものであり、ネットワークスキャン装置1からルータKまでのスキャン応答遅延RTTと、ネットワークスキャン装置1から端末装置までのスキャン応答遅延RTTとを区別できないからである。
【0088】
その結果、1ホップの遅延時間は、K個のルータ1~Kにおける遅延時間の平均遅延時間からなる。
【0089】
また、1ホップの遅延時間は、複数の端末装置について算出された複数の1ホップ当たりの遅延時間の平均値からなっていてもよい。
【0090】
このように、この発明の実施の形態においては、ネットワークスキャンは、ネットワークスキャン装置1からネットワークスキャンの対象である端末装置までの間に複数のルータが存在する多段ネットワークにおいて実行される。
【0091】
スキャン解析マネージャ12は、1ホップの遅延時間を算出すると、1ホップの遅延時間にネットワークの経路段数(=K+1)よりも1段小さいKからなる経路制御段数を乗算して経路遅延RRTT(=1ホップの遅延時間×経路制御段数K)を算出する。
【0092】
なお、式(1)によって、Last hop RTTを経路制御段数Kで除算して1ホップの遅延時間を算出し、1ホップの遅延時間に経路制御段数Kを乗算して経路遅延RRTTを算出するのは、次の理由による。
【0093】
Last hop RTTは、実際には、バラツキを有するので、Last hop RTTを経路制御段数Kで除算して1つのルータを通過するときの平均的な遅延時間を1ホップの遅延時間として算出し、その算出した1ホップの遅延時間に経路制御段数Kを乗算して経路遅延RRTTを算出することによって、Last hop RTTのバラツキを丸めるためである。
【0094】
そして、ルータKからスキャン応答SRiが返って来ない場合には、ネットワークスキャン装置1がPingパケットを送信してからルータK-1からのスキャン応答SRiを受信するまでのスキャン応答遅延RTTiをLast hop RTTとして、上述した方法によって経路遅延RRTTを算出してもよく、ルータK-1,Kからスキャン応答SRiが返って来ない場合には、ネットワークスキャン装置1がPingパケットを送信してからルータK-2からのスキャン応答SRiを受信するまでのスキャン応答遅延RTTiをLast hop RTTとして、上述した方法によって経路遅延RRTTを算出してもよい。従って、一般的には、複数のルータ1~Kのうちの最近接ルータからのスキャン応答SRiを受信するまでのスキャン応答遅延RTTTiをLast hop RTTとして、上述した方法によって経路遅延RRTTを算出すればよい。
【0095】
経路遅延RRTTを算出した後、スキャン解析マネージャ12は、端末装置からのスキャン応答SRに対応付けられたスキャン応答遅延RTTをホスト情報データベース13から検出する。そして、スキャン解析マネージャ12は、スキャン応答遅延RTTから経路遅延RRTT(=1ホップの遅延時間×経路制御段数K)を減算してアクセス系部分の伝送遅延ARTT(=スキャン応答遅延RTT-経路遅延RRTT(=1ホップの遅延時間×経路制御段数K))を算出する。
【0096】
なお、ルータKからスキャン応答SRiが返って来ない場合には、上述の方法により1ホップの遅延時間を算出し、その算出した1ホップの遅延時間に多段ネットワークの段数から1を減じた値(すなわち、ネットワークスキャン装置1からルータK(=端末装置に最も近い位置に配置されたルータ)までのネットワーク段数)を乗算して経路遅延RRTTを算出してもよい。このようにすることで、ルータKからスキャン応答SRiが返って来ない場合においても、ルータKから端末装置までの遅延をアクセス系部分の伝送遅延ARTTとして求めることができる。
【0097】
図6は、ネットワーク種別、最小スキャン応答遅延および平均スキャン応答遅延の対応表を示す図である。
【0098】
図6を参照して、対応表TBL1は、ネットワーク種別と、最小スキャン応答遅延と、平均スキャン応答遅延とを含む。最小スキャン応答遅延および平均スキャン応答遅延は、ネットワーク種別に対応付けられる。
【0099】
ネットワーク種別は、Wired LAN、WLAN、Wi-SUN、LoRaおよびLTEからなる。
【0100】
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に対応付けられる。
【0101】
このように、Wired LAN、WLAN、Wi-SUN、LoRaおよびLTEは、相互に異なる最小スキャン応答遅延または平均スキャン応答遅延を有する。
【0102】
そして、最小スキャン応答遅延または平均スキャン応答遅延は、対象ネットワークの種別を判定するためのしきい値DT_thを構成する。より具体的には、Wired LANの最小スキャン応答遅延または平均スキャン応答遅延は、しきい値DT_th1を構成し、WLANの最小スキャン応答遅延または平均スキャン応答遅延は、しきい値DT_th2を構成し、Wi-SUNの最小スキャン応答遅延または平均スキャン応答遅延は、しきい値DT_th3を構成し、LoRaの最小スキャン応答遅延または平均スキャン応答遅延は、しきい値DT_th4を構成し、LTEの最小スキャン応答遅延または平均スキャン応答遅延は、しきい値DT_th5を構成する。
【0103】
スキャン解析マネージャ12は、対応表TBL1を保持している。そして、スキャン解析マネージャ12は、伝送遅延ARTTを算出すると、その算出した伝送遅延ARTTをしきい値DT_thと比較し、伝送遅延ARTTに最も近いしきい値DT_thに対応付けられたネットワーク種別を対象ネットワークの種別と仮判定する。
【0104】
図7は、ネットワーク種別がWired LANであるときのスキャン応答遅延とネットワークスキャンの回数との関係を示す図である。
【0105】
図7において、縦軸は、スキャン応答遅延を表し、横軸は、ネットワークスキャンの回数を表す。そして、
図7は、実測されたスキャン応答遅延と、ネットワークスキャンの回数との関係を示す。
【0106】
図7を参照して、Wired LANにおいて、スキャン応答遅延は、1000回までのネットワークスキャンに対して、概ね、0.30[ms]~0.55[ms]までの間に分布している。
【0107】
図8は、ネットワーク種別がWired LANであるときのスキャン応答遅延の確率分布関数を示す図である。
【0108】
図8において、縦軸は、確率分布関数を表し、横軸は、スキャン応答遅延を表す。
図8を参照して、スキャン応答遅延の平均は、0.41[ms]であり、スキャン応答遅延の最小値は、0.310[ms]であり、スキャン応答遅延の最大値は、0.560[ms]である。
【0109】
図9は、ネットワーク種別がWLAN、Wi-SUNおよびLoRaであるときのスキャン応答遅延とネットワークスキャンの回数との関係を示す図である。
【0110】
図9において、縦軸は、スキャン応答遅延を表し、横軸は、ネットワークスキャンの回数を表す。そして、
図9は、実測されたスキャン応答遅延と、ネットワークスキャンの回数との関係を示す。
【0111】
図9を参照して、スキャン応答遅延は、1500回までのネットワークスキャンに対して、WLAN、Wi-SUNおよびLoRaの間で大きく異なっている。そして、スキャン応答遅延は、WLANにおいて、最も小さく、Wi-SUNにおいて、2番目に小さく、LoRaにおいて、最も大きい。
【0112】
図10は、ネットワーク種別がWLANであるときのスキャン応答遅延の確率分布関数を示す図である。
【0113】
図10において、縦軸は、確率分布関数を表し、横軸は、スキャン応答遅延を表す。
図10を参照して、スキャン応答遅延の平均は、2.16[ms]であり、スキャン応答遅延の最小値は、0.839[ms]である。
【0114】
図11は、ネットワーク種別がWi-SUNであるときのスキャン応答遅延の確率分布関数を示す図である。
図11において、縦軸は、確率分布関数を表し、横軸は、スキャン応答遅延を表す。
図11を参照して、スキャン応答遅延の平均は、460.4[ms]であり、スキャン応答遅延の最小値は、180[ms]である。
【0115】
図12は、ネットワーク種別がLoRaであるときのスキャン応答遅延の確率分布関数を示す図である。
図12において、縦軸は、確率分布関数を表し、横軸は、スキャン応答遅延を表す。
図12を参照して、スキャン応答遅延の平均は、5250[ms]であり、スキャン応答遅延の最小値は、3808[ms]である。
【0116】
なお、ネットワーク種別がLTEである場合も、上述したWired LAN、WLAN、Wi-SUNおよびLoRaと同様にして、実測したスキャン応答遅延の分布に基づいて、最小スキャン応答遅延および平均スキャン応答遅延の値を決定した。
【0117】
スキャン解析マネージャ12は、終了条件が満たされるまで仮判定を繰り返し実行する。終了条件は、次の終了条件1および終了条件2のいずれかからなる。
【0118】
(終了条件1)
仮判定を所定の回数Mだけ実施した場合
なお、Mは、例えば、10回である。
【0119】
(終了条件2)
あるネットワーク種別に対する仮判定回数が支配的になった場合
例えば、あるネットワーク種別に対する仮判定回数がM/2回以上になった場合である。
【0120】
また、スキャン解析マネージャ12は、終了条件1を用いる場合、所定の時間内に仮判定回数がM回に達しないとき、ネットワーク種別を“unknown”と判定する。
【0121】
図13は、ネットワーク種別を判定する動作を説明するためのフローチャートである。なお、
図13においては、ネットワークスキャンの対象である全ての端末装置(=IPアドレスAdd
1~Add
I)からそれぞれスキャン応答SR
1~SR
Iが返って来たことを前提としてネットワーク種別を判定する動作を説明する。
【0122】
図13を参照して、ネットワーク種別を判定する動作が開始されると、スキャン解析マネージャ12は、i=1を設定する(ステップS1)。そして、ネットワークスキャナ11は、Pingパケットを送信してネットワークスキャンを実行する(ステップS2)。
【0123】
その後、スキャン解析マネージャ12は、スキャン応答遅延を計測する(ステップS3)。
【0124】
引き続いて、スキャン解析マネージャ12は、ネットワークの経路段数およびスキャン応答遅延に基づいてアクセス系部分の伝送遅延ARTTiを算出する(ステップS4)。
【0125】
そして、スキャン解析マネージャ12は、伝送遅延ARTTiをしきい値と比較し、ネットワーク種別を仮判定する(ステップS5)。
【0126】
そうすると、スキャン解析マネージャ12は、仮判定の終了条件を満たすか否かを判定する(ステップS6)。
【0127】
ステップS6において、仮判定の終了条件を満たさないと判定されたとき、一連の動作は、ステップS2へ移行し、ステップS6において、仮判定の終了条件を満たすと判定されるまで、ステップS2~ステップS6が繰り返し実行される。
【0128】
そして、ステップS6において、仮判定の終了条件を満たすと判定されると、スキャン解析マネージャ12は、仮判定回数が所定の時間内にM回に達したか否かを判定する(ステップS7)。
【0129】
ステップS7において、仮判定回数が所定の時間内にM回に達しなかったと判定されたとき、スキャン解析マネージャ12は、“unknown”を端末装置iの最終判定結果に設定する(ステップS8)。
【0130】
一方、ステップS7において、仮判定回数が所定の時間内にM回に達したと判定されたとき、スキャン解析マネージャ12は、判定回数が最も多い仮判定結果を端末装置iの最終判定結果に設定する(ステップS9)。
【0131】
そして、スキャン解析マネージャ12は、ステップS8またはステップS9の後、i=Iであるか否かを判定する(ステップS10)。
【0132】
ステップS10において、i=Iでないと判定されたとき、スキャン解析マネージャ12は、i=i+1を設定する(ステップS11)。その後、一連の動作は、ステップS2へ移行し、ステップS10において、i=Iであると判定されるまで、ステップS2~ステップS11が繰り返し実行される。
【0133】
そして、ステップS10において、i=Iであると判定されると、スキャン解析マネージャ12は、最終判定結果をホスト情報データベース13に記録する(ステップS12)。そして、ステップS12の後、ネットワーク種別を判定する動作が終了する。
【0134】
なお、
図13に示すフローチャートに従って、スキャン応答SRが返って来なかった端末装置(=IPアドレスAdd
i)も対象として対象ネットワークの種別を判定するには、ステップS2とステップS3との間に「スキャン応答SR
iが“1”からなるか否かを判定するステップ」を挿入し、スキャン応答SR
iが“1”からなると判定されたとき、ステップS3へ移行し、スキャン応答SR
iが“1”からならないと判定されたとき、ステップS10へ移行するようにすればよい。
【0135】
図14は、
図13のステップS4の詳細な動作を説明するためのフローチャートである。
図14を参照して、
図13のステップS3の後、スキャン解析マネージャ12は、端末装置iからのスキャン応答SR
iに含まれるTTL
iを検出し、その検出したTTL
iの数値K+1をネットワークの経路段数に設定する(ステップS41)。
【0136】
そして、スキャン解析マネージャ12は、端末装置iの1つ手前に位置するルータKからのスキャン応答SRiKに対応するスキャン応答遅延RTTiKを検出する(ステップS42)。
【0137】
その後、スキャン解析マネージャ12は、スキャン応答遅延RTTiKをネットワークスキャン装置からルータKまでのホップ数である経路制御段数Kで除算して1ホップの遅延時間を算出する(ステップS43)。
【0138】
引き続いて、スキャン解析マネージャ12は、1ホップの遅延時間にネットワークスキャン装置からルータKまでの経路制御段数Kを乗算して経路遅延を算出する(ステップS44)。
【0139】
そうすると、スキャン解析マネージャ12は、端末装置iからのスキャン応答SR
iに対応付けられたスキャン応答遅延RTT
iから経路遅延を減算して伝送遅延ARTT
iを算出する(ステップS45)。その後、一連の動作は、
図13のステップS5へ移行する。
【0140】
なお、
図14に示すフローチャートにおいては、ステップS42において、端末装置iの最近接ルータKclsからのスキャン応答SR
iKclsに対応するスキャン応答遅延RTT
iKclsを検出し、ステップS43において、スキャン応答遅延RTT
iKclsをネットワークスキャン装置から最近接ルータKclsまでのホップ数である経路制御段数で除算して1ホップの遅延時間を算出してもよい。ここで、スキャン応答SR
iKclsおよびスキャン応答遅延RTT
iKclsにおいて、添え字“i”は、IPアドレスAdd
iに対応しており、添え字“Kcls”は、最近接ルータKclsに対応している。
【0141】
図15は、
図13のステップS5の詳細な動作を説明するためのフローチャートである。
【0142】
図15を参照して、
図13のステップS4の後、スキャン解析マネージャ12は、保持している対応表TBL1からそれぞれWired LAN、WLAN、Wi-SUN、LoRaおよびLTEのネットワークにおけるしきい値DT_th1~DT_th5を読み出す(ステップS51)。
【0143】
この場合、スキャン解析マネージャ12は、Wired LANにおけるしきい値としてしきい値DT_th1を読み出し、WLANにおけるしきい値としてしきい値DT_th2を読み出し、Wi-SUNにおけるしきい値としてしきい値DT_th3を読み出し、LoRaにおけるしきい値としてしきい値DT_th4を読み出し、LTEにおけるしきい値としてしきい値DT_th5を読み出す。
【0144】
また、スキャン解析マネージャ12は、対応表TBL1の最小スキャン応答遅延または平均スキャン応答遅延をしきい値DT_th1~DT_th5として読み出す。
【0145】
ステップS51の後、スキャン解析マネージャ12は、j=1を設定し(ステップS52)、伝送遅延ARTTiとしきい値DT_thjとの差の絶対値|ARTTi―DT_thj|を算出する(ステップS53)。
【0146】
そして、スキャン解析マネージャ12は、j=NNWであるか否かを判定する(ステップS54)。なお、NNWは、ネットワークの総数である。
【0147】
ステップS54において、j=NNWでないと判定されたとき、スキャン解析マネージャ12は、j=j+1を設定する(ステップS55)。その後、一連の動作は、ステップS53へ移行し、ステップS54において、j=NNWであると判定されるまで、ステップS53~ステップS55が繰り返し実行される。
【0148】
そして、ステップS54において、j=NNWであると判定されると、スキャン解析マネージャ12は、複数の絶対値|ARTTi―DT_thj|から最小値を検出する(ステップS56)。
【0149】
そうすると、スキャン解析マネージャ12は、最小値が複数有るか否かを判定する(ステップS57)。
【0150】
ステップS57において、最小値が複数有ると判定されたとき、スキャン解析マネージャ12は、対象ネットワークの種別を“unknown”と仮判定する(ステップS58)。
【0151】
一方、ステップS57において、最小値が複数無いと判定されたとき、スキャン解析マネージャ12は、最小値の算出に用いられたしきい値DT_thjに対応するネットワーク種別を対象ネットワークの種別として仮判定する(ステップS59)。
【0152】
そして、ステップS58またはステップS59の後、スキャン解析マネージャ12は、仮判定結果と仮判定回数をホスト情報データベース13に記録する(ステップS60)。その後、一連の動作は、
図13のステップS6へ移行する。
【0153】
図16は、ネットワーク種別を判定する動作を説明するための別のフローチャートである。なお、
図16においては、ネットワークスキャンの対象である全ての端末装置(=IPアドレスAdd
1~Add
I)からそれぞれスキャン応答SR
1~SR
Iが返って来たことを前提としてネットワーク種別を判定する動作を説明する。
【0154】
図16に示すフローチャートは、
図13に示すフローチャートのステップS7~ステップS9をステップS13~ステップS17に変えたものであり、その他は、
図13に示すフローチャートと同じである。
【0155】
図16を参照して、ネットワーク種別を判定する動作が開始されると、上述したステップS1~ステップS6が順次実行される。
【0156】
そして、ステップS6において、仮判定の終了条件を満たさないと判定されたとき、スキャン解析マネージャ12は、所定時間が経過したか否かを判定する(ステップS13)。
【0157】
ステップS13において、所定時間が経過したと判定されたとき、スキャン解析マネージャ12は、“unknown”を端末装置iの最終判定結果に設定する(ステップS14)。
【0158】
一方、ステップS13において、所定時間が経過していないと判定されたとき、一連の動作は、ステップS2へ移行し、ステップS6において、所定時間が経過するまでに仮判定の終了条件を満たすと判定されるまで、ステップS2~ステップS6,S13が繰り返し実行される。
【0159】
そして、ステップS6において、仮判定の終了条件を満たすと判定されると、スキャン解析マネージャ12は、仮判定回数が支配的であるか否かを判定する(ステップS15)。
【0160】
ステップS15において、仮判定回数が支配的であると判定されたとき、スキャン解析マネージャ12は、仮判定回数が支配的になった仮判定結果を端末装置iの最終判定結果に設定する(ステップS16)。
【0161】
一方、ステップS15において、仮判定回数が支配的でないと判定されたとき、スキャン解析マネージャ12は、判定回数が最も多い仮判定結果を端末装置iの最終判定結果に設定する(ステップS17)。
【0162】
そして、スキャン解析マネージャ12は、ステップS14、ステップS16およびステップS17のいずれかの後、上述したステップS10~ステップS12を順次実行する。この場合、スキャン解析マネージャ12は、ステップS10において、i=Iでないと判定したとき、上述したステップS11を実行する。その後、一連の動作は、ステップS2へ移行し、ステップS10において、i=Iであると判定されるまで、ステップS2~S6,S13~S17が繰り返し実行される。
【0163】
そして、ステップS10において、i=Iであると判定されると、上述したステップS12が実行され、ネットワーク種別を判定する動作が終了する。
【0164】
なお、
図16に示すフローチャートにおいては、ステップS4の詳細な動作は、
図14に示すフローチャートに従って実行され、ステップS5の詳細な動作は、
図15に示すフローチャートに従って実行される。
【0165】
また、
図16に示すフローチャートに従って、スキャン応答SRが返って来なかった端末装置(=IPアドレスAdd
i)も対象として対象ネットワークの種別を判定するには、ステップS2とステップS3との間に「スキャン応答SR
iが“1”からなるか否かを判定するステップ」を挿入し、スキャン応答SR
iが“1”からなると判定されたとき、ステップS3へ移行し、スキャン応答SR
iが“1”からならないと判定されたとき、ステップS10へ移行するようにすればよい。
【0166】
図17は、最小スキャン応答遅延をしきい値として用いたときのネットワーク種別を判定する実験結果を示す図である。
【0167】
図17においては、ネットワーク種別としてWLAN、Wi-SUNおよびLoRaを用いた。また、実験の試行回数は、各ネットワークの種別に対してそれぞれ200回である。
【0168】
図17を参照して、
図13に示すフローチャート(
図14および
図15に示すフローチャートを含む。)に従ってネットワーク種別を判定した結果、対象ネットワークの種別がWLANであると判定された回数、対象ネットワークの種別がWi-SUNであると判定された回数、および対象ネットワークの種別がLoRaであると判定された回数は、全て、200回であった。
【0169】
このように、しきい値Dt_thjとして最小スキャン応答遅延を用いたとき、100%の確率で対象ネットワークの種別をWLAN、Wi-SUNおよびLoRaのいずれかであると判定することができることが分かった。
【0170】
図18は、平均スキャン応答遅延をしきい値として用いたときのネットワーク種別を判定する実験結果を示す図である。
【0171】
図18においても、ネットワーク種別としてWLAN、Wi-SUNおよびLoRaを用い、実験の試行回数も、各ネットワークの種別に対してそれぞれ200回である。
【0172】
図18を参照して、
図13に示すフローチャート(
図14および
図15に示すフローチャートを含む。)に従ってネットワーク種別を判定した結果、対象ネットワークの種別がWLANであると判定された回数は、200回である。また、対象ネットワークの種別がWi-SUNであると判定された回数が194回であり、対象ネットワークの種別がWLUNであると判定された回数が6回である。更に、対象ネットワークの種別がLoRaであると判定された回数は、200回である。
【0173】
このように、しきい値Dt_thjとして平均スキャン応答遅延を用いたとき、WLANおよびLoRaのネットワークについては、100%の確率で対象ネットワークの種別を判定でき、Wi-SUNのネットワークについては、97%の確率で対象ネットワークの種別を判定できることが分かった。
【0174】
図17および
図18に示す実験結果によって、
図13に示すフローチャート(
図14および
図15に示すフローチャートを含む。)によるネットワーク種別の判定方法は、高い確率で対象ネットワークの種別を判定できることが分かった。そして、しきい値DT_thjとして最小スキャン応答遅延を用いることによって、対象ネットワークの種別を判定する確率を100%に向上できることが分かった。
【0175】
従って、スキャン解析マネージャ12は、好ましくは、
図15のステップS51において、対応表TBL1から最小スキャン応答遅延をしきい値DT_th1~DT_th5として読み出す。
【0176】
上述したように、
図13に示すフローチャート(
図14および
図15に示すフローチャートを含む。)に従ってネットワーク種別を判定することによって対象ネットワークの種別を正確に判定することができる。
【0177】
実施の形態1においては、ネットワークスキャン装置1の動作は、ソフトウェアによって実現されてもよい。この場合、ネットワークスキャン装置1は、CPU(Central Processing Unit)、ROM(Read Only Memory)およびRAM(Random Access Memory)を備える。そして、ROMは、
図13に示すフローチャート(
図14および
図15に示すフローチャートを含む。)の各ステップからなるプログラムProg_A、または
図16に示すフローチャート(
図14および
図15に示すフローチャートを含む。)の各ステップからなるプログラムProg_Bを記憶する。
【0178】
CPUは、ROMからプログラムProg_AまたはプログラムProg_Bを読み出し、その読み出したプログラムProg_AまたはプログラムProg_Bを実行して、対象ネットワークの種別を判定する。RAMは、算出された1ホップの遅延時間、経路遅延、伝送遅延ARTTi、複数の絶対値|ARTTi-DT_thj|および複数の絶対値|ARTTi-DT_thj|の最小値を一時的に記憶する。
【0179】
また、プログラムProg_AまたはプログラムProg_Bは、CD,DVD等の記録媒体に記録されて流通してもよい。プログラムProg_AまたはプログラムProg_Bを記録した記録媒体がコンピュータに装着されると、コンピュータは、記録媒体からプログラムProg_AまたはプログラムProg_Bを読み出して実行し、対象ネットワークの種別を判定する。
【0180】
従って、プログラムProg_AまたはプログラムProg_Bを記録した記録媒体は、コンピュータ読み取り可能な記録媒体である。
【0181】
[実施の形態2]
図19は、
図1に示すネットワークスキャン装置の実施の形態2における概略図である。
【0182】
図19を参照して、実施の形態2におけるネットワークスキャン装置1Aは、
図2に示すネットワークスキャン装置1のスキャンスケジューラ14をスキャンスケジューラ14Aに変えたものであり、その他は、ネットワークスキャン装置1と同じである。
【0183】
スキャンスケジューラ14Aは、スキャン解析マネージャ12による対象ネットワークの種別の判定結果に基づいて、後述する方法によって、対象ネットワークの種別に応じてネットワークスキャンのスキャンスケジュールを作成する。そして、スキャンスケジューラ14Aは、その作成したスキャンスケジュールをネットワークスキャナ11へ出力してスキャンスケジュールに従ってネットワークスキャンを実行するようにネットワークスキャナ11を制御する。
【0184】
ネットワークの種別に応じてスキャンスケジュールを作成する方法について説明する。スキャンスケジューラ14Aは、ホスト情報データベース13の最終判定からネットワークの種別を検出する。
【0185】
そして、スキャンスケジューラ14Aは、検出したネットワークの種別の全てについて、1回のネットワークスキャンに必要な時間リソース量RSC_Timeを算出する。
【0186】
また、スキャンスケジューラ14Aは、ネットワークスキャンの1つのスキャンタイミング(即ち、
図4に示すスキャンタイミングt
S)の時間長L_t
Sを検出する。
【0187】
更に、スキャンスケジューラ14Aは、1つのスキャンタイミング(即ち、
図4に示すスキャンタイミングt
S)における通信の混雑度CNG_t
Sをネットワークの全てについて予め保持している。混雑度CNG_t
Sは、0~1の範囲の実数からなる。
【0188】
そして、スキャンスケジューラ14Aは、1つのスキャンタイミング(即ち、
図4に示すスキャンタイミングt
S)におけるネットワークスキャンに利用可能なリソース量をRSC_t
Sとすると、RSC_t
S=(1-CNG_t
S)×L_t
Sによって、1つのスキャンタイミング(即ち、
図4に示すスキャンタイミングt
S)におけるネットワークスキャンに利用可能なリソース量RSC_t
Sを算出する。
【0189】
そうすると、スキャンスケジューラ14Aは、時間リソース量RSC_Timeに基づいて、リソース量RSC_tSを超えないようにスキャンスケジュールを作成する。
【0190】
図20は、1回のネットワークスキャンに必要な時間リソース量RSC_Timeの例を示す図である。
【0191】
図20を参照して、時間リソース量RSC_Timeは、Wired LANにおいて、0.49[ms]であり、WLANにおいて、2.59[ms]であり、Wi-SUNにおいて、552[ms]であり、LoRaにおいて、6300[ms]であり、LTEにおいて、23.16[ms]である。
【0192】
スキャンスケジューラ14Aは、
図6に示す平均スキャン応答遅延にマージン係数(例えば、1.2)を乗算して
図20に示す時間リソース量RSC_Timeを各ネットワークについて算出する。なお、マージン係数は、各ネットワーク種別について、スキャン応答遅延の標準偏差を超えない範囲で決定されてもよい。
【0193】
スキャンスケジューラ14Aは、リソース量RSC_t
Sを時間リソース量RSC_Timeで除算して除算結果N_DIVを算出する。リソース量RSC_t
Sは、(1-CNG_t
S)×L_t
Sによって算出され、混雑度CNG_t
Sの単位は、無次元であるので、リソース量RSC_t
Sの単位は、[ms]である。その結果、除算結果N_DIVは、1つのスキャンタイミング(即ち、
図4に示すスキャンタイミングt
S)においてネットワークスキャンを実行可能な端末装置(IPアドレスAdd
i)の最大数を示す。
【0194】
従って、リソース量RSC_t
Sを超えないようにスキャンスケジュールを作成することは、除算結果N_DIVを超えないように、1つのスキャンタイミング(即ち、
図4に示すスキャンタイミングt
S)においてネットワークスキャンを実行する端末装置(IPアドレスAdd
i)の個数を決定することに相当する。
【0195】
図21は、
図19に示すネットワークスキャン装置1Aの動作を説明するためのフローチャートである。
【0196】
なお、
図21においては、各スキャンタイミングt
Sにおいて、各ネットワークの混雑度CNG_t
Sが予め取得されていることを前提としてネットワークスキャン装置1Aの動作を説明する。
【0197】
図21を参照して、ネットワークスキャン装置1Aの動作が開始されると、ネットワークスキャナ11およびスキャナ解析マネージャ12は、
図13に示すフローチャート(
図14および
図15に示すフローチャートを含む)を実行し、対象ネットワークの種別を判定する(ステップS61)。なお、ステップS61においては、
図16に示すフローチャート(
図14および
図15に示すフローチャートを含む)を実行して対象ネットワークの種別を判定してもよい。
【0198】
そして、スキャンスケジューラ14Aは、ホスト情報データベース13を参照して、ネットワーク種別の判定結果を取得する(ステップS62)。
【0199】
その後、スキャンスケジューラ14Aは、スキャンスケジュールを作成する対象となるネットワークの個数N_NWを取得する(ステップS63)。
【0200】
引き続いて、スキャンスケジューラ14Aは、w=1を設定し(ステップS64)、ネットワークNW_wにおいて、1回のネットワークスキャンに必要な時間リソース量RSC_Time_wを算出する(ステップS65)。
【0201】
そして、スキャンスケジューラ14Aは、ネットワークNW_wにおいてネットワークスキャンを実行する時間帯の混雑度CNG_tS_wとネットワークスキャンを実行する時間帯の時間長L_tSとに基づいてネットワークスキャンに利用可能なリソース量RSC_tS=(1-CNG_tS_w)×L_tSを算出する(ステップS66)。
【0202】
そうすると、スキャンスケジューラ14Aは、時間リソース量RSC_Time_wに基づいてリソース量RSC_tSを超えないようにネットワークスキャンのスキャンスケジュールSCH_wを作成する(ステップS67)。
【0203】
その後、スキャンスケジューラ14Aは、w=N_NWであるか否かを判定する(ステップS68)。
【0204】
ステップS68において、w=N_NWでないと判定されたとき、スキャンスケジューラ14Aは、w=w+1を設定する(ステップS69)。その後、一連の動作は、ステップS65へ移行し、ステップS68において、w=N_NWであると判定されるまで、ステップS65~ステップS69が繰り返し実行される。
【0205】
そして、ステップS68において、w=N_NWであると判定されると、スキャンスケジューラ14Aは、スキャンスケジュールSCH_1~SCH_N_NWをネットワークスキャナ11へ出力してスキャンスケジュールSCH_1~SCH_N_NWに基づいてネットワークスキャンを実行するようにネットワークスキャナ11を制御する。ネットワークスキャナ11は、スキャンスケジューラ14Aから受けたスキャンスケジュールSCH_1~SCH_N_NWに基づいてネットワークNW_1~NW_N_NWにおけるネットワークスキャンを実行する(ステップS70)。これによって、ネットワークスキャン装置1Aの動作が終了する。
【0206】
図22は、
図19に示すネットワークスキャン装置1Aの動作を説明するための別のフローチャートである。
【0207】
図22に示すフローチャートは、
図21に示すフローチャートのステップS63~ステップS70をステップS71~ステップS80に変えたものであり、その他は、
図21に示すフローチャートと同じである。
【0208】
図22を参照して、ネットワークスキャン装置1Aの動作が開始されると、上述したステップS61,S62が順次実行される。この場合、ステップS61においては、
図16に示すフローチャート(
図14および
図15に示すフローチャートを含む)を実行して対象ネットワークの種別を判定してもよい。
【0209】
そして、ステップS62の後、スキャンスケジューラ14Aは、判定結果が無線ネットワークであるものがあるか否かを判定する(ステップS71)。
【0210】
ステップS71において、判定結果が無線ネットワークであるものがあると判定されたとき、スキャンスケジューラ14Aは、無線ネットワークの個数N_RFを取得する(ステップS72)。
【0211】
そして、スキャンスケジューラ14Aは、f=1を設定する(ステップS73)。その後、スキャンスケジューラ14Aは、スキャンタイミングtSの時間帯における計測された混雑度CNG_tS_fを無線ネットワークNR_fの基地局から取得する(ステップS74)。ここで、計測された混雑度CNG_tS_fは、1つのスキャンタイミングtSにおいて、基地局との間で無線通信を行う端末装置の個数を基地局の通信範囲内に存在する端末装置の総数で除算した除算結果からなる。基地局は、自己の通信範囲内に存在する端末装置の総数を検知できるので、1つのスキャンタイミングtSにおいて、自己との間で無線通信を行う端末装置の個数をカウントし、そのカウントした端末装置の個数を自己の通信範囲内に存在する端末装置の総数で除算し、その除算結果からなる混雑度をネットワークスキャン装置1Aへ送信する。従って、スキャンスケジューラ14Aは、スキャンタイミングtSの時間帯における計測された混雑度CNG_tS_fを無線ネットワークNR_fの基地局から取得できる。
【0212】
ステップS74の後、スキャンスケジューラ14Aは、無線ネットワークNR_fにおいて、1回のネットワークスキャンに必要な時間リソース量RSC_Time_fを算出する(ステップS75)。
【0213】
そして、スキャンスケジューラ14Aは、無線ネットワークNR_fにおいてネットワークスキャンを実行する時間帯の混雑度CNG_tS_fとネットワークスキャンを実行する時間帯の時間長L_tSとに基づいてネットワークスキャンに利用可能なリソース量RSC_tS=(1-CNG_tS_f)×L_tSを算出する(ステップS76)。
【0214】
そうすると、スキャンスケジューラ14Aは、時間リソース量RSC_Time_fに基づいてリソース量RSC_tSを超えないようにネットワークスキャンのスキャンスケジュールSCH_fを作成する(ステップS77)。
【0215】
その後、スキャンスケジューラ14Aは、f=N_RFであるか否かを判定する(ステップS78)。
【0216】
ステップS78において、f=N_RFでないと判定されたとき、スキャンスケジューラ14Aは、f=f+1を設定する(ステップS79)。その後、一連の動作は、ステップS75へ移行し、ステップS78において、f=N_RFであると判定されるまで、ステップS75~ステップS79が繰り返し実行される。
【0217】
そして、ステップS78において、f=N_RFであると判定されると、スキャンスケジューラ14Aは、スキャンスケジュールSCH_1~SCH_N_RFをネットワークスキャナ11へ出力してスキャンスケジュールSCH_1~SCH_N_RFに基づいてネットワークスキャンを実行するようにネットワークスキャナ11を制御する。ネットワークスキャナ11は、スキャンスケジューラ14Aから受けたスキャンスケジュールSCH_1~SCH_N_RFに基づいて無線ネットワークNR_1~NR_N_RFにおけるネットワークスキャンを実行する(ステップS80)。そして、ステップS71において、判定結果が無線ネットワークであるものがないと判定されたとき、またはステップS80の後、ネットワークスキャン装置1Aの動作が終了する。
【0218】
実施の形態2においては、ネットワークスキャン装置1Aの動作は、ソフトウェアによって実現されてもよい。この場合、ネットワークスキャン装置1Aは、CPU、ROMおよびRAMを備える。そして、ROMは、
図21に示すフローチャート(
図13に示すフローチャート(
図14および
図15に示すフローチャートを含む)、または
図16に示すフローチャート(
図14および
図15に示すフローチャートを含む)を含む)の各ステップからなるプログラムProg_Cまたは
図22に示すフローチャート(
図13に示すフローチャート(
図14および
図15に示すフローチャートを含む)、または
図16に示すフローチャート(
図14および
図15に示すフローチャートを含む)を含む)の各ステップからなるプログラムProg_Dを記憶する。
【0219】
CPUは、ROMからプログラムProg_CまたはプログラムProg_Dを読み出し、その読み出したプログラムProg_CまたはプログラムProg_Dを実行して、対象ネットワークの種別を判定するとともに、その判定した対象ネットワークの種別に応じて作成されたスキャンスケジュールに従ってネットワークスキャンを実行する。RAMは、算出された1ホップの遅延時間、経路遅延、伝送遅延ARTTi、複数の絶対値|ARTTi-DT_thj|、複数の絶対値|ARTTi-DT_thj|の最小値、時間リソース量RSC_Timeおよびリソース量RSC_tSを一時的に記憶する。
【0220】
また、プログラムProg_CまたはプログラムProg_Dは、CD,DVD等の記録媒体に記録されて流通してもよい。プログラムProg_CまたはプログラムProg_Dを記録した記録媒体がコンピュータに装着されると、コンピュータは、記録媒体からプログラムProg_CまたはプログラムProg_Dを読み出して実行し、対象ネットワークの種別を判定するとともに、その判定した対象ネットワークの種別に応じて作成されたスキャンスケジュールに従ってネットワークスキャンを実行する。
【0221】
従って、プログラムProg_CまたはプログラムProg_Dを記録した記録媒体は、コンピュータ読み取り可能な記録媒体である。
【0222】
実施の形態2におけるその他の説明は、実施の形態1における説明と同じである。
【0223】
この発明の実施の形態においては、K個のルータ1~Kのうちスキャン応答SRが返って来たルータであり、かつ、端末装置に最も近いルータを「最近接ルータ」としたとき、最近接ルータからのスキャン応答遅延RTTは、「経路制御応答遅延」を構成する。
【0224】
また、この発明の実施の形態においては、TTLは、「段数指標」を構成する。
【0225】
更に、この発明の実施の形態においては、Pingパケットを送信するネットワークスキャナ11は、「送信手段」を構成する。
【0226】
更に、この発明の実施の形態においては、スキャン応答SRを受信するネットワークスキャナ11は、「受信手段」を構成する。
【0227】
更に、この発明の実施の形態においては、スキャン応答遅延RTTを計測するスキャン解析マネージャ12は、「計測手段」を構成する。
【0228】
更に、この発明の実施の形態においては、対象ネットワークの種別を判定するスキャン解析マネージャ12は、「判定手段」を構成する。
【0229】
更に、この発明の実施の形態においては、対象ネットワークの種別に応じてスキャンスケジュールを作成するスキャンスケジューラ14Aは、「スケジュール作成手段」を構成する。
【0230】
上述した実施の形態1においては、端末装置(IPアドレスAddi)からのスキャン応答遅延に基づいてネットワークスキャンの対象となる対象ネットワークにおける伝送遅延ARTTを算出し、その算出した伝送遅延ARTTに基づいて対象ネットワークの種別を判定するネットワークスキャン装置1について説明した。
【0231】
また、実施の形態2においては、実施の形態1における対象ネットワークの種別の判定に加え、対象ネットワークの種別の判定結果に応じて、ネットワークスキャンのスキャンスケジュールを作成するネットワークスキャン装置1Aについて説明した。
【0232】
従って、この発明の実施の形態によれば、ネットワークスキャン装置は、次の構成1から構成10を備えていればよい。
【0233】
(構成1)
ネットワークスキャン装置は、送信手段と、受信手段と、計測手段と、演算手段と、判定手段とを備える。送信手段は、複数のルータを介して情報を端末装置へ送信する多段ネットワークにおいて、ネットワークスキャンを行うためのパケットであるスキャンパケットを送信する。受信手段は、多段ネットワークにおいて、スキャンパケットに対する応答であるスキャン応答を受信する。計測手段は、送信手段がスキャンパケットを送信してから受信手段がスキャン応答を受信するまでのスキャン応答遅延を計測する。演算手段は、当該ネットワークスキャン装置から複数のルータのうちスキャン応答が返って来たルータであり、かつ、端末装置に最も近い最近接ルータまでの段数である経路制御段数とスキャン応答遅延とに基づいて、ルータが1個であり、かつ、ネットワークスキャンの対象となる対象ネットワークにおける伝送遅延を算出する。判定手段は、演算手段によって算出された伝送遅延に基づいて対象ネットワークの種別を判定する。
【0234】
(構成2)
構成1において、演算手段は、経路制御段数に基づいて当該ネットワークスキャン装置から対象ネットワークまでの間に存在するルータによる遅延時間である経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0235】
(構成3)
構成2において、演算手段は、スキャン応答に含まれる多段ネットワークの段数よりも小さい段数を経路制御段数とし、最近接ルータに対するスキャン応答遅延である経路制御応答遅延を経路制御段数で除算して1ホップ当たりの遅延時間を算出し、その算出した1ホップ当たりの遅延時間に当該ネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または経路制御段数を乗算して経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0236】
(構成4)
構成3において、1ホップ当たりの遅延時間は、ネットワークスキャンの対象である複数の端末装置について算出された複数の1ホップ当たりの遅延時間の平均値からなる。演算手段は、平均値に当該ネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または経路制御段数を乗算して経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0237】
(構成5)
構成1から構成4のいずれかにおいて、判定手段は、伝送遅延をネットワークの種別に応じて決定されたしきい値と比較し、伝送遅延が最も近いしきい値に対応するネットワークの種別を対象ネットワークの種別として判定する仮判定を実行し、仮判定の回数が最も多い種別を対象ネットワークの種別として決定する。
【0238】
(構成6)
構成5において、しきい値は、スキャン応答遅延の最小値である最小スキャン応答遅延からなる。
【0239】
(構成7)
構成5または構成6において、判定手段は、仮判定の回数が同じである種別が複数存在するとき、対象ネットワークの種別を不明であると判定する。
【0240】
(構成8)
構成1から構成7のいずれかにおいて、ネットワークスキャン装置は、スケジュール作成手段を更に備える。スケジュール作成手段は、判定手段による判定結果に基づいてネットワーク種別が判定された対象ネットワークを抽出し、その抽出した対象ネットワークにおいて、1回のネットワークスキャンに要する時間リソース量を算出し、ネットワークスキャンを実行する時間帯の長さと時間帯における混雑度とに基づいて時間帯におけるネットワークスキャンに必要なリソース量を算出し、時間リソース量に基づいてリソース量を超えないようにネットワークスキャンのスケジュールを作成するスケジュール作成処理を実行する。
【0241】
(構成9)
構成8において、スケジュール作成手段は、スケジュール作成処理において、対象ネットワークにおけるスキャン応答遅延の平均値にマージン係数を乗算して時間リソース量を算出する。
【0242】
(構成10)
構成8または構成9において、スケジュール作成手段は、判定手段による判定結果に基づいて複数の対象ネットワークを抽出したとき、複数の対象ネットワークの全てについてスケジュール作成処理を実行する。
【0243】
また、この発明の実施の形態によれば、プログラムは、次の構成11から構成20を備えていればよい。
【0244】
(構成11)
プログラムは、
送信手段が、複数のルータを介して情報を端末装置へ送信する多段ネットワークにおいて、ネットワークスキャンを行うためのパケットであるスキャンパケットを送信する第1のステップと、
受信手段が、多段ネットワークにおいて、スキャンパケットに対する応答であるスキャン応答を受信する第2のステップと、
計測手段が、第1のステップにおいてスキャンパケットが送信されてから第2のステップにおいてスキャン応答が受信されるまでのスキャン応答遅延を計測する第3のステップと、
演算手段が、ネットワークスキャン装置から複数のルータのうちスキャン応答が返って来たルータであり、かつ、端末装置に最も近い最近接ルータまでの段数である経路制御段数とスキャン応答遅延とに基づいて、ルータが1個であり、かつ、ネットワークスキャンの対象となる対象ネットワークにおける伝送遅延を算出する第4のステップと、
判定手段が、第4のステップにおいて算出された伝送遅延に基づいて対象ネットワークの種別を判定する第5のステップとをコンピュータに実行させるためのプログラムである。
【0245】
(構成12)
構成11において、演算手段は、第4のステップにおいて、経路制御段数に基づいて当該ネットワークスキャン装置から対象ネットワークまでの間に存在するルータによる遅延時間である経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0246】
(構成13)
構成12において、演算手段は、第4のステップにおいて、スキャン応答に含まれる多段ネットワークの段数よりも小さい段数を経路制御段数とし、最近接ルータに対するスキャン応答遅延である経路制御応答遅延を経路制御段数で除算して1ホップ当たりの遅延時間を算出し、その算出した1ホップ当たりの遅延時間にネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または経路制御段数を乗算して経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0247】
(構成14)
構成13において、1ホップ当たりの遅延時間は、ネットワークスキャンの対象である複数の端末装置について算出された複数の1ホップ当たりの遅延時間の平均値からなり、
演算手段は、第4のステップにおいて、平均値にネットワークスキャン装置から端末装置に最も近い位置に配置されたルータまでの段数または経路制御段数を乗算して経路遅延を算出し、その算出した経路遅延をスキャン応答遅延から減算して伝送遅延を算出する。
【0248】
(構成15)
構成11から構成14のいずれかにおいて、判定手段は、第5のステップにおいて、伝送遅延をネットワークの種別に応じて決定されたしきい値と比較し、伝送遅延が最も近いしきい値に対応するネットワークの種別を対象ネットワークの種別として判定する仮判定を実行し、仮判定の回数が最も多い種別を対象ネットワークの種別として決定する。
【0249】
(構成16)
構成15において、しきい値は、スキャン応答遅延の最小値である最小スキャン応答遅延からなる。
【0250】
(構成17)
構成15または構成16において、判定手段は、第5のステップにおいて、仮判定の回数が同じである種別が複数存在するとき、対象ネットワークの種別を不明であると判定する。
【0251】
(構成18)
プログラムは、スケジュール作成手段が、判定手段による判定結果に基づいてネットワーク種別が判定された対象ネットワークを抽出し、その抽出した対象ネットワークにおいて、1回のネットワークスキャンに要する時間リソース量を算出し、ネットワークスキャンを実行する時間帯の長さと時間帯における混雑度とに基づいて時間帯におけるネットワークスキャンに必要なリソース量を算出し、時間リソース量に基づいてリソース量を超えないようにネットワークスキャンのスケジュールを作成するスケジュール作成処理を実行する第6のステップを更にコンピュータに実行させる。
【0252】
(構成19)
構成18において、スケジュール作成手段は、第6のステップのスケジュール作成処理において、対象ネットワークにおけるスキャン応答遅延の平均値にマージン係数を乗算して時間リソース量を算出する。
【0253】
(構成20)
構成18または構成19において、スケジュール作成手段は、第6のステップにおいて、判定手段による判定結果に基づいて複数の対象ネットワークを抽出したとき、複数の対象ネットワークの全てについてスケジュール作成処理を実行する。
【0254】
(構成21)
記録媒体は、構成11から構成20のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【0255】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【0256】
この発明は、ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体に適用される。
【符号の説明】
【0257】
1,1A ネットワークスキャン装置、10 通信システム、11 ネットワークスキャナ、12 スキャン解析マネージャ、13 ホスト情報データベース、14,14A スキャンスケジューラ、20 スキャン対象ネットワーク、30 ユーザ。