JP2004287811A - データ処理回路 - Google Patents

データ処理回路 Download PDF

Info

Publication number
JP2004287811A
JP2004287811A JP2003078586A JP2003078586A JP2004287811A JP 2004287811 A JP2004287811 A JP 2004287811A JP 2003078586 A JP2003078586 A JP 2003078586A JP 2003078586 A JP2003078586 A JP 2003078586A JP 2004287811 A JP2004287811 A JP 2004287811A
Authority
JP
Japan
Prior art keywords
data
processing
processor
switch
data processing
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.)
Pending
Application number
JP2003078586A
Other languages
English (en)
Inventor
Toru Shimada
徹 嶋田
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
Priority to JP2003078586A priority Critical patent/JP2004287811A/ja
Priority to US10/766,358 priority patent/US20040186914A1/en
Publication of JP2004287811A publication Critical patent/JP2004287811A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • H04L49/602Multilayer or multiprotocol switching, e.g. IP switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/40Constructional details, e.g. power supply, mechanical construction or backplane

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multi Processors (AREA)

Abstract

【課題】複数のデータ処理を順次実行するデータ処理回路に関し、連続性・方向性を持つデータの処理順序をハードで変更すること、また、処理の種類をハードで変更する。
【解決手段】データ処理プロセッサ21a,21bが、データ80b,80cに含まれる情報に基づいて決定される次の処理先を示す処理先識別子をデータ80b,80cに付与し、スイッチ11が該処理先識別子に基づき、該データを該次の処理先に与えるか、又は処理先識別子付与部14が、データに含まれる情報に基づき決定される全てのデータ処理手順を示す処理先識別子をデータ80に付与したデータ80aをスイッチ11に与え、スイッチ11が、該処理先識別子に基づき該データを次の処理先に与え、データ処理プロセッサ21a,21bがスイッチ11から受信した該データに所定の処理を施した後、該データをスイッチ11に戻す。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明はデータ処理回路に関し、特に、複数のデータ処理を順次実行するデータ処理回路に関するものである。
近年、通信技術の発達に伴い、ブロードバンド化(高速化)及びマルチメディア・トラフィック化が進んでいる。このような高速化したマルチメディア・トラフィックには、ソフトウエアでは対応することができず、複数のデータ処理を順次実行する、ハードウェアで構成されたデータ処理回路が必要である。
【0002】
【従来の技術】
例えば、IPなどのトラフィックデータを扱うルータは、一般的にトラフィック処理を受け持つモジュール等の専用のハードウェア、すなわち、データ処理回路を搭載し、高速なデータ処理を実現している。
【0003】
データ処理回路は、一般的に、複数のハードウェアを直列接続又は並列接続することにより処理能力を高めており、例えば、2つのネットワークプロセッサ(NetWork Processor、以下、NWPと略称することがある。)直列に搭載し、最初のプロセッサでL2(レイヤ2:Layer2)の処理を行い、次のプロセッサでL3(レレイヤ3:Layer3)の処理を行う。
【0004】
【発明が解決しようとする課題】
このように複数のハードウェアで構成されたデータ処理回路は、回路構成を変更するためには再設計が必要であり、次の具体的な問題(1)〜(3)がある。
(1)ハードウェアを追加することによりデータ処理能力(スループット性能)を向上させるためには、データ処理回路の再設計が必要である。
【0005】
(2)ハードウェアの追加・削除によるトラフィックデータ処理機能の追加・削除が困難である。
(3)データを処理するハードウェアの順序、回数を変更することができない。すなわち、トラフィックデータの処理フローを変更することが困難である。
【0006】
上記の問題(1)を解決するために、例えば、予め大量のハードウェアを搭載するという方法もあるが、この方法は経済的ではない上に搭載数の予測が難しい。用途(機能)に合わせて構成の異なるハードウェアを複数設計した場合、設計コストが掛かる上に、そのバリエーション数に比例して開発工数及び試験工数が増加し、効率的ではない。
【0007】
すなわち、従来のハードウェアによるトラフィックデータ処理回路は、その構成を変更することは容易でなく、再設計を行わなくてはならない。
また、従来の情報処理装置(パケット処理装置)には、パケットを入力するパケット入力手段と、プロセッサ内部の情報を内部情報として引き継ぎ制御する内部情報引き継ぎ手段と、前記内部情報にもとづいて、入力したパケットを演算処理するパケット演算手段と、演算後のパケットを出力するパケット出力手段と、から構成される複数のパケット処理プロセッサと、前記パケット処理プロセッサを直列接続する通信ラインとを備えてパケットの処理を行うものがある。
【0008】
すなわち、直列接続された複数のパケット処理間で、プロセッサ内部の情報を内部情報として引き継いで、パケットの演算処理を行うことにより、オーバヘッドを抑止し、パケットを高速に処理することを図っている(例えば、特許文献1参照)。
【0009】
しかしながら、このようなパケット処理装置は、複数の処理フローを特定の順序で行うように、複数のパケット処理プロセッサを通信ラインで直列接続して構成することは可能であるが、同一のパケット処理装置で、処理フローを変更した、例えば、異なる順序、回数の処理フローを必要とするパケット処理を行うことはできない。
【0010】
【特許文献1】
特開2002−176440号公報
従って本発明は、複数のデータ処理を順次実行するデータ処理回路において、連続性・方向性を持つデータ処理の順序をハードウェアで変更すること、また、データ処理の種類をハードウェアで変更することを課題とする。
【0011】
【課題を解決するための手段】
上記の課題を解決するため、本発明のデータ処理回路は、データに所定の処理を施す共に、該データに含まれる情報に基づいて決定される次の処理先を示す処理先識別子を該データに付与して出力するデータ処理プロセッサと、該処理先識別子に基づき、該データを該次の処理先に与えるスイッチと、を備えたことを特徴としている。
【0012】
図1は、本発明に係るデータ処理回路100の原理的な構成例を示しており、このデータ処理回路100は、データ処理プロセッサ(例えば、ネットワークプロセッサ)21a,21b(以下、符号21で総称することがある。)とスイッチ11を備えている。
【0013】
図2は、本発明のデータ処理回路の動作原理〔1〕を含んでいる。同図に基づき、図1のデータ処理回路100の動作原理〔1〕を以下に説明する。
ステップ S02:データ処理プロセッサ21aは、例えば、入力したデータに所定の処理、例えば、L2処理を施すと共に、該データの内容に基づいて決定される次の処理、例えば、L3処理、又はデータ出力処理(出力用ポート)等を示す処理先識別子(ID=“54”等)を付与したデータ(パケット)80bを出力する。
【0014】
なお、このとき、各データ処理プロセッサ21は、全データ処理プロセッサの配置状態を知っているものとする。
図3は、スイッチ11の動作原理を示している。このスイッチ11は、データ処理プロセッサ21aから受信した処理後のデータ(パケット)80bを、このパケット80bに付加された処理先識別子81(=“54”)に基づき、データ82の次の処理を行うデータ処理プロセッサ21bに接続された端子(ポート54)に与える。
【0015】
ステップ S03:以下同様に、図2において、データ処理プロセッサ21bは、所定の処理をパケット80bのデータ82に施すと共に、次の処理先(この例では、出力処理)を示す処理先識別子81(=“46”)に付け替えたパケット80cをスイッチ11に戻す。
【0016】
スイッチ11は、パケット80cの処理先識別子81に基づき、パケット80cのデータ82を出力ポート46に与える。
これにより、データ処理回路100は、受信したデータの内容によって決定されるデータ処理順序に従って、データ処理を容易に行うことが可能になる。すなわち、データ処理回路100は、データの処理内容に対応した処理順序をハードウェアで変更することが可能になる。
【0017】
また、本発明においては、該所定の処理をトラフィック処理とすることができる。すなわち、該所定の処理を、L2処理、L3処理、Ethernet処理、POS処理、及びトンネル処理等のトラフィック処理とすることができる。
また、本発明においては、最初の処理先である該データ処理プロセッサを示す処理先識別子を該データに付与して該スイッチに与える回線インタフェースをさらに備えることができる。
【0018】
すなわち、図1において、データ処理回路100は、さらに回線インタフェース14を備えている。図2において、本発明の動作原理を以下に説明する。
ステップ S01:回線インタフェース14は、受信したトラフィックデータ(パケット)80に、例えば、最初の処理先であるデータ処理プロセッサ21aを示す処理先識別子81(=“41”)を付与したデータ(パケット80a)をスイッチ11に与える。
【0019】
これにより、データ80は、最初の処理先であるデータ処理プロセッサ21aに与えられことになる。
また、本発明においては、該スイッチと、このスイッチ及び該データ処理プロセッサを接続するためのコネクタとを実装するマザーボードと、該データ処理プロセッサの配置状態を管理し該データ処理プロセッサに該配置状態を通知する制御部と、をさらに備えることができる。
【0020】
すなわち、図1において、データ処理回路100は、マザーボード(図示せず。)及び制御部12をさらに備えることができる。
マザーボードは、例えば、スイッチ11とコネクタ15_1,15_2を実装している。このコネクタ15_1,15_2には、例えば、それぞれ、L2処理及びL3処理を行うデータ処理プロセッサ21a,21bを接続(実装)する。
【0021】
制御部12(例えば、マザーボードに実装してもよい。)は、データ処理プロセッサ21a,21bの配置状態を管理し、この配置状態をデータ処理プロセッサ21a,21bに通知する。
データ処理プロセッサ21a,21bは、配置状態に基づき処理したデータに付与する処理先識別子81を決定する。
【0022】
これにより、データ処理回路100は、受信したデータの処理の種類に対応したデータ処理プロセッサを容易に実装(追加及び削除を含む。)することが可能になると共に、その処理手順も容易に決定することが可能になる。
また、本発明においては、該制御部12に与える、該データ処理プロセッサの該配置状態を予め記憶したメモリをさらに備えることができる。
【0023】
すなわち、同図において、データ処理回路100はメモリ13を備えている。このメモリ13は、例えば、それぞれ、コネクタ15_1及び15_2とに接続されているL2処理用のデータ処理プロセッサ21a及びL3処理用のデータ処理プロセッサ21bとの関係を予め記憶している。これにより、制御部12は、データ処理プロセッサ21a,21bの配置状態を知ることが可能になる。
【0024】
また、本発明においては、該メモリ13に該配置状態を入力する入力部を備えることができる。これにより、メモリに配置状態を外部から入力することが可能になる。なお、同図には、入力部は示されていない。
また、本発明においては、該データ処理プロセッサが、そのデータ処理内容を示すデータ処理識別子情報を有し、該制御部12が該データ処理識別子情報を読み取ることにより、該配置状態を認識することが可能である。
【0025】
これにより、制御部12は、外部から予めメモリ13に設定された配置状態を読むことなく配置状態を認識することが可能になる。
また、本発明においては、該データ処理プロセッサが、そのデータ処理内容を示すデータ処理識別子情報を有し、各データ処理プロセッサが、相互に他のデータ処理プロセッサのデータ処理識別子情報を交換することが可能である。
【0026】
これによっても、各データ処理プロセッサは、全データ処理プロセッサの配置状態を認識することが可能になる。
また、本発明においては、該スイッチが、入力ポートの前段、又は出力ポートの後段にデータを一時的に保持するキューを備えることができる。
【0027】
すなわち、図3には図示されていないが、入力ポートの前段、又は出力ポートの後段にキューが接続されている。前段のキューは入力されたデータを、後段のキューは、スイッチングされた後出力ポートに出力されたデータを一時的に保持する。
【0028】
これにより、スイッチの前段及び後段に接続された、例えば、データ処理プロセッサ間のデータ処理のタイミングを合わせることが可能になる。
なお、後述する図6〜図8に示されるスイッチ11の前段及び後段に配置されているキューは図を簡略化するため図示されていない。
【0029】
また、上記の課題を解決するため、本発明のデータ処理回路は、データに含まれる情報に基づき決定される全てのデータ処理手順を示す処理先識別子を該データに付与する処理先識別子付与部と、該処理先識別子に基づき該データを次の処理先に与えるスイッチと、該スイッチから受信した該データに所定の処理を施した後、該データをスイッチに戻すデータ処理プロセッサとを備えたことを特徴としている。
【0030】
すなわち、図1において、データ処理回路100は、処理先識別子付与部(同図では回線インタフェース)14、スイッチ11、及びデータ処理プロセッサ21a,21b(以下、符号21で総称することがある。)を備えている。
図2は、本発明の動作原理〔2〕を示している。この動作原理〔2〕を以下に説明する。
【0031】
(1)ステップ S11:処理先識別子付与部14は、受信したデータ(パケット)80に含まれる情報に基づき、このデータ80に施す全てのデータ処理とその順序を決定し、例えば、これらのデータ処理を施すデータ処理プロセッサ21a,21b、及びデータの出力処理(出力ポート47)に対応する処理先識別子81_1=“41”、処理先識別子81_2=“54”、及び処理先識別子81_3=“47”(以下、符号81で処理先識別子を総称することがある。)をデータ80に付与したパケット80xをスイッチ11に与える。
【0032】
(2)スイッチ11は、処理先識別子81に基づき、データを次の処理先に与える。
(3)データ処理プロセッサ21は、スイッチ11から受信したデータに所定の処理を行った後、スイッチ11に戻す。なお、同図では、プロセッサ21a,21bは、パケットに次の処理に対応する処理先識別子を付与しているが、本発明では、プロセッサ21a,21bは、処理先識別子を付与しない。
【0033】
(4)上記の(2)及び(3)を繰り返すことで、データ80に必要な処理は、総て実行される。
(5)次の処理先が出力処理である場合は、データは、データ処理回路100から出力される。
【0034】
また、本発明においては、該データ処理プロセッサが、自分自身を示す処理先識別子を削除してもよい。
また、本発明においては、該スイッチが、該次の処理先の処理先識別子を削除してもよい。
【0035】
また、本発明においては、該処理先識別子付与部と、該スイッチと、このスイッチ及び該データ処理プロセッサを接続するためのコネクタとを実装するマザーボードと、該データ処理プロセッサの配置状態を管理し該処理先識別子付与部に配置状態を通知する制御部とをさらに備えることができる。
【0036】
また、本発明においては、該データ処理プロセッサが、その処理内容を示すデータ処理識別子情報を有し、該処理先識別子付与部が該データ処理識別子情報を読み取ることが可能である。
すなわち、図1において、処理先識別子付与部(回線インタフェース)は、データ処理プロセッサ21a,21bからデータ処理識別子情報93を読取ることにより、データ処理プロセッサ21a,21bのデータ処理内容及び配置状態を認識することが可能になる。
【0037】
【発明の実施の形態】
図4(1)は、本発明に係るデータ処理回路100をルータ200に適用した実装例を示している。このルータ200は、データ処理回路100_1〜100_3(以下、符号100で総称することがある。)と、これらのデータ処理回路100を収容する筐体201とで構成されている。
【0038】
同図(2)は、データ処理回路100の実装例を示している。このデータ処理回路100は、マザーボード10及びドータカード20_1〜20_6(以下、符号20で総称することがある。)で構成されている。
マザーボード10には、スイッチ11、管理用プロセッサ12、メモリ13、データフロー80を受信する回線インタフェース14_1、コネクタ15_1〜15_6(以下、符号15で総称することがある。)、及びコネクタ16を搭載している。このコネクタ16は、データ処理回路100と筐体を接続するためのコネクタである。
【0039】
ドータカード20は、ネットワークプロセッサ21及びコネクタ22で構成されている。このコネクタ22は、コネクタ15に接続することによりドータカード20とマザーボード10とを接続する。
図5は、図4(2)に示したデータ処理回路100の構成実施例を示している。この構成実施例では、全二重のデータ処理回路100を示している。
【0040】
回線インタフェース14_1とコネクタ16(図示せず。同図(2)参照)に接続されたモジュール間インタフェース14_2は、それぞれ、スイッチ11にパケット(データフロー)80aを与えると共にスイッチ11からパケット(データフロー)80jを受信する。
【0041】
ドータカード20_1〜20_n(以下、符号20で総称することがある。)に、それぞれ搭載された各ネットワークプロセッサ21は、各コネクタ22及びコネクタ15_1〜15_nを介してスイッチ11に接続され、データフロー(パケット)80b〜80iを送受信する。
【0042】
また、ネットワークプロセッサ21への電源供給、クロック供給、及び制御信号71の送受信は、コネクタ22及びコネクタ15_1〜15_nを介して行われる。
このように、ドータカード20は脱着可能であるため、理論的にはn個のコネクタ15を用意すれば、ネットワークプロセッサ21の搭載数は、1から最大n個までの間で可変になる。
【0043】
構成定義設定用メモリ13には、コネクタ15_1〜15_nに接続されているドータカード20_1〜20_nに搭載されているネットワークプロセッサ21の処理内容(例えば、L2処理、L3処理等)をスイッチ11のポートに対応付けた構成定義情報92として予め設定されている。
【0044】
管理用プロセッサ12は、構成定義情報92を構成定義情報通知91で各プロセッサ21に通知する。これにより、各プロセッサ21は、スイッチ11のポートに接続されたプロセッサ21の処理内容を知ることができる。
なお、メモリ13の代わりに、各プロセッサ21に、それぞれの処理内容示すデータ処理識別子を設定しておき、このデータ処理識別子を管理用プロセッサ12が読み出して、各プロセッサ21に構成定義情報92として通知してもよい。
【0045】
また、管理用プロセッサ12を介さずに、各プロセッサ21が、相互にデータ処理識別子を通知し合うことで、各プロセッサ21が構成定義情報92を認識するようにしてもよい。
図6(1)は、本発明のデータ処理回路100aの動作実施例(1)を示している。この実施例(1)では、スイッチ11のポート41,42にL2プロセッサ21aが接続され、ポート44,45にL3プロセッサ21bが接続されている。
【0046】
データ処理回路100aのデータ処理動作を以下に説明する。
ステップ S21:入力ポート40から入力されたパケット80aは、ポート41を経由して、L2プロセッサ21aに与えられる。L2プロセッサ21aは、パケット80aにL2処理を施すと共に、パケット80aのIPデータ82を参照して、次の処理がL3処理であると判別する。
【0047】
そして、L2プロセッサ21aは、パケット80aのヘッダ81を、L3プロセッサ21bが接続されているポート44の番号“44”、すなわち、次に実施するL3処理を施すL3プロセッサ21bを示す処理先識別子=“44”に付け替えたパケット80bをスイッチ11に戻す。
【0048】
スイッチ11は、パケット80bを、そのヘッダ81に付与された処理先識別子=“44”に基づき、ポート44に送る。
ステップ S22:L3プロセッサ21bは、パケット80bにL3処理を施すと共に、パケット80bのデータ82を参照して、次の処理が出力処理であると判別する。
【0049】
そして、L2プロセッサ21aは、パケット80bのヘッダ81を、出力ポート46の番号“46”に付け替えたパケット80cをスイッチ11に戻す。
スイッチ11は、パケット80cを、このヘッダ81に付与された処理先識別子=“46”に基づき、出力ポート46に送る。これにより、パケット80aに含まれていたデータ82に順次L2処理及びL3処理が施されて出力されることになる。
【0050】
同図(2)は、本発明のデータ処理回路100bの動作実施例(2)を示している。この実施例(2)が、同図(1)に示した実施例(1)と異なる点は、スイッチ11のポート50,51にトンネル処理を行うトンネル処理プロセッサ21cが接続されていることである。
【0051】
データ処理回路100bのデータ処理動作を以下に説明する。
ステップ S31 S32:データ処理回路100bが、パケット80aに実施例(1)のデータ処理回路100aと同じ処理を施す場合は、実施例(1)のステップS21,S22と同様である。
【0052】
ステップ S33:データ処理回路100bが、パケット80aにL2処理、L3処理、及びトンネル処理を施す場合、L3プロセッサ21bは、パケット80bのデータ82を参照して、次の処理がトンネル処理であると判別し、パケット80bのヘッダ81を、トンネル処理プロセッサ21cが接続されているポート51の番号“51”に付け替えたパケット80dをスイッチ11に戻す。
【0053】
スイッチ11は、パケット80dを、このヘッダ81の付与された処理先識別子=“51”に基づき、ポート51に送る。
ステップ S34:トンネル処理プロセッサ21cは、パケット80dのデータ82にトンネル処理を施すと共に、パケット80cのデータ82を参照して、次の処理が出力処理であると判別する。
【0054】
そして、トンネル処理プロセッサ21cは、パケット80dのヘッダ81を、出力ポート46の番号“46”に付け替えたパケット80eをスイッチ11に戻す。
スイッチ11は、パケット80eを、そのヘッダ81の付与された識別子=“46”に基づき、出力ポート46に送る。これにより、パケット80aに含まれていたデータ82に順次L2処理、L3処理、及びトンネル処理が施されて出力されたことになる。
【0055】
このように、図6(1)に示した実施例(1)のL2処理及びL3処理のみを施すことが可能なデータ処理回路100aに、例えば、トンネル処理プロセッサ21cを空きスロットのコネクタに接続することにより、容易に、L2処理、L3処理、及びトンネル処理を施すことが可能なデータ処理回路100bに変更することが可能になる。
【0056】
なお、実施例(1)及び(2)では、各データ処理プロセッサ21が、パケットのヘッダを、受信したパケットのデータに基づき判定した次の処理先識別子に付け替えたが、処理先識別子付与部(図1参照)をスイッチ11の前段に設け、この処理先識別子付与部が、受信したデータに基づき、全データ処理の処理先識別子をヘッダとして、データに付加するようにしてもよい。
【0057】
この場合、データ処理プロセッサ21は、例えば、スイッチ11から与えられたデータにデータ処理を施すと共に、自プロセッサ21を指定する処理先識別子を削除して、処理後のデータをスイッチ11に戻すだけでよい。
図7は、本発明のデータ処理回路100cに動作実施例(3)を示している。この実施例(3)が、図6(1)に示した実施例(1)と異なる点は、ポート44,45にL3プロセッサ21bの代わりにEthernetプロセッサ21dが接続され、さらに、ポート50,51にPOSプロセッサ21eが接続されていることである。
【0058】
L2プロセッサ21aは、パケット80aにL2処理を施すと共に、パケット80aのデータに基づき次の処理がEthernet処理と判別したとき、パケット80aのヘッダを、処理先識別子=“44”に付け替えたパケットをスイッチ11に戻し、次の処理がPOS処理と判別したとき、処理先識別子=“50”に付け替えたパケットをスイッチ11に戻す。
【0059】
Ethernetプロセッサ21d及びPOSプロセッサ21eは、それぞれ、Ethernet処理及びPOS処理をパケットに施した後、受信したパケットのヘッダを、出力ポート46及び47の識別子=“46”,“47”に付け替えてスイッチ11に戻す。
スイッチ11は、各パケットを、そのヘッダに設定された処理先識別子81に基づき、出力ポート46又は47に出力する。
【0060】
図8(1)は、本発明のデータ処理回路100dの動作実施例(4)を示している。この実施例(4)では、2つのハーフ・デュープレックス・ネットワークプロセッサ21H_1,21H_2を用いて、双方向通信(Duplextransmission)のデータ処理回路100dを構成している。
【0061】
すなわち、例えば、L2処理を施すネットワークプロセッサ21H_1が、スイッチ11のポート42,43に接続され、L2処理を施すネットワークプロセッサ21H_2が、スイッチ11のポート51,52に接続されている。
入力ポート40からスイッチ11に入力されたパケット80aは、ネットワークプロセッサ21H_1に与えられL2処理が施された後、パケット80bとして出力ポート46から出力される。
【0062】
一方、入力ポート47からスイッチ11に入力されたパケット80cは、ネットワークプロセッサ21H_2に与えられL2処理が施された後、パケット80dとして出力ポート57から出力される。これにより、L2処理を施す双方向通信が実現される。
同図(2)は、本発明のデータ処理回路100eの動作実施例(5)を示している。この実施例(5)では、1つのフル・デュープレックス・ネットワークプロセッサ21Fを用いて、双方向通信のデータ処理回路100eを構成している。
【0063】
すなわち、スイッチ11のポート41〜44には、ネットワークプロセッサ21Fが接続されている。
ポート40から入力されたパケット80aは、ポート41を経由してネットワークプロセッサ21Fに与えられ、このネットワークプロセッサ21Fで、例えば、L2処理が施された後、ポート44,46を経由してパケット80bとして出力される。
【0064】
一方、ポート47から入力されたパケット80cは、ポート43を経由してネットワークプロセッサ21Fに与えられ、このネットワークプロセッサ21Fで、L2処理が施された後、ポート42,57を経由してパケット80dとして出力される。
(付記1)
データに所定の処理を施すと共に、該データに含まれる情報に基づいて決定される次の処理先を示す処理先識別子を該データに付与して出力するデータ処理プロセッサと、
該処理先識別子に基づき、該データを該次の処理先に与えるスイッチと、
を備えたことを特徴とするデータ処理回路。
(付記2)上記の付記1において、
該所定の処理がトラフィック処理であることを特徴としたデータ処理回路。
(付記3)上記の付記1において、
最初の処理先である該データ処理プロセッサを示す処理先識別子を該データに付与して該スイッチに与える回線インタフェースをさらに備えたことを特徴とするデータ処理回路。
(付記4)上記の付記1において、
該スイッチと、このスイッチ及び該データ処理プロセッサを接続するためのコネクタとを実装するマザーボードと、
該データ処理プロセッサの配置状態を管理し該データ処理プロセッサに該配置状態を通知する制御部と、
をさらに備えたことを特徴とするデータ処理回路。
(付記5)上記の付記4において、
該制御部に与える、該データ処理プロセッサの該配置状態を予め記憶したメモリをさらに有することを特徴としたデータ処理回路。
(付記6)上記の付記5において、
該メモリに該配置状態を入力する入力部を有することを特徴としたデータ処理回路。
(付記7)上記の付記4において、
該データ処理プロセッサが、そのデータ処理内容を示すデータ処理識別子情報を有し、
該制御部が該データ処理識別子情報を読み取ることにより、該配置状態を認識することを特徴としたデータ処理回路。
(付記8)上記の付記1において、
該データ処理プロセッサが、そのデータ処理内容を示すデータ処理識別子情報を有し、
各データ処理プロセッサが、相互に他のデータ処理プロセッサのデータ処理識別子情報を交換することを特徴としたデータ処理回路。
(付記9)上記の付記1において、
該スイッチが、入力ポートの前段、又は出力ポートの後段にデータを一時的に保持するキューを備えたことを特徴とするデータ処理回路。
(付記10)
データに含まれる情報に基づき決定される全てのデータ処理手順を示す処理先識別子を該データに付与する処理先識別子付与部と、
該処理先識別子に基づき該データを次の処理先に与えるスイッチと、
該スイッチから受信した該データに所定の処理を施した後、該データをスイッチに戻すデータ処理プロセッサと、
を備えたことを特徴とするデータ処理回路。
(付記11)上記の付記10において、
該データ処理プロセッサが、自分自身を示す処理先識別子を削除することを特徴としたデータ処理回路。
(付記12)上記の付記10において、
該スイッチが、該次の処理先の処理先識別子を削除することを特徴としたデータ処理回路。
(付記13)上記の付記10において、
該所定の処理がトラフィック処理であることを特徴としたデータ処理回路。
(付記14)上記の付記10において、
該処理先識別子付与部と、該スイッチと、このスイッチ及び該データ処理プロセッサを接続するためのコネクタとを実装するマザーボードと、
該データ処理プロセッサの配置状態を管理し該処理先識別子付与部に配置状態を通知する制御部と、
をさらに備えたことを特徴とするデータ処理回路。
(付記15)上記の付記14において、
該制御部に与える、該データ処理プロセッサの配置状態を記憶するメモリをさらに有することを特徴としたデータ処理回路。
(付記16)上記の付記15において、
該メモリに該配置状態を入力する入力部を有することを特徴としたデータ処理回路。
(付記17)上記の付記14において、
該データ処理プロセッサが、その処理内容を示すデータ処理識別子情報を有し、
該処理先識別子付与部が該データ処理識別子情報を読み取ることを特徴としたデータ処理回路。
(付記18)上記の付記10において、
該スイッチが、入力ポートの前段、又は出力ポートの後段にデータを一時的に保持するキューを備えたことを特徴とするデータ処理回路。
【0065】
【発明の効果】
以上説明したように、本発明に係るデータ処理回路によれば、データ処理プロセッサが、データに含まれる情報に基づいて決定される次の処理先を示す処理先識別子を該データに付与し、スイッチが該処理先識別子に基づき、該データを該次の処理先に与えるか、又は処理先識別子付与部が、データに含まれる情報に基づき決定される全てのデータ処理手順を示す処理先識別子を該データに付与し、スイッチが、該処理先識別子に基づき該データを次の処理先に与え、データ処理プロセッサが該スイッチから受信した該データに所定の処理を施した後、該データをスイッチに戻すようにしたので、連続性・方向性を持つデータの処理順序をハードウェアで変更すること、また、処理の種類をハードウェアで変更することが可能になる。
【0066】
これにより、高速データトラフィック処理を行うハードウェアモジュールにおいて、以下の効果(1)〜(3)が期待できる。
(1)処理能力(スループット性能)の向上などの目的でハードウェアを追加したい場合、モジュールの再設計を行うことなく対応することが可能になる。
【0067】
(2)データ処理プロセッサ及びスイッチをコネクタで相互接続することにより、トラフィックデータ処理フローが容易に変更可能になる。
(3)トラフィック処理回路の構成の変更が容易になるめ、要求性能の高い装置から低い装置まで、基本となるハードウェアの設計を変えることなく柔軟かつ効率的に対応することが可能となる。
【図面の簡単な説明】
【図1】本発明に係るデータ処理回路の原理的な構成例を示したブロック図である。
【図2】本発明に係るデータ処理回路の動作原理〔1〕、〔2〕を示したブロック図である。
【図3】本発明に係るデータ処理回路におけるスイッチの動作原理を示したブロック図である。
【図4】本発明に係るデータ処理回路の実装例を示した実装図である。
【図5】本発明に係るデータ処理回路の構成実施例を示したブロック図である。
【図6】本発明に係るデータ処理回路の動作実施例(1)、(2)を示したブロック図である。
【図7】本発明に係るデータ処理回路の動作実施例(3)を示したブロック図である。
【図8】本発明に係るデータ処理回路の動作実施例(4)、(5)を示したブロック図である。
【符号の説明】
100,100_1〜100_3 データ処理回路
200 ルータ 201 筐体
10 マザーボード 11 スイッチ
12 管理用プロセッサ、制御部 13 構成定義設定用メモリ
14,14_1 回線インタフェース、処理先識別子付与部
14_2 モジュール間インタフェース
15,15_1〜15_6 コネクタ 16 コネクタ
20 ドータカード
21 データ処理プロセッサ、ネットワークプロセッサ(NWP)
21H_1,21H_2 ハーフ・デュープレックス・ネットワークプロセッサ
21F フル・デュープレックス・ネットワークプロセッサ
21a L2プロセッサ 21b L3プロセッサ
21c トンネル処理プロセッサ 21d Ethernetプロセッサ
21e POSプロセッサ 22 コネクタ
40〜57 ポート 71,71a 制御信号
72 トラフィックデータ 73 Ethernetデータ
74 POSデータ
80 パケット、IPデータ、トラフィックデータ、データフロー
80a〜80e,80i,80j,80je,80jp,80k パケット、データフロー
81 ヘッダ、処理先識別子、処理先識別番号
82 トラフィックデータ、IPデータ 90 追加コネクション
91 構成定義情報通知 92 構成定義情報
93 データ処理識別子情報
図中、同一符号は同一又は相当部分を示す。

Claims (5)

  1. データに所定の処理を施すと共に、該データに含まれる情報に基づいて決定される次の処理先を示す処理先識別子を該データに付与して出力するデータ処理プロセッサと、
    該処理先識別子に基づき、該データを該次の処理先に与えるスイッチと、
    を備えたことを特徴とするデータ処理回路。
  2. 請求項1において、
    最初の処理先である該データ処理プロセッサを示す処理先識別子を該データに付与して該スイッチに与える回線インタフェースをさらに備えたことを特徴としたデータ処理回路。
  3. 請求項1において、
    該スイッチと、このスイッチ及び該データ処理プロセッサを接続するためのコネクタとを実装するマザーボードと、
    該データ処理プロセッサの配置状態を管理し該データ処理プロセッサに該配置状態を通知する制御部と、
    をさらに備えたことを特徴とするデータ処理回路。
  4. 請求項1において、
    該スイッチが、入力ポートの前段、又は出力ポートの後段にデータを一時的に保持するキューを備えたことを特徴とするデータ処理回路。
  5. データに含まれる情報に基づき決定される全てのデータ処理手順を示す処理先識別子を該データに付与する処理先識別子付与部と、
    該処理先識別子に基づき該データを次の処理先に与えるスイッチと、
    該スイッチから受信した該データに所定の処理を施した後、該データをスイッチに戻すデータ処理プロセッサと、
    を備えたことを特徴とするデータ処理回路。
JP2003078586A 2003-03-20 2003-03-20 データ処理回路 Pending JP2004287811A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003078586A JP2004287811A (ja) 2003-03-20 2003-03-20 データ処理回路
US10/766,358 US20040186914A1 (en) 2003-03-20 2004-01-27 Data processing circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003078586A JP2004287811A (ja) 2003-03-20 2003-03-20 データ処理回路

Publications (1)

Publication Number Publication Date
JP2004287811A true JP2004287811A (ja) 2004-10-14

Family

ID=32984877

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003078586A Pending JP2004287811A (ja) 2003-03-20 2003-03-20 データ処理回路

Country Status (2)

Country Link
US (1) US20040186914A1 (ja)
JP (1) JP2004287811A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008658A (ja) * 2009-06-29 2011-01-13 Canon Inc データ処理装置、データ処理方法およびプログラム
JP6608572B1 (ja) * 2018-12-27 2019-11-20 三菱電機株式会社 データ処理装置、データ処理システム、データ処理方法及びプログラム

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8000735B1 (en) * 2004-12-01 2011-08-16 Globalfoundries Inc. Wireless modem architecture for reducing memory components
CA2756289C (en) 2009-04-01 2016-02-02 Nicira Networks, Inc. Method and apparatus for implementing and managing virtual switches
US8958292B2 (en) 2010-07-06 2015-02-17 Nicira, Inc. Network control apparatus and method with port security controls
US9680750B2 (en) 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
EP3605969B1 (en) 2011-08-17 2021-05-26 Nicira Inc. Distributed logical l3 routing
JP5704567B2 (ja) * 2011-09-13 2015-04-22 株式会社日立製作所 ノード装置、システム、及び、パケット処理方法
US20130346667A1 (en) * 2012-06-21 2013-12-26 Jonathan Stroud Serial port access system and method in a computing system
US9571386B2 (en) 2013-07-08 2017-02-14 Nicira, Inc. Hybrid packet processing
US9282019B2 (en) 2013-07-12 2016-03-08 Nicira, Inc. Tracing logical network packets through physical network
US9407580B2 (en) 2013-07-12 2016-08-02 Nicira, Inc. Maintaining data stored with a packet
US9344349B2 (en) 2013-07-12 2016-05-17 Nicira, Inc. Tracing network packets by a cluster of network controllers
US9674087B2 (en) 2013-09-15 2017-06-06 Nicira, Inc. Performing a multi-stage lookup to classify packets
US9602398B2 (en) 2013-09-15 2017-03-21 Nicira, Inc. Dynamically generating flows with wildcard fields
US10193771B2 (en) 2013-12-09 2019-01-29 Nicira, Inc. Detecting and handling elephant flows
US9967199B2 (en) 2013-12-09 2018-05-08 Nicira, Inc. Inspecting operations of a machine to detect elephant flows
US9569368B2 (en) 2013-12-13 2017-02-14 Nicira, Inc. Installing and managing flows in a flow table cache
US9996467B2 (en) 2013-12-13 2018-06-12 Nicira, Inc. Dynamically adjusting the number of flows allowed in a flow table cache
US9686200B2 (en) 2014-03-31 2017-06-20 Nicira, Inc. Flow cache hierarchy
US10193806B2 (en) 2014-03-31 2019-01-29 Nicira, Inc. Performing a finishing operation to improve the quality of a resulting hash
US9385954B2 (en) 2014-03-31 2016-07-05 Nicira, Inc. Hashing techniques for use in a network environment
US11178051B2 (en) 2014-09-30 2021-11-16 Vmware, Inc. Packet key parser for flow-based forwarding elements
US10469342B2 (en) 2014-10-10 2019-11-05 Nicira, Inc. Logical network traffic analysis
CN106850261B (zh) * 2016-12-26 2020-09-18 北京华为数字技术有限公司 网络设备及数据传输方法
US10805239B2 (en) 2017-03-07 2020-10-13 Nicira, Inc. Visualization of path between logical network endpoints
US10608887B2 (en) 2017-10-06 2020-03-31 Nicira, Inc. Using packet tracing tool to automatically execute packet capture operations
US11283699B2 (en) 2020-01-17 2022-03-22 Vmware, Inc. Practical overlay network latency measurement in datacenter
US11196628B1 (en) 2020-07-29 2021-12-07 Vmware, Inc. Monitoring container clusters
US11570090B2 (en) 2020-07-29 2023-01-31 Vmware, Inc. Flow tracing operation in container cluster
US11558426B2 (en) 2020-07-29 2023-01-17 Vmware, Inc. Connection tracking for container cluster
US11736436B2 (en) 2020-12-31 2023-08-22 Vmware, Inc. Identifying routes with indirect addressing in a datacenter
US11336533B1 (en) 2021-01-08 2022-05-17 Vmware, Inc. Network visualization of correlations between logical elements and associated physical elements
US11687210B2 (en) 2021-07-05 2023-06-27 Vmware, Inc. Criteria-based expansion of group nodes in a network topology visualization
US11711278B2 (en) 2021-07-24 2023-07-25 Vmware, Inc. Visualization of flow trace operation across multiple sites
US11706109B2 (en) 2021-09-17 2023-07-18 Vmware, Inc. Performance of traffic monitoring actions

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4766567A (en) * 1984-04-19 1988-08-23 Ltd. Nippondenso Co. One-chip data processing device including low voltage detector
US5226126A (en) * 1989-02-24 1993-07-06 Nexgen Microsystems Processor having plurality of functional units for orderly retiring outstanding operations based upon its associated tags

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008658A (ja) * 2009-06-29 2011-01-13 Canon Inc データ処理装置、データ処理方法およびプログラム
JP6608572B1 (ja) * 2018-12-27 2019-11-20 三菱電機株式会社 データ処理装置、データ処理システム、データ処理方法及びプログラム

Also Published As

Publication number Publication date
US20040186914A1 (en) 2004-09-23

Similar Documents

Publication Publication Date Title
JP2004287811A (ja) データ処理回路
KR100466083B1 (ko) 인터페이스 디바이스를 포함하는 장치 및 데이터 플로우 핸들링 방법
KR100506323B1 (ko) 네트워크 프로세서를 사용하는 네트워크 스위치 및 그의방법
US6460120B1 (en) Network processor, memory organization and methods
AU2003298814B2 (en) Method for verifying function of redundant standby packet forwarder
JP3807980B2 (ja) ネットワーク・プロセッサ処理コンプレックス及び方法
JP3817477B2 (ja) Vlsiネットワーク・プロセッサ及び方法
JP2004135106A (ja) パケット通信装置
Mariño et al. Loopback strategy for in-vehicle network processing in automotive gateway network on chip
CN118633084A (zh) 数据生成设备和程序
CN115701060A (zh) 一种报文传输方法及相关装置
CN118054873A (zh) 系统状态的同步方法及装置
Elbeshti et al. Design a scalable ethernet Network Interface supporting the large receive offload
WO2002023823A1 (en) Apparatus and methods for processing packets in a broadband data stream

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050413

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070205

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070612