(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025144485
(43)【公開日】2025-10-02
(54)【発明の名称】情報処理装置、情報処理装置の制御方法及びプログラム
(51)【国際特許分類】
H04L 41/142 20220101AFI20250925BHJP
H04L 43/0876 20220101ALI20250925BHJP
H04L 41/16 20220101ALI20250925BHJP
【FI】
H04L41/142
H04L43/0876
H04L41/16
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2024094110
(22)【出願日】2024-06-11
(31)【優先権主張番号】P 2024044105
(32)【優先日】2024-03-19
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【弁理士】
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【弁理士】
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【弁理士】
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【弁理士】
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【弁理士】
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】石川 亮
(57)【要約】
【課題】 取得したパケットの数に基づいてモデルを使い分け、情報処理装置の利用環境を適切に推定することを目的とする。
【解決手段】 情報処理装置が送受信する複数のパケットを取得する取得手段と、取得された前記複数のパケットに基づくデータをモデルに入力して前記情報処理装置の利用環境を推定する推定手段と、を有し、前記推定手段は、取得された前記複数のパケットの数が閾値以上の場合は、当該複数のパケットに基づくデータを第1モデルに入力して推定を行い、取得された前記複数のパケットの数が前記閾値未満の場合は、当該複数のパケットに基づくデータを前記第1モデルとは異なる第2モデルに入力して推定を行う。
【選択図】
図9
【特許請求の範囲】
【請求項1】
情報処理装置であって、
前記情報処理装置が送受信する複数のパケットを取得する取得手段と、
取得された前記複数のパケットに基づくデータをモデルに入力して前記情報処理装置の利用環境を推定する推定手段と、
を有し、
前記推定手段は、
取得された前記複数のパケットの数が閾値以上の場合は、当該複数のパケットに基づくデータを第1モデルに入力して推定を行い、
取得された前記複数のパケットの数が前記閾値未満の場合は、当該複数のパケットに基づくデータを前記第1モデルとは異なる第2モデルに入力して推定を行う
ことを特徴とする情報処理装置。
【請求項2】
推定された前記利用環境に対応する設定値を設定する設定手段
をさらに有する請求項1に記載の情報処理装置。
【請求項3】
前記取得手段は、所定の時間内で前記複数のパケットの取得を行い、
前記推定手段は、
前記所定の時間内で取得された前記複数のパケットの数が前記閾値以上の場合は、当該複数のパケットに基づくデータを前記第1モデルに入力して推定を行い、
前記所定の時間内で取得された前記複数のパケットの数が前記閾値未満の場合は、当該複数のパケットに基づくデータを前記第2モデルに入力して推定を行う
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記推定手段は、
取得された前記複数のパケットの数が前記閾値未満であり、かつ、前記閾値より低い別の閾値以上の場合は、当該複数のパケットに基づくデータを前記第2モデルに入力して推定を行い、
取得された前記複数のパケットの数が前記別の閾値未満の場合は、前記モデルを用いずに、前記複数のパケットに基づいて利用環境を推定する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項5】
前記第1モデルは、前記閾値の数の複数のパケットに基づくデータを学習データとして学習することにより生成される
ことを特徴とする請求項1に記載の情報処理装置。
【請求項6】
前記第2モデルは、前記別の閾値の数の複数のパケットに基づくデータを学習データとして学習することにより生成される
ことを特徴とする請求項4に記載の情報処理装置。
【請求項7】
推定される前記利用環境は、少なくとも、社内LANに接続された環境、直接インターネットに接続された環境、インターネットとの接続を遮断された環境、在宅勤務を想定した環境、公共スペースでの利用を想定した環境、高機密情報を管理する環境のうちの1つである
ことを特徴とする請求項1に記載の情報処理装置。
【請求項8】
前記情報処理装置は、スキャナおよびプリンタをさらに備える画像処理装置であり、
取得される前記複数のパケットは、前記スキャナまたは前記プリンタにおいて実行されるジョブに関するパケットを含む
ことを特徴とする請求項1に記載の情報処理装置。
【請求項9】
前記推定手段は、
取得された前記複数のパケットの数が前記閾値以上であり、かつ、当該複数のパケットが所定の条件を満たす場合は、当該所定の条件に対応する利用環境を推定結果として出力し、
取得された前記複数のパケットの数が前記閾値以上であり、かつ、当該複数のパケットが前記所定の条件を満たさない場合は、当該複数のパケットに基づくデータを前記第1モデルに入力して推定を行う
ことを特徴とする請求項1に記載の情報処理装置。
【請求項10】
前記情報処理装置の利用環境の選択を受け付けるための画面を表示する表示制御手段と、
前記画面において選択された利用環境に対応する設定値を前記情報処理装置に設定する設定手段と、
をさらに有し、
前記表示制御手段は、前記画面において選択され、対応する設定値が前記情報処理装置に設定されている利用環境が、前記推定手段により推定された利用環境と異なる場合に、前記推定された利用環境を含むポップアップ画面を表示する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項11】
情報処理装置の制御方法であって、
前記情報処理装置が送受信する複数のパケットを取得する取得工程と、
取得された前記複数のパケットに基づくデータをモデルに入力して前記情報処理装置の利用環境を推定する推定工程と、
を有し、
前記推定工程においては、
取得された前記複数のパケットの数が閾値以上の場合は、当該複数のパケットに基づくデータを第1モデルに入力して推定を行い、
取得された前記複数のパケットの数が前記閾値未満の場合は、当該複数のパケットに基づくデータを前記第1モデルとは異なる第2モデルに入力して推定を行う
ことを特徴とする制御方法。
【請求項12】
情報処理装置を、
前記情報処理装置が送受信する複数のパケットを取得する取得手段と、
取得された前記複数のパケットに基づくデータをモデルに入力して前記情報処理装置の利用環境を推定する推定手段、
として機能させるためのプログラムであって、
前記推定手段は、
取得された前記複数のパケットの数が閾値以上の場合は、当該複数のパケットに基づくデータを第1モデルに入力して推定を行い、
取得された前記複数のパケットの数が前記閾値未満の場合は、当該複数のパケットに基づくデータを前記第1モデルとは異なる第2モデルに入力して推定を行う
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置の利用環境を推定する技術に関するものである。
【背景技術】
【0002】
セキュリティ対策として、情報機器が持つ各種セキュリティ関連機能は適切に設定されている必要がある。利用環境が単一固定的な情報機器であれば、その単一の利用環境に合わせこんだ設定値を出荷時に適用しておくことで、ユーザは何も意識することなく適切にセキュリティ対策が施された情報機器を利用することができる。
【0003】
例えば複合機の利用環境に着目すると、オフィス環境での利用に限らず、在宅勤務での利用や、不特定多数の人で共有する公共スペースでの利用など利用環境が多様化している。利用環境に応じて適切なセキュリティ設定は異なるため、利用環境にあった適切な設定を行う必要がある。
【0004】
特許文献1には、試験ネットワークの動作状況を収集してポリシーを作成し、各ネットワークのポリシーの更新を支援する技術が提案されている。そして、特許文献1では、通信パケットから抽出される特徴量とポリシーとを比較し、ネットワークの異常を検知する。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1では、利用環境を推定する際に用いるパケットの数に基づいて、利用環境の推定のモデルやアルゴリズムを使い分けることは想定されていなかった。
【0007】
本発明は、取得したパケットの数に基づいてモデルを使い分け、情報処理装置の利用環境を適切に推定することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するために、本発明の情報処理装置は、情報処理装置であって、前記情報処理装置が送受信する複数のパケットを取得する取得手段と、取得された前記複数のパケットに基づくデータをモデルに入力して前記情報処理装置の利用環境を推定する推定手段と、を有し、前記推定手段は、取得された前記複数のパケットの数が閾値以上の場合は、当該複数のパケットに基づくデータを第1モデルに入力して推定を行い、取得された前記複数のパケットの数が前記閾値未満の場合は、当該複数のパケットに基づくデータを前記第1モデルとは異なる第2モデルに入力して推定を行うことを特徴とする。
【発明の効果】
【0009】
本発明に係る情報処理装置によれば、取得したパケットの数に基づいてモデルを使い分け、情報処理装置の利用環境を適切に推定することができる。
【図面の簡単な説明】
【0010】
【
図1】本発明に係わるMFPと管理用クラウドシステムの接続形態を示すブロック構成図である。
【
図2】本発明に係わるMFPのコントローラ部の内部構成図である。
【
図3】本発明に係わる学習サーバの内部構成図である。
【
図4】本発明に係わるMFPのコントローラで実行されるソフトウェアのブロック構成図である。
【
図5】本発明に係わる学習サーバで実行されるソフトウェアのブロック構成図である。
【
図6】本発明のセキュリティ利用環境設定に係る画面構成図である。
【
図7】本発明に係わる学習モデル利用の概念図である。
【
図8】本発明に係わる学習モデルを利用したシステムの動きを表す概念図である。
【
図9】本発明に係わるMFPの推定、データ送信フロー図である。
【
図10】本発明に係わる学習フェーズの学習サーバのデータ受信フロー図である。
【
図11】本発明のセキュリティ利用環境設定に係る画面構成図である。
【
図12】本発明に係わるMFPの推定、データ送信フロー図である。
【発明を実施するための形態】
【0011】
<第1の実施形態>
以下、本発明の実施の形態を図面に基づいて解説する。
【0012】
図1は本発明に係るMFPとゲートウェイ、学習サーバの接続形態を示すブロック図である。MFP100と学習サーバ121はLAN110、ゲートウェイ111、Internet120を介して接続されている。同様に、MFP132、MFP133、MFP134と学習サーバ121はLAN130、ゲートウェイ131、Internet120を介して接続されている。以降MFP100を本実施例で着目するユーザが直接利用するMFPとし、MFP132、MFP133、MFP134を他のユーザがどこかで利用しているMFPとして説明する。学習サーバ121は、MFPベンダーが管理し同一ベンダーの利用者が共通で使うサーバであり、各MFPは利用者毎に管理されるものである。本実施例では説明のためにMFP132、MFP133、MFP134の3台を例示したが、実際は世界中に数百万台規模で稼働しているものであり、LAN130、ゲートウェイ131は利用者の単位で個別のものが利用されている。
【0013】
MFP100はユーザとの入出力を行う操作部102を有する。MFP100は電子データを紙媒体に出力するプリンタ部103を有する。MFP100は紙媒体を読み込み電子データに変換するスキャナ部104を有する。操作部102とプリンタ部103とスキャナ部104はコントローラ部101に接続され、コントローラ部101の制御に従い複合機としての機能を実現する。図中では簡単のために記載を省略したが、MFP132、133,134に関しても、内部構造として、操作部102、プリンタ部103、スキャナ部104を有する。
【0014】
ゲートウェイ111、ゲートウェイ131はMFPの通信をInternet120との間で中継するネットワークルーターである。学習サーバ121は、MFPの情報を収集し傾向を学習するものである。
【0015】
図2はMFPのコントローラ部101の詳細を示すブロック図である。CPU201はコントローラ内の主な演算処理を行う。CPU201はバスを介してDRAM202と接続される。DRAM202はCPU201が演算する過程で演算命令を表すプログラムデータや、処理対象のデータを一時的に配置するための作業メモリとしてCPU201によって使用される。CPU201はバスを介してI/Oコントローラ203と接続される。I/Oコントローラ203はCPU201の指示に従い各種デバイスに対する入出力を行う。I/Oコントローラ203にはSATA(Serial Advanced Technology Attachment)I/F205が接続され、その先にFlashROM211が接続される。CPU201はFlashROM211をMFPの機能を実現するためのプログラム、およびドキュメントファイルを永続的に記憶するために使用する。I/Oコントローラ203にはネットワークI/F204が接続される。ネットワークI/F204の先には、有線LANデバイス210が接続される。CPU201はネットワークI/F204を介して有線LANデバイス210を制御することで、LAN110上の通信を実現する。I/Oコントローラ203にはパネルI/F206が接続され、CPU201はパネルI/F206を介して操作部102に対するユーザ向けの入出力を実現する。I/Oコントローラ203にはプリンタI/F207が接続され、CPU201はプリンタI/F207を介してプリンタ部103を利用した紙媒体の出力処理を実現する。
【0016】
例えば、コピー機能を実施する場合は、CPU201がSATA I/F205を介してFlashROM211からプログラムデータをDRAM202に読み込む。CPU201がDRAM202に読み込まれたプログラムに従い、パネルI/F206を介して操作部102に対するユーザからのコピー指示を検出する。CPU201はコピー指示を検出するとスキャナI/F208を介してスキャナ部104から原稿を電子データとして受け取りDRAM202に格納する。CPU201はDRAM202に格納した画像データに対して出力に適した色変換処理などを実施する。CPU201はDRAM202に格納した画像データをプリンタI/F207を介してプリンタ部103に転送し、紙媒体への出力処理を実施する。
【0017】
図3は、学習サーバ121を実現するサーバ250の詳細を示すブロック図である。CPU251は内の主な演算処理を行う。CPU251はバスを介してDRAM252と接続される。DRAM252はCPU251が演算する過程で演算命令を表すプログラムデータや、処理対象のデータを一時的に配置するための作業メモリとしてCPU251によって使用される。CPU251はバスを介してI/Oコントローラ253と接続される。I/Oコントローラ253はCPU251の指示に従い各種デバイスに対する入出力を行う。I/Oコントローラ253にはSATA(Serial Advanced Technology Attachment)I/F254が接続され、その先にHDD255が接続される。CPU251はHDD255を各種サーバ機能実現のためのプログラムや、設定値を永続的に記憶するために使用する。このように、CPU251、DRAM252、HDD255等のハードウェアは、いわゆるコンピュータを構成している。本実施形態では、説明のため、1つのCPU251が1つのメモリ(DRAM252)を用いて後述するフローチャートに示す各処理を実行する場合を例示するが、他の様態であっても構わない。例えば複数のプロセッサ、RAM、ROM、ストレージを協働させて後述するフローチャートに示す各処理を実行することもできる。また、複数のサーバコンピュータを用いて各処理を実行することもできる。サーバ250はコンテナ化や仮想化技術を用いることで、複数の異なるテナントに管理用クラウドシステム121を提供することができる。
【0018】
図4はMFPのコントローラ部101で実行されるソフトウェアの構造をあらわすブロック図である。コントローラ部101で実行されるソフトウェアは全て、CPU201がFlashROM211に記憶されたプログラムをDRAM202に読み込んだ後に実行する。
【0019】
操作制御部301は操作部102にユーザ向けの画面イメージを表示、およびユーザ操作の検知と画面上に表示したボタン等の画面部品に紐づけられた処理を実行する。データ記憶部302は他の制御部からの要求でデータをFlashROM211に記憶、および読み出しを行う。例えば、ユーザが何らかの機器設定を変更したい場合は、操作部102にユーザが入力した内容を操作制御部301が検知し、操作制御部301からの要求でデータ記憶部302が設定値としてFlashROM211に保存する。ジョブ制御部303は他の制御部からの指示に従って、ジョブ実行の制御を行う。画像処理部304はジョブ制御部303からの指示に従って、画像データを用途ごとに適した形式に加工する。印刷処理部305はジョブ制御部303からの指示に従い、プリンタI/F207を介して、紙媒体に画像を印刷し出力する。読み取り制御部306はジョブ制御部303からの指示時に従い、スキャナI/F208を介して、設置された原稿を読み込む。
【0020】
ネットワーク制御部307はデータ記憶部302に記憶された設定値に従い、システム起動時や、設定変更検出時にIPアドレスなどネットワーク設定をTCP/IP制御部308に行う。TCP/IP制御部308は他の制御からの指示に従い、ネットワークI/F204を介して、ネットワークパケットの送受信処理を行う。ネットワークI/F204を介してネットワーク制御部307が送受信するネットワークパケットには、プリンタ部103やスキャナ部104において実行されるジョブに関するパケットが含まれる。
【0021】
セキュリティ設定制御部309は、社内LAN、在宅、公共スペースといった利用環境と、それに対するセキュリティ関連の設定項目との対応関係を管理した上で、ユーザが利用環境を指定したことを契機に対応するセキュリティ関連設定を一括で設定できる。セキュリティ設定制御部309は設定値を参照および変更するためにデータ記憶部302を利用する。セキュリティ設定制御部309は、ユーザが操作部102を介して選択した利用環境に対応する設定値をMFP100に設定する。例えば、推定処理部312が推定した結果を操作制御部301が操作部102に表示し、ユーザはそれを確認して、推定した結果の利用環境を選択する。また、セキュリティ設定制御部309は、推定処理部312が推定した結果として得られる利用環境に対応する設定値を、ユーザ操作なしにMFP100に自動で設定しても良い。
【0022】
学習サーバ通信部310はネットワーク制御部307を利用し、学習サーバ121とMFP100との間で情報の受け渡しを行う。通信データ抽出部311が抽出した通信データを学習サーバ121に送信する。
【0023】
通信ログ抽出部311はネットワーク制御部307を利用し、MFP100が送受信する通信ログを抽出する。抽出処理としては、ネットワークパケットに付随する情報のうち、宛先と通信元のIPアドレス、TCP/UDPの種別、ポート番号、IPヘッダ情報を抽出する。この抽出処理により、ペイロードと呼ばれるパケットのコンテンツ部分は除外される。
【0024】
推定処理部312は、画面表示時やネットワーク機能の初期化を契機に、推定処理を行う。
【0025】
図5は学習サーバ121で実行するソフトウェアの構造をあらわすブロック図である。学習サーバ121で実行されるソフトウェアは全て、CPU251がHDD255に保存されたプログラムを、DRAM252に読み込んだのち実行する。
【0026】
MFP通信部401は、MFP100との間の通信を制御し、MFP100から受信した通信ログや利用環境などの情報をデータ記憶部402に保存する。
【0027】
データ記憶部402は他の制御部からの要求でデータをクラウド上の分散リソースに記憶、および読み出しを行う。
【0028】
学習部403はデータ記憶部402に保存された通信ログと利用環境の紐づけから、利用環境に対する通信ログの傾向を学習モデルとして生成する。生成した学習モデルはデータ記憶部402に保持される。
【0029】
図6は操作部102に表示される、おすすめセキュリティ設定画面701である。利用環境社内LANボタン702は、利用環境が社内LANである場合に適切とされる一連のセキュリティ設定を一括で設定するボタンである。利用環境在宅ボタン703は、利用環境が在宅である場合に適切とされる一連のセキュリティ設定を一括で設定するボタンである。利用環境公共スペースボタン704は、利用環境が公共スペースである場合に適切とされる一連のセキュリティ設定を一括で設定するボタンである。隔離ネットワークボタン705は、利用環境が隔離ネットワークである場合に適切とされる一連のセキュリティ設定を一括で設定するボタンである。インターネット直結ボタン709は、利用環境がインターネット直結である場合に適切とされる一連のセキュリティ設定を一括で設定するボタンである。高機密情報管理ボタン710は、利用環境が高機密情報管理である場合に適切とされる一連のセキュリティ設定を一括で設定するボタンである。セキュリティ設定制御部309は、ユーザがおすすめセキュリティ設定画面701において1つの利用環境を選択したことを検知すると、選択された利用環境に対応する設定値をMFP100に設定する。具体的には、選択された利用環境で推奨される複数の設定値をMFP100に一括して設定する。
【0030】
選択中の利用環境表示706は、ボタン702、703、704、705、709、710によって設定された利用環境を表示している。この利用環境としてどのパターンが選択されたのかという情報は、データ記憶部302にそれぞれ対応するボタンを押下したタイミングでいつ押下されたのかという日時情報と共に保存されている。利用環境推定結果707は、通信データの傾向から推定処理によって推定された利用環境を表示している。情報表示部708はユーザに各種情報を通知する表域である。
図6の表示例は、ユーザの選択が適切でない可能性が高いため、おすすめセキュリティ設定画面701によって設定を見直すことをユーザに促している。
【0031】
ここで、利用環境を在宅勤務などの利用シーン別の実施例として示したが、単純にセキュリティレベル1、セキュリティレベル2などの強度のバリエーションとしていくつか用意する形態であっても良い。その場合は、通信ログの学習、および推定がセキュリティ強度に対して行われることになるが、本質的にセキュリティ強度も利用シーンに紐づくため本質的には同じことをしている。
【0032】
図7は、実施形態1の学習モデルを用いた入出力の構造を示す概念図である。学習モデルは推定処理において、通信ログ801を入力として、利用環境802を出力する。
【0033】
利用環境802は具体的には表1で表すパターンによって構成される。
【0034】
【0035】
社内LANは一般的なオフィス環境であり、多くの人が集まり、一部のクラウドサービスを用いるためにインターネット接続も行っている環境を想定している。接続する情報機器は他の利用環境に比べてもっとも多い。この様な環境では一般的に外部ネットワークとの境界に管理されたファイアウォールが設けられ、入室者も社員のみに制限されている。利用環境側で行うセキュリティ対策と、各端末で行うセキュリティ対策がバランスよく用いられる。
【0036】
隔離ネットワークは何らかの理由で旧式のプロトコルを利用するなどの事情から、インターネットとの接続をネットワークトポロジーとして遮断し、分離されたネットワークでの利用する環境を想定している。接続する情報機器の数は比較的すくない。利用環境側で強固にセキュリティ対策を行うことで、端末側で行うべきセキュリティ対策の水準を緩和することができる。
【0037】
在宅は、在宅勤務時を想定したホームネットワークで、家庭内で利用している小規模なLANをそのまま在宅での業務に利用している環境を想定している。接続する情報機器の数は最もすくない。利用環境側で行うセキュリティ対策はそこまであてにできない前提で、バランスよく端末側のセキュリティ対策を行う必要がある。
【0038】
公共スペースは、不特定多数の人が出入りし、ネットワークを共有するオープンスペースを想定している。空港のラウンジや、ゲスト利用できるコワーキングスペースが該当し、厳しくない入室制限のもと利用することになる。接続する情報機器の数は比較的おおい。利用環境側で行うセキュリティ対策は基本的に信用せず、端末側である程度機能性を犠牲にしてでもセキュリティ対策を行う必要がある。
【0039】
インターネット直結は、オフィス内にローカルエリアネットワークを持たずに、直接インターネットに接続する環境を想定している。ネットワーク側でのファイアウォール保護などを期待しないため、端末側で不正アクセスを想定したセキュリティ対策を行う必要がある。
【0040】
高機密情報管理は、端末で顧客の個人情報など機密性の高い情報を扱うため、利用者の利便性を犠牲にしてでも最大限に安全性を高める環境を想定している。この様な環境では、ネットワーク側でIPSecによる通信路暗号を行っている場合が多いが、その上で、端末側でも可能な限り安全なセキュリティ対策を行う必要がある。
【0041】
通信ログ802は具体的には表2で表すデータによって構成される。1つの通信ログデータは、複数のネットワークパケットからなる入力パケットから生成される。
【0042】
【0043】
宛先アドレスの数は、入力パケットに含まれる通信パケットが宛先としていたアドレスのバリエーション数である。機器が外部のいろいろなサービスを利用すると、この値が大きくなる。この値が極端に小さいと、通信が制限されている隔離ネットワークである可能性が相対的に高い。
【0044】
通信元アドレスの数は、入力パケットに含まれる通信パケットが送信元としていたアドレスのバリエーション数である。ネットワーク内に大量の情報装置が存在すると、この値が大きくなる。トラフィック量と類似した傾向がみられるが、本質的にみている値が別のものであるため、組み合わせて傾向を見ることでより推定精度を向上することができる。
【0045】
プロトコルの種類数は、入力パケットに含まれる通信パケットが利用していたプロトコルのバリエーション数である。ネットワークに接続する情報機器の数が多ければ、それに比例して大きくなる。また、機能制限の強いネットワーク環境では小さい値になる。この値が小さいと、隔離ネットワーク、または、公共スペースである可能性が高い。
【0046】
IPヘッダのTTL(Time to Live)値数は、入力パケットに含まれる通信パケットに付随したTTL値のバリエーション数である。ルータを経由する度に減算される値であるため、たくさんのルータを経由して到達したパケットでは小さい値になる。一様に大きい値しかない環境は、小規模なネットワークである可能性が高く、大きい値から小さい値までバリデーションがある環境は大規模なネットワークである可能性が高い。
【0047】
グローバルIPアドレスのパケットが含まれるという属性は、入力パケットに送信元アドレスにグローバルIPアドレスが含まれた場合を1とし、含まれない場合を0とした値である。含まれた場合はネットワークが外部からアクセス可能であることが分かる。この様な場合はインターネット直結である可能性が高いが、含まれていた場合でも他の環境である場合もあるし、含まれていない場合でもインターネット直結である場合もある。ここで、グローバルIPアドレスは、表3に含まれるIPアドレスである。
【0048】
【0049】
IPSec通信のパケットが含まれるという属性は、入力パケットにIPSec通信が含まれた場合を1とし、含まれない場合を0として値である。含まれた場合は、ネットワークに低レイヤでの通信路暗号が適用されていることが分かる。この様な場合は高機密情報管理の環境である可能性が高いが、含まれていた場合でも他の環境である場合もあるし、含まれていない場合でも高機密情報管理である場合もある。
【0050】
この様に、それぞれのパラメータが、ネットワーク規模などの特徴に対して、ある程度の傾向を持つが、その判断を行うための閾値を論理的に決定することは難しく、また、複数のパラメータを組み合わせて複合的に決定することで推定を行う。この様なことから、本実施例では学習アルゴリズムを用いて、利用環境とそこで取得できた通信ログの組み合わせから推定処理を行う。たくさんの実験を重ねることで、学習アルゴリズムを用いずに閾値を決定することもできるため、本技術はそうした学習アルゴリズムを用いない閾値に基づく手法であっても適用可能な技術である。
【0051】
入力である通信ログについては、それぞれ加工を施すことで数値ベクトル化し、推定の精度を向上させる。
【0052】
TTL属性のバリエーションに関しては入力パケットに含まれるパケット数をヒストグラム化し、例えば5つのレンジに同量のデータを区分する閾値を決定し、対応するレンジの値である1から5の整数を入力として用いる。
【0053】
宛先アドレスの数、通信元アドレスの数、プロトコルの種類の数に関しては、入力パケットに含まれる、一意な値の出現バリエーションを用いる。具体的には、入力パケットに重複して含まれる同じ値を持つパケットを数え、最も重複回数の多い値から順に対応するパケットを選び、全パケットに対して1%が選択され時点で、選択された値の数を用いる。単位時間の取り方にもよるが、おおむね1~20程度の値に収まるのでこの値を用いる。もし、単発的に20を大きく上回る値が出た場合は、20に丸めるなどの処理をしても良い。
【0054】
一般的に、値域の大きく異なるパラメータを学習アルゴリズムに入力した場合、値域の差が推定精度に影響してしまうことがある。例えば、TTLのバリエーションだけが1から10000の値域であり、他が1から10であった場合、TTLのバリエーションに強く反応する推定結果になってしまう。それぞれのパラメータをバランスよく用いるために、この様な数値ベクトル化によって推定精度を向上させることができる。
【0055】
学習フェーズにおいては、大量の通信ログ801を用いて、1つの学習モデルを生成する。この時、各通信ログ801の生成元となる、入力パケットに含まれるパケット数は同一である必要がある。まったく同じ環境で取得した通信ログでも、含まれるパケット数が1つであれば、宛先アドレスは1つしかありえないし、パケット数が100であれば、20くらいの値となる可能性があり、環境を推定するためのデータとして適さないためである。本実施例では、第一閾値用の学習モデルは150パケットが含まれる入力パケットを用い、第二閾値用の学習モデルでは50パケットが含まれる入力パケットを用いた。これは、推定フェーズで入力する通信ログでも同様で、学習時と同じ数のパケットが含まれる入力パケットである必要がある。推定フェーズで50パケットしか取れなかった場合に、その値を3倍にして150パケットが含まれる入力パケットで学習した学習モデルを用いるという方法も考えられるが、このアプローチでは推定精度が極端に下がってしまう。例えば、150パケット取得して、宛先アドレスが20となる環境で、50パケットだけ取得した場合にも20近い値が取れる場合も多い。一意な値の個数を数えるため、パケット取得数が増加するに従い値の増加は鈍くなりためである。この場合に3倍してしまうと60となり、全く別の環境として推定してしまう。50パケットの学習データの準備方法として、150パケット取得できたサンプルから50パケット分を切り出しても良いが、50パケットしか取れなかった環境でのデータを利用する方が好ましい。
【0056】
学習モデルとしては、入力である通信ログ801と、出力に対応する利用環境802の組み合わせを実環境で多数のサンプルを収集し、これを基に学習することで生成することができる。本実施例では通信ログのパラメータ配列を1次元配列とし、それを複数回サンプリングして時系列に並べることで2次元配列を形成する。そして、Convolutional Neural networkモデルを生成する一般的なアルゴリズムを利用して学習モデルを生成する。なお、k近傍法やサポートベクターマシンとしったアルゴリズムを利用し、分類器を構成してもよい。
【0057】
図8は、
図7で示した学習モデルの構造を利用した本発明を適用できる学習フェーズのシステムの動作を説明する図である。MFP132、133、および132はおすすめセキュリティ設定画面701を用いて機器に設定された表1に表される利用環境のパターンと、通信ログ抽出部311が抽出した表2に表せられる情報を含む通信ログを定常的に学習システム121に送信している。実施例では説明のため3台しか記載していないが、実際には世界中で運用される数百万台の機器のデータを収集する。こうして得られた、利用環境と通信ログの組み合わせを
図7で説明した数値ベクトル化を施し、機械学習アルゴリズムで計算させ学習モデルを生成する。実際には利用環境毎に取れるデータに偏りが発生するので特定の利用環境に対する過学習にならない様にデータのサンプル数を整えたり、利用環境毎に準偏差を基にして外れ値となるようなデータを取り除いたりといったデータの加工をする。
【0058】
図8に示す一連の動作の結果生成した学習モデルを用いて推定する事で、ユーザが利用しているもの以外も含めたMFPの利用環境設定と通信ログから、ユーザが利用するMFPに設定するのが適切である可能性の高い利用環境設定を提示できる。
【0059】
図9を用いて、MFP100が推定処理を行いユーザに通知し、今後の精度向上に向けた学習サーバへの情報送信を行う処理を説明する。
図9のMFPが行う処理は通信ログ抽出部311、推定処理部312、操作制御部301および学習サーバ通信部310の処理である。FlashROM211に格納されたプログラムを、CPU201がDRAM202に読み込んだ後、CPU201の演算処理として実施するものである。
【0060】
MFP100においてネットワーク機能の初期化完了、もしくはおすすめセキュリティ設定画面701の表示時に本フローは開始される。ネットワーク機能の初期化は、機器の電源投入後のシステム起動時や、ネットワーク設定の変更時などに行われ、MFP100が通信可能になるタイミングである。
【0061】
S1001で、MFP100はスキャンを開始する。具体的には、通信ログ抽出部311が、LAN100との間で送受信されるネットワークパケットをキャプチャーする。
【0062】
S1002で、通信ログ抽出部311はスキャン時間が上限を超過したか確認する。即ち、ネットワークパケットのスキャンを開始してから、所定の時間が経過したかを確認する。本実施例で、スキャン時間の上限は60秒とする。これは、多くのネットワーク環境においてS1008で確認する第一閾値分のネットワークパケットが収集可能な時間として、予め決定する。上限を超過した場合はS1003の処理を実施し、超過していない場合はS1008の処理を実施する。
【0063】
S1008で、通信ログ抽出部311はパケット数が第一閾値以上であるか確認する。即ち、ネットワークパケットのスキャンを開始してから所定の時間内で取得されたパケット数が、第一閾値以上であるかを確認する。本実施例では、第一閾値は150パケットとする。これは、利用環境推定モデルに対して、入力パケット数の増加に対する推定精度の向上特性を検証し、パケット数増加に対する精度向上の割合が鈍る分岐点から予め決定する。推定精度の観点では入力として想定するパケット数は多いほど良いが、推定結果表示機能としてはパケット数に依存するスキャン時間は少ないほど良い。また、一般に入力として想定するデータ数に対する推定精度の向上率は、データ数の増加と共に鈍る対数的な増加グラフとなることが知られている。第一閾値以上である場合はS1009を実施する。第一閾値以上でない場合、即ち第一閾値未満である場合は、再びS1002を実施する。第一閾値以上でない場合は、過度な繰り返し演算を避けるためにわずかな処理停止時間を設けても良い。
【0064】
S1009で、推定処理部312は第一閾値用の学習モデルによる利用環境推定を行う。第一閾値は150パケットとしたが、第一閾値用の学習モデルとは、学習時に学習データとして用いるデータセットの各々として150パケットのデータを用意して、150パケットの入力に最適化した学習モデルである。このステップは、150パケット取得できている場合しか実行されないため、これを推定処理の入力として利用する。具体的には、通信ログ抽出部311が、所定時間内に取得できたパケットのうちの150個のパケットを用いて、表2に示すような特徴量を抽出する。推定処理部312は、通信ログ抽出部311が抽出した特徴量を、第一閾値用の学習モデルに入力して、利用環境を推定する。
【0065】
S1003で、通信ログ抽出部311はパケット数が第二閾値以上であるか確認する。本実施例では、第二閾値は50パケットとする。これは、入力パケット数の増加に対する推定精度の向上特性を検証し、有意の推定結果が出せる下限値として予め決定する。第二閾値以上である場合はS1004を実施する。第二閾値以上でない場合、即ち第二閾値未満である場合はS1007を実施する。
【0066】
S1004で、推定処理部312は第二閾値用の学習モデルによる利用環境推定を行う。第二閾値は50パケットとしたが、第二閾値用の学習モデルとは、学習時に学習データとして用いるデータセットの各々として50パケットのデータを用意して、50パケットの入力に最適化した学習モデルである。このステップで51以上のパケットを取得している場合もあるが、受信した順に50パケットのみを推定処理の入力として利用する。具体的には、通信ログ抽出部311が、所定時間内に取得できたパケットのうち50個のパケットを用いて、表2に示すような特徴量を抽出する。推定処理部312は、通信ログ抽出部311が抽出した特徴量を、第二閾値用の学習モデルに入力して、利用環境を推定する。
【0067】
S1007で、推定処理部312はルールベースによる利用環境推定を行う。ルールベースによる推定とは、例えば、以下のような推定である。IPSecパケットが含まれていれば一律に高機密情報管理環境と推定する。グローバルIPアドレスパケットが含まれていれば一律にインターネット直結環境と推定する。それら条件に当てはまらない場合は社内イントラ環境と推定する。ルールベースによる推定とは、このような判断テーブルベースの推定である。これは、学習モデルを用いた場合より精度が低いが、機能の性質上推定結果を出せないよりは良いというケースは多い。
【0068】
S1005で、MFP100は推定結果を通知する。具体的には、操作制御部301が推定結果を通知する。おすすめセキュリティ設定画面701を表示中であれば、利用環境推定結果707に、S1004、S1007、S1009のいずれかで推定した利用環境を表示する。このタイミングで、管理ツールに推定結果を送信して、管理ツールの表示部に表示しても良いし、MFP100ないにログとして記録しても良い。
【0069】
S1006で、MFP100は収集パケットを学習サーバ121に送信する。具体的には、学習サーバ通信部310が収集パケットを学習サーバ121に送信する。このデータを受信した学習サーバ側の処理は
図10を用いて説明する。
【0070】
以上のフローで、通信量の多寡に応じて適切な学習モデルを利用した、利用環境推定を行うことができる。
【0071】
図10を用いて、学習サーバ121が、学習用データを受信して学習モデルの更新を行うまでの処理を説明する。本実施例で、
図10の学習サーバ121で実行されるソフトウェアは全て、CPU251がHDD255に保存されたプログラムを、DRAM252に読み込んだのち実行する。
【0072】
MFP132、133、134から通信ログを受信すると本フローは開始される。
【0073】
S1101で学習サーバ121はMFPから受信したデータを保存する。
【0074】
利用環境が表1で説明した隔離ネットワークである場合は、インターネットを介したデータ収集ができないため工夫が必要である。例えばVPN(Virtual Private Network)接続を、利用者のネットワークと学習サーバ121との間に確立することで、インターネットを経由することなる接続することができる。また、サービスエンジニアが利用者を訪問時にMFP100で蓄積したログを可搬性の記憶媒体に複製の後、サービス拠点から学習サーバ121に送信しても良い。
【0075】
これはS1006でMFPが送信したデータを受信して、データ記憶部402に保存する処理である。
【0076】
S1102で学習サーバ121は一定期間が経過したかを確認する。例えば週に一度など予め決めた周期で、学習モデルを更新する場合、データ収集が1週間行われたか否かを確認する。一定期間経過した場合はS1103を実行し、確認されなかった場合は本フローを終了する。本実施例では、時間を条件にしたが、受信通信ログ数が1万回などのデータ量を条件としても良い。
【0077】
S1103で学習サーバ121は蓄積した受信データを数値ベクトル化する。具体的には
図7の説明として記載した入力である通信ログに施す数値ベクトル化処理を実施することで、受信した通信を値域の揃った整数の配列に変換する。この1次元配列である通信ログをMFPの個体ごとに時系列に並べて2次元配列を得る。この2次元配列を入力データとし、このMFPの個体に設定された利用環境のパターンを教師データとして1つの学習データとする。同様の処理を全てのMFPのデータに対して行うことで学習データセットを得る。なお、第一閾値用学習モデルを生成するためには、第一閾値の数のパケット数のデータを用いて、教師データを作成する。第二閾値用学習モデルを生成するためには、第二閾値の数のパケット数のデータを用いて、教師データを作成する。
【0078】
S1104で学習サーバ121は学習アルゴリズムを用いて計算する。S1103で生成した学習データセットをConvolutional Neural networkで計算する。
【0079】
S1105で学習モデルを生成する。S1104で計算した結果を抽出し、学習モデルデータをデータ記憶部402に学習モデル候補として保存する。
【0080】
S1106で推定精度を測定する。S1105で保存した学習モデルの精度を、収集済みのデータを用いて検証する。検証ではホールドアウト法などの、学習に用いていないデータを検証に用いて精度を測定し、精度情報をデータ記憶部402に保存する。
【0081】
S1107で精度が向上したか確認する。S1106で今回測定した精度が、前回生成した学習モデルの精度より向上したか否かを確認する。向上した場合はS1108を実施し、向上しなかった場合は本フローを終了する。本実施例では、プログラムの処理として一律に判定するとしたが、実際は特定の利用環境の精度は上がるが、他が下がるなどの、一概にどちらの性能が良いか機械的な判断が難しい場合がある。そうした場合を考慮して、精度の確認は人間がその都度比較検討した結果判断して、学習サーバ121に指示するフローであっても良い。
【0082】
S1108で学習サーバ121は学習モデルの更新を行う。データ記憶部402に保存されている学習モデルを、S1105で保存した学習モデル候補で上書きする。
【0083】
以上のフローにより、収集した学習データを元に、推定処理を行うための学習モデルを生成することができる。こうして生成した学習モデルは、予めMFP100のデータ記憶部402に配置することで、MFP100の推定処理部312が推定処理を行う際に利用できる。これは機器出荷時に配置しておくが、ファームウェアバージョンアップの機構を設け、他のプログラムを更新するタイミングで合わせて更新しても良い。
【0084】
以上のフローにより、MFPは推定結果を取得し、ユーザに提示することでユーザの設定を支援することができる。
【0085】
尚、画像形成装置を例に説明したが、本技術は画像形成装置を含む情報処理装置一般に適応可能である。
【0086】
以上のフローにより、セキュリティの専門知識を持たないユーザが、通信量の多寡に関わらず、利用環境として適切である可能性が高い設定を選択することが可能となる。
【0087】
<第2の実施形態>
以下、本発明の実施の形態を図面に基づいて解説する。本実施形態はおすすめセキュリティ設定で選択中の環境と、利用環境推定結果が異なった場合に、ユーザに設定の変更を強く推奨する場合の実施例である。
【0088】
図1,2,3,4,5,7,8,9,10は第1の実施例と同様の構成である。
【0089】
図11(A)は操作部102に表示される、おすすめセキュリティ設定画面701である。操作制御部301がおすすめセキュリティ設定画面701の表示制御を行う。図中の701、702、703、704、705、706、707、708、709、710に関しては、
図6と同様の構成である。
【0090】
推定実行ボタン711は、利用環境の推定処理の開始をユーザが指示するためのボタンである。
図9の説明の通り推定処理はユーザが指示することなく、ネットワーク機能の初期化完了、もしくはおすすめセキュリティ設定画面701の表示時に自動的に行われる。このボタンはユーザが意図的に任意のタイミングで推定処理を実施するために利用される。
【0091】
図11(B)は、選択中の利用環境と利用環境推定結果が異なった場合に、ユーザにそれを伝えるポップアップ画面が表示されたおすすめセキュリティ設定画面701である。おすすめセキュリティ設定画面701表示時に、すでに推定された利用環境推定結果と選択中の利用環境が異なれば
図11(A)の画面表示に先立って表示される。推定実行ボタン711押下やネットワーク初期化完了によって、
図11(A)表示中に推定結果が更新され、さらにそれが選択中の利用環境と異なった場合は、そのタイミングで
図11(B)を表示する。ポップアップ画面712は選択中の利用環境と利用環境推定結果が異なった旨のメッセージと、選択中の利用環境と利用環境推定結果を表示する。閉じるボタン713はユーザが設定変更不要と判断した場合に押下するボタンであり、押下によってポップアップ画面712を消去する。設定するボタン714はユーザが設定変更必要と判断した場合に押下するボタンであり、
図11(C)のポップアップ表示に表示を切り替える。
【0092】
図11(C)は推奨設定を表示して良いかユーザに確認するための、ポップアップ画面が表示されたおすすめセキュリティ設定画面701である。ポップアップ画面715はこれから設定される推奨設定である利用環境推定結果を表示する。はいボタン716は設定を実行するためボタンであり、押下によって設定を実行する。いいえボタン717は設定を取りやめるためのボタンであり、押下によってポップアップ画面715を消去する。
【0093】
このように、操作制御部301は、おすすめセキュリティ設定画面701で選択されている利用環境が、推定結果と異なる場合に、当該推定結果の利用環境を含むポップアップ画面を表示するように表示制御する。
【0094】
以上の構成により、ユーザは利用環境推定結果を強く推奨され、より好ましい設定の利用を行う可能性が高まる。
【0095】
<第3の実施形態>
以下、本発明の実施の形態を図面に基づいて解説する。本実施形態は、利用環境の推定において、一部のルールによる判定を優先して行う場合の実施例である。
【0096】
図1,2,3,4,5,6、7,8,10は第1の実施例と同様の構成である。また、第2の実施例と同様に
図6の代わりに
図11の構成を用いても良い。
【0097】
図12を用いて、MFP100が推定処理を行いユーザに通知し、今後の精度向上に向けた学習サーバへの情報送信を行う処理を説明する。
図12のMFPが行う処理は通信ログ抽出部311、推定処理部312、操作制御部301および学習サーバ通信部310の処理である。FlashROM211に格納されたプログラムを、CPU201がDRAM202に読み込んだ後、CPU201の演算処理として実施するものである。
【0098】
MFP100においてネットワーク機能の初期化完了、もしくはおすすめセキュリティ設定画面701の表示時に本フローは開始される。ネットワーク機能の初期化は、機器の電源投入後のシステム起動時や、ネットワーク設定の変更時などに行われ、MFP100が通信可能になるタイミングである。
【0099】
S1201で、MFP100はスキャンを開始する。具体的には、通信ログ抽出部311が、LAN100との間で送受信されるネットワークパケットをキャプチャーする。
【0100】
S1202で、通信ログ抽出部311はスキャン時間が上限を超過したか確認する。即ち、ネットワークパケットのスキャンを開始してから、所定の時間が経過したかを確認する。本実施例で、スキャン時間の上限は60秒とする。これは、多くのネットワーク環境においてS1208で確認する第一閾値分のネットワークパケットが収集可能な時間として、予め決定する。上限を超過した場合はS1203の処理を実施し、超過していない場合はS1208の処理を実施する。
【0101】
S1208で、通信ログ抽出部311はパケット数が第一閾値以上であるか確認する。即ち、ネットワークパケットのスキャンを開始してから所定の時間内で取得されたパケット数が、第一閾値以上であるかを確認する。本実施例では、第一閾値は150パケットとする。これは、利用環境推定モデルに対して、入力パケット数の増加に対する推定精度の向上特性を検証し、パケット数増加に対する精度向上の割合が鈍る分岐点から予め決定する。推定精度の観点では入力として想定するパケット数は多いほど良いが、推定結果表示機能としてはパケット数に依存するスキャン時間は少ないほど良い。また、一般に入力として想定するデータ数に対する推定精度の向上率は、データ数の増加と共に鈍る対数的な増加グラフとなることが知られている。第一閾値以上である場合はS1210を実施する。第一閾値以上でない場合、即ち第一閾値未満である場合は、再びS1202を実施する。第一閾値以上でない場合は、過度な繰り返し演算を避けるためにわずかな処理停止時間を設けても良い。
【0102】
S1210で、推定処理部312はパケットが優先ルールに適合するか確認する。優先ルールとは例えば、IPSecパケットが含まれていれば一律に高機密情報管理環境と推定すると言った、確度の高いルールである。この様な確度の高いルールが分かっている場合は、学習モデルによる推定に先立って確認することで、推定の精度を向上することができる。S1210で適合した場合にはS1211を実施し、適合しなかった場合はS1209を実施する。
【0103】
S1211で、推定処理部312は優先ルールベースによる利用環境推定を行う。すなわちIPSecパケットが含まれていれば一律に高機密情報管理環境と推定すると言った予め設定した推定を行う。
【0104】
S1209で、推定処理部312は第一閾値用の学習モデルによる利用環境推定を行う。第一閾値は150パケットとしたが、第一閾値用の学習モデルとは、学習時に学習データとして用いるデータセットの各々として150パケットのデータを用意して、150パケットの入力に最適化した学習モデルである。このステップは、150パケット取得できている場合しか実行されないため、これを推定処理の入力として利用する。具体的には、通信ログ抽出部311が、所定時間内に取得できたパケットのうちの150個のパケットを用いて、表2に示すような特徴量を抽出する。推定処理部312は、通信ログ抽出部311が抽出した特徴量を、第一閾値用の学習モデルに入力して、利用環境を推定する。
【0105】
S1203で、通信ログ抽出部311はパケット数が第二閾値以上であるか確認する。本実施例では、第二閾値は50パケットとする。これは、入力パケット数の増加に対する推定精度の向上特性を検証し、有意の推定結果が出せる下限値として予め決定する。第二閾値以上である場合はS1204を実施する。第二閾値以上でない場合、即ち第二閾値未満である場合はS1207を実施する。
【0106】
S1204で、推定処理部312は第二閾値用の学習モデルによる利用環境推定を行う。第二閾値は50パケットとしたが、第二閾値用の学習モデルとは、学習時に学習データとして用いるデータセットの各々として50パケットのデータを用意して、50パケットの入力に最適化した学習モデルである。このステップで51以上のパケットを取得している場合もあるが、受信した順に50パケットのみを推定処理の入力として利用する。具体的には、通信ログ抽出部311が、所定時間内に取得できたパケットのうち50個のパケットを用いて、表2に示すような特徴量を抽出する。推定処理部312は、通信ログ抽出部311が抽出した特徴量を、第二閾値用の学習モデルに入力して、利用環境を推定する。
【0107】
S1207で、推定処理部312はルールベースによる利用環境推定を行う。ルールベースによる推定とは、例えば、以下のような推定である。グローバルIPアドレスパケットが含まれていれば一律にインターネット直結環境と推定する。条件に当てはまらない場合は社内イントラ環境と推定する。ルールベースによる推定とは、このような判断テーブルベースの推定である。これは、学習モデルを用いた場合より精度が低いが、機能の性質上推定結果を出せないよりは良いというケースは多い。
【0108】
S1205で、MFP100は推定結果を通知する。具体的には、操作制御部301が推定結果を通知する。おすすめセキュリティ設定画面701を表示中であれば、利用環境推定結果707に、S1204、S1207、S1209のいずれかで推定した利用環境を表示する。このタイミングで、管理ツールに推定結果を送信して、管理ツールの表示部に表示しても良いし、MFP100ないにログとして記録しても良い。
【0109】
S1206で、MFP100は収集パケットを学習サーバ121に送信する。具体的には、学習サーバ通信部310が収集パケットを学習サーバ121に送信する。
【0110】
以上のフローで、一部のルールによる判定を優先して行うことができる。
【0111】
<その他の実施形態>
本発明は、上述の各実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASICやFPGA)によっても実現可能である。
【符号の説明】
【0112】
100 MFP
311 通信ログ抽出部
312 推定処理部