説明

ネットワークシステム、及び転送制御識別子の割当方法

【課題】パケット転送装置の転送制御テーブルの検索処理時間の上限値を保証し、転送制御識別子の検索処理の効率の向上と、転送制御識別子空間の有効活用とを両立するネットワークシステムを提供することを目的とする。
【解決手段】複数のパケット転送装置を備え、複数のパケット転送装置の間でパケットを転送するネットワークシステムであって、転送制御識別子を新たに割り当てる場合、割当候補の転送制御識別子を割り当てた場合の転送制御テーブル検索部の検索負荷を算出し、算出された検索負荷が所定値以下である場合、割当候補の転送制御識別子を割り当て、検索負荷算出部によって算出された検索負荷が所定値よりも大きい場合、割当候補の転送制御識別子を割り当てない割当可否判定部と、を備えることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のパケット転送装置を備えるネットワークシステムに関し、特に、パケット転送装置が転送方法を決定するための転送制御識別子を割り当てるネットワークシステムに関する。
【背景技術】
【0002】
パケット転送装置は、自身に入力されたパケットからヘッダを取り出し、ヘッダに含まれる転送制御識別子をキーとして、転送制御テーブルを検索することによって、入力されたパケットの転送方法を決定する。
【0003】
例えば、MPLS(Multi−Protocol Label Switching)網におけるパケット転送装置は、パケットのヘッダに含まれるラベル値をキーとして、MPLSクロスコネクトテーブルを検索する。これによって、パケット転送装置は、パケット転送先の方路及び新たなラベル値を決定し、決定したラベル値をヘッダに格納した上で、決定した方路に向けてパケットを送信する。パケット転送先の方路はパケット毎に異なるため、パケット転送装置は、パケットが入力されるたびに、入力されたパケットをキーとしてMPLSクロスコネクトテーブルを検索しなければならない。
【0004】
MPLSクロスコネクトテーブルのエントリ数は、当該MPLSクロスコネクトテーブルを備えるパケット転送装置が収容するパスの本数が多いほど多くなる。また、パケット転送装置のMPLSクロスコネクトテーブルの検索頻度はパケットの到着頻度が高いほど高くなる。したがって、多くのパスを収容するパケット転送装置、又は、高速な通信インタフェースを備えるパケット転送装置では、転送制御テーブル(例えば、MPLSクロスコネクトテーブル)の検索処理の効率化が必要である。
【0005】
転送制御テーブルの検索処理の効率化する方法として、B−Tree等のツリー構造を用いて転送制御テーブルを検索する方法が知られている。このツリー構造を用いる検索方法による転送制御テーブルの検索時間は、理想的には転送制御テーブルの登録エントリ数の対数時間となるが、転送制御テーブルに登録されている転送制御識別子の分布によっては、リニアサーチによる検索時間と同等まで低下する。
【0006】
ハッシュ関数を用いて転送制御テーブルを検索する方法では、ハッシュ値の衝突(Collision)の発生によって、検索処理の効率が低下したり、検索が失敗することが知られている。ハッシュ値が衝突した場合の問題を解決する技術が知られている(例えば、特許文献1及び特許文献2参照)。
【0007】
特許文献1には、「複数個のハッシュ表を含み、その各々が異なった計算されたインデックスで同時にアクセスされる」ことによって、転送エントリの検索を実現するネットワークスイッチが開示されている。
【0008】
特許文献2には、「ハッシュテーブル形式の各種プロトコルテーブルの検索時間を短縮できるIPアドレス動的割り当て装置」が開示されている。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特表2003−510963号公報
【特許文献2】特開2000−278322号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
上述したように、ハッシュ値を使用して転送制御テーブルを検索する場合において、ハッシュ値の衝突が発生した場合の対処方式がいくつか知られている。しかしながら、いずれの対処方式を用いても、転送制御テーブルの検索が失敗してしまうか、転送制御テーブルの検索効率が低下してしまうという問題があった。
【0011】
例えば、Chained Hash Methodでは、ハッシュ値が同じになるデータをリスト形式で管理するため、ハッシュ値が同じになるデータが多くなり、リスト長が長くなるにつれて、処理効率は低下する。
【0012】
特許文献1に記載された技術では、ハッシュ値の衝突による処理効率の低下を防止することによって検索処理時間を短縮できるが、検索処理時間の上限値を保証できない。ここで、パケット転送装置は、検索処理時間がパケット到着間隔を超過してしまうと、自身に到着したパケットを処理できなくなり、パケットを消失してしまう。したがって、ネットワークの通信品質を保証するためには、パケット転送装置の検索処理時間の上限値を保証することが必要となる。
【0013】
以上より、本発明は、パケット転送装置の転送制御テーブルの検索処理時間の上限値を保証し、転送制御識別子の検索処理の効率を向上させるネットワークシステムを提供することを目的とする。
【課題を解決するための手段】
【0014】
本発明の代表的な一例を示せば、複数のパケット転送装置を備え、前記複数のパケット転送装置の間でパケットを転送するネットワークシステムであって、前記パケット転送装置は、前記パケットに含まれる転送制御識別子に対応して、当該転送制御識別子を含むパケットの転送方法が登録された転送制御テーブルを記憶し、パケットを受信した場合、前記転送制御テーブルを参照し、前記受信したパケットに含まれる前記転送制御識別子に対応する転送方法を検索する転送制御テーブル検索部と、前記転送制御テーブル検索手段によって検索された前記転送方法で前記パケットを転送するパケット転送部と、を備え、前記ネットワークシステムは、前記転送制御識別子を新たに割り当てる場合、割当候補の転送制御識別子を割り当てた後の前記転送制御テーブル検索部の検索負荷を算出する検索負荷算出部と、前記検索負荷算出部によって算出された検索負荷が所定値以下である場合、前記割当候補の転送制御識別子を割り当て、前記検索負荷算出部によって算出された検索負荷が所定値よりも大きい場合、前記割当候補の転送制御識別子を割り当てない割当可否判定部と、を備えることを特徴とする。
【0015】
なお、転送制御識別子は、パケットの転送経路に関する転送制御識別子、QoSに関する転送制御識別子、及び警報転送に関する転送制御識別子の少なくとも一つを含む。
【0016】
転送経路に関する転送制御識別子には、宛先情報、コネクション識別子、トレイル識別子、ネットワーク識別子、及び制御フラグ等である。
【0017】
宛先情報は、例えば、MACアドレス及びIPアドレス等である。コネクション識別子は、ATMのVPI(Virtual Path Identifier)/VCI(Virtual Channel Identifier)、及びフレームリレーのDLCI(Data-Link Connection Identifier)である。
【0018】
ネットワーク識別子は、VLAN ID、PBB(IEEE802.11ah Provider Backbone Bridge)におけるS−TAG/C−TAG/I−SIDを含む拡張VLAN ID等である。
【0019】
制御フラグは、IPヘッダのルータアラート、及びMPLSのルータアラートラベル等である。
【0020】
QoSに関する識別子は、具体的には、フロー識別情報及び転送廃棄優先制御情報の少なくとも一方である。フロー識別情報は、MACアドレス、Ethertype、IPアドレス、TCP/UDPのポート番号、IPv6のフローラベルの少なくとも一つである。また、転送廃棄優先制御情報は、IPヘッダ及びMPLSヘッダのDSCP/TOS、並びにL−LSPのラベル値の少なくとも一つである。
【0021】
警報転送に関する転送制御識別子とは、イーサOAMフレームに含まれるOAM種別等の情報を含む。
【0022】
また、転送制御テーブル検索部の検索方法は、ハッシュ関数に依らず、ツリー状のデータ構造を用いてもよい。この場合、検索処理の負荷の度合いはツリーの深さである。
【発明の効果】
【0023】
本発明によれば、パパケット転送装置の転送制御テーブルの検索処理時間の上限値を保証でき、転送制御識別子の検索処理の効率を向上させることができる。
【図面の簡単な説明】
【0024】
【図1】本発明の第1実施形態のネットワークシステムの構成図である。
【図2】本発明の第1実施形態のパケット転送装置のインタフェース部に付与されるインタフェース名称の説明図である。
【図3】本発明の第1実施形態のラベル割当部の構成を示すブロック図である。
【図4】本発明の第1実施形態のスイッチ処理部の構成を示すブロック図である。
【図5】本発明の第1実施形態の監視制御装置のハードウェア構成を示すブロック図である。
【図6】本発明の第1実施形態のパス経路テーブルの説明図である。
【図7A】本発明の第1実施形態の監視制御装置に記憶されるクロスコネクトテーブルの説明図である。
【図7B】本発明の第1実施形態のパケット転送装置に記憶されるクロスコネクトテーブルの説明図である。
【図8】本発明の第1実施形態の割当済ラベルテーブルの説明図である。
【図9】本発明の第1実施形態のあるパケット転送装置のハッシュ生成部によるハッシュ演算例の説明図である。
【図10】本発明の第1実施形態の監視制御装置の衝突検出部のハッシュ生成部によるハッシュ演算例の説明図である。
【図11】本発明の第1実施形態のパケット転送装置のハッシュテーブルの説明図である。
【図12】本発明の第1実施形態の衝突検出部のハッシュテーブルの説明図である。
【図13】本発明の第1実施形態のパケットネットワークで通信されるMPLSパケットの説明図である。
【図14】本発明の第1実施形態のシステム規定パラメータテーブルの説明図である。
【図15A】本発明の第1実施形態の新たなパスP1を確立する場合の監視制御装置及びパケット転送装置の前半のシーケンス図である。
【図15B】本発明の第1実施形態の新たなパスP1を確立する場合の監視制御装置及びパケット転送装置の後半のシーケンス図である。
【図16】本発明の第1実施形態の新たなパスを確立する場合の経路管理部によって実行される処理のフローチャートである。
【図17】本発明の第1実施形態の新たなパスを確立する場合のラベル割当部によって実行される処理のフローチャートである。
【図18】本発明の第1実施形態の新たなパスを確立する場合の衝突検出部によって実行される処理のフローチャートである。
【図19】本発明の第1実施形態の新たなパスを確立する場合のパケット転送装置の転送宛先制御部223によって実行される処理のフローチャートである。
【図20】本発明の第1実施形態のパケット転送装置によるパケット転送処理のフローチャートである。
【図21】本発明の第1実施形態のパケット転送装置のハッシュテーブルの説明図である。
【図22】本発明の第1実施形態の衝突検出部116のハッシュテーブルの説明図である。
【図23】本発明の第1実施形態の監視制御装置11に記憶されるクロスコネクトテーブルの説明図である。
【図24】本発明の第2実施形態のネットワークシステムの構成図である。
【図25】本発明の第3実施形態のネットワークシステムの構成図である。
【図26】本発明の転送制御識別子を管理するための2分探索木によるデータ構造の説明図である。
【発明を実施するための形態】
【0025】
(第1実施形態)
以下、本発明の第1実施形態を図1〜図23を用いて説明する。
【0026】
図1は、本発明の第1実施形態のネットワークシステムの構成図である。
【0027】
ネットワークシステムは、パケット転送装置A21〜D24(以下、総称する場合、パケット転送という)及びリンク回線31〜35によって構成されるパケットネットワーク1、及び、パケット転送装置を監視する監視制御装置11を備える。
【0028】
監視制御装置11は、ルータ装置41〜45等によって構成される制御用ネットワーク回線によってパケット転送装置と接続される。
【0029】
パケット転送装置は、パケットを入出力するインタフェース部(21a〜21h、22a〜22d、23a〜23d、及び24a〜24h)、自身に入力されたパケットの出力先となるインタフェース部を切り替えるスイッチ処理部(SW処理部)(212、222、232、及び242)、及び、パケット転送装置の各部を制御する制御部(211、221、231、及び241)を備える。
【0030】
図1では、パケット転送装置A21のインタフェース部21aとパケット転送装置B22のインタフェース部22aとがリンク回線31によって接続される。パケット転送装置A21のインタフェース部21bとパケット転送装置C23のインタフェース部23bとがリンク回線32によって接続される。パケット転送装置B22のインタフェース部22cとパケット転送装置D24のインタフェース部24aとがリンク回線33によって接続される。パケット転送装置D24のインタフェース部24bとパケット転送装置C23のインタフェース部23cとがリンク回線34によって接続される。パケット転送装置B22のインタフェース部22dとパケット転送装置C23のインタフェース部23aとがリンク回線35によって接続される。
【0031】
監視制御装置11は、通信路確立要求部117、経路管理部111、通信部112、クロスコネクトテーブル113、パス経路テーブル114、及びラベル割当部115を備える。
【0032】
通信路確立要求部117は通信路(パス)の確立を要求する。経路管理部111は、パケットネットワーク1内の経路制御を管理する。通信部112は、パケット転送装置と通信する。
【0033】
クロスコネクトテーブル113は、パケット転送装置に入力されたパケットの転送方法を管理する転送制御テーブルの一種であり、ここでは、パケット転送装置ごとのMPLSクロスコネクト状態を管理するテーブルである。なお、クロスコネクトテーブル113の詳細は、図7Aで説明する。
【0034】
パス経路テーブル114は、パケットネットワーク1内のパス経路を管理するテーブルであり、図6で詳細を説明する。
【0035】
ラベル割当部115は、転送制御識別子となるMPLSラベル値を各パケット転送装置に割り当てる。ラベル割当部115は、MPLSラベル値のハッシュ値の衝突度合いを検出する衝突検出部116を備える。ラベル割当部115の詳細は、図3で説明する。
【0036】
図1に示すパケットネットワーク1にはパスP1及びパスP2が確立されている。
【0037】
パスP1について説明する。
【0038】
パケット転送装置A21のインタフェース部21cから入力されたパケットがインタフェース部21aからリンク回線31に出力される。このパケットは、パケット転送装置B22のインタフェース部22aに入力され、インタフェース部22cからリンク回線33に出力される。そして、このパケットは、パケット転送装置D24のインタフェース部24aに入力され、インタフェース部24hから出力される。
【0039】
次に、パスP2について説明する。
【0040】
パケット転送装置A21のインタフェース部21eから入力されたパケットがインタフェース部21aからリンク回線31に出力される。このパケットは、パケット転送装置B22のインタフェース部22aに入力され、インタフェース部22dからリンク回線35に出力される。そして、このパケットは、パケット転送装置C23のインタフェース部23aに入力され、インタフェース部23dからリンク回線34に出力される。そして、このパケットは、パケット転送装置D24のインタフェース部24bに入力され、インタフェース部24gから出力される。
【0041】
ここで、監視制御装置11とパケット転送装置との接続について説明する。
【0042】
パケット転送装置A21の制御部211はルータ装置41に接続され、パケット転送装置B22の制御部221はルータ装置42に接続され、パケット転送装置C23の制御部231はルータ装置43に接続され、パケット転送装置D24の制御部241はルータ装置44に接続される。これらのルータ装置41〜44はルータ装置45に接続され、ルータ装置45は監視制御装置11の通信部112に接続される。
【0043】
このように、監視制御装置11と各パケット転送装置A21〜D24とが接続される。
【0044】
図2は、本発明の第1実施形態のパケット転送装置のインタフェース部に付与されるインタフェース名称の説明図である。
【0045】
インタフェース符号はパケット転送装置のインタフェース部の図1に示す符号である。インタフェース名称は、説明を簡単にするために、各インタフェース部に付与した名称であり、例えば、インタフェース部21aのインタフェース名称はIF_A1という。
【0046】
図3は、本発明の第1実施形態のラベル割当部115の構成を示すブロック図である。
【0047】
ラベル割当部115は、管理部1151、割当済ラベルテーブル1152、及び衝突検出部116を備える。
【0048】
なお、監視制御装置11は、監視するパケット転送装置の数だけラベル割当部115を備える。一つのラベル割当部115は一つのパケット転送装置に対応するものとする。
【0049】
管理部1151は、ラベル割当部115を管理及び制御する。割当済ラベルテーブル1152は、すでに割り当てられたラベルをパケット転送装置ごとに管理するテーブルであり、図8で詳細を説明する。
【0050】
衝突検出部116は、パケット転送装置ごとに転送制御識別子のハッシュ値の衝突度合いを検出するもので、ハッシュ生成部1161及びハッシュテーブル1162を備える。
【0051】
ハッシュ生成部1161は、パケット転送装置に備わる図4に示すハッシュ生成部2234と同じハッシュ関数によってハッシュ値を生成する。すなわち、ハッシュ生成部1161は、パケット転送装置に備わる図4に示すハッシュ生成部2234が生成するハッシュ値の分布と同じハッシュ値の分布を生成する。
【0052】
ハッシュテーブル1162は、パケット転送装置ごとに割り当てられたラベルと当該ラベルのハッシュ値との対応関係を管理するテーブルであり、図12で詳細を説明する。
【0053】
図4は、本発明の第1実施形態のスイッチ処理部222の構成を示すブロック図である。
【0054】
スイッチ処理部222は、転送宛先制御部223、及びパケット転送部224を備える。
【0055】
まず、転送宛先制御部223について説明する。
【0056】
転送宛先制御部223は、パケット転送制御装置のインタフェース部に入力されたパケットを出力するインタフェース部及び当該パケットに付与するラベルを特定する。転送宛先制御部223は、管理部2231、クロスコネクトテーブル2232、ハッシュテーブル2233、及びハッシュ生成部2234を備える。
【0057】
管理部2231は、クロスコネクトテーブル2232、ハッシュテーブル2233、及びハッシュ生成部2234を制御する。
【0058】
クロスコネクトテーブル2232は、MPLSクロスコネクト状態を管理するテーブルである。具体的には、クロスコネクトテーブル2232は、入力されたパケットに含まれる入力ラベル又はパケットが入力されたインタフェース部(入力インタフェース)と、当該パケットを出力するインタフェース(出力インタフェース)及び当該パケットに付与される出力ラベルとを対応付けて管理する。なお、クロスコネクトテーブル2232の詳細は、図7Bで説明する。
【0059】
ハッシュテーブル2233は、ハッシュ生成部2234が生成した入力ラベルのハッシュ値をキーとしてクロスコネクトテーブル2232を検索するために用いられるテーブルであり、入力ラベルのクロスコネクト情報と当該入力ラベルのハッシュ値との対応関係を管理する。なお、ハッシュテーブル2233の詳細は、図12で詳細を説明する。
【0060】
ハッシュ生成部2234は、入力ラベルのハッシュ値を生成する。
【0061】
次に、パケット転送部224について説明する。
【0062】
パケット転送部224は、入力インタフェースに入力されたパケットを転送宛先制御部223に渡し、転送宛先制御部223によって特定された出力ラベルをパケットに付与し、当該パケットを転送宛先制御部223によって特定された出力インタフェース部から出力する。パケット転送部224は、パケット転送制御部2241、受信パケット解析部2242、パケットスイッチ部2243、及び送信パケット生成部2244を備える。
【0063】
パケット転送制御部2241は、受信パケット解析部2242、パケットスイッチ部2243、及び送信パケット生成部2244を制御する。
【0064】
受信パケット解析部2242は、入力インタフェースに入力されたパケットを解析し、解析したパケットの入力ラベル及び入力インタフェース識別子を少なくとも含む情報を転送宛先制御部223に渡すとともに、解析したパケットをパケットスイッチ部2243に渡す。
【0065】
パケットスイッチ部2243はパケットのクロスコネクト処理を実行する。具体的には、パケットスイッチ部2243は、受信パケット解析部2242から渡されたパケットに、転送宛先制御部223によって特定された出力ラベルを付与し、送信パケット生成部2244に渡す。
【0066】
送信パケット生成部2244は、パケットスイッチ部2243から渡されたパケットを転送宛先制御部223によって特定された出力インタフェースに渡す。
【0067】
なお、図4では、パケット転送装置B22のスイッチ処理部222について説明したが、他のパケット転送装置A21、C23、及びD24のスイッチ処理部も同じ構成である。
【0068】
図5は、本発明の第1実施形態の監視制御装置11のハードウェア構成を示すブロック図である。
【0069】
監視制御装置11は、メモリ11a、CPU11b、二次記憶装置11c、及び通信インタフェース11d等のハードウェアによって構成される。メモリ11aには、CPU11bが実行するプログラム11e、及びCPU11bが利用するデータ11fが必要に応じて格納される。
【0070】
例えば、通信路確立要求部117、経路管理部111、通信部112、ラベル割当部115の機能は、監視制御装置11のCPU11bがこれらに対応するプログラムを実行することによって実現される。
【0071】
図6は、本発明の第1実施形態のパス経路テーブル114の説明図である。
【0072】
パス経路テーブル114は、パケットネットワーク1に確立されたパスを管理する。パス経路テーブル114は、パスID1141及びパス経路1142を含む。
【0073】
パスID1141には、パケットネットワーク1に確立されたパスの一意な識別子が登録される。パス経路1142には、パスが通る順にパケット転送装置のインタフェース部のインタフェース名称が登録される。
【0074】
図6に示すパス経路テーブル114には、図1で説明したパスP1及びP2が登録される。なお、パスP1及びP2の経路については図1で説明したので説明を省略する。
【0075】
図7Aは、本発明の第1実施形態の監視制御装置11に記憶されるクロスコネクトテーブル113の説明図である。
【0076】
クロスコネクトテーブル113は、パス経路テーブル114によって管理されるパスが経由するパケット転送装置における入力インタフェース及び入力ラベルと出力インタフェース及び出力ラベルとの対応関係を示すクロスコネクト情報を管理する。
【0077】
クロスコネクトテーブル113は、装置1131、入力ラベル1132、入力インタフェース1133、出力インタフェース1134、及び出力ラベル1135を含む。
【0078】
装置1131には、パスが経由する各パケット転送装置の一意な識別子が登録される。入力ラベル1132には、入力ラベルのラベル値が登録される。入力インタフェース1133には、データが入力されるインタフェースの一意な識別子が登録される。
【0079】
出力インタフェース1134には、入力されたパケットの出力先となるインタフェース部の一意な識別子が登録される。出力ラベル1135には、入力されたパケットに付与されるラベル値が登録される。
【0080】
なお、MPLSパケットネットワークでは、転送制御識別子としてMPLSラベル値を用いるが、パスの始点となるパケット転送装置に入力されるパケットにMPLSラベルは付与されず、また、パスの終点となるパケット転送装置が出力するパケットにMPLSラベルは付与されない。このため、図7Aでは、パスP1の始点となるパケット転送装置A21のエントリの入力ラベル1132にはラベル値が登録されず、パスP1の終点となるパケット転送装置D24のエントリの出力ラベル1135にはラベル値が登録されない。
【0081】
また、パスの始点となるパケット転送装置と終点となるパケット転送装置との間の中間パケット転送装置、及び終点となるパケット転送装置は、入力されたパケットの出力インタフェース及び出力ラベルを入力インタフェースではなく入力ラベルによって決定する。このため、図7Aでは、パスの中間パケット転送装置となるパケット転送装置B22及び終点となるパケット転送装置D24のエントリの入力インタフェース1133にはインタフェース部の識別子が登録されない。
【0082】
図7Bは、本発明の第1実施形態のパケット転送装置に記憶されるクロスコネクトテーブル2232の説明図である。
【0083】
パケット転送装置に記憶されるクロスコネクトテーブル2232には、監視制御装置11に記憶されるクロスコネクトテーブル113に登録されたクロスコネクト情報のうち、当該パケット転送装置に対応するクロスコネクト情報が登録される。パケット転送装置は、自身に記憶されたクロスコネクトテーブル2232を監視制御装置11からの指示に基づいて更新する。これについては、図15B及び図19で詳細を説明する。
【0084】
クロスコネクトテーブル2232は、入力ラベル22321、入力インタフェース22322、出力インタフェース22323、及び出力ラベル22324を含む。
【0085】
図7Bは、パケット転送装置B22のクロスコネクトテーブル2232を一例として示す。
【0086】
入力ラベル22321は図7Aに示す入力ラベル1132と同じであり、入力インタフェース22322は図7Aに示す入力インタフェース1133と同じであり、出力インタフェース22323は図7Aに示す出力インタフェース1134、及び出力ラベル22324は図7Aに示す出力ラベル1135と同じであるので、説明を省略する。
【0087】
図8は、本発明の第1実施形態の割当済ラベルテーブル1152の説明図である。
【0088】
割当済ラベルテーブル1152は、図3で説明したように、すでに割り当てられた入力ラベルを管理するテーブルである。
【0089】
割当済ラベルテーブル1152は、入力ラベル11521及び割当状況11522を含む。
【0090】
入力ラベル11521には、すでに割り当てられた入力ラベルの値が登録される。割当状況11522にはすでに割り当てられたことを示す「済」が登録される。
【0091】
図8に示す割当済ラベルテーブル1152は、入力ラベル「201」〜「207」がすでに割り当てられたことを示す。
【0092】
次に、図9及び図10を用いてハッシュ演算例について説明する。
【0093】
図9は、本発明の第1実施形態のあるパケット転送装置のハッシュ生成部2234によるハッシュ演算例22341の説明図である。
【0094】
ハッシュ生成部2234は、入力ラベルを入力値22342としてハッシュ演算することによって、入力ラベルをハッシュ値22343に変換する。
【0095】
パケット転送装置で使用されるハッシュ関数は種々の関数が知られているが、本実施形態のパケット転送装置はいずれのハッシュ関数を使用してもよい。本実施形態では、説明の簡単にするため、ハッシュ生成部2234は、入力値の剰余を用いてハッシュ値を計算するものとする。具体的には、ハッシュ生成部2234は、式1を計算することによって入力値をハッシュ値に変換するものとする。
【0096】
<ハッシュ値>=(<入力値>−200)mod6+1・・・(式1)
例えば、図9に示すハッシュ演算例22341では、入力値22342「201」のハッシュ値22343は「1」となる。
【0097】
なお、入力値の剰余を用いたハッシュ値の算出方法において、接続されるリンク回線が多いパケット転送装置ほど、入力値を割る数を大きく設定したほうがよい。これは、接続されるリンク回線が多いパケット転送装置ほど、多くの入力ラベルが設定されるため、剰余の数が多いほどハッシュ値の衝突を防止できるためである。
【0098】
図10は、本発明の第1実施形態の監視制御装置11の衝突検出部116のハッシュ生成部1161によるハッシュ演算例11611の説明図である。
【0099】
図10にハッシュ演算例11611を示すハッシュ生成部1161は、図9で説明したパケット転送装置のハッシュ生成部2234に対応するものである。
【0100】
ハッシュ生成部1161は、入力ラベルを入力値11612としてハッシュ演算することによって、入力ラベルをハッシュ値11613に変換する。
【0101】
衝突検出部116のハッシュ生成部1161が使用するハッシュ関数は、パケット転送装置のハッシュ生成部2234が使用するハッシュ関数と同じである必要はないが、ハッシュ生成部1161が算出したハッシュ値の分布傾向は、ハッシュ生成部2234が算出したハッシュ値の分布傾向と同じである必要がある。このため、入力値の剰余を用いてハッシュ値を算出する方法の場合、ハッシュ生成部1161における剰余を算出するために入力値を割る数と、ハッシュ生成部2234における剰余を算出するために入力値を割る数とが同じであればよい。
【0102】
ハッシュ生成部1161は、式2を計算することによって入力値をハッシュ値に変換するものとする。
【0103】
<ハッシュ値>=(<入力値>−200)mod6+2・・・(式2)
例えば、図10に示すハッシュ演算例11611では、入力値11612「201」のハッシュ値22343は「2」となる。
【0104】
なお、衝突検出部116は、パケット転送装置のハッシュ生成部2234に対応するハッシュ生成部1161を、パケット転送装置のハッシュ生成部2234の数だけ備える。
【0105】
図11は、本発明の第1実施形態のパケット転送装置のハッシュテーブル2233の説明図である。
【0106】
ハッシュテーブル2233には、ハッシュ生成部2234によって算出された入力ラベルのハッシュ値と当該入力ラベルとの対応関係が格納される。
【0107】
ハッシュテーブル2233は、ハッシュ値22331、ラベルA22332、ラベルB22333、及び、ラベルC22334を含む。
【0108】
ハッシュ値22331には、ハッシュ生成部2234が式1を計算することによって算出し得るハッシュ値(1〜6)が登録される。
【0109】
ラベルA22332〜ラベルC22334には、ハッシュ値に対応する入力ラベルが登録される。
【0110】
例えば、入力ラベル「201」及び「207」のハッシュ値「1」となるため、ハッシュテーブル2233のハッシュ値22331「1」のエントリのラベルA22332には「201」が登録され、ラベルB22333には「207」が登録される。
【0111】
図12は、本発明の第1実施形態の衝突検出部116のハッシュテーブル1162の説明図である。
【0112】
ハッシュテーブル1162には、ハッシュ生成部1161によって算出された入力ラベルのハッシュ値と当該入力ラベルとの対応関係が格納される。
【0113】
ハッシュテーブル1162は、ハッシュ値11621、ラベルA11622、ラベルB11623、及び、ラベルC11624を含む。ハッシュ値11621は、図11で説明したハッシュ値22331と同じであるので説明を省略する。ラベルA11622〜ラベルC11624は、図11で説明したラベルA22332〜ラベルC22334と同じであるので説明を省略する。
【0114】
なお、図11及び図12に示すハッシュテーブル2233及びハッシュテーブル1162はラベルA〜ラベルCを含むので同一のハッシュ値となる入力ラベルを三つまで登録できるが、ハッシュテーブル2233及びハッシュテーブル1162に登録可能な同一のハッシュ値となる入力ラベルの数は三つに限定するものではない。
【0115】
図13は、本発明の第1実施形態のパケットネットワーク1で通信されるMPLSパケット51の説明図である。
【0116】
MPLSパケット51は、ヘッダ部511及びデータ部512によって構成される。ヘッダ部511は転送制御識別子であるラベル5111を含む。
【0117】
図14は、本発明の第1実施形態のシステム規定パラメータテーブル52の説明図である。
【0118】
システム規定パラメータテーブル52には、新たなラベルを割り当てる場合のパケット転送装置ごとのポリシーに関する情報が登録される。システム規定パラメータテーブル52は、監視制御装置11の管理者によって入力デバイスを介して監視制御装置11に入力され、監視制御装置11のメモリ11aに保持される。
【0119】
システム規定パラメータテーブル52は項目521及び値522を含む。項目521には、衝突上限数を識別するための情報及びラベル範囲を識別するための情報が登録される。衝突上限数は同一のハッシュ値となる入力ラベル上限数であり、ラベル範囲は使用可能なラベル値の範囲である。衝突上限数のエントリの値522には「1」が登録され、ラベル範囲のエントリの値522には「100−999」が登録される。
【0120】
次に、パスP1を新たに確立する場合の監視制御装置11及びパケット転送装置のシーケンスについて、図15A及び図15Bを説明する。
【0121】
図15Aは、本発明の第1実施形態の新たなパスP1を確立する場合の監視制御装置11及びパケット転送装置の前半のシーケンス図である。
【0122】
通信路確立要求部117は、パケット転送装置間で通信路(パス)を確立する必要がある場合、パス開通要求を経路管理部111に入力する(901)。図15Aでは、通信路確立要求部117は、図1に示すパスP1を確立するためのパス開通要求を経路管理部111に入力する。当該パス開通要求には、始点となるパケット転送装置のインタフェース部、終点となるパケット転送装置のインタフェース部、及びパス種別等がパス開通条件として含まれる。
【0123】
経路管理部111は、パス開通要求が入力された場合、入力されたパス開通要求に含まれるパス開通条件を取得する(9011)。そして、経路管理部111は、取得した始点及び終点に基づいて任意のアルゴリズム(例えば、ダイクストラ法)を用いてパス経路を決定し、決定したパス経路をパス経路テーブル114に登録するとともに、決定したパス経路に基づいてクロスコネクトテーブル113を更新する(9012)。
【0124】
クロスコネクトテーブル113の更新方法について説明する。
【0125】
経路管理部111は、図7Aに示すクロスコネクトテーブル113に装置1131にパスP1が経由するパケット転送装置A21、B22及びD24の識別子が登録される三つのエントリを新たに追加する。
【0126】
そして、経路管理部111は、パスP1の始点となるパケット転送装置A21のエントリの入力ラベル1132にラベル値を登録せず、入力インタフェース1133にパス開通条件に含まれる始点となるインタフェース部の一意な識別子(IF_A3)を登録し、出力インタフェース1134にパス経路に含まれるパケット転送装置A21の出力インタフェースの一意な識別子(IF_A1)を登録する。なお、ステップ9012の処理の段階では、パケット転送装置A21とパケット転送装置B22との間のリンク回線31に割り当てられるラベル値が決定されていないので、経路管理部111は、出力ラベル1135に何も登録しない。
【0127】
また、経路管理部111は、中間パケット転送装置B22のエントリの入力インタフェース1133に何も登録せず、パス経路に含まれるパケット転送装置B22の出力インタフェースの一意な識別子(IF_B3)を出力インタフェース1134に登録する。なお、ステップ9012の処理の段階では、パケット転送装置A21とパケット転送装置B22との間のリンク回線31に割り当てられるラベル値が決定されていないので、入力ラベル1132には何も登録されない。また、パケット転送装置B22とパケット転送装置D24との間のリンク回線33に割り当てられるラベル値が決定されていないので、出力ラベル1135には何も登録されない。
【0128】
さらに、経路管理部111は、パスP1の終点となるパケット転送装置D24のエントリの入力インタフェース1133及び出力ラベル1135に何も登録せず、パス開通条件に含まれる終点となるインタフェース部の一意な識別子(IF_D8)を出力インタフェース1134に登録する。なお、パケット転送装置B22とパケット転送装置D24との間のリンク回線33に割り当てられるラベル値が決定されていないので、入力ラベル1132には何も登録されない。
【0129】
以上によって、クロスコネクトテーブル113が更新される。
【0130】
パスP1は、パケット転送装置A21、パケット転送装置B22、及びパケット転送装置D24を経由するため、パケット転送装置A21とパケット転送装置B22との間のリンク回線31、及びパケット転送装置B22とパケット転送装置D24との間のリンク回線33で転送されるパケットに含まれるラベルを決定する必要がある。
【0131】
例えばパケット転送装置A21とパケット転送装置B22との間で転送されるパケットのラベルを決定する場合、パケット転送装置B22の入力ラベルを決定すれば、パケット転送装置A21の出力ラベルは当該入力ラベルになるので、本実施形態では、受信側のパケット転送装置B22の入力ラベルを決定することによって、リンク回線33のラベルを決定する。
【0132】
まず、経路管理部111は、パケット転送装置A21とパケット転送装置B22との間のリンク回線31に新たなラベルを割り当てる要求であるラベル割当要求を、パケット転送装置B22に対応するラベル割当部B115に入力する(902)。
【0133】
ラベル割当部B115は、パケット転送装置B22用のシステム規定パラメータテーブル52のラベル範囲に登録された範囲のラベルのうち、パケット転送装置B22用の割当済ラベルテーブル1152に登録されていないラベルであって、割当不可フラグが設定されていない割当可能ラベルを特定し、特定した割当可能ラベルから任意の一つのラベルを割当候補ラベルとして選択する(9021)。割当不可フラグは、ハッシュ値の衝突数が上限値よりも大きいと判定されたラベルに設定され、図17に示すステップ828の処理で説明する。
【0134】
そして、ラベル割当部B115は、選択した割当候補ラベルのハッシュ値の衝突数の取得要求を衝突検出部B116に入力する(903)。
【0135】
衝突検出部B116は、衝突数の取得要求が入力された場合、入力された衝突数の取得要求の割当候補ラベルのハッシュ値をハッシュ生成部1161に算出させる(9031)。そして、衝突検出部B116は、ハッシュテーブル1162を参照し、算出したハッシュ値のエントリに登録された入力ラベルの数を衝突数として取得する(9032)。
【0136】
次に、衝突検出部B116は、ステップ9032の処理で取得した衝突数を、衝突数の取得要求の応答としてラベル割当部B115に入力する(904)。
【0137】
ラベル割当部B115は、衝突検出部B116から衝突数の取得要求に対する応答が入力された場合、入力された応答に含まれる衝突数と、パケット転送装置B22用のシステム規定パラメータテーブル52に登録された衝突上限数とを比較し、衝突数が衝突上限数よりも大きい場合、ステップ9021の処理に戻り、割当候補ラベルを再度選択する(9041及び905)。一方、ラベル割当部B115は、衝突数が衝突上限数以下である場合、割当候補ラベルを入力ラベルに割り当てることを決定し、当該ラベル値をラベル割当要求の応答として経路管理部111に入力する(906)。
【0138】
経路管理部111は、ラベル割当部B115からラベル値が入力された場合、入力されたラベル値を、クロスコネクトテーブル113のエントリのうちパケット転送装置A21のエントリ及びパケット転送装置B22のエントリに登録する(9061)。
【0139】
具体的には、経路管理部111は、ステップ9012の処理で追加したエントリのうち、パケット転送装置A21のエントリの出力ラベル1135にラベル割当部115から入力されたラベル値を登録し、パケット転送装置B22のエントリの入力ラベル1132にラベル割当部115から入力されたラベル値を登録する。
【0140】
次に、経路管理部111は、パケット転送装置B22とパケット転送装置D23との間に新たなラベルを割り当てる要求であるラベル割当要求を、パケット転送装置D23に対応するラベル割当部D115に入力する(907)。
【0141】
なお、ステップ9071〜9111の処理は、ステップ9021〜9061の処理と同じであるので説明を省略する。
【0142】
これによって、監視制御装置11側で、パケット転送装置A21とパケット転送装置B22との間、及びパケット転送装置B22とパケット転送装置D24との間で転送されるパケットに含まれるラベルを決定することができる。
【0143】
図15Bは、本発明の第1実施形態の新たなパスP1を確立する場合の監視制御装置11及びパケット転送装置の後半のシーケンス図である。
【0144】
経路管理部111は、追加要求をパケット転送装置A21に送信する(921)。追加要求は、ステップ9061の処理で更新されたパケット転送装置A21用のクロスコネクトテーブル113のエントリをパケット転送装置A21のクロスコネクトテーブル2232に追加する要求であり、パケット転送装置A21用のクロスコネクトテーブル113で更新されたエントリ(入力ラベル、入力インタフェース、出力インタフェース、出力ラベル)をクロスコネクト情報として含む。
【0145】
パケット転送装置A21は、追加要求を受信した場合、受信した追加要求に含まれるクロスコネクト情報に基づいて、クロスコネクトテーブル2232にエントリを追加し(9211)、追加要求に対する結果応答を監視制御装置11の経路管理部111に送信する(922)。
【0146】
次に、経路管理部111は、パケット転送装置B22用のクロスコネクトテーブル113のエントリのうちステップ9061及び9111の処理で更新したエントリを、パケット転送装置B22のクロスコネクトテーブル2232に追加する追加要求をパケット転送装置B22に送信する(923)。
【0147】
パケット転送装置B22は、追加要求を受信した場合、受信した追加要求に含まれるクロスコネクト情報に基づいて、クロスコネクト情報に含まれる入力ラベルのハッシュ値をハッシュ生成部2234に算出させる(9231)。
【0148】
次に、パケット転送装置B22は、受信した追加要求に含まれるクロスコネクト情報をクロスコネクトテーブル2232にエントリを追加するとともに、ステップ9231の処理で算出したハッシュ値と、ステップ9231の処理でクロスコネクトテーブル2232に追加したエントリに含まれる入力ラベル、出力インタフェース、及び出力ラベルとを対応付けた情報をハッシュテーブル2233に登録する(9232)。
【0149】
そして、パケット転送装置B22は、ステップ923の処理で送信された追加要求に対する結果応答を監視制御装置11の経路管理部111に送信する(924)。
【0150】
次に、経路管理部111は、ステップ9111の処理で更新されたパケット転送装置D24用のクロスコネクトテーブル113のエントリを、パケット転送装置D24のクロスコネクトテーブル2232に追加する追加要求をパケット転送装置D24に送信する(925)。
【0151】
追加要求を受信したパケット転送装置D24が実行するステップ9251〜926の処理は、パケット転送装置B22が実行するステップ9231〜925の処理と同じであるので、説明を省略する。
【0152】
経路管理部111は、パケット転送装置D24から結果応答を受信すると、ステップ901の処理で入力されたパス開通要求に対してパスが開通したことを応答する(972)。
【0153】
以上によって、パスP1が経由するパケット転送装置A21、B22、及びD24に対して、入力されるパケットに含まれる入力ラベルのハッシュ値と、当該パケットを出力する出力インタフェース及び当該パケットを出力する場合に含める出力ラベルとを対応付けることができる。これによって、パケット転送装置B22、及びパケット転送装置D24は、入力ラベルのハッシュ値に基づいて出力インタフェース及び出力ラベルを検索できる。
【0154】
図16は、本発明の第1実施形態の新たなパスを確立する場合の経路管理部111によって実行される処理のフローチャートである。
【0155】
まず、経路管理部111は、通信路確立要求部117から入力されたパス開通要求に含まれるパス開通条件を取得する(811)。ステップ811の処理は図15Aに示すステップ9011の処理に相当する。
【0156】
次に、経路管理部111は、取得したパス開通条件の始点及び終点に基づいてパス経路を決定する(812)。ステップ812の処理は図15Aに示すステップ9012の処理に相当する。なお、パス経路を決定するアルゴリズムは任意のアルゴリズムでよく、例えば、ダイクストラ法を使用する。
【0157】
次に、経路管理部111は、ステップ812の処理で決定されたパス経路に含まれるパケット転送装置間のリンクに新たなラベルを割り当てるラベル割当要求を、各パケット転送装置に入力する(813)。ラベル割当要求は、ラベルを割り当てるリンクの始点となる出力インタフェースの識別子、及び、当該リンクの終点となる入力インタフェースの識別子からなるラベル割当条件を含む。ステップ813の処理は図15Aに示すステップ902及び907の処理に相当する。
【0158】
次に、経路管理部111は、ステップ813の処理でラベル割当要求を送信したラベル割当部115から各リンクに割り当てられるラベル値を受信する(814)。ステップ814の処理は図15Aに示すステップ906及び911の処理に相当する。
【0159】
次に、経路管理部111は、ステップ814の処理で受信したラベル値に基づいてクロスコネクトテーブル113を更新する(815)。ステップ815の処理は図15Aに示すステップ9061及び9111の処理に相当する。
【0160】
次に、経路管理部111は、ステップ812の処理で決定されたパス経路に含まれるすべてのリンクに対して新たなラベルが割り当てられたか否かを判定する(816)。
【0161】
ステップ816の処理で、パス経路に含まれるすべてのリンクに対して新たなラベルが割り当てられていないと判定された場合、ステップ813の処理に戻る。
【0162】
一方、ステップ816の処理で、パス経路に含まれるすべてのリンクに対して新たなラベルが割り当てられたと判定された場合、経路管理部111は、当該パス経路上のすべてのパケット転送装置に対して、パケット転送装置のクロスコネクトテーブルに新たなエントリを追加する追加要求を送信し(817)、処理を終了する。ステップ817の処理は図15Bに示すステップ921、923、及び925の処理に相当する。
【0163】
図17は、本発明の第1実施形態の新たなパスを確立する場合のラベル割当部115によって実行される処理のフローチャートである。
【0164】
まず、ラベル割当部115は、経路管理部111によって入力されたラベル割当要求に含まれるラベル割当条件を取り出す(821)。
【0165】
次に、ラベル割当部115は、自身に対応するパケット転送装置用のシステム規定パラメータテーブル52に登録されたラベル範囲から割当可能ラベルを特定し、特定した割当可能ラベルから任意の一つのラベルを割当候補ラベルとして選択する(822)。割当可能ラベルは、当該ラベル割当部115に対応するパケット転送装置用の割当済ラベルテーブル1152に登録されていないラベルであって、かつ割当不可フラグが設定されていないラベルである。ステップ822の処理は、図15Aに示すステップ9021及び9071の処理に相当する。
【0166】
次に、ラベル割当部115は、ステップ822の処理で選択した割当候補ラベルのハッシュ値の衝突数の取得要求を、自身の衝突検出部116に入力する(823)。ステップ823の処理は図15Aに示すステップ903及び908の処理に相当する。
【0167】
次に、ラベル割当部115には、衝突数の取得要求の応答として割当候補ラベルのハッシュ値の衝突数が衝突検出部116から入力される(824)。ステップ824の処理は図15Aに示す904及び909の処理に相当する。
【0168】
次に、ラベル割当部115は、ステップ824の処理で入力された割当候補ラベルのハッシュ値の衝突数が、自身に対応するパケット転送装置用のシステム規定パラメータテーブル52に登録された衝突上限数以下であるか否かを判定する(825)。
【0169】
ステップ824の処理で入力された割当候補ラベルのハッシュ値の衝突数が衝突上限数よりも大きいと、ステップ825の処理で判定された場合、ラベル割当部115は、割当候補ラベルに割当不可フラグを設定し(828)、ステップ822の処理に戻る。この処理は図15Aに示すステップ9041の処理に相当する。
【0170】
一方、ステップ824の処理で入力された割当候補ラベルのハッシュ値の衝突数が衝突上限数以下であると、ステップ825の処理で判定された場合、ラベル割当部115は、割当候補ラベルのラベル値をリンクに割り当てることを決定し、当該ラベル値をラベル割当要求の応答として経路管理部111に入力する(826)。ステップ826の処理は図15Aに示すステップ906の処理に相当する。
【0171】
次に、ラベル割当部115は、ステップ828の処理で設定された割当不可フラグをクリアし、処理を終了する。
【0172】
図18は、本発明の第1実施形態の新たなパスを確立する場合の衝突検出部116によって実行される処理のフローチャートである。
【0173】
まず、衝突検出部116は、ラベル割当部115から入力された衝突数取得要求から、衝突数を確認する割当候補ラベルのラベル値を取り出す(831)。
【0174】
次に、衝突検出部116は、ステップ831の処理で取り出されたラベル値からハッシュ値を算出する(832)。ステップ832の処理は図15Aに示すステップ9031及び9081の処理に相当する。
【0175】
次に、衝突検出部116は、ハッシュテーブル2233を参照し、ステップ832の処理で算出されたハッシュ値と一致するエントリに登録されている入力ラベルの数を衝突数として算出する(833)。ステップ833の処理は図15Aに示すステップ9032及び9082の処理に相当する。
【0176】
次に、衝突検出部116は、ステップ833の処理で算出された衝突数をラベル割当部115に入力し(834)、処理を終了する。
【0177】
図19は、本発明の第1実施形態の新たなパスを確立する場合のパケット転送装置の転送宛先制御部223によって実行される処理のフローチャートである。
【0178】
まず、転送宛先制御部223は、監視制御装置11の経路管理部111によって送信された追加要求を受信した場合、受信した追加要求に含まれるクロスコネクト情報を取り出す(841)。クロスコネクト情報は、監視制御装置11のクロスコネクトテーブル113のエントリのうち、新たなパスを確立させるための処理で追加されたエントリに登録された情報を含む。
【0179】
次に、転送宛先制御部223は、ステップ841の処理で取り出されたクロスコネクト情報に含まれる入力ラベルのハッシュ値を算出する(842)。ステップ842の処理は図15Bに示すステップ9231の処理に相当する。
【0180】
次に、転送宛先制御部223は、ステップ841の処理で取り出されたクロスコネクト情報をクロスコネクトテーブル2232に新たなエントリとして追加するとともに、ステップ842の処理で算出したハッシュ値と、クロスコネクトテーブル2232に追加したエントリに含まれる入力ラベル、出力インタフェース、及び出力ラベルとを対応付けた情報を、ハッシュテーブル2233に登録する(843)。ステップ843の処理は図15Bに示すステップ9232の処理に相当する。
【0181】
次に、転送宛先制御部223は、受信した追加要求に対する結果応答を監視制御装置11の経路管理部111に送信し(844)、処理を終了する。ステップ844の処理は図15Bに示すステップ924の処理に相当する。
【0182】
次に、パケット転送装置がパケットを受信した場合に実行されるパケット転送処理を図20を用いて説明する。
【0183】
図20は、本発明の第1実施形態のパケット転送装置によるパケット転送処理のフローチャートである。
【0184】
図20では、パケット転送装置B22が入力ラベル「207」を含むパケットを受信した場合のパケット転送処理について説明する。
【0185】
入力ラベル「207」を含むパケットはパケット転送装置B22のインタフェース部22bを介して入力され、インタフェース部22bは入力されたパケットを図4に示すスイッチ処理部222に渡す。
【0186】
受信パケット解析部2242は、スイッチ処理部222に渡されたパケットの図13に示すヘッダ部511からラベル5111「207」を取り出す(851)。
【0187】
パケット転送制御部2241は、ステップ851の処理で取り出された入力ラベル「207」をハッシュ生成部2234に渡し、ハッシュ生成部2234は、入力ラベル「207」のハッシュ値「1」を算出する(852)。
【0188】
次に、管理部2231は、ハッシュテーブル2233及びクロスコネクトテーブル2232を参照し、ステップ852の処理で算出されたハッシュ値「1」に対応する一つ目のクロスコネクト情報を読み出す(853)。図11に示すハッシュテーブル2233ではハッシュ値「1」に対応する一つ目の入力ラベル「201」は、クロスコネクトテーブル2232の入力ラベル「201」のクロスコネクト情報(図7参照)と対応付けられているので、管理部2231は、当該クロスコネクト情報を読み出す。
【0189】
そして、管理部2231は、ステップ853の処理で読み出されたクロスコネクト情報に含まれる入力ラベルと、ステップ851の処理でパケットから取り出された入力ラベルとが一致するか否かを判定する(854)。
【0190】
ステップ853の処理で読み出されたクロスコネクト情報に含まれる入力ラベルと、ステップ851の処理でパケットから取り出された入力ラベルとが一致しないと、ステップ854の処理で判定された場合、管理部2231は、ステップ853の処理に戻り、ステップ852の処理で算出されたハッシュ値に対応する次のクロスコネクト情報を読み出す。
【0191】
なお、ステップ853及び854の処理は、パケットに含まれる入力ラベルと一致する入力ラベルのクロスコネクト情報が読み出されるまで繰り返し実行される。
【0192】
最初にステップ853の処理で読み出されたクロスコネクト情報に含まれる入力ラベル「201」とパケットから取り出された入力ラベル「207」とは一致しないので、ステップ853の処理に戻る。そして、ステップ853の処理では、管理部2231は、図11に示すハッシュテーブル2233ではハッシュ値「1」に対応する二つ目の入力ラベル「207」に対応付けられるクロスコネクト情報を読み出す。ステップ853の処理で読み出されたクロスコネクト情報に含まれる入力ラベル「201」とパケットから取り出された入力ラベル「207」とが一致するので、ステップ855の処理が実行される。
【0193】
一方、ステップ853の処理で読み出されたクロスコネクト情報に含まれる入力ラベルと、ステップ851の処理でパケットから取り出された入力ラベルとが一致すると、ステップ854の処理で判定された場合、管理部2231は、パケットを出力するインタフェース部が当該クロスコネクト情報に含まれる出力インタフェース(IF_B4:インタフェース部22d)となるように、パケットスイッチ部2243を設定する(855)。
【0194】
次に、送信パケット生成部2244は、パケットのヘッダ部511のラベル5111をクロスコネクト情報に含まれる出力ラベル「302」に書き換えて、当該パケットを出力インタフェースとなるインタフェース部22dに出力し(856)、パケット転送処理を終了する。
【0195】
本発明を適用せずに、新たに確立させるパスの経路に含まれるパケット転送装置間のリンクに新たなラベルを割り当てた場合、各パケット転送装置内においてラベルのハッシュ値の衝突数の上限を保証できない。
【0196】
つまり、図20に示すパケット転送処理において、ステップ853及び854のループ処理を何回実行するかが保証できないため、出力インタフェース及び出力ラベルを決定するまでの時間がパケット到着間隔を超過してしまい、パケットの消失を招いてしまう可能性がある。
【0197】
本発明では、図14に示すシステム規定パラメータテーブル52に登録された衝突上限数以下となるようにラベルを決定するので、各パケット転送装置内においてラベルのハッシュ値の衝突数の上限を保証でき、ステップ853及び854のループ処理を何回実行するかが保証できる。このため、出力インタフェース及び出力ラベルを決定するまでの時間がパケット到着間隔を超過してしまい、パケットの消失を招いてしまうことを防止できる。
【0198】
パスP1を確立させる場合には、リンク回線31のラベルを決定する必要があるが、パケット転送装置B22は、図20に示すステップ853及び854の処理が2回実行されれば、出力インタフェース及び出力ラベルを決定するまでの時間がパケット到着間隔を超過してしまうものとする。
【0199】
この場合、図11及び図12のように、パケット転送装置B22の入力ラベルに「207」が割り当てられた場合、ハッシュ値「1」の衝突数が2回となり、図20で説明したように、図20に示すステップ853及び854の処理が2回実行されるので、出力インタフェース及び出力ラベルを決定するまでの時間がパケット到着間隔を超過してしまう。
【0200】
パケット転送装置B22のシステム規定パラメータテーブル52の衝突上限数に「1」を設定することによって、衝突数上限数が1回となり、割当候補に「207」が選択されたとしても、図17に示すステップ825の処理で、「207」を入力ラベルとした場合、ハッシュ値「1」の衝突数が2回となるため、「207」以外のラベル値で、衝突上限数が1回以下となるラベル値が入力ラベルと決定される。ここで、「209」が入力ラベルとして決定された場合のハッシュテーブル1162及び2233、並びにクロスコネクトテーブル113について、図21〜図23を用いて説明する。
【0201】
図21は、本発明の第1実施形態のパケット転送装置のハッシュテーブル2233の説明図である。
【0202】
図22は、本発明の第1実施形態の衝突検出部116のハッシュテーブル1162の説明図である。
【0203】
上述したように、ラベル値「207」は、衝突上限数が1回以下となるラベル値「209」が入力ラベルとなるので、図21及び図22では、衝突数が1回よりも大きくなるハッシュ値は存在しない。
【0204】
図23は、本発明の第1実施形態の監視制御装置11に記憶されるクロスコネクトテーブル113の説明図である。
【0205】
図21及び図22と同じく、パケット転送装置B22のエントリの入力ラベル「207」は、衝突上限数が1回以下となるラベル値「209」に変更されている。
【0206】
以上のように、本実施形態では、パケット転送装置の転送制御テーブルの検索時間の上限を保証できる。
【0207】
また、転送制御識別子の各パケット転送装置内におけるハッシュ値の衝突数に基づいて、割当候補となる転送制御識別子の割り当てを許可するので、ネットワーク内における転送制御識別子は一意でなくてもよいので割当可能な転送制御識別子空間を有効活用できる。
【0208】
特許文献2に記載された技術は、ハッシュ値の衝突が発生しないように、転送制御識別子(特許文献2ではIPアドレス)を割り当てるものであるが、割り当てられる転送制御識別子のハッシュ値の分布をネットワーク内で均一化するものであり、本実施形態のように、個々のパケット転送装置内での転送制御識別子のハッシュ値衝突をパケット転送装置ごとに個別に検出し、当該ハッシュ値の衝突数を制御するものではない。
【0209】
例えば、二つの転送制御識別子が同じハッシュ値であり、二つの転送制御識別子が同じパケット転送装置を通過しなければ、ハッシュ値が二つの転送制御識別子が割り当てられてもよいが、特許文献2に記載された技術では、このような転送制御識別子は互いに同時に(期間が重なって)割当てられることはない。このため、特許文献2に記載された技術では、結果として使用可能な転送制御識別子が減少してしまう。
【0210】
また、特許文献2に記載された技術はハッシュ値の衝突を一切許容しない。このため、ハッシュ値と転送制御識別子との関係をChained Hash Methodを用いて管理するパケット転送装置の転送制御識別子の検索時間が、パケット到着間隔よりも格段に短い場合であっても、ハッシュ値が同一となる複数の転送制御識別子は割り当てられない。
【0211】
このため、特許文献2に記載された技術では、転送制御識別子空間を有効に活用できない。これに対して、本実施形態によると、転送制御識別子の検索処理の効率の向上と、転送制御識別子空間の有効活用とを両立させることができる。
【0212】
また、特許文献2に記載の技術では、一つのネットワークで単一のハッシュ関数の使用を前提としているので、特許文献2に記載された技術は、一つのネットワークで複数のハッシュ関数が使用された場合には適用できない。例えば、パケット転送装置ごと又はパケット転送装置のモジュールごとにハッシュ関数が異なる場合には、特許文献2に記載された技術は適用できない。
【0213】
本実施形態では、パケット転送装置22に備わるハッシュ生成部2234に対応して、監視制御装置11はハッシュ生成部1161を備えるため、一つのネットワークで複数のハッシュ関数が使用された場合であっても適用できる。
【0214】
また、本実施形態では、システム規定パラメータテーブル52の衝突上限数は管理者が変更可能であるので、管理者は、各パケット転送装置が転送するパケットのサイズ及び各パケット転送装置に要求される品質(例えば、通信品質等)に基づいて、衝突上限数を柔軟に変更できる。
【0215】
また、本実施形態では、転送制御識別子のハッシュ値の衝突数の上限を保証するので、パケット転送装置による転送方法の検索時間の最大値を保証することによって、パケット転送装置の最大処理負荷を保証する。これによって、パケット転送装置で転送方法の検索時間が長くなり、処理負荷が増大することがなくなるため、本実施形態のパケット転送装置の単位ハードウェア資源(ロジック規模及びメモリ量)当たりの処理可能なパケット数を増加させることができる。このため、ハードウェアが同一のパケット転送装置であっても、本実施形態を適用したパケット転送装置のほうが、多くのフローを制御でき、高速な通信インタフェースを実現できる。また、本実施形態を適用したパケット転送装置は、本実施形態を適用しないパケット転送装置と同じ数のフローを制御する場合、又は同じ速度の通信インタフェースを実現する場合であっても、使用するハードウェア資源を削減できるため、消費電力を低減できる。
【0216】
(第2実施形態)
本発明の第2実施形態について図24を用いて説明する。
【0217】
本実施形態は、第1実施形態では監視制御装置11に備わる衝突検出部116を各パケット転送装置21に備わるようにした実施形態である。
【0218】
図24は、本発明の第2実施形態のネットワークシステムの構成図である。
【0219】
監視制御装置11のラベル割当部115は衝突検出部116を備えず、各パケット転送装置A21〜D24が衝突検出部116a〜116dを備える。
【0220】
本実施形態の新たなパスを確立させるための処理は、第1実施形態の処理と同じであるので、説明を省略する。
【0221】
ただ、図15Aに示すステップ903及び908の処理では、ラベル割当部115が、自身に対応するパケット転送装置にハッシュ衝突数取得要求を送信する。
【0222】
(第3実施形態)
本発明の第3実施形態について図25を用いて説明する。
【0223】
本実施形態は、第1実施形態では監視制御装置11はラベル割当部115を備えず、各パケット転送装置A21〜D24がラベル割当部115a〜115dを備える。
【0224】
図25は、本発明の第3実施形態のネットワークシステムの構成図である。
【0225】
監視制御装置11はラベル割当部115を備えず、各パケット転送装置A21〜D24がラベル割当部115a〜115dを備える。なお、各パケット転送装置A21〜D24のラベル割当部115a〜115dは、衝突検出部116a〜116dを備える。
【0226】
本実施形態の新たなパスを確立させるための処理は、第1実施形態の処理と同じであるので、説明を省略する。
【0227】
ただ、図15Aに示すステップ902及び907の処理では、経路管理部111が、ラベルを決定するラベル割当部115を備えるパケット転送装置にラベル割当要求を送信する。
【0228】
なお、第3実施形態では、いずれかのパケット転送装置が、例えばMPLSシグナリングを用いてパス経路を決定すれば、監視制御装置11は不要となる。
【0229】
本発明では、各パケット転送装置がハッシュ値を算出するために使用するハッシュ関数は、各パケット転送装置間で異なっていてもよい。
【0230】
また、本発明では、図1、図24及び図25でパケットネットワーク1のトポロジーを図示したが、本トポロジーに限定されず、リングトポロジー、リニアトポロジー、メッシュトポロジー、及びP2Pトポロジー等、任意のトポロジーであってもよい。
【0231】
また、ハッシュ値の衝突上限数は、パケット転送装置のハードウェア性能、パケット容量(サイズ)、帯域、パケット到着頻度、及びサービス品質等に基づいて、管理者によって任意の値に設定されるものであるので、衝突上限数は「1」に限定されない。
【0232】
また、衝突上限数は動的に設定されてもよい。例えば、監視制御装置11は、パケット転送装置が受信するパケット容量及び各パケット転送装置へのパケット到着頻度等を監視し、例えば、パケット容量がある時点よりも増加した場合、衝突上限数を増加させてもよいし、パケット到着頻度がある時点よりも増加した場合、衝突上限数を増加させてもよい。なお、第3実施形態のようにラベル割当部115が各パケット転送装置に備わる場合には、各パケット転送装置が衝突上限数を動的に設定する。
【0233】
また、第1〜第3実施形態では、転送制御テーブル(クロスコネクトテーブル)から転送方法を取得するためにハッシュ関数を用いる方法を説明したが、他の検索方法を用いてもよい。
【0234】
また、他の検索方法としては、Binary Tree(2分木)等のツリー状データ構造に基づく検索アルゴリズムを用いることができる。当該検索処理に要する時間の最大値は、ツリーの深さと強い正の相関関係があるので、検索処理の負荷として、ツリーの深さを用いる事ができる。
【0235】
この検索処理を以下に具体的に説明する。
【0236】
例えば、ラベル割当部115及びパケット転送装置は、2分探索木によるデータ構造で転送制御識別子を転送方法と関連付けて管理しておき、2分探索木に用いる2分探索アルゴリズムを用いて、検索対象の転送制御識別子と一致する転送制御識別子を検索する方法がある。
【0237】
この方法について、図26を用いて説明する。
【0238】
図26は、本発明の転送制御識別子を管理するための2分探索木によるデータ構造の説明図である。
【0239】
図26は、転送制御識別子としてラベル値「200」、「210」、「215」、「220」、「230」、 「240」、及び 「250」が割り当てられている場合の2分探索木によるデータ構造を示す。
【0240】
ラベル割当部115及びパケット転送装置は、図26に示す2分探索木によるデータ構造を、ハッシュテーブル1162及び2233の代わりに記憶する。
【0241】
なお、図26に示すツリー状のデータ構造では、最上部のノード「230」から検索されるので、ツリーの深さ(図26では4段)がラベル割当部115及びパケット転送装置にかかる検索処理負荷となるため、ツリーの深さが検索処理にかかる時間となる。
【0242】
パケット転送装置の検索処理にかかる時間の上限値を保証するため、管理者は、ツリーの深さの上限値をシステム規定パラメータテーブル52に登録する。
【0243】
新たなラベルを割り当てる場合の処理について説明する。
【0244】
図15Aにおいて、ラベル割当部115は、ステップ902の処理で、ラベル割当要求を受け取った場合、ステップ9021の処理で、割当可能ラベルから任意のラベルを割当候補ラベルとして選択する。
【0245】
そして、衝突検出部116は、割当候補ラベル及び割当済のラベルのツリー深さが最短となるように、2分探索木によるデータ構造を生成する。そして、衝突検出部116は、生成した2分探索木によるデータ構造のツリー深さを、ラベル割当部115に通知する。
【0246】
ラベル割当部115は、通知されたツリーの深さがシステム規定パラメータテーブル52に登録された上限値以下であれば、当該割当候補ラベルを経路管理部111に通知し、
通知されたツリーの深さがシステム規定パラメータテーブル52に登録された上限値よりも大きければ、割当可能ラベルから他のラベルを割当候補ラベルとして選択し、上述の処理を再度実行する。
【0247】
例として、システム規定パラメータテーブル52に登録された、ツリーの深さの上限値が4である場合を仮定した場合の処理を説明する。
【0248】
新たに割り当てようとするラベル値が235である場合、該ラベル値は図26に示すラベル値240の左側の子として格納される為、ツリー上の深さは3となり、上限値4以下であるため当該割当候補ラベルを経路管理部111に通知する。
【0249】
新たに割り当てようとするラベル値が212である場合、該ラベル値は図26に示すラベル値215の左側の子として格納される為、ツリー上の深さは4となり、上限値4以上となるため、割り当て可能ラベルから他のラベルを割当て候補ラベルとして選択し直す。
【0250】
以上のように、ツリー状のデータ構造により転送制御識別子を管理する場合には、ツリーの深さを検索処理の負荷として用いることができる。
【0251】
また更に、転送制御テーブルを検索する方法としては、上述したハッシュ関数及びツリー状のデータ構造に基づく検索方法以外の方法を用いることができる。例えば、IETF RFC4981, "Survey of Research towards Robust Peer-to-Peer Networks: Search Methods"に示される各種検索方法を用いることができ、これらの検索方法に応じた検索処理時間を検索処理の負荷に用いることができる。
【0252】
第1〜第3実施形態では、パケット転送装置に入力されたパケットを転送経路に関する識別子であるMPLSラベル値を転送制御識別子として用いた場合に説明したが、転送制御識別子は、各パケット転送装置内で一意であって、パケット転送装置に入力されたパケットの転送方法を決定するためのものであれば、他のものであってもよい。
【0253】
転送制御識別子の他の例としては、例えば、QoSに関する識別子、及び警報転送に関する識別子がある。
【0254】
QoSに関する識別子は、パケット転送装置に入力されたパケットの出力インタフェースにおける出力キューの優先度を決定するための識別子である。
【0255】
QoSに関する識別子は、QoSに関する転送制御識別子は、IETF, RFC2475, "An Architecture for Differentiated Services"の2.3節、"Traffic Classification and Conditioning"の処理において参照される識別子、IETF, RFC1633, "Integrated Services in the Internet Architecture: an Overview"の4.1節Basic Functionsの処理において参照される識別子等であり、フロー識別情報及び転送廃棄優先制御情報の少なくとも一方を含む。
【0256】
フロー識別情報は、MACアドレス、Ethertype、IPアドレス、TCP/UDPのポート番号、IPv6のフローラベルの少なくとも一つである。また、転送廃棄優先制御情報は、IPヘッダ及びMPLSヘッダのDSCP/TOS、並びにL−LSPのラベル値の少なくとも一つである。
【0257】
警報転送に関する識別子は、パケット転送装置がイーサOAMフレームを終端させるか否かを判定するために当該フレームに含まれるMEGレベル等である。
【0258】
転送経路に関する識別子は、宛先情報、コネクション識別子、トレイル識別子、ネットワーク識別子、及び制御フラグ等である。
【0259】
宛先情報は、例えば、MACアドレス及びIPアドレス等である。コネクション識別子は、ATMのVPI(Virtual Path Identifier)/VCI(Virtual Channel Identifier)、及びフレームリレーのDLCI(Data-Link Connection Identifier)である。
【0260】
ネットワーク識別子は、VLAN ID、PBB(IEEE802.11ah Provider Backbone Bridge)におけるS−TAG/C−TAG/I−SIDを含む拡張VLAN ID等である。
【0261】
制御フラグは、IPヘッダのルータアラート、及びMPLSのルータアラートラベル等である。
【0262】
第1〜第3実施形態では、一つの種別(MPLSラベル値)の転送制御識別子をネットワークシステムで用いる例について説明したが、複数の種別の転送制御識別子をネットワークシステムで用いてもよい。
【0263】
例えば、転送制御識別子として、MPLSラベル値に代表される転送経路に関する転送識別子及びQoSに関する転送制御識別子の2種類を用いる場合について説明する。
【0264】
この場合、ラベル割当部115及び転送宛先制御部223は、転送制御識別子の識別子ごとに、転送制御識別子に対応する転送方法の検索方法を異ならせてもよい。
【0265】
例えば、一方の種別の転送制御識別子にはハッシュ値を用いて転送方法を検索し、他方の種別の転送制御識別子にはツリー状のデータ構造を用いて転送方法を検索してもよい。
【0266】
また、一方の種別の転送制御識別子の転送方法の検索に用いるハッシュ関数と他方の種別の転送制御識別子の転送方法の検索に用いるハッシュ関数とを異ならせてもよい。
【0267】
また、ラベル割当部115及び転送宛先制御部223は、複数の種別の転送制御識別子で同じ転送方法の検索方式を用いてもよい。
【0268】
なお、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0269】
1 パケットネットワーク
11 監視制御装置
111 経路管理部
112 通信部
113 クロスコネクトテーブル
114 パス経路テーブル
115 ラベル割り当て部
1151 管理部
1152 割当済ラベルテーブル
116 衝突検出部
1161 ハッシュ生成部
1162 ハッシュテーブル
117 通信路確立要求部
21〜24 パケット転送装置
211、221、231、241 制御部
212、222、232、242 SW処理部
223 転送宛先制御部
2231 管理部
2232 クロスコネクトテーブル
2233 ハッシュテーブル
2234 ハッシュ生成部
224 パケット転送部
2241 パケット転送制御部
2242 受信パケット解析部
2243 パケットスイッチ部
2244 送信パケット生成部
31〜35 リンク回線
41〜45 ルータ
52 システム規定パラメータテーブル

【特許請求の範囲】
【請求項1】
複数のパケット転送装置を備え、前記複数のパケット転送装置の間でパケットを転送するネットワークシステムであって、
前記パケット転送装置は、
前記パケットに含まれる転送制御識別子に対応して、当該転送制御識別子を含むパケットの転送方法が登録された転送制御テーブルを記憶し、
パケットを受信した場合、前記転送制御テーブルを参照し、前記受信したパケットに含まれる前記転送制御識別子に対応する転送方法を検索する転送制御テーブル検索部と、
前記転送制御テーブル検索手段によって検索された前記転送方法で前記パケットを転送するパケット転送部と、を備え、
前記ネットワークシステムは、
前記転送制御識別子を新たに割り当てる場合、割当候補の転送制御識別子を割り当てた後の前記転送制御テーブル検索部の検索負荷を算出する検索負荷算出部と、
前記検索負荷算出部によって算出された検索負荷が所定値以下である場合、前記割当候補の転送制御識別子を割り当て、前記検索負荷算出部によって算出された検索負荷が所定値よりも大きい場合、前記割当候補の転送制御識別子を割り当てない割当可否判定部と、を備えることを特徴とするネットワークシステム。
【請求項2】
前記ネットワークシステムは、
前記転送制御テーブルに登録された転送制御識別子のハッシュ値をハッシュ関数によって計算し、
前記計算したハッシュ値と、当該ハッシュ値に対応する前記転送制御識別子の転送方法とを対応付けて記憶し、
前記転送制御テーブル検索部は、
パケットを受信した場合、前記受信したパケットに含まれる転送制御識別子のハッシュ値を前記ハッシュ関数によって計算し、前記計算したハッシュ値に対応する転送制御識別子の転送方法を検索し、
前記検索負荷算出部は、前記割当候補の転送制御識別子のハッシュ値が前記転送制御テーブルに登録された転送制御識別子のハッシュ値と衝突する度合いを、前記転送制御テーブル検索部の検索負荷として算出することを特徴とする請求項1に記載のネットワークシステム。
【請求項3】
前記割当可否判定部は、前記割当候補の転送制御識別子を割り当てない場合、当該割当候補の転送制御識別子と異なる転送制御識別子を新たな割当候補として選択することを特徴する請求項1に記載のネットワークシステム。
【請求項4】
前記ネットワークシステムは、前記パケット転送装置を監視する監視制御装置を備え、
前記監視制御装置は、前記検索負荷算出部、及び前記割当可否判定部を備えることを特徴とする請求項1に記載のネットワークシステム。
【請求項5】
前記ネットワークシステムは、前記パケット転送装置を監視する監視制御装置を備え、
前記監視制御装置は、前記割当可否判定部を備え、
前記パケット転送装置は、前記検索負荷算出部を備えることを特徴とする請求項1に記載のネットワークシステム。
【請求項6】
前記パケット転送装置は、前記検索負荷算出部、及び前記割当可否判定部を備えることを特徴とする請求項1に記載のネットワークシステム。
【請求項7】
前記転送制御テーブル検索部は、
前記転送制御テーブルに登録された転送制御識別子をツリー状のデータ構造によって管理し、
前記ツリー状のデータ構造を検索するための検索アルゴリズムを用いて、前記受信したパケットに含まれる前記転送制御識別子と一致する転送制御識別子を検索し、
前記検索負荷算出部は、
前記割当候補の転送制御識別子の前記ツリーの深さを前記転送制御テーブルの検索負荷として算出することを特徴とする請求項1に記載のネットワークシステム。
【請求項8】
前記転送制御識別子は、転送経路に関する識別子、QoSに関する識別子、及び警報転送に関する識別子の少なくとも一つを含むことを特徴とする請求項1に記載のネットワークシステム。
【請求項9】
前記転送経路に関する識別子はMPLSラベル値であることを特徴とする請求項8に記載のネットワークシステム。
【請求項10】
前記転送制御識別子は、複数の種別の転送制御識別子を含み、
前記転送制御テーブル検索部は、前記パケット転送装置及び前記転送制御識別子の種別の少なくとも一方によって、前記転送方法の検索方法を異ならせることを特徴とする請求項1に記載のネットワークシステム。
【請求項11】
前記転送制御テーブル検索部は、
前記転送制御テーブルに登録された転送制御識別子のハッシュ値をハッシュ関数によって計算し、
前記計算したハッシュ値と、当該ハッシュ値に対応する前記転送制御識別子の転送方法とを対応付けて記憶し、
パケットを受信した場合、前記受信したパケットに含まれる転送制御識別子のハッシュ値を前記ハッシュ関数によって計算し、前記計算したハッシュ値に対応する転送制御識別子の転送方法を検索し、
前記検索負荷算出部は、前記割当候補の転送制御識別子のハッシュ値が前記転送制御テーブルに登録された転送制御識別子のハッシュ値と衝突する度合いを、前記転送制御テーブル検索部の検索負荷として算出し、
前記ハッシュ関数を、前記パケット転送装置及び前記転送制御識別子の種別の少なくとも一方によって異ならせることを特徴とする請求項10に記載のネットワークシステム。
【請求項12】
複数のパケット転送装置を備え、前記複数のパケット転送装置の間でパケットを転送するネットワークシステムにおいて、前記パケットの転送方法を決定するための転送制御識別子の割当方法であって、
前記パケット転送装置は、前記パケットに含まれる転送制御識別子に対応して、当該転送制御識別子を含むパケットの転送方法が登録された転送制御テーブルを記憶し、
前記方法は、
前記パケット転送装置が、パケットを受信した場合、前記転送制御テーブルを参照し、前記受信したパケットに含まれる前記転送制御識別子に対応する転送方法を検索する転送制御テーブル検索ステップと、
前記パケット転送装置が、前記転送制御テーブル検索ステップで検索された前記転送方法で前記パケットを転送するパケット転送ステップと、
前記ネットワークシステムが、前記転送制御識別子を新たに割り当てる場合、割当候補の転送制御識別子を割り当てた後の前記転送制御テーブル検索ステップにおける検索負荷を算出する検索負荷算出ステップと、
前記ネットワークシステムが、前記検索負荷算出ステップによって算出された検索負荷が所定値以下である場合、前記割当候補の転送制御識別子を割り当て、前記検索負荷算出ステップによって算出された検索負荷が所定値よりも大きい場合、前記割当候補の転送制御識別子を割り当てない割当可否判定ステップと、を含むことを特徴とする転送制御識別子の割当方法。
【請求項13】
前記方法は、
前記ネットワークシステムが前記転送制御テーブルに登録された転送制御識別子のハッシュ値をハッシュ関数によって予め計算しておくステップと、
前記計算したハッシュ値と、当該ハッシュ値に対応する前記転送制御識別子の転送方法とを対応付けて予め記憶しておくステップと、を含み、
前記転送制御テーブル検索ステップでは、前記パケット転送装置が、パケットを受信した場合、前記受信したパケットに含まれる転送制御識別子のハッシュ値を前記ハッシュ関数によって計算し、前記計算したハッシュ値に対応する転送制御識別子の転送方法を検索し、
前記検索負荷算出ステップでは、前記ネットワークシステムが、前記割当候補の転送制御識別子のハッシュ値が前記転送制御テーブルに登録された転送制御識別子のハッシュ値と衝突する度合いを、前記転送制御テーブル検索部の検索負荷として算出することを特徴とする請求項12に記載の転送制御識別子の割当方法。
【請求項14】
前記割当可否判定ステップでは、前記ネットワークシステムが、前記割当候補の転送制御識別子を割り当てない場合、当該割当候補の転送制御識別子と異なる転送制御識別子を新たな割当候補として選択することを特徴する請求項12に記載の転送制御識別子の割当方法。
【請求項15】
前記ネットワークシステムは、前記パケット転送装置を監視する監視制御装置を備え、
前記監視制御装置が、前記検索負荷算出ステップ、及び前記割当可否判定ステップを実行することを特徴とする請求項12に記載の転送制御識別子の割当方法。
【請求項16】
前記ネットワークシステムは、前記パケット転送装置を監視する監視制御装置を備え、
前記パケット転送装置が、前記検索負荷算出ステップを実行し、
前記監視制御装置が、前記割当可否判定ステップを実行することを特徴とする請求項12に記載の転送制御識別子の割当方法。
【請求項17】
前記パケット転送装置が、前記検索負荷算出ステップ、及び前記割当可否判定ステップを実行することを特徴とする請求項12に記載の転送制御識別子の割当方法。
【請求項18】
前記転送制御テーブル検索ステップでは、
前記ネットワークシステムが、前記転送制御テーブルに登録された転送制御識別子をツリー状のデータ構造によって管理し、
前記ネットワークシステムが、前記ツリー状のデータ構造を検索するための検索アルゴリズムを用いて、前記受信したパケットに含まれる前記転送制御識別子と一致する転送制御識別子を検索し、
前記検索負荷算出ステップでは、
前記割当候補の転送制御識別子の前記ツリーの深さを前記転送制御テーブルの検索負荷として算出することを特徴とする請求項12に記載の転送制御識別子の割当方法。
【請求項19】
前記転送制御識別子は、転送経路に関する識別子、QoSに関する識別子、及び警報転送に関する識別子の少なくとも一つを含むことを特徴とする請求項12に記載の転送制御識別子の割当方法。
【請求項20】
前記転送経路に関する識別子はMPLSラベル値であることを特徴とする請求項19に記載の転送制御識別子の割当方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7A】
image rotate

【図7B】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15A】
image rotate

【図15B】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate


【公開番号】特開2013−42320(P2013−42320A)
【公開日】平成25年2月28日(2013.2.28)
【国際特許分類】
【出願番号】特願2011−177411(P2011−177411)
【出願日】平成23年8月15日(2011.8.15)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】