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

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

▶ キヤノン株式会社の特許一覧

特開2024-162790情報処理装置、制御方法、プログラム
<>
  • 特開-情報処理装置、制御方法、プログラム 図1
  • 特開-情報処理装置、制御方法、プログラム 図2
  • 特開-情報処理装置、制御方法、プログラム 図3
  • 特開-情報処理装置、制御方法、プログラム 図4
  • 特開-情報処理装置、制御方法、プログラム 図5
  • 特開-情報処理装置、制御方法、プログラム 図6
  • 特開-情報処理装置、制御方法、プログラム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024162790
(43)【公開日】2024-11-21
(54)【発明の名称】情報処理装置、制御方法、プログラム
(51)【国際特許分類】
   H04W 12/69 20210101AFI20241114BHJP
   G06F 21/60 20130101ALI20241114BHJP
【FI】
H04W12/69
G06F21/60 360
【審査請求】未請求
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2023078696
(22)【出願日】2023-05-11
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】牧 俊介
(72)【発明者】
【氏名】矢野 翔大
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067AA30
5K067DD17
5K067EE02
5K067EE10
5K067HH36
(57)【要約】
【課題】通信装置の識別情報がランダム化された場合であっても、通信装置の情報を適切に管理する情報処理装置を提供する。
【解決手段】情報処理装置は、通信装置と通信可能な情報処理装置であって、通信装置から所定の情報を取得する第1取得手段と、前記第1取得手段により取得した前記所定の情報が、前記通信装置の識別情報をランダム化する所定の機能が前記通信装置において有効化されていることに対応する情報である場合、前記所定の情報を前記情報処理装置に送信した通信装置から、前記所定の機能によりランダム化されていない識別情報を取得する第2取得手段と、前記第2取得手段により取得した前記所定の機能によりランダム化されていない識別情報に基づく処理を実行する実行手段とを備える。
【選択図】図3
【特許請求の範囲】
【請求項1】
通信装置と通信可能な情報処理装置であって、
通信装置から所定の情報を取得する第1取得手段と、
前記第1取得手段により取得した前記所定の情報が、前記通信装置の識別情報をランダム化する所定の機能が前記通信装置において有効化されていることに対応する情報である場合、前記所定の情報を前記情報処理装置に送信した通信装置から、前記所定の機能によりランダム化されていない識別情報を取得する第2取得手段と、
前記第2取得手段により取得した前記所定の機能によりランダム化されていない識別情報に基づく処理を実行する実行手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記所定の情報は、前記通信装置の識別情報であり、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報である場合とは、前記第1取得手段により取得した前記所定の情報が、前記所定の機能によりランダム化された識別情報である場合である、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記所定の情報は、前記所定の機能が前記通信装置において有効化されているか否かを示す情報であり、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報である場合とは、前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることを示す場合である、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記通信装置から管理情報を取得する第2取得手段、を更に備え、
前記第2取得手段により取得した前記所定の機能によりランダム化されていない識別情報に基づく処理は、前記所定の機能によりランダム化されていない識別情報と前記管理情報とを紐付けて記憶部に記憶する処理である、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項5】
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報である場合に、前記所定の機能によりランダム化されていない識別情報が用いられて、前記情報処理装置が属するネットワーク上で前記通信装置を検索する検索手段、を更に備えることを特徴とする請求項1に記載の情報処理装置。
【請求項6】
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応するか否かを判定する第1判定手段、を更に備え、
前記所定の機能が前記通信装置において有効化されていることに対応すると判定された場合、前記第2取得手段は、前記通信装置から前記所定の機能によりランダム化されていない識別情報を取得する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項7】
前記第2取得手段は、前記通信装置の内部で前記所定の機能によりランダム化されていない識別情報が記憶されている場所を指定する情報を送信することにより、前記所定の機能によりランダム化されていない識別情報を取得することを特徴とする請求項1に記載の情報処理装置。
【請求項8】
前記記憶されている場所を指定する情報は、MIB(Management Information Base)におけるOID(Object Identifier)であることを特徴とする請求項7に記載の情報処理装置。
【請求項9】
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報である場合、前記所定の機能によりランダム化される識別情報と同じ種類だが、前記所定の機能によりランダム化されていない第1識別情報と、前記所定の機能によりランダム化される識別情報と異なる種類であり、前記所定の機能によりランダム化されていない第2識別情報のうちいずれかが取得される、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項10】
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報であり、且つ前記所定の情報の取得元の前記通信装置が第1の機種である場合、前記第1識別情報が取得され、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報であり、且つ前記所定の情報の取得元の前記通信装置が第1の機種と異なる第2の機種である場合、前記第2識別情報が取得される、
ことを特徴とする請求項9に記載の情報処理装置。
【請求項11】
前記第1の機種はレーザービームプリンタであり、前記第2の機種はインクジェットプリンタであることを特徴とする請求項10に記載の情報処理装置。
【請求項12】
前記第1識別情報は、MACアドレスであり、前記第2識別情報は、シリアル番号であることを特徴とする請求項9に記載の情報処理装置。
【請求項13】
前記所定の機能によりランダム化されていない識別情報は、暗号化通信を介して取得されることを特徴とする請求項1に記載の情報処理装置。
【請求項14】
前記所定の機能によりランダム化されていない識別情報は、ハッシュ値であることを特徴とする請求項1に記載の情報処理装置。
【請求項15】
前記管理情報は、設置場所、状態、IPアドレス、ポート名、ファームウェアのバージョン、SSID(Service Set Identifier)の少なくともいずれかを含むことを特徴とする請求項4に記載の情報処理装置。
【請求項16】
前記所定の情報は、前記通信装置の識別情報であり、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていないことに対応する情報である場合、前記所定の機能によりランダム化されていない識別情報に基づく処理として、前記所定の情報に基づく処理が実行される、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項17】
前記所定の情報は、前記所定の機能が前記通信装置において有効化されているか否かを示す情報であり、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていないことに対応する情報である場合、前記所定の機能によりランダム化されていない識別情報が取得され、前記所定の機能によりランダム化されていない識別情報に基づく処理が実行される、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項18】
前記所定の機能は、MACアドレスのランダム化機能であることを特徴とする請求項1に記載の情報処理装置。
【請求項19】
通信装置と通信可能な情報処理装置の制御方法であって、
通信装置から所定の情報を取得する第1取得工程と、
前記第1取得工程において取得された前記所定の情報が、前記通信装置の識別情報をランダム化する所定の機能が前記通信装置において有効化されていることに対応する情報である場合、前記所定の情報を前記情報処理装置に送信した通信装置から、前記所定の機能によりランダム化されていない識別情報を取得する第2取得工程と、
前記第2取得工程において取得された前記所定の機能によりランダム化されていない識別情報に基づく処理を実行する実行工程と、
を有することを特徴とする制御方法。
【請求項20】
請求項1乃至18のいずれか1項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、制御方法、プログラムに関する。
【背景技術】
【0002】
パーソナルコンピュータやスマートフォン等の装置(以下、情報処理装置とも呼ぶ)が、無線LANを介してネットワークと接続して、プリンタやスキャナ等の処理装置(以下、通信装置とも呼ぶ)と情報を通信するシステムがある。
【0003】
近年、フリーWiFiのような公衆無線LANやコワーキングスペース等の増加により、自宅やオフィス以外で無線LAN通信を行う機会が増えている。しかしながら、様々な場所で利用される無線LAN通信は、第3者に観測されてユーザを追跡されてしまう場合がある。このような状況を避けユーザのプライバシーを保護するために、MACアドレスを定期的に変更する技術が導入されている。MACアドレスを定期的に変更する技術を、MACアドレスのランダム化とも呼ぶ。
【0004】
特許文献1では、第1の無線端末は、記憶している第2の無線端末のMACアドレスから生成した識別子を第2の無線端末に送信する。第2の無線端末は、受信した識別子を検証し、識別子が正しい場合には、現在のMACアドレスを第1の無線端末に送信する。そして、第1の無線端末は、受信したMACアドレスで第2の無線端末と接続を確立する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特表2017-525287号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
通信装置の識別情報に基づいて通信装置の情報を管理することがある。通信装置の識別情報がランダム化されると、通信装置の情報を適切に管理することができなくなる。
【0007】
本発明は、通信装置の識別情報がランダム化された場合であっても、通信装置の情報を適切に管理する情報処理装置、制御方法、プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するため、本発明に係る情報処理装置は、通信装置と通信可能な情報処理装置であって、通信装置から所定の情報を取得する第1取得手段と、前記第1取得手段により取得した前記所定の情報が、前記通信装置の識別情報をランダム化する所定の機能が前記通信装置において有効化されていることに対応する情報である場合、前記所定の情報を前記情報処理装置に送信した通信装置から、前記所定の機能によりランダム化されていない識別情報を取得する第2取得手段と、前記第2取得手段により取得した前記所定の機能によりランダム化されていない識別情報に基づく処理を実行する実行手段とを備えることを特徴とする。
【発明の効果】
【0009】
本発明によれば、通信装置の識別情報がランダム化された場合であっても、通信装置の情報を適切に管理することができる。
【図面の簡単な説明】
【0010】
図1】情報処理装置と通信装置を含むシステムの構成を示す図である。
図2】プリンタ管理アプリケーションのユーザインタフェース画面を示す図である。
図3】情報処理装置において実行される処理を示すフローチャートである。
図4】通信装置において実行される処理を示すフローチャートである。
図5】情報処理装置において実行される処理を示すフローチャートである。
図6】情報処理装置において実行される処理を示すフローチャートである。
図7】情報処理装置において実行される処理を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0012】
[第1実施形態]
本実施形態の通信システムに含まれる情報処理装置101及び通信装置151について説明する。本実施形態では、情報処理装置101としてスマートフォンを例示しているが、これに限定されない。例えば情報処理装置101として、携帯端末、PC(パーソナルコンピュータ)、タブレット端末、PDA(Personal Digital Assistant)、デジタルカメラ等、種々のものを適用可能である。また、通信装置151としてプリンタを例示しているが、これに限定されず、情報処理装置101と無線通信を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等を適用可能である。また、プリンタのみならず複写機やファクシミリ装置、携帯端末、スマートフォン、ノートPC、タブレット端末、PDA、デジタルカメラ、音楽再生デバイス、テレビ、スマートスピーカ等を適用可能である。また、その他にも、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機を適用可能である。
【0013】
まず、本実施形態の情報処理装置101と、本実施形態の情報処理装置101と通信可能な通信装置151の構成について図1のブロック図を参照して説明する。また、本実施形態では以下の構成を一例として説明するが、図示された機能に限定されない。情報処理装置101及び通信装置151に適用可能な装置において、実施可能な機能に対応する構成を適宜有し得る。
【0014】
情報処理装置101は、入力インタフェース102、CPU103、ROM104、RAM105、外部記憶装置106、出力インタフェース107、表示部108、通信部110、近距離無線通信部111、撮像部112を有する。CPU103、ROM104、RAM105等によって、プログラムを実行する情報処理装置101のコンピュータが形成される。
【0015】
入力インタフェース102は、キーボード109等の操作部が操作されることにより、ユーザからのデータ入力や指示操作を受け付けるためのインタフェースである。なお、操作部は、物理キーボードや物理ボタン等であっても良いし、表示部108に表示されるソフトキーボードやソフトボタン等であっても良い。すなわち、入力インタフェース102は、表示部108を介してユーザからの入力を受け付けても良い。
【0016】
CPU103は、システム制御部であり、アプリケーションプログラムの実行など情報処理装置101の全体を制御する。ROM104は、CPU103が実行する制御プログラムやデータテーブル、組み込みオペレーティングシステム(以下、OSという。)プログラム等の固定データを格納する。本実施形態では、ROM104に格納されている各制御プログラムは、ROM104に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行う。
【0017】
RAM105は、バックアップ電源を必要とするSRAM(Static Random Access Memory)等で構成される。なお、RAM105は、不図示のデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに記憶することができる。また、情報処理装置101の設定情報や情報処理装置101の管理データ等を格納するメモリエリアもRAM105に設けられている。また、RAM105は、CPU103の主メモリとワークメモリとしても用いられる。
【0018】
外部記憶装置106は、サービス登録アプリ、通信装置151のネットワークセットアップを実行するためのアプリケーションプログラム、プリンタ管理アプリケーション、通信装置151が解釈可能な印刷情報を生成する印刷情報生成プログラム等を保存している。各プログラムは、例えば、通信部110を介したインターネット通信によって、外部のサーバ(不図示)からインストールされることにより、外部記憶装置106に格納される。サービス登録アプリは、通信装置151から取得した情報や、情報処理装置101で取得したユーザの個人情報などをサービス管理サーバ(不図示)に送信するためのアプリケーションプログラムである。通信装置151のネットワークセットアップを実行するためのアプリケーションプログラム(設定アプリ)とは、通信装置151の接続先のアクセスポイントの設定を行うためのアプリケーションプログラムである。プリンタ管理アプリケーションは、プリンタの情報を管理するためのアプリケーションである。なお、サービス登録アプリ、設定アプリ、プリンタ管理アプリケーション、印刷情報生成プログラム(印刷アプリケーション)が一つのアプリケーションとして構成されていても良い。
【0019】
出力インタフェース107は、表示部108がデータの表示や情報処理装置101の状態の通知を行うための制御を行うインタフェースである。表示部108は、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、データの表示や情報処理装置101の状態の通知を行う。撮像部112は、外部を撮像する例えばカメラである。
【0020】
通信部110は、通信装置151やアクセスポイント131等の装置と接続して、データ通信を実行するための構成である。例えば、通信部110は、通信装置151内のアクセスポイント(不図示)に接続可能である。また、通信部110は、情報処理装置101内部のアクセスポイントとして、通信装置151等の装置と接続するためのアクセスポイントを有している。このアクセスポイントは一般的にテザリングと呼ばれる。なお、該アクセスポイントに、通信装置151の通信部156は接続可能である。通信部110が、該アクセスポイントを有効化することで、情報処理装置101がアクセスポイントとして動作することになる。通信部156と通信部110内のアクセスポイントが接続することで、情報処理装置101と通信装置151は相互に通信可能となる。また、情報処理装置101の通信部110がインターネットに接続している場合には、情報処理装置101を経由して通信装置151もインターネットに接続可能である。なお、本実施形態では、情報処理装置101は、情報処理装置101の外部及び通信装置151の外部に存在する外部装置を介して通信装置151と通信可能である。なお、外部装置とは、情報処理装置101の外部及び通信装置151の外部に存在する外部アクセスポイント(アクセスポイント131等)や、アクセスポイント以外で通信を中継可能な装置を含む。アクセスポイント131としては、例えば、無線LANルータ等の機器などが挙げられる。情報処理装置101と通信装置151とが外部アクセスポイントを介して接続する方式をインフラ接続方式という。
【0021】
近距離無線通信部111は、通信装置151等の装置と近距離で無線接続して、データ通信を実行するための構成であり、通信部110とは異なる通信方式によって通信を行う。近距離無線通信部111は、例えば、通信装置151内の近距離無線通信部157と接続可能である。通信方式としては、例えば、Near Field Communication(NFC)、Bluetooth(登録商標) Classic、Bluetooth Low Energy(BLE)、Wi-Fi Aware等が挙げられる。
【0022】
通信装置151は、ROM152、RAM153、CPU154、プリントエンジン155、通信部156、近距離無線通信部157、表示部158を有する。ROM152、RAM153、CPU154等によって、プログラムを実行する通信装置151のコンピュータが形成される。
【0023】
通信部156は、通信装置151内部のアクセスポイントとして、情報処理装置101等の外部装置と接続するためのアクセスポイントを有している。なお、該アクセスポイントは、情報処理装置101の通信部110に接続可能である。通信部156が、該アクセスポイントを有効化することで、通信装置151がアクセスポイントとして動作することになる。なお、通信部156は、情報処理装置101とダイレクトに無線接続しても良いし、アクセスポイント131を介して無線接続しても良い。通信部156が用いる無線通信方式は例えば、IEEE802.11シリーズに準拠する通信規格である。また、通信部156は、アクセスポイントとして機能するハードウェアを備えていてもよいし、アクセスポイントとして機能させるためのソフトウェアによりアクセスポイントとして動作してもよい。
【0024】
ここで、通信部156を用いた無線通信を実行するモードや接続方式について説明する。
【0025】
<ダイレクト接続方式について>
ダイレクト接続とは、AP131等の外部装置を介さずに装置同士が直接(すなわちPeer to Peerで)無線接続する形態を指す。ダイレクト接続は、Peer to Peer接続(P2P接続)ともいう。通信装置151は、接続モードの1つとして、ダイレクト接続により通信するためのモード(ダイレクト接続モード)で動作可能である。Wi-Fi通信において、ダイレクト接続により通信するためのモードにはソフトウェアAPモードやWi-Fi Direct(WFD)モード等の様に複数のモードが存在する。
【0026】
WFDによって、ダイレクト接続を実行するモードをWFDモードという。WFDはWi-Fi Allianceによって策定された規格であり、IEEE802.11シリーズの通信規格に含まれる規格である。WFDモードでは機器探索コマンドにより通信相手となる機器が探索された後に、P2Pのグループオーナー(GO)と、P2Pのクライアントの役割を決定した上で、残りの無線接続の処理を行うことになる。グループオーナーはWi-Fiの親局(親機)に相当し、クライアントはWi-Fiの子局(子機)に相当する。この役割決定は、例えばP2PではGO Negotiationに対応する。なお役割決定が行われる前の状態のWFDモードでは、通信装置151は、親局でも子局でもない状態である。具体的には、まず通信を行う機器との間で、一方の機器が、機器探索コマンドを発行し、WFDモードで接続する機器を探索する。通信相手となる他方の機器が探索されると、両者の間で、互いの機器で供給可能なサービスや機能に関する情報を確認する。なお、この機器供給情報確認はオプションであり、必須ではない。この機器供給情報確認フェーズは、例えばP2PのProvision Discoveryに対応する。次に、この機器供給情報を互いに確認することで、その役割として、どちらがP2Pのクライアントとなり、どちらがP2Pのグループオーナーとなるかを決定する。次に、クライアントとグループオーナーが決定したら、両者の間で、WFDによる通信を行うためのパラメータを交換する。交換したパラメータに基づいて、P2Pのクライアントとグループオーナーとの間で残りの無線接続の処理、IP接続の処理を行う。なおWFDモードでは、通信装置151は、上述したGO Negotiationを実行せずに、通信装置151が必ずGOとして動作しても良い。すなわち通信装置151は、Autonomous GOモードであるWFDモードとして動作しても良い。また通信装置151がWFDモードで動作している状態とはすなわち例えば、WFDによる接続が確立されていないが通信装置151がGOとして動作している状態や、WFDによる接続が確立されており、且つ通信装置151がGOとして動作している状態である。
【0027】
ソフトウェアAPモード(ソフトAPモード)では、通信を行う機器(例えば、情報処理装置101と通信装置151)との間で、一方の機器(例えば、情報処理装置101)が、各種サービスを依頼する役割を果たすクライアントとなる。そして、もう一方の機器が、Wi-Fiにおけるアクセスポイントの機能をソフトウェアの設定により実現する。ソフトウェアAPはWi-Fiの親局に相当し、クライアントはWi-Fiの子局に相当する。ソフトウェアAPモードでは、クライアントは、機器探索コマンドによりソフトウェアAPとなる機器を探索する。ソフトウェアAPが探索されると、クライアントとソフトウェアAPとの間で残りの無線接続の処理(無線接続の確立等)を経て、その後、IP接続の処理(IPアドレスの割当等)を行うことになる。なお、クライアントとソフトウェアAPとの間で無線接続を実現する場合に送受信されるコマンドやパラメータについては、Wi-Fi規格で規定されているものを用いればよく、ここでの説明は省略する。
【0028】
本実施形態において、通信装置151がダイレクト接続を確立・維持している場合、通信装置151が属するネットワーク内で、親局として動作する。なお、親局とは無線ネットワークを構築する装置であり、無線ネットワークへの接続に用いられるパラメータを子局に対して提供する装置である。無線ネットワークへの接続に用いられるパラメータとは、例えば、親局が利用するチャネルに関するパラメータである。子局は、当該パラメータを受信することで、親局が利用しているチャネルを用いて、親局が構築している無線ネットワークに接続する。ダイレクト接続モードにおいては、通信装置151が親局として動作するため、ダイレクト接続モードにおける通信にいずれの周波数帯を用いるのか、及びいずれのチャネルを用いるのかを、通信装置151が決定することが可能である。本実施形態では、通信装置151は、ダイレクト接続モードにおける通信に、2.4GHzの周波数帯に対応するチャネルと、5GHzの周波数帯に対応するチャネルとを使用可能であるものとする。
【0029】
<インフラストラクチャ(インフラ)接続方式について>
インフラ接続は、通信を行う機器(例えば、情報処理装置101と通信装置151)のネットワークを統括するアクセスポイント(例えば、AP131)と接続し、機器同士がアクセスポイントを介して通信するための接続形態である。通信装置151は、接続モードの1つとして、インフラ接続で通信するためのモード(インフラ接続モード)でも動作可能である。
【0030】
インフラ接続において、各機器は機器探索コマンドによりアクセスポイントを探索する。アクセスポイントが探索されると、機器とアクセスポイントとの間で残りの無線接続の処理(無線接続の確立等)を経て、その後、IP接続の処理(IPアドレスの割当等)を行うことになる。なお、機器とアクセスポイントとの間で無線接続を実現する場合に送受信されるコマンドやパラメータについては、Wi-Fi規格で規定されているものを用いればよく、ここでの説明は省略する。
【0031】
本実施形態において通信装置151がインフラ接続で動作する際はAP131が親局、通信装置151が子局として動作する。すなわち本実施形態では、インフラ接続は、子機として動作する通信装置151と親機として動作する装置との間の接続を指す。通信装置151がインフラ接続を確立しており、且つ情報処理装置101もAP131とのインフラ接続を確立している場合、通信装置151と情報処理装置101との間で、AP131を介した通信が可能となる。インフラ接続における通信に使用されるチャネルは、AP131により決定されるため、通信装置151は、AP131により決定されたチャネルを使用してインフラ接続における通信を実行する。本実施形態では、通信装置151は、インフラ接続における通信に、2.4GHzの周波数帯に対応するチャネルと、5GHzの周波数帯に対応するチャネルとを使用可能であるものとする。なお通信装置151は、インフラ接続における通信には、5GHzの周波数帯のうちDFS帯に対応するチャネルも使用可能である。なお、情報処理装置101は、通信装置151とAP131を介して通信するためには、AP131によって形成され、情報処理装置101が属するネットワーク上に、通信装置151が属していることを認識する必要がある。
【0032】
<ネットワークセットアップモードについて>
通信装置151は、ネットワークセットアップモードで動作可能である。通信装置151がネットワークセットアップモードでの動作を開始するためのトリガは、例えば、ネットワークセットアップモード用ボタンをユーザが押下することであっても良いし、通信装置151が、着荷後初めて起動(電源ON)することであっても良い。ネットワークセットアップモード用ボタンは、通信装置151が備えるハード(物理)ボタンであっても良いし、通信装置151が表示部158に表示するソフトウェアボタンであっても良い。
【0033】
通信装置151は、ネットワークセットアップモードでの動作を開始すると、Wi-Fi通信を有効化する。具体的には、通信装置151は、Wi-Fi通信の有効化処理として、ネットワークセットアップモード専用の、通信装置151の内部のAP(接続設定用AP)を有効化する。これにより、通信装置151は、情報処理装置101とWi-Fiによるダイレクト接続を確立可能な状態になる。接続設定用APと接続するための接続情報(SSID(Service Set Identifier)やパスワード)は、情報処理装置101にインストールされたセットアップ用アプリに予め保持されており、情報処理装置101は、接続設定用APと接続するための接続情報を予め認識しているものとする。そのため、ダイレクト接続モードにおいて有効化されるAPの接続情報と異なり、接続設定用APと接続するための接続情報は、ユーザによって任意に変更できないものとする。なお、ネットワークセットアップモードにおいて、通信装置151は、通常のWi-Fiでなく、Wi-Fi Direct(WFD)によって情報処理装置101と接続しても良い。すなわち、通信装置151は、Group Ownerとして動作し、WFDによる通信によって情報処理装置101から設定コマンドを受信しても良い。またネットワークセットアップモードにおいて、通信装置151は、Bluetoothによって情報処理装置101と接続しても良い。ここでBluetoothとは、Bluetooth ClassicやBluetooth Low Energy(BLE)を含む。すなわち例えば、通信装置151は、ネットワークセットアップモードにおいてBLEにおけるスレーブ装置として動作し、BLEによる通信によって情報処理装置101から設定コマンドを受信しても良い。また、ネットワークセットアップモードにおいて、通信装置151は、Wi-Fiによるネットワークセットアップと、BLEによるネットワークセットアップの両方を実行可能となっても良い。すなわち通信装置151は、ネットワークセットアップモードでの動作を開始すると、Wi-Fi通信とBLE通信の両方を有効化しても良い。具体的には通信装置151は、ネットワークセットアップモードでの動作を開始すると、接続設定用APの有効化と、BLEによってアドバタイズ情報を送信してBLE接続が可能となる状態であるアドバタイズ状態の有効化の両方を実行しても良い。
【0034】
通信装置151は、ネットワークセットアップモードとして動作する場合、通信部156を制御して、ネットワークセットアップモードとして動作中のみ有効な、セットアップ用アクセスポイント(接続設定用AP)として動作する。当該セットアップ用アクセスポイントは、上述のソフトAPモード時に有効化されるアクセスポイントとは異なるアクセスポイントである。また当該セットアップ用アクセスポイントのSSIDは、情報処理装置101の設定アプリが認識可能な所定の文字列を含むものとする。
【0035】
また、ネットワークセットアップモードとして動作している通信装置151は、セットアップ用アクセスポイントと接続している情報処理装置101との通信において、所定の通信プロトコル(セットアップ用通信プロトコル)を用いるものとする。セットアップ用通信プロトコルは具体的には例えば、SNMP(Simple Network Management Protocol)である。
【0036】
通信装置151は、ネットワークセットアップモードでの動作を開始した後、所定の時間が経過したら、ネットワークセットアップモードでの動作を停止し、セットアップ用アクセスポイントを無効化する。また、ネットワークセットアップモード中に情報処理装置101から、AP131へ接続するための接続情報と無線通信の動作モードの変更指示を受け取った場合にも、セットアップ用アクセスポイントを無効化する。また、当該セットアップ用アクセスポイントは、接続にパスワードを必要としないアクセスポイントであるものとする。なお、セットアップ用アクセスポイントは、パスワードを必要とするアクセスポイントであっても良い。その場合、セットアップ用アクセスポイントとの接続に用いられるパスワードは、設定アプリが予め把握している固定の(ユーザが変更できない)パスワードであるものとする。
【0037】
通信部156には、MACアドレス(Media Access Control address)が割り当てられている。MACアドレスは通信部を識別するために使用される識別子であり、通信装置や情報処理装置を含めたすべての装置において各通信部に一意に割り当てられている。したがって、装置の個体を識別するためにしばしば用いられる。本実施形態では、装置を識別するために使用される識別子を装置識別情報と呼ぶ。つまり、MACアドレスは、装置識別情報の一例である。本実施形態では、装置識別情報をMACアドレスとしているがこれに限られない。例えば、通信装置151に割り当てられた製造番号(シリアル番号)等であってもよい。
【0038】
近距離無線通信部157は、情報処理装置101等の装置と近距離で無線接続するための構成であり、例えば、情報処理装置101内の近距離無線通信部111と接続可能である。通信方式としては、例えば、NFC、Bluetooth Classic、BLE、Wi-Fi Aware等が挙げられる。
【0039】
RAM153は、バックアップ電源を必要とするSRAM等で構成される。なお、RAM153は、不図示のデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに記憶することができる。また、通信装置151の設定情報や通信装置151の管理データ等を格納するメモリエリアもRAM153に設けられている。また、RAM153は、CPU154の主メモリとワークメモリ、受信バッファとしても用いられ、情報処理装置101等から受信した印刷情報を一旦保存したり、各種の情報を保存する。
【0040】
ROM152は、CPU154が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを記憶する。本実施形態では、ROM152に記憶されている各制御プログラムは、ROM152に記憶されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行う。また、通信装置151を識別するためのシリアル番号もROM152に格納される。シリアル番号は、通信装置151の製造元が通信装置151を識別するために一意に割り当てたものである。本実施形態では、シリアル番号も、通信装置151を識別可能な装置識別情報として利用可能である。通信装置151がプリンタの場合は、インクの利用状況や残量などがプリントエンジン155から収集されROM152に格納される。CPU154は、システム制御部であり、通信装置151の全体を制御する。
【0041】
プリントエンジン155は、RAM153に保存された情報や情報処理装置101等から受信した印刷ジョブに基づき、インク等の記録剤を紙等の記録媒体上に付与することで記録媒体上に画像を形成し、印刷結果を出力する。なお、一般的に、情報処理装置101等から送信される印刷ジョブのデータ量は大きいため、印刷ジョブの通信には、高速通信が可能な通信方式を用いることが求められる。そのため、通信装置151は、近距離無線通信部157よりも高速な通信が可能な通信部156を介して、印刷ジョブを受信する。表示部158は、例えばパネルであり、データの表示や通信装置151の状態の通知を行う。
【0042】
なお、通信装置151には、外付けHDDやSDカード等のメモリがオプション機器として装着されてもよく、通信装置151に保存される情報は、当該メモリに保存されても良い。
【0043】
ところで、通信装置151の識別情報(例えば上記のMACアドレス)が通信装置151の外部の装置である情報処理装置101に取得される構成を想定する。そのような構成において例えば、情報処理装置101は、通信装置151のMACアドレスに紐づけて通信装置151の情報を管理している。一方、MACアドレスのランダム化技術等、通信装置151の識別情報をランダム化する技術が知られている。しかしながら、通信装置151の情報を管理している中でMACアドレスがランダム化された場合、情報処理装置101は、ランダム化された識別情報を取得しても、通信装置151の情報を適切に管理することができない。
【0044】
そこで、本実施形態では、情報処理装置101が通信装置151のランダム化される前の識別情報を取得可能とする。これにより、情報処理装置101は、通信装置151の情報を適切に管理することができる。なお本実施形態において、通信装置151として、MACアドレスのランダム化機能に対応している装置と、MACアドレスのランダム化機能に対応していない装置とが存在するものとする。MACアドレスのランダム化機能とは、Institute of Electrical and Electronics Engineers(IEEE)によって設定された機能である。そして、IEEEによって設定されたルールに従って生成されたMACアドレスを装置に割り当てる機能である。以下では、MACアドレスのランダム化機能によりランダムな値として生成されたMACアドレスをランダムMACアドレスという。MACアドレスのランダム化機能によりランダムに生成されておらず、変更されることがない固定の値のMACアドレスを固定MACアドレスという。そして、MACアドレスのランダム化機能に対応している装置は、より新しいモデル(型番)の装置であり、MACアドレスのランダム化機能に対応していない装置は、より古いモデルの装置であるものとする。
【0045】
また、MACアドレスのランダム化機能に対応している装置は、MACアドレスのランダム化機能を有効化するか否かの設定を実行可能である。そして、MACアドレスのランダム化機能に対応しており且つMACアドレスのランダム化機能を有効化する設定がなされている通信装置151は、外部の装置にはランダムMACアドレスを提供するものとする。すなわち通信装置151の通信部156に割り当てられたMACアドレスとして、ランダムMACアドレスが使用されるものとする。なおMACアドレスのランダム化機能を有効化する設定がなされている場合、通信装置151の通信部156に割り当てられたMACアドレスは、定期的に変更される。そして変更後のMACアドレスも、MACアドレスのランダム化機能によりランダムな値として生成される。MACアドレスのランダム化機能に対応しているがMACアドレスのランダム化機能を有効化する設定がなされていない通信装置151は、固定MACアドレスを提供するものとする。またMACアドレスのランダム化機能に対応していない通信装置151も、外部の装置には固定MACアドレスを提供するものとする。すなわち通信装置151の通信部156に割り当てられたMACアドレスとして、固定MACアドレスが使用されるものとする。
【0046】
なお通信装置151の通信部156に割り当てられたMACアドレスには、ランダムMACアドレスを示す情報が含まれている。MACアドレスは12桁の16進数を表す英数字と「:」といった区切り子で表現される(例えば、1A:2B:3C:4D:5E:6F)。MACアドレスの区切り子で分けられている英数字二文字はオクテットと呼ばれる。1オクテット目(上記例での1A)の値を2進数で表現した場合の2ビット目が1であるMACアドレスが、ランダムMACアドレスであるとIEEEによって定義されている。なお1オクテット目の値を2進数で表現した場合の2ビット目が1であるMACアドレスとは具体的には例えば、1オクテット目の値が2,6,A,Eのいずれかの値で終わる値であるMACアドレスである。またランダムMACアドレスが上述のような定義であるため、固定MACアドレスは、1オクテット目の値が2,6,A,E以外の値で終わる値であるMACアドレスとなる。
【0047】
図2は、情報処理装置101で動作するプリンタ管理アプリケーションのユーザインタフェース画面の一例を示す図である。プリンタ管理アプリケーションは、通信装置151と情報処理装置101とを通信可能に設定するためのソフトウェアであり、例えばIPアドレス等のネットワークに関する基本的な設定を行うことができる。また、プリンタ管理アプリケーションは、機能の一つとしてプリンタ管理機能を有し、通信装置151から取得した通信装置151の情報を管理する。
【0048】
プリンタ管理アプリケーションは、プリンタ管理情報一覧画面201を表示部108に表示する。プリンタ管理情報一覧画面201は、通信部110を介して過去に管理情報を取得したことがある通信装置151の一覧を表示する。プリンタ管理情報項目表示エリア202には、管理情報の項目が表示される。ここでは、一例として、MACアドレス、機種名、設置場所、状態、IPアドレス、ポート名、ファームウェアのバージョン、接続SSIDが表示されている。しかしながら、管理情報の項目は、図2に示すものに限定されない。例えば、インクの残量、廃インクタンクの状態などの消耗品情報の項目や、他の項目があってもよい。
【0049】
プリンタ管理情報表示エリア203には、各通信装置151の管理情報が表示される。情報処理装置101と通信装置151との間がオフライン状態であるために、情報処理装置101が管理情報を取得できない場合には、過去に取得された最新の管理情報が表示される。
【0050】
プリンタ管理情報更新ボタン204は、ユーザにより押下されることで、各通信装置151の管理情報の更新処理を実行する。更新処理とは例えば、通信装置151からの管理情報の再取得である。更新処理が実行されると、プリンタ管理情報表示エリア203には、最新の管理情報が表示される。また、プリンタ管理アプリケーションは、過去に取得した管理情報のレコードの履歴を参照する機能を有してもよい。
【0051】
図3は、プリンタ管理情報一覧画面201上の管理情報を更新する処理を示すフローチャートである。図3の処理は例えば、CPU103がROM104に記憶されたプログラムをRAM105に読み出して実行することにより実現される。図3の処理は例えば、プリンタ管理アプリケーションの起動指示もしくはプリンタ管理情報更新ボタン204の押下を受け付けると開始される。そして、図3の処理により、プリンタ管理情報一覧画面201が表示される。なお、図3の処理が開始する前に既に、プリンタ管理アプリケーションで管理されている管理情報が存在するとする。ここでは、図2に示すような管理情報が既に管理されているとする。そのような管理情報に含まれるMACアドレス(図2の「XXXX」「YYYY」「ZZZZ」)は、上述の固定MACアドレスであるか、もしくはランダム化される前のMACアドレスである。以降、MACアドレスがランダム化機能によりランダム化された際に装置内部に保持されている、ランダム化される前のMACアドレスを特に「オリジナルMACアドレス」と呼ぶものとする。MACアドレスのランダム化機能によりランダム化される前のMACアドレスとは言い換えれば、MACアドレスのランダム化機能によりランダム化されていないMACアドレスである。
【0052】
S101において、CPU103は、通信装置151と通信してMACアドレスを取得する。情報処理装置101が、管理している複数の通信装置151と通信可能である場合には、CPU103は、複数の通信装置151それぞれからMACアドレスを取得する。その場合、各通信装置151とユニキャストで通信してもよいし、複数の通信装置151とブロードキャストまたはマルチキャストで通信してもよい。また、通信プロトコルは限定されず、例えばSNMPまたはHTTP(Hyper Text Transfer Protocol)などのアプリケーション層のプロトコルでもよいし、P2Pで接続しているのであればデータリンク層のプロトコルでもよい。また、通信インタフェースは、通信部110でもよいし、Bluetoothなどの近距離無線通信部111でもよい。また、S101では、MACアドレスの他に、S102の判定に用いられる情報が取得されるようにしても良い。
【0053】
S102において、CPU103は、S101で取得されたMACアドレスがランダム化されたMACアドレスであるか否かを判定する。CPU103は例えば、MACアドレスがランダム化されている場合に1となるMACアドレス内のビットから判定してもよい。MACアドレスがランダム化されているか否かの判定は、他の方法により行われても良い。例えば、MACアドレスがランダム化する前のオリジナルMACアドレスを取得可能であるか否かに基づいて上記の判定が行われてもよい。例えば、通信装置151において、MACアドレスをランダム化する場合に、MIB(Management Information Base)にオリジナルMACアドレスを格納するOID(Object Identifier)を設ける。そして、S101で上記OIDにより取得の試みがされた場合に、情報が空であるか、エラーであれば、MACアドレスはランダム化されていないと判定しても良い。また、情報処理装置101で管理されているMACアドレスと、S101で取得されたMACアドレスとに差分があるか否かに基づいて、S102の判定が行われてもよい。その場合、差分がなければ、MACアドレスはランダム化されていないと判定しても良い。また、S101でMACアドレスがランダム化されている状態か否かを判定可能な情報を通信装置151から取得し、その情報に基づいてS102の判定が行われても良い。例えば、通信装置151のMIBにMACアドレスのランダム化のON/OFFを示すOIDを設ける。そして、S101で上記OIDの指定により取得された情報がOFFであれば、MACアドレスはランダム化されていないと判定しても良い。
【0054】
S102でMACアドレスがランダム化されていないと判定された場合、S103において、CPU103は、S101で取得されたMACアドレスに対応する通信装置151から、通信装置151の管理情報を取得する。取得され得る管理情報は例えば、図2のプリンタ管理情報一覧画面201で表示されるMACアドレス、機種名、設置場所、状態、IPアドレス、ポート名、ファームウェアのバージョン、接続SSIDなどの項目の情報である。管理情報は例えば、SNMPにより取得される。管理している通信装置151が複数台ある場合は、複数台の通信装置151と通信することにより各通信装置151の管理情報を取得してもよい。
【0055】
S104において、CPU103は、保存している内部の管理情報のうちS101で取得されたMACアドレスに紐づけられた管理情報を、S103で取得された管理情報に更新する。管理している通信装置151が複数台ある場合は、複数台の通信装置151の管理情報を更新してもよい。なお、管理情報はデータベースなどに保存し、MACアドレスを主キーとして用いてもよい。また、MACアドレスを複合主キーの一つの項目として用いてもよい。また、MACアドレスが外部キーとして用いられてもよい。また、MACアドレスの一部がキーとして用いられてもよい。また、MACアドレスを含む情報のハッシュ値がキーとして用いられてもよい。また、S103の処理のタイミングは、図3に示すタイミングでなくても良い。例えば、S101においてS103の処理が実行されても良い。また、S104では、保存されている管理情報の更新の他、新たな管理情報の追加が行われてもよい。
【0056】
S105において、CPU103は、プリンタ管理情報一覧画面201を表示する。その後、図3の処理を終了する。
【0057】
プリンタ管理情報一覧画面201には、過去に管理情報を取得したことがある通信装置151の一覧が表示される。また、プリンタ管理情報表示エリア203には、各通信装置151の管理情報が表示される。なお、オフライン状態のため通信装置151から管理情報が取得できない場合には、過去に取得した最新の管理情報を表示する。S105で表示される内容は図2に示す表示内容に限定されない。また、プリンタ管理情報表示エリア203においてプリンタ管理情報の行の選択操作を受け付けた場合、選択されたプリンタの詳細情報を他の画面で表示してもよい。また、選択されたプリンタについて、過去に取得した複数の管理情報の履歴を表示する機能を有してもよい。
【0058】
S102でMACアドレスがランダム化されていると判定された場合、S106において、CPU103は、その通信装置151からオリジナルMACアドレスを取得する。本実施形態では、MIBにオリジナルMACアドレスを格納するOIDを設ける。ここで構成されるMIBは、プリンタMIB等の標準MIBであっても良いし、ベンダ独自に定義したプライベートMIBであっても良い。S106では、CPU103は例えば、MIBの取得コマンドであるGet-Requestを用いてオリジナルMACアドレスを取得する。S106では、管理している通信装置151が複数台ある場合は、複数台の通信装置151と通信することにより各通信装置151のオリジナルMACアドレスを取得してもよい。
【0059】
S107において、CPU103は、S106でオリジナルMACアドレスを取得した通信装置151から、通信装置151の管理情報を取得する。取得され得る管理情報は例えば、図2のプリンタ管理情報一覧画面201で表示されるMACアドレス、機種名、設置場所、状態、IPアドレス、ポート名、ファームウェアのバージョン、接続SSIDなどの項目の情報である。管理情報は例えば、SNMPにより取得される。管理している通信装置151が複数台ある場合は、複数台の通信装置151と通信することにより各通信装置151の管理情報を取得してもよい。また、S107の処理のタイミングは、図3に示すタイミングでなくても良い。例えば、S101においてS107の処理が実行されても良い。
【0060】
S108において、CPU103は、S107で取得された管理情報において、プリンタ管理アプリケーションで保存している管理情報に紐付けられているMACアドレスと一致するS106で取得されたオリジナルMACアドレスに対応する管理情報を特定する。そして、CPU103は、プリンタ管理アプリケーションで保存している管理情報を、特定した管理情報に更新する。管理している通信装置151が複数台ある場合は、複数台の通信装置151の管理情報を更新してもよい。
【0061】
MACアドレスがキーとして用いられている場合、S108では、データベースのキーやテーブルを他の識別子で更新してもよい。例えば、ランダム化されているMACアドレスが用いられているキーをシリアル番号などの他の種類の識別子に更新し、MACアドレスがランダム化されている状態であることを示す項目を新たなカラムとしてデータベース内に追加しても良い。S108の後、上述のS105に進む。
【0062】
本実施形態では、プリンタ管理情報の更新の指示を受け付けたことに基づいて、プリンタ管理情報一覧画面201が表示されるまでの処理として図5を説明した。しかしながら、表示処理が行われなくても良い。即ち、S105での表示処理が行われず、プリンタ管理情報の更新処理がバックグラウンドで実行されても良い。そして、他のアプリケーションがその管理情報を参照するようにしてもよい。
【0063】
図4は、通信装置151が情報を情報処理装置101に送信する処理を示すフローチャートである。図4の処理は例えば、CPU154がROM152に記憶されたプログラムをRAM153に読み出して実行することにより実現される。なお、図4の処理は、MACアドレスがランダム化される場合に実行される。
【0064】
S201において、CPU154は、情報処理装置101の起動時に、オリジナルMACアドレスを内部に保持する。例えば、CPU154は、通信装置151のMIBのオリジナルMACアドレスを格納するOIDにオリジナルMACアドレスを格納する。なお、オリジナルMACアドレスが既に保存されている場合には、S201の処理は行われなくても良い。また、MACアドレスがランダム化されるときに保持するようにしても良い。
【0065】
S202において、CPU154は、MACアドレスのランダム化を有効にする。例えば、通信装置151の本体のボタンやタッチパネルを介して、通信装置151のMACアドレスのランダム化を有効にする操作を受け付ける。CPU154は、受け付けた操作に基づいて、MACアドレスのランダム化を実行する。なお、MACアドレスのランダム化を有効にする操作は、情報処理装置101など外部装置から情報を受信するなど、リモートで行われてもよい。
【0066】
S203において、CPU154は、通信部156に割り当てられた現在のMACアドレス、即ちランダム化されたMACアドレスを情報処理装置101に送信する。S203の処理は、S101の処理に対応して実行されても良いし、S202の処理をトリガとして実行されても良い。また、S203の送信は、Wi-Fi通信のBeaconに含めて送信するなどの方法により行われても良い。
【0067】
S204において、CPU154は、オリジナルMACアドレスを情報処理装置101に送信する。S204の処理は、S106に対応して実行されても良い。例えば、情報処理装置101からのGet-Requestコマンドの受信に応じて、MIBのOIDに格納されているオリジナルMACアドレスを情報処理装置101に送信するようにしても良い。また、オリジナルMACアドレスが記憶されているメモリを参照して、オリジナルMACアドレスを送信するようにしても良い。
【0068】
S205において、CPU154は、通信装置151の管理情報を情報処理装置101に送信する。S205の処理は、S107に対応して実行されても良い。例えば、情報処理装置101からのSNMPによるコマンドの受信に応じて、管理情報を情報処理装置101に送信するようにしても良い。S205の後、図4の処理を終了する。
【0069】
ランダム化されたMACアドレス、オリジナルMACアドレス、管理情報、の各情報の送信タイミングは図4に示す例に限られない。例えば、S203~S204の送信タイミングが図4に示す例と異なっていても良い。また、それらの情報を対応づけて同時に送信してもよい。
【0070】
以上のように、本実施形態によれば、通信装置151から取得したMACアドレスがランダム化されたMACアドレスと判定された場合、ランダム化される前のオリジナルMACアドレスを通信装置151から取得する。これにより、情報処理装置151においてMACアドレスと紐付けられた管理情報を適切に管理することができる。
【0071】
[第2実施形態]
以下、第1実施形態と異なる点について第2実施形態を説明する。本実施形態では、暗号化可能なプロトコルによりオリジナルMACアドレスを暗号化して情報処理装置101に送信する構成を説明する。そのような構成により、オリジナルMACアドレスの情報が第3者に傍受されることを防ぐことができ、ユーザのプライバシーを保護することができる。
【0072】
図5は、プリンタ管理情報一覧画面201上の管理情報を更新する処理を示すフローチャートである。図5の処理は例えば、CPU103がROM104に記憶されたプログラムをRAM105に読み出して実行することにより実現される。図5のS301~S305、S307~S309は、図3のS101~S105、S106~S108における説明と同じであるので、それらの説明を省略する。ただし、S307、S308においては、通信装置151から送信されたオリジナルMACアドレスと管理情報は暗号化されている。そのため、S307、S308において、CPU103は、オリジナルMACアドレスと管理情報の復号化を行う。
【0073】
S301で取得されたMACアドレスがランダム化されたMACアドレスであると判定された場合、S306において、CPU103は、情報処理装置101と通信装置151との間で暗号化通信が設定されているか否かを判定する。S301の判定は例えば、情報処理装置101と通信装置151の間におけるネットワーク設定に基づいて行われても良い。例えば、SSL(TLS)暗号化通信が設定されている場合には、情報処理装置101と通信装置151の間においてサーバ証明書と公開鍵を用いて両装置間で使用可能な共通鍵が生成され、その共通鍵により暗号化通信が実現される。なお、SSLは、Secure Socket Layerの略であり、TLSは、Transport Layer Securityの略である。
【0074】
S306で暗号化通信が設定されていると判定された場合、S307~S309、S305の処理が実行される。一方、S301で暗号化通信が設定されていないと判定された場合、S310に進む。
【0075】
S310において、CPU103は、情報処理装置101と通信装置151の間の暗号化通信を設定する。S310の処理は、ユーザに対して暗号化通信の設定を促すガイダンスを表示することにより実行されても良いし、ユーザ操作を受け付けることなく、暗号化通信の設定を行うようにしても良い。そして、S310において、CPU103は、通信装置151からオリジナルMACアドレスを取得する。その際、オリジナルMACアドレスは、S310における設定により暗号化されている。以降、S308、S309、S305の処理が実行される。なお、S310で暗号化通信が設定されるため、以降の処理においても暗号化通信が実行される。しかしながら、図5の処理が終了したときに、S310で設定された暗号化通信の設定を解除しても良いし、その際、ユーザに対して暗号化通信の設定解除に関するメッセージを表示しても良い。また、暗号化通信の設定解除のタイミングは、図5の処理を終了する前でもよく、例えば、S308の処理が終了したタイミングでも良い。
【0076】
また、S306の判定は、図5に示すタイミングに限られず、例えば、S301の前に実行されても良い。その場合、暗号化通信が設定されていると判定された場合には、図5の処理において、情報処理装置101と通信装置151の間の通信はすべて暗号化されることになる。また、S306の判定ではなく、図5の処理の開始前に、情報処理装置101と通信装置151の間の暗号化通信を設定するようにしても良い。その場合に、ユーザ操作を受け付けるようにしても良いし、ユーザ操作を受け付けることなく暗号化通信の設定が行われるようにしても良い。
【0077】
以上のように、本実施形態によれば、通信装置151から取得するオリジナルMACアドレスを暗号化された通信により取得することができる。そのような構成により、オリジナルMACアドレスの情報が第3者に傍受されることを防ぐことができ、ユーザのプライバシーを保護することができる。
【0078】
[第3実施形態]
以下、第1及び第2実施形態と異なる点について説明する。本実施形態では、情報処理装置101と通信装置151との間で、オリジナルMACアドレスの代わりに、オリジナルMACアドレスを含む情報のハッシュ値を通信する。そのような構成により、オリジナルMACアドレス自体を通信せずに、管理情報を適切に管理することができる。
【0079】
図6は、プリンタ管理情報一覧画面201上の管理情報を更新する処理を示すフローチャートである。図6の処理は例えば、CPU103がROM104に記憶されたプログラムをRAM105に読み出して実行することにより実現される。図6のS401~S405は、図3のS101~S105における説明と同じであるので、それらの説明を省略する。
【0080】
S401で取得されたMACアドレスがランダム化されたMACアドレスであると判定された場合、S406において、CPU103は、通信装置151に対してオリジナルMACアドレスを含む情報のハッシュ値を要求して取得する。例えば、CPU103は、通信装置151に対して、オリジナルMACアドレスと、S401で情報処理装置101に送信されたランダム化されたMACアドレスとを合成したデータのハッシュ値を要求して取得する。なお、ハッシュ値の作成方法、即ちハッシュ関数は、情報処理装置101および通信装置151の両方で既知である。
【0081】
S407において、CPU103は、通信装置151から通信装置151の管理情報を取得する。取得され得る管理情報は例えば、図2のプリンタ管理情報一覧画面201で表示されるMACアドレス、機種名、設置場所、状態、IPアドレス、ポート名、ファームウェアのバージョン、接続SSIDなどの項目の情報である。管理情報は例えば、SNMPにより取得される。管理している通信装置151が複数台ある場合は、複数台の通信装置151と通信することにより各通信装置151の管理情報を取得してもよい。なお、S407で取得された管理情報は、S406で通信装置151から取得されたハッシュ値と対応づけて記憶される。
【0082】
S408において、CPU103は、プリンタ管理アプリケーションで保存しているMACアドレスと、S401で取得されたランダム化されたMACアドレスとを合成したデータのハッシュ値を取得する。なお、ハッシュ値の算出においては、通信装置151がハッシュ値を算出した方法と同じ方法が用いられる。また、S401で取得されたランダム化されたMACアドレスが複数ある場合は、各ランダム化されたMACアドレスとの合成が行われる。そして、CPU103は、S406で通信装置151から取得されたハッシュ値のうち、プリンタ管理アプリケーションで保存しているMACアドレスに基づいて取得されたハッシュ値と等しいものを特定する。
【0083】
S409において、CPU103は、プリンタ管理アプリケーションで保存している管理情報を、特定したハッシュ値に対応する管理情報に更新する。S409の後、S405に進む。
【0084】
本実施形態では、通信装置151から、オリジナルMACアドレスと、S401で情報処理装置101に送信されたランダム化されたMACアドレスとを合成したデータのハッシュ値を取得することを説明した。本実施形態では、ハッシュ値は、プリンタ管理アプリケーションが通信装置151の管理情報を識別するために用いられる。そのため、オリジナルMACアドレスに対して合成するデータはランダム化されたMACアドレスに限られず、プリンタ管理アプリケーションおよび通信装置151の両方が参照可能なデータであればよい。そのため、オリジナルMACアドレスに合成するデータを別途、通信装置151と情報処理装置101の間で通信するようにしてもよい。また、通信装置151において、オリジナルMACアドレスのみからハッシュ値を算出するようにしてもよい。その場合、情報処理装置101では、S408において、プリンタ管理アプリケーションにより保存しているMACアドレスのみからハッシュ値を算出する。
【0085】
また、本実施形態では、データを合成する方法およびハッシュ値を算出する方法は、通信装置151および情報処理装置101の両方において既知であるとした。しかしながら、データを合成する方法およびハッシュ値を算出する方法に関する情報を別途、通信装置151と情報処理装置101の間で通信するようにしても良い。
【0086】
以上のように、本実施形態によれば、情報処理装置101と通信装置151との間で、オリジナルMACアドレスの代わりに、オリジナルMACアドレスを含む情報のハッシュ値を通信する。そのような構成により、オリジナルMACアドレス自体を通信せずに、管理情報を適切に管理することができる。
【0087】
[第4実施形態]
以下、第1~第3実施形態と異なる点について第4実施形態を説明する。本実施形態では、オリジナルMACアドレスと異なる種類の情報を通信装置の識別子として用いることを可能とする。
【0088】
図7は、プリンタ管理情報一覧画面201上の管理情報を更新する処理を示すフローチャートである。図7の処理は例えば、CPU103がROM104に記憶されたプログラムをRAM105に読み出して実行することにより実現される。図7のS501~S505、S507~S509は、図3のS101~S105、S106~S108における説明と同じであるので、それらの説明を省略する。
【0089】
S501で取得されたMACアドレスがランダム化されたMACアドレスであると判定された場合、S506において、CPU103は、プリンタ管理アプリケーションにより保存している管理情報に対応する通信装置151が、MACアドレス以外で通信装置151を一意に識別するための識別子(以下、第2識別子と呼ぶ)を有する装置であるか否かを判定する。本実施形態では、第2識別子とは例えば、シリアル番号である。例えば、機種情報(機種名など)がインクジェットプリンタを示す場合、通信装置151は、第2識別子を有すると判定される。例えば、機種情報(機種名など)がレーザープリンタを示す場合、通信装置151は、第2識別子を有さないと判定される。本実施形態では、第2識別子は、管理情報の一つであっても良いし、管理情報以外の情報として管理情報と紐付けられて情報処理装置101内部に記憶されていても良い。S506で第2識別子を有する装置でないと判定された場合、S507~S509、S505の処理が実行される。即ち、ランダムMACアドレスに対応する通信装置151からオリジナルMACアドレスを取得し、オリジナルMACアドレスに紐付けられた管理情報を更新する。
【0090】
一方、S506で第2識別子を有する装置であると判定された場合、S510において、CPU103は、第2識別子、例えばシリアル番号を、ランダムMACアドレスの通信装置151から取得する。なお、S510では、第2実施形態と同様に、第2識別子を暗号化通信で取得しても良い。また、第2識別子自体ではなく、第3実施形態と同様に、第2識別子を含む情報のハッシュ値を取得しても良い。なお、S510では、第2識別子を取得する通信装置151が複数であっても良い。
【0091】
S511において、CPU103は、S510で取得された第2識別子のうち、プリンタ管理アプリケーションにより保存している管理情報に対応する通信装置151の第2識別子と同じ識別子を特定する。そして、CPU103は、特定した通信装置151から通信装置151の管理情報を取得する。取得され得る管理情報は例えば、図2のプリンタ管理情報一覧画面201で表示されるMACアドレス、機種名、設置場所、状態、IPアドレス、ポート名、ファームウェアのバージョン、接続SSIDなどの項目の情報である。
【0092】
S512において、CPU103は、プリンタ管理アプリケーションにより保存されている管理情報を、S511で特定した第2識別子に対応して取得された管理情報に更新する。その後、S505の処理が実行される。
【0093】
図7では、第2識別子はS510のタイミングで取得するとして説明したが、他のタイミングでも良い。例えば、通信装置151の管理情報とともに取得しても良い。
【0094】
以上のように、本実施形態によれば、MACアドレス以外の第2識別子を有する通信装置からは、シリアル番号等の第2識別子を取得し、当該通信装置の管理情報を適切に管理することができる。
【0095】
[その他の実施形態]
上述の実施形態では、CPU103は、通信装置151から取得されたMACアドレスがランダム化されたMACアドレスであるか否かを判定し、その判定結果に応じて処理を切り分けていた。しかしながらこの形態に限定されない。例えばCPU103は、MACアドレスを通信装置151から取得する代わりに、通信装置151においてMACアドレスのランダム化機能が有効化されているか否かを示す情報を通信装置151から取得しても良い。そして当該情報により、通信装置151においてMACアドレスのランダム化機能が有効化されていることを示すか否かを判定し、その判定結果に応じて処理を切り分けても良い。この形態においては当該判定後に、通信装置151から、ランダム化されていない識別情報(MACアドレスやMACアドレスのハッシュ値、シリアル番号等)を適宜取得する。なお、通信装置151から取得されたMACアドレスがランダム化されたMACアドレスである場合とは、通信装置151においてMACアドレスのランダム化機能が有効化されている場合である。また、上記情報が、通信装置151においてMACアドレスのランダム化機能が有効化されていることを示す場合とは、通信装置151においてMACアドレスのランダム化機能が有効化されている場合である。そのため上記判定は、いずれも、通信装置151においてMACアドレスのランダム化機能が有効化されているか否かを判定する処理であるといえる。
【0096】
上述の実施形態では、通信装置151においてMACアドレスのランダム化機能が有効化されていない場合に、オリジナルのMACアドレスを取得し、オリジナルのMACアドレスと管理情報とを紐づけて管理する形態について説明した。しかしながら取得されたオリジナルのMACアドレスの用途は、この形態に限定されない。例えば情報処理装置101は、オリジナルのMACアドレスを取得した後に、通信装置151と適宜通信が可能である。具体的には例えば、通信装置151に印刷ジョブを送信することが可能である。そして、情報処理装置101は、通信装置151との何らかの通信を実行しようとする場合には、情報処理装置101が属するネットワーク上で、通信装置151を検索及び発見する必要がある。そのため例えば、情報処理装置101は、取得されたオリジナルのMACアドレスは、情報処理装置101が属するネットワーク上で、通信装置151を検索したり発見したりするために用いられても良い。
【0097】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0098】
本実施形態の開示は、以下の情報処理装置、方法、プログラムを含む。
(項目1)
通信装置と通信可能な情報処理装置であって、
通信装置から所定の情報を取得する第1取得手段と、
前記第1取得手段により取得した前記所定の情報が、前記通信装置の識別情報をランダム化する所定の機能が前記通信装置において有効化されていることに対応する情報である場合、前記所定の情報を前記情報処理装置に送信した通信装置から、前記所定の機能によりランダム化されていない識別情報を取得する第2取得手段と、
前記第2取得手段により取得した前記所定の機能によりランダム化されていない識別情報に基づく処理を実行する実行手段と、
を備えることを特徴とする情報処理装置。
(項目2)
前記所定の情報は、前記通信装置の識別情報であり、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報である場合とは、前記第1取得手段により取得した前記所定の情報が、前記所定の機能によりランダム化された識別情報である場合である、
ことを特徴とする項目1に記載の情報処理装置。
(項目3)
前記所定の情報は、前記所定の機能が前記通信装置において有効化されているか否かを示す情報であり、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報である場合とは、前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることを示す場合である、
ことを特徴とする項目1に記載の情報処理装置。
(項目4)
前記通信装置から管理情報を取得する第2取得手段、を更に備え、
前記第2取得手段により取得した前記所定の機能によりランダム化されていない識別情報に基づく処理は、前記所定の機能によりランダム化されていない識別情報と前記管理情報とを紐付けて記憶部に記憶する処理である、
ことを特徴とする項目1乃至3のいずれか1項に記載の情報処理装置。
(項目5)
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報である場合に、前記所定の機能によりランダム化されていない識別情報が用いられて、前記情報処理装置が属するネットワーク上で前記通信装置を検索する検索手段、を更に備えることを特徴とする項目1乃至4のいずれか1項に記載の情報処理装置。
(項目6)
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応するか否かを判定する第1判定手段、を更に備え、
前記所定の機能が前記通信装置において有効化されていることに対応すると判定された場合、前記第2取得手段は、前記通信装置から前記所定の機能によりランダム化されていない識別情報を取得する、
ことを特徴とする項目1乃至5のいずれか1項に記載の情報処理装置。
(項目7)
前記第2取得手段は、前記通信装置の内部で前記所定の機能によりランダム化されていない識別情報が記憶されている場所を指定する情報を送信することにより、前記所定の機能によりランダム化されていない識別情報を取得することを特徴とする項目1乃至6のいずれか1項に記載の情報処理装置。
(項目8)
前記記憶されている場所を指定する情報は、MIB(Management Information Base)におけるOID(Object Identifier)であることを特徴とする項目7に記載の情報処理装置。
(項目9)
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報である場合、前記所定の機能によりランダム化される識別情報と同じ種類だが、前記所定の機能によりランダム化されていない第1識別情報と、前記所定の機能によりランダム化される識別情報と異なる種類であり、前記所定の機能によりランダム化されていない第2識別情報のうちいずれかが取得される、
ことを特徴とする項目1乃至8のいずれか1項に記載の情報処理装置。
(項目10)
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報であり、且つ前記所定の情報の取得元の前記通信装置が第1の機種である場合、前記第1識別情報が取得され、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていることに対応する情報であり、且つ前記所定の情報の取得元の前記通信装置が第1の機種と異なる第2の機種である場合、前記第2識別情報が取得される、
ことを特徴とする項目9に記載の情報処理装置。
(項目11)
前記第1の機種はレーザービームプリンタであり、前記第2の機種はインクジェットプリンタであることを特徴とする項目10に記載の情報処理装置。
(項目12)
前記第1識別情報は、MACアドレスであり、前記第2識別情報は、シリアル番号であることを特徴とする項目9乃至11のいずれか1項に記載の情報処理装置。
(項目13)
前記所定の機能によりランダム化されていない識別情報は、暗号化通信を介して取得されることを特徴とする項目1乃至12のいずれか1項に記載の情報処理装置。
(項目14)
前記所定の機能によりランダム化されていない識別情報は、ハッシュ値であることを特徴とする項目1乃至12のいずれか1項に記載の情報処理装置。
(項目15)
前記管理情報は、設置場所、状態、IPアドレス、ポート名、ファームウェアのバージョン、SSID(Service Set Identifier)の少なくともいずれかを含むことを特徴とする項目4に記載の情報処理装置。
(項目16)
前記所定の情報は、前記通信装置の識別情報であり、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていないことに対応する情報である場合、前記所定の機能によりランダム化されていない識別情報に基づく処理として、前記所定の情報に基づく処理が実行される、
ことを特徴とする項目1乃至15のいずれか1項に記載の情報処理装置。
(項目17)
前記所定の情報は、前記所定の機能が前記通信装置において有効化されているか否かを示す情報であり、
前記第1取得手段により取得した前記所定の情報が、前記所定の機能が前記通信装置において有効化されていないことに対応する情報である場合、前記所定の機能によりランダム化されていない識別情報が取得され、前記所定の機能によりランダム化されていない識別情報に基づく処理が実行される、
ことを特徴とする項目1乃至15のいずれか1項に記載の情報処理装置。
(項目18)
前記所定の機能は、MACアドレスのランダム化機能であることを特徴とする項目1乃至17のいずれか1項に記載の情報処理装置。
(項目19)
通信装置と通信可能な情報処理装置の制御方法であって、
通信装置から所定の情報を取得する第1取得工程と、
前記第1取得工程において取得された前記所定の情報が、前記通信装置の識別情報をランダム化する所定の機能が前記通信装置において有効化されていることに対応する情報である場合、前記所定の情報を前記情報処理装置に送信した通信装置から、前記所定の機能によりランダム化されていない識別情報を取得する第2取得工程と、
前記第2取得工程において取得された前記所定の機能によりランダム化されていない識別情報に基づく処理を実行する実行工程と、
を有することを特徴とする制御方法。
(項目20)
項目1乃至18のいずれか1項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。
【0099】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0100】
101 情報処理装置: 103、154 CPU: 104、152 ROM: 105、153 RAM: 151 通信装置
図1
図2
図3
図4
図5
図6
図7