(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-19
(45)【発行日】2024-09-30
(54)【発明の名称】ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体
(51)【国際特許分類】
H04L 43/10 20220101AFI20240920BHJP
H04B 17/309 20150101ALI20240920BHJP
H04W 24/06 20090101ALI20240920BHJP
H04W 88/18 20090101ALI20240920BHJP
【FI】
H04L43/10
H04B17/309
H04W24/06
H04W88/18
(21)【出願番号】P 2020146731
(22)【出願日】2020-09-01
【審査請求日】2023-08-03
(31)【優先権主張番号】P 2019226169
(32)【優先日】2019-12-16
(33)【優先権主張国・地域又は機関】JP
【新規性喪失の例外の表示】特許法第30条第2項適用 2019年 電子情報通信学会通信ソサイエティ大会講演論文集2 BS-4-2、第S-14~S0-15頁 で公開
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和2年度支出負担行為担当官、総務省大臣官房会計課企画官、研究テーマ「周波数有効利用のためのIoTワイヤレス高効率広域ネットワークスキャン技術の研究開発」に関する委託研究、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】393031586
【氏名又は名称】株式会社国際電気通信基礎技術研究所
(74)【代理人】
【識別番号】100112715
【氏名又は名称】松山 隆夫
(72)【発明者】
【氏名】ババツンデ セグン オジェツンデ
(72)【発明者】
【氏名】鈴木 健太
(72)【発明者】
【氏名】矢野 一人
(72)【発明者】
【氏名】鈴木 義規
【審査官】羽岡 さやか
(56)【参考文献】
【文献】特開2009-246957(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巻,P.177-182
(58)【調査した分野】(Int.Cl.,DB名)
H04L 43/00
H04B 17/309
H04W 24/06
H04W 88/18
(57)【特許請求の範囲】
【請求項1】
複数の端末装置に対してネットワークスキャンを実行し、前記ネットワークスキャンのスキャン応答から複数の通信特性を取得するスキャン手段と、
前記スキャン手段によって取得された前記複数の通信特性に基づいて前記ネットワークスキャンの結果を推定するために最も適した第1の通信特性を抽出する抽出処理を実行する抽出手段と、
前記第1の通信特性を有する端末装置のグループ間の分散および前記第1の通信特性を有する端末装置のグループ内の分散に基づいて、前記第1の通信特性を有する端末装置のグループ間の分散と前記第1の通信特性を有する端末装置のグループ内の分散との比率を最大化するように、前記抽出処理において抽出された前記第1の通信特性を有する端末装置をネットワークスキャンが正常である第1のグループと、ネットワークスキャンが前記端末装置との通信チャネルに起因した原因によって失敗した第2および第3のグループとに分類し、前記第1のグループと前記第3のグループとを判別する第1の判別スコア
であって前記端末装置に対して算出される第1の判別スコアまたは前記第2のグループと前記第3のグループとを判別する第2の判別スコア
であって前記端末装置に対して算出される第2の判別スコアを算出し、その算出した第1の判別スコ
アに基づい
て前記ネットワークスキャンが正常または失敗であると推定するとともに、前記ネットワークスキャンが失敗であると推定したとき、
零よりも小さい前記第1の判別スコアを有する端末装置の個数に基づいて前記ネットワークスキャンが失敗した原因を推定する推定処理を実行
し、または前記算出した第2の判別スコアに基づいて前記ネットワークスキャンが正常または失敗であると推定するとともに、前記ネットワークスキャンが失敗であると推定したとき、零よりも小さい前記第2の判別スコアを有する端末装置の個数に基づいて前記ネットワークスキャンが失敗した原因を推定する推定処理を実行する推定手段とを備えるネットワークスキャン装置。
【請求項2】
前記抽出手段は、前記抽出処理において、前記複数の通信特性の相互の相関係数を算出し、その算出した相関係数が第1のしきい値よりも大きいd(dは正の整数)個の第2の通信特性を抽出し、その抽出したd個の第2の通信特性のうち、前記ネットワークスキャンの結果を推定するために最も重要な第2の通信特性を前記第1の通信特性として抽出する、請求項1に記載のネットワークスキャン装置。
【請求項3】
前記抽出手段は、前記抽出処理において、前記第2の通信特性について、期待値からのずれの大きさを表すスコアを算出する処理を前記d個の第2の通信特性の全てについて実行してd個のスコアを算出し、前記スコアの大きい順にK(Kは、正の整数)個の第2の通信特性を前記d個の第2の通信特性から抽出し、前記抽出したK個の第2の通信特性を学習済の分類アルゴリズムを用いて、前記ネットワークスキャンの結果を推定するために重要なグループと前記ネットワークスキャンの結果を推定するために重要でないグループとに分類し、前記ネットワークスキャンの結果を推定するための重要度に基づいて、前記抽出した第2の通信特性にランクを付与する第1の処理と、前記K個の第2の通信特性のうち、ランクが最も低い前記第2の通信特性を削除する第2の処理とを、削除する前記第2の通信特性が無くなるまで繰り返し実行し、最後に削除した前記第2の通信特性を前記第1の通信特性として抽出する、請求項2に記載のネットワークスキャン装置。
【請求項4】
前記推定手段は、前記推定処理において、前記ネットワークスキャンが失敗した原因を第1の原因、第2の原因、第3の原因および第4の原因のいずれかであると推定し、
前記第1の原因は、ネットワークスキャンの対象である端末装置との通信における通信品質が不足していることであり、
前記第2の原因は、前記ネットワークスキャンの対象である前記端末装置が接続されているネットワークが混雑していることであり、
前記第3の原因は、前記ネットワークスキャンの対象である前記端末装置がネットワークに接続されていないことであり、
前記第4の原因は、前記ネットワークスキャンの対象である前記端末装置のポートが閉塞していることである、請求項1から請求項3のいずれか1項に記載のネットワークスキャン装置。
【請求項5】
前記推定手段は、前記推定処理において、
前記第1の判別スコ
アが零であるとき、前記ネットワークスキャンが正常である、または前記ネットワークスキャンが前記第3の原因および前記第4の原因のいずれかによって失敗したと推定し、前記第1の判別スコ
アが零でないとき、前記ネットワークスキャンが前記第1の原因および第2の原因のいずれかによって失敗したと推定
し、
または
前記第2の判別スコアが零であるとき、前記ネットワークスキャンが正常である、または前記ネットワークスキャンが前記第3の原因および前記第4の原因のいずれかによって失敗したと推定し、前記第2の判別スコアが零でないとき、前記ネットワークスキャンが前記第1の原因および第2の原因のいずれかによって失敗したと推定する、請求項4に記載のネットワークスキャン装置。
【請求項6】
前記推定手段は、前記推定処理において、
前記第1の判別スコ
アが零であるとき、前記端末装置の全てのポートにおける前記スキャン応答の有無に基づいて、前記ネットワークスキャンが正常である、または前記第3の原因および前記第4の原因のいずれかによって前記ネットワークスキャンが失敗したと推定し、前記第1の判別スコ
アが零でないとき、零よりも小さい前記第
1の判別スコアを有する端末装置の個数に基づいて前記ネットワークスキャンが前記第1の原因または前記第2の原因によって失敗したと推定
し、
または
前記第2の判別スコアが零であるとき、前記端末装置の全てのポートにおける前記スキャン応答の有無に基づいて、前記ネットワークスキャンが正常である、または前記第3の原因および前記第4の原因のいずれかによって前記ネットワークスキャンが失敗したと推定し、前記第2の判別スコアが零でないとき、零よりも小さい前記第2の判別スコアを有する端末装置の個数に基づいて前記ネットワークスキャンが前記第1の原因または前記第2の原因によって失敗したと推定する、請求項5に記載のネットワークスキャン装置。
【請求項7】
前記推定手段は、前記推定処理において、
前記第1の判別スコ
アが零であり、かつ、前記端末装置の全てのポートにおいて前記スキャン応答があったとき、前記ネットワークスキャンが正常であると推定し、前記第1の判別スコ
アが零であり、かつ、前記端末装置の一部のポートにおいて前記スキャン応答があるとき、前記ネットワークスキャンが前記第4の原因によって失敗したと推定し、前記第1の判別スコ
アが零であり、かつ、前記端末装置の全てのポートにおいて前記スキャン応答が無いとき、前記ネットワークスキャンが前記第3の原因によって失敗したと推定し、前記端末装置の
零よりも小さい判別スコア(Dスコア)の個数を表すカウント値DS_countが第3のしきい値よりも小さいとき、零よりも小さい前記第
1の判別スコアを有する端末装置について前記ネットワークスキャンが前記第1の原因によって失敗したと推定し、前記端末装置の
零よりも小さい判別スコア(Dスコア)の個数を表すカウント値DS_countが前記第3のしきい値よりも小さくないとき、1つの基地局に属する全ての端末装置について前記ネットワークスキャンが前記第2の原因によって失敗したと推定
し、
または
前記第2の判別スコアが零であり、かつ、前記端末装置の全てのポートにおいて前記スキャン応答があったとき、前記ネットワークスキャンが正常であると推定し、前記第2の判別スコアが零であり、かつ、前記端末装置の一部のポートにおいて前記スキャン応答があるとき、前記ネットワークスキャンが前記第4の原因によって失敗したと推定し、前記第2の判別スコアが零であり、かつ、前記端末装置の全てのポートにおいて前記スキャン応答が無いとき、前記ネットワークスキャンが前記第3の原因によって失敗したと推定し、前記端末装置の零よりも小さい判別スコア(Dスコア)の個数を表すカウント値DS_countが第3のしきい値よりも小さいとき、零よりも小さい前記第2の判別スコアを有する端末装置について前記ネットワークスキャンが前記第1の原因によって失敗したと推定し、前記端末装置の零よりも小さい判別スコア(Dスコア)の個数を表すカウント値DS_countが前記第3のしきい値よりも小さくないとき、1つの基地局に属する全ての端末装置について前記ネットワークスキャンが前記第2の原因によって失敗したと推定する、請求項6に記載のネットワークスキャン装置。
【請求項8】
前記推定手段は、前記第1のグループと前記第2のグループとを判別する第3の判別スコアに基づいて前記ネットワークスキャンの結果を推定するためのモデルを第1のモデルに更新したとき、前記第1の判別スコアを用いて前記推定処理を実行し、前記第3の判別スコアに基づいて前記ネットワークスキャンの結果を推定するためのモデルを第2のモデルに更新したとき、前記第2の判別スコアを用いて前記推定処理を実行する、請求項1から請求項7のいずれか1項に記載のネットワークスキャン装置。
【請求項9】
スキャン手段が、複数の端末装置に対してネットワークスキャンを実行し、前記ネットワークスキャンのスキャン応答から複数の通信特性を取得する第1のステップと、
抽出手段が、前記第1のステップにおいて取得された前記複数の通信特性に基づいて前記ネットワークスキャンの結果を推定するために最も適した第1の通信特性を抽出する抽出処理を実行する第2のステップと、
推定手段が、
前記第1の通信特性を有する端末装置のグループ間の分散および前記第1の通信特性を有する端末装置のグループ内の分散に基づいて、前記第1の通信特性を有する端末装置のグループ間の分散と前記第1の通信特性を有する端末装置のグループ内の分散との比率を最大化するように、前記第2のステップの前記抽出処理において抽出された前記第1の通信特性を有する端末装置をネットワークスキャンが正常である第1のグループと、ネットワークスキャンが前記端末装置との通信チャネルに起因した原因によって失敗した第2および第3のグループとに分類し、前記第1のグループと前記第3のグループとを判別する第1の判別スコア
であって前記端末装置に対して算出される第1の判別スコアまたは前記第2のグループと前記第3のグループとを判別する第2の判別スコア
であって前記端末装置に対して算出される第2の判別スコアを算出し、その算出した第1の判別スコ
アに基づい
て前記ネットワークスキャンが正常または失敗であると推定するとともに、前記ネットワークスキャンが失敗であると推定したとき、
零よりも小さい前記第1の判別スコアを有する端末装置の個数に基づいて前記ネットワークスキャンが失敗した原因を推定する推定処理を実行
し、または前記算出した第2の判別スコアに基づいて前記ネットワークスキャンが正常または失敗であると推定するとともに、前記ネットワークスキャンが失敗であると推定したとき、零よりも小さい前記第2の判別スコアを有する端末装置の個数に基づいて前記ネットワークスキャンが失敗した原因を推定する推定処理を実行する第3のステップとをコンピュータに実行させるためのプログラム。
【請求項10】
前記抽出手段は、前記第2のステップの前記抽出処理において、前記複数の通信特性の相互の相関係数を算出し、その算出した相関係数が第1のしきい値よりも大きいd(dは正の整数)個の第2の通信特性を抽出し、その抽出したd個の第2の通信特性のうち、前記ネットワークスキャンの結果を推定するために最も重要な第2の通信特性を前記第1の通信特性として抽出する、請求項9に記載のコンピュータに実行させるためのプログラム。
【請求項11】
前記抽出手段は、前記第2のステップの前記抽出処理において、前記第2の通信特性について、期待値からのずれの大きさを表すスコアを算出する処理を前記d個の第2の通信特性の全てについて実行してd個のスコアを算出し、前記スコアの大きい順にK(Kは、正の整数)個の第2の通信特性を前記d個の第2の通信特性から抽出し、前記抽出したK個の第2の通信特性を学習済の分類アルゴリズムを用いて、前記ネットワークスキャンの結果を推定するために重要なグループと前記ネットワークスキャンの結果を推定するために重要でないグループとに分類し、前記ネットワークスキャンの結果を推定するための重要度に基づいて、前記抽出した第2の通信特性にランクを付与する第1の処理と、前記K個の第2の通信特性のうち、ランクが最も低い前記第2の通信特性を削除する第2の処理とを、削除する前記第2の通信特性が無くなるまで繰り返し実行し、最後に削除した前記第2の通信特性を前記第1の通信特性として抽出する、請求項10に記載のコンピュータに実行させるためのプログラム。
【請求項12】
前記推定手段は、前記第3のステップの前記推定処理において、前記ネットワークスキャンが失敗した原因を第1の原因、第2の原因、第3の原因および第4の原因のいずれかであると推定し、
前記第1の原因は、ネットワークスキャンの対象である端末装置との通信における通信品質が不足していることであり、
前記第2の原因は、前記ネットワークスキャンの対象である前記端末装置が接続されているネットワークが混雑していることであり、
前記第3の原因は、前記ネットワークスキャンの対象である前記端末装置がネットワークに接続されていないことであり、
前記第4の原因は、前記ネットワークスキャンの対象である前記端末装置のポートが閉塞していることである、請求項9から請求項11のいずれか1項に記載のコンピュータに実行させるためのプログラム。
【請求項13】
前記推定手段は、前記第3のステップの前記推定処理において、
前記第1の判別スコ
アが零であるとき、前記ネットワークスキャンが正常である、または前記ネットワークスキャンが前記第3の原因および前記第4の原因のいずれかによって失敗したと推定し、前記第1の判別スコ
アが零でないとき、前記ネットワークスキャンが前記第1の原因および第2の原因のいずれかによって失敗したと推定
し、
または
前記第2の判別スコアが零であるとき、前記ネットワークスキャンが正常である、または前記ネットワークスキャンが前記第3の原因および前記第4の原因のいずれかによって失敗したと推定し、前記第2の判別スコアが零でないとき、前記ネットワークスキャンが前記第1の原因および第2の原因のいずれかによって失敗したと推定する、請求項12に記載のコンピュータに実行させるためのプログラム。
【請求項14】
前記推定手段は、前記第3のステップの前記推定処理において、
前記第1の判別スコ
アが零であるとき、前記端末装置の全てのポートにおける前記スキャン応答の有無に基づいて、前記ネットワークスキャンが正常である、または前記第3の原因および前記第4の原因のいずれかによって前記ネットワークスキャンが失敗したと推定し、前記第1の判別スコ
アが零でないとき、零よりも小さい前記第
1の判別スコアを有する端末装置の個数に基づいて前記ネットワークスキャンが前記第1の原因または前記第2の原因によって失敗したと推定
し、
または
前記第2の判別スコアが零であるとき、前記端末装置の全てのポートにおける前記スキャン応答の有無に基づいて、前記ネットワークスキャンが正常である、または前記第3の原因および前記第4の原因のいずれかによって前記ネットワークスキャンが失敗したと推定し、前記第2の判別スコアが零でないとき、零よりも小さい前記第2の判別スコアを有する端末装置の個数に基づいて前記ネットワークスキャンが前記第1の原因または前記第2の原因によって失敗したと推定する、請求項13に記載のコンピュータに実行させるためのプログラム。
【請求項15】
前記推定手段は、前記第3のステップの前記推定処理において、
前記第1の判別スコ
アが零であり、かつ、前記端末装置の全てのポートにおいて前記スキャン応答があったとき、前記ネットワークスキャンが正常であると推定し、前記第1の判別スコ
アが零であり、かつ、前記端末装置の一部のポートにおいて前記スキャン応答があるとき、前記ネットワークスキャンが前記第4の原因によって失敗したと推定し、前記第1の判別スコ
アが零であり、かつ、前記端末装置の全てのポートにおいて前記スキャン応答が無いとき、前記ネットワークスキャンが前記第3の原因によって失敗したと推定し、前記端末装置の
零よりも小さい判別スコア(Dスコア)の個数を表すカウント値DS_countが第3のしきい値よりも小さいとき、零よりも小さい前記第1
または第2の判別スコアを有する端末装置について前記ネットワークスキャンが前記第1の原因によって失敗したと推定し、前記端末装置の
零よりも小さい判別スコア(Dスコア)の個数を表すカウント値DS_countが前記第3のしきい値よりも小さくないとき、1つの基地局に属する全ての端末装置について前記ネットワークスキャンが前記第2の原因によって失敗したと推定
し、
または
前記第2の判別スコアが零であり、かつ、前記端末装置の全てのポートにおいて前記スキャン応答があったとき、前記ネットワークスキャンが正常であると推定し、前記第2の判別スコアが零であり、かつ、前記端末装置の一部のポートにおいて前記スキャン応答があるとき、前記ネットワークスキャンが前記第4の原因によって失敗したと推定し、前記第2の判別スコアが零であり、かつ、前記端末装置の全てのポートにおいて前記スキャン応答が無いとき、前記ネットワークスキャンが前記第3の原因によって失敗したと推定し、前記端末装置の零よりも小さい判別スコア(Dスコア)の個数を表すカウント値DS_countが第3のしきい値よりも小さいとき、零よりも小さい前記第2の判別スコアを有する端末装置について前記ネットワークスキャンが前記第1の原因によって失敗したと推定し、前記端末装置の零よりも小さい判別スコア(Dスコア)の個数を表すカウント値DS_countが前記第3のしきい値よりも小さくないとき、1つの基地局に属する全ての端末装置について前記ネットワークスキャンが前記第2の原因によって失敗したと推定する、請求項14に記載のコンピュータに実行させるためのプログラム。
【請求項16】
前記推定手段は、前記第1のグループと前記第2のグループとを判別する第3の判別スコアに基づいて前記ネットワークスキャンの結果を推定するためのモデルを第1のモデルに更新したとき、前記第3のステップにおいて、前記第1の判別スコアを用いて前記推定処理を実行し、前記第3の判別スコアに基づいて前記ネットワークスキャンの結果を推定するためのモデルを第2のモデルに更新したとき、前記第3のステップにおいて、前記第2の判別スコアを用いて前記推定処理を実行する、請求項9から請求項15のいずれか1項に記載のコンピュータに実行させるためのプログラム。
【請求項17】
請求項9から請求項16のいずれか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に記載のネットワークスキャンが知られている。非特許文献1に記載されたネットワークスキャンは、IPv4空間のアプリケーションに対してスキャンを行うものであり、次の方法によって行われる。
【0006】
まず、IPv4空間に対してポートスキャンを行い、レスポンスの有無を調査する。そして、レスポンスのあったホストに対して、様々なプロトコル(HTTP(Hypertext Transfer Protocol)、HTTPS(Hypertext Transfer Protocol Secure)およびPOP3(Post Office Protocol version 3)等)でハンドシェイクを実施し、メッセージを取得する。その後、取得したメッセージから、脆弱性評価に有用なキーワードを抽出する。そして、メタデータやタグ情報をキーワードに付与する。メタデータやタグ情報が付与されたキーワードを構造データとしてデータベースに登録する。
【先行技術文献】
【非特許文献】
【0007】
【文献】Z. Durumeric, et al., “A Search Engine Backed by Internet-Wide Scanning”, CCS15, October 12-16, 2015.
【文献】吉岡 克成、村上 洸介、松本 勉,“マルウェア感染ホスト検出のためのネットワークスキャン手法と検出用シグネチャの自動生成,”情報処理学会論文誌,Vol.51,No.9,1633-1644(Sep.2010).
【発明の概要】
【発明が解決しようとする課題】
【0008】
ネットワークスキャンにおいてスキャン用のパケットを送信してからスキャン応答を受信するまでの時間であるRTT(Round-Trip Time)は、ネットワークが混雑している場合および通信品質が不十分である場合において、端末装置に対する特性が非常に類似している。
【0009】
しかし、非特許文献1に記載のネットワークスキャンにおいては、ネットワークが混雑している場合および通信品質が不十分である場合において、RTTが非常に類似していることを考慮していないため、ネットワークスキャンを失敗した原因を正確に推定することが困難である。
【0010】
そこで、この発明の実施の形態によれば、ネットワークスキャンの結果を正確に推定可能なネットワークスキャン装置を提供する。
【0011】
また、この発明の実施の形態によれば、ネットワークスキャンの結果の正確な推定をコンピュータに実行させるためのプログラムを提供する。
【0012】
更に、この発明の実施の形態によれば、ネットワークスキャンの結果の正確な推定をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【課題を解決するための手段】
【0013】
(構成1)
この発明の実施の形態によれば、ネットワークスキャン装置は、スキャン手段と、抽出手段と、推定手段とを備える。スキャン手段は、複数の端末装置に対してネットワークスキャンを実行し、ネットワークスキャンのスキャン応答から複数の通信特性を取得する。抽出手段は、スキャン手段によって取得された複数の通信特性に基づいてネットワークスキャンの結果を推定するために最も適した第1の通信特性を抽出する抽出処理を実行する。推定手段は、抽出処理において抽出された第1の通信特性を有する端末装置をネットワークスキャンが正常である第1のグループと、ネットワークスキャンが端末装置との通信チャネルに起因した原因によって失敗した第2および第3のグループとに分類し、第1のグループと第3のグループとを判別する第1の判別スコアまたは第2のグループと第3のグループとを判別する第2の判別スコアを算出し、その算出した第1の判別スコアまたは第2の判別スコアに基づいて、ネットワークスキャンが正常または失敗であると推定するとともに、ネットワークスキャンが失敗であると推定したとき、ネットワークスキャンが失敗した原因を推定する推定処理を実行する。
【0014】
(構成2)
構成1において、抽出手段は、抽出処理において、複数の通信特性の相互の相関係数を算出し、その算出した相関係数が第1のしきい値よりも大きいd(dは正の整数)個の第2の通信特性を抽出し、その抽出したd個の第2の通信特性のうち、ネットワークスキャンの結果を推定するために最も重要な第2の通信特性を第1の通信特性として抽出する。
【0015】
(構成3)
構成2において、抽出手段は、抽出処理において、第2の通信特性について、期待値からのずれの大きさを表すスコアを算出する処理をd個の第2の通信特性の全てについて実行してd個のスコアを算出し、スコアの大きい順にK(Kは、正の整数)個の第2の通信特性をd個の第2の通信特性から抽出し、その抽出したK個の第2の通信特性を学習済の分類アルゴリズムを用いて、ネットワークスキャンの結果を推定するために重要なグループとネットワークスキャンの結果を推定するために重要でないグループとに分類し、ネットワークスキャンの結果を推定するための重要度に基づいて、抽出した第2の通信特性にランクを付与する第1の処理と、K個の第2の通信特性のうち、ランクが最も低い第2の通信特性を削除する第2の処理とを、削除する第2の通信特性が無くなるまで繰り返し実行し、最後に削除した第2の通信特性を第1の通信特性として抽出する。
【0016】
(構成4)
構成1から構成3のいずれかにおいて、推定手段は、推定処理において、ネットワークスキャンが失敗した原因を第1の原因、第2の原因、第3の原因および第4の原因のいずれかであると推定し、第1の原因は、ネットワークスキャンの対象である端末装置との通信における通信品質が不足していることであり、第2の原因は、ネットワークスキャンの対象である端末装置が接続されているネットワークが混雑していることであり、第3の原因は、ネットワークスキャンの対象である端末装置がネットワークに接続されていないことであり、第4の原因は、ネットワークスキャンの対象である端末装置のポートが閉塞していることである。
【0017】
(構成5)
構成4において、推定手段は、推定処理において、第1の判別スコアまたは第2の判別スコアが零であるとき、ネットワークスキャンが正常である、またはネットワークスキャンが第3の原因および第4の原因のいずれかによって失敗したと推定し、第1の判別スコアまたは第2の判別スコアが零でないとき、ネットワークスキャンが第1の原因および第2の原因のいずれかによって失敗したと推定する。
【0018】
(構成6)
構成5において、推定手段は、推定処理において、第1の判別スコアまたは第2の判別スコアが零であるとき、端末装置の全てのポートにおけるスキャン応答の有無に基づいて、ネットワークスキャンが正常である、または第3の原因および第4の原因のいずれかによってネットワークスキャンが失敗したと推定し、第1の判別スコアまたは第2の判別スコアが零でないとき、零よりも小さい第1または第2の判別スコアを有する端末装置の個数に基づいてネットワークスキャンが第1の原因または第2の原因によって失敗したと推定する。
【0019】
(構成7)
構成6において、推定手段は、推定処理において、第1の判別スコアまたは第2の判別スコアが零であり、かつ、端末装置の全てのポートにおいてスキャン応答があったとき、ネットワークスキャンが正常であると推定し、第1の判別スコアまたは第2の判別スコアが零であり、かつ、端末装置の一部のポートにおいてスキャン応答があるとき、ネットワークスキャンが第4の原因によって失敗したと推定し、第1の判別スコアまたは第2の判別スコアが零であり、かつ、端末装置の全てのポートにおいてスキャン応答が無いとき、ネットワークスキャンが第3の原因によって失敗したと推定し、端末装置の個数が第3のしきい値よりも小さいとき、零よりも小さい第1または第2の判別スコアを有する端末装置についてネットワークスキャンが第1の原因によって失敗したと推定し、端末装置の個数が第3のしきい値よりも小さくないとき、1つの基地局に属する全ての端末装置についてネットワークスキャンが第2の原因によって失敗したと推定する。
【0020】
(構成8)
構成1から構成7のいずれかにおいて、推定手段は、第1のグループと第2のグループとを判別する第3の判別スコアに基づいてネットワークスキャンの結果を推定するためのモデルを第1のモデルに更新したとき、第1の判別スコアを用いて推定処理を実行し、第3の判別スコアに基づいてネットワークスキャンの結果を推定するためのモデルを第2のモデルに更新したとき、第2の判別スコアを用いて推定処理を実行する。
【0021】
(構成9)
また、この発明の実施の形態によれば、プログラムは、
スキャン手段が、複数の端末装置に対してネットワークスキャンを実行し、ネットワークスキャンのスキャン応答から複数の通信特性を取得する第1のステップと、
抽出手段が、第1のステップにおいて取得された複数の通信特性に基づいてネットワークスキャンの結果を推定するために最も適した第1の通信特性を抽出する抽出処理を実行する第2のステップと、
推定手段が、第2のステップの抽出処理において抽出された第1の通信特性を有する端末装置をネットワークスキャンが正常である第1のグループと、ネットワークスキャンが端末装置との通信チャネルに起因した原因によって失敗した第2および第3のグループとに分類し、第1のグループと第3のグループとを判別する第1の判別スコアまたは第2のグループと第3のグループとを判別する第2の判別スコアを算出し、その算出した第1の判別スコアまたは第2の判別スコアに基づいて、ネットワークスキャンが正常または失敗であると推定するとともに、ネットワークスキャンが失敗であると推定したとき、ネットワークスキャンが失敗した原因を推定する推定処理を実行する第3のステップとをコンピュータに実行させるためのプログラムである。
【0022】
(構成10)
構成9において、抽出手段は、第2のステップの抽出処理において、複数の通信特性の相互の相関係数を算出し、その算出した相関係数が第1のしきい値よりも大きいd(dは正の整数)個の第2の通信特性を抽出し、その抽出したd個の第2の通信特性のうち、ネットワークスキャンの結果を推定するために最も重要な第2の通信特性を第1の通信特性として抽出する。
【0023】
(構成11)
構成10において、抽出手段は、第2のステップの抽出処理において、第2の通信特性について、期待値からのずれの大きさを表すスコアを算出する処理をd個の第2の通信特性の全てについて実行してd個のスコアを算出し、スコアの大きい順にK(Kは、正の整数)個の第2の通信特性をd個の第2の通信特性から抽出し、その抽出したK個の第2の通信特性を学習済の分類アルゴリズムを用いて、ネットワークスキャンの結果を推定するために重要なグループとネットワークスキャンの結果を推定するために重要でないグループとに分類し、ネットワークスキャンの結果を推定するための重要度に基づいて、抽出した第2の通信特性にランクを付与する第1の処理と、K個の第2の通信特性のうち、ランクが最も低い第2の通信特性を削除する第2の処理とを、削除する第2の通信特性が無くなるまで繰り返し実行し、最後に削除した第2の通信特性を第1の通信特性として抽出する。
【0024】
(構成12)
構成9から構成11のいずれかにおいて、推定手段は、第3のステップの推定処理において、ネットワークスキャンが失敗した原因を第1の原因、第2の原因、第3の原因および第4の原因のいずれかであると推定し、
第1の原因は、ネットワークスキャンの対象である端末装置との通信における通信品質が不足していることであり、第2の原因は、ネットワークスキャンの対象である端末装置が接続されているネットワークが混雑していることであり、第3の原因は、ネットワークスキャンの対象である端末装置がネットワークに接続されていないことであり、第4の原因は、ネットワークスキャンの対象である端末装置のポートが閉塞していることである。
【0025】
(構成13)
構成12において、推定手段は、第3のステップの推定処理において、第1の判別スコアまたは第2の判別スコアが零であるとき、ネットワークスキャンが正常である、またはネットワークスキャンが第3の原因および前記第4の原因のいずれかによって失敗したと推定し、第1の判別スコアまたは第2の判別スコアが零でないとき、ネットワークスキャンが第1の原因および第2の原因のいずれかによって失敗したと推定する。
【0026】
(構成14)
構成13において、推定手段は、第3のステップの推定処理において、第1の判別スコアまたは第2の判別スコアが零であるとき、端末装置の全てのポートにおけるスキャン応答の有無に基づいて、ネットワークスキャンが正常である、または第3の原因および第4の原因のいずれかによってネットワークスキャンが失敗したと推定し、第1の判別スコアまたは第2の判別スコアが零でないとき、零よりも小さい第1または第2の判別スコアを有する端末装置の個数に基づいてネットワークスキャンが第1の原因または第2の原因によって失敗したと推定する。
【0027】
(構成15)
構成14において、推定手段は、第3のステップの推定処理において、第1の判別スコアまたは第2の判別スコアが零であり、かつ、端末装置の全てのポートにおいてスキャン応答があったとき、ネットワークスキャンが正常であると推定し、第1の判別スコアまたは第2の判別スコアが零であり、かつ、端末装置の一部のポートにおいてスキャン応答があるとき、ネットワークスキャンが第4の原因によって失敗したと推定し、第1の判別スコアまたは第2の判別スコアが零であり、かつ、端末装置の全てのポートにおいてスキャン応答が無いとき、ネットワークスキャンが第3の原因によって失敗したと推定し、端末装置の個数が第3のしきい値よりも小さいとき、零よりも小さい第1または第2の判別スコアを有する端末装置についてネットワークスキャンが第1の原因によって失敗したと推定し、端末装置の個数が第3のしきい値よりも小さくないとき、1つの基地局に属する全ての端末装置についてネットワークスキャンが第2の原因によって失敗したと推定する。
【0028】
(構成16)
構成9から構成15のいずれかにおいて、推定手段は、第1のグループと第2のグループとを判別する第3の判別スコアに基づいてネットワークスキャンの結果を推定するためのモデルを第1のモデルに更新したとき、第3のステップにおいて、第1の判別スコアを用いて推定処理を実行し、第3の判別スコアに基づいてネットワークスキャンの結果を推定するためのモデルを第2のモデルに更新したとき、第3のステップにおいて、第2の判別スコアを用いて推定処理を実行する。
【0029】
(構成17)
更に、この発明の実施の形態によれば、記録媒体は、構成9から構成16のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【0030】
ネットワークスキャンの結果を正確に推定できる。
【図面の簡単な説明】
【0031】
【
図1】この発明の実施の形態における通信システムの概略図である。
【
図2】
図1に示すネットワークスキャン装置の概略図である。
【
図3】
図2に示すホスト情報データベースの概念図である。
【
図4】
図2に示すホスト情報データベースの別の概念図である。
【
図9】通信特性の更に別の相関係数を示す図である。
【
図10】通信特性の更に別の相関係数を示す図である。
【
図11】通信特性CMbestを選択するときの元データの例を示す図である。
【
図12】通信特性CMbestを選択する方法を説明するための図である。
【
図13】通信特性のスコアを求める方法を説明するための図である。
【
図15】ランク重みR
kの算出結果を示す図である。
【
図16】ネットワークスキャンの動作を説明するためのフローチャートである。
【
図17】
図16のステップS10の詳細な動作を説明するための第1のフローチャートである。
【
図18】
図16のステップS10の詳細な動作を説明するための第2のフローチャートである。
【
図19】
図16のステップS11の詳細な動作を説明するための第1のフローチャートである。
【
図20】
図16のステップS11の詳細な動作を説明するための第2のフローチャートである。
【
図21】
図16のステップS11の詳細な動作を説明するための第3のフローチャートである。
【
図22】
図19のステップS132の詳細な動作を説明するためのフローチャートである。
【
図23】
図19のステップS136の詳細な動作を説明するためのフローチャートである。
【
図24】Dスコアのシミュレーション結果を示す図である。
【発明を実施するための形態】
【0032】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【0033】
図1は、この発明の実施の形態における通信システムの概略図である。
図1を参照して、この発明の実施の形態による通信システム10は、ネットワークスキャン装置1と、基地局BS1,BS2と、インターネットプロバイダISPと、端末装置TM1~TM18とを備える。
【0034】
ネットワークスキャン装置1、基地局BS1,BS2、インターネットプロバイダISP(Internet Service Provider)および端末装置TM1~TM18は、通信空間に配置される。
【0035】
基地局BS1は、無線通信網CNW1の基地局であり、基地局BS2は、無線通信網CNW2の基地局であり、インターネットプロバイダISPは、有線通信網CNW3の通信事業者である。
【0036】
無線通信網CNW1,CNW2は、相互に異なる無線通信規格に従って無線通信を行う通信網である。
【0037】
この発明の実施の形態においては、端末装置TM1~TM13の各々は、無線端末であり、端末装置TM14~TM18の各々は、有線端末である。
【0038】
端末装置TM1~TM6は、無線通信網CNW2の外側であり、かつ、無線通信網CNW1の内部に配置される。
【0039】
端末装置TM7は、無線通信網CNW1と無線通信網CNW2との重複領域内に配置される。
【0040】
端末装置TM8~TM13は、無線通信網CNW1の外側であり、かつ、無線通信網CNW2の内部に配置される。
【0041】
端末装置TM14~TM18は、有線通信網CNW3内に配置され、有線を介してインターネットプロバイダISPに接続される。
【0042】
端末装置TM1~TM13の各々は、基地局BS1,BS2と無線通信可能な2個の無線通信モジュールを備えている。従って、端末装置TM1~TM13の各々は、基地局BS1または基地局BS2と無線通信可能である。
【0043】
端末装置TM1~TM6は、基地局BS1と無線通信を行い、端末装置TM7は、基地局BS1または基地局BS2と無線通信を行い、端末装置TM8~TM13は、基地局BS2と無線通信を行う。
【0044】
端末装置TM14~TM18は、インターネットプロバイダISPを介して有線通信を行う。
【0045】
ネットワークスキャン装置1は、後述する方法によって、端末装置TM1~TM18に対してネットワークスキャンを行う。
【0046】
図2は、
図1に示すネットワークスキャン装置1の概略図である。
図2を参照して、ネットワークスキャン装置1は、ネットワークスキャナ11と、スキャン解析マネージャ12と、ホスト情報データベース13と、抽出手段14と、推定手段15と、スキャンスケジューラ16とを備える。
【0047】
ネットワークスキャナ11は、スキャンスケジューラ16からスキャンタイミングを受け、その受けたスキャンタイミングに基づいて、例えば、公知のNmap(非特許文献2参照)を用いて、スキャン対象のネットワーク20に接続された端末装置のポートに対してネットワークスキャンを行う。
【0048】
そして、ネットワークスキャナ11は、ネットワーク20に接続された端末装置からネットワークスキャンのスキャン応答を受信し、その受信したスキャン応答をユーザ(ネットワークセキュリティ等からなる)30およびスキャン解析マネージャ12へ出力する。
【0049】
また、ネットワークスキャナ11は、ネットワークスキャンがバックグラウンドトラフィックを監視せずに行われる場合、スキャン応答遅延RTTm(mは、1≦m≦Mを満たす整数であり、Mは、端末装置TM1~TM18の総数)、パケットロス率PLRm、スキャン最大遅延DLmaxmおよびスキャン最小遅延DLminmを測定し、その測定したスキャン応答遅延RTTm、パケットロス率PLRm、スキャン最大遅延DLmaxmおよびスキャン最小遅延DLminmをスキャン解析マネージャ12へ出力する。即ち、ネットワークスキャナ11は、ネットワークスキャンがバックグラウンドトラフィックを監視せずに行われる場合、スキャン応答遅延RTTm、パケットロス率PLRm、スキャン最大遅延DLmaxmおよびスキャン最小遅延DLminmからなる通信特性CM1=[スキャン応答遅延RTTm/パケットロス率PLRm/スキャン最大遅延DLmaxm/スキャン最小遅延DLminm]を測定し、その測定した通信特性CM1=[スキャン応答遅延RTTm/パケットロス率PLRm/スキャン最大遅延DLmaxm/スキャン最小遅延DLminm]をスキャン解析マネージャ12へ出力する。
【0050】
更に、ネットワークスキャナ11は、ネットワークスキャンがバックグラウンドトラフィックを監視して行われる場合、スキャン応答遅延RTTm、パケットロス率PLRm、遅延DLm、ジッタJTm、バックグラウンド最大遅延BGDLmaxm、およびバックグラウンド最小遅延BGDLminmを測定し、その測定したスキャン応答遅延RTTm、パケットロス率PLRm、遅延DLm、ジッタJTm、バックグラウンド最大遅延BGDLmaxm、およびバックグラウンド最小遅延BGDLminmをスキャン解析マネージャ12へ出力する。即ち、ネットワークスキャナ11は、ネットワークスキャンがバックグラウンドトラフィックを監視して行われる場合、スキャン応答遅延RTTm、パケットロス率PLRm、遅延DLm、ジッタJTm、バックグラウンド最大遅延BGDLmaxm、およびバックグラウンド最小遅延BGDLminmからなる通信特性CM2=[スキャン応答遅延RTTm/パケットロス率PLRm/遅延DLm/ジッタJTm/バックグラウンド最大遅延BGDLmaxm/バックグラウンド最小遅延BGDLminm]を測定し、その測定した通信特性CM2=[スキャン応答遅延RTTm/パケットロス率PLRm/遅延DLm/ジッタJTm/バックグラウンド最大遅延BGDLmaxm/バックグラウンド最小遅延BGDLminm]をスキャン解析マネージャ12へ出力する。
【0051】
スキャン解析マネージャ12は、ネットワークスキャナ11からスキャン応答を受け、ネットワークスキャン中に通信ログを受ける。また、スキャン解析マネージャ12は、ネットワークスキャナ11から通信特性CM1または通信特性CM2を受ける。
【0052】
そして、スキャン解析マネージャ12は、スキャン応答および通信特性CM1を受けたとき、スキャン応答および通信特性CM1に基づいてスキャン対象の端末装置のアドレスと、スキャン応答と、通信特性CM1とを対応付けたスキャン結果SC1を生成し、その生成したスキャン結果SC1をホスト情報データベース13に格納することによってホスト情報データベース13を作成または更新する。
【0053】
また、スキャン解析マネージャ12は、スキャン応答および通信特性CM2を受けたとき、スキャン応答および通信特性CM2に基づいてスキャン対象の端末装置のアドレスと、スキャン応答と、通信特性CM2とを対応付けたスキャン結果SC2を生成し、その生成したスキャン結果SC2をホスト情報データベース13に格納することによってホスト情報データベース13を作成または更新する。
【0054】
ホスト情報データベース13は、スキャン結果SC1またはスキャン結果SC2を記憶する。
【0055】
抽出手段14は、ホスト情報データベース13に格納された通信特性CM1(または通信特性CM2)に基づいて、後述する方法によって、ネットワークスキャンの結果を推定するために最も適した通信特性CMbestを抽出する抽出処理を実行する。
【0056】
推定手段15は、抽出手段14によって抽出された通信特性CMbestを有する端末装置をネットワークスキャンが正常であるグループCLS1と、ネットワークスキャンが端末装置との通信チャネルに起因した原因によって失敗したグループCLS2,CLS3とに分類する。
【0057】
そして、推定手段15は、グループCLS1とグループCLS3とを判別するDスコアD_2、またはグループCLS2とグループCLS3とを判別するDスコアD_3を算出し、その算出したDスコアD_2またはDスコアD_3に基づいてネットワークスキャンが正常または失敗であると推定するとともに、ネットワークスキャンが失敗であると推定したとき、ネットワークスキャンが失敗した原因を推定する推定処理を実行する。そうすると、推定手段15は、推定処理において推定した推定結果をスキャンスケジューラ16へ出力する。
【0058】
スキャンスケジューラ16は、ホスト情報データベース13からスキャン結果を読み出し、スキャン要件をユーザ30から受ける。また、スキャンスケジューラ16は、ネットワークスキャンを行う領域(例えば、日本国内)に存在する全ての端末装置のグローバルIPアドレスおよびドメイン名を予め保持している。
【0059】
そして、スキャンスケジューラ16は、スキャン要件およびスキャン結果に基づいて、後述する方法によって、ネットワークスキャンのスキャンタイミングと各スキャンタイミングにおけるネットワークスキャンの対象となる端末装置とを対応付けたスキャンスケジュールSCH_scanを生成する。そうすると、スキャンスケジューラ16は、スキャンスケジュールSCH_scanをネットワークスキャナ11へ出力してスキャンスケジュールSCH_scanに従ってネットワークスキャンを実行するようにネットワークスキャナ11を制御する。
【0060】
また、スキャンスケジューラ16は、推定結果を推定手段15から受けたとき、推定結果のうちのネットワークスキャンが失敗した原因に基づいて、スキャンスケジュールを再スケジュール化し、その再スケジュール化したスキャンスケジュールRESCH_scanをネットワークスキャナ11へ出力してスキャンスケジュールRESCH_scanに従ってネットワークスキャンを実行するようにネットワークスキャナ11を制御する。
【0061】
図3は、
図2に示すホスト情報データベース13の概念図である。なお、
図3に示すホスト情報データベース13-1は、バックグラウンドトラフィックを監視せずにネットワークスキャンが実行されるときのホスト情報データベースである。
【0062】
図3を参照して、ホスト情報データベース13-1は、時刻tと、IPアドレスAdd
b(b=1~B、Bは、基地局の総数)と、IPアドレスAdd
mと、ドメイン名DN
mと、ポート番号PN
r(rは、正の整数)と、スキャン応答SR
mと、スキャン応答遅延RTT
mと、パケットロス率PLR
mと、スキャン最大遅延DLmax
mと、スキャン最小遅延DLmin
mとを含む。
【0063】
時刻tは、YYYY/MM/DD/hh/mm/ss(年/月/日/時/分/秒)によって表される。そして、時刻tは、後述する一定の時間長を有する1つのスキャンタイミング内における時刻であり、ネットワークスキャンにおけるテスト入力をネットワークスキャンの対象である端末装置へ送信した時間を表す。
【0064】
IPアドレスAddbは、基地局のアドレスである。IPアドレスAddmは、ネットワークスキャンの対象である端末装置のグローバルIPアドレスからなる。
【0065】
ドメイン名DNmは、IPアドレスAddmに基づいてPTR(PoinTeR record)レコードを用いて変換されたものである。
【0066】
ポート番号PNrは、各端末装置が通信に用いるポートの番号である。
【0067】
スキャン応答SRmは、スキャン応答が返って来たとき、“1”からなり、スキャン応答が返って来なかったとき、“0”からなる。
【0068】
スキャン応答遅延RTTmは、テスト入力を送信した時刻からスキャン応答SRmが返って来るまでの時間からなる。
【0069】
パケットロス率PLRmは、テスト入力からなるパケットを送信してスキャン応答SRmを受信する場合にパケットの送受信を失敗する割合である。
【0070】
スキャン最大遅延DLmaxmは、スキャン応答遅延RTTmの最大値であり、スキャン最小遅延DLminmは、スキャン応答遅延RTTmの最小値である。
【0071】
そして、スキャン応答SRmおよびスキャン応答遅延RTTmは、ポート番号PNrに対応付けられる。パケットロス率PLRm、スキャン最大遅延DLmaxmおよびスキャン最小遅延DLminmは、ネットワークスキャンの対象となる端末装置のIPアドレスAddmに対応付けられる。
【0072】
また、アドレスAddm_1~Addm_3は、アドレスAddb_1に対応付けられ、・・・、アドレスAddm_M-1~Addm_Mは、アドレスAddb_Bに対応付けられる。その結果、各基地局に属する端末装置を把握することができる。
【0073】
図4は、
図2に示すホスト情報データベース13の別の概念図である。なお、
図4に示すホスト情報データベース13-2は、バックグラウンドトラフィックを監視してネットワークスキャンが実行されるときのホスト情報データベースである。
【0074】
図4を参照して、ホスト情報データベース13-2は、
図3に示すホスト情報データベース13-1のスキャン最大遅延DLmax
mおよびスキャン最小遅延DLmin
mを遅延DL
m、ジッタJT
m、バックグラウンド最大遅延BGDLmax
mおよびバックグラウンド最小遅延BGDLmin
mに変えたものであり、その他は、ホスト情報データベース13-1と同じである。
【0075】
遅延DLm、ジッタJTm、バックグラウンド最大遅延BGDLmaxmおよびバックグラウンド最小遅延BGDLminmは、各端末装置のIPアドレスAddmに対応付けられる。
【0076】
遅延DLmは、端末装置からの片道の通信における標準的な時間からの遅れである。
【0077】
ジッタJTmは、端末装置からの片道の通信におけるパケットの伝送時間の揺らぎである。
【0078】
バックグラウンド最大遅延BGDLmaxmは、端末装置からの片道の通信における伝送遅延の最大値であり、バックグラウンド最小遅延BGDLminmは、端末装置からの片道の通信における伝送遅延の最小値である。
【0079】
そして、ホスト情報データベース13-2においては、スキャン応答SRmおよびスキャン応答遅延RTTm、は、各端末装置のポート番号PNrに対応付けられる。
【0080】
図5は、スキャンスケジュールの概念図である。
図5の(a)を参照して、スキャンスケジュールSCH_scanは、スキャン総時間長T
S_totalを有し、T(Tは、1以上の整数)個のスキャンタイミング1
S~スキャンタイミングT
Sを含む。
【0081】
スキャン総時間長TS_totalは、例えば、1日に設定され、スキャンタイミング1S~スキャンタイミングTSの各々は、例えば、1時間の時間長を有する。スキャンタイミングtS(tS=1S~TS)は、開始時刻tstartと、終了時刻tendと、対象アドレスAdd1~AddMとを含む。
【0082】
開始時刻tstartは、スキャンタイミングtSにおいてネットワークスキャンを開始する時刻を表し、終了時刻tendは、スキャンタイミングtSにおいてネットワークスキャンを終了する時刻を表す。従って、ネットワークスキャナ11は、スキャンタイミングtSにおいて終了時刻tendが到来すると、ネットワークスキャンを終了する。
【0083】
対象アドレスAdd1~AddMの各々は、グローバルIPアドレスからなる。そして、対象アドレスAdd1~AddMは、ネットワークスキャンの対象であるM個の端末装置を表す。
【0084】
なお、スキャンタイミングt
S以外のスキャンタイミング1
S~(t-1)
S,(t+1)
S~T
Sの各々も、
図5の(a)に示すスキャンタイミングt
Sと同じ構成からなる。
【0085】
スキャンタイミング1S~TSは、相互に同じ時間長(=tend-tstart)を有していてもよく、相互に異なる時間長(=tend-tstart)を有していてもよい。また、スキャンタイミング1S~TSは、相互に同じ個数のIPアドレスを有していてもよく、相互に異なる個数のIPアドレスを有していてもよい。
【0086】
最初にネットワークスキャンを実行する場合、
図5の(a)に示すスキャンタイミング1
S~T
Sが用いられる。
【0087】
また、通信が空いているタイミングでネットワークスキャンが実行される場合、
図5の(b)に示すスキャンタイミング1’
S~T’
S(T’は、1以上の整数)が用いられる。
図5の(b)においては、スキャンタイミング1’
S~T’
Sは、時間的に離間して設定される。これは、通信が空いている複数の時間帯が相互に接していることはないからである。
【0088】
なお、スキャンタイミングt’S(t’S=1’S~T’S)の構成は、上述したスキャンタイミングtSの構成と同じである。
【0089】
また、スキャンタイミングtS,t’Sは、1つの時刻を意味するのではなく、開始時刻tstartから終了時刻tendまでの所定の時間長を有する概念である。
【0090】
スキャンタイミングt’
Sを決定する方法について説明する。
図6は、トラヒックの時間依存性を示す図である。
図6において、縦軸は、トラヒックを表し、横軸は、時間を表す。また、曲線k1は、例えば、端末装置Aにおけるトラヒックの時間依存性を示し、曲線k2は、例えば、端末装置Aと異なる端末装置Bにおけるトラヒックの時間依存性を示す。
【0091】
図6の(a)を参照して、端末装置Aにおいては、トラヒックは、日中よりも夜間の方が多い(曲線k1参照)。即ち、端末装置Aにおいては、通信は、日中に空いており、夜間に混雑している。
図6の(b)を参照して、端末装置Bにおいては、トラヒックは、夜間よりも日中の方が多い(曲線k2参照)。即ち、端末装置Bにおいては、通信は、日中に混雑しており、夜間に空いている。
【0092】
従って、スキャンスケジューラ16は、ネットワークスキャンの対象となるM個の端末装置について、通信が空いている時間帯を検出し、その検出した時間帯に基づいて、スキャンタイミングtS(またはスキャンタイミングt’S)を決定する。
【0093】
ネットワークスキャナ11は、スキャンスケジュールSCH_scanをスキャンスケジューラ16から受け、その受けたスキャンスケジュールSCH_scanに従ってネットワークスキャンをM個の端末装置に対して実行する。
【0094】
この場合、ネットワークスキャンは、バックグラウンドトラフィックを監視せずに実行され、またはバックグラウンドトラフィックを監視して実行される。
【0095】
図7は、通信特性の相関係数を示す図である。なお、
図7に示す相関係数は、バックグラウンドトラフィックを監視せずにネットワークスキャンが実行された場合において、通信品質が不十分であるときの通信特性の相関係数である。また、
図7に示すスキャン応答遅延RTT
m、パケットロス率PLR
m、スキャン最大遅延DLmax
m、およびスキャン最小遅延DLmin
mは、ネットワークスキャンをM個の端末装置に対して実行したときのM個の端末装置における複数の通信特性である。なお、スキャン応答遅延RTT
mは、ネットワークスキャンの対象である1つのIPアドレス内における平均値を示す。
【0096】
スキャン応答遅延RTT
m、パケットロス率PLR
m、スキャン最大遅延DLmax
m、およびスキャン最小遅延DLmin
mの相互の相関係数を
図7に示す。なお、
図7において、対角要素よりも上側の非対角要素の相関係数が示されていないのは、対角要素よりも下側の非対角要素の相関係数と同じであるからである。
【0097】
図7を参照して、バックグラウンドトラフィックを監視せずにネットワークスキャンが実行された場合において、通信品質が不十分であるとき、スキャン応答遅延RTT
mとスキャン最大遅延DLmax
mとの相関係数、スキャン応答遅延RTT
mとスキャン最小遅延DLmin
mとの相関係数およびスキャン最大遅延DLmax
mとスキャン最小遅延DLmin
mとの相関係数は、0.5よりも大きい。そして、スキャン応答遅延RTT
mとスキャン最大遅延DLmax
mとの相関係数およびスキャン応答遅延RTT
mとスキャン最小遅延DLmin
mとの相関係数は、スキャン最大遅延DLmax
mとスキャン最小遅延DLmin
mとの相関係数よりも大きい。従って、スキャン応答遅延RTT
mは、スキャン最大遅延DLmax
mおよびスキャン最小遅延DLmin
mと大きな相関を有する。
【0098】
図8は、通信特性の別の相関係数を示す図である。なお、
図8に示す相関係数は、バックグラウンドトラフィックを監視せずにネットワークスキャンが実行された場合において、ネットワークが混雑している(ネットワーク輻輳である)ときの通信特性の相関係数である。また、スキャン応答遅延RTT
mは、ネットワークスキャンの対象である1つのIPアドレス内における平均値を示す。スキャン応答遅延RTT
m、パケットロス率PLR
m、スキャン最大遅延DLmax
m、およびスキャン最小遅延DLmin
mの相互の相関係数を
図8に示す。なお、
図8においても、対角要素よりも上側の非対角要素の相関係数が示されていないのは、
図7において説明した理由と同じである。また、
図8に示すスキャン応答遅延RTT
m、パケットロス率PLR
m、スキャン最大遅延DLmax
m、およびスキャン最小遅延DLmin
mは、ネットワークスキャンをM個の端末装置に対して実行したときのM個の端末装置における複数の通信特性である。
【0099】
図8を参照して、バックグラウンドトラフィックを監視せずにネットワークスキャンが実行された場合において、ネットワークが混雑しているとき、スキャン応答遅延RTT
mとスキャン最大遅延DLmax
mとの相関係数、スキャン応答遅延RTT
mとスキャン最小遅延DLmin
mとの相関係数およびスキャン最大遅延DLmax
mとスキャン最小遅延DLmin
mとの相関係数は、0.5よりも大きい。そして、スキャン応答遅延RTT
mとスキャン最大遅延DLmax
mとの相関係数およびスキャン応答遅延RTT
mとスキャン最小遅延DLmin
mとの相関係数は、同じである。また、スキャン応答遅延RTT
mとスキャン最大遅延DLmax
mとの相関係数およびスキャン応答遅延RTT
mとスキャン最小遅延DLmin
mとの相関係数は、スキャン最大遅延DLmax
mとスキャン最小遅延DLmin
mとの相関係数よりも大きい。従って、ネットワークが混雑しているときも、スキャン応答遅延RTT
mは、スキャン最大遅延DLmax
mおよびスキャン最小遅延DLmin
mと大きな相関を有する。
【0100】
図7および
図8に示すように、バックグラウンドトラフィックを監視せずにネットワークスキャンが実行された場合、通信品質が不十分なときとネットワークが混雑しているときとでは、スキャン応答遅延RTT
m、パケットロス率PLR
m、スキャン最大遅延DLmax
m、およびスキャン最小遅延DLmin
mの相互の相関係数が異なる。
【0101】
図9は、通信特性の更に別の相関係数を示す図である。なお、
図9に示す相関係数は、バックグラウンドトラフィックを監視してネットワークスキャンが実行された場合において、通信品質が不十分であるときの通信特性の相関係数である。
【0102】
スキャン応答遅延RTT
m、パケットロス率PLR
m、遅延DL
m、ジッタJT
m、バックグラウンド最大遅延BGDLmax
m、およびバックグラウンド最小遅延BGDLmin
mの相互の相関係数を
図9に示す。なお、
図9においても、対角要素よりも上側の非対角要素の相関係数が示されていないのは、
図7において説明した理由と同じである。また、
図9に示すキャン応答遅延RTT
m、パケットロス率PLR
m、遅延DL
m、ジッタJT
m、バックグラウンド最大遅延BGDLmax
m、およびバックグラウンド最小遅延BGDLmin
mは、ネットワークスキャンをM個の端末装置に対して実行したときのM個の端末装置における複数の通信特性である。
【0103】
図9を参照して、バックグラウンドトラフィックを監視してネットワークスキャンが実行された場合において、通信品質が不十分であるとき、スキャン応答遅延RTT
mと、パケットロス率PLR
m、遅延DL
m、バックグラウンド最大遅延BGDLmax
mおよびバックグラウンド最小遅延BGDLmin
mとの相関係数、パケットロス率PLR
mと、遅延DL
m、バックグラウンド最大遅延BGDLmax
mおよびバックグラウンド最小遅延BGDLmin
mとの相関係数、遅延DL
mとジッタJT
m、バックグラウンド最大遅延BGDLmax
mおよびバックグラウンド最小遅延BGDLmin
mとの相関係数、ジッタJT
mとバックグラウンド最大遅延BGDLmax
mおよびバックグラウンド最小遅延BGDLmin
mとの相関係数、およびバックグラウンド最大遅延BGDLmax
mとバックグラウンド最小遅延BGDLmin
mとの相関係数は、0.5よりも大きい。そして、スキャン応答遅延RTT
mは、パケットロス率PLR
mと最も大きい相関係数を有する。
【0104】
図10は、通信特性の更に別の相関係数を示す図である。なお、
図10に示す相関係数は、バックグラウンドトラフィックを監視してネットワークスキャンが実行された場合において、ネットワークが混雑しているときの通信特性の相関係数である。
【0105】
スキャン応答遅延RTT
m、パケットロス率PLR
m、遅延DL
m、ジッタJT
m、バックグラウンド最大遅延BGDLmax
m、およびバックグラウンド最小遅延BGDLmin
mの相互の相関係数を
図10に示す。なお、
図10においても、対角要素よりも上側の非対角要素の相関係数が示されていないのは、
図7において説明した理由と同じである。また、
図10に示すスキャン応答遅延RTT
m、パケットロス率PLR
m、遅延DL
m、ジッタJT
m、バックグラウンド最大遅延BGDLmax
m、およびバックグラウンド最小遅延BGDLmin
mは、ネットワークスキャンをM個の端末装置に対して実行したときのM個の端末装置における複数の通信特性である。
【0106】
図10を参照して、バックグラウンドトラフィックを監視してネットワークスキャンが実行された場合において、ネットワークが混雑しているとき、スキャン応答遅延RTT
mと、パケットロス率PLR
m、遅延DL
m、ジッタJT
mおよびバックグラウンド最大遅延BGDLmax
mとの相関係数、パケットロス率PLR
mと、遅延DL
m、バックグラウンド最大遅延BGDLmax
mおよびバックグラウンド最小遅延BGDLmin
mとの相関係数、遅延DL
mと、ジッタJT
m、バックグラウンド最大遅延BGDLmax
mおよびバックグラウンド最小遅延BGDLmin
mとの相関係数、ジッタJT
mとバックグラウンド最大遅延BGDLmax
mおよびバックグラウンド最小遅延BGDLmin
mとの相関係数、およびバックグラウンド最大遅延BGDLmax
mとバックグラウンド最小遅延BGDLmin
mとの相関係数は、0.5よりも大きい。そして、スキャン応答遅延RTT
mは、バックグラウンド最大遅延BGDLmax
mと最も大きい相関係数を有する。
【0107】
図9および
図10に示すように、バックグラウンドトラフィックを監視してネットワークスキャンが実行された場合、通信品質が不十分なときとネットワークが混雑しているときとでは、スキャン応答遅延RTT
m、パケットロス率PLR
m、遅延DL
m、ジッタJT
m、バックグラウンド最大遅延BGDLmax
m、およびバックグラウンド最小遅延BGDLmin
mの相互の相関係数が異なる。
【0108】
なお、
図7から
図10に示すスキャン応答遅延RTT
mと、パケットロス率PLR
m、遅延DL
m、ジッタJT
m、バックグラウンド最大遅延BGDLmax
mおよびバックグラウンド最小遅延BGDLmin
mとの相関係数は、
図3に示すホスト情報データベース13-1または
図4に示すホスト情報データベース13-2に格納されたスキャン応答遅延RTT
mを1つの端末装置においてスキャン応答SR
mがあったポートの個数によって平均化したものをスキャン応答遅延RTT
mとして用いて算出された相関係数であってもよく、ホスト情報データベース13-1,13-2に格納されたスキャン応答遅延RTT
mおよびパケットロス率PLR
m等の各通信特性をそのまま用いて(即ち、スキャン応答遅延RTT
mに関しては、ポートの違いによるスキャン応答遅延RTT
mの通信特性の違いも考慮して)算出された相関係数であってもよい。
【0109】
ネットワークスキャンを実行した場合、ネットワークスキャンの結果は、正常および失敗に分類される。そして、ネットワークスキャンが失敗した場合、ネットワークスキャンが失敗した原因として、次の第1の原因、第2の原因、第3の原因および第4の原因が想定される。
【0110】
(第1の原因)
ネットワークスキャンの対象である端末装置mとの通信における通信品質が不足していることである。
【0111】
(第2の原因)
ネットワークスキャンの対象である端末装置mが接続されているネットワークが混雑していること(即ち、ネットワーク輻輳)である。
【0112】
(第3の原因)
ネットワークスキャンの対象である端末装置mがネットワークに接続されていないことである。
【0113】
(第4の原因)
ネットワークスキャンの対象である端末装置mのポートが閉塞していることである。
【0114】
そこで、この発明の実施の形態においては、以下に説明する方法によって、ネットワークスキャンを実行したときに得られるスキャン応答遅延RTTm、パケットロス率PLRmおよび遅延DLm等の通信特性を用いて、ネットワークスキャンが正常であるか失敗であるかを推定するとともに、ネットワークスキャンが失敗であると推定したとき、その失敗の原因(第1の原因、第2の原因、第3の原因および第4の原因のいずれか)を推定する。なお、第1の原因および第2の原因は、端末装置との通信チャネルに起因した原因である。
【0115】
ネットワークスキャンの結果を推定する方法は、
図7から
図10に示すスキャン応答遅延RTT
m、パケットロス率PLR
mおよび遅延DL
m等の通信特性のうち、ネットワークスキャンの結果を推定するために最も適した通信特性CMbestを抽出する抽出処理と、抽出処理において抽出された通信特性を有する端末装置をネットワークスキャンが正常であるグループCLS
1と、ネットワークスキャンが端末装置との通信チャネルに起因した原因によって失敗したグループCLS
2,CLS
3とに分類し、グループCLS
1とグループCLS
3とを判別するDスコアD_2、またはグループCLS
2とグループCLS
3とを判別するDスコアD_3を算出し、その算出したDスコアD_2またはDスコアD_3に基づいてネットワークスキャンが正常または失敗であると推定するとともに、ネットワークスキャンが失敗であると推定したとき、ネットワークスキャンが失敗した原因を推定する推定処理とを含む。
【0116】
[通信特性の抽出]
図5に示すスケジュールSCH_scanに従って、ネットワークスキャンがバックグラウンドトラフィックを監視せずに実行された場合、スキャン解析マネージャ12は、M個の端末装置の各々について、1つのスキャンタイミングt
sにおけるスキャン応答遅延RTT
m、パケットロス率PLR
m、スキャン最大遅延DLmax
mおよびスキャン最小遅延DLmax
mをネットワークスキャナ11から受け、その受けたスキャン応答遅延RTT
m、パケットロス率PLR
m、スキャン最大遅延DLmax
mおよびスキャン最小遅延DLmax
mをホスト情報データベース13に格納することによってホスト情報データベース13を作成または更新する。
【0117】
抽出手段14は、M個のスキャン応答遅延RTTm、M個のパケットロス率PLRm、M個のスキャン最大遅延DLmaxmおよびM個のスキャン最小遅延DLminmをホスト情報データベース13から読み出し、その読み出したM個のスキャン応答遅延RTTm、M個のパケットロス率PLRm、M個のスキャン最大遅延DLmaxmおよびM個のスキャン最小遅延DLminmに基づいて、スキャン応答遅延RTTm、パケットロス率PLRm、スキャン最大遅延DLmaxmおよびスキャン最小遅延DLminmの相互の相関係数rijを次式によって算出する。
【0118】
【0119】
式(1)において、xaiは、相関係数rijを算出する元になる一方の通信特性fiのサンプルを表し、yajは、相関係数rijを算出する元になる他方の通信特性fjのサンプルを表す。そして、ai=1~Mであり、aj=1~Mである。
【0120】
抽出手段14は、通信特性f
i,f
jの相関係数r
ijのうち、異なる通信特性f
i,f
j(i≠j)の相関係数r
ij(i≠j)を抽出する。例えば、算出された相関係数r
ijが
図7に示す相関係数からなる場合、通信特性f
i(i=1~4)は、それぞれ、列方向のスキャン応答遅延RTT
m、パケットロス率PLR
m、スキャン最大遅延DLmax
mおよびスキャン最小遅延DLmin
mに設定され、通信特性f
j(j=1~4)は、それぞれ、行方向のスキャン応答遅延RTT
m、パケットロス率PLR
m、スキャン最大遅延DLmax
mおよびスキャン最小遅延DLmin
mに設定される。
【0121】
相関係数r11,r22,r33,r44は、対角要素であり、相関係数r21,r31,r41,r32,r42,r43は、非対角要素である。
【0122】
抽出手段14は、非対角要素の相関係数r21,r31,r41,r32,r42,r43を順次抽出し、その抽出した各相関係数r21,r31,r41,r32,r42,r43がしきい値Corrrよりも大きいか否かを判定する。しきい値Corrrは、例えば、0.5~1.0の範囲内の実数に設定される。ここでは、しきい値Corrr=0.5とする。
【0123】
まず、抽出手段14は、相関係数r21がしきい値Corrrよりも大きいか否かを判定する。そして、抽出手段14は、相関係数r21がしきい値Corrr以下であるとき、相関係数r21の算出の元になった2つの通信特性f2,f1を削除し、相関係数r21がしきい値Corrrよりも大きいとき、相関係数r21の算出の元になった2つの通信特性f2,f1を保存する。
【0124】
この場合、相関係数r21(=0.25)がしきい値Corrr(=0.5)以下であるので、抽出手段14は、相関係数r21の算出の元になった2つの通信特性f2(=パケットロス率PLRm)および通信特性f1(=スキャン応答遅延RTTm)を削除する。
【0125】
次に、抽出手段14は、相関係数r31がしきい値Corrrよりも大きいか否かを判定する。相関係数r31が0.80であるので、抽出手段14は、相関係数r31がしきい値Corrrよりも大きいと判定し、相関係数r31の算出の元になった2つの通信特性f3(=スキャン最大遅延DLmaxm)および通信特性f1(=スキャン応答遅延RTTm)を保存する。
【0126】
引き続いて、抽出手段14は、相関係数r41がしきい値Corrrよりも大きいか否かを判定する。相関係数r41が0.97であるので、抽出手段14は、相関係数r41がしきい値Corrrよりも大きいと判定し、相関係数r41の算出の元になった2つの通信特性f4(=スキャン最小遅延DLminm)および通信特性f1(=スキャン応答遅延RTTm)を保存する。
【0127】
以下、同様にして、抽出手段14は、相関係数r32,r42,r43がしきい値Corrrよりも大きいか否かを順次判定する。そして、抽出手段14は、しきい値Corrr(=0.5)よりも大きい相関係数r43の算出の元になった2つの通信特性f4(=スキャン最小遅延DLminm),f3(=スキャン最大遅延DLmaxm)を保存する。また、抽出手段14は、しきい値Corrr(=0.5)以下である相関係数r32,r42の算出の元になった2つの通信特性f3(=スキャン最大遅延DLmaxm),f2(=パケットロス率PLRm);2つの通信特性f4(=スキャン最小遅延DLminm),f2(=パケットロス率PLRm)を削除する。
【0128】
その結果、2つの通信特性f3(=スキャン最大遅延DLmaxm),f1(=スキャン応答遅延RTTm);2つの通信特性f4(=スキャン最小遅延DLminm),f1(=スキャン応答遅延RTTm);2つの通信特性f4(=スキャン最小遅延DLminm),f3(=スキャン最大遅延DLmaxm)が保存されたので、抽出手段14は、最終的に、スキャン応答遅延RTTm、スキャン最大遅延DLmaxmおよびスキャン最小遅延DLminmの3個の通信特性を保存する。
【0129】
なお、抽出手段14は、相関係数r
ijが
図8から
図10のいずれかに示す相関係数からなる場合も、同様にして、しきい値Corr
rよりも大きい相関係数r
ijの算出の元になった通信特性を保存し、しきい値Corr
r以下である相関係数r
ijの算出の元になった通信特性を削除する。
【0130】
スキャン応答遅延RTTmは、ネットワークスキャンが正常である場合におけるテスト入力からなるパケットを送信してからスキャン応答が帰って来るまでのRTTnormalに対する遅れを表すので、ネットワークスキャンの結果を最も良く表すものである。
【0131】
そこで、抽出手段14は、最終的に保存された通信特性(上記の例では、スキャン応答遅延RTTm、スキャン最大遅延DLmaxmおよびスキャン最小遅延DLminm)から、スキャン最大遅延DLmaxmおよびスキャン最小遅延DLminmを説明変数として抽出するとともにスキャン応答遅延RTTmを目的変数として抽出し、重回帰分析を実行して重回帰分析における寄与率(=R2)を求める。
【0132】
その後、抽出手段14は、寄与率R2がしきい値Srよりも小さいか否かを判定する。しきい値Srは、例えば、0.5~1.0の範囲の実数に設定される。
【0133】
抽出手段14は、寄与率R2がしきい値Srよりも小さいと判定したとき、ネットワークスキャンの結果を推定するアルゴリズムALGのモードを“無相関”に設定し、寄与率R2がしきい値Srよりも小さくないと判定したとき、アルゴリズムALGのモードを“相関”に設定する。
【0134】
アルゴリズムALGのモードが“無相関”に設定されたとき、最終的に保存された通信特性がやや重要であることを意味する。一方、アルゴリズムALGのモードが“相関”に設定されたとき、最終的に保存された通信特性が非常に重要であることを意味する。
【0135】
引き続いて、抽出手段14は、機械学習アルゴリズム“SelectKbest”を用いて、ネットワークスキャンの結果を推定するために最も適した通信特性CMbestをK個の通信特性から選択する。
【0136】
通信特性CMbestを選択する方法を説明する。
図11は、通信特性CMbestを選択するときの元データの例を示す図である。
図12は、通信特性CMbestを選択する方法を説明するための図である。
【0137】
ネットワークスキャンのスキャン応答から得られる複数の通信特性として、パケットロス率PLR
m、ジッタJT
m、スキャン最大遅延DLmax
m、スキャン最小遅延DLmin
mおよび遅延DL
mを
図11に示す。
図11においては、パケットロス率PLR
m、ジッタJT
m、スキャン最大遅延DLmax
m、スキャン最小遅延DLmin
mおよび遅延DL
mは、8個の端末装置について示されている。
【0138】
そして、抽出手段14は、上述した方法によって、しきい値Corr
rよりも大きい相関係数r
ijを有する通信特性として、
図12に示すように、例えば、パケットロス率PLR
m、ジッタJT
m、スキャン最大遅延DLmax
mおよびスキャン最小遅延DLmin
mを選択する。
【0139】
その後、抽出手段14は、
図12の各行の合計および各列の合計を算出し、各行の合計と各列の合計との合計である総合計を算出する。
【0140】
引き続いて、抽出手段14は、次式によって、r行c列の期待値Ercを全ての行および全ての列について算出する。
【0141】
【0142】
式(2)において、erは、r番目の行の合計を表し、ecは、c番目の列の合計を表す。また、Ngrandは、総合計を表す。
【0143】
図13は、通信特性のスコアを求める方法を説明するための図である。
図14は、通信特性のスコアを示す図である。なお、
図13においては、スキャン最大遅延DLmax
mのスコアQを求める方法を説明する。
【0144】
図13を参照して、左端の列は、
図12の右端の列の合計および総合計であり、左端から2番目の列は、
図11に示すスキャン最大遅延DLmax
mのサンプルである。
【0145】
抽出手段14は、
図13に示す各行の合計(=0.049,0.034,0.023,0.038,0.022,0.022,0.021,0.023)を式(2)のe
rに順次代入し、
図13に示すc番目の列の合計(=0.232)を式(2)のe
cに代入し、
図13の総合計を式(2)のN
grandに代入して期待値E
rcを算出する。
【0146】
そして、抽出手段14は、次式によってスコアQを算出する。
【0147】
【0148】
式(3)において、Oは、
図13に示すスキャン最大遅延DLmax
mの各値であり、Eは、式(2)によって算出される期待値E
rcである。
【0149】
スコアQは、1つの通信特性(例えば、スキャン最大遅延DLmaxm)において、各サンプルOの期待値Eからのずれ量の大きさを表すものである。式(3)においては、各サンプルOが期待値Eよりも大きい方に大きくずれている場合、または各サンプルOが期待値Eよりも小さい方に大きくずれている場合、スコアQが大きくなり、各サンプルOが期待値Eよりも大きい方に小さくずれている場合、または各サンプルOが期待値Eよりも小さい方に小さくずれている場合、スコアQが小さくなる。従って、スコアQは、1つの通信特性(例えば、スキャン最大遅延DLmaxm)の特徴を表すものである。
【0150】
抽出手段14は、期待値Eを算出すると、O-Eを算出し、続いて、(O-E)2を算出し、その算出した(O-E)2を期待値Eで除算して(O-E)2/Eを算出する。
【0151】
そうすると、抽出手段14は、各行の(O-E)2/Eの和をスキャン最大遅延DLmaxmのスコアQとして算出する。つまり、抽出手段14は、式(3)によって、スキャン最大遅延DLmaxmのスコアQを算出する。
【0152】
また、抽出手段14は、
図12に示すパケットロス率PLR
m、ジッタJT
mおよびスキャン最小遅延DLmin
mについても、上述した方法によってスコアQを算出する。その結果、
図14に示すように、パケットロス率PLR
m、ジッタJT
m、スキャン最大遅延DLmax
mおよびスキャン最小遅延DLmin
mのスコアQが得られる。
【0153】
そうすると、抽出手段14は、パケットロス率PLRm、ジッタJTm、スキャン最大遅延DLmaxmおよびスキャン最小遅延DLminmのスコアQから、スコアQの大きい順にK(Kは、正の整数)個の通信特性を選択する。
【0154】
例えば、K=3である場合、
図14に示す例においては、抽出手段14は、ジッタJT
m、スキャン最小遅延DLmin
mおよびスキャン最大遅延DLmax
mを選択する。
【0155】
抽出手段14は、K個の通信特性を選択すると、次の方法によって、通信特性CMbestをK個の通信特性から選択する。
【0156】
まず、抽出手段14は、LR(Linear Regression)およびSVM(Support Vector Machine)等の分類アルゴリズムを用いてK個の通信特性を、ネットワークスキャンの結果を推定するために重要な通信特性のグループGP1と、ネットワークスキャンの結果を推定するために重要でない通信特性のグループGP2とに分類する。
【0157】
ここでは、分類アルゴリズムとしてサポートベクターマシン(SVM-train)を用いるものとする。
【0158】
SVMは、教師有り学習を用いるパターン認識モデルの一つであり、教師データX0=[x01,x02,・・・,x0M]T(Tは、転置を表す)を最も大胆に区切る境界を学習する。この境界を学習するために2個以上のパラメータによって構成される2次元以上の空間が設定される。
【0159】
そして、2次元以上の空間に配置された学習用サンプルを用いて学習を行った結果、教師データX0=[x01,x02,・・・,x0M]Tを最も大胆に区切る境界は、境界に最も近いサンプル(データ)との距離(マージン)が最大となるように決定される。この決定された境界は、最大マージン超平面と呼ばれる。なお、この境界を決定する具体的な方法は、周知であるので、省略する。
【0160】
抽出手段14は、教師データX0=[x01,x02,・・・,x0M]T(Tは、転置を表す)を用いてサポートベクターマシン(SVM-train)の学習を実行し、学習によって決定された境界を用いて、M個のサンプルベクトルxm(m=1~M)の各々が式(4)を満たすように、各サンプルベクトルxmをグループGP1,GP2のいずれかに分類する。ここで、サンプルベクトルxmは、xm=[CM1m,CM2m,・・・,CMkm,・・・,CMKm]である。即ち、サンプルベクトルxmは、K個の通信特性CM1m~CMKmを要素として含む。その結果、グループGP1,GP2のいずれかに分類する対象となるデータは、式(5)によって表わされる。
【0161】
【0162】
【0163】
式(5)において、通信特性CMkm(k=1~K,m=1~M)は、端末装置mにおけるk番目の通信特性を表す。
【0164】
式(4)において、zは、ウェイトベクトルであり、bは、予め決定された定数である。
【0165】
グループGP1は、ネットワークスキャンの結果を推定するための重要な通信特性からなるグループである。また、グループGP2は、ネットワークスキャンの結果を推定するための重要でない通信特性からなるグループである。サンプルベクトルxmがグループGP1に分類されたとき、ymは、“1”からなり、サンプルベクトルxmがグループGP2に分類されたとき、ymは、“-1”からなる。
【0166】
抽出手段14は、式(4)によってウェイトベクトルzを算出することによって、次式の分類指標αを決定する。
【0167】
【0168】
式(6)において、X=[x1,x2,・・・,xM]T(Tは、転置を表す)であり、y=[y1,y2,・・・,yM]T(Tは、転置を表す)である。
【0169】
抽出手段14は、サンプルベクトルxmがグループGP1に分類されたとき(即ち、ymが“1”からなるとき)、z・xm-b=1によってウェイトベクトルzを算出し、その算出したウェイトベクトルzを分類指標αとする。また、抽出手段14は、サンプルベクトルxmがグループGP2に分類されたとき(即ち、ymが“-1”からなるとき)、z・xm-b=-1によってウェイトベクトルzを算出し、その算出したウェイトベクトルzを分類指標αとする。
【0170】
抽出手段14は、k番目の通信特性CMkmに関する分類指標αを決定すると、その決定した分類指標α(=αk)、サンプルベクトルxkm、およびym(=“1”または“-1”)を次式に代入して、ネットワークスキャンの結果を推定するための通信特性の重要性を示す重みwkを算出する。
【0171】
【0172】
式(7)において、xkmは、端末装置mにおけるサンプルベクトルxmのk番目の通信特性のサンプルCMkmを表す。従って、式(7)の右辺は、式(5)に示すM個のk番目の通信特性CMk1,CMk2,・・・,CMkm,・・・,CMkMを用いて重みwkを算出することを意味する。
【0173】
その後、抽出手段14は、式(7)によって算出した重みwkを次式に代入し、ランクを決定するためのランク重みRkを算出する。
【0174】
【0175】
抽出手段14は、上述した方法によって、K個の通信特性の全てについてランク重みRkを算出する。
【0176】
図15は、ランク重みR
kの算出結果を示す図である。
図15を参照して、スキャン最大遅延DLmax
m、ジッタJT
m、スキャン最小遅延DLmin
mおよびパケットロス率PLR
mに対して、ランク重みR
kおよびランクが対応付けられる。
【0177】
そして、抽出手段14は、最もランクが低い(即ち、最も小さいランク重みRkを与える)通信特性(ここでは、パケットロス率PLRm)を、削除する通信特性に決定する。その後、抽出手段14は、当該通信特性のサンプルをサンプルベクトルx1~xMから削除し、式(4),(6)~(8)の計算と、削除する通信特性の決定とを全ての通信特性が削除されるまで繰り返し実行する。なお、最も小さいランク重みRkを与える通信特性が複数個存在する場合、抽出手段14は、これらのうちの任意の通信特性を削除する。また、最も小さいランク重みRkを与える通信特性が複数個存在する場合、抽出手段14は、スキャン応答遅延RTTmとの相関係数rijが最も小さい通信特性を、削除する通信特性としてもよい。
【0178】
そうすると、抽出手段14は、最後に削除した通信特性を通信特性CMbestとして選択し、その選択した通信特性CMbestと、スキャン応答遅延RTTmとを結合して推定手段15へ出力する。
【0179】
なお、
図5に示すスケジュールSCH_scanに従って、ネットワークスキャンがバックグラウンドトラフィックを監視して実行された場合、抽出手段14は、上述したM個のスキャン応答遅延RTT
m、M個のパケットロス率PLR
m、M個のスキャン最大遅延DLmax
mおよびM個のスキャン最小遅延DLmin
mに代えて、M個のスキャン応答遅延RTT
m、M個のパケットロス率PLR
m、M個の遅延DL
m、M個のジッタJT
m、M個のバックグラウンド最大遅延BGDLmax
mおよびM個のバックグラウンド最小遅延BGDLmin
mに基づいて、上述した方法によって、通信特性CMbestを選択する。
【0180】
[ネットワークスキャンの結果の推定]
推定手段15は、スキャン応答遅延RTTmおよび通信特性CMbestを抽出手段14から受ける。そして、推定手段15は、LDA(Liner Discriminant Analysis)アルゴリズムを用いて、通信特性CMbestを有する端末装置をG(Gは、3以上の整数)個のグループCLS1~CLSGに分類する。
【0181】
LDAアルゴリズムは、グループ間の分散とグループ内の分散との比率を最大化するように、通信特性CMbestを有する端末装置をG個のグループCLS1~CLSGに分類する。従って、グループCLS1~CLSGの相互間の最大の分離が保証される。
【0182】
LDAアルゴリズムは、共通共分散に基づいてデータ(通信特性CMbestを有する端末装置)を球体化し、変換された空間で最も近いグループ重心にデータ(通信特性CMbestを有する端末装置)を分類する。
【0183】
これを実現するために、異なるグループの平均間の距離である異なるグループ間の分離可能性(「グループ間共分散」とも言う。)が計算される。その後、各グループの平均とサンプルとの間の距離(「グループ内共分散」とも言う。)が計算される。これによって、グループ間の共分散を最大化し、かつ、グループ内の共分散を最小化する低次元空間が構築される。そして、構築された低次元空間において、最も近いグループ重心にデータ(通信特性CMbestを有する端末装置)を分類する。なお、LDAアルゴリズムは、”T. Hastie, R. Tibshirani, and J. H. Friedman, “The elements of statistical learning: data mining, inference, and prediction,” 2nd ed. Chapter 4. pp.106 - 118,New York: Springer, 2009.”に記載されており、公知である。従って。LDAアルゴリズムによる詳細な分類方法は、省略する。
【0184】
また、グループCLS1~CLSGの個数Gは、ネットワークスキャンの推定される結果のうち、ネットワークスキャンの結果が端末装置との通信チャネルに起因する原因の数と同じ個数に設定される。即ち、「正常」、「通信品質不十分」および「ネットワークが混雑」の3個の結果が端末装置との通信チャネルに起因する原因であるので、グループCLS1~CLSGの個数Gは、“3”に設定される。その結果、推定手段15は、LDAアルゴリズムを用いて、通信特性CMbestを有する端末装置を3個のグループCLS1~CLS3に分類する。そして、グループCLS1は、“正常”のグループであり、グループCLS2は、「通信品質不十分」のグループであり、グループCLS3は、「ネットワークが混雑」のグループである。
【0185】
推定手段15は、通信特性CMbestを有する端末装置をグループCLS1~CLS3に分類するとき、ネットワークスキャンが“ネットワークが混雑”であるときのスキャンデータ(“ネットワークが混雑”であるときの通信特性CMbest)を用いてLDAアルゴリズムを学習し、その学習した学習済のLDAアルゴリズムを用いて、通信特性CMbestを有する端末装置を3個のグループCLS1~CLS3に分類する。これによって、ネットワークスキャンが失敗した原因としての“ネットワークが混雑”を最も精度良く推定できる。
【0186】
推定手段15は、ネットワークスキャンの結果を推定するためのModel1、Model2およびModel3を使用する。Model1は、グループCLS1とグループCLS2とを扱い、Model2は、グループCLS1とグループCLS3とを扱い、Model3は、グループCLS2とグループCLS3とを扱う。
【0187】
そして、推定手段15は、Model1を使用するとき、グループCLS1とグループCLS2を判別するDスコアD_1を算出し、Model2を使用するとき、グループCLS1とグループCLS3を判別するDスコアD_2を算出し、Model3を使用するとき、グループCLS2とグループCLS3を判別するDスコアD_3を算出する。
【0188】
DスコアD_1~D_3が算出されるとき、次式によって表わされる判別関数δpq(x)が用いられる。
【0189】
【0190】
式(9A)のxには、スキャン応答遅延RTTmと通信特性CMbestとからなるベクトルが代入される。また、式(9A)のμgには、グループpの判別関数を算出するとき、式(9C)に示す通信特性の平均μpが代入され、グループqの判別関数を算出するとき、式(9D)に示す通信特性の平均μqが代入される。更に、式(9A)の事前平均Πgには、グループpの判別関数を算出するとき、式(9E)に示す通信特性の事前平均Πpが代入され、グループqの判別関数を算出するとき、式(9F)に示す通信特性の事前平均Πqが代入される。式(9A)の合併共分散行列Cpqは、式(9B)によって表される。式(9B)の右辺において、第1項は、グループpにおける共分散行列であり、第2項は、グループqにおける共分散行列である。そして、式(9B)のxmpには、グループpに分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)が代入され、式(9B)のxmqには、グループqに分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)が代入される。
【0191】
式(9B),(9C),(9D)において、Mpは、グループpに分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の総数であり、Mqは、グループqに分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の総数であり、mpは、グループpに分類された1つの通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)を示す引数であり、mqは、グループqに分類された1つの通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)を示す引数である。式(9E),(9F)において、Mは、通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の総数である。式(9C)は、グループpに分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の平均μpを表し、式(9D)は、グループqに分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の平均μqを表す。式(9E)は、グループpに分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の事前平均Πpを表し、式(9F)は、グループqに分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の事前平均Πqを表す。
【0192】
式(9B)は、2つのグループ(2つのグループCLS1,CLS2;2つのグループCLS1,CLS3;2つのグループCLS2,CLS3のいずれか)における2つの共分散行列を合併した合併共分散行列Cpqを表す。2つのグループCLS1,CLS2における2つの共分散行列を合併した合併共分散行列C12を算出するとき、式(9A)において、pは、グループCLS1を表し、qは、グループCLS2を表す。また、2つのグループCLS1,CLS3における2つの共分散行列を合併した合併共分散行列C13を算出するとき、式(9A)において、pは、グループCLS1を表し、qは、グループCLS3を表す。更に、2つのグループCLS2,CLS3における2つの共分散行列を合併した合併共分散行列C23を算出するとき、式(9A)において、pは、グループCLS2を表し、qは、グループCLS3を表す。
【0193】
Model1における合併共分散行列C12は、次式によって表わされる。
【0194】
【0195】
式(10)において、M1は、式(9B)におけるMpに相当し、M2は、式(9B)におけるMqに相当し、m1は、式(9B)におけるmpに相当し、m2は、式(9B)におけるmqに相当する。また、μ1は、M1を式(9C)のMpに代入し、グループCLS1に分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)を式(9C)のxmpに代入して算出され、μ2は、M2を式(9D)のMqに代入し、グループCLS2に分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)を式(9D)のxmqに代入して算出される。合併共分散行列C12は、グループCLS1における共分散行列とグループCLS2における共分散行列との和によって表わされる。
【0196】
Model2における合併共分散行列C13は、次式によって表わされる。
【0197】
【0198】
式(11)において、M1は、式(9B)におけるMpに相当し、M3は、式(9B)におけるMqに相当し、m1は、式(9B)におけるmpに相当し、m3は、式(9B)におけるmqに相当する。また、μ1は、M1を式(9C)のMpに代入し、グループCLS1に分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)を式(9C)のxmpに代入して算出され、μ3は、M3を式(9D)のMqに代入し、グループCLS3に分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)を式(9D)のxmqに代入して算出される。合併共分散行列C13は、グループCLS1における共分散行列とグループCLS3における共分散行列との和によって表わされる。
【0199】
Model3における合併共分散行列C23は、次式によって表わされる。
【0200】
【0201】
式(12)において、M2は、式(9B)におけるMpに相当し、M3は、式(9B)におけるMqに相当し、m2は、式(9B)におけるmpに相当し、m3は、式(9B)におけるmqに相当する。また、μ2は、M2を式(9C)のMpに代入し、グループCLS2に分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)を式(9C)のxmpに代入して算出され、μ3は、M3を式(9D)のMqに代入し、グループCLS3に分類された通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)を式(9D)のxmqに代入して算出される。合併共分散行列C23は、グループCLS2における共分散行列とグループCLS3における共分散行列との和によって表わされる。
【0202】
Model1におけるDスコアD_1を算出するとき、グループCLS1における判別関数f1およびグループCLS2における判別関数f2は、次式によって表わされる。
【0203】
【0204】
式(13A)において、事前平均Π1は、M1を式(9E)のMpに代入し、通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の総数を式(9E)のMに代入して算出される。また、式(13B)において、事前平均Π2は、M2を式(9F)のMqに代入し、通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の総数を式(9F)のMに代入して算出される。また、式(13A)における平均μ1および式(13B)における平均μ2は、式(10)において説明した方法によって算出される。
【0205】
また、Model2におけるDスコアD_2を算出するとき、グループCLS1における判別関数f1およびグループCLS3における判別関数f2は、次式によって表わされる。
【0206】
【0207】
式(14A)において、事前平均Π1は、M1を式(9E)のMpに代入し、通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の総数を式(9E)のMに代入して算出される。また、式(14B)において、事前平均Π2は、M3を式(9F)のMqに代入し、通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の総数を式(9F)のMに代入して算出される。また、式(14A)における平均μ1および式(14B)における平均μ3は、式(11)において説明した方法によって算出される。
【0208】
更に、Model3におけるDスコアD_3を算出するとき、グループCLS2における判別関数f1およびグループCLS3における判別関数f2は、次式によって表わされる。
【0209】
【0210】
式(15A)において、事前平均Π2は、M2を式(9E)のMpに代入し、通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の総数を式(9E)のMに代入して算出される。また、式(15B)において、事前平均Π3は、M3を式(9F)のMqに代入し、通信特性(スキャン応答遅延RTTmと通信特性CMbestとからなるベクトル)の総数を式(9F)のMに代入して算出される。また、式(15A)における平均μ2および式(15B)における平均μ3は、式(12)において説明した方法によって算出される。
【0211】
そして、DスコアD_1は、式(13A)に示す判別関数f1と式(13B)に示す判別関数f2との差=f1-f2によって表わされる。
【0212】
また、DスコアD_2は、式(14A)に示す判別関数f1と式(14B)に示す判別関数f2との差=f1-f2によって表わされる。
【0213】
更に、DスコアD_3は、式(15A)に示す判別関数f1と式(15B)に示す判別関数f2との差=f1-f2によって表わされる。
【0214】
従って、式(9)~(15)を用いることによってDスコアD_1~D_3を算出できる。
【0215】
推定手段15は、Model1~Model3のいずれかを用いて、Dスコア(D_1~D_3のいずれか)を算出する。
【0216】
そして、推定手段15は、Dスコアが零(=0)よりも小さいか否かを判定する。そして、推定手段15は、Dスコアが零(=0)よりも小さいと判定したとき、零(=0)よりも小さいDスコアの個数を表すカウント値DS_countを“1”だけインクリメントする。
【0217】
一方、推定手段15は、Dスコアが零(=0)以上であると判定したとき、カウント値DS_countを変更せずに保持する。
【0218】
推定手段15は、この処理を1つの基地局に属する全ての端末装置について実行する。
【0219】
推定手段15は、Dスコアのカウント値DS_countをカウントした後、カウント値DS_countに基づいて、ネットワークスキャンの結果を推定するModelをModel2またはModel3に設定する。
【0220】
より具体的には、推定手段15は、最初、Modelを“1”に設定し(即ち、Model1に設定し)、カウント値DS_countが零(=0)であるとき、またはカウント値DS_countが(Nterminal×D_thres)よりも大きいとき、モデルModelを“2”に設定する(即ち、Model2に設定する)。なお、Nterminalは、1つの基地局に属する端末装置の総数である。また、D_thresは、0~1の範囲の実数に設定される。
【0221】
また、推定手段15は、カウント値DS_countが零(=0)でなく、かつ、カウント値DS_countが(Nterminal×D_thres)以下であるとき、モデルModelを“3”に設定する(即ち、Model3に設定する)。
【0222】
そして、推定手段15は、モデルModelが“1”でないとき(即ち、モデルModelが“2”または“3”であるとき)、カウント値DS_countが零(=0)であるか否かを判定する。
【0223】
カウント値DS_countが零(=0)であると判定されたとき、推定手段15は、基地局に属する全ての端末装置について、ネットワークスキャンの結果を“ネットワーク輻輳”および“SNR不十分”以外であると決定する。
【0224】
一方、カウント値DS_countが零(=0)でないと判定されたとき、推定手段15は、カウント値DS_countが(Nterminal×D_thres)よりも小さいか否かを判定する。
【0225】
そして、カウント値DS_countが(Nterminal×D_thres)よりも小さいと判定されたとき、推定手段15は、“0”よりも小さいDスコアを有する端末装置について、ネットワークスキャンを失敗した原因を「通信品質が不十分である」と推定する。
【0226】
一方、カウント値DS_countが(Nterminal×D_thres)よりも小さくないと判定されたとき(即ち、カウント値DS_countが(Nterminal×D_thres)以上であると判定されたとき)、推定手段15は、基地局に属する全ての端末装置について、ネットワークスキャンが失敗した原因を「ネットワークが混雑している(即ち、ネットワーク輻輳)」と推定する。
【0227】
また、カウント値DS_countが零(=0)であると判定され、更に、端末装置の全てのポートでスキャン応答があったと判定されたとき、推定手段15は、端末装置について、ネットワークスキャンが「正常」であると推定する。
【0228】
一方、カウント値DS_countが零(=0)であると判定され、更に、端末装置の一部のポートから応答があったと判定されたとき、推定手段15は、端末装置について、ネットワークスキャンが失敗した原因を「ポート閉」と推定する。
【0229】
更に、カウント値DS_countが零(=0)であると判定され、更に、端末装置の全てのポートでスキャン応答が無いと判定されたとき、端末装置について、ネットワークスキャンが失敗した原因を「ネットワーク接続無し」と推定する。
【0230】
図16は、ネットワークスキャンの動作を説明するためのフローチャートである。
図16を参照して、ネットワークスキャンの動作が開始されると、ネットワークスキャナ11は、ネットワークスキャンの対象となる端末装置のアドレスAdd
1~Add
Mおよびポート番号PN
rを含むスキャンリストと、スキャンスケジュールとをスキャンスケジューラ16から取得する(ステップS1)。
【0231】
そして、ネットワークスキャナ11は、m=1を設定し(ステップS2)、PNr=1を設定する(ステップS3)。
【0232】
その後、ネットワークスキャナ11は、バックグラウンドトラフィックを監視して、またはバックグラウンドトラフィックを監視せずに、ネットワークスキャンを実行する(ステップS4)。そして、ネットワークスキャナ11は、スキャン応答および待ち時間を取得する(ステップS5)。
【0233】
そうすると、ネットワークスキャナ11は、PNr=PNr_MAX(ポート番号PNrの最大値)であるか否かを判定する(ステップS6)。
【0234】
ステップS6において、PNr=PNr_MAXでないと判定されたとき、ネットワークスキャナ11は、PNr=PNr+1を設定する(ステップS7)。その後、一連の動作は、ステップS4へ移行し、ステップS6において、PNr=PNr_MAXであると判定されるまで、ステップS4~ステップS7が繰り返し実行される。
【0235】
そして、ステップS6において、PNr=PNr_MAXであると判定されると、ネットワークスキャナ11は、m=Mであるか否かを判定する(ステップS8)。
【0236】
ステップS8において、m=Mでないと判定されたとき、ネットワークスキャナ11は、m=m+1を設定する(ステップS9)。その後、一連の動作は、ステップS3へ移行し、ステップS8において、m=Mであると判定されるまで、ステップS3~ステップS9が繰り返し実行される。
【0237】
そして、ステップS8において、m=Mであると判定されると、ネットワークスキャナ11は、スキャン応答から通信特性(スキャン応答遅延RTTm等の複数の通信特性)を抽出し(ステップS10)、その抽出した通信特性とスキャン応答とをスキャン解析マネージャ12へ出力する。
【0238】
スキャン解析マネージャ12は、スキャン応答および通信特性をネットワークスキャナ11から受け、その受けたスキャン応答および通信特性に基づいてホスト情報データベース13を作成または更新する。
【0239】
その後、抽出手段14および推定手段15は、ホスト情報データベース13の通信特性(即ち、抽出された通信特性)に基づいてネットワークスキャンの結果を推定し(ステップS11)、その推定したネットワークスキャンの結果をホスト情報データベース13に登録するとともにスキャンスケジューラ16へ出力する。
【0240】
スキャンスケジューラ16は、推定されたネットワークスキャンの結果を推定手段15から受け、その受けたネットワークスキャンの結果に基づいて再スキャンリストを作成し(ステップS12)、その作成した再スキャンリストをネットワークスキャナ11へ出力する。
【0241】
なお、再スキャンリストを作成するのは、ネットワークスキャンの結果が「通信品質不十分」または「ネットワーク混雑」である場合、別のスキャンタイミングでネットワークスキャンを実行すれば、ネットワークスキャンの結果が「正常」になる可能性があるからである。
【0242】
ステップS12の後、ネットワークスキャナ11は、再スキャンリストが空であるか否かを判定する(ステップS13)。
【0243】
ステップS13において、再スキャンリストが空でないと判定されたとき、一連の動作は、ステップS2へ移行し、ステップS13において、再スキャンリストが空であると判定されるまで、ステップS2~ステップS13が繰り返し実行される。
【0244】
そして、ステップS13において、再スキャンリストが空であると判定されると、ネットワークスキャンの動作が終了する。
【0245】
図17および
図18は、それぞれ、
図16のステップS10の詳細な動作を説明するための第1および第2のフローチャートである。
【0246】
図17を参照して、
図16のステップS8において、m=Mであると判定されると、抽出手段14は、ネットワークスキャンによって取得されたM個の端末装置における全ての通信特性について、上述した方法によって、相関係数r
ijを算出する(ステップS100)。なお、iは、
図7から
図10における列方向の引数であり、jは、
図7から
図10における行方向の引数である。
【0247】
そして、抽出手段14は、j=1を設定し(ステップS101)、i=1を設定する(ステップS102)。その後、抽出手段14は、通信特性fi,fjの相関係数rijを抽出し(ステップS103)、その抽出した相関係数rijがしきい値Corrrよりも大きいか否かを判定する(ステップS104)。
【0248】
ステップS104において、相関係数rijがしきい値Corrrよりも大きくないと判定されたとき、抽出手段14は、通信特性fi,fjを削除する(ステップS105)。
【0249】
一方、ステップS104において、相関係数rijがしきい値Corrrよりも大きいと判定されたとき、抽出手段14は、通信特性fi,fjを保存する(ステップS106)。
【0250】
そして、ステップS105またはステップS106の後、抽出手段14は、i=I(Iは、
図7から
図10における列方向の通信特性の最大個数)であるか否かを判定する(ステップS107)。
【0251】
ステップS107において、i=Iでないと判定されたとき、抽出手段14は、i=i+1を設定する(ステップS108)。その後、一連の動作は、ステップS103へ移行し、ステップS107において、i=Iであると判定されるまで、ステップS103~ステップS108が繰り返し実行される。
【0252】
そして、ステップS107において、i=Iであると判定されると、抽出手段14は、j=J(Jは、
図7から
図10における行方向の通信特性の最大個数)であるか否かを判定する(ステップS109)。
【0253】
ステップS109において、j=Jでないと判定されたとき、抽出手段14は、j=j+1を設定する(ステップS110)。その後、一連の動作は、ステップS102へ移行し、ステップS109において、j=Iであると判定されるまで、ステップS102~ステップS110が繰り返し実行される。
【0254】
そして、ステップS109において、j=Iであると判定されると、抽出手段14は、保存された全ての通信特性に基づいて、上述した方法によって、保存された全ての通信特性を説明変数とし、スキャン応答遅延RTTmを目的変数とする多重線形回帰を算出し(ステップS111)、寄与率R2を取得する。
【0255】
その後、抽出手段14は、寄与率R2がしきい値Srよりも小さいか否かを判定する(ステップS112)。
【0256】
ステップS112において、寄与率R2がしきい値Srよりも小さいと判定されたとき、抽出手段14は、アルゴリズムALGのモードを“無相関”に設定する(ステップS113)。
【0257】
一方、ステップS112において、寄与率R2がしきい値Sr以上であると判定されたとき、抽出手段14は、アルゴリズムALGのモードを“相関”に設定する(ステップS114)。
【0258】
そして、ステップS113またはステップS114の後、抽出手段14は、ネットワークスキャンにおける待ち時間および通信特性と、アルゴリズムのモードとを保存する(ステップS115)。
【0259】
なお、
図17に示すフローチャートにおいては、
図7から
図10に示す下三角形状に配列された通信特性f
i,f
jの相関係数r
ijを抽出する場合、ステップS102において、i=1に代えてi=jを設定するようにしてもよい。
【0260】
図18を参照して、
図17のステップS115の後、抽出手段14は、しきい値Corr
rよりも大きい相関係数r
ijを有する複数の通信特性の複数のスコアQを算出し、スコアQの大きい順にK個の通信特性を複数の通信特性から選択する(ステップS116)。
【0261】
そして、抽出手段14は、教師データを用いて分類アルゴリズム(例えば、SVM-train)の学習を実行する(ステップS117)。
【0262】
その後、抽出手段14は、k=Kを設定する(ステップS118)。引き続いて、抽出手段14は、学習済の分類アルゴリズムを用いて、通信特性の(k×M)個のサンプルベクトルx11~xkMを2つのグループGP1,GP2に分類する(ステップS119)。
【0263】
そして、抽出手段14は、式(4),(6),(7)によって、k個の通信特性のk個の重みw1~wkを算出する(ステップS120)。
【0264】
その後、抽出手段14は、k個の重みw1~wkに基づいて、式(8)によってk個のランク重みR1~Rkを算出する(ステップS121)。
【0265】
そして、抽出手段14は、k個のランク重みR1~Rkに基づいて、最も小さいランク重みRk_minが付与された通信特性のサンプルを、削除する通信特性として決定する(ステップS122)。その後、抽出手段14は、最も小さいランク重みRk_minが付与された通信特性のサンプルをサンプルベクトルx11~xkMから削除する(ステップS123)。
【0266】
そうすると、抽出手段14は、通信特性のサブセットが空であるか否かを判定する(ステップS124)。
【0267】
ステップS124において、通信特性のサブセットが空でないと判定されたとき、抽出手段14は、k=k-1を設定する(ステップS125)。即ち、抽出手段14は、通信特性のサブセットにおけるサンプルの個数を“1”だけ減少する。その後、一連の動作は、ステップS119へ移行し、ステップS124において、通信特性のサブセットが空であると判定されるまで、ステップS119~ステップS125が繰り返し実行される。
【0268】
そして、ステップS124において、通信特性のサブセットが空であると判定されると、抽出手段14は、最後に削除した通信特性を通信特性CMbestとして選択する(ステップS126)。そして、一連の動作は、
図16のステップS11へ移行する。
【0269】
ステップS119~ステップS125を1回目に実行した後に、通信特性のサブセットが空になるまで、ステップS119~ステップS125を繰り返し実行することによって、ネットワークスキャンの結果を推定するために最も重要でない通信特性のサンプルを順次削除する。このとき、通信特性の1個のサンプルを削除した後、学習済の分類アルゴリズムを用いて、残ったサンプルを2つのグループGP1,GP2に分類し直す(ステップS119参照)。そして、上述したように、グループGP1は、ネットワークスキャンの結果を推定するために重要な通信特性が分類されるグループであり、グループGP2は、ネットワークスキャンの結果を推定するために重要でない通信特性が分類されるグループである。従って、各サンプルについて、ネットワークスキャンの結果を推定するために重要な通信特性であるか否かの判定の精度を高くして、ネットワークスキャンの結果を推定するために最も重要でないサンプルを削除できる。
【0270】
図19から
図21は、それぞれ、
図16のステップS11の詳細な動作を説明するための第1から第3のフローチャートである。
【0271】
図19を参照して、
図16のステップS10の後、推定手段15は、スキャン応答遅延RTT
mおよび通信特性CMbestを抽出手段14から受ける。そして、推定手段15は、b=1を設定し(ステップS131)、ホスト情報データベース13を参照して基地局bに属するN
terminal個の端末装置の通信特性CMbestを抽出する。ここで、N
terminalは、基地局bに属する端末装置の総数である。
【0272】
その後、推定手段15は、LDAアルゴリズムを用いて判別関数δg(x)を生成する(ステップS132)。引き続いて、推定手段15は、ネットワークスキャンの結果を推定するモデルModelをModel=1に設定し(ステップS133)、mb=1を設定し(ステップS134)、DS_count=0を設定する(ステップS135)。ここで、mbは、1つの基地局bに属する端末装置を表す。
【0273】
そして、推定手段15は、判別関数δg(x)を用いて通信特性CMbestを有する端末装置のDスコアを算出する(ステップS136)。
【0274】
その後、推定手段15は、Dスコアが零(0)よりも小さいか否かを判定する(ステップS137)。
【0275】
ステップS137において、Dスコアが零(0)よりも小さいと判定されたとき、推定手段15は、DS_count=DS_count+1を設定する(ステップS138)。即ち、推定手段15は、カウント値DS_countを“1”だけインクリメントする。
【0276】
そして、ステップS137において、Dスコアが零(0)よりも小さくないと判定されたとき、またはステップS138の後、推定手段15は、mb=Nterminalであるか否かを判定する(ステップS139)。
【0277】
ステップS139において、mb=Nterminalでないと判定されたとき、推定手段15は、mb=mb+1を設定する(ステップS140)。その後、一連の動作は、ステップS136へ移行し、ステップS139において、mb=Nterminalであると判定されるまで、ステップS136~ステップS140が繰り返し実行される。
【0278】
そして、ステップS139において、mb=Nterminalであると判定されると、推定手段15は、Model=1であるか否かを判定する(ステップS141)。
【0279】
ステップS141において、Model=1であると判定されたとき、推定手段15は、DS_count=0であるか否か、またはDS_count>(Nterminal×D_thres)であるか否かを判定する(ステップS142)。
【0280】
ステップS142において、DS_count=0でなく、かつ、DS_count>(Nterminal×D_thres)でないと判定されたとき、推定手段15は、Model=3を設定する(ステップS143)。
【0281】
一方、ステップS141において、DS_count=0である、またはDS_count>(Nterminal×D_thres)であると判定されたとき、推定手段15は、Model=2を設定する(ステップS144)。
【0282】
そして、ステップS143またはステップS144の後、一連の動作は、ステップS134へ移行する。
【0283】
一方、ステップS141において、Model=1でないと判定されたとき、一連の動作は、
図20のステップS145へ移行する。
【0284】
図20を参照して、ステップS141において、Model=1でないと判定されたとき、推定手段15は、DS_count=0であるか否かを判定する(ステップS145)。
【0285】
ステップS145において、DS_count=0であると判定されたとき、推定手段15は、基地局に属する全ての端末装置について、ネットワークスキャンの結果を“ネットワーク輻輳”および“SNR不十分”以外であると決定する(ステップS146)。
【0286】
一方、ステップS145において、DS_count=0でないと判定されたとき、推定手段15は、DS_count<(Nterminal×D_thres)であるか否かを判定する(ステップS147)。
【0287】
ステップS147において、DS_count<(Nterminal×D_thres)でないと判定されたとき、推定手段15は、基地局bに属する全ての端末装置について、ネットワークスキャンが失敗した原因を“ネットワーク輻輳”であると推定する(ステップS148)。
【0288】
一方、ステップS147において、DS_count<(Nterminal×D_thres)であると判定されたとき、推定手段15は、“0”よりも小さいDスコアを有する端末装置について、ネットワークスキャンが失敗した原因を“SNR不十分(通信品質不十分)”であると推定する(ステップS149)。
【0289】
そして、ステップS146、ステップS148およびステップS149のいずれかの後、一連の動作は、
図21のステップS150へ移行する。
【0290】
図21を参照して、
図20のステップS146、ステップS148およびステップS149のいずれかの後、推定手段15は、m
b=1を設定する(ステップS150)。
【0291】
そして、推定手段15は、端末装置mbについて、ネットワークスキャンの結果が推定済であるか否かを判定する(ステップS151)。
【0292】
ステップS151において、端末装置mbについて、ネットワークスキャンの結果が推定済でないと判定されたとき、推定手段15は、端末装置mbの全てのポートでスキャン応答が無いか否かを判定する(ステップS152)。
【0293】
ステップS152において、端末装置mbの一部のポートでスキャン応答が有ると判定されたとき、推定手段15は、端末装置mbの全てのポートでスキャン応答が有るか否かを判定する(ステップS153)。
【0294】
ステップS153において、端末装置mbの全てのポートでスキャン応答が有ると判定されたとき、推定手段15は、端末装置mbについて、ネットワークスキャンが“正常”であると推定する(ステップS154)。
【0295】
一方、ステップS153において、端末装置mbの一部のポートでスキャン応答が無いと判定されたとき、推定手段15は、端末装置mbについて、ネットワークスキャンが失敗した原因を“ポート閉”であると推定する(ステップS155)。そして、推定手段15は、得られた待ち時間をホスト情報データベース13に保存する(ステップS156)。
【0296】
一方、ステップS152において、端末装置mbの全てのポートでスキャン応答が無いと判定されとき、推定手段15は、端末装置mbについて、ネットワークスキャンが失敗した原因を“ネットワーク接続無し”であると推定する(ステップS157)。
【0297】
そして、ステップS151において、端末装置mbについての結果が推定済であると判定されたとき、またはステップS154、ステップS156およびステップS157のいずれかの後、推定手段15は、mb=Nterminalであるか否かを判定する(ステップS158)。
【0298】
ステップS158において、mb=Nterminalでないと判定されたとき、推定手段15は、mb=mb+1を設定する(ステップS159)。その後、一連の動作は、ステップS151へ移行し、ステップS158において、mb=Nterminalであると判定されるまで、ステップS151~ステップS159が繰り返し実行される。
【0299】
そして、ステップS158において、mb=Nterminalであると判定されると、推定手段15は、b=Bであるか否かを判定する(ステップS160)。
【0300】
ステップS160において、b=Bでないと判定されたとき、推定手段15は、b=b+1を設定する(ステップS161)。その後、一連の動作は、
図19のステップS132へ移行し、ステップS160において、b=Bであると判定されるまで、ステップS132~ステップS161が繰り返し実行される。
【0301】
そして、ステップS160において、b=Bであると判定されると、一連の動作は、
図16のステップS12へ移行する。
【0302】
図21のステップS150~ステップS159は、1つの基地局に属する全ての端末装置の各々について、ネットワークスキャンの結果(“正常”、“ポート閉”および“ネットワーク接続無し”のいずれか)を推定するステップである。
【0303】
図22は、
図19のステップS132の詳細な動作を説明するためのフローチャートである。なお、
図22においては、ネットワークスキャンが“正常”であるときのスキャンデータ(“ネットワークが混雑”であるときの通信特性CMbest)を用いて学習した学習済のLDAアルゴリズムによって判別関数δ
g(x)を生成することを説明する。
【0304】
図22を参照して、
図19のステップS131の後、推定手段15は、LDAアルゴリズムを用いて、通信特性CMbestを有する端末装置をG(G=3)個のグループCLS
1~CLS
3に分類する(ステップS1321)。
【0305】
そして、推定手段15は、式(9C)(または式(9D))を用いて、各グループの平均μ1,μ2,μ3を算出する(ステップS1322)。
【0306】
その後、推定手段15は、式(9E)(または式(9F))を用いて、各グループの事前平均Π1,Π2,Π3を算出する(ステップS1323)。
【0307】
引き続いて、推定手段15は、式(9B)を用いて、各グループの共分散行列Cを算出する(ステップS1324)。
【0308】
そうすると、推定手段15は、式(10)によって、Model1の合併共分散行列C12を算出する(ステップS1325)。また、推定手段15は、式(11)によって、Model2の合併共分散行列C13を算出する(ステップS1326)。更に、推定手段15は、式(12)によって、Model3の合併共分散行列C23を算出する(ステップS1327)。
【0309】
そして、推定手段15は、式(9A)によって、判別関数δpq(x)を生成する(ステップS1328)。式(9A)における“C”には、それぞれ、ステップS1325~ステップS1327において算出された合併共分散行列C12,C13,C23が代入される。
【0310】
図22に示すフローチャートにおいては、推定手段15は、ステップS1321において、例えば、通信特性CMbestを有する端末装置を3個のグループCLS
1~CLS
3に分類する。
【0311】
そして、上述したように、グループCLS1は、“正常”のグループであり、グループCLS2は、“通信品質不十分”のグループであり、グループCLS3は、“ネットワークが混雑”のグループである。また、Model1は、グループCLS1とグループCLS2とを扱い、Model2は、グループCLS1とグループCLS3とを扱い、Model3は、グループCLS2とグループCLS3とを扱う。
【0312】
従って、Model1が使用されるとき、ステップS1325において算出された合併共分散行列C12が、ステップS1328において、“C”に代入される。また、Model2が使用されるとき、ステップS1326において算出された合併共分散行列C13が、ステップS1328において、“C”に代入される。更に、Model3が使用されるとき、ステップS1327において算出された合併共分散行列C23が、ステップS1328において、“C”に代入される。
【0313】
また、“通信品質不十分”および“ネットワークが混雑”の失敗原因は、上述したように、端末装置との通信チャネルに起因した失敗原因であるので、ステップS1321において、通信特性CMbestを有する端末装置を3個のグループCLS1~CLS3に分類することは、「ネットワークスキャンが正常であることを表す第1のグループと、ネットワークスキャンが端末装置との通信チャネルに起因した原因によって失敗したことを表す第2および第3のグループとに分類する」ことに相当する。この場合、グループCLS2は、第2のグループを構成し、グループCLS3は、第3のグループを構成する。
【0314】
図23は、
図19のステップS136の詳細な動作を説明するためのフローチャートである。
【0315】
図23を参照して、
図22のステップS135またはステップS140の後、推定手段15は、Model=1であるか否かを判定する(ステップS1361)。
【0316】
ステップS1361において、Model=1であると判定されたとき、推定手段15は、
図22のステップS1325において算出した合併共分散行列C
12を式(13A)のC
12に代入して、判別関数f
1を算出する(ステップS1362)。この判別関数f
1は、グループCLS
1(=g
1)の共分散行列とグループCLS
2(=g
2)の共分散行列とを合併した合併共分散行列C
12と、グループCLS
1(=g
1)の平均μ
1と、グループCLS
1(=g
1)の事前平均Π
1とを用いて表される判別関数である。
【0317】
その後、推定手段15は、
図22のステップS1325において算出した合併共分散行列C
12を式(13B)のC
12に代入して、判別関数f
2を算出する(ステップS1363)。この判別関数f
2は、グループCLS
1(=g
1)の共分散行列とグループCLS
2(=g
2)の共分散行列とを合併した合併共分散行列C
12と、グループCLS
2(=g
2)の平均μ
2と、グループCLS
2(=g
2)の事前平均Π
2とを用いて表される判別関数である。
【0318】
一方、ステップS1361において、Model=1でないと判定されると、推定手段15は、Model=2であるか否かを判定する(ステップS1364)。
【0319】
ステップS1364において、Model=2であると判定されたとき、推定手段15は、
図22のステップS1326において算出した合併共分散行列C
13を式(14A)のC
13に代入して、判別関数f
1を算出する(ステップS1365)。この判別関数f
1は、グループCLS
1(=g
1)の共分散行列とグループCLS
3(=g
3)の共分散行列とを合併した合併共分散行列C
13と、グループCLS
1(=g
1)の平均μ
1と、グループCLS
1(=g
1)の事前平均Π
1とを用いて表される判別関数である。
【0320】
その後、推定手段15は、
図22のステップS1326において算出した合併共分散行列C
13を式(14B)のC
13に代入して、判別関数f
2を算出する(ステップS1366)。この判別関数f
2は、グループCLS
1(=g
1)の共分散行列とグループCLS
3(=g
3)の共分散行列とを合併した合併共分散行列C
13と、グループCLS
3(=g
3)の平均μ
3と、グループCLS
3(=g
3)の事前平均Π
3とを用いて表される判別関数である。
【0321】
一方、ステップS1364において、Model=2でないと判定されたとき、推定段15は、
図22のステップS1327において算出した合併共分散行列C
23を式(15A)のC
23に代入して、判別関数f
1を算出する(ステップS1367)。この判別関数f
1は、グループCLS
2(=g
2)の共分散行列とグループCLS
3(=g
3)の共分散行列とを合併した合併共分散行列C
23と、グループCLS
2(=g
2)の平均μ
2と、グループCLS
2(=g
2)の事前平均Π
2とを用いて表される判別関数である。
【0322】
その後、推定手段15は、
図22のステップS1327において算出した合併共分散行列C
23を式(15B)のC
23に代入して、判別関数f
2を算出する(ステップS1368)。この判別関数f
2は、グループCLS
2(=g
2)の共分散行列とグループCLS
3(=g
3)の共分散行列とを合併した合併共分散行列C
23と、グループCLS
3(=g
3)の平均μ
3と、グループCLS
3(=g
3)の事前平均Π
3とを用いて表される判別関数である。
【0323】
そして、ステップS1363、ステップS1366およびステップS1368のいずれかの後、推定手段15は、Dスコア=f
1-f
2を算出する(ステップS1369)。その後、一連の動作は、
図19のステップS137へ移行する。
【0324】
図23に示すフローチャートにおいては、
図19のステップS133において、Model=1が設定されているので、
図19のステップS136が最初に実行される場合、
図23のステップS1361において、Model=1であると判定され、ステップS1362およびステップS1363が順次実行された後、ステップS1369において、Model1を用いてDスコアが算出される。
【0325】
そして、ステップS1369の後、
図19のステップS139において、m
b=N
terminalであると判定されるまで、
図19のステップS136~ステップS140が繰り返し実行された後、ステップS141において、Model=1であると判定され、ステップS142およびステップS143が順次実行され、またはステップS142およびステップS144が順次実行される。
【0326】
ステップS142およびステップS143が順次実行された場合、Model=3が設定されるので(ステップS143参照)、ステップS143からステップS134へ移行した後に、ステップS136が実行されるとき、
図23のステップS1361において、Model=1でないと判定され、更に、ステップS1364において、Model=2でないと判定され、ステップS1367およびステップS1368が順次実行された後、ステップS1369において、Model3を用いてDスコアが算出される。
【0327】
一方、
図19のステップS142およびステップS144が順次実行された場合、Model=2が設定されるので(ステップS144参照)、ステップS144からステップS134へ移行した後に、ステップS136が実行されるとき、
図23のステップS1361において、Model=1でないと判定され、更に、ステップS1364において、Model=2であると判定され、ステップS1365およびステップS1366が順次実行された後、ステップS1369において、Model2を用いてDスコアが算出される。
【0328】
従って、
図23に示すフローチャートは、設定されるModel(Model1、Model2およびModel3のいずれか)に応じてDスコアを算出するフローチャートである。
【0329】
また、ネットワークスキャンの結果を推定する
図19から
図21に示すフローチャートにおいては、ステップS133においてModel=1を設定した後に、ステップS136においてDスコアを算出するのは、Model1を用いれば、まず、ネットワークスキャンが“正常”であるか“失敗(=通信品質不十分が原因で失敗)”であるかを推定でき、ネットワークスキャンが“失敗(=通信品質不十分が原因で失敗)”であると推定したときに、ネットワークスキャンが失敗した原因を更に推定すればよいからである。
【0330】
また、ステップS133において、Model=1が設定された後に、1つの基地局bに属する全ての端末装置についてModel1を用いてDスコアが算出されるとともに、“0”よりも小さいDスコアの個数がカウント値DS_countとしてカウントされる(ステップS136~ステップS140参照)。
【0331】
その後、ステップS141を1回目に実行するとき、Model=1が設定されているので、ステップS141において、Model=1であると判定され、ステップS142~ステップS144において、Moedel=2またはModel=3が設定される。
【0332】
従って、Model2またはModel3は、Model1を用いて算出されたDスコアの個数(=DS_count)に応じて設定される。つまり、Model2またはModel3は、Model1に基づいて設定される。
【0333】
そして、ステップS142~ステップS144において、Moedel=2またはModel=3が設定された後、Model2またはModel3を用いてDスコアが算出されるとともに、“0”よりも小さいDスコアの個数がカウント値DS_countとしてカウントされる(ステップS136~ステップS140参照)。より詳細には、Moedel=2が設定されたとき、グループCLS1に分類された通信特性CMbestと、グループCLS3に分類された通信特性CMbestと、式(10)に示す合併共分散行列C13とを用いてDスコアが算出され、Moedel=3が設定されたとき、グループCLS2に分類された通信特性CMbestと、グループCLS3に分類された通信特性CMbestと、式(11)に示す合併共分散行列C23とを用いてDスコアが算出される。そして、算出されたDスコアに基づいて、“0”よりも小さいDスコアの個数がカウント値DS_countとしてカウントされる。
【0334】
その後、ステップS141において、Model=1でないと判定され、
図20および
図21に示すステップS145~ステップS157において、Model2またはModel3を用いて、ネットワークスキャンの結果(“正常”、“通信品質不十分”、“ネットワーク混雑”、“ポート閉”、“ネットワーク接続無し”のいずれか)が推定される。
【0335】
そして、Model2が設定されてネットワークスキャンの結果が推定される場合、Model2を用いて算出されたDスコアのうち、“0”よりも小さいDスコアの個数(=カウント値DS_count)が用いられる。
【0336】
また、Model3が設定されてネットワークスキャンの結果が推定される場合、Model3を用いて算出されたDスコアのうち、“0”よりも小さいDスコアの個数(=カウント値DS_count)が用いられる。
【0337】
図24は、Dスコアのシミュレーション結果を示す図である。
図24を参照して、Dスコアのシミュレーションを行った結果、ネットワークスキャンが“正常”であるとき、端末装置の半数よりも多い端末装置において、Dスコアが“0”よりも大きいことが分かった(
図24の(a)参照)。
【0338】
また、ネットワークスキャンが失敗した原因が、“通信品質不十分”であるとき、端末装置の半数よりも少ない端末装置において、Dスコアが“0”よりも小さいことが分かった(
図24の(b)参照)。
【0339】
更に、ネットワークスキャンが失敗した原因が、“ネットワーク混雑”であるとき、端末装置の半数よりも多い端末装置において、Dスコアが“0”よりも小さいことが分かった(
図24の(c)参照)。
【0340】
従って、“0”よりも小さいDスコアの個数(=カウント値DS_count)を用いれば、ネットワークスキャンの結果が“正常”、“通信品質不十分”および“ネットワーク混雑”のいずれであるかを推定することができる。
【0341】
Model2は、ネットワークスキャンが“正常”であるグループCLS1と、ネットワークスキャンが“ネットワーク混雑”の原因によって失敗したグループCLS3とを扱い、グループCLS1とグループCLS3とを判別するDスコアD_2を算出し、その算出したDスコアD_2のうち、“0”よりも小さいDスコアD_2の個数(=カウント値DS_count)が“0”であれば、ネットワークスキャンが“正常”であると推定でき、“0”よりも小さいDスコアD_2の個数(=カウント値DS_count)が端末装置の半数よりも大きければ、ネットワークスキャンが“ネットワーク混雑”の原因によって失敗したと推定できる。
【0342】
また、Model3は、ネットワークスキャンが“通信品質不十分”の原因によって失敗したグループCLS2と、ネットワークスキャンが“ネットワーク混雑”の原因によって失敗したグループCLS3とを扱い、グループCLS2とグループCLS3とを判別するDスコアD_3を算出し、その算出したDスコアD_3のうち、“0”よりも小さいDスコアD_3の個数(=カウント値DS_count)が端末装置の半数よりも少なければ、ネットワークスキャンが“通信品質不十分”の原因で失敗したと推定でき、“0”よりも小さいDスコアD_3の個数(=カウント値DS_count)が端末装置の半数よりも大きければ、ネットワークスキャンが“ネットワーク混雑”の原因によって失敗したと推定できる。
【0343】
そこで、まず、
図20のステップS145において、DS_count=0であるか否かを判定し、DS_count=0でないと判定されたとき、DS_count<(N
terminal×D_thres)であるか否かを更に判定し、DS_count<(N
terminal×D_thres)であるとき、“0”よりも小さいDスコアを有する端末装置について、ネットワークスキャンが“通信品質不十分”の原因で失敗したと推定し、DS_count<(N
terminal×D_thres)でないとき(即ち、DS_countが(N
terminal×D_thres)以上であるとき)、基地局に属する全ての端末装置について、ネットワークスキャンが“ネットワーク混雑”の原因で失敗したと推定することにした(ステップS145,S147~S149参照)。
【0344】
Model2が設定されたとき、ステップS145,S147~S149において、ネットワークスキャンが“正常”であるグループCLS1と、ネットワークスキャンが“ネットワーク混雑”の原因によって失敗したグループCLS3とを判別するDスコアD_2が用いられるので、“0”よりも小さいDスコアD_2の個数(=カウント値DS_count)に応じて、DS_count=0(即ち、ネットワークスキャンが“正常”)とDS_count≠0(即ち、ネットワークスキャンが“通信品質不十分”または“ネットワーク混雑”の原因によって失敗)とを正確に推定できる。そして、DS_count=0でない(即ち、DS_count≠0)とき、“0”よりも小さいDスコアD_2の個数であるカウント値DS_countが(Nterminal×D_thres)よりも小さいか否かによって、ネットワークスキャンが失敗した原因が“通信品質不十分”または“ネットワーク混雑”であると正確に推定できる。
【0345】
一方、Model3が設定されたとき、ステップS145,S147~S149において、ネットワークスキャンが“通信品質不十分”の原因によって失敗したグループCLS2と、ネットワークスキャンが“ネットワーク混雑”の原因によって失敗したグループCLS3とを判別するDスコアD_3が用いられるので、DS_count=0でない(即ち、DS_count≠0)とき、“0”よりも小さいDスコアD_3の個数であるカウント値DS_countが(Nterminal×D_thres)よりも小さいか否かによって、ネットワークスキャンが失敗した原因が“通信品質不十分”または“ネットワーク混雑”であると正確に推定できる。また、DS_count=0であるか否かの判定は、明確であるので、DS_count=0(即ち、ネットワークスキャンが“正常”)とDS_count≠0(即ち、ネットワークスキャンが“通信品質不十分”または“ネットワーク混雑”の原因によって失敗)とを正確に推定できる。
【0346】
従って、Model2またはModel3のいずれを用いても、ネットワークスキャンが“正常”であるか“失敗”であるかを正確に推定でき、ネットワークスキャンが“失敗”であると推定したとき、更に、ネットワークスキャンが失敗した原因が“通信品質不十分”または“ネットワーク混雑”であると正確に推定できる。
【0347】
更に、ステップS145において、DS_count=0であると判定されたとき、直ちに、ネットワークスキャンが“正常”であると推定せずに、各端末装置のポートについて、スキャン応答があったポートの数に応じて、ネットワークスキャンが“正常”、“ポート閉”の原因による失敗および“ネットワーク接続無し”の原因による失敗のいずれかであると推定する(ステップS152~S155,S157参照)。従って、各ポートでスキャン応答の有無を検知することによって、ネットワークスキャンが“正常”、“ポート閉”の原因による失敗および“ネットワーク接続無し”の原因による失敗のいずれであるかを正確に推定できる。
【0348】
更に、ステップS147の“YES”からステップS149へ至った場合、ステップS149において、“0”よりも小さくないDスコア(即ち、“0”以上、かつ、(N
terminal×D_thres)よりも小さいDスコア)を有する端末装置についてネットワークスキャンの結果が推定されていないが、ステップS149の後、ネットワークスキャンの結果が推定済でない各端末装置m
bについて、
図21のステップS152~ステップS157が実行されるので、“0”よりも小さくないDスコア(即ち、“0”以上、かつ、(N
terminal×D_thres)よりも小さいDスコア)を有する端末装置についてのネットワークスキャンの結果は、“正常”、ネットワークスキャンを失敗した原因が“ポート閉”、およびネットワークスキャンを失敗した原因が“ネットワーク接続無し”のいずれかに推定される(ステップS154,S155,S157参照)。
【0349】
なお、ステップS145の“YES”→S151の“NO”→S152の“NO”→S153の“YES”→S154からなるステップ、およびステップS145の“NO”→S147~S149からなるステップは、DスコアD_2またはDスコアD_3に基づいて、ネットワークスキャンが正常または失敗であると推定するとともに、ネットワークスキャンが失敗であると推定したとき、ネットワークスキャンが端末装置との通信チャネルに起因した原因によって失敗したと推定することに相当する。
【0350】
この発明の実施の形態においては、ネットワークスキャンの結果を推定する動作は、ソフトウェアによって実現されてもよい。この場合、ネットワークスキャン装置1は、CPU(Central Processing Unit)、ROM(Read Only Memory)およびRAM(Random Access Memory)を備える。そして、ROMは、
図16に示すフローチャート(
図17から
図23に示すフローチャートを含む)の各ステップからなるプログラムProg_Aを記憶する。
【0351】
CPUは、ROMからプログラムProg_Aを読み出し、その読み出したプログラムProg_Aを実行して、ネットワークスキャンの結果を推定する動作を実行する。RAMは、上述した各種の算出結果を一時的に記憶する。
【0352】
また、プログラムProg_Aは、CD,DVD等の記録媒体に記録されて流通してもよい。プログラムProg_Aを記録した記録媒体がコンピュータに装着されると、コンピュータは、記録媒体からプログラムProg_Aを読み出して実行し、ネットワークスキャンの結果を推定する動作を実行する。
【0353】
従って、プログラムProg_Aを記録した記録媒体は、コンピュータ読み取り可能な記録媒体である。
【0354】
なお、上記においては、推定手段15は、通信特性CMbestを有する端末装置をグループCLS1~CLS3に分類するとき、ネットワークスキャンが“ネットワークが混雑”であるときのスキャンデータ(“ネットワークが混雑”であるときの通信特性CMbest)を用いてLDAアルゴリズムを学習し、その学習した学習済のLDAアルゴリズムを用いて、通信特性CMbestを有する端末装置を3個のグループCLS1~CLS3に分類すると説明したが、この発明の実施の形態においては、これに限らず、推定手段15は、ネットワークスキャンの結果(=“正常”、“ネットワークが混雑”、“通信品質不十分”のいずれか)のうち、最も精度良く推定したい結果が得られるときのスキャンデータ(最も精度良く推定したい結果が得られるときの通信特性CMbest)を用いてLDAアルゴリズムを学習し、その学習した学習済のLDAアルゴリズムを用いて、通信特性CMbestを有する端末装置を3個のグループCLS1~CLS3に分類してもよい。
【0355】
より具体的には、推定手段15は、“正常”が最も精度良く推定したい結果であるとき、ネットワークスキャンが“正常”であるときのスキャンデータ(“正常”であるときの通信特性CMbest)を用いてLDAアルゴリズムを学習し、その学習した学習済のLDAアルゴリズムを用いて、通信特性CMbestを有する端末装置を3個のグループCLS1~CLS3に分類する。
【0356】
また、推定手段15は、“ネットワークが混雑”が最も精度良く推定したい結果であるとき、ネットワークスキャンが“ネットワークが混雑”であるときのスキャンデータ(“ネットワークが混雑”であるときの通信特性CMbest)を用いてLDAアルゴリズムを学習し、その学習した学習済のLDAアルゴリズムを用いて、通信特性CMbestを有する端末装置を3個のグループCLS1~CLS3に分類する。
【0357】
更に、推定手段15は、“通信品質不十分”が最も精度良く推定したい結果であるとき、ネットワークスキャンが“通信品質不十分”であるときのスキャンデータ(“通信品質不十分”であるときの通信特性CMbest)を用いてLDAアルゴリズムを学習し、その学習した学習済のLDAアルゴリズムを用いて、通信特性CMbestを有する端末装置を3個のグループCLS1~CLS3に分類する。
【0358】
このように、推定手段15は、最も精度良く推定したい結果に応じて、教師データであるスキャンデータを決定するとともに、その決定したスキャンデータを用いてLDAアルゴリズムを学習し、その学習した学習済のLDAアルゴリズムを用いて、通信特性CMbestを有する端末装置を3個のグループCLS1~CLS3に分類してもよい。
【0359】
また、上記においては、ネットワークスキャンは、スキャンタイミングtS(またはスキャンタイミングt’S)毎に行われると説明したが、この発明の実施の形態においては、これに限らず、ネットワークスキャンは、スキャン期間TS_total単位で行われてもよく、スキャン期間TS_total内の複数のスキャンタイミングに亘って行われてもよい。従って、この発明の実施の形態においては、ネットワークスキャンを複数のスキャンタイミングに亘って実行して取得した通信特性を用いて、上述した方法によって、ネットワークスキャンが“正常”または“失敗”であるかを推定し、ネットワークスキャンが“ “失敗”であると推定したとき、ネットワークスキャンが“ “失敗”した原因を更に推定するものであればよい。
【0360】
この発明の実施の形態においては、しきい値Corrrは、「第1のしきい値」を構成し、しきい値Srは、「第2のしきい値」を構成し、しきい値(Nterminal×D_thres)は、「第3のしきい値」を構成する。
【0361】
また、この発明の実施の形態においては、通信特性CMbestは、「第1の通信特性」を構成し、相関係数rijがしきい値Corrrよりも大きい通信特性は、「d(dは、正の整数)個の第2の通信特性」を構成し、スコアQの大きい順に抽出された通信特性は、「K(Kは、正の整数)個の第2の通信特性」を構成する。
【0362】
更に、この発明の実施の形態においては、Dスコアまたはカウント値DS_countは、「判別スコア」を構成する。
【0363】
更に、この発明の実施の形態においては、DスコアD_2は、「第1の判別スコア」を構成し、DスコアD_3は、「第2の判別スコア」を構成し、DスコアD_1は、「第3の判別スコア」を構成する。
【0364】
更に、この発明の実施の形態においては、
図12に示すパケットロス率PLR
m、ジッタJT
m、スキャン最大遅延DLmax
mおよびスキャン最小遅延DLmin
mは、相関係数r
ijがしきい値Corr
rよりも大きい「d(dは、正の整数)個の第2の通信特性」を構成する。
【0365】
更に、この発明の実施の形態においては、上述したK個の通信特性は、「K個の第2の通信特性」を構成する。
【0366】
更に、この発明の実施の形態においては、グループCLS1は、ネットワークスキャンが正常である「第1のグループ」を構成し、グループCLS2,CLS3は、それぞれ、ネットワークスキャンが端末装置との通信チャネルに起因した原因によって失敗した「第2のグループ」および「第3のグループ」を構成する。
【0367】
更に、この発明の実施の形態においては、Model2は、「第1のモデル」を構成し、Model3は、「第2のモデル」を構成する。
【0368】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【0369】
この発明は、ネットワークスキャン装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体に適用される。
【符号の説明】
【0370】
1 ネットワークスキャン装置、10 通信システム、11 ネットワークスキャナ、12 スキャン解析マネージャ、13 ホスト情報データベース、14 抽出手段、15 推定手段、16 スキャンスケジューラ、20 スキャン対象ネットワーク、30 ユーザ。