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

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

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

特許7485549ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体
<>
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図1
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図2
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図3
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図4
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図5
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図6
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図7
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図8
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図9
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図10
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図11
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図12
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図13
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図14
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図15
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図16
  • 特許-ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-08
(45)【発行日】2024-05-16
(54)【発明の名称】ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体
(51)【国際特許分類】
   H04W 28/10 20090101AFI20240509BHJP
   H04W 12/12 20210101ALI20240509BHJP
   H04W 24/08 20090101ALI20240509BHJP
【FI】
H04W28/10
H04W12/12
H04W24/08
【請求項の数】 19
(21)【出願番号】P 2020101096
(22)【出願日】2020-06-10
(65)【公開番号】P2021197585
(43)【公開日】2021-12-27
【審査請求日】2023-06-08
【新規性喪失の例外の表示】特許法第30条第2項適用 令和 1年12月12日発行の電子情報通信学会信学技報,vol.119,no.344,NS2019-142,pp.45-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)【発明者】
【氏名】鈴木 義規
【審査官】田畑 利幸
(56)【参考文献】
【文献】国際公開第2019/239608(WO,A1)
【文献】米国特許出願公開第2017/0187641(US,A1)
【文献】特開2015-012570(JP,A)
【文献】特開2006-303887(JP,A)
【文献】特表2021-527879(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04W 4/00-99/00
H04L 12/50-12/66
H04L 45/00-49/9057
(57)【特許請求の範囲】
【請求項1】
所定の周期に含まれる複数の時間帯において複数の端末装置の複数のIPアドレスに対して複数のスキャンパケットを第1のスキャンレートで送信してネットワークスキャンを行うネットワークスキャン処理を前記所定の周期に一致する頻度で実行するスキャン手段と、
前記スキャン手段によってM(Mは、1以上の整数)回の前記ネットワークスキャン処理が実行されたときの前記端末装置からのQ(Qは、1以上の整数)個のスキャン応答とQ個のスキャン応答遅延とを前記複数の時間帯において前記IPアドレスに対応付けて記録する記録手段と、
前記M個の前記所定の周期における前記M個の同じ時間帯において、第1のしきい値以上である前記スキャン応答遅延の個数を前記端末装置から返って来た前記スキャン応答の個数で除算した除算結果を算出する算出処理を前記スキャン応答が返って来たIPアドレスの全てについて実行する算出手段と、
前記除算結果が第2のしきい値よりも大きいか否かを判定する判定処理を前記スキャン応答が返って来たIPアドレスの全てについて実行する判定手段と、
前記判定手段によって前記除算結果が前記第2のしきい値よりも大きいと判定されたとき、前記スキャンパケットのレートを前記第1のスキャンレートよりも低い第2のスキャンレートに制御する制御処理を前記第2のしきい値よりも大きい前記除算結果を有する前記スキャン応答遅延の全てについて実行する制御手段とを備え、
前記スキャン応答遅延は、前記スキャンパケットを送信してから前記スキャン応答を受信するまでの時間であり、
前記スキャン手段は、前記M回のネットワークスキャン処理が実行された後の前記ネットワークスキャン処理において、前記制御手段によって制御された前記第2のスキャンレートで前記スキャンパケットを送信して前記ネットワークスキャン処理を実行する、ネットワークスキャン装置。
【請求項2】
前記ネットワークスキャン処理を実行するときのネットワークの種別を推定する推定手段を更に備え、
前記制御手段は、前記制御処理において、前記推定手段によって推定された前記ネットワークのネットワーク種別に応じて前記スキャンパケットのスキャンレートを前記第2のスキャンレートに制御する、請求項1に記載のネットワークスキャン装置。
【請求項3】
前記制御手段は、前記推定手段による前記ネットワーク種別の推定結果が前回の推定結果と異なるとき、前記制御処理において、前記スキャンレートを初期化し、その初期化したスキャンレートを前記第2のスキャンレートに制御する、請求項2に記載のネットワークスキャン装置。
【請求項4】
前記制御手段は、前記ネットワーク種別と前記スキャンパケットのスキャンレートとの対応関係を示す対応表を参照して前記スキャンパケットのスキャンレートを前記第2のスキャンレートに制御する、請求項2または請求項3に記載のネットワークスキャン装置。
【請求項5】
前記対応表は、最大スキャンレートと最小スキャンレートとの間に設定されたスキャンレートを含み、
前記最大スキャンレートは、前記ネットワークスキャンが実行されるときに使用されるネットワークの最大スループットと前記スキャンパケットのサイズとに基づいて決定された最大スキャン受信レートと、1個のIPアドレス当たりに対して前記スキャンパケットを送出するときの前記スキャンパケットの最大スキャン送出レートとのうちの最小値からなり、
前記最小スキャンレートは、前記所定の周期の時間長と、1個のIPアドレスに対する1回のスキャン当たりの前記スキャンパケットの前記最大スキャン送出レートとに基づいて決定される、請求項4に記載のネットワークスキャン装置。
【請求項6】
前記対応表は、前記最小スキャンレート以上の範囲において、通信システムの最大スキャンレートを前記スキャンパケットのサイズで除算した最大スキャンレートを初項とし、公比をλ(λは、0より大きく1未満の実数)とした等比級数からなる等比級数レートを含む、請求項5に記載のネットワークスキャン装置。
【請求項7】
前記制御手段は、前記除算結果が前記第2のしきい値よりも大きくないと判定されたとき、前記制御処理において、前記スキャンパケットのスキャンレートを前記第1のスキャンレートに維持し、または前記スキャンパケットのスキャンレートを前記第1のスキャンレートよりも高い第3のスキャンレートに制御する、請求項1から請求項6のいずれか1項に記載のネットワークスキャン装置。
【請求項8】
前記制御手段は、前記除算結果が零であると判定されたとき、前記制御処理において、前記スキャンパケットのスキャンレートを前記第3のスキャンレートに制御する、請求項7に記載のネットワークスキャン装置。
【請求項9】
第1から第3の制約条件の下で前記所定の周期において、前記複数のIPアドレスの全てのポートに対してネットワークスキャンを行ったときのスキャン応答遅延の総和が最小になるようにスキャン指数を算出し、その算出したスキャン指数に基づいて前記ネットワークスキャン処理におけるスキャンスケジュールを作成するスケジュール作成手段を更に備え、
前記スキャン手段は、前記スケジュール作成手段によって作成されたスキャンスケジュールに従って前記ネットワークスキャン処理を実行し、
前記第1の制約条件は、1つのIPアドレスの1つのポートに対する前記ネットワークスキャン処理が前記複数の時間帯のいずれかで実行されることであり、
前記第2の制約条件は、前記複数の時間帯のうちの1つの時間帯におけるIPアドレスのポートに対するスキャン量が前記1つの時間帯のスキャン量の上限値以下であることであり、
前記第3の制約条件は、1つの時間帯における全てのIPアドレスに対して前記ネットワークスキャン処理を実行するときの前記スキャンパケットの個数が前記1つの時間帯において前記IPアドレスに送出できる前記スキャンパケットの上限値以下であることである、請求項1から請求項8のいずれか1項に記載のネットワークスキャン装置。
【請求項10】
スキャン手段が、所定の周期に含まれる複数の時間帯において複数の端末装置の複数のIPアドレスに対して複数のスキャンパケットを第1のスキャンレートで送信してネットワークスキャンを行うネットワークスキャン処理を前記所定の周期に一致する頻度で実行する第1のステップと、
記録手段が、前記スキャン手段によってM(Mは、1以上の整数)回の前記ネットワークスキャン処理が実行されたときの前記端末装置からのQ(Qは、1以上の整数)個のスキャン応答とQ個のスキャン応答遅延とを前記複数の時間帯において前記IPアドレスに対応付けて記録する第2のステップと、
算出手段が、前記M個の前記所定の周期における前記M個の同じ時間帯において、第1のしきい値以上である前記スキャン応答遅延の個数を前記端末装置から返って来た前記スキャン応答の個数で除算した除算結果を算出する算出処理を前記スキャン応答が返って来たIPアドレスの全てについて実行する第3のステップと、
判定手段が、前記除算結果が第2のしきい値よりも大きいか否かを判定する判定処理を前記スキャン応答が返って来たIPアドレスの全てについて実行する第4のステップと、
制御手段が、前記判定手段によって前記除算結果が前記第2のしきい値よりも大きいと判定されたとき、前記スキャンパケットのレートを前記第1のスキャンレートよりも低い第2のスキャンレートに制御する制御処理を前記第2のしきい値よりも大きい前記除算結果を有する前記スキャン応答遅延の全てについて実行する第5のステップとをコンピュータに実行させ、
前記スキャン応答遅延は、前記スキャンパケットを送信してから前記スキャン応答を受信するまでの時間であり、
前記スキャン手段は、前記M回のネットワークスキャン処理が実行された後の前記ネットワークスキャン処理において、前記第5のステップにおいて制御された前記第2のスキャンレートで前記スキャンパケットを送信して前記ネットワークスキャン処理を実行する、コンピュータに実行させるためのプログラム。
【請求項11】
推定手段が、前記ネットワークスキャン処理を実行するときのネットワークの種別を推定する第6のステップを更にコンピュータに実行させ、
前記制御手段は、前記第5のステップの前記制御処理において、前記推定手段によって推定された前記ネットワークのネットワーク種別に応じて前記スキャンパケットのスキャンレートを前記第2のスキャンレートに制御する、請求項10に記載のコンピュータに実行させるためのプログラム。
【請求項12】
前記制御手段は、前記推定手段による前記ネットワーク種別の推定結果が前回の推定結果と異なるとき、前記第5のステップの前記制御処理において、前記スキャンレートを初期化し、その初期化したスキャンレートを前記第2のスキャンレートに制御する、請求項11に記載のコンピュータに実行させるためのプログラム。
【請求項13】
前記制御手段は、前記第5のステップにおいて、前記ネットワーク種別と前記スキャンパケットのスキャンレートとの対応関係を示す対応表を参照して前記スキャンパケットのスキャンレートを前記第2のスキャンレートに制御する、請求項11または請求項12に記載のコンピュータに実行させるためのプログラム。
【請求項14】
前記対応表は、最大スキャンレートと最小スキャンレートとの間に設定されたスキャンレートを含み、
前記最大スキャンレートは、前記ネットワークスキャンが実行されるときに使用されるネットワークの最大スループットと前記スキャンパケットのサイズとに基づいて決定された最大スキャン受信レートと、1個のIPアドレス当たりに対して前記スキャンパケットを送出するときの前記スキャンパケットの最大スキャン送出レートとのうちの最小値からなり、
前記最小スキャンレートは、前記所定の周期の時間長と、1個のIPアドレスに対する1回のスキャン当たりの前記スキャンパケットの前記最大スキャン送出レートとに基づいて決定される、請求項13に記載のコンピュータに実行させるためのプログラム。
【請求項15】
前記対応表は、前記最小スキャンレート以上の範囲において、通信システムの最大スキャンレートを前記スキャンパケットのサイズで除算した最大スキャンレートを初項とし、公比をλ(λは、0より大きく1未満の実数)とした等比級数からなる等比級数レートを含む、請求項14に記載のコンピュータに実行させるためのプログラム。
【請求項16】
前記制御手段は、前記除算結果が前記第2のしきい値よりも大きくないと判定されたとき、前記第5のステップの前記制御処理において、前記スキャンパケットのスキャンレートを前記第1のスキャンレートに維持し、または前記スキャンパケットのスキャンレートを前記第1のスキャンレートよりも高い第3のスキャンレートに制御する、請求項10から請求項15のいずれか1項に記載のコンピュータに実行させるためのプログラム。
【請求項17】
前記制御手段は、前記除算結果が零であると判定されたとき、前記第5のステップの前記制御処理において、前記スキャンパケットのスキャンレートを前記第3のスキャンレートに制御する、請求項16に記載のコンピュータに実行させるためのプログラム。
【請求項18】
スケジュール作成手段が、第1から第3の制約条件の下で前記所定の周期において、前記複数のIPアドレスの全てのポートに対してネットワークスキャンを行ったときのスキャン応答遅延の総和が最小になるようにスキャン指数を算出し、その算出したスキャン指数に基づいて前記ネットワークスキャン処理におけるスキャンスケジュールを作成する第7のステップを更にコンピュータに実行させ、
前記スキャン手段は、前記第1のステップにおいて、前記スケジュール作成手段によって作成されたスキャンスケジュールに従って前記ネットワークスキャン処理を実行し、
前記第1の制約条件は、1つのIPアドレスの1つのポートに対する前記ネットワークスキャン処理が前記複数の時間帯のいずれかで実行されることであり、
前記第2の制約条件は、前記複数の時間帯のうちの1つの時間帯におけるIPアドレスのポートに対するスキャン量が前記1つの時間帯のスキャン量の上限値以下であることであり、
前記第3の制約条件は、1つの時間帯における全てのIPアドレスに対して前記ネットワークスキャン処理を実行するときの前記スキャンパケットの個数が前記1つの時間帯において前記IPアドレスに送出できる前記スキャンパケットの上限値以下であることである、請求項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】
近年では、ShodanまたはCensysのような広域ネットワークスキャンのプロジェクトがある(非特許文献1)。
【先行技術文献】
【非特許文献】
【0006】
【文献】Z. Durumeric, et al., “A Search Engine Backed by Internet-Wide Scanning”, CCS15, October 12-16, 2015.
【文献】https://github.com/robertdavidgraham/masscan
【文献】J. MACQUEEN, “SOME METHODS FOR CLASSIFICATION AND ANALYSIS OF MULTIVARIATE OBSERVATIONS,” Proc. of 5th Berkeley Symposium on Mathematical Statistics and Probability, pp. 281-297, 1967.
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、非特許文献1に記載のネットワークスキャンは、スキャンの実施に必要な時間の短縮に主眼をおいているため、スキャンの実施による無線リソースの消費を抑制することは困難である。
【0008】
そこで、この発明の実施の形態によれば、ネットワークスキャンに必要な無線リソース量を抑制することが可能なネットワークスキャン装置を提供する。
【0009】
また、この発明の実施の形態によれば、ネットワークスキャンに必要な無線リソース量の抑制をコンピュータに実行させるためのプログラムを提供する。
【0010】
更に、この発明の実施の形態によれば、ネットワークスキャンに必要な無線リソース量の抑制をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【課題を解決するための手段】
【0011】
(構成1)
この発明の実施の形態によれば、ネットワークスキャン装置は、スキャン手段と、記録手段と、算出手段と、判定手段と、制御手段とを備える。スキャン手段は、所定の周期に含まれる複数の時間帯において複数の端末装置の複数のIPアドレスに対して複数のスキャンパケットを第1のスキャンレートで送信してネットワークスキャンを行うネットワークスキャン処理を所定の周期に一致する頻度で実行する。記録手段は、スキャン手段によってM(Mは、1以上の整数)回のネットワークスキャン処理が実行されたときの端末装置からのQ(Qは、1以上の整数)個のスキャン応答とQ個のスキャン応答遅延とを複数の時間帯においてIPアドレスに対応付けて記録する。算出手段は、M個の所定の周期におけるM個の同じ時間帯において、第1のしきい値以上であるスキャン応答遅延の個数を端末装置から返って来たスキャン応答の個数で除算した除算結果を算出する算出処理をスキャン応答が返って来たIPアドレスの全てについて実行する。判定手段は、除算結果が第2のしきい値よりも大きいか否かを判定する判定処理をスキャン応答が返って来たIPアドレスの全てについて実行する。制御手段は、判定手段によって除算結果が第2のしきい値よりも大きいと判定されたとき、スキャンパケットのレートを第1のスキャンレートよりも低い第2のスキャンレートに制御する制御処理を第2のしきい値よりも大きい除算結果を有するスキャン応答遅延の全てについて実行する。そして、スキャン応答遅延は、スキャンパケットを送信してからスキャン応答を受信するまでの時間である。スキャン手段は、M回のネットワークスキャン処理が実行された後のネットワークスキャン処理において、制御手段によって制御された第2のスキャンレートでスキャンパケットを送信してネットワークスキャン処理を実行する。
【0012】
(構成2)
構成1において、ネットワークスキャン装置は、推定手段を更に備える。推定手段は、ネットワークスキャン処理を実行するときのネットワークの種別を推定する。制御手段は、制御処理において、推定手段によって推定されたネットワークのネットワーク種別に応じてスキャンパケットのスキャンレートを第2のスキャンレートに制御する。
【0013】
(構成3)
構成2において、制御手段は、推定手段によるネットワーク種別の推定結果が前回の推定結果と異なるとき、制御処理において、スキャンレートを初期化し、その初期化したスキャンレートを第2のスキャンレートに制御する。
【0014】
(構成4)
構成2または構成3において、制御手段は、ネットワーク種別とスキャンパケットのスキャンレートとの対応関係を示す対応表を参照してスキャンパケットのスキャンレートを第2のスキャンレートに制御する。
【0015】
(構成5)
構成4において、対応表は、最大スキャンレートと最小スキャンレートとの間に設定されたスキャンレートを含む。最大スキャンレートは、ネットワークスキャンが実行されるときに使用されるネットワークの最大スループットとスキャンパケットのサイズとに基づいて決定された最大スキャン受信レートと、1個のIPアドレス当たりに対してスキャンパケットを送出するときのスキャンパケットの送出量の最大量とのうちの最小値からなる。最小スキャンレートは、所定の周期の時間長と、1個のIPアドレスに対する1回のスキャン当たりのスキャンパケットの最大スキャン送出レートとに基づいて決定される。
【0016】
(構成6)
構成5において、対応表は、最小スキャンレート以上の範囲において、通信システムの最大スキャンレートをスキャンパケットのサイズで除算した最大スキャンレートを初項とし、公比をλ(λは、0より大きく1未満の実数)とした等比級数からなる等比級数レートを含む。
【0017】
(構成7)
構成1から構成6のいずれかにおいて、制御手段は、除算結果が第2のしきい値よりも大きくないと判定されたとき、制御処理において、スキャンパケットのスキャンレートを第1のスキャンレートに維持し、またはスキャンパケットのスキャンレートを第1のスキャンレートよりも高い第3のスキャンレートに制御する。
【0018】
(構成8)
構成7において、制御手段は、除算結果が零であると判定されたとき、制御処理において、スキャンパケットのスキャンレートを第3のスキャンレートに制御する。
【0019】
(構成9)
構成1から構成8のいずれかにおいて、ネットワークスキャン装置は、スケジュール作成手段を更に備える。スケジュール作成手段は、第1から第3の制約条件の下で所定の周期において、複数のIPアドレスの全てのポートに対してネットワークスキャンを行ったときのスキャン応答遅延の総和が最小になるようにスキャン指数を算出し、その算出したスキャン指数に基づいてネットワークスキャン処理におけるスキャンスケジュールを作成する。スキャン手段は、スケジュール作成手段によって作成されたスキャンスケジュールに従ってネットワークスキャン処理を実行する。第1の制約条件は、1つのIPアドレスの1つのポートに対するネットワークスキャン処理が複数の時間帯のいずれかで実行されることである。第2の制約条件は、複数の時間帯のうちの1つの時間帯におけるIPアドレスのポートに対するスキャン量が1つの時間帯のスキャン量の上限値以下であることである。第3の制約条件は、1つの時間帯における全てのIPアドレスに対してネットワークスキャン処理を実行するときのスキャンパケットの個数が1つの時間帯においてIPアドレスに送出できるスキャンパケットの上限値以下であることである。
【0020】
(構成10)
また、この発明の実施の形態によれば、プログラムは、
スキャン手段が、所定の周期に含まれる複数の時間帯において複数の端末装置の複数のIPアドレスに対して複数のスキャンパケットを第1のスキャンレートで送信してネットワークスキャンを行うネットワークスキャン処理を所定の周期に一致する頻度で実行する第1のステップと、
記録手段が、スキャン手段によってM(Mは、1以上の整数)回のネットワークスキャン処理が実行されたときの端末装置からのQ(Qは、1以上の整数)個のスキャン応答とQ個のスキャン応答遅延とを複数の時間帯においてIPアドレスに対応付けて記録する第2のステップと、
算出手段が、M個の所定の周期におけるM個の同じ時間帯において、第1のしきい値以上であるスキャン応答遅延の個数を端末装置から返って来たスキャン応答の個数で除算した除算結果を算出する算出処理をスキャン応答が返って来たIPアドレスの全てについて実行する第3のステップと、
判定手段が、除算結果が第2のしきい値よりも大きいか否かを判定する判定処理をスキャン応答が返って来たIPアドレスの全てについて実行する第4のステップと、
制御手段が、判定手段によって除算結果が第2のしきい値よりも大きいと判定されたとき、スキャンパケットのレートを第1のスキャンレートよりも低い第2のスキャンレートに制御する制御処理を第2のしきい値よりも大きい除算結果を有するスキャン応答遅延の全てについて実行する第5のステップとをコンピュータに実行させ、
スキャン応答遅延は、スキャンパケットを送信してからスキャン応答を受信するまでの時間であり、
スキャン手段は、M回のネットワークスキャン処理が実行された後のネットワークスキャン処理において、第5のステップにおいて制御された第2のスキャンレートでスキャンパケットを送信してネットワークスキャン処理を実行するプログラムである。
【0021】
(構成11)
構成10において、プログラムは、推定手段が、ネットワークスキャン処理を実行するときのネットワークの種別を推定する第6のステップを更にコンピュータに実行させ、
制御手段は、第5のステップの制御処理において、推定手段によって推定されたネットワークのネットワーク種別に応じてスキャンパケットのスキャンレートを第2のスキャンレートに制御する。
【0022】
(構成12)
構成11において、制御手段は、推定手段によるネットワーク種別の推定結果が前回の推定結果と異なるとき、第5のステップの制御処理において、スキャンレートを初期化し、その初期化したスキャンレートを第2のスキャンレートに制御する。
【0023】
(構成13)
構成11または構成12において、制御手段は、第5のステップにおいて、ネットワーク種別とスキャンパケットのスキャンレートとの対応関係を示す対応表を参照してスキャンパケットのスキャンレートを第2のスキャンレートに制御する。
【0024】
(構成14)
構成13において、対応表は、最大スキャンレートと最小スキャンレートとの間に設定されたスキャンレートを含み、
最大スキャンレートは、通信システムの最大スループットとスキャンパケットのサイズとに基づいて決定された最大スキャン受信レートと、1個のIPアドレス当たりに対してスキャンパケットを送出するときのスキャンパケットの最大スキャン送出レートとのうちの最小値からなり、
最小スキャンレートは、所定の周期の時間長と、1個のIPアドレスに対する1回のスキャン当たりのスキャンパケットの最大スキャン送出レートとに基づいて決定される。
【0025】
(構成15)
構成14において、対応表は、最小スキャンレート以上の範囲において、通信システムの最大スキャンレートをスキャンパケットのサイズで除算した最大スキャンレートを初項とし、公比をλ(λは、0より大きく1未満の実数)とした等比級数からなる等比級数レートを含む。
【0026】
(構成16)
構成10から構成15のいずれかにおいて、制御手段は、除算結果が第2のしきい値よりも大きくないと判定されたとき、第5のステップの制御処理において、スキャンパケットのスキャンレートを第1のスキャンレートに維持し、またはスキャンパケットのスキャンレートを第1のスキャンレートよりも高い第3のスキャンレートに制御する。
【0027】
(構成17)
構成16において、制御手段は、除算結果が零であると判定されたとき、第5のステップの制御処理において、スキャンパケットのスキャンレートを第3のスキャンレートに制御する。
【0028】
(構成18)
構成10から構成17のいずれかにおいて、プログラムは、スケジュール作成手段が、第1から第3の制約条件の下で所定の周期において、複数のIPアドレスの全てのポートに対してネットワークスキャンを行ったときのスキャン応答遅延の総和が最小になるようにスキャン指数を算出し、その算出したスキャン指数に基づいてネットワークスキャン処理におけるスキャンスケジュールを作成する第7のステップを更にコンピュータに実行させ、
スキャン手段は、第1のステップにおいて、スケジュール作成手段によって作成されたスキャンスケジュールに従ってネットワークスキャン処理を実行する。
【0029】
そして、第1の制約条件は、1つのIPアドレスの1つのポートに対するネットワークスキャン処理が複数の時間帯のいずれかで実行されることであり、
第2の制約条件は、複数の時間帯のうちの1つの時間帯におけるIPアドレスのポートに対するスキャン量が1つの時間帯のスキャン量の上限値以下であることであり、
第3の制約条件は、1つの時間帯における全てのIPアドレスに対してネットワークスキャン処理を実行するときのスキャンパケットの個数が1つの時間帯においてIPアドレスに送出できるスキャンパケットの上限値以下であることである。
【0030】
(構成19)
更に、この発明の実施の形態によれば、記録媒体は、構成10から構成18のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【0031】
ネットワークスキャンに必要な無線リソース量を抑制できる。
【図面の簡単な説明】
【0032】
図1】この発明の実施の形態における通信システムの概略図である。
図2図1に示すネットワークスキャン装置の実施の形態1における概略図である。
図3図2に示すホスト情報データベースに格納される対応表の概念図である。
図4】ネットワークスキャンを実行するタイミングを説明するための図である。
図5】スキャンレートとネットワーク種別との対応関係を示す対応表の概念図である。
図6】スキャンレートを決定する別の方法を説明するための図である。
図7図6に示すスキャンレートの具体例を示す図である。
図8】スキャンレートを制御する方法を説明するための図である。
図9】複数のネットワークにおけるスキャン応答遅延の累積分布関数を示す図である。
図10】各時間帯におけるスキャンレートの制御を示す概念図である。
図11図2に示すネットワークスキャン装置の動作を説明するためのフローチャートである。
図12図11のステップS3の詳細な動作を説明するためのフローチャートである。
図13図1に示すネットワークスキャン装置の実施の形態2における概略図である。
図14】無線端末と有線端末におけるスキャン応答遅延の比較を示す図である。
図15図13に示すネットワークスキャン装置の動作を説明するためのフローチャートである。
図16図15のステップS81の詳細な動作を説明するためのフローチャートである。
図17】Nampで行われているスキャンレートの制御を示す概念図である。
【発明を実施するための形態】
【0033】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【0034】
図1は、この発明の実施の形態における通信システムの概略図である。図1を参照して、この発明の実施の形態による通信システム10は、ネットワークスキャン装置1と、基地局BS1,BS2と、インターネットプロバイダISPと、端末装置TM1~TM18とを備える。
【0035】
ネットワークスキャン装置1、基地局BS1,BS2、インターネットプロバイダISP(Internet Service Provider)および端末装置TM1~TM18は、通信空間に配置される。
【0036】
基地局BS1は、無線通信網CNW1の基地局であり、基地局BS2は、無線通信網CNW2の基地局であり、インターネットプロバイダISPは、有線通信網CNW3の通信事業者である。
【0037】
無線通信網CNW1,CNW2は、相互に異なる無線通信規格に従って無線通信を行う通信網である。
【0038】
この発明の実施の形態においては、端末装置TM1~TM18の各々が無線端末である場合があり、端末装置TM1~TM18の一部が無線端末からなり、かつ、残りが有線端末からなる場合もある。
【0039】
端末装置TM1~TM6は、無線通信網CNW2の外側であり、かつ、無線通信網CNW1の内部に配置される。
【0040】
端末装置TM7は、無線通信網CNW1と無線通信網CNW2との重複領域内に配置される。
【0041】
端末装置TM8~TM13は、無線通信網CNW1の外側であり、かつ、無線通信網CNW2の内部に配置される。
【0042】
端末装置TM14~TM18は、有線通信網CNW3内に配置され、有線を介してインターネットプロバイダISPに接続される。
【0043】
端末装置TM1~TM13の各々は、基地局BS1,BS2と無線通信可能な2個の無線通信モジュールを備えている。従って、端末装置TM1~TM13の各々は、基地局BS1または基地局BS2と無線通信可能である。
【0044】
端末装置TM1~TM6は、基地局BS1と無線通信を行い、端末装置TM7は、基地局BS1または基地局BS2と無線通信を行い、端末装置TM8~TM13は、基地局BS2と無線通信を行う。
【0045】
端末装置TM14~TM18は、インターネットプロバイダISPを介して有線通信を行う。
【0046】
ネットワークスキャン装置1は、後述する方法によって、端末装置TM1~TM18に対してネットワークスキャンを行うためのスキャンスケジュールを作成し、その作成したスキャンスケジュールに従ってネットワークスキャンを実行する。
【0047】
[実施の形態1]
図2は、図1に示すネットワークスキャン装置1の実施の形態1における概略図である。図2を参照して、ネットワークスキャン装置1は、ネットワークスキャナ11と、スキャン解析マネージャ12と、ホスト情報データベース13と、制御手段14と、スキャンスケジューラ15とを備える。
【0048】
ネットワークスキャナ11は、スキャンスケジューラ15からスキャンスケジュールを受け、その受けたスキャンスケジュールに基づいて、例えば、公知のmasscan(非特許文献2)を用いて、スキャン対象のネットワーク20に接続された端末装置のポートに対してネットワークスキャンを行う。
【0049】
より具体的には、ネットワークスキャナ11は、所定の周期に含まれる複数の時間帯において複数の端末装置のIPアドレスに対してスキャンパケットを送信するネットワークスキャンを行う。ネットワークスキャナ11は、このネットワークスキャンを所定の周期に一致する頻度で実行する。
【0050】
そして、ネットワークスキャナ11は、ネットワーク20に接続された端末装置からネットワークスキャンのスキャン応答を受信し、その受信したスキャン応答をユーザ(セットワークセキュリティ等からなる)30およびスキャン解析マネージャ12へ出力する。
【0051】
スキャン解析マネージャ12は、ネットワークスキャナ11からスキャン応答を受け、ネットワークスキャン中の通信ログを受ける。そして、スキャン解析マネージャ12は、スキャン応答に基づいてスキャン対象の端末装置のアドレスと、スキャン応答とを対応付けたスキャン結果を生成し、その生成したスキャン結果をホスト情報データベース13に格納することによってホスト情報データベース13を作成または更新する。
【0052】
また、スキャン解析マネージャ12は、ネットワークスキャンを行うためのスキャンパケットを送信してからスキャン応答を受信するまでの時間であるスキャン応答遅延を計測し、その計測したスキャン応答遅延をスキャン対象の端末装置のアドレスに対応付けてホスト情報データベース13に格納する。
【0053】
ホスト情報データベース13は、スキャン結果を記憶する。
【0054】
制御手段14は、所定の周期で実行されるネットワークスキャンがM(Mは、1以上の整数)の整数倍の回数だけ実施されるごとに過去M回のネットワークスキャンによって取得されたQ(Qは、1以上の整数)個のスキャン応答SRおよびQ個のスキャン応答遅延SRDをホスト情報データベース13から読み出す。そして、制御手段14は、Q個のスキャン応答SRおよびQ個のスキャン応答遅延SRDに基づいて、後述する方法によって、ネットワークスキャンを実行するときの複数のIPアドレスのスキャンレートを変更するか否かを判定する。
【0055】
制御手段14は、ネットワークスキャンを実行するときのスキャンレートを変更すると判定したとき、スキャンレートを高くまたは低くする。そして、制御手段14は、高くまたは低くしたスキャンレートをスキャンスケジューラ15へ出力し、高くまたは低くしたスキャンレートで次のネットワークスキャンを実行するためのスキャンスケジュールを作成するようにスキャンスケジューラ15を制御する。
【0056】
一方、制御手段14は、ネットワークスキャンを実行するときのスキャンレートを変更しないと判定したとき、スキャンレートを維持する。この場合、制御手段14は、スキャンスケジューラ15に対してスキャンレートの制御を行わない。
【0057】
スキャンスケジューラ15は、ホスト情報データベース13からスキャン結果を読み出す。また、スキャンスケジューラ15は、ネットワークスキャンを行う領域(例えば、日本国内)に存在する全ての端末装置のグローバルIPアドレスおよびドメイン名を予め保持している。
【0058】
そして、スキャンスケジューラ15は、制御手段14によるスキャンレートの制御結果、スキャン要件およびスキャン結果に基づいて、後述する方法によって、ネットワークスキャンのスキャンタイミングと各スキャンタイミングにおけるスキャンレートおよびネットワークスキャンの対象となる端末装置とを対応付けたスキャンスケジュールを作成する。そうすると、スキャンスケジューラ15は、スキャンスケジュールをネットワークスキャナ11へ出力してスキャンスケジュールに従ってネットワークスキャンを実行するようにネットワークスキャナ11を制御する。
【0059】
図3は、図2に示すホスト情報データベース13に格納される対応表の概念図である。図3を参照して、対応表TBL1は、スキャン実施回数と、時刻tと、IPアドレスAddと、ポートPと、スキャン応答SRと、スキャン応答遅延SRDと、ネットワーク種別NWとを含む。スキャン実施回数、時刻t、IPアドレスAdd、ポートP、スキャン応答SR、スキャン応答遅延SRDおよびネットワーク種別NWは、相互に対応付けられる。ここで、i=1~Nであり、Nは、ネットワークスキャンの対象となる端末装置の総数である。
【0060】
なお、対応表TBL1においては、ネットワーク種別NWは、予め既知であるものとする。
【0061】
スキャン実施回数は、ネットワークスキャンが行われた回数を示す。時刻tは、後述する1つのラウンドの開始時刻を基準とした時刻を示す。そして、時刻tは、YYYY/MM/DD/hh/mm/ss(年/月/日/時/分/秒)によって表される。
【0062】
IPアドレスAddは、ネットワークスキャンの対象である端末装置のグローバルIPアドレスからなる。
【0063】
ポートPは、IPアドレスAddのポートである。1つのIPアドレスAddに対して、例えば、10000個のポートPを選択し、その選択した10000個のポートPに対してネットワークスキャンを実施する。
【0064】
スキャン応答SRは、ポートPに対応付けられる。スキャン応答SRは、スキャン応答が返って来たとき、“1”からなり、スキャン応答が返って来なかったとき、“0”からなる。
【0065】
スキャン応答遅延SRDは、ポートPに対応付けられる。スキャン応答遅延SRDは、スキャンパケットを送信した時刻からスキャン応答SRが返って来るまでの時間からなる。
【0066】
IPアドレスAddのポートは、例えば、ポートP11,P21,P31からなり、IPアドレスAddのポートは、例えば、ポートP12,P22からなり、IPアドレスAddのポートは、例えば、ポートP13,P23,P33,P43からなり、以下、同様にして、IPアドレスAddN-1のポートは、例えば、ポートP1N-1,P2N-1,P3N-1からなり、IPアドレスAddのポートは、例えば、ポートP1N,P2Nからなる。
【0067】
そして、対応表TBL1においては、スキャン応答SRおよびスキャン応答遅延SRDは、各ポートに対応付けられて対応表TBL1に格納される。
【0068】
ネットワーク種別NWは、ネットワークスキャンがIPアドレスAddに対して実行されるときのネットワークの種別を示す。
【0069】
図3においては、IPアドレスAdd~Addに対するスキャン実施回数は、相互に異なっているが、この発明の実施の形態においては、これに限らず、IPアドレスAdd~Addに対するスキャン実施回数は、相互に同じであってもよい。
【0070】
また、この発明の実施の形態においては、1つのIPアドレスAddに対して複数回のネットワークスキャンを実施する場合、1つのIPアドレスAddに対する複数回のネットワークスキャンは、複数のラウンド(「ラウンド」については後述する。)において同じ時刻に実施されてもよく、複数のラウンドの異なる時刻に実施されてもよい。従って、1つのIPアドレスAddに対する複数回のネットワークスキャンが複数のラウンドの異なる時刻に実施される場合、対応表TBL1において、各IPアドレスAddに対応する時刻tは、複数の時刻からなる。
【0071】
更に、ある時刻tにおいて、IPアドレスAddに対してネットワークスキャンのスケジュールが作成されなかった場合、スケジュールが作成されなかったIPアドレスAddに対応するスキャン応答SRおよびスキャン応答SRに対応するスキャン応答遅延SRDの欄は、空欄である。
【0072】
図4は、ネットワークスキャンを実行するタイミングを説明するための図である。図4を参照して、この発明の実施の形態においては、θの時間長を有する区間SECが設定される。θは、ネットワークスキャンを実施する所定の周期の周期長である。θは、例えば、12時間および24時間等である。
【0073】
1つの区間SECは、0時間帯、1時間帯、2時間帯、・・・等の複数の時間帯からなる。
【0074】
そして、ネットワークスキャンは、1つの区間SECの複数の時間帯において端末装置iのIPアドレスAddに対して実行される。この場合、各時間帯においてネットワークスキャンの対象となる端末装置の個数は、同じあっても異なっていてもよい。図4においては、0時間帯においてネットワークスキャンの対象となる端末装置の個数は、5個であり、1時間帯においてネットワークスキャンの対象となる端末装置の個数は、6個であり、2時間帯においてネットワークスキャンの対象となる端末装置の個数は、3個であり、3時間帯においてネットワークスキャンの対象となる端末装置の個数は、4個である。なお、各区間SECは、「ラウンド」と呼ばれる。
【0075】
この発明の実施の形態においては、θを所定の周期の周期長として、所定の周期の頻度でネットワークスキャンが実行される。そして、ネットワークスキャンがMの整数倍だけ実施されるごとにスキャン応答SRおよびスキャン応答遅延SRDがホスト情報データベース13に格納される。
【0076】
図5は、スキャンレートとネットワーク種別との対応関係を示す対応表の概念図である。
【0077】
図5を参照して、スキャンレート1~4は、ネットワーク種別A,Bに応じて設定される。より具体的には、ネットワーク種別Aにおいては、例えば、スキャンレート1~4は、それぞれ、50[packet/時間帯],10[packet/時間帯],2[packet/時間帯],1[packet/時間帯]に設定される。また、ネットワーク種別Bにおいては、例えば、スキャンレート1~3は、それぞれ、10[packet/時間帯],4[packet/時間帯],2[packet/時間帯]に設定され、スキャンレート4は、設定されない。
【0078】
スキャンレート1~4は、最小スキャンレートと最大スキャンレートとの間に設定される。
【0079】
ネットワークスキャンされるネットワークの通信システムの最大スループットをTHPmax[bps]とし、スキャンパケットのサイズをSSCAN[byte]とし、1個の時間帯の時間長をTτ[sec]としたとき、最大スキャン受信レートRSCAN_Receive_Highest[packet/時間帯]は、次式によって算出される。
【0080】
【数1】
【0081】
即ち、最大スキャン受信レートRSCAN_Receive_Highestは、ネットワークスキャンされるネットワークの通信システムの最大スループットTHPmaxをスキャンパケットのサイズSSCANで除算した除算結果に1つの時間帯の時間長Tτを乗算することによって算出される。従って、最大スキャン受信レートRSCAN_Receive_Highestは、1つの時間帯当たりに、その無線システムの端末装置が受信できるスキャンパケットの最大数からなる。
【0082】
そして、1個のIPアドレスAddの1回のネットワークスキャン当たりのスキャンパケットの送信量の最大量をNPACKET_MAX[packet]としたとき、最大スキャン送出レートRSCAN_Send_Highest[packet/時間帯]は、RSCAN_Send_Highest=NPACKET_MAXとなる。最大スキャン受信レートRSCAN_Receive_Highestと最大スキャン送出レートRSCAN_Send_Highestとのうちの最小値を最大スキャンレートRSCAN_MAX_1とする。
【0083】
また、1ラウンドの長さθ[sec]と送信量の最大量NPACKET_MAXとに基づいて次式によって最小スキャンレートRSCAN_MIN_1[packet/時間帯]を算出する。
【0084】
【数2】
【0085】
なお、最小スキャンレートRSCAN_MIN_1は、1ラウンドでNPACKET_MAXだけスキャンパケットを送出するときの最小平均スキャンレートである。
【0086】
そして、最小スキャンレートRSCAN_MIN_1[packet/時間帯]と最大スキャンレートRSCAN_MAX_1[packet/時間帯]との範囲において、スキャンレート1~4を決定する。
【0087】
例えば、通信システム(無線システム)がWi-SUNであるとき、最大スループットTHPmax[bps]は、20[kbps](=物理レート200[kbps]×0.1(送出制限))であり、パケットサイズが60byteであり、時間長Tτが3600[sec]であるなら、式(1)によって、最大スキャン受信レートRSCAN_Receive_Highest[packet/時間帯]は、(20000/(8*60))*3600≒150000[packet/時間帯]となる。
【0088】
また、1個のIPアドレスAddの最大スキャンポート数が10000であるとすると、最大量NPACKET_MAXは、10000[packet]であるので、最大スキャン送出レートRSCAN_Send_Highest[packet/時間帯]は、10000[packet/時間帯]となる。
【0089】
従って、最大スキャンレートRSCAN_MAX_1は、10000[packet/時間帯]と150000[packet/時間帯]とのうちの最小値である10000[packet/時間帯]となる。
【0090】
更に、例えば、1ラウンドの時間長θを12時間=12*3600[sec]とし、最大量NPACKET_MAXを10000[packet/時間帯]とし、1つの時間帯の時間長Tτ[sec]を1時間=3600[sec]とすると、最小スキャンレートRSCAN_MIN_1[packet/時間帯]は、(10000/(12*3600)*3600)≒834[packet/時間帯]となる。
【0091】
従って、834[packet/時間帯]と10000[packet/時間帯]との範囲において、スキャンレート1~4を決定する。
【0092】
上述した方法によって、スキャンレート1~4は、ネットワーク種別Aに対して決定され、スキャンレート1~3は、ネットワーク種別Bに対して決定される。
【0093】
図6は、スキャンレートを決定する別の方法を説明するための図である。ネットワークスキャンに使用されるネットワークの通信システムの最大スキャンレートと最小スキャンレートを先の例と同様に算出し、それぞれRSCAN_MAX_2、RSCAN_MIN_2とする。
【0094】
そして、最小スキャンレートRSCAN_MIN_2以上の範囲において、最大スキャンレートRSCAN_MAX_2を初項とし、公比をλ(λは、0より大きく1未満の実数)とする等比級数によってスキャンレートを決定する。
【0095】
その結果、図6に示すスキャンレートW*λ,W*λ,W*λ,W*λ,・・・,W*λが得られる。なお、図6において、Wは、最大スキャンレートRSCAN_MAX_2である。
【0096】
そして、対応表TBL3は、スキャンレートの番号とスキャンレートとを含む。スキャンレートの番号は、1,2,3,4,・・・,bからなり、スキャンレートは、W*λ,W*λ,W*λ,W*λ,・・・,W*λからなる。
【0097】
図7は、図6に示すスキャンレートの具体例を示す図である。図5において説明したように、最大スキャンレートRSCAN_MAXは、10000[packet/時間帯]と150000[packet/時間帯]とのうちの最小値である10000[packet/時間帯]となり、最小スキャンレートRSCAN_MIN[packet/時間帯]は、(10000/(12*3600)*3600)≒834[packet/時間帯]となる。
【0098】
そして、最小スキャンレートRSCAN_MIN_2(=834[packet/時間帯])以上の範囲において、最大スキャンレートRSCAN_MAX_2(=10000[packet/時間帯])を初項とし、公比λ=0.9とする等比級数によってスキャンレートを決定する。その結果、図7に示すスキャンレートが得られる。
【0099】
図8は、スキャンレートを制御する方法を説明するための図である。図8を参照して、制御手段14は、1つの時間帯τにおける1つのIPアドレスAddに対応するスキャン応答SRおよびスキャン応答遅延SRDを対応表TBL1から検出する。ここで、スキャン応答SRは、“1”からなるスキャン応答SRであり、スキャン応答遅延SRDは、“1”からなるスキャン応答SRに対応付けられたスキャン応答遅延SRDである。
【0100】
この場合、制御手段14は、対応表TBL1における時刻tに基づいて、次式(3)によって各IPアドレスAddに対応するスキャン応答SRおよびスキャン応答遅延SRDが属する時間帯τを算出する。
【0101】
【数3】
【0102】
式(3)における[・]は、括弧内の値以下の最大の整数を求める関数である。また、hは、1つの時間帯の時間長である。従って、式(3)の演算結果は、時刻tが属する時間帯が所定の周期の開始端から何番目の時間帯に属するかを表す。
【0103】
そして、制御手段14は、検出したスキャン応答SRの個数NSRiをカウントし、検出したスキャン応答遅延SRDのうち、しきい値thNWi以上のスキャン応答遅延SRDの個数NSRDiをカウントする。ここで、しきい値thNWiは、ネットワーク種別ごとに決められたしきい値である。従って、制御手段14は、ネットワーク種別に対応付けてしきい値thNWiを予め保持している。
【0104】
制御手段14は、個数NSRDiおよび個数NSRiをカウントすると、個数NSRiが零であるか否かを判定する。そして、制御手段14は、個数NSRiが零であると判定したとき、スキャンレート2(10)をスキャンレート3(2)に下げる。
【0105】
一方、制御手段14は、個数NSRiが零でないと判定したとき、個数NSRDiを個数NSRiで除算した比c(=NSRDi/NSRi)を算出する。
【0106】
例えば、図8に示す0時間帯のスキャン応答遅延SRDを表す〇の個数は、6個であるので、NSRi=6であり、6個の〇のうち、しきい値thNWi以上の〇の個数は、5個であるので、NSRDi=5である。その結果、比c(=NSRDi/NSRi)=5/6である。
【0107】
そして、制御手段14は、比c(=NSRDi/NSRi)がしきい値ZNWiよりも大きいか否かを判定する。
【0108】
制御手段14は、比c(=NSRDi/NSRi)がしきい値ZNWiよりも大きいと判定したとき、スキャンレート2(10)をスキャンレート3(2)に1段階下げる。
【0109】
一方、制御手段14は、比c(=NSRDi/NSRi)がしきい値ZNWiよりも大きくないと判定したとき、比c(=NSRDi/NSRi)が零であるか否かを判定する。
【0110】
そして、制御手段14は、比c(=NSRDi/NSRi)が零であると判定したとき、スキャンレート2(10)をスキャンレート1(50)に1段階上げる。
【0111】
一方、制御手段14は、比c(=NSRDi/NSRi)が零でないと判定したとき、スキャンレート2(10)を維持する。
【0112】
図9は、複数のネットワークにおけるスキャン応答遅延SRDの累積分布関数を示す図である。
【0113】
図9において、縦軸は、スキャン応答遅延SRDの累積分布関数を表し、横軸は、スキャン応答遅延SRDを表す。また、曲線k1は、LAN(Local Area Network)におけるスキャン応答遅延SRDの累積分布関数を示し、曲線k2は、WLAN(Wireless LAN(Local Area Network))におけるスキャン応答遅延SRDの累積分布関数を示し、曲線k3は、LTE(Long Term Evolution)におけるスキャン応答遅延SRDの累積分布関数を示し、曲線k4は、Wi-SUN(Wireless Smart Utility Network)におけるスキャン応答遅延SRDの累積分布関数を示し、曲線k5は、LoRa(Long Range)におけるスキャン応答遅延SRDの累積分布関数を示す。
【0114】
図9を参照して、LAN、WLAN、LTE、Wi-SUNおよびLoRaにおけるしきい値thLAN,thWLAN,thLTE,thWi―SUN,thLoRaは、例えば、混雑していない無線ネットワークに対するスキャン応答遅延SRDの累積分布関数CDF(Cumulative Distribution Function)が0.95であるときのスキャン応答遅延SRDに設定される。
【0115】
従って、図8に示すしきい値thNWiは、上述した方法によって各ネットワークNWに対して決定される。そして、制御手段14は、各ネットワーク種別に対応付けてしきい値thNWiを予め保持している。
【0116】
スキャンスケジュールを作成する方法について説明する。スキャンスケジューラ15は、式(5)~式(7)に示す制約条件の下で式(4)に示す目的関数を満たすようにスキャン指数si,j,τを算出する。
【0117】
【数4】
【0118】
【数5】
【0119】
【数6】
【0120】
【数7】
【0121】
式(4)に示すスキャン指数si,j,τは、IPアドレスAddのポートPに対して時間帯τにおいてネットワークスキャンを行うか否かを示す。より具体的には、スキャン指数si,j,τは、IPアドレスAddのポートjに対して時間帯τにおいてネットワークスキャンを行うとき“1”からなり、IPアドレスAddのポートjに対して時間帯τにおいてネットワークスキャンを行わないとき“0”からなる。
【0122】
また、式(4)において、τmaxは、1つのラウンドにおける時間帯τの総数である。
【0123】
更に、式(4)におけるMは、IPアドレスAddのスキャン対象のポートの総数であり、Nは、ネットワークスキャンの対象となるIPアドレスAddの総数である。
【0124】
更に、式(4)におけるCi,τは、時間帯τにおいてIPアドレスAddに対してネットワークスキャンを行ったときのスキャン応答遅延SRDからなる。
【0125】
従って、式(4)に示す目的関数は、1つのラウンド(0時間帯~(τmax-1)時間帯からなる)において、全てのIPアドレスAdd~Addの全てのポートP~PMiに対してネットワークスキャンを行ったときのスキャン応答遅延SRDの総和を最小化するものである。
【0126】
式(5)は、IPアドレスAddのポートPに対するネットワークスキャンは、1つのラウンドのいずれかの時間帯で行われることを制約する。
【0127】
式(6)において、Dτは、τ時間帯におけるスキャン量の上限値を示す。従って、式(6)は、τ時間帯におけるスキャン量がスキャン量の上限値Dτ以下であることを制約する。
【0128】
式(7)におけるαi,τは、τ時間帯におけるIPアドレスAddに対するスキャンレートの番号を示す。その結果、rNWi αi,τは、τ時間帯においてネットワーク種別NWのネットワークを用いてIPアドレスAddに対してネットワークスキャンを行うときのスキャンレートの番号αi,τに対応するスキャンレートを示す。
【0129】
ここで、スキャンレートrNWi αi,τの単位は、図5に示すように[packet/時間帯]であり、スキャンレートrNWi αi,τは、1つの時間帯においてIPアドレスAddへ送出できるスキャンパケットの上限を示す。
【0130】
従って、式(7)は、1つのτ時間帯においてネットワークスキャンを実行するときのIPアドレスAddに対するスキャンパケットの個数がτ時間帯においてIPアドレスAddに送出できるスキャンパケットの上限(=rNWi αi,τ)以下であることを制約する。
【0131】
スキャンスケジューラ15は、式(5)~式(7)に示す制約条件の下で式(4)に示す目的関数を満たすようにスキャン指数si,j,τを算出する。これによって、各IPアドレスAddのポートPに対するネットワークスキャンのスケジュールは、1つのラウンドの複数の時間帯のいずれかに割り当てられる。
【0132】
図10は、各時間帯におけるスキャンレートの制御を示す概念図である。スキャンスケジューラ15は、スキャンレートの制御結果を制御手段14から受ける。そして、スキャンスケジューラ15は、上述した方法によってスキャン指数si,j,τを算出し、スキャンスケジュールを作成する。
【0133】
図10を参照して、スキャンスケジューラ15は、タイミングtでスキャンレートのレート制御結果を制御手段14から受け、対応表TBL2を参照して、IPアドレスAdd,Add,Addに対してネットワークスキャンを実施するときのスキャンレートを0時間帯、1時間帯、2時間帯および3時間帯に設定する。即ち、スキャンスケジューラ15は、タイミングtにおいて、式(4)~式(7)によって、IPアドレスAdd,Add,Addに対してネットワークスキャンを実施するときのスキャンレートを0時間帯、1時間帯、2時間帯および3時間帯に設定する。
【0134】
図11は、図2に示すネットワークスキャン装置1の動作を説明するためのフローチャートである。
【0135】
図11を参照して、ネットワークスキャン装置1の動作が開始されると、ネットワークスキャナ11は、ネットワークスキャンを所定の周期の複数の時間帯で行うことを所定の周期に一致する頻度でMの整数倍の回数、ネットワークスキャンを実行する(ステップS1)。
【0136】
そして、スキャン解析マネージャ12は、ネットワークスキャンの結果に基づいて過去M回のネットワークスキャンのスキャン応答SRおよびスキャン応答遅延SRDを取得し、その取得したスキャン応答SRおよびスキャン応答遅延SRDをホスト情報データベース13の対応表TBL1に格納することによってスキャン応答SRおよびスキャン応答遅延SRDを収集する(ステップS2)。
【0137】
その後、制御手段14は、対応表TBL1に格納されたスキャン応答SRおよびスキャン応答遅延SRDに基づいてスキャンレートを制御する(ステップS3)。
【0138】
そして、スキャンスケジューラ15は、制御手段14によって制御されたスキャンレートを用いてスキャンスケジュールを作成し(ステップS4)、その作成したスキャンスケジュールをネットワークスキャナ11へ出力してスキャンスケジュールに従ってネットワークスキャンを実行するようにネットワークスキャナ11を制御する。
【0139】
ネットワークスキャナ11は、スキャンスケジューラ15からスキャンスケジュールを受け、その受けたスキャンスケジュールに従ってネットワークスキャンを実行する(ステップS5)。これによって、ネットワークスキャン装置1の動作が終了する。
【0140】
図12は、図11のステップS3の詳細な動作を説明するためのフローチャートである。
【0141】
図12を参照して、図11のステップS2の後、制御手段14は、i=1を設定し(ステップS31)、τ=0を設定する(ステップS32)。
【0142】
そして、制御手段14は、ホスト情報データベース13に格納された対応表TBL1を参照して、τ時間帯が、ネットワークスキャンが実施されなかった時間帯であるか否かを判定する(ステップS33)。より具体的には、制御手段14は、τ時間帯(対応表TBL1の時刻tに基づいて式(3)によって算出されるτ時間帯)におけるIPアドレスAddに対応するスキャン応答SRi_τおよびスキャン応答SRi_τに対応するスキャン応答遅延SRDi_τの欄が空欄であるとき、τ時間帯が、ネットワークスキャンが実施されなかった時間帯であると判定し、τ時間帯におけるIPアドレスAddに対応するスキャン応答SRi_τおよびスキャン応答SRi_τに対応するスキャン応答遅延SRDi_τの欄が空欄でないとき、τ時間帯が、ネットワークスキャンが実施されなかった時間帯でないと判定する。
【0143】
ステップS33において、τ時間帯が、ネットワークスキャンが実施されなかった時間帯であると判定されたとき、一連の動作は、ステップS48へ移行する。
【0144】
一方、ステップS33において、τ時間帯が、ネットワークスキャンが実施されなかった時間帯でないと判定されたとき、制御手段14は、ホスト情報データベース13に格納された対応表TBL1を参照して、τ時間帯においてIPアドレスAddに対応するスキャン応答SRi_τが“1”であるスキャン応答SRi_τおよびそのスキャン応答SRi_τに対応したスキャン応答遅延SRDi_τを検出する(ステップS34)。
【0145】
その後、制御手段14は、“1”であるスキャン応答SRi_τの総数NSRi_totalを検出する(ステップS35)。
【0146】
そして、制御手段14は、総数NSRi_totalが零であるか否かを判定する(ステップS36)。
【0147】
ステップS36において、総数NSRi_totalが零であると判定されたとき、一連の動作は、ステップS45へ移行する。
【0148】
一方、ステップS36において、総数NSRi_totalが零でないと判定されたとき、制御手段14は、s=1を設定し(ステップS37)、NSRDi_total=0を設定する(ステップS38)。なお、sは、対応表TBL1から検出したスキャン応答遅延SRDi_τの番号を表し、NSRDi_totalは、しきい値thNWi以上であるスキャン応答遅延SRDi_τの総数を表す。
【0149】
ステップS38の後、制御手段14は、ネットワーク種別NWに対応するしきい値thNWiを選択し、スキャン応答遅延SRDi_τ_sがしきい値thNWi以上であるか否かを判定する(ステップS39)。
【0150】
ステップS39において、スキャン応答遅延SRDi_τ_sがしきい値thNWi以上であると判定されたとき、制御手段14は、NSRDi_total=NSRDi_total+1を設定する(ステップS40)。即ち、制御手段14は、スキャン応答遅延SRDi_τ_sがしきい値thNWi以上であるとき、個数NSRDi_totalを“1”だけインクリメントする。
【0151】
一方、ステップS39において、スキャン応答遅延SRDi_τ_sがしきい値thNWi以上でないと判定されたとき、一連の動作は、ステップS41へ移行する。
【0152】
そして、ステップS39において、スキャン応答遅延SRDi_τ_sがしきい値thNWi以上でないと判定されたとき、またはステップS40の後、制御手段14は、s=NSRi_totalであるか否かを判定する(ステップS41)。なお、スキャン応答遅延SRDi_τの番号を表す“s”がスキャン応答SRi_τの総数NSRi_totalと等しいか否かを判定するのは、ステップS34で検出されたスキャン応答SRi_τ(“1”からなるスキャン応答SRi_τ)の個数およびそのスキャン応答SRi_τに対応するスキャン応答遅延SRDi_τの個数は、相互に等しいからである。
【0153】
ステップS41において、s=NSRi_totalでないと判定されたとき、制御手段14は、s=s+1を設定する(ステップS42)。その後、一連の動作は、ステップS39へ移行し、ステップS41において、s=NSRi_totalであると判定されるまで、ステップS39~ステップS42が繰り返し実行される。
【0154】
そして、ステップS41において、s=NSRi_totalであると判定されると、制御手段14は、c=NSRDi_total/NSRi_totalによって比cを算出する(ステップS43)。
【0155】
その後、制御手段14は、ネットワーク種別NWに対応するしきい値ZNWiを選択し、比cがしきい値ZNWiよりも大きいか否かを判定する(ステップS44)。
【0156】
ステップS44において、比cがしきい値ZNWiよりも大きいと判定されたとき、またはステップS36において、総数NSRi_totalが零であると判定されたとき、制御手段14は、対応表TBL2(または対応表TBL3)を参照して、ネットワーク種別NWおよびIPアドレスAddに対応するスキャンレートを1つ下げる(またはスキャンレートの番号αi,τを1つ大きくする)(ステップS45)。これによって、τ時間帯におけるIPアドレスAddに対するネットワークスキャンのスキャンレートが1つ下げられる。
【0157】
一方、ステップS44において、比cがしきい値ZNWiよりも大きくないと判定されたとき、制御手段14は、比cが“0”であるか否かを判定する(ステップS46)。
【0158】
ステップS46において、比cが“0”であると判定されたとき、制御手段14は、対応表TBL2(または対応表TBL3)を参照して、ネットワーク種別NWおよびIPアドレスAddに対応するスキャンレートを1つ上げる(またはスキャンレートの番号αi,τを1つ小さくする)(ステップS47)。これによって、τ時間帯におけるIPアドレスAddに対するネットワークスキャンのスキャンレートが1つ上げられる。
【0159】
そして、ステップS33において、τ時間帯が、ネットワークスキャンが実施されなかった時間帯であると判定されたとき、またはステップS45の後、またはステップS46において比cが“0”でないと判定されたとき、またはステップS47の後、制御手段14は、τ=τmax-1であるか否かを判定する(ステップS48)。
【0160】
ステップS48において、τ=τmax-1でないと判定されたとき、制御手段14は、τ=τ+1を設定する(ステップS49)。その後、一連の動作は、ステップS33へ移行し、ステップS48において、τ=τmax-1であると判定されるまで、ステップS33~ステップS49が繰り返し実行される。
【0161】
そして、ステップS48において、τ=τmax-1であると判定されると、制御手段14は、i=Nであるか否かを判定する(ステップS50)。
【0162】
ステップS50において、i=Nでないと判定されたとき、制御手段14は、i=i+1を設定する(ステップS51)。その後、一連の動作は、ステップS32へ移行し、ステップS50において、i=Nであると判定されるまで、ステップS32~ステップS51が繰り返し実行される。
【0163】
そして、ステップS50において、i=Nであると判定されると、一連の動作は、図11のステップS4へ移行する。
【0164】
制御手段14は、s=NSRi_totalになるまでステップS39~ステップS42を繰り返し実行することによって、τ時間帯において、しきい値thNWi以上であるスキャン応答遅延SRDの総数(図8の“NSRDi=5”を参照)を取得する。
【0165】
そして、制御手段14は、比cがしきい値ZNWiよりも大きいと判定したとき、スキャンレートを1つ下げる(ステップS45参照)。
【0166】
従って、1つのIPアドレスAddに対して1つの時間帯において取得されたスキャン応答遅延SRDのうち、しきい値thNWi以上であるスキャン応答遅延SRDの個数NSRDi_totalが一定値(=ZNWi*NSRi_total)よりも大きい場合、ネットワークスキャンのスキャンレートを1つ下げる。そして、しきい値ZNWiは、例えば、端末装置i(=IPアドレスAdd)から返って来たスキャン応答SRの個数(“1”からなるスキャン応答SRの個数)のうちの0.3倍~0.5倍に設定される。
【0167】
このように、しきい値thNWi以上であるスキャン応答遅延SRDの個数NSRDi_totalが一定値(=ZNWi*NSRi_total)よりも大きい場合にスキャンレートを下げるのは、個数NSRDi_totalが一定値(=ZNWi*NSRi_total)よりも大きくなると、ネットワークNWにおける無線トラフィック量または無線リソース量が多くなり、ネットワークスキャン以外の通常の無線通信において遅延等を発生させる要因になるので、これを抑制するためである。
【0168】
従って、個数NSRDi_totalが一定値(=ZNWi*NSRi_total)よりも大きいときにステップS45を実行することによってネットワークNWにおける無線トラフィック量または無線リソース量を抑制することができる。
【0169】
また、ステップS46において、c=0であると判定されたとき、スキャンレートを1つ上げるのは、しきい値thNWi以上の個数NSRDi_totalが“0”であるので、ネットワークNWにおける無線トラフィック量または無線リソース量に余裕があり、ネットワークスキャン以外の通常の無線通信に与える影響が少ないからである。
【0170】
更に、ステップS33において、τ時間帯が、ネットワークスキャンが実施されなかった時間帯であると判定されたとき、またはステップS46において、c=0でないと判定されたとき、スキャンレートが制御されていないので、τ時間帯が、ネットワークスキャンが実施されなかった時間帯であると判定されたとき、またはc=0でないと判定されたとき、スキャンレートが維持される。
【0171】
従って、ステップS33において、τ時間帯が、ネットワークスキャンが実施されなかった時間帯であると判定されたとき、スキャンレートは、維持される。これは、ネットワークスキャンが実施されなかった時間帯であると判定されたτ時間帯におけるネットワークスキャンに関する情報が無いので、ネットワークNWにおける無線トラフィック量または無線リソース量が多いか少ないかが不明であるため、スキャンレートを維持することにしたものである。
【0172】
また、ステップS44において、比cがしきい値ZNWiよりも大きくないと判定されたとき、スキャンレートは、維持され、または1つ上げられる。
【0173】
上述したように、ネットワークスキャン装置1は、総数NSRi_totalが零である場合、またはしきい値thNWi以上であるスキャン応答遅延SRDの個数NSRDi_totalが一定値(=ZNWi*NSRi_total)よりも大きい場合、ネットワークスキャンのスキャンレートを1つ下げ、個数NSRDi_totalが、一定値(=ZNWi*NSRi_total)よりも大きくなく、かつ、“0”である場合、ネットワークスキャンのスキャンレートを1つ上げ、個数NSRDi_totalが、一定値(=ZNWi*NSRi_total)よりも大きくなく、かつ、“0”でない場合、またはτ時間帯が、ネットワークスキャンが実施されなかった時間帯である場合、スキャンレートを維持する。
【0174】
従って、スキャン応答遅延SRDの値が大きくなってもスキャンレートを一定に保持する場合に比べて、ネットワークスキャンを実行するときの無線トラフィック量または無線リソース量を抑制できる。
【0175】
また、総数NSRi_totalが零であることは、Mの整数倍の回数だけネットワークスキャンを実施し、時間帯τでスキャン応答SRが全く返って来なかったことを表すので、時間帯τでは、ネットワークにおける無線トラフィックが非常に混雑していることが想定される。従って、総数NSRi_totalが零である場合、スキャンレートを1つ下げることにした。これによって、ネットワークスキャンを実行するときの無線トラフィック量を抑制できる。
【0176】
更に、スキャンスケジューラ15は、式(4)によって、1つのラウンド(0時間帯~(τmax-1)時間帯からなる)において、全てのIPアドレスAdd~Addの全てのポートP~PMiに対してネットワークスキャンを行ったときのスキャン応答遅延SRDの総和を最小化するようにスキャン指数si,j,τを算出するので、ネットワークスキャンを実行するときの無線トラフィック量または無線リソース量を更に抑制できる。
【0177】
実施の形態1においては、ネットワークスキャン装置1の動作は、ソフトウェアによって実現されてもよい。この場合、ネットワークスキャン装置1は、CPU(Central Processing Unit)、ROM(Read Only Memory)およびRAM(Random Access Memory)を備える。そして、ROMは、図11に示すフローチャート(図12に示すフローチャートを含む)の各ステップからなるプログラムProg_Aを記憶する。
【0178】
CPUは、ROMからプログラムProg_Aを読み出し、その読み出したプログラムProg_Aを実行して、スキャンレートを制御するとともに制御後のスキャンレートを反映してネットワークスキャンを実行するためのスキャンスケジュールを作成し、その作成したスキャンスケジュールに従ってネットワークスキャンを実行する。RAMは、算出したスキャン指数si,j,τ等を一時的に記憶する。
【0179】
また、プログラムProg_Aは、CD,DVD等の記録媒体に記録されて流通してもよい。プログラムProg_Aを記録した記録媒体がコンピュータに装着されると、コンピュータは、記録媒体からプログラムProg_Aを読み出して実行し、スキャンレートを制御するとともに制御後のスキャンレートを反映してネットワークスキャンを実行するためのスキャンスケジュールを作成し、その作成したスキャンスケジュールに従ってネットワークスキャンを実行する。
【0180】
従って、プログラムProg_Aを記録した記録媒体は、コンピュータ読み取り可能な記録媒体である。
【0181】
なお、上記においては、比cがしきい値ZNWiよりも大きいときスキャンレートを1つ下げると説明したが、実施の形態1においては、これに限らず、比cがしきい値ZNWiよりも大きいときスキャンレートを任意の個数だけ下げてもよい。
【0182】
また、上記においては、比cが“0”であるときスキャンレートを1つ上げると説明したが、実施の形態1においては、これに限らず、比cが“0”であるときスキャンレートを任意の個数だけ上げてもよい。
【0183】
[実施の形態2]
図13は、図1に示すネットワークスキャン装置1の実施の形態2における概略図である。
【0184】
図13を参照して、実施の形態2によるネットワークスキャン装置1Aは、図2に示すネットワークスキャン装置1に推定手段16を追加したものであり、その他は、ネットワークスキャン装置1と同じである。
【0185】
推定手段16は、ホスト情報データベース13の対応表TBL1に格納されたスキャン応答遅延SRDに基づいて、後述する方法によって、ネットワークスキャンに用いるネットワークのネットワーク種別を推定し、その推定したネットワーク種別をIPアドレスAddに対応付けて対応表TBL1に格納する。従って、実施の形態2においては、対応表TBL1におけるネットワーク種別NWは、推定手段16によって推定されたネットワーク種別からなる。
【0186】
図14は、無線端末と有線端末におけるスキャン応答遅延の比較を示す図である。図14において、縦軸は、スキャン応答遅延SRDを表し、横軸は、サンプル番号を表す。
【0187】
図14を参照して、ネットワークスキャン用のスキャンパケットを公知のpspingによって模擬し、無線端末および有線端末のそれぞれに1000個のスキャンパケットを送信し、スキャン応答遅延SRDを測定した。このpspingは、スキャンパケットを模擬したパケットを送信し、スキャン応答遅延SRDを測定するものである。
【0188】
そして、スキャン応答遅延SRDに基づいて、公知のK-means法(非特許文献3)によって閾値を求め、無線端末と有線端末とを分類できるかを検証した。その結果、K-means法によって求めた閾値SRD_th1によって、約99%の精度で無線端末と有線端末とを分類できることが分かった。即ち、スキャン応答遅延SRDが閾値SRD_th1以下であれば、ネットワークスキャンの対象が有線端末であり、スキャン応答遅延SRDiが閾値SRD_th1よりも大きければ、ネットワークスキャンの対象が無線端末であることが、約99%の精度で分類できることが分かった。
【0189】
そこで、K-means法によって閾値SRD_th1,SRD_th2を求め、図18に示すように、更に、閾値SRD_th2を設定した。そして、スキャン応答遅延SRDが閾値SRD_th1以下(SRDi≦SRD_th1)であれば、ネットワークが有線ネットワークであり、スキャン応答遅延SRDが閾値SRD_th1よりも大きく、かつ、閾値SRD_th2以下(SRD_th1<SRD≦SRD_th2)であれば、ネットワークが無線LAN(Local Area Network)であり、スキャン応答遅延SRDが閾値SRD_th2よりも大きければ、ネットワークがセルラーネットワークであると分類することにした。
【0190】
そして、属性の個数がk(kは2以上の整数)個であるとき、推定手段16は、K-means法によって各端末装置をk個の属性のいずれかに分類するためのk-1個の閾値SRD_th1~SRD_thk-1を求める。
【0191】
その後、推定手段16は、1つの端末装置の1つのポートからのスキャン応答遅延SRDをk-1個の閾値SRD_th1~SRD_thk-1と比較して1つのポートをk個の属性のいずれかに分類する処理を全てのポートについて実行する。そして、推定手段16は、最も多くのポートが分類された属性を、その1つの端末装置の属性とする。即ち、推定手段16は、多数決論理によって端末装置の属性を判定する。
【0192】
推定手段16は、この処理を複数の端末装置について実行し、複数の端末装置の各々をk個の属性のいずれかに分類する。つまり、推定手段16は、複数の端末装置に対してネットワークスキャンを実行するときの複数のネットワークのネットワーク種別を推定する。
【0193】
図15は、図13に示すネットワークスキャン装置1Aの動作を説明するためのフローチャートである。
【0194】
図15に示すフローチャートは、図11に示すフローチャートのステップS2とステップS3との間にステップS81~ステップS88を追加したものであり、その他は、図11に示すフローチャートと同じである。
【0195】
図15を参照して、ネットワークスキャン装置1Aの動作が開始されると、上述したステップS1,S2が順次実行される。
【0196】
そして、ステップS2の後、推定手段16は、ネットワーク種別を推定し(ステップS81)、その推定したネットワーク種別をIPアドレスAddに対応付けてホスト情報データベース13の対応表TBL1に格納する。
【0197】
その後、制御手段14は、i=1を設定し(ステップS82)、前回の推定されたネットワーク種別をTYP_PRVに設定する(ステップS83)。また、制御手段14は、推定手段16によって推定されたネットワーク種別をTYPに設定する(ステップS84)。
【0198】
そうすると、制御手段14は、ネットワーク種別TYPがネットワーク種別TYP_PRVと同じであるか否かを判定する(ステップS85)。
【0199】
ステップS85において、ネットワーク種別TYPがネットワーク種別TYP_PRVと同じでないと判定されたとき、制御手段14は、IPアドレスAddのスキャンレートを初期化(即ち、スキャンレートの番号αi,τを“1”に設定)する(ステップS86)。
【0200】
ステップS85においてネットワーク種別TYPがネットワーク種別TYP_PRVと同じであると判定されたとき、またはステップS86の後、制御手段14は、i=Nであるか否かを判定する(ステップS87)。
【0201】
ステップS87において、i=Nでないと判定されたとき、制御手段14は、i=i+1を設定する(ステップS88)。その後、一連の動作は、ステップS83へ移行し、ステップS87において、i=Nであると判定されるまで、ステップS83~ステップS88が繰り返し実行される。
【0202】
そして、ステップS87において、i=Nであると判定されると、上述したステップS3~ステップS5が順次実行され、ネットワークスキャン装置1Aの動作が終了する。
【0203】
図16は、図15のステップS81の詳細な動作を説明するためのフローチャートである。
【0204】
図16を参照して、図15のステップS2の後、推定手段16は、ホスト情報データベース13の対応表TBL1に格納された複数のスキャン応答遅延SRDに基づいて、複数のポートをk個の属性に分類するためのk-1個の閾値SRD_th1~SRD_thk-1を機械学習(例えば、K-means法)によって決定する(ステップS811)。この場合、推定手段16は、機械学習器(例えば、K-means法によって機械学習を行う機械学習器)を保持しており、スキャン応答遅延SRDを機械学習器に入力し、k-1個の閾値SRD_th1~SRD_thk-1を出力として得る。なお、機械学習器は、K-means法によって機械学習を行う機械学習器に限らず、スキャン応答遅延SRDを機械学習器に入力すれば、k-1個の閾値SRD_th1~SRD_thk-1を出力する機械学習器であれば、どのような機械学習器であってもよい。
【0205】
ステップS811の後、推定手段16は、i=1を設定し(ステップS812)、IPアドレスAddのスキャン応答SRを受けた全てのポート番号を検出する(ステップS813)。
【0206】
その後、推定手段16は、IPアドレスAddのポート番号PNを最小のポート番号PN_minに設定する(ステップS814)。
【0207】
そうすると、推定手段16は、IPアドレスAddのポート番号PNに対応するスキャン応答遅延SRDをk-1個の閾値SRD_th1~SRD_thk-1と比較してポート番号PNを有するポートをk個の属性のいずれかに分類する(ステップS815)。
【0208】
そして、推定手段16は、ポート番号PNが最大のポート番号PN_maxであるか否かを判定する(ステップS816)。なお、ポート番号PNは、1つのIPアドレスAddに対応付けられた複数のポートのポート番号である。
【0209】
ステップS816において、ポート番号PNが最大のポート番号PN_maxでないと判定されたとき、推定手段16は、IPアドレスAddのポート番号PNを、現在のポート番号PNの次に大きいポート番号に設定する(ステップS817)。
【0210】
その後、一連の動作は、ステップS815へ移行し、ステップS816において、ポート番号PNが最大のポート番号PN_maxであると判定されるまで、ステップS815~ステップS817が繰り返し実行される。
【0211】
そして、ステップS816において、ポート番号PNが最大のポート番号PN_maxであると判定されると、推定手段16は、最も多くのポートが分類された属性にネットワーク種別NWを分類する(ステップS818)。
【0212】
引き続いて、推定手段16は、i=Nであるか否かを判定する(ステップS819)。
【0213】
ステップS819において、i=Nでないと判定されたとき、推定手段16は、i=i+1を設定する(ステップS820)。
【0214】
その後、一連の動作は、ステップS813へ移行し、ステップS819において、i=Nであると判定されるまで、ステップS813~ステップS820が繰り返し実行される。
【0215】
そして、ステップS819において、i=Nであると判定されると、一連の動作は、図15のステップS82へ移行する。
【0216】
ステップS815~ステップS817は、IPアドレスAddの全てのポートをk個の属性のいずれかに分類するステップである。そして、ステップS816において、ポート番号PNが最大のポート番号PN_maxであると判定されると、ステップS818において、ネットワーク種別NWは、最も多くのポートが分類された属性に分類される。即ち、推定手段16は、多数決論理によってネットワーク種別NWをk個の属性のいずれかに分類する。
【0217】
また、ステップS813~ステップS820は、複数のIPアドレスAddに対してネットワークスキャンを行うときの複数のネットワーク種別の全てをk個の属性のいずれかに分類するステップである。
【0218】
なお、実施の形態2においては、ネットワーク種別を推定する方法は、図16に示す方法に限らず、ネットワーク種別を推定できる方法であれば、どのような方法が用いられてもよい。
【0219】
図15に示すフローチャートによれば、推定されたネットワーク種別TYPが前回の推定されたネットワーク種別TYP_PRVと異なるとき、スキャンレートを初期化(ステップS86参照)した後に、スキャンレートを制御する(ステップS3参照)ので、ネットワーク種別の最新の推定結果に基づいてスキャンレートを制御できる。その結果、ネットワークスキャンを実行するときの無線トラフィック量または無線リソース量を正確に抑制できる。
【0220】
実施の形態2においては、ネットワークスキャン装置1Aの動作は、ソフトウェアによって実現されてもよい。この場合、ネットワークスキャン装置1Aは、CPU、ROMおよびRAMを備える。そして、ROMは、図15に示すフローチャート(図12に示すフローチャート、および図16に示すフローチャートを含む)の各ステップからなるプログラムProg_Bを記憶する。
【0221】
CPUは、ROMからプログラムProg_Bを読み出し、その読み出したプログラムProg_Bを実行して、スキャンレートを制御するとともに制御後のスキャンレートを反映してネットワークスキャンを実行するためのスキャンスケジュールを作成し、その作成したスキャンスケジュールに従ってネットワークスキャンを実行する。RAMは、算出したスキャン指数si,j,τ等を一時的に記憶する。
【0222】
また、プログラムProg_Bは、CD,DVD等の記録媒体に記録されて流通してもよい。プログラムProg_Bを記録した記録媒体がコンピュータに装着されると、コンピュータは、記録媒体からプログラムProg_Bを読み出して実行し、スキャンレートを制御するとともに制御後のスキャンレートを反映してネットワークスキャンを実行するためのスキャンスケジュールを作成し、その作成したスキャンスケジュールに従ってネットワークスキャンを実行する。
【0223】
従って、プログラムProg_Bを記録した記録媒体は、コンピュータ読み取り可能な記録媒体である。
【0224】
実施の形態2におけるその他の説明は、実施の形態1における説明と同じである。
【0225】
図17は、Nampで行われているスキャンレートの制御を示す概念図である。図17において、縦軸は、プローブ数を表し、横軸は、時間を表す。また、曲線k6は、プローブ数の時間依存性を示す。
【0226】
図17を参照して、Nampでは、スキャンレートを徐々に上げ、パケットロスを検知するとスキャンレートを下げる。
【0227】
しかし、Nampでは、過去のスキャン応答またはネットワークの混雑状況を考慮せずにスキャンレートを制御する。
【0228】
また、多数ポートスキャンでは、応答が無いポートが支配的であるが、それは、パケットロスと判断されるため、Nampでは、応答がない場合を考慮してスキャンレートを制御することができない。
【0229】
従って、上述した実施の形態1,2におけるスキャンレートの制御は、Nampで行われているスキャンレートの制御と全く異なるものであり、Nampで行われているスキャンレートの制御から示唆されるものでもない。
【0230】
上述した実施の形態1においては、M回のネットワークスキャンを複数の端末装置に対して実行したときの端末装置から返って来たスキャン応答SRに対応付けられたスキャン応答遅延SRDのうち、しきい値thNWi以上のスキャン応答遅延SRDの個数NSRDi_totalを端末装置から返って来たスキャン応答SRの個数NSRi_totalで除算した比cがしきい値ZNWiよりも大きいとき、ネットワークスキャンのスキャンレートを下げることを記載した。
【0231】
また、上述した実施の形態2においては、ネットワークスキャン装置1Aが、ネットワークスキャンが実行されるときのネットワークの種別を推定する推定手段16を備え、推定手段16によるネットワーク種別の推定結果に基づいてしきい値thNWiおよびしきい値ZNWiを設定し、その設定したしきい値thNWiおよびしきい値ZNWiを用いて実施の形態1と同じようにスキャンレートを制御することを記載した。
【0232】
従って、この発明の実施の形態によるネットワークスキャン装置は、
所定の周期に含まれる複数の時間帯において複数の端末装置の複数のIPアドレスに対して複数のスキャンパケットを第1のスキャンレートで送信してネットワークスキャンを行うネットワークスキャン処理を所定の周期に一致する頻度で実行するスキャン手段と、
スキャン手段によってM(Mは、1以上の整数)回のネットワークスキャン処理が実行されたときの端末装置からのQ(Qは、1以上の整数)個のスキャン応答とQ個のスキャン応答遅延とを複数の時間帯においてIPアドレスに対応付けて記録する記録手段と、
M個の所定の周期におけるM個の同じ時間帯において、第1のしきい値以上であるスキャン応答遅延の個数を端末装置から返って来たスキャン応答の個数で除算した除算結果を算出する算出処理をスキャン応答が返って来たIPアドレスの全てについて実行する算出手段と、
除算結果が第2のしきい値よりも大きいか否かを判定する判定処理をスキャン応答が返って来たIPアドレスの全てについて実行する判定手段と、
判定手段によって除算結果が第2のしきい値よりも大きいと判定されたとき、スキャンパケットのレートを第1のスキャンレートよりも低い第2のスキャンレートに制御する制御処理を第2のしきい値よりも大きい除算結果を有するスキャン応答遅延の全てについて実行する制御手段とを備え、
スキャン応答遅延は、スキャンパケットを送信してからスキャン応答を受信するまでの時間であり、
スキャン手段は、M回のネットワークスキャン処理が実行された後のネットワークスキャン処理において、制御手段によって制御された第2のスキャンレートでスキャンパケットを送信してネットワークスキャン処理を実行すればよい。
【0233】
ネットワークスキャン装置がこのような構成を備えていれば、ネットワークスキャンを実行するときのスキャンレートを低下することによる無線トラフィック量または無線リソース量を抑制して課題を解決できるからである。
【0234】
また、この発明の実施の形態によるプログラムは、
スキャン手段が、所定の周期に含まれる複数の時間帯において複数の端末装置の複数のIPアドレスに対して複数のスキャンパケットを第1のスキャンレートで送信してネットワークスキャンを行うネットワークスキャン処理を所定の周期に一致する頻度で実行する第1のステップと、
記録手段が、スキャン手段によってM(Mは、1以上の整数)回のネットワークスキャン処理が実行されたときの端末装置からのQ(Qは、1以上の整数)個のスキャン応答とQ個のスキャン応答遅延とを複数の時間帯においてIPアドレスに対応付けて記録する第2のステップと、
算出手段が、M個の所定の周期におけるM個の同じ時間帯において、第1のしきい値以上であるスキャン応答遅延の個数を端末装置から返って来たスキャン応答の個数で除算した除算結果を算出する算出処理をスキャン応答が返って来たIPアドレスの全てについて実行する第3のステップと、
判定手段が、除算結果が第2のしきい値よりも大きいか否かを判定する判定処理をスキャン応答が返って来たIPアドレスの全てについて実行する第4のステップと、
制御手段が、判定手段によって除算結果が第2のしきい値よりも大きいと判定されたとき、スキャンパケットのレートを第1のスキャンレートよりも低い第2のスキャンレートに制御する制御処理を第2のしきい値よりも大きい除算結果を有するスキャン応答遅延の全てについて実行する第5のステップとをコンピュータに実行させ、
スキャン応答遅延は、スキャンパケットを送信してからスキャン応答を受信するまでの時間であり、
スキャン手段は、M回のネットワークスキャン処理が実行された後のネットワークスキャン処理において、第5のステップにおいて制御された第2のスキャンレートでスキャンパケットを送信してネットワークスキャン処理を実行するものであればよい。
【0235】
なお、この発明の実施の形態においては、比cを算出する制御手段14は、「算出手段」を構成する。そして、比cは、「除算結果」を構成する。
【0236】
また、この発明の実施の形態においては、スキャン応答SRおよびスキャン応答遅延SRDを取得してホスト情報データベース13の対応表TBL1に格納するスキャン解析マネージャ12は、「記録手段」を構成する。
【0237】
更に、この発明の実施の形態においては、比cがしきい値ZNWiよりも大きいか否かを判定する制御手段14は、「判定手段」を構成する。
【0238】
更に、この発明の実施の形態においては、しきい値thNWiは、「第1のしきい値」を構成し、しきい値ZNWiは、「第2のしきい値」を構成する。
【0239】
更に、この発明の実施の形態においては、制御手段14によって下げられたスキャンレートは、「第2のスキャンレート」を構成し、制御手段14によって上げられたスキャンレートは、「第3のスキャンレート」を構成する。
【0240】
更に、この発明の実施の形態においては、式(5)は、「第1の制約条件」を構成し、式(6)は、「第2の制約条件」を構成し、式(7)は、「第3の制約条件」を構成する。
【0241】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【0242】
この発明は、ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体に適用される。
【符号の説明】
【0243】
1,1A ネットワークスキャン装置、10 通信システム、11 ネットワークスキャナ、12 スキャン解析マネージャ、13 ホスト情報データベース、14 制御手段、15 スキャンスケジューラ、16 推定手段、20 スキャン対象ネットワーク、30 ユーザ。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17