(57)【要約】【課題】偽造パケットによる影響を防止することができるパケット転送装置及び方法を提供する。【解決手段】パケット転送装置としてのルータ２０ａ〜２０ｃは、ネットワークを介して送信されてくるパケットを送信先に向けて転送するものであり、パケットのヘッダに格納された通信品質制御情報（例えば、ＩＰｖ６に準拠したパケットのヘッダ内におけるＤＳＣＰ）を認証するためのメッセージ認証コードがヘッダに格納されている場合に、メッセージ認証コードの評価を行う評価部２３と、評価部２３によってメッセージ認証コードが正当であると評価された場合に、通信品質制御情報を用いた通信品質制御を実施して送信先に向けたパケットの転送を行う転送部２４とを備える。【選択図】図３
2014027350.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して送信されてくるパケットを送信先に向けて転送するパケット転送装置において、
前記パケットのヘッダに格納された通信品質制御情報を認証するための認証情報が前記ヘッダに格納されている場合に、該認証情報の評価を行う評価部と、
前記評価部によって前記認証情報が正当であると評価された場合に、前記通信品質制御情報を用いた通信品質制御を実施して前記送信先に向けた前記パケットの転送を行う転送部と
を備えることを特徴とするパケット転送装置。
【請求項２】
前記パケットのヘッダに前記認証情報が格納されていない場合に、少なくとも予め規定された通信品質制御情報を用いて前記認証情報を演算する演算部と、
前記予め規定された通信品質制御情報と前記演算部で演算された前記認証情報とが前記ヘッダに追加されたパケットを、前記転送先に向けて転送すべきパケットとして生成するパケット処理部と
を備えることを特徴とする請求項１記載のパケット転送装置。
【請求項３】
前記転送部は、前記予め規定された通信品質制御情報を用いた通信品質制御を実施して、前記パケット処理部で生成されたパケットを前記送信先に向けて転送することを特徴とする請求項２記載のパケット転送装置。
【請求項４】
予め配布された秘密共有鍵を記憶する記憶部を備えており、
前記評価部は、前記記憶部に記憶された秘密共有鍵と少なくとも前記パケットのヘッダに格納された通信品質制御情報とを用いて演算される情報に基づいて前記認証情報の評価を行い、
前記演算部は、前記記憶部に記憶された秘密共有鍵と少なくとも前記予め規定された通信品質制御情報とを用いて前記認証情報を演算する
ことを特徴とする請求項２又は請求項３記載のパケット転送装置。
【請求項５】
ネットワークを介して送信されてくるパケットを送信先に向けて転送するパケット転送方法であって、
前記パケットのヘッダに格納された通信品質制御情報を認証するための認証情報が前記ヘッダに格納されているか否かを判断する第１ステップと、
前記第１ステップで前記認証情報が前記ヘッダに格納されていると判断された場合に、前記認証情報の評価を行う第２ステップと、
前記第２ステップで前記認証情報が正当であると評価された場合に、前記通信品質制御情報を用いた通信品質制御を実施して前記送信先に向けた前記パケットの転送を行う第３ステップと
を有することを特徴とするパケット転送方法。
【請求項６】
前記第１ステップで前記認証情報が前記ヘッダに格納されていないと判断された場合に、少なくとも予め規定された通信品質制御情報を用いて前記認証情報を演算する第４ステップと、
前記予め規定された通信品質制御情報と前記第４ステップで演算された前記認証情報とが前記ヘッダに追加されたパケットを生成する第５ステップと、
前記予め規定された通信品質制御情報を用いた通信品質制御を実施して、前記第５ステップで生成されたパケットを前記送信先に向けて転送する第６ステップと
を有することを特徴とする請求項５記載のパケット転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット転送装置及び方法に関する。
【背景技術】
【０００２】
周知の通り、インターネットに代表されるＩＰネットワークは、基本的には、ベストエフォート型のネットワーク（通信品質について最善を尽くすもののその品質が保証されないネットワーク）である。このようなベストエフォート型のネットワークでは、送信されたパケットが届くという保証が必ずしもないため、パケットの到達時間や到達間隔が保証されてはいない。しかしながら、音声通信や動画配信等のサービスではリアルタイム性（伝送遅延（レイテンシー）が殆ど生じないこと）が要求されるため、パケットの到達時間や到達間隔がある程度は保証される必要がある。このため、ＩＰネットワークでは、上述したベストエフォート型の通信を基本としつつも、ある通信において特定のトラフィックの優先度を上げ、或いは一定の通信速度を保つためにＱｏＳ（Quality of Service）なる通信品質制御技術が用いられている。
【０００３】
ここで、上記のＱｏＳ技術の代表的なものとしては、以下の非特許文献１に開示されているＤｉｆｆＳｅｒｖ（Differentiated Services）や、以下の非特許文献２に開示されているＲＳＶＰ（Resource Reservation Protocol）が挙げられる。上記のＤｉｆｆＳｅｒｖは、パケットの特定フィールド（例えば、ＩＰｖ６に準拠したパケットのヘッダ内におけるＤＳＣＰ（Differentiated Service Code Point）フィールド）に格納される値に応じてパケットの優先的な取り扱いを制御する技術である。また、上記のＲＳＶＰは、ＩＰネットワークにおける送信先までの帯域を予約しておき、予約した帯域を用いてパケットを送信することで、ＩＰネットワークにおける通信経路の品質を保証する技術である。尚、以下の特許文献１には、このようなＱｏＳ技術を用いてＩＰパケット転送における時間揺らぎを軽減する技術が開示されている。
【０００４】
尚、上述のＱｏＳ技術は、インターネットに限らず、リアルタイム性が要求されるネットワークで用いられる。例えば、プラントや工場等において構築される分散制御システム（ＤＣＳ：Distributed Control System）の一部をなすネットワークにおいても用いられることがある。この分散制御システムは、フィールド機器と呼ばれる現場機器（測定器、操作器）と、これらの管理及び制御を行う管理装置とが有線又は無線のネットワークを介して接続されたシステムであり、工業プロセスにおける各種の状態量（例えば、圧力、温度、流量等）を高精度に制御する必要があることからリアルタイム性が重要視される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２１１２３３号公報
【非特許文献】
【０００６】
【非特許文献１】RFC2474、Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers
【非特許文献２】RFC2205、Resource ReSerVation Protocol (RSVP) Version 1 Functional Specification
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、上述したＤｉｆｆＳｅｒｖやＲＳＶＰ等のＱｏＳ技術は、パケットに格納された値を用いて優先度の制御や帯域制御を行うものであるため、パケットに正しい値が格納されていることを大前提としている。ここで、上述したＤｉｆｆＳｅｒｖで用いられる値（ヘッダのＤＳＣＰフィールドに格納される値）は、パケットの送信元である送信元機器、或いは送信元機器からのパケットを最初に転送するルータ（第１ホップルータ）によって格納される。また、上述したＲＳＶＰで用いられる値（ヘッダや上位プロトコルに含まれる送信元アドレス、送信先アドレス、送信元ポート、送信先ポート、プロトコル等の情報）は、送信元機器によって格納される。これら送信元機器及び第１ホップルータ以外の機器は、送信されてきたパケットに格納された値が正しい値であることを前提として優先度の制御や帯域制御を行う。
【０００８】
従って、例えば、悪意のある第三者が、上述した送信元機器に相当する機器をネットワークに接続して操作し、誤った値が格納されたパケットをネットワークに送信させることで、ネットワークに障害が引き起こされる可能性が考えられるという問題がある。具体的には、例えば最も高い優先度に相当する値が格納されたパケットや、障害を起こしたい通信を特定する情報（送信元アドレス、送信先アドレス、送信元ポート、送信先ポート、プロトコル等）が格納されたパケットを偽造して送信すれば、本来優先されるべきパケットの到達時間を遅らせる、損失を招くといった攻撃を容易に行うことが可能になるという問題がある。
【０００９】
本発明は上記事情に鑑みてなされたものであり、偽造パケットによる影響を防止することができるパケット転送装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明のパケット転送装置は、ネットワーク（Ｎ）を介して送信されてくるパケットを送信先に向けて転送するパケット転送装置（２０ａ〜２０ｃ）において、前記パケットのヘッダ（Ｈ１、Ｈ１１）に格納された通信品質制御情報を認証するための認証情報が前記ヘッダに格納されている場合に、該認証情報の評価を行う評価部（２３）と、前記評価部によって前記認証情報が正当であると評価された場合に、前記通信品質制御情報を用いた通信品質制御を実施して前記送信先に向けた前記パケットの転送を行う転送部（２４）とを備えることを特徴としている。
この発明によると、パケットのヘッダに格納された認証情報（パケットのヘッダに格納された通信品質制御情報を認証するための情報）が評価部によって評価され、評価部によって認証情報が正当であると評価された場合に、転送部によって通信品質制御情報を用いた通信品質制御が実施されて送信先に向けたパケットの転送が行われる。
また、本発明のパケット転送装置は、前記パケットのヘッダに前記認証情報が格納されていない場合に、少なくとも予め規定された通信品質制御情報（Ｃ２）を用いて前記認証情報を演算する演算部（２５）と、前記予め規定された通信品質制御情報と前記演算部で演算された前記認証情報とが前記ヘッダに追加されたパケットを、前記転送先に向けて転送すべきパケットとして生成するパケット処理部（２２）とを備えることを特徴としている。
また、本発明のパケット転送装置は、前記転送部が、前記予め規定された通信品質制御情報を用いた通信品質制御を実施して、前記パケット処理部で生成されたパケットを前記送信先に向けて転送することを特徴としている。
また、本発明のパケット転送装置は、予め配布された秘密共有鍵（Ｋ１）を記憶する記憶部（２６）を備えており、前記評価部が、前記記憶部に記憶された秘密共有鍵と少なくとも前記パケットのヘッダに格納された通信品質制御情報とを用いて演算される情報に基づいて前記認証情報の評価を行い、前記演算部が、前記記憶部に記憶された秘密共有鍵と少なくとも前記予め規定された通信品質制御情報とを用いて前記認証情報を演算することを特徴としている。
本発明のパケット転送方法は、ネットワーク（Ｎ）を介して送信されてくるパケットを送信先に向けて転送するパケット転送方法であって、前記パケットのヘッダ（Ｈ１、Ｈ１１）に格納された通信品質制御情報を認証するための認証情報が前記ヘッダに格納されているか否かを判断する第１ステップ（Ｓ２２）と、前記第１ステップで前記認証情報が前記ヘッダに格納されていると判断された場合に、前記認証情報の評価を行う第２ステップ（Ｓ２５）と、前記第２ステップで前記認証情報が正当であると評価された場合に、前記通信品質制御情報を用いた通信品質制御を実施して前記送信先に向けた前記パケットの転送を行う第３ステップ（Ｓ２８、Ｓ２９）とを有することを特徴としている。
また、本発明のパケット転送方法は、前記第１ステップで前記認証情報が前記ヘッダに格納されていないと判断された場合に、少なくとも予め規定された通信品質制御情報（Ｃ２）を用いて前記認証情報を演算する第４ステップ（Ｓ３７）と、前記予め規定された通信品質制御情報と前記第４ステップで演算された前記認証情報とが前記ヘッダに追加されたパケットを生成する第５ステップ（Ｓ３８）と、前記予め規定された通信品質制御情報を用いた通信品質制御を実施して、前記第５ステップで生成されたパケットを前記送信先に向けて転送する第６ステップ（Ｓ２８、Ｓ２９）とを有することを特徴としている。
【発明の効果】
【００１１】
本発明によれば、パケットのヘッダに格納された認証情報（パケットのヘッダに格納された通信品質制御情報を認証するための情報）を評価部が正当であると評価した場合に、転送部が通信品質制御情報を用いた通信品質制御を実施して送信先に向けたパケットの転送を行うため、偽造パケットによる影響を防止することができるという効果がある。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１実施形態によるパケット転送装置が用いられる通信システムの全体構成を示すブロック図である。
【図２】通信システムに設けられるフィールド機器の要部構成を示すブロック図である。
【図３】本発明の第１実施形態によるパケット転送装置としてのルータの要部構成を示すブロック図である。
【図４】本発明の第１実施形態で用いられるパケットの基本フォーマットを示す図である。
【図５】本発明の第１実施形態で用いられるパケットの第１拡張フォーマットを示す図である。
【図６】本発明の第１実施形態で用いられるパケットの第２拡張フォーマットを示す図である。
【図７】本発明の第１実施形態におけるフィールド機器の動作を示すフローチャートである。
【図８】本発明の第１実施形態によるパケット転送装置としてのルータの動作を示すフローチャートである。
【図９】本発明の第２実施形態で用いられるパケットのフォーマットを示す図である。
【図１０】本発明の第２実施形態で用いられるパケットの他のフォーマットを示す図である。
【図１１】本発明の第３実施形態で用いられるパケットのフォーマットを示す図である。
【図１２】本発明の第３実施形態で用いられるパケットの他のフォーマットを示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の実施形態によるパケット転送装置及び方法について詳細に説明する。
【００１４】
〔第１実施形態〕
〈通信システムの全体構成〉
図１は、本発明の第１実施形態によるパケット転送装置が用いられる通信システムの全体構成を示すブロック図である。図１に示す通り、通信システム１は、フィールド機器１０、ルータ２０ａ〜２０ｃ（パケット転送装置）、及びコントローラ３０を備えており、フィールド機器１０とコントローラ３０との間で、ルータ２０ａ〜２０ｃによって構成されるネットワークＮを介した通信が可能である。
【００１５】
尚、図１に示す通信システム１は、プラントや工場等において構築される分散制御システム（ＤＣＳ）の基礎をなすものである。また、図１では、理解を容易にするために、ネットワークＮに１つのフィールド機器１０のみが接続され、ネットワークＮが３つのルータ２０ａ〜２０ｃから構成されている例を図示しているが、これらフィールド機器及びルータの数は任意である。
【００１６】
フィールド機器１０は、例えば流量計や温度センサ等のセンサ機器、流量制御弁や開閉弁等のバルブ機器、ファンやモータ等のアクチュエータ機器、その他のプラントや工場の現場に設置される機器である。フィールド機器１０は、その動作がコントローラ３０によって制御され、測定対象（例えば、流量、温度、弁の開度、モータの回転数等）の測定を行い、その測定結果をコントローラ３０に送信する。このフィールド機器１０は、ネットワークＮに対して有線接続或いは無線接続される。
【００１７】
ルータ２０ａ〜２０ｃは、フィールド機器１０及びコントローラ３０が接続されるネットワークＮを構成するものであり、ネットワークＮを介して送信されてくるパケットを送信先に向けて転送する。例えば、フィールド機器１０から送信されてくるパケットを、コントローラ３０に向けて転送する。ここで、ルータ２０ａ〜２０ｃは、互いに有線接続されていても良く、互いに無線接続されていても良い。
【００１８】
尚、本実施形態では、理解を容易にするために、ルータ２０ａ〜２０ｃが、図１に示す通りフィールド機器１０とコントローラ３０との間で直列状に接続されているものとする。このため、フィールド機器１０に接続されるルータ２０ａ及びコントローラ３０に接続されるルータ２０ｃは、ネットワークＮの末端に配置されるルータ（所謂、エッジルータ）ということができる。
【００１９】
コントローラ３０は、ネットワークＮを介してフィールド機器１０を制御するとともに、フィールド機器１０の制御によって得られた各種データを、ネットワークＮを介して収集する。
【００２０】
〈フィールド機器の構成〉
図２は、通信システムに設けられるフィールド機器の要部構成を示すブロック図である。図２に示す通り、フィールド機器１０は、測定部１１、通信部１２、パケット処理部１３、暗号処理部１４、メモリ１５、及び制御部１６を備えており、コントローラ３０の制御の下で、前述した測定対象の測定結果が含まれるパケットの送信等を行う。
【００２１】
測定部１１は、前述した測定対象の測定を行い、その測定結果を示す測定データを制御部１６に出力する。通信部１２は、制御部１６の制御の下で、ネットワークＮを介して送信されてくるパケットを受信するとともに、コントローラ３０宛のパケットをネットワークＮに送信する。パケット処理部１３は、制御部１６の制御の下で、通信部１２で送受信されるパケットに関する処理を行う。例えば、通信部１２で受信されたパケットから特定データの抽出等を行うとともに、通信部１２を介して送信すべきパケット（測定部１１の測定結果が格納されたパケット）の生成を行う。
【００２２】
ここで、パケット処理部１３は、パケットに設けられる本来のヘッダ（基本ヘッダ）を拡張したヘッダである拡張ヘッダを生成する拡張ヘッダ生成部１３ａを備える。この拡張ヘッダは、ＱｏＳ技術（通信品質制御技術）で用いられる通信品質制御情報（具体的には、ＤｉｆｆＳｅｒｖで用いられるＤＳＣＰ値、或いはＲＳＶＰで用いられる値）を認証するためのメッセージ認証コード（認証情報）等が格納されるヘッダである。尚、パケット処理部１３で生成されるパケットのフォーマットの詳細については後述する。
【００２３】
暗号処理部１４は、メモリ１５に格納された秘密共有鍵Ｋ１を用いて、上記のメッセージ認証コードを演算する。具体的に、暗号処理部１４は、送信すべきパケット（拡張ヘッダが追加されていないパケット）と秘密共有鍵Ｋ１とを用いて演算（例えば、ＨＭＡＣ−ＳＨＡ１、ＨＭＡＣ−ＭＤ５等の演算）を行い、ＨＭＡＣ（Keyed-Hashing for Message Authentication Code）なるメッセージ認証コードを演算する。
【００２４】
メモリ１５は、上記の秘密共有鍵Ｋ１とＱｏＳ技術で用いられる通信品質制御情報Ｃ１と）を記憶する。ここで、秘密共有鍵Ｋ１は、フィールド機器１０及びルータ２０ａ〜２０ｃで共有される秘密鍵であり、例えばコントローラ３０から配布される。また、通信品質制御情報Ｃ１は、フィールド機器１０から送信されるパケットの優先度の制御や帯域制御を行うための情報（具体的には、ＤｉｆｆＳｅｒｖで用いられるＤＳＣＰ値、或いはＲＳＶＰで用いられる値）であり、例えばコントローラ３０によって予め設定され、或いは予め作業者によりフィールド機器１０に手動設定される。
【００２５】
尚、図２では説明を簡単にするために図示を簡略化しているが、通信品質制御情報Ｃ１は、通信品質制御を行う上で必要となる各種情報が格納されるテーブルに格納される。具体的に、このテーブルは、ＤｉｆｆＳｅｒｖの場合には、「送信元アドレス」、「送信先アドレス」、「利用プロトコル」、「送信元ポート」、「送信先ポート」、及び「ＤＳＣＰ値（通信品質制御情報Ｃ１）」等が格納される複数のレコードを有するテーブルである。
【００２６】
制御部１６は、フィールド機器１０の動作を統括して制御する。例えば、通信部１２、パケット処理部１３、及び暗号処理部１４を制御して、パケットの送受信制御を行う。ここで、制御部１６は、パケットの送信制御を行う際に、メモリ１５に記憶された通信品質制御情報Ｃ１を送信すべきパケットに含めて拡張ヘッダを付加するか否かの制御を行う。尚、拡張ヘッダを付加する場合には、制御部１６は、拡張ヘッダに格納するメッセージ認証コードを暗号処理部１４に演算させる制御を行う。
【００２７】
〈パケット転送装置の構成〉
図３は、本発明の第１実施形態によるパケット転送装置としてのルータの要部構成を示すブロック図である。図３に示す通り、ルータ２０ａ〜２０ｃは、通信部２１ａ，２１ｂ、パケット処理部２２、評価部２３、転送部２４、暗号処理部２５（演算部）、及びメモリ２６（記憶部）を備えており、ネットワークＮを介して送信されてくるパケットを送信先に向けて転送する。
【００２８】
通信部２１ａ，２１ｂは、ネットワークＮを介して送信されてくるパケットを受信するとともに、ネットワークＮに対してパケットを送信する。例えば、ネットワークＮを介してフィールド機器１０からコントローラ３０にパケットが送信される場合には、ルータ２０ａ〜２０ｃに設けられた通信部２１ａはフィールド機器１０からネットワークＮを介して送信されてきたパケットを受信し、ルータ２０ａ〜２０ｃに設けられた通信部２１ｂはコントローラ３０宛のパケットをネットワークＮに送信する。尚、図３では、理解を容易にするために、２つの通信部２１ａ，２１ｂを備える構成を図示しているが、通信部２１ａ，２１ｂをまとめて１つにしても良い。
【００２９】
パケット処理部２２は、通信部２１ａ，２１ｂで送受信されるパケットに関する処理を行う。例えば、通信部２１ａ，２１ｂで受信されたパケットから特定データの抽出等を行うとともに、通信部２１ａ，２１ｂを介して送信すべきパケットの生成を行う。このパケット処理部２２は、フィールド機器１０に設けられたパケット処理部１３と同様に、パケットに設けられる本来のヘッダ（基本ヘッダ）を拡張したヘッダである拡張ヘッダ（メッセージ認証コード等が格納されるヘッダ）を生成する拡張ヘッダ生成部２２ａを備える。尚、パケット処理部２２で生成されるパケットのフォーマットの詳細については後述する。
【００３０】
評価部２３は、通信部２１ａ，２１ｂで受信されたパケットのヘッダに格納された通信品質制御情報Ｃ１を認証するためのメッセージ認証コードがヘッダ（拡張ヘッダ）に格納されている場合に、そのメッセージ認証コードの評価を行う。具体的には、受信されたパケット（拡張ヘッダが除かれたパケット）と秘密共有鍵Ｋ１とを用いたメッセージ認証コードの演算を暗号処理部２５に行わせ、受信されたパケットの拡張ヘッダに格納されているメッセージ認証コードと暗号処理部２５で得られたメッセージ認証コードとが一致するか否かを判断する。尚、評価部２３は、両メッセージ認証コードが一致した場合に、受信されたパケットの拡張ヘッダに格納されているメッセージ認証コードが正当であると評価する。
【００３１】
転送部２４は、パケットの転送制御を行う。具体的に、通信部２１ａ，２１ｂで受信されたパケットの拡張ヘッダに格納されているメッセージ認証コードが正当であると評価部２３によって評価された場合には、受信されたパケットのヘッダに格納された通信品質制御情報Ｃ１を用いた通信品質制御を実施して、受信したパケットを送信先に向けて転送する。これに対し、通信部２１ａ，２１ｂで受信されたパケットにメッセージ認証コードが格納された拡張ヘッダが無い場合には、メモリ２６に記憶された通信品質制御情報Ｃ２を用いた通信品質制御を実施して、パケット処理部２２で生成されたパケットを送信先に向けて転送する。尚、パケット処理部２２で生成されるパケットは、ヘッダ（基本ヘッダ）に通信品質制御情報Ｃ２が含まれ、通信品質制御情報Ｃ２を認証するメッセージ認証コードが格納されたヘッダ（拡張ヘッダ）が追加されたパケットである。
【００３２】
暗号処理部２５は、フィールド機器１０に設けられた暗号処理部１４と同様に、メモリ２６に格納された秘密共有鍵Ｋ１を用いて、上記のメッセージ認証コードを生成する。メモリ２６は、秘密共有鍵Ｋ１とＱｏＳ技術で用いられる通信品質制御情報Ｃ２（予め規定された通信品質制御情報）とを記憶する。ここで、秘密共有鍵Ｋ１は、フィールド機器１０のメモリ１５に記憶される秘密共有鍵Ｋ１と同じものであり、例えばコントローラ３０から配布される。また、通信品質制御情報Ｃ２は、受信したパケットを転送する際の優先度の制御や帯域制御を行うための情報（具体的には、ＤｉｆｆＳｅｒｖで用いられるＤＳＣＰ値、或いはＲＳＶＰで用いられる値）であり、例えばコントローラ３０によって予め設定され、或いは予め作業者によりルータ２０ａ〜２０ｃに手動設定される。この通信品質制御情報Ｃ２は、フィールド機器１０のメモリ１５に記憶される通信品質制御情報Ｃ１と同じものであっても良く、異なるものであっても良い。
【００３３】
尚、図３では説明を簡単にするために図示を簡略化しているが、通信品質制御情報Ｃ２は、図２に示した通信品質制御情報Ｃ１と同様に、通信品質制御を行う上で必要となる各種情報が格納されるテーブルに格納される。具体的に、このテーブルは、ＤｉｆｆＳｅｒｖの場合には、「送信元アドレス」、「送信先アドレス」、「利用プロトコル」、「送信元ポート」、「送信先ポート」、及び「ＤＳＣＰ値（通信品質制御情報Ｃ２）」等が格納される複数のレコードを有するテーブルである。
【００３４】
〈パケットのフォーマット〉
図４は、本発明の第１実施形態で用いられるパケットの基本フォーマットを示す図である。本実施形態で用いられるパケットは、ＩＰｖ６（Internet Protocol Version 6）に準拠したパケットであり、基本ヘッダＨ１、ＴＣＰ／ＵＤＰ（Transmission Control Protocol / User Datagram Protocol）ヘッダＨ２、及びペイロードＰからなる。基本ヘッダＨ１には、パケットの転送に必要となる各種情報が格納され、ＴＣＰ／ＵＤＰヘッダＨ２には、ＴＣＰ／ＵＤＰで処理を行うために必要となる各種情報が格納され、ペイロードＰには、送信される各種データ（例えば、フィールド機器１０で測定された測定データ）が格納される。
【００３５】
ここで、基本ヘッダＨ１は、「バージョン（Version）」、「トラフィッククラス（Traffic Class）」、「フローラベル（Flow Label）」、「ペイロード長（Payload Length）」、「次ヘッダ（Next Header）」、「ホップリミット（Hop Limit）」、「送信元アドレス（Source Address）」、及び「送信先アドレス（Destination Address）」の８つのフィールドからなる。これらのフィールドのうち、「トラフィッククラス」フィールドは、パケットの優先度を示す情報が格納される８ビット長のフィールドである。
【００３６】
具体的に、上記の「トラフィッククラス」フィールドには、ＱｏＳ技術の一種であるＤｉｆｆＳｅｒｖによる優先度の制御に用いられる情報であるＤＳＣＰ値が格納される６ビット長のＤＳＣＰフィールドが設けられている。尚、「トラフィッククラス」フィールドにおけるＤＳＣＰフィールドを除く残りの２ビットは、ＥＣＮ（Explicit Congestion Notification：明示的輻輳通知）に使用される。
【００３７】
ＤｉｆｆＳｅｒｖによる優先度の制御が行われる場合には、図２に示すフィールド機器１０のメモリ１５に格納された通信品質制御情報Ｃ１、或いは図３に示すルータ２０ａ〜２０ｃのメモリ２６に格納された通信品質制御情報Ｃ２として上記のＤＳＣＰ値が用いられる。このため、フィールド機器１０からは、ＤＳＣＰフィールドに通信品質制御情報Ｃ１が格納されたパケットが送信されることがある。また、詳細は後述するが、ＤＳＣＰフィールドに通信品質制御情報Ｃ２が格納されたパケットがルータ２０ａ〜２０ｃによって転送されることもある。
【００３８】
図５は、本発明の第１実施形態で用いられるパケットの第１拡張フォーマットを示す図である。図５に示すフォーマットのパケットは、ＱｏＳ技術で用いられる通信品質制御情報（ＤＳＣＰ値等）の偽造防止対策が施されたパケットであり、例えばフィールド機器１０で生成される。尚、フィールド機器１０において、通信品質制御情報の偽造防止を実施する旨の設定がなされていない場合には、図４に示すパケット（基本のフォーマットのパケット）が生成される。
【００３９】
図５に示すパケットは、図４に示すパケットと同様にＩＰｖ６に準拠したパケットであって、図４に示すパケットの基本ヘッダＨ１とＴＣＰ／ＵＤＰヘッダＨ２との間に拡張ヘッダＨ１１が追加されたパケットである。この拡張ヘッダＨ１１は、パケットがルータ２０ａ〜２０ｃを通過するごとに処理されなければならない情報が指定されたヘッダ（所謂、ホップ・バイ・ホップ・オプションヘッダ）である。
【００４０】
図５に示す通り、拡張ヘッダＨ１１は、「次ヘッダ」フィールドＦ１１、「ヘッダ長」フィールドＦ１２、及び「オプション」フィールドＦ１３からなる。「次ヘッダ」フィールドＦ１１は、拡張ヘッダＨ１１に続く次のヘッダ（ＴＣＰ／ＵＤＰヘッダＨ２）の種類を示す情報が格納されるフィールドである。「ヘッダ長」フィールドＦ１２は、拡張ヘッダＨ１１に内おける「ヘッダ長」フィールドＦ１２以降の長さが格納されるフィールドである。「オプション」フィールドＦ１３は、通信品質制御情報の偽造防止に必要となる情報が格納されるフィールドである。
【００４１】
具体的に、「オプション」フィールドＦ１３には、「識別子」、「データ長」、及び「メッセージ認証コード」が一組にされたオプション情報Ｑ１が格納される。ここで、オプション情報Ｑ１中の「識別子」は、オプション情報Ｑ１中に「メッセージ認証コード」が含まれる旨を示す識別子である。オプション情報Ｑ１中の「データ長」は、オプション情報Ｑ１に含まれる「メッセージ認証コード」のデータ長である。オプション情報Ｑ１中の「メッセージ認証コード」は、通信品質制御情報（具体的には、図４に示す基本ヘッダＨ１のＤＳＣＰフィールドに格納されるＤＳＣＰ値、或いはＲＳＶＰで用いられる値）を認証するための認証情報（ＨＭＡＣ）である。この「メッセージ認証コード」が通信品質制御情報（ＤＳＣＰ値等）の偽造防止に用いられる。
【００４２】
図６は、本発明の第１実施形態で用いられるパケットの第２拡張フォーマットを示す図である。図６に示すフォーマットのパケットは、図５に示すパケットと同様に、ＱｏＳ技術で用いられる通信品質制御情報（ＤＳＣＰ値等）の偽造防止対策が施されたパケットであり、エッジルータとしてのルータ２０ａ，２０ｃで生成される。尚、図５に示すフォーマットのパケットが送信されてきた場合には、ルータ２０ａ，２０ｃでのパケット生成（図６に示すパケットの生成）は行われない。
【００４３】
図６にパケットは、図４に示すパケットの基本ヘッダＨ１の前に、拡張ヘッダＨ１１及び基本ヘッダＨ１０が追加されたパケットであり、いわば図４に示すパケットに拡張ヘッダＨ１１が付加されたパケットが、基本ヘッダＨ１０によってカプセル化されたパケットである。拡張ヘッダＨ１１は、図５に示した拡張ヘッダＨ１１と同じものであり、「オプション」フィールドＦ１３に「メッセージ認証コード」等が格納されたホップ・バイ・ホップ・オプションヘッダである。
【００４４】
基本ヘッダＨ１０は、ネットワークＮの内部（ルータ２０ａとルータ２０ｃとの間）でパケットを転送するために必要となる各種情報が格納され、図４に示す基本ヘッダＨ１と同様に、「バージョン」〜「送信先アドレス」フィールドからなる。但し、基本ヘッダＨ１０は、ネットワークＮの内部のみでパケットを転送するために用いられるものであるため、「送信元アドレス」フィールド及び「送信先アドレス」フィールドには、エッジルータ（ルータ２０ａ，２０ｃ）のアドレスが格納される。
【００４５】
〈通信システムの動作〉
次に、通信システム１の動作について説明する。尚、以下では理解を容易にするために、ＱｏＳ技術の一種であるＤｉｆｆＳｅｒｖによる優先度の制御が行われつつ、フィールド機器１０で生成されたパケットがコントローラ３０に送信される際の動作について説明する。図７は、本発明の第１実施形態におけるフィールド機器の動作を示すフローチャートである。また、図８は、本発明の第１実施形態によるパケット転送装置としてのルータの動作を示すフローチャートである。
【００４６】
ここで、本実施形態における通信システム１の動作は、フィールド機器１０で生成されるパケットに、ＤｉｆｆＳｅｒｖで用いられるＤＳＣＰ値（通信品質制御情報Ｃ１）を認証するためのメッセージ認証コード（ＨＭＡＣ）が含まれている場合の動作（以下、第１動作という）と、含まれていない場合の動作（以下、第２動作という）とに大別される。以下、これら第１，第２動作について順に説明する。
【００４７】
［第１動作］
まず、コントローラ３０に送信すべきパケットを生成する処理がフィールド機器１０で行われる（ステップＳ１１）。具体的には、制御部１６によってパケット処理部１３が制御され、基本ヘッダＨ１の「送信元アドレス」，「送信先アドレス」フィールドに、フィールド機器１０及びコントローラ３０のアドレスがそれぞれ格納され、ＤＳＣＰフィールドにＤＳＣＰ値（通信品質制御情報Ｃ１）が格納されたパケット（図４に示す基本フォーマットのパケット）が生成される。尚、生成されるパケットのペイロードＰには、例えば測定部１１の測定結果を示す測定データが格納される。
【００４８】
次に、コントローラ３０に送信すべきパケットが、ＤＳＣＰ値（通信品質制御情報Ｃ１）の偽造防止が必要なパケットであるか否かがフィールド機器１０の制御部１６で判断される（ステップＳ１２）。具体的には、通信品質制御情報の偽造防止を実施する旨がフィールド機器１０に設定されているか否かが制御部１６で判断される。第１動作においては、かかる旨の設定がなされているため、ステップＳ１２の判断結果は「ＹＥＳ」になる。
【００４９】
すると、制御部１６によってメモリ１５及び暗号処理部１４が制御され、対象となるパケット（ＤＳＣＰフィールドにＤＳＣＰ値が書き込まれたパケット）と秘密共有鍵Ｋ１とを用いてメッセージ認証コード（ＨＭＡＣ）が演算される（ステップＳ１３）。
【００５０】
メッセージ認証コードが演算されると、制御部１６によってパケット処理部１３の拡張ヘッダ生成部１３ａが制御され、図５に示す通り、演算されたメッセージ演算コード等が「オプション」フィールドＦ１３に格納された拡張ヘッダＨ１１がパケットに付加される（ステップＳ１４）。以上の処理が終了すると、制御部１６によって通信部１２が制御され、拡張ヘッダＨ１１が付加されたパケットがコントローラ３０に向けて送信される（ステップＳ１５）。
【００５１】
フィールド機器１０からコントローラ３０に向けて送信されたパケットは、まずルータ２０ａに入力される。ルータ２０ａに入力されたパケットは、図３に示す通信部２１ａで受信されてパケット処理部２２に出力される（ステップＳ２１）。パケットが受信されると、パケット処理部２２において、メッセージ認証コード（ＨＭＡＣ）が格納された拡張ヘッダＨ１１の有無が判断される（ステップＳ２２：第１ステップ）。第１動作においては、メッセージ認証コード（ＨＭＡＣ）が格納された拡張ヘッダＨ１１が付加されたパケットがフィールド機器１０から送信されるため、ステップＳ２２の判断結果は「ＹＥＳ」になる。
【００５２】
すると、拡張ヘッダＨ１１に格納されたメッセージ認証コード（ＨＭＡＣ）がパケット処理部２２によって読み出されて評価部２３に出力される（ステップＳ２３）。パケット処理部２２からのメッセージ認証コード（ＨＭＡＣ）が評価部２３に入力されると、暗号処理部２５において、パケットの拡張ヘッダＨ１１を除いた残りの部分と秘密共有鍵Ｋ１とを用いてメッセージ認証コード（ＨＭＡＣ）が演算される（ステップＳ２４）。
【００５３】
次に、受信したパケットの拡張ヘッダＨ１１に格納されたメッセージ認証コード（ＨＭＡＣ）の正当性が評価部２３で評価される。具体的には、受信したパケットの拡張ヘッダＨ１１に格納されたメッセージ認証コード（ＨＭＡＣ）と暗号処理部２５で演算されたメッセージ認証コード（ＨＭＡＣ）とが一致するか否かが評価部２３によって判断される（ステップＳ２５：第２ステップ）。仮に、両メッセージ認証コード（ＨＭＡＣ）が一致しないと評価部２３によって判断された場合（判断結果が「ＮＯ」の場合）には、受信したパケットを破棄する処理がパケット処理部２２で行われ（ステップＳ２６）、図８に示す一連の処理が終了する。
【００５４】
これに対し、両メッセージ認証コード（ＨＭＡＣ）が一致すると評価部２３によって判断された場合（ステップＳ２５の判断結果が「ＹＥＳ」の場合）には、受信したパケットが自ノード宛であるか否かが転送部２４で判断される（ステップＳ２７）。ここでは、受信したパケットの基本ヘッダＨ１に含まれる「送信先アドレス」フィールドに、コントローラ３０のアドレスが格納されており、ルータ２０ａ宛ではないため、ステップＳ２７の判断結果は「ＮＯ」になる。
【００５５】
すると、転送部２４によってＱｏＳ処理が実施される（ステップＳ２８：第３ステップ）。具体的には、受信したパケットの基本ヘッダＨ１内におけるＤＳＣＰフィールドに格納されたＤＳＣＰ値（通信品質制御情報Ｃ１）に基づいて、転送部２４がＤｉｆｆＳｅｒｖによる優先度の制御を実施する。そして、転送部２４によってパケット処理部２２が制御され、パケットが通信部２１ｂに出力されてコントローラ３０に向けて送信される（ステップＳ２９：第３ステップ）。
【００５６】
ルータ２０ａからコントローラ３０に向けて送信されたパケットは、ルータ２０ｂ及びルータ２０ｃで順次転送が行われた後にコントローラ３０で受信される。パケットを受信したルータ２０ｂ及びルータ２０ｃでは、ルータ２０ａで行われた処理と同様の処理が行われる。つまり、パケットの拡張ヘッダＨ１１に格納されたメッセージ認証コード（ＨＭＡＣ）の正当性が評価され、正当であると評価された場合にはＱｏＳ処理が実施された上でパケットの転送処理が行われ、正当ではないと評価された場合にはパケットを破棄する処理が行われる。このように、ＤＳＣＰ値（通信品質制御情報Ｃ１）が偽造された虞のあるパケットは、ルータ２０ａ〜２０ｃの何れかで破棄されるため、偽造パケットによる影響を防止することができる。
【００５７】
［第２動作］
まず、第１動作と同様に、コントローラ３０に送信すべきパケットを生成する処理がフィールド機器１０で行われる（ステップＳ１１）。次に、コントローラ３０に送信すべきパケットが、ＤＳＣＰ値（通信品質制御情報Ｃ１）の偽造防止が必要なパケットであるか否かがフィールド機器１０の制御部１６で判断される（ステップＳ１２）。具体的には、通信品質制御情報の偽造防止を実施する旨がフィールド機器１０に設定されているか否かが制御部１６で判断される。第２動作においては、かかる旨の設定がなされていないため、ステップＳ１２の判断結果は「ＮＯ」になる。すると、制御部１６によって通信部１２が制御され、図４に示す基本フォーマットのパケット（拡張ヘッダＨ１１が付加されていないパケット）がコントローラ３０に向けて送信される（ステップＳ１５）。
【００５８】
尚、フィールド機器１０が、通信品質制御情報の偽造防止を実施する機能を有しないものである場合には、上記のステップ１２の処理が省略され、ステップＳ１１，Ｓ１５の処理のみが行われる。つまり、コントローラ３０に送信すべきパケットを生成する処理が行われ（ステップＳ１１）、図４に示す基本フォーマットのパケット（拡張ヘッダＨ１１が付加されていないパケット）がコントローラ３０に向けて送信される（ステップＳ１５）。
【００５９】
フィールド機器１０からコントローラ３０に向けて送信されたパケットは、まずルータ２０ａに入力される。ルータ２０ａに入力されたパケットは、図３に示す通信部２１ａで受信されてパケット処理部２２に出力される（ステップＳ２１）。パケットが受信されると、パケット処理部２２において、メッセージ認証コード（ＨＭＡＣ）が格納された拡張ヘッダＨ１１の有無が判断される（ステップＳ２２）。第２動作においては、拡張ヘッダＨ１１が付加されていないパケット（図４に示す基本フォーマットのパケット）がフィールド機器１０から送信されるため、ステップＳ２２の判断結果は「ＮＯ」になる。
【００６０】
すると、受信したパケットが、本来的には上記の拡張ヘッダＨ１１が必要なパケットであるか否かがルータ２０ａのパケット処理部２２で判断される（ステップＳ３１）。具体的には、パケットに拡張ヘッダＨ１１が付加されているべき旨を示す情報が、メモリ２６に記憶されたテーブル（通信品質制御情報Ｃ２が格納されているテーブル）内に格納されているか否かがパケット処理部２２で判断される。仮に、受信したパケットが、拡張ヘッダＨ１１が必要なパケットであると判断した場合（判断結果が「ＹＥＳ」の場合）には、偽造された可能性が高いため、受信したパケットを破棄する処理がパケット処理部２２で行われ（ステップＳ３２）、図８に示す一連の処理が終了する。
【００６１】
これに対し、受信したパケットが、拡張ヘッダＨ１１が必要なパケットではないと判断した場合（判断結果が「ＮＯ」の場合）には、受信したパケットが、ＤＳＣＰ値（通信品質制御情報Ｃ２）の偽造防止が必要なパケットであるか否かがルータ２０ａのパケット処理部２２で判断される（ステップＳ３３）。具体的には、当該パケットに通信品質制御情報の偽造防止を実施する旨がルータ２０ａに設定されているか否かがパケット処理部２２で判断される。第２動作においては、かかる旨の設定がなされているため、ステップＳ３３の判断結果は「ＹＥＳ」になる。
【００６２】
すると、パケット処理部２２において、受信したパケットをカプセル化する処理（エンキャプスレーション）が行われる（ステップＳ３４）。具体的には、図６に示す基本ヘッダＨ１、ＴＣＰ／ＵＤＰヘッダＨ２、及びペイロードＰからなるパケットに対して、新たな基本ヘッダＨ１０を付加する処理が行われる。ここで、基本ヘッダＨ１０は、ネットワークＮの内部（ルータ２０ａとルータ２０ｃとの間）でパケットを転送するために用いられるものであるため、基本ヘッダＨ１０の「送信元アドレス」，「送信先アドレス」フィールドには、ルータ２０ａ及びルータ２０ｃのアドレスがそれぞれ格納される。
【００６３】
次いで、パケット処理部２２において、パケットに付加された新たな基本ヘッダＨ１０のＤＳＣＰフィールドに、ＤＳＣＰ値（通信品質制御情報Ｃ２）を書き込む処理が行われる（ステップＳ３５）。続いて、パケット処理部２２において、もとの基本ヘッダＨ１のＤＳＣＰフィールドに、ＤＳＣＰ値（通信品質制御情報Ｃ２）を書き込む処理が行われる（ステップＳ３６）。尚、ステップＳ３５，Ｓ３６の処理は何れが先に行われても良い。
【００６４】
以上の処理が終了すると、暗号処理部２５において、パケット処理部２２で生成されたパケット（カプセル化されてＤＳＣＰ値（通信品質制御情報Ｃ２）が書き込まれたパケット）と秘密共有鍵Ｋ１とを用いてメッセージ認証コード（ＨＭＡＣ）が演算される（ステップＳ３７：第４ステップ）。メッセージ認証コードが演算されると、パケット処理部２２の拡張ヘッダ生成部２２ａによって、図６に示す拡張ヘッダＨ１１（メッセージ演算コード等が「オプション」フィールドＦ１３に格納された拡張ヘッダＨ１１）が生成されて、カプセル化されたパケットに付加される（ステップＳ３８：第５ステップ）。
【００６５】
以上の処理が終了すると、転送部２４によってＱｏＳ処理が実施される（ステップＳ２８：第６ステップ）。具体的には、生成されたパケットの基本ヘッダＨ１０におけるＤＳＣＰフィールドに格納されたＤＳＣＰ値（通信品質制御情報Ｃ２）に基づいて、転送部２４がＤｉｆｆＳｅｒｖによる優先度の制御を実施する。そして、転送部２４によってパケット処理部２２が制御され、パケットが通信部２１ｂに出力されてコントローラ３０に向けて送信される（ステップＳ２９：第６ステップ）。
【００６６】
尚、仮に当該パケットに対し通信品質制御情報の偽造防止を実施する旨がルータ２０ａに設定されていない場合には、ステップＳ３３の判断結果が「ＮＯ」になり、受信したパケットの基本ヘッダＨ１のＤＳＣＰフィールドにＤＳＣＰ値（通信品質制御情報Ｃ２）を書き込む処理がパケット処理部２２によって行われる（ステップＳ３９）。そして、転送部２４によってＱｏＳ処理が実施され（ステップＳ２８）、基本ヘッダＨ１にＤＳＣＰ値（通信品質制御情報Ｃ２）が書き込まれたパケットが通信部２１ｂに出力されてコントローラ３０に向けて送信される（ステップＳ２９）。
【００６７】
ルータ２０ａからコントローラ３０に向けて送信されたパケットは、ルータ２０ｂ及びルータ２０ｃで順次受信される。ここで、ルータ２０ａからコントローラ３０に向けて送信されたパケットに、メッセージ認証コード（ＨＭＡＣ）が格納された拡張ヘッダＨ１１が付加されている場合には、ルータ２０ｂ，２０ｃでは、前述した第１動作で説明したルータ２０ａで行われる処理と同様の処理が行われる。
【００６８】
つまり、パケットの拡張ヘッダＨ１１に格納されたメッセージ認証コード（ＨＭＡＣ）の正当性が評価され、正当であると評価された場合にはＱｏＳ処理が実施された上でパケットの転送処理が行われ、正当ではないと評価された場合にはパケットを破棄する処理が行われる。このように、ＤＳＣＰ値（通信品質制御情報Ｃ２）が偽造された虞のあるパケットは、ルータ２０ａ〜２０ｃの何れかで破棄されるため、偽造パケットによる影響を防止することができる。
【００６９】
ここで、ルータ２０ａからコントローラ３０に向けて送信されたパケットは、基本ヘッダＨ１０によってカプセル化されたものであり、基本ヘッダＨ１０の「送信先アドレス」フィールドにはルータ２０ｃのアドレスが格納される。このため、ルータ２０ａからコントローラ３０に向けて送信されたパケットを受信したルータ２０ｃの転送部２４は、そのパケットが自ノード宛てであると判断する。
【００７０】
これにより、図８中におけるステップＳ２７の判断結果が「ＹＥＳ」になり、パケット処理部２２においてカプセル化を解除する処理（デキャプスレーション）が行われる（ステップＳ４０）。具体的には、図６に示す基本ヘッダＨ１０と拡張ヘッダＨ１１を削除する処理を行う。以上の処理が終了すると、転送部２４によってＱｏＳ処理が実施され（ステップＳ２８）、図４に示す基本フォーマットのパケットがルータ２０ｃからコントローラ３０送信される（ステップＳ２９）。
【００７１】
以上の通り、本実施形態では、メッセージ認証コードが格納された拡張ヘッダＨ１１が付加されているパケットをルータ２０ａ〜２０ｃが受信した場合には、拡張ヘッダＨ１１に格納されたメッセージ認証コードの正当性を評価し、正当であると評価した場合にはＱｏＳ処理を実施した上でパケットの転送処理を行い、正当ではないと評価した場合にはパケットを破棄する処理を行っている。このため、ＤＳＣＰ値（通信品質制御情報Ｃ１，Ｃ２）が偽造された虞のあるパケットは、ルータ２０ａ〜２０ｃの何れかで破棄されるため、偽造パケットによる影響を防止することができる。
【００７２】
また、メッセージ認証コードが格納された拡張ヘッダＨ１１が付加されていないパケットをエッジルータ（ルータ２０ａ）が受信した場合には、本来的に拡張ヘッダＨ１１が必要なパケットではないと判断したときに、パケットの基本ヘッダＨ１，Ｈ１０に通信品質制御情報Ｃ２を書き込むとともに、メッセージ認証コードが格納された拡張ヘッダＨ１１をパケットに付加するようにしている。このため、メッセージ認証コードが格納された拡張ヘッダＨ１１が付加されていないパケットが送信されてきた場合であっても、偽造パケットによる影響を防止することができる。
【００７３】
〔第２実施形態〕
上述した第１実施形態は、メッセージ認証コードが格納された拡張ヘッダＨ１１をパケットに付加し、パケットのヘッダに格納される通信品質制御情報が偽造されたものであるか否かを判別することによって、偽造パケットによる影響を防止するものであった。この第１実施形態は、偽造パケットによる影響を防止するには極めて有効であるものの、正当パケットを悪用した行為（例えば、拡張ヘッダＨ１１が付加された正当パケットを保存し、保存したパケットを繰り返し送信し続けるという行為）による影響を防止することはできない。本実施形態は、このような不正行為による影響を防止するものである。
【００７４】
図９は、本発明の第２実施形態で用いられるパケットのフォーマットを示す図である。図９に示す通り、本実施形態で用いられるパケットは、図５に示すパケットと同様に、基本ヘッダＨ１、拡張ヘッダＨ１１、ＴＣＰ／ＵＤＰヘッダＨ２、及びペイロードＰからなる。但し、拡張ヘッダＨ１１の「オプション」フィールドＦ１３に格納される情報が追加されている点が図５に示すパケットとは相違する。
【００７５】
具体的に、拡張ヘッダＨ１１の「オプション」フィールドＦ１３には、「識別子」、「データ長」、及び「メッセージ認証コード」が一組にされたオプション情報Ｑ１に加えて、「識別子」、「データ長」、及び「シーケンス番号」が一組にされたオプション情報Ｑ２が格納される。ここで、オプション情報Ｑ２中の「識別子」は、オプション情報Ｑ２中に「シーケンス番号」が含まれる旨を示す識別子である。オプション情報Ｑ２中の「データ長」は、オプション情報Ｑ２に含まれる「シーケンス番号」のデータ長である。オプション情報Ｑ２中の「シーケンス番号」は、送信先に向けて順次送信される一群のパケットの送信順を示す番号である。
【００７６】
図９に示すパケットは、図２に示すフィールド機器１０のパケット処理部１３又は図３に示すルータ２０ａ，２０ｃのパケット処理部２２で生成される。このような「シーケンス番号」が格納された拡張ヘッダＨ１１をパケットに付加し、同一の「シーケンス番号」が格納されたパケットが複数送信されてきた場合には、それらのパケットを破棄することで、前述した正当パケットを悪用した不正行為による影響を防止することができる。
【００７７】
図１０は、本発明の第２実施形態で用いられるパケットの他のフォーマットを示す図である。上述した図９に示すパケットは、「メッセージ認証コード」を含むオプション情報Ｑ１と「シーケンス番号」を含むオプション情報Ｑ２とが同じ拡張ヘッダＨ１１に格納されたものであった。これに対し、図１０に示すパケットは、２つの拡張ヘッダＨ１１，Ｈ１２が付加されており、「メッセージ認証コード」を含むオプション情報Ｑ１が拡張ヘッダＨ１１に格納され、「シーケンス番号」を含むオプション情報Ｑ２が拡張ヘッダＨ１２に格納されたものである。尚、上記の拡張ヘッダＨ１２に含まれる「シーケンス番号」を用いて「メッセージ認証コード」を演算しても良い。
【００７８】
〔第３実施形態〕
ＱｏＳ技術の一種であるＤｉｆｆＳｅｒｖによる優先度の制御が行われる環境において、同一のＤＳＣＰ値（通信品質制御情報）が用いられることによって優先度が一定に設定され、且つ、ペイロードＰに格納されるデータが同一である場合には、各パケットの拡張ヘッダＨ１１に格納されるメッセージ認証コード（ＨＭＡＣ）は同じものになる。このため、このメッセージ認証コードを取得して、不正パケットの拡張ヘッダに格納すれば、パケットの偽装が可能になると考えられる。本実施形態は、このようなパケットの偽装を防止するものである。
【００７９】
図１１は、本発明の第３実施形態で用いられるパケットのフォーマットを示す図である。図１１に示す通り、本実施形態で用いられるパケットは、図９に示すパケットと同様に、基本ヘッダＨ１、拡張ヘッダＨ１１、ＴＣＰ／ＵＤＰヘッダＨ２、及びペイロードＰからなる。但し、拡張ヘッダＨ１１の「オプション」フィールドＦ１３に格納される情報が追加されている点が図９に示すパケットとは相違する。
【００８０】
具体的に、拡張ヘッダＨ１１の「オプション」フィールドＦ１３には、「識別子」、「データ長」、及び「メッセージ認証コード」が一組にされたオプション情報Ｑ１、「識別子」、「データ長」、及び「シーケンス番号」が一組にされたオプション情報Ｑ２に加えて、「識別子」、「データ長」、及び「乱数」が一組にされたオプション情報Ｑ３が格納される。ここで、オプション情報Ｑ３中の「識別子」は、オプション情報Ｑ３中に「乱数」が含まれる旨を示す識別子である。オプション情報Ｑ３中の「データ長」は、オプション情報Ｑ３に含まれる「乱数」のデータ長である。オプション情報Ｑ３中の「乱数」は、各パケットの拡張ヘッダＨ１１に含まれる「メッセージ認証コード」の値をパケット毎に異ならせるためものである。
【００８１】
つまり、本実施形態では、パケット毎に異なる乱数を用いて「メッセージ認証コード」を演算することよって、「メッセージ認証コード」の値をパケット毎に異ならせている。ここで、ルータ２０ａ〜２０ｃの各々でメッセージ認証コードの正当性を評価する際に、「メッセージ認証コード」の演算の際に用いた乱数が必要になることから、拡張ヘッダＨ１１に「乱数」を格納している。尚、オプション情報Ｑ２に含まれる「シーケンス番号」もパケット毎に異なる値であることから、「乱数」とともに、或いは「乱数」を用いずに「シーケンス番号」を用いて「メッセージ認証コード」を演算しても良い。
【００８２】
図１１に示すパケットは、図２に示すフィールド機器１０のパケット処理部１３又は図３に示すルータ２０ａのパケット処理部２２で生成される。このような「乱数」を用いて「メッセージ認証コード」が演算されることによって、各パケットの拡張ヘッダＨ１１に格納される「メッセージ認証コード」は互いに異なる値になるため、前述したパケットの偽装を防止することができる。
【００８３】
図１２は、本発明の第３実施形態で用いられるパケットの他のフォーマットを示す図である。上述した図１１に示すパケットは、「メッセージ認証コード」を含むオプション情報Ｑ１、「シーケンス番号」を含むオプション情報Ｑ２、及び「乱数」を含むオプション情報Ｑ３が同じ拡張ヘッダＨ１１に格納されたものであった。これに対し、図１２に示すパケットは、２つの拡張ヘッダＨ１１，Ｈ１２が付加されており、「メッセージ認証コード」を含むオプション情報Ｑ１が拡張ヘッダＨ１１に格納され、「シーケンス番号」を含むオプション情報Ｑ２及び「乱数」を含むオプション情報Ｑ３が拡張ヘッダＨ１２に格納されたものである。尚、本実施形態で用いられるパケットは、拡張ヘッダＨ１１，Ｈ１２に加えてもう１つの拡張ヘッダが付加されており、「メッセージ認証コード」を含むオプション情報Ｑ１、「シーケンス番号」を含むオプション情報Ｑ２、及び「乱数」を含むオプション情報Ｑ３が互いに異なる拡張ヘッダに格納されたものであっても良い。
【００８４】
以上、本発明の実施形態によるパケット転送装置及び方法について説明したが、本発明は上述した実施形態に制限されることなく、本発明の範囲内で自由に変更が可能である。例えば、上述した実施形態では、拡張ヘッダを除くパケット全体を対象としてメッセージ認証コードを演算する例について説明したが、基本ヘッダＨ１及びＴＣＰ／ＵＤＰヘッダＨ２のみを対象としてメッセージ認証コードを演算しても良い。また、通信品質制御情報のみを対象としてメッセージ認証コードを演算しても良い。例えば、ＤｉｆｆＳｅｒｖで用いられるＤＳＣＰ値、或いはＲＳＶＰで用いられる値（送信元アドレス、送信先アドレス、送信元ポート、送信先ポート等）である。
【００８５】
また、前述した実施形態では、受信したパケットの拡張ヘッダＨ１１に格納されたメッセージ認証コード（ＨＭＡＣ）が正当なものではないと評価した場合に、ルータ２０ａ〜２０ｃは、パケットを廃棄する処理を行っていた。しかしながら、ルータ２０ａ〜２０ｃは、パケットを廃棄する処理と、パケットを廃棄しつつＩＣＭＰ（Internet Control Message Protocol：インターネット制御通知プロトコル）エラーメッセージを送信する処理とを選択可能であるのが望ましい。
【００８６】
また、前述した実施形態において、ルータ２０ａで生成されるパケットは、図６に示すパケット（図４に示すパケットに拡張ヘッダＨ１１を付加したパケットを、基本ヘッダＨ１０でカプセル化したパケット）であった。しかしながら、ルータ２０ａによって生成されるパケットは、図５に示すパケット（フィールド機器１０で生成されるパケット）と同様のパケットであっても良い。
【００８７】
また、前述した実施形態では、フィールド機器１０及びルータ２０ａ〜２０ｃが、秘密共有鍵Ｋ１を用いた演算（ハッシュ演算）を行ってメッセージ認証コードを求める例について説明した。しかしながら、通信品質制御情報の完全性が担保できるのであれば、秘密共有鍵Ｋ１を用いた演算以外の方法でメッセージ認証コードを求めるようにしても良い。尚、フィールド機器１０とルータ２０との間、及び、ルータ２０ｃとコントローラ３０との間は、１ホップであることが望ましいが、これらの間に複数のルータが介在しても良い。その場合、本提案とは別の手法を用いてその間の信頼性を担保することが望ましい。
【００８８】
また、上記実施形態では、ＩＰｖ６に準拠したパケットの拡張ヘッダＨ１１にメッセージ認証コードが格納される例について説明したが、メッセージ認証コードの格納先は、ＩＰｖ６に準拠したパケットの拡張ヘッダＨ１１に限られる訳ではない。例えば、イーサネット（登録商標）で用いられるＭＡＣ（Media Access Control）フレームにメッセージ認証コードを格納することもできる。
【００８９】
また、ネットワークＮがネットワークスイッチによって構成されている場合にも本発明を適用することができる。かかる場合には、ＭＡＣヘッダにメッセージ認証コードを格納することができる。また、ルータ２０ａ〜２０ｃは、単一のハードウェアとして実現されている必要はなく、複数のハードウェアに分散されていても良い。例えば、ＯｐｅｎＦｌｏｗ対応のネットワークスイッチであっても良い。このようなネットワークスイッチを用いる場合には、ＩＰｖ６に準拠したパケットの拡張ヘッダＨ１１及びＭＡＣヘッダの何れにもフレームメッセージ認証コードを格納することができる。
【００９０】
更に、上記実施形態では、プラントや工場等において構築される分散制御システム（ＤＣＳ）の基礎をなす通信システム１について説明したが、本発明はこのような通信システム１以外の通信システム（例えば、ＩＴＳ（Intelligent Transport System:高度道路交通システム）、送電網、医療ネットワーク）にも適用可能である。
【符号の説明】
【００９１】
２０ａ〜２０ｃ    ルータ
２２              パケット処理部
２３              評価部
２４              転送部
２５              暗号処理部
２６              メモリ
Ｃ１              通信品質制御情報
Ｃ２              通信品質制御情報
Ｈ１              基本ヘッダ
Ｈ１１            拡張ヘッダ
Ｋ１              秘密共有鍵
Ｎ                ネットワーク
【図１】
2014027350.tif 000003
【図２】
2014027350.tif 000004
【図３】
2014027350.tif 000005
【図４】
2014027350.tif 000006
【図５】
2014027350.tif 000007
【図６】
2014027350.tif 000008
【図７】
2014027350.tif 000009
【図８】
2014027350.tif 000010
【図９】
2014027350.tif 000011
【図１０】
2014027350.tif 000012
【図１１】
2014027350.tif 000013
【図１２】
2014027350.tif 000014