(57)【特許請求の範囲】
【請求項１】
仮想ネットワークが構築される通信システムにおける中継装置であって、
複数のキューと、
前記仮想ネットワークを識別する仮想ネットワーク識別子で構成されるプレフィックスビット列の値とプレフィックスビット列の値のうち参照する範囲を指定するプレフィックス長とで構成される指定条件ごとに対応する前記キューの識別子が格納された帯域制御ルールを保持する記憶部と、
受信したパケットから仮想ネットワーク識別子を抽出し、抽出した仮想ネットワーク識別子と一致する前記帯域制御ルールの指定条件のうち、最も長いプレフィックス長に対応する指定条件を検索し、検索して得られた指定条件に対応する前記キューへ当該パケットを格納するパケット受信処理部と、
所定のスケジューリング方式によりパケット送信のスケジューリングを行い、前記スケジューリングの結果に基づいて送信するパケットを前記キューから読み出すスケジューラと、
前記スケジューラが読み出したパケットを宛先へ向けて送信するパケット送信処理部と、
を備え、
前記仮想ネットワーク識別子は、階層構造を有し、階層内で定められた識別子が階層順に配置された識別子である、ことを特徴とする中継装置。
【請求項２】
前記階層を前記通信システムのユーザの組織階層に対応して定め、
前記仮想ネットワーク識別子は、前記組織階層の上位階層が上位ビットとなるよう階層順に配置された識別子であり、
前記参照する範囲は、最上位ビットからの連続する範囲とする、ことを特徴とする請求項１に記載の中継装置。
【請求項３】
前記スケジューラは、前記キュー毎に設定された最低帯域保証値を満たすようスケジューリングを行う、ことを特徴とする請求項１または２に記載の中継装置。
【請求項４】
前記プレフィックスビット列はさらに宛先アドレスで構成され、
前記パケット受信処理部は、受信したパケットからさらに宛先アドレスを抽出し、前記抽出した仮想ネットワーク識別子と抽出した宛先アドレスとで構成されるビット列と一致する前記帯域制御ルールの指定条件のうち、最も長いプレフィックス長に対応する指定条件を検索し、検索して得られた指定条件に対応する前記キューへ当該パケットを格納する、ことを特徴とする請求項１、２または３に記載の中継装置。
【請求項５】
仮想ネットワークが構築される通信システムであって、
パケットを送信する送信装置と、
前記パケットを受信する受信装置と、
前記送信装置から送信されたパケットを中継する請求項１〜４のいずれか１つに記載の中継装置と、
を備えることを特徴とする通信システム。
【請求項６】
仮想ネットワークが構築される通信システムを構成し複数のキューを備える中継装置におけるパケット中継方法であって、
前記仮想ネットワークを識別する仮想ネットワーク識別子で構成されるプレフィックスビット列の値とプレフィックスビット列の値のうち参照する範囲を指定するプレフィックス長とで構成される指定条件ごとに対応する前記キューの識別子が格納された帯域制御ルールを保持する帯域制御ルール保持ステップと、
受信したパケットから仮想ネットワーク識別子を抽出し、抽出した仮想ネットワーク識別子と一致する前記帯域制御ルールの指定条件のうち、最も長いプレフィックス長に対応する指定条件を検索し、検索して得られた指定条件に対応する前記キューへ当該パケットを格納するパケット受信ステップと、
所定のスケジューリング方式によりパケット送信のスケジューリングを行い、前記スケジューリングの結果に基づいて送信するパケットを前記キューから読み出すスケジューリングステップと、
前記スケジューリングステップで読み出したパケットを宛先へ向けて送信するパケット送信ステップと、
を含み、
前記仮想ネットワーク識別子は、階層構造を有し、階層内で定められた識別子が階層順に配置された識別子であることを特徴とする中継方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中継装置、通信システムおよび中継方法に関する。
【背景技術】
【０００２】
従来、仮想ネットワークが構築されたネットワークシステムにおける伝送方式が、例えば、下記特許文献１に記載されている。下記特許文献１では、中継装置内で仮想ネットワーク（下記特許文献１ではＶＬＡＮ（Virtual  Local  Area  Network）を想定）毎に最低帯域保証を実現可能とする方式が開示されている。
【０００３】
下記特許文献１の方式は、送信待ちパケットを保持する１つ以上のキューと、仮想ネットワークの識別データ、または該識別データと宛先アドレスの組の値そのものに対して、送信待ちパケットを格納するキューを１つ指定するルールと、を用いる方式である。この方式では、物理ネットワークが実現する仮想ネットワーク数以上の数のルールおよびキューを、物理ネットワークを構成する各中継装置が実装する必要がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２０４３４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１に記載の技術によれば、仮想ネットワーク数以上の数のルールおよびキューを、物理ネットワークを構成する各中継装置が実装する必要がある。このため、１台の中継装置に実装可能なルール数およびキュー数によって、１つの物理ネットワークが実現可能な仮想ネットワーク数が制限される、という問題があった。
【０００６】
本発明は、上記に鑑みてなされたものであって、最低帯域保証を実現しつつ、１台の中継装置に実装可能なルール数およびキュー数による仮想ネットワーク数の制約を緩和することができる中継装置、通信システムおよび中継方法を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、仮想ネットワークが構築される通信システムにおける中継装置であって、複数のキューと、前記仮想ネットワークを識別する仮想ネットワーク識別子で構成されるプレフィックスビット列とし、前記プレフィックスビット列の値とプレフィックスビット列の値のうち参照する範囲を指定するプレフィックス長とで構成される指定条件ごとに対応する前記キューの識別子が格納された帯域制御ルールを保持する記憶部と、受信したパケットから仮想ネットワーク識別子を抽出し、抽出した仮想ネットワーク識別子と一致する前記帯域制御ルールの指定条件のうち、最も長いプレフィックス長に対応する指定条件を検索し、検索して得られた指定条件に対応する前記キューへ当該パケットを格納するパケット受信処理部と、所定のスケジューリング方式によりパケット送信のスケジューリングを行い、前記スケジューリングの結果に基づいて前記キューから送信するパケットを読み出すスケジューラと、前記スケジューラが読み出したパケットを宛先へ向けて送信するパケット送信処理部と、を備え、前記仮想ネットワーク識別子は、階層構造を有し、階層内で定められた識別子が階層順に配置された識別子である、ことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、最低帯域保証を実現しつつ、１台の中継装置に実装可能なルール数およびキュー数による仮想ネットワーク数の制約を緩和することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、中継装置の機能構成例を示す図である。
【図２】図２は、仮想ネットワークＩＤの構成例を示す図である。
【図３】図３は、転送処理の流れの概念を示す図である。
【図４】図４は、パケットをエンキューするまでの処理手順の一例を示すフローチャートである。
【図５】図５は、キュー部に格納されたパケットを送信する処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下に、本発明にかかる中継装置、通信システムおよび中継方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１１】
図１は、本発明にかかる中継装置１の機能構成例を示す図である。図１に示すように、本実施の形態の中継装置１は、パケット受信処理部２と、帯域制御処理部３と、パケット送信処理部４と、記憶部５と、を備える。また、本実施の形態の中継装置１は、記憶部５内に帯域制御ルールテーブル６および転送経路ルールテーブル７を保持している。また、帯域制御処理部３は、複数のキューで構成されるキュー部３１１と、スケジューラ３２と、を備える。
【００１２】
本実施の形態の中継装置１は、仮想ネットワークが構築される通信システムにおいて、パケットを中継する中継装置であり、通信システム内の送信装置から送信されたパケットを受信すると、当該パケットを宛先の受信装置へ向けて転送する。
【００１３】
図２は、本実施の形態の仮想ネットワークＩＤ（IDentifier：識別子）の構成例を示す図である。本実施の形態では、仮想ネットワークＩＤは階層構造を有する。図２の例では、本実施の形態の通信システムを用いるユーザの組織が、「企業」、「事業部」、「部」、「課」、「プロジェクト」という階層構造を有する例を示している。各仮想ネットワークは、これらの階層のうちどの階層単位で形成されていてもよい。例えば、企業単位で仮想ネットワークが形成されていても（企業単位で同一の仮想ネットワークＩＤを用いる）よいし、課単位で仮想ネットワークが形成されてもよい。また、図２の階層構造は一例であり、階層の数や階層の種別は図２の例に限定されない。
【００１４】
図２に例示した仮想ネットワークＩＤは、左方向を上位ビットとして示しており、各階層のＩＤを上位階層ほど上位ビットとなるように配置している。ここでは、「企業」を最上位階層とし、「事業部」を２番目に上位の階層、「部」を３番目に上位の階層、「課」を４番目に上位の階層、「プロジェクト」を最下位の階層とする。上位階層ほど広い範囲を示すことになる。例えば、同一の企業が用いる仮想ネットワークの全てに同一の企業ＩＤが格納される。従って、例えば、仮想ネットワークＩＤのうち企業ＩＤのみを参照して仮想ネットワークを分類すると、同一企業の全仮想ネットワークが同一グループに分類され、企業ＩＤと事業部ＩＤを参照して仮想ネットワークを分類すると、同一企業の仮想ネットワークは事業部の数のグループにグループ分けされることになる。このように、仮想ネットワークＩＤは、各階層単位で下位ビットになるほど属する仮想ネットワークが少なくなるように設定されている。
【００１５】
図３は、本実施の形態の転送処理の流れの概念を示す図である。帯域制御ルールテーブル６として保持されている帯域制御ルールは、図３に示すように、指定条件と当該指定条件に対応する出力先のキュー（キュー部３１内の複数のキューのうちの１つのキューの識別子）が対応付けられたルールである。指定条件は、仮想ネットワークＩＤ（図３では、「仮想ＮＷ  ＩＤ」と略す）と宛先アドレスとを連結（仮想ネットワークＩＤが上位ビットとなるように連結）したビット列（以降、このビット列をプレフィックスビット列という）の値と指定するプレフィックス長とで構成される。指定するプレフィックス長は、指定条件としてプレフィックスビット列のうち上位何ビットを指定しているか（最上位ビットから何番目のビットまでを指定しているか）を示す値である。図３では、指定条件の欄は「指定するプレフィックスビット列／指定するプレフィックス長」の形式で記載している。
【００１６】
本実施の形態では、このような帯域制御ルールが予め決定され、帯域制御ルールテーブル６として中継装置１へ格納されているとする。なお、帯域制御ルールを変更する場合には、ルールの変更に基づいて中継装置１の帯域制御ルールテーブル６を変更すればよい。
【００１７】
中継装置１は、パケットを受信すると、受信したパケット内の仮想ネットワークＩＤと宛先アドレスとを抽出し、抽出した仮想ネットワークＩＤと宛先アドレスとを連結したビット列に基づいて、帯域制御ルールテーブル６を検索してビット列、すなわちプレフィックスビット列と値が一致する指定条件を抽出し、さらに抽出した指定条件のうち指定するプレフィックス長が最大となる（最大プリフィクス長となる）指定条件を検索する。そして、検索して得られた指定条件に対応するキューへ当該パケットを格納する（エンキューする）。
【００１８】
スケジューラ３２は、送信中パケットの送信を終えて新たなパケット送信が可能になった時に、キュー部３１１内のキュー毎に指定される最低帯域保証値と、これまでに送信済みのパケットデータ量と、に基づき、次にどのキューに保存されるパケットを送信するかを選択し、選択したキューの先頭パケットを送信するために読み出す。最低帯域保証を実現するためのスケジューリング方式としてはどのような方式を用いてもよいが、例えばＬｉｎｕｘ（登録商標）のｔｃコマンドで使用されるＨＴＢ（Hierarchical  Token  Bucket）方式等を用いることができる。
【００１９】
このように、本実施の形態では、受信したパケットに基づいて帯域制御ルールの検索を行う時に、最大プレフィックス長マッチ（プレフィックスビット列と一致する指定条件のうち最大プリフィクス長となる指定条件を検索する）による検索を行っている。このため、帯域制御ルールの指定条件として複数の仮想ネットワークに対応するような条件を定めておけば、複数の仮想ネットワークの格納先のキューを１つのルール（エントリ）で指定することが可能となり、中継装置１が保持する帯域制御ルール数を減らすことが可能となる。例えば、２つ以上の「課」毎に仮想ネットワークが形成されている場合に、「企業ＩＤ」から「部ＩＤ」までに対応する上位ビットを指定プレフィックス長としておけば、同一の「部」に属する「課」に対応する仮想ネットワークを１つの指定条件で指定することができる。
【００２０】
なお、同一のキューを複数の仮想ネットワーク間で使用する場合、複数の仮想ネットワーク間で最低帯域保証値を共有することになるため、これらの仮想ネットワーク間では互いに輻輳の影響が及ぶ可能性がある。そこで、図２に例示したように、仮想ネットワークＩＤの値をユーザの組織の階層構造が反映される様に決定している。これにより、最大プレフィックス長マッチにより複数の仮想ネットワークＩＤに対応するキューを１つに集約した場合に、集約される仮想ネットワークが同一組織単位内であることを保証することができ、輻輳の影響を同一組織内に留めることができる。同一組織内であれば、組織内の他の業務による輻輳は許容される可能性は高い。このように、仮想ネットワークＩＤの値をユーザの組織の階層構造が反映される様に決定することにより、全く無関係の組織の仮想ネットワークユーザが、輻輳の影響を受けることが無い様に設定することができる。
【００２１】
なお、本実施の形態では、仮想ネットワークＩＤが階層構造を有する例を説明したが、本実施の形態の最大プレフィックス長マッチによる検索を行う転送処理は、仮想ネットワークＩＤが階層構造を有しない場合にも適用可能である。
【００２２】
次に、本実施の形態の転送処理手順について説明する。図４および図５は、本実施の形態の転送処理手順の一例を示すフローチャートである。図４は、パケットをエンキューするまでの処理を示し、図５は、キュー部３１１に格納されたパケットを送信する処理を示している。
【００２３】
まず、パケットをエンキューするまでの処理を図４を用いて説明する。中継装置１のパケット受信処理部２は、図２で例示した仮想ネットワークＩＤが付与されたパケットを受信する（ステップＳ１）。なお、パケットには従来と同様に宛先アドレスが付与されている。
【００２４】
パケット受信処理部２は、受信したパケットのプレフィックスビット列に基づいて、帯域制御ルールテーブル６を参照し、プレフィックスビット列と指定条件が一致するエントリのうち最大プレフィックス長となるエントリを検索する（ステップＳ２）。パケット受信処理部２は、検索して得られたエントリ（帯域制御ルール）に基づいて、指定されたキューへパケットをエンキューする（ステップＳ３）。
【００２５】
次に、キュー部３１１に格納されたパケットを送信する処理を図５を用いて説明する。帯域制御処理部３のスケジューラ３２は、送信中のパケットの送信が終了すると（ステップＳ１１）、キュー部３１１内のキュー毎に指定される最低帯域保証値と、これまでに送信済みのパケットデータ量と、に基づき、次にどのキューに保存されるパケットを送信するかを選択する(ステップＳ１２)。
【００２６】
そして、スケジューラ３２は、選択したキューの先頭パケットを読み出してパケット送信処理部４へ渡し、パケット送信処理部４は、当該パケットの宛先アドレスと転送経路ルールテーブル７とに基づいてパケットを送信し（ステップＳ１３）、ステップＳ１１へ戻る。転送経路ルールテーブル７は、宛先アドレスごとにパケットの転送先（他の中継装置または、宛先の受信装置）を指定する転送経路ルールをエントリとして格納されたテーブルである。
【００２７】
なお、ここでは、仮想ネットワークＩＤと宛先アドレスとをプレフィックスビット列としたが、仮想ネットワークＩＤのみをプレフィックスビット列として、上記と同様に最大プレフィックス長マッチによる検索を行うようにしてもよい。
【００２８】
以上のように、本実施の形態では、帯域制御ルールとして、仮想ネットワークＩＤと宛先アドレスとで構成されるプレフィックスビット列のうちの指定するプレフィックス長のビット列で指定される指定条件に対応付けてパケットを格納するキューを定めておく。そして、受信したパケットのプレフィックスビット列に基づいて帯域制御ルールの指定条件のうち最大プレフィックス長となる指定条件を検索して、当該指定条件に対応するキューへパケットを格納するようにした。このため、１つの帯域制御ルールで複数の仮想ネットワークを集約した仮想ネットワークの集合に対する帯域制御を行うことが可能となり、最低帯域保証を実現しつつ、中継装置１に実装可能なルール数およびキュー数による通信システムに設定される仮想ネットワーク数の制約を緩和することができる。
【００２９】
また、仮想ネットワークＩＤの値をユーザの組織の階層構造が反映される様に決定しておくことにより、集約された仮想ネットワークの集合間で輻輳による影響が及ぶ範囲を、仮想ネットワークユーザが理解可能な同一組織単位内に限定することが可能となり、集約による影響を実用上許容可能な範囲に設定することが可能となる。
【符号の説明】
【００３０】
１  中継装置
２  パケット受信処理部
３  帯域制御処理部
４  パケット送信処理部
５  記憶部
６  帯域制御ルールテーブル
７  転送経路ルールテーブル
３１  キュー部
３２  スケジューラ
【図１】
0005618912.tif 000002
【図２】
0005618912.tif 000003
【図３】
0005618912.tif 000004
【図４】
0005618912.tif 000005
【図５】
0005618912.tif 000006