(57)【要約】【課題】アプリケーション毎に最適な経路制御を行うような柔軟な経路制御技術を提供する。【解決手段】経路制御装置１は、パケットをアプリケーションの種類毎に分類するパケット分類部１０と、アプリケーションの種類に対応付けて異なる複数の経路テーブルを有し、パケット分類部によってアプリケーションの種類毎に分類されたパケットを、当該アプリケーションの種類に対応付けられている一の経路テーブルに従って転送するパケット転送部２０とを備える。【選択図】図１
2010193357.tif 000002
【特許請求の範囲】
【請求項１】
パケットをアプリケーションの種類毎に分類するパケット分類部と、
アプリケーションの種類に対応付けて異なる複数の経路テーブルを有し、パケット分類部によってアプリケーションの種類毎に分類されたパケットを、当該アプリケーションの種類に対応付けられている一の経路テーブルに従って転送するパケット転送部と
を備えることを特徴とする経路制御装置。
【請求項２】
前記複数の経路テーブルを生成する経路テーブル生成部
を更に備えることを特徴とする請求項１に記載の経路制御装置。
【請求項３】
前記経路テーブル生成部は、
既存の物理リンクに異なる複数の論理リンクを重畳的に設定し、設定した論理リンク毎に異なる複数の論理トポロジを生成する論理トポロジ生成部と、
前記論理トポロジ生成部によって生成された論理トポロジ毎に異なる複数の経路テーブルを作成する経路テーブル作成部と
を有することを特徴とする請求項２に記載の経路制御装置。
【請求項４】
前記論理トポロジ生成部は、
ＯＳＰＦのＬＳＡｓを記憶するＬＳＡｓ記憶部と、
前記ＬＳＡｓ記憶部に記憶されているＬＳＡｓを拡張し、複数のＭＰＬＳパスを論理リンクとして設定する論理リンク設定部と、
前記ＬＳＡｓ記憶部を参照し、設定されたＭＰＬＳパス毎の最短木を導出する最短木導出部と
を有することを特徴とすることを特徴とする請求項３に記載の経路制御装置。
【請求項５】
アプリケーションの種類に対応付けて異なる複数の経路テーブルを有する経路制御装置のコンピュータに、
パケットをアプリケーションの種類毎に分類するパケット分類ステップと、
アプリケーション分類ステップによってアプリケーションの種類毎に分類されたパケットを、当該アプリケーションの種類に対応付けられている一の経路テーブルに従って転送するパケット転送ステップと
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、経路制御装置およびプログラムに関する。
【背景技術】
【０００２】
経路制御に関連し、各ルータが、ＯＳＰＦ(Open Shortest Path First)のＬＳＡｓ(Link State Advertisements)（非特許文献１参照）を利用し、物理的なノードおよびリンクに基づいて、１つの最短木を生成し、1つの経路制御用の経路テーブルを生成する方法が存在する。また、ＭＰＬＳ(Multi Protocol Label Switching)ネットワーク（非特許文献２参照）において、ＯＳＰＦのＬＳＡｓを拡張し、１つの経路テーブルとする方法が知られている（例えば、非特許文献３参照）。また、ＭＰＬＳパス（非特許文献４参照）を論理リンクとしてＯＳＰＦに流入（適用）する方法も開示されている（非特許文献５参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】J.Moy,“OSPF version 2”,IETF RFC2328,April,1998.
【非特許文献２】E.Rosen,A.Viswanathan,R.Callon, “Multiprotocol Label Switching Architecture”,IETF RFC3031,January,2001.
【非特許文献３】D.Katz,et al.,“Traffic Engineering(TE) Extensions to OSPF Version 2”,IETF RFC 3630, September,2003.
【非特許文献４】D.Awduche,et al.,“RSVP-TE:Extensions to RSVP for LSP Tunnels”,IETF RFC3209, December,2001.
【非特許文献５】K.Kompella and Y.Rekhter,“Label Switched Paths(LSP) Hierarchy with Generalized Multi-Protocol Label Switching(GMPLS) Traffic Engineering(TE)”,RFC4206,October,2005.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の手法では、物理的なルータ、ノード、論理的なリンクを用いて経路テーブルを生成するものの、あくまで1つの経路テーブルを生成するに留まっている。従って、あるアプリケーションにとっては最適な経路制御であっても、他のアプリケーションにとっては必ずしも最適な経路制御とならないという問題がある。
【０００５】
本発明は、上述した課題に鑑みてなされたものであって、アプリケーション毎に最適な経路制御を行うような柔軟な経路制御技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記問題を解決するために、本発明の一態様である経路制御装置は、パケットをアプリケーションの種類毎に分類するパケット分類部と、アプリケーションの種類に対応付けて異なる複数の経路テーブルを有し、パケット分類部によってアプリケーションの種類毎に分類されたパケットを、当該アプリケーションの種類に対応付けられている一の経路テーブルに従って転送するパケット転送部とを備えることを特徴とする。  
【０００７】
上記経路制御装置は、複数の経路テーブルを生成する経路テーブル生成部を更に備えてもよい。
【０００８】
上記経路制御装置において、経路テーブル生成部は、既存の物理リンクに異なる複数の論理リンクを重畳的に設定し、設定した論理リンク毎に異なる複数の論理トポロジを生成する論理トポロジ生成部と、論理トポロジ生成部によって生成された論理トポロジ毎に異なる複数の経路テーブルを作成する経路テーブル作成部とを有してもよい。
【０００９】
上記経路制御装置において、論理トポロジ生成部は、ＯＳＰＦのＬＳＡｓを記憶するＬＳＡｓ記憶部と、ＬＳＡｓ記憶部に記憶されているＬＳＡｓを拡張し、複数のＭＰＬＳパスを論理リンクとして設定する論理リンク設定部と、ＬＳＡｓ記憶部を参照し、設定されたＭＰＬＳパス毎の最短木を導出する最短木導出部とを有してもよい。
【００１０】
上記問題を解決するために、本発明の他の態様であるプログラムは、アプリケーションの種類に対応付けて異なる複数の経路テーブルを有する経路制御装置のコンピュータに、  パケットをアプリケーションの種類毎に分類するパケット分類ステップと、アプリケーション分類ステップによってアプリケーションの種類毎に分類されたパケットを、当該アプリケーションの種類に対応付けられている一の経路テーブルに従って転送するパケット転送ステップとを実行させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、アプリケーション毎に最適な経路制御を行うような柔軟な経路制御ができるようになる。
【図面の簡単な説明】
【００１２】
【図１】本実施形態の経路制御装置１のブロック図である。
【図２】クループ化情報記憶部１９および経路テーブル記憶部２９に記憶されている情報の一例である。
【図３】アプリケーション特定部１２の動作を説明する説明図である。
【図４】経路制御装置１の動作を示すフローチャートである。
【図５】物理トポロジおよび論理リンクの説明図である。
【図６】論理トポロジおよび論理リンク毎の最短木の説明図である。
【図７】経路制御装置１を適用したネットワーク構成である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態について図面を参照して詳細に説明する。経路制御装置１は、図１に示すように、パケット分類部１０、パケット転送部２０および経路テーブル生成部３０を備える。パケット分類部１０は、ヘッダ分析部１１、アプリケーション特定部１２、グループ化部１３、グループ化情報記憶部１９を備える。パケット転送部２０は、経路決定部２１および経路テーブル記憶部２９を備える。経路テーブル生成部３０は、論理トポロジ生成部３１、経路テーブル作成部３４および経路テーブル一時記憶部３９を備える。論理トポロジ生成部３１は、論理リンク設定部３２、最短木導出部３３、ＬＳＡｓ記憶部３７および最短木一時記憶部３８を備える。
【００１４】
パケット分類部１０は、種々のアプリケーションによって生成されたパケットをそのアプリケーションの種類毎に分類する。以下、詳細に説明する。
【００１５】
クループ化情報記憶部１９は、アプリケーション単位または複数のアプリケーション単位にアプリケーションをグループ化するために参照する情報を記憶する。具体的には、クループ化情報記憶部１９は、図２（ａ）に示すように、アプリケーションを識別する情報（以下、「アプリケーションＩＤ」という）に対応付けてアプリケーショングループを識別する情報（以下、「アプリケーショングループＩＤ」という）を記憶する。図２（ａ）に示す例において、クループ化情報記憶部１９は、アプリケーションＩＤ「ａ」「ｂ」「ｃ」に対応付けてアプリケーショングループＩＤ「Ａ」を記憶し、アプリケーションＩＤ「ｄ」「ｅ」「ｆ」「ｇ」に対応付けてアプリケーショングループＩＤ「Ｂ」を記憶し、アプリケーションＩＤ「ｈ」に対応付けてアプリケーショングループＩＤ「Ｃ」を記憶している。なお、同一グループに属するアプリケーションは、例えば、経路制御において同一の特性（例えば優先度）を有するものである。
【００１６】
ヘッダ分析部１１は、外部からパケットを取得する。ヘッダ分析部１１は、取得したパケットのヘッダ部を分析する。具体的には、ヘッダ分析部１１は、ＩＰヘッダ部のフォーマットおよびＸＭＬヘッダ部のフォーマットに照らして、取得したパケットのヘッダ部がＩＰヘッダ部であるかＸＭＬヘッダ部であるかを分析（判定）する。ヘッダ分析部１１は、パケットおよび分析結果をアプリケーション特定部１２に供給する。
【００１７】
アプリケーション特定部１２は、ヘッダ分析部１１からパケットおよび分析結果を取得する。アプリケーション特定部１２は、分析結果を参照し、ＩＰヘッダの場合には、ＩＰフォーマットに従って、ＩＰヘッダ部およびＩＰデータ部を解析し、取得したパケットに係るアプリケーション（パケットの送信元又は宛先であるアプリケーション）を特定する。例えば、アプリケーション特定部１２は、図３に示すように、ＩＰデータ部に文字列「ｈｔｔｐ：／／ｗｗｗ．ｋｄｄｉ．ｃｏｍ」又は「ｈｔｔｐ：ｗｗｗ．ｋｄｄｉｌａｂｓ．ｊｐ」があった場合、“ａｐｐｌｉｃａｔｉｏｎ１”を特定する。同様に、アプリケーション特定部１２は、ＸＭＬヘッダの場合には、ＸＭＬフォーマットに従って、ＸＭＬヘッダ部およびＸＭＬデータ部を解析し、取得したパケットに係るアプリケーションを特定する。アプリケーション特定部１２は、パケット、および、特定したアプリケーションを識別するアプリケーションＩＤをグループ化部１３に供給する。なお、アプリケーション特定部１２は、ａｐｐｌｉｃａｔｉｏｎ１からアプリケーションＩＤ「ａ」を取得できるような、各アプリケーションのアプリケーションＩＤ（アプリケーションＩＤ一覧表）を内部に記憶している。
【００１８】
グループ化部１３は、アプリケーション特定部１２からパケットおよびアプリケーションＩＤを取得する。グループ化部１３は、クループ化情報記憶部１９を参照し、取得したアプリケーションＩＤに対応するアプリケーショングループＩＤを取得（探索）する。グループ化部１３は、パケット、および、取得したアプリケーショングループＩＤをパケット転送部２０（経路決定部２１）に供給する。
【００１９】
パケット転送部２０は、アプリケーションの種類に対応付けて異なる複数の経路テーブルを有し、パケット分類部１０によってアプリケーションの種類毎に分類されたパケットを、当該アプリケーションの種類に対応付けられている一の経路テーブルに従って転送する。以下、詳細に説明する。
【００２０】
経路テーブル記憶部２９は、パケットを転送する複数の経路テーブルを記憶する。具体的には、経路テーブル記憶部２９は、図２（ｂ）に示すように、アプリケーショングループＩＤに対応付けて経路テーブルを記憶する。図２（ｂ）に示す例において、経路テーブル記憶部２９は、アプリケーショングループＩＤ「Ａ」に対応付けて経路テーブル＃１を記憶し、アプリケーショングループＩＤ「Ｂ」に対応付けて経路テーブル＃２を記憶し、アプリケーショングループＩＤ「Ｃ」に対応付けて経路テーブル＃３を記憶している。なお、経路テーブルは、経路テーブル生成部３０によって生成される。また、設定者によって、経路テーブルとアプリケーショングループＩＤとの対応付けが行われる。
【００２１】
経路決定部２１は、パケット分類部１０（グループ化部１３）からパケットおよびアプリケーショングループＩＤを取得する。経路決定部２１は、経路テーブル記憶部２９に記憶された複数の経路テーブルのうち、取得したアプリケーショングループＩＤに対応する経路テーブルを参照し、パケットの転送先の経路（ＮＥＸＴ＿ＨＯＰ）を決定する。経路決定部２１は、決定した経路にパケットを転送する。
【００２２】
経路テーブル生成部３０は、複数の経路テーブルを生成する。以下、詳細に説明する。
論理トポロジ生成部３１は、既存の物理リンクに異なる複数の論理リンクを重畳的に設定し、設定した論理リンク毎に異なる複数の論理トポロジを生成する。なお、論理トポロジ生成部３１の各動作については後述する。
【００２３】
経路テーブル作成部３４は、論理トポロジ生成部３１によって生成された複数の論理トポロジに従って、論理トポロジ毎に異なる複数の経路テーブルを作成する。経路テーブル作成部３４は、作成した複数の経路テーブルを経路テーブル一時記憶部３９に記憶する。なお、経路テーブル作成部３４は、論理トポロジ生成部３１によって生成された複数の論理トポロジに従って、経路テーブル一時記憶部３９内の複数の経路テーブルを更新してもよい。また、経路テーブル一時記憶部３９内の複数の経路テーブルは、経路テーブル転送部（非図示）によって、パケット転送部２０（経路テーブル記憶部２９）に転送（供給）される。
【００２４】
以下、論理トポロジ生成部３１の各動作について説明する。ＬＳＡｓ記憶部３７は、ＯＳＰＦのＬＳＡｓを記憶する。なお、ＬＳＡｓ記憶部３７は、マスターＴＥ(Traffic Engineering)データベースとも称される。また、ＬＳＡｓは、外部（例えば、他のルータ）から供給される。
【００２５】
論理リンク設定部３２は、ＬＳＡｓ記憶部３７に記憶されているＬＳＡｓを拡張し、複数のＭＰＬＳパスを論理リンクとして設定する。例えば、非特許文献３において、Ｌｉｎｋ  ＴＬＶの１０番目にマルチトポロジ用識別子（４オクテット）を新たに定義する。キャリア側で任意のＭＰＬＳパスを設定する。その時にＭＰＬＳパスにはマルチトポロジ用識別子を明示的に設定する。ＯＳＰＦドメインに本リンク（ＭＰＬＳパス）をＬＳＡとして注入する場合に、上記定義情報を同時に注入する。
【００２６】
最短木導出部３３は、ＬＳＡｓ記憶部３７を参照し、設定されたＭＰＬＳパス毎の最短木を導出する。具体的には、最短木導出部３３は、マルチトポロジ用識別子毎にＣＳＰＦ（Constraints Shortest Path Fast）を実行する。なお、ＣＳＰＦの実行は、制約（コスト、帯域、遅延等）に基づく最短木の導出と等価である。最短木導出部３３は、導出したＭＰＬＳパス毎の最短木を最短木一時記憶部３８に記憶する。なお、最短木一時記憶部３８内のＭＰＬＳパス毎の最短木（即ち、複数の論理トポロジ）は、経路テーブル作成部３４によって参照される。
【００２７】
続いて、図４を用いて経路制御装置１の動作について説明する。なお、図４（ａ）は経路テーブル生成時における動作、図４（ｂ）はパケット転送時における動作をそれぞれ示すフローチャートである。なお、図４（ａ）に示すフローチャートの開始時において、ＬＳＡｓ記憶部３７はＯＳＰＦのＬＳＡｓを記憶しているものとする。また、図４（ｂ）に示すフローチャートの開始時において、クループ化情報記憶部１９はアプリケーション単位または複数のアプリケーション単位にアプリケーションをグループ化するために参照する情報を記憶し、経路テーブル記憶部２９はＭＰＬＳパス毎に異なる複数の経路テーブルを記憶しているものとする。
【００２８】
図４（ａ）において、論理リンク設定部３２は、ＬＳＡｓ記憶部３７に記憶されているＬＳＡｓ拡張し、複数のＭＰＬＳパスを論理リンクとして設定する（ステップＳ１００）。最短木導出部３３は、ＬＳＡｓ記憶部３７を参照し、設定されたＭＰＬＳパス毎の最短木を導出する（ステップＳ１１０）。最短木導出部３３は、導出したＭＰＬＳパス毎の最短木を最短木一時記憶部３８に記憶する。
【００２９】
経路テーブル作成部３４は、最短木一時記憶部３８に記憶されているＭＰＬＳパス毎の最短木を参照し、ＭＰＬＳパス毎に異なる複数の経路テーブルを作成する（ステップＳ１２０）。経路テーブル作成部３４は、作成した複数の経路テーブルを経路テーブル一時記憶部３９に記憶する。そして本フローチャートは終了する。なお、経路テーブル転送部（非図示）は、経路テーブル一時記憶部３９内の複数の経路テーブルをパケット転送部２０（経路テーブル記憶部２９）に転送（供給）する。
【００３０】
続いて、図４（ｂ）において、ヘッダ分析部１１は、外部から取得したパケットのヘッダ部を分析する（ステップＳ２００）。ヘッダ分析部１１は、取得したパケットおよび分析結果をアプリケーション特定部１２に供給する。アプリケーション特定部１２は、ヘッダ分析部１１から取得した分析結果を参照し、パケットに係るアプリケーション（パケットの送信元又は宛先であるアプリケーション）を特定する（ステップＳ２１０）。アプリケーション特定部１２は、パケット、および、特定したアプリケーションを識別するアプリケーションＩＤをグループ化部１３に供給する。
【００３１】
グループ化部１３は、クループ化情報記憶部１９を参照し、アプリケーション特定部１２から取得したアプリケーションＩＤに対応するアプリケーショングループＩＤを取得する（ステップＳ２２０）。グループ化部１３は、パケット、および、取得したアプリケーショングループＩＤをパケット転送部２０（経路決定部２１）に供給する。
【００３２】
経路決定部２１は、経路テーブル記憶部２９に記憶された複数の経路テーブルのうち、グループ化部１３から取得したアプリケーショングループＩＤに対応する経路テーブルを参照し、パケットの転送先の経路（ＮＥＸＴ＿ＨＯＰ）を決定する（ステップＳ２３０）。経路決定部２１は、決定した経路にパケットを転送する（ステップＳ２４０）。そして本フローチャートは終了する。
【００３３】
以下、具体例を用いて補足する。経路制御装置１は、図５（ａ）に示す物理トポロジに対し、図５（ｂ）に示す様に、マルチトポロジ識別子１〜３を付けたＭＰＬＳパスを設定する。なお、図５（ｂ）において、マルチトポロジ識別子１により識別されるＭＰＬＳパスの予約帯域は１００Ｍｂｐｓ、マルチトポロジ識別子２により識別されるＭＰＬＳパスの予約帯域は２００Ｍｂｐｓ、マルチトポロジ識別子３により識別されるＭＰＬＳパスの予約帯域は３００Ｍｂｐｓとしているが、実際の予約帯域は、ＬＳＡの物理予約帯域の値からＭＰＬＳパスの予約帯域の値を減算して算出する。
【００３４】
経路制御装置１は、図５（ｂ）に示すマルチトポロジ識別子によって識別される複数のＭＰＬＳパスから、図６（ａ）に示す様に、マルチトポロジ識別子毎に論理トポロジを生成する。各帯域はＭＰＬＳパスの帯域とし、コストはＭＰＬＳパスに対して自在に設定できる。
【００３５】
経路制御装置１は、図６（ａ）に示すマルチトポロジ識別子毎の論理トポロジから、図６（ｂ）に示す様に、マルチトポロジ識別子毎の最短木を求める。なお、図６（ｂ）の最短木は、ノードＥからノードＤへの最短木であるが、実際には全てのルータから全ての宛先に対して最短木が求められる。
【００３６】
以上、経路制御装置１によれば、図７に示すように、アプリケーション毎に最適な経路制御を行うような柔軟な経路制御ができるようになる。具体的には、例えば、物理トポロジとは関係なく任意のアプリケーション単位でネットワークトポロジを決定し、そのネットワークトポロジ単位で経路制御可能となるため、アプリケーション毎に最適な経路制御が可能となる。また、一度設備を設置した場合、簡単にその物理トポロジを変更することが困難であるが、経路制御装置１によれば、複数の論理的なトポロジを生成することが可能となる。また、任意のアプリケーションに対して様々な経路制御が可能なため、サービスの多様化に対応できる。
【００３７】
なお、本発明の一実施形態による経路制御装置１の各処理を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、当該記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、本発明の一実施形態による経路制御装置１に係る上述した種々の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００３８】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００３９】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００４０】
１  経路制御装置  １０  パケット分類部  １１  ヘッダ分析部  １２  アプリケーション特定部  １３  グループ化部  １９  グループ化情報記憶部  ２０  パケット転送部  ２１  経路決定部  ２９  経路テーブル記憶部  ３０  経路テーブル生成部  ３１  論理トポロジ生成部  ３２  論理リンク設定部  ３３  最短木導出部  ３４  経路テーブル作成部  ３７  ＬＳＡｓ記憶部  ３８  最短木一時記憶部  ３９  経路テーブル一時記憶部
【図１】
2010193357.tif 000003
【図２】
2010193357.tif 000004
【図３】
2010193357.tif 000005
【図４】
2010193357.tif 000006
【図５】
2010193357.tif 000007
【図６】
2010193357.tif 000008
【図７】
2010193357.tif 000009