JP4554136B2 - ネットワークデバイスのためのオープンアーキテクチャにおいて、専有転送要素が標準的制御要素と相互運用することを可能にするための方法および装置 - Google Patents

ネットワークデバイスのためのオープンアーキテクチャにおいて、専有転送要素が標準的制御要素と相互運用することを可能にするための方法および装置 Download PDF

Info

Publication number
JP4554136B2
JP4554136B2 JP2001547817A JP2001547817A JP4554136B2 JP 4554136 B2 JP4554136 B2 JP 4554136B2 JP 2001547817 A JP2001547817 A JP 2001547817A JP 2001547817 A JP2001547817 A JP 2001547817A JP 4554136 B2 JP4554136 B2 JP 4554136B2
Authority
JP
Japan
Prior art keywords
data set
forwarding
plug
forwarding element
transfer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2001547817A
Other languages
English (en)
Other versions
JP2003518667A (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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of JP2003518667A publication Critical patent/JP2003518667A/ja
Application granted granted Critical
Publication of JP4554136B2 publication Critical patent/JP4554136B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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/02Standardisation; Integration
    • H04L41/0226Mapping or translating multiple network management protocols
    • 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
    • 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
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/205Quality of Service based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、コンピュータシステムの分野に関し、より詳細には、オープンネットワークアーキテクチャにおいて、特殊目的(special purpose)ネットワーキングハードウェアのような専有(proprietary)転送要素(forwarding element)が、概してソフトウェアの形で実施される標準的(standard)制御要素(control element)と相互運用(interoperate)することを可能にするための方法および装置に関する。
【0002】
【従来の技術】
最近では、ネットワーキングハードウェア産業において、ある傾向が現れている。ルーターおよびスイッチのようなデバイスは、モノリシックであって著しくカスタマイズかつ統合された設計から、別個のモジュール化された構成要素(components)の集合体の形へ進化し始めている。ネットワーキングデバイスアーキテクチャのモジュール化は、ルーターまたはスイッチのような複雑なデバイスを組成している種々の構成要素間における厳重な統合依存性を打ち破ることにより、ネットワーキングハードウェアおよびソフトウェアにおいて、より速い周期でのイノベーションおよび開発を可能にし始めている。より最近では、さらなる傾向が、プログラム可能なASIC(特定用途向け集積回路)またはネットワークプロセッサの出現という形で現れている。これらのデバイスは、汎用プロセッサまたはサーバーから、アプリケーションを意識した(application-aware)パケット分類および処理能力を有するスイッチへの、アプリケーション層またはネットワークレベルでのパケット処理の負荷の軽減(off-loading)を可能にする。例えば、スイッチは、ルックアップ(lookup)のルーティングや、ハードウェア内での転送を行うことができるだけでなく、アプリケーションレベルのプロキシおよびネットワークの機能、または、トランスポート層のアドレス変換の機能を行うこともできる。これらの傾向を利用し、かつ、促進するために、水平的オープンネットワーキングアーキテクチャ(例えば、図2を参照)の利用は、通常はパケット転送と関連した機能性を分離させるために、API(アプリケーションプログラムインターフェース)およびプロトコルのセットを標準化しようとするものである。このような機能性は、通常は特殊目的ハードウェアの形で実施され、“転送要素(forwarding element)”と称することができる。通常は汎用処理アーキテクチャソフトウェアの形で実施されるネットワークのシグナリングおよび制御と関連した機能性については、“制御要素(control element)”と称することができる。水平的オープンネットワーキングアーキテクチャにより提唱される制御要素/転送要素という構成要素の利用とともに、ネットワーキングデバイスの機能性の分離および標準化は、開放的特徴を維持する一方で、専有的設計が現れ続けることを可能にし、かつ、イノベーションおよび急速な製品開発をさらに可能にする。
【0003】
制御要素および転送要素の分離は、インターフェースのセットが各々の構成要素の形式で開発されることを必要とする。これらのインターフェースは、構成要素の機能性を互いに提示し、該構成要素を作用的統一体の形に統合することを可能にする。例えば、転送要素における、アプリケーションを意識したスイッチング能力の機能性については、制御要素がデータ経路におけるパケット処理または転送機能の負荷を軽減するためにスイッチを“プログラム”できるように、オープンインターフェースを介して、制御要素に対して提示する必要がある。このような機能性を提示する一つの方法は、一般的な様式でスイッチ能力について記述する抽象的インターフェースを定義することである。制御要素は、所望の効果を達成すべく抽象的コマンド/オペレーションを用いてスイッチ機能を構成する(configure)かまたは操作する(manipulate)ために、このような抽象的インターフェースを用いることができ、かつ、転送要素は、これらの抽象的コマンドを、ハードウェア固有の(hardware-specific)タスクの形に変換する必要がある。こうして抽出されたハードウェア固有の能力は、転送テーブルのASIC固有のフォーマットと、パケット待ち行列パラメータと、暗号化、マーキング、または、アドレス変換のようなパケット毎の処理作用とを含む広範囲のハードウェア能力に及び得る。
【0004】
前記転送要素および制御要素の能力をインターフェースを介して提示することは、ある欠点を有している。詳細には、インターフェースの仕様は、通常は、根本的な実施手段を反映している。このことは、転送要素の場合に当てはまり、これにより、コストに対して敏感(cost-sensitive)であって、著しくタスク固有のデバイスとなる傾向がある。このようなデバイスにおいて、非常に抽象的な様式で根本的な機能性を反映することは、転送要素の側において余分な処理パワー(および、コスト)を必要とする。これらのデバイスのコストに対する敏感さは、抽象的なインターフェースの利用を妨げる傾向があり、その代わりに、各々の転送要素の実際の実施と厳密に整合する非常に特定的なインターフェースという結果につながる。各々の構成要素が同一の製造業者により設計しかつ構築され得るような専有システムを構築する場合には、根本的な実施手段についての機密情報は社内に保持されるので、この提示は許容可能なものである。しかしながら、特にオープンアーキテクチャを用いる場合のように、様々なベンダーからの構成要素が統合される場合には、この提示は、他の状況では決して利用可能にはならないであろう転送要素のアーキテクチャと能力とについての情報を可視状態にしてしまうという点で問題となる。
【0005】
【発明が解決しようとする課題および課題を解決するための手段】
本発明の一実施形態において、コンピュータシステムは、オープンネットワークアーキテクチャにおいて、専有転送要素が、標準的制御要素と相互運用することを可能にする。前記システムは、コンピュータネットワークにおいてデータ転送機能を行うように適合されている転送要素を有する。制御要素は、コンピュータネットワークにおいてネットワークのシグナリング機能および制御機能を行うように適合される。制御要素は、転送要素を構成するための標準化されたデータセットを生成するように適合される。相互接続要素は、転送要素を制御要素へ有効に(operatively)接続する。転送要素プラグインは、転送要素を構成すべく、標準化されたデータセットを制御要素から受け取るために、標準化されたデータセットを特殊化されたデータセットに変換するために、かつ、特殊化されたデータセットを転送要素へ伝達するために、制御要素と統合される。特殊化されたデータセットは、コンピュータネットワークにおいてデータ転送を行うように転送要素を構成するために利用される。
【0006】
【発明の実施の形態】
図1は、従来技術のネットワーキングデバイスの垂直的専有ネットワーキングアーキテクチャ(vertical proprietary networking architecture)の一例を示している。図1に与えられたネットワーキングボックスレベルハードウェア100の例において、設備のベンダーは、通常は、専有(proprietary)ネットワークオペレーティングシステム(NOS)120を、ネットワーキングボックスレベルハードウェア100の底部の専有インターフェース(下方にあるASIC(特定用途向け集積回路)/スイッチファブリック/バスに対するインターフェース110)や、ネットワーキングボックスレベルハードウェア100の最上部の専有インターフェース(ネットワークサービスおよびアプリケーションを書き込むことができるようにハードウェアの状態および機能性を提示するインターフェース130)とともに用いる。したがって、サードパーティーの独立系ソフトウェアベンダー(ISV)および独立系ハードウェアベンダー(IHV)のどちらも、最初にこれらのプライベートインターフェースにアクセスせずには、付加価値的(value-added)ソフトウェアまたはハードウェアソリューションを提供することができない。例えば、ある独立系ソフトウェアベンダーは、“最も優れた”ファイアウォール(firewall)または侵入検出ソフトウェアを有しているかも知れないが、完全に垂直的なソリューションに投資するか、または、有力なネットワーク設備のベンダーからの協力を得ることなしには、市場に売り出すことはできない。後者の場合には、独立系ソフトウェアベンダーは、自らのアプリケーションを個々のプラットフォームに移植する(port)ためには、多数のベンダーおよび該ベンダーの専有インターフェースと協働する必要がある。同様に、次世代転送ハードウェアを有する独立系ハードウェアベンダーは、完全に垂直的なソリューションに投資する必要があるか、または、有力なベンダーが該独立系ハードウェアベンダーのハードウェアソリューションを採用するのを待つ必要がある。さらに、有力なハードウェアベンダーでさえ、通常は、様々なネットワークオペレーティングシステムおよびアーキテクチャを用いる多くの様々なプラットフォームを有している。したがって、新たなハードウェアまたはソフトウェアの機能性を導入することは、かなりの労力および投資を必要とする。要するに、図1に示される垂直的に統合されたアーキテクチャは、イノベーションを抑圧し、かつ、新たなハードウェアおよびソフトウェアの能力を活用することを困難にしている。
【0007】
図1に示されるネットワーキングアーキテクチャの3つの主要な構成要素110,120,130は、相互依存によって、互いに十分に独立した機能を行う。底部には、データ転送プレーン(data-forwarding plane)において動作し、かつ、パケット毎の(per-packeting)工程および処理を担う転送ハードウェア110が存在する。中央部には、主に、制御プレーン(control plane)における動作を担い、かつ、ルーティング/シグナリング/ネットワーク制御のプロトコルを実行するネットワークオペレーティングシステム120が存在する。さらに、ネットワークオペレーティングシステム120は、転送インターフェースのための転送テーブルとフロー毎の(per-flow)QoS(サービス品質)テーブルとアクセス制御リストとを操作することにより、下方にあるハードウェア110の転送行動を指示する。最上部には、主にネットワークの管理/制御機能を行うアプリケーションおよび/またはサービスのセット130が存在する。場合によっては、これらのアプリケーションの中には、パケット化毎の処理を行うことができるものもある。例えば、アプリケーションレベルプロキシは、特定の記述と整合する各々のデータパケットを処理することができる。しかしながら、大抵の場合には、これらのアプリケーションは、転送ハードウェアを適切に“プログラム”することにより、データ転送の決定に主たる影響を与える。
【0008】
図2は、本発明の一実施形態による水平的オープンネットワーキングアーキテクチャ(horizontal open networking architecture)の一例を示している。図2のような水平的オープンネットワーキングアーキテクチャの主要な目標は、図1に示される構成要素間のインターフェースを標準化する(standardize)ことであり、これにより、各々のレベルでのイノベーションが促進され、かつ、独立系ハードウェアベンダーが新たな能力をできるだけ早く市場に売り出すことを容易にする。図2の水平的オープンネットワーキングアーキテクチャ200は、2つのオープンインターフェース220,240の他に、転送要素210、制御要素230、および、ネットワークサービス/アプリケーション250、という3つの主要な構成要素を有することが好ましい。水平的オープンネットワーキングアーキテクチャ200は、本質的に、制御プレーンを、データ転送プレーンから分離する。制御要素230は、ルーティング/シグナリングプロトコルを含む全ての制御機能を処理し、その一方で、転送要素210は、データパケットの転送および処理を担う。
【0009】
例えば、図2の水平的オープンネットワーキングアーキテクチャ200を用いて実施されるL3スイッチについて考える。このようなスイッチにおいて、制御要素230は、必要なルーティングプロトコル(RIP(ルーティング情報プロトコル)、OSPF(open shortest path first)など)を実行し、かつ、転送テーブルをスイッチングファブリックまたはインターフェースへダウンロードし、これにより、(転送要素210の)転送シリコン(forwarding silicon)212は、データパケットをワイヤスピード(wire-speed)で転送することができる。転送シリコン212は、全ての制御トラフィック(IGMP(インターネットグループマルチキャストプロトコル)の照会、RSVP(“お返事下さい”)パケット、および、ルーティング更新情報)を、制御要素230へ供給するように“プログラム”される。
【0010】
前記制御要素と転送要素との間のインターフェース220は、どちらの要素についても、他方の要素に影響を及ぼさずに置き換えることができるように設計されている。(転送要素210の)ネットワーキングミドルウェア214は、は、インターフェース220を介して受け取られた概括的な構成(configuration)および制御情報を、転送シリコンの状態を適切に操作するために必要な特定の構造に変換することを担う。
【0011】
前記転送要素210の上部に提示された制御要素230およびインターフェース240は、付加価値的ネットワーキングサービスおよびアプリケーションを構築するための開放的であって標準化された方法を提供する同様の機能を行う。インターフェース240は、ハードウェア固有の(hardware-specific)機能性を抽出かつ提示し、これにより、これらのサービスは、ポリシーベース(policy-based)ネットワーキングや、セキュリティ(内部的および外部的ファイアウォール、プロキシ、侵入検出など)や、QoS(サービス品質)のようなサービスを実施するために、さらには、ウェブサーバーのためのロードバランシングのような機能さえも実施するために、ハードウェアの能力を活用することができる。例えば、ネットワークサービスは、転送要素210内の転送経路におけるパケットの状態監視(stateful inspection)に基づいて取るべき行動を指定するポリシーのルールをダウンロードするために、このインターフェースを用いることができる。制御要素230は、転送要素210へダウンロードするために、抽象的なルール表示を、簡潔なコマンドおよび構成情報(configuration information)の形に変換することを引き受ける。
【0012】
付加価値的サービスおよびアプリケーションを構築する標準化された方法を提供することに加えて、インターフェース240によって、これらのサービスが、制御または管理状態(例えば、デバイス固有の構成(device-specific configuration)、ルート/経路の管理、トポロジーディスカバリ、データベース)にアクセスすることが可能となり、これにより、ネットワークワイドのサービスが提供される。イベント誘発型(event-triggered)管理や、トラフィック管理や、ポリシーベースネットワーキングのような、より複雑なネットワーク管理ツールおよびサービスを、このインターフェースの最上部に構築することもできる。
【0013】
デバイスの機能性に関する明確な機能的分離、および、インターフェース220,240の開放的性質によって、水平的オープンネットワーキングアーキテクチャ200を、種々の構成の形で実現することが可能となる。ちょうど従来的なスイッチ/ルーターのように、ボックス内の制御CPUは、制御要素230およびサービス250を、バスにより接続された転送要素210および制御要素230によって、ホストすることができる。あるいはまた、高速のバックプレーン(backplane)と幾つかのデータ転送プレーンとを備えたシャシー(chassis)の場合に、制御要素230は、同じバックプレーンにプラグインされた別個のプレーン内に存在することができる。この構成において、各々のネットワークサービス250については、分散型アーキテクチャを生じさせる同じバックプレーンにプラグインされている別個のサービス機器上で実行することができる。さらに他の分散型構成において、制御要素230および転送要素210については、それぞれ、物理的に同じ場所に配置することは全く不可能であるが、その代わりに、ネットワーク(イーサネット(登録商標)、ATM VC(非同期転送モード)、または、他の相互接続テクノロジー)により分離させることができる。この場合には、中央サーバーは、制御要素230をホストし、かつ、ネットワーク全域において転送要素210と相互に作用する。制御サーバー自体は、1つ以上の転送要素210の制御を担うことができる。ある例示的構成は、大きな建造物内のある階から/へのトラフィックのスイッチングを担う8つのスイッチを備えたワイヤクロゼット(wire closet)からなる。図2に示される水平的オープンネットワーキングアーキテクチャ200の下で、専用サーバー上で実行される1つの制御要素230は、8つのスイッチに関する制御機能の提供を担うことができる。
【0014】
分散型構成に関する他の例は、顧客宅内に存在する1つ以上の転送要素210の制御を担うサービスプロバイダのクラウド(cloud)内における制御要素230である。様々なトラフィックストリームをルーティングしかつ区別化する能力を備えたADSL(非対称ディジタル加入者回線)モデムについては、図2の水平的オープンネットワーキングアーキテクチャ200を用いて、サービスプロバイダから遠隔的に制御することができ、これにより、サービスプロバイダが、簡略化された管理および付加価値的なサービスを、自らの顧客へ提供することが可能となる。
【0015】
最後に、前記水平的オープンネットワーキングアーキテクチャ200によって、ネットワークサービス250を、制御要素230とは別個にホストすることも可能となる。この構成において、サービスは、制御要素230と相互に作用するための最上部のオープンインターフェース240の“遠隔可能(remoteable)”版を用いる。
【0016】
図3は、本発明の一実施形態による水平的オープンネットワーキングアーキテクチャの主要な構成要素を示している。図3の水平的オープンネットワーキングアーキテクチャ200は、ネットワークサービスAPI(アプリケーションプログラムインターフェース)240、制御要素230、転送要素210、および、接続API220、という4つの主要な構成要素からなる。転送要素210および制御要素230については、バス、高速バックプレーン、または、ネットワークリンクにより接続することができる。接続API220は、2つの要素210,230間における標準インターフェースを示し、かつ、これらの要素の相互接続の全域において、相互作用の詳細を覆い隠す。ネットワークリンクの場合には、接続API220は、標準化されたワイヤフォーマット(wire-format)プロトコルを用いて実施される。
【0017】
前記ネットワークサービスAPI240によって、水平的オープンネットワーキングアーキテクチャ200およびプラットフォームを、サードパーティの独立系ソフトウェアベンダーのような外部団体に対して可視状態にすることが可能となる。ネットワークサービスAPI240は、データ転送要素210に関するハードウェア固有の機能性(例えば、スイッチ、ルーター、および、ネットワークインターフェースカード(NIC))を、ハードウェアに依存しない(hardware-independent)一様な方法で、アプリケーションプログラマーに対して利用可能にする。VoIP(voice-over internet protocol)ゲートウェイや、侵入検出や、アプリケーション固有の(application-specific)プロキシや、VPN(仮想プライベートネットワーク)サーバーのような、ネットワークを意識した(network-aware)アプリケーションを書くサードパーティの独立系ソフトウェアベンダーは、データプレーンおよび制御プレーンの両方におけるデータ転送経路の性質を制御/変更するために、ネットワークサービスAPI240を用いる。例えば、予め指定されたパケットフィルターに基づいてパケットをフィルタリングする能力を備えたL3/L4スイッチの場合には、H.323プロキシは、さらなる処理のために、H.323関連のパケットを傍受しかつ該パケットを自分へ転送するように、転送要素210に指示するために、ネットワークサービスAPI240を用いる。しかしながら、ワイヤスピードでデータパケットの状態監視を行う能力を備えたL4/L7スイッチの場合には、侵入検出アプリケーションは、セッション状態を検査しかつ“侵入の痕跡”を識別するために、分類フィルターとこれに関連した作用とを指定するポリシーのルールを、転送要素210にインストールすることができる。本発明の一実施形態による水平的オープンネットワーキングアーキテクチャ200において、制御要素230は、ネットワークサービスAPI240の実施をホストし、かつ、制御要素230は、ネットワークサービスAPI240のコール(calls)を、適切なメッセージパッシング(message passing)や、転送要素210におけるハードウェア固有のコールの呼び出し(invocations)の形に変換することについての詳細を覆い隠す。
【0018】
本発明の一実施形態による水平的オープンネットワーキングアーキテクチャ200の転送要素210は、データまたはパケット転送機能を処理する。転送要素210の例は、(レイヤー2ブリッジを含む)スイッチと、ルーターと、ネットワークアダプタ(ネットワークインターフェースカード)とを含む。転送要素210は、通常は、1つ以上のネットワークインターフェースを有しており、かつ、着信パケットの処理しかつ該パケットを1つ以上の外部ネットワーク接続用インターフェース(outgoing interface)を介して転送する責任を担う。転送要素210は、L2/L3転送と、パケット分類と、パケット内のL4(または、より高位の)層情報に基づくフィルタリングと、データ暗号化と、ポリシー施行とを含む種々の能力を有することができる。本発明による水平的オープンネットワーキングアーキテクチャ200において、転送要素210は、制御要素230が、ルーティング/シグナリングプロトコルや、付加価値的アプリケーションに対するインターフェースなどのような通常の管理/制御機能を処理することを頼りにする。転送要素210は、その能力と固有の機能とを、接続API220を用いることによって、制御要素230へエクスポートする。
【0019】
前記転送要素210内には、制御要素230との相互作用を処理するように適合され、かつ、パケット転送や、QoS(サービス品質)や、モニタリングや、アクセス制御や、ポリシー施行のようなハードウェアサービスを、制御要素230に対して可視状態にするように適合された転送要素マネージャ212が存在することができる。例えば、転送要素マネージャ212は、制御要素230との通信を確立しかつ制御要素230からのパケット転送テーブルを受け入れるために、転送要素接続マネージャ214のサービスを用いることができる。転送要素210内の転送要素接続マネージャ214については、進行中の相互接続問題およびデータ交換を見つけ出し、固有のトランスポート媒体(transport medium)を介して特定の制御要素230と結びつけ、かつ、処理することを含む、制御要素230との通信に関する全ての詳細を処理するように適合させることができる。
【0020】
本発明による水平的オープンネットワーキングアーキテクチャ200の制御要素230は、(1)制御要素マネージャ232と、(2)制御要素接続マネージャ234と、転送要素プラグインAPI/サンプルプラグイン236とを有することが好ましい。転送要素プラグインAPI/サンプルプラグイン236を通して、制御プレーン機能の大部分を実施し、ネットワークサービスAPI240をサポートし、かつ、多くの様々な種類の転送要素210との相互作用を処理するという意味で、制御要素マネージャ232は、水平的オープンネットワーキングアーキテクチャ200の“中枢部”を示す。制御要素接続マネージャ234は、転送要素接続マネージャ214に対応しており、かつ、特定の転送媒体の処理に関する細目を含む制御された転送要素210との通信に関する詳細を処理する。
【0021】
前記制御要素230は、その制御の範囲内において、転送要素210に代わって、種々の制御機能を行う。例えば、制御要素230は、転送要素210に代わって、ルーティングプロトコルを実行する。外部の観測者にとって、制御要素230とその転送要素210とは、ちょうど従来的なルーターのように見える。1つ以上の転送要素210上にポートのセットが与えられる場合に、制御要素230は、これらをまとめることができ、かつ、これらを1つの仮想ルーターとして示すことができる。制御要素230は、転送要素210のインターフェースを観測した状態に基づいて、ルーティングプロトコルの交換の発生を引き受けることができる。さらに、制御要素230は、転送要素210上のポートを、様々なグループ(この場合に、各々のグループは、外部の観測者にとって、別個のルーターのように見える)の形にまとめることにより、2つ以上の仮想ルーターを一度に作成しかつ示すことができる。このような能力は、アクセス制御の目的のために転送ドメインを動的に構築することの他に、管理目的のためにも非常に有用である。
【0022】
本発明による水平的オープンネットワーキングアーキテクチャ200によって、転送要素プラットフォーム固有の(forwarding element platform-specific)機能性を、ネットワークサービスAPI240を通して、制御要素マネージャ232と独立系ソフトウェアベンダーとに対して利用可能にすることが可能となる。しかしながら、APIおよびその実施手段は、(1)転送要素210において、APIのコールを、ハードウェア固有の機能性の呼び出しに変換し、かつ同時に、(2)ハードウェアベンダーの知的財産を暴露することなく、APIを通して、あらゆるハードウェア固有の特徴を提示することにより、該ハードウェアベンダーに区別化能力を許容する、という2つのことを行う必要がある。第二の特徴の一例は、アプリケーションを書く人物がパケット内容の状態監視のためのコードをダウンロードすることを可能にする転送要素プラットフォームである。転送要素固有の(forwarding element-specific)機能性に関する他の例は、転送要素210のための転送/フローテーブルを予め計算するように特殊化されたハッシング(hashing)アルゴリズムの利用である。使用されるASIC(特定用途向け集積回路)または特別な転送シリコンに応じて、各々のハードウェアベンダーは、通常は、その独自にカスタマイズされたテーブルフォーマットおよびルックアップアルゴリズムを、ワイヤスピードでの転送とフロー毎の待ち行列化(queuing)とを容易にするために用いる。ハードウェアベンダーは、このようなアルゴリズムに関する内部の詳細を制御要素230に対して提示することに抵抗がある。代わりに、ベンダーは、この計算を制御要素230上で行って、次に、カスタマイズされたテーブルを転送要素210へダウンロードする、という選択を行うことができる。
【0023】
これにより、転送要素プラグインAPI/サンプルプラグイン236によって、独立系ハードウェアベンダーが、ハードウェア固有の機能性を捕捉するソフトウェアモジュールを提供し、かつ、このモジュールを制御要素マネージャ232に“プラグイン”することが可能となる。次に、制御要素マネージャ232は、プラグインモジュール236を用いて、ネットワークサービスAPI240を通してハードウェア固有の機能性を提示し、かつ、ネットワークサービスAPIのコールを、該モジュールによりサポートされるハードウェア固有の機能に対してマッピングする。例えば、転送要素プラグインAPI/サンプルプラグイン236によって、ベンダーが、ネットワークサービスAPI240に提示されている予め定義された機能性には含まれていない特別な機能性を、ネットワークサービスAPI240に対する拡張部分のセットに供給することが可能となる。さらに、プラグインの能力によって、ベンダーが独自のコードを供給することが可能となり、該独自のコードは、制御要素230により準備された転送/フローテーブルを取得する(take)ことができ、かつ、制御要素230がこれらのテーブルを転送要素210へ伝達する前に、これらテーブルを該ベンダーのASICが必要とする形式にフォーマットすることができる。
【0024】
前記接続API220インターフェースは、転送要素210の機能性を抽出し、これにより、転送要素210の能力を、制御要素230により遠隔的に構成しかつ制御することができる。接続API220は、(L3スイッチング、または、暗号化のような)転送要素210のサブセットのみによりサポートされるように期待される特徴の他に、基本的モニタリング機能のような全ての形式の転送要素210において見出されるように期待される標準的特徴を定義する。さらに、接続API220は、予想されていない機能性またはベンダー固有の(vendor-specific)機能性を含むことを可能にすべく、不透明な(opaque)情報を転送要素210へ渡すための規定を含むこともできる。接続API220は、制御要素230が転送要素の特徴を発見することを可能にするために、制御要素230と転送要素210との間における能力ネゴシエーション機構(capability negotiation mechanism)を含むこともできる。
【0025】
前記接続API220自体は、トランスポートに依存しない(transport-independent)様式で根本的なトランスポートの状態を検査しかつ操作するための方法とともに、基本的な通信プリミティブを有している。接続API220については、PCI(周辺機器相互接続:peripheral component interconnect)、NGIOバックプレーン、イーサネット(登録商標)、または、ATM(非同期転送モード)のような種々のトランスポートを介して実施することができる。このトランスポートに応じて、トランスポート固有の(transport-specific)モジュールは、相互接続テクノロジーのオペレーションにおける正常または例外的状態を処理する方法の他に、接続APIのUDP(ユーザーデータグラムプロトコル)が特定の相互接続テクノロジーに基づいてカプセル化(encapsulate)される方法を正確に指定する。トランスポートに関する2つの例は、PCIおよびIPを含む。IPトランスポートについては、イーサネット(登録商標)またはATMを介して用いられることが好ましく、かつ、UDP(ユーザーデータグラムプロトコル)またはTCP(伝送制御プロトコル)のいずれかをトランスポートプロトコルとして用いて実施できることが好ましい。しかしながら、これらのプロトコルの利用は、接続API220の実施のために、ネイティブな(native)ATMまたはイーサネット(登録商標)によるトランスポートを用いる可能性を除外するものではない。
【0026】
図4は、本発明の一実施形態による転送要素および制御要素の図式を示している。図4に示されるように、標準的制御要素(standard control element)230は、(1)図3に示されるような制御要素マネージャ232と制御要素接続マネージャ234とを有する制御要素470、(2)不透明転送要素プラグインAPI(opaque forwarding element plugin API)480、および、(3)転送要素固有のプラグイン(forwarding element-specific plugin)490、という3つの主要な構成要素を有している。図4に示されるような専有転送要素(proprietary forwarding element)210は、(1)転送要素ソフトウェア/ハードウェア410、(2)デバイス固有の転送要素インターフェース(device-specific forwarding element interface)420、(3)“BLOB”カプセル化除去装置("BLOB" decapsulator)430,および、(4)抽象的転送要素API440(abstract forwarding element API)、という4つの主要な構成要素を有している。標準的制御要素230および専有転送要素210は、オープン転送要素/制御要素相互接続(open forwarding element/control element interconnect)220により相互接続されている。
【0027】
本発明の水平的オープンネットワーキングアーキテクチャ200の利用において、転送要素のベンダーは、転送要素ハードウェアデバイス210とともに用いるためのソフトウェアプラグイン480,490を、該転送要素ハードウェアデバイス210とともに有している。転送要素固有のプラグイン490と不透明転送要素プラグインAPI480とを含むソフトウェアプラグインは、標準的制御要素230上にインストールされて、該標準的制御要素230と統合される。標準的制御要素230は、オープン転送要素/制御要素相互接続220や抽象的転送要素API440のようなオープンAPIを用いるので、抽象的転送要素APIのコールを、専有転送要素210のネイティブフォーマットに変換することに関するオーバーヘッドはない。
【0028】
したがって、前記制御要素470は、専有転送要素210を構成する(configuring)ための抽象的転送要素構成(abstract forwarding element configuration)(すなわち、標準化されたデータセット(standardized data set))475を生成するように適合される。抽象的転送要素構成475は、水平的オープンネットワーキングアーキテクチャ200内における標準化されたデータセットであり、独立系ハードウェアベンダーによる製品開発だけでなく、独立系ソフトウェアベンダーによる製品開発においても、データトランザクションのための準拠を提供する。抽象的転送要素構成475は、不透明転送要素プラグインAPI480へ渡されることが好ましく、該不透明転送要素プラグインAPI480は、抽象的転送要素構成475を転送要素固有のプラグイン490へ渡す。不透明転送要素プラグインAPI480は、抽象的転送要素構成475(標準化されたデータセット)を制御要素470から転送要素固有のプラグイン490へ中継するタスクと、転送要素固有の構成BLOB(forwarding element-specific configuration BLOB)495(BLOB=バイナリラージオブジェクト:binary large object)(特殊化されたデータセット(specialized data set))を転送要素固有のプラグイン490から専有転送要素210へ中継するタスクとを行う。
【0029】
前記転送要素のベンダーにより提供された転送要素固有のプラグイン490は、抽象的転送要素構成(標準化されたデータセット)475を、特殊化されたデータセット(好ましくは、転送要素固有の構成BLOB495)へ変換するように適合されている。転送要素固有のプラグイン490は、2進形式のダイナミックリンクライブラリ(DLL)であることが好ましい。転送要素固有のプラグイン490は標準的制御要素230上で実行されるので、専有転送要素210上でのさらなる処理パワーの必要性が回避される。
【0030】
前記転送要素固有の構成BLOB(特殊化されたデータセット)495は、専有転送要素210に特有である機能の、転送要素固有の呼び出し(forwarding element-specific invocations)を含む。標準化されたデータセットを特殊化されたデータセットに変換するために転送要素固有のプラグイン490を利用することにより、専有転送要素210の実施手段を提示する必要がない。したがって、専有的設計およびアーキテクチャ情報の機密性が保たれる。転送要素固有のプラグイン490は2進形式であるので、標準化されたデータセットから特殊化されたデータセットへの変換工程は、本質的に、誰からも隠され、これにより、専有転送要素210の実施手段が保護される。転送要素固有のプラグインDLLファイルからの変換工程を特定しようとするならば、途方もない数量の複雑なリバースエンジニアリング(reverse engineering)が必要とされることになる。
【0031】
いったん、前記転送要素固有の構成BLOB495が生成されると、該BLOB495は、不透明転送要素プラグインAPI480へ戻されることが好ましく、該不透明転送要素プラグインAPI480は、BLOB495を専有転送要素210へ伝達する。BLOB495は、オープン転送要素/制御要素相互接続220を通過して、抽象的転送要素API440へ渡され、かつ、最終的には、BLOBカプセル化除去装置430へ渡されることが好ましい。BLOBカプセル化除去装置430は、BLOB495を取得してカプセル化を解除し(このことは、非常に平易な作業である)、かつ、カプセル化を解除したBLOBデータを、デバイス固有の転送要素インターフェース420へ直接的に渡す。デバイス固有の転送要素インターフェース420は、カプセル化を解除したBLOBデータからの情報を取得して、転送要素ソフトウェア/ハードウェア410を構成し、これにより、専有転送要素210が適切に動作する。こうして、デバイス固有の転送要素インターフェース420内に存在する、専有転送要素のアーキテクチャについての機密情報は、決して、標準的制御要素230へ提示されることはなく、これにより、転送要素の独立系ハードウェアベンダーが自らの知的財産を保護することが可能となる。
【0032】
さらに、標準的制御要素230から専有転送要素210へ渡される特殊化されたデータセットをさらに保護するために、暗号化を利用することもできる。いったん、特殊化されたデータセット(すなわち、転送要素固有の構成BLOB495)が標準化されたデータセット(抽象的転送要素構成475)から変換されると、該特殊化されたデータセットを暗号化することができる。暗号化した特殊化されたデータセットは、専有転送要素210へ渡され、次に、該専有転送要素210において解読される。しかしながら、暗号化の利用は、解読処理を行うために、専有転送要素210にさらなるハードウェアを追加する。
【0033】
上述の説明は本発明の特定の実施形態について言及しているが、その一方で、本発明の真意から逸脱することなく、多数の修正形態がなされ得ること我利介される。添付の請求項は、本発明の範囲および真意に収まるような修正形態を包含するように意図されている。したがって、ここに開示された実施形態については、あらゆる点で、例示的なものとして考慮されるべきであって、制限的なものとして考慮されるべきではなく、本発明の範囲は、前述の説明ではなく添付の請求項により示されており、したがって、これらの請求項の意味および範囲において生じる全ての変更は、該請求項内に包含されるように意図されている。
【図面の簡単な説明】
【図1】 従来技術のネットワーキングデバイスの垂直的専有ネットワーキングアーキテクチャの一例を示す図である。
【図2】 本発明の一実施形態による水平的オープンネットワーキングアーキテクチャの一例を示す図である。
【図3】 本発明の一実施形態による水平的オープンネットワーキングアーキテクチャの主要な構成要素を示す図である。
【図4】 本発明の一実施形態による転送要素および制御要素の図式を示す図である。
【符号の説明】
200 水平的オープンネットワーキングアーキテクチャ
210 転送要素
212 転送要素マネージャ
214 転送要素接続マネージャ
220 ワイヤフォーマット−接続API
220 オープン転送要素/制御要素相互接続
230 制御要素
232 制御要素マネージャ
234 制御要素接続マネージャ
236 転送要素プラグインAPI/サンプルプラグイン
240 ネットワークサービスAPI
250 サードパーティアプリケーション
410 転送要素ソフトウェア/ハードウェア
420 デバイス固有の転送要素インターフェース
430 “BLOB”カプセル化除去装置
440 抽象的転送要素API
470 制御要素
475 抽象的転送要素構成
480 不透明転送要素プラグインAPI
490 転送要素固有のプラグイン
495 転送要素構成BLOB

Claims (21)

  1. コンピュータネットワークにおいて、データ転送を行うように適合された転送要素と、
    コンピュータネットワークにおいて、ネットワークのシグナリングおよび制御を行うように適合され、転送要素を構成するための標準化されたデータセットを生成するように適合された制御要素と、
    転送要素を制御要素へ有効に接続する相互接続要素と、
    転送要素を構成すべく、標準化されたデータセットを制御要素から受け取るために、標準化されたデータセットを特殊化されたデータセットに変換するために、かつ、特殊化されたデータセットを転送要素へ伝達するために、制御要素と統合される転送要素固有のプラグインと
    を具備し、
    前記転送要素は、コンピュータネットワークにおいてデータ転送を行うように該転送要素を構成するために、特殊化されたデータセットを利用し、
    前記特殊化されたデータセットは、前記転送要素の専有的設計およびアーキテクチャ情報に対応することを特徴とするコンピュータシステム。
  2. 前記制御要素から標準化されたデータセットを受け取りかつ該標準化されたデータセットを転送要素固有のプラグインへ伝達するための不透明転送要素プラグインにして、転送要素固有のプラグインから特殊化されたデータセットを受け取りかつ該特殊化されたデータセットを転送要素へ伝達するための不透明転送要素プラグインをさらに有することを特徴とする請求項1に記載のコンピュータシステム。
  3. 前記特殊化されたデータセットは、バイナリラージオブジェクトであることを特徴とする請求項1に記載のコンピュータシステム。
  4. 前記転送要素は、転送要素を構成するために、特殊化されたデータセットを受け取って、かつ、該特殊化されたデータセットを、転送要素内のデバイス固有の転送要素インターフェースにより読み取り可能なデータの形にカプセル化解除するカプセル化除去装置を有することを特徴とする請求項1に記載のコンピュータシステム。
  5. 前記特殊化されたデータセットは、該特殊化されたデータセットをカプセル化解除するために、転送要素内のカプセル化除去装置へ伝達されることを特徴とする請求項1に記載のコンピュータシステム。
  6. 前記特殊化されたデータセットは、転送要素へ伝達する前に暗号化され、かつ、該暗号化した特殊化されたデータセットは、転送要素において解読されることを特徴とする請求項1に記載のコンピュータシステム。
  7. 前記転送要素固有のプラグインは、ダイナミックリンクライブラリであることを特徴とする請求項1に記載のコンピュータシステム。
  8. コンピュータデバイスを構成するための方法であって、
    転送要素を構成するために、制御要素により、標準化されたデータセットを生成する段階と、
    標準化されたデータセットを、制御要素から、該制御要素と統合された転送要素固有のプラグインへ伝達する段階と、
    前記転送要素固有のプラグインが標準化されたデータセットを、特殊化されたデータセットに変換する段階と、
    転送要素を構成するために、特殊化されたデータセットを、該転送要素へ伝達する段階と
    を具備し、
    前記特殊化されたデータセットは、前記転送要素の専有的設計およびアーキテクチャ情報に対応することを特徴とする方法。
  9. 前記転送要素は、コンピュータネットワークにおいてデータ転送を行うように適合されることを特徴とする請求項8に記載の方法。
  10. 前記制御要素は、コンピュータネットワークにおいてネットワークのシグナリングおよび制御を行うように適合されることを特徴とする請求項8に記載の方法。
  11. 前記標準化されたデータセットを、不透明転送要素プラグインにより、制御要素から受け取る段階と、
    標準化されたデータセットを、不透明転送要素プラグインにより、転送要素固有のプラグインへ伝達する段階と
    をさらに有することを特徴とする請求項8に記載の方法。
  12. 前記特殊化されたデータセットを、不透明転送要素プラグインにより、転送要素固有のプラグインから受け取る段階と、
    特殊化されたデータセットを、不透明転送要素プラグインにより、転送要素へ伝達する段階と
    をさらに有することを特徴とする請求項8に記載の方法。
  13. 前記転送要素を構成するために、特殊化されたデータセットを、転送要素内のデバイス固有の転送要素インターフェースにより読み取り可能なデータの形にカプセル化解除する段階をさらに有することを特徴とする請求項8に記載の方法。
  14. 前記特殊化されたデータセットは、バイナリラージオブジェクトであることを特徴とする請求項8に記載の方法。
  15. 前記特殊化されたデータセットを、転送要素へ伝達する前に暗号化する段階と、
    特殊化データセットを、転送要素において解読する段階と
    をさらに有することを特徴とする請求項8に記載の方法。
  16. 前記転送要素固有のプラグインは、ダイナミックリンクライブラリであることを特徴とする請求項8に記載の方法。
  17. 転送要素を構成するために制御要素と統合されるように適合されたコンピュータ読み取り可能なプログラムコードを具備する転送要素プラグインソフトウェアプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
    前記コンピュータ読み取り可能なプログラムコードは、
    前記制御要素と統合された転送要素固有のプラグインが、制御要素により生成された、転送要素を構成するための標準化されたデータセットを受け取る段階と、
    前記転送要素固有のプラグインが、標準化されたデータセットを、特殊化されたデータセットに変換する段階と、
    前記転送要素固有のプラグインが、転送要素を構成するために、特殊化されたデータセットを、転送要素へ伝達する段階と
    を具備し、
    前記特殊化されたデータセットは、前記転送要素の専有的設計およびアーキテクチャ情報に対応することを特徴とする転送要素プラグインソフトウェアプログラムを記録したコンピュータ読み取り可能な記録媒体。
  18. 前記コンピュータ読み取り可能なプログラムコードは、
    前記転送要素固有のプラグインが、標準化されたデータセットを、不透明転送要素プラグインから受け取る段階と、
    前記転送要素固有のプラグインが、特殊化されたデータセットを、不透明転送要素プラグインへ伝達する段階と
    をさらに具備することを特徴とする請求項17に記載の転送要素プラグインソフトウェアプログラムを記録したコンピュータ読み取り可能な記録媒体。
  19. 前記コンピュータ読み取り可能なプログラムコードは、
    前記制御要素が、特殊化されたデータセットを、転送要素へ伝達する前に暗号化する段階
    をさらに具備することを特徴とする請求項17に記載の転送要素プラグインソフトウェアプログラムを記録したコンピュータ読み取り可能な記録媒体。
  20. 前記特殊化されたデータセットは、バイナリラージオブジェクトであることを特徴とする請求項17に記載の転送要素プラグインソフトウェアプログラムを記録したコンピュータ読み取り可能な記録媒体。
  21. 前記コンピュータ読み取り可能なプログラムコードは、ダイナミックリンクライブラリであることを特徴とする請求項17に記載の転送要素プラグインソフトウェアプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2001547817A 1999-12-22 2000-08-17 ネットワークデバイスのためのオープンアーキテクチャにおいて、専有転送要素が標準的制御要素と相互運用することを可能にするための方法および装置 Expired - Lifetime JP4554136B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/470,163 1999-12-22
US09/470,163 US7203740B1 (en) 1999-12-22 1999-12-22 Method and apparatus for allowing proprietary forwarding elements to interoperate with standard control elements in an open architecture for network devices
PCT/US2000/022540 WO2001047207A2 (en) 1999-12-22 2000-08-17 Method and apparatus for proprietary data forwarding in an open architecture for network devices

Publications (2)

Publication Number Publication Date
JP2003518667A JP2003518667A (ja) 2003-06-10
JP4554136B2 true JP4554136B2 (ja) 2010-09-29

Family

ID=23866526

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001547817A Expired - Lifetime JP4554136B2 (ja) 1999-12-22 2000-08-17 ネットワークデバイスのためのオープンアーキテクチャにおいて、専有転送要素が標準的制御要素と相互運用することを可能にするための方法および装置

Country Status (10)

Country Link
US (1) US7203740B1 (ja)
EP (1) EP1240748B1 (ja)
JP (1) JP4554136B2 (ja)
CN (1) CN100386988C (ja)
AT (1) ATE346436T1 (ja)
AU (1) AU6779500A (ja)
DE (1) DE60032018T2 (ja)
HK (1) HK1045773B (ja)
TW (1) TW546929B (ja)
WO (1) WO2001047207A2 (ja)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8396950B1 (en) * 2000-03-02 2013-03-12 Rockstar Consortium Us Lp Method and apparatus for the fast detection of connectivity loss between devices in a network
US6799318B1 (en) * 2000-04-24 2004-09-28 Microsoft Corporation Method having multiple interfaces with distinguished functions and commands for providing services to a device through a transport
CN1559132A (zh) 2001-09-26 2004-12-29 在具有冗余网络路径的通信系统中接收数据电报
US6973503B2 (en) 2002-05-23 2005-12-06 International Business Machines Corporation Preventing at least in part control processors from being overloaded
AU2002320892A1 (en) * 2002-06-25 2004-01-06 Siemens Aktiengesellschaft Communication network and method for operating the same
US7420929B1 (en) 2002-07-02 2008-09-02 Juniper Networks, Inc. Adaptive network flow analysis
US7313100B1 (en) 2002-08-26 2007-12-25 Juniper Networks, Inc. Network device having accounting service card
US7251215B1 (en) 2002-08-26 2007-07-31 Juniper Networks, Inc. Adaptive network router
US7430747B2 (en) * 2002-12-04 2008-09-30 Microsoft Corporation Peer-to peer graphing interfaces and methods
US20040111517A1 (en) * 2002-12-09 2004-06-10 Mitu Aggarwal Servicing forwarding elements in a network
US20040122967A1 (en) * 2002-12-23 2004-06-24 Bressler Robert D. Method and apparatus for managing packet flows for multiple network services
US7646759B2 (en) * 2003-01-07 2010-01-12 Intel Corporation Apparatus and method for configuring data plane behavior on network forwarding elements
JP4261203B2 (ja) * 2003-01-16 2009-04-30 株式会社リコー 情報提供装置、情報提供方法、情報提供システム、及び情報提供プログラム
JP4213517B2 (ja) * 2003-02-28 2009-01-21 富士通株式会社 パケット処理システム
CN1283063C (zh) 2003-05-20 2006-11-01 华为技术有限公司 通信设备中配置数据的方法及装置
DE10324603A1 (de) * 2003-05-30 2004-12-23 Siemens Ag Verfahren zur Weitergabe von IP-Paketen an eine externe Steuerkomponente eines Netzknotens
DE10324604A1 (de) * 2003-05-30 2004-12-23 Siemens Ag Verfahren zur Weitergabe von IP-Paketen an eine externe Steuerkomponente eines Netzknotens in einem mehrere Netzknoten ausweisenden IP-Pakete vermittelnden Kommunikationsnetz
CN1617508B (zh) * 2003-11-13 2010-04-14 华为技术有限公司 一种服务质量策略转换设备及方法
US9032095B1 (en) 2004-01-06 2015-05-12 Juniper Networks, Inc. Routing device having multiple logical routers
US7664855B1 (en) 2004-05-05 2010-02-16 Juniper Networks, Inc. Port scanning mitigation within a network through establishment of an a prior network connection
US7546635B1 (en) 2004-08-11 2009-06-09 Juniper Networks, Inc. Stateful firewall protection for control plane traffic within a network device
US8156207B2 (en) * 2004-10-08 2012-04-10 Hewlett-Packard Development Company, L.P. Method and apparatus for remotely configuring network devices
US9014181B2 (en) * 2004-11-01 2015-04-21 Alcatel Lucent Softrouter separate control network
US20070189270A1 (en) * 2006-02-15 2007-08-16 Borislow Daniel M Network adapter
US8019893B2 (en) * 2006-08-31 2011-09-13 Cisco Technology, Inc. Method and device to process network data
US20080196104A1 (en) * 2007-02-09 2008-08-14 George Tuvell Off-line mms malware scanning system and method
US8339959B1 (en) 2008-05-20 2012-12-25 Juniper Networks, Inc. Streamlined packet forwarding using dynamic filters for routing and security in a shared forwarding plane
US8955107B2 (en) * 2008-09-12 2015-02-10 Juniper Networks, Inc. Hierarchical application of security services within a computer network
US9559987B1 (en) * 2008-09-26 2017-01-31 Tellabs Operations, Inc Method and apparatus for improving CAM learn throughput using a cache
US8433283B2 (en) 2009-01-27 2013-04-30 Ymax Communications Corp. Computer-related devices and techniques for facilitating an emergency call via a cellular or data network using remote communication device identifying information
US8914878B2 (en) * 2009-04-29 2014-12-16 Juniper Networks, Inc. Detecting malicious network software agents
US8351431B2 (en) * 2009-05-13 2013-01-08 Avaya Inc. Method and apparatus for providing fast reroute of a multicast packet within a network element to an available port associated with a multi-link trunk
US8789173B2 (en) * 2009-09-03 2014-07-22 Juniper Networks, Inc. Protecting against distributed network flood attacks
US8369345B1 (en) 2009-11-13 2013-02-05 Juniper Networks, Inc. Multi-router system having shared network interfaces
CN102171993B (zh) 2011-04-14 2013-09-11 华为技术有限公司 联动策略实现方法及装置、开放平台单板和设备
US20130070761A1 (en) * 2011-09-20 2013-03-21 International Business Machines Corporation Systems and methods for controlling a network switch
US9251535B1 (en) 2012-01-05 2016-02-02 Juniper Networks, Inc. Offload of data transfer statistics from a mobile access gateway
US9246702B1 (en) * 2012-01-31 2016-01-26 Cisco Technology, Inc. System and method for configuring service appliances as virtual line cards in a network environment
US8817733B2 (en) * 2012-08-16 2014-08-26 Intel Corporation Mobile proxy for cloud radio access network
CN104322039A (zh) * 2012-12-31 2015-01-28 华为技术有限公司 电信网络能力开放的系统架构、子系统和方法
US10003495B1 (en) 2014-09-20 2018-06-19 Cisco Technology, Inc. Discovery protocol for enabling automatic bootstrap and communication with a service appliance connected to a network switch
US10270658B2 (en) 2014-09-30 2019-04-23 Cisco Technology, Inc. Zero touch configuration and synchronization of a service appliance in a network environment
US10015048B2 (en) 2014-12-27 2018-07-03 Intel Corporation Programmable protocol parser for NIC classification and queue assignments
US10374904B2 (en) 2015-05-15 2019-08-06 Cisco Technology, Inc. Diagnostic network visualization
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US9967158B2 (en) 2015-06-05 2018-05-08 Cisco Technology, Inc. Interactive hierarchical network chord diagram for application dependency mapping
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US9825862B2 (en) 2015-08-26 2017-11-21 Barefoot Networks, Inc. Packet header field extraction
US9912774B2 (en) 2015-12-22 2018-03-06 Intel Corporation Accelerated network packet processing
US10289438B2 (en) 2016-06-16 2019-05-14 Cisco Technology, Inc. Techniques for coordination of application components deployed on distributed virtual machines
US10708183B2 (en) 2016-07-21 2020-07-07 Cisco Technology, Inc. System and method of providing segment routing as a service
US10756928B2 (en) 2016-07-29 2020-08-25 At&T Intellectual Property I, L.P. Interconnection between enterprise network customers and network-based cloud service providers
US10972388B2 (en) 2016-11-22 2021-04-06 Cisco Technology, Inc. Federated microburst detection
US11245572B1 (en) 2017-01-31 2022-02-08 Barefoot Networks, Inc. Messaging between remote controller and forwarding element
US10616101B1 (en) * 2017-03-21 2020-04-07 Barefoot Networks, Inc. Forwarding element with flow learning circuit in its data plane
US10708152B2 (en) 2017-03-23 2020-07-07 Cisco Technology, Inc. Predicting application and network performance
US10523512B2 (en) 2017-03-24 2019-12-31 Cisco Technology, Inc. Network agent for generating platform specific network policies
US10594560B2 (en) 2017-03-27 2020-03-17 Cisco Technology, Inc. Intent driven network policy platform
US10764141B2 (en) 2017-03-27 2020-09-01 Cisco Technology, Inc. Network agent for reporting to a network policy system
US10250446B2 (en) 2017-03-27 2019-04-02 Cisco Technology, Inc. Distributed policy store
US10873794B2 (en) 2017-03-28 2020-12-22 Cisco Technology, Inc. Flowlet resolution for application performance monitoring and management
US10757028B1 (en) 2017-04-23 2020-08-25 Barefoot Networks, Inc. Configurable forwarding element deparser
US10680887B2 (en) 2017-07-21 2020-06-09 Cisco Technology, Inc. Remote device status audit and recovery
US10826840B1 (en) 2017-07-23 2020-11-03 Barefoot Networks, Inc. Multiple copies of stateful tables
US10594630B1 (en) 2017-09-28 2020-03-17 Barefoot Networks, Inc. Expansion of packet data within processing pipeline
US10554501B2 (en) 2017-10-23 2020-02-04 Cisco Technology, Inc. Network migration assistant
US10523541B2 (en) 2017-10-25 2019-12-31 Cisco Technology, Inc. Federated network and application data analytics platform
US10594542B2 (en) 2017-10-27 2020-03-17 Cisco Technology, Inc. System and method for network root cause analysis
US11233821B2 (en) 2018-01-04 2022-01-25 Cisco Technology, Inc. Network intrusion counter-intelligence
US10826803B2 (en) 2018-01-25 2020-11-03 Cisco Technology, Inc. Mechanism for facilitating efficient policy updates
US10999149B2 (en) 2018-01-25 2021-05-04 Cisco Technology, Inc. Automatic configuration discovery based on traffic flow data
US10798015B2 (en) 2018-01-25 2020-10-06 Cisco Technology, Inc. Discovery of middleboxes using traffic flow stitching
US10574575B2 (en) 2018-01-25 2020-02-25 Cisco Technology, Inc. Network flow stitching using middle box flow stitching
US11128700B2 (en) 2018-01-26 2021-09-21 Cisco Technology, Inc. Load balancing configuration based on traffic flow telemetry
US10516649B1 (en) * 2018-06-27 2019-12-24 Valtix, Inc. High-performance computer security gateway for cloud computing platform
US10705511B2 (en) * 2018-07-11 2020-07-07 Siemens Aktiengesellschaft Abstraction layers for automation applications
US11012475B2 (en) 2018-10-26 2021-05-18 Valtix, Inc. Managing computer security services for cloud computing platforms
FR3089082B1 (fr) * 2018-11-27 2020-10-30 Psa Automobiles Sa Procédé de configuration d’un commutateur Ethernet d’un réseau embarqué d’un véhicule automobile
US11533387B2 (en) * 2018-11-30 2022-12-20 Cerner Innovation, Inc. Interface engine architecture

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758194A (en) * 1993-11-30 1998-05-26 Intel Corporation Communication apparatus for handling networks with different transmission protocols by stripping or adding data to the data stream in the application layer
US5903731A (en) 1995-06-14 1999-05-11 Us West Technologies, Inc. System and associated method for re-engineering a telecommunications network support system with object-oriented translators
US5742810A (en) 1995-08-31 1998-04-21 International Business Machines Corporation System, method and computer program product for passing host variables to a database management system
US6393496B1 (en) * 1995-11-09 2002-05-21 Curtis A. Schwaderer Operating system and network independent application program interface for use in an intelligent communication device
US6115747A (en) * 1995-11-13 2000-09-05 Roger E. Billings Computer network interface that merges remote data received from other computers with local data before transmitting the merged data to a network
US5742607A (en) * 1995-12-20 1998-04-21 Intel Corporation Method and apparatus for controlling two way communication via disparate physical media
JP3289605B2 (ja) 1996-06-21 2002-06-10 日本電気株式会社 ハードウェアリソース管理モジュール共通化方式
JP3439337B2 (ja) 1998-03-04 2003-08-25 日本電気株式会社 ネットワーク管理システム
US6243711B1 (en) * 1998-03-06 2001-06-05 Eality, Inc. Scripting language for distributed database programming
WO1999057649A2 (en) 1998-05-04 1999-11-11 Intermec Ip Corporation Automatic data collection device having a network communications capability
US6434618B1 (en) * 1998-11-12 2002-08-13 Lucent Technologies Inc. Programmable network element for packet-switched computer network
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
US6401132B1 (en) * 1999-08-03 2002-06-04 International Business Machines Corporation Subchaining transcoders in a transcoding framework

Also Published As

Publication number Publication date
DE60032018T2 (de) 2007-06-21
HK1045773A1 (en) 2002-12-06
JP2003518667A (ja) 2003-06-10
TW546929B (en) 2003-08-11
HK1045773B (zh) 2007-02-16
CN100386988C (zh) 2008-05-07
EP1240748A2 (en) 2002-09-18
CN1425233A (zh) 2003-06-18
EP1240748B1 (en) 2006-11-22
WO2001047207A2 (en) 2001-06-28
DE60032018D1 (de) 2007-01-04
ATE346436T1 (de) 2006-12-15
WO2001047207A3 (en) 2001-12-20
US7203740B1 (en) 2007-04-10
AU6779500A (en) 2001-07-03

Similar Documents

Publication Publication Date Title
JP4554136B2 (ja) ネットワークデバイスのためのオープンアーキテクチャにおいて、専有転送要素が標準的制御要素と相互運用することを可能にするための方法および装置
JP5864758B2 (ja) バーチャルスイッチを介してネットワークトラフィックをコントロールするシステム及び方法
US7738457B2 (en) Method and system for virtual routing using containers
US7840700B2 (en) Dynamically adding application logic and protocol adapters to a programmable network element
Cabuk et al. Towards automated provisioning of secure virtualized networks
JP5529251B2 (ja) 入出力データを送信するための論理ネットワークレイヤを提供する方法及びシステム
US7742474B2 (en) Virtual network interface cards with VLAN functionality
EP2974230B1 (en) Common agent framework for network devices
US20070168475A1 (en) Dynamic services blade and method
US20060294584A1 (en) Auto-Configuration of Network Services Required to Support Operation of Dependent Network Services
Maffione et al. A software development kit to exploit RINA programmability
US20230344758A1 (en) Communications methods, apparatus and systems for providing efficient and scalable media services
Cziva et al. Gnfc: Towards network function cloudification
US10015074B1 (en) Abstract stack ports to enable platform-independent stacking
Fernandez et al. Software Defined Networking (SDN) with OpenFlow 1.3, Open vSwitch and Ryu
Miano et al. Transforming a traditional home gateway into a hardware-accelerated SDN switch
Miano et al. Partial offloading of OpenFlow rules on a traditional hardware switch ASIC
Cisco Cisco 3600 Series - Cisco IOS Release 12.2 XB
Cabuk et al. A comparative study on secure network virtualization
Georgopoulos et al. A protocol processing architecture backing TCP/IP-based security applications in high speed networks
US11743365B2 (en) Supporting any protocol over network virtualization
EP3621251B1 (en) Packet processing
Siyan et al. Windows 2000 TCP/IP
Takahashi et al. APE: Fast and secure active networking architecture for active packet editing
Zhuang An Open Congestion Control Architecture for high performance fabrics

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060613

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060816

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061215

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070509

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070608

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20071005

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100217

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100222

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

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

Free format text: PAYMENT UNTIL: 20130723

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4554136

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term