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

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

Info

Publication number
JP7236803B2
JP7236803B2 JP2017235292A JP2017235292A JP7236803B2 JP 7236803 B2 JP7236803 B2 JP 7236803B2 JP 2017235292 A JP2017235292 A JP 2017235292A JP 2017235292 A JP2017235292 A JP 2017235292A JP 7236803 B2 JP7236803 B2 JP 7236803B2
Authority
JP
Japan
Prior art keywords
proxy
communication device
nan device
nan
message
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
JP2017235292A
Other languages
English (en)
Other versions
JP2019103092A (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 JP2017235292A priority Critical patent/JP7236803B2/ja
Priority to PCT/JP2018/040482 priority patent/WO2019111602A1/ja
Publication of JP2019103092A publication Critical patent/JP2019103092A/ja
Priority to US16/889,856 priority patent/US11451644B2/en
Application granted granted Critical
Publication of JP7236803B2 publication Critical patent/JP7236803B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • 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]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、無線通信における代理処理に関する。
デバイスの検索やデバイスが提供するサービスの検索を省電力で行うための規格として、Wi-Fi Allianceによって規定されたWi-Fi NAN(Neighbor Awareness Networking)規格がある。特許文献1には、NANにおいて、提供可能なサービスの広告やサービスの検索を、実際にサービスを提供し又はサービスを検索するデバイスに代理して実行するProxy Stationによって、サービス提供エリアを拡張する技術が記載されている。
米国特許出願公開第2015/0081840号公報
しかしながら、代理処理を実行するデバイスは、代理処理の対象のデバイスが自装置の通信可能範囲外に移動した場合や不意な電源断によって消失した場合に、代理処理を継続すべきか中断すべきかを判断できない。このため、代理処理を実行するデバイスにおいて不必要に代理処理を継続することによって、各種リソースを浪費してしまうという課題があった。
本発明は、上記課題に鑑みてなされたものであり、代理処理を実行するデバイスが不必要に代理処理を継続することを防ぐことを目的とする。
本発明の一態様による代理装置は、通信装置が提供しているサービスの情報の送信と前記通信装置のための他の装置が提供しているサービスの検索との少なくともいずれかの代理処理を実行することができる代理装置であって、前記通信装置から、NAN(Neighbor Awareness Networking)規格に準拠した通信に基づいて、前記代理処理の実行を要求すると共に前記通信装置が通信可能なDW(Discovery Window)の情報と前記通信装置が通信可能でないDWの情報との少なくともいずれかの情報を含んだメッセージを受け付ける受付手段と、前記受付手段において受け付けたメッセージに含まれる情報から前記通信装置が通信可能なDWと判定された期間において、前記代理装置が前記通信装置に対して前記NAN規格に準拠したサービスの検索のためのSubscribeメッセージを送信し、当該Subscribeメッセージに対する前記通信装置からの応答であるPublishメッセージに基づいて前記通信装置が前記代理装置と通信可能であるかを確認する確認手段と、を有する。
本発明によれば、代理処理を実行するデバイスが不必要に代理処理を継続することを防ぐことができる。
無線通信システムの構成例を示す図である。 NANデバイスのハードウェア構成例を示す図である。 NANデバイスの機能構成例を示す図である。 無線通信システムで実行される処理の流れを示すシーケンス図である。 Proxy Register Requestの構成例を示す図である。 Proxy Clientが実現するフローチャートである。 Proxy Serverが実現するフローチャートである。 Proxy Serverが実現するフローチャートである。
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下では、各通信装置は、IEEE802.11規格シリーズに準拠する無線LANの通信機能を有する装置であるものとするが、これに限られない。また、以下の各通信装置は、Wi-Fi Alliance Neighbor Awareness Networking(NAN)規格に従って他の通信装置及びその提供するサービスを発見可能なNANデバイスであるものとするが、これにも限られない。ここで、サービス(機能、インスタンス等とも呼ばれる)は、印刷サービス、情報共有サービス、画像表示サービス、撮像サービス等でありうるが、通信装置が実行可能なその他の任意のサービスであってもよい。以下の各説明では、所定の規格に対応する専門用語が用いられるが、同種の他の規格においても以下の各議論を適用することが可能である。すなわち、NAN規格とは異なる規格においても、以下の議論を適用可能である。
NAN規格に準拠した通信装置であるNANデバイスは、周期的に設定されたDiscovery Window(DW)と呼ばれる期間(DW期間)において、サービス情報を通信する。DWのスケジュール(DWとなるタイミング)を共有し、同期している装置の集合をNANクラスタと呼ぶ。NANクラスタに属する複数のNANデバイスは、DWにおいて、所定の周波数チャネル(Wi-Fiの2.4GHz帯における6ch)を用いて集中(converge)して通信する。
NANクラスタに属する各装置は、Master、Non-Master Sync及びNon-Master Non-Syncのうちの何れかの役割で動作する。Masterとして動作する装置は、各装置がDWを識別し、同期することを可能とするためのビーコンであるSynchronization Beacon(Sync Beacon)を送信する。また、Masterとして動作する装置は、NANクラスタに属していない装置に、そのNANクラスタを認識させるための信号であるDiscovery Beaconを送信する。Discovery Beaconは、例えば100TU(Time Unit、1TUは1024μ秒)ごとに、DWの期間外でも送信される。なお、各NANクラスタにおいて、少なくとも1台の装置は、Masterとして動作する。
Non-Master Syncとして動作する装置は、Sync Beaconを送信するが、Discovery Beaconは送信しない。Non-Master Non-Syncとして動作する装置は、Sync BeaconもDiscovery Beaconも送信しない。
NANクラスタに参加する装置は、Sync Beaconに含まれる情報に従って、所定周期毎のDW期間に同期し、DW期間においてサービス情報を通信する。
具体的には、各装置は、他の通信装置が提供するサービスを検索し、検出するための信号であるSubscribeメッセージや、自装置が提供するサービスを通知するための信号であるPublishメッセージを、DW期間に互いに通信する。さらに、各装置は、DW期間にサービスに関する追加情報を交換するためのFollow-upメッセージをやりとりすることができる。なお、Publish、Subscribe、Follow-upは、いずれもNAN規格に準拠したメッセージである。また、これらのメッセージを総称して、Service Discovery Frame(SDF)と呼ぶ。各装置は、NAN規格に準拠した方式に従ってSDFをやりとりすることで、サービスの広告または検出を行うことができる。
NANデバイスは、DW期間外において、無線信号を送受信しないDoze状態となって、消費電力を抑制することができる。さらに、NANデバイスは、DW期間においても、Doze状態となって、消費電力を抑制することができる。一方で、NANデバイスは、Doze状態となっているDW期間では、Subscribeメッセージ及びPublishメッセージの送受信を行うことができない。このため、このようなNANデバイスが、他のNANデバイスおよび当該他のNANデバイスが提供するサービスを検出するまでの期間や、NANデバイスが提供するサービスを他のNANデバイスが検出するまでの期間が長期化してしまいうる。
これに対して、NANデバイスによっては、自装置によるSubscribe及びPublish等のサービスの検索及び報知を、他のNANデバイスに要求することが可能でありうる。ここでは、他のNANデバイスのサービスの検索や報知を代理して実行するNANデバイスをProxy Serverと呼び、他のNANデバイスにサービスの検索及び報知の代理を要求するNANデバイスをProxy Clientと呼ぶ。ここで、Proxy Serverは代理装置の一例である。Proxy Serverは、Proxy Clientから、サービス情報の代理送信の要求を受付けた場合、そのProxy Clientが提供するサービス情報を代理送信する。また、Proxy Serverは、Proxy Clientから、サービス情報の代理検索の要求を受付けた場合、そのProxy Clientが検索したいサービス情報の検索を代理で行う。なお、代理検索とは、Proxy Serverが、Proxy Clientが検索したいサービス情報の検索を代理で行い、そのProxy Clientにサービス情報の検索結果を通知する処理を指す。
Proxy Clientは、Proxy Serverに対して、サービス情報の代理送信の要求と代理送信の要求とのうちのいずれか一方のみを要求してもよいし、両方を要求してもよい。なお、Proxy Clientは、サービス情報の代理送信と代理送信との両方を要求する場合、Proxy Serverに対して、それぞれの要求についての別個の要求信号を送信してもよいし、2つの要求をまとめて1つの要求信号を送信してもよい。また、Proxy Clientは、複数のサービスに関しての代理送信/代理検索を要求する場合、各サービスについての別個の要求信号を送信しうる。また、Proxy Clientは、複数のサービスの少なくとも一部の要求をまとめて1つの要求信号とし、代理送信/代理検索が要求されるサービスの数より少ない数の要求信号を送信してもよい。
Proxy ServerがProxy Clientの代わりにサービスの検索及び報知を実行することによって、Proxy Clientは、自装置によるサービスの検索及び報知を実行しなくてもよくなる。これにより、Proxy Clientは、より多くの期間にわたってDoze状態となることができ、NAN通信に係る消費電力を削減することができる。また、このときに、Proxy Clientは、サービス提供装置であってもよい。この場合、Proxy ClientがDoze状態であるときに、Proxy Serverが、他のNANデバイスが送信したSubscribeメッセージの受信に応じて、Proxy Clientの代理でPublishメッセージを送信しうる。このため、サービスを検索しているNANデバイスは、Proxy ClientがDoze状態であっても、そのProxy Clientが提供するサービスを検出できる可能性が高まる。
(無線通信システムの構成)
まず、本実施形態の無線通信システムの構成例について、図1を用いて説明する。本実施形態の無線通信システムは、それぞれがNAN規格に従う通信装置(NANデバイス)であるNANデバイス101~NANデバイス104を含んで構成される。ここで、NANデバイス101~NANデバイス104は、共通のNANクラスタ105に参加しているものとする。NANクラスタ105に参加しているNANデバイス(NANデバイス101~NANデバイス104)は、2.4GHz帯域における周波数チャネル6(6ch)で無線ネットワーク(クラスタ)を構築している。上述のように、NANデバイス101~NANデバイス104は、NANクラスタ105において設定されているDW期間において、サービス情報の通信を行う。DW期間は、DW0~DW15の16個のDW期間を1つの周期として繰り返され、ここでは、各DW期間をDWn(nは0から15の整数)と表す。なお、DW15の次は、DW0に戻る。また、DW0は、NANクラスタが同期に用いるタイマカウンタであるTSF(Time Synchronization Function)の下位23bitが「0x0」となる時刻から始まるDW期間である。NANクラスタ105に参加している全てのNANデバイスは、少なくともDW0の期間では、必ず、無線信号を受信するAwake状態となり、Doze状態にはならない。NANクラスタ105は、DW期間の長さが16TUであり、また、DW期間の開始タイミングから次のDW期間の開始タイミングまでの時間間隔が512TUのNANクラスタであるものとする。この場合、DWnの開始期間は、DW0の開始から512×n[TU]の経過後に開始される。
NANデバイス101は、以下に説明する各処理を実行することが可能な通信装置である。NANデバイス101は、NAN規格に基づいて、周囲の通信装置およびそれらが提供するサービスを検出し、また、自装置が提供可能なサービスの情報を報知することができる。また、NANデバイス101は、他のNANデバイスのサービスの探索及びサービスの報知の代理処理を他のNANデバイスに要求するProxy Clientとして動作することができる。なお、NANデバイス101は、他のNANデバイスからの代理処理の要求に応答して、他のNANデバイスのサービスの探索及び他のデバイスのサービスの報知の代理処理を実行するProxy Serverとして動作可能であってもよい。NANデバイス101は、NANクラスタ105に、Non-Master Non-Syncとして参加しているものとする。NANデバイス101は、一例において、DW0、DW4、DW8、DW12で無線信号を受信する第1のモードと、全てのDW期間で無線信号を受信する第2のモードとを有する。
NANデバイス102は、MasterとしてNANクラスタ105に参加する通信装置である。NANデバイス102は、全てのDW期間で無線信号を受信しており、さらに、全てのDW期間でSync Beaconを送信する。NANデバイス102も、他のNANデバイスのサービスの探索及び他のデバイスのサービスの報知の代理処理の要求に応じて代理処理を実行するProxy Serverとして動作することができる。なお、NANデバイス102は、Proxy Clientとして動作可能であってもよい。ただし、NANデバイス102は、Masterとしての役割を終了した後にのみ、一部のDW期間においてDoze状態に遷移することができる。
NANデバイス103は、Non-Master non-SyncとしてNANクラスタ105に参加している通信装置である。NANデバイス103は、DW0でのみ無線信号を送受信し、また、NANデバイス104が探している所定のサービスを提供しているPublisher(提供装置)であるものとする。NANデバイス104は、Non-Master non-SyncとしてNANクラスタ105に参加している通信装置である。NANデバイス104は、NANデバイス103が提供している所定のサービスを探しているSubscriber(検索装置)であるものとする。なお、各NANデバイスは、無線信号を送受信しないDW期間においては、デバイスの各々が有する通信部に電力を供給せず、Doze状態となるものとする。
本実施形態では、Proxy Serverとして動作するNANデバイス(NANデバイス102)が、Proxy Clientとして動作するNANデバイス(NANデバイス101)の生存確認を行う。Proxy Serverは、例えば、Proxy Clientから、代理処理の要求を受信した際に、その代理処理の有効期限の情報を取得する。そして、Proxy Serverは、その有効期限の範囲内に、Proxy Clientから所定のメッセージ(例えばSubscribeメッセージ)を受信したか否かにより、生存しているか否かを判定することができる。なお、生存しているか否かの判定は、Proxy Clientが、(例えばNANによる)通信を実行可能な状態でProxy Serverの通信可能範囲に滞在しているか否かの判定である。これにより、Proxy ClientがProxy Serverの通信可能範囲から脱した場合や突然電源断となった場合等において、Proxy Serverは、Proxy Clientの生存確認信号を受信できなくなる。このため、Proxy Serverは、生存確認のとれないProxy Clientについて、代理処理を終了することができる。
以下では、このような装置の構成と処理の流れの例について説明する。
(NANデバイスの構成)
図2に、本実施形態に係るNANデバイス101及びNANデバイス102のハードウェア構成を示す。なお、他の装置(NANデバイス103及びNANデバイス104)も、これと同様のハードウェア構成を有しうる。NANデバイスは、そのハードウェア構成の一例として、記憶部201、制御部202、機能部203、入力部204、出力部205、通信部206およびアンテナ207を有する。
記憶部201は、ROM、RAMの両方、もしくは、いずれか一方の、1以上のメモリにより構成され、後述する各種動作を行うためのプログラムや、無線通信のための通信パラメータ等の各種情報を記憶する。ここで、ROMはRead Only Memoryの略であり、RAMはRandom Access Memoryの略である。なお、記憶部201として、ROM、RAM等のメモリの他に、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード、DVDなどの記憶媒体を用いてもよい。
制御部202は、CPUやMPU等の1つ以上のプロセッサにより構成され、記憶部201に記憶されたプログラムを実行することによりNANデバイス全体を制御する。ここで、CPUはCentral Processing Unitの略であり、MPUはMicro-processing Unitの略である。なお、制御部202は、記憶部201に記憶されたプログラムとOS(Operating System)との協働によりNANデバイス全体を制御するようにしてもよい。
また、制御部202は、機能部203を制御して、撮像や印刷、投影等の所定の処理を実行する。機能部203は、NANデバイスがこれらの所定の処理を実行するためのハードウェアである。例えば、NANデバイスがカメラである場合、機能部203は撮像部であり、撮像処理を行う。また、例えば、NANデバイスがプリンタである場合、機能部203は印刷部であり、印刷処理を行う。また、例えば、NANデバイスがプロジェクタである場合、機能部203は投影部であり、投影処理を行う。機能部203が処理するデータは、記憶部201に記憶されているデータであってもよいし、後述する通信部206を介して他のNANデバイスと通信したデータであってもよい。
入力部204は、ユーザからの各種操作の受付を行う。出力部205は、ユーザに対して各種出力を行う。ここで、出力部205による出力とは、表示部による画面上への表示や、スピーカーによる音声出力、振動出力等の少なくとも1つを含む。なお、タッチパネルのように入力部204と出力部205の両方を1つのモジュールで実現するようにしてもよい。
通信部206は、IEEE802.11規格シリーズに準拠した無線通信、特に、NAN規格に準拠した無線通信の制御や、IP通信の制御を行う。また、通信部206はアンテナ207を介して、無線通信のための無線信号の送受信を行う。NANデバイスは通信部206を用いて、画像データや文書データ、映像データ等のコンテンツを他のNANデバイスと通信する。
図3は、NANデバイス101及びNANデバイス102の機能構成例を示すブロック図である。NANデバイスは、その機能構成として、例えば、無線LAN制御部301、NAN制御部302、Proxy制御部303、生存確認処理部304、UI制御部305、及び記憶部306を有する。
無線LAN制御部301は、他の無線LAN装置との間で無線信号の送受信を行うためのアンテナ並びに回路、及びそれらを制御するプログラムを含んで構成される。無線LAN制御部301は、IEEE802.11規格シリーズに従って、無線LANの通信制御を実行する。NAN制御部302は、NAN規格に従って制御を行うプログラムおよびハードウェアを含んで構成される。Proxy制御部303は、Proxy Serverとして動作する場合、NAN制御部302を制御して、他のNANデバイスのサービスの検索及び報知を代理するProxy機能を実現する。また、Proxy制御部303は、例えば、Proxy Clientとして動作する場合、Proxy Serverとして動作する他の装置に対して、代理処理の実行を要求するための処理を実行する。
生存確認処理部304は、Proxy Clientとして他の装置に代理処理を要求する場合には、その要求の有効期限を設定する。この場合、生存確認処理部304は、例えば、代理処理を要求するための信号であるProxy Register Requestメッセージに、設定した有効期限の情報を含めるような制御を実行しうる。これにより、Proxy Serverに有効期限を通知し、Proxy Serverに、後述の生存確認処理を実行させることが可能となる。なお、有効期限は可変であってもよいし固定であってもよい。また、有効期限が通知されないことにより、有効期限が無期限であることが示されてもよい。一方、生存確認処理部304は、Proxy Serverとして他の装置からの代理処理の要求を受け付ける場合、その代理処理の要求の有効期限の情報を、例えば受信した信号に基づいて記憶して管理する。そして、生存確認処理部304は、この有効期限の情報に基づいて、Proxy Clientの生存確認を実行する。なお、生存確認処理部304は、例えば、Proxy ClientがAwake状態となる又はDoze状態となるDW期間の情報を取得してもよい。この場合、生存確認処理部304は、Proxy ClientがDoze状態となるDW期間では生存確認を行わず、Proxy ClientがAwake状態となるDW期間において生存確認を行うようにしうる。これらの処理の詳細については後述する。
UI制御部305は、NANデバイス101の不図示のユーザによるNANデバイス101に対する操作を受け付けるためのタッチパネル又はボタン等のユーザインタフェースに関わるハードウェアおよびそれらを制御するプログラムを含んで構成される。なお、UI制御部305は、例えば、画像等の表示、又は音声出力等の、情報をユーザに提示するための機能をも有する。記憶部306は、NANデバイス101が動作するプログラムおよびデータを保存するROMとRAM等によって構成されうる記憶装置である。
(処理の流れ)
続いて、上述のような、無線通信システムにおいて実行される処理の流れについて図4を用いて説明する。
図4は、NANデバイス101がProxy Clinetとして動作し、NANデバイス102がProxy Serverとして動作した場合の無線通信システムの動作の例を示すシーケンス図である。ここでは、Proxy Clientとして動作するNANデバイス101が、Proxy ServerであるNANデバイス102を検索し、代理処理を要求する処理の流れの例について説明する。なお、図3の処理が開始される時点において、NANデバイス101は、全てのDW期間で無線信号を受信する第2のモードで動作しているものとする。
まず、NANデバイス101は、Proxy Server(Proxy Serverのサービスを実行しているデバイス)を検索するため、Subscribeメッセージを送信する(F401)。なお、以下では、Subscribeメッセージのことを、単に「Subscribe」と呼ぶ。ここではSubscribeがDW期間内に送信されるものとするが、これに限られず、DW期間内において予め通知したDW期間外のタイミングでSubscribeが送信されてもよい。NANデバイス101は、マルチキャスト又はブロードキャストにより同一クラスタに所属する複数のNANデバイスへSubscribeを送信しうる。なお、NANデバイス101は、個々の装置に向けたユニキャストにより、Subscribeの送信を繰り返してもよい。また、NANデバイス101は、(NANクラスタ105とは異なるNANクラスタを含む)複数のネットワークへ向けたブロードキャストにより、Subscribeを送信してもよい。
Proxy Serverとして機能するNANデバイス102は、Subscribeを受信すると、Subscribeの送信元であるNANデバイス101へ、Publishメッセージを送信する(F402)。なお、以下では、Publishメッセージのことを、単に「Publish」と呼ぶ。ここではPublishがDW期間内に送信されるものとするが、これに限られず、DW期間内において予め通知したDW期間外のタイミングでPublishが送信されてもよい。NANデバイス102は、NANデバイス101宛てのユニキャストによりPublishを送信しうるが、これに限られず、マルチキャストまたはブロードキャストにより、同一クラスタに所属する複数のNANデバイスへPublishを送信してもよい。また、NANデバイス102は、(NANクラスタ105とは異なるNANクラスタを含む)複数のネットワークへ向けたブロードキャストにより、Publishを送信してもよい。さらに、NANデバイス102は、Subscribeを受信したか否かによらず、定期的にPublishを送信してもよい。この場合、NANデバイス101は、F401のSubscribeを送信しなくてもよい。
NANデバイス101は、Publishを受信することによって、NANデバイス102がProxy Serverのサービスを実行していることを知ることができる。そこで、NANデバイス101は、NANデバイス102に対して、サービス情報の代理送信を要求する。例えば、NANデバイス101は、サービスの代理送信を要求する登録要求メッセージであって、NAN規格に準拠したProxy Register Requestメッセージを送信する(F403)。なお、以下では、Proxy Register Requestメッセージを、単に「Proxy Register Request」と呼ぶ。Proxy Register Requestのフレーム構成例を図5に示す。Proxy Register Requestは、DW内の期間中に送信されうる。これによれば、Proxy Clientとして動作するNANデバイス101とProxy Serverとして動作するNANデバイス102との消費電力を抑えることができる。また、Proxy Register Requestは、DW期間内において予め通知したDW期間外のタイミングで送信されてもよい。さらに、DW期間内の通信状況や、NANクラスタ105の参加台数に基づいて、DW期間内とDW期間外とのいずれにおいてProxy Register Requestを送信するかが決定されてもよい。これにより、NANデバイスは、自装置と相手装置の消費電力を抑制しながら、ネットワーク状況に応じた適切なタイミングでサービス情報の代理送信を要求することができる。
NANデバイス102は、NANデバイス101からProxy Register Requestを受信すると、メッセージの内容を解析し、要求された代理送信を自装置が実行可能かを判定する。そして、NANデバイス102は、代理送信を実行可能な場合には、要求内容を自装置内に記憶し、要求された代理送信を実行可能であることを示すProxy Register Responseメッセージを、NANデバイス101へ送信する(F404)。なお、以下では、Proxy Register Responseメッセージのことを、単に「Proxy Register Response」と呼ぶ。NANデバイス102は、Proxy Register Responseを送信したことに応じて(例えば送信直後又は送信から所定時間経過後に)代理処理を開始する。なお、NANデバイス102は、NANデバイス101からのProxy Register Requestで要求された代理送信を実行可能でないと判定した場合は、否定的な内容のProxy Register Responseを送信しうる。例えば、NANデバイス102は、エラーを示す又は代理送信を実行可能でないことを示すProxy Register ResponseをNANデバイス101へ送信しうる。
NANデバイス102は、代理送信を実行可能でないと判定した場合に、応答を行わないようにしてもよい。この場合、Proxy Register Responseの送信そのものが代理処理を実行可能であることを黙示的に示すため、代理処理が実行可能であることを示す明示的な情報はProxy Register Responseに付加されなくてもよい。
NANデバイス102は、例えば、代理処理(例えば、代理送信や代理検索)の処理負荷(プロセッサやメモリの使用量など)が所定の閾値よりも高い場合に、代理処理を実行可能でないと判定しうる。また、NANデバイス102は、自装置による代理処理が許可されているか否かやNANデバイス101の代理処理が許可されているか否かの例えばユーザ指示等による設定に応じて、代理処理を実行可能であるか否かを判定してもよい。
なお、Proxy Register Responseは、DW内の期間中に送信されうる。これによれば、Proxy Clientとして動作するNANデバイス101とProxy Serverとして動作するNANデバイス102との消費電力を抑えることができる。また、Proxy Register Responseは、DW期間内において予め通知したDW期間外のタイミングで送信されてもよい。さらに、DW期間内の通信状況や、NANクラスタ105の参加台数に基づいて、DW期間内とDW期間外とのいずれにおいてProxy Register Responseを送信するかが決定されてもよい。これにより、NANデバイスは、自装置と相手装置の消費電力を抑制しながら、ネットワーク状況に応じた適切なタイミングでサービス情報の代理送信の要求に対して応答することができる。
NANデバイス101は、NANデバイス102から代理送信が実行可能であることを示すProxy Register Responseを受信すると、代理送信が開始されることを、出力部205を介してユーザに通知しうる。また、NANデバイス102は、代理送信が実行可能であることを示すProxy Register Responseを送信すると、代理送信が開始されたことを、NANデバイス102の出力部205を介してユーザに通知しうる。さらに、NANデバイス101およびNANデバイス102は、サービス情報の送信または検索を利用する装置内のアプリケーションに、代理送信が開始されたことを通知してもよい。これにより、アプリケーションは、代理送信が開始されたことに応じた処理を行うことができる。
また、NANデバイス101は、代理送信が実行可能であることを示すProxy Register Responseを受信したことに応じて、動作モードを第2のモードから第1のモードへ切り替えうる。すなわち、NANデバイス101は、全DW期間で無線信号を受信する状態から、一部のDW期間で無線信号を受信する状態へと遷移しうる。これにより、NANデバイス101は、通信部206がDoze状態とする期間を長くすることができ、より消費電力を低減させることができる。従って、NANデバイス101の消費電力を低減させることができる。なお、NANデバイスは、Proxy Register Responseの受信以外を契機として動作モードを切り替えてもよい。例えば、NANデバイス101は、Proxy Register Requestを送信したことに応じて動作モードを第2のモードから第1のモードへ切り替えうる。また、NANデバイス101は、自装置のサービス情報を報知するPublishを送信していた場合、代理送信が実行可能であることを示すProxy Register Responseを受信したことに応じて、Publishの送信を停止してもよい。これにより、NANデバイス101は、送信する信号の量が減るため、NAN規格に準拠した通信に係る消費電力を低減させ、それに伴って装置全体の消費電力を低減させることができる。
NANデバイス102がサービス情報の代理送信を開始した状態で、NANデバイス103は、Subscribeを送信してサービス検索を行う(F405)。NANデバイス102は、このSubscribeに応答して、NANデバイス102が提供しているサービスの内容と併せて、NANデバイス101から依頼されたサービス情報の報知のためのPublishを送信する(F406)。これにより、NANデバイス103は、NANデバイス101が、例えばDoze状態であることによって、Subscribeに対してPublishを送信しない場合であっても、NANデバイス101が実行しているサービスを知ることができる。
なお、ここでは、サービスの代理送信について説明したが、サービスの代理検索についても同様のシーケンスで実行することが可能である。この場合、NANデバイス102がSubscribeを送信し、サービスを提供する他のNANデバイス(例えばNANデバイス103)からPublishを受信する。なお、サービスを提供する他のNANデバイスがSubscribeの受信の有無によらずにPublishを定期的に送信する場合は、NANデバイス102は、Subscribeを送信しなくてもよい。いずれの場合であっても、NANデバイス102は、Publishを受信した場合に、そのPublishに含まれるサービス情報を、適切なタイミングでNANデバイス101に通知する。なお、ここでの適切なタイミングとは、例えばPublishを受信したタイミングの次のDW期間内でありうるが、これに限られない。例えば、NANデバイス102は、後述のように、NANデバイス101がAwake状態となるDW期間を認識し、NANデバイス101がDoze状態のDW期間ではNANデバイス101への情報通知を行わないようにしてもよい。このようにして、NANデバイス101は、他のNANデバイスが提供するサービス情報を取得することができる。
また、上述の説明では、NANデバイス101が、代理送信が可能なProxy Register Responseの受信に応じて、Publishの送信を停止してもよいと説明したが、これをSubscribeに適用することができる。すなわち、NANデバイス101は、Subscribeを送信していた場合、代理検索が実行可能であることを示すProxy Register Responseの受信に応じて、Subscribeの送信を停止しうる。これにより、NANデバイス101は、送信する信号の量が減るため、NAN規格に準拠した通信に係る消費電力を低減させ、装置全体の消費電力を低減させることができる。
本実施形態では、Proxy Serverとして動作するNANデバイス102は、Proxy Clientとして動作するNANデバイス101にSubscribeを送信する(F407)。これは、NANデバイス102が、NANデバイス101のための代理処理を実行中に、NANデバイス101側で、例えばNANデバイス101の通信可能範囲外への移動や電源断等の事象が生じていないことの確認、すなわち生存確認のために行われる。特に、本実施形態では、NANデバイス102は、NANデバイス101からの代理処理の要求に関するサービス情報の有効期限に基づいて、生存確認処理を実行する。例えば、NANデバイス102は、F403のProxy Registration Requestに含まれる有効期限情報(図5のExpiry Info)により、この代理処理の有効期間を特定する。なお、Proxy Registration Requestに有効期限情報が含まれないまたはExpiry Infoに無期限であることが示されている場合は、NANデバイス102は、代理処理の有効期限がないものとして取り扱いうる。なお、NANデバイス102は、この有効期間情報と共に、Proxy Client(NANデバイス101)がAwake状態であるDW期間の周期情報に基づいて、生存確認処理を実行してもよい。すなわち、NANデバイス102は、有効期限内でNANデバイス101がAwake状態であるDW期間において、NANデバイス101の生存確認を実行しうる。なお、NANデバイス101がAwake状態であるDW期間とDoze状態であるDW期間との少なくともいずれかに関する情報が、F401のSubscribe又はF403のProxy Register Requestに含められうる。また、この情報は、他のメッセージ等によってNANデバイス101からNANデバイス102へ通知されてもよい。NANデバイス102は、NANデバイス101からPublishを受信すると(F408)、NANデバイス101の生存を確認することができる。
続いて、図6を用いて、Proxy Client(NANデバイス101)が実行する処理の流れの例について説明する。本処理において、NANデバイス101は、Proxy Serverとして機能する他のNANデバイスを検出し、代理処理を要求することにより、Proxy Serverに自装置の情報を登録する。なお、本処理は、NANデバイス101の記憶部201に記憶されたプログラムをNANデバイス101の制御部202が読み出して実行することで実現されうるが、処理の一部または全部が例えばASIC等のハードウェアで実現されてもよい。
本処理において、NANデバイス101は、まず、Proxy Serverとして動作する他のNANデバイスの検索を開始する(S601)。Proxy Serverの検索は、能動的な手法と受動的な手法とのいずれかによって行われる。能動的な手法では、NANデバイス101は、代理処理サービスを実行可能な装置を検索する検索信号としてSubscribeを送信する。そして、NANデバイス101は、そのSubscribeへの応答として、Publishを受信することによって、そのPublishの送信元であるProxy Serverを検出することができる。ここで、Proxy Serverから送信されるPublishには、代理処理サービスを実行可能であることを示す情報が含まれる。受動的な手法では、Proxy Serverとして動作するNANデバイスが、Subscribeを受信するか否かによらず定期的にPublishを送信する。このため、NANデバイス101は、Subscribeを送信することなく、そのPublishを待ち受ける。いずれの方法であっても、NANデバイス101は、Proxy ServerからのPublishを待ち受ける。なお、NANデバイス101は、DW期間においてのみPublishを待ち受け、DW期間外ではDoze状態となり待ち受けを行わないようにしうる。
NANデバイス101は、所定時間、Publishを待ち受けた結果、Publishを受信しなかった場合(S602でNO)、代理処理を実行可能なProxy Serverが存在しないことを示す不在通知を行う(S609)。この不在通知は、例えば、出力部205を介して、ユーザに対する画面表示や音声出力によって行われる。なお、これに加えて又は追加して、NANデバイス101は、NAN通信によるサービス情報を利用するアプリケーションに対して内部的に不在通知を行ってもよい。また、Publishを受信した場合であっても、新規の代理処理の要求を受け付けていないことがそのPublishによって示される場合、NANデバイス101は、処理をS609に進めてもよい。なお、NANデバイス101は、不在通知を行った場合、ユーザ操作があったことや、所定の条件を満たしたことに応じて、再度、S601から処理を開始するようにしてもよい。なお、所定の条件は、例えば、所定の時刻になったこと、NANデバイス101が所定の位置又は範囲に属した又は離脱したこと、又は、NANデバイス101が新たなクラスタに属したこと等を含む。
一方、NANデバイス101は、Publishを受信することによって(S602でYES)、Proxy Serverを検出することができる。なお、ここでは、NANデバイス101は、NANデバイス102を、Proxy Serverとして検出したものとする。この場合、NANデバイス101は、NANデバイス102に対して、Proxy Register Requestを送信する(S603)。Proxy Register Requestには、NANデバイス101が要求するサービスの代理処理(代理送信や代理検索)に関するサービス情報(インスタンス情報)が含まれる。なお、NANデバイス101は、Publishの受信後、S602でも用いた所定時間や他の一定時間が経過する前に、Proxy Register Requestを送信するようにしてよい。
NANデバイス101は、Proxy Register Requestの送信後、NANデバイス102からの応答メッセージを待ち受ける(S604)。なお、この応答メッセージは、Proxy Register Responseのことでありうる。なお、NANデバイス101は、例えばS602の所定時間または他の一定時間が経過する前に応答メッセージを受信しない場合(S604でNO)は、Proxy Register Requestを再送するか否かを判定する(S608)。なお、NANデバイス101は、例えば、Proxy Register Requestの送信回数が所定値を超えたか否かによってリトライを行うか否かの判定を行う。また、NANデバイス101は、S604やS608の判定回数が所定値を超えたか否かによって、リトライを行うか否かの判定を行ってもよい。なお、この所定値は、NANデバイス101が実行しているアプリケーションに応じて定められてもよいし、ユーザによって設定されてもよい。NANデバイス101は、Proxy Register Requestを再送すると判定した場合(S608でYES)は、処理をS603に戻し、Proxy Register Requestを再送する(S603)。一方、NANデバイス101は、Proxy Register Requestを再送しないと判定した場合(S608でNO)は、代理処理を実行可能なProxy Serverが存在しないことを示す不在通知を行う(S609)。なお、NANデバイス101は、不在通知に代えて又はそれに加えて、代理処理を実行可能なProxy Serverに対する代理処理の要求に失敗したことを示すエラー通知を行うようにしてもよい。
NANデバイス101は、Proxy Register Requestの送信後、NANデバイス102からの応答メッセージを受信すると(S604でYES)、受信したProxy Register Responseの内容を解析する(S605)。NANデバイス101は、例えば内容の解析により、受信したProxy Register Responseが、S603において要求した代理処理が実行可能であることを示すか、実行可能でないことを示すかを判定する(S606)。
NANデバイス101は、要求した代理処理が実行可能であることをProxy Register Responseが示す場合(S606でYES)、出力部205を介して、代理処理が開始されたことをユーザに通知する(S607)。このとき、NANデバイス101は、代理処理開始の通知時に、代理処理を行うNANデバイス102に関する情報を併せてユーザに通知してもよい。また、NANデバイス101は、サービス情報の送信や検索を利用するアプリケーションに対して、代理処理が開始されたことを内部的に通知(サービス情報の登録完了通知)してもよい。一方、NANデバイス101は、要求した代理処理が実行可能でないことをProxy Register Responseが示す場合(S606でNO)、ユーザに対してエラーを通知する(S611)。例えば、NANデバイス101は、代理処理を実行可能なProxy Serverに対する代理処理の要求に失敗したことを示すエラーを通知する。なお、NANデバイス101は、Proxy Register Responseに付加情報があった場合、この付加情報も併せて通知するようにしてもよい。付加情報は、例えば、代理処理を実行できない理由等を含みうる。
なお、NANデバイス101は、S603において、代理処理の実行を要求するProxy Register Requestではなく、代理処理の終了を要求するProxy Deregister Requestを送信してもよい。この場合、S605及びS606において、NANデバイス102によって登録情報の削除がなされたか否かが判定され、S607では、削除完了通知が実行されうる。
続いて、図7を用いて、Proxy Server(NANデバイス102)が実行する処理の流れの例について説明する。本処理において、NANデバイス102は、Proxy Clientとして機能する他のNANデバイスからの情報の登録を受け付ける。なお、本処理は、NANデバイス102の記憶部201に記憶されたプログラムをNANデバイス102の制御部202が読み出して実行することで実現されうるが、処理の一部または全部が例えばASIC等のハードウェアで実現されてもよい。NANデバイス102は、例えばユーザによりNAN通信機能がONにされた場合に、図7の処理を開始する。しかしこれに限らず、代理処理の開始がユーザにより指示されたことに応じて開始されるようにしてもよい。また、所定の時刻になった場合や、NANデバイス102が所定の位置もしくは範囲に属した、または、離脱した場合、NANデバイス102が新たなクラスタに属した場合等、所定の条件を満たしたことに応じて、図7の処理が開始されてもよい。なお、所定の時刻には、タイマが所定時間の経過を計測した結果得られる時刻が含まれうる。また、NANデバイス102は、電源がONにされた場合に図7の処理を開始してもよいし、電源がバッテリーから商用電源に切り替わった場合に図7の処理を開始してもよい。
NANデバイス102は、まず、Proxy Serverとしての機能を開始する(S701)。そして、NANデバイス102は、例えば、NANデバイス101からSubscribeを受信したことに応じて(S702でYES)、Publishを送信する(S703)。なお、NANデバイス102がSubscribeの有無によらずにPublishを送信するように構成されている場合、S702の処理は省略されてもよい。また、NANデバイス102は、Subscribeの有無によらずにPublishを送信するように構成されている場合であっても、Subscribeの受信に応じて、さらに、Publishを送信してもよい。
S703で送信されるPublishは、NANデバイス102が提供する印刷・撮像サービスなどのサービス情報と、Proxy Serverサービスを提供することを示す情報とを含みうる。Publishは、ブロードキャスト、マルチキャスト、もしくは、ユニキャストを用いて、NANデバイス102が参加しているNANクラスタ105内の他のNANデバイスに向けて送信される。なお、NANクラスタ105とは異なる他のクラスタを含む、複数のクラスタに向けて、Publishが送信されてもよい。また、Publishは、NANデバイス102が参加しているクラスタのDW期間において送信される。しかしこれに限られず、DW期間内において予め通知されたDW期間外のタイミングで、Publishが送信されてもよい。
なお、NANデバイス102は、代理処理機能を提供するものの、一時的に新規の代理処理の受付ができない場合には、新規の代理処理の受付を停止していることを示す付加情報をPublishに追加してもよい。このような場合は、NANデバイス102は、S704以降の処理を実行せず、新規の代理処理を受け付けることができるようになるまで、S702及びS703の処理を繰り返しうる。なお、NANデバイス102は、ユーザにエラーを通知して、図7の処理を終了してもよい。
S703に続いて、NANデバイス102は、Proxy Client(NANデバイス101)からの代理処理に関する要求メッセージを待ち受ける(S703)。ここで、代理処理に関する要求メッセージは、代理処理の実行を要求するProxy Register Requestと、代理処理の終了を要求するProxy Deregister Requestでありうる。NANデバイス102は、要求メッセージを受信するまで(S704でNO)、S702及びS703の処理を継続しうる。なお、NANデバイス102は、S702及びS703の処理を所定回数だけ実行した場合に、図7の処理を終了してもよい。
NANデバイス102は、要求メッセージを受信すると(S704でYES)、その要求メッセージの内容を確認する(S705)。NANデバイス102は、例えば、受信した要求メッセージが、代理処理の実行を要求するProxy Register Requestであるか代理処理の終了を要求するProxy Deregister Requestであるかを確認する。また、NANデバイス102は、要求メッセージが、代理送信と代理検索とのいずれに関するかや、いかなるサービスに関するかについても確認する。
そして、NANデバイス102は、自装置が実行している代理処理の内容を確認する(S706)。NANデバイス102は、自装置が他のデバイスから要求されて代理処理を実行する場合、その内容を装置内に登録しておき、それに従って代理処理を実行しうる。したがって、NANデバイス102は、自装置に登録されている処理の内容を確認することにより、S706の確認を実行しうる。そして、NANデバイス102は、要求メッセージで指定された代理処理の内容が登録されていない場合には、要求メッセージで指定されたサービス情報(サービスの送信/サービスの検索等の代理処理の内容、有効期限等)を登録する(S707)。また、NANデバイス102は、要求メッセージで指定されたサービス情報が登録されているサービス情報と異なる場合は、登録内容を更新・変更しうる。
ここで、NANデバイス101からNANデバイス102に対して、印刷サービスの代理送信が要求された場合について説明する。この場合、NANデバイス102は、既にNANデバイス101の印刷サービスに関して代理処理を実行しているか否かを確認し、実行していない場合に、NANデバイス101の印刷サービスに関するサービス情報を登録して、代理処理を新たに開始する。一方、NANデバイス102は、既にNANデバイス101の印刷サービスの代理処理を実行している場合であって、内容に変更のない場合には、特にサービス情報(代理処理の内容)を変更しない。また、NANデバイス102は、例えば有効期限の延長・短縮等、サービス情報の内容に変更がある場合には、サービス情報の更新を行う。また、NANデバイス102は、NANデバイス101から印刷サービスに関する代理処理の停止が要求された場合、その印刷サービスに関する代理処理を実行しているか否かを確認し、実行している場合、その印刷サービスに関する代理処理を停止する。この場合、NANデバイス102は、この印刷サービスの代理処理に関するサービス情報を削除する。一方、NANデバイス102は、NANデバイス101の印刷サービスに関する代理処理を実行していない場合、登録されている代理処理の内容を変更しない。
その後、NANデバイス102は、代理処理の内容に関する必要な変更を全て正常に完了したか否かを判定する(S708)。そして、NANデバイス102は、必要な変更を正常に完了した場合(S708でYES)、要求を正常に受け付けたことを示す情報を含んだ応答メッセージをNANデバイス101に送信する(S709)。また、NANデバイス102は、これらの結果をユーザに通知しうる(S709)。一方、NANデバイス102は、代理処理の内容に関する必要な変更のいずれかを正常に完了できなかった場合(S708でNO)、要求を正常に受け付けなかったことを示すエラー通知を含んだ応答メッセージをNANデバイス101に送信する(S710)。また、NANデバイス102は、これらの結果をユーザに通知しうる(S710)。なお、エラー通知は、受付失敗したサービスを示す情報を含んでもよい。
なお、ここでは、S701においてNANデバイス102がProxy Serverとしての機能を開始した上で、代理処理を要求するメッセージを受信する例について説明した。しかし、これに限られず、NANデバイス102は、Proxy Serverとしての機能を開始していない状態で、Proxy Serverを実行可能であることを示す情報をPublishに付加して、Proxy Clientに報知してもよい。これによれば、NANデバイス102は、Proxy Serverとしての機能を開始する前であっても、代理処理の開始要求等を受け付けることができるようになる。また、NANデバイス102は、代理処理の開始要求を受け付けたことに応じて、Proxy Serverとしての機能を開始することができる。また、NANデバイス102は、Proxy Serverとしての機能を実行するか否かによらずに、サービス情報の削除の要求を受け付けてもよい。
S709のユーザへの代理処理に関する情報の通知により、ユーザは、例えば代理処理の開始時に自身が有する装置の単位時間当たりのバッテリー消費量が多くなることを認識することができる。また、S710のエラー通知により、例えばユーザが意図した代理処理が実行されていないことを、ユーザが認識することができる。さらにエラーの理由がユーザに通知されることにより、ユーザは、例えば、エラーの理由を取り除く作業を行うことができる。なお、S709及びS710において、NANの代理処理についての情報を、撮像機能や印刷機能等を提供するアプリケーションに通知することにより、アプリケーションがNANの代理処理に関する情報を把握することができる。このため、アプリケーションは、代理処理の状況を鑑みた制御を行うことができるようになる。
なお、Proxy Serverは、Proxy Clientから代理処理を要求された場合やその要求を受け付けて代理処理を実行する場合に、Doze状態となる頻度を低下させてもよい。例えば、Proxy Serverは、代理処理を要求される前にはDW0、DW4、DW8、DW12で無線信号を受信して他のDW期間ではDoze状態となるようにし、代理処理の要求があった後は全てのDW期間で無線信号を受信するようにしてもよい。これにより、Proxy Serverは、代理処理を行っていない場合には消費電力を抑制することができ、代理処理中は代理で信号の送受信を行う期間を十分に確保することができるようになる。
次に、図8を用いて、Proxy Serverとして動作しているNANデバイス102(例えば生存確認処理部304)が実行する、生存確認処理と、それに伴う情報管理処理の流れの例について説明する。図8の処理は、例えば、ユーザが、NANデバイス102のサービス代理機能をオンとしたことに応じて開始され、例えばDW期間ごとに実行される。なお、NANデバイス102は、記憶部201に記憶されたプログラムを制御部202が読み出して実行することによって、図8の処理を実行しうるが、図8の処理の一部または全部が、例えばASIC等のハードウェアによって実現されてもよい。
NANデバイス102は、Proxy Client(NANデバイス101)からの要求によって登録されたサービス情報を確認する(S801)。NANデバイス102は、このようなサービス情報が存在する場合、各サービスに対して、それぞれ以下のS802~S806の処理を実行する。S802では、NANデバイス102は、登録されているサービス情報の有効期限を確認する(S802)。NANデバイス102は、例えばProxy Clientから受信したProxy Register Request内のExpiry Infoに基づいて有効期限を登録しており、この登録情報に基づいて、サービス情報が有効期限内か否かを判定しうる。なお、NANデバイス102は、サービス情報の有効期限が無期限の場合や期限情報が存在しない場合は、そのサービス情報は常に有効期限内であるものとして取り扱う。NANデバイス102は、サービス情報の有効期限が満了していると判定した場合(S802でNO)、そのサービス情報を削除する(S806)。
一方、NANデバイス102は、サービス情報の有効期限が満了していない場合(S802でYES)は、そのサービス情報を登録依頼したProxy Client(NANデバイス101)の生存確認のために、Subscribeを送信する(S803)。なお、NANデバイス102は、生存確認対象のProxy ClientがDoze状態であることがわかっている場合は、そのProxy ClientがAwake状態となるDW周期においてS803のSubscribeを送信してもよい。ここで、NANデバイス102は、例えばNANデバイス101がProxy Serverを検索するSubscribeや、Proxy Register Requestから、NANデバイス101がDoze状態となる期間を特定しうる。NANデバイス102は、あるDW期間で送信したSubscribeに対してProxy ClientからPublishを受信しなかった場合に、複数のDW期間にわたってSubscribeを送信しうる。また、NANデバイス102は、例えば、NANデバイスの全てがAwakeとなるべきDW期間であるDW0において、Subscribeを送信するようにしてもよい。そして、NANデバイス102は、Proxy ClientからのPublishを待ち受け、Publishを受信したか否かを判定する(S804)。S804では、例えば、所定数(16以下)のDW期間においてSubscribeが送信される間にPublishが受信されたかの判定が行われうる。すなわち、NANデバイス102は、あるDW期間においてPublishが受信されなかった場合、Publishが受信されていない状態であることの情報を維持しながら、次のDW期間において再度Publishを待ち受けうる。そして、NANデバイス102は、一定期間の全DW期間においてPublishを所定回数(例えば1回)以上受信しなかった場合に、Publishを受信しなかったとの判定結果を得るようにしうる。これによれば、一次的な電波状況によってProxy ClientからのPublishの受信に成功しなかっただけの場合に、意図せずに、対応するサービス情報が削除され、代理処理が終了してしまうことを防ぐことができる。また、NANデバイス102は、例えば、Proxy ClientがAwake状態であることが分かっているDW期間(例えばDW0)においてSubscribeが送信された場合に、それに応答するPublishが受信されたかを判定してもよい。なお、NANプロトコルでは、Subscribeを送ることなく、Publishのみが送受信されることも許容されているため、S803の処理は省略されてもよい。
NANデバイス102は、Publishを受信しなかった場合(S804でNO)は、そのサービス情報を登録依頼したProxy Clientが生存していないと判断できるため、そのサービス情報を削除する(S805)。なお、ここでの「Proxy Clientが生存していない」とは、そのProxy ClientがNANデバイス102の通信可能範囲外に移動した場合や電源断等によって、NANの通信を行うことができない状態を指す。一方、NANデバイス102は、Proxy ClientからPublishを受信した場合(S804でYES)、そのProxy Clientが生存状態であり、代理処理を継続して要求していると判断できるため、対応するサービス情報を維持する。このサービス情報が維持されることによって、代理処理が継続される。
その後、NANデバイス102は、全サービス情報の確認を完了したか否かを判定し(S806)、全サービス情報についての処理を終了していない場合(S806でNO)は、処理をS802に戻し、終了している場合(S806でYES)は処理を終了する。
なお、NANデバイス102は、対象のProxy ClientがDoze状態であることがわかっているDW期間においては、S803においてSubscribeを送信しなくてもよい。この場合、Proxy ClientがDoze状態のDW期間においては、そのProxy Clientが登録要求したサービス情報については、S803~S805の処理を行わないようにしてもよい。なお、Proxy ClientのAwake期間は、Proxy Registration Requestによって、Proxy ClientからProxy Serverへ伝達可能である。
このように、本実施形態のProxy Serverとして機能するNANデバイスは、サービス情報の有効期限に少なくとも基づいて、Proxy Clientとして機能するNANデバイスの存在確認を実行する。これによれば、Proxy Serverとして機能するNANデバイスは、自装置の通信可能範囲からProxy Clientが脱したこと等によって代理処理を中止すべき状況を把握することが可能となる。これにより、Proxy Serverとして機能するNANデバイスは、不必要に代理処理を継続することがなくなり、また、不必要にサービス情報を保持し続ける必要がなくなるため、必要メモリ量を抑えることが可能となる。
なお、上述の説明では、Proxy Register Requestに有効期限情報(Expiry Info)を含められる例について説明したが、これに限られない。例えば、NANデバイス101が送信するSubscribeに、予め有効期限情報が設定されていてもよい。また、Proxy Register Requestの後に、有効期限情報を含んだ所定の信号がNANデバイス101からNANデバイス102へ送信されてもよい。また、Proxy Clientは、Proxy Serverに通知済みの有効期限が満了する前に、有効期限の延長を通知することができるようにしてもよい。その場合、Proxy Clientは新たな有効期限を設定した有効期限情報を別途Proxy Serverに送信する。これを受信したProxy Serverは、登録済みの有効期限情報を更新する。
また、上述の説明では、生存確認処理として、Proxy Serverとして動作するNANデバイス102がSubscribeを送信する場合の例について説明したが、これに限られない。すなわち、NANデバイス102は、NANデバイス101がAwake状態の期間に、何らかの応答が必要な任意のメッセージを送信してもよい。また、NANデバイス102は、自装置からはSubscribeを送信せずに、NANデバイス101がAwake状態になったときに送信する任意のメッセージを待ち受けてもよい。例えば、NANデバイス101は、NANデバイス102に代理処理を行わせている間にAwake状態となった際に、SubscribeやPublishを送信するように構成されうる。これによれば、NANデバイス101が生存確認のためにSubscribeを送信する必要がなくなるため、NANデバイス101の消費電力を抑制することができる。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101~104:NANデバイス、201:記憶部、202:制御部、206:通信部、301:無線LAN制御部、302:NAN制御部、303:Proxy制御部、304:生存確認処理部

Claims (9)

  1. 通信装置が提供しているサービスの情報の送信と前記通信装置のための他の装置が提供しているサービスの検索との少なくともいずれかの代理処理を実行することができる代理装置であって、
    前記通信装置から、NAN(Neighbor Awareness Networking)規格に準拠した通信に基づいて、前記代理処理の実行を要求すると共に前記通信装置が通信可能なDW(Discovery Window)の情報と前記通信装置が通信可能でないDWの情報との少なくともいずれかの情報を含んだメッセージを受け付ける受付手段と、
    前記受付手段において受け付けたメッセージに含まれる情報から前記通信装置が通信可能なDWと判定された期間において、前記代理装置が前記通信装置に対して前記NAN規格に準拠したサービスの検索のためのSubscribeメッセージを送信し、当該Subscribeメッセージに対する前記通信装置からの応答であるPublishメッセージに基づいて前記通信装置が前記代理装置と通信可能であるかを確認する確認手段と、
    を有することを特徴とする代理装置。
  2. 前記受付手段は、さらに、前記通信装置がDoze状態となるDWの期間とAwake状態となるDWの期間との少なくともいずれかについての情報を含んだ、前記通信装置が前記代理装置を検索するための信号を受け付ける、
    ことを特徴とする請求項1に記載の代理装置。
  3. 前記確認手段は、前記通信装置がDoze状態であるDWの期間においては前記確認を実行しない、
    ことを特徴とする請求項1又は2に記載の代理装置。
  4. 前記代理装置は、前記メッセージに応じて前記通信装置のための前記代理処理を実行する実行手段をさらに有し、
    前記実行手段は、前記通信装置によって通知された代理処理の有効期間の内に前記通信装置が前記代理装置と通信可能であることが確認されなかった場合、当該代理処理を終了する、
    ことを特徴とする請求項1からのいずれか1項に記載の代理装置。
  5. 通信装置であって、
    通信装置が提供しているサービスの情報の送信と前記通信装置のための他の装置が提供しているサービスの検索との少なくともいずれかの代理処理の実行を、NAN(Neighbor Awareness Networking)規格に準拠したメッセージを用いて、代理装置に要求する要求手段と、
    前記代理装置から送信された前記NANに準拠したサービスの検索のためのSubscribeメッセージPublishメッセージによって応答する応答手段と、
    を有し、
    前記要求手段において用いられた前記メッセージは、前記通信装置が通信可能なDW(Discovery Window)の情報と前記通信装置が通信可能でないDWの情報との少なくともいずれかの情報を少なくとも含み、
    前記応答手段は、前記要求手段において用いられた前記メッセージに含まれる情報から前記通信装置が通信可能なDWと判定された期間において、前記代理装置から送信されたSubscribeメッセージに対してPublishメッセージによって応答する、
    ことを特徴とする通信装置。
  6. 前記通信装置がDoze状態となるDWの期間とAwake状態となるDWの期間との少なくともいずれかについての情報を含んだ、前記代理装置を検索するための信号を送信する送信手段をさらに有する、
    ことを特徴とする請求項に記載の通信装置。
  7. 通信装置が提供しているサービスの情報の送信と前記通信装置のための他の装置が提供しているサービスの検索との少なくともいずれかの代理処理を実行することができる代理装置によって実行される制御方法であって、
    前記通信装置から、NAN(Neighbor Awareness Networking)規格に準拠した通信に基づいて、前記代理処理の実行を要求すると共に前記通信装置が通信可能なDW(Discovery Window)の情報と前記通信装置が通信可能でないDWの情報との少なくともいずれかの情報を含んだメッセージを受け付ける受付工程と、
    前記受付工程において受け付けたメッセージに含まれる情報から前記通信装置が通信可能なDWと判定された期間において、前記代理装置が前記通信装置に対して前記NAN規格に準拠したサービスの検索のためのSubscribeメッセージを送信し、当該Subscribeメッセージに対する前記通信装置からの応答であるPublishメッセージに基づいて前記通信装置が前記代理装置と通信可能であるかを確認する確認工程とを有する、
    ことを特徴とする制御方法。
  8. 通信装置によって実行される制御方法であって、
    通信装置が提供しているサービスの情報の送信と前記通信装置のための他の装置が提供しているサービスの検索との少なくともいずれかの代理処理の実行を、NAN(Neighbor Awareness Networking)規格に準拠したメッセージを用いて、代理装置に要求する要求工程と、
    前記代理装置から送信された前記NANに準拠したサービスの検索のためのSubscribeメッセージPublishメッセージによって応答する応答工程と、
    を有し、
    前記要求工程において用いられた前記メッセージは、前記通信装置が通信可能なDW(Discovery Window)の情報と前記通信装置が通信可能でないDWの情報との少なくともいずれかの情報を少なくとも含み、
    前記応答工程では、前記要求工程において用いられた前記メッセージに含まれる情報から前記通信装置が通信可能なDWと判定された期間において、前記代理装置から送信されたSubscribeメッセージに対してPublishメッセージによって応答する、
    ことを特徴とする制御方法。
  9. コンピュータに、請求項又はに記載の制御方法を実行させるためのプログラム。
JP2017235292A 2017-12-07 2017-12-07 代理装置、通信装置、制御方法、及びプログラム Active JP7236803B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017235292A JP7236803B2 (ja) 2017-12-07 2017-12-07 代理装置、通信装置、制御方法、及びプログラム
PCT/JP2018/040482 WO2019111602A1 (ja) 2017-12-07 2018-10-31 代理装置、通信装置、制御方法、及びプログラム
US16/889,856 US11451644B2 (en) 2017-12-07 2020-06-02 Proxy apparatus, communication apparatus, control method, and computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017235292A JP7236803B2 (ja) 2017-12-07 2017-12-07 代理装置、通信装置、制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2019103092A JP2019103092A (ja) 2019-06-24
JP7236803B2 true JP7236803B2 (ja) 2023-03-10

Family

ID=66751433

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017235292A Active JP7236803B2 (ja) 2017-12-07 2017-12-07 代理装置、通信装置、制御方法、及びプログラム

Country Status (3)

Country Link
US (1) US11451644B2 (ja)
JP (1) JP7236803B2 (ja)
WO (1) WO2019111602A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014022808A (ja) 2012-07-13 2014-02-03 Panasonic Corp ゲートウェイ装置、ネットワークシステム及び通信方法
JP2015130637A (ja) 2014-01-09 2015-07-16 ブラザー工業株式会社 通信機器とプリンタ
WO2016191258A1 (en) 2015-05-26 2016-12-01 Nokia Technologies Oy Method, apparatus and computer program product for service discovery proxy for wireless communication

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9686369B2 (en) 2013-09-13 2017-06-20 Qualcomm Incorporated System and method for multihop service discovery with member station proxy service advertisements
US9439147B2 (en) * 2014-06-30 2016-09-06 Intel IP Corporation Mechanisms of reducing power consumption for NAN devices
US20180070308A1 (en) * 2015-03-18 2018-03-08 Lg Electronics Inc. Method and device for setting awake period of discovery window in wireless communication system
US10051566B2 (en) * 2015-04-30 2018-08-14 Futurewei Technologies, Inc. System and method for data communication in a decentralized and power efficient manner
US20160352842A1 (en) * 2015-05-27 2016-12-01 Qualcomm Incorporated Proxy advertisements in a neighbor aware network
US20190199815A1 (en) * 2015-05-28 2019-06-27 Lg Electronics Inc. Method and apparatus for providing proxy service via nan proxy server in wireless communication system
JP6579883B2 (ja) 2015-09-24 2019-09-25 キヤノン株式会社 通信装置、制御方法、及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014022808A (ja) 2012-07-13 2014-02-03 Panasonic Corp ゲートウェイ装置、ネットワークシステム及び通信方法
JP2015130637A (ja) 2014-01-09 2015-07-16 ブラザー工業株式会社 通信機器とプリンタ
WO2016191258A1 (en) 2015-05-26 2016-12-01 Nokia Technologies Oy Method, apparatus and computer program product for service discovery proxy for wireless communication

Also Published As

Publication number Publication date
WO2019111602A1 (ja) 2019-06-13
US20200296180A1 (en) 2020-09-17
US11451644B2 (en) 2022-09-20
JP2019103092A (ja) 2019-06-24

Similar Documents

Publication Publication Date Title
JP6579883B2 (ja) 通信装置、制御方法、及びプログラム
CN107743718B (zh) 经由nan代理服务器提供代理服务的方法和装置
WO2019044162A1 (ja) 通信装置、その制御方法、およびプログラム
CN109716824B (zh) 通信装置、通信方法和存储介质
JP6677493B2 (ja) 通信装置、その制御方法、およびプログラム
JP7236803B2 (ja) 代理装置、通信装置、制御方法、及びプログラム
JP6646458B2 (ja) 通信装置、制御方法、及びプログラム
US11622023B2 (en) Communication apparatus, communication method, and storage medium
JP7233833B2 (ja) 通信装置、代理装置、制御方法、およびプログラム
JP7118617B2 (ja) 通信装置、通信方法、及びプログラム
JP2018046450A (ja) 通信装置、通信方法、及びプログラム
JP2018117221A (ja) 通信装置、その制御方法、およびプログラム
JP7034596B2 (ja) 通信装置、通信方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201029

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220805

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221003

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230228

R151 Written notification of patent or utility model registration

Ref document number: 7236803

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151