JP2011160301A - パケット転送システム、パケット転送システム内におけるパケット集中回避方法 - Google Patents

パケット転送システム、パケット転送システム内におけるパケット集中回避方法 Download PDF

Info

Publication number
JP2011160301A
JP2011160301A JP2010021669A JP2010021669A JP2011160301A JP 2011160301 A JP2011160301 A JP 2011160301A JP 2010021669 A JP2010021669 A JP 2010021669A JP 2010021669 A JP2010021669 A JP 2010021669A JP 2011160301 A JP2011160301 A JP 2011160301A
Authority
JP
Japan
Prior art keywords
packet
switch
control element
forwarding
packet transfer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010021669A
Other languages
English (en)
Other versions
JP5402688B2 (ja
Inventor
Shinji Tsutsumi
真司 堤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2010021669A priority Critical patent/JP5402688B2/ja
Publication of JP2011160301A publication Critical patent/JP2011160301A/ja
Application granted granted Critical
Publication of JP5402688B2 publication Critical patent/JP5402688B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】コントロールエレメントにおける処理の圧迫やトラフィック圧迫を効率的に低減することができるパケット転送システムを提供する。
【解決手段】各フォワーディングエレメント61は、パケット転送ルールにより転送先が定められていないパケットであるファーストパケットを受信すると、そのファーストパケットをコントロールエレメント51に送信する。コントロールエレメント51は、複数のパケット転送ルール設定手段52を含み、各パケット転送ルール設定手段52は、ファーストパケットを受信すると、そのファーストパケットを送信したフォワーディングエレメント61にパケット転送ルールを設定する。また、スイッチ管理手段54は、スイッチ装置65と、コントロールエレメント内スイッチ53とを一つのスイッチとして動作させる。
【選択図】図3

Description

本発明は、コントロールエレメントとフォワーディングエレメントとを含むパケット転送システムと、そのパケット転送システム内におけるパケット集中回避方法、およびそのパケット転送システムに適用されるコントロールエレメント用プログラムに関する。
通信ネットワークにおいてパケット転送を行うパケット転送装置として、ルータやスイッチがある。また、このようなパケット転送装置として、パケットをフロー毎に識別して処理するフローベースのパケット転送装置がある。
図4は、一般的なフローベースのパケット転送装置の構成の一例を示すブロック図である。一般的なフローベースのパケット転送装置は、コントロールモジュール(Control Module)11と、インタフェースモジュール(Interface Module)12と、スイッチファブリックモジュール(Switch Fabric Module)13とを備える。
コントロールモジュール11は、各種ルーティングプロトコルに従って、各インタフェースモジュール12に対してパケット転送ルールを指示する。コントロールモジュール11は、例えば、CPU14と、メモリ15とを備える。メモリ15は、パケット転送ルールの指示を行わせるためのプログラムや、そのプログラムの実行に用いる各テーブルを保持し、CPU14は、そのプログラムに従って、各インタフェースモジュール12に対してパケット転送ルールを指示する。
各インタフェースモジュール12は、回線からのパケットの受信、回線へのパケットの送信、および、コントロールモジュール11から指示されたパケット転送ルールに従うパケット転送処理を行う。各インタフェースモジュール12は、例えば、フォワーディングエンジン16と、メモリ17とを備える。メモリ17は、コントロールモジュール11によって指示されたパケット転送ルールを記憶し、フォワーディングエンジン16は、回線から受信したパケットを、そのパケット転送ルールに従って、他のインタフェースモジュール12に転送する。また、フォワーディングエンジン16は、他のインタフェースモジュール12から転送されたパケットを回線に送信する。
スイッチファブリックモジュール13は、例えば、クロスバースイッチ(Crossbar Switch )を備え、各インタフェースモジュール12間のパケット転送を行う。
コントロールモジュール11がインタフェースモジュール12に指示するパケット転送ルールは、受信したパケットのフローに応じて、パケットの転送先を規定するルールである。インタフェースモジュール12は、コントロールモジュール11によって設定されたパケット転送ルールをメモリ17に記憶させる。個々のインタフェースモジュールにおけるパケット転送ルールの集合をフォワーディングテーブルと称する。
また、フォワーディングテーブルに規定されていないパケットをファーストパケット(1stパケット)と呼ぶ。インタフェースモジュール12は、ファーストパケットを受信した場合、そのファーストパケットをコントロールモジュール11に転送する。そして、コントロールモジュール11は、ファーストパケットの転送先を規定するパケット転送ルールを、そのインタフェースモジュール12に設定し、インタフェースモジュール12は、そのパケット転送ルールに従って、ファーストパケットを転送する。
このようなフローベースのパケット転送装置(例えば、ルータやスイッチ)の機能を、コントロールプレーン上のコントロールエレメント(Control Element:以下、CEと記す。)と、ユーザデータプレーン上のフォワーディングエレメント(Forwarding Element:以下、FEと記す。)とに分離することができる。図5は、CEとFEとを備えるパケット転送システムの例を示す説明図である。図5に示すように、CE21とFE22とに機能分離することで、非常に自由度の高い仮想パケット転送装置を構成することが可能となる。
CEとFEとに機能分離したパケット転送装置は、例えば、特許文献1に記載されている。
また、特許文献2には、複数のバーチャルマシンと仮想スイッチとを含む装置が記載されている。特許文献2に記載された仮想スイッチは、ルータの集合と、データ構造とを有する。そして、その各ルータは、各バーチャルマシンにおけるVNIC(Virtual Network Interface Card:仮想ネットワークインタフェースカード)間における接続を組織して種々の仮想ネットワークを形成することを目的として、データ構造を使用する。
特開2007−74282号公報(段落0011) 特表2007−522583号公報(段落0027、図1)
図5に例示するように、パケット転送装置の機能をCE21とFE22とに分離して、CE21を集約した場合(例えば、CE21を一つの装置で実現した場合)、そのCE21には、例えば、各FE22から送られるファーストパケット等が集中し、CE21に対するトラフィックの圧迫や、CE21におけるCPU処理の圧迫が生じる。
また、CE21を集約する際に、コントロールプレーンにおいて、多数のFE22を外部スイッチ(図5において図示せず。)で収容してから各FE22をCE21に接続することになる。このとき、外部スイッチがCE21とは個別に動作を行うため、FE22とCE21とによる仮想的なパケット転送装置としての連携が損なわれてしまう。
そこで、本発明は、CEにおける処理の圧迫やトラフィック圧迫を効率的に低減することができるパケット転送システム、パケット転送システム内におけるパケット集中回避方法、および、そのパケット転送システムに適用されるコントロールエレメント用プログラムを提供することを目的とする。
本発明によるパケット転送システムは、パケット転送ルールに従ってパケットを転送する複数のフォワーディングエレメントと、各フォワーディングエレメントに対してパケット転送ルールを設定するコントロールエレメントと、各フォワーディングエレメントとコントロールエレメントとを接続させるスイッチ装置とを備え、各フォワーディングエレメントが、パケット転送ルールにより転送先が定められていないパケットであるファーストパケットを受信すると、当該ファーストパケットをコントロールエレメントに送信し、コントロールエレメントが、ファーストパケットを受信すると、当該ファーストパケットを送信したフォワーディングエレメントにパケット転送ルールを設定するパケット転送ルール設定手段を複数含み、複数のパケット転送ルール設定手段に対してファーストパケットをスイッチングするコントロールエレメント内スイッチと、そのスイッチ装置とそのコントロールエレメント内スイッチとを一つのスイッチとして動作させるスイッチ管理手段とを含み、各フォワーディングエレメントが、そのスイッチを介して、ファーストパケットをパケット転送ルール設定手段に送信することを特徴とする。
また、本発明によるパケット転送システム内におけるパケット集中回避方法は、パケット転送ルールに従ってパケットを転送する各フォワーディングエレメントが、パケット転送ルールにより転送先が定められていないパケットであるファーストパケットを受信すると、当該ファーストパケットをコントロールエレメントに送信し、コントロールエレメントが備える複数のパケット転送ルール設定手段が、ファーストパケットを受信すると、当該ファーストパケットを送信したフォワーディングエレメントにパケット転送ルールを設定し、コントロールエレメントが備えるスイッチ管理手段が、コントロールエレメント内に設けられ、複数のパケット転送ルール設定手段に対してファーストパケットをスイッチングするコントロールエレメント内スイッチと、コントロールエレメントの外部に設けられ、各フォワーディングエレメントおよび当該コントロールエレメントを接続させるスイッチ装置とを一つのスイッチとして動作させ、各フォワーディングエレメントが、ファーストパケットをコントロールエレメントに送信するときに、そのスイッチを介してファーストパケットを送信することを特徴とする。
また、本発明によるコントロールエレメント用プログラムは、パケット転送ルールに従ってパケットを転送する複数のフォワーディングエレメントに対してパケット転送ルールを設定するコントロールエレメントとなるコンピュータに搭載されるコントロールエレメント用プログラムであって、コンピュータを、パケット転送ルールにより転送先が定められていないパケットであるファーストパケットをフォワーディングエレメントから受信すると、当該フォワーディングエレメントに対してパケット転送ルールを設定する複数のパケット転送ルール設定手段、その複数のパケット転送ルール設定手段に対してファーストパケットをスイッチングするコントロールエレメント内スイッチ、および、コンピュータの外部に設けられ、各フォワーディングエレメントおよびコンピュータを接続させるスイッチ装置と、コントロールエレメント内スイッチとを一つのスイッチとして動作させるスイッチ管理手段として機能させることを特徴とする。
本発明によれば、CEにおける処理の圧迫やトラフィック圧迫を効率的に低減することができる。
本発明の第1の実施形態のパケット転送システムの構成例を示すブロック図である。 本発明の第2の実施形態のパケット転送システムの構成例を示すブロック図である。 本発明のパケット転送システムの最小構成の例を示す説明図である。 一般的なフローベースのパケット転送装置の構成の一例を示すブロック図である。 CEとFEとを備えるパケット転送システムの例を示す説明図である。
以下、本発明の実施形態を図面を参照して説明する。
実施形態1.
図1は、本発明の第1の実施形態のパケット転送システムの構成例を示すブロック図である。第1の実施形態のパケット転送システムは、回線からのパケットの受信、回線へのパケットの送信、およびパケット転送を行うFE(フォワーディングエレメント)310,311と、各FE310,311を収容するスイッチ装置309と、レイヤ2パケット転送におけるファーストパケットに対する処理や、レイヤ3パケット転送におけるファーストパケットに対する処理を行うCE(コントロールエレメント)301とを備える。ファーストパケットに対する処理とは、FEからファーストパケットが送られたときに、そのファーストパケットのフローに応じた転送先を規定するパケット転送ルールをそのFEに設定する処理である。なお、図1に示す例では、2つのFE310,311を図示しているが、FEの数は限定されず、3つ以上のFEが設けられていてもよい。
CE301は、CPU302を備え、そのCPU302によって、複数のバーチャルマシン(Virtual Machine :以下、VMと記す。)303〜307と、バーチャルスイッチ(Virtual Switch:以下、VSと記す。)308とが実現される。また、VS308は、VS308およびスイッチ装置309を一つのバーチャルスイッチ312として動作させるVS管理モジュール313を含むように実現される。
CE301は、例えば、サーバ装置により実現され、サーバ装置のCPUを、CE301のCPU302として用いてもよい。
CPU302によって実現される各VM303〜307は、個々に機能を分担する。図1に示す例では、VM303は、装置管理機能を分担する。
また、VM304,305は、それぞれ、L2処理(レイヤ2パケット転送)におけるファーストパケットに対する処理を分担する。すなわち、VM304,305は、レイヤ2パケット転送において、転送先がFE内のフォワーディングテーブル(パケット転送ルールの集合)に規定されていないファーストパケットをFEから送られると、そのファーストパケットのフローに応じた転送先を規定するパケット転送ルールをそのFEに設定する。
また、VM306,307は、それぞれ、L3処理(レイヤ3パケット転送)におけるファーストパケットに対する処理を分担する。すなわち、VM306,307は、レイヤ3パケット転送において、転送先がFE内のフォワーディングテーブル(パケット転送ルールの集合)に規定されていないファーストパケットをFEから送られると、そのファーストパケットのフローに応じた転送先を規定するパケット転送ルールをそのFEに設定する。
図1では、CPU302によりVM303〜VM307が実現される場合を例示しているが、CPU302により実現されるVMの数は限定されない。また、各VMが分担する機能は、装置管理機能、レイヤ2やレイヤ3におけるファーストパケットに対する処理機能に限定されない。例えば、新たな機能を分担するVMが追加されてもよい。
CPU302によって、同一の機能を有する複数のVMが実現されることで、CE301におけるCPU処理の圧迫やトラフィックの圧迫を低減することができる。例えば、レイヤ2パケット転送におけるファーストパケットに対する処理を行うVMとして複数のVM304,305が設けられることにより、各FE310,311からそのようなファーストパケットを多数受信したとしても、VM304,305がそれぞれファーストパケットに対する処理を行うので、負荷が分散される。同様に、レイヤ3パケット転送におけるファーストパケットに対する処理を行うVMとしてVM306,307が設けられることにより、各FE310,311からそのようなファーストパケットを多数受信したとしても、VM306,307がそれぞれファーストパケットに対する処理を行うので、負荷が分散される。
また、CPU302によって実現されるVS308は、各FE310,311から、コントロールプレーン経由でCE301に到達するファーストパケットを、各VMへスイッチングする。また、VS308は、VS308自身と、各FE310,311を収容するスイッチ装置309とを一つのバーチャルスイッチ312として動作させるVS管理モジュール313としての機能も含む。
各FE310,311は、回線から受信したパケットを、フォワーディングテーブルに従って他のFEに転送する。フォワーディングテーブルは、CE301によって設定されたパケット転送ルールの集合である。各FE310,311は、回線から受信したパケットの転送先がフォワーディングテーブルに規定されていない場合、そのパケットをファーストパケットとして、CE301に送信し、その結果、新たにパケット転送ルールを設定される。換言すれば、フォワーディングテーブルに新たなパケット転送ルールが追加される。この結果、各FE310,311は、パケットの転送先を定めることができる。
また、各FE310,311は、他のFEから転送されたパケットを回線に送信する。
スイッチ装置309は、CE302の外部に設けられるスイッチ装置である。具体的には、スイッチ装置309は、各FE310,311とCE301との間に設けられ、各FE310,311とCE301とを接続させる。
VS管理モジュール313は、VS308とスイッチ装置309とを一つのバーチャルスイッチ312として動作させる。換言すれば、VS管理モジュール313は、スイッチ装置309をVS308に組み込ませているということができる。
VS管理モジュール303を含むVS308、およびVM303〜307は、コントロールエレメント用プログラムに従って動作するCPU302によって実現される。この場合、CE302のプログラム記憶装置(図示せず。)に記憶されたコントロールエレメント用プログラムをCPU302が読み込み、CPU302がそのプログラムに従って、VS管理モジュール303を含むVS308、およびVM303〜307として動作する。VS308およびVS管理モジュール313も、CPU302によって実現されるバーチャルマシンである。
次に、動作について説明する。
まず、VS管理モジュール313が、VS308とスイッチ装置309とを一つのバーチャルスイッチ312として動作させる処理について説明する。VS管理モジュール313は、VS308の入出力テーブルと、スイッチ装置309の入出力テーブルを共通に管理することで、VS308とスイッチ装置309とを一つのバーチャルスイッチ312として動作させる。すなわち、VS管理モジュール313は、VS308の入出力テーブルと、スイッチ装置309の入出力テーブルを共通に管理することにより、スイッチ装置309におけるFE310,311側の入力から、VS308におけるVM303〜307側の出力までを管理し、VS308とスイッチ装置309とを一つのバーチャルスイッチ312として動作させる。
各FE310,311は、回線から受信したパケットを、FE自身が保持しているフォワーディングテーブルに従って、他のFEに転送し、そのパケットを受信したFEは、回線からそのパケットを送信する。
VS管理モジュール313によって、VS308とスイッチ装置309とが一つのバーチャルスイッチ312として動作する状態において、各FE310,311は、回線から受信したパケットがファーストパケットである場合、そのファーストパケットを、バーチャルスイッチ312を介して、VMに送る。このとき、バーチャルスイッチ312は、FE310,311から送られたファーストパケットを、転送態様(レイヤ)に応じてVM304,305、あるいは、VM306,307に分散させて送る。VMは、ファーストパケットを受信すると、そのファーストパケットのフローに応じた転送先を規定するパケット転送ルールを決定し、ファーストパケットを送信したFEに対してそのパケット転送ルールを返す。
FE310,311が、L3処理が必要なパケットを大量に受信した場合を例にして説明する。この場合、FE310,311は、それぞれ、受信したパケットを、フォワーディングテーブルに従って他のFEに転送する。転送先が規定されていないファーストパケットを受信した場合、FE310,311は、そのファーストパケットを、バーチャルスイッチ312を介して、VMに送る。本例では、バーチャルスイッチ312は、レイヤ3パケット転送におけるファーストパケットに対する処理を行うVM306,307に分散して、各FEからのファーストパケットを送る。VM306,307は、それぞれ、ファーストパケットに応じてパケット転送ルールを決定し、ファーストパケットを送信したFEに対してそのパケット転送ルールを送信する。
各FEから送信されるファーストパケットは、一つのVMに集中せずに、上記のように複数のVM306,307によって処理される。従って、各FE310,311とCE301との間における通信経路での通信帯域の圧迫を防止して、各FE310,311とCE301との間における通信経路での通信帯域を確保できる。また、一つのVMにパケットが集中してそのVMの処理が圧迫されてしまうことを防止して、複数のVM306,307で処理負荷を分散することができる。
上記の例では、FE310,311が、L3処理が必要なパケットを受信した場合を例にして説明した。レイヤ2転送が必要なパケットをFE310,311が受信する場合において、FE310,311がファーストパケットをCE301に送信するときには、バーチャルスイッチ312が、そのファーストパケットをVM304,305に分散して送ればよい。
また、各VMは、バーチャルスイッチ312から送られたファーストパケットに対する処理を行う際に、そのパケットが不正なパケットであると判断した場合、スイッチ装置309に廃棄しないパケットの条件のリスト(アクセスリストと呼ぶ。)を設定して、バーチャルスイッチ312として動作するスイッチ装置309に、不正なパケットを廃棄してCE301に送信させないようにしてもよい。
この場合、本発明のコントロールエレメント用プログラムにセキュリティソフトウェアを含め、CPU302からそのプログラムを読み込み、各VMが、不正なパケットを検知すればよい。セキュリティソフトウェアの例として、例えば、IDS(Intrusion Detection System)やIPS(Intrusion Prevention System )が挙げられる。各VMは、具体的には、予め用意したシグネチャと、FEから送られたファーストパケットとを比較して、そのファーストパケットが不正パケットであるか否かを判定すればよい。各VMは、不正パケットを検出したならば、そのような不正パケットが廃棄されるように、スイッチ装置309に設定されているアクセスリストを更新する。スイッチ装置309は、アクセスリストに含まれる条件に合致するパケットを通過させ、クセスリストに含まれる条件に合致しないパケットを廃棄する。従って、各VMが不正パケットに基づいて、アクセスリストを更新することで、同様の不正パケットが各VMに再度送られてくることを防止できる。
また、各VMは、アクセスリストの代わりに、廃棄すべきパケットの条件のリストをスイッチ装置309に設定してもよい。
第1の実施形態によれば、CPU302によって同一機能を有する複数のVMが実現され、バーチャルスイッチ312が、各FE310,311から受信したパケットを、その複数のVMに分散して送る。従って、CE301におけるCPU処理の圧迫を防止し、複数のVMでパケットに対する処理を分散して行うことができる。また、各FE310,311とCE301との間の通信経路における通信帯域を確保することができる。
また、VS管理モジュール313が、CPU302によって実現されるVS308と、スイッチ装置309とを一つのバーチャルスイッチ312として動作させるので、効率的にVMにおける負荷分散が可能となる。
また、ルータ機能をレイヤ2パケット転送における処理やレイヤ3パケット転送における処理に分割し、分割した各機能をCE301内の各VMに分担させることにより、何らかの障害が発生したときに、その障害の影響を、各機能間で低減させることができる。また、機能毎のプログラム更新を、他の機能に影響を与えることなく行うことができる。
実施形態2.
図2は、本発明の第2の実施形態のパケット転送システムの構成例を示すブロック図である。第2の実施形態のパケット転送システムは、回線からのパケットの受信、回線へのパケットの送信、およびパケット転送を行うFE(フォワーディングエレメント)410,411と、各FE410,411を収容するスイッチ装置409と、レイヤ2パケット転送におけるファーストパケットに対する処理や、レイヤ3パケット転送におけるファーストパケットに対する処理を行うCE(コントロールエレメント)401とを備える。第1の実施形態と同様にFEの数は限定されず、3つ以上のFEが設けられていてもよい。FE410,411、スイッチ装置409は、それぞれ、第1の実施形態におけるFE310,311、スイッチ装置309と同様であり、説明を省略する。
CE401は、マルチプロセッサ構成のコンピュータ(例えば、サーバ装置)によって実現され、複数のCPU403〜407と、スイッチファブリック(Switch Fabric )408とを備える。また、CE401は、スイッチファブリック408およびスイッチ装置409を一つのバーチャルスイッチ412として動作させるVS管理モジュール413を備える。
CE401が備える複数のCPU403〜407は、個々に機能を分担する。図2に示す例では、各CPU403〜407は、それぞれ、第1の実施形態におけるVM303〜307と同様の機能を分担する。例えば、CPU403は、装置管理機能を分担する。
また、CPU404,405は、それぞれ、L2処理におけるファーストパケットに対する処理を分担する。すなわち、CPU404,405は、レイヤ2パケット転送において、転送先がFE内のフォワーディングテーブルに規定されていないファーストパケットをFEから送られると、そのファーストパケットのフローに応じた転送先を規定するパケット転送ルールをそのFEに設定する。
また、CPU406,407は、それぞれ、L3処理におけるファーストパケットに対する処理を分担する。すなわち、CPU406,407は、レイヤ3パケット転送において、転送先がFE内のフォワーディングテーブルに規定されていないファーストパケットをFEから送られると、そのファーストパケットのフローに応じた転送先を規定するパケット転送ルールをそのFEに設定する。
各CPU403〜407は、それぞれ、CE401のプログラム記憶装置(図示略)に記憶されたプログラムを読み込んで、そのプログラムに従って動作すればよい。
図2では、CE401がCPU403〜407を備える場合を例示しているが、CE401が備えるCPUの数は限定されない。また、各CPUが分担する機能は、装置管理機能、レイヤ2やレイヤ3におけるファーストパケットに対する処理機能に限定されない。例えば、新たな機能を分担するCPUが追加されてもよい。
CE401が、同一の機能を有する複数のCPUを備えることで、CE401におけるCPU処理の圧迫やトラフィックの圧迫を低減することができる。例えば、レイヤ2パケット転送におけるファーストパケットに対する処理を行うCPUとして複数のCPU404,405を備えていることにより、各FE410,411からそのようなファーストパケットを多数受信したとしても、CPU404,405がそれぞれファーストパケットに対する処理を行うので、負荷が分散される。同様に、レイヤ3パケット転送におけるファーストパケットに対する処理を行うCPUとして複数のCPU406,407を備えていることにより、各FE410,411からそのようなファーストパケットを多数受信したとしても、CPU406,407がそれぞれファーストパケットに対する処理を行うので、負荷が分散される。
スイッチファブリック408は、各FE410,411から、コントロールプレーン経由でCE401に到達するファーストパケットを、各CPUにスイッチングするクロスバースイッチである。
VS管理モジュール413は、スイッチファブリック408とスイッチ装置409とを一つのバーチャルスイッチ412として動作させる。
次に、動作について説明する。
VS管理モジュール413が、スイッチファブリック408とスイッチ装置409とを一つのバーチャルスイッチとして動作させる処理は、第1の実施形態におけるVS管理モジュール313の処理と同様である。すなわち、VS管理モジュール413は、スイッチファブリック408の入出力テーブルと、スイッチ装置409の入出力テーブルを共通に管理することにより、スイッチ装置409におけるFE410,411側の入力から、スイッチファブリック408におけるCPU403〜407側の出力までを管理し、スイッチファブリック408とスイッチ装置409とを一つのバーチャルスイッチ412として動作させる。
各FE410,411が回線から受信したパケットを他のFEに転送する動作は、第1の実施形態と同様である。
VS管理モジュール413によって、スイッチファブリック408とスイッチ装置409とが一つのバーチャルスイッチ412として動作する状態において、各FE410,411は、回線から受信したパケットがファーストパケットである場合、そのファーストパケットを、バーチャルスイッチ412を介してCPUに送る。このとき、バーチャルスイッチ412は、FE410,411から送られたファーストパケットを、転送態様(レイヤ)に応じてCPU404,405、あるいは、CPU406,407に分散させて送る。CPUは、ファーストパケットを受信すると、そのファーストパケットのフローに応じた転送先を規定するパケット転送ルールを決定し、ファーストパケットを送信したFEに対してそのパケット転送ルールを返す。このCPUの動作は、第1の実施形態におけるVMの動作と同様である。
また、FE410,411からCE410にファーストパケットを送信する際のバーチャルスイッチ412の動作は、第1の実施形態におけるバーチャルスイッチ312の動作と同様である。
また、各CPUは、バーチャルスイッチ412から送られたファーストパケットに対する処理を行う際に、そのパケットが不正なパケットであると判断した場合、スイッチ装置409にアクセスリストを設定して、バーチャルスイッチ412として動作するスイッチ装置409に、不正なパケットを廃棄してCE401に送信させないようにしてもよい。このときのCPUの動作も、第1の実施形態におけるVMの動作と同様である。例えば、各CPUは、予め用意したシグネチャと、FEから送られたファーストパケットとを比較して、そのファーストパケットが不正パケットであるか否かを判定すればよい。また、各CPUは、不正パケットを検出したならば、そのような不正パケットが廃棄されるように、スイッチ装置409に設定されているアクセスリストを更新すればよい。また、アクセスリストの代わりに、廃棄すべきパケットの条件のリストをスイッチ装置409に設定してもよい。
第2の実施形態においても、第1の実施形態と同様の効果が得られる。
次に、本発明の最小構成の例を説明する。図3は、本発明のパケット転送システムの最小構成の例を示す説明図である。本発明のパケット転送システムは、パケット転送ルールに従ってパケットを転送する複数のフォワーディングエレメント61と、各フォワーディングエレメント61に対してパケット転送ルールを設定するコントロールエレメント51と、各フォワーディングエレメント61とコントロールエレメント51とを接続させるスイッチ装置65とを備える。
各フォワーディングエレメント61は、パケット転送ルールにより転送先が定められていないパケットであるファーストパケットを受信すると、そのファーストパケットをコントロールエレメント51に送信する。
コントロールエレメント51は、パケット転送ルール設定手段52を複数含み、また、コントロールエレメント内スイッチ53と、スイッチ管理手段54とを含む。
各パケット転送ルール設定手段52は、ファーストパケットを受信すると、そのファーストパケットを送信したフォワーディングエレメント61にパケット転送ルールを設定する。
コントロールエレメント内スイッチ53は、複数のパケット転送ルール設定手段52に対してファーストパケットをスイッチングする。
スイッチ管理手段54は、スイッチ装置65と、コントロールエレメント内スイッチ53とを一つのスイッチとして動作させる。
各フォワーディングエレメント61は、そのスイッチを介して、ファーストパケットをパケット転送ルール設定手段に送信する。
以上のような構成により、コントロールエレメント51における処理の圧迫やトラフィック圧迫を効率的に低減することができる。
また、上記の各実施形態には、以下の(1)〜(4)に示すようなパケット転送システムの特徴的構成が示されている。
(1)本発明のパケット転送システムは、パケット転送ルールに従ってパケットを転送する複数のフォワーディングエレメントと、各フォワーディングエレメントに対してパケット転送ルールを設定するコントロールエレメントと、各フォワーディングエレメントとコントロールエレメントとを接続させるスイッチ装置(例えば、スイッチ装置309,409)とを備え、各フォワーディングエレメントは、パケット転送ルールにより転送先が定められていないパケットであるファーストパケットを受信すると、当該ファーストパケットをコントロールエレメントに送信し、コントロールエレメントは、ファーストパケットを受信すると、当該ファーストパケットを送信したフォワーディングエレメントにパケット転送ルールを設定するパケット転送ルール設定手段を複数含み(例えば、VM304〜307、または、CPU404〜407を含み)、複数のパケット転送ルール設定手段に対してファーストパケットをスイッチングするコントロールエレメント内スイッチ(例えば、VS308、または、スイッチファブリック408)と、そのスイッチ装置とそのコントロールエレメント内スイッチとを一つのスイッチとして動作させるスイッチ管理手段(例えば、VS管理モジュール313,413)とを含み、各フォワーディングエレメントが、そのスイッチを介して、ファーストパケットをパケット転送ルール設定手段に送信することを特徴とする。
(2)各パケット転送ルール設定手段と、コントロールエレメント内スイッチと、スイッチ管理手段が、コントロールエレメントのCPUによって実現されるバーチャルマシンであってもよい。
(3)コントロールエレメントが、複数のCPUを備えるコンピュータであり、各パケット転送ルール設定手段が、コントロールエレメントが備える個々のCPUによって実現され、コントロールエレメント内スイッチは、スイッチファブリックである構成であってもよい。
(4)スイッチ装置が、破棄しないパケットの条件のリストまたは破棄するパケットの条件のリストを保持し、パケット転送ルール設定手段が、ファーストパケットが不正パケットであるか否かを判定し、ファーストパケットが不正パケットであると判定した場合に、当該ファーストパケットが破棄されるように、スイッチ装置が保持するリストを更新する構成であってもよい。
本発明は、コントロールエレメントとフォワーディングエレメントとを含むパケット転送システムに好適に適用される。
301 CE(コントロールエレメント)
302 CPU
303〜307 VM(バーチャルマシン)
308 バーチャルスイッチ
309 スイッチ装置
310,311 FE(フォワーディングエレメント)
312 バーチャルスイッチ
313 VS管理モジュール

Claims (6)

  1. パケット転送ルールに従ってパケットを転送する複数のフォワーディングエレメントと、
    各フォワーディングエレメントに対してパケット転送ルールを設定するコントロールエレメントと、
    各フォワーディングエレメントとコントロールエレメントとを接続させるスイッチ装置とを備え、
    各フォワーディングエレメントは、パケット転送ルールにより転送先が定められていないパケットであるファーストパケットを受信すると、当該ファーストパケットをコントロールエレメントに送信し、
    コントロールエレメントは、
    ファーストパケットを受信すると、当該ファーストパケットを送信したフォワーディングエレメントにパケット転送ルールを設定するパケット転送ルール設定手段を複数含み、
    前記複数のパケット転送ルール設定手段に対してファーストパケットをスイッチングするコントロールエレメント内スイッチと、
    前記スイッチ装置と前記コントロールエレメント内スイッチとを一つのスイッチとして動作させるスイッチ管理手段とを含み、
    各フォワーディングエレメントは、前記スイッチを介して、ファーストパケットをパケット転送ルール設定手段に送信する
    ことを特徴とするパケット転送システム。
  2. 各パケット転送ルール設定手段と、コントロールエレメント内スイッチと、スイッチ管理手段は、コントロールエレメントのCPUによって実現されるバーチャルマシンである
    請求項1に記載のパケット転送システム。
  3. コントロールエレメントは、複数のCPUを備えるコンピュータであり、
    各パケット転送ルール設定手段は、コントロールエレメントが備える個々のCPUによって実現され、
    コントロールエレメント内スイッチは、スイッチファブリックである
    請求項1に記載のパケット転送システム。
  4. スイッチ装置は、破棄しないパケットの条件のリストまたは破棄するパケットの条件のリストを保持し、
    パケット転送ルール設定手段は、ファーストパケットが不正パケットであるか否かを判定し、ファーストパケットが不正パケットであると判定した場合に、当該ファーストパケットが破棄されるように、スイッチ装置が保持するリストを更新する
    請求項1から請求項3のうちのいずれか1項に記載のパケット転送システム。
  5. パケット転送ルールに従ってパケットを転送する各フォワーディングエレメントが、パケット転送ルールにより転送先が定められていないパケットであるファーストパケットを受信すると、当該ファーストパケットをコントロールエレメントに送信し、
    コントロールエレメントが備える複数のパケット転送ルール設定手段が、ファーストパケットを受信すると、当該ファーストパケットを送信したフォワーディングエレメントにパケット転送ルールを設定し、
    コントロールエレメントが備えるスイッチ管理手段が、
    コントロールエレメント内に設けられ、前記複数のパケット転送ルール設定手段に対してファーストパケットをスイッチングするコントロールエレメント内スイッチと、コントロールエレメントの外部に設けられ、各フォワーディングエレメントおよび当該コントロールエレメントを接続させるスイッチ装置とを一つのスイッチとして動作させ、
    各フォワーディングエレメントは、
    ファーストパケットをコントロールエレメントに送信するときに、前記スイッチを介してファーストパケットを送信する
    ことを特徴とするパケット転送システム内におけるパケット集中回避方法。
  6. パケット転送ルールに従ってパケットを転送する複数のフォワーディングエレメントに対してパケット転送ルールを設定するコントロールエレメントとなるコンピュータに搭載されるコントロールエレメント用プログラムであって、
    前記コンピュータを、
    パケット転送ルールにより転送先が定められていないパケットであるファーストパケットをフォワーディングエレメントから受信すると、当該フォワーディングエレメントに対してパケット転送ルールを設定する複数のパケット転送ルール設定手段、
    前記複数のパケット転送ルール設定手段に対してファーストパケットをスイッチングするコントロールエレメント内スイッチ、および、
    前記コンピュータの外部に設けられ、各フォワーディングエレメントおよび前記コンピュータを接続させるスイッチ装置と、前記コントロールエレメント内スイッチとを一つのスイッチとして動作させるスイッチ管理手段
    として機能させるためのコントロールエレメント用プログラム。
JP2010021669A 2010-02-02 2010-02-02 パケット転送システム、パケット転送システム内におけるパケット集中回避方法 Active JP5402688B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010021669A JP5402688B2 (ja) 2010-02-02 2010-02-02 パケット転送システム、パケット転送システム内におけるパケット集中回避方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010021669A JP5402688B2 (ja) 2010-02-02 2010-02-02 パケット転送システム、パケット転送システム内におけるパケット集中回避方法

Publications (2)

Publication Number Publication Date
JP2011160301A true JP2011160301A (ja) 2011-08-18
JP5402688B2 JP5402688B2 (ja) 2014-01-29

Family

ID=44591856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010021669A Active JP5402688B2 (ja) 2010-02-02 2010-02-02 パケット転送システム、パケット転送システム内におけるパケット集中回避方法

Country Status (1)

Country Link
JP (1) JP5402688B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013070325A (ja) * 2011-09-26 2013-04-18 Nec Corp 通信システム、通信装置、サーバ、通信方法
JP2013149109A (ja) * 2012-01-19 2013-08-01 Ntt Data Corp セキュリティ設定システム、セキュリティ設定方法およびプログラム
JP2013197919A (ja) * 2012-03-21 2013-09-30 Nec Corp 通信制御装置、通信制御方法および通信制御プログラム
JP2015502101A (ja) * 2011-11-25 2015-01-19 アルカテル−ルーセント 通信ネットワーク内のデータパケットの迅速なデータフローを促進する方法、通信ネットワーク、およびデータ処理ユニット
JP2015530831A (ja) * 2012-09-13 2015-10-15 シマンテック コーポレーションSymantec Corporation 選択的ディープパケットインスペクションを実行するためのシステム及び方法
JP2015228264A (ja) * 2015-09-17 2015-12-17 株式会社エヌ・ティ・ティ・データ セキュリティ設定システム、セキュリティ設定方法およびプログラム
JP2016015687A (ja) * 2014-07-03 2016-01-28 富士通株式会社 パケット転送システム,及びパケット転送装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007522583A (ja) * 2004-02-13 2007-08-09 インテル・コーポレーション 動的に拡張可能な仮想スイッチの装置および方法
JP2009176103A (ja) * 2008-01-25 2009-08-06 Hitachi Information Systems Ltd 仮想ネットワークシステムのnic接続制御方法とシステムおよびプログラム
JP2011070549A (ja) * 2009-09-28 2011-04-07 Nec Corp コンピュータシステム、及び仮想マシンのマイグレーション方法
JP2011082799A (ja) * 2009-10-07 2011-04-21 Nec Corp 省電力化システム、省電力化方法、及び省電力化用プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007522583A (ja) * 2004-02-13 2007-08-09 インテル・コーポレーション 動的に拡張可能な仮想スイッチの装置および方法
JP2009176103A (ja) * 2008-01-25 2009-08-06 Hitachi Information Systems Ltd 仮想ネットワークシステムのnic接続制御方法とシステムおよびプログラム
JP2011070549A (ja) * 2009-09-28 2011-04-07 Nec Corp コンピュータシステム、及び仮想マシンのマイグレーション方法
JP2011082799A (ja) * 2009-10-07 2011-04-21 Nec Corp 省電力化システム、省電力化方法、及び省電力化用プログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSND201000023032; 'インターネットのメカニズムを根底から革新する新世代ネットワーク技術' BUSINESS COMMUNICATION 第47巻 第1号, 20100101, pp.111-113, 株式会社ビジネスコミュニケーション社 *
JPN6013047959; 'インターネットのメカニズムを根底から革新する新世代ネットワーク技術' BUSINESS COMMUNICATION 第47巻 第1号, 20100101, pp.111-113, 株式会社ビジネスコミュニケーション社 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013070325A (ja) * 2011-09-26 2013-04-18 Nec Corp 通信システム、通信装置、サーバ、通信方法
JP2015502101A (ja) * 2011-11-25 2015-01-19 アルカテル−ルーセント 通信ネットワーク内のデータパケットの迅速なデータフローを促進する方法、通信ネットワーク、およびデータ処理ユニット
US9525616B2 (en) 2011-11-25 2016-12-20 Alcatel Lucent Method of promoting a quick data flow of data packets in a communication network, communication network and data processing unit
JP2013149109A (ja) * 2012-01-19 2013-08-01 Ntt Data Corp セキュリティ設定システム、セキュリティ設定方法およびプログラム
JP2013197919A (ja) * 2012-03-21 2013-09-30 Nec Corp 通信制御装置、通信制御方法および通信制御プログラム
JP2015530831A (ja) * 2012-09-13 2015-10-15 シマンテック コーポレーションSymantec Corporation 選択的ディープパケットインスペクションを実行するためのシステム及び方法
JP2016015687A (ja) * 2014-07-03 2016-01-28 富士通株式会社 パケット転送システム,及びパケット転送装置
JP2015228264A (ja) * 2015-09-17 2015-12-17 株式会社エヌ・ティ・ティ・データ セキュリティ設定システム、セキュリティ設定方法およびプログラム

Also Published As

Publication number Publication date
JP5402688B2 (ja) 2014-01-29

Similar Documents

Publication Publication Date Title
JP5402688B2 (ja) パケット転送システム、パケット転送システム内におけるパケット集中回避方法
US20170111231A1 (en) System and method for communication
RU2583745C2 (ru) Сетевая система, коммутатор и способ обнаружения подсоединенного терминала
KR101478475B1 (ko) 컴퓨터 시스템 및 컴퓨터 시스템에 있어서의 통신 방법
JP5660211B2 (ja) 通信経路制御システム、及び通信経路制御方法
US10164905B2 (en) Efficient management of network traffic in a multi-CPU server
US20170118066A1 (en) Data plane to forward traffic based on communications from a software defined (sdn) controller during a control plane failure
US9008080B1 (en) Systems and methods for controlling switches to monitor network traffic
JP4953094B2 (ja) パケットデータ比較器及びそれを用いたウイルスフィルタ、ウイルスチェッカ、ネットワークシステム
CN104272656A (zh) 软件定义网络中的网络反馈
US9875126B2 (en) Hash-based load balancing for bonded network interfaces
JP2014036240A (ja) 制御装置、方法及びプログラム、並びにシステム及び情報処理方法
EP2883123B1 (en) Forwarding packet in stacking system
US9571379B2 (en) Computer system, communication control server, communication control method, and program
JP2011077946A (ja) 通信装置およびフレーム送信方法
US9088432B2 (en) Remote control system, remote control method and program for remote control
EP3038296B1 (en) Pool element status information synchronization method, pool register and pool element
US9065862B2 (en) Communication device, method for controlling the communication device, and communication system
JP5518754B2 (ja) ネットワークノード
EP2722769A1 (en) Multi-core processor and method for multiplexing network management port thereof
WO2012162953A1 (zh) 一种路由器集群的板间通信方法、路由器和路由器集群
US20150009798A1 (en) Communication system, control apparatus, communication apparatus, information-relaying method, and program
WO2013004115A1 (zh) 网络设备中单板间进行报文交互的方法及网络设备
WO2016082573A1 (zh) 一种堆叠系统的报文转发方法、装置及堆叠设备
US20180316605A1 (en) A system and a method for controlling management processes directed to a link aggregation group

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130920

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131014

R150 Certificate of patent or registration of utility model

Ref document number: 5402688

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150