JP2014225227A - 通信装置、通信制御方法、及びプログラム - Google Patents

通信装置、通信制御方法、及びプログラム Download PDF

Info

Publication number
JP2014225227A
JP2014225227A JP2014037322A JP2014037322A JP2014225227A JP 2014225227 A JP2014225227 A JP 2014225227A JP 2014037322 A JP2014037322 A JP 2014037322A JP 2014037322 A JP2014037322 A JP 2014037322A JP 2014225227 A JP2014225227 A JP 2014225227A
Authority
JP
Japan
Prior art keywords
communication
service
unit
print
services
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014037322A
Other languages
English (en)
Other versions
JP6454075B2 (ja
JP2014225227A5 (ja
Inventor
崇 森屋
Takashi Moriya
崇 森屋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2014037322A priority Critical patent/JP6454075B2/ja
Priority to US14/244,606 priority patent/US9588719B2/en
Publication of JP2014225227A publication Critical patent/JP2014225227A/ja
Publication of JP2014225227A5 publication Critical patent/JP2014225227A5/ja
Application granted granted Critical
Publication of JP6454075B2 publication Critical patent/JP6454075B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1209Improving or facilitating administration, e.g. print management resulting in adapted or bridged legacy communication protocols, e.g. emulation, protocol extension
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1292Mobile client, e.g. wireless printing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1231Device related settings, e.g. IP address, Name, Identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Information Transfer Between Computers (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】 通信装置間でやり取りされる複数種類のサービスそれぞれの処理を正常に行わせることができる通信装置、通信方法、プログラムを提供することを目的とする。
【解決手段】 ネットワークを介して通信する通信相手装置に提供するサービスとして、アプリケーション層における通信プロトコルが共通である複数のサービスについて異なる宛先情報を割り当てる。そして、割り当てた宛先情報と対応するサービスとを通信相手装置に通知する。
【選択図】 図10

Description

本発明は、通信装置、通信方法、及びプログラムに関するものである。
無線通信規格の1つとして、Wi−Fi Direct(ダイレクト)(登録商標)と呼ばれるものがある。このWi−Fi Directとは、Wi−Fiアライアンスが認定する無線通信規格(Wi−Fi)の内、通常のWi−Fiの接続方式で用いられるアクセスポイントを必要とせず、端末が直接接続してデータを送受信することができる規格のことである。
Wi−Fi Directは、各電子機器が無線LANアクセスポイントまたは無線LANステーションのいずれとして動作するかを自動的に決定するプロトコルの規定により、従来のアクセスポイント専用機が不要となり、電子機器同士の直接接続を実現している。無線LANにおいて端末同士を直接接続する方式には、Wi−Fi Directの他に「アドホックモード」もあり、アドホックモードは、P2P(ピアツーピア)の方式で端末間を接続する方式となっている。Wi−Fi Directとアドホックモードの違いとしては、Wi−Fi Directはいずれかの端末が無線LANアクセスポイント(親機)の機能を実現する方式であり、アドホックモードはアクセスポイントを使用しない方式である。
Wi−Fi Directを利用する技術としては、特許文献1がある。特許文献1では、PCが、Wi−Fi Direct機能によってプリンタと無線通信し、印刷データを送信する技術を開示している。
特開2013−42400号公報
例えば、情報処理装置と印刷装置の間において、標準規格を用いる印刷サービスが複数存在するが、ベースとなるアプリケーション層における通信プロトコルが同一である場合、デフォルトのポート番号も同一となることが普通である。これは、一般的に宛先ポート番号がIANA(登録団体)で定められているためである。
複数の印刷サービスで宛先ポート番号をサーバ側で共用すると、標準規格の差異による印刷サービスの差異を区別できなくなってしまう。例えば、
標準規格1:通信プロトコルA、印刷データフォーマットB、印刷用紙の指定方法に関して規定D
標準規格2:通信プロトコルA、印刷データフォーマットC、印刷用紙の指定方法に関して規定E
という状況の場合である。なお、クライアントの送信元ポート番号については、クライアント側において自動で割り当てる等ができるため、そのような問題は起きない。
例えば、図15に示すように、クライアントとして機能する情報処理装置と、サーバとして機能する印刷装置との間で、同一の通信プロトコルで印刷サービス1及び印刷サービス2を実行する場合、これらの印刷サービスで実行するポートはともに同一(例えば、80番)となる。
このように、異なる印刷サービスで同一のポートが共用されると、各印刷サービスの印刷処理を正確に行えなくなる場合がある。従って、ユーザは意図した印刷結果を得られなくなることがある。これは、クライアントからサーバへの送信データの宛先をポート番号で特定するもの以外(例えば、URL等)でも起こり得る課題であり、また、印刷サービス以外でも起こり得る課題である。
本発明は上記の課題を解決するためになされたものであり、通信装置間でやり取りされる複数種類のサービスそれぞれの処理を正常に行わせることができる通信装置、通信方法、及びプログラムを提供することを目的とする。
上記の目的を達成するための本発明による通信装置は以下の構成を備える。即ち、
通信装置であって、
ネットワークを介して通信する通信相手装置に提供するサービスとして、アプリケーション層における通信プロトコルが共通である複数のサービスを実行する実行手段と、
前記実行手段が実行する各サービスについて異なる宛先情報を割り当てる割当手段と、
前記割当手段で割り当てた宛先情報と対応するサービスを含む割当情報を、前記通信相手装置へ通知する通知手段と、
前記通信相手装置から送信される前記宛先情報に応じて前記実行手段で実行すべきサービスを特定する特定手段と
を備える。
本発明によれば、通信装置間でやり取りされる複数種類のサービスそれぞれの処理を正常に行わせることができる。
無線通信システムの構成の一例を示す図である。 携帯型通信端末装置の外観を示す図である。 MFPの外観を示す図である。 MFPの操作部の一例を示す図である。 携帯型通信端末装置の構成を示すブロック図である MFPの構成を示すブロック図である。 モードA(ソフトウェアAPモード)の無線接続シーケンスを示す図である。 モードB(WFDモード)の無線接続シーケンスを示す図である。 モードC(WFD拡張モード)の無線接続シーケンスを示す図である。 各実施形態におけるWi−Fi Directの無線接続フェーズのシーケンスを示す図である。 実施形態1のシステムにおける機能構成を示す図である。 実施形態1のサーバ850が実行する処理を示すフローチャートである。 実施形態2のサーバ850が実行する処理を示すフローチャートである。 実施形態3のサーバ850が実行する処理を示すフローチャートである。 従来技術の課題を説明するための図である。
以下に、図面を参照しながら、本発明の実施形態を例示的に詳しく説明する。但し、本実施形態に記載されている構成要素の相対配置、表示画面等は、特に、特定的な記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。
<システム構成>
まず、以下で説明する各実施形態を実現するためのシステム構成について、図1〜図6を用いて説明する。
図1は携帯型通信端末装置と印刷装置(MFP)を含むシステムの構成を示す図である。
携帯型通信端末装置200は、無線LAN(WLAN)通信部及び近距離無線通信部を有する装置である。尚、近距離無線通信とは、NFCに代表される、通信範囲が、比較的小さい所定範囲(例えば、1メートル〜数センチ以下)となる無線通信を意味する。携帯型通信端末装置200は、PDA(Personal Digital Assistant)等の個人情報端末、携帯電話、デジタルカメラ等でも良い。印刷装置(MFP)300は、携帯型通信端末装置200と無線通信可能であれば良く、その他、読取機能(スキャナ)やFAX機能、電話機能を有していても良い。本実施形態では、読取機能と印刷機能を有するMulti Function Printer(MFP)を例にしている。携帯型通信端末装置200とMFP300は共にNFCによる近距離無線通信部を有し、携帯型通信端末装置200に電力供給が無い状態でも、携帯型通信端末装置200をMFP300にNFC通信可能な所定距離に近づけることで、近距離無線通信が可能である。また、MFP300は、WLAN通信部によって、ネットワーク(TCP/IPに従った通信が可能なネットワーク)を介して無線通信可能である。携帯型通信端末装置200とMFP300のいずれか、あるいは両方は、近距離無線通信部を有さずWLAN通信部のみによって無線通信を行うものとしても良い。尚、携帯型通信端末装置200及びMFP300は、後述するようにWLAN経由で複数の印刷サービスに対応した処理を実行可能である。
図2は携帯型通信端末装置200の外観を示す図である。
本実施形態では、スマートフォンを例にしている。スマートフォンとは、携帯電話の機能の他に、カメラや、ウェブブラウザ、電子メール機能等を搭載した多機能型の携帯電話のことである。NFCユニット201は、NFCを用いて通信を行うユニットであり、NFCユニット201を相手先のNFCユニットに所定距離(例えば、10cm程度)以内に近づけることでNFCによる通信を行うことができる。
WLANユニット202はWLANで通信を行うためのユニットである。WLANユニット202は、例えばIEEE802.11シリーズに準拠したWLANシステムにおけるデータ(パケット)通信が可能であるものとする。また、WLANユニット202を用いた無線通信では、Wi−Fi Direct(WFD)をベースにした通信、ソフトウェアAPモード、アドホックモード、Infrastractureモードによる通信等が可能である。表示部203は、例えば、LCD方式の表示機構を備えたディスプレイである。操作部204は、タッチパネル方式の操作機構を備えており、ユーザによる操作を検知する。代表的な操作方法には、表示部203がボタンアイコンやソフトウェアキーボードの表示を行い、ユーザがそれらの箇所に触れることによって操作イベントを検知するものがある。電源キー205は電源のオン及びオフをする際に用いるハードキーである。
図3はMFP300の外観を示す図である。
図3(a)において、原稿台301は、スキャナ(読取部)で読み取らせる原稿を載せるガラス状の透明な台である。原稿蓋302は、スキャナで読取を行う際に原稿を押さえたり、読取の際に原稿を照射する光源からの光が外部に漏れないようにしたりするための蓋である。印刷用紙挿入口303は様々なサイズの用紙をセット可能な挿入口である。印刷用紙挿入口303にセットされた用紙は一枚ずつ印刷部に搬送され、印刷部で印刷を行って印刷用紙排出口304から排出される。
図3(b)において、原稿蓋302の上部には操作表示部305及びNFCユニット306が配置されている。操作表示部305については、図4を用いて詳細に説明する。NFCユニット306は近距離無線通信を行うためのユニットであり、携帯型通信端末装置200をMFP300に近接させる場所である。NFCユニット306から所定距離(約10cm)以内がNFC通信の有効距離である。WLANアンテナ307は、WLANで通信するためのアンテナが埋め込まれている。
図4は操作表示部305の平面図である。
表示部406は、画像や操作メニュー等のユーザインタフェースを表示する表示画面であり、例えば、ドットマトリクスLCDが例に挙げられる。十字キー401は表示部406上のカーソル移動等の操作に用いる。セットキー402は設定入力のためのキーである。機能キー403は機能設定等の操作に用いる。スタートキー404は印刷の開始等の機能の実行指示を行う。
図5は携帯型通信端末装置200の構成を示すブロック図である。
携帯型通信端末装置200は、装置自身のメインの制御を行うメインボード701と、WLAN通信を行うWLANユニット717と、NFC通信を行うNFCユニット718と、Bluetooth(登録商標)通信を行うBTユニット721とを有する。
メインボード701において、CPU(中央演算処理部)702は、システム制御部であり、携帯型通信端末装置200の全体を制御する。以降に示す携帯型通信端末装置200の処理は、CPU702の制御によって実行される。ROM703は、CPU702が実行する制御プログラムや組込オペレーティングシステム(OS)プログラム等を記憶する。本実施形態では、ROM703に記憶されている各制御プログラムは、ROM703に記憶されている組込OSの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。
RAM704は、SRAM(Static RAM)等で構成され、プログラム制御変数等のデータを記憶し、また、ユーザが登録した設定値や携帯型通信端末装置200の管理データ等のデータを記憶し、各種ワーク用バッファ領域が設けられている。
画像メモリ705は、DRAM(Dynamic RAM)等のメモリで構成され、通信部を介して受信した画像データや、データ蓄積部712から読み出した画像データをCPU702で処理するために一時的に記憶する。ここで、通信部とは、WLANユニット717と、NFCユニット718及びBTユニット721を含む通信機能の総称である。
不揮発性メモリ722は、フラッシュメモリ(flash memory)等のメモリで構成され、電源がオフされてもデータを記憶し続ける。尚、このようなメモリ構成は、これに限定されるものではない。例えば、画像メモリ705とRAM704を共有させてもよいし、データ蓄積部712にデータのバックアップ等を行ってもよい。また、本実施形態では、画像メモリ705にDRAMを用いているが、ハードディスクや不揮発性メモリ等の他の記憶媒体を使用する場合もあるのでこの限りではない。
データ変換部706は、種々の形式のデータの解析や、色変換、画像変換等のデータ変換を行う。電話部707は、電話回線の制御を行い、スピーカ部713を介して入出力される音声データを処理することで電話による通信を実現している。操作部708は、操作部204(図2)の信号を制御する。GPS(Global Positioning System)709は、携帯型通信端末装置200の現在の緯度や経度等の位置情報を取得する。表示部710は、表示部203(図2)の表示内容を電子的に制御しており、各種入力操作や、MFP300の動作状況、ステータス状況の表示等を行うことができる。
カメラ部711は、レンズを介して入力された画像を電子的に記録して符号化する機能を有している。カメラ部711で撮影された画像はデータ蓄積部712に保存される。スピーカ部713は電話機能のための音声を入力または出力する機能や、その他、アラーム通知等の機能を実現する。電源部714は、携帯可能な電池であり、装置内への電力供給制御を行う。電源状態には、電池に残量が無い電池切れ状態、電源キー205を押下していない電源オフ状態、通常起動している起動状態、起動しているが省電力になっている省電力状態がある。
携帯型通信端末装置200には無線通信するための通信部が3つ搭載されており、WLAN、NFC、BlueTooth(登録商標)で無線通信することができる。これにより、携帯型通信端末装置200は、MFP等の他デバイスとのデータ通信を行う。この通信部では、データをパケットに変換し、他デバイスにパケット送信を行う。逆に、外部の他デバイスからのパケットを、元のデータに復元してCPU702に対して送信する。WLANユニット717、NFCユニット718及びBTユニット721はそれぞれバスケーブル715、716及び720を介してメインボード701に接続されている。WLANユニット717、NFCユニット718及びBTユニット721はそれぞれの規格に準拠した通信を実現するためのユニットである。
メインボード701内の各種構成要素(703〜714、717、718、721及び722)は、CPU702が管理するシステムバス719を介して、相互に接続されている。
図6はMFP300の構成を示すブロック図である。
MFP300は、装置自身のメインの制御を行うメインボード801と、WLAN通信を行うWLANユニット817と、NFC通信を行うNFCユニット818と、Bluetooth(登録商標)通信を行うBTユニット819とを有する。
メインボード801において、CPU(中央演算処理部)802は、システム制御部であり、MFP300の全体を制御する。以降に示すMFP300の処理は、CPU802の制御によって実行される。ROM803は、CPU802が実行する制御プログラムや組込オペレーティングシステム(OS)プログラム等を記憶する。本実施形態では、ROM803に記憶されている各制御プログラムは、ROM803に記憶されている組込OSの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。RAM804は、SRAM(Static RAM)等で構成され、プログラム制御変数等のデータを記憶し、また、ユーザが登録した設定値やMFP300の管理データ等のデータを記憶し、各種ワーク用バッファ領域が設けられている。
不揮発性メモリ805は、フラッシュメモリ(flash memory)等のメモリで構成され、電源がオフされてもデータを記憶し続ける。画像メモリ806は、DRAM(Dynamic RAM)等のメモリで構成され、通信部を介して受信した画像データや、符号復号化処理部812で処理した画像データや、メモリカードコントローラ516を介して取得した画像データを蓄積する。また、携帯型通信端末装置200のメモリ構成と同様に、これらのようなメモリ構成はこれに限定されるものではない。データ変換部807は、種々の形式のデータの解析や、画像データから印刷データへの変換等を行う。
尚、ここでの通信部とは、WLANユニット817と、NFCユニット818及びBTユニット819を含む通信機能の総称である。
読取制御部808は、読取部810(例えば、CISイメージセンサ(密着型イメージセンサ))を制御して、原稿上の画像を光学的に読み取る。次に、これを電気的な画像データに変換した画像信号を出力する。このとき2値化処理や中間調処理等の各種画像処理を施してから出力しても良い。
操作部809及び表示部811は、図4での操作表示部305に対応する。符号復号化処理部812は、MFP300で扱う画像データ(JPEG、PNG等)の符号復号化処理や、拡大縮小処理を行う。給紙部814は印刷のための用紙を保持する。印刷制御部816からの制御で給紙部814から用紙の給紙を行うことができる。特に、給紙部814は、複数種類の用紙を一つの装置に保持するために、複数の給紙部を用意することができる。そして、印刷制御部816により、どの給紙部から給紙を行うかの制御を行うことができる。
印刷制御部816は、印刷される画像データに対し、スムージング処理や印刷濃度補正処理、色補正等の各種画像処理等を施してから印刷部815に出力する。印刷部815は、例えば、インクタンクから供給されるインクをプリントヘッドから吐出させて画像を印刷するインクジェットプリンタを採用可能である。また、印刷制御部816は印刷部815の情報を定期的に読み出してRAM804の情報を更新する役割も果たす。具体的には、インクタンクの残量やプリントヘッドの状態等のステータス情報を更新することである。
MFP300にも、携帯型通信端末装置200と同様に無線通信するための通信部が3つ搭載されており、機能は同等のため、説明は省略する。ここで、WLANユニット817、NFCユニット818及びBTユニット819はそれぞれバスケーブル820、821及び822を介してメインボード801に接続されている。尚、携帯型通信端末装置200及びMFP300は、WFDをベースにした通信が可能であり、ソフトウェアアクセスポイント(ソフトウェアAP)機能を有している。
メインボード801内の各種構成要素(802〜819)は、CPU802が管理するシステムバス823を介して、相互に接続されている。
<P2P(Peer to Peer)方式について>
WLANにおける通信においてP2Pを実現する方式として、複数のモードが考えられる。それぞれのモードでは探索側の機器が同一の機器探索コマンド(例えば、Probe Requestフレーム)を使用して通信相手となる機器(通信相手装置)を探索して発見する。機器探索コマンドには種々の属性(パラメータ)を付随させて送信することが可能である。機器探索コマンドに対する応答は、探索コマンドに属性が指定されていた場合に、通常、当該モードの仕様及び前提となる仕様(WFDであればWi−Fi)で規定されている範囲で最大限解釈可能な属性の応答をする事が推奨されている。また、機器探索コマンドに付随する情報(上記属性を含む)に解釈できない情報が含まれる場合であっても、受け取った機器探索コマンドに対して解釈できる情報のみを元に応答することも可能である。
P2Pモードのモードとして、以下の3モードが考えられる。
・モードA(ソフトウェアAPモード)
・モードB(Wi−Fi Direct(WFD)モード)
・モードC(WFD拡張モード)
それぞれのモードは、対応している機器が異なることがあり、また、利用できるアプリケーションも異なることがある。
以下、各モードにおける無線接続シーケンスについて、図7〜図9を用いて説明する。
図7はモードA(ソフトウェアAPモード)の無線接続シーケンスを示す図である。
ソフトウェアAPモードでは、通信を行う機器(例えば、携帯型通信端末装置200とMFP300)との間で、一方の機器(例えば、携帯型通信端末装置200)が、各種サービスを依頼する役割を果たすクライアントとなり、もう一方の機器が、WLANにおけるアクセスポイントの機能をソフトウェアによる設定により実現するソフトウェアAP(例えば、MFP300)となる。
ソフトウェアAPモードでは、クライアントは、機器探索コマンドによりソフトウェアAPとなる機器を探索する。ソフトウェアAPが探索されると、クライアントとソフトウェアAPとの間で残りの無線接続の処理(無線接続の確立等)を経て、その後、IP接続の処理(IPアドレスの割当等)を行うことになる。
尚、クライアントとソフトウェアAPとの間で無線接続を実現する場合に送受信されるコマンドやパラメータについては、Wi−Fi規格で規定されているものを用いればよく、ここでの説明は省略する。
図8はモードB(WFDモード)の無線接続シーケンスを示す図である。
WFDモードでは、機器探索コマンドにより通信相手となる機器が探索された後に、P2Pのグループオーナと、P2Pのクライアントの役割を決定した上で、残りの無線接続の処理を行うことになる。この役割決定は、例えば、P2Pでは、GO Negotiationに対応する。
具体的には、まず、通信を行う機器との間で、一方の機器が、機器探索コマンドを発行し、WFDモードで接続する機器を探索する。通信相手となる他方の機器が探索されると、両者の間で、互いの機器で供給可能なサービスや機能に関する情報を確認する(機器供給情報確認)。尚、この機器供給情報確認はオプションであり、必須ではない。機器供給情報確認フェーズは、例えば、P2Pでは、Provision Discoveryに対応する。
次に、この機器供給情報を互いに確認することで、その役割として、どちらがP2Pのクライアントとなり、どちらがグループオーナとなるかを決定する。次に、P2Pのクライアントとグループオーナが決定したら、両者の間で、Wi−Fi Directによる通信を行うためのパラメータを交換する(パラメータ交換フェーズ)。交換したパラメータに基づいて、P2Pのクライアントとグループオーナとの間で残りの無線接続の処理、IP接続の処理を行う。このパラメータ交換フェーズは、例えば、Wi−Fi Protected Setupを用いて自動的に無線LANセキュリティのパラメータ交換することに対応する。
図9はモードC(WFD拡張モード)の無線接続シーケンスを示す図である。
WFD拡張モードは、WFDモードを拡張したものであり、WFDモードでオプションとしていた機器供給情報確認を必須とする。また、IP接続の処理の後に、サービス接続の処理を行う。
<実施形態の概要>
各実施形態における、Wi−Fi Directを利用して、携帯型通信端末装置と印刷装置との間で、OSI参照モデルの通信レイヤにおけるアプリケーション層の通信プロトコルを共有する複数種類の印刷サービスを区別する処理について説明する。このような通信プロトコルとしては、WSD(Web Services for Devices)、IPP(Internet Printing Protocol)、UPnP(Universal Plug and Play)等を用いたものがある。そして、これらのような通信プロトコルが複数の印刷サービスにおいて共通に用いられることがある。以下、複数の実施形態について説明する。
実施形態1では、印刷サービスの種類毎に、宛先情報として、サーバが主導で異なる宛先ポート番号を割り当てて、クライアントに通知することで各サービスに応じた処理を行う。
実施形態2では、印刷サービスの種類によって、使用する無線LAN接続フェーズ(接続手順)が異なることを利用して、その差異で各サービスを区別する。これにより、クライアントがサービス毎に同一のポート(例えば、デフォルトの宛先ポート)を用いた場合でも、クライアントからサーバに送信された要求またはデータについて、サーバ側でのサービスの区別が可能となる。
実施形態3では、印刷サービスの種類毎に、宛先情報として異なるURLを割り当てることで各サービスを区別する。これによっても、サービス毎に同一のポートを用いてもサービスの区別が可能となる。
図10は各実施形態におけるWi−Fi Directの無線接続フェーズのシーケンスを示す図である。
Wi−Fi Directでは、通信を行う機器との間で、一方の機器が、P2Pのクライアント700となり、もう一方の機器が、アクセスポイントの役割を果たすグループオーナ750となる。これらの役割は、通信を行う機器間で決定される。ここでは、携帯型通信端末装置200がP2Pのクライアント700となり、MFP300がグループオーナ750となる場合について説明する。但し、逆に、携帯型通信端末装置200がP2Pのグループオーナになり、MFP300がP2Pのクライアントになった場合でも、サービスを利用するアプリケーション層では意識する必要はない。
以下、Wi−Fi Directの無線接続フェーズ(図8のWFDモードあるいは図9のWFD拡張モード)の基本シーケンスについて、図10を用いて説明する。
尚、Wi−Fi Directによる通信機能を有する機器では、その操作部から、その通信機能を実現する専用のアプリケーションを呼び出す。そして、Wi−Fi Directによる通信機能を有する機器は、そのアプリケーションによって提供されるUI(ユーザインタフェース)に対する操作に基づいて、Wi−Fi Directの通信を行うためのネゴシエーションの実行を指示することができる。
フェーズP701:携帯型通信端末装置200は、Wi−Fi Directによる通信を行うにあたり、機器探索コマンドを送信して、Wi−Fi Directによる通信を行うことができる機器を探索する。この機器探索コマンドをMFP300が受信すると、MFP300は、これに対する応答を行うことで、Wi−Fi Directによる通信を行うための手順を開始する。
フェーズP702:携帯型通信端末装置200とMFP300とは、互いの機器で提供可能なサービスや機能に関する情報を確認する(機器供給情報確認)。この情報には、各種サービスに使用する宛先ポート番号や情報の宛先を示す宛先情報を含めることも可能である。この処理はオプションであり、WFD拡張モード以外では基本的には省略可能である。
フェーズP703:互いの機器でどちらがP2Pのクライアントとなり、どちらがグループオーナとなるかを決定する。ここでは、印刷サービスを依頼する携帯型通信端末装置200がP2Pのクライアント700となり、印刷サービスを提供するMFP300がグループオーナ750となる。
フェーズP704:P2Pのクライアント700とグループオーナ750が決定したら、両者の間で、Wi−Fi Directによる通信を行うためのパラメータを交換する。
フェーズP705:交換したパラメータに基づいて、P2Pのクライアント700とグループオーナ750との間で残りの無線接続の処理を行う。
フェーズP706:交換したパラメータに基づいて、P2Pのクライアント700とグループオーナ750との間でIP接続の処理を行う。ここではIPv4、及びIPv6を同時に使用する。尚、IPv4、IPv6のどちらか一方のみとしても良い。
フェーズP707:交換したパラメータに基づいて、P2Pのクライアント700とグループオーナ750との間で所定のネットワークプロトコルによる通信を行い、印刷サービスに従った印刷データのやり取りを行う。
この基本シーケンスにおいて、P701、P702あるいはP707の少なくとも1つのフェーズで、実施形態1では宛先情報として提供するサービスに利用する宛先ポート番号を通知し、実施形態3では宛先情報として提供するサービスに利用するURLを通知する。この通知を行うことにより、各サービスを利用するための宛先情報が重複している場合には、互いに異なるようにP2Pのクライアント700とグループオーナ750との間で利用する宛先情報を設定する。これにより、利用するサービス毎に個別の宛先情報を利用することが可能となるので、各サービスの挙動を正常に実行できる。
一方、実施形態2では、特定のサービスの場合には、特定の接続フェーズ(例えば、図10のフェーズP702)を必ず経由することを利用して、その特定のサービスとそれ以外のサービスとを区別することで、各サービスの処理を正常に実行させる。
以下、各実施形態の詳細について説明する。
<実施形態1>
実施形態1では、アプリケーション層における通信プロトコルが共通であっても、サービスを提供するサーバが印刷サービスの種類毎に別の宛先ポート番号を割り当てて、その内容をクライアントに通知することで複数のサービスを明示的に区別する処理について説明する。
特に、実施形態1では、クライアントとサーバとの間で使用するサービスとして、印刷サービスを使用する場合を例に挙げて説明するが、これに限定されるものではなく、サーバが提供する各種サービスについて、本実施形態を適用できる。例えば、スキャナで原稿を読み取って得た画像データを所定のストレージに保存するサービス、所望のファイルを所定のストレージに保存するサービス、所定のストレージに保存されているファイルを提供するサービス等でもよい。このときの通信で使用する宛先ポート番号、宛先URL等の宛先情報をサービス毎に区別したり、サービス固有の通信手順の有無によってサービスを特定したりするようにする。
図11は実施形態1のシステムにおける機能構成を示す図である。
図11において、830は印刷サービス等のサービスを利用するクライアントであり、ここでは携帯型通信端末装置200(図10のP703でP2Pのクライアント700と決定された機器)とする。850は印刷サービス等のサービスを提供するサーバであり、ここでは、MFP300(図10のP703でグループオーナ750と決定された機器)とする。但し、P2Pのクライアントであるか、グループオーナであるかは、サービスのクライアント・サーバの関係を限定するものではない。
クライアント830では、以下の実施形態の処理を実現する際に用いる主な機能構成として、UI操作部831、印刷データ生成部832、ネットワーク制御部833、アプリケーション制御部834、及びWLAN部835を備える。
UI操作部831は、図5のCPU702及び操作部708で実現される。UI操作部831は、Wi−Fi Directによる通信を行うためのUIを含む携帯型通信端末装置200で行う各種操作のUIを表示し、ユーザからのUIを介する入力を受け付けて、その入力に応じた処理を実行する。
印刷データ生成部832は図5のCPU702及びデータ変換部706で実現される。印刷データ生成部832は、サーバ850に出力する印刷データを生成する。
ネットワーク制御部833は、図5のCPU702で実現される。ネットワーク制御部833は、図5のWLANユニット717の動作を制御する。
アプリケーション制御部834は、図5のCPU702で実現される。アプリケーション制御部834は、サーバ850に依頼する各種サービスに対応した処理の動作を制御する。ここでは、アプリケーション制御部834は、一例として、印刷サービス(印刷サービス1)834aと印刷サービス(印刷サービス2)834bを実行可能であるものとする。ユーザがそれぞれの印刷サービスに対応したアプリケーションから印刷を指示することにより、アプリケーション制御部834によっていずれかの印刷サービスに従った処理を実行する。印刷サービスは、印刷データ生成部832で生成された印刷データを、所定の通信プロトコルに従って、サーバ850へ送信し、印刷処理を実行するものである。
尚、実施形態1では、サーバ850が提供する印刷サービス1は標準規格1に従って印刷を実行するものであり、印刷サービス2は標準規格2に従って印刷を実行するものであるとする。これらの標準規格1と標準規格2との間では、アプリケーション層の通信プロトコルとして同一のものを使用し、その通信プロトコルで使用するデフォルトの宛先ポート番号は、同一のポート番号(例えば、80)であるものとする。但し、標準規格1と標準規格2との間では、印刷に係る印刷データフォーマット、印刷用紙の指定方法等の各種設定に関する規定が異なるものとする。
WLAN部835は、図5のWLANユニット717によって実現される。WLAN部835は、Wi−Fi Directによる通信を含むWLAN通信を行う。
サーバ850では、以下の実施形態の処理を実現する際に用いる主な機能構成として、UI操作部831、印刷データ生成部832、ネットワーク制御部833、アプリケーション制御部834、WLAN部835を備える。
UI操作部851は、図6のCPU802及び操作部809で実現される。UI操作部851は、Wi−Fi Directによる通信を行うためのUIを含むMFP300で行う各種操作のUIを表示し、ユーザからのUIを介する入力を受け付けて、その入力に応じた処理を実行する。
印刷エンジン852は、図6の印刷部815で実現される。印刷エンジン852は、印刷データ解析部853で解析された印刷データに基づいて、印刷を実行する。
印刷データ解析部853は、図6のデータ変換部807、符号復号化処理部112及び印刷制御部816で実現される。印刷データ解析部853は、サービス制御部855が提供する印刷サービスを介して、クライアント830から受信する印刷データを解析する。
ネットワーク制御部854は、図6のCPU802で実現される。ネットワーク制御部854は、図6のWLANユニット817の動作を制御する。
サービス制御部855は、図6のCPU802で実現される。サービス制御部855は、クライアント830に対して、サーバで実現する各種サービスを提供し、その動作を制御する。ここでは、サービス制御部855は、一例として、印刷サービス(印刷サービス1)855aと印刷サービス(印刷サービス2)855bを実行するものとする。一般的には、クライアントとサーバの間で実施される印刷サービスの制御に関して、標準規格等による規定を設けることで正しい印刷結果を得ることができる。そこで、サービス制御部855は各印刷サービス(標準規格)に従ったフォーマットのデータ及び印刷用紙の指定方法に従った処理を実行する。
WLAN部856は、図6のWLANユニット817によって実現される。WLAN部856は、Wi−Fi Directによる通信を含むWLAN通信を行う。
実施形態1では、サーバ850は、自身が提供するサービスの内、同一通信プロトコル(アプリケーション層)を用いるサービスが複数あるか、複数ある場合、その数を判定する。判定の結果、その数が2以上ある場合には、MFP300は、各サービスに対して異なる宛先情報(ポート番号)を使用してサービスを提供することを可能にするために、各サービスに異なる宛先ポート番号を割り当てる。そして、サーバ850は、その割り当てた宛先ポート番号を、クライアント830へ通知する。この通知は、図10のP701における機器探索リクエストに対する応答として、またはP702における機器供給情報確認において、またはP707において行われる。
尚、割り当てる宛先ポート番号は、既存のポート番号以外の空きのポート番号である。
図11の例では、印刷サービスとして、印刷サービス(印刷サービス1)855aと印刷サービス(印刷サービス2)855bの種類の印刷サービスが存在する。そのため、サーバ850は、例えば、印刷サービス(印刷サービス1)855aに宛先ポート番号80(デフォルトの宛先ポート)を割り当て、印刷サービス(印刷サービス2)855bに宛先ポート番号81(非デフォルトの宛先ポート)を割り当てる。そして、サーバ850は、各印刷サービスについて、その印刷サービスと対応する宛先ポート番号をクライアント830へ通知する。この時、クライアント830側で印刷サービスの送信元ポートは、許可されているポート番号であれば、特に、サーバ側のポート番号に合わせる必要はない。クライアント830は、印刷サービス1の宛先ポート834a、印刷サービス2の宛先ポート834bに通知された宛先ポート番号を割り当てる。
この通知を受けることで、クライアント830は、自身が利用する印刷サービスに対して宛先として使用するポート番号を特定し、割り当てることができる。
次に、図11の構成において、実施形態1のサーバ850が実行する処理について、図12を用いて説明する。
図12は実施形態1のサーバ850が実行する処理を示すフローチャートである。
ステップS901で、サーバ850(MFP300)は、UI操作部851からの操作に基づいて電源がONにされると本処理を開始する。
ステップS902で、サービス制御部855は、クライアント830となる機器に対して提供可能なサービスを不揮発性メモリ805に登録する。ここでは、印刷サービス(印刷サービス1)855aと印刷サービス(印刷サービス2)855bを登録する。
ステップS903で、サービス制御部855は、登録した印刷サービスの種類が2種類以上であるか否かを判定する。2種類以上でない場合(ステップS901でNO)、ステップS906に進む。一方、2種類以上である場合(ステップS901でYES)、ステップS904に進む。
ステップS904で、サービス制御部855は、登録した2種類以上の印刷サービスのデフォルトの宛先ポート番号を特定し、各印刷サービスが異なるポート番号となるように、各印刷サービスに固有の宛先ポート番号を割り当てる。具体的には、サービス制御部855は、2種類以上の印刷サービスの内、デフォルトの宛先ポート番号とは異なる非デフォルトの宛先ポート番号を使用する印刷サービスを決定する。そして、その数に応じて、サービス制御部855は、デフォルトの宛先ポート番号を使用する印刷サービス以外の印刷サービスそれぞれについて異なる非デフォルトの宛先ポート番号を割り当てる。上述のように、図11の例では、印刷サービス(印刷サービス1)855aにデフォルトの宛先ポート番号(80)が割り当てられ、印刷サービス(印刷サービス2)855bに非デフォルトの宛先ポート番号(81)が割り当てられる。
ステップS905で、サービス制御部855は、非デフォルトの宛先ポート番号を割り当てた印刷サービスを特定する情報とそれに対応する非デフォルトの宛先ポート番号を割当情報として、クライアント830へ通知する。ステップS905における通知は、クライアント830からの機器探索コマンドを受信した場合、それに対する応答として、または機器探索コマンド受信後の機器供給情報確認のフェーズで、またはIP接続後のやり取りで行われる。つまり、ステップS904の処理の後、サーバ850は他の機器からのアクセスがあるまで待機し、アクセスがあった場合、ステップS905以降の処理を行う。
ステップS906で、サービス制御部855は、クライアント830から要求される印刷サービスを受け付けるために、クライアント830から指定されたポート番号に応じた印刷サービスを起動する。
ステップS907で、サービス制御部855は、クライアント830から指定された受信ポート番号を判定する。
ステップS907の判定の結果、ポート番号が80番(デフォルトの宛先ポート番号)である場合、ステップS908で、サービス制御部855は、そのポートを介して印刷データを受信する。ステップS909で、サービス制御部855と印刷データ解析部853は、受信した印刷データに対して印刷サービス(印刷サービス1)855aに従う各種印刷設定を行う。そして、ステップS910で、印刷エンジン852は、各種印刷設定に従って、標準規格1に従った印刷を実行する。
一方、ステップS907の判定の結果、ポート番号が81番(非デフォルトの宛先ポート番号)である場合、ステップS911で、サービス制御部855は、そのポートを介して印刷データを受信する。ステップS912で、サービス制御部855と印刷データ解析部853は、受信した印刷データに対して印刷サービス(印刷サービス2)855bに従う各種印刷設定を行う。そして、ステップS913で、印刷エンジン852は、各種印刷設定に従って、標準規格2に従った印刷を実行する。
尚、以上の説明において、ステップS905では、非デフォルトの宛先ポートのみ通知するものとしたが、デフォルトの宛先ポートと非デフォルトの宛先ポートとを、それぞれに対応した印刷サービスを特定する情報とともに通知するようにしてもよい。また、以上の説明では、1つのサービスはデフォルトの宛先ポートを用いるものとしているが、いずれのサービスに対しても非デフォルトの宛先ポートを用いるものとし、それぞれ異なるポート番号を用いるようにしてもよい。
以上説明したように、実施形態1によれば、アプリケーション層における通信プロトコルが同一であっても、サービス毎に別のポート番号を割り当てて、クライアントに通知することで、サービスを明示的に使い分けることが可能となる。
<実施形態2>
実施形態2では、印刷サービスの種類によって、使用する無線LAN接続フェーズが異なる規格の場合は、その差異に基づき複数のサービスを区別する処理について説明する。
尚、実施形態2のシステムにおける機能構成は、実施形態1の図11に準ずるため、説明は省略する。
また、実施形態2では、サーバ850が提供する印刷サービス1は標準規格1に従って印刷を実行するものであり、印刷サービス2は標準規格2に従って印刷を実行するものであるとする。これらの標準規格1と標準規格2との間では、無線接続フェーズ(例えば、図8のWFDモードと図9のWFD拡張モード)が異なる通信プロトコルを使用し、その印刷サービスで使用するポートは同一のポート番号(例えば、80)を使用するものとする。但し、それぞれ異なるポート番号を用いても構わない。
次に、実施形態2のサーバ850が実行する処理について、図13を用いて説明する。
図13は実施形態2のサーバ850が実行する処理を示すフローチャートである。
ステップS1001で、サーバ850(MFP300)は、UI操作部851からの操作に基づいて電源がONにされると本処理を開始する。
ステップS1002で、サービス制御部855は、クライアント830となる機器に対して提供可能なサービスを不揮発性メモリ805に登録する。ここでは、印刷サービス(印刷サービス1)855aと印刷サービス(印刷サービス2)855bを登録する。この処理の後、サーバ850は、他の機器からのアクセスがあるまで待機する。
ステップS1003で、ネットワーク制御部854は、クライアント830からの無線経由でのアクセス要求があると、要求される接続手順に従って、無線接続を開始する。ステップS1004で、ネットワーク制御部854は、開始した無線接続における接続手順によって実行する一連の接続フェーズが特定の接続フェーズを通過しているか否かを判定する。
例えば、WFDモードとWFD拡張モードとの間では、機器供給情報確認のフェーズの有無が異なる。従って、ここでは機器供給情報確認のフェーズを経由したか否かを判定する。但し、機器供給情報確認の接続フェーズがWFDではオプションであるため、クライアントがWFDモードでもこの接続フェーズを通過する可能性がある。その場合は、クライアントから送信された機器供給情報確認のコマンドの中身を見て、WFD拡張の属性が含まれるかどうかを判定する。WFD拡張の属性が含まれない場合は、WFDモードと等価に扱い、ステップS1005の通過フラグをOFFにする。WFD拡張の属性が含まれる場合には、S1005の通過フラグをONにする。
ここでは、印刷サービス(印刷サービス1)855aがWFDモードで動作し、かつ標準規格1に従うサービスとし、印刷サービス(印刷サービス2)855bがWFD拡張モードで動作し、かつ標準規格2に従うサービスとする。即ち、特定フェーズを通過した場合は印刷サービス2、通過しなかった場合は印刷サービス1をそれぞれ実行すべきであることが判別できる。
尚、特定の接続フェーズの通過フラグをON/OFFのいずれかにすべきかの判定は、図10のP702機器供給情報確認の接続フェーズに限定するものではなく、P703の役割決定、P702のパラメータ交換、P706のIP接続、もしくはP707のネットワークプロトコルのいずれかを用いることも可能である。
例えば、P706のIP接続フェーズで、特定のサービスのみがIPv6のみを規定しており、他のサービスではIPv4のみを規定している場合は、クライアントがIPv6を使用して要求を送信してきた場合のみS1005の通過フラグをONにすることができる。逆にIPv4を使用して要求を送信してきた場合は、S1005の通過フラグをOFFにすることができる。つまり、複数の標準規格でIP接続に関する規定が異なれば、IP接続のフェーズを判定するだけで、どちらのサービスを利用しているのか、サーバ側で印刷を開始する直前に区別することが可能である。同様に他の接続フェーズであっても、複数の標準規格で規定が異なる部分があれば、ステップS1005の通過フラグをON/OFFする制御が可能である。
特定の接続フェーズを通過していない場合(ステップS1004でNO)、ステップS1006に進む。一方、特定の接続フェーズを通過している場合(ステップS1004でYES)、ステップS1005に進む。
ステップS1005で、ネットワーク制御部854は、特定の接続フェーズを通過したことを示す通過フラグをONに設定する。この通過フラグの状態(ON/OFF)は、例えば、MFP300内のRAM804に記憶される。
ステップS1006で、サービス制御部855は、クライアント830から要求される印刷サービスを受け付けるために、無線接続モードに応じた印刷サービスを起動する。
ステップS1007で、サービス制御部855は、通過フラグがONであるか否かを判定する。通過フラグがONでない場合(ステップS1007でNO)、つまり、通過フラグがOFFである場合、ステップS1008で、サービス制御部855は、印刷データの受信を開始する。ステップS1009で、サービス制御部855と印刷データ解析部853は、受信した印刷データに対して印刷サービス(印刷サービス1)855aに従う各種印刷設定を行う。ステップS1010で、印刷エンジン852は、各種印刷設定に従って、標準規格1に従った印刷を実行する。
一方、ステップS1007の判定の結果、通過フラグがONである場合(ステップS1007でYES)、ステップS1011で、サービス制御部855は、印刷データの受信を開始する。ステップS1012で、サービス制御部855と印刷データ解析部853は、受信した印刷データに対して印刷サービス(印刷サービス2)855bに従う各種印刷設定を行う。ステップS1013で、印刷エンジン852は、各種印刷設定に従って、標準規格2に従った印刷を実行する。これは、換言すれば、標準規格2は、特定の接続フェーズに関連付けられているといえる。また、標準規格1と標準規格2でエラーに関する規定が異なる場合も、印刷サービスによって挙動を切り替える。例えば、標準規格1における印刷時の受信タイムアウトの時間設定が60秒であり、標準規格2における印刷時の受信タイムアウトの時間設定が120秒とする。この場合、印刷サービスの種類を特定の接続フェーズに関連付けることで受信タイムアウトの時間設定を切り替える。
以上説明したように、実施形態2によれば、印刷サービスの種類によって、使用する無線LAN接続フェーズが異なることを利用して、複数のサービスを区別することができる。これによって例えそれぞれのサービスで同一のポートを用いたとしても複数のサービスを区別することができる。
<実施形態3>
実施形態3では、アプリケーション層における通信プロトコルが共通であっても、印刷サービスの種類によって、印刷要求受信宛先のURLを切り替えることでサービスを区別する処理について説明する。
尚、実施形態3のシステムにおける機能構成は、実施形態1の図11に準ずるため、説明は省略する。
実施形態3では、サーバ850は、自身が提供するサービスの内、同一通信プロトコル(アプリケーション層)を用いるサービスが複数あるか、複数ある場合、その数を判定する。判定の結果、その数が2以上ある場合には、各サービスに対して異なる宛先情報(URL)を使用してサービスを提供することを可能にするために、各サービスに異なるURLを割り当てる。そして、その割り当てたURLを、クライアント830へ通知する。この通知は、図10のP701における機器探索リクエストに対する応答として、またはP702における機器供給情報確認において、またはP707において行われる。
図11の例では、印刷サービスとして、印刷サービス(印刷サービス1)855aと印刷サービス(印刷サービス2)855bの種類の印刷サービスが存在する。そのため、サーバ850は、例えば、印刷サービス(印刷サービス1)855aにデフォルトの宛先URL(例えば、http://printer/service1)を割り当てる。また、サーバ850は、例えば、印刷サービス(印刷サービス2)855bに非デフォルトの宛先URL(例えば、http://printer/service2)を割り当てる。そして、サーバ850は、各印刷サービスについて、その印刷サービスと対応するURLをクライアント830へ通知する。
この通知を受けることで、クライアント830は、自身が利用する印刷サービスに対して宛先として使用するURLを特定し、割り当てることができる。
次に、図11の構成において、実施形態3のサーバ850が実行する処理について、図12を用いて説明する。
図14は実施形態3のサーバ850が実行する処理を示すフローチャートである。
ステップS1101で、サーバ850(MFP300)は、UI操作部851からの操作に基づいて電源がONにされると本処理を開始する。
ステップS1102で、サービス制御部855は、クライアント830となる機器に対して提供可能なサービスを不揮発性メモリ805に登録する。ここでは、印刷サービス(印刷サービス1)855aと印刷サービス(印刷サービス2)855bを登録する。
ステップS1103で、サービス制御部855は、登録した印刷サービスの種類が2種類以上であるか否かを判定する。2種類以上でない場合(ステップS1101でNO)、ステップS1106に進む。一方、2種類以上である場合(ステップS1101でYES)、ステップS1104に進む。
ステップS1104で、サービス制御部855は、登録した2種類以上の印刷サービスのデフォルトの宛先URLを特定し、各印刷サービスが異なるURLとなるように、各印刷サービスに固有の宛先URLを割り当てる。具体的には、サービス制御部855は、2種類以上の印刷サービスの内、デフォルトの宛先URLとは異なる非デフォルトの宛先URLを使用する印刷サービスを決定する。そして、その数に応じて、サービス制御部855は、デフォルトの宛先URLを使用する印刷サービス以外の印刷サービスそれぞれについて異なる非デフォルトの宛先URLを割り当てる。上述のように、図11の例を実施形態3の構成に置き換えると、印刷サービス(印刷サービス1)855aにデフォルトの宛先URLが割り当てられ、印刷サービス(印刷サービス2)855bに非デフォルトの宛先URLが割り当てられる。
ステップS1105で、サービス制御部855は、非デフォルトの宛先URLを割り当てた印刷サービスを特定する情報とそれに対応する非デフォルトの宛先URLを割当情報として、クライアント830へ通知する。ステップS1105における通知は、クライアント830からの機器探索コマンドを受信した場合、それに対する応答として、または機器探索コマンド受信後の機器供給情報確認のフェーズで、またはIP接続後のやり取りで行われる。つまり、ステップS1104の処理の後、サーバ850は他の機器からのアクセスがあるまで待機し、アクセスがあった場合、ステップS1105以降の処理を行う。
ステップS1106で、サービス制御部855は、クライアント830から要求される印刷サービスを受け付けるために、クライアント830から指定されたURLに応じた印刷サービスを起動する。
ステップS1107で、サービス制御部855は、クライアント830から指定されたURLを判定する。
ステップS1107の判定の結果、URLがデフォルトの宛先URLである場合、ステップS1108で、サービス制御部855は、そのデフォルトの宛先URLを介して印刷データを受信する。ステップS1109で、サービス制御部855と印刷データ解析部853は、受信した印刷データに対して印刷サービス(印刷サービス1)855aに従う各種印刷設定を行う。そしてステップS1110で、印刷エンジン852は、各種印刷設定に従って、標準規格1に従った印刷を実行する。
一方、ステップS1107の判定の結果、URLが非デフォルトの宛先URLである場合、ステップS1111で、サービス制御部855は、その非デフォルトの宛先URLを介して印刷データを受信する。ステップS1112で、サービス制御部855と印刷データ解析部853は、受信した印刷データに対して印刷サービス(印刷サービス2)855bに従う各種印刷設定を行う。ステップS1113で、印刷エンジン852は、各種印刷設定に従って、標準規格2に従った印刷を実行する。
尚、以上の説明において、ステップS1105では、非デフォルトの宛先URLのみ通知するものとしているが、デフォルトの宛先URLと非デフォルトの宛先URLとを、それぞれに対応した印刷サービスを特定する情報とともに通知するようにしてもよい。また、以上の説明では、1つのサービスはデフォルトの宛先URLを用いるものとしたが、いずれのサービスに対しても非デフォルトの宛先URLを用いるものとし、それぞれ異なるURLを用いるようにしてもよい。
以上説明したように、実施形態3によれば、アプリケーション層における通信プロトコルが同一であっても、サービス毎に別の宛先URLを割り当てて、クライアントに通知することで、サービスを明示的に使い分けることが可能となる。
<実施形態4>
実施形態1乃至実施形態3では、通信を行う機器として、携帯型通信端末装置200とMFP300を例に挙げて説明しているが、P2P方式の通信を行う機器であれば、これらの機器に限定されない。例えば、パーソナルコンピュータ等の情報処理装置と、スキャナ、ファクシミリ、表示装置等の周辺装置との間で、所定のサービスを実行させるような場合に適用するようにしても良い。
また、実施形態1乃至3では、Wi−Fi Directを利用する無線通信(無線ネットワーク)で処理を行う例に挙げて説明しているが、無線通信に代えてイーサネット(登録商標)等の有線通信(有線ネットワーク)で処理を行う構成に適用するようにしても良い。
また、実施形態1及び3では宛先情報(デフォルト宛先情報及び非デフォルト宛先情報)としてポート番号、URLを例に説明しているが、これら以外、例えば、WLANユニットを複数備えるようにするし、異なるIPアドレスを割り当てるようにしてもよい。
尚、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。また、プログラムを実行するコンピュータは、1つであってもよいし、複数のコンピュータが協働してプログラムを実行するものであってもよい。さらに、プログラムの一部を実行する回路等のハードウェアを設け、そのハードウェアと、ソフトウェアを実行するコンピュータが協働して、本実施形態で説明した処理を実行する場合であってもよい。

Claims (12)

  1. 通信装置であって、
    ネットワークを介して通信する通信相手装置に提供するサービスとして、アプリケーション層における通信プロトコルが共通である複数のサービスを実行する実行手段と、
    前記実行手段が実行する各サービスについて異なる宛先情報を割り当てる割当手段と、
    前記割当手段で割り当てた宛先情報と対応するサービスを含む割当情報を、前記通信相手装置へ通知する通知手段と、
    前記通信相手装置から送信される前記宛先情報に応じて前記実行手段で実行すべきサービスを特定する特定手段と
    を備えることを特徴とする通信装置。
  2. 通信装置であって、
    ネットワークを介して通信する通信相手装置に提供するサービスとして、アプリケーション層における通信プロトコルが共通である複数のサービスを実行する実行手段と、
    前記通信相手装置との通信における接続手順において、特定の接続フェーズを経由したか否か判定する判定手段と、
    前記判定手段による判定の結果に応じて前記実行手段で実行すべきサービスを特定する特定手段と
    を備えることを特徴とする通信装置。
  3. 前記実行手段が実行するサービスの内、少なくとも一つのサービスは、Wi−Fi Directを利用するサービスであり、サービス毎にクライアントとサーバの間で定められたサービスの制御に関する規定、もしくはデータフォーマットに関する規定が異なる
    ことを特徴とする請求項1また2に記載の通信装置。
  4. 前記宛先情報は、ポート番号、URL、及びIPアドレスの少なくとも1つを含む
    ことを特徴とする請求項1に記載の通信装置。
  5. 前記宛先情報は、デフォルト宛先情報と非デフォルト宛先情報とを含み、前記通知手段は、少なくとも前記割当手段により割り当てられた非デフォルト宛先情報を通知する
    ことを特徴とする請求項1に記載の通信装置。
  6. 前記通信相手装置から受信する印刷データに基づいて、印刷を実行する印刷手段を更に備え、
    前記実行手段が実行するサービスは、前記印刷手段を用いて印刷を行うサービスである
    ことを特徴とする請求項1乃至5のいずれか1項に記載の通信装置。
  7. 前記実行手段は、サービス毎に異なる印刷設定に従って前記印刷手段に印刷を実行させる
    ことを特徴とする請求項6に記載の通信装置。
  8. 前記通信プロトコルは、WSD(Web Services for Devices)、IPP(Internet Printing Protocol)、UPnP(Universal Plug and Play)の少なくとも1つを含む
    ことを特徴とする請求項1乃至7のいずれか1項に記載の通信装置。
  9. 当該通信装置は、無線通信及び有線通信の少なくとも一方を利用して、前記ネットワークを介して前記通信相手装置と通信する
    ことを特徴とする請求項1乃至8のいずれか1項に記載の通信装置。
  10. ネットワークを介して通信する通信装置に提供するサービスとして、アプリケーション層における通信プロトコルが共通である複数のサービスを実行する実行工程と、
    前記実行工程において実行される各サービスについて異なる宛先情報を割り当てる割当工程と、
    前記割当工程で割り当てた宛先情報と対応するサービスを含む割当情報を、前記通信装置へ通知する通知工程と、
    前記通信装置から送信される前記宛先情報に応じて前記実行工程で実行すべきサービスを特定する特定工程と
    を備えることを特徴とする通信方法。
  11. ネットワークを介して通信する通信装置に提供するサービスとして、アプリケーション層における通信プロトコルが共通である複数のサービスを実行する実行工程と、
    前記通信装置との通信における接続手順において、特定の接続フェーズを経由したか否か判定する判定工程と、
    前記判定工程における判定の結果に応じて前記実行工程で実行すべきサービスを特定する特定工程と
    を備えることを特徴とする通信方法。
  12. 請求項10または11に記載の制御方法をコンピュータに実行させるためのプログラム。
JP2014037322A 2013-04-26 2014-02-27 通信装置、通信制御方法、及びプログラム Expired - Fee Related JP6454075B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014037322A JP6454075B2 (ja) 2013-04-26 2014-02-27 通信装置、通信制御方法、及びプログラム
US14/244,606 US9588719B2 (en) 2013-04-26 2014-04-03 Communication apparatus, communication method and computer-readable storage medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013094639 2013-04-26
JP2013094639 2013-04-26
JP2014037322A JP6454075B2 (ja) 2013-04-26 2014-02-27 通信装置、通信制御方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2014225227A true JP2014225227A (ja) 2014-12-04
JP2014225227A5 JP2014225227A5 (ja) 2017-03-30
JP6454075B2 JP6454075B2 (ja) 2019-01-16

Family

ID=51789036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014037322A Expired - Fee Related JP6454075B2 (ja) 2013-04-26 2014-02-27 通信装置、通信制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US9588719B2 (ja)
JP (1) JP6454075B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6238528B2 (ja) * 2013-02-22 2017-11-29 キヤノン株式会社 印刷装置
JP6216149B2 (ja) 2013-04-26 2017-10-18 キヤノン株式会社 通信装置、通信方法およびプログラム
JP6242241B2 (ja) 2013-04-26 2017-12-06 キヤノン株式会社 印刷装置、通信装置、及びプログラム
JP6212280B2 (ja) 2013-04-26 2017-10-11 キヤノン株式会社 通信装置、通信方法およびプログラム
TWI573073B (zh) * 2014-06-05 2017-03-01 Seiko Epson Corp A printing control device, a printing system, and a printing control method
JP6179531B2 (ja) * 2015-01-29 2017-08-16 コニカミノルタ株式会社 画像処理装置、その制御方法、およびプログラム
JP6562867B2 (ja) * 2016-03-31 2019-08-21 キヤノン株式会社 情報処理装置、制御方法、プログラム
JP6700969B2 (ja) * 2016-05-20 2020-05-27 キヤノン株式会社 通信装置及びその制御方法、プログラム
JP6797651B2 (ja) 2016-11-30 2020-12-09 キヤノン株式会社 印刷装置、印刷装置の制御方法、及びプログラム
JP6552563B2 (ja) 2017-08-10 2019-07-31 キヤノン株式会社 印刷装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139585A (ja) * 2004-11-12 2006-06-01 Seiko Epson Corp ネットワーク型プラグアンドプレイに対応したネットワーク装置の制御
US20100011375A1 (en) * 2008-07-14 2010-01-14 Safenet, Inc. Zero-install IP security

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7274484B2 (en) * 2003-01-24 2007-09-25 Kabushiki Kaisha Toshiba Image forming apparatus
JP4669901B2 (ja) * 2008-10-21 2011-04-13 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP5673436B2 (ja) 2011-08-17 2015-02-18 ブラザー工業株式会社 無線通信装置
US9036169B2 (en) * 2011-12-12 2015-05-19 Samsung Electronics Co., Ltd. Image forming apparatus supporting Wi-Fi direct and method of activating Wi-Fi direct
JP5910238B2 (ja) * 2012-03-28 2016-04-27 ブラザー工業株式会社 通信装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139585A (ja) * 2004-11-12 2006-06-01 Seiko Epson Corp ネットワーク型プラグアンドプレイに対応したネットワーク装置の制御
US20060117084A1 (en) * 2004-11-12 2006-06-01 Seiko Epson Corporation Control of network plug-and-play compliant device
US20100011375A1 (en) * 2008-07-14 2010-01-14 Safenet, Inc. Zero-install IP security
JP2010020777A (ja) * 2008-07-14 2010-01-28 Safenet Inc ゼロ−インストールipセキュリティ

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
田中雄二: "インクジェット複合機の新機能を生かす 家庭向けプリンター最新活用ガイド", 日経パソコン, vol. 第662号, JPN6018005560, 26 November 2012 (2012-11-26), JP, pages p.72−75 *

Also Published As

Publication number Publication date
US9588719B2 (en) 2017-03-07
US20140320900A1 (en) 2014-10-30
JP6454075B2 (ja) 2019-01-16

Similar Documents

Publication Publication Date Title
JP6454075B2 (ja) 通信装置、通信制御方法、及びプログラム
JP6335437B2 (ja) 通信装置、通信方法およびプログラム
JP6650004B2 (ja) 通信システム、プログラム、および通信方法
JP6242241B2 (ja) 印刷装置、通信装置、及びプログラム
JP6216149B2 (ja) 通信装置、通信方法およびプログラム
JP5941300B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP5924983B2 (ja) 情報処理装置、その制御方法およびプログラム
KR102162568B1 (ko) 통신장치, 그 제어 방법, 및 기록 매체
JP6338344B2 (ja) 通信装置、通信装置の制御方法およびプログラム
JP2016162044A (ja) 画像形成装置、サーバ装置、及び通信システム
JP6525771B2 (ja) 情報処理装置、制御方法、およびプログラム
JP6421644B2 (ja) 画像形成装置、サーバ装置、及び通信システム
JP6742150B2 (ja) 通信装置、制御方法、及びプログラム
JP6700972B2 (ja) 通信装置、制御方法、及びプログラム
JP6212280B2 (ja) 通信装置、通信方法およびプログラム
JP2017212506A (ja) 通信装置、通信方法、およびプログラム
JP6643185B2 (ja) 通信装置、通信方法、およびプログラム
JP6700971B2 (ja) 通信装置、制御方法、及びプログラム
JP2023122131A (ja) 通信装置及びその制御方法、プログラム
JP6302169B2 (ja) 通信装置、通信方法およびプログラム
JP6752622B2 (ja) 通信装置及び通信方法、プログラム
JP6484357B2 (ja) 通信装置およびプログラム
JP2019072928A (ja) 画像形成システム、および画像形成装置
JP2023014832A (ja) 通信装置、制御方法、及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170224

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181102

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181116

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181214

R151 Written notification of patent or utility model registration

Ref document number: 6454075

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees