JP6802655B2 - 通信装置、その制御方法、およびプログラム - Google Patents

通信装置、その制御方法、およびプログラム Download PDF

Info

Publication number
JP6802655B2
JP6802655B2 JP2016145695A JP2016145695A JP6802655B2 JP 6802655 B2 JP6802655 B2 JP 6802655B2 JP 2016145695 A JP2016145695 A JP 2016145695A JP 2016145695 A JP2016145695 A JP 2016145695A JP 6802655 B2 JP6802655 B2 JP 6802655B2
Authority
JP
Japan
Prior art keywords
communication device
communication
nan
nan device
service
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.)
Active
Application number
JP2016145695A
Other languages
English (en)
Other versions
JP2018019144A (ja
JP2018019144A5 (ja
Inventor
俊文 濱地
俊文 濱地
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 JP2016145695A priority Critical patent/JP6802655B2/ja
Priority to US15/635,295 priority patent/US20180027601A1/en
Publication of JP2018019144A publication Critical patent/JP2018019144A/ja
Publication of JP2018019144A5 publication Critical patent/JP2018019144A5/ja
Application granted granted Critical
Publication of JP6802655B2 publication Critical patent/JP6802655B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Description

本発明は、通信装置、その制御方法、およびプログラムに関する。
IEEE802.11に代表される無線LANシステムが広く利用されるようになっている。無線LANでは、アクセスポイント(AP)と呼ばれる基地局によってネットワークが制御される。このAPと、APの電波到達範囲内に存在し、無線接続状態であるステーション(STA)とによって無線ネットワークが構成される。近年、このような従来型のAPとSTAによる単純な無線ネットワーク構成だけでなく、さまざまな無線LANネットワーク形態の製品および仕様規格が登場している。
特許文献1には、省電力で通信装置や該通信装置が提供するサービスなどを検出するための通信の規格として、Wi-Fi Allianceによって規定されるNeighbor Awareness Networking(NAN)が記載されている。NANでは、NANを構成する各通信装置(以後、NANデバイス)が情報交換する期間を同期する。なお、Wi-Fi Alliance は、NAN をWi-Fi Awareの名称で認証を行っている。これにより、無線RFを有効にする時間を短くすることができ、省電力を実現することができる。NANでは、この同期のための期間を、Discovery Window(DW)と呼ぶ。また、所定の同期期間が共有されたNANデバイスの集合を、NANクラスタと呼ぶ。
NANデバイスは、NANクラスタ内で、Master、Non-Master Sync、Non-Master Non-Syncという役割のいずれかを担うことができる。Masterの役割を有するNANデバイスは、DW期間に、同じNANクラスタの各NANデバイスが同期をとれるようにするための信号であるSync Beaconを送信する。そして、NANクラスタ内の各NANデバイスは、同期を取った上で、DW期間に、サービスを探すための信号であるSubscribeメッセージや、サービスを提供していることを通知するための信号であるPublishメッセージを互いに送受信しあう。更に、各NANデバイスは、DW期間ではサービスに関する追加情報を交換するためのFollow-upメッセージをやりとりすることができる。Publish、Subscribe、Follow-upメッセージといったメッセージのフレーム構成はNAN規格で定義されており、Service Discovery Frame (SDF)と呼ばれる。SDFには、対象となるサービスを特定するための識別子であるService IDが含まれる。NANデバイスは、お互いにSDFをやりとりすることで、サービスの検出を行うことができる。
米国特許出願公開第2014/302787号公報
NANデバイスは、NANクラスタ内で、上記のような手法により、サービスの検出を行うことができる。しかし、NANデバイスは、サービスを検出した後に実際にそのサービスを実施するためのアプリケーションの通信を行う場合には、無線接続を別途確立する必要がある。サービスを実施するための通信は、NANクラスタとは別のネットワーク、すなわちInfraネットワーク、IBSS、Wi-Fi Directなどの、NANとは別のネットワークで行われる。NANデバイスは、新たなネットワークを確立して、アプリケーションによる通信をすることができるようになる。しかしながら、従来では、別途新たなネットワークで通信するための処理を行わなければならず、速やかにサービスを実行するための通信を開始することができないという課題があった。
本発明は、上記課題に鑑みてなされたものであり、所望のサービスを実行可能な他の通信装置と、サービスを実行するための通信を速やかに開始することを目的とする。
上記目的を達成するための手段として、本発明の通信装置は以下の構成を有する。すなわち、通信装置であって、Neighbor Awareness Networking(NAN)に規定されるDiscovery Windowにおいて、所定のサービスを提供する他の通信装置を検出する検出手段と、前記検出手段により検出された前記他の通信装置と通信パラメータの共有処理を行って、データリンクを確立する立手段と、前記立手段により前記データリンクが確立される際に行われた前記共有処理により共有された前記通信パラメータを記憶する記憶手段と、前記通信装置と前記他の通信装置との間の前記データリンク切断された後に、前記通信装置がDiscovery Windowにおいて前記他の通信装置を再検出した場合、前記通信装置が前記データリンクによって通信可能なDiscovery Windowと異なる期間を前記他の通信装置に通知する通知手段と、前記通知手段によって前記期間を通知した場合に、前記共有処理を行うことなく、前記記憶手段に記憶された前記通信パラメータを用いて、前記期間において前記他の通信装置と前記データリンクを介して通信する通信手段と、を有する。
本発明によれば、所望のサービスを実行可能な他の通信装置と、サービスを実行するための通信を速やかに開始することが可能となる。
実施形態における無線ネットワーク構成を示す図。 実施形態におけるNANデバイスの機能構成の一例を示す図。 実施形態におけるNANデバイスのハードウェア構成の一例を示す図。 実施形態1における通信リンク確立処理のフローチャート。 実施形態1における処理のシーケンス図。 実施形態2における通信リンク確立処理のフローチャート。 実施形態2における処理のシーケンス図。 実施形態3における通信リンク確立処理のフローチャート。 実施形態3における処理のシーケンス図。
(実施形態1)
図1に、本実施形態におけるネットワーク構成例を示す。以下では、Neighbor Awareness Networking(NAN)規格に準拠した無線LANシステムを用いた例について説明する。NANでは、サービス情報をDiscovery Window(DW)と呼ばれる期間に通信する。DWは、NANを実行する複数のデバイスが、convergeする時間およびチャネルである。また、DWのスケジュールを共有している端末の集合をNANクラスタと呼ぶ。なお、DWは、一定周期毎に発生する。
NANクラスタに属する各端末(NANデバイス)は、Master、Non-Master Sync及びNon-Master Non-Syncのうちの何れかの役割で動作する。Masterとして動作する端末は、各端末がDWを識別し、同期するためのビーコンであるSynchronization Beacon(以降、Sync Beaconと称す)を送信する。また、Masterとして動作する端末は、NANクラスタに属していない端末に当該NANクラスタを認識させるための信号であるDiscovery Beaconを送信する。Discovery Beaconは、例えば100msごとに、DWの期間外で送信される。なお、各NANクラスタにおいて、少なくとも1台の端末は、Masterとして動作する。
Non-Master Syncとして動作する端末は、Sync Beaconを送信するが、Discovery Beaconは送信しない。Non-Master Non-Syncとして動作する端末は、Sync BeaconもDiscovery Beaconも送信しない。
NANクラスタに参加する端末は、Sync Beaconに従って、所定周期毎のDW期間に同期し、DW期間においてサービス情報を通信する。
各端末は、DW期間にサービスを検出または要求するための信号であるSubscribeメッセージや、サービスを提供していることを通知するための信号であるPublishメッセージを互いに通信する。更に、各端末は、DW期間にサービスに関する追加情報を交換するためのFollow-upメッセージをやりとりすることができる。なお、Publish、Subscribe、Follow-upといったメッセージを、総称してService Discovery Frame(SDF)と呼ぶ。各端末は、SDFをやりとりすることで、サービスの広告または検出を行うことができる。
また、NANクラスタに参加している各端末は、2.4GHzの周波数帯域の6ch(2.437GHz)で通信する。NANクラスタにおいて、512TU(Time Unit、1TUは、1024μ秒)毎に16TUのDWが設けられる。即ち、NANクラスタにおいて、512TUごとに繰り返し、16TUのDWが設けられる。NANクラスタに参加する各端末は、DWにおいて送受されるSync Beaconにより、DWのスケジュールを同期する。各DW期間にNANクラスタに属する各端末は、SDFにより、サービス情報を通信する。
また、NANでは、サービスまたはアプリケーションの検出を行い、当該サービスまたはアプリケーションを実行するための無線接続を確立することをPostNANと呼ぶ。PostNANでは、NANクラスタとは別のネットワーク、すなわちInfraネットワーク、IBSS、Wi-Fi Directなどの、NANとは別のネットワークを確立する。NANデバイスは、新たなネットワークを確立して、アプリケーションによる通信をすることができるようになる。
NANデバイス101、102、103は、NAN規格に則った無線通信を行う無線通信装置である。なお、NANデバイス101、102、103は、NANに参加可能で、アプリケーションによる通信を行うことが可能であれば、どのような装置であってもよい。NANデバイス101、102、103は、NAN規格に基づいて、周囲の通信装置およびそれらが提供するサービスを発見、提供することができる。図1において、NANデバイス101、102、103は、NANクラスタ104に参加している。NANデバイス101、103はNon-Master SyncとしてNANクラスタ104に参加しており、NANデバイス102はMaster、Anchor MasterとしてNANクラスタ104参加している。本実施形態では、NANデバイス101は、所定のサービスを探しているSubscriberである。また、NANデバイス103は、NANデバイス101が探している所定のサービスを提供可能なPublisherである。
NANクラスタ104は、NANデバイス101、102、103が参加しているネットワークである。本実施形態において、NANクラスタ104に参加しているNANデバイスは、6chでネットワークを構築している。NANクラスタ104のネットワーク内で、Discovery Window(DW)は、16TU(Time Unit)であり、また、DWの先頭から次のDWの先頭までは、512TUの間隔がある。なお、NANの無線チャネルとDWの構成は、これらに限定されない。
図2は、NANデバイス101の機能構成の一例を示す図である。なお、NANデバイス102、103の機能構成は、NANデバイス101と同様である。無線LAN制御部201は、他の無線LAN機能を有する装置との間で無線信号の送受信を行うための制御を行う。また、無線LAN制御部201は、IEEE802.11に則った無線LAN制御を行う。NAN制御部202は、NAN規格に則った制御を行う。Wi-Fi Direct制御部203は、無線LAN制御部201を制御してWi-Fi Directで通信リンクを確立するための制御を行う。Wi-Fi Direct制御部203の処理により、データリンク層が確立されると、NANデバイス101は、アプリケーションによるデータ通信を行うことが可能となる。本実施形態では、一例として、データリンクが確立した後、NANデバイス101は、IPv4による通信が可能になるものとする。データリンクの確立を含むデータリンク制御の詳細な処理は、図4、図5を用いて後述する。
通信制御部204は、Wi-Fi Direct制御部203によって確立されたデータリンク層を用いて、アプリケーションによる通信を制御する。通信制御部204の制御により、NANデバイス101は、IPv4のパケットの送受信(すなわち、アプリケーションデータの通信)を行うことが可能となる。アプリケーションデータの通信の詳細な処理は、図4を用いて後述する。
アプリケーション制御部205は、NANで発見されたサービスを実行するための制御を行う。例えば、NANデバイス101がプリントサービスを発見した場合、アプリケーション制御部205は、プリントのジョブを要求するアプリケーションを実行するための制御を行う。あるいは、NANデバイス101が写真共有サービスを発見した場合には、アプリケーション制御部205は、写真データを交換するアプリケーションを実行するための制御を行う。NANデバイス101は複数のサービスを探しており、複数のアプリケーション制御部205を有することもできる。本実施形態では、一例として、NANデバイス101とNANデバイス103間において、アプリケーションとしてプリントアプリケーションが実行されるものとする。また、本実施形態では、プリントアプリケーションはIPv4を用いて通信を介して行われるものとする。操作制御部206は、NANデバイス101のユーザにより入力部304(図3)に対して行われた操作を管理し、必要な信号を他の制御部201〜205へ伝達する。
図3に、NANデバイス101のハードウェア構成の一例を示す。なお、NANデバイス102、103のハードウェア構成は、NANデバイス101と同様である。記憶部301は、ROM(Read Only Memory)、RAM(Random Access Memory)の両方、もしくは、いずれか一方により構成され、後述する各種動作を行うためのプログラムや、無線通信のための通信パラメータ等の各種情報を記憶する。なお、記憶部301として、ROM、RAM等のメモリの他に、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード、DVDなどの記憶媒体を用いてもよい。
制御部302は、CPU(Central Processing Unit)、または、MPU(Micro Processing Unit)により構成され、記憶部301に記憶されたプログラムを実行することによりNANデバイス101全体を制御する。なお、制御部302は、記憶部301に記憶されたプログラムとOS(Operating System)との協働によりNANデバイス101全体を制御するようにしてもよい。また、制御部302は、機能部303を制御して、撮像や印刷、投影等の所定の処理を実行する。
機能部303は、NANデバイス101が所定の処理を実行するためのハードウェアである。例えば、NANデバイス101がカメラである場合、機能部303は撮像部であり、撮像処理を行う。また、例えば、NANデバイス101がプリンタである場合、機能部303は印刷部であり、印刷処理を行う。また、例えば、NANデバイス101がプロジェクタである場合、機能部303は投影部であり、投影処理を行う。機能部303が処理するデータは、記憶部301に記憶されているデータであってもよいし、後述する通信部306を介して他のNANデバイスと通信したデータであってもよい。
入力部304は、ユーザからの各種操作の受付を行う。出力部305は、ユーザに対して各種出力を行う。ここで、出力部305による出力とは、画面上への表示や、スピーカーによる音声出力、振動出力等の少なくとも1つを含む。なお、タッチパネルのように入力部304と出力部305の両方を1つのモジュールで実現するようにしてもよい。
通信部306は、IEEE802.11シリーズに準拠した無線通信の制御や、IP(Internet Protocol)通信の制御を行う。また、通信部306はアンテナ307を制御して、無線通信のための無線信号の送受信を行う。NANデバイス101は通信部306を介して、画像データや文書データ、映像データ等のコンテンツを他のNANデバイスと通信する。
次に、図4を参照して、NANデバイス103がPostNANの通信リンク確立を要求するための処理を説明する。図4は、本実施形態における通信リンク確立処理のフローチャートである。図4に示すフローチャートは、NANデバイス103の制御部302が記憶部301に記憶されている制御プログラムを実行し、情報の演算および加工並びに各ハードウェアの制御を実行することにより実現される。なお、図4に示すフローチャートに示すステップの一部または全部を、例えばASIC等のハードウェアで実現する構成としても良い。
本実施形態では、図1を用いて説明したネットワーク構成に基づき、まず、プリントサービスを提供するNANデバイス103が、NANクラスタ104において他のNANデバイスからのプリントサービスの検索を待機する。そして、NANデバイス103は、サービス発見の要求を受信し、Wi-Fi DirectにおけるGO(Group Owner)としての動作を開始し、サービス発見の応答を送信する。サービス発見の応答を受信したNANデバイス101は、Wi-Fi DirectにおけるCL(Client)としての動作を開始し、GOが構築したネットワークに接続し、プリントアプリケーションの通信を行う。以下、NANデバイス103の処理として説明するが、NANクラスタ104における他のNANデバイスも同様の処理を行うことができる。
なお、本実施形態では、NANデバイス103の記憶部301には、NANデバイス103が過去に接続したデバイスの情報や当該接続に関する情報としてのエントリが登録された接続履歴が記憶され得るものとする。接続履歴に登録されるエントリには、具合的には、MACアドレス等のデバイスを識別可能な識別子、通信に使用した通信パラメータ、提供したサービスまたは享受したサービスの識別子等が含まれる。
まず、NANデバイス103のNAN制御部202は、NANクラスタ104における周期的なDW期間にSubscribeメッセージを受信するまで待機する(S401、S402)。ここで、NANデバイス103は、SDFにおいてサービスを識別するService IDとして、プリントアプリケーションサービスに該当するService IDが指定されたSubscribeメッセージの受信を待機するものとする。また、このSubscribeメッセージには、Wi-Fi Directによるデータリンクを確立できるNANデバイスを探索していることを示す情報も含まれ得る。
NANデバイス103のNAN制御部202が、通信部306を介してSubscribeメッセージを受信したと判定すると(S402でYes)、処理はS403へ進む。S403では、NAN制御部202は、Subscribeメッセージを送信した他のNANデバイスとの間で通信パラメータを既に共有済みか否かを判定する。具体的には、NAN制御部は、記憶部301に、Subscribeメッセージを送信した他のNANデバイスとの接続履歴が記憶されているか否かを判定する。
NAN制御部202が当該他のNANデバイスとの間で通信パラメータを既に共有済みと判定した場合(S403でYes)、Wi-Fi Direct制御部203は、Wi-Fi DirectにおけるGOとしての動作を開始する(S408)。このとき、NANデバイス103は、当該他のNANデバイスとの間で過去に通信を実施して既にネットワークを構築しているため、当該他のNANデバイスからの接続を受け入れ可能な状態となっている。
Wi-Fi Direct制御部203がGOの起動が完了すると、NAN制御部202は、通信部306を介して、当該他のNANデバイスに対してPublishメッセージを送信する(S409)。なお、送信するPublishメッセージのSDFにおいて、サービスを識別するService IDとして、プリントアプリケーションサービスに該当するService IDが指定される。また、NAN制御部202は、送信するPublishメッセージにP2P Operation attribute等を付与することで、Wi-Fi Directで通信可能な期間、チャネル、動作中の役割(GO、CL、P2P Device)を通知することが可能である。また、NAN制御部202は、送信するPublishメッセージに、GOとして動作することを示す値を格納することも可能である。
Publishメッセージを受信した当該他のNANデバイスは、NANデバイス103がGOで動作していることを認識する。続いて、当該他のNANデバイスは、接続要求を送信することにより、CLとしてNANデバイス103との接続処理を実施する。NANデバイス103のNAN制御部202は、通信部306を介して当該他のNANデバイスからの接続要求を受信し、接続処理を実施する(S410)。
接続処理が成功すると、NANデバイス103は、プリントアプリケーションによる通信を行うことが可能となり、他のNANデバイスから印刷データを受信することに応じて印刷を実施することが可能となる。NANデバイス103の通信制御部204は、アプリケーションによるデータ通信を開始する(S411)。また、アプリケーション制御部205は、アプリケーションを実行するための制御を行う。なお、S410で接続処理に失敗した場合は、NAN制御部202は、一定時間経過後に、再度接続処理を試みるなどしても良い。
一方、S403で、NAN制御部202は、Subscribeメッセージを送信した他のNANデバイスとの間で通信パラメータを共有済みではないと判定した場合(S403でNo)、通信パラメータ共有処理を行う。まず、NAN制御部202は、通信部306を介してPublishメッセージを送信する(S404)。この時点では、NANデバイス103は、GOまたはCLとして動作するかは決まっていないため、送信するPublishメッセージに、P2P Deviceとして動作していることを示す値を格納する。
Publishメッセージを受信した他のNANデバイスは、NANデバイス103がP2P Deviceとして動作していることを認識する。続いて、Wi-Fi Direct制御部203は、当該他のNANデバイスとの間で、Wi-Fi Directの役割決定処理(GO Negotiation)を実施する(S405)。
Wi-Fi Directの役割決定処理を通じてNANデバイス103と当該他のNANデバイスの役割が決定すると、NANデバイス103のWi-Fi Direct制御部203は、決定した役割において接続処理を実施する(S406)。接続処理が完了後、Wi-Fi Direct制御部203は、記憶部301に記憶されている接続履歴に、当該他のNANデバイスと接続した情報としてエントリを登録する(S407)。接続履歴の登録が完了すると、NANデバイス103は、プリントアプリケーションによる通信を行うことが可能となる。
図5に、本実施形態における、サービスの発見、Wi-Fi Directによるデータリンクの確立、アプリケーション通信処理の一連の流れをシーケンス図で示す。NANデバイス101は、Subscriberとしてプリントアプリケーションでプリンタを探しており、NANデバイス103は、Publisherとしてプリントサービスを待ち受ける処理を実施している状況を想定する。NANデバイス102は、プリントアプリケーション以外のアプリケーションを動作させているものとする。
まず、NANデバイス101のユーザが、入力部304を介して、プリントサービスの検索を行うための指示を入力する(S501)。これに応じて、NANデバイス101の操作制御部206は、NAN制御部202に対してプリントサービスの検索を行うための処理を開始させる。NANデバイス102は、Sync BeaconでDW期間を通知する(S502)。NANデバイス101は、検索処理を開始しても、DW期間になるまではメッセージの送信はしない。
NANデバイス101は、DW期間になると、プリンタを探すためにSubscribeメッセージをブロードキャストで送信する(S503)。NANデバイス103は、プリントサービスを探していることが示されたSubscribeメッセージを受信すると、 NANデバイス101との接続履歴を参照する。NANデバイス103は、接続履歴を参照することにより、過去にNANデバイス101との間でGOとして動作したことを認識し、GOとしての動作を開始する(S504)。
GOとしての動作を開始したNANデバイス103は、プリントサービスが動作していることを示すPublishメッセージでNANデバイス101に応答する(S505)。Publishメッセージには、NANデバイス103がGOで動作していることやWi-Fi Directで通信可能な期間(DW期間以外の期間)といった情報を含めることが可能である。
Publishメッセージを受信したNANデバイス101は、NANデバイス103がGOとして動作していることを認識し、CLとしての動作を開始する。続いて、NANデバイス101は、過去のNANデバイス103との間の通信を行った際に使用した通信パラメータ等を用いることにより、接続要求を送信する(S506)。また、NANデバイス101は、受信したPublishメッセージに付与されていた、通信可能な期間の情報を参照することで、NANデバイス103がWi-Fi Directで応答が可能な期間に、接続要求を送信することができる。
NANデバイス103は、NANデバイス101からの接続要求を受信し、当該要求を許可する場合に、接続応答を送信する(S507)。NANデバイス103は、NANデバイス101との接続を許容できない場合は、拒絶を示す接続応答を送信する。一方、NANデバイス103は、NANデバイス101との接続を許容できる場合は、肯定を示す接続応答を送信すると共に、暗号化通信に必要な鍵交換の処理等も実施する。
これにより、NANデバイス101とNANデバイス103は、Wi-Fi Directによるデータ通信が可能な状態になる(S508、S509)。この状態で、ユーザがNANデバイス101で入力部304を介してプリントアプリケーションに印刷を指示すると、NANデバイス103に印刷データが送信され、NANデバイス103で印刷が実行される(S510、S511)。ここで、NANデバイス101は、入力部304を介してユーザにより指定された印刷データ、または、予め決められた印刷データを送信しても良い。また、NANデバイス101は、NANデバイス103や他の装置から指定された印刷データを送信しても良い。
このように、本実施形態によれば、過去の接続履歴の情報を用いることにより、PostNANのネットワークを確立するための手順(端末の発見、無線パラメータの交換等)を簡略化することが可能となる。そのため、例えば、プリントアプリケーションなど、何度も同一の装置(プリンタ)でサービスを実行する場合に、PostNANのネットワークを確立するための繰り返しの手順を省き、迅速にサービスを実行することが可能となる。
(実施形態2)
実施形態2では、SubscriberとしてのNANデバイス101が、PublisherとしてのNANデバイス103からPublishメッセージを受信後に、Invitation Requestの送信/Responseの受信を介してネゴシエーションを行う。NANデバイス101とNANデバイス103は、当該ネゴシエーションによりPostNANで使用する通信パラメータを決定する。以下、実施形態1と異なる点について説明する。
図6を参照して、NANデバイス101がPostNANの通信リンク確立を要求するための処理を説明する。図6は、本実施形態における通信リンク確立処理のフローチャートである。
NANデバイス101は、NANクラスタ104における周期的なDW期間を待つ(S601)。DW期間になると、NANデバイス101のNAN制御部202は、通信部306を介して、Subscribeメッセージをブロードキャストで送信する(S602)。ここで、NANデバイス101は、SDFにおいてサービスを識別するService IDとして、プリントアプリケーションサービスに該当するService IDが指定されたSubscribeメッセージを送信するものとする。また、このSubscribeメッセージには、Wi-Fi DirectによるPostNANデータリンクを確立できるNANデバイスを探索していることを示す情報も含まれ得る。Subscribeメッセージの送信により、NANデバイス101は、プリントサービスを実行可能な、NANクラスタ104におけるNANデバイスを探すことが可能となる。
NANデバイス101のNAN制御部202は、通信部306を介して、送信したSubscribeメッセージの応答として、SDFにおいてプリントアプリケーションサービスに該当するService IDが指定されたPublishメッセージを受信したかどうかを判定する(S603)。NAN制御部202が通信部306を介してPublishメッセージを受信したと判定すると(S603でYes)、Publishメッセージを送信した他のNANデバイスとの間で通信パラメータを既に共有済みかを判定する。なお、S604の処理は、図4のS403の処理と同様であるため、説明を省略する。
NAN制御部202が当該他のNANデバイスとの間で通信パラメータを既に共有済みと判定した場合(S604でYes)、通信部306を介して、NANのFollow-upメッセージを用いてInvitation Requestを送信する(S608)。これにより、NANデバイス101は当該他のNANデバイスとの間のネットワーク構築を要求する。なお、NAN制御部202は、Wi-Fi Directで定められたP2P invitation Requestに用いるP2P attributeをSDFに付与することにより、このInvitation Requestを送信することが可能である。Invitation Requestを受信したNANデバイスがネットワーク構築の要求を受け入れる(許可する)場合は、Follow-upメッセージを用いて、Statusに成功を示す値を格納したInvitation Responseを返信する。なお、Wi-Fi Directで定められたP2P invitation Responseに用いるP2P attributeをSDFに付与することにより、このInvitation Responseの送信が可能となる。
なお、P2P invitation RequestまたはP2P Invitation Responseには、過去に接続したネットワークの識別子(P2P Group BSSID)やP2Pグループの識別子(P2P Group ID)などの情報が格納される。これにより、P2P invitation RequestまたはP2P Invitation Responseを再度同じネットワークを構築するためのネゴシエーションに用いることが可能となる。
NANデバイス101のNAN制御部202は、通信部306を介して、成功を示す値が格納されたStatusを有するInvitation Responseを受信したと判定した場合(S609でYes)、処理はS610へ進む。S610では、Wi-Fi Direct制御部203は、Wi-Fi Directによる接続処理を実施する。接続処理が完了後、NANデバイス101の通信制御部204は、アプリケーションによるデータ通信を開始する(S611)。また、アプリケーション制御部205は、アプリケーションを実行するための制御を行う。
一方、NAN制御部202が、通信部306を介して、成功を示す値が格納されたStatusを有するInvitation Responseを受信しなかったと判定した場合(S609でNo)、処理はS605へ進む。S605〜S607の処理は、図4のS405〜S407、S411の処理と同様であるため、説明を省略する。なお、S609でNoの場合、NAN制御部202は、通信部306を介して、再度Invitation Requestを送信してもよい。また、他に使用可能なパラメータが存在する場合は、NAN制御部202は、異なる内容のInvitation Requestを送信してもよい。これにより、NANデバイス101は、成功を示す値が格納されたStatusを有するInvitation Responseの受信を一定期間待機し得る。
このように、Invitation RequestまたはResponseの授受により、NANデバイスは、PostNANへ移行する前に、PostNANで使用するパラメータのネゴシエーションを実施することが可能となる。
また、NAN制御部202が、Publishメッセージを送信した他のNANデバイスとの間で通信パラメータを既に共有済みではないと判定した場合(S604でNo)、処理はS605へ進む。前述したように、S605〜S607の処理は、図4のS405〜S407の処理と同様であるため、説明を省略する。
図7に、本実施形態における、サービスの発見、Wi-Fi Directによるデータリンクの確立、アプリケーション通信処理の一連の流れをシーケンス図で示す。
S701〜S704の処理は、図5のS501〜S504の処理と同様であるため、説明を省略する。S705において、NANデバイス101は、Follow-upメッセージを用いてInvitation RequestをNANデバイス103に送信する。invitation Requestには、前述の通り、NANデバイス101が過去にNANデバイス103と接続した際のネットワーク識別子等が格納されている。NANデバイス103はネットワーク識別子等の情報をもとにネットワークの再構築が可能と判断し、Follow-upメッセージを用いてStatusに成功を表す値を格納したInvitation ResponseをNANデバイス101に送信する。NANデバイス101とNANデバイス103は、Invitation Request/Responseによるネゴシエーションを終えると、それぞれ過去の役割で動作を開始する(S707、S708)。例えば、過去のWi-Fi Direct接続でGOとして動作していたNANデバイス103は、再度GOとしての動作を開始する。以降の、S709〜S714の処理は、図5のS506〜S511の処理と同様であるため、説明を省略する。
なお、本実施形態では、Subscribeメッセージを受信したNANデバイス103がPublishメッセージを送信する場合を例に説明した。この例に限定されず、NANデバイス103が自律的にPublishメッセージを送信する場合にも、本実施形態の適用が可能である。
このように、本実施形態によれば、双方のNANデバイスが再度構築するネットワークを事前にネゴシエーションで決定するため、互いに一意の通信パラメータを用いて接続処理が実施することが可能となる。そのため、互いに異なる通信パラメータを用いて接続処理を実施することを防止することが可能となり、効率的な接続が可能となる。
(実施形態3)
本実施形態では、PublisherとしてのNANデバイス103からSubscribeメッセージを受信後に、過去にサービスを提供した際のService IDと、その時に使用した通信パラメータを識別する情報との組み合わせのリストを作成する。NANデバイス103は、作成したリストをSubscriberとしてのNANデバイス101に送信し、その後NANデバイス101から指定された情報を参照して、PostNANで使用する通信パラメータを決定する。以下、実施形態1、2と異なる点について説明する。
図8を参照して、NANデバイス103がPostNANの通信リンク確立を要求するための処理を説明する。図8は、本実施形態における通信リンク確立処理のフローチャートである。なお、PublisherとしてのNANデバイス103は、過去にサービスを提供した際のService IDと、その時に使用した通信パラメータの組み合せを接続履歴として記憶部301に記憶しているものとする。
S801〜S802の処理は、図6のS601〜S602の処理と同様であるため、説明を省略する。次に、NANデバイス103のNAN制御部202は、Service IDと通信パラメータから算出したハッシュ値のリストを作成する(S803)。NANデバイス103のNAN制御部202は、記憶部301に記憶されている、過去にサービスを提供した際のService IDと、その時に使用した通信パラメータの情報から、Service IDとハッシュ値のリストを作成することができる。このリストにより、NANデバイス103は、どの通信パラメータで何のサービスを提供するかを認識することが可能となる。また、通信パラメータをハッシュ値で扱うことで、NANデバイス103は、暗号鍵などの秘匿性を担保しつつ、過去に接続した経験のあるデバイスに対して一意に通信パラメータを特定することが可能となる。なお、ここでは、ハッシュ値を例に説明したが、P2Pグループの識別子を使用すること可能である。NANデバイス103のNAN制御部202は、リストを作成すると、当該リストを付与したPublishメッセージを通信部306を介して送信する(S804)。
次に、NANデバイス103は、Follow-upメッセージの受信を待機する(S805)。NANデバイス103のNAN制御部202が、通信部306を介してFollow-upメッセージを受信したと判定した場合(S805でYes)、当該メッセージにハッシュ値の指定があるか否かを判定する(S806)。ハッシュ値の指定があると判定された場合(S806でYes)、NAN制御部202は、指定されたハッシュ値に対応する通信パラメータで通信を行うことを許容すること示す応答を、通信部306を介して送信する(S810)。
NAN制御部202が応答を送信すると、Wi-Fi Direct制御部203は、指定されたハッシュ値に対応する通信パラメータを用いてWi-Fi Directでの接続処理を実施する(S811)。接続処理の完了後、NANデバイス103の通信制御部204は、アプリケーションによるデータ通信を開始する(S812)。当該アプリケーションのサービスは、作成したリストにおいて、当該通信パラメータに対応するService IDのサービスである。
一方、S806でハッシュ値の指定がないと判定された場合(S806でNo)、NANデバイス103のWi-Fi Direct制御部203は、NANデバイス101との間で、Wi-Fi Directの役割決定処理を実施する(S807)。S807〜S809の処理は、図4のS405〜S407の処理と同様であるため、説明を省略する。
図9に、本実施形態における、サービスの発見、Wi-Fi Directによるデータリンクの確立、アプリケーション通信処理の一連の流れをシーケンス図で示す。
S901〜S903の処理は、図5のS501〜S503の処理と同様であるため、説明を省略する。S904において、NANデバイス103は、Service IDと、通信パラメータから算出したハッシュ値とのリストを作成し、当該リストを付与したPublishメッセージを送信する。Publishメッセージを受信したNANデバイス101は、ハッシュ値を指定したFollow-upメッセージを送信する(S905)。ハッシュ値が指定されたFollow-upメッセージを受信したNANデバイス103は、指定されたハッシュ値に対応する通信パラメータを用いて通信を行うことを許容すること(OK)を示すFollow-upメッセージを送信する(S906)。S907〜S914の処理は、図7のS707〜S714の処理と同様であるため、説明を省略する。
なお、本実施形態では、Subscribeメッセージを受信したNANデバイス103がPublishメッセージを送信する場合を例に説明したが、NANデバイス103が自律的にPublishメッセージを送信する場合にも適用が可能である。
このように、本実施形態によれば、Service IDと通信パラメータのリストから双方のNANデバイスが再度構築するネットワークを選択するため、意図しないネットワークの再構築をリクエストされた場合に発生しうる接続エラーを防止することが可能となる。そのため、互いに使用する通信パラメータが決定するまでの時間を短縮すること可能となり、接続性が向上する。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101、102、103 NANデバイス、104 NANクラスタ

Claims (13)

  1. 通信装置であって、
    Neighbor Awareness Networking(NAN)に規定されるDiscovery Windowにおいて、所定のサービスを提供する他の通信装置を検出する検出手段と、
    前記検出手段により検出された前記他の通信装置と通信パラメータの共有処理を行って、データリンクを確立する立手段と、
    前記立手段により前記データリンクが確立される際に行われた前記共有処理により共有された前記通信パラメータを記憶する記憶手段と、
    前記通信装置と前記他の通信装置との間の前記データリンク切断された後に、前記通信装置がDiscovery Windowにおいて前記他の通信装置を再検出した場合、前記通信装置が前記データリンクによって通信可能なDiscovery Windowと異なる期間を前記他の通信装置に通知する通知手段と、
    前記通知手段によって前記期間を通知した場合に、前記共有処理を行うことなく、前記記憶手段に記憶された前記通信パラメータを用いて、前記期間において前記他の通信装置と前記データリンクを介して通信する通信手段と、
    を有することを特徴とする通信装置。
  2. 前記検出手段は、前記他の通信装置から前記所定のサービスを探すための信号を受信することによって前記他の通信装置を検出することを特徴とする請求項1に記載の通信装置。
  3. 前記検出手段は、前記所定のサービスを探すための信号を送信し、当該信号に対する応答信号を前記他の通信装置から受信することによって前記他の通信装置を検出することを特徴とする請求項1または2に記載の通信装置。
  4. 前記立手段は、Wi-Fi Directに規定される処理に従って、前記他の通信装置との間でデータリンクを確立することを特徴とする請求項1から3のいずれか1項に記載の通信装置。
  5. 前記通信装置がWi-Fi DirectにおけるGO(Group Owner)として動作中に、前記通信装置は、前記所定のサービスの情報を前記他の通信装置と通信する通信手段を更に有することを特徴とする請求項4に記載の通信装置。
  6. 前記所定のサービスの情報を通信した後に受信した接続要求に応じて、前記所定のサービスの実行を開始する開始手段を更に有することを特徴とする請求項5に記載の通信装置。
  7. 過去に実行されたサービスを識別する情報と当該サービスを実行するために使用された通信パラメータを識別する情報とを関連付けたリストを前記他の通信装置に送信する送信手段を更に有することを特徴とする請求項1から6のいずれか1項に記載の通信装置。
  8. 前記リストを送信した後に前記他の通信装置から受信された情報に、通信パラメータを識別する情報が含まれる場合、前記通信装置は、Wi-Fi DirectにおけるGO(Group Owner)としての動作を開始することを特徴とする請求項7に記載の通信装置。
  9. 前記通信装置は、Wi-Fi DirectにおけるCL(Client)として動作して、前記他の通信装置と前記データリンクを介した通信を行うことを特徴とする請求項1から4のいずれか1項に記載の通信装置。
  10. P2P Invitation Requestを送信し、前記他の通信装置からP2P Invitation Responseを
    受信した場合に、前記通信装置は、CLとしての動作を行うことを特徴とする請求項9に記載の通信装置。
  11. 前記通信装置がCLとして動作中に接続要求を前記他の通信装置に送信し、当該他の通信装置から当該接続要求を許可することを示す応答を受信した場合に、前記所定のサービスを実行する実行手段を更に有することを特徴とする請求項10に記載の通信装置。
  12. 通信装置の制御方法であって、
    Neighbor Awareness Networking(NAN)に規定されるDiscovery Windowにおいて、所定のサービスを提供する他の通信装置を検出する検出工程と、
    前記検出工程において検出された前記他の通信装置と通信パラメータの共有処理を行って、データリンクを確立する立工程と、
    前記立工程において前記データリンクが確立される際に行われた前記共有処理により共有された前記通信パラメータを記憶手段に記憶させる記憶工程と、
    前記通信装置と前前記他の通信装置との間の前記データリンク切断された後に、前記通信装置が前Discovery Windowにおいて前記他の通信装置を再検出した場合、前記通信装置が前記データリンクによって通信可能なDiscovery Windowと異なる期間を前記他の通信装置に通知する通知工程と、
    前記通知工程において前記期間を通知した場合に、前記共有処理を行うことなく、前記記憶手段に記憶された前記通信パラメータを用いて、前記期間において前記他の通信装置と前記データリンクを介して通信する通信工程と、
    を有することを特徴とする通信装置の制御方法。
  13. コンピュータを、請求項1から11のいずれか1項に記載の通信装置として機能させるためのプログラム。
JP2016145695A 2016-07-25 2016-07-25 通信装置、その制御方法、およびプログラム Active JP6802655B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016145695A JP6802655B2 (ja) 2016-07-25 2016-07-25 通信装置、その制御方法、およびプログラム
US15/635,295 US20180027601A1 (en) 2016-07-25 2017-06-28 Communication apparatus, method of controlling the same, and non-transitory computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016145695A JP6802655B2 (ja) 2016-07-25 2016-07-25 通信装置、その制御方法、およびプログラム

Publications (3)

Publication Number Publication Date
JP2018019144A JP2018019144A (ja) 2018-02-01
JP2018019144A5 JP2018019144A5 (ja) 2019-09-05
JP6802655B2 true JP6802655B2 (ja) 2020-12-16

Family

ID=60989052

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016145695A Active JP6802655B2 (ja) 2016-07-25 2016-07-25 通信装置、その制御方法、およびプログラム

Country Status (2)

Country Link
US (1) US20180027601A1 (ja)
JP (1) JP6802655B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7112203B2 (ja) * 2018-01-31 2022-08-03 キヤノン株式会社 通信装置、制御方法、及びプログラム
JP7093234B2 (ja) * 2018-06-11 2022-06-29 キヤノン株式会社 通信装置、通信装置の制御方法、及びプログラム
KR102527868B1 (ko) 2018-06-28 2023-05-02 삼성전자주식회사 Nan 프로토콜에 기반한 네트워크 환경에서 데이터 통신을 위한 장치 및 방법
CN109067882B (zh) * 2018-08-09 2021-01-29 Oppo广东移动通信有限公司 数据共享方法及相关产品
CN109195103B (zh) * 2018-08-10 2020-12-15 Oppo广东移动通信有限公司 多媒体资源共享方法、相关设备以及存储介质
KR20210020611A (ko) 2019-08-16 2021-02-24 삼성전자주식회사 전자 장치 및 전자 장치에서 서비스 제공 방법
JP2021135607A (ja) * 2020-02-25 2021-09-13 東芝テック株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム
US11743714B2 (en) * 2020-10-09 2023-08-29 Apple Inc. Mechanisms for service recovery in neighbor awareness network (NAN)

Also Published As

Publication number Publication date
US20180027601A1 (en) 2018-01-25
JP2018019144A (ja) 2018-02-01

Similar Documents

Publication Publication Date Title
JP6802655B2 (ja) 通信装置、その制御方法、およびプログラム
JP7102311B2 (ja) 通信装置、通信装置の制御方法、およびプログラム
JP6563416B2 (ja) 近接ベースのピアツーピアモバイルコンピューティング用のアプリケーションのユーザエクスペリエンスを向上させるシステムおよび方法
JP6643848B2 (ja) 通信装置、通信方法、およびプログラム
JP6659147B2 (ja) 通信装置、通信方法、およびプログラム
WO2019044162A1 (ja) 通信装置、その制御方法、およびプログラム
CN109716824B (zh) 通信装置、通信方法和存储介质
US10582555B2 (en) Devices and methods for establishing an ad hoc peer-to-peer network
KR102114076B1 (ko) 통신 장치, 통신 장치를 제어하는 방법, 및 프로그램
KR102071816B1 (ko) 통신 장치, 그 제어 방법 및 프로그램
RU2703971C1 (ru) Устройство связи, способ управления, программа и носитель информации
JP6646458B2 (ja) 通信装置、制御方法、及びプログラム
JP6499397B2 (ja) 通信装置、制御方法、及びプログラム
JP7133898B2 (ja) 通信装置、通信装置の制御方法、およびプログラム
JP2018046450A (ja) 通信装置、通信方法、及びプログラム
JP7118617B2 (ja) 通信装置、通信方法、及びプログラム
JP2018117221A (ja) 通信装置、その制御方法、およびプログラム
US9763277B2 (en) Communication device, method for controlling the communication device, and storage medium

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190723

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190723

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200720

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: 20201030

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201127

R151 Written notification of patent or utility model registration

Ref document number: 6802655

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151