Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5478554B2 - Gateway apparatus and communication method - Google Patents
[go: Go Back, main page]

JP5478554B2 - Gateway apparatus and communication method - Google Patents

Gateway apparatus and communication method Download PDF

Info

Publication number
JP5478554B2
JP5478554B2 JP2011112182A JP2011112182A JP5478554B2 JP 5478554 B2 JP5478554 B2 JP 5478554B2 JP 2011112182 A JP2011112182 A JP 2011112182A JP 2011112182 A JP2011112182 A JP 2011112182A JP 5478554 B2 JP5478554 B2 JP 5478554B2
Authority
JP
Japan
Prior art keywords
service
bundle
relay
information
gateway device
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
JP2011112182A
Other languages
Japanese (ja)
Other versions
JP2012244382A (en
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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2011112182A priority Critical patent/JP5478554B2/en
Publication of JP2012244382A publication Critical patent/JP2012244382A/en
Application granted granted Critical
Publication of JP5478554B2 publication Critical patent/JP5478554B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、複数のサービス事業者のサービスが動作するゲートウェイ装置、および当該ゲートウェイ装置が行う通信方法に関する。   The present invention relates to a gateway device in which services of a plurality of service providers operate and a communication method performed by the gateway device.

近年では、パソコンやAV機器、情報家電など、様々な機器がネットワークに接続され、ホームネットワークを形成しつつある。また、ホームネットワークは、ゲートウェイ装置によって、インターネットなどの外部ネットワークに接続されている。   In recent years, various devices such as personal computers, AV devices, and information appliances are connected to a network to form a home network. The home network is connected to an external network such as the Internet by a gateway device.

このような状況を反映して、これらホームネットワークに接続された機器を用いたサービスの提供を計画するサービス事業者も多様である。   Reflecting this situation, there are various service providers who plan to provide services using devices connected to these home networks.

非特許文献1には、このような背景を踏まえ、複数のサービス事業者が、ゲートウェイ装置と、それを管理するセンターシステムとを共用し、ユーザにサービスを提供するプラットフォーム技術(OSAP)が記載されている。   Non-Patent Document 1 describes platform technology (OSAP) in which a plurality of service providers share a gateway device and a center system that manages the gateway device and provide services to users based on such a background. ing.

“NTT研究開発この一年 2007年報「 OSGiサービス・アグリゲーション・プラットフォーム(OSAP)」”、[online]、[2011年2月24日検索]、インターネット<http://www.ntt.co.jp/RD/OFIS/active/2007pdf/hot/pf/01.html>“NTT R & D 2007 Year Report“ OSGi Service Aggregation Platform (OSAP) ””, [online], [searched February 24, 2011], Internet <http://www.ntt.co.jp/ RD / OFIS / active / 2007pdf / hot / pf / 01.html>

非特許文献1のプラットフォーム技術では、サービス事業者は、サービスを実行するアプリケーションプログラム(以下、「AP」という)を作成し、作成されたAPは当該サービスを利用するユーザのゲートウェイ装置にダウンロードされ、実行される。ゲートウェイ装置のAPが機器の制御などの通信を行うことで、サービスが提供される。   In the platform technology of Non-Patent Document 1, a service provider creates an application program (hereinafter referred to as “AP”) that executes a service, and the created AP is downloaded to a gateway device of a user who uses the service, Executed. A service is provided by the AP of the gateway device performing communication such as device control.

しかしながら、非特許文献1には次のような課題がある。すなわち、ゲートウェイ装置では、様々なサービス事業者のAPやゲートウェイ装置自身が提供する機能が動作しており、あるAPに障害が発生した場合に、ゲートウェイ装置全体が停止などしてしまうと大きな問題となる。そのようなことが発生しないように、新たなAPを導入する際には、事前にAPの動作検証を行う必要があり、新サービス追加時のAPの事前動作検証コスト(費用、期間)が大きいという課題がある。   However, Non-Patent Document 1 has the following problems. That is, in the gateway device, the functions provided by the APs of various service providers and the gateway device itself are operating, and if a failure occurs in a certain AP, the gateway device as a whole will be stopped. Become. In order to prevent this from happening, when introducing a new AP, it is necessary to verify the operation of the AP in advance, and the AP's prior operation verification cost (expense, period) when adding a new service is high. There is a problem.

本発明は、上記事情に鑑みてなされたものであり、本発明の目的は、複数のサービス事業者のサービスが動作するゲートウェイ装置において、新たなサービスを追加する際の動作検証コストを低減することにある。   The present invention has been made in view of the above circumstances, and an object of the present invention is to reduce operation verification costs when a new service is added in a gateway device in which services of a plurality of service providers operate. It is in.

上記目的を達成するため、本発明は、複数のサービス事業者のサービスが動作するゲートウェイ装置であって、前記サービスは、当該サービスで用いられるルート情報と、当該サービスの利用が許可される機器に関する許可情報とを含むサービス定義情報、及び、機器にインストールされた外部アプリケーションにより構成され、サービス毎に設けられ、前記サービス定義情報を記憶する記憶部と、通信プロトコル毎に設けられ、前記外部アプリケーションと当該通信プロトコルでデータを送受信するドライバ部と、前記ドライバ部が対応する通信プロトコルのインタフェースで送受信されたデータを共通インタフェースに変換する中継部と、前記中継部から共通インタフェースに変換されたデータを受け付け、対応するサービスのサービス定義情報を前記記憶部から読み出し、当該サービス定義情報のルート情報および許可情報に基づいて前記データを中継する中継基本部と、を有する
また、本発明は、複数のサービス事業者のサービスが動作するゲートウェイ装置が行う通信方法であって、前記サービスは、当該サービスで用いられるルート情報と、当該サービスの利用が許可される機器に関する許可情報とを含むサービス定義情報、及び、機器にインストールされた外部アプリケーションにより構成され、前記ゲートウェイ装置は、サービス毎に設けられ、前記サービス定義情報を記憶する記憶部を備え、前記外部アプリケーションと、所定の通信プロトコルでデータを送受信する通信ステップと、前記通信ステップで所定の通信プロトコルのインタフェースで送受信されたデータを共通インタフェースに変換する変換ステップと、前記共通インタフェースに変換されたデータを受け付け、対応するサービスのサービス定義情報を前記記憶部から読み出し、当該サービス定義情報のルート情報および許可情報に基づいて前記データを中継する中継ステップと、を行う。
In order to achieve the above object, the present invention relates to a gateway device in which services of a plurality of service providers operate , and the service relates to route information used in the service and equipment permitted to use the service. Service definition information including permission information and an external application installed in the device, provided for each service , a storage unit for storing the service definition information, provided for each communication protocol, and the external application A driver unit that transmits / receives data using the communication protocol, a relay unit that converts data transmitted / received through an interface of a communication protocol supported by the driver unit to a common interface, and data that is converted from the relay unit to a common interface , Corresponding service services It reads definition information from the storage unit, having a relay base unit for relaying the data, based on the route information and the permission information of the service definition information.
In addition, the present invention is a communication method performed by a gateway device in which services of a plurality of service providers operate, and the service includes route information used in the service and permission related to a device permitted to use the service. service definition information including the information, and is constituted by the installed external application to the device, the gateway device is provided for each service includes a storage unit that stores the service definition information, and the external application, predetermined A communication step for transmitting / receiving data using a communication protocol of the above, a conversion step for converting data transmitted / received by an interface of a predetermined communication protocol in the communication step to a common interface, and receiving data corresponding to the common interface Service definition Read information from the storage unit, it performs a relay step of relaying the data, based on the route information and the permission information of the service definition information.

本発明によれば、複数のサービス事業者のサービスが動作するゲートウェイ装置において、新たなサービスを追加する際の動作検証コストを低減することができる。   ADVANTAGE OF THE INVENTION According to this invention, the operation verification cost at the time of adding a new service can be reduced in the gateway apparatus in which the service of a some service provider operates.

本発明の実施形態に係る通信システムの全体構成図である。1 is an overall configuration diagram of a communication system according to an embodiment of the present invention. ゲートウェイ装置の初期処理のシーケンスである。It is the sequence of the initial process of a gateway apparatus. ゲートウェイ装置の中継処理のシーケンスである。It is the sequence of the relay process of a gateway apparatus.

以下、本発明の実施の形態について、図面を参照して説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本発明の実施形態に係る通信システムの全体構成図である。   FIG. 1 is an overall configuration diagram of a communication system according to an embodiment of the present invention.

従来、サービス事業者から提供されるAPをゲートウェイ装置で動作させることにより実現していたサービス提供を、本実施形態では、ゲートウェイ装置側に保持されるAPバンドルと、機器側で動作させる外部APとに分けて、サービス提供を実現する。   Conventionally, in the present embodiment, service provision realized by operating an AP provided by a service provider on a gateway device, an AP bundle held on the gateway device side, and an external AP operated on the device side, In order to provide services.

なお、本実施形態では、OSGi(Java(登録商標))の技術を用いた実装を一例として以下に説明するが、本発明はこれに限定されるものではなく、様々な技術に適用することができる。   In the present embodiment, an implementation using OSGi (Java (registered trademark)) technology will be described as an example. However, the present invention is not limited to this and can be applied to various technologies. it can.

図示する通信システムは、ゲートウェイ装置1と、複数の機器41〜44と、配信サーバ3とを備える。複数の機器41〜44は、ホームネットワーク8または外部ネットワーク9を介してゲートウェイ装置1と接続され、ゲートウェイ装置1と通信する。なお、図1では、機器の例として、機器41がスマートフォン、機器42がプリンタ、機器43がパソコン、機器44が固定電話機としているが、これらに限定されるものではない。   The illustrated communication system includes a gateway device 1, a plurality of devices 41 to 44, and a distribution server 3. The plurality of devices 41 to 44 are connected to the gateway device 1 via the home network 8 or the external network 9 and communicate with the gateway device 1. In FIG. 1, as an example of the device, the device 41 is a smartphone, the device 42 is a printer, the device 43 is a personal computer, and the device 44 is a fixed telephone, but is not limited thereto.

また、図示する例では、機器41(スマートフォン)および機器43(パソコン)には、所定のサービスの利用に必要な外部APがそれぞれインストールされている。ユーザは、所望のサービスの利用する場合、当該サービスを提供するサービス事業者のサーバに機器41、43を用いてアクセスし、対応する外部APを機器41、43にダウンロードおよびインストールする。   Further, in the example shown in the figure, an external AP necessary for using a predetermined service is installed in each of the device 41 (smart phone) and the device 43 (personal computer). When a user uses a desired service, the user accesses the server of the service provider that provides the service using the devices 41 and 43, and downloads and installs the corresponding external AP on the devices 41 and 43.

配信サーバは、例えばOSAPのセンターシステムであって、各サービス事業者から提供されるAPバンドルと、ゲートウェイ装置1の提供者(例えば、通信事業者など)が提供する中継バンドルおよびドライババンドルを保持し、これらのバンドルをゲートウェイ装置に配信する。ユーザは、所望のサービスの利用する場合、当該サービスに対応するAPバンドル、中継バンドルおよびドライババンドルを配信サーバ3からゲートウェイ装置1にダウンロードし、インストールする。   The distribution server is an OSAP center system, for example, and holds an AP bundle provided by each service provider and a relay bundle and a driver bundle provided by a provider (for example, a communication provider) of the gateway device 1. These bundles are distributed to the gateway device. When a user uses a desired service, the user downloads an AP bundle, a relay bundle, and a driver bundle corresponding to the service from the distribution server 3 to the gateway device 1 and installs them.

ゲートウェイ装置1は、宅内に配置されるホームゲートウェイ(サービスゲートウェイ)であって、ホームネットワーク8または外部ネットワーク9に接続されたネットワーク装置である。本実施形態のゲートウェイ装置1は、OSGi標準技術に基づいた各種のバンドル(ソフトウェア)を備える。図示する例では、ドライババンドル(ドライバ部)18〜21と、中継バンドル(中継部)15〜17と、中継基本バンドル(中継基本部)14と、APバンドル(サービス定義情報)11〜13とを備える。なお、ドライババンドル18〜21と、中継バンドル15〜17と、APバンドル11〜13は、前述のとおり、配信サーバ3から配信されるものである。   The gateway device 1 is a home gateway (service gateway) disposed in a home, and is a network device connected to the home network 8 or the external network 9. The gateway device 1 of the present embodiment includes various bundles (software) based on the OSGi standard technology. In the illustrated example, driver bundles (driver units) 18 to 21, relay bundles (relay units) 15 to 17, relay basic bundles (relay basic units) 14, and AP bundles (service definition information) 11 to 13 are included. Prepare. The driver bundles 18 to 21, the relay bundles 15 to 17, and the AP bundles 11 to 13 are distributed from the distribution server 3 as described above.

ドライババンドル18〜21は、通信プロトコル毎に設けられ、機器にインストールされた外部アプリケーションまたは機器と当該通信プロトコルでデータを送受信する。具体的には、各ドライババンドルは、対応する機器と、当該機器が使用する通信プロトコル(例えばHTTPやUPnP、SIPなど)で通信する。各ドライババンドルは、それぞれの通信プロトコルに特化した専用のインタフェースを定義している。   The driver bundles 18 to 21 are provided for each communication protocol, and transmit / receive data to / from an external application or device installed in the device using the communication protocol. Specifically, each driver bundle communicates with a corresponding device using a communication protocol (for example, HTTP, UPnP, SIP, etc.) used by the device. Each driver bundle defines a dedicated interface specialized for each communication protocol.

中継バンドル15〜17は、ドライババンドルが所定の通信プロトコルのインタフェースで送受信されたデータを共通インタフェースに変換する。具体的には、ドライババンドルの個別のインタフェースを、中継基本バンドル14が定義する共通インタフェースに変換する。中継バンドルは、基本的にはドライババンドル毎に存在するが、図1に示す中継バンドル16のように複数のドライババンドル19、10で共有されていてもよい。   The relay bundles 15 to 17 convert data transmitted and received by the driver bundle through an interface of a predetermined communication protocol into a common interface. Specifically, the individual interface of the driver bundle is converted into a common interface defined by the relay basic bundle 14. The relay bundle basically exists for each driver bundle, but may be shared by a plurality of driver bundles 19 and 10 as the relay bundle 16 shown in FIG.

中継基本バンドル14は、各中継バンドルから共通インタフェースに変換されたデータを受け付け、対応するサービスのサービス定義ファイル(サービス定義情報)をAPバンドルから読み出し、当該サービス定義ファイルのルート情報および許可情報に基づいてデータを中継する。また、中継基本バンドルは、APバンドルに保持されるサービス定義ファイルを読み出し、当該ファイルに定義された範囲内で、当該APバンドル、対応する中継バンドル向けのサービス(例えばOSGiサービス)を生成し、登録する。なお、中継基本バンドルは、1つであって、APバンドル(サービス事業者)に代わって中継バンドルを用いて通信の中継処理を行う。   The relay basic bundle 14 receives data converted from each relay bundle into a common interface, reads out the service definition file (service definition information) of the corresponding service from the AP bundle, and based on the route information and permission information of the service definition file. Relay the data. Also, the relay basic bundle reads a service definition file held in the AP bundle, generates a service for the AP bundle and a corresponding relay bundle (for example, OSGi service) within the range defined in the file, and registers it. To do. Note that there is one relay basic bundle, and communication relay processing is performed using the relay bundle instead of the AP bundle (service provider).

APバンドル11〜13は、サービス事業者が作成するバンドルであって、外部APと対をなすソフトウェアであり、サービス毎に設けられる。各APバンドルには、サービスを定義するためのサービス定義ファイルが格納される。サービス定義ファイルには、当該サービスで用いられるルート情報(例えば、HTTP→UPnPなどの中継先プロトコル)、当該サービスの利用が許可される機器に関するパーミッション情報(サービス事業者に許可されたパーミッションのみ記述される)、その他サービスの名称や説明文などの情報などの中継に関する設定情報が格納される。なお、APバンドルは、通常、中継基本バンドル14に初期化の要求だけを行い、その他の処理は行わない。   The AP bundles 11 to 13 are bundles created by a service provider, and are software that is paired with an external AP, and are provided for each service. Each AP bundle stores a service definition file for defining a service. In the service definition file, route information used for the service (for example, a relay destination protocol such as HTTP → UPnP), permission information related to devices that are permitted to use the service (only permissions permitted by the service provider are described) In addition, setting information related to relay such as information such as the name of the other service and an explanation is stored. Note that the AP bundle normally makes only a request for initialization to the relay basic bundle 14 and does not perform any other processing.

以上説明したゲートウェイ装置1は、例えば、CPUと、メモリと、HDD等の外部記憶装置と、入力装置と、出力装置とを備えた汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPUがメモリ上にロードされたゲートウェイ装置1のプログラム(バンドル)を実行することにより、ゲートウェイ装置1の各機能が実現される。また、ゲートウェイ装置1のプログラム(バンドル)は、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD−ROMなどのコンピュータ読取り可能な記録媒体に記憶することも、ネットワークを介して配信することもできる。   As the gateway device 1 described above, for example, a general-purpose computer system including a CPU, a memory, an external storage device such as an HDD, an input device, and an output device can be used. In this computer system, each function of the gateway device 1 is realized by the CPU executing the program (bundle) of the gateway device 1 loaded on the memory. The program (bundle) of the gateway device 1 can be stored in a computer-readable recording medium such as a hard disk, a flexible disk, a CD-ROM, an MO, a DVD-ROM, or can be distributed via a network.

次に、本実施形態のゲートウェイ装置1の処理について説明する。   Next, the process of the gateway apparatus 1 of this embodiment is demonstrated.

まず、ゲートウェイ装置1の初期処理について説明する。新たなAPバンドルと、当該APバンドルに対応する中継バンドルおよびドライババンドルがゲートウェイ装置1に登録(ダウンロード)されると、中継基本バンドルは初期処理を行う。中継基本バンドルは、APバンドルに格納されたサービス定義ファイルに基づいて、対応する中継バンドルからのコールバックを受け付けるためのリスナ登録と、対応する中継バンドルの初期化とを行う。   First, initial processing of the gateway device 1 will be described. When a new AP bundle and a relay bundle and driver bundle corresponding to the AP bundle are registered (downloaded) in the gateway device 1, the relay basic bundle performs an initial process. Based on the service definition file stored in the AP bundle, the relay basic bundle performs listener registration for receiving a callback from the corresponding relay bundle and initializes the corresponding relay bundle.

中継バンドルは、中継基本バンドルからの初期化指示により、機器が備える外部APへの接続をドライババンドルに要求し、また、必要に応じてドライババンドルからのコールバックを受けるための処理を行う。   The relay bundle requests the driver bundle to connect to an external AP included in the device in response to an initialization instruction from the relay basic bundle, and performs processing for receiving a callback from the driver bundle as necessary.

図2は、OSGiにおける初期処理の一例を示すシーケンスである。   FIG. 2 is a sequence showing an example of initial processing in OSGi.

新たに登録されたAPバンドルは、起動時に、中継基本バンドルのRelayManagerの機能を用いて、中継機能の初期化を要求する。これにより、中継基本バンドルは、APバンドル内のサービス定義ファイルを読み出し、RelayAdmin、Notifyの各OSGiサービスの登録を行う。   The newly registered AP bundle requests initialization of the relay function by using the relay manager function of the relay basic bundle at the time of activation. As a result, the relay basic bundle reads the service definition file in the AP bundle and registers each of the RelayAdmin and Notify OSGi services.

具体的には、APバンドルは、RelayManagerの生成指示を中継基本バンドルに送信し(S11)、中継基本バンドルは、APバンドルに格納されたサービス定義ファイルを読み出し、RelayManagerを生成する(S12)。RelayManagerは、APバンドルが中継基本バンドルに初期化を依頼するインタフェースである。   Specifically, the AP bundle transmits an instruction to generate RelayManager to the relay basic bundle (S11), and the relay basic bundle reads the service definition file stored in the AP bundle and generates RelayManager (S12). RelayManager is an interface by which an AP bundle requests initialization to a relay basic bundle.

中継基本バンドルにRelayManagerが生成されると、APバンドルは、RelayManager のinit()メソッドを呼び出して、中継基本バンドルの初期化を行う(S13)。これにより、RelayManager は、APバンドルのサービス定義ファイルのサービス事業者識別子、中継種別のリスト、ルートクラスのリストなどの設定情報に基づき、ルート情報の設定、RelayAdminの登録(S14)、およびNotifyの登録(S17、S20)を行う。   When the RelayManager is generated in the relay basic bundle, the AP bundle calls the init () method of the RelayManager to initialize the relay basic bundle (S13). Thereby, RelayManager sets route information, RelayAdmin registration (S14), and Notify registration based on the setting information such as the service provider identifier, relay type list, route class list, etc. in the service definition file of the AP bundle. (S17, S20) is performed.

RelayAdminの登録(S14)では、サービスプロパティにAPバンドルのサービス事業者識別子、その他のAPバンドルのサービス定義ファイルの内容の一部を設定する。RelayAdminは、APバンドルに関する情報を中継バンドルが取得するためのインタフェースである。   In RelayAdmin registration (S14), the service provider identifier of the AP bundle and a part of the contents of the service definition file of other AP bundle are set in the service property. RelayAdmin is an interface for the relay bundle to acquire information related to the AP bundle.

登録されたRelayAdminは、対応する中継バンドル(図示する例では、中継バンドル1と中継バンドル2)の各々に、登録通知を送信する(S15、S19)。これにより、中継バンドルは、必要に応じて、ドライババンドルの初期化に必要な情報を取得してドライババンドルを初期化し、また、対応する外部APへの接続情報を取得して外部APへの接続を行うようにドライババンドルに指示する(S16)。   The registered RelayAdmin transmits a registration notification to each of the corresponding relay bundles (in the illustrated example, the relay bundle 1 and the relay bundle 2) (S15, S19). As a result, the relay bundle acquires information necessary for initializing the driver bundle and initializes the driver bundle as necessary, and also acquires connection information to the corresponding external AP and connects to the external AP. The driver bundle is instructed to perform (S16).

Notifyの登録(S17、S20)では、APバンドルのサービス定義ファイルからサービス事業者と中継種別のリストを読み出し、サービスプロパティに設定する。Notifyは、中継バンドルが中継基本バンドルにノーティファイ中継を依頼するインタフェースである。また、中継バンドルがノーティファイ中継の必要性を判断するためにノーティファイの登録を監視しているインタフェースでもある。   In Notify registration (S17, S20), a list of service providers and relay types is read from the service definition file of the AP bundle and set in the service property. Notify is an interface in which the relay bundle requests the relay basic bundle to perform notify relay. The relay bundle is also an interface that monitors registration of notify in order to determine the necessity of notify relay.

登録されたNotify は、対応する中継バンドル(図示する例では、中継バンドル1と中継バンドル2)の各々に、登録通知を送信する(S18、S21)。中継バンドルは、Notifyが登録されると、自分が処理するべきノーティファイ中継種別をサービスプロパティに持つサービスをトラッキングし、ノーティファイ中継を開始する。   The registered Notify transmits a registration notification to each of the corresponding relay bundles (in the illustrated example, the relay bundle 1 and the relay bundle 2) (S18, S21). When Notify is registered, the relay bundle tracks a service having a notify relay type to be processed as a service property, and starts notify relay.

また、中継バンドルは、ドライババンドルに対して機器からの通知や、外部APからの要求を受信できるように設定する場合には、APバンドルのBundeContextやAccessControlContextを使用し、APバンドルのサービス定義ファイルに設定されているパーミッション情報の範囲内で動作するようにする(S22)。   In addition, when the relay bundle is set so that it can receive notifications from devices and requests from external APs to the driver bundle, it uses the BundeContext and AccessControlContext of the AP bundle, and in the service definition file of the AP bundle Operate within the range of the set permission information (S22).

このように、中継バンドルは、RelayAdminおよびNotifyが登録されると、外部APへの接続をドライババンドルに依頼したり、必要に応じて、ドライババンドルからのコールバックを受けるためのサービスをAPバンドルのBundleContextおよびAccessControlContextを用いて登録する。   In this way, when RelayAdmin and Notify are registered, the relay bundle requests the driver bundle to connect to the external AP, and if necessary, provides a service for receiving a callback from the driver bundle. Register using BundleContext and AccessControlContext.

次に、本実施形態の中継処理について説明する。   Next, the relay process of this embodiment will be described.

中継処理は、中継バンドルからの呼び出し(ノーティファイ中継)を、別の中継バンドルへの呼び出し(アクション中継)に変換し、応答がある場合には、アクション中継の戻り値をノーティファイ中継の戻り値として、元の中継バンドルに返す一連の処理である。   Relay processing converts a call from a relay bundle (notify relay) into a call to another relay bundle (action relay), and if there is a response, the return value of action relay is the return value of notify relay As a series of processes to be returned to the original relay bundle.

図3は、OSGiにおける中継処理の一例を示すシーケンスである。   FIG. 3 is a sequence showing an example of relay processing in OSGi.

ドライババンドルは、外部APからの通信または機器からの通知などのイベントを受け取った場合、対応する中継バンドルを呼び出す(S41)。ここでは、ドライババンドルは、外部APからのイベント受け取り、中継バンドル1を呼び出すものとする。中継バンドル1は、当該イベントを受け取るべきAPバンドルを選択し、当該APバンドルが登録されている中継基本バンドルのNotify1を呼び出し、イベントを中継する(S42)。このノーティファイ中継において、中継バンドル1は、必要に応じて送信先ルートクラス・ルートセッション、および、送信元ルートクラス・ルートセッションを含めることができる。   When receiving an event such as communication from an external AP or notification from a device, the driver bundle calls the corresponding relay bundle (S41). Here, it is assumed that the driver bundle receives an event from the external AP and calls the relay bundle 1. The relay bundle 1 selects an AP bundle that should receive the event, calls Notify1 of the relay basic bundle in which the AP bundle is registered, and relays the event (S42). In this notify relay, the relay bundle 1 can include a destination route class / route session and a source route class / route session as necessary.

Notify1は、イベントのノーティファイ中継を受けると、送信先ルートクラス(中継バンドル)を決定するルーティング処理を行う(S43)。Notify1は、例えば、APバンドル内のサービス定義ファイルに記載されたルート情報から、中継種別の先頭部分が最も長く一致するエントリを選択し、選択したルートクラスを送信先として決定する。なお、ノーティファイ中継に送信先ルートクラスが指定されている場合は、指定されたルートクラスを送信先として決定する。   When Notify 1 receives the notify relay of the event, it performs routing processing for determining a destination route class (relay bundle) (S 43). For example, Notify 1 selects the entry having the longest matching head part of the relay type from the route information described in the service definition file in the AP bundle, and determines the selected route class as the transmission destination. When a destination route class is designated for notify relay, the designated route class is determined as a destination.

具体的には、ある要求に対する応答などルートクラスが明確である場合、中継バンドルは送信先ルートクラスをノーティファイ中継の要求データに送信先ルートクラスを含めるためそれを利用する。要求データに送信先ルートクラスがない場合、例えばサービス定義ファイルに以下の様に記載されているとき、中継種別がA.UPnP1.0-CP.InvokeActionの場合、送信先ルートクラスとしてupnpcustomを選択し、中継種別がA.UPnP1.0-CP.GetDeviceDescriptionの場合は送信先ルートクラスとしてupnpcpを選択する。なお、中継バンドルは、起動時に自らが処理可能なルートクラスを自らのオブジェクトのプロパティに登録しておき、それを元に中継バンドルを選択する。   Specifically, when a route class such as a response to a certain request is clear, the relay bundle uses the destination route class to include the destination route class in the request data of the notify relay. If there is no destination route class in the request data, for example, if it is described as follows in the service definition file, if the relay type is A.UPnP1.0-CP.InvokeAction, select upnpcustom as the destination route class When the relay type is A.UPnP1.0-CP.GetDeviceDescription, select upnpcp as the destination route class. The relay bundle registers a route class that can be processed by itself at the time of activation in the property of its own object, and selects a relay bundle based on that.

<例:サービス定義ファイルの記述>
application.relay.route.A.UPnP1.0-CP.=upnpcp
application.relay.route.A.UPnP1.0-CP.InvokeAction=upnpcustom
Notify1は、S43で決定した送信先ルートクラスの中継バンドルを、APバンドルのパーミッション情報を用いて呼び出す、アクション中継を行う(S44)。ここでは、中継バンドル2を呼び出すものとする。このとき、ノーティファイ中継で送信先ルートセッション、および、送信元ルートクラス・ルートセッションが指定されている場合、これらも引き渡す。
<Example: Description of service definition file>
application.relay.route.A.UPnP1.0-CP. = upnpcp
application.relay.route.A.UPnP1.0-CP.InvokeAction = upnpcustom
Notify 1 performs action relay that calls the relay bundle of the destination route class determined in S 43 using the permission information of the AP bundle (S 44). Here, it is assumed that the relay bundle 2 is called. At this time, if the destination route session and the source route class / route session are specified in the notify relay, these are also delivered.

中継バンドル2は、APバンドルのパーミッション情報の範囲内で、ドライババンドルの機能を用いてアクションを実行し、機器の制御または外部APへの通知を行う(S45)。   The relay bundle 2 executes an action using the function of the driver bundle within the scope of the permission information of the AP bundle, and controls the device or notifies the external AP (S45).

具体的には、例えばパーミッション情報として該当するドライババンドルの利用権限が与えられていない場合には、制御を失敗させる。その他、ドライババンドルに規定されたパーミッション(Javaパーミッション)がすべてAPバンドルのパーミッション情報に記載されている場合のみ制御が成功する。   Specifically, for example, when the right to use the corresponding driver bundle is not given as permission information, the control is failed. In addition, the control is successful only when all the permissions (Java permissions) specified in the driver bundle are described in the permission information of the AP bundle.

なお、S41で入力されたイベントが応答を要求する応答付の場合には、S45のアクションの応答データを、逆のルートでノーティファイ中継の送信元の中継バンドル1、外部APまたは機器に返す。図示する例では、機器の応答データは、中継バンドル2を介してNotify2に中継され(S46、S47)、Notify2は送信先ルートクラス(中継バンドル1)を決定し(S48)、中継バンドル1から外部APに送信される(S49、S50)。   If the event input in S41 is a response requesting a response, the response data of the action in S45 is returned to the relay bundle 1, the external AP, or the device that is the transmission source of the notify relay through the reverse route. In the illustrated example, the response data of the device is relayed to Notify 2 via the relay bundle 2 (S46, S47), and the Notify 2 determines the destination route class (relay bundle 1) (S48), It is transmitted to the AP (S49, S50).

以上説明した本実施形態では、ルート情報およびパーミッション情報が定義されたサービス定義ファイルをゲートウェイ装置1に配信するとともに、中継バンドルによってAPI(Application Program Interface)を統一する。これにより、ゲートウェイ装置の提供者(例えば、通信事業者など)は、サービス事業者から提供されるAPバンドルに記述されたサービス定義ファイルの情報のみを静的に読み出し、チェック・検証するだけで、新たなサービスを追加することができる。すなわち新サービス追加時の動作検証コストを低減することができる。   In the present embodiment described above, a service definition file in which route information and permission information are defined is distributed to the gateway device 1, and an API (Application Program Interface) is unified by a relay bundle. As a result, the provider of the gateway device (for example, a telecommunications carrier or the like) statically reads only the information of the service definition file described in the AP bundle provided by the service provider, and checks and verifies it. New services can be added. That is, the operation verification cost when adding a new service can be reduced.

従来技術では、APバンドルの代わりにゲートウェイ装置にダウンロードされるAPをチェックする必要があるが、APは通常汎用的なプログラム言語で記載されるため、記述された内容に問題がないかを静的に読み出しチェックするだけでは、ゲートウェイ装置の提供者にとって不都合があるかどうか判断できない場合が多く、実際には新たなサービスのAPを導入する前に、実際にAPを動作させた試験を行う必要があり、期間的、金銭的なコストが大きい。これに対し、本実施形態では、サービス定義ファイルの情報のみを検証するだけで、新たなサービスを追加することができため、動作検証コストを低減することができる。   In the prior art, it is necessary to check the AP downloaded to the gateway device instead of the AP bundle. However, since the AP is usually written in a general-purpose program language, whether there is no problem in the written contents is static. In many cases, it is not possible to determine whether there is any inconvenience for the provider of the gateway device, and it is necessary to actually test the AP before introducing a new service AP. Yes, there is a large periodical and monetary cost. On the other hand, in the present embodiment, a new service can be added only by verifying the information of the service definition file, so that the operation verification cost can be reduced.

また、本実施形態では、サービス事業者は、サービスをゲートウェイ装置1のAPバンドルと、機器の外部APとで実現する。これにより、外部APは複数の通信プロトコルを直接制御する必要はなく、サービス事業者が慣れている(開発コストが小さい)1つの通信プロトコル(例えばHTTP等)で、各機器を利用することができる。すなわち、本実施形態では、従来技術における、サービス事業者が各通信プロトコルおよびそのドライバプログラムの挙動を把握してAPを作成することによる、開発コストが大きいという課題を解決することができる。   In this embodiment, the service provider implements the service with the AP bundle of the gateway device 1 and the external AP of the device. As a result, the external AP does not need to directly control a plurality of communication protocols, and each device can be used with a single communication protocol (such as HTTP) that is familiar to service providers (low development cost). . That is, in this embodiment, the problem that the development cost is high due to the service provider grasping the behavior of each communication protocol and its driver program and creating the AP in the prior art can be solved.

また、本実施形態では、エンドユーザは、通信プロトコル毎のドライババンドルの単位ではなく、サービス毎のAPバンドルによって許可される機器もしくは外部APのみが通信するよう制限することができる。   Further, in this embodiment, the end user can restrict communication only by devices or external APs that are permitted by the AP bundle for each service, not by the unit of the driver bundle for each communication protocol.

また、本実施形態では、将来新たな通信プロトコルや、それを利用するサービスが登場した場合でも、当該通信プロトコルまたはサービスに対応するドライババンドル、中継バンドル、APバンドルをゲートウェイ装置に配信することで、同じ枠組みで対応可能であり、将来的な拡張が容易である。   Further, in this embodiment, even when a new communication protocol or a service using the same appears in the future, by distributing a driver bundle, a relay bundle, and an AP bundle corresponding to the communication protocol or service to the gateway device, It can be handled in the same framework and is easy to expand in the future.

なお、本発明は上記実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、中継バンドルが処理する内容を、機能ごとに文字列(中継種別)で定義し、中継種別の単位で中継を行うこともできる。例えば、UPnP機器のDeviceDescriptionは取得させるが、UPnPのActionは送信させない等、独自に定義した中継種別単位で記述することが考えられる。   In addition, this invention is not limited to the said embodiment, Many deformation | transformation are possible within the range of the summary. For example, the contents processed by the relay bundle can be defined by a character string (relay type) for each function, and relaying can be performed in units of the relay type. For example, the DeviceDescription of UPnP devices can be acquired, but UPnP Actions can not be transmitted.

また、外部APの認証情報をAPバンドルに格納する(例えばダイジェスト認証のID/Pass、証明書 等)ことで、外部APとAPバンドル(サービス)とを1対1に対応させることとしてもよい。   In addition, external AP authentication information may be stored in the AP bundle (for example, digest authentication ID / Pass, certificate, etc.) so that the external AP and the AP bundle (service) have a one-to-one correspondence.

また、ユーザインタフェースを設け、ユーザからの入力により、APバンドルのパーミッション情報を動的に変更し、例えば中継対象を機器個体単位で追加削除することができるようにしてもよい。これにより、機器単位でのアクセスコントロールが可能になる。   In addition, a user interface may be provided, and permission information of the AP bundle may be dynamically changed based on input from the user, and for example, a relay target may be added or deleted in units of individual devices. As a result, access control in units of devices becomes possible.

また、上記実施形態では、OSGiの技術を用いた実装例について説明したが、本発明はこれに限定されるものではなく、様々な技術に適用することができる。   In the above-described embodiment, the implementation example using the OSGi technology has been described. However, the present invention is not limited to this, and can be applied to various technologies.

1 :ゲートウェイ装置
11、12、13:APバンドル
14:中継基本バンドル
15、16、17:中継バンドル
18、19、20、21:ドライババンドル
3 :配信サーバ
41、42、43、44:機器
21:再生部
1: Gateway device 11, 12, 13: AP bundle 14: Relay basic bundle 15, 16, 17: Relay bundle 18, 19, 20, 21: Driver bundle 3: Distribution server 41, 42, 43, 44: Device 21: Playback section

Claims (2)

複数のサービス事業者のサービスが動作するゲートウェイ装置であって、
前記サービスは、当該サービスで用いられるルート情報と、当該サービスの利用が許可される機器に関する許可情報とを含むサービス定義情報、及び、機器にインストールされた外部アプリケーションにより構成され、
サービス毎に設けられ、前記サービス定義情報を記憶する記憶部と、
通信プロトコル毎に設けられ、前記外部アプリケーションと当該通信プロトコルでデータを送受信するドライバ部と、
前記ドライバ部が対応する通信プロトコルのインタフェースで送受信されたデータを共通インタフェースに変換する中継部と、
前記中継部から共通インタフェースに変換されたデータを受け付け、対応するサービスのサービス定義情報を前記記憶部から読み出し、当該サービス定義情報のルート情報および許可情報に基づいて前記データを中継する中継基本部と、を有すること
を特徴とするゲートウェイ装置。
A gateway device that operates services of a plurality of service providers,
The service includes route information used in the service, service definition information including permission information regarding a device permitted to use the service , and an external application installed in the device.
A storage unit provided for each service and storing the service definition information;
A driver unit provided for each communication protocol, for transmitting and receiving data with the external application and the communication protocol;
A relay unit that converts data transmitted / received through an interface of a communication protocol supported by the driver unit into a common interface;
A relay basic unit that receives data converted into a common interface from the relay unit, reads service definition information of a corresponding service from the storage unit, and relays the data based on route information and permission information of the service definition information; The gateway apparatus characterized by having.
複数のサービス事業者のサービスが動作するゲートウェイ装置が行う通信方法であって、
前記サービスは、当該サービスで用いられるルート情報と、当該サービスの利用が許可される機器に関する許可情報とを含むサービス定義情報、及び、機器にインストールされた外部アプリケーションにより構成され、
前記ゲートウェイ装置は、
サービス毎に設けられ、前記サービス定義情報を記憶する記憶部を備え、
前記外部アプリケーションと、所定の通信プロトコルでデータを送受信する通信ステップと、
前記通信ステップで所定の通信プロトコルのインタフェースで送受信されたデータを共通インタフェースに変換する変換ステップと、
前記共通インタフェースに変換されたデータを受け付け、対応するサービスのサービス定義情報を前記記憶部から読み出し、当該サービス定義情報のルート情報および許可情報に基づいて前記データを中継する中継ステップと、を行うこと
を特徴とする通信方法。
A communication method performed by a gateway device that operates services of a plurality of service providers,
The service includes route information used in the service, service definition information including permission information regarding a device permitted to use the service, and an external application installed in the device.
The gateway device is
Provided for each service includes a storage unit that stores the service definition information,
A communication step of transmitting and receiving data with the external application using a predetermined communication protocol;
A conversion step of converting the data transmitted and received at the interface of a predetermined communication protocol into a common interface in the communication step;
Receiving the data converted into the common interface, reading service definition information of the corresponding service from the storage unit, and performing a relay step of relaying the data based on route information and permission information of the service definition information A communication method characterized by the above.
JP2011112182A 2011-05-19 2011-05-19 Gateway apparatus and communication method Active JP5478554B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011112182A JP5478554B2 (en) 2011-05-19 2011-05-19 Gateway apparatus and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011112182A JP5478554B2 (en) 2011-05-19 2011-05-19 Gateway apparatus and communication method

Publications (2)

Publication Number Publication Date
JP2012244382A JP2012244382A (en) 2012-12-10
JP5478554B2 true JP5478554B2 (en) 2014-04-23

Family

ID=47465622

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011112182A Active JP5478554B2 (en) 2011-05-19 2011-05-19 Gateway apparatus and communication method

Country Status (1)

Country Link
JP (1) JP5478554B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5941873B2 (en) * 2013-05-29 2016-06-29 西日本電信電話株式会社 Web server system, Web server cooperation method, and program
US20170187835A1 (en) * 2015-12-26 2017-06-29 Lee Booi Lim Technologies for unified and modular gateway abstraction
JP7279344B2 (en) * 2018-11-27 2023-05-23 株式会社リコー Intermediary device, remote device management system, communication method and program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002196990A (en) * 2000-12-27 2002-07-12 Kddi Corp Service Discovery Protocol Conversion Gateway
JP2003078570A (en) * 2001-09-03 2003-03-14 Fujitsu Ltd Service providing method, relay device and service providing device
JP2003256299A (en) * 2002-03-01 2003-09-10 Nippon Telegr & Teleph Corp <Ntt> Network device management method
GB0413334D0 (en) * 2004-06-15 2004-07-21 Koninkl Philips Electronics Nv Gateway for a local networking system
JP2008015954A (en) * 2006-07-10 2008-01-24 Hitachi Ltd Gateway device and system
JP4889575B2 (en) * 2007-06-11 2012-03-07 日本電信電話株式会社 Access permission setting method, access permission setting device, and access permission setting program
JP2009027245A (en) * 2007-07-17 2009-02-05 Fujitsu Ten Ltd Conversion unit, method and program

Also Published As

Publication number Publication date
JP2012244382A (en) 2012-12-10

Similar Documents

Publication Publication Date Title
JP5175915B2 (en) Information processing apparatus and program
US8930555B2 (en) Extending functionality of web-based applications
US10044572B1 (en) Dynamic addition of network function services
US20110252456A1 (en) Personal information exchanging system, personal information providing apparatus, data processing method therefor, and computer program therefor
US9497195B2 (en) System, method of disclosing information, and apparatus
CN114338650B (en) File transmission method, device, electronic equipment and readable storage medium
KR102407334B1 (en) Gateway apparatus and operating method thereof
WO2012081404A1 (en) Authentication system, authentication server, service provision server, authentication method, and computer-readable recording medium
JP6018316B2 (en) Terminal authentication registration system, terminal authentication registration method and program
JP2014171211A (en) Information processing system
JP4286798B2 (en) Method for installing driver file on hard drive, computer and computer-readable storage medium
JP5478554B2 (en) Gateway apparatus and communication method
JP5626919B2 (en) Network system, authentication cooperation apparatus, authentication cooperation method, and program
CN112270000B (en) Cryptographic service providing method, device and computer readable storage medium
WO2001057686A1 (en) Communication system, relay device, service providing device, relaying method, service providing method, and program product
JP5465621B2 (en) Stream data distribution system and method
JP5091003B2 (en) Information processing system, information processing method, program, and recording medium
US20140222905A1 (en) Control device, and method for transfer control
CN112752262B (en) Networking method of household electrical appliance, household electrical appliance and terminal equipment
JP2007140975A (en) Service providing system, linkage information providing server, authentication server, service providing server, service providing method, and program
CN117978445B (en) A method and system for performing authentication control processing based on a gateway
JP4902633B2 (en) Web system and request processing method
JP7137078B2 (en) Adaptation device
CN120803892A (en) Data integration method, system, device, storage medium, and program product
CN117971339A (en) A front-end system based on qiankun framework

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130702

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130815

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140210

R150 Certificate of patent or registration of utility model

Ref document number: 5478554

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350