(57)【要約】      （修正有）【課題】通信状況に応じた方法、もしくは、ユーザ設定に応じた方法に従って、ＩＰｖ６アドレスの設定に利用されるプレフィクスを配布できるようにする通信装置、通信装置の制御方法およびプログラムを提供する。【解決手段】ＩＰｖ６に準拠したＩＰアドレスを設定する際に利用されるプレフィクスの利用状況、プレフィクスに基づいて設定されたＩＰアドレスを利用したパケットの通信状況、もしくは、ユーザ設定に基づく、６ＬｏＷＰＡＮに準拠したプレフィクスの配布方法に従って、プレフィクスを配布する。【選択図】図４
2019033363.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
他の通信装置がＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ６）に準拠したＩＰアドレスを設定する際に利用するプレフィクスを管理する管理手段と、
前記管理手段により管理された前記プレフィクスの利用状況、もしくは、前記プレフィクスに基づいて設定されたＩＰアドレスを利用したパケットの通信状況に基づいて、６ＬｏＷＰＡＮ（ＩＰｖ６  ｏｖｅｒ  Ｌｏｗ  ｐｏｗｅｒ  Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ）に準拠したプレフィクスの配布方法のうち、前記他の通信装置に前記プレフィクスを配布する際の配布方法を選択する第１の選択手段と、
前記第１の選択手段により選択された配布方法に従って、前記プレフィクスを前記他の通信装置に配布する配布手段と、
を有することを特徴とする通信装置。
【請求項２】
前記配布手段は、６ＬｏＷＰＡＮに準拠したＲｏｕｔｅｒ  Ａｄｖｅｒｔｉｓｅｍｅｎｔを利用して、前記プレフィクスを前記他の通信装置に配布することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記配布手段により配布される前記プレフィクスは、前記他の通信装置がＩＰｖ６に準拠したＩＰアドレスを自動設定する際に利用されることを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記第１の選択手段は前記プレフィクスを、前記プレフィクスに基づいて設定されたＩＰアドレスを圧縮可能とする形式で配布するか否かを選択することを特徴とする請求項１から３のいずれか１項に記載の通信装置。
【請求項５】
前記第１の選択手段は前記プレフィクスを、６ＣＯ（６ＬｏＷＰＡＮ  Ｃｏｎｔｅｘｔ Ｏｐｔｉｏｎ）で配布するか、ＰＩＯ（Ｐｒｅｆｉｘ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｏｐｔｉｏｎ）で配布するかを選択することを特徴とする請求項１から４のいずれか１項に記載の通信装置。
【請求項６】
前記第１の選択手段は、前記他の通信装置に配布する前記プレフィクスを利用している装置の台数に基づいて、前記他の通信装置に前記プレフィクスを配布する際の配布方法を選択することを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項７】
前記第１の選択手段は、前記他の通信装置に配布する前記プレフィクスを利用している装置の台数が所定の台数よりも多い場合には６ＣＯで配布することを選択し、前記所定の台数よりも少ない場合にはＰＩＯで配布することを選択することを特徴とする請求項６に記載の通信装置。
【請求項８】
前記第１の選択手段は、前記他の通信装置に配布する前記プレフィクスに基づいて設定されたＩＰアドレスを利用したパケットを前記通信装置が受信する頻度に基づいて、前記他の通信装置に前記プレフィクスを配布する際の配布方法を選択することを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項９】
前記第１の選択手段は、前記他の通信装置に配布する前記プレフィクスに基づいて設定されたＩＰアドレスを利用したパケットを前記通信装置が受信する頻度が第１の閾値よりも高い場合には６ＣＯで配布することを選択し、前記第１の閾値よりも低い場合にはＰＩＯで配布することを選択することを特徴とする請求項８に記載の通信装置。
【請求項１０】
前記第１のネットワークから受信したパケットのフラグメントの発生頻度に基づいて、前記第１の選択手段は、前記他の通信装置に前記プレフィクスを配布する際の配布方法を選択することを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項１１】
前記第１の選択手段は、前記第１のネットワークから受信したパケットのフラグメントの発生頻度が第２の閾値よりも高い場合には６ＣＯで配布することを選択し、前記第２の閾値よりも低い場合にはＰＩＯで配布することを選択することを特徴とする請求項１０に記載の通信装置。
【請求項１２】
前記他の通信装置を含む第１のネットワークから受信したパケットを、前記第１のネットワークとは異なる第２のネットワークへ転送する転送手段を更に有することを特徴とする請求項１から１１のいずれか１項に記載の通信装置。
【請求項１３】
前記第１のネットワークは６ＬｏＷＰＡＮに準拠したネットワークであり、前記第２のネットワークはＥｈｔｅｒｎｅｔもしくはＩＥＥＥ８０２．１１シリーズに準拠したネットワークであることを特徴とする請求項１２に記載の通信装置。
【請求項１４】
前記第１のネットワークから受信したパケットのヘッダ部分を、前記第２のネットワークに適合する形式に変更する変更手段を更に有することを特徴とする請求項１２または１３に記載の通信装置。
【請求項１５】
前記変更手段は、前記第１のネットワークから受信したパケットに含まれるデータの種別に対応するＩＰｖ６アドレスを付加することを特徴とする請求項１４に記載の通信装置。
【請求項１６】
前記転送手段は、前記転送手段が前記第１のネットワークから受信したパケットのプレフィクスに応じた転送先に、当該パケットを転送することを特徴とする請求項１２から１５のいずれか１項に記載の通信装置。
【請求項１７】
前記転送手段が前記第１のネットワークから受信したパケットに所定のベンダーＩＤが含まれている場合、前記転送手段は、当該パケットのプレフィクスに応じた転送先に、当該パケットを転送することを特徴とする請求項１６に記載の通信装置。
【請求項１８】
前記管理手段はＩＰｖ６に準拠したＩＰアドレスを設定する際に利用するプレフィクスを複数管理し、
前記管理手段が管理する複数のプレフィクスの中から、前記他の通信装置の機器種別に応じたプレフィクスを、前記配布手段が配布するプレフィクスとして選択する第２の選択手段を更に有することを特徴とする請求項１から１７のいずれか１項に記載の通信装置。
【請求項１９】
前記他の通信装置はセンサーであり、
前記第２の選択手段は、前記他の通信装置のセンサー種別に応じたプレフィクスを、前記配布手段が配布するプレフィクスとして選択することを特徴とする請求項１８に記載の通信装置。
【請求項２０】
前記配布手段は、前記他の通信装置からの要求に応じて、前記プレフィクスを前記他の通信装置に配布することを特徴とする請求項１から１９のいずれか１項に記載の通信装置。
【請求項２１】
通信装置であって、
他の通信装置がＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ６）に準拠したＩＰアドレスを設定する際に利用するプレフィクスを管理する管理手段と、
前記管理手段により管理された前記プレフィクスの配布方法をユーザに設定させる設定手段と、
前記設定手段により設定された配布方法に従って、前記プレフィクスを前記他の通信装置に配布する配布手段と、
を有することを特徴とする通信装置。
【請求項２２】
前記第１の選択手段は前記プレフィクスを、６ＣＯ（６ＬｏＷＰＡＮ  Ｃｏｎｔｅｘｔ Ｏｐｔｉｏｎ）で配布するか、ＰＩＯ（Ｐｒｅｆｉｘ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｏｐｔｉｏｎ）で配布するかを選択することを特徴とする請求項２１に記載の通信装置。
【請求項２３】
通信装置の制御方法であって、
他の通信装置がＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ６）に準拠したＩＰアドレスを設定する際に利用するプレフィクスの利用状況、もしくは、前記プレフィクスに基づいて設定されたＩＰアドレスを利用したパケットの通信状況に基づいて、６ＬｏＷＰＡＮ（ＩＰｖ６  ｏｖｅｒ  Ｌｏｗ  ｐｏｗｅｒ  Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ）に準拠したプレフィクスの配布方法のうち、前記他の通信装置に前記プレフィクスを配布する際の配布方法を選択する選択工程と、
前記選択工程において選択された配布方法に従って、前記プレフィクスを前記他の通信装置に配布する配布工程と、
を有することを特徴とする制御方法。
【請求項２４】
通信装置の制御方法であって、
他の通信装置がＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ６）に準拠したＩＰアドレスを設定する際に利用するプレフィクスの配布方法をユーザに設定させる設定工程と、
前記設定工程において設定された配布方法に従って、前記プレフィクスを前記他の通信装置に配布する配布工程と、
を有することを特徴とする制御方法。
【請求項２５】
コンピュータを請求項１から２２のいずれか１項に記載の通信装置として動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プレフィクスを配布する通信装置に関する。
【背景技術】
【０００２】
近年、ＷＰＡＮ（Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）の上位層のプロトコルとして６ＬｏＷＰＡＮを使用するケースが増加している。６ＬｏＷＰＡＮとは、ＩＰｖ６  ｏｖｅｒ  Ｌｏｗ  ｐｏｗｅｒ  Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓの略である。
【０００３】
６ＬｏＷＰＡＮでは、ＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ６）に準拠したＩＰアドレスを利用して通信が行われる。また、６ＬｏＷＰＡＮ内の各装置はルータからプレフィクスを受信し、受信したプレフィクスに基づいて自装置が利用するＩＰアドレスを生成して利用する。
【０００４】
ここで、ルータがプレフィクスを配布するための方法として、６ＬｏＷＰＡＮでは、ＰＩＯ（Ｐｒｅｆｉｘ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｏｐｔｉｏｎ）と６ＣＯ（６ＬｏＷＰＡＮ  Ｃｏｎｔｅｘｔ  Ｏｐｔｉｏｎ）を利用することができることが規定されている。
【０００５】
６ＬｏＷＰＡＮ内の各装置は、６ＣＯで配布されたプレフィクスに基づいてＩＰアドレスを生成した場合、当該ＩＰアドレスを圧縮して利用することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−３３３０６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述したように、ＩＰｖ６アドレス設定のためのプレフィクスを配布する方法として、６ＬｏｗＰＡＮでは、６ＣＯやＰＩＯが規定されている。６ＣＯを利用すると、ＩＰアドレスを圧縮することができ、ネットワークの通信効率を高めることができるが、６ＣＯで配布できるプレフィクスの数には限りがある。従って、全てのプレフィクスを６ＣＯで配布することはできず、ＰＩＯで配布する必要がある。また、６ＣＯやＰＩＯに限らず、プレフィクスの配布方法を適宜、決定できるようにする必要がある。
【０００８】
上記課題を鑑み、本発明は、通信状況に応じた方法、もしくは、ユーザ指示に応じた方法に従って、ＩＰｖ６アドレスの設定に利用されるプレフィクスを配布できるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
上記を鑑み、本発明の通信装置は、他の通信装置がＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ６）に準拠したＩＰアドレスを設定する際に利用するプレフィクスを管理する管理手段と、前記管理手段により管理された前記プレフィクスの利用状況、もしくは、前記プレフィクスに基づいて設定されたＩＰアドレスを利用したパケットの通信状況に基づいて、６ＬｏＷＰＡＮ（ＩＰｖ６  ｏｖｅｒ  Ｌｏｗ  ｐｏｗｅｒ  Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ）に準拠したプレフィクスの配布方法のうち、前記他の通信装置に前記プレフィクスを配布する際の配布方法を選択する第１の選択手段と、前記第１の選択手段により選択された配布方法に従って、前記プレフィクスを前記他の通信装置に配布する配布手段と、を有する。
【００１０】
また、本発明の別の側面の通信装置は、他の通信装置がＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ６）に準拠したＩＰアドレスを設定する際に利用するプレフィクスを管理する管理手段と、前記管理手段により管理された前記プレフィクスの配布方法をユーザに設定させる設定手段と、前記設定手段により設定された配布方法に従って、前記プレフィクスを前記他の通信装置に配布する配布手段と、を有する。
【発明の効果】
【００１１】
本発明によれば、通信状況に応じた方法、もしくは、ユーザ指示に応じた方法に従って、ＩＰｖ６アドレスの設定に利用されるプレフィクスを配布することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態による情報処理システムのシステム構成図。
【図２】本発明の一実施形態による情報処理システムの中継装置のハードウェアブロック図。
【図３】本発明の一実施形態による情報処理システムのセンサーのハードウェアブロック図。
【図４】実施形態１に記載の中継装置によるプレフィクスの配布処理を表すフローチャート。
【図５】実施形態１に記載の中継装置の持つプレフィクスリスト。
【図６】実施形態１に記載のセンサーによるアドレス自動設定の処理を表すフローチャート。
【図７】実施形態１に記載のセンサーによるプレフィクスの抽出処理を表すフローチャート。
【図８】実施形態１に記載のセンサーの持つプレフィクステーブル。
【図９】実施形態１に記載のセンサーが生成するインタフェースＩＤフォーマットを示す図。
【図１０】実施形態１に記載の中継装置の持つフローテーブル。
【図１１】実施形態１に記載の中継装置によるパケット転送処理を表すフローチャート。
【図１２】実施形態２に記載の中継装置によるプレフィクスの再配布処理を表すフローチャート。
【図１３】実施形態２に記載の中継装置の持つプレフィクスリスト。
【図１４】実施形態２に記載のセンサーによるプレフィクスの抽出処理を表すフローチャート。
【図１５】実施形態２に記載の中継装置の持つフローテーブル。
【図１６】実施形態２に記載の中継装置によるパケット転送処理を表すフローチャート。
【図１７】実施形態３に記載の中継装置の持つフローテーブル。
【発明を実施するための形態】
【００１３】
以下に本発明の実施形態について図面を用いて説明する。
【００１４】
［実施形態１］
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態で説明する特徴の組み合わせの全てが本発明に必須のものとは限らない。
【００１５】
＜システム構成＞
本実施形態に係る情報処理システム１００の構成を図１に示す。情報処理システム１００は、中継装置１０１、センサー１０２、１０３、１０４及び１０５、センサーデータ処理装置１０６、１０７、ＬＡＮ／ＷＡＮ１０８、およびセンサーを有するＷＳＮ１０９を備えている。ここで、ＷＳＮは、Ｗｉｒｅｌｅｓｓ  Ｓｅｎｓｏｒ  Ｎｅｔｗｏｒｋの略である。なお、前述したように、センサーは「通信装置」の概念に包含されるものであるが、以下ではＷＳＮに接続された通信装置の一例として「センサー」を用いて説明する。また、本発明はセンサーデータ以外のデータにも適用可能であるが、以下では「センサーデータ」を用いて説明する。さらに、本発明はセンサーネットワーク以外のネットワークにも適用可能であるが、以下では「センサーネットワーク」を用いて説明する。同様に中継装置１０１から送信されたデータを処理する装置は、センサーデータの処理装置に限られないが、ここでは理解容易のために「センサーデータ処理装置」ということにする。なお、本実施形態においては、センサー１０２、１０３、１０４、及び１０５をまとめて呼称する場合は、センサー１０２−１０５と記載する。また、センサー１０２−１０５の少なくとも１つを指す場合には、センサー１０２、あるいは単にセンサーと記載する。
【００１６】
中継装置１０１は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）及びＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を有するネットワークであるＬＡＮ／ＷＡＮ１０８に接続する。中継装置１０１とＬＡＮ／ＷＡＮ１０８との接続は、例えばＥｔｈｅｒｎｅｔ（登録商標）などの有線接続であってもよいし、ＷＬＡＮ（Ｗｉｒｅｌｅｓｓ  ＬＡＮ：無線ＬＡＮ）やモバイル通信回線などの無線接続であってもよい。ＷＬＡＮとしては、Ｗｉ−Ｆｉ（ＩＥＥＥ８０２．１１シリーズに準拠）やＢｌｕｅｔｏｏｔｈ（登録商標）などが挙げられる。なお、本実施形態では中継装置１０１がＬＡＮ／ＷＡＮ１０８を介してセンサーデータ処理装置１０６と１０７に接続する場合について説明するが、中継装置１０１はＷＡＮ又はＬＡＮの何れかによって接続してもよい。もしくは、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等を利用して中継装置１０１がＷＡＮやＬＡＮを介すことなく直接、センサーデータ処理装置１０６や１０７と接続するようにしてもよい。さらに、センサーデータ処理装置１０６、１０７に対して複数の中継装置１０１がＬＡＮ／ＷＡＮ１０８を介して接続されているものとし、それら複数の中継装置１０１のうちの一つに注目して説明を行う。
【００１７】
中継装置１０１とセンサー１０２−１０５は、無線ＰＡＮ（Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）通信により、メッシュネットワークであるＷＳＮ１０９を構築する。ＷＳＮ１０９はメッシュ型のネットワークトポロジーに限定されるものではなく、スター型のようなネットワークであってもよい。なお、ＷＳＮ１０９に接続する装置は中継装置１０１とセンサー１０２−１０５だけでなくともよく、他のノード宛のパケットを転送できるルータやその他の装置を含むものであってもよい。
【００１８】
無線ＰＡＮの通信規格は、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｚｉｇｂｅｅ（登録商標）、及びＷｉ−ＳＵＮ（登録商標）などが挙げられる。ＷＳＮ１０９内では、いずれかの無線ＰＡＮ規格のプロトコルで通信が行われる。さらに上位層のプロトコルには６ＬｏＷＰＡＮ（ＩＰｖ６  ｏｖｅｒ  Ｌｏｗ  ｐｏｗｅｒ  Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ）を使用することを想定する。
【００１９】
センサー１０２−１０５のそれぞれは、ＷＳＮ１０９を介して、センサーデータのパケットを中継装置１０１へ送信する。中継装置１０１は、ＷＳＮ１０９のＬＡＮ／ＷＡＮ１０８に対するゲートウェイとしての役割を担う。つまり、中継装置１０１は、ＷＳＮ１０９の内部から送信されたパケットを、ＬＡＮ／ＷＡＮ１０８側へ転送する。また、本実施形態の情報処理システム１００は、ＬＡＮ／ＷＡＮ１０８においてＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ６）に基づく通信を行うものとして説明を行う。すなわち、中継装置１０１は、ＷＳＮから６ＬｏＷＰＡＮによってヘッダ圧縮・フラグメントされたパケットを受信し、当該パケットを伸長・リアセンブルしてＩＰｖ６パケットに変換した上で転送を行うものとする。
【００２０】
中継装置１０１は６ＬｏＷＰＡＮにおけるボーダールータ（６ＬＢＲ）として動作する。６ＬＢＲはルータ広告（ＲＡ）のパケットに６ＬｏＷＰＡＮ  Ｃｏｎｔｅｘｔ  Ｏｐｔｉｏｎ（６ＣＯ）およびＰｒｅｆｉｘ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｏｐｔｉｏｎ（ＰＩＯ）を付加して、ＩＰｖ６アドレスプレフィクス（以降、単にプレフィクスと呼ぶ）のリストをＷＳＮ１０９内のホストに対して配布する権限を持つ。ここで、ルータ広告（ＲＡ）とは、プレフィクスの情報や６ＬｏＷＰＡＮパケットの宛先情報をセンサーに通知するための送信メッセージである。６ＣＯとは、所定のプレフィクスと対応付けられて定められた識別情報であるＣＩＤ（Ｃｏｎｔｅｘｔ  ＩＤ）を含むオプションである。ＰＩＯとは、同一リンク判定とアドレス生成に用いるプレフィクスを通知するためのオプションである。本実施形態におけるプレフィクスの配布の方法については後述する。
【００２１】
一方で、センサー１０２−１０５は６ＬｏＷＰＡＮのノード（６ＬＮ）またはルータ（６ＬＲ）として動作する。６ＬＮと６ＬＲのいずれで動作する場合でも、センサー１０２−１０５はＷＳＮ１０９に参加した際に、ＩＰｖ６アドレス自動設定の処理を実行する。その際に、センサー１０２−１０５は６ＬＢＲまたは６ＬＲから受信したルータ広告（ＲＡ）に付される６ＣＯおよびＰＩＯに含まれるＩＰｖ６アドレスのプレフィクスのリストを取得する。そして、このリストに含まれるプレフィクスに、インタフェースＩＤを付加してＩＰｖ６アドレスを作成し、ネットワークインタフェースに設定する。なお、インタフェースＩＤ（ＩＩＤ）とは、６４ビットのプレフィクスとともに１２８ビットのＩＰｖ６アドレスを構成し、送信元を特定する識別情報を有する６４ビットの識別子である。インタフェースＩＤを付加する処理についても詳細な説明については後述する。
【００２２】
６ＬＢＲの配布したプレフィクスリストに含まれるプレフィクスを用いてセンサー１０２−１０５が設定したＩＰｖ６アドレスは、重複アドレスの検知の処理のために、近隣要請（ＮＳ：Ｎｅｉｇｈｂｏｒ  Ｓｏｌｉｃｉｔａｔｉｏｎ）および近隣広告（ＮＡ：Ｎｅｉｇｈｂｏｒ  Ａｄｖｅｒｔｉｓｅｍｅｎｔ）パケットに含まれるＡＲＯ（Ａｄｄｒｅｓｓ  Ｒｅｄｉｓｔｒａｔｉｏｎ  Ｏｐｔｉｏｎ）やＤＡＲ（Ｄｕｐｒｉｃａｔｅ  Ａｄｄｒｅｓｓ  Ｒｅｑｕｅｓｔ）、ＤＡＣ（Ｄｕｐｒｉｃａｔｅ  Ａｄｄｒｅｓｓ  Ｃｏｎｆｉｒｍａｔｉｏｎ）パケットを用いて、６ＬＢＲで一元的に管理されることになる。なお、近隣要請ＮＳとは、リンク層のアドレスの問い合わせと、データの到達可能性の確認と、重複アドレスの検出のための要請である。近隣広告ＮＡとは、近隣要請に対する応答である。ＡＲＯとは、６ＬＢＲが６ＬｏＷＰＡＮノードを識別するための６４ビットの識別子を通知するオプションである。ＤＡＲとは、６ＬｏＷＰＡＮネットワーク内に、同じＩＰｖ６アドレスを持つノードが存在していないかの問い合わせである。ＤＡＣとは、ＩＰｖ６アドレスの重複確認処理の結果を重複アドレス要求の送信元に返すための送信メッセージである
本実施形態において、中継装置１０１は、ゲートウェイとしての機能だけでなく、ネットワークカメラや、プリンタとしての機能を有していても良い。さらに、その他の処理を行うアプリケーションが実行可能なＰＣやスマートフォン、ルータなどであっても良いものとする。
【００２３】
センサーデータ処理装置１０６、１０７は、センサー１０２−１０５から送信されたセンサーデータパケットを、中継装置１０１を介して受信し、センサーデータの解析や蓄積を行う。また、センサーデータ処理装置１０６、１０７は、センサーデータの解析結果を表示したり、中継装置１０１に通知を行ったりしてもよい。センサーデータ処理装置１０６、１０７は、例えばＰＣやスマートフォンなどでもよく、また一般的にクラウドと呼ばれる仮想化基盤上にサーバ機能を構築したものであってもよい。
【００２４】
ＷＳＮ１０９に含まれるセンサー１０２−１０５は、それぞれ例えばジャイロ、加速度、方位、距離、振動、温度、照度、ＵＶ、気圧、ガス、放射能、におい、ドアや窓の開閉、侵入検知など、何らかの値の測定やイベント検知を行うことができる装置である。これらのセンサー１０２−１０５は、所定のイベントが検知されたことを示す情報及び測定から得られた数値の少なくとも何れかを含む検知結果を中継装置１０１に送信する。他にも例えば、センサー１０２−１０５は、設置場所の気温が閾値以上である等の所定の環境条件が満たされているか否かを示す情報を定期的に送信してもよい。実際の送信処理においては、センサー１０２−１０５は、宛先アドレス等を含むセンサーデータパケットのヘッダを検知結果に付加し、ＷＳＮ１０９上で通信可能な６ＬｏＷＰＡＮの規格に準拠したパケットにして送信する。
【００２５】
本実施形態では、センサーデータ処理装置１０６、１０７のいずれか、もしくはその両方が、中継装置１０１に対して、検知結果を含むセンサーデータパケットの転送先の指定を行うものとする。例えば、センサーデータ処理装置１０６、１０７は、中継装置１０１に到達したセンサーデータパケットのうち、温度や侵入検知など特定の種別の検知結果を含むパケットをセンサーデータ処理装置１０６に転送するように指定し、それ以外の種別の検知結果はセンサーデータ処理装置１０７に転送するように指定してもよい。中継装置１０１は、これらの指定に応じて、受信したセンサーデータパケットの転送先を判定し、そのパケットの宛先をセンサーデータ処理装置１０６または１０７に書き換えて転送する。
【００２６】
本実施形態では、上述のセンサーデータ処理装置１０６、１０７が実行する中継装置１０１に対する転送先の指定や、中継装置１０１が実行するセンサーデータパケットの宛先の書換えのために、ＯｐｅｎＦｌｏｗの技術を適用する。
【００２７】
本実施形態では、ＯｐｅｎＦｌｏｗコントローラ機能をセンサーデータ処理装置１０６、１０７に搭載し、ＯｐｅｎＦｌｏｗスイッチ機能を中継装置１０１に搭載する。このようにして、センサーデータ処理装置１０６、１０７は、中継装置１０１におけるセンサーデータパケットの転送に関する設定を、ＯｐｅｎＦｌｏｗにおけるフロー情報として定義して設定する。
【００２８】
ＯｐｅｎＦｌｏｗのフロー情報は、転送対象のパケットを指定する条件であるマッチングルールと、マッチングルールに合致したパケットの転送処理として実行する処理群であるアクションリストとを含む。本実施形態では、センサーデータ処理装置１０６、１０７が、中継装置１０１に対してフロー情報のマッチングルールを設定する。前記フロー情報のマッチングルールは、中継装置１０１が受信するパケットが特定の検知結果を含むセンサーデータであるか否かを判定する条件を含むようにする。本実施形態においては、パケットの送信元アドレスを用いて、特定の検知結果を含むセンサーデータパケットであるか否かを判定する条件を含むようにする。さらに、パケットの宛先をセンサーデータ処理装置１０６または１０７のいずれかに書き換えることをアクションリストに含むようにする。
【００２９】
この他にも、ＯｐｅｎＦｌｏｗを用いて、中継装置１０１がフロー情報に適合しない未知のセンサーデータを含むパケットをＷＳＮ１０９から受信した場合に中継装置１０１からセンサーデータ処理装置１０６、１０７のいずれか、もしくはその両方にパケットの転送処理方法を問い合わせても良い。また、ＬＡＮ／ＷＡＮ１０８に転送されるセンサーデータパケットの転送先の変更や転送量の抑制を行うために、センサーデータ処理装置１０６、１０７が中継装置１０１の持つフロー情報の更新を行ったりしても良い。
【００３０】
なお、本実施形態ではＯｐｅｎＦｌｏｗを用いて、転送処理の制御を行うことを想定するが、中継装置１０１の上で動作するアプリケーションが他の方式により転送の処理を行うように構成しても良い。
【００３１】
＜中継装置１０１のハードウェア構成＞
次に、本実施形態に係る中継装置１０１のハードウェア構成について、図２を参照して説明する。中継装置１０１は、そのハードウェア構成として、主に、システム部２０２と通信処理部２０３とを有する。
【００３２】
システム部２０２は、ＣＰＵ２０４、ＲＡＭ２０５、ＲＯＭ２０６、および、システムバス２０７を備える。システムバス２０７は、ＣＰＵ２０４、ＲＡＭ２０５、および、ＲＯＭ２０６を接続して情報を伝達する。ＣＰＵ２０４は、ＲＡＭ２０５やＲＯＭ２０６に格納されているコンピュータプログラムやデータを用いて中継装置１０１全体の制御を行う。ＣＰＵ２０４で実行するプログラムにはＯＳやアプリケーション、ＴＣＰ／ＩＰプロトコルスタック、ＰＡＮスタックが含まれる。ＲＡＭ２０５は、中継装置１０１の主記憶部であり、ＣＰＵ２０４によるプログラムの実行や通信処理部２０３への入出力のための一時記憶領域として使用される。ＲＯＭ２０６は、ＣＰＵ２０４が実行するソフトウェアプログラムが格納される不揮発性の記憶部である。ＲＯＭ２０６に格納されるプログラムは、ＲＡＭ２０５に転送され、ＣＰＵ２０４によって読み出されて実行される。
【００３３】
通信処理部２０３は、ローカルバス２０８、ＰＡＮ制御部２０９、ＬＡＮ制御部２１０、ＷＬＡＮ制御部２１１、および、転送処理部２１２を備える。ローカルバス２０８は、ＰＡＮ制御部２０９、ＬＡＮ制御部２１０、ＷＬＡＮ制御部２１１、及び転送処理部２１２を接続し情報を伝達する。
【００３４】
ＰＡＮ制御部２０９は、ＷＳＮ１０９に接続する無線ＰＡＮ規格の通信インタフェースであり、ＷＳＮ１０９との間における伝送パケットの送受信を実行する。また、ＰＡＮ制御部２０９は、例えばＺｉｇＢｅｅ、Ｗｉ−ＳＵＮ等の無線通信規格に対応した接続制御を実行する。さらに６ＬｏＷＰＡＮで行うヘッダ圧縮・伸長、およびフラグメント・リアセンブルなどの処理などを実行する。本実施形態では、中継装置１０１がメッシュネットワーク構成のＷＳＮ１０９に接続するものとしているが、中継装置１０１は各センサーとピアツーピア接続で通信してもよい。特にこのようなケースにおいて、ＰＡＮ制御部２０９はＢｌｕｅｔｏｏｔｈ（登録商標）などの規格に対応するものであってもよい。
【００３５】
ＬＡＮ制御部２１０は、ＬＡＮ／ＷＡＮ１０８に含まれる有線ＬＡＮ２１３に接続する通信インタフェースであり、有線ＬＡＮ２１３との間における伝送パケットの送受信を実行する。また、ＬＡＮ制御部２１０には、伝送メディアのＰＨＹおよびＭＡＣ（伝送メディア制御）ハードウェア回路が含まれる。例えば中継装置１０１が接続する有線ＬＡＮ２１３がＥｔｈｅｒｎｅｔ（登録商標）である場合、ＬＡＮ制御部２１０は、イーサネット（登録商標）ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）に相当する。
【００３６】
ＷＬＡＮ制御部２１１は、ＬＡＮ／ＷＡＮ１０８に含まれる無線ＬＡＮ２１４に接続する通信インタフェースであり、無線ＬＡＮ２１４との間における伝送パケットの送受信を実行する。ＷＬＡＮ制御部２１１にはＩＥＥＥ８０２．１１ａ／ｂ／ｇ／ｎ／ａｃ等の無線ＬＡＮ制御を実行するコントローラおよびＲＦ回路が含まれる。
【００３７】
転送処理部２１２は、ＯｐｅｎＦｌｏｗスイッチの機能が搭載され、パケット転送処理を行う機能部である。転送処理の対象パケットには、ＰＡＮ制御部２０９が受信したパケットや、ＣＰＵ２０４で実行されるＴＣＰ／ＩＰプロトコルスタックが送信するパケットが含まれる。転送処理部２１２では、入力されるパケットを解析し、該パケットの転送条件をチェックし、該パケットの転送に係る処理を実行する。このとき、転送処理部２１２は、ＬＡＮ／ＷＡＮ１０８側に転送するパケットのヘッダ情報（例えばＩＰｖ６ヘッダの各フィールド）を設定する。代表的には、該転送パケットのＩＰｖ６ヘッダ情報の宛先フィールドを設定する。
【００３８】
＜センサー１０２−１０５のハードウェア構成＞
次に、本実施形態に係るセンサー１０２−１０５のハードウェア構成について、図３を参照して説明する。なお、ここでは例としてセンサー１０２のハードウェア構成について説明するが、他のセンサーについても同様の構成であるものとする。また、センサー１０２−１０５のそれぞれは、検知する測定値やイベントの数・種類に応じて搭載するセンシングモジュールの数や種別が異なっていても良いものとする。
【００３９】
センサー１０２は、ＭＣＵ３０２、温度センサー３０３、照度センサー３０４、ＰＡＮ制御部３０５を備える。ＭＣＵ３０２は、内部に保持している小規模のメモリ領域に格納されているコンピュータプログラムやデータを用いて、センシングモジュールを用いた検知結果の取得やセンサーデータパケットの生成と送信、およびパケットの送信に必要な設定処理などを行う。前述のパケットの送信に必要な設定処理にはＩＰｖ６アドレス自動設定の処理が含まれるが、この処理の詳細な説明は後述する。
【００４０】
温度センサー３０３および照度センサー３０４は、測定値やイベントを検知するためのセンシングモジュールである。ＰＡＮ制御部３０５は、ＷＳＮ１０９に接続する無線ＰＡＮ規格のネットワークインタフェースであり、ＷＳＮ１０９との間における伝送パケットの送受信を実行する。また６ＬｏＷＰＡＮで行うヘッダ圧縮・伸長、およびフラグメント・リアセンブルなどの処理などを実行する。
【００４１】
温度センサー３０３および照度センサー３０４で検知された測定値やイベントは、ＭＣＵ３０２によってセンサーデータパケットのペイロードとして、ＰＡＮ制御部３０５を介して中継装置１０１に送信される。
【００４２】
＜中継装置１０１のプレフィクスの配布処理＞
次に、本実施形態に係る中継装置１０１のプレフィクスの配布処理について、図４乃至図５を用いて説明する。図４は中継装置１０１の持つＩＰｖ６アドレスプレフィクスのリスト（以降、プレフィクスリスト）に含まれる各プレフィクスの配布方法を決定して、ＲＡパケットに付加して配布する処理を表したフローチャートである。この処理は、中継装置１０１が近隣の６ＬｏＷＰＡＮルータ（６ＬＲ）やノード（６ＬＮ）にプレフィクスを配布するときに、ＣＰＵ２０４がＲＯＭ２０６に記憶されたプログラムを読み出して実行することにより実現される。また図５は中継装置１０１の持つプレフィクスリストを例示したものである。このプレフィクスリストは、中継装置１０１のＲＡＭ２０５またはＲＯＭ２０６に保持されていることを想定する。ＣＰＵ２０４がＲＡＭ２０５またはＲＯＭ２０６に記憶されているプレフィクスに対して参照あるいは更新を行い、プレフィクスに対して管理を行う。プレフィクスリストに含まれる各エントリは、プレフィクスとそのプレフィクスに対応付けられる検知結果（即ち、センサーの測定値やイベント）の種別、およびそのプレフィクスの配布方法の情報を有している。
【００４３】
Ｓ４０１は、図５に示すプレフィクスリストからひとつのエントリを選択する。Ｓ４０２ではＳ４０１で選択したエントリの配布方法の項を確認して、どの配布方法を行うかの判断をする。例えば、Ｓ４０１でプレフィクスリスト内の５０２や５０３が選択されていた場合、配布方法の欄に“６ＣＯ”とあるためＳ４０３に進み、エントリに含まれるプレフィクス（ｆｄ００：１１１１：：／６４、ｆｄ００：２２２２：：／６４）を配布するために６ＬｏＷＰＡＮ  Ｃｏｎｔｅｘｔ  Ｏｐｔｉｏｎ（６ＣＯ）を作成する。このとき、前記プレフィクスには、６ＬｏＷＰＡＮのＩＰｖ６ヘッダ圧縮で使用するためのＣｏｎｔｅｘｔ  ＩＤ（ＣＩＤ）が付与される。例えば、５０２のエントリを選択していた場合は、６ＣＯのＣＩＤのフィールドに１を設定し、同様に５０３を選択していた場合にはＣＩＤのフィールドに２を設定する。また、Ｓ４０１で５０４のエントリを選択していた場合、配布方法に“ＰＩＯ”とあるためＳ４０４に進み、エントリに含まれるプレフィクス（ｆｄ００：ａａａａ：：／６４）を配布するためにＰＩＯを作成する。Ｓ４０３またはＳ４０４でプレフィクスを配布するためのオプションを作成した場合、Ｓ４０６に進んでＲＡパケットに前述の作成したオプションを付加する。一方で、Ｓ４０１で５０５のエントリを選択していた場合は、配布方法に“配布無”とあるためＳ４０５に進むが、この場合はプレフィクスの配布を行わないため、特に処理は行なわず、Ｓ４０７に遷移する。Ｓ４０７では、図５に記載のプレフィクスリストの中で、まだ選択されていない未走査のエントリが存在するかを確認する。もし、未走査のエントリが存在したら、Ｓ４０１に戻り処理を継続する。これにより、プレフィクスリスト内のすべてのエントリに対してＳ４０３乃至Ｓ４０５のいずれかの処理がされることになる。以上の処理を、プレフィクスリスト内のすべてのエントリに対して行った後、Ｓ４０８に遷移してＷＳＮ１０９にＲＡパケットを送信することでプレフィクスの配布を行う。
【００４４】
本実施形態で、図５に示したプレフィクスリストは、図１に示した情報処理システム１００の管理者やユーザによって、コンフィギュレーションファイルなどで予め構築されるようにする。但し配布の方法については、以前の動作時の実績を基に起動時に中継装置１０１が構築しても良いものとする。または、センサーデータ処理装置１０６、１０７からフロー情報の設定と共に、何らかの方法を用いてプレフィクスリストが通知されるような構成を用いても良いものとする。
【００４５】
データの配布の方法について、上記の「以前の動作時の実績」とは、通信状況の過去の実績をいう。ここで、「通信状況」とは、データ種別という観点から見たデータの配布頻度、データ種別という観点から見たデータパケットの大きさ、データ種別という観点から見たネットワークの通信負荷をいうものとする。具体的には、データの配布頻度は、例えば中継装置１０１に到達するデータのうち数が多いデータの種別によって知ることができる。また、一般的に所定の種別のデータを配布するセンサーの台数が多ければ、データの配布頻度が多くなると見込まれるので、データ種別ごとのセンサーの台数によってデータの配布頻度を予測することができる。また、データパケットの大きさは、たとえばデータ種別によるフラグメント回数の多さによって知ることができる。また、ネットワークの通信負荷は、たとえばデータ種別によるノード数や転送回数の多さによって知ることができる。
【００４６】
本発明は、各データの種別に応じて、予め通信状況が予見できる場合は管理者やユーザによって、各データのプレフィクスや配布方法を決定させることができる。この場合は、管理者やユーザが中継装置１０１に対して設定することができるようにし、中継装置１０１は管理者やユーザにプレフィクスや配布方法を決定させる手段を有する。一方、通信状況の実績を検知することができる場合は、後に説明するように中継装置１０１が各データのプレフィクスや配布方法を決定するようにしてもよいし、センサーデータ処理装置１０６、１０７が中継装置１０１に設定させるようにしてもよい。
【００４７】
なお、上記図５の例では、温度の検知結果はプレフィクス（ｆｄ００：１１１１：：／６４）、人感の検知結果はプレフィクス（ｆｄ００：２２２２：：６４）、照度の検知結果はプレフィクス（ｆｄ００：ａａａ：：／６４）とし、温度と人感と照度の検知結果のそれぞれの配布方法は６ＣＯ，６ＣＯ，ＰＩＯとしていた。
【００４８】
一般的に、ＰＩＯに比して６ＣＯによる配布は、圧縮効率が高いため、予めセンサーデータパケットの長さが大きくなる検知結果が分かっていれば、センサーデータパケットの長さが大きくなる検知結果を優先的に６ＣＯによって配布するようにすることができる。優先的に６ＣＯによって配布するようにするため、当該センサーデータについては、所定のプレフィクスを使用するようにすることができる。
【００４９】
このことを利用して、プレフィクスリストの各エントリの配布方法については、ＷＳＮ１０９の使用帯域がより狭くなったり、中継装置１０１の処理負荷がより軽減されたりするように設定するのが好ましい。例えば、ＷＳＮ１０９でパケットを転送するときにフラグメントが発生することで、使用帯域が広くなり、さらに中継装置１０１の処理負荷も増加することが懸念される場合がある。そのような場合、センサーデータパケットの長さが大きくなるような検知結果の種別については、それに対応付けられたプレフィクスを優先的に６ＣＯで配布できるようにする。その他にも、ＷＳＮ１０９内で転送される頻度が高い検知結果や、より多くのセンサーでセンシングされる検知結果の種別に対応付けられたプレフィクスを６ＣＯで配布できるようにする。
【００５０】
一方で、６ＣＯで配布可能なプレフィクス数には上限があるため、それを超過してプレフィクスを配布する場合にはＰＩＯを使用する。即ち、ＰＩＯはセンサーデータ処理装置１０６、１０７で処理することが期待される検知結果の種別であるが、対応するプレフィクスを６ＣＯで配布することのできない場合に使用される。また、センサーデータ処理装置１０６、１０７で処理することが期待されない検知結果の種別については、それに対応付けられたプレフィクスは配布されない。これにより、その検知結果を含むパケットはＷＳＮ１０９に転送されないようにする。
【００５１】
図５のプレフィクスリストの配布方法は、以下のように決定することができる。プレフィクスリストの配布方法の決定により、中継装置１０１はそれに応じてプレフィクスの配布方法を選択することができる。
【００５２】
まず、プレフィクスを利用しているセンサーの台数に基づいてプレフィクスの配布方法を決定することができる。具体的には、所定のプレフィクスを利用するセンサーの台数が所定の台数より多い場合は、当該プレフィクスについては６ＣＯで配布するようにし、前記所定の台数よりも少ない場合はＰＩＯで配布するようにすることができる。これによって、中継装置１０１は所定のプレフィクスを利用しているセンサーが所定の台数より多い場合は、そのプレフィクスについては６ＣＯで配布することを選択することができ、少ない場合はＰＩＯで配布することを選択することができる。
【００５３】
また、所定のプレフィクスに基づいて設定したＩＰアドレスのパケットを、中継装置１０１が受信する頻度に基づいてプレフィクスリストの配布方法を決定することができる。例えば、中継装置１０１においてパケットを受信する頻度を把握し、所定のプレフィクスを用いたＩＰアドレスのパケットの受信頻度が所定の閾値よりも高い場合は、当該プレフィクスの配布方法を６ＣＯとし、前記閾値よりも低い場合には当該プレフィクスの配布方法をＰＩＯとすることができる。
【００５４】
さらにまた、所定のデータ種別のデータパケットのフラグメントの発生頻度に基づいてプレフィクスの配布方法を決定することができる。この場合、中継装置１０１において受信するパケットのフラグメントの発生頻度を把握し、所定のプレフィクスを用いたパケットのフラグメントの発生頻度が所定の閾値よりも高い場合は、当該プレフィクスの配布方法を６ＣＯとし、前記閾値よりも低い場合は当該プレフィクスの配布方法をＰＩＯとすることができる。  このようにプレフィクスの配布方法を適宜選択することにより、ＷＳＮ１０９の使用帯域がより狭くなり、中継装置１０１の処理負荷が軽減されるようにすることができる。
【００５５】
＜センサー１０２のＩＰｖ６アドレス自動設定の処理＞
次に、本実施形態に係るセンサー１０２のＩＰｖ６アドレスの自動設定の処理について、図６乃至図９を用いて説明する。図６および図７はセンサー１０２の実行するＩＰｖ６アドレス自動設定の処理と、その処理中に実施されるプレフィクスの選択処理である。センサー１０２は、起動直後にセンサーデータパケットの送信のために、図６のフローチャートに示したＩＰｖ６アドレス自動設定の処理を実行する。
【００５６】
センサー１０２は、まずＳ６０１ではＩＰｖ６リンクローカルアドレスの設定を行う。その後、設定したＩＰｖ６リンクローカルアドレスを用いてルータ要請（ＲＳ）パケットの送信（Ｓ６０２）と、それに対する応答であるＲＡパケットの受信を行う（Ｓ６０３）。Ｓ６０３で受信したＲＡパケットには、先述した中継装置１０１の作成したプレフィクスを配布するためのオプションが付加されているものとする。以降、ＲＡパケット内のオプションに含まれる複数のプレフィクスを、受信プレフィクスリストと呼称して説明する。
【００５７】
Ｓ６０４では、受信プレフィクスリストの中に、センサー１０２が使用可能なプレフィクスが含まれているかの判定を行い、プレフィクスが含まれていた場合には、当該使用可能なプレフィクスの抽出を行う。このプレフィクスの抽出処理は図７のフローチャートを用いて説明する。
【００５８】
図７のＳ７０１は図８に示したプレフィクステーブルからひとつのエントリを選択する。このプレフィクステーブルは、ＭＣＵ３０２のメモリ領域に格納されており、センサー１０２の検知する測定値やイベントの種別に対応したプレフィクスを持っている。本実施形態において、センサー１０２は温度センサー３０３と照度センサー３０４を有しているため、これに対応付けられたプレフィクスがそれぞれ８０２と８０３のエントリに格納されている。次にＳ７０２では、選択したエントリの持つプレフィクスが、受信プレフィクスリストに含まれているか否かの確認を行う。もしエントリの持つプレフィクスが含まれていた場合には、Ｓ７０３に進み、選択したエントリの持つプレフィクスを使用可能なプレフィクスとして抽出する。また、Ｓ７０２でプレフィクスが受信プレフィクスリストに含まれていなかったら、Ｓ７０４に遷移する。
【００５９】
その後、Ｓ７０４では、プレフィクステーブルに未走査のエントリがあるか確認して、あった場合にはＳ７０１の処理に戻り、再度未走査のエントリを選択してプレフィクスの抽出処理を反復する。Ｓ７０４で未走査のエントリがなくなったら、使用可能なプレフィクスの抽出処理を終了する。
【００６０】
なお、本実施形態では中継装置１０１は図５に示したプレフィクスリストに基づき６ＣＯおよびＰＩＯを作成している。そのため、図８のプレフィクステーブルの８０２のエントリに対応するプレフィクスは６ＣＯで、８０３のエントリに対応するプレフィクスはＰＩＯで配布されており、図７の処理で使用可能プレフィクスとしてそれぞれ抽出される。ここで図８に示した各センサーの持つプレフィクステーブルは、図５に示した中継装置１０１の持つプレフィクスリストに対応付けて設定されていることを想定する。即ち、図５のプレフィクスリストと、図８のプレフィクステーブルの持つ検知結果の種別とプレフィクスの対応付けが一致するように、情報処理システム１００の管理者やユーザによって適切に設定されている必要がある。
【００６１】
次に図６のフローチャートに戻り、Ｓ６０５で図７の処理で抽出されたプレフィクスがあるかどうかの確認を行う。抽出されたプレフィクスがある場合、Ｓ６０６に遷移して、６ＬｏＷＰＡＮのヘッダ圧縮処理で、部分的に圧縮可能となり得るＩＩＤを生成する処理を行う。
【００６２】
このＩＩＤは図９に示すようなフォーマットを持っている。図９の枠線に囲まれた部分９０１がヘッダ圧縮時に省略可能な部分である。一方で、実線で下線を引かれた部分９０２（以下、実線部９０２）、および破線で下線を引かれた部分９０３（以下、破線部９０３）は、ヘッダ圧縮時に省略されずに、パケットのヘッダ情報として送信される部分である。本実施形態では、実線部９０２は検知結果の種別を表す識別番号を入力することを想定する。また、破線部９０３はＷＳＮ１０９内のセンサー１０２であること示す識別番号、即ち中継装置１０１でパケットの送信元のセンサーを特定するための識別番号を入力することを想定する。例えば、実線部９０２には、図８のプレフィクステーブルの情報を基に、温度センサーに対応するＩＩＤを生成する場合は０ｘ０１を入力し、照度センサーに対応するＩＩＤを生成する場合は０ｘ０ａを入力する。また、破線部９０３にはセンサー１０２を識別するための番号として０ｘ０２を入力する。このとき、センサー１０２を識別するための識別番号は、予め情報処理システム１００の管理者やユーザによって設定されるか、ＰＡＮ制御部３０５の持つＭＡＣアドレスのようなデバイスを一意に識別可能な情報を基に各センサーが生成していることを想定する。
【００６３】
次にＳ６０７では、Ｓ６０４で抽出したプレフィクスと、Ｓ６０６で生成したＩＩＤを結合してＩＰｖ６アドレスを作成し、センサーの持つネットワークインタフェースに設定する。このとき、Ｓ６０４で複数のプレフィクスを抽出していた場合には、Ｓ６０６で複数のＩＩＤが生成され、そしてＳ６０７で複数のＩＰｖ６アドレスが設定されることになる。センサー１０２の場合、温度センサーに対応するアドレスであるｆｄ００：１１１１：：ｆｆ：ｆｅ００：０１０２と、照度センサーに対応するアドレスであるｆｄ００：ａａａａ：：ｆｆ：ｆｅ００：０ａ０２の２つのＩＰｖ６アドレスが設定される。
【００６４】
Ｓ６０７でＩＰｖ６アドレスの設定をしたら、設定した各ＩＰｖ６アドレスを６ＬＢＲに登録するために、近隣要請（ＮＳ）パケットを送信し（Ｓ６０８）、その後アドレス登録結果の通知を含む近隣広告（ＮＡ）パケットを受信する（Ｓ６０９）。そして、Ｓ６１０で受信したアドレス登録の結果を確認し、アドレスの登録が成功していたら、アドレスのＩＰｖ６アドレスの自動設定の処理を終了する。一方でアドレスの登録に失敗していたらＳ６１１に遷移して、アドレス登録に失敗したものとは異なるＩＩＤを再度生成する。このＩＩＤの再生成の処理は図９に示したＩＩＤのフォーマットの破線部９０３を異なる値にして生成することを想定する。例えば、センサー１０２が温度センサーに対応するアドレスとして生成したｆｄ００：１１１１：：ｆｆ：ｆｅ００：０１０２の登録に失敗した場合、破線部９０３の部分をインクリメントして「００００：００ｆｆ：ｆｅ００：０１０３」のＩＩＤを生成する。その後Ｓ６０７に戻り、Ｓ６０７からＳ６０９の処理を行って、新たに生成したＩＰｖ６アドレスの登録処理を行う。
【００６５】
なお、本実施形態では、検知結果の種別を特定する実線部９０２が８ビット、センサーを識別する破線部９０３が８ビットとなるように割り当てた。しかし、ＷＳＮ１０９で検知する測定値やイベントの数や、同一検知結果を報知するセンサーの数に応じて、それぞれの長さを変動させても良いものとする。
【００６６】
また、Ｓ６１０でＩＰｖ６アドレスの登録に失敗したことを確認した場合、本実施形態では図９に示したＩＩＤのフォーマットのうち、破線部９０３の値をインクリメントする例を示したが、この部分を再生成するときに、乱数を用いるような構成を用いても良いものとする。また、本実施形態では、ＩＰｖ６アドレスの登録処理に失敗した場合に破線部９０３の値を変更して、繰り返しＩＰｖ６アドレスの登録を試みるような構成を用いているが、予め定められた回数だけ登録に失敗した場合には、ＰＡＮ制御部２０９の持つＭＡＣアドレス（もしくは、ＭＡＣアドレスをＥＵＩ−６４形式に拡張したもの）から生成されるＩＩＤを用いてＩＰｖ６アドレスを設定しても良いものとする。但し、この場合は中継装置１０１で転送処理を行う際に、ＩＩＤから検知結果の種別を識別することができない点に留意する必要がある。
【００６７】
さらに、本実施形態では中継装置１０１がプレフィクスとＩＩＤの実線部９０２の両方で検知結果の種別を特定できるようなＩＰｖ６アドレスの設定を行ったが、それぞれが異なる情報を識別するために使用されても良い。例えば、プレフィクスで検知結果の種別を特定して、実線部９０２では検知結果の種別以外の情報を特定するために使用し、センサーの設置箇所や設置された時期などを特定できるようなフォーマットのＩＰｖ６アドレスを設定しても良い。但し、このときは中継装置１０１による転送処理で情報を正確に識別するために、すべてのセンサーが統一されたフォーマットを用いてＩＩＤを生成する必要がある。
【００６８】
また、本実施形態のように、センサーが複数のＩＰｖ６アドレスを設定した場合、送信パケットのペイロードに含まれる検知結果の種別に応じて、適切な送信元アドレスを生成する必要がある。例えば、センサー１０２が温度センサー３０３の検知結果を含むパケットを生成する場合、送信元アドレスはｆｄ００：１１１１：：ｆｆ：ｆｅ００：０１０２となる。同様に、照度センサー３０４の検知結果を含むパケット生成する場合、送信元アドレスはｆｄ００：ａａａａ：：ｆｆ：ｆｅ００：０ａ０２となる。
【００６９】
＜中継装置１０１のパケットの転送処理＞
最後に本実施形態における中継装置１０１のＩＰｖ６パケットの転送処理について図１０乃至図１１を用いて説明する。
【００７０】
図１０は中継装置１０１の転送処理部２１２の持つＯｐｅｎＦｌｏｗスイッチに設定されたフロー情報のリスト、即ちフローテーブルの一部である。本実施形態では、パケットの送信元ＩＰｖ６アドレスからパケットに含まれる検知結果の種別を識別可能であるため、パケットの送信元ＩＰｖ６アドレスのプレフィクスやＩＩＤから検知結果の特徴や送信元センサーを特定するための情報を確認するようなマッチングルールを含むフロー情報が設定される。
【００７１】
以下に本実施形態におけるフロー情報の設定例を、図１０を用いて説明する。ここで、本実施形態の情報処理システム１００では、送信元センサーに依らず、温度センサーの検知結果はセンサーデータ処理装置１０６で解析し、照度センサーの検知結果はセンサーデータ処理装置１０７で解析することを想定する。このとき、中継装置１０１はＯｐｅｎＦｌｏｗスイッチに対し、温度センサーの検知結果をセンサーデータ処理装置１０６に転送するために、次の２つのフロー情報を図１０のフローテーブルに登録する。１つ目のフロー情報（１００２）はＩＩＤが“００００：００ｆｆ：ｆｅ００：０１ＸＸ（ＸＸは任意の８ビット）”のフォーマットを持つかを判断するマッチングルールを持ち、２つ目のフロー情報（１００４）はＩＰｖ６プレフィクスが“ｆｄ００：１１１１／６４”のフォーマットを持つか判断するマッチングルールを持つ。これらのマッチングルールに適合するパケットには、「宛先をセンサーデータ処理装置１０６のアドレスに書き換え、ＬＡＮ／ＷＡＮ１０８に転送する」アクションが実行される。同様に、照度センサーの検知結果を含むパケットをセンサーデータ処理装置１０７に転送するために２つのフロー情報を持ち、１つ目のフロー情報（１００３）はＩＩＤが“００００：００ｆｆ：ｆｅ００：０ａＸＸ（ＸＸは任意の８ビット）”のフォーマットを持つかを判断するマッチングルールを持ち、２つ目のフロー情報（１００５）はプレフィクスが“ｆｄ００：ａａａａ／６４”のフォーマットを持つか判断するマッチングルールを持つ。これらのマッチングルールに適合するパケットには、「宛先をセンサーデータ処理装置１０７のアドレスに書き換え、ＬＡＮ／ＷＡＮ１０８に転送する」アクションが実行される。同様にして、センサーデータ処理装置１０６、１０７から他のセンサーの検知結果の解析のために、中継装置１０１に転送指示があった場合には、その指示情報に基づきフロー情報が登録される。
【００７２】
なお、本実施形態では２つのフロー情報がフローテーブルに登録されている例を示したが、本実施形態のようにプレフィクスとＩＩＤの両方でパケットの持つセンサーの検知結果の種別を特定できる場合には、いずれか片方のみが登録されるような構成を用いても良い。例えばすべてのセンサーが図９に示したフォーマットのＩＩＤの生成方法を用いてアドレスを付加できるような場合には、プレフィクスの比較するようなマッチングルールを持つフロー情報は不要となるため、ＩＩＤを比較するマッチングルールを持つフロー情報のみをフローテーブルに登録する。
【００７３】
以上の設定がされたＯｐｅｎＦｌｏｗスイッチを用いた転送処理について、図１１のフローチャートを用いて説明する。Ｓ１１０１では、ＰＡＮ制御部２０９で６ＬｏＷＰＡＮパケットを受信し、受信パケットに対してヘッダの伸長やフラグメントの処理を実行してＩＰｖ６パケットに変換した上で、転送処理部２１２に入力する。その後Ｓ１１０２で、転送処理部２１２に入力された受信パケットとマッチするマッチングルールを持つフロー情報が、フローテーブル内に存在するか否かを確認する。
【００７４】
このとき、受信パケットにマッチするフロー情報が存在した場合は、Ｓ１１０３に遷移して、フロー情報の持つアクションを実行して、パケットの転送処理が実行される。一方で、Ｓ１１０２でフロー情報が存在しなった場合は、Ｓ１１０４に遷移して、受信パケットを中継装置１０１上のアプリケーションで受信し、ペイロードの解析処理を行ったり、転送先を識別したりするような処理を行う。
【００７５】
なお、本実施形態ではＳ１１０４に遷移した場合には受信パケットを中継装置１０１の持つアプリケーションで処理するような構成を用いているが、パケットを破棄しても良い。また、センサーデータ処理装置１０６、１０７の持つＯｐｅｎＦｌｏｗコントローラ機能にＰａｃｋｅｔ−Ｉｎメッセージを送信して、受信パケットの処理方法を問い合わせて、受信パケットの処理方法を決定するような構成を用いても良い。
【００７６】
なお、本実施形態では検知結果の種別で転送先を決定するために、図９に示したＩＩＤのフォーマットのうち、実線部９０２のみを参照していたが、送信元センサーを特定する破線部９０３のみを参照したり、実線部９０２と破線部９０３の両方を参照したりして、転送先を決定するような構成を用いても良い。また、本実施形態では、各センサーの検知結果の種別に基づき転送先を変更することを想定していたが、転送先を分類するのに使用する情報は検知結果の種別に限らず、送信元センサーの設置箇所などの位置情報や、ノード・ルータなどの送信元センサーの動作状況などの情報によって、転送先を分類するような構成を用いても良い。
【００７７】
＜実施形態１の効果＞
以上に説明した第１の実施形態を用いることで、ネットワーク間の中継装置がルータ広告（ＲＡ）によってプレフィクスを配布する際に、６ＣＯかＰＩＯを適宜選択すること、あるいは所定のプレフィクスを配布しないことなどを選択することができるようになる。
【００７８】
これにより、本実施形態によれば、センサーデータの種別に応じてヘッダ圧縮を効率よく行うことができる。たとえば、パケット転送量の多い検知結果や、パケット送信時にフラグメントの発生しやすい検知結果の転送に６ＣＯで配布されたプレフィクスを使用させることが可能となる。これによって、ＷＳＮ１０９の使用帯域を狭めること、パケット長が増加すること、あるいは、中継装置１０１の処理量が過大になること、あるいは、フラグメントが頻発すること等を防止することが可能となる。
【００７９】
一方で、ＩＩＤについては、一般に６ＬｏＷＰＡＮの規格で定められた特定のフォーマットを用いなければ圧縮することができない。また、従来はＩｏＴ−ＧＷのパケット転送処理の効率化のために６４ビットのＩＩＤ全体を使用してペイロードの内容を解析することが提案されていた。しかし、６４ビットのＩＩＤ全体を使用してペイロードの内容を解析しようとすると、ＩＩＤを圧縮できないためパケット長が大きくなり、中継装置の処理量が大きくなる問題があった。これに対して、本実施形態によれば、ＩＩＤの圧縮可能な部分は圧縮し、圧縮できない部分にデータの種別やセンサーの識別情報を格納するようにしている。これにより、ＩＩＤの圧縮を最大限行えるようにするとともに、データの種別やセンサーの識別情報の少なくともいずれかを利用して適切な転送先を判断して、転送処理を効率よく行うことが可能になる。
【００８０】
［実施形態２］
以下、本発明の第２の実施形態について、図面を参照して説明する。なお、本実施形態におけるシステムの構成、中継装置１０１のハードウェア構成、センサー１０２のハードウェア構成は図１乃至３を用いて説明した実施形態１と同じであり、説明は省略する。
【００８１】
本実施形態では、中継装置１０１が一度プレフィクスを配布した後に再度配布を試みる際に、その時点までにＷＳＮ１０９から受信した検知結果を含むパケットの受信状況などを考慮して、プレフィクスの配布方法を動的に決定する処理を行う。また、ＷＳＮ１０９内のセンサー１０２−１０５から受信するセンサーデータの種別が多岐にわたる場合を想定して、デフォルトコンテキスト（即ち、ＣＩＤが０のコンテキスト）に対応づけられたプレフィクスを生成して６ＣＯで配布する処理の例を示す。またデフォルトコンテキストを配布された場合の各センサーのＩＰｖ６アドレス自動設定の処理、および中継装置１０１で実施するデフォルトコンテキストの使用されたパケットの転送処理についても併せて説明する。
【００８２】
＜中継装置１０１のプレフィクスの再配布処理＞
本実施形態に係る中継装置１０１のプレフィクスを再配布する処理について、図１２乃至図１３を用いて説明する。なお、以降の説明では本実施形態で説明する処理を実施する以前に、実施形態１で説明を与えたプレフィクスの配布方法が実行されていることを想定して説明する。
【００８３】
図１２はプレフィクスリスト（以下、プレフィクスリスト）に含まれる各プレフィクスを、中継装置１０１が再配布する際に実施する処理を表したフローチャートである。また図１３はプレフィクスの再配布の際に使用する中継装置１０１の持つプレフィクスリストを例示したものである。本実施形態におけるプレフィクスリストは、実施形態１で説明したプレフィクスリストの情報に加えて、各プレフィクスの使用状況や、中継装置１０１における各プレフィクスを使用しているセンサーデータパケットの受信状況の情報を保持している。これらの情報は図１３において、“ノード数”、“パケット転送回数”、“フラグメント回数”、の列に示されている。
【００８４】
実施形態１では図５に示す通り、温度センサーおよび人感センサーの検知結果を送信するために６ＣＯを、照度センサーの検知結果を送信するためにＰＩＯを用いてプレフィクスを配布していた。また、振動センサーに対しては配布しなかった。このようなプレフィクスの配布の後に中継装置１０１はＷＳＮ１０９内の各センサーの検知結果を転送し、またセンサーデータ処理装置１０６、１０７からは振動センサーなどの検知結果の転送指示を新たに受けたことを想定する。このような状況を踏まえて、図１２に示した中継装置１０１のアドレスプレフィクスの再配布を実施する。
【００８５】
Ｓ１２０１では、図１３に示すプレフィクスリストの持っているプレフィクスの使用状況の情報や、センサーデータ処理装置１０６、１０７からの転送指示に基づいて、プレフィクスを再配布する方法の検討を行う。まず、センサーデータ処理装置１０６、１０７からの転送指示を受けたため、図１３の１３０５のエントリに示すように、振動センサーの検知結果を送信する際に使用するプレフィクスをＰＩＯで配布するようにプレフィクスリストを更新する。なお、本実施形態ではセンサーデータ処理装置１０６、１０７から新たに転送指示のあった検知結果に対しては、ＰＩＯでプレフィクスの配布をするが、コンテキストで配布するプレフィクスの数が１５個よりも少ない場合には６ＣＯで配布しても良い。
【００８６】
次に各プレフィクスの使用状況を確認する。本実施形態の場合、当初ＰＩＯで配布していた照度センサーに対応するエントリ（１３０４）で、高頻度でフラグメントが発生していることが分かる。パケットのフラグメントは、中継装置１０１の処理負荷を高めたり、ＷＳＮ１０９の帯域を圧迫したりするなどのデメリットがある。そのため、フラグメント数の削減を試みるために、６ＣＯを用いて圧縮可能なプレフィクスを配布するように変更する。このとき、既に６ＣＯで配布中のプレフィクスが１５個に満たない場合は、当該プレフィクスにＣＩＤを付番して配布すれば良い。また、６ＣＯでプレフィクスを配布したもののＰＩＯで配布したプレフィクスよりも使用頻度が低く、ＰＩＯで配布したプレフィクスと配布方法を交換したほうが効率的な通信、使用帯域の削減が期待できる場合は、配布方法を入れ替えても良い。
【００８７】
一方で、既に６ＣＯで１５個のプレフィクスを配布中で、かつ配布中のプレフィクスで６ＣＯとＰＩＯの配布方法の入れ替えが困難である場合には、ＣＩＤが０のデフォルトコンテキストを配布する。本実施形態では、このデフォルトコンテキストの配布を行う例を用いて説明する。デフォルトコンテキストを使用する場合、図１３の１３０６で示すようなデフォルトコンテキスト用のエントリを新たに追加する。このとき使用するプレフィクスは、センサーの検知結果の種別を特定するための各プレフィクスとは異なるものを使用する。本実施形態では、ｆｄ００：１２３４：５６７８：：／６４をデフォルトコンテキスト用のプレフィクスとして使用する。そして、デフォルトコンテキストを使用してほしいセンサーの検知結果の種別に関しては、プレフィクスの配布を停止する。本実施形態においては、フラグメント回数の多い照度センサーの検知結果を特定するためのプレフィクスの配布を停止するために、図１３の１３０４のエントリの配布方法を配布無に変更する。以上の処理を行うことで、後述するＷＳＮ１０９内のセンサーのＩＰｖ６アドレスの自動設定の処理で、「プレフィクスの配布がされず、かつデフォルトコンテキストが配布される」ときの処理として、デフォルトコンテキストのプレフィクスを選択させる。
【００８８】
以上の処理を行った後、実際にプレフィクスを配布するためにＳ１２０２乃至Ｓ１２０９の処理を実施する。これらの処理は実施形態１の図４のＳ４０１乃至Ｓ４０８で説明を与えた処理と同様の処理を行うため説明を省略する。デフォルトコンテキストで配布するプレフィクスも他のプレフィクスと同様、Ｓ１２０３で配布方法を確認の後、Ｓ１２０４に遷移して６ＣＯに入力され、他のプレフィクスと共にＲＡに付加されて送信される。
【００８９】
なお、以上の説明は、フラグメントの発生頻度によって、プレフィクスの配布方法を変更し再配布する例について行ったが、ノード数（センサー台数）やパケット転送回数や中継装置１０１における受信頻度等により、プレフィクスの配布方法を変更・再配布しても良い。具体的には実施形態１で説明したように、センサーの台数が所定の台数より多い場合、中継装置１０１における受信頻度が所定の閾値よりも高い場合、およびフラグメントの発生頻度が所定の閾値より高い場合に、プレフィクスの配布方法を６ＣＯに変更し、あるいはデフォルトコンテキストで配布するようにプレフィクスの配布方法を変更し、再配布を行うことができる。  なお、プレフィクスの再配布のタイミングは、規格上定められている定期的なＲＡパケットの送信時以外にも、本実施形態のようにセンサーデータ処理装置１０６、１０７から新たな転送指示を受信したなどのイベント駆動で逐次実施しても良い。但し、この場合はイベントが頻発したときにＷＳＮ１０９内のプレフィクスの管理の負荷が増大する恐れがあるため、情報処理システム１００の管理者やユーザによって予め定められた期間の度に実施するような形式を用いても良い。
【００９０】
＜センサー１０２のＩＰｖ６アドレス自動設定の処理＞
次に、本実施形態に係るセンサーのＩＰｖ６アドレスの自動設定の処理について説明する。センサーにおけるＩＰｖ６アドレスの自動設定の処理については、実施形態１の図７に示した使用可能なプレフィクスの抽出の処理の点で本実施形態と差異がある。そのため、実施形態１と同様の処理を行う図６の処理については説明を省略し、ここでは本実施形態で実施する使用可能なプレフィクスの抽出方法について図１４のフローチャートを用いて説明する。また本実施形態においても実施形態１と同様、センサー１０２は図８に示したプレフィクステーブルを有しているものとする。
【００９１】
Ｓ１４０１は図７のＳ７０１と同様、センサー１０２の持つプレフィクステーブルから未走査のエントリを選択する。次にＳ１４０２で受信プレフィクスリストの中に選択したエントリの持つプレフィクスがあるかを確認する。Ｓ１４０２で一致するプレフィクスがあった場合にはＳ１４０３に遷移し、実施形態１における図７のＳ７０３と同様、エントリのプレフィクスを抽出する。一方で、選択したエントリの持つプレフィクスがプレフィクスリストになかった場合、Ｓ１４０４に遷移する。Ｓ１４０４では、受信したプレフィクスリストにデフォルトコンテキストが含まれるか否かを確認する。デフォルトコンテキストがあった場合はＳ１４０５に遷移して、プレフィクステーブルのエントリの持つプレフィクスの代わりに、デフォルトエントリを選択する処理を行う。またＳ１４０４でデフォルトコンテキストが無かった場合は、何もせずにＳ１４０６に遷移する。Ｓ１４０６では、図７のＳ７０４と同様の処理を行う。
【００９２】
本実施形態において、センサー１０２は照度センサーの検知結果を特定するためのプレフィクス、即ち図８の８０３のエントリに含まれるプレフィクスが配布されない。しかし、中継装置１０１のプレフィクスの再配布処理で述べたように、ｆｄ００：１２３４：５６７８：：／６４のプレフィクスを持つデフォルトコンテキストが配布される。そのため、照度センサーの検知結果を特定するためのプレフィクスの代わりに、デフォルトコンテキストを用いてアドレスを生成する。この場合、図６に示したフローチャートのＳ６０５乃至Ｓ６０７でＩＰｖ６アドレスを生成すると、ｆｄ００：１２３４：５６７８：：ｆｆ：ｆｅ００：０ａ０２のアドレスが得られることになる。
【００９３】
なお、本実施形態のここまでの説明で、照度センサーの検知結果を特定するためにデフォルトコンテキストを用いたる例を示したが、複数の種別の検知結果に対してデフォルトコンテキストを用いるような構成を用いても良い。例えば、照度センサーに加えて加速度センサーの情報もデフォルトコンテキストで使用するような構成にしても良い。このとき、中継装置１０１は照度センサーと同様、加速度センサーに関してもプレフィクスの配布処理を行わない。また加速度センサーの検知結果を送信するセンサーは、加速度センサーに対応付けられたプレフィクスが配布されないことを確認したうえで、デフォルトコンテキストを用いてＩＰｖ６アドレスの設定処理を行う。但し、このように複数の検知結果の送信にデフォルトコンテキストを使用する場合は、図９に示したＩＩＤのフォーマットを用いて検知結果の種別、およびセンサーの識別情報を特定可能であることが好ましい。これは、デフォルトコンテキストを使用して検知結果を送信するセンサーが複数あった場合に、プレフィクスによって検知結果の種別を識別して転送先の指定ができないためである。詳細については、中継装置１０１におけるパケットの転送処理の説明の中で説明する。
【００９４】
＜中継装置１０１のパケットの転送処理＞
次に本実施形態における中継装置１０１のＩＰｖ６パケットの転送処理について説明する。本実施形態のパケットの転送処理は、実施形態１とほぼ同様の処理を行うが、センサー１０２の照度センサーに関する検知結果のように、デフォルトコンテキストを用いて送信されるパケットの転送先を考慮してフローテーブルを構築する必要がある。そのため、図１５に本実施形態で用いるフローテーブルを示し、実施形態１との差異についての説明をする。また、フローテーブルを用いて実行される処理については、図１６を用いて説明する。
【００９５】
図１５に示したフローテーブルのうち、１５０２や１５０３のエントリのようにＩＩＤを確認するマッチングルールが構成されているものについては、図１０の１００２や１００３からの変更はない。一方で、プレフィクスを確認するマッチングルールが構成されるエントリについては、本実施形態ではデフォルトコンテキストを用いて送信されるパケットを考慮して一部のエントリが追加・削除されている。具体的には、図１０では１００５が照度センサーの検知結果をセンサーデータ処理装置１０７に転送するためのフローエントリとして登録されていたが、図１５ではこれが削除されている。また、デフォルトコンテキストを使用しているパケットを中継装置１０１の上で動作するアプリケーションで処理して転送先を解析するために、１５０５のエントリを追加している。１５０５のエントリは、プレフィクスがデフォルトコンテキストで配布されたプレフィクス（即ちｆｄ００：１２３４：５６７８／６４）であるかを判断するマッチングルールを持つ。また、このルールに該当するパケットは、宛先が中継装置１０１に書き換えられてローカルポートに転送されるアクションが実行される。この１５０５のエントリは、複数の種類のセンサーの検知結果がデフォルトコンテキストを使用して送信される場合に、プレフィクスのみでは適切に転送先を判断することができないために必要なエントリである。このとき、ＩＩＤから転送先を識別できる場合には、アプリケーションによるパケットの転送先の解析処理が不要となるため、フローエントリの優先度として１５０５のエントリよりも１５０３のエントリの方を高くしておく。
【００９６】
次に本実施形態におけるパケットの転送処理について図１６を用いて説明する。Ｓ１６０１乃至Ｓ１６０２は図１１のＳ１１０１乃至Ｓ１１０２と同様の処理を行うため説明を省略する。Ｓ１６０２で、受信パケットとマッチするルールを持つフロー情報があった場合には、Ｓ１６０３に遷移してマッチしたフロー情報の中で優先度のより高いものを選択する処理を行う。そして、Ｓ１６０４で選択したフロー情報の持つアクションを実行する。例えば、本実施形態でセンサー１０２がｆｄ００：１２３４：５６７８：：ｆｆ：ｆｅ００：０ａ０２の送信元アドレスを用いて、照度センサーに関する検知結果を送信した場合、そのパケットは１５０３と１５０５の２つのフロー情報のマッチングルールに該当する。このとき、優先度の項を確認すると、１５０３のフロー情報の優先度が高くなるように設定されているため、Ｓ１６０３で１５０３のフロー情報を選択することになる。そしてＳ１６０４で、１５０３のフロー情報の持つアクションリストに従って処理を実行する。
【００９７】
もしＳ１６０２で受信パケットがどのマッチングルールにも該当しない場合は、Ｓ１６０５に遷移して、パケットの処理を中継装置１０１のアプリケーションで行う。なお、本実施形態では、デフォルトコンテキストを用いたパケットの転送を中継装置１０１上のアプリケーションで処理させることを明示するために１５０５のフローエントリを用いた。しかし、Ｓ１６０５で受信パケットとマッチするルールを持つフロー情報が無い場合も同様の処理を行っているため、この場合は１５０５のエントリは必須ではない。一方で、Ｓ１６０５で実施する処理が、パケットの破棄やセンサーデータ処理装置１０６、１０７の持つＯｐｅｎＦｌｏｗコントローラ機能に対するＰａｃｋｅｔ−Ｉｎメッセージの送信である場合には、本実施形態のように１５０５のエントリを登録しておくことで、アプリケーションによる転送処理を実現させることが可能である。
【００９８】
＜実施形態２の効果＞
以上に説明した第２の実施形態を用いることで、実際に情報処理システム１００を動作させたときに、各検知結果の種別に対応付けられたプレフィクスの使用状況や、パケットのフラグメントの状況などを考慮して、プレフィクスの配布方法の変更することができる。また、デフォルトコンテキストを使用することで、６ＬｏＷＰＡＮのヘッダ圧縮を行うことのできる検知結果の種別を増やすことが可能になり、より効率的な検知結果の転送が可能になる。
【００９９】
［実施形態３］
以下、本発明の第３の実施形態について、図面を参照して説明する。なお、本実施形態におけるシステムの構成、中継装置１０１のハードウェア構成は図１乃至３を用いて説明した実施形態１と同じであり、説明は省略する。また、中継装置１０１の行うプレフィクスの配布の方法については、実施形態１または実施形態２で示した処理を行うため説明を省略する。
【０１００】
実施形態１および実施形態２では、すべてのセンサーがプレフィクステーブルと配布されたプレフィクスリストを照合して適切なプレフィクスを選択したうえで、図９に示したフォーマットのＩＩＤを生成してＩＰｖ６アドレスを設定していた。しかし、このＩＰｖ６アドレス自動設定の処理は、ＩＰｖ６や６ＬｏＷＰＡＮの規格（ＲＦＣ４８６２、ＲＦＣ６７７５など）で定められたアドレス設定の処理を拡張した処理であるため、ＷＳＮ１０９に属する一部のセンサーがこれらの処理に対応していない場合に、実行されない可能性がある。そのため、本実施形態ではＷＳＮ１０９内に属するセンサー１０２−１０５の中に、実施形態１および実施形態２で説明したＩＰｖ６アドレス自動設定の処理に対応していないノードがいる状況を想定する。そして、そのときにＷＳＮ１０９から受信したセンサーデータパケットを中継装置１０１が転送するときに実施する処理について説明する。
【０１０１】
ここで、中継装置１０１の転送処理について説明する前に、本実施形態で想定するＷＳＮ１０９に参加しているセンサーのＩＰｖ６アドレスの設定状況について説明する。
【０１０２】
本実施形態では、特定のベンダー（以降、ベンダーＡとする）によって製造されたセンサーのみが実施形態１に記載のＩＰｖ６アドレス自動設定の処理を実施可能であることを想定する。例えば、センサー１０２は前述のベンダーＡで製造されており、実施形態１で説明したＩＰｖ６アドレス自動設定の処理を実施可能であると仮定する。このときセンサー１０２は実施形態１に記載の処理を行い、温度センサーに対応するアドレスであるｆｄ００：１１１１：：ｆｆ：ｆｅ００：０１０２と、照度センサーに対応するアドレスであるｆｄ００：ａａａａ：：ｆｆ：ｆｅ００：０ａ０２の２つのＩＰｖ６アドレスが設定する。同様にベンダーＡで製造されたＷＳＮ１０９内の一部のセンサーに関しては実施形態１で説明したＩＰｖ６アドレス設定処理を実施し、ＩＰｖ６アドレスからセンサーの検知結果の種別を特定可能であることを想定する。
【０１０３】
一方で、前述のベンダーＡ以外のベンダーによって製造されたセンサーについては、実施形態１のＩＰｖ６アドレス自動設定の処理が実行できない。そのためこのセンサーに関しては、自装置の持つセンシングモジュールの種別によらず、ＩＰｖ６および６ＬｏＷＰＡＮの規格に基づいてＩＰｖ６アドレスの自動設定の処理を行う。例えば、センサー１０５がベンダーＡ以外のベンダーによって製造されていた場合、自装置の持つセンシングモジュールの種別に関係なく、ｆｄ００：１１１１：：／６４とｆｄ００：ａａａａ：：／６４の両方のプレフィクスを用いてＩＰｖ６アドレスの設定を試みる。また、このときに使用するＩＩＤは、自装置の持つＭＡＣアドレス（もしくは、ＭＡＣアドレスをＥＵＩ−６４形式に拡張したもの）から生成したものを使用することを想定する。
【０１０４】
＜中継装置１０１のパケットの転送処理＞
本実施形態における中継装置１０１のＩＰｖ６パケットの転送処理について説明する。上述の通り本実施形態ではＷＳＮ１０９内のセンサーのうち、ベンダーＡに製造された一部のセンサーは実施形態１に記載の方法で、残りのセンサーについては規格に基づいて、ＩＰｖ６アドレスの自動設定がされる状況を想定する。そのため、本実施形態で使用するフローテーブルを実施形態１のものから図１７に示すように拡張している。一方で、本実施形態のパケットの転送処理は、実施形態１の図１１のフローチャートと同様であるため、この説明については省略する。
【０１０５】
本実施形態における中継装置１０１は、センサーデータパケットの送信元のセンサーが実施形態１に記載のＩＰｖ６アドレス自動設定に対応していれば、送信元アドレスのプレフィクスまたはＩＩＤから、検知結果の種別や転送先を識別することが可能である。そこで本実施形態では、まずパケットの送信元アドレスのＩＩＤが図９に示したフォーマットであるか否かを確認する。もし図９のフォーマットが使用されていたら、パケットの送信元のセンサーが実施形態１に記載の方法でＩＰｖ６アドレスの自動設定の処理を実行していたことを類推できる。そのため、図１７の１７０２や１７０３のように、送信元アドレスのＩＩＤを確認するようなマッチングルールを持つフロー情報を登録する。これらのフロー情報は図１０の１００２や１００３からの変更はない。
【０１０６】
一方で、上述のセンサー１０５のようなセンサーがＷＳＮ１０９内にいる場合、送信元アドレスのプレフィクスを確認するマッチングルールを持つフローエントリを修正する必要がある。これは、センサー１０５が自装置の持つセンシングモジュールに関係なくＩＰｖ６アドレスの自動設定を行ってしまうため、受信パケットの送信元アドレスのプレフィクスと、パケットの持つ検知結果の種別に意図しない組み合わせが発生し得るためである。そこで本実施形態では、図１７の１７０４，１７０５のエントリのようにマッチングルールを変更する。これらのエントリでは、マッチングルールとして送信元アドレスのプレフィクスを確認するのと同時に、送信元ＭＡＣアドレスのベンダーＩＤを確認している。この確認処理で、ベンダーＩＤが上述のベンダーＡのものと判定できたものは、送信元のセンサーが実施形態１に記載のＩＰｖ６アドレス自動設定に対応していると判断可能である。そのため、ベンダーＩＤと送信元アドレスのプレフィクスの両方のマッチングルールを満たした場合にのみ、アクションリストに基づいた転送処理が実行される。
【０１０７】
以上に説明したようにフローテーブルを構築して、図１１のフローチャートを実行すると、ベンダーＡに製造されて実施形態１に説明したＩＰｖ６アドレス自動設定に対応しているセンサーからのパケットのみがＳ１１０３の処理に進むことができるようになり、ＯｐｅｎＦｌｏｗスイッチを用いた転送が可能である。一方でベンダーＡ以外のベンダーによって製造されたセンサーからのパケットについては、Ｓ１１０４の処理に進むことになり、中継装置１０１のアプリケーションによって転送処理が実行されることになる。
【０１０８】
＜実施形態３の効果＞
以上に説明した実施形態３を用いることで、ＷＳＮ１０９に属する一部のセンサーが実施形態１に記載のＩＰｖ６アドレス自動設定の処理に対応していない場合でも、ベンダーＩＤを参照することによって、パケットの送信元ＩＰｖ６アドレスから転送先を識別可能かの判断を行い、効率的に転送処理が実施できるようになる。
【０１０９】
［他の実施形態］
本発明は上述した実施形態１乃至実施形態３を組み合わせて実現することも可能である。例えば、実施形態２に記載の中継装置１０１のアドレスプレフィクスの再配布処理およびセンサー１０２のＩＰｖ６アドレス自動設定の処理を、実施形態３で使用しても良い。
【符号の説明】
【０１１０】
１００  情報処理システム
１０１  中継装置
１０２−１０５  センサー
１０６−１０７  センサーデータ処理装置
１０８  ＬＡＮ／ＷＡＮ
１０９  ＷＳＮ（Ｗｉｒｅｌｅｓｓ  Ｓｅｎｓｏｒ  Ｎｅｔｗｏｒｋ）
２０２  システム部
２０３  通信処理部
２０４  ＣＰＵ
２０５  ＲＡＭ
２０６  ＲＯＭ
２０７  システムバス
２０８  ローカルバス
２０９  ＰＡＮ制御部
２１０  ＬＡＮ制御部
２１１  ＷＬＡＮ制御部
２１２  転送処理部
２１３  有線ＬＡＮ
２１４  無線ＬＡＮ
３０１  センサー
３０２  ＭＣＵ
３０３  温度センサー
３０４  照度センサー
３０５  ＰＡＮ制御部
【図１】
2019033363.tif 000003
【図２】
2019033363.tif 000004
【図３】
2019033363.tif 000005
【図４】
2019033363.tif 000006
【図５】
2019033363.tif 000007
【図６】
2019033363.tif 000008
【図７】
2019033363.tif 000009
【図８】
2019033363.tif 000010
【図９】
2019033363.tif 000011
【図１０】
2019033363.tif 000012
【図１１】
2019033363.tif 000013
【図１２】
2019033363.tif 000014
【図１３】
2019033363.tif 000015
【図１４】
2019033363.tif 000016
【図１５】
2019033363.tif 000017
【図１６】
2019033363.tif 000018
【図１７】
2019033363.tif 000019