(57)【要約】【課題】  パソコン及び家電製品などの機器で相互に通信可能とするためのプロトコルを利用した通信において、よりセキュリティを向上することができるサービス提供システム、サービス提供方法及びそのプログラムを提供する。【解決手段】  プリンタ２００は、アクセスしてきたクライアント端末１００のグローバルアドレスを取得済みであるか否かを判断し、クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、クライアント端末１００に対してグローバルアドレスを通知するよう要求するグローバルアドレス通知要求部２０５を備え、その要求に応じてクライアント端末１００がグローバルアドレスを通知してきたか否かにより、クライアント端末に提供するサービスの内容が異なるよう制御する。クライアント端末１００は、グローバルアドレスを通知するよう要求を受けた場合に、プリンタ２００へグローバルアドレスを通知する。【選択図】  図１
2006024197.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末と、前記クライアント端末にサービスを提供するサービス提供デバイスとを含むサービス提供システムであって、
前記サービス提供デバイスは、
アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断手段と、
前記判断手段が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求手段と、
前記通知要求手段の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求手段の要求に応じて前記クライアント端末が前記グローバルアドレスを通知しなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供手段と、
を具備し、
前記クライアント端末は、
前記サービス提供デバイスから前記グローバルアドレスを通知するよう要求を受けた場合に、前記クライアント端末が前記グローバルアドレスを保持しているか否かを確認する確認手段と、
前記確認手段が、前記グローバルアドレスを前記クライアント端末が保持していることを確認した場合に、前記サービス提供デバイスへ前記グローバルアドレスを通知する通知手段と
を具備するサービス提供システム。
【請求項２】
クライアント端末と、前記クライアント端末にサービスを提供するサービス提供デバイスとを含むサービス提供システムにおけるサービス提供方法であって、
前記サービス提供デバイスは、
アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断工程と、
前記判断工程が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求工程と、
前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してこなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供工程と
を実行し、
前記クライアント端末は、
前記サービス提供デバイスから前記グローバルアドレスを通知するよう要求を受けた場合に、前記クライアント端末が前記グローバルアドレスを保持しているか否かを確認する確認工程と、
前記確認工程が、前記グローバルアドレスを前記クライアント端末が保持していることを確認した場合に、前記サービス提供デバイスへ前記グローバルアドレスを通知する通知工程と
を実行するサービス提供方法。
【請求項３】
前記サービス提供デバイスの前記サービス提供工程は、前記通知要求工程の要求に応じて前記グローバルアドレスを通知してきたクライアント端末に対して、前記通知要求工程の要求に応じて前記グローバルアドレスを通知してこなかった前記クライアント端末よりも、前記クライアント端末に提供する高度なレベルのサービスを提供することを特徴とする請求項２に記載のサービス提供方法。
【請求項４】
前記クライアント端末から前記サービス提供デバイスを制御することで前記サービスを利用可能であって、前記サービス提供デバイスが、前記クライアント端末に対して、前記サービス提供デバイスを制御するために必要な制御情報を提供する場合に、
前記サービス提供デバイスの前記サービス提供工程は、前記クライアント端末が前記グローバルアドレスを通知してこなかったクライアント端末よりも、前記グローバルアドレスを通知してきたクライアント端末に対して制御情報による制御可能な範囲が広くなるように前記サービス提供デバイスを制御することを特徴とする請求項２に記載のサービス提供方法。
【請求項５】
前記クライアント端末と前記サービス提供デバイス間の通信プロトコルは、ＵＰｎＰ（登録商標）プロトコルであることを特徴とする請求項２〜４のいずれか１項に記載のサービス提供方法。
【請求項６】
前記サービス提供デバイスにおける前記判断工程、前記通知要求工程、及び前記サービス制御工程の処理と、前記クライアント端末における前記確認工程及び前記通知工程の処理は、前記ＵＰｎＰ（登録商標）プロトコルの記述フェーズにおいて行われる処理であることを特徴とする請求項５に記載のサービス提供方法。
【請求項７】
アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断手段と、
前記判断手段が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求手段と、
前記通知要求手段の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求手段の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してこなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供手段と、
を有するサービス提供装置。
【請求項８】
前記サービス提供デバイスの前記サービス提供手段は、前記通知要求手段の要求に応じて前記グローバルアドレスを通知してきたクライアント端末に対して、前記グローバルアドレスを通知してこなかった前記クライアント端末よりも、高度なレベルのサービスを提供する請求項７に記載のサービス提供装置。
【請求項９】
前記クライアント端末から前記サービス提供デバイスを制御することで前記サービスを利用可能であって、前記サービス提供デバイスが、前記クライアント端末に対して、前記サービス提供デバイスを制御するために必要な制御情報を提供する場合に、
前記サービス提供デバイスの前記サービス提供手段は、前記クライアント端末が前記グローバルアドレスを通知してこなかったクライアント端末よりも、前記グローバルアドレスを通知してきたクライアント端末に対して制御情報による制御可能な範囲が広くなるように前記サービス提供デバイスを制御する請求項７に記載のサービス提供装置。
【請求項１０】
前記クライアント端末と前記サービス提供デバイス間の通信プロトコルは、ＵＰｎＰ（登録商標）プロトコルである請求項７〜９のいずれか１項に記載のサービス提供装置。
【請求項１１】
前記サービス提供デバイスにおける前記判断手段、前記通知要求手段、及び前記サービス制御手段の処理と、前記クライアント端末における前記確認手段及び前記通知手段の処理は、前記ＵＰｎＰ（登録商標）プロトコルの記述フェーズにおいて行われる処理である請求項１０に記載のサービス提供装置。
【請求項１２】
アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断工程と、
前記判断工程が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求工程と、
前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してこなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供工程と、
を有するサービス提供装置制御方法。
【請求項１３】
前記サービス提供デバイスの前記サービス提供工程は、前記通知要求工程の要求に応じて前記グローバルアドレスを通知してきたクライアント端末に対して、前記グローバルアドレスを通知してこなかった前記クライアント端末よりも、高度なレベルのサービスを提供する請求項１２に記載のサービス提供装置制御方法。
【請求項１４】
前記クライアント端末から前記サービス提供デバイスを制御することで前記サービスを利用可能であって、前記サービス提供デバイスが、前記クライアント端末に対して、前記サービス提供デバイスを制御するために必要な制御情報を提供する場合に、
前記サービス提供デバイスの前記サービス提供工程は、前記クライアント端末が前記グローバルアドレスを通知してこなかったクライアント端末よりも、前記グローバルアドレスを通知してきたクライアント端末に対して制御情報による制御可能な範囲が広くなるように前記サービス提供デバイスを制御する請求項１２に記載のサービス提供装置制御方法。
【請求項１５】
前記クライアント端末と前記サービス提供デバイス間の通信プロトコルは、ＵＰｎＰ（登録商標）プロトコルである請求項１２〜１４いずれか１項に記載のサービス提供装置制御方法。
【請求項１６】
前記サービス提供デバイスにおける前記判断工程、前記通知要求工程、及び前記サービス制御工程の処理と、前記クライアント端末における前記確認工程及び前記通知工程の処理は、前記ＵＰｎＰ（登録商標）プロトコルの記述フェーズにおいて行われる処理である請求項１５に記載のサービス提供装置制御方法。
【請求項１７】
アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断工程と、
前記判断工程が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求工程と、
前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してこなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供工程と、
をコンピュータに実行させる制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パソコンやその周辺機器及び家電製品などの機器を、ネットワークを通じて接続し、相互に機能を提供しあうネットワークシステムにおいてアクセス制御を行うサービス提供システム、サービス提供方法及びそのプログラムに関するものである。
【背景技術】
【０００２】
近年、ＵＰｎＰ（ユニバーサル・プラグ・アンド・プレイ）（登録商標）という、家庭内のパソコンやその周辺機器及び家電製品などの機器を、相互に通信可能とするためのプロトコルの策定が進められている。
【０００３】
また、従来から、ネットワーク上のクライアント装置からのサービス要求に応え、サービスを提供するサービス提供装置及び、サービス提供システムが知られている。そして、インターネットによる通信の飛躍的な普及に伴い、ネットワーク対応型機器として、従来のパーソナルコンピュータ以外の種類の多様な機器が開発されている。例えば、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｃｅ）、携帯電話等のユーザインタラクティブなデバイスや、スキャナ、プリンタ、複写機、デジタルカメラ等の画像処理装置や、テレビ、エアコン、冷蔵庫等の家電製品などに至るまでネットワーク対応が急速に進められている。
【０００４】
それに伴い、これらネットワーク対応型デバイスを利用する上での利便性、簡易性を高めるために、ネットワークアドレスの自動設定手段、サービスを提供するネットワークデバイスの探索、検索手段、ネットワーク対応型デバイスを制御するためのアプリケーションソフトウエア、ユーティリティソフトウエア、オペレーティングシステム等の自動セットアップ手段を提供する、さまざまなプロトコルが提案されている。例えば、Ｍｉｃｒｏｓｏｆｔ社が主体となって策定を進める上述したＵＰｎＰ（登録商標）、ビジネス機械・情報システム産業協会（ＪＢＭＩＡ）が推進するＢＭＬｉｎｋｓ（非特許文献１）、Ａｐｐｌｅ社が開発したＯＳ  ＸでサポートされるＲｅｎｅｄｚｖｏｕｓなどがその一例である。
【０００５】
【非特許文献１】"ＢＭＬｉｎｋＳとは"、［ｏｎｌｉｎｅ］、ビジネス機械・情報システム産業協会、［平成１６年５月１９日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｊｂｍｉａ．ｏｒ．ｊｐ／ｂｍｌｉｎｋｓ／ｉｎｔｒｏ／ｉｎｄｅｘ．ｈｔｍ＞
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、現在のＵＰｎＰ（登録商標）におけるメッセージングの仕様では、デバイスは、要求のあったすべてのコントロールポイントに対して、情報を受け取るためのＵＲＬ（以下、コントロールＵＲＬとする）を通知している。このような仕様では、アクセス制限なしに、制御サーバへのエントリやデバイスコマンドへのエントリが可能なコントロールＵＲＬを通知してしまっているので、デバイスが、悪意のある第三者からＤｏＳ攻撃などを受ける可能性があるなど、セキュリティ上の問題がある。すなわち、コントロールＵＲＬを不正な端末に通知してしまうと、その不正な端末から簡単にネットワーク上のデバイスに接続可能となってしまうという問題がある。
【０００７】
本発明は、上述した事情を考慮してなされたもので、家庭内及びオフィスのパソコンやその周辺機器及び家電製品、ＯＡ機器などの機器を、相互に通信可能とするためのプロトコルを利用した通信において、よりセキュリティを向上することができるサービス提供システム、サービス提供方法及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
この発明は、上述した課題を解決すべくなされたもので、クライアント端末と、前記クライアント端末にサービスを提供するサービス提供デバイスとを含むサービス提供システムであって、前記サービス提供デバイスは、アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断手段と、前記判断手段が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求手段と、前記通知要求手段の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求手段の要求に応じて前記クライアント端末が前記グローバルアドレスを通知しなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供手段と、を具備し、前記クライアント端末は、前記サービス提供デバイスから前記グローバルアドレスを通知するよう要求を受けた場合に、前記クライアント端末が前記グローバルアドレスを保持しているか否かを確認する確認手段と、前記確認手段が、前記グローバルアドレスを前記クライアント端末が保持していることを確認した場合に、前記サービス提供デバイスへ前記グローバルアドレスを通知する通知手段とを具備することを特徴とする。
【０００９】
また、本発明は、クライアント端末と、前記クライアント端末にサービスを提供するサービス提供デバイスとを含むサービス提供システムにおけるサービス提供方法であって、前記サービス提供デバイスは、アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断工程と、前記判断工程が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求工程と、前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してこなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供工程とを実行し、前記クライアント端末は、前記サービス提供デバイスから前記グローバルアドレスを通知するよう要求を受けた場合に、前記クライアント端末が前記グローバルアドレスを保持しているか否かを確認する確認工程と、前記確認工程が、前記グローバルアドレスを前記クライアント端末が保持していることを確認した場合に、前記サービス提供デバイスへ前記グローバルアドレスを通知する通知工程とを実行することを特徴とする。
【００１０】
また、本発明は、サービス提供装置であって、アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断手段と、前記判断手段が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求手段と、前記通知要求手段の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求手段の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してこなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供手段と、を有することを特徴とする。
【００１１】
また、本発明は、サービス提供装置制御方法であって、アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断工程と、前記判断工程が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求工程と、前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してこなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供工程と、を有することを特徴とする。
【００１２】
また、本発明の制御プログラムは、アクセスしてきた前記クライアント端末のグローバルアドレスを取得済みであるか否かを判断する判断工程と、前記判断工程が前記クライアント端末のグローバルアドレスを取得済みでないと判断した場合に、前記クライアント端末に対して前記グローバルアドレスを通知するよう要求する通知要求工程と、前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してきた場合と、前記通知要求工程の要求に応じて前記クライアント端末が前記グローバルアドレスを通知してこなかった場合とで、前記クライアント端末に異なるサービスを提供するサービス提供工程と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１３】
本発明によるサービス提供システム、サービス提供システムにおけるサービス提供方法、サービス提供装置、サービス提供装置制御方法（又はサービス提供装置におけるサービス提供方法）及び制御プログラムは、家庭内やオフィスのパソコンやその周辺機器及び家電製品及びＯＡ機器などの機器を、相互に通信可能とするためのプロトコルを利用した通信において、よりセキュリティを向上することができる。
【発明を実施するための最良の形態】
【００１４】
以下に、図面を参照して、本発明の好適な実施の形態を例示的に詳しく説明する。
【００１５】
本実施形態におけるネットワークの通信プロトコルを制御するプロトコル制御システムの例として、ネットワークを介して印刷サービスを提供するサービス提供システムで用いるプロトコル制御システムについて説明する。
図１は、本発明の一実施形態におけるプロトコル制御システム（サービス提供システム）の概略構成を示すブロック図である。サービス提供デバイスとしては、プリンタ２００、不図示のファクシミリ、スキャナ、デジタルカメラ、携帯電話、複写機、及びこれらの複合機を含む。
【００１６】
図１に示すように、クライアント端末１００とプリンタ（サービス提供デバイス）２００がネットワーク３００を介して接続されている。また、図１に示すように、クライアント端末１００は、以下に説明する機能構成を有する。クライアント端末１００は、例えばＭｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）や、Ａｐｐｌｅ社のＭａｃ  ＯＳ（登録商標）等の汎用オペレーティングシステムであるＯＳ１０５を有する。また、クライアント端末１００は、そのＯＳ１０５上で実行可能な汎用アプリケーションであるアプリケーション１０１を備える。
【００１７】
また、クライアント端末１００は、ＵＰｎＰ（登録商標）プロトコル処理部１０３を備えることで、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）／ＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）を利用したＵＰｎＰ（登録商標）プロトコルを使用して、ネットワーク３００上のデバイスのディスカバリ、制御、ステータスの取得等を実現している。例えばアプリケーション１０１が、ワードプロセッサである場合に、そのアプリケーション１０１で作成されたドキュメントは、ＵＰｎＰ（登録商標）プロトコル処理部１０３が検索発見したＵＰｎＰ（登録商標）プロトコルに対応するネットワーク３００に接続されたプリンタ（例えばプリンタ２００）に対し、プリンタドライバ１０２で印字可能なデータに変換された後、ＵＰｎＰ（登録商標）プロトコル処理部１０３の処理によりプリントジョブとして発行される。
【００１８】
一方、プリンタ２００は、ネットワーク３００に接続可能なネットワーク対応デバイスであり、通信機能としてＴＣＰ／ＵＤＰ／ＩＰｖ６のプロトコルをスタックするプロトコルスタック２０１を備える。また、プリンタ２００は、ネットワーク３００を介して印刷サービスを提供するサービス提供デバイスでもある。また、プリンタ２００は、プロトコルスタック２０１の上位層にＨＴＴＰ処理部２０２を備え、ＨＴＴＰリクエストの解析、およびレスポンス処理を行う。ＨＴＴＰ処理部２０２の上位層にはＳＯＡＰに関する処理を行うＳＯＡＰ処理部２０３及びＵＰｎＰ（登録商標）プロトコルに関する処理を行うＵＰｎＰ（登録商標）プロトコル処理部２０４を備える。
【００１９】
また、プリンタ２００は、ＵＰｎＰ（登録商標）フォーラムで策定されたＰｒｉｎｔＢａｓｉｃサービスを実装しており、ＵＰｎＰ（登録商標）プロトコル処理部２０４は該サービスで定義されたプリントジョブ、および属性情報を解析し、プリンタコントローラ２０６に対し、そのプリント要求を送出する機能を備える。
【００２０】
図２は、図１に示したクライアント端末１００又はプリンタ２００の機能を実現するハードウェア構成例を示す図である。
図２に示すように、クライアント端末１００又はプリンタ２００は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）４０２もしくはハードディスク（ＨＤ）４０４に記憶されたソフトウェア（プログラム）を実行するＣＰＵ（中央演算装置）４０１を備える。ＣＰＵ４０１は、ソフトウェアの実行によりシステムバス４０６に接続される各デバイスを総括的に制御する。
【００２１】
４０３はＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）であり、ＣＰＵ４０１の主メモリ、ワークエリア等として機能する。４０５はＬＡＮカードであり、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）であるネットワーク３００を通じて、他のネットワーク機器あるいは他のネットワーク端末と双方向にデータをやりとりする。
【００２２】
次に、ＵＰｎＰ（登録商標）の仕様について、簡単に説明する。図３に示すように、ＵＰｎＰ（登録商標）には、６つのフェーズが用意されている。図３は、ＵＰｎＰ（登録商標）が有する１〜６までのフェーズを示す図である。尚、以下の説明において、コントロールポイントとは、ＵＰｎＰ（登録商標）のネットワークに属するクライアントのことであり、本実施形態のクライアント端末１００のことを示す。また、デバイスとは、１つまたは複数のサービスをＵＰｎＰ（登録商標）のネットワーク上に提供するものであり、本実施形態ではプリンタ２００のことを示す。
【００２３】
図３に示すように、１番目のフェーズであるＡｄｄｒｅｓｓｉｎｇフェーズでは、デバイス（プリンタ２００）が、自動的にリンクローカルアドレスを生成し、取得する。次に、２番目のフェーズであるＤｉｓｃｏｖｅｒｙフェーズ（検出フェーズ）では、ＳＳＤＰ（Ｓｉｍｐｌｅ  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）に従って、デバイス（プリンタ２００）がサービスのアナウンスを行う。これにより、コントロールポイント（クライアント端末１００）は、デバイス（プリンタ２００）を発見する。
【００２４】
次に、３番目のフェーズであるＤｅｓｃｒｉｐｔｉｏｎフェーズ（記述フェーズ）では、コントロールポイント（クライアント端末１００）がデバイス（プリンタ２００）のＤｅｓｃｒｉｐｔｉｏｎ（後述する図５を参照）及びサービスのＤｅｓｃｒｉｐｔｉｏｎ（後述する図６を参照）を取得する。ここでいうＤｅｓｃｒｉｐｔｉｏｎとは、デバイスを制御するために必要な情報の集合を現す。具体的には、Ｐｒｅｓｅｎｔａｔｉｏｎ  ＵＲＬ（デバイスのＧＵＩ）、Ｃｏｎｔｏｒｏｌ  ＵＲＬ（制御サーバのエントリ、デバイスコマンドへのエントリ）、Ｅｖｅｎｔ  Ｓｕｂｓｃｒｉｐｔｉｏｎ  ＵＲＬ（デバイスのイベントサービス登録）、Ｓｅｒｖｉｃｅ  Ｃｏｎｔｏｒｏｌ  Ｐｒｏｔｏｃｏｌ（ＳＤＰ）  Ｄｅｓｃｒｉｐｔｉｏｎ（デバイスが使用する言語）などを含む。
【００２５】
次に、４番目のフェーズであるＣｏｎｔｒｏｌフェーズ（制御フェーズ）では、コントロールポイント（クライアント端末１００）がサービスのＣｏｎｔｒｏｌ  ＵＲＬへ制御メッセージを送る。この制御メッセージは、ＳＯＡＰ／ＨＴＴＰ上で送られる。次に、５番目のフェーズであるＥｖｅｎｔｉｎｇフェーズでは、イベントの宛先は、承諾メッセージ（Ｓｕｂｓｃｒｉｐｔｉｏｎメッセージ）をイベントの発生元に送信し、イベントの発生元は、サービスの状態の変化に応じて、イベントの宛先であるコントロールポイント（クライアント端末１００）に状態の変化を通知する。
【００２６】
次に、６番目のフェーズであるＰｒｅｓｅｎｔａｔｉｏｎフェーズでは、コントロールポイント（クライアント端末１００）は、Ｐｒｅｓｅｎｔａｔｉｏｎ  ＵＲＬから、ページ（デバイスのＧＵＩ）を取得、取得したページをブラウザに取り込み、ユーザがブラウザ上でデバイスの制御ができるようにする。以上に示した１〜６のフェーズを処理することにより、クライアント端末１００は、ＵＰｎＰ（登録商標）のネットワーク３００において、プリンタ２００に関する情報を取得し、プリンタ２００が提供するサービスを利用することができる。
【００２７】
図４は、図３で説明した１〜６のフェーズの内、２〜６のフェーズにおけるコントロールポイント（クライアント端末１００）と、デバイス（プリンタ２００）間のデータの流れを示した図である。図４に示すように、まず、ステップＳ４０１において、デバイス（プリンタ２００）が、Ｄｉｓｃｏｖｅｒｙフェーズの処理として、コントロールポイント（クライアント端末１００）へサービスのアナウンスを行う。
【００２８】
次に、ステップＳ４０２において、コントロールポイント（クライアント端末１００）が、Ｄｅｓｃｒｉｐｔｉｏｎフェーズの処理として、図５に示すデバイス（プリンタ２００）のＤｅｓｃｒｉｐｔｉｏｎ（以下、第１の記述データとする）及び図６に示すサービスのＤｅｓｃｒｉｐｔｉｏｎ（以下、第２の記述データとする）を取得する。図５は、本実施形態におけるプリンタ２００に関する情報を記述した第１の記述データ例を示す図である。図６は、本実施形態におけるプリンタ２００が提供するサービスに関する情報を記述した第２の記述データ例を示す図である。
【００２９】
本実施形態ではコントロールポイント（クライアント端末１００）が、ステップＳ４０２において、デバイス（プリンタ２００）に関する第１の記述データ及びデバイスのサービス（印刷サービス）に関する第２の記述データをデバイス（プリンタ２００）から取得する処理において特徴的な処理をしている。その詳細については、後述する図７及び図８を用いて説明するが、特徴的な処理の概要について以下に説明する。
【００３０】
本実施形態におけるクライアント端末１００は、ＵＰｎＰ（登録商標）の仕様により割り振られるアドレスであるリンクローカルアドレスと、インターネットの世界で一意に割り振られるアドレスであるグローバルアドレスの両方を持つ場合がある。ここで、リンクローカルアドレスは、ＵＰｎＰ（登録商標）が実装されているＩＴ製品には、ＵＰｎＰ（登録商標）のＡｄｄｒｅｓｓｉｎｇフェーズで必ず割り振られ、信頼性が低い（普遍性が低い）アドレスであるといえる。これに対して、グローバルアドレスは、インターネットの中で一意に割り振られる信頼性の高い（普遍性が高い）アドレスといえる。
【００３１】
そこで、クライアント端末１００からプリンタ２００に対するアクセスがリンクローカルアドレスを用いたものであるか、グローバルアドレスを用いたものであるかにより、プリンタ２００がクライアント端末１００に対して許可する制御範囲を変更する処理を行うことで、よりセキュリティを向上することができる。これにより、家庭内のパソコンやその周辺機器及び家電製品などの機器を、相互に通信可能とするためのプロトコル（例えば、ＵＰｎＰ（登録商標）プロトコル）を利用した通信において従来よりセキュリティを向上することができる。
【００３２】
次に、ステップＳ４０３において、コントロールポイント（クライアント端末１００）は、Ｃｏｎｔｒｏｌフェーズの処理として、第２の記述データを参照してサービスのＣｏｎｔｒｏｌ  ＵＲＬへ制御メッセージを送る。次に、ステップＳ４０４において、イベントの発生元であるデバイス（プリンタ２００）は、Ｅｖｅｎｔｉｎｇフェーズの処理として、サービスの状態の変化に応じて、イベントの宛先であるコントロールポイント（クライアント端末１００）にその変化を通知する。
【００３３】
次に、ステップＳ４０５において、デバイス（プリンタ２００）は、Ｐｒｅｓｅｎｔａｔｉｏｎフェーズの処理として、ブラウザのページ（デバイスのＧＵＩ）情報を、コントロールポイント（クライアント端末１００）へ送信する。これにより、コントロールポイント（クライアント端末１００）は、取得したページをブラウザに取り込み、ユーザがブラウザ上でデバイス（プリンタ２００）の制御ができるようにする。
【００３４】
次に、本実施形態の特徴的な処理である図４のステップ４０２における処理（Ｄｅｓｃｒｉｐｔｉｏｎフェーズの処理）の詳細について、まず、プリンタ２００における図４に示したステップ４０２の処理の詳細を説明する。図７は、図４のステップ４０２におけるプリンタ２００における処理の詳細を示すフロー図である。
【００３５】
図７の処理において、プリンタ２００は、ステップＳ４０２の処理（Ｄｅｓｃｒｉｐｔｉｏｎフェーズの処理）を行うプログラムの実行により処理を開始する（ステップＳ７００）。まず、ステップＳ７０１において、プリンタ２００は、ＳＳＤＰ要求のあったクライアント端末１００がリンクローカルアドレスでのアクセスかグローバルアドレスでのアクセスかを判断する。ここで、クライアント端末１００がリンクローカルアドレスでのアクセスであると判断した場合（ステップＳ７０１のＮｏ）には、ステップＳ７０２に進み、プリンタ２００のＵＰｎＰ（登録商標）プロトコル処理部２０４のグローバルアドレス通知要求部２０５が、クライアント端末１００に対して、グローバルアドレスの通知を要求する。次に、ステップＳ７０３において、プリンタ２００は、クライアント端末１００がステップＳ７０２の要求に応じてグローバルアドレスを通知してきたか否かを判断する。なお、リンクローカルアドレスは、「ｆｅ８０：００００：００００：００００：＜インターフェイスＩＤ＞」の形式で表現される。グローバルアドレスは、上記のパケット形式のうち、上位３ビットが固定されており、００１で始まるものとされている。詳しくは、ＲＦＣ２３７４（ｈｔｔｐ：／／ｗｗｗ．ｉｅｔｆ．ｏｒｇ／ｒｆｃ／ｒｆｃ２３７４．ｔｘｔ）を参照されたい。図７のＳ７０３では、パケットに含まれる送信元を示すアドレスを抽出して、送信元がリンクローカルアドレスを通知してきたか、グローバルアドレスを通知してきたかを判断する。
【００３６】
ここで、グローバルアドレスを通知してきたと判断した場合（ステップＳ７０３のＹｅｓ）には、ステップＳ７０４に進み、プリンタ２００は、クライアント端末１００に対して、プリンタ２００のコントロールＵＲＬを通知する。次に、ステップＳ７０５に進み、Ｄｅｓｃｒｉｐｔｉｏｎフェーズの処理を終了する。また、ステップＳ７０１において、クライアント端末１００からのアクセスがグローバルアドレスであると判断した場合（ステップＳ７０１のＹｅｓ）には、プリンタ２００は、ステップＳ７０４に進む。また、ステップＳ７０３において、クライアント端末１００がグローバルアドレスを通知してこないと判断した場合（ステップＳ７０３のＮｏ）には、ステップＳ７０６に進み、プリンタ２００は、コントロールＵＲＬを通知しないで、プレゼンテーションＵＲＬのみクライアント端末１００に通知して、ステップＳ７０５に進む。
【００３７】
次に、クライアント端末１００におけるステップＳ４０２の処理の詳細を説明する。図８は、図４のステップ４０２におけるクライアント端末１００における処理の詳細を示すフロー図である。
【００３８】
図８に示すように、クライアント端末１００は、ステップＳ４０２の処理（Ｄｅｓｃｒｉｐｔｉｏｎフェーズの処理）を行うプログラムの実行により処理を開始する（ステップＳ８００）。まず、ステップＳ８０１において、クライアント端末１００は、プリンタ２００からのグローバルアドレスの通知要求を待つ。尚、プリンタ２００からのグローバルアドレスの通知要求とは、図７のステップＳ７０２の処理によるものである。
【００３９】
ここで、プリンタ２００からグローバルアドレスの通知要求があった場合（ステップＳ３０１のＹｅｓ）には、ステップＳ８０２に進み、クライアント端末１００のＵＰｎＰ（登録商標）プロトコル処理部１０３中のグローバルアドレス通知処理部１０４は、クライアント端末１００がグローバルアドレスを所持しているか否かを確認する。
【００４０】
ここで、クライアント端末１００がグローバルアドレスを所持していることを確認した場合（ステップＳ８０２のＹｅｓ）には、ステップＳ８０３に進み、ＵＰｎＰ（登録商標）プロトコル処理部１０３は、プリンタ２００に対し、グローバルアドレスを通知し、ステップＳ８０４に進む。次に、ステップＳ８０４において、クライアント端末１００は、プリンタ２００からコントロールＵＲＬを受信し、ステップＳ８０５に進む。ステップＳ８０５において、クライアント端末１００は、Ｄｅｓｃｒｉｐｔｉｏｎフェーズの処理を終了する。
【００４１】
また、ステップＳ８０１においてプリンタ２００からグローバルアドレス通知要求を受信しなかった場合（ステップＳ８０１のＮｏ）には、クライアント端末１００は、ステップＳ８０４に進む。また、ステップＳ８０２において、クライアント端末１００がグローバルアドレスを保持していないことを確認した場合には、ステップＳ８０６に進み、クライアント端末１００は、プリンタ２００からプレゼンテーションＵＲＬを受信して、ステップＳ８０５に進む。尚、ステップＳ８０６で受信するプレゼンテーションＵＲＬは、図７のステップＳ７０６においてプリンタ２００がクライアント端末１００に通知したプレゼンテーションＵＲＬである。
【００４２】
以上の図７、図８に示したように、Ｄｅｓｃｒｉｐｔｉｏｎフェーズの処理を行うことで、クライアント端末１００がグローバルアドレスを通知してプリンタ２００にアクセスしている場合には、プリンタ２００は、クライアント端末１００がプリンタ２００に対して高度（または詳細）な制御が可能となるコントロールＵＲＬを通知する。また、クライアント端末１００がグローバルアドレスを通知せずに（リンクローカルアドレスにより）プリンタ２００にアクセスしている場合には、プリンタ２００は、クライアント端末１００がプリンタ２００に対して限られた範囲で制御が可能となるプレゼンテーションＵＲＬを通知する。すなわち、クライアント端末１００がグローバルアドレスを通知してプリンタ２００にアクセスした場合の方が、クライアント端末１００は、プリンタ２００に対してより高度で詳細な制御が可能となる。これにより、信頼性の低いリンクローカルアドレスのみを通知してプリンタ２００を利用しようとするクライアント端末１００に対しては、プリンタ２００対して制御可能な範囲を制限することでセキュリティを強化することができる。
【００４３】
更に、上位の概念で説明すると、ネットワークに接続されたデバイス（プリンタ２００）は、ＵＰｎＰ（登録商標）のＤｅｓｃｒｉｐｔｉｏｎフェーズにおいて、コントロールポイント（クライアント端末１００）からのアクセスが、リンクローカルアドレスによるアクセスか、グローバルアドレスによるアクセスかを区別する。ここで、リンクローカルアドレスからのアクセスであると区別した場合、デバイスは、コントロールポイントに対してグローバルアドレスの通知を要求する。また、コントロールポイント（クライアント端末１００）がグローバルアドレスを通知してきた場合には、デバイスのコントロールＵＲＬ（デバイスに対するすべての制御が可能）を通知する。一方、コントロールポイントが、グローバルアドレスを通知してこなかった場合には、コントロールＵＲＬを通知せず、プレゼンテーションＵＲＬ（デバイスのＧＵＩ。デバイスに対する制限された制御のみが可能）のみ通知する。以上により、信頼性の低い（普遍性の低い）リンクローカルアドレスのみを持つＩＴ製品と、信頼性の高い（普遍性の高い）グローバルアドレスを持つＩＴ製品を切り分けることによって、ＵＰｎＰ（登録商標）のセキュリティを強化することができる。
【００４４】
更に別の実施形態として、例えば将来的にＩＰｖ６に導入により、同一ネットワーク上にＵＰｎＰ（登録商標）とＩＰｖ６が並存した場合について説明する。同一ネットワーク上にＵＰｎＰ（登録商標）とＩＰｖ６が並存した場合、ＵＰｎＰ（登録商標）の仕様や、ＩＰｖ６の仕様により割り振られるアドレスであるリンクローカルアドレスと、グローバルアドレスの両方を持つＩＴ製品が存在するようになる。ここで、リンクローカルアドレスは、ＵＰｎＰ（登録商標）が実装されているＩＴ製品には、ＵＰｎＰ（登録商標）のＡｄｄｒｅｓｓｉｎｇフェーズで必ず割り振られ、信頼性が低い（普遍性が低い）。ＩＰｖ６が実装されているＩＴ製品は、必ずリンクローカルアドレスを自動生成するので、信頼性が低い（普遍性が低い）。このような場合にも、上述した本発明を適用することが可能である。
【００４５】
また、上述した実施形態における図４、図７、図８に示した各処理は、各処理の機能を実現する為のプログラムをメモリから読み出してＣＰＵ４０１が実行することによりその機能を実現させるものであったが、これに限定さるものではなく、各処理の全部または一部の機能を専用のハードウェアにより実現してもよい。また、上述したメモリは、光磁気ディスク装置、フラッシュメモリ等の不揮発性のメモリや、ＣＤ−ＲＯＭ等の読み出しのみが可能な記録媒体、ＲＡＭ以外の揮発性のメモリ、あるいはこれらの組合せによるコンピュータ読み取り、書き込み可能な記録媒体より構成されてもよい。
【００４６】
また、図４、図７、図８に示した各処理を実現する為のプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各処理を行っても良い。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。具体的には、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含む。
【００４７】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００４８】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現する為のものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００４９】
また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体およびプログラムプロダクトは、本発明の範疇に含まれる。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【００５０】
【図１】本発明の一実施形態におけるプロトコル制御システムの概略構成を示すブロック図である。
【図２】図１に示したクライアント端末１００又はプリンタ２００の機能を実現するハードウェア構成例を示す図である。
【図３】ＵＰｎＰ（登録商標）が有する１〜６までのフェーズを示す図である。
【図４】図３で説明した１〜６のフェーズの内、２〜６のフェーズにおけるコントロールポイントと、デバイス間のデータの流れを示した図である。
【図５】本実施形態におけるプリンタ２００に関する情報を記述した第１の記述データ例を示す図である。
【図６】本実施形態におけるプリンタ２００が提供するサービスに関する情報を記述した第２の記述データ例を示す図である。
【図７】図４のステップ４０２におけるプリンタ２００における処理の詳細を示すフロー図である。
【図８】図４のステップ４０２におけるクライアント端末１００における処理の詳細を示すフロー図である。
【符号の説明】
【００５１】
１００      クライアント端末
１０１      アプリケーション
１０２      プリンタドライバ
１０３      ＵＰｎＰ（登録商標）プロトコル処理部
１０４      グローバルアドレス通知処理部
１０５      ＯＳ
２００      プリンタ
２０１      プロトコルスタック
２０２      ＨＴＴＰ処理部
２０３      ＳＯＡＰ処理部
２０４      ＵＰｎＰ（登録商標）プロトコル処理部
２０５      グローバルアドレス通知要求部
２０６      プリンタコントローラ
３００      ネットワーク
４０１      ＣＰＵ
４０２      ＲＯＭ
４０３      ＲＡＭ
４０４      ＨＤ
４０５      ＬＡＮカード
４０６      システムバス
【図１】
2006024197.tif 000003
【図２】
2006024197.tif 000004
【図３】
2006024197.tif 000005
【図４】
2006024197.tif 000006
【図５】
2006024197.tif 000007
【図６】
2006024197.tif 000008
【図７】
2006024197.tif 000009
【図８】
2006024197.tif 000010