(57)【要約】【課題】パケット転送装置において、ネットワークトラフィックの解析等の目的により装置内でパケットのコピー処理を行うと、コピーしたパケットの送信に必要なポートを、通常転送に使用するポートとは別に準備する必要がある。【解決手段】パケット転送装置１００は、データ解析部１１０とメモリ制御部１０９と、コピー条件テーブル１１３を保持し制御情報比較部１１４を備えた制御ユニット１０４と、から構成される。データ解析部１１０は、受け取ったパケットのヘッダを参照して、制御情報を解析し、解析結果を制御ユニット１０４に送信する。制御ユニット１０４は、解析結果に基づいて、コピー条件テーブル１１３を検索し、検索結果をメモリ制御部１０９に送信する。メモリ制御部は、検索結果に基づいて、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成する。【選択図】図１
2009033719.tif 000002
【特許請求の範囲】
【請求項１】
受信パケットに対して転送処理を行うパケット転送装置において、
前記受信パケットまたは送信パケットをコピーする手段を備え、
前記コピーする手段は、コピー元パケットの一部を削除して、パケットの長さを短縮してコピーすることを特徴とするパケット転送装置。
【請求項２】
請求項１に記載のパケット転送装置であって、
コピーパケットの長さをコピー元パケットの制御情報に基づいて決定する手段を備えるパケット転送装置。
【請求項３】
請求項１または請求項２に記載のパケット転送装置であって、
送信処理部に回線負荷監視部をさらに備えることを特徴とするパケット転送装置。
【請求項４】
請求項３記載のパケット転送装置であって、
前記コピーパケットの長さを、前記回線負荷監視部の負荷監視結果に基づいて決定することを特徴とするパケット転送装置。
【請求項５】
請求項１に記載のパケット転送装置であって、
コピーパケットごとに優先順位を付け、この優先順位に基づいて、コピーパケットの出力を制御する手段を備えることを特徴とするパケット転送装置。
【請求項６】
請求項１に記載のパケット転送装置であって、
前記受信パケットのデータに依存して前記コピー元パケットの削除部分を決定することを特徴とするパケット転送装置。
【請求項７】
受信処理部と、データ解析部とメモリ制御部とからなる転送ユニットと、コピー条件テーブルを保持し制御情報比較部を備えた制御ユニットと、から構成されたパケット転送装置であって、
前記データ解析部は、前記受信処理部から受け取ったパケットのヘッダを参照して、制御情報を解析し、解析結果を前記制御ユニットに送信し、
前記制御ユニットは、前記解析結果に基づいて、前記コピー条件テーブルを検索し、検索結果を前記メモリ制御部に送信し、
前記メモリ制御部は、前記検索結果に基づいて、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成することを特徴とするパケット転送装置。
【請求項８】
請求項７に記載のパケット転送装置であって、
回線負荷監視部を備えた送信処理部を更に備え、
前記コピーパケットの長さを、前記回線負荷監視部の負荷監視結果に基づいて決定することを特徴とするパケット転送装置。
【請求項９】
受信処理部と、データ解析部とメモリ制御部とからなる転送ユニットと、コピー条件テーブルを保持し制御情報比較部を備えた制御ユニットと、から構成されたパケット転送装置であって、
前記データ解析部は、前記受信処理部から受け取ったパケットのヘッダを参照して、制御情報を解析し、解析結果を前記制御ユニットに送信し、前記パケットを前記メモリ制御部に送信し、
前記制御ユニットは、コピー条件テーブルから検索条件を取得し、この検索条件をメモリ制御部に送信し、
前記メモリ制御部は、前記データ解析部から受け取ったパケットについて、前記検索条件に基づいて解析し、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成することを特徴とするパケット転送装置。
【請求項１０】
受信したパケットのヘッダを参照して、制御情報を解析するステップと、
解析結果に基づいて、コピー条件テーブルを検索するステップと、
検索結果に基づいて、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成するステップと、
前記コピーパケットを送信するステップと、からなるコピーパケットの送信方法。
【請求項１１】
コピー条件テーブルを参照して検索条件を取得するステップと、
取得結果に基づいて、受信したパケットを参照して、前記検索条件による検索結果を取得するステップと、
検索結果に基づいて、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成するステップと、
前記コピーパケットを送信するステップと、からなるコピーパケットの送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークから受信したパケットを転送するパケット転送装置と、コピーパケットの送信方法に関する。
【背景技術】
【０００２】
ルータ／スイッチに代表される一般的なパケット転送装置において、ネットワークトラフィックの解析を支援する機能の一つにミラーリングがある。ミラーリングは、送受信するパケットのコピーを指定した物理ポートへ送信する機能である。ミラーリングしたパケットをアナライザなどで受信することによって、トラフィックの監視や解析が可能となる。
【０００３】
特許文献１には、行動監視システムからの情報に基づいて、ミラーリングを実施する中継装置が記載されている。
特許文献２には、特定のプロトコルで使用する特殊なフォーマットのパケットに対する複製・短縮技術は技術が記載されている。
【０００４】
特許文献３には、ＡＴＭ伝送路の伝送効率を改善するため、同一のセルヘッダを有する複数のセルを蓄積し、第１のセルヘッダ以外のセルヘッダを除去して伝送する技術が記載されている。
非特許文献１には、ポート監視機能と仕様の記載があり、ミラーリングの簡単な説明等が記載されている。
【０００５】
【特許文献１】特開２００５−３０１７６６号公報
【特許文献２】特開２００６−１４８８９８号公報
【特許文献３】特開平１１−０６８７９１号公報
【非特許文献１】「AX7800R/AX7700R Software Manual」、Applications Guide, Vol. 2、アラクサラネットワークス、２０７〜２１２頁
【発明の開示】
【発明が解決しようとする課題】
【０００６】
非特許文献１の技術において、ミラーリングで監視できる帯域は、コピーされたパケットが出力される物理ポートの帯域で決定される。ギガビットの帯域のポートを２ポート分ミラーリングするためには、コピーパケットを送信するためのポートもギガビットで２ポート分用意する必要がある。そのため、監視したい帯域がコピーパケット出力用のポートの帯域よりも大きい場合にはそれに見合った物理ポートをコピーパケットの出力用に用意する必要がある。また、用意できるコピーパケット出力用のポートの帯域よりも、監視したいポートの帯域が大きい場合にはトラフィックを取りこぼすことがある。
【課題を解決するための手段】
【０００７】
上述した課題は、受信パケットまたは送信パケットをコピーする手段を備え、コピーする手段は、コピー元パケットの一部を削除して、パケットの長さを短縮してコピーするパケット転送装置により、達成できる。
【０００８】
また、受信処理部と、データ解析部とメモリ制御部とからなる転送ユニットと、コピー条件テーブルを保持し制御情報比較部を備えた制御ユニットと、から構成され、データ解析部は、受信処理部から受け取ったパケットのヘッダを参照して、制御情報を解析し、解析結果を制御ユニットに送信し、制御ユニットは、解析結果に基づいて、コピー条件テーブルを検索し、検索結果をメモリ制御部に送信し、メモリ制御部は、検索結果に基づいて、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成するパケット転送装置により、達成できる。
【０００９】
さらに、受信処理部と、データ解析部とメモリ制御部とからなる転送ユニットと、コピー条件テーブルを保持し制御情報比較部を備えた制御ユニットと、から構成され、制御ユニットは、コピー条件テーブルから検索条件を取得し、この検索条件をデータ解析部に送信し、データ解析部は、受信処理部から受け取ったパケットを参照して、検索条件に基づいて解析し、解析結果をメモリ制御部に送信し、メモリ制御部は、解析結果に基づいて、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成するパケット転送装置により、達成できる。
【００１０】
また、受信したパケットのヘッダを参照して、制御情報を解析するステップと、解析結果に基づいて、コピー条件テーブルを検索するステップと、検索結果に基づいて、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成するステップと、コピーパケットを送信するステップとからなるコピーパケットの送信方法により、達成できる。
【００１１】
さらに、コピー条件テーブルを参照して検索条件を取得するステップと、取得結果に基づいて、受信したパケットを参照して、検索条件による検索結果を取得するステップと、検索結果に基づいて、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成するステップと、コピーパケットを送信するステップと、からなるコピーパケットの送信方法により、達成できる。
【発明の効果】
【００１２】
本発明によりコピーパケットが出力されるポートからは、トラフィックの監視に不要なデータ部分が省かれたパケットが出力されるため、コピーパケットが出力されるポートの帯域以上のトラフィック監視が可能となる。加えて装置としてみた場合にコピー出力用のポート数が少なくなるため、通常の転送への影響を少なくすることができる。
【発明を実施するための最良の形態】
【００１３】
以下本発明の実施の形態について、実施例を用い図面を参照しながら説明する。なお、実質同一部位には同じ参照番号を振り、説明は繰り返さない。
【実施例１】
【００１４】
実施例１について、図１ないし図６を参照して説明する。ここで、図１はパケット転送装置のブロック図である。図２はパケット転送装置の転送ユニットと制御ユニットの詳細ブロック図である。図３は受信パケットコピー条件テーブルを説明する図である。図４は送信パケットコピー条件テーブルを説明する図である。図５は中継パケットとコピーパケットのフレームフォーマットを説明する図である。図６はメモリ読み出しテーブルを説明する図である。
【００１５】
図１において、パケット転送装置１００は、外部の回線を収容しパケットの送受信処理を行う回線インタフェース１０５、送受信パケットのメモリ１０１への格納と読み出し、および各受信パケットが持つ制御情報の解析と制御情報の制御ユニット１０４への通知を行う転送ユニット１０２、各受信パケットの制御情報に基づいてパケットの処理方法を決定する制御ユニット１０４と、プログラムを実行し全体を制御するＣＰＵ１０３とを備える。
【００１６】
回線インタフェース１０５は、８ポート（左から右へ順にポート０〜ポート７）からなる送受信ポート部１１２と、受信処理部１１１と、送信処理部１１５とから構成される。転送ユニット１０２は、送受信データを解析するデータ解析部１１０と、メモリ１０１の読み書きを制御するメモリ制御部１０９とから構成される。制御ユニット１０４には、制御情報比較部１１４と、コピー条件テーブル１１３とを含んでいる。
【００１７】
送受信ポート部１０２のポート０とポート１は、ネットワーク１０６−１に接続され、データを受信する。ポート２とポート３は、ネットワーク１０６−２に接続され、データを送信する。ポート７にはアナライザ１０８が接続され、ミラーリングしたデータを転送する。
【００１８】
図２において、転送ユニット１０２のメモリ制御部１０９は、メモリ読み出し管理テーブル２０１を備える。また、制御ユニット１０４のコピー条件テーブル１１３は、受信パケットコピー条件テーブル２０２と、送信パケットコピー条件テーブル２０３を備える。データ解析部１１０は、ポート０〜７から入力されたパケットのヘッダフィールドを参照して、各パケットの制御情報を解析する。データ解析部１１０は、解析結果を制御ユニット１０４へ通知する。また、各パケットデータそのものは、データ解析部１１０からメモリ制御部１０９を経由し、メモリ１０１へ格納される。
【００１９】
制御ユニット１０４は、制御情報比較部１１４で転送ユニット１０２から通知される制御情報の解析結果とコピー条件テーブル１１３との比較を行う。受信パケットをコピーするとき、データ解析部１１０から通知される受信ポート番号とフロー番号に基づいて、受信パケットコピー条件テーブル２０２を参照する。一方、送信パケットをコピーするとき、制御ユニット１０４で決定する送信ポート番号とフロー番号に基づいて、送信パケットコピー条件テーブル２０３を参照する。制御ユニット１０４は、受信ポート番号または送信ポート番号と一致した行のコピーの有無、パケット長、送信先を、比較結果としてメモリ制御部１０９に通知する。
【００２０】
図３において、受信パケットコピー条件テーブル２０２は、受信ポート番号２０２１、フロー番号２０２２、コピー有無２０２３、パケット長２０２４、コピーパケット送信先２０２５とから構成される。コピー有無２０２３の「０」はコピーしないこと、「１」はコピーすることを意味する。パケット長２０２４は、コピー有のとき定義され、コピーするパケット長を記載する。コピーパケット送信先２０２５は、コピーパケットの送信先を記載し、本実施例においてはアナライザ１０８が接続されたポート７である。
【００２１】
図４において、送信パケットコピー条件テーブル２０３は、送信ポート番号２０３１、フロー番号２０３２、コピー有無２０３３、パケット長２０３４、コピーパケット送信先２０３５とから構成される。コピー有無２０３３の「０」はコピーしないこと、「１」はコピーすることを意味する。パケット長２０３４は、コピー有のとき定義され、コピーするパケット長を記載する。コピーパケット送信先２０３５は、コピーパケットの送信先を記載し、本実施例においてはアナライザ１０８が接続されたポート７である。
【００２２】
図５において、図５（ａ）の中継パケット長が２７６バイトのとき、図５（ｂ）の１２８バイトのコピーパケットは、中継パケットの先頭から１２４バイトとし、この１２４バイトから算出する４バイトのＣＲＣ（Cycle Redundancy Check）コードであるＦＣＳ（Frame Check Sequence）を付加する。なお、６４バイトのコピーパケットは、中継パケットの先頭から６０バイトとし、この６０バイトから算出する４バイトのＣＲＣコードであるＦＣＳを付加する。ここで、ＦＣＳ４バイトを選択するのは、コピーパケットの受信時の伝送路におけるビット化けをアナライザ１０８がチェックできるからである。
【００２３】
本実施例に示す方法でコピーパケットのパケット長を短縮することで、対象を特殊なフォーマットのパケットに限定することなく、ネットワーク上を流れる全てのパケットに適用することができる。また、パケットの一部削除も通常のイーサフレームと同一フォーマットであるため、一般的なパケット転送装置やネットワークあらないザでパケットの中継およびパケット情報を解析することが可能である。
【００２４】
図６において、メモリ読み出し管理テーブル２０１は、メモリアドレス２０１１と、送信ポート２０１２と、パケット長２０１３とから構成される。メモリ読み出し管理テーブル２０１において、送信ポート２０１２に「７」が記録されているレコードがコピーパケットのレコードである。また、コピーパケットのレコードと同じメモリアドレスを有するレコードが中継パケットのレコードである。コピーパケットを読み出すとき、当該レコードのパケット長からＦＣＳ４バイトを減らしたパケット長を読み出し、ＣＲＣを演算し、付加して送信ポート７から、送信する。
【００２５】
図２に戻って、転送ユニット１０２は、制御ユニット１０４からの比較結果を、メモリ制御部１０９に備えるメモリ読み出し管理テーブル２０１に登録する。転送ユニット１０２は、このテーブルの情報に基づいてメモリからデータを読み出す。
【００２６】
図１に戻って、転送ユニット１０２は、メモリからデータを読み出し、読み出したデータを、メモリ制御部１０９から送信処理部１１５に送信する。送信処理部１１５は、読み出したデータを指定されたポートから送信する。
【実施例２】
【００２７】
図７と図８を参照して、実施例２を説明する。ここで、図７は転送ユニットと制御ユニットと回線インタフェースとの詳細ブロック図である。図８はパケットコピー条件テーブルを説明する図である。なお、実施例２以降のパケットコピー条件テーブルは、図示の簡便のためポート０のみを示す。
【００２８】
図７において、図１を用いて説明したパケット転送装置において回線インタフェースの送信処理部に回線負荷監視部５０１をさらに備えている。回線負荷監視部５０１は、図示しないアナライザが接続されたポート７の負荷状態を監視し、負荷の状態を制御ユニットの制御情報比較部に通知する。具体的には、回線負荷監視部５０１は、コピーパケットを出力するポート７に一定の閾値帯域を設定する。ポート７の使用帯域が閾値帯域を超えた場合、回線負荷監視部５０１は、制御情報比較部１１４に対し閾値を超えたこと通知する。
【００２９】
図８において、送信処理部１１５に回線負荷監視部５０１を備えるとき、制御ユニット１０４が持つパケットコピー条件テーブル１１３は、フロー番号６０１と、コピー有無６０２と、パケット長６０３と、パケット長有効６０４と、送信先６０５とから構成されている。ここで、図３、図４との対比から明らかなように、パケットコピー条件テーブル１１３に、パケット長有効６０４が新たに設けられている。
【００３０】
パケット長有効６０４は、回線負荷監視部５０１からの通知結果に基づき、コピーパケットをパケット長６０３に登録されたパケット長で実際に出力するか否かを決めるパラメータである。具体的には、コピーパケットを出力するポート７の使用帯域が増加し、回線負荷監視部５０１から制御情報比較部１１４に閾値帯域を超えたことが通知された場合に、パケット長有効６０４に「１」が登録される。パケット長有効６０４に「１」が登録されているとき、パケット長６０３に登録されたパケット長でパケットのコピー処理を行う。パケット長有効６０４に「０」が登録されているとき、パケット長６０３に登録されたパケット長を無効とし、コピー元パケットと同じパケット長でコピー処理する。
【００３１】
図９を参照して、実施例２の変形実施例を説明する。ここで、図９は他のパケットコピー条件テーブルを説明する図である。図９において、送信処理部１１５に回線負荷監視部５０１を備えるとき、制御ユニット１０４が持つパケットコピー条件テーブル１１３Ａは、フロー番号６０１と、コピー有無６０２と、パケット長６０３と、パケット長有効６０４と、送信先６０５と、短縮処理順６０６とから構成されている。ここで、図８との対比から明らかなように、パケットコピー条件テーブル１１３Ａに、短縮処理順６０６が新たに設けられている。
【００３２】
短縮処理順は６０６、回線負荷監視部５０１からの通知結果に基づき、パケット長有効６０４にフラグを立てる順番を示している。具体的には、回線負荷監視部５０１から制御情報比較部１１４に閾値帯域を超えたことが通知された場合、まず、短縮処理順６０６の登録番号が一番若いフロー２のパケット長有効６０４のフラグを「１」にする。それでも通知が継続される場合、次に登録番号の若いフロー５のパケット長有効フラグを「１」にする。逆に、閾値帯域超え通知が解除された場合は、短縮処理順番号が一番大きいフローからパケット長有効６０４を「０」に戻す。
【００３３】
上記はパケット長制限を有効にする方法の一実施例であり、閾値帯域超え通知があった場合に、あらかじめ登録した一部のフローのみ一律にパケット長制限を有効にすることもできる。
【実施例３】
【００３４】
実施例３について、図１０を参照して説明する。ここで、図１０はさらに他のパケットコピー条件テーブルを説明する図である。図１０において、制御ユニット１０４が持つパケットコピー条件テーブル１１３Ｂは、フロー番号６０１と、コピー有無６０２と、パケット長６０３と、送信先６０５と、送信優先順位６０７とから構成されている。
【００３５】
図１０では、図１に示すパケット転送装置において、フロー２に対して送信優先順位６０７を「１」と、フロー５に対して「２」、フロー４に対して「３」と定義している。この結果、フロー２のコピーパケットが優先的に送信される。このため、コピーパケットの出力用ポートの使用帯域が増加し、トラフィックの取りこぼしが発生した場合においても、優先順位の高いフロー２については取りこぼしを防ぐことが可能である。
【実施例４】
【００３６】
実施例４について、図１１を参照して説明する。ここで、図１１は分散型スイッチング方式のパケット転送装置のブロック図である。図１１において、パケット転送装置８００は、ネットワーク１０６−１に接続された回線インタフェース８０１−１と、ネットワーク１０６−２に接続された回線インタフェース８０１−２と、クロスバースイッチ８０２とから構成されている。また、回線インタフェース８０１は、ネットワーク１０６と接続された、送受信ポート部８０９と、送受信ポート８０９とクロスバースイッチ８０２と接続された転送ユニット８０６と、メモリ８０５と、制御ユニット８０７と、ＣＰＵ８０８とから構成されている。回線インタフェース８０１−１のポートをポート０ないしポート３と呼び、回線インタフェース８０１−１のポートをポート４ないしポート７と呼ぶ。ポート７には、アナライザ１０８が接続されている。
【００３７】
実施例４では、パケット転送装置８００は、回線インタフェース８０１ごとに転送ユニット８０６および制御ユニット８０７を持ち、クロスバースイッチ８０２が各回線インタフェース８０１を束ねる。パケット転送装置８００においても、コピーパケットの生成手順は基本的に図１から図１０で説明した手順と同様である。ただし、回線インタフェース８０１−１で受信し、回線インタフェース８０１−２へ転送するパケットをミラーリングする場合、回線インタフェース８０１−１で生成されたコピーパケットは通常転送パケットと共にクロスバースイッチ８０２へ転送される。つまり、クロスバースイッチ８０２のハードウェアリソースは通常パケットとコピーパケットが共有する。実施例４を利用しコピーパケットのパケット長を短縮することで、クロスバースイッチ８０２においてコピーパケットの転送に必要なリソースを低減化でき、ミラーリングが通常パケットの転送に与える影響を最小限に抑えることができる。
【実施例５】
【００３８】
実施例５について、図１２と図１３を参照して説明する。ここで、図１２は他のパケットコピー条件テーブルを説明する図である。図１３は中継パケットと他のコピーパケットのフレームフォーマットを説明する図である。なお、図１２は、ポート０に関するもののみ抜粋して記している。
【００３９】
図１２において、パケットコピー条件テーブル１１３Ｃは、フロー番号６０１、コピー有無６０２、パケット長６０３、オフセット６０８、レングス６０９、送信先６０５から構成される。ここで、図３、図４との対比から明らかなように、パケットコピー条件テーブル１１３Ｃに、オフセット６０８と、レングス６０９が新たに設けられている。オフセット６０８は、固定的にコピーするパケット長に加え、さらに別のフィールドを追加コピーする際に、その開始位置を定義する。レングス６０９は、オフセット６０８で定義された位置から、コピーするフィールドの長さを定義する。
【００４０】
図１３において、図１３（ａ）はパケット長が２７６バイトのときの中継パケットフォーマットである。図１３（ｂ）に示す１４４バイトのコピーパケットは、図１２のフロー１に対応し、図１３（ａ）に示す中継パケットの先頭から１２４バイト内にある「フレームヘッダ」と「ペイロード１」と、中継パケットの先頭から１５０バイトの位置から１６６バイトの位置までの１６バイト内のフィールドにある「ペイロード３」、およびフレームヘッダ、ペイロード１、ペイロード３の１４０バイトのデータから算出する４バイトのＣＲＣコードであるＦＣＳ２で構成される。
【００４１】
つまり、コピーパケットは中継パケットの先頭からパケット長６０３で定義された値よりＦＣＳ４バイトを減らした長さのフィールド、および、オフセット６０８で定義された長さの位置からレングス６０９で定義された先の位置までのフィールド、これらにＦＣＳ２を付加したパケットがコピーパケットとして生成される。
【００４２】
実施例５によりコピーパケットのパケット長を短縮することで、パケットの先頭部分だけでなく、パケットの任意フィールドのコピーが可能になる。
【実施例６】
【００４３】
実施例６について、図１４と図１５を参照して説明する。ここで、図１４は他のパケットコピー条件テーブルである。図１５は中継パケットと他のコピーパケットのフレームフォーマットを説明する図である。
【００４４】
図１４において、パケットコピー条件テーブル１１３Ｄは、フローの識別条件としてＶＬＡＮＩＤ６１０の列を追記している。フロー番号６０１は、中継パケットに付与されているＶＬＡＮＩＤの値を参照し、この値と一致するよう定義されている。また、パケットコピー条件テーブル１１３Ｄは、１フローあたりに複数のコピー条件を設定されている。
【００４５】
１フローあたりに複数のコピー条件が定義されているフローのコピーパケットの生成方法について説明する。パケット転送装置は、まず、パケット長６０３に定義されているの長さのデータを中継パケットの先頭からコピーする。ただし、複数のコピー条件が設定されているフローの場合、パケット長６０３は、テーブルの最上位の条件のみが適用される。次に、オフセット６０８で定義された位置からレングス６０９で定義された長さのデータのコピーが、テーブルの上位側にある条件から順次行われる。
【００４６】
これを、図１５を用いてさらに詳しく説明する。図１５において、中継パケットは、ＶＬＡＮＩＤ＝０００１が付与され、図１４に示すパケットコピー条件テーブル１１３Ｄのフロー１にヒットするパケットであるとする。図１５（ａ）は、パケット長が２７６バイトの時の中継パケットフォーマット、図１５（ｂ）に示す８２バイトのコピーパケットは、図１５（ａ）に示す中継パケットの先頭から６０バイト内にある「フレームヘッダ」と「ペイロード１」と、中継パケットの先頭から１００バイトの位置から１０４バイトの位置にある「ペイロード３」と、中継パケットの先頭から１１０バイトの位置から１０６バイトの位置にある「ペイロード５」と、中継パケットの先頭から１２０バイトの位置から１０８バイトの位置にある「ペイロード７」、およびフレームヘッダ、ペイロード１、ペイロード３、ペイロード５、ペイロード７の７８バイトのデータから算出する４バイトのＣＲＣコードであるＦＣＳ２で構成される。
【００４７】
つまり、コピーパケットは中継パケットの先頭からパケット長６０３で定義された値（単一フローに対して複数のコピー条件が定義されている場合、テーブルの最上位側に登録されているパケット長６０３の値）よりＦＣＳ４バイトを減らした長さのフィールド、および、オフセット６０８で定義された長さの位置からレングス６０９で定義された先の位置までのフィールド（単一フローに対して複数のコピー条件が定義されている場合は、上位側に登録されているコピー条件から順に適用）、およびこれらにＦＣＳを付加したパケットがコピーパケットとして生成される。
【００４８】
実施例６によりコピーパケットのパケット長を短縮することで、パケット内の複数かつ任意のフィールドのコピーが可能になる。なお、単一フローに対して複数のコピー条件が定義されている場合、テーブルの最上位側に登録されているパケット長６０３に正整数を定義し、他のコピー条件のレコードは、パケット長６０３＝０としも良い。
実施例６では、フローの識別条件としてＶＬＡＮＩＤを用いたが、ＶＬＡＮＩＤに限らず送信元ＭＡＣアドレスでも、送信元ＩＰアドレスでもよく、これらに限られない。
【実施例７】
【００４９】
図１６ないし図１９を参照して、実施例７を説明する。ここで、図１６はネットワークの構成を説明するブロック図である。図１７は他のパケットコピー条件テーブルである。図１８はアナライザフローリストを説明する図である。図１９はＳＷへの入力コマンドを説明する図である。
【００５０】
図１６において、ネットワーク１０００は、５台のＳＷ１００と、ＳＷ１００−１に接続された動画配信サーバ３００Ｐとネットワーク１０６−１と、ＳＷ１００−２に接続されたメールサーバ３００Ｍとネットワーク１０６−２と、ＳＷ１００−３に接続されたＷｅｂサーバ３００Ｗとネットワーク１０６−３と、ＳＷ１００−４のポート３に接続されたアナライザ１０８とから構成される。
【００５１】
ＳＷ１００−４のポート０には、ＳＷ１００−１が接続されている。ＳＷ１００−４のポート１には、ＳＷ１００−２が接続されている。ＳＷ１００−４のポート２には、ＳＷ１００−３が接続されている。ＳＷ１００−４のポート４には、ＳＷ１００−５が接続されている。さらに、ＳＷ１００−４には管理端末１５０が接続されている。
【００５２】
ＳＷ１００−１〜ＳＷ１００−５は、いずれもパケット転送装置である。ＳＷ１００−１は動画配信サーバとネットワーク１０６−１を、ＳＷ１００−２はメールサーバとネットワーク１０６−２を、ＳＷ１００−３はＷｅｂサーバとネットワーク１０６−３を収容する。
【００５３】
ここで、パケットのヘッダのＤＳＣＰ（Differentiated Services Code Point）フィールドに、動画配信サーバ発のパケットは「５」の値が、メールサーバ発のパケットは「６」の値が、各サーバのアプリケーションによって埋め込まれているとする。なお、通常はＤＳＣＰフィールドには「０」の値が埋め込まれている。ＳＷ１００−４は、ＳＷ１００−１、ＳＷ１００−２、ＳＷ１００−３をそれぞれポート０、ポート１、ポート２で収容する。ＳＷ１００−４は、さらに入力されるパケットのＤＳＣＰフィールドを参照することにより、各パケットをフロー１、フロー２、フロー３の３つのフローに振り分ける。ここでは、ＤＳＣＰフィールドが「５」である動画配信サーバ３００Ｐ発のパケットをフロー１、ＤＳＣＰフィールドが「６」であるメールサーバ３００Ｍ発のパケットをフロー２に、Ｗｅｂサーバ３００Ｗ発のパケットを含むその他のパケットをフロー３に割当てる。
【００５４】
ＳＷ１００−４が実装するミラーリング機能を用いて、ＳＷ１００−４を通過するすべてのパケットの送信先ＩＰアドレス（Destination IP Address、以下略してＤＩＰ）を調べるケースを考える。ＳＷ１００−４は、ポート０〜ポート２に入力されるパケットをコピーし、コピーパケットをポート３から出力する。アナライザ１０８は、コピーパケットを回収する。しかし、ポート０〜ポート２の総帯域がポート３の物理帯域を上回ると、コピーパケットの一部がＳＷ１００−４内で廃棄されてしまう。
【００５５】
ＤＩＰフィールドは、パケットの先頭（ＭＡＣヘッダ）から３０ｂｙｔｅの位置に存在する。つまりパケットの先頭から６０ｂｙｔｅ（ＦＣＳを除くイーサフレームの最短長）のみコピーすれば、各パケットのＤＩＰの回収には十分である。
【００５６】
動画トラフィックは、一般的にパケット長の長いパケットを多く含み、かつ広帯域を占有する。図１６のネットワーク１０００においては、動画配信サーバ３００Ｐから送信されるトラフィックの平均パケット長が１２００ｂｙｔｅである。
【００５７】
ＳＷ１００−４は、図１７に示す受信パケットコピー条件テーブルを実装する。図１７において、受信パケットコピー条件テーブル１１３Ｅは、ＤＳＣＰ６１１と、フロー番号６０１と、コピー有無６０２と、パケット長６０３と、送信先６０５とから構成される。ここでは、受信パケットコピー条件テーブル１１３Ｅは、フロー１、フロー２、フロー３をポート３にコピーし、さらにフロー１のコピーパケットはパケット長を６４ｂｙｔｅに短縮するよう設定してある。なお、図１７はポート０に関するもののみ抜粋して記している。
【００５８】
図１８において、アナライザフローリスト１８０は、アナライザ１０８が保持するフレーム数のカウントであり、ＤＩＰ１８１と、ｆｒａｍｅ ｃｏｕｎｔ１８２とから構成される。アナライザ１０８は、受信したコピーパケットのＤＩＰフィールドを解析して、ＤＩＰ１８１をサーチし、該当するレコードのｆｒａｍｅ ｃｏｕｎｔ１８２をインクリメントする。
【００５９】
図１９を参照して、管理端末のＣＵＩ（Character User Interface）を説明する。図１９において、１行目の「ｃｏｎｆｉｇｕｒｅ ＃」は、プロンプトである。「ｐｏｒｔ-ｍｉｒｒｏｒｉｎｇ １／０−２ ｔｏ １／３ ｒｅｃｅｉｖｅ」で、ミラー元のスロット番号／ポート番号と、ミラー先のスロット番号／ポート番号とを定義する。２行目でファイル名「ＴＥＳＴ１」を定義する。３行目の「ｃｏｎｆｉｇｕｒｅ（ＴＥＳＴ１） ＃」は、プロンプトである。「ｌｉｓｔ １」として、ミラー先を定義し「ｍｉｒｒｏｒ−ｐｏｒｔ １／３」、ＤＳＣＰフィールドに「５」を発見したとき、フレーム長を「ｆｒａｍｅ−ｌｅｎｇｔｈ ６４」に短縮して転送する。
【００６０】
これにより、フロー１が使用するミラートラフィックの約９５％｛（１２００−６４）／１２００｝を削減でき、ＳＷ１００−４内で廃棄されるパケットの数を十分に少なくすることができる。
【実施例８】
【００６１】
図２０ないし図２３および図２を参照して、実施例８を説明する。ここで、図２０は業務ＩＤ管理システムの構成を説明するブロック図である。図２１は業務ＩＤ管理システムで使用するイーサフレームのフォーマットである。図２２は他のパケットコピー条件テーブルを説明する図である。図２３はアナライザフローリストを説明する図である。図２４はＳＷへの入力コマンドを説明する図である。
【００６２】
図２０において、業務ＩＤ管理システム２０００は、業務ＩＤ管理システム統括サーバ３００Ｉと、４台のＳＷ１００と、Ａ社の業務ＩＤ管理サーバ３００Ａと、Ｂ社の業務ＩＤ管理サーバ３００Ｂと、Ｃ社の業務ＩＤ管理サーバ３００と、それらを接続するネットワーク１０６と、ＳＷ１００−７に接続されたアナライザ１０８とから構成される。
【００６３】
ＳＷ１００−７は、そのポート０にネットワーク１０６−４とＳＷ１００−８とを介して、業務ＩＤ管理サーバ３００Ａが接続されている。ＳＷ１００−７は、そのポート１にネットワーク１０６−５とＳＷ１００−９とを介して、業務ＩＤ管理サーバ３００Ｂが接続されている。ＳＷ１００−７は、そのポート２にネットワーク１０６−６とＳＷ１００−１０とを介して、業務ＩＤ管理サーバ３００Ｃが接続されている。ＳＷ１００−７は、そのポート３に、アナライザ１０８が接続されている。ＳＷ１００−７は、そのポート４に、業務ＩＤ管理システム統括サーバ３００Ｉが接続されている。ＳＷ１００−７は、さらに管理端末１５０が接続されている。
【００６４】
図２１において、業務ＩＤ管理システム２０００で使用するイーサフレームには、Ａ社の業務ＩＤ管理サーバ３００Ａ向けの場合、図２１（ａ）に示すようにパケットの先頭（ＭＡＣヘッダ）から２００ｂｙｔｅの位置に企業識別ＩＤコードが２ｂｙｔｅ、パケットの先頭から３００ｂｙｔｅの位置に個人識別ＩＤコードが４ｂｙｔｅ付加されている。同様にＢ社向けの場合、図２１（ｂ）に示すようにパケットの先頭から２５０ｂｙｔｅの位置に企業識別ＩＤコードが２ｂｙｔｅ、パケットの先頭から３５０ｂｙｔｅの位置に個人識別ＩＤコードが４ｂｙｔｅ付加されている。図２１（ｃ）において、コピーパケットのフレームフォーマットは、ＭＡＣヘッダ１４ｂｙｔｅ、企業ＩＤ２ｂｙｔｅ、個人ＩＤ４ｂｙｔｅ、パディング４０ｂｙｔｅ、ＭＡＣヘッダと企業ＩＤと個人ＩＤとパディングとから演算されるＦＣＳ３ ４ｂｙｔｅ、計６４ｂｙｔｅである。
【００６５】
図２２を参照して、ＳＷ１００−７が実装するパケットコピー条件テーブル１１３Ｆを説明する。図２２において、図１２のパケットコピー条件テーブル１１３Ｃとの対比から明らかなように、フロー番号６０１の代わりに、ＫＥＹＬＯＣ６１２、ＫＥＹＷＯＲＤ６１３のフィールドを新たに設けている。
【００６６】
入力されたパケットごとに、先頭からＫＥＹＬＯＣ６１２で定義された長さの位置のフィールドを参照し、ＫＥＹＷＯＲＤ６１３で定義された値と一致する場合はパケットをコピーする、一致しない場合はコピーしない。
【００６７】
実施例８では、Ａ社の企業識別ＩＤとして「Ａ１００」、Ｂ社の企業識別ＩＤとして「Ｂ１００」を割り振る。図２２では、Ａ社およびＢ社の企業識別ＩＤと個人識別ＩＤを収集するためのパケットコピー条件テーブル１１３Ｆを示している。
【００６８】
パケット長６０３には、ＭＡＣヘッダの１４バイトとＦＣＳの４バイトの和である１８バイトを定義してある。コピーパケットのパケット長は、企業識別ＩＤの２バイト、個人識別ＩＤの４バイトを加えてもイーサの最短パケット長である６４バイトを満たさなくなるため、図２１（ｃ）に示すコピーパケットは、個人識別ＩＤデータの後ろにパディング（詰め物）データを４０バイト付加している。なお、コピーパケットにフレームヘッダに関するデータの付加する必要がない場合は、パケット長６０３に０バイトを定義することもできる。パケット長が６４バイトに満たない場合は、コピーデータの後にパディングデータを付加する。
【００６９】
ここで、図２に戻って、実施例８での転送ユニット１０２と制御ユニット１０４の動作を説明する。図２において、転送ユニット１０２のメモリ制御部１０９は、メモリ読み出し管理テーブル２０１を備える。また、制御ユニット１０４のコピー条件テーブル１１３は、受信パケットコピー条件テーブル２０２と、送信パケットコピー条件テーブル２０３を備える。データ解析部１１０は、ポート０〜２から入力されたパケットのヘッダフィールドを参照して、各パケットの制御情報を解析する。データ解析部１１０は、解析結果を制御ユニット１０４へ通知する。また、各パケットデータそのものは、データ解析部１１０からメモリ制御部１０９を経由し、メモリ１０１へ格納される。
【００７０】
制御ユニット１０４は、制御情報比較部１１４で転送ユニット１０２から通知される制御情報の解析結果とコピー条件テーブル１１３との比較を行う。受信パケットをコピーするとき、データ解析部１１０から通知される受信ポート番号とフロー番号に基づいて、受信パケットコピー条件テーブル２０２を参照する。一方、送信パケットをコピーするとき、制御ユニット１０４で決定する送信ポート番号とフロー番号に基づいて、送信パケットコピー条件テーブル２０３を参照する。制御ユニット１０４は、受信ポート番号または送信ポート番号と一致した行のコピーの有無、パケット長、送信先を、比較結果としてメモリ制御部１０９に通知する。
【００７１】
具体的には、データ解析部１１０は、受信処理部から受け取ったパケットのヘッダを参照して、制御情報を解析する。データ解析部１１０は、解析結果を制御ユニット１０４に送信し、パケットをメモリ制御部１０９に送信する。制御ユニット１０４は、コピー条件テーブルから検索条件を取得し、この検索条件をメモリ制御部１０９に送信する。メモリ制御部１０９は、データ解析部１１０から受け取ったパケットを参照して、検索条件に基づいて解析する。メモリ制御部１０９は、解析結果に基づいて、パケット長を短縮したコピーパケットのレコードをメモリ呼出管理テーブルに生成する。
【００７２】
図２３において、アナライザ１０８が収集するアナライザフローリスト２４０は、企業ＩＤ２４１と、個人ＩＤ２４２と、ｆｒａｍｅ ｃｏｕｎｔ２４３とから構成される。アナライザ１０８は、ミラーパケットを受信したとき、企業ＩＤ２４１と個人ＩＤ２４２とをキーにアナライザフローリスト２４０を検索し、該当するレコードのｆｒａｍｅ ｃｏｕｎｔ２４３をインクリメントする。
【００７３】
図２４を参照して、ＳＷ１００−７の管理者が図２２に示すテーブルを設定する際に、管理端末に入力するコマンドを説明する。図２４において、１行目の「ｃｏｎｆｉｇｕｒｅ ＃」は、プロンプトである。「ｐｏｒｔ-ｍｉｒｒｏｒｉｎｇ １／０−２ ｔｏ １／３ ｔｒａｎｓｍｉｔ」で、ミラー元のスロット番号／ポート番号と、ミラー先のスロット番号／ポート番号とを定義する。２行目でファイル名「ＴＥＳＴ２」を定義する。３行目と４行目の「ｃｏｎｆｉｇｕｒｅ（ＴＥＳＴ２） ＃」は、プロンプトである。「ｌｉｓｔ １」「ｌｉｓｔ ２」として、ミラー先を定義し「ｍｉｒｒｏｒ−ｐｏｒｔ １／３」、先頭から「２００」ｂｙｔｅの位置に「Ａ１００」を発見したとき、先頭から（ｆｒａｍｅ−ｌｅｎｇｔｈ １８）−４ｂｙｔｅと、「ｏｆｆｓｅｔ ２００」ｂｙｔｅの位置からの「２」ｂｙｔｅと、「ｏｆｆｓｅｔ ３００」ｂｙｔｅの位置からの「４」ｂｙｔｅをコピーする。これらコピーフレームはＦＣＳ４ｂｙｔｅを加えてもフレーム長が６４ｂｙｔｅに満たないためパディング４０ｂｙｔｅを追加し、さらにＦＣＳ４ｂｙｔｅを付加して転送する。なお、「ｌｉｓｔ１」と「ｌｉｓｔ２」のようにミラー先（ｍｉｒｒｏｒ−ｐｏｒｔ １／３）とフロー検出条件（先頭から「２００」ｂｙｔｅの位置に「Ａ１００」を発見して場合）が同一であるときは、コピーフレームは１つにまとめられ、「ｆｒａｍｅ−ｌｅｎｇｔｈ」で定義された値は最初に登録されたｌｉｓｔ１のみ有効となる。なお、５行目、６行目についても同様である。
実施例８に拠れば、ミラーリング条件をパケットデータで定義できる。
【図面の簡単な説明】
【００７４】
【図１】パケット転送装置のブロック図である。
【図２】パケット転送装置の転送ユニットと制御ユニットの詳細ブロック図である。
【図３】受信パケットコピー条件テーブルを説明する図である。
【図４】送信パケットコピー条件テーブルを説明する図である。
【図５】中継パケットとコピーパケットのフレームフォーマットを説明する図である。
【図６】メモリ読み出しテーブルを説明する図である。
【図７】転送ユニットと制御ユニットと回線インタフェースとの詳細ブロック図である。
【図８】パケットコピー条件テーブルを説明する図である。
【図９】他のパケットコピー条件テーブルを説明する図である。
【図１０】さらに他のパケットコピー条件テーブルを説明する図である。
【図１１】分散型スイッチング方式のパケット転送装置のブロック図である。
【図１２】他のパケットコピー条件テーブルを説明する図である。
【図１３】中継パケットと他のコピーパケットのフレームフォーマットを説明する図である。
【図１４】他のパケットコピー条件テーブルを説明する図である。
【図１５】中継パケットと他のコピーパケットのフレームフォーマットを説明する図である。
【図１６】ネットワークの構成を説明するブロック図である。
【図１７】他のパケットコピー条件テーブルである。
【図１８】アナライザフローリストを説明する図である。
【図１９】ＳＷへの入力コマンドを説明する図である。
【図２０】業務ＩＤ管理システムの構成を説明するブロック図である。
【図２１】業務ＩＤ管理システムで使用するイーサフレームとコピーフレームのフォーマットである。
【図２２】パケットコピー条件テーブルを説明する図である。
【図２３】アナライザフローリストを説明する図である。
【図２４】ＳＷへの入力コマンドを説明する図である。
【符号の説明】
【００７５】
１００…パケット転送装置、１０１…メモリ、１０２…転送ユニット、１０３…ＣＰＵ、１０４…制御ユニット、１０５…回線インタフェース、１０６…ネットワーク、１０８…アナライザ、１０９…メモリ制御部、１１０…データ解析部、１１１…受信処理部、１１２…送受信ポート部、１１３…コピー条件テーブル、１１４…制御情報比較部、１１５…送信処理部、１５０…管理端末、１８０…アナライザフローリスト、２０１…メモリ読み出し管理テーブル、２０２…受信パケットコピー条件テーブル、２０３…送信パケットコピー条件テーブル、２４０…アナライザフローリスト、３００…サーバ、８００…パケット転送装置、８０２…クロスバースイッチ、８０１…回線インタフェース、８０５…メモリ、８０６…転送ユニット、８０７…制御ユニット、８０８…ＣＰＵ、８０９…送受信ポート部、１０００…ネットワーク、２０００…業務ＩＤ管理システム。
【図１】
2009033719.tif 000003
【図２】
2009033719.tif 000004
【図３】
2009033719.tif 000005
【図４】
2009033719.tif 000006
【図５】
2009033719.tif 000007
【図６】
2009033719.tif 000008
【図７】
2009033719.tif 000009
【図８】
2009033719.tif 000010
【図９】
2009033719.tif 000011
【図１０】
2009033719.tif 000012
【図１１】
2009033719.tif 000013
【図１２】
2009033719.tif 000014
【図１３】
2009033719.tif 000015
【図１４】
2009033719.tif 000016
【図１５】
2009033719.tif 000017
【図１６】
2009033719.tif 000018
【図１７】
2009033719.tif 000019
【図１８】
2009033719.tif 000020
【図１９】
2009033719.tif 000021
【図２０】
2009033719.tif 000022
【図２１】
2009033719.tif 000023
【図２２】
2009033719.tif 000024
【図２３】
2009033719.tif 000025
【図２４】
2009033719.tif 000026