JP3730921B2 - ネットワーク・プロセッサ内のパラメータをカスタマイズおよび転送する方法および装置 - Google Patents

ネットワーク・プロセッサ内のパラメータをカスタマイズおよび転送する方法および装置 Download PDF

Info

Publication number
JP3730921B2
JP3730921B2 JP2001574632A JP2001574632A JP3730921B2 JP 3730921 B2 JP3730921 B2 JP 3730921B2 JP 2001574632 A JP2001574632 A JP 2001574632A JP 2001574632 A JP2001574632 A JP 2001574632A JP 3730921 B2 JP3730921 B2 JP 3730921B2
Authority
JP
Japan
Prior art keywords
target
frame type
gpp
special
address
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.)
Expired - Fee Related
Application number
JP2001574632A
Other languages
English (en)
Other versions
JP2003530744A (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2003530744A publication Critical patent/JP2003530744A/ja
Application granted granted Critical
Publication of JP3730921B2 publication Critical patent/JP3730921B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Multi Processors (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Small-Scale Networks (AREA)
  • Stored Programmes (AREA)
  • Acyclic And Carbocyclic Compounds In Medicinal Compositions (AREA)
  • Medicines Containing Plant Substances (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、一般には、ネットワーク・プロセッサ装置に関し、より具体的には、いくつかの汎用プロセッサ(すなわち制御点プロセッサ)に処理を分散する機構に関する。
【0002】
【従来の技術】
図1は、多数のネットワーク・プロセッサ装置25a、...、25nを制御する単一の汎用プロセッサ(GPP)制御装置15を含む典型的なネットワーキング構成10を表す。GPPは、あらゆる特殊なデータ・パケット(フレーム)のタイプ(例:ポイントツーポイント(PPP)制御フレームや不明のフレーム)を処理することから、システム10のGPPではしばしば処理上のボトルネックが生じる。
【0003】
【発明が解決しようとする課題】
図2は、複数の汎用プロセッサ制御装置15a、....、15nを実施する、より分散されたネットワーキング構成を表す。この構成では、処理するためにネットワーク・プロセッサが特殊なフレーム・タイプをGPPに転送するために、各GPPが、処理しなければならない各プロトコルについてプロトコル・スタックを必要とする。これは、特殊なフレームをどのように特定のGPPに送信するかをネットワーク・プロセッサが解読することができないためである。各GPPがネットワーク・プロセッサによって処理されるプロトコルごとに完全なプロトコル・スタックを備えなければならないという要件は、メモリの必要性を増し、性能を低下させる。
【0004】
【課題を解決するための手段】
したがって、本発明は、少なくとも1つのネットワーク・プロセッサ(NP)装置を制御する1つまたは複数の汎用制御プロセッサ(GPP)を含む分散ネットワーキング環境内のNP装置によって受信される特殊なデータ・フレームの処理を分散するシステムにおいて、前記NP装置で受信される特殊なデータ・フレーム・タイプを、前記特殊なフレーム・タイプを処理することが可能なターゲットGPPに関連付けられたターゲット・アドレスおよびターゲット・ポート・アドレスと共にマップするために、前記少なくとも1つのNP装置内で実施される構成可能なテーブルを含むシステムであって、前記NPネットワーク・プロセッサは、受信したデータ・フレームを分類し、かつ前記フレームをそれぞれ前記構成可能なテーブル内の項目と比較する機構を含み、前記ネットワーク処理装置は、前記テーブル内に対応する項目を有する前記分類されたフレーム・タイプに応じて、対応するターゲット・ポート・アドレスを通じて前記フレームを前記ターゲットGPPに転送する手段を含み、前記ターゲットGPPは前記特殊なデータ・フレーム・タイプの転送を処理するために提供されるシステム、を提供する。
【0005】
好ましい実施形態によると、各GPP装置に完全なプロトコル・スタックのセットを提供する必要性をなくす、分散ネットワーキング環境におけるGPP構成が提供される。
【0006】
好適には、分散ネットワーキング環境内のGPPを構成して、特定の特殊なフレーム・タイプを処理させ、ネットワーク・プロセッサにより特定の構成されたGPPに特殊なフレーム・タイプを分散する能力を提供させる機構が提供される。
【0007】
さらに、いくつかの汎用プロセッサ(すなわち制御点プロセッサ)に処理を分散し、どのプロセッサが特定の操作を処理するかをネットワーク・プロセッサが構成することを可能にするアプリケーション・プログラム・インタフェース(API)および方法が提供される。
【0008】
別の態様で、本発明は、1つまたは複数のネットワーク・プロセッサ(NP)装置を制御する1つまたは複数の汎用制御プロセッサ(GPP)を含む分散ネットワーキング環境内のNP装置によって受信される特殊なデータ・フレームの処理を分散する方法を提供し、前記方法は、
a)前記NP装置内で実施されるテーブルであって、前記NP装置で受信される特殊なデータ・フレーム・タイプを、前記特殊なフレーム・タイプを処理することのできるターゲットGPPと関連付けられたターゲット・アドレスおよびターゲット・ポート・アドレスと共にマップするテーブルを提供すること、
b)前記NPネットワーク・プロセッサで、あるデータ・フレーム・タイプのデータ・フレームを受信すること、
c)受信したデータ・フレームを分類し、各前記フレームを前記テーブルの項目と比較すること、
d)前記分類されたフレーム・タイプが前記テーブル内に対応する項目を有する場合は、対応するターゲット・ポート・アドレスを通じて前記特殊なデータ・フレームを前記ターゲットGPPに転送し、前記ターゲットGPPは前記特殊なデータ・フレーム・タイプの転送を処理するために提供されること、
を含む。
【0009】
好都合にも、そのような方法は、ネットワーク・プロセッサがいくつかの汎用プロセッサ(すなわち制御点プロセッサ)に処理を分散することを好適に可能ならしめ、また大規模なネットワーキング環境でどのプロセッサが特定の操作を処理するかを構成する機能を可能にし、それによりそれぞれの汎用制御プロセッサで保持する必要のあるプロトコル・スタックの数を減らす。
【0010】
さらに別の態様で、本発明は、1つまたは複数のネットワーク・プロセッサ(NP)装置を制御する1つまたは複数の汎用制御プロセッサ(GPP)を含む分散ネットワーキング環境内で動作するNP装置を構成するためのアプリケーション・プログラミング・インタフェースを提供し、前記インタフェースは、前記NP装置に入力するためにデータ構造を生成する機構であって、前記データ構造は、特殊なフレーム・タイプと、前記特殊なフレーム・タイプを処理することが可能な、前記ネットワーキング環境内のGPPと関連付けられた関連ターゲット・アドレスおよびターゲット・ポート・アドレスを指定する1つまたは複数の項目を有する機構と;前記生成されたデータ構造からカスタマイズされたテーブルを生成し、前記カスタマイズされたテーブルをNP装置のメモリに入力する装置とを含み、それにより、前記テーブルで後続のテーブル検索を行って、関連付けられたGPPにターゲット・ポート・アドレスを通じて特殊なフレーム・タイプを転送する。
【0011】
さらに別の態様では、本発明は、機械可読のプログラム記憶装置であって、機械による実行が可能な命令のプログラムを有形に実施して、1つまたは複数のネットワーク・プロセッサ(NP)装置を制御する1つまたは複数の汎用制御プロセッサ(GPP)を含む分散ネットワーキング環境で動作するNP装置を構成するための方法ステップを実行するプログラム記憶装置を提供し、前記方法ステップは、
(a)前記NP装置に入力するためにデータ構造を生成するステップであって、前記データ構造は、特殊なフレーム・タイプと、前記特殊なフレーム・タイプを処理することが可能な、前記ネットワーキング環境と関連付けられたGPPと関連付けられた関連ターゲット・アドレスおよびターゲット・ポート・アドレスを指定する1つまたは複数の項目を有するステップと、
(b)前記生成されたデータ構造からカスタマイズされたテーブルを生成し、前記カスタマイズされたテーブルをNP装置のメモリに入力し、それにより、前記テーブルで後続のテーブル検索を行って、ターゲット・ポート・アドレスを通じて特殊なフレーム・タイプを関連付けられたGPPに転送するステップと、
を含む。
【0012】
このデータ構造はタグ付きのリスト値のストリングを含むことが好ましく、各タグ付きリスト値は、前記テーブルに含める特殊なフレーム・タイプを表す属性フィールドと、前記タグ付きリスト値の長さを表す長さフィールドと、特殊なフレーム・タイプのターゲットと関連付けられたターゲット・アドレスおよびターゲット・ポート・アドレスを指定する値フィールドとを含む。
【0013】
以下で、図面を参照して、一例としての本発明の好ましい実施形態について説明する。
【0014】
【発明の実施の形態】
好ましい実施形態によると、アプリケーション・プログラム・インタフェース(API)が提供され、これは、分散ネットワーキング環境で動作する汎用プロセッサ(GPP)制御装置(例えば外部GPP、ネットワーク・プロセッサ中の埋め込みGPPなど)によって実施され、特殊なデータ・パケット(フレーム)タイプの転送を処理できるようにネットワーク・プロセッサ(NP)装置をカスタマイズおよび構成することを可能にする。例示のために、本願の出願人によって所有される係属中の米国特許出願第09/384,691号に記載されるものなど、ネットワーキング・プロセッサ・ベースの装置およびシステムの1つを参照し、上記出願の写しをこのファイルに含める。ただし、本発明は、各種のハードウェア/ソフトウェア設計によるこの他のネットワーク・プロセッサ・ベースの装置でも用いることが可能である。
【0015】
前述の係属中の米国特許出願に記載されるように、一般には、NP装置で受信されるデータ・フレームの一般的な流れは以下の通りである。例えばイーサネット(R)MACなどのネットワーク接続から受信されるフレームは、通常のデータ・フレームかシステム制御用のフレーム(Guided Frames)のいずれかに識別される。好ましい実施形態に照らすと、通常のデータ・フレームと識別されたフレームは、エンベデッド・プロセッサ・コンプレックス(EPC)の待ち行列に入れられる。EPCは、例えばプロトコル・プロセッサなど複数のピコプロセッサを含み、これは、受信したフレームのヘッダを見てそのフレームをどのように処理するか(転送、修正、フィルタリングなど)を決定することのできるロジック(ピココード)を実行する。EPCはいくつかのルックアップ・テーブルにアクセスすることができ、また分類ハードウェアが補助して、ピコプロセッサがネットワーク・プロセッサの高帯域幅要件について行けるようにする。分類ハードウェア補助装置は、特に、よく知られるフレーム形式のフレームを分類するために提供される。エンベデッド・プロセッシング・コンプレックス(EPC)は、特に、NP装置のチップのプログラム可能性を提供かつ制御し、また諸構成要素(メモリ、ディスパッチャ、インタフェースなど)の中でも特に、共通の命令用メモリに記憶されたピココードを同時に実行する1つまたは複数の処理装置を含む。各処理装置は、例えば3段のパイプライン、汎用レジスタ、およびALUを含む処理装置コアを含むことが好ましい。動作中は、分類ハードウェア補助装置による分類の結果が、フレームをディスパッチする際に1つまたは複数の処理装置に渡される。特に汎用データ・ハンドラ(GDH)と呼ばれる一処理装置は、完全な(full)処理装置と、本発明の好ましい実施形態に従って主にフレームの転送に使用される1つまたは複数のコプロセッシング装置とを含む。
【0016】
特に、好ましい実施形態のAPIは、GPPが、特定のネットワーク・プロセッサで実行されるピココードが特定のパケット・タイプを送る送信先に影響するパラメータを構成するために使用される。このAPIにより、エンド・ユーザは、特殊なフレーム・タイプと、対応する特殊なフレームを処理するために提供されるターゲットGPPとを相互参照するカスタマイズ可能なテーブルを構成することができる。このような方式により、各GPPにプロトコル・スタックを提供する必要性が回避される。
【0017】
図3は、APIを介して特殊なフレーム・タイプを事前に指定されたGPPに転送するための、カスタマイズ可能なテーブル100の一例を表す。好ましい実施形態では、カスタマイズ可能なテーブル100は、NP装置のメモリ内で構成されたフラット・テーブルであり、分類された特殊なフレーム・タイプに対応する項目を含む。この項目には、ポイントツーポイント(PPP)による制御タイプ102、不明のデータ・フレーム・タイプ105(すなわちNP装置によって理解されないプロトコルのフレーム)、IPフレーム・タイプ107、およびラップ(Wrap)タイプ110のフレーム(すなわち、NPの出口(egress)側のスイッチ・ファブリックから受信されるフレーム)、が含まれるがこれらに限定されない。図3に示すカスタマイズされたテーブルには、例えばレイヤ3プロトコルなど、その他の特殊なフレーム・タイプを特定のGPP宛先に対してマップできることが理解される。さらに、カスタマイズされるテーブル100が多数のフレーム・タイプの項目を有するより大きなサイズである場合は、テーブルを二分木の形でNPのメモリ内で構成し、テーブル検索を容易にできることが理解される。特殊なフレーム・タイプとして分類されるフレームごとに対応する項目が提供され、この項目にはターゲット「ブレード(blade)」アドレス115、すなわち特殊なフレーム・タイプを処理する宛先GPPと関連付けられたプリント回路基板の要素のアドレスと、その宛先GPPに接続するNP装置のポート・アドレス120とが含まれる。一部の実施形態では、テーブル100はこの他のマッピング・データを含むことが理解される。
【0018】
好ましい実施形態では、カスタマイズ可能なテーブル100は、GPPからAPIを介してシステム100中の各ネットワーク・プロセッサ125a、...、125nにダウンロードされる。次に示すのは、フラット・テーブルを構成するために実施されるAPIの一例である。
Figure 0003730921
Figure 0003730921
【0019】
以下で、上のAPIの例をさらに詳しく説明する。具体的には、このAPIは手続き呼び出しnp_ims_customizedParms_configureを実施し、一実施形態ではこれはC/C++言語で実行され、図3のカスタマイズ・テーブルを構成するためのユーザ指定のパラメータを受け取る。このパラメータには、例えば、TLVリストに提供されるタグ付きリスト値(TLV)の数を表し、テーブルに構成する特殊なフレーム・タイプの数の初期化を提供するnp_unit32number-TLVsの入力;TLV値ストリングへのポインタを表すnp_TLV_s*tlvの入力;および、APIがNPのテーブルのカスタマイズを終了した旨の通知など、非同期のシステム応答のための制御情報を表すnp_msg_ctrl_info_s ctrl_infoの入力が含まれる。TLV値のストリングを参照して、各ストリングは上記で特定する形態:
【表1】
Figure 0003730921
【0020】
であることが好ましい。ここで、Attr#は、例えばPPPプロトコルなど、構成する特定プロトコルを記述する属性番号(1つまたは複数のオクテット)を表し、lengthは値の物理的な長さを表し、Valueは、プロトコル・フレーム・タイプの実際の値を表し、NPの「ブレード」アドレスを表す例えば2バイトなど一定量のバイトと、ターゲットGPPと関連付けられたNPポートを表す別の量のバイト(例えば2バイト)とを含む。これらの値はダウンロードされ、可変長のフィールドに記憶される。ヘッダ・ファイルnp_types.hは、可能なTLVの数を取り出すために参照することができ、図3のカスタマイズされたテーブルと対応して以下を含む。
NP_ATTRNUM_PPPCONTROL_ADDR、NP_ATTRNUM_IP_ADDR、NP_ATTRNUM_UNKNOWN_DATA_ADDR、およびNP_ATTRNUM_WRAP_ADDRのような、2バイトのNPアドレス+2バイトのポート・アドレスを含むNP_ATTRNUM_'s。
APIを介したダウンロードのために構成される他のデータには、例えばネットワーク中の各NPがカスタマイズ・テーブルによって構成された旨のAPIを介した通知など、予想される非同期応答の特徴を指定する制御情報が含まれる。np_return_code_tと称されるAPIの戻りパラメータは、例えば次のような戻り値を返す。特定のサブシステムが適切に初期化されなかったことを示すNP_RC_NOT_READY;無効の(bad)パラメータが渡されたことを示すNP_RC_BADPARMS;テーブルの構成中にエラーが発生したことを示すNP_RC_MISCERR;およびNPの構成が成功したことを示すNP_RC_SUCCESS。
【0021】
分散ネットワーク中の各ネットワーク・プロセッサのEPCを構成し、次いで、図4を参照し、好ましい実施形態に従っていくつかの汎用プロセッサに処理を分散するプロセス200について説明する。
【0022】
図4に示すように、ネットワーク・プロセッサがネットワークからフレームを受信することを表す最初の処理ステップ203を示している。ステップ205で、受信したフレーム・タイプをネットワーク・プロセッサ装置のハードウェア・クラシファイアによって分類し、GDHで実行されるNPのピココードにフレームを転送する。ハードウェア・クラシファイアがフレームを分類できなかった場合は、ピココードがそれを分類する。分類に基づいて、ステップ210で、ピココードは、ネットワーク・プロセッサのデータ・ストアにロードされたカスタマイズ・テーブル100(図3)への検索を行うロジックを実行する。フレーム・タイプをテーブル100への索引として使用することが好ましいことが理解される。次いでステップ213で、一致が存在するか、すなわち特殊な処理のためにフレームを特定のGPPに転送すべきかどうかをそのフレーム・タイプに基づいて判定する。一致が存在しない場合(すなわち特殊な処理が必要でない場合)、ネットワーク・プロセッサはステップ215でそのフレームを処理する。ステップ213で一致が存在すると判定された場合は、ステップ218でカスタマイズされたテーブル100で検索を実行して、そのフレーム・タイプのためのターゲットGPPアドレスおよびポート・アドレスを判断し、ステップ220でそのパラメータを使用してその特殊フレームを適切なGPPに転送する。図4との関連で説明する処理の結果には4つの可能な結果がある。すなわち、1)ネットワーク・プロセッサによる処理のためにパケットを転送する。2)処理のためにパケットをGPPにリダイレクトする。3)パケットをドロップする。および、4)パケットをドロップし、任意のメッセージをGPPに送信する。
【0023】
次いで、ポイントツーポイント・プロトコル(PPP)フレームの処理を伴う場合について、図4に示す好ましい実施形態の方法論を使用した一例を説明する。PPPフレームはネットワーク・プロセッサによって処理される。フレームがPPP制御フレームである場合は、カスタマイズされたルックアップ・テーブル(図3)に基づいて、構成されたGPPに転送される。フレームがレイヤ3フレームである場合は、レイヤ2のネットワーク・プロセッサのピココードがそのフレームを適切なネットワーク・プロセッサ・コンポネントに転送する。レイヤ3プロトコルがピココードによって処理されない場合、フレームは、ルックアップ・テーブルで指定されるそのプロトコル用に構成されたGPPに転送される。レイヤ3プロトコルが使用可能になっていない場合、フレームは、図示しない廃棄待ち行列に入れられる。フレームが、認識されるレイヤ3フレームでない場合、廃棄不明PPPフレームが構成され、そのフレームが廃棄待ち行列に入れられる。それ以外の場合、フレームは、ルックアップ・テーブルで指定される、不明の/認識されないPPPフレーム用に構成されたGPPに転送される。
【0024】
行われる動作の例を次の表にまとめる。
【表2】
Figure 0003730921
【0025】
いくつかの汎用プロセッサに処理を分散することをネットワーク・プロセッサに可能にし、また大規模なネットワーキング環境内でどのNPが特定の動作を処理するかを構成する機能を提供することにより、各汎用プロセッサが保持するプロトコル・スタックが少なくて済むことになり、好都合である。これは、各GPPが、図3に例示するカスタマイズ可能なテーブルに従ってNPによって転送される特殊なフレームだけを処理する能力を備えるためであることを理解できる。
【図面の簡単な説明】
【図1】 単一の汎用プロセッサ(GPP)装置によって制御される複数のネットワーク処理装置を含む、分散ネットワーク処理環境の概略ブロック図である。
【図2】 複数の汎用プロセッサ(GPP)装置によって制御される複数のネットワーク処理装置を含む分散ネットワーク処理環境の概略ブロック図である。
【図3】 本発明の好ましい実施形態による、特殊なフレーム・タイプを転送するためのカスタマイズ可能なテーブル100の一例の図である。
【図4】 本発明の好ましい実施形態により、どのようにいくつかの汎用プロセッサに処理を分散するかを示す流れ図である。

Claims (13)

  1. 少なくとも1つのネットワーク・プロセッサ(NP)装置(25a、25b、25c、...、25n)を制御する1つまたは複数の汎用制御プロセッサ(GPP)(15a、15b、...、15n)を含む分散ネットワーキング環境内のNP装置によって受信される特殊なデータ・フレームの処理を分散するシステムにおいて、前記NP装置で受信される特殊なデータ・フレーム・タイプを、前記特殊なフレーム・タイプを処理することが可能なターゲットGPPと関連付けられたターゲット・アドレス(115)およびターゲット・ポート・アドレス(120)と共にマップするために前記少なくとも1つのNP装置内で実施される構成可能なテーブル(100)を含むシステムであって、前記NPネットワーク・プロセッサは、受信したデータ・フレームを分類し、かつ前記フレームをそれぞれ前記構成可能なテーブル内の項目と比較する機構を含み、前記ネットワーク処理装置は、前記テーブル内に対応する項目を有する前記分類されたフレーム・タイプに応じて、対応するターゲット・ポート・アドレスを通じて前記フレームを前記ターゲットGPPに転送する手段を含み、前記ターゲットGPPは前記特殊なデータ・フレーム・タイプの転送を処理するために提供される、システム。
  2. 前記GPPを通じて、前記ターゲット・アドレスおよびターゲット・ポート・アドレスの項目により前記NP装置中の前記構成可能なテーブルをカスタマイズするアプリケーション・プログラミング・インタフェースをさらに含む請求項1に記載のシステム。
  3. 特殊なデータ・フレーム・タイプに、前記NP装置によって認識されないプロトコルのデータ・フレームが含まれる請求項1または2に記載のシステム。
  4. 前記NP装置によって認識されないプロトコルのフレーム・タイプを廃棄待ち行列に入れる構成可能な手段を含む請求項1または2に記載のシステム。
  5. 前記構成可能なテーブルが、前記NP装置のメモリ内で構成されたフラット・テーブルの設計である請求項1、2、3、または4に記載のシステム。
  6. 前記構成可能なテーブルが、前記NP装置のメモリ内で構成された二分木の設計である請求項1、2、3、または4に記載のシステム。
  7. 1つまたは複数のネットワーク・プロセッサ(NP)装置(25a、25b、25c、...、25n)を制御する1つまたは複数の汎用制御プロセッサ(GPP)(15a、15b、...、15n)を含む分散ネットワーキング環境内のNP装置によって受信される特殊なデータ・フレームの処理を分散する方法であって、
    a)前記NP装置内で実施されるテーブル(100)であって、前記NP装置で受信される特殊なデータ・フレーム・タイプを、前記特殊なフレーム・タイプを処理することのできるターゲットGPPと関連付けられたターゲット・アドレス(115)およびターゲット・ポート・アドレス(120)と共にマップするテーブルを提供するステップと、
    b)前記NPネットワーク・プロセッサで、あるデータ・フレーム・タイプのデータ・フレームを受信するステップ(203)と、
    c)受信したデータ・フレームを分類し、各前記フレームを前記テーブルの項目と比較するステップ(205)と、
    d)前記分類されたフレーム・タイプが前記テーブル内に対応する項目を有する場合は、対応するターゲット・ポート・アドレスを通じて前記特殊なデータ・フレームを前記ターゲットGPPに転送し、前記ターゲットGPPは前記特殊なデータ・フレーム・タイプの転送を処理するために提供されるステップ(220)と、
    を含む方法。
  8. 前記NP装置によって認識されないプロトコルのフレーム・タイプを廃棄待ち行列に入れる構成可能なオプションを提供するステップを含む請求項7に記載の方法。
  9. ステップa)が、各特殊なフレーム・タイプの項目に対するターゲットGPPと関連付けられた前記ターゲット・アドレスおよびターゲット・ポート・アドレスにより前記テーブルを構成するためのアプリケーション・プログラミング・インタフェースを実施するステップを含む、請求項7または8に記載の特殊なデータ・フレームの処理を分散する方法。
  10. 1つまたは複数のネットワーク・プロセッサ(NP)装置(25a、25b、25c、...、25n)を制御する1つまたは複数の汎用制御プロセッサ(GPP)(15a、15b、...、15n)を含む分散ネットワーキング環境で動作するNP装置を構成するためのアプリケーション・プログラミング・インタフェースであって、
    前記NP装置に入力するためにデータ構造を生成する機構であって、前記データ構造は、特殊なフレーム・タイプと、前記特殊なフレーム・タイプを処理することができる前記ネットワーキング環境内のGPPと関連付けられた関連ターゲット・アドレス(115)およびターゲット・ポート・アドレス(120)とを指定する1つまたは複数の項目を有する機構と、
    前記生成されたデータ構造からカスタマイズされたテーブル(100)を生成し、かつ、前記カスタマイズされたテーブルをNP装置のメモリに入力し、それにより、前記テーブルで後続のテーブル検索を行って、ターゲット・ポート・アドレスを通じて特殊なフレーム・タイプを関連付けられたGPPに転送する装置と、
    を含むアプリケーション・プログラミング・インタフェース。
  11. 前記データ構造はタグ付きリスト値のストリングを含み、各タグ付きリスト値は、前記テーブルに含める特殊なフレーム・タイプを表す属性フィールドと、前記タグ付きリスト値の長さを表す長さフィールドと、前記特殊なフレーム・タイプについてのターゲットと関連付けられたターゲット・アドレスおよびターゲット・ポート・アドレスを指定する値フィールドとを含む、請求項10に記載のアプリケーション・プログラミング・インタフェース。
  12. 機械可読のプログラム記憶装置であって、機械による実行が可能な命令のプログラムを具体的に実現して、1つまたは複数のネットワーク・プロセッサ(NP)装置(25a、25b、25c、...、25n)を制御する1つまたは複数の汎用制御プロセッサ(GPP)(15a、15b、...、15n)を含む分散ネットワーキング環境で動作するNP装置を構成する方法ステップを行い、前記方法ステップは、
    (a)前記NP装置に入力するためにデータ構造を生成するステップであって、前記データ構造は、特殊なフレーム・タイプと、前記特殊なフレーム・タイプを処理することが可能な、前記ネットワーキング環境と関連付けられたGPPと関連付けられた関連ターゲット・アドレス(115)およびターゲット・ポート・アドレス(120)を指定する1つまたは複数の項目を有するステップと、
    (b)前記生成されたデータ構造からカスタマイズされたテーブル(100)を生成し、前記カスタマイズされたテーブルをNP装置のメモリに入力し、それにより、前記テーブルで後続のテーブル検索を行って、ターゲット・ポート・アドレスを通じて特殊なフレーム・タイプを関連付けられたGPPに転送するステップと、
    を含む機械可読のプログラム記憶装置。
  13. 前記データ構造はタグ付きリスト値のストリングを含み、各タグ付きリスト値は、前記テーブルに含める特殊なフレーム・タイプを表す属性フィールドと、前記タグ付きリスト値の長さを表す長さフィールドと、前記特殊なフレーム・タイプについてのターゲットと関連付けられたターゲット・アドレスおよびターゲット・ポート・アドレスを指定する値フィールドとを含む、請求項12に記載の機械可読のプログラム記憶装置。
JP2001574632A 2000-04-06 2001-04-05 ネットワーク・プロセッサ内のパラメータをカスタマイズおよび転送する方法および装置 Expired - Fee Related JP3730921B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/544,588 US6675221B1 (en) 2000-04-06 2000-04-06 Method and apparatus for customizing and fowarding parameters in a network processor
US09/544,588 2000-04-06
PCT/GB2001/001566 WO2001077849A2 (en) 2000-04-06 2001-04-05 Multiprotocol handling arrangement

Publications (2)

Publication Number Publication Date
JP2003530744A JP2003530744A (ja) 2003-10-14
JP3730921B2 true JP3730921B2 (ja) 2006-01-05

Family

ID=24172803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001574632A Expired - Fee Related JP3730921B2 (ja) 2000-04-06 2001-04-05 ネットワーク・プロセッサ内のパラメータをカスタマイズおよび転送する方法および装置

Country Status (14)

Country Link
US (1) US6675221B1 (ja)
EP (1) EP1293067B1 (ja)
JP (1) JP3730921B2 (ja)
KR (1) KR100543732B1 (ja)
CN (1) CN1165144C (ja)
AT (1) ATE331370T1 (ja)
AU (1) AU2001248517A1 (ja)
CA (1) CA2407060C (ja)
DE (1) DE60120970T2 (ja)
ES (1) ES2264443T3 (ja)
HK (1) HK1053025B (ja)
MY (1) MY129249A (ja)
TW (1) TW501024B (ja)
WO (1) WO2001077849A2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6973503B2 (en) 2002-05-23 2005-12-06 International Business Machines Corporation Preventing at least in part control processors from being overloaded
DE10260604B4 (de) * 2002-12-23 2006-09-21 Infineon Technologies Ag Multikanal-Prozessor
CN100440824C (zh) * 2003-01-28 2008-12-03 华为技术有限公司 数字传送网上不同的数据帧接入和传送的方法
US7281247B2 (en) * 2003-06-24 2007-10-09 Microsoft Corporation Software image creation in a distributed build environment
US20050154762A1 (en) * 2004-01-14 2005-07-14 Bing Wang Fast rule lookup with arbitrary IP range configurations
US7974272B2 (en) 2004-07-29 2011-07-05 Conexant Systems, Inc. Remote control of a switching node in a stack of switching nodes
CN1294728C (zh) * 2004-08-05 2007-01-10 华为技术有限公司 边缘路由器提供服务质量保证的方法及系统
US20060165121A1 (en) * 2005-01-27 2006-07-27 Alcatel Communication protocol interface systems and methods
KR100726175B1 (ko) * 2005-12-09 2007-06-11 한국전자통신연구원 무선 휴대 인터넷 시스템에서 상위 프로토콜 메시지의 방송 전송 방법 및 장치
US7990974B1 (en) 2008-09-29 2011-08-02 Sonicwall, Inc. Packet processing on a multi-core processor
CN101964759B (zh) * 2010-11-10 2012-03-28 中国人民解放军国防科学技术大学 支持多用户的高速报文分流方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2094097C (en) 1992-04-30 2000-05-30 Ray Balogh Multi-equipment routing method and master station for layered protocol communication network system
US5570084A (en) 1994-06-28 1996-10-29 Metricom, Inc. Method of loose source routing over disparate network types in a packet communication network
US5485460A (en) 1994-08-19 1996-01-16 Microsoft Corporation System and method for running multiple incompatible network protocol stacks
US6463078B1 (en) * 1998-07-22 2002-10-08 Microsoft Corporation Method for switching protocols transparently in multi-user applications
US6424621B1 (en) * 1998-11-17 2002-07-23 Sun Microsystems, Inc. Software interface between switching module and operating system of a data packet switching and load balancing system
US6272522B1 (en) * 1998-11-17 2001-08-07 Sun Microsystems, Incorporated Computer data packet switching and load balancing system using a general-purpose multiprocessor architecture
US6426944B1 (en) * 1998-12-30 2002-07-30 At&T Corp Method and apparatus for controlling data messages across a fast packet network
US6473434B1 (en) * 2001-04-20 2002-10-29 International Business Machines Corporation Scaleable and robust solution for reducing complexity of resource identifier distribution in a large network processor-based system

Also Published As

Publication number Publication date
HK1053025B (zh) 2005-02-25
CN1165144C (zh) 2004-09-01
WO2001077849A3 (en) 2002-04-18
ATE331370T1 (de) 2006-07-15
CN1422474A (zh) 2003-06-04
TW501024B (en) 2002-09-01
AU2001248517A1 (en) 2001-10-23
MY129249A (en) 2007-03-30
ES2264443T3 (es) 2007-01-01
DE60120970T2 (de) 2007-01-04
HK1053025A1 (en) 2003-10-03
JP2003530744A (ja) 2003-10-14
KR20020087472A (ko) 2002-11-22
WO2001077849A2 (en) 2001-10-18
US6675221B1 (en) 2004-01-06
CA2407060C (en) 2007-10-16
KR100543732B1 (ko) 2006-01-23
DE60120970D1 (de) 2006-08-03
CA2407060A1 (en) 2001-10-18
EP1293067B1 (en) 2006-06-21
EP1293067A2 (en) 2003-03-19

Similar Documents

Publication Publication Date Title
US10015090B2 (en) Packet steering
EP2795874B1 (en) Controller for flexible and extensible flow processing in software-defined networks
US8301749B1 (en) Unused resource recognition in real time provisioning and management of fabric-backplane enterprise servers
US8443066B1 (en) Programmatic instantiation, and provisioning of servers
US7860961B1 (en) Real time notice of new resources for provisioning and management of fabric-backplane enterprise servers
US7860097B1 (en) Fabric-backplane enterprise servers with VNICs and VLANs
EP2795872B1 (en) System for flexible and extensible flow processing in software-defined networks
US8868790B2 (en) Processor-memory module performance acceleration in fabric-backplane enterprise servers
US7873693B1 (en) Multi-chassis fabric-backplane enterprise servers
US7586915B1 (en) Technique for coupling entities via virtual ports
US7953903B1 (en) Real time detection of changed resources for provisioning and management of fabric-backplane enterprise servers
WO2017218173A1 (en) Providing data plane services for applications
JP3730921B2 (ja) ネットワーク・プロセッサ内のパラメータをカスタマイズおよび転送する方法および装置
EP2795873A1 (en) Forwarding element for flexible and extensible flow processing in software-defined networks
US7453871B2 (en) Efficient redirection of logging and tracing information in network node with distributed architecture
JP2002538724A (ja) マルチプロセッサコンピュータでネットワークトラフィック処理を分散する方法および装置
US8468495B2 (en) Use of metadata for seamless updates
CN103986660B (zh) 加载微码的装置以及加载微码的方法
US7653718B2 (en) Shell specific filtering and display of log messages
JP2016005282A (ja) パケットの固有の識別子を用いて、パケットの構造を特定する方法およびその装置
US20240323147A1 (en) Distributed storage of packet transformation information in forwarding hardware
US6714542B1 (en) Apparatus and method for storing min terms in a central min term memory for efficient sharing by a plurality of network switch ports
US7720948B2 (en) Method and system of generically specifying packet classification behavior

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050916

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051007

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20081014

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20091014

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091014

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101014

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101014

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111014

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees