JPWO2008149415A1 - パケットスイッチ装置 - Google Patents

パケットスイッチ装置 Download PDF

Info

Publication number
JPWO2008149415A1
JPWO2008149415A1 JP2009517634A JP2009517634A JPWO2008149415A1 JP WO2008149415 A1 JPWO2008149415 A1 JP WO2008149415A1 JP 2009517634 A JP2009517634 A JP 2009517634A JP 2009517634 A JP2009517634 A JP 2009517634A JP WO2008149415 A1 JPWO2008149415 A1 JP WO2008149415A1
Authority
JP
Japan
Prior art keywords
memory
packet
sequence number
check management
switch device
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
JP2009517634A
Other languages
English (en)
Other versions
JP4890613B2 (ja
Inventor
幹太 山本
幹太 山本
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2008149415A1 publication Critical patent/JPWO2008149415A1/ja
Application granted granted Critical
Publication of JP4890613B2 publication Critical patent/JP4890613B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/68Pseudowire emulation, e.g. IETF WG PWE3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/565Sequence integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

パケットスイッチ装置は、入力パケットの宛先を決定して出力パケットとして出力するフォワーディング処理部(112−n)は、入力パケットがシーケンシャルな巡回番号を持つか否かのチェックを行うイングレス・インターフェース・カード(115)と、シーケンシャルな巡回番号を生成して出力パケットに付与するエグレス・インターフェース・カード(116)とを備えており、イングレス・インターフェース・カード及びエグレス・インターフェース・カードはそれぞれ、巡回番号のチェック管理用メモリ(407、507)に対する1回のアクセス処理を連続する第1及び第2のメモリアクセスポイント(n, n+1)にて行うことにより2回に分割して行うための第1のメモリインターフェース部(408, 508)と第2のメモリインターフェース部(409, 509)とを備えており、それによりフォワーディング処理部による一回のテーブルアクセスで許容されるクロックサイクル数以内で必要な処理を完了可能にする。

Description

本発明はパケットスイッチ装置に関し、特にパケットスイッチ装置におけるフォワーディング処理部において、シーケンシャルな巡回番号のチェック管理、生成管理に適用されるパケットスイッチ装置に関する。さらに詳細には、本発明は、一般的なパケットスイッチ装置におけるフォワーディング処理部において、シーケンシャルな巡回番号のチェック管理、生成管理に適用される。具体的には、スード・ワイヤ(RFC4385で規定されている)の16ビットシーケンス番号への適用などが挙げられる。
近年、パケットスイッチ装置におけるフォワーディング処理部には、ネットワークの統合化の要望を受けて、L2(レイヤ2スイッチ)、 VLAN(仮想ラン)、MPLS(マルチプロトコル・ラベル・スイッチング)、PW(スード・ワイヤ、Pseudo Wire)、IP(インターネット・プロトコル)など多種多様なフォワーディング処理を同時に実現することが求められてきている。
その実現手法としては、高速性に優位性をもつFPGA(フィールド・プログラマブル・ゲートアレイ)、 LSI(大規模集積回路)などのハードウエアによるフォワーディング手法、柔軟性に優位性をもつソフト処理によるフォワーディング手法、その中間の、NPU(ネットワーク・プロセッサ・ユニット)などのプログラマブル可能なチップによるフォワーディング手法など、様々な手法がある。これらの様々な手法において、求められる基本性能要件は、高スループット、柔軟性、プログラマビリティである。
本発明では、実現手法によらず、パケットスイッチ装置におけるフォワーディング処理部の高スループット、柔軟性、プログラマビリティを実現するために、フォワーディング部に含まれるメモリのルックアップの性能に着目した。
パケットスイッチ装置におけるフォワーディング処理部の実現手法によらず、フォワーディング処理部では、必ずテーブル・ルックアップ処理が必要である。フォワーディング処理部におけるテーブルは、フォワーディング処理部を構成するチップの外部又は内部に配置され、入力パケット毎にパケットのヘッダ情報、受信ポート番号などをアドレスとして、一連のテーブルを参照(テーブル・ルックアップ)していき、通常のパケット処理を行う。この場合、入力パケットのスループットを100%(ワイヤスピード処理)にするためには、ある限られた時間間隔内に各々のテーブル参照を完了させる必要がある。
もし、一つのテーブル・ルックアップにおいて、そのテーブル・メモリに対するアクセスが可能な最大のアクセスレート以上のレートでパケットが入力されたら、スループットを100%には出来ない。この理由により、一回のパケットのテーブル・ルックアップを行うために必要なクロックサイクル数は、ある一定の範囲内に抑える必要がある。
従来の技術として特許文献1に記載のものがある。この文献では、フォワーディングテーブルのうち、特に負荷が重い、もしくは、あらかじめ予想されて設定されている閾値を上回るトラヒックのアドレスに関して、詳細なテーブルに自動的に展開する技術が開示されているが、一回のパケットのテーブル・ルックアップをするために必要なクロックサイクル数を、ある一定の範囲内に抑えることは開示していない。
特開2005-117214号公報
図3は本発明が解決しようとする課題を説明するための従来のシーケンス番号メモリとフォワーディング処理部との関係を示すブロック図である。図3において、31はシーケンス番号メモリ、32はメモリインタフェース部、33はフォワーディング処理部である。PW等のパケットスイッチ装置においては、音声データや音楽データなど、パケットの順番が重要であり、パケット順序が狂うと意味を成さないことがある。このパケット順序を維持するためにシーケンス番号がコントロール付きの各仮想ワイヤ(PW)毎に割り当てられている(図6参照)。図3においては、各PWのアドレス(1)、(2)、…(n)に対応した現在のシーケンス番号0x0005、0x007C、…、0x0EA5がシーケンス番号メモリ31に格納されている。なお、上記のシーケンス番号中の先頭の“0x”は、周知のように、その後の数値が16進数であることを表している。
フォワーディング処理部33では、n-1(nは正の整数)番目のフォワーディング処理の次にn番目のアクセスポイントにてシーケンス番号メモリ31をアクセスし、メモリインタフェース部32はそのアクセスに対応して、図示のように(1)リード処理、(2)加算処理、(3)比較処理、(4)ラウンドアップ処理、及び(5)ライトアップ処理を行う。この中で、処理(3)及び(4)は以下に述べるようにシーケンス番号がある特定の値になったときのみ実行される。
フォワーディング処理部33は、メモリインタフェース部32による処理結果に基づきフォワーディング処理を行って出力パケットとして出力する。
通常のフォワーディング処理部33によるシーケンス番号メモリ31の参照というテーブル参照行為の第1のステップは、(1)シーケンス番号メモリ31に対するリード処理である。これは、入力パケットのヘッダ情報をアドレスとして、シーケンス番号メモリ31に格納されているシーケンス番号を読み出す処理である。この処理は、入力パケット毎に行われるので、入力パケットのレートが高ければ高いだけ、シーケンス番号メモリ31に対するアクセスレートも高いものが要求される。一般的にシーケンス番号メモリ31の帯域の高速化は、シーケンス番号メモリ31の動作クロック数の高速化、データビット数の増加などにより対応する。
ここで、課題として取り上げるのは、シーケンス番号メモリ31からのリード処理だけで処理が完了せずに、読み出したシーケンス番号を元に、ある判定処理などが必要で、その判定結果などを読み出したメモリ空間と同一のメモリ空間にライトバックする必要がある場合などで、上記のように「ワイヤスピード処理のスループットを100%にするために、ひとつのリード処理で守らなければならない消費クロック数」以内で処理が完遂しない場合である。
具体的には、スード・ワイヤ(PW)・パケットにてサポートしているコントロール・ワードにて定義されている16ビットシーケンス番号をPWフレームに付加する処理において、メモリインタフェース部32に示されるように、(1)シーケンス番号メモリ31内に保持しているシーケンス番号を読み出すリード処理を行い、(2)読み出したシーケンス番号に1を加算する加算処理を行い、(5)加算結果を読み出したメモリ空間と同一のメモリ空間にライトバックする、という一連の処理を行うが、RFC 標準に準拠した処理では、シーケンス番号= 0xFFFF の次は、0xFFFF +1=0x0000 ではなく、0xFFFF +2=0x0001にし(ここでは、ラウンドアップ処理と呼ぶ)、0x0000 をスキップしなければならない。スード・ワイヤのRFC 標準では、シーケンス番号= 0x0000 は、「シーケンス番号は未使用」という定義になっているためである。この場合は、(1)リード処理、(3)比較処理、(2)又は(4)の加算処理もしくはラウンドアップ処理、そして(5)ライトバック処理の一連の処理が必要であるが、これらの処理を一回のテーブルアクセスで許容されるクロックサイクル数以内で収めることは非常に難しい。
本発明の目的はパケットスイッチ装置におけるフォワーディング処理部において一回のテーブルアクセスで許容されるクロックサイクル数以内で必要な処理を完了可能にすることにある。
上記目的を達成するために、本発明の第1の態様により提供されるものは、パケットスイッチ装置内のフォワーディング処理部は、入力パケットがシーケンシャルな巡回番号を持つか否かのチェックを行うイングレス・インタフェース・カードと、シーケンシャルな巡回番号を生成して出力パケットに付与するエグレス・インタフェース・カードとを備えていることを特徴とするパケットスイッチ装置である(請求項1)。
本発明の第2の態様によれば、第1の態様において、イングレス・インタフェース・カードは、巡回番号のチェック管理用メモリと、そのチェック管理用メモリに対する1回のアクセス処理を連続する第1及び第2のメモリアクセスポイントにて行うことにより2回に分割して行うための第1のメモリインタフェース部と第2のメモリインタフェース部とを備えており、第1のアクセスポイントにて第1のメモリインタフェース部による処理の後に、フォワーディング処理部は第1のメモリインタフェース部による処理結果の補正の要否を判定し、第2のメモリインタフェース部はフォワーディング処理部により補正が必要と判定された場合に、第2のアクセスポイントにてチェック管理用メモリのアドレス空間から読み出されたシーケンス番号を補正してチェック管理用メモリのアドレス空間に書き込むようにした(請求項2)。
本発明の第3の態様によれば、第2の態様において、第1のメモリインタフェース部は、第1のアクセスポイントにて、入力パケットのヘッダ情報をアドレスとしてチェック管理用メモリの該アドレスに対応するアドレス空間をアクセスしてチェック管理用メモリに格納されている対応するシーケンス番号を読み出す読み出し処理と、該読み出し処理により読み出されたシーケンス番号に1を加算する加算処理と、該加算処理による加算結果をチェック管理用メモリのアドレス空間にライトバックする処理とを連続して行う演算部を備えている(請求項3)。
本発明の第4の態様によれば、第2の態様において、フォワード処理部は、入力パケットの受信ポートがスード・ワイヤ用であるか否かを判定するための受信ポート属性テーブルを更に備え、入力パケット毎に付与されている入力物理ポート情報をアドレスとして受信ポート属性テーブルを参照し、受信ポートがスード・ワイヤ用である場合にのみチェック管理用メモリに対するアクセスを実行するようにした(請求項4)。
本発明の第5の態様によれば、第4の態様において、フォワード処理部は、入力パケットのヘッダ情報をアドレスとして入力パケットが仮想フレームのコントロール・ワードを持つか否かのチェックを行うためのシーケンス番号有無テーブルを更に備え、入力パケットがコントロール・ワードを持つと判定された場合にのみ、チェック管理用メモリに対するアクセスを実行するようにした(請求項5)。
本発明の第6の態様によれば、第5の態様において、シーケンス番号有無テーブルは、コントロール・ワードがシーケンス番号を含むか否かのチェックを行う機能をさらに備えており、コントロール・ワードがシーケンス番号を含んでいると判定された場合にのみ、チェック管理用メモリに対するアクセスを実行するようにした(請求項6)。
本発明の第7の態様によれば、第2の態様において、第2のメモリインタフェース部はフォワーディング処理部により補正が必要と判定された場合に、第2のアクセスポイントにてチェック管理用メモリのアドレス空間から新たに読み出されたシーケンス番号を補正してチェック管理用メモリのアドレス空間に書き込むようにした(請求項7)。
本発明の第8の態様によれば、第2の態様において、第1のメモリアクセスポイントと、フォーワーディング処理部と、第2のメモリアクセスポイントとをシーケンシャルに配置したパイプライン構成を備えている(請求項8)。
本発明の第9の態様によれば、第2の態様において、フォワード処理部が第1のメモリインタフェース部による処理結果に続き、フォワーディング処理部で入力パケットのシーケンス番号が不連続であると検出された場合に、第2のメモリインタフェース部はチェック管理用メモリに不連続な入力パケットのシーケンス番号をチェック管理用メモリに書き込むようにした(請求項9)。
本発明の第10の態様により、エグレス・インタフェースt・カードもイングレス部とほぼ同じ構成を備えている。ただし、エグレス・インタフェース・カードでは本発明の第9の態様のように、フォワーディング処理部で入力パケットのシーケンス番号が不連続であると検出された場合に、第2のメモリインタフェース部はチェック管理用メモリに不連続な入力パケットのシーケンス番号をチェック管理用メモリに書き込むことはせず、常に連続的なシーケンス番号をチェック管理用メモリに書き込む(請求項12〜20)。
上記課題を解決するための手段をまとめると、以下のようになる。
上記課題は、一回のテーブル アクセスにて、読み出し 処理、比較処理、加算処理もしくはラウンドアップ処理、ライト処理の一連の処理を完遂しようとすると、許容クロック数をオーバする、ということである。本発明では、この課題を解決するために、メモリアクセス処理を2回に分割し、一回目のテーブルアクセスで読み出し処理、加算処理、ライト処理を行い、続くフォワーディング処理部にてシーケンス番号の補正処理判断を行い、次の2回目のテーブルアクセスにて、ライト 処理を行うようにした。
本発明により、一箇所のテーブルアクセスにおける消費クロックサイクル数を減らすことができ、かつ同一シーケンス番号を利用するパケットが連続して入力された場合であっても、高スループットを維持することができる。
本発明の実施例1によるパケットスイッチ装置の概略構成を示すブロック図である。 図1に示したパケットスイッチ装置内のパケット・フォワーディング部の構成を示すブロック図である。 本発明が解決しようとする課題を説明するための従来のパケット・フォワーディング部の構成を示すブロック図である。 本発明の実施例1によるパケット・フォワーディング部のイングレス・インタフェース・カードの構成の一部を示すブロック図である。 本発明の実施例1によるパケット・フォワーディング部のイングレス・インタフェース・カードの構成の他の一部を示すブロック図である。 本発明の実施例1によるパケット・フォワーディング部のエグレス・インタフェース・カードの構成の一部を示すブロック図である。 本発明の実施例1によるパケット・フォワーディング部のエグレス・インタフェース・カードの構成の一部を示すブロック図である。 本発明の実施例で用いられるスード・ワイヤ・フレームの構成を示す図である。 本発明の実施例1におけるフォワーディング処理部でのシーケンス番号認識方法を説明するための図である。 本発明の実施例1における補正ライト処理を説明するための図である。 本発明の実施例1における新番号ライト処理を説明するための図である。
符号の説明
401 CPU制御部
402 CPUインタフェース
403 第1のパケット・インタフェース
404 仮想シーケンス
405 受信ポートテーブル
406 シーケンス番号テーブル
407 シーケンス番号チェック管理用テーブル
408 第1のメモリ・インタフェース部
409 第2のメモリ・インタフェース部
410 第2のパケット・インタフェース部
401 CPU制御部
502 CPUインタフェース
503 第1のパケット・インタフェース
505 仮想シーケンス
505 受信ポートテーブル
506 シーケンス番号テーブル
507 シーケンス番号チェック管理用テーブル
508 第1のメモリ・インタフェース部
509 第2のメモリ・インタフェース部
510 第2のパケット・インタフェース部
図1は本発明の一実施例によるパケットスイッチ装置の概略構成を示すブロック図である。図1において、パケットスイッチ装置は、大きくインタフェース・カード11、12、…1n とパケット・スイッチ・カード114に分けられる。インタフェース・カード11、12、…1nはそれぞれ、物理層111−1、111−2、…111−nと、パケット・フォワーディング処理部112−1、112−2、…112nと、トラック管理部113−1、113−2、113−nとを備えている。
本発明はインタフェース・カード11、12、…1nの各々内のパケット・フォワーディング処理部112−1、112−2、…112nの改良に関する。図1の下側にパケット・フォワーディング処理部112−nの概略構成が示されている。図示のように、パケット・フォワーディング処理部112−nは、回線からの入力パケットを受信して処理するイングレス115と、これに接続されたシーケンス番号チェックテーブル116と、パケットスイッチカード114から入力されるパケットを受信し処理するエグレス117と、これに接続されたシーケンス番号生成テーブル118とを備えている。
回線からの入力パケット又はパケットスイッチカード114から出力されるパケットの中には、音声データや音楽データなど、パケットの順序が重要な要素となっているパケットがある。これらのパケットは、入力パケットが正しい順序で入力されているかのチェック、及び出力パケットを正しい順序で出力するためのパケットの生成、が必要である。
イングレス115における処理では、回線からの入力パケットのヘッダ情報を元に行き先判定、優先度判定などのフォワーディング判定がなされる。本発明の一実施例では、イグレス115における処理にシーケンス番号チェックテーブル116を参照するシーケンス番号のチェック機能を配置し、エグレス116における処理でシーケンス番号生成テーブル117を参照するシーケンス番号の生成機能を配置することにより、シーケンス番号の制御処理の負荷の分散を図った(請求項1)。
入出力のポートの属性によっては、異なる下位レイヤのプロトコルに対応する必要もあり、OC-n 系インタフェースでは、ジェネリック・フレーミング・プロセジャー (GFP), ポイント・ツー・ポイント・プロトコル(PPP )などのカプセル化処理や、MPLS カプセル化、PW カプセル化、またその逆のMPLS デカプセル化、PW デカプセル化なども、このフォワーディング処理部112−nにて実施される。他のフォワーディング処理部112-1、112−2、…においても同様の動作をする。
図2は図1に示したパケットスイッチ装置内のパケット・フォワーディング部の構成を示すブロック図である。図2において、パケット・フォワーディング処理部21は図1に示したフォワーディング処理部112−1、112−2、…112−nの一つを表している。パケット・フォワーディング処理部21は、メモリ・インタフェース部22−1、22−2、…22−nと、これらのインタフェース部に接続されたパイプライン部23とを備えており、メモリ・インタフェース部22−1、22−2、…22−nには外部メモリ24−1、24−2、24−nがそれぞれ接続されている。パイプライン部23は、メモリ・アクセス・ポイント−1、フォワーディング処理部−1、メモリ・アクセス・ポイント−2、フォワーディング処理部−2、…メモリ・アクセス・ポイント−1n、フォワーディング処理部−nがパイプライン形式で結合されている。外部メモリ24−1、24−2、24−nには、各種フォワーディングテーブル情報が格納されている。メモリ・インタフェース部22−1、22−2、…22−nは外部メモリ24−1、24−2、24−nへのアクセスを制御・調整管理する。パケットが入力されるパイプライン部23内のメモリ・アクセス・ポイントは、メモリアクセスを実施する。パイプライン部23内のフォワーディング処理部は、そのテーブル 読出し結果を元に各種処理(行き先情報取得、優先度情報取得、透過/廃棄情報取得など)を実施する。外部メモリ24−1、24−2、24−nは必ずしも外部メモリである必要はなく、パケット・フォワーディング処理部21内に設けてもよい。
メモリ・インタフェース部22−1、22−2、22−nは、パイプラインの各メモリ・アクセス・ポイント部からのアクセス要求を受けて、メモリアクセスへの調整処理および簡単な演算処理を行っている。パインプライン部23では、メモリ・アクセス・ポイント部とフォワーディング処理部が一組となって、何組かがシーケンシャルに配置される(請求項8)。これは、フォワーディング処理の負荷が重い場合に、次のメモリ・アクセス・ポイント部までに処理が完了できない場合などに、その次のメモリ・アクセス・ポイント部での実施を可能とするアーキテクチャである。
ここでは、まず、スード・ワイヤ(PW)の16ビット シーケンス番号のチェック管理の実施例を示す。
図4A及び図4Bは本発明の一実施例によるパケット・フォワーディング処理部のイングレス・インタフェース・カードの構成を示すブロック図である。図4において、イングレス・インタフェース・カードは、CPU制御部401と、CPUインタフェース部402と、パケット・インタフェース部403と、PWシーケンス番号判定ブロック404と、受信ポート属性テーブル405と、シーケンス番号有無テーブル406と、シーケンス番号チェック管理用メモリ407と、第1のメモリ・インタフェース部408と、第のメモリ・インタフェース部409と、フォワーディング処理部410とを備えている。
受信ポート属性テーブル405は、受信ポート番号がスード・ワイヤ(PW)用フレームに対応するものか否かを判定するために用いられる。図示例では、受信ポート(1)はスード・ワイヤ用、受信ポート(2)は非スード・ワイヤ用、受信ポート(3)はスード・ワイヤ用、等である。
シーケンス番号有無テーブル406は、受信フレームのヘッダ情報(ラベル)とシーケンス番号有無との対応関係を格納している。図示例ではラベル(1)はシーケンス番号有り、ラベル(2)もシーケンス番号有り、ラベル(3)はシーケンス番号無し、等である。
次に図4A及び図4Bに示したイングレス・インタフェース・カードの動作を説明する。パケット・インタフェース部403に入力されるパケットは、受信ポート(Rec. Port (Pi))、スード・ワイヤ・ヘッダ(PW Hdr (Li))、コントロール・ワード・ヘッダ(CW Hdr)、及びデータからなるフレームである。回線側からスード・ワイヤ・フレームが入力される。ここでは、インタフェース・カード が複数の物理ポートを収容していることを想定しており、必ずしも全てのポートがスード・ワイヤ・フレーム を受信するポートとは限らない。そのため、受信ポート情報を元に、スード・ワイヤ・フレーム かどうかを判別する必要がある。図4Aの受信ポート属性テーブル405がこの判別をする(請求項4)。受信ポート属性テーブル405の参照結果がスード・ワイヤ・フレーム である場合、次に判別しなければならないのは、そのスード・ワイヤ・フレーム がコントロール・ワードを持っているかどうかである。コントロール・ワードを持っていれば、そのフレームはシーケンス番号を持っている。即ち、そのフレームはシーケンスが重要な音楽データや音声データ等である。コントロール・ワードを持っているかどうかは、入力スード・ワイヤ・フレーム のラベル値(ヘッダ情報)をキーにして、シーケンス番号有無テーブル406を参照して判別することができる(請求項5)。
図6はスード・ワイヤ・フレーム フォーマットを示す図である。図6の(a)のようにコントロール・ワードなしのスード・ワイヤ・フレームにはシーケンス番号がない。図6の(b)又は(c)に示すようにコントロール・ワード付のスード・ワイヤ・フレームにはシーケンス番号が含まれている。
スード・ワイヤ・フレーム フォーマットの構成例を以下に記載の表に示す。
Figure 2008149415
受信ポート属性テーブル405及びシーケンス番号有無テーブル506による判定処理により、入力パケットがスード・ワイヤ・フレームで且つシーケンス番号 を持つと判定された場合、そのシーケンス番号が連続しているかどうかをチェックする必要がある。例えば音楽データなどで、シーケンス番号が不連続であったり重複していると音質の劣化につながるからである。元々連続のシーケンス番号が付与されたパケットがイングレス・インタフェース・カードに入力される時点で不連続なシーケンス番号のパケットになる理由としては、例えば、伝送路上でのパケットの輻輳や通信状態の劣化等によりパケットが欠落したりパケットの順序が入れ替わったりすること等がある。シーケンス番号が正しい順番で入力されたかのチェックのために、まず、入力スード・ワイヤ・フレームの現在のシーケンス番号情報を取得する必要があるが、これは、入力スード・ワイヤ・フレームのラベル値(ヘッダ情報)をキーにして、シーケンス番号チェック管理用テーブル407を参照して取得することができる(請求項6)。なお、シーケンス番号チェック管理用テーブル407に格納されるシーケンス番号の初期値としてはシーケンス番号の最初の値が予め設定されている。
シーケンス番号チェック管理用テーブル407に対するアクセス時に、1回目のメモリ・アクセス・ポイントからシーケンス番号チェック管理用テーブル407に対するアクセス要求に応答して、(1)読み出し処理、(2)加算処理、(3)ライト・バック処理、の3つの一連処理を、メモリ・インタフェース部408にて実施する。読み出し処理では、入力スード・ワイヤ・フレーム のラベル値(ヘッダ情報)をキーにして、シーケンス番号チェック管理用メモリ407からシーケンス番号を読み出す。加算処理では読み出したシーケンス番号に1を加算する。ライト・バック処理では加算結果を読み出したアドレス空間に書き込む。
これら3つの処理内容は、不可分でなくてはならない。つまり、これら3つの処理の間に、他のメモリ・アクセス・ポイントからのアクセス要求処理を間に盛り込むことはできないことに注意する(請求項3)。これは、たとえば、(1)から(3)の処理の間に、他のメモリ・アクセス・ポイントからの書込み要求(例えば不連続を検出して新しいシーケンス番号をライトする)に応答してしまうと、加算処理(2)により得られた新しい値がメモリに反映されず、不整合が生じてしまうからである。
次に(1)の処理により読出したシーケンス番号に対する加算処理だが、発明が解決しようとする課題の欄でも説明したように、スード・ワイヤのコントロール・ワードの16ビット・シーケンス番号 は、RFC標準に準拠した処理では、シーケンス番号 = 0xFFFF の次は、0x0000 ではなく、0x0001 にし(ここでは、ラウンドアップ 処理と呼ぶ)、0x0000 をスキップしなければならない。スード・ワイヤ のRFC 標準では、シーケンス番号 = 0x0000 は、『シーケンス番号は未使用』という定義になっているためである。
本来であれば、上記(1)読み出し処理、(2)加算処理、(3)ライト・バック処理、において、(2)と(3)の間に、0x0000 との比較処理、0x0001 へのラウンドアップ処理も、不可分な一連の処理として盛り込めればよいが、それだけの処理を不可分の処理としてしまうと、長い間メモリ インタフェース を占有してしまい、パケットのスループットを低下させてしまう。通常、メモリ・インタフェースのパケット処理性能は、動作周波数 ÷ (応答が得られるまでのサイクル数)、にて算出される。例えば、100MHz ÷ 4cycle = 25Mpps(パケット/秒)となる。連続して到着するバック・トゥ・バック・パケットの場合、この4サイクル以内にメモリ・インタフェース部408での処理が完了しなければ、5サイクルかそれ以上のサイクル数となり、物理的なメモリ応答性能の最大性能を利用することができなくなり、スループットが低下する、という現象となる。
本発明では、「0x0000 との比較処理」、「0x0001 へのラウンドアップ処理(補正処理)」といった処理をが、メモリインタフェース部408で行うと、メモリ・インタフェース部408における処理のサイクル数が増大することに着目し、これらの処理を、フォワーディング処理部410にて行い、その比較の結果、補正が必要であれば次のメモリ・アクセス・ポイント部(n+1)にて、補正処理を実施することにした(請求項2)。
本来ならば、不可分な処理として、一つのメモリ・インタフェース部408へのアクセス要求で閉じなければならないが、これから説明するように、補正判断処理をフォワーディング処理部410で行い、補正ライト・バック処理を次ぎのメモリ・アクセス・ポイント(n+1)で行うことにより、一つのメモリ・アクセス・ポイントへの負荷の分散を可能としている。
図7は本発明の実施例1におけるフォワーディング処理部でのシーケンス番号認識方法を説明するための図である。図7において、まず、シーケンス番号チェック管理用メモリ407から読み出すシーケンス番号は、16ビット よりも大きいと想定している(ここでは、32ビット読み出し値)。一番上のケースを例に取ると、シーケンス番号チェック管理用メモリ407からの読出し値が0x0000 0000 の場合、メモリ・インタフェース部408ではシーケンス番号チェック管理用メモリ407からの読出し値に対して”+1”加算処理が行われ、加算結果である0x0000 0001 の値がシーケンス番号チェック管理用メモリ407の読み出したメモリ空間と同一のメモリ空間へライト・バックされる。それと同時に、フォワーディング処理部410へは、上記加算結果である0x0000 0001 の値が応答されてくる。フォワーディング処理部では、応答値が0x0001 0000 よりも小さい値であることから、補正加算処理は不必要である事、補正ライト処理は不要であること、を認識し(図3のフォワーディング処理部32を参照)、応答値の下位16ビット をシーケンス番号として認識する。この場合、0x0001 となる。このメモリ読出し値の0x0001 と入力パケットのシーケンス番号値を比較し、一致すれば入力パケットは「連続」であると判定されてパケットを透過し、不一致であれば入力パケットは「不連続」であると判定されてパケットは廃棄される。
もうひとつのケースを例に取ると、シーケンス番号チェック管理用メモリ407からの読出し値が0x0000 FFFF の場合、メモリ・インタフェース部408では読出し値に対して”+1”加算処理が行われ、加算結果である0x0001 0000 の値がシーケンス番号チェック管理用メモリ407の読み出したメモリ空間と同一メモリ空間へライト・バックされる。それと同時に、フォワーディング処理部410へは、加算結果である0x0001 0000の値が応答されてくる。フォワーディング処理部410では、応答値が0x0001 0000 となったため、補正加算処理が必要である事、補正ライト処理が必要であること、を認識し(図3のフォワーディング処理部32を参照)、応答値の下位16ビット に”+1”の加算をした値をシーケンス番号 として認識する。この場合、0x0001 となる。補正ライト 処理は、次のメモリ・アクセス・ポイント(n+1)にて起動する。
上記の例の通り、本発明の実施例によれば、比較処理、補正加算処理、補正ライト 処理の要否判断をフォワーディング処理部410にて実施する。
次に、補正ライト処理が必要と判断された場合を説明する。図8は本発明の実施例1における補正ライト処理を説明するための図である。
図8において、補正ライト処理は、1回目のメモリ・アクセス・ポイント(n)の次の、メモリ・アクセス・ポイント(n+1)にてアクセス要求される。この場合、考えなければならないのは、補正ライト処理が必要と判断されたパケットの後に、その後続のパケットがシーケンス番号チェック管理用メモリ407内の同じシーケンス番号を参照し、次の補正ライト処理を実施するまでに、シーケンス番号チェック管理用メモリ407内のシーケンス番号がいくつかインクリメントされている場合があることである。
つまり、補正用ライト処理では、必ずしも、0x0001 0000 が読み出される訳ではない、ということである。それは、0x0000 FFFF を読み出したパケットが、次のメモリアクセスポイント(n+1)で補正ライト 処理を実施するときまでには、「ひとつのフォワーディング処理ブロック内で通過しうるパケット数分、カウント値が進む可能性がある」といことである。そのため、補正ライト 処理が必要と判断されたパケットのシーケンス番号値を、補正ライト処理の値に使用することはできないので、新たに読出した値を使用することにする(請求項7)。図8では、補正ライト 処理で読出した値が、0x0001 0000 であった場合、上位16ビットを0x0000 に上書きライトし、下位16ビット に”+1”した値、つまり 0x0000 0001 を、シーケンス番号チェック管理用メモリ407へライト・バックすることになる。これは、図7から、32ビット・カウンタの読出し値の0x0001 0000 と0x0000 0001 が同じシーケンス番号として認識されるためである。
また、オプション制御となるが、不連続が検出された場合、その後、到着するパケットもその、一度飛んだ番号から連続性が保たれているケースなどがある。そういう場合、不連続が検出された場合は、その入力パケットのシーケンス番号をシーケンス番号チェック管理用メモリ407に格納する制御方法がある(請求項9)。
図9は本発明の実施例1における新番号ライト処理を説明するための図である。図9に示す通り、入力パケットの16ビット シーケンス番号を、32ビットに拡張してそのままの値をメモリへライト・バックする。また、通常、フォワーディング処理部410では、メモリ・アクセス・ポイント部とフォワーディング処理部のペアを、シーケンシャルに配置して、上記補正ライト処理が間に合うように、アクセス・ポイント箇所の配置を考慮するが、要求処理内容の負荷が重い場合などで、次のメモリ・アクセス・ポイントでの補正ライト 処理を実施できないケースなどが考えられる。
図4A及び図4Bに示す通り、その場合は、フォワーディング処理部410から監視制御部(CPU制御部401)へ、どのラベル値のシーケンス番号が補正ライト処理が必要であるかを通知し、ソフトウェアにより補正ライト処理を起動するなどの手法がある(請求項10)。この場合、CPU 制御部401からは、該当するラベル番号値に対して、補正ライト 処理を起動する。
また、監視制御部(CPU制御部401)からは、各ラベル値に対応した現在のシーケンス番号値をシーケンス番号チェック管理用メモリ407から読出したい場合がある。この場合、シーケンス番号チェック管理用メモリ407へのアクセス内容は、(1)読み出し処理のみであるが、考慮しなければならないのは、図7に示したように、16ビット・カウンタ以上の値が読み出される場合があるケースである。これに対応するには、図7のフォワーディング処理部410が行っているシーケンス番号チェック管理用メモリ407からの読出し値であるシーケンス番号認識を、ソフトウェアで実施しなければならない(請求項11)。なお、シーケンス番号チェック管理用メモリ407、メモリ・インタフェース部408及び409、フォワーディング処理部410による上記処理が終了するとフォワーディング処理部処理部410から、ヘッダHdrとデータのみからなるパケットがパケットスイッチカードに向けて出力される。この出力パケットにはシーケンス番号は含まれていないので、以下に記載のエグレス・インタフェース・カードにおいて各パケットに付与するシーケンス番号を生成する必要がある。
次に、スード・ワイヤの16ビット シーケンス番号の生成管理の実施例を示す。図5A及び図5Bは本発明の実施例1によるパケット・フォワーディング部のエグレス・インタフェース・カードの構成の一部及び他の一部をそれぞれ示すブロック図である。基本的には、先に説明した、スード・ワイヤの16ビット シーケンス番号 のチェック管理の実施例の応用にて対応することができるので、ここでは、詳細な説明は省略する。特に、シーケンス番号のチェック管理と生成管理の違いとしては、チェック管理では必要であった不連続検出時の処理(請求項9)が、生成管理では不必要である、ということである。
また、本発明の、スード・ワイヤ の16ビット シーケンス番号のチェック管理装置及び生成管理装置は、実現されるフォワーディングの手法に関係なく適用が可能である。
本発明によるメモリ・ルックアップ性能の向上のための適用プラットフォームとして、LSI, FPGA などのハードウエアによるフォワーディング装置(付記21)、NPU (ネットワーク・プロセッサ・ユニット)などのプログラマブル可能なチップによるフォワーディング装置(付記22)、ソフト処理によるフォワーディング装置(付記23)のいずれによっても実現可能である。
また、本発明は近年注目を浴びている、スード・ワイヤ 転送方式におけるコントロール・ワード付きスード・ワイヤ・フレーム内のシーケンス番号の管理装置として適用可能である(付記24)。
(付記1)入力パケットを解析することにより該入力パケットの宛先を決定して出力パケットとして出力するフォワーディング処理部を備えたパケットスイッチ装置において、前記フォワーディング処理部は、前記入力パケットがシーケンシャルな巡回番号を持つか否かのチェックを行うイングレス・インタフェース・カードと、シーケンシャルな巡回番号を生成して前記出力パケットに付与するエグレス・インタフェース・カードとを備えていることを特徴とするパケットスイッチ装置。
(付記2)前記イングレス・インタフェース・カードは、前記巡回番号のチェック管理用メモリと、該チェック管理用メモリに対する1回のアクセス処理を連続する第1及び第2のメモリアクセスポイントにて行うことにより2回に分割して行うための第1のメモリインタフェース部と第2のメモリインタフェース部とを備えており、前記第1のアクセスポイントにて前記第1のメモリインタフェース部による処理の後に、前記フォワーディング処理部は前記第1のメモリインタフェース部による処理結果の補正の要否を判定し、前記第2のメモリインタフェース部は前記フォワーディング処理部により前記補正が必要と判定された場合に、前記第2のアクセスポイントにて前記チェック管理用メモリのアドレス空間から読み出されたシーケンス番号を補正して前記チェック管理用メモリの前記アドレス空間に書き込むようにしたことを特徴とする付記1に記載のパケットスイッチ装置。
(付記3)前記第1のメモリインタフェース部は、前記第1のアクセスポイントにて、前記入力パケットのヘッダ情報をアドレスとして前記チェック管理用メモリの該アドレスに対応するアドレス空間をアクセスして前記チェック管理用メモリに格納されている対応するシーケンス番号を読み出す読み出し処理と、該読み出し処理により読み出された前記シーケンス番号に1を加算する加算処理と、該加算処理による加算結果を前記チェック管理用メモリの前記アドレス空間にライトバックする処理とを連続して行う演算部を備えていることを特徴とする付記2に記載のパケットスイッチ装置。
(付記4)前記フォワード処理部は、前記入力パケットの受信ポートがスード・ワイヤ用であるか否かを判定するための受信ポート属性テーブルを更に備え、前記入力パケット毎に付与されている入力物理ポート情報をアドレスとして前記受信ポート属性テーブルを参照し、前記受信ポートがスード・ワイヤ用である場合にのみ前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする付記2に記載のパケットスイッチ装置。
(付記5)前記フォワード処理部は、前記入力パケットのヘッダ情報をアドレスとして前記入力パケットが仮想フレームのコントロール・ワードを持つか否かのチェックを行うためのシーケンス番号有無テーブルを更に備え、前記入力パケットが前記コントロール・ワードを持つと判定された場合にのみ、前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする付記4に記載のパケットスイッチ装置。
(付記6)前記シーケンス番号有無テーブルは、前記コントロール・ワードが前記シーケンス番号を含むか否かのチェックを行う機能をさらに備えており、前記コントロール・ワードが前記シーケンス番号を含んでいると判定された場合にのみ、前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする付記5に記載のパケットスイッチ装置。
(付記7)前記第2のメモリインタフェース部は前記フォワーディング処理部により前記補正が必要と判定された場合に、前記第2のアクセスポイントにて前記チェック管理用メモリのアドレス空間から新たに読み出されたシーケンス番号を補正して前記チェック管理用メモリの前記アドレス空間に書き込むようにしたことを特徴とする付記2に記載のパケットスイッチ装置。
(付記8)前記第1のメモリアクセスポイントと、前記フォーワーディング処理部と、前記第2のメモリアクセスポイントとをシーケンシャルに配置したパイプライン構成を備えたことを特徴とする付記2に記載のパケットスイッチ装置。
(付記9)前記フォワード処理部が前記第1のメモリインタフェース部による処理結果に続き、前記フォワーディング処理部で前記入力パケットのシーケンス番号が不連続であると検出された場合に、前記第2のメモリインタフェース部は前記チェック管理用メモリに前記不連続な入力パケットのシーケンス番号を前記チェック管理用メモリに書き込むようにしたことを特徴とする付記2に記載のパケットスイッチ装置。
(付記10)前記第2のメモリインタフェース部はソフトウェアにより実現されることを特徴とする、付記2に記載のパケットスイッチ装置。
(付記11)前記フォワーディング処理部による処理を監視制御部に含まれるソフトウェアにより実現することを特徴とする付記10に記載のパケットスイッチ装置。
(付記12)前記エグレス・インタフェース・カードは、前記巡回番号のチェック管理用メモリを備えており、該チェック管理用メモリに対する1回のアクセス処理を連続する第1及び第2のメモリアクセスポイントにて行うことにより2回に分割して行うための第1のメモリインタフェース部と第2のメモリインタフェース部とを備えており、前記第1のアクセスポイントにて前記第1のメモリインタフェース部による処理の後に、前記フォワーディング処理部は前記第1のメモリインタフェース部による処理結果の補正の要否を判定し、前記第2のメモリインタフェース部は前記フォワーディング処理部により前記補正が必要と判定された場合に、前記第2のアクセスポイントにて前記チェック管理用メモリのアドレス空間から読み出されたシーケンス番号を補正して前記チェック管理用メモリの前記アドレス空間に書き込むようにしたことを特徴とする請求項1に記載のパケットスイッチ装置。
(付記13)前記第1のメモリインタフェース部は、前記第1のアクセスポイントにて、前記入力パケットのヘッダ情報をアドレスとして前記チェック管理用メモリの該アドレスに対応するアドレス空間をアクセスして前記チェック管理用メモリに格納されている対応するシーケンス番号を読み出す読み出し処理と、該読み出し処理により読み出された前記シーケンス番号に1を加算する加算処理と、該加算処理による加算結果を前記チェック管理用メモリの前記アドレス空間にライトバックする処理とを連続して行う演算部を備えていることを特徴とする請求項12に記載のパケットスイッチ装置。
(付記14)前記フォワード処理部は、前記出力パケットの送信ポートがスード・ワイヤ用であるか否かを判定するための送信ポート属性テーブルを更に備え、前記出力パケット毎に付与されている出力物理ポート情報をアドレスとして前記送信ポート属性テーブルを参照し、前記送信ポートがスード・ワイヤ用である場合にのみ前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする付記12に記載のパケットスイッチ装置。
(付記15)前記フォワード処理部は、前記出力パケットのヘッダ情報をアドレスとして前記出力パケットが仮想フレームのコントロール・ワードを持つか否かのチェックを行うためのシーケンス番号有無テーブルを更に備え、前記出力パケットが前記コントロール・ワードを持つと判定された場合にのみ、前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする付記14に記載のパケットスイッチ装置。
(付記16)前記シーケンス番号有無テーブルは、前記コントロール・ワードが前記シーケンス番号を含むか否かのチェックを行う機能をさらに備えており、前記コントロール・ワードが前記シーケンス番号を含んでいると判定された場合にのみ、前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする付記15に記載のパケットスイッチ装置。
(付記17)前記第2のメモリインタフェース部は前記フォワーディング処理部により前記補正が必要と判定された場合に、前記第2のアクセスポイントにて前記チェック管理用メモリのアドレス空間から新たに読み出されたシーケンス番号を補正して前記チェック管理用メモリの前記アドレス空間に書き込むようにしたことを特徴とする付記12に記載のパケットスイッチ装置。
(付記18)前記第1のメモリアクセスポイントと、前記フォーワーディング処理部と、前記第2のメモリアクセスポイントとをシーケンシャルに配置したパイプライン構成を備えたことを特徴とする付記12に記載のパケットスイッチ装置。
(付記19)前記第2のメモリインタフェース部はソフトウェアにより実現されることを特徴とする、付記12に記載のパケットスイッチ装置。
(付記20)前記フォワーディング処理部による処理を監視制御部に含まれるソフトウェアにより実現することを特徴とする付記19に記載のパケットスイッチ装置。
(付記21)前記フォワーディング処理部はLSI,FPGAの少なくとも一つを含むハードウェアにより実現することを特徴とする付記1から20のいずれか一項に記載のパケットスイッチ装置。
(付記22)前記フォワーディング処理部はプログラマブル・チップにより実現することを特徴とする付記1から20のいずれか一項に記載のパケットスイッチ装置。
(付記23)前記フォワーディング処理部はソフトウェアにより実現することを特徴とする付記1から20のいずれか一項に記載のパケットスイッチ装置。
(付記24)スード・ワイヤのコントロール・ワードに含まれる16ビット・シーケンス番号のチェック管理又は生成管理に適用することを特徴とする、付記1から20のいずれか一項に記載のパケットスイッチ装置。
本発明によれば、パケットスイッチ装置におけるフォワーディング処理部において一回のテーブルアクセスで許容されるクロックサイクル数以内で必要な処理が完了可能になる。即ち、本発明によれば、パケットスイッチ装置におけるフォワーディング処理部において、一箇所のテーブルアクセスにおける消費クロックサイクル数を減らすことができ、かつ同一シーケンス番号を利用するパケットが連続して入力された場合であっても、高スループットを維持することができる。

Claims (20)

  1. 入力パケットを解析することにより該入力パケットの宛先を決定して出力パケットとして出力するフォワーディング処理部を備えたパケットスイッチ装置において、前記フォワーディング処理部は、前記入力パケットがシーケンシャルな巡回番号を持つか否かのチェックを行うイングレス・インターフェース・カードと、シーケンシャルな巡回番号を生成して前記出力パケットに付与するエグレス・インターフェース・カードとを備えていることを特徴とするパケットスイッチ装置。
  2. 前記イングレス・インターフェース・カードは、前記巡回番号のチェック管理用メモリと、該チェック管理用メモリに対する1回のアクセス処理を連続する第1及び第2のメモリアクセスポイントにて行うことにより2回に分割して行うための第1のメモリインターフェース部と第2のメモリインターフェース部とを備えており、前記第1のアクセスポイントにて前記第1のメモリインターフェース部による処理の後に、前記フォワーディング処理部は前記第1のメモリインターフェース部による処理結果の補正の要否を判定し、前記第2のメモリインターフェース部は前記フォワーディング処理部により前記補正が必要と判定された場合に、前記第2のアクセスポイントにて前記チェック管理用メモリのアドレス空間から読み出されたシーケンス番号を補正して前記チェック管理用メモリの前記アドレス空間に書き込むようにしたことを特徴とする請求項1に記載のパケットスイッチ装置。
  3. 前記第1のメモリインターフェース部は、前記第1のアクセスポイントにて、前記入力パケットのヘッダ情報をアドレスとして前記チェック管理用メモリの該アドレスに対応するアドレス空間をアクセスして前記チェック管理用メモリに格納されている対応するシーケンス番号を読み出す読み出し処理と、該読み出し処理により読み出された前記シーケンス番号に1を加算する加算処理と、該加算処理による加算結果を前記チェック管理用メモリの前記アドレス空間にライトバックする処理とを連続して行う演算部を備えていることを特徴とする請求項2に記載のパケットスイッチ装置。
  4. 前記フォワード処理部は、前記入力パケットの受信ポートがスード・ワイヤ用であるか否かを判定するための受信ポート属性テーブルを更に備え、前記入力パケット毎に付与されている入力物理ポート情報をアドレスとして前記受信ポート属性テーブルを参照し、前記受信ポートがスード・ワイヤ用である場合にのみ前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする請求項2に記載のパケットスイッチ装置。
  5. 前記フォワード処理部は、前記入力パケットのヘッダ情報をアドレスとして前記入力パケットが仮想フレームのコントロールワードを持つか否かのチェックを行うためのシーケンス番号有無テーブルを更に備え、前記入力パケットが前記コントロールワードを持つと判定された場合にのみ、前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする請求項4に記載のパケットスイッチ装置。
  6. 前記シーケンス番号有無テーブルは、前記コントロールワードが前記シーケンス番号を含むか否かのチェックを行う機能をさらに備えており、前記コントロールワードが前記シーケンス番号を含んでいると判定された場合にのみ、前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする請求項5に記載のパケットスイッチ装置。
  7. 前記第2のメモリインターフェース部は前記フォワーディング処理部により前記補正が必要と判定された場合に、前記第2のアクセスポイントにて前記チェック管理用メモリのアドレス空間から新たに読み出されたシーケンス番号を補正して前記チェック管理用メモリの前記アドレス空間に書き込むようにしたことを特徴とする請求項2に記載のパケットスイッチ装置。
  8. 前記第1のメモリアクセスポイントと、前記フォーワーディング処理部と、前記第2のメモリアクセスポイントとをシーケンシャルに配置したパイプライン構成を備えたことを特徴とする請求項2に記載のパケットスイッチ装置。(Fig. 4A)
  9. 前記フォワード処理部が前記第1のメモリインターフェース部による処理結果に続き、前記フォワーディング処理部で前記入力パケットのシーケンス番号が不連続であると検出された場合に、前記第2のメモリインターフェース部は前記チェック管理用メモリに前記不連続な入力パケットのシーケンス番号を前記チェック管理用メモリに書き込むようにしたことを特徴とする請求項2に記載のパケットスイッチ装置。
  10. 前記第2のメモリインターフェース部はソフトウェアにより実現されることを特徴とする、請求項2に記載のパケットスイッチ装置。
  11. 前記フォワーディング処理部による処理を監視制御部に含まれるソフトウェアにより実現することを特徴とする請求項10に記載のパケットスイッチ装置。(Fig. 4A)
  12. 前記エグレス・インターフェース・カードは、前記巡回番号のチェック管理用メモリを備えており、該チェック管理用メモリに対する1回のアクセス処理を連続する第1及び第2のメモリアクセスポイントにて行うことにより2回に分割して行うための第1のメモリインターフェース部と第2のメモリインターフェース部とを備えており、前記第1のアクセスポイントにて前記第1のメモリインターフェース部による処理の後に、前記フォワーディング処理部は前記第1のメモリインターフェース部による処理結果の補正の要否を判定し、前記第2のメモリインターフェース部は前記フォワーディング処理部により前記補正が必要と判定された場合に、前記第2のアクセスポイントにて前記チェック管理用メモリのアドレス空間から読み出されたシーケンス番号を補正して前記チェック管理用メモリの前記アドレス空間に書き込むようにしたことを特徴とする請求項1に記載のパケットスイッチ装置。
  13. 前記第1のメモリインターフェース部は、前記第1のアクセスポイントにて、前記入力パケットのヘッダ情報をアドレスとして前記チェック管理用メモリの該アドレスに対応するアドレス空間をアクセスして前記チェック管理用メモリに格納されている対応するシーケンス番号を読み出す読み出し処理と、該読み出し処理により読み出された前記シーケンス番号に1を加算する加算処理と、該加算処理による加算結果を前記チェック管理用メモリの前記アドレス空間にライトバックする処理とを連続して行う演算部を備えていることを特徴とする請求項12に記載のパケットスイッチ装置。
  14. 前記フォワード処理部は、前記出力パケットの送信ポートがスード・ワイヤ用であるか否かを判定するための送信ポート属性テーブルを更に備え、前記出力パケット毎に付与されている出力物理ポート情報をアドレスとして前記送信ポート属性テーブルを参照し、前記送信ポートがスード・ワイヤ用である場合にのみ前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする請求項12に記載のパケットスイッチ装置。
  15. 前記フォワード処理部は、前記出力パケットのヘッダ情報をアドレスとして前記出力パケットが仮想フレームのコントロールワードを持つか否かのチェックを行うためのシーケンス番号有無テーブルを更に備え、前記出力パケットが前記コントロールワードを持つと判定された場合にのみ、前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする請求項14に記載のパケットスイッチ装置。
  16. 前記シーケンス番号有無テーブルは、前記コントロールワードが前記シーケンス番号を含むか否かのチェックを行う機能をさらに備えており、前記コントロールワードが前記シーケンス番号を含んでいると判定された場合にのみ、前記チェック管理用メモリに対するアクセスを実行するようにしたことを特徴とする請求項15に記載のパケットスイッチ装置。
  17. 前記第2のメモリインターフェース部は前記フォワーディング処理部により前記補正が必要と判定された場合に、前記第2のアクセスポイントにて前記チェック管理用メモリのアドレス空間から新たに読み出されたシーケンス番号を補正して前記チェック管理用メモリの前記アドレス空間に書き込むようにしたことを特徴とする請求項12に記載のパケットスイッチ装置。
  18. 前記第1のメモリアクセスポイントと、前記フォーワーディング処理部と、前記第2のメモリアクセスポイントとをシーケンシャルに配置したパイプライン構成を備えたことを特徴とする請求項12に記載のパケットスイッチ装置。
  19. 前記第2のメモリインターフェース部はソフトウェアにより実現されることを特徴とする、請求項12に記載のパケットスイッチ装置。(Fig. 5A)
  20. 前記フォワーディング処理部による処理を監視制御部に含まれるソフトウェアにより実現することを特徴とする請求項19に記載のパケットスイッチ装置。
JP2009517634A 2007-06-04 2007-06-04 パケットスイッチ装置 Expired - Fee Related JP4890613B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2007/061310 WO2008149415A1 (ja) 2007-06-04 2007-06-04 パケットスイッチ装置

Publications (2)

Publication Number Publication Date
JPWO2008149415A1 true JPWO2008149415A1 (ja) 2010-08-19
JP4890613B2 JP4890613B2 (ja) 2012-03-07

Family

ID=40093252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009517634A Expired - Fee Related JP4890613B2 (ja) 2007-06-04 2007-06-04 パケットスイッチ装置

Country Status (4)

Country Link
US (1) US8621325B2 (ja)
JP (1) JP4890613B2 (ja)
GB (1) GB2462237B (ja)
WO (1) WO2008149415A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4890613B2 (ja) * 2007-06-04 2012-03-07 富士通株式会社 パケットスイッチ装置
US9009293B2 (en) 2009-11-18 2015-04-14 Cisco Technology, Inc. System and method for reporting packet characteristics in a network environment
US9015318B1 (en) 2009-11-18 2015-04-21 Cisco Technology, Inc. System and method for inspecting domain name system flows in a network environment
US9148380B2 (en) * 2009-11-23 2015-09-29 Cisco Technology, Inc. System and method for providing a sequence numbering mechanism in a network environment
US8792495B1 (en) 2009-12-19 2014-07-29 Cisco Technology, Inc. System and method for managing out of order packets in a network environment
US8787303B2 (en) 2010-10-05 2014-07-22 Cisco Technology, Inc. Methods and apparatus for data traffic offloading at a router
US9003057B2 (en) 2011-01-04 2015-04-07 Cisco Technology, Inc. System and method for exchanging information in a mobile wireless network environment
US8737221B1 (en) 2011-06-14 2014-05-27 Cisco Technology, Inc. Accelerated processing of aggregate data flows in a network environment
US8948013B1 (en) 2011-06-14 2015-02-03 Cisco Technology, Inc. Selective packet sequence acceleration in a network environment
US8743690B1 (en) 2011-06-14 2014-06-03 Cisco Technology, Inc. Selective packet sequence acceleration in a network environment
US8792353B1 (en) 2011-06-14 2014-07-29 Cisco Technology, Inc. Preserving sequencing during selective packet acceleration in a network environment
US9565132B2 (en) * 2011-12-27 2017-02-07 Intel Corporation Multi-protocol I/O interconnect including a switching fabric
DE102019116510A1 (de) * 2019-06-18 2020-12-24 Beckhoff Automation Gmbh Netzwerkteilnehmer und Automatisierungsnetzwerk

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001251351A (ja) * 2000-03-02 2001-09-14 Nec Corp パケット交換機における入力パケット処理方式
JP2001345847A (ja) * 2000-06-01 2001-12-14 Hitachi Ltd パケットデータ転送方法及びパケットデータ転送装置
JP2003218932A (ja) * 2001-11-15 2003-07-31 Matsushita Electric Ind Co Ltd エラー隠蔽装置及び方法
JP2003283539A (ja) * 2002-03-20 2003-10-03 Canon Inc 通信ネットワーク、端末インタフェース装置、ノード装置、伝送制御方法、記憶媒体、及びプログラム

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3959596A (en) * 1975-05-30 1976-05-25 Gte Sylvania Incorporated Time division switching network
US5088089A (en) * 1989-12-15 1992-02-11 Alcatel Na Network Systems Corp. Apparatus for programmably accessing and assigning time slots in a time division multiplexed communication system
US5691976A (en) * 1992-04-02 1997-11-25 Applied Digital Access Performance monitoring and test system for a telephone network
US5379413A (en) * 1992-06-19 1995-01-03 Intel Corporation User selectable word/byte input architecture for flash EEPROM memory write and erase operations
EP0716370A3 (en) * 1994-12-06 2005-02-16 International Business Machines Corporation A disk access method for delivering multimedia and video information on demand over wide area networks
US6438670B1 (en) * 1998-10-02 2002-08-20 International Business Machines Corporation Memory controller with programmable delay counter for tuning performance based on timing parameter of controlled memory storage device
EP1093611A1 (en) * 1999-05-06 2001-04-25 Koninklijke Philips Electronics N.V. Data processing device, method for executing load or store instructions and method for compiling programs
US20020031141A1 (en) * 2000-05-25 2002-03-14 Mcwilliams Patrick Method of detecting back pressure in a communication system using an utopia-LVDS bridge
ATE331378T1 (de) * 2001-09-26 2006-07-15 Siemens Ag Verfahren zum zugriff auf eine befehlseinheit für ein datennetz
CN1323532C (zh) 2001-11-15 2007-06-27 松下电器产业株式会社 错误隐蔽装置和方法
US20030196100A1 (en) * 2002-04-15 2003-10-16 Grawrock David W. Protection against memory attacks following reset
GB2399980A (en) * 2003-03-26 2004-09-29 Zarlink Semiconductor Ltd Packet buffer management
JP4237648B2 (ja) * 2004-01-30 2009-03-11 株式会社東芝 不揮発性半導体記憶装置
US7421535B2 (en) * 2004-05-10 2008-09-02 International Business Machines Corporation Method for demoting tracks from cache
US7536506B2 (en) * 2004-06-21 2009-05-19 Dot Hill Systems Corporation RAID controller using capacitor energy source to flush volatile cache data to non-volatile memory during main power outage
US7290083B2 (en) * 2004-06-29 2007-10-30 Cisco Technology, Inc. Error protection for lookup operations in content-addressable memory entries
JP4662743B2 (ja) * 2004-09-13 2011-03-30 Necインフロンティア株式会社 データ2重化システム
US7454686B2 (en) * 2004-11-23 2008-11-18 International Business Machines Corporation Apparatus and method to check data integrity when handling data
US7558839B1 (en) * 2004-12-14 2009-07-07 Netapp, Inc. Read-after-write verification for improved write-once-read-many data storage
CN101583937A (zh) * 2005-05-11 2009-11-18 菲瓦技术股份有限公司 发展与网络接入点的用户关系
US7773611B2 (en) * 2005-06-15 2010-08-10 Cisco Technology, Inc. Method and apparatus for packet loss detection
US8085766B2 (en) * 2005-07-06 2011-12-27 Broadcom Corporation S-flow in a network device
US8509062B2 (en) * 2006-08-07 2013-08-13 Ciena Corporation Smart ethernet edge networking system
US8406191B2 (en) * 2006-04-14 2013-03-26 Qualcomm Incorporated Pseudo wires for mobility management
US7869343B1 (en) * 2006-06-05 2011-01-11 Altera Corporation Field programmable gate array architectures and methods for supporting forward error correction
US7636317B2 (en) * 2006-11-20 2009-12-22 Veriwave, Inc. Communications test system with multilevel scheduler
US8050267B2 (en) * 2007-02-19 2011-11-01 Cisco Technology, Inc. Simple virtual private network for small local area networks
JP4890613B2 (ja) * 2007-06-04 2012-03-07 富士通株式会社 パケットスイッチ装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001251351A (ja) * 2000-03-02 2001-09-14 Nec Corp パケット交換機における入力パケット処理方式
JP2001345847A (ja) * 2000-06-01 2001-12-14 Hitachi Ltd パケットデータ転送方法及びパケットデータ転送装置
JP2003218932A (ja) * 2001-11-15 2003-07-31 Matsushita Electric Ind Co Ltd エラー隠蔽装置及び方法
JP2003283539A (ja) * 2002-03-20 2003-10-03 Canon Inc 通信ネットワーク、端末インタフェース装置、ノード装置、伝送制御方法、記憶媒体、及びプログラム

Also Published As

Publication number Publication date
US8621325B2 (en) 2013-12-31
WO2008149415A1 (ja) 2008-12-11
GB0921061D0 (en) 2010-01-13
GB2462237B (en) 2011-11-23
JP4890613B2 (ja) 2012-03-07
GB2462237A (en) 2010-02-03
US20100091775A1 (en) 2010-04-15

Similar Documents

Publication Publication Date Title
JP4890613B2 (ja) パケットスイッチ装置
US9807134B2 (en) Method and device for filtering media packets
US20200067839A1 (en) Network traffic load balancing
US7110400B2 (en) Random access memory architecture and serial interface with continuous packet handling capability
US7558270B1 (en) Architecture for high speed class of service enabled linecard
US8116310B2 (en) Reducing packet flooding by a packet switch
US11425058B2 (en) Generation of descriptive data for packet fields
US20030135691A1 (en) Input data selection for content addressable memory
US11252111B2 (en) Data transmission
JP2001251351A (ja) パケット交換機における入力パケット処理方式
US11258726B2 (en) Low latency packet switch architecture
US6977948B1 (en) Jitter buffer state management system for data transmitted between synchronous and asynchronous data networks
US9979648B1 (en) Increasing entropy across routing table segments
US7403526B1 (en) Partitioning and filtering a search space of particular use for determining a longest prefix match thereon
US20030195916A1 (en) Network thread scheduling
US9819587B1 (en) Indirect destination determinations to forward tunneled network packets
US20120163392A1 (en) Packet processing apparatus and method
US10798014B1 (en) Egress maximum transmission unit (MTU) enforcement
US8730961B1 (en) System and method for optimizing router lookup
US11689464B2 (en) Optimizing entries in a content addressable memory of a network device
CN116032837A (zh) 一种流表卸载方法及装置
US10608937B1 (en) Determining destination resolution stages for forwarding decisions
US20050044261A1 (en) Method of operating a network switch
JP5639965B2 (ja) 非同期動作検索回路
JPH1051480A (ja) ゲートウェイ装置のプロトコル処理方式

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110415

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: 20111206

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111214

R150 Certificate of patent or registration of utility model

Ref document number: 4890613

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141222

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees