JP2019201287A - Information processing apparatus and control method of the same - Google Patents
Information processing apparatus and control method of the same Download PDFInfo
- Publication number
- JP2019201287A JP2019201287A JP2018093979A JP2018093979A JP2019201287A JP 2019201287 A JP2019201287 A JP 2019201287A JP 2018093979 A JP2018093979 A JP 2018093979A JP 2018093979 A JP2018093979 A JP 2018093979A JP 2019201287 A JP2019201287 A JP 2019201287A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- request
- received
- sensor
- information processing
- 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.)
- Pending
Links
Images
Landscapes
- Telephonic Communication Services (AREA)
Abstract
Description
本発明は、データを転送する情報処理装置及びその制御方法に関する。 The present invention relates to an information processing apparatus for transferring data and a control method therefor.
ネットワークに参加している装置間の通信の標準化を目的としたOCF(Open Connectivity Foundation)という団体がある。OCFにより標準化された仕様に準拠した技術(以降、OCF技術)を利用することにより、装置間でリソースとして表現されたデータの取得や操作を行うことが可能になる。リソースとは、物理的に存在するセンサーや機器を含むモノ(温度センサー、ライトなど)と、モノの振る舞い(ライトの点灯・消灯など)を含む概念である。 There is an organization called OCF (Open Connectivity Foundation) that aims to standardize communication between devices participating in a network. By using a technology compliant with specifications standardized by the OCF (hereinafter referred to as the OCF technology), it becomes possible to acquire and manipulate data expressed as resources between devices. A resource is a concept that includes things (such as temperature sensors and lights) that include physically existing sensors and devices, and behaviors (such as lighting and extinguishing of lights).
リソースを管理する管理装置がリソースと通信するために、RFC7252に規定されたCoAP(Constrained Application Program)を用いることができる。CoAPでは、リソースに対して監視要求(Observe)を行うことにより、リソースの発するセンサーデータの値に変化があったときに、通知(Notify)を受け取ることができる(特許文献1)。また、この通知にはセンサーデータのMax−ageが含まれる。Max−ageとは、データの鮮度を保証する時間、即ち、通知されたデータが最新のものとして使用できる有効期限である。 A CoAP (Constrained Application Program) defined in RFC7252 can be used for a management apparatus that manages resources to communicate with resources. In CoAP, a notification (Notify) can be received when there is a change in the value of sensor data issued by a resource by making a monitoring request (Observe) to the resource (Patent Document 1). In addition, this notification includes Max-age of sensor data. Max-age is a time for guaranteeing the freshness of data, that is, an expiration date for which the notified data can be used as the latest data.
また、リソースからの通知を特定のデータ処理サーバに転送して、データ処理サーバにおいてリソースの解析を行う場合、転送制御を行うための技術としてOpenFlow(登録商標)を利用することができる。OpenFlowでは、データの中継装置(OpenFlowスイッチ)と、それを制御する制御装置(OpenFlowコントローラ)を分離して設けることにより、データの転送制御を一元的に管理することが可能である。 Also, when a notification from a resource is transferred to a specific data processing server and the resource is analyzed in the data processing server, OpenFlow (registered trademark) can be used as a technique for performing transfer control. In OpenFlow, data transfer control can be centrally managed by separately providing a data relay device (OpenFlow switch) and a control device (OpenFlow controller) for controlling the data relay device.
管理装置がセンサー装置のリソースに対して監視要求を行い、リソースからの通知パケットを中継装置がデータ処理サーバに転送する場合を考える。この場合、中継装置は、転送規則に従って宛先を変更するため、リソースからの通知パケットをすべてデータ処理サーバへ転送する。結果、監視要求を行った管理装置は通知パケットを受け取らないこととなる。このため、管理装置は通知パケットに含まれるデータのMax−ageを知ることができず、再度監視要求を行うタイミングを失ってしまう。したがって、例えば、センサーリソースがリセットされて監視(Observed)状態を失った場合、管理装置は監視要求を行うことができず、センサーリソースの監視状態を復帰させることができない。 Consider a case where the management device makes a monitoring request to the resource of the sensor device, and the relay device transfers the notification packet from the resource to the data processing server. In this case, the relay device transfers all notification packets from the resource to the data processing server in order to change the destination according to the transfer rule. As a result, the management device that has made the monitoring request does not receive the notification packet. For this reason, the management apparatus cannot know the Max-age of the data included in the notification packet, and loses the timing for making the monitoring request again. Therefore, for example, when the sensor resource is reset and loses the monitoring (Observed) state, the management apparatus cannot make a monitoring request and cannot return the monitoring state of the sensor resource.
本発明は、転送規則に従ってパケットの宛先を変更して送信する情報処理装置において、受信したパケットにおけるデータの有効期限を、必要に応じて変更前の宛先にも通知可能にすることを目的とする。 An object of the present invention is to enable an information processing apparatus that changes the destination of a packet according to a transfer rule to notify the expiration date of data in the received packet to the destination before the change as necessary. .
本発明の一態様による情報処理装置は、以下の構成を備える。すなわち、
要求を中継した先のリソースから前記要求に関連するパケットを受信する受信手段と、
転送規則に従うことにより、前記受信手段により受信されたパケットが示す第1の宛先とは異なる第2の宛先へ前記受信されたパケットを送信する第1の送信手段と、
前記受信手段により受信された前記要求に関連するパケットを、前記要求の送信元へ送信するか否かを判定する判定手段と、
前記判定手段により送信すると判定された場合に、前記要求に関連するパケットを前記第1の宛先へ送信する第2の送信手段と、を備える。
An information processing apparatus according to an aspect of the present invention includes the following configuration. That is,
Receiving means for receiving a packet related to the request from a resource to which the request is relayed;
First transmission means for transmitting the received packet to a second destination different from the first destination indicated by the packet received by the reception means by following a transfer rule;
Determining means for determining whether or not to transmit a packet related to the request received by the receiving means to a transmission source of the request;
And a second transmission unit configured to transmit a packet related to the request to the first destination when it is determined to be transmitted by the determination unit.
本発明によれば、転送規則に従ってパケットの宛先を変更して送信する情報処理装置において、受信したパケットにおけるデータの有効期限を必要に応じて変更前の宛先に通知することが可能となる。 According to the present invention, in an information processing apparatus that changes and transmits a packet destination according to a transfer rule, it is possible to notify the destination before the change of the data expiration date in the received packet as necessary.
本発明の実施形態について、図面を参照して以下に説明する。なお、以下では、理解容易のためにリソースとしてセンサー装置、中継装置としてIoT−GW、管理装置として機器管理サーバ、リソースからのデータを処理する情報処理装置としてセンサーデータ処理サーバを用いて説明する。ただし、本発明はこれらの構成に限られるものではない。例えば、リソースはセンサー装置に限られない。また、以下の実施形態で説明する特徴の組み合わせの全てが本発明に必須のものとは限らない。 Embodiments of the present invention will be described below with reference to the drawings. In the following description, for ease of understanding, a sensor device is used as a resource, an IoT-GW is used as a relay device, a device management server is used as a management device, and a sensor data processing server is used as an information processing device that processes data from the resource. However, the present invention is not limited to these configurations. For example, the resource is not limited to the sensor device. In addition, not all combinations of features described in the following embodiments are essential to the present invention.
<第1実施形態>
図1は、第1実施形態の情報処理システム100の構成を示す。情報処理システム100は、センサー装置103、104、105及び106を有するWSN108、LAN107、機器管理サーバ101、IoT−GW102、センサーデータ処理サーバ109を含む。さらに、情報処理システム100は、WAN110を介してLAN107に接続するセンサーデータ処理サーバ111を含む。なお、WSNはWireless Sensor Network、WANはWide Area Network、LANはLocal Area Networkである。
<First Embodiment>
FIG. 1 shows a configuration of an
IoT−GW102は、WSN108とLAN107の両方に接続し、中継装置として機能する情報処理装置である。IoT−GW102とLAN107との接続は、例えばEthernet(登録商標)などの有線接続であってもよいし、Wi−Fi(登録商標)などの無線接続であってもよい。IoT−GW102は、LAN107を介して機器管理サーバ101及びセンサーデータ処理サーバ109と接続してIPv6通信を実行する。また、LAN107とWAN110を介してセンサーデータ処理サーバ111と接続してIPv6通信を実行する。さらにIoT−GW102はOpenFlow(登録商標)における、データの転送装置(OpenFlowスイッチ)の機能を有する。
The IoT-GW 102 is an information processing apparatus that is connected to both the WSN 108 and the
センサーデータ処理サーバ111は一般にクラウドと呼ばれる仮想化プラットフォーム上にあるサーバであってもよい。本実施形態において、IoT−GW102は、ゲートウェイとしての機能だけでなく、ネットワークカメラや、プリンタとしての機能を有していても良く、またIoT−GW102がセンサーを有するような構成を用いても良い。さらに、IoT−GW102は、その他の各種処理を行うアプリケーションを実行することが可能なPCやスマートフォン、ルータなどであっても良い。またIPv6通信のほかIPv4による通信を行ってもよい。なお、本実施形態ではIoT−GW102がOpenFlowスイッチの機能を有する構成としたが、LAN107に接続する別の機器がOpenFlowスイッチの機能を有してもよい。
The sensor
機器管理サーバ101は、情報処理システム100を構成する各機器やセンサー装置について、システムへの接続および設定や状態の管理を行うサーバである。また機器管理サーバ101はIoT−GW102の転送規則を制御する制御装置(OpenFlowコントローラ)の機能を有する。機器管理サーバ101はフローエントリと呼ばれる転送規則をIoT−GW102に送信する。フローエントリを受信したIoT−GW102はそれをフローテーブルに格納し、これを参照することでデータの転送処理を行う。フローエントリには、受信したデータを転送するか否かを判断するための条件(マッチング規則)と、受信データがマッチング規則に適合した場合に実施される処理群(アクションリスト)が含まれている。また、フローエントリには、フロー情報自体の有効期限(転送規則の有効期限)、フロー情報(マッチング規則とアクションリスト)が一定時間参照されなかった場合に失効するアイドルタイムアウト時間が含まれている。さらに、フローエントリには、フローエントリが何回参照されたかを示すカウンタ、フローエントリを適用する優先順位を示す優先度等の情報、が含まれている。なお、本実施形態では機器管理サーバ101がOpenFlowコントローラの機能を有する構成としたが、LAN107に接続する他の機器がOpenFlowコントローラの機能を有してもよい。例えば、OpenFlowスイッチの機能を有するIoT−GW102がOpenFlowコントローラの機能を有してもよい。
The
センサーデータ処理サーバ109とセンサーデータ処理サーバ111は、データ処理を行う情報処理装置であって、情報処理システム内のセンサー装置が送信するセンサーデータの収集、蓄積、解析等を実行する。
The sensor
IoT−GW102とセンサー装置103〜106は、無線PAN通信でメッシュネットワークであるWSN108を構築する。PANは、Personal Area Networkである。WSN108はメッシュ型のネットワークトポロジーに限定されるものではなく、IoT−GW102を中心としたスター型のようなネットワークであってもよい。なお、IoT−GW102とセンサー装置103〜106以外の他の装置がWSN108に接続していてもよい。無線PANの通信規格としては、例えば、Bluetooth(登録商標)、Zigbee(登録商標)、及びWi−SUN(登録商標)が挙げられる。WSN108の通信では、これらの中のいずれかの無線PAN規格のプロトコルを使用するが、その上位のネットワーク層のプロトコルには6LoWPANを使用する。6LoWPANとは、IPv6 over Low-Power Wireless Personal Area Networkである。
The IoT-
センサー装置103〜106のそれぞれは、6LoWPANパケットを含む無線PANフレームを送信する。IoT−GW102は、WSN108とLAN107の間でパケットの転送を実行する。WSN108からLAN107へパケットを転送する場合、IoT−GW102は6LoWPANプロトコルのパケットをIPv6パケットに変換する。逆にLAN107からWSN108へ転送する場合、IoT−GW102はIPv6パケットを6LoWPANパケットに変換する。なお、LAN107においてIPv4通信を行う場合は別途IPv4パケットとIPv6パケットの間の変換が行われる。
Each of the
情報処理システム100において、機器管理サーバ101が、センサー装置103〜106およびIoT−GW102などの機器をOCF技術におけるリソースとして管理する。即ち、機器管理サーバ101はOCF技術を用いたデバイス探索を実施することで、センサー装置103〜106、IoT−GW102を探索する。さらに、機器管理サーバ101は、探索したデバイスの持つリソースに対して登録、取得、更新、削除、監視などの要求パケットを送信する。そうすることで、機器管理サーバ101は、センサー装置103〜106およびIoT−GW102の持つリソース情報を取得したり、振る舞いを制御したりすることができる。
In the
次に、機器管理サーバ101のハードウェア構成について、図2を参照して説明する。図2は本実施形態による機器管理サーバ101のハードウェア構成例を示すブロック図である。機器管理サーバ101は、CPU202、RAM203、ROM204、LAN制御部207、転送制御管理部205、機器リソース管理部206を含む。システムバス201は、これらの各ブロックを接続し、各ブロック間でデータを伝達する。
Next, the hardware configuration of the
CPU202は、OS、アプリケーション、TCP/IPプロトコルスタックなどのプログラムを実行する。RAM203は、機器管理サーバ101の主記憶部であって、主に、CPU202、転送制御管理部205、および機器リソース管理部206の処理実行時にデータの一時記憶領域として使用される。ROM204は、CPU202が実行するプログラムが格納される不揮発性の記憶部である。ROM204に格納されるプログラムは、RAM203に転送され、CPU202によって読み出されて実行される。
The
LAN制御部207は、LAN107に接続する通信インターフェースであり、有線LANもしくは無線LANの通信制御を実行する。例えば、機器管理サーバ101が有線LANで接続する形態とする場合、LAN制御部207には伝送メディアのPHY及びMAC(伝送メディア制御)ハードウェア回路が含まれる。接続する有線LANがEthernet(登録商標)である場合、LAN制御部207はEthernet(登録商標)のNIC(Network Interface Card)に相当する。あるいは、機器管理サーバ101が無線LANで接続する形態とする場合、LAN制御部207は、IEEE802.11a/b/g/n/ac等の無線LAN制御を実行するコントローラ、RF回路、アンテナを含む。
The
転送制御管理部205は、OpenFlowスイッチ(本実施形態ではIoT−GW102)に送信するフローエントリの生成、管理を行う。また、転送制御管理部205は、LAN制御部207を介して、OpenFlowスイッチとの間でOpenFlowプロトコルを用いたデータの送受信を行う。なお、本実施形態では転送制御管理部205を別回路による構成としたが、CPU202が実行するプログラムであってもよい。すなわち、OpenFlowスイッチにフローエントリを設定及び管理を行う構成は、いかなる形態であってもよく、例えば転送制御管理部205、CPU202、転送制御管理部205とCPU202の協働、あるいは他の回路により実現され得る。
The transfer
機器リソース管理部206はOCF技術のクライアントとして動作するための機能ブロックである。機器リソース管理部206は、リソースに対する、データ取得(RETRIEVE)、情報の登録(CREATE)、更新(UPDATE)、削除(DELETE)などの処理を行う。これにより、機器リソース管理部206は、システム内のセンサーデバイスからセンサーデータの取得を行ったり、装置の振る舞いを制御したりする。またCoAPを用いることで、機器リソース管理部206は、リソースに監視要求(Observe)を行い、リソースの発するセンサーデータ値に変化があったときに通知(Notify)を受け取る。
The device
次に、センサー装置103のハードウェア構成の一例について、図3を参照して説明する。図3は、本実施形態のセンサー装置103のハードウェア構成例を示すブロック図である。センサー装置103はマイクロプロセッサ、RAM、ROM、シリアル通信バスインタフェースなどのハードウェアを1つにまとめた集積回路であるMCU301(Micro Control Unit)、PAN制御部302、センサー部303を有する。PAN制御部302とセンサー部303は、シリアル通信バスによりMCU301と接続する。シリアル通信バスにはいかなる規格のバスが用いられてもよい。例えば、UART(Universal Asynchronous Receiver/Transmitter)、I2C(Inter-Integrated Circuit)、SPI(Serial Peripheral Interface)である。
Next, an example of the hardware configuration of the
MCU301は、各々の機能部の制御、無線PANプロトコル処理、センサーデータの取得や送信などの処理を実行する。これらの処理は、MCU301内部に記録されるソフトウェアプログラムとして実装される。PAN制御部302は、WSN108に接続する無線PAN規格の通信インターフェースであり、LAN制御部207(図2)と同等の機能を有する。センサー部303は、ジャイロ、加速度、方位、距離、振動、温度、湿度、照度、UV、気圧、ガス、放射能、におい、ドアや窓の開閉、侵入検知など、何らかの値の測定やイベント検知を行うことができるセンサー素子とA/D変換器を含む集積回路である。MCU301は、所定のプログラムを実行することにより、センサー部303からデータを取得してセンサーデータを作成し、作成したセンサーデータを、PAN制御部302を介してWSN108に送信する。
The
また、センサー装置103はOCF技術のサーバとして動作するためのソフトウェアプログラムを有しており、リソースに対する他の装置からの登録、取得、更新、削除の操作要求を受け付けることができる。なお本実施形態では、センサー装置103〜106は同様のハードウェア構成を持つことを想定する。ただし、センサー部303が有するセンサーの種別についてはそれぞれ異なっていても良い。また、センサー部303が有するセンサーは1つとは限らず、例えば、複数の種別のセンサーを有していても良い。
Further, the
次に、IoT−GW102のハードウェア構成例について、図4を参照して説明する。IoT−GW102は、CPU402、RAM403、ROM404、PAN制御部408、LAN制御部407、転送制御部405、転送処理部406を有する。システムバス401は、これらのブロックを接続し、各ブロック間のデータを伝達する。
Next, a hardware configuration example of the IoT-
CPU402は、OS、各種アプリケーション、TCP/IPプロトコルスタック、無線PANプロトコルスタックなどのプログラムを実行する。RAM403は、IoT−GW102の主記憶部であって、例えば、CPU402、転送制御部405、および転送処理部406の処理実行時におけるデータの一時記憶領域、機器管理サーバ101から受信するフローエントリの一時記憶領域として使用される。ROM404は、CPU402が実行するソフトウェアプログラムが格納される不揮発性の記憶部である。ROM404に格納されたプログラムは、RAM403に転送され、CPU402によって読み出されて実行される。
The
PAN制御部408は、WSN108に接続する無線PAN規格の通信インターフェースである。PAN制御部408は、無線PAN規格に対応した物理層、MAC層の通信制御を実行し、WSN108との無線接続およびパケットの送受信の機能を提供する。例えば、PAN制御部408は、ZigBee(登録商標)の場合、IEEE802.15.4に対応した物理リンク制御を実行する。なお、本実施形態では、IoT−GW102がメッシュネットワーク構成のWSN108に接続するものとしているがこれに限られるものではない。例えば、PAN制御部408は、Bluetooth(登録商標)による通信を採用することもでき、その場合、IoT−GW102とセンサー装置がピアツーピア接続で通信する。
The
LAN制御部407は、LAN107に接続する通信インターフェースであり、有線LANもしくは無線LANの通信制御を実行する。IoT−GW102が有線LANで接続する形態の場合、LAN制御部407には伝送メディアのPHY及びMAC(伝送メディア制御)ハードウェア回路が含まれる。例えば、接続する有線LANがEthernet(登録商標)である場合、LAN制御部407はEthernet(登録商標)のNICに相当する。また、IoT−GW102が無線LANで接続する形態の場合、LAN制御部407は、IEEE802.11a/b/g/n/ac等の無線LAN制御を実行するコントローラ、RF回路、アンテナを含む。
The
転送制御部405は、PAN制御部408がWSN108から受信した無線PANフレームを転送処理部406の処理対象とするかどうかを判定する。この判定は、無線PANフレームが6LoWPANパケットを含むか否かを判定することを含む。転送制御部405は、この判定により6LoWPANパケットを持つと判定されたフレームを、無線PAN規格のフレーム形式から、転送処理部406で処理が可能なEthernetフレーム形式に変換する。さらに、転送制御部405は、当該フレームのペイロードデータのパケット形式を、6LoWPANからIPv6へ変換する。これらの変換処理の後、転送制御部405は、当該フレームを転送処理部406に供給する。
The
転送処理部406は、フレーム転送処理を行う。転送対象フレームには、例えば、PAN制御部408が受信して転送制御部405を介して入力されるフレーム、CPU402が実行するTCP/IPプロトコルスタックが送信するフレームが含まれる。転送処理部406は、入力されたフレームを解析し、該フレームの転送条件をチェックし、該フレームの転送に係る処理を実行する。また、転送処理部406は、該フレームの転送処理を実行するか否かの判定処理、該フレームからの情報取得処理を行う。転送処理部406は、LAN107側に転送するフレームについては、そのヘッダ情報(例えばEthernetヘッダ及びIPv6ヘッダの各フィールド)を設定する。代表的には、該転送フレームのIPv6ヘッダ情報の宛先フィールドが設定される。
The
次に図5を用いて、IoT−GW102が行う転送処理及び、機器管理サーバ101が行うセンサー装置103のOCF準拠のリソース管理処理とOpenFlowを用いた転送制御についての処理シーケンスを説明する。
Next, a processing sequence for transfer processing performed by the IoT-
機器管理サーバ101の転送制御管理部205は処理501において、センサー装置103から機器管理サーバ101へのパケットをセンサーデータ処理サーバ111へ転送するための転送規則となるフローエントリを生成する。フローエントリに含まれるマッチング規則には、例えば、宛先および送信元のIPアドレスの指定が用いられる。マッチング規則はこれに限られるものではなく、例えば、プロトコルやポート番号等の指定でもよいし、OpenFlowプロトコルで指定可能な条件を組み合わせた指定でもよい。すなわち、マッチング規則は、センサー装置103からの通知パケットを適切にセンサーデータ処理サーバ111へ転送することを可能とする規則であればよい。また、転送規則となるフローエントリが存在しない場合、機器管理サーバ101は、パケットが示す宛先にそのまま当該パケットを転送するスイッチ動作をデフォルト動作とするテーブルミスフローエントリを生成する。なお、フローエントリが存在しない場合のデフォルト動作をスイッチ動作とするように構成したが、その都度、機器管理サーバ101へOpenFlowプロトコルを用いて問い合わせを行う方法であってもよい。また、それぞれ個別にフローエントリを生成して設定し、機器管理サーバ101からセンサー装置103へのパケットを中継するように転送規則を指定する構成としてもよい。
In
次に処理502において、機器管理サーバ101は生成したフローエントリ(転送規則)をOpenFlowプロトコルのFlow_modメッセージを用いてIoT−GW102へ送信し、IoT−GW102はこれを受信する。処理503においてIoT−GW102の転送制御部405は、機器管理サーバ101からLAN制御部207を介して受信したOpenFlowプロトコルのFlow_modメッセージに示されたフローエントリをフローテーブルに設定する。その後、機器管理サーバ101の機器リソース管理部206は、処理504において、監視対象とするセンサー装置103を決定する。処理505において、機器管理サーバ101はCoAPによる監視要求パケットを送信し、IoT−GW102がこれを受信する。本実施形態では、機器管理サーバ101はリソースに対してCoAPを用いた監視要求を行う。
Next, in
IoT−GW102の転送制御部405は、処理506において、機器管理サーバ101から監視要求パケットを受信すると、パケットデータの内容を解析する。転送制御部405は、解析の結果、監視要求パケットであることを検知すると、パケットの宛先、送信元のIPアドレス及び、監視要求の対象リソース情報を、監視要求に関する情報としてRAM403に記憶する。転送制御部405は、フローテーブルを参照して機器管理サーバ101からセンサー装置103へのパケットの転送規則を検索する。検索の結果、該当するフローエントリがフローテーブルに存在していないことが検知され、転送制御部405は、デフォルト動作に指定されたスイッチ動作を行い、パケットに指定された宛先へ当該パケット(監視要求)を中継する。転送制御部405は、監視要求パケットをセンサー装置103が受信可能なセンサーネットワークのフレームに変換し、処理507において、これをセンサー装置103へ転送し、センサー装置103はこれを受信する。
When receiving the monitoring request packet from the
処理508において、センサー装置103のMCU301は、受信した監視要求を基にセンサー装置103が持つリソースを機器管理サーバ101の監視状態(Observed)に移行する。そして、MCU301は、監視要求パケットを受信したことを通知するため、処理509において通知パケットを返信し、IoT−GW102はこれを受信する。こうして、データ取得のための要求である監視要求の宛先のリソース(本例ではセンサー装置103)からのパケットの受信が開始する。なおこの返信パケットには、リソースのデータであるセンサーデータ値、及び、その鮮度、すなわちリソースのデータの有効期限であるMax−ageが含まれる。
In
処理510において、IoT−GW102の転送制御部405は、センサー装置103から受信した通知パケットをLAN107に転送可能な形式に変換し、処理503で受信した転送規則に従って、これをセンサーデータ処理サーバ111へ転送する。また、処理510において、IoT−GW102は、受信されたパケットが、監視要求に関連したパケットであり、その監視要求の送信元(機器管理サーバ101)に送信すべきパケットであるか否かを判定する。例えば、受信されたパケットが、監視要求に応答してリソース(センサー装置103)が最初に送信した最初のパケットであると判定された場合に、その受信されたパケットは、監視要求の送信元へ送信すべきパケットと判定される。第1実施形態では、受信した通知パケットに対応する監視要求に関する情報がRAM403に記憶されているか否かに基づいて機器管理サーバ101へも当該通知パケットを転送るか否かが判定される。処理510において、転送制御部405は、受信した通知パケットに対応する監視要求に関する情報がRAM403に記憶されている場合に、その通知を機器管理サーバ101にも転送し、監視要求に関する情報をRAM403から削除する。なお、処理510における機器管理サーバ101への通知パケットの転送は、機器管理サーバ101へMax−ageを通知することが目的である。したがって、処理510において、受信したパケットをそのまま機器管理サーバ101へ転送しているがこれに限られるものではない。監視要求の送信元へ送信すべきケットであると判定された場合に、受信されたパケットのMax−age(有効期限)の情報を少なくとも含むパケットが機器管理サーバ101へ送信されればよい。
In
処理511において通知パケットがIoT−GW102から機器管理サーバ101へ転送される。処理512において機器管理サーバ101の機器リソース管理部206は、通知パケットからMax−ageを取得し、リソースの有効期限を管理する。また、処理513において、転送規則に従って、通知パケットがIoT−GW102からセンサーデータ処理サーバ111へ転送される。処理513、518、529で示される通知パケットの転送は、転送規則に従うことにより、受信されたパケットが示す第1の宛先(機器管理サーバ101)とは異なる第2の宛先(センサーデータ処理サーバ111)へ受信されたパケットを送信する動作である。処理514において、センサーデータ処理サーバ111は、転送されたセンサーデータの処理を行う。なお、センサーデータ処理サーバ111が、さらに別のサーバへセンサーデータを転送するように構成されてもよい。例えば、センサーデータ処理サーバ111でセンサーデータのクレンジング等の一時加工を行った後にこれを別のサーバへ転送し、当該別のサーバでさらにセンサーデータを処理するといった構成であってもよい。
In
その後、処理515において、センサー装置103は、監視対象のリソースのセンサー値の変化を検知し、監視要求を行った機器管理サーバ101を宛先として、通知パケットを送信する。なおこの通知パケットにはセンサーデータ値及び、リソースの鮮度、すなわちリソースのデータの有効期限であるMax−ageが含まれる。処理516において、センサー装置103からIoT−GW102へ通知パケットが送信される。
Thereafter, in
処理517において、IoT−GW102の転送制御部405は、監視状態にあるセンサー装置103から受信した通知パケットの転送処理を行う。すなわち、転送制御部405は、フローエントリ(転送規則)において指定されている宛先へ通知パケットを転送する。このとき、IoT−GW102のRAM403には監視要求を中継した際に記憶した、監視要求に関する情報が保持されていないため、機器管理サーバ101への通知パケットの転送は行われない。処理518おいて、通知パケットがIoT−GW102からセンサーデータ処理サーバ111へ転送される。処理519において、処理514と同様に、センサーデータ処理サーバ111は、センサーデータの処理を行う。
In
処理520において、機器管理サーバ101の機器リソース管理部206は処理512で取得したMax−age時間が経過したことを検知すると、監視対象のリソースの再監視要求を行うため、監視要求パケットを送信する。処理521において、監視要求パケットが機器管理サーバ101からIoT−GW102へ送信される。処理522において、処理506と同様に、IoT−GW102の転送制御部405は、監視要求パケットをセンサー装置103へ中継し、監視要求に関する情報をRAM403に保持する。処理523において、監視要求パケットがIoT−GW102からセンサー装置103へ転送される。
In
処理524において、センサー装置103は受信した監視要求パケットを基にセンサー装置103が持つリソースの監視状態(Observed)を継続する。なお、処理515から処理524の間にセンサー装置103がリセットされる等してリソースの監視(Observed)状態を失っていた場合は、センサー装置103は、処理508と同様にして、監視状態(Observed)に移行する。そして、センサー装置103は、監視要求パケットを受信したことを通知するため、通知パケットを返信する。なおこの返信パケットはセンサーデータ値及び、リソースの鮮度、すなわちリソースのデータの有効期限であるMax−ageを含む。処理525において、通知パケットがセンサー装置103からIoT−GW102へ送信される。
In
IoT−GW102において、RAM403には監視要求に関する情報が保持されている。したがって、IoT−GW102は、処理526において、受信したセンサー装置103からのパケットを、機器管理サーバ101とセンサーデータ処理サーバ111へ転送する転送処理を行い、RAM403から監視要求に関する情報を削除する。この処理は、処理510と同様である。処理527において通知パケットがIoT−GW102から機器管理サーバ101へ転送される。そして処理528において、機器管理サーバ101の機器リソース管理部206は、受信した通知パケットからMax−ageを取得し、リソースの有効期限を更新する。また、処理529において、通知パケットがIoT−GW102からセンサーデータ処理サーバ111へ転送される。処理530において、センサーデータ処理サーバ111は、センサーデータの処理を行う。
In the IoT-
IoT−GW102の転送処理について図6のフローチャートを用いて説明する。なお、図6に示す転送処理は、上述した処理506、処理510、処理517、処理522、処理526に対応する処理である。
The transfer process of the IoT-
ステップS601において、転送制御部405は、LAN制御部407またはPAN制御部408を介して、中継の対象であるパケットを受信する。ステップS602において、転送制御部405は、ステップS601で受信したパケットを解析し、監視要求パケットであるか否かを判定する。監視要求パケットであると判定された場合、処理はステップS608へ進み、監視要求パケットではないと判定された場合、処理はステップS603へ進む。
In step S601, the
ステップS608において、監視要求パケットから宛先、送信元のIPアドレス及び監視対象のリソース情報を取得して、監視要求に関する情報としてRAM403に記憶する。すでに監視要求リソースの宛先、送信元IPアドレス及びリソース情報が記憶されている場合は、これらを上書きしてもよいし、ステップS608の処理をスキップしてもよい。上書きもしくはスキップは、例えば、パケットのロストなど応答がない場合に機器管理サーバ101からCoAPプロトコルを用いて再送制御が行われた場合に発生する処理である。なお、図示していないが、監視要求を送信した後、センサー装置103から一定の時間経過しても通知パケットの返信がない場合は、記憶した監視要求に関する情報(リソースに関する情報)を破棄するようにしてもよい。これにより、センサー装置または通信路で通信ができない状態が発生した場合において、監視要求に関する情報を記憶し続けることによるメモリ資源の圧迫を防ぐことが可能となる。
In step S608, the destination, the source IP address, and the resource information to be monitored are acquired from the monitoring request packet and stored in the
ステップS603において、転送制御部405は、ステップS601で受信したパケットが通知パケットであるか否かを判定する。通知パケットであると判定された場合、処理はステップS604へ進み、通知パケットでないと判定された場合、処理はステップS609へ進む。
In step S603, the
ステップS604において、転送制御部405は、通知パケットに対応する監視要求に関する情報がRAM403に記憶されているかを確認する。なお、上述したように、監視要求に関する情報はステップS608で記憶されている。これにより、転送制御部405は、受信した通知パケットが、監視要求に対する最初の返信であるか、リソースの状態変化を検知してセンサー装置103から自律的に送信された通知であるかを検知する。対応する監視要求に関する情報がRAM403に記憶されている場合、通知パケットはセンサー装置103から監視要求に応じて返信された最初の通知であると判定され、処理はステップS605へ進む。他方、対応する監視要求に関連する情報がRAM403に記憶されていない場合、通知パケットは自律的に送信された通知であると判定され、処理はステップS609へ進む。
In step S <b> 604, the
ステップS605において、転送制御部405は、受信した通知パケットに対する転送規則を確認する。具体的には、転送制御部405は、フローテーブルを参照し、受信したパケットに該当するマッチング規則であるフローエントリを検索する。該当するフローエントリが検索されると、転送制御部405は、そのアクションリストを適用した場合に、受信した通知パケットの宛先が変更されるか否かを確認する。アクションリスト(転送規則)の適用によりパケットの宛先が変更になる場合、処理はステップS606へ進む。他方、フローエントリが存在しない、またはフローエントリは存在するが受信したパケットに指定されている宛先にパケットが転送される場合(アクションリストの適用によりパケットの宛先が変更されない場合)、処理はステップS607へ進む。ただし、対応するフローエントリのアクションリストに指定されたアクションが、「パケットに指定された宛先及び、パケットを複製して他の宛先へ転送する」という場合は、処理はステップS607へ進む。すなわち、受信したパケットに指定されている宛先へパケットを中継するか否かで処理が切り替わる。受信したパケットに指定されている宛先へパケットを中継しない場合には、処理はステップS606へ進む。
In step S605, the
ステップS606において、受信したパケットを複製してパケットに指定された宛先へ送信する。この処理はフローテーブルに指定された転送規則とは別に行われる処理である。これにより、受信した通知パケットをセンサーデータ処理サーバ111へ宛先を変更して転送する転送規則が設定されていた場合においても、IoT−GW102の判断で機器管理サーバ101へ通知パケットを転送することが可能となる。そのため、機器管理サーバ101は、リソースの鮮度、すなわちリソースのデータの有効期限であるMax−ageを受信することが可能となり、適切にセンサーリソースのMax−ageを管理することができる。
In step S606, the received packet is duplicated and transmitted to the destination specified in the packet. This processing is performed separately from the transfer rule specified in the flow table. Thus, even when a transfer rule for changing the destination of the received notification packet to the sensor
ステップS607において、RAM403に記憶している監視要求に関する情報を削除する。すなわち、監視要求パケットを中継した際にステップS608でRAM403に記憶した、宛先、送信元IPアドレス及び監視対象のリソース情報を削除する。これにより、IoT−GW102は、センサー装置103から続けて通知パケットを受信したとしても、ステップS604でNO判定となるため、機器管理サーバ101への転送処理を行わない。結果、IoT−GW102は、適切なタイミング、つまり監視要求パケットを中継した直後のみ、通知パケットを複製して機器管理サーバ101へ転送することが可能となる。適切なタイミングのみにおいて通知パケットを機器管理サーバ101へ転送することで、機器管理サーバ101が受信するパケットを削減することが可能となり、機器管理サーバ101の処理負荷を低減することが可能となる。
In step S607, the information regarding the monitoring request stored in the
ステップS609において、転送制御部405は、フローテーブルを参照して受信したパケットの転送規則を検索する。検索の結果、該当するフローエントリが存在する場合、転送制御部405は、アクションリストに指定された処理を受信パケットに適用する。そして、ステップS610において、転送処理部406はパケットの宛先にパケットを転送する。またフローエントリが存在しない場合、転送処理部406は、デフォルト動作に指定されているスイッチ動作により、パケットに指定された宛先にパケットを転送する。なお、ステップS605を経由してステップS609の処理を行った場合、ステップS605で検索した結果をキャッシュや別途メモリに格納する等してフローエントリを検索する処理をスキップしてもよい。そうすることで検索処理を1回行えばよくなり、処理負荷を軽減することが可能である。
In step S609, the
図5に示したIoT−GW102の処理506、510、517、522、526との対応は次のようになる。すなわち、処理506と522は、S601→S602(YES)→S608〜S610に対応する。処理510と526は、S601→S602(NO)→S603(YES)→S604(YES)→S605(YES)→S606〜S607、S6−9〜S610に対応する。処理517は、S601→S602(NO)→S603(YES)→S604(NO)→S609〜S610に対応する。
The correspondence with the
以上のように、IoT−GW102は、受信したパケットの転送処理を行い、リソースからのセンサーデータとMax−ageを含む通知パケットを機器管理サーバ101へ転送するか否かを判断する。そして、転送規則に限定されず、機器管理サーバ101への転送が必要と判断された場合、IoT−GW102は、機器管理サーバ101へ通知パケットを転送する。これによって、適切なタイミングで必要に応じて機器管理サーバ101にセンサーリソースのMax−ageを通知することができる。
As described above, the IoT-
また、第1実施形態では、監視要求パケットの宛先、送信元IPアドレス及びリソース情報を記憶することにより、それの応答である通知パケットであるか否かの判断を行ったが、これに限られるものではない。例えば、監視要求パケット及び通知パケットに含まれるURI情報など、監視要求に対応する通知であることを識別できる情報であれば、いかなる情報が用いられてもよい。なお、URIとは、Uniform Resource Locatorである。 In the first embodiment, the destination of the monitoring request packet, the transmission source IP address, and the resource information are stored to determine whether or not the notification packet is a response to the monitoring request packet. It is not a thing. For example, any information may be used as long as the information can identify the notification corresponding to the monitoring request, such as the URI information included in the monitoring request packet and the notification packet. The URI is a Uniform Resource Locator.
以上の処理により、センサー装置103のセンサーリソースがリセットされて監視(Observed)状態を失った場合、再度監視状態(Observed)とすることが可能である。また、監視状態(Observed)を失っていない場合は、監視状態を継続することができる。また、IoT−GW102の制御により、監視要求パケットの中継をした直後のみ、通知パケットが複製され機器管理サーバ101へ転送される。IoT−GW102の判断により適切なタイミングで機器管理サーバ101へも通知パケットを転送可能となり、機器管理サーバ101がMax−ageを取得可能となる。このように、IoT−GW102が、転送規則に限定されず、必要に応じて、機器管理サーバ101へMax−ageを通知することで、機器管理サーバ101の処理負荷の削減、ひいてはネットワークトラフィックの削減が可能となる。
Through the above processing, when the sensor resource of the
また、本実施形態では監視要求を中継したパケットの宛先、送信元IPアドレス及びリソース情報を記憶し、その記憶情報が存在する場合に、転送規則に限定されず、通知パケットの機器管理サーバ101への転送が必要であると判断する制御を行った。しかし別途タイマー等を設けて、監視要求の送信後の所定時間内に限り、転送規則に限定されず、転送制御を行うようにしてもよい。また、本実施形態では、監視要求に関する情報をRAM403に記憶するようにしたが、これに限られるものではない。例えば、CPU402のキャッシュ等を用いて、監視要求に関する情報の保持を行う構成としてもよい。
Further, in the present embodiment, the destination, source IP address, and resource information of the packet that relayed the monitoring request are stored, and when the stored information exists, the transfer rule is not limited to the
また本実施形態では、監視要求パケットに含まれる宛先、送信元IPアドレス及びリソース情報を用いて、監視要求パケットとそれに対応する通知パケットのマッチングを行ったがこれに限られるものではない。RAM403に保持される監視要求に関する情報は、監視要求パケットと通知パケットを一意にマッチング可能な情報であればよい。またリソース情報またはセンサー情報と記載した情報はセンサーリソースの種別やセンサーリソースのURI等の情報を想定するが、監視要求パケット及び通知パケットから取得可能な情報であればよい。またセンサー装置103のセンサーリソースが他のセンサー装置のセンサーリソースと識別可能な情報であればよい。また別途規定するパケットデータ内の情報であってもよい。
In this embodiment, the monitoring request packet and the corresponding notification packet are matched using the destination, transmission source IP address, and resource information included in the monitoring request packet. However, the present invention is not limited to this. The information regarding the monitoring request held in the
<第2実施形態>
第1実施形態では、機器管理サーバ101からの監視要求を中継する際に、その情報を取得して保持し、監視要求を中継した後に最初に受信した当該監視要求に対応する通知パケットを、センサーデータ処理サーバ111と機器管理サーバ101へ転送する。この方法によれば、監視要求を再度送信するタイミングを機器管理サーバが検知することができ、監視状態を継続しつつ、ネットワークトラフィックを減らすことができる。第2実施形態では、機器管理サーバ101へ転送した通知パケットに関する情報を、その有効期限(Max−age)にわたって保持することにより、通知パケットの機器管理サーバ101への転送タイミングを判定する。
Second Embodiment
In the first embodiment, when relaying a monitoring request from the
以下、第2実施形態について、図面を参照して説明する。なお、以下の実施形態で説明する特徴の組み合わせの全てが本発明に必須のものとは限らない。 Hereinafter, a second embodiment will be described with reference to the drawings. Note that not all combinations of features described in the following embodiments are essential to the present invention.
図7は第2実施形態による情報処理システム700の構成例を示す図である。第2実施形態の情報処理システム700では、第1実施形態(図1)における機器管理サーバ101の機能が、機器管理サーバ701と転送制御管理装置712に分割された構成となっている。その他の構成は情報処理システム100の構成と同様である。機器管理サーバ701は、情報処理システムを構成する各機器やセンサー装置について、システムへの接続および設定や状態の管理を行う。また、転送制御管理装置712はIoT−GW102の転送規則を制御する制御装置(OpenFlowコントローラ)の機能を有する。
FIG. 7 is a diagram illustrating a configuration example of an
機器管理サーバ701はフローエントリと呼ばれる転送規則をIoT−GW102に送信する。フローエントリを受信したIoT−GW102はそれをフローテーブルに格納し、これを参照することでデータの転送処理を行う。フローエントリは第1実施形態で説明したとおりである。なお、第2実施形態では転送制御管理装置712がOpenFlowコントローラの機能を有する構成としたが、LAN107に接続する別の機器がOpenFlowコントローラの機能を有してもよい。また、OpenFlowスイッチの機能を有するIoT−GW102、LAN107に接続される別の機器、または図1に示した機器管理サーバ101がOpenFlowコントローラの機能を有してもよい。すなわち、第2実施形態の機器管理サーバ701と転送制御管理装置712は第1実施形態の機器管理サーバ101により置き換えられてもよい。同様に、第1実施形態の機器管理サーバ101が、機器管理サーバ701と転送制御管理装置712で置き換えられてもよい。
The
情報処理システム700において、機器管理サーバ701は、センサー装置103〜106やIoT−GW102などの機器、およびそれらの持つセンサーなどをOCF技術におけるリソースとして管理する。即ち、機器管理サーバ701はOCF技術を用いたデバイス探索を実施することで、センサー装置103〜106やIoT−GW102を探索する。さらに、機器管理サーバ701は、探索したデバイスの持つリソースに対して監視要求を行い、当該リソースに対して登録、取得、更新、削除、監視の要求パケットを送信する。これにより、機器管理サーバ701は、センサー装置103〜106やIoT−GW102の持つリソース情報を取得したり、振る舞いを制御したりすることができる。
In the
センサー装置103〜106、IoT−GW102のハードウェア構成は、第1実施形態(図3、図4)と同様である。機器管理サーバ701のハードウェア構成は図2に示した機器管理サーバ101の構成から転送制御管理部205を除いた構成である。また転送制御管理装置712のハードウェア構成は、図2に示した機器管理サーバ101の構成から機器リソース管理部206を除いた構成である。
The hardware configurations of the
次に、図8を用いて、IoT−GW102が行う転送処理及び、機器管理サーバ701が行うセンサー装置103のOCF準拠のリソース管理処理及び、転送制御管理装置712が行うOpenFlowを用いた転送制御についての処理シーケンスを説明する。
Next, with reference to FIG. 8, transfer processing performed by the IoT-
処理801,802,803は、転送制御管理装置712が転送規則をIoT−GW102に提供する点を除いて第1実施形態(図5)の処理501,502,503と同様である。機器管理サーバ701(機器リソース管理部206)は、処理804において監視対象とするセンサー装置103を決定し、処理805において監視要求パケットを送信する。これにより、機器管理サーバ701は、リソースに対してCoAPを用いて、監視要求を行う。
次に、処理806において、IoT−GW102の転送制御部405は、機器管理サーバ701から監視要求パケットを受信すると、フローテーブルを参照して機器管理サーバ701からセンサー装置103へのパケットの転送規則を検索する。転送制御部405は、検索の結果、該当するフローエントリがフローテーブルに存在していないことを検知し、デフォルト動作に指定されたスイッチ動作を行い、パケットに指定された宛先へ監視要求パケットを中継する。処理807において、監視要求パケットがIoT−GW102からセンサー装置103へ転送される。この際、転送制御部405は、監視要求パケットをセンサー装置103が受信可能なセンサーネットワークのフレームに変換する。
Next, in
処理808において、センサー装置103のMCU301は受信した監視要求を基にセンサー装置103が持つリソースを機器管理サーバ701の監視状態(Observed)に移行する。そして、MCU301は、監視要求パケットを受信したことを通知するため、通知パケットを返信する。処理809において、通知パケットはセンサー装置103からIoT−GW102へ送信される。なおこの通知パケットは、第1実施形態と同様に、センサーデータ値及び、リソースの鮮度、すなわちリソースのデータの有効期限であるMax−ageを含む。
In
次に、処理810において、転送制御部405は、センサー装置103から受信した通知パケットから宛先および送信元IPアドレス、センサー情報、有効期限を示すMax−ageを取得し、RAM403内のセンサー情報管理テーブルに保持する。そして、転送制御部405は、受信した通知パケットをLAN107に転送可能な形式に変換し、機器管理サーバ701とセンサーデータ処理サーバ111に転送する。こうして、センサー情報管理テーブルには、監視要求に関連して最初に受信した通知パケット、すなわち、センサー装置103から受信され、機器管理サーバ701に転送された通知パケットに関する情報(以下、エントリ)が記録される。
Next, in
処理811において、通知パケットがIoT−GW102から機器管理サーバ701へ転送される。処理812において機器管理サーバ701は通知パケットからMax−ageを取得し、リソースの有効期限を管理する。また、処理813において、通知パケットがIoT−GW102からセンサーデータ処理サーバ111へ転送される。処理814において、センサーデータ処理サーバ111は、受信した通知パケットに含まれるセンサーデータの処理を行う。なお、センサーデータ処理サーバ111が、さらに別のサーバへセンサーデータを転送する構成であってもよい。例えば、センサーデータ処理サーバ111がセンサーデータのクレンジング等の一時加工を行った後にこれを別のサーバへ転送し、当該別のサーバでさらにセンサーデータを処理するといった構成であってもよい。
In
処理815、処理816は第1実施形態の処理515,516と同様である。ただし、通知パケットの宛先は、機器管理サーバ701である。処理817において、IoT−GW102は受信した通知パケットの転送処理を行う。このとき、IoT−GW102のセンサー情報テーブルには、処理810で受信した通知パケットから取得したMax−ageやセンサー情報を含むエントリが保持されている。受信した通知パケットに対応するエントリが保持されている場合、転送制御部405は、フローエントリに指定された宛先へ通知パケットの転送処理を行う。結果、処理818おいて、通知パケットがIoT−GW102からセンサーデータ処理サーバ111へ転送される。処理819において、処理814と同様に、センサーデータ処理サーバ111は、センサーデータの処理を行う。
処理820において、IoT−GW102は処理810で通知パケットから取得したMax−age時間が経過したことを検知すると、センサー情報管理テーブルから、対応するエントリを削除する。なお、本実施形態ではエントリを削除するようにしたが、エントリを削除せずMax−ageが切れていることを示す情報を記録するようにしてもよい。その場合、新たに通知パケットを受信した時点で、該当するエントリのMax−ageが新たに取得されたMax−ageで更新される。
In
処理821において、機器管理サーバ701は処理812で取得したMax−age(エントリに含まれているMax−age)が経過したことを検知すると、監視対象のリソースの再監視要求を行うため、監視要求パケットを送信する。処理822において、監視要求パケットが機器管理サーバ701からIoT−GW102へ送信される。処理823において、IoT−GW102の転送制御部405は、監視要求パケットをセンサー装置103へ中継する。処理824において、監視要求パケットが、IoT−GW102からセンサー装置103へ転送される。
In
処理825において、センサー装置103は受信した監視要求パケットを基にセンサー装置103が持つリソースの監視状態(Observed)を継続する。なお、処理815から処理825の間にセンサー装置103がリセットされる等してリソースの監視(Observed)状態を失っていた場合は、処理825において、センサー装置103は、処理808と同様にして、監視状態(Observed)に移行する。そして、センサー装置103は、監視要求パケットを受信したことを通知するために通知パケットを返信する。なおこの返信パケットは、センサーデータ値、リソースの鮮度すなわちリソースのデータの有効期限であるMax−ageを含む。
In
処理826において、通知パケットがセンサー装置103からIoT−GW102へ送信される。処理827において、IoT−GW102は処理810と同様の転送処理を行う。すなわち、この時点で、IoT−GW102では、処理820においてセンサー情報管理テーブルから当該通知パケットより取得した情報のエントリが削除されている(処理820)。したがって、転送制御部405は、受信した通知パケットに対応するエントリがセンサー情報管理テーブルに存在せず、新規にエントリが追加されると判断して、当該通知パケットを機器管理サーバ701とセンサーデータ処理サーバ111に転送する。
In
処理828〜831は、処理811~814と同様である。すなわち、処理828において、通知パケットがIoT−GW102から機器管理サーバ701へ転送される。処理829において機器管理サーバ701は通知パケットからMax−ageを取得し、リソースの有効期限を更新する。処理830において、通知パケットがIoT−GW102からセンサーデータ処理サーバ111へ転送される。処理831において、センサーデータ処理サーバ111は、センサーデータの処理を行う。以上の処理により、センサー装置103のセンサーリソースがリセットされて監視(Observed)状態を失った場合、再度監視状態(Observed)とすることが可能である。また、監視状態(Observed)を失っていない場合は、監視状態が継続される。
次に、第2実施形態におけるIoT−GW102の転送処理について図9のフローチャートを用いて説明する。なお、図9に示す転送処理は、処理806、処理810、処理817、処理823、処理827に対応する処理である。
Next, transfer processing of the IoT-
ステップS901において、転送制御部405は、LAN制御部407またはPAN制御部408を介して、中継の対象であるパケットを受信する。ステップS902において、ステップS901において、転送制御部405は、ステップS901で受信したパケットを解析し、通知パケットであるか否かを判定する。通知パケットであると判定された場合、処理はステップS903へ進み、通知パケットではないと判定された場合、処理はステップS907へ進む。
In step S901, the
ステップS903において、転送制御部405は、受信した通知パケットに対応するエントリがセンサー情報管理テーブルに存在するかを判定する。すなわち、転送制御部405は、通知パケットから宛先、送信元IPアドレス及びセンサー情報、Max−ageを取得する。そして、転送制御部405は、RAM403に構成されているセンサー情報管理テーブルを参照し、通知パケットと同一の宛先、送信元IPアドレス、センサー情報のMax−ageを保持しているかを検索する。センサー情報管理テーブルに一致するテーブルエントリが存在する場合、処理はステップS907へ進み、存在しない場合、処理はステップS904へ進む。センサー情報管理テーブルにテーブルエントリが存在している場合は、機器管理サーバ701においてもMax−ageを保持していると判断することができる。この場合、転送制御部405は、センサー装置103が自律的にセンサーリソースの値の変化を検知して送信した通知パケットであるとして処理を行う。すなわち、ステップS907、S908が実行されて、転送制御部405は、転送規則に従って当該通知パケットを転送する(本例では、通知パケットがセンサーデータ処理サーバ111に転送される)。
In step S903, the
ステップS904において、転送制御部405は、受信した通知パケットに対する転送規則を確認する。具体的には、フローテーブルを参照し受信したパケットに該当するマッチング規則であるフローエントリを検索する。該当するフローエントリが検索されると、転送制御部405は、そのアクションリストを適用した場合に受信した通知パケットの宛先が変更されるか否かを確認する。通知パケットの宛先が変更される場合、処理はステップS905へ進む。例えば、本実施形態では、センサー装置103から通知パケットを受信した場合、センサーデータ処理サーバ111に転送されるべく宛先が変更されるので、処理はステップS905ヘ進む。該当するフローエントリが存在しない、またはフローエントリは存在するが受信したパケットに指定されている宛先にパケットが転送される場合、処理はステップS907へ進む。ステップS904は、第1実施形態のステップS605と同様の処理である。
In step S904, the
ステップS905において、転送制御部405は、通知パケットの宛先、送信元IPアドレス及びセンサー種別やURI等のセンサーリソース情報、Max−ageを取得し、センサー情報管理テーブルにエントリを追加する。なお、転送制御部405は、図8の処理820で説明したように、記憶したMax−ageによって示される有効期限が経過すると、センサー情報管理テーブルから当該エントリを削除する。
In step S905, the
ステップS906において、転送制御部405は、受信した通知パケットを複製して、当該通知パケットに指定されている宛先へこれを送信する。この処理はフローテーブルに指定された転送規則とは別に行われる。これにより、受信した通知パケットをセンサーデータ処理サーバ111へ宛先を変更して転送するように転送規則が設定されていた場合であっても、IoT−GW102の判断で機器管理サーバ701へ通知パケットを転送することが可能となる。そのため、リソースの鮮度、すなわちリソースのデータの有効期限であるMax−ageを機器管理サーバ701が受信可能となり、適切にセンサーリソースのMax−ageを通知することができる。
In step S906, the
ステップS907〜S908は第1実施形態(図6)のステップS609〜S610と同様である。また、第1実施形態でも説明したように、ステップS904を経由してステップS907の処理を行った場合、ステップS904で検索した結果をキャッシュや別途メモリに格納する等して検索処理をスキップしてもよい。 Steps S907 to S908 are the same as steps S609 to S610 of the first embodiment (FIG. 6). Also, as described in the first embodiment, when the process of step S907 is performed via step S904, the search process is skipped by storing the search result in step S904 in a cache or a separate memory. Also good.
以上のように、転送制御部405は、受信したパケットの転送処理を行う際に、リソースからのセンサーデータおよび、Max−ageを機器管理サーバ701へ転送するか否かを判断する。つまりセンサー情報管理テーブルにエントリが新たに追加された場合には、転送規則に限定されず、機器管理サーバ701へ通知パケットが転送される。これによって、適切なタイミングで必要に応じて機器管理サーバ701にセンサーリソースのMax−ageを通知することができる。
As described above, the
なお、第2実施形態では通知パケットの宛先、送信元IPアドレス及びリソース情報、Max−ageをセンサー情報管理テーブルに記憶しているか否かにより、機器管理サーバ101への転送を行うか否かを判断した。センサー情報管理テーブルに保持される情報は、上記例に限られず、監視要求に対する通知パケットか否かが一意に識別できる情報であればよい。例えば通知パケットに含まれるURI情報のみで、同一の監視要求に対応する通知パケットか否か否かをURI情報によって一意に識別可能な場合、URI情報とMax−ageのみを保持するようにしてもよい。なお、URIとは、Uniform Resource Locatorである。
In the second embodiment, whether or not to transfer to the
以上の処理によりIoT−GW102の制御により、通知パケットから取得したMax−ageを管理し、新規に管理に追加した場合のみ、通知パケットが複製されて機器管理サーバへ転送される。また、有効期限(Max−age)が切れたタイミングで、センサー情報管理テーブルで管理されているエントリが削除される。管理しているセンサー情報の有効期限が切れていない場合は転送規則に従った転送のみが行われる。これにより、IoT−GW102の判断により適切なタイミングで機器管理サーバ701へも通知パケットを転送することができ、機器管理サーバ701がMax−ageを取得可能となる。このようにしてIoT−GW102の判断により、転送規則に限定されず、必要に応じて、機器管理サーバ701へMax−ageを通知することで、機器管理サーバ701の処理負荷の削減、しいてはネットワークトラフィックを削減することが可能となる。
The Max-age acquired from the notification packet is managed by the control of the IoT-
この方法によれば、IoT−GW102がパケットを中継、転送を行うにあたり、通知パケットであった場合にのみ、パケットの詳細解析が必要になるため、第一実施形態に示した方法に比べてIoT−GWの処理負荷を軽減することが可能となる。
According to this method, when the IoT-
<第3実施形態>
第2実施形態では、センサー装置103からの通知パケットを機器管理サーバ701へ転送する際に、その情報及びMax−ageを取得し保持した。そして新規に情報を保持した場合に受信した通知パケットを、センサーデータ処理サーバへデータを転送しつつ、転送規則に限定されず、機器管理サーバへも転送する方法を示した。この方法によれば、監視要求を再度送信するタイミングを機器管理サーバが検知することができ、監視状態を継続しつつ、ネットワークトラフィックを減らすことができる。第3実施形態では、新たに受信された通知パケットに含まれている有効期限を用いて、機器管理サーバ101およびセンサー情報管理テーブルに保持されている有効期限を更新することで、さらにネットワークトラフィックの低減を図る。
<Third Embodiment>
In the second embodiment, when the notification packet from the
以下、第3実施形態について、図面を参照して説明する。なお、以下の実施形態で説明する特徴の組み合わせの全てが本発明に必須のものとは限らない。第3実施形態による情報処理システム100の構成、機器管理サーバ101の構成、センサー装置103の構成、IoT−GW102の構成は、第1実施形態(図1、図2、図3、図4)と同様である。
Hereinafter, a third embodiment will be described with reference to the drawings. Note that not all combinations of features described in the following embodiments are essential to the present invention. The configuration of the
図10を用いて、IoT−GW102が行う転送処理及び、機器管理サーバ101が行うセンサー装置103のOCF準拠のリソース管理処理及び、OpenFlowを用いた転送制御についての処理シーケンスを説明する。処理1001〜1005は、第1実施形態(図5)の処理501〜505と同様である。
A processing sequence for transfer processing performed by the IoT-
処理1006において、IoT−GW102の転送制御部405は機器管理サーバ101から監視要求パケットを受信すると、フローテーブルを参照し機器管理サーバ101からセンサー装置103へのパケットの転送規則を検索する。検索の結果、該当するフローエントリがフローテーブルに存在していないことを検知すると、転送制御部405は、デフォルト動作に指定されたスイッチ動作を行い、監視要求パケットが指定する宛先へ当該監視要求パケットを転送する。その際、転送制御部405は、監視要求パケットをセンサー装置103が受信可能なセンサーネットワーク(WSN108)のフレームに変換してこれを転送する。処理1007において、監視要求パケットはIoT−GW102からセンサー装置103へ転送される。
In
処理1008〜処理1009は、第1実施形態(図5)の処理508〜509と同様である。処理1010は第2実施形態(図8)の処理810と同様である。すなわち、処理1010において、転送制御部405は、センサー装置103から受信した通知パケットから取得したMax−age、センサー情報、センサーデータ値を保持する。そして、転送制御部405は、この通知パケットをLAN107に転送可能な形式に変換し、機器管理サーバ101とセンサーデータ処理サーバ111に転送する転送処理を行う。処理1011において通知パケットがIoT−GW102から機器管理サーバ101へ転送される。処理1012において、機器管理サーバ101の機器リソース管理部206は、通知パケットからMax−ageを取得し、リソースの有効期限を管理する。また、処理1013において、通知パケットがIoT−GW102からセンサーデータ処理サーバ111へ転送される。処理1014において、センサーデータ処理サーバ111は、センサーデータの処理を行う。なお、センサーデータ処理サーバ111の処理によって、さらに別のサーバへ転送する構成であってもよいことは第1、第2実施形態で述べたとおりである。
処理1015において、センサー装置103は、監視対象のリソースのセンサー値の変化を検知すると、監視要求を行った機器管理サーバ101を宛先として通知パケットを送信する。処理1016において、通知パケットがセンサー装置103からIoT−GW102へ送信される。なお、この通知パケットはセンサーデータ値及び、リソースの鮮度、すなわちリソースのデータの有効期限であるMax−ageを含む。
In
処理1017において、IoT−GW102は、第2実施形態(図8)の処理817と同様に、受信した通知パケットの転送処理を行う。IoT−GW102の転送制御部405は、処理1010で保持した宛先、送信元アドレス、センサー情報が今回受信した通知パケットと一致するので、フローエントリに指定された宛先へ通知パケットが転送される。この場合、機器管理サーバ101へ通知パケットは転送されない。また、処理1017において、転送制御部405は、Max−age及びセンサーデータ値を受信した通知パケットから取得し、保持している情報を更新する。この際に更新されるMax−ageは、センサー情報テーブルエントリを削除する時間を検知するために用いるMax−ageであり、機器管理サーバ101へ送信したMax−ageとは別途保持されている。
In
こうして、第3実施形態のセンサー情報管理テーブルには、機器管理サーバ101へ送信した第1のMax−ageと新しい通知パケットに従って更新される第2のMax−ageとが保持される。第1のMax−ageは機器管理サーバ101へMax−ageの更新を通知する(処理1020)タイミングを得るのに用いられる。第2のMax−ageは、センサー情報管理テーブルの、通知に関するエントリ(宛先、送信元IPアドレス、センサー情報、センサーデータを含む)を削除する時間を検知するために用いられる。処理1018おいて、IoT−GW102からセンサーデータ処理サーバ111に通知パケットが転送される。そして処理1019において、処理1014同様にして、センサーデータ処理サーバ111は、センサーデータの処理を行う。
Thus, the sensor information management table of the third embodiment holds the first Max-age transmitted to the
IoT−GW102の転送制御部405は、処理1010で保持された第1のMax−ageとその経過時間に基づいて処理1020を実行する。例えば、転送制御部405は、処理1010で保持された第1のMax−ageの時間が経過間近になったこと、もしくは第1のMax−ageが経過したことを検知すると、処理1020を実行する。処理1020において、転送制御部405は、処理1017で更新した第2のMax−ageの残り時間をMax−ageとして通知パケットを生成し、これを機器管理サーバ101へ送信する。処理1021において、IoT−GW102から機器管理サーバ101へこの通知パケットが送信される。
The
処理1022において、機器管理サーバ101は通知パケットからMax−ageを取得し、リソースの有効期限を更新する。これにより、機器管理サーバ101は、センサーリソースのMax−ageの経過に応じて監視要求を行う前に、新たなMax−ageを用いてセンサーリソースの管理状態を継続することができる。なお、第1のMax−ageの時間が経過間近になったことに応じて処理1020が実行するようにすれば、第1のMax−ageにより示される有効期限が切れる前に、処理1020、1021が実行される。これにより、機器管理サーバ101がMax−ageの経過を検知して新たな監視要求を送信する前に、機器管理サーバ101におけるMax−ageが更新されることをより確実にするためである。また、処理1020でMax−ageの送信が行われると、第2のMax−ageの残り時間により第1のMax−ageが更新される。
In
通常、CoAPを用いて、監視要求を行う場合、センサーリソースからの通知パケットはすべて監視要求を行った機器が受信する。そのため、処理1015のように、監視対象のリソースのセンサー値の変化が検知されたことに応じて通知パケットが送信される場合、そのパケットから取得したMax−ageが経過するまで再度の監視要求が行われることはない。これに対して、本実施形態の機器管理サーバ101は、処理1012で取得したMax−ageが経過してしまうと、そのタイミングで再監視要求を行うことになり、監視要求の発生頻度が増加する。本実施形態では、機器管理サーバ101へ通知したMax−ageが経過するタイミングで、センサー情報管理テーブルに保持している更新後のMax−ageの残り時間から算出したMax−ageと、センサーデータ値から生成した通知パケットを送信する。これにより機器管理サーバ101は、本来、監視要求を行うべきタイミングでのみ監視要求パケットを送信するようになる。
Normally, when making a monitoring request using CoAP, all notification packets from sensor resources are received by the device that has made the monitoring request. Therefore, when a notification packet is transmitted in response to detection of a change in the sensor value of the monitoring target resource as in
なお、本実施形態ではIoT−GW102が機器管理サーバ101のMax−ageが切れるタイミングを検知して、IoT−GW102が保持するセンサー情報から通知パケットを生成して機器管理サーバ101へ通知パケットの送信を行った。しかし機器管理サーバ101がMax−ageの経過を検知して、機器管理サーバ101が送信する監視要求に対し、IoT−GW102が保持するセンサー情報を用いて通知パケットを生成して返信するようにしてもよい。この場合、IoT−GW102は、機器管理サーバ101から受信した監視要求に対応した通知パケットに対応するエントリがセンサー情報管理テーブルに登録されているかを判断する。登録されていると判断された場合、IoT−GW102は、登録されているエントリを用いて通知パケットを生成し、これを監視要求に対する応答として機器管理サーバ101へ送信する。これにより、IoT−GW102からセンサー装置103へ中継、転送するパケットの頻度を減らすことが可能となる。また、IoT−GW102は機器管理サーバ101が保持する第1のMax−ageの経過を検知する必要がなくなり、常に最新の通知パケットからMax−ageとセンサーデータ値を取得して保持するだけでよくなる。これにより、IoT−GW102が管理するタイマーやMax−ageの情報管理の煩雑度を低減することが可能となる。
In this embodiment, the IoT-
さらに時間が経過して、エントリを削除する時間を検知するために記憶した第2のMax−ageが経過すると、処理1023において、IoT−GW102の転送制御部405は、センサー情報管理テーブルから対応するエントリを削除する。これは一定時間が経過してもセンサー装置103のセンサーリソースからセンサーデータ処理サーバ111へ転送するパケットを受信しなかったことを意味する。つまり、IoT−GW102が通知パケットを転送してから、その通知パケットに含まれるMax−ageが示す有効期限が経過したこととなる。これは単純にセンサーリソースの値の変化がなく一定時間が経過した場合もしくは、センサーリソースがリセットされた場合、または途中経路において通信が途絶えた場合に発生する。一方、機器管理サーバ101は、現在監視対象としているセンサー装置103のセンサーリソースのMax−ageが経過したことを検知すると、処理1024において当該リソースに対して再度の監視要求を行う。処理1025において、機器管理サーバ101からIoT−GW102へ監視要求パケットが送信される。
When the second Max-age stored for detecting the time to delete the entry elapses further after the elapse of time, the
処理1026においてIoT−GW102は、監視要求パケットをセンサー装置103へ中継し、処理1027においてパケットを転送する。その後の処理1026〜1034における各装置の動作は、上述した処理1006〜1014と同様である。これにより、センサー装置103は、受信した監視要求パケットを基にセンサー装置103が持つリソースの監視状態(Observed)を継続する。また、処理1015から処理1028の間にセンサー装置103がリセットされる等してリソースの監視(Observed)状態を失っていた場合は、処理1028において、処理1008同様にして、監視状(Observed)態に移行する。
In
次に、IoT−GW102の転送処理について図11のフローチャートを用いて説明する。なお、図11に示す転送処理は、処理1006、処理1010、処理1017、処理1026、処理1030に対応する。
Next, transfer processing of the IoT-
ステップS1101において、転送制御部405は、LAN制御部407またはPAN制御部408を介して中継の対象であるパケットを受信する。ステップS1102において、転送制御部405は、ステップS1101で受信したパケットを解析し、通知パケットであるか否かを判定する。通知パケットであると判定された場合、処理はステップS1103へ進み、通知パケットではないと判定された場合、処理はステップS1108へ進む。
In step S1101, the
ステップS1103において、転送制御部405は、受信した通知パケットに対する転送規則を確認する。より具体的には、フローテーブルを参照して受信した通知パケットに該当するマッチング規則を持つフローエントリを検索する。該当するフローエントリが検索された場合、そのアクションリストの適用により通知パケットの宛先が変更されるかを確認する。宛先が変更される場合、処理はステップS1104へ進み、フローエントリが存在しないまたはフローエントリは存在するが宛先は変更されない場合、処理はステップS1108へ進む。ステップS1103の処理は、ステップS605と同様である。
In step S1103, the
ステップS1104において、転送制御部405は、通知パケットから宛先、送信元IPアドレス及びセンサー情報を取得する。転送制御部405は、RAM403に構成されているセンサー情報管理テーブルを参照し、通知パケットの宛先、送信元IPアドレス、センサー情報と一致する宛先、送信元IPアドレス、センサー情報を持つエントリが保持されているかを検索する。そのようなエントリ(通知パケットに対応するエントリ)が存在する場合、処理はステップS1107へ進み、存在しない場合、処理はステップS1105へ進む。
In step S1104, the
ステップS1105において、通知パケットの宛先、送信元IPアドレス及びセンサー種別やURI等のセンサーリソース情報、センサーデータ及び、Max−ageを取得し、センサー情報管理テーブルにエントリを追加する。この際、Max−ageはエントリを削除するための時間として記憶する。なお、記憶したセンサー情報のMax−ageの時間が経過すると、本テーブルエントリの削除を行う。 In step S1105, the destination of the notification packet, the source IP address, sensor type information such as sensor type and URI, sensor data, and Max-age are acquired, and an entry is added to the sensor information management table. At this time, Max-age is stored as a time for deleting the entry. Note that when the Max-age time of the stored sensor information has elapsed, this table entry is deleted.
ステップS1106において、転送制御部405は、受信した通知パケットを複製して、当該通知パケットで指定されている宛先(本例では機器管理サーバ101)へこれを送信する。この処理はフローテーブルに指定された転送規則とは別に行われる。これにより、受信した通知パケットをセンサーデータ処理サーバ111へ宛先を変更して転送する転送規則が設定されていた場合においても、IoT−GW102の判断で機器管理サーバ101へ通知パケットを転送することが可能となる。そのため、リソースの鮮度、すなわちリソースのデータの有効期限であるMax−ageを機器管理サーバ101が受信可能となり、適切にセンサーリソースのMax−ageを通知することができる。またこの際、複製して通知したMax−ageを第1のMax−ageとして記憶する。第1のMax−ageは機器管理サーバ101に通知したMax−ageが経過したか否かを検知するために用いられる。上述したように、センサー情報管理テーブルには、エントリを削除するための第2のMax−ageと、機器管理サーバ101へ通知した第1のMax−ageの2つのMax−ageが保持されることとなる。
In step S1106, the
ステップS1104において、センサー情報管理テーブルに通知パケットに対応するエントリが存在すると判定された場合、転送制御部405は、機器管理サーバ101においてもMax−ageを保持していると判断する。ステップS1107において、転送制御部405は、通知パケットからMax−age及びセンサーデータを取得し、センサー情報管理テーブルのエントリの第2のMax−age及びセンサーデータを更新する。上述したように、更新されるMax−ageは、センサー情報管理テーブルのエントリを削除するタイミングを検知するために記憶したMax−ageである。処理1023で説明したように、転送制御部405は、この第2のMax−ageの時間が経過したと判定した場合に、センサー情報管理テーブルのエントリを削除する。
If it is determined in step S1104 that an entry corresponding to the notification packet exists in the sensor information management table, the
なお、本実施形態では2種類のMax−ageをRAMに記憶して管理することとしたが、2種類のMax−age時間が経過したか否かを検知するためのタイマーの設定値としてもよい。その場合、第2のMax−ageを更新することは、タイマーの発火時間を更新することとなる。 In this embodiment, two types of Max-age are stored and managed in the RAM, but may be set as a timer value for detecting whether or not two types of Max-age time have elapsed. . In that case, updating the second Max-age will update the firing time of the timer.
ステップS1108、S1109は、第1実施形態(図6)のステップS609、S610と同様である。また、第1実施形態と同様に、ステップS1103を経由してステップS1108の処理を行った場合、ステップS1103で検索した結果をキャッシュや別途メモリに格納する等して検索処理をスキップしてもよい。そうすることで検索処理を1回行えばよくなり、処理負荷を軽減可能である。 Steps S1108 and S1109 are the same as steps S609 and S610 of the first embodiment (FIG. 6). Similarly to the first embodiment, when the process of step S1108 is performed via step S1103, the search process may be skipped by storing the result retrieved in step S1103 in a cache or a separate memory. . By doing so, the search process needs to be performed only once, and the processing load can be reduced.
以上のような転送処理によれば、転送制御部405は、センサー情報管理テーブルに新たなエントリが追加された場合に、機器管理サーバ101へ転送が必要と判断する。この場合、転送制御部405は、転送規則に限定されず、機器管理サーバ101へ通知パケットを転送する。これによって、IoT−GW102は、適切なタイミングで必要に応じて機器管理サーバ101にセンサーリソースのMax−ageを通知することができる。
According to the transfer processing as described above, the
本実施形態では、センサー情報管理テーブルにおけるエントリとして通知パケットの宛先、送信元IPアドレス及びリソース情報、Max−ageを記憶しているか否かにより、管理装置へ判断を行ったが、別の方法であってもよい。例えば通知パケットに含まれるURI情報のみで一意に識別可能な場合はURI情報と第1および第2のMax−ageのみを保持するようにしてもよい。また、機器管理サーバ101からの監視要求に対する通知パケットが一意に識別できる情報であればよい。
In this embodiment, a determination is made to the management apparatus depending on whether or not the destination of the notification packet, the transmission source IP address and resource information, and Max-age are stored as entries in the sensor information management table. There may be. For example, when it is possible to uniquely identify only the URI information included in the notification packet, only the URI information and the first and second Max-age may be held. Any notification packet for the monitoring request from the
以上の処理によりIoT−GW102の制御により、通知パケットから取得した情報をMax−ageを用いてエントリ管理し、新規に管理に追加した場合のみ、通知パケットを複製して機器管理サーバへ転送する。また、Max−ageが切れたタイミングで管理する情報を削除する。管理しているセンサー情報のMax−ageが切れていない場合はセンサーデータ値とMax−ageの更新とともに、転送規則に従った転送のみを行う。また、IoT−GW102は機器管理サーバ101へ送信した通知パケットのMax−ageを管理し、機器管理サーバ101が持つMax−ageが経過することを検知する。そして機器管理サーバ101へ転送していないものも含めた通知パケットから取得したIoT−GW102が保持するセンサー情報、センサーデータ、Max−ageを用いて通知パケットを生成して送信する。これにより、IoT−GW102の判断により適切なタイミングで機器管理サーバ101へ通知パケットを転送ないし送信可能となり、機器管理サーバ101がMax−ageを取得可能となる。このようにしてIoT−GW102の判断により、転送規則に限定されず、必要に応じて、機器管理サーバ101へMax−ageを通知することで、機器管理サーバ101の処理負荷の削減、しいてはネットワークトラフィックを削減することが可能となる。
With the above processing, the information acquired from the notification packet is entry-managed using Max-age under the control of the IoT-
この方法によれば、IoT−GW102がパケットを中継、転送を行うとともに、転送を行った通知パケットから取得した情報を基に、適切なタイミングで通知パケットを送信するため、機器管理サーバ101が送信する再監視要求の頻度を減らすことが可能となる。そのため、機器管理サーバ101及びセンサー装置103の処理を軽減することが可能となる。またネットワークトラフィックの増加を軽減することが可能となる。
According to this method, the IoT-
なお、上記第1〜第3実施形態で説明した構成及び処理は一例であり、それぞれ記載された構成、処理に限定されるものではない。センサー装置のリソースを機器管理サーバ(101,701)が管理し、所定のタイミングにおいて通知パケットが機器管理サーバ101に転送されることで適切に鮮度を監視できればよい。換言すれば、センサー装置からの通知パケットをセンサーデータ処理サーバに転送する中継装置において、所定のタイミングで通知パケットを機器管理サーバに転送し、所定のタイミング以外では機器管理サーバに転送しないように制御する構成であればよい。
In addition, the structure and process demonstrated by the said 1st-3rd embodiment are examples, and are not limited to the structure and process each described, respectively. It is only necessary that the device management server (101, 701) manages the resources of the sensor device and the notification packet is transferred to the
また、上記第1〜第3実施形態ではOCFに準拠した構成で説明したが、CoAPを用いた機器の状態監視を行う構成であればよく、各実施形態においてOCFの技術に準拠した構成が用いられる必要はない。また、監視対象のセンサー装置からのパケットを、機器管理サーバの制御に従って中継装置がセンサーデータ処理サーバに転送することで無駄なトラフィックを抑える構成であればよく、CoAPに限られる必要はない。 Moreover, although the said 1st-3rd embodiment demonstrated by the structure based on OCF, what is necessary is just the structure which monitors the state of the apparatus using CoAP, and the structure based on the technique of OCF is used in each embodiment. There is no need to be done. The relay device may be configured to suppress useless traffic by transferring packets from the monitoring target sensor device to the sensor data processing server according to the control of the device management server, and is not limited to CoAP.
また、第2、第3実施形態ではエントリをセンサー情報管理テーブルに記憶し、受信した通知パケットに対応するエントリが存在する場合に、当該通知パケットを、転送規則に限定されずに、機器管理サーバ101へも転送することが必要であると判断した。第2、第3実施形態では、エントリをRAM403を用いて記憶するものとしたが、これに限られない。例えば、CPU402のキャッシュ等を用いてエントリを保持する構成としてもよい。また、第3実施形態では、処理1020で通知パケットを生成するために、エントリとして最新のセンサーデータを保持している。通知パケットを生成するにあたり必要となる情報が他にもある場合は、その情報もエントリの一部として保持される。
In the second and third embodiments, the entry is stored in the sensor information management table. When there is an entry corresponding to the received notification packet, the notification packet is not limited to the transfer rule, and the device management server It is determined that it is necessary to transfer the data to 101. In the second and third embodiments, the entry is stored using the
また、第2、第3実施形態では、通知パケットに含まれる宛先、送信元IPアドレス及びリソース情報を用いて、以後に中継する通知パケットが同一のリソースからのパケットであるか識別したが、これに限られず、一意に識別可能な情報であればよい。またリソース情報はセンサーリソースの種別やセンサーリソースのURI等の情報を想定するが、通知パケットから取得可能な情報であればよい。また、リソース情報は、センサー装置103のセンサーリソースを他のセンサー装置のセンサーリソースと識別可能な情報であればよい。また、リソース情報は、別途規定するパケットデータ内の情報であってもよい。つまり同一センサーであるかを判別するためのセンサー情報管理テーブルを検索する際の検索キーを必要に応じて変更してもよい。
In the second and third embodiments, the destination, source IP address, and resource information included in the notification packet are used to identify whether the notification packet to be relayed later is a packet from the same resource. The information is not limited to this, and any information that can be uniquely identified may be used. The resource information is assumed to be information such as the type of sensor resource and the URI of the sensor resource, but may be information that can be acquired from the notification packet. Further, the resource information may be information that can distinguish the sensor resource of the
また第1、第3実施形態では、機器管理サーバ101は、OCFに準拠したOICクライアントとしての機能及び、OpenFlowプロトコルに準拠したOpenFlowコントローラとしての機能を持つ構成としたが、別々の機器で構成してもよい。同様に、第2実施形態において、OCFに準拠したOICクライアントとしての機能を持つ機器管理サーバ701とOpenFlowプロトコルに準拠したOpenFlowコントローラとしての機能を持つ転送制御管理装置712が同一の機器で構成されてもよい。
In the first and third embodiments, the
また、第1、第3実施形態において、機器管理サーバ101とIoT−GW102は別の機器で構成したが、同一の機器内の機能として構成してもよい。同様に、第2実施形態において機器管理サーバ701、転送制御管理装置712とIoT−GW102は別の機器で構成したが、同一の機器内の機能として構成してもよい。つまりこの場合、OpenFlowコントローラとOpenFlowスイッチの機能を同一機器内に有する構成となる。
In the first and third embodiments, the
また、第1~第3実施形態において、OpenFlowプロトコルによる機器管理サーバとIoT−GW102との通信は、OpenFlowプロトコルの別の種別のパケットで同様の処理を実現可能であれば、必ずしも同じ種別のパケットである必要はない。また、IoT−GW102、及び機器管理サーバ101、はそれぞれ、複数の装置が連携して動作するように構成してもよい。
In the first to third embodiments, the communication between the device management server using the OpenFlow protocol and the IoT-
<その他の実施系遺体>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
<Other implementation bodies>
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
100,700:情報処理システム、101,701:機器管理サーバ、102:IoT−GW、103〜106:センサー装置、107:LAN、108:WSN、110:WAN、109,111:センサーデータ処理サーバ、712:転送制御管理装置 100, 700: Information processing system, 101, 701: Device management server, 102: IoT-GW, 103-106: Sensor device, 107: LAN, 108: WSN, 110: WAN, 109, 111: Sensor data processing server, 712: Transfer control management device
Claims (18)
転送規則に従うことにより、前記受信手段により受信されたパケットが示す第1の宛先とは異なる第2の宛先へ前記受信されたパケットを送信する第1の送信手段と、
前記受信手段により受信された前記要求に関連するパケットを、前記要求の送信元へ送信するか否かを判定する判定手段と、
前記判定手段により送信すると判定された場合に、前記要求に関連するパケットを前記第1の宛先へ送信する第2の送信手段と、を備えることを特徴とする情報処理装置。 Receiving means for receiving a packet related to the request from a resource to which the request is relayed;
First transmission means for transmitting the received packet to a second destination different from the first destination indicated by the packet received by the reception means by following a transfer rule;
Determining means for determining whether or not to transmit a packet related to the request received by the receiving means to a transmission source of the request;
An information processing apparatus comprising: a second transmission unit configured to transmit a packet related to the request to the first destination when it is determined to be transmitted by the determination unit.
前記判定手段は、前記第1の保持手段が前記情報を保持している間に前記受信手段が前記要求に関連するパケットを受信した場合に、受信された前記パケットを前記要求の送信元へ送信すると判定し、前記第1の保持手段から前記情報を削除することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。 First holding means for holding information related to the request relayed to the resource;
The determination unit transmits the received packet to the transmission source of the request when the reception unit receives a packet related to the request while the first holding unit holds the information. The information processing apparatus according to claim 1, wherein the information processing apparatus determines that the information is deleted and deletes the information from the first holding unit.
前記受信手段により受信された前記要求に関連するパケットに対応するエントリが前記第2の保持手段に保持されていない場合、前記判定手段は、当該パケットを前記要求の送信元に送信すると判定することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。 Second holding means for holding an entry including a destination and a transmission source of the packet determined to be transmitted until an expiration date included in the packet transmitted by the second transmission means elapses;
When the entry corresponding to the packet related to the request received by the receiving unit is not held in the second holding unit, the determining unit determines to transmit the packet to the transmission source of the request The information processing apparatus according to any one of claims 1 to 3.
前記第2の保持手段に保持されている有効期限に対する時間の経過に基づいて前記第3の保持手段に保持されている有効期限に基づく新たな有効期限を含むパケットを前記第1の宛先へ送信する第3の送信手段と、を備えることを特徴とする請求項8に記載の情報処理装置。 A third holding means for holding an expiration date included in the most recently received packet among the packets related to the request received by the receiving means;
A packet including a new expiration date based on the expiration date held in the third holding means is transmitted to the first destination based on the passage of time with respect to the expiration date held in the second holding means. The information processing apparatus according to claim 8, further comprising: a third transmission unit configured to perform the transmission.
前記第3の送信手段は、前記第3の保持手段に保持されている有効期限とデータを含むパケットを前記第1の宛先へ送信することを特徴とする請求項9乃至11のいずれか1項に記載の情報処理装置。 The third holding means holds an expiration date and data included in the most recently received packet,
12. The third transmission unit according to claim 9, wherein the third transmission unit transmits a packet including an expiration date and data held in the third holding unit to the first destination. The information processing apparatus described in 1.
転送規則に従うことにより、前記受信手段により受信されたパケットが示す第1の宛先とは異なる第2の宛先へ前記受信されたパケットを送信する第1の送信手段と、
前記受信手段により受信された前記要求に関連するパケットを、前記要求の送信元へ送信するか否かを判定する判定手段と、
前記判定手段により送信すると判定された場合に、前記要求に関連するパケットに含まれる有効期限を前記第1の宛先へ送信する第2の送信手段と、を備えることを特徴とする情報処理装置。 Receiving means for receiving a packet related to the request from a resource to which the request is relayed;
First transmission means for transmitting the received packet to a second destination different from the first destination indicated by the packet received by the reception means by following a transfer rule;
Determining means for determining whether or not to transmit a packet related to the request received by the receiving means to a transmission source of the request;
An information processing apparatus comprising: a second transmission unit configured to transmit an expiration date included in a packet related to the request to the first destination when it is determined to be transmitted by the determination unit.
要求を中継した先のリソースから前記要求に関連するパケットを受信する受信工程と、
転送規則に従うことにより、前記受信工程により受信されたパケットが示す第1の宛先とは異なる第2の宛先へ前記受信されたパケットを送信する第1の送信工程と、
前記受信工程により受信された前記要求に関連するパケットを、前記要求の送信元へ送信するか否かを判定する判定工程と、
前記判定工程により送信すると判定された場合に、前記要求に関連するパケットを前記第1の宛先へ送信する第2の送信工程と、を備えることを特徴とする情報処理装置の制御方法。 A method for controlling an information processing apparatus,
Receiving a packet related to the request from a resource to which the request was relayed;
A first transmission step of transmitting the received packet to a second destination different from the first destination indicated by the packet received by the reception step by following a transfer rule;
A determination step of determining whether or not to transmit a packet related to the request received by the reception step to a transmission source of the request;
A control method for an information processing apparatus, comprising: a second transmission step of transmitting a packet related to the request to the first destination when it is determined to be transmitted by the determination step.
要求を中継した先のリソースから前記要求に関連するパケットを受信する受信工程と、
転送規則に従うことにより、前記受信工程により受信されたパケットが示す第1の宛先とは異なる第2の宛先へ前記受信されたパケットを送信する第1の送信工程と、
前記受信工程により受信された前記要求に関連するパケットを、前記要求の送信元へ送信するか否かを判定する判定工程と、
前記判定工程により送信すると判定された場合に、前記要求に関連するパケットに含まれる有効期限を前記第1の宛先へ送信する第2の送信工程と、を備えることを特徴とする情報処理装置の制御方法。 A method for controlling an information processing apparatus,
Receiving a packet related to the request from a resource to which the request was relayed;
A first transmission step of transmitting the received packet to a second destination different from the first destination indicated by the packet received by the reception step by following a transfer rule;
A determination step of determining whether or not to transmit a packet related to the request received by the reception step to a transmission source of the request;
An information processing apparatus comprising: a second transmission step of transmitting an expiration date included in a packet related to the request to the first destination when it is determined to be transmitted by the determination step. Control method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018093979A JP2019201287A (en) | 2018-05-15 | 2018-05-15 | Information processing apparatus and control method of the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018093979A JP2019201287A (en) | 2018-05-15 | 2018-05-15 | Information processing apparatus and control method of the same |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019201287A true JP2019201287A (en) | 2019-11-21 |
Family
ID=68613212
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018093979A Pending JP2019201287A (en) | 2018-05-15 | 2018-05-15 | Information processing apparatus and control method of the same |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019201287A (en) |
-
2018
- 2018-05-15 JP JP2018093979A patent/JP2019201287A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20150249588A1 (en) | Distributed Processing System | |
JP2007535190A (en) | Communication network system and communication device | |
JP2008054096A (en) | Network repeater and method for controlling network repeater | |
KR101761495B1 (en) | Reducing a number of server-client sessions | |
US9197507B2 (en) | Auto-configuring multi-layer network | |
EP3005740B1 (en) | Identifying resources from a device in a communications network | |
JP2011124624A (en) | Radio access point having communication parameter setting function by beacon | |
JP2006262193A (en) | Controller, packet transferring method, and packet processor | |
CN104852840A (en) | Method and device for controlling mutual access between virtual machines | |
JP6290053B2 (en) | COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND COMMUNICATION METHOD | |
US9407529B2 (en) | Relay server and relay communication system | |
JP2009290758A (en) | Gateway apparatus | |
JP5941556B2 (en) | Packet relay device, packet transfer method, and communication system | |
US9197557B2 (en) | Relay server and relay communication system | |
US10419386B2 (en) | Endpoint identifiers registration | |
JP2019201287A (en) | Information processing apparatus and control method of the same | |
JP4900474B2 (en) | Information processing apparatus, node position acquisition method and program, and communication system | |
JP4923977B2 (en) | Terminal accommodating apparatus, packet path switching method, and packet path switching program | |
JP2008109357A (en) | Packet transfer device and packet transfer method | |
JP2019068139A (en) | Management device, information processing system, control method, and program | |
JP2019080209A (en) | Management device and method for managing data transfer device | |
JP6002642B2 (en) | Communication node, network system, and device control method | |
JP6507833B2 (en) | Communication system, gateway and program | |
JP6347177B2 (en) | Transfer device, control device, and communication method | |
JP2018117316A (en) | Communication apparatus, control device, control method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20210103 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210113 |