JP2017537404A - メモリアクセス方法、スイッチ、およびマルチプロセッサシステム - Google Patents
メモリアクセス方法、スイッチ、およびマルチプロセッサシステム Download PDFInfo
- Publication number
- JP2017537404A JP2017537404A JP2017528517A JP2017528517A JP2017537404A JP 2017537404 A JP2017537404 A JP 2017537404A JP 2017528517 A JP2017528517 A JP 2017528517A JP 2017528517 A JP2017528517 A JP 2017528517A JP 2017537404 A JP2017537404 A JP 2017537404A
- Authority
- JP
- Japan
- Prior art keywords
- flow entry
- data packet
- switch
- flow
- operation command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000009471 action Effects 0.000 claims abstract description 88
- 238000004364 calculation method Methods 0.000 claims description 44
- 230000008569 process Effects 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 5
- 238000012546 transfer Methods 0.000 description 27
- 230000008859 change Effects 0.000 description 24
- 230000000875 corresponding effect Effects 0.000 description 17
- 230000004044 response Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 125000004122 cyclic group Chemical group 0.000 description 2
- COCAUCFPFHUGAA-MGNBDDOMSA-N n-[3-[(1s,7s)-5-amino-4-thia-6-azabicyclo[5.1.0]oct-5-en-7-yl]-4-fluorophenyl]-5-chloropyridine-2-carboxamide Chemical compound C=1C=C(F)C([C@@]23N=C(SCC[C@@H]2C3)N)=CC=1NC(=O)C1=CC=C(Cl)C=N1 COCAUCFPFHUGAA-MGNBDDOMSA-N 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0813—Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/005—Network, LAN, Remote Access, Distributed System
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/15—Use in a specific computing environment
- G06F2212/154—Networked environment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Abstract
Description
スイッチによる、データパケットを受信することであって、データパケットは、送信元ノード情報と、宛先ノード情報と、プロトコルタイプとを含み、プロトコルタイプは、データパケットのタイプを示すのに使用されること、
データパケットに対してフローテーブルマッチングを実行することであって、フローテーブルは、少なくとも1つのフローエントリを含み、フローエントリは、マッチングフィールドと、アクションフィールドとを含み、かつ少なくとも1つのフローエントリは、第1のフローエントリを含み、第1のフローエントリのマッチングフィールドは、データパケットにおける送信元ノード情報、宛先ノード情報、およびプロトコルタイプとマッチするのに使用され、第1のフローエントリのアクションフィールドは、スイッチに組み込まれたストレージデバイスに関する操作コマンドを示すのに使用されること、および
データパケットが第1のフローエントリとマッチすることに成功した場合、マッチされることに成功した第1のフローエントリのアクションフィールドにおける操作コマンドによりストレージデバイスに対して操作を実行することを含む。
マッチされることに成功した第1のフローエントリのアクションフィールドにおける操作コマンドが読取り操作コマンドである場合、ストレージデバイスからデータを読み取り、かつ読み取られたデータを、送信元ノード情報に対応するノードに戻すこと、または
マッチされることに成功した第1のフローエントリのアクションフィールドにおける操作コマンドが書込み操作コマンドである場合、データパケットに入っているデータをストレージデバイスに書き込むことを含む。
データパケットが第2のフローエントリとマッチすることに成功した場合、マッチされることに成功した第2のフローエントリのアクションフィールドにおける操作コマンドによりデータパケットにおけるデータに対して計算処理を実行して、計算結果を獲得すること、および
計算結果を、データパケットにおける送信元ノード情報に対応するノードに送信することをさらに含む。
コントローラによって送信されたフローテーブル構成メッセージを受信することであって、フローテーブル構成メッセージは、スイッチに関するフローエントリを構成するのに使用されること、および
フローテーブル構成メッセージによりフローエントリを構成することをさらに含む。
データパケットを受信するように構成された第1の受信モジュールであって、データパケットは、送信元ノード情報と、宛先ノード情報と、プロトコルタイプとを含み、プロトコルタイプは、データパケットのタイプを示すのに使用される、第1の受信モジュールと、
第1の受信モジュールによって受信されたデータパケットに対してフローテーブルマッチングを実行するように構成されたマッチングモジュールであって、フローテーブルは、少なくとも1つのフローエントリを含み、フローエントリは、マッチングフィールドと、アクションフィールドとを含み、かつ少なくとも1つのフローエントリは、第1のフローエントリを含み、第1のフローエントリのマッチングフィールドは、データパケットにおける送信元ノード情報、宛先ノード情報、およびプロトコルタイプとマッチするのに使用され、第1のフローエントリのアクションフィールドは、スイッチに組み込まれたストレージデバイスに関する操作コマンドを示すのに使用される、マッチングモジュールと、
データパケットが第1のフローエントリとマッチすることに成功した場合、マッチされることに成功した第1のフローエントリのアクションフィールドにおける操作コマンドによりストレージデバイスに対して操作を実行するように構成された操作モジュールとを含む。
操作コマンドが読取り操作コマンドである場合、ストレージデバイスからデータを読み取るように構成された読取りユニットと、
読取りユニットによって読み取られたデータを、送信元ノード情報に対応するノードに戻すように構成された送信ユニットと、
操作コマンドが書込み操作コマンドである場合、データパケットに入っているデータをストレージデバイスに書き込むように構成された書込みユニットとを含む。
データパケットが第2のフローエントリとマッチすることに成功した場合、マッチされることに成功した第2のフローエントリのアクションフィールドにおける操作コマンドによりデータパケットにおけるデータに対して計算処理を実行して、計算結果を獲得するように構成された処理モジュールと、
処理モジュールによって獲得された計算結果を、データパケットにおける送信元ノード情報に対応するノードに送信するように構成された送信モジュールとをさらに含む。
コントローラによって送信されたフローテーブル構成メッセージを受信するように構成された第2の受信モジュールであって、フローテーブル構成メッセージは、スイッチに関するフローエントリを構成するのに使用される、第2の受信モジュールと、
第2の受信モジュールによって受信されたフローテーブル構成メッセージによりフローエントリを構成するように構成された構成モジュールとをさらに含む。
データパケットを受信するように構成された入力ポートであって、データパケットは、送信元ノード情報と、宛先ノード情報と、プロトコルタイプとを含み、プロトコルタイプは、データパケットのタイプを示すのに使用される、入力ポートと、
フローテーブルを記憶するように構成されたメモリであって、フローテーブルは、少なくとも1つのフローエントリを含み、フローエントリは、マッチングフィールドと、アクションフィールドとを含み、かつ少なくとも1つのフローエントリは、第1のフローエントリを含み、第1のフローエントリのマッチングフィールドは、データパケットにおける送信元ノード情報、宛先ノード情報、およびプロトコルタイプとマッチするのに使用され、第1のフローエントリのアクションフィールドは、スイッチに組み込まれたストレージデバイスに関する操作コマンドを示すのに使用される、メモリと、
データを記憶するように構成されたストレージデバイスと、
メモリに記憶されたフローテーブルを使用することによって、入力ポートにおいて受信されたデータパケットに対してフローテーブルマッチングを実行するように構成されたテーブルルックアップ論理回路と、
データパケットが第1のフローエントリとマッチすることに成功した場合、マッチされることに成功した第1のフローエントリのアクションフィールドにおける操作コマンドによりストレージデバイスに対して操作を実行するように構成された操作論理回路と、
操作論理回路を使用することによって伝送されたデータパケットのために出力ポートを選択するように構成されたクロスバーバスと、
クロスバーバスを使用することによって伝送されたデータパケットを送信するように構成された出力ポートとを含む。
本発明のこの実施形態は、前述のマルチプロセッサシステムに適用可能なメモリアクセス方法を提供する。方法は、スイッチによって実行されることがある。特定の実施態様において、スイッチは、OpenFlowスイッチ(OpenFlow Switch、略してOFS)、またはマッチング機能を有する別のスイッチであり得る。図2に示されるとおり、方法は、以下のステップを含む。
マッチされることに成功した第1のフローエントリのアクションフィールドにおける操作コマンドが読取り操作コマンドである場合、ストレージデバイスからデータを読み取り、かつ読み取られたデータを、送信元ノード情報に対応するノードに戻すこと、または
マッチされることに成功した第1のフローエントリのアクションフィールドにおける操作コマンドが書込み操作コマンドである場合、データパケットに入っているデータをストレージデバイスに書き込むことを含むことがある。
本発明のこの実施形態は、前述のマルチプロセッサシステムに適用可能なメモリアクセス方法を提供する。フローテーブルが、スイッチにおいて設定される。フローテーブルは、少なくとも1つのフローエントリを含み、各フローエントリは、マッチングフィールドと、アクションフィールドとを含む。マッチングフィールドは、スイッチによって受信されたデータパケットにおける情報とマッチするのに使用され、アクションフィールドは、フローエントリがマッチされることに成功した場合、データパケットに対して実行されるべき操作を示すのに使用される。フローテーブルにおけるフローエントリは、通常、転送フローエントリを含む。転送フローエントリは、データパケットの転送出口を決定するのに使用される。フローテーブルにおけるフローエントリは、データパケット変更フローエントリをさらに含むことがある。データパケット変更フローエントリは、データパケットにおける情報を変更すること、例えば、データパケットにおけるヘッダフィールドを変更することを決定するのに使用される。さらに、SRAMまたはDRAMなどのストレージデバイス(メモリとも呼ばれる)が、スイッチにさらに組み込まれる。実施態様において、スイッチは、OFSであることがあり、またはマッチング機能を有する別のスイッチであることがある。
マッチされることに成功した第1のフローエントリのアクションフィールドにおける操作コマンドが読取り操作コマンドである場合、ストレージデバイスからデータを読み取り、かつ読み取られたデータを、送信元ノード情報に対応するノードに戻すこと、または
マッチされることに成功した第1のフローエントリのアクションフィールドにおける操作コマンドが書込み操作コマンドである場合、データパケットに入っているデータをストレージデバイスに書き込むことを含むことがある。
OFCによって送信されたフローテーブル構成メッセージを受信することであって、フローテーブル構成メッセージは、スイッチに関するフローエントリを構成するのに使用されること、および
フローテーブル構成メッセージによるフローエントリを構成することをさらに含むことがある。
本発明のこの実施形態は、スイッチを提供する。フローテーブルが、スイッチにおいて設定される。フローテーブルは、少なくとも1つのフローエントリを含み、各フローエントリは、マッチングフィールドと、アクションフィールドとを含む。マッチングフィールドは、スイッチによって受信されたデータパケットにおける情報とマッチするのに使用され、アクションフィールドは、フローエントリがマッチされることに成功した場合、データパケットに対して実行されるべき操作を示すのに使用される。フローテーブルにおけるフローエントリは、通常、転送フローエントリを含む。転送フローエントリは、データパケットの転送出口を決定するのに使用される。フローテーブルにおけるフローエントリは、データパケット変更フローエントリをさらに含むことがある。データパケット変更フローエントリは、データパケットにおける情報を変更すること、例えば、データパケットにおけるヘッダフィールドを変更することを決定するのに使用される。さらに、SRAMまたはDRAMなどのストレージデバイスが、スイッチにさらに組み込まれる。実施態様において、スイッチは、OFSであることがある。
本発明のこの実施形態は、スイッチを提供する。フローテーブルが、スイッチにおいて設定される。フローテーブルは、少なくとも1つのフローエントリを含み、各フローエントリは、マッチングフィールドと、アクションフィールドとを含む。マッチングフィールドは、スイッチによって受信されたデータパケットにおける情報とマッチするのに使用され、アクションフィールドは、フローエントリがマッチされることに成功した場合、データパケットに対して実行されるべき操作を示すのに使用される。フローテーブルにおけるフローエントリは、通常、転送フローエントリを含む。転送フローエントリは、データパケットの転送出口を決定するのに使用される。フローテーブルにおけるフローエントリは、データパケット変更フローエントリをさらに含むことがある。データパケット変更フローエントリは、データパケットにおける情報を変更すること、例えば、データパケットにおけるヘッダフィールドを変更することを決定するのに使用される。さらに、SRAMまたはDRAMなどのストレージデバイスが、スイッチにさらに組み込まれる。実施態様において、スイッチは、OFSであることがあり、またはマッチング機能を有する別のスイッチであることがある。
第1のフローエントリにおける操作コマンドが読取り操作コマンドである場合、ストレージデバイスからデータを読み取るように構成された読取りユニットと、
読取りユニットによって読み取られたデータを、送信元ノード情報に対応するノードに戻すように構成された送信ユニットと、
第1のフローエントリにおける操作コマンドが書込み操作コマンドである場合、データパケットに入っているデータをストレージデバイスに書き込むように構成された書込みユニットとを含むことがある。
データパケットが第2のフローエントリとマッチすることに成功した場合、マッチされることに成功した第2のフローエントリのアクションフィールドにおける操作コマンドによりデータパケットにおけるデータに対して計算処理を実行して、計算結果を獲得するように構成された処理モジュール404と、
処理モジュール404によって獲得された計算結果を、プロセッサなどの、データパケットにおける送信元ノード情報に対応するノードに送信するように構成された送信モジュール405とをさらに含むことがある。
コントローラによって送信されたフローテーブル構成メッセージを受信するように構成された第2の受信モジュール406であって、フローテーブル構成メッセージは、スイッチに関するフローエントリを構成するのに使用される、第2の受信モジュール406と、
第2の受信モジュール406によって受信されたフローテーブル構成メッセージによりフローエントリを構成するように構成された構成モジュール407とをさらに含むことがある。
本発明のこの実施形態は、スイッチを提供する。図7を参照すると、スイッチは、プロセッサ501と、メモリ502と、バス503と、通信インターフェース504とを含む。メモリ502は、コンピュータ実行コマンドを記憶するのに使用される。プロセッサ501とメモリ502は、バス503を使用することによって接続される。コンピュータが実行する場合、プロセッサ501は、メモリ502に記憶されたコンピュータ実行コマンドを実行して、スイッチが、実施形態1または実施形態2におけるスイッチによって実行される方法を実行するようにする。
本発明のこの実施形態は、スイッチを提供する。図9を参照すると、スイッチは、入力ポート701と、メモリ702と、テーブルルックアップ論理回路703と、ストレージデバイス704と、操作論理回路705と、クロスバーバス706と、出力ポート707とを含む。
本発明のこの実施形態は、マルチプロセッサシステムを提供する。図10を参照すると、システムは、複数のプロセッサ801と、相互接続ネットワーク800とを含む。複数のプロセッサ801は、相互接続ネットワーク800を使用することによって互いに通信可能に接続され、相互接続ネットワーク800は、複数のスイッチ802を含む。スイッチ802は、実施形態4、5、または6において提供されるスイッチである。
第1のフローエントリにおける操作コマンドが読取り操作コマンドである場合、ストレージデバイスからデータを読み取るように構成された読取りユニットと、
読取りユニットによって読み取られたデータを、送信元ノード情報に対応するノードに戻すように構成された送信ユニットと、
第1のフローエントリにおける操作コマンドが書込み操作コマンドである場合、データパケットに入っているデータをストレージデバイスに書き込むように構成された書込みユニットとを含むことがある。
Claims (15)
- メモリアクセス方法であって、
スイッチによる、データパケットを受信することであって、前記データパケットは、送信元ノード情報と、宛先ノード情報と、プロトコルタイプとを備え、前記プロトコルタイプは、前記データパケットのタイプを示すのに使用される、受信することと、
前記データパケットに対してフローテーブルをマッチすることであって、前記フローテーブルは、少なくとも1つのフローエントリを備え、前記フローエントリは、マッチングフィールドと、アクションフィールドとを備え、かつ前記少なくとも1つのフローエントリは、第1のフローエントリを備え、前記第1のフローエントリのマッチングフィールドは、前記データパケットにおける前記送信元ノード情報、前記宛先ノード情報、および前記プロトコルタイプとマッチするのに使用され、前記第1のフローエントリのアクションフィールドは、前記スイッチに組み込まれたストレージデバイスに関する操作コマンドを示すのに使用される、マッチすることと、
前記データパケットが前記第1のフローエントリとマッチすることに成功した場合、マッチされることに成功した前記第1のフローエントリの前記アクションフィールドにおける前記操作コマンドにより前記ストレージデバイスに対して操作を実行することと
を備えることを特徴とするメモリアクセス方法。 - マッチされることに成功した前記第1のフローエントリの前記アクションフィールドにおける前記操作コマンドにより前記ストレージデバイスに対して操作を前記実行することは、
マッチされることに成功した前記第1のフローエントリの前記アクションフィールドにおける前記操作コマンドが読取り操作コマンドである場合、前記ストレージデバイスからデータを読み取り、かつ前記読み取られたデータを、前記送信元ノード情報に対応するノードに戻すこと、または
マッチされることに成功した前記第1のフローエントリの前記アクションフィールドにおける前記操作コマンドが書込み操作コマンドである場合、前記データパケットに入っているデータを前記ストレージデバイスに書き込むことを備えることを特徴とする請求項1に記載の方法。 - 前記少なくとも1つのフローエントリは、第2のフローエントリをさらに備え、前記第2のフローエントリのマッチングフィールドは、前記データパケットにおける前記送信元ノード情報、前記宛先ノード情報、および前記プロトコルタイプとマッチするのに使用され、前記第2のフローエントリのアクションフィールドは、前記データパケットにおける前記データに対して計算処理を実行するための操作コマンドを示すのに使用されることを特徴とする請求項1または2に記載の方法。
- 前記データパケットが前記第2のフローエントリとマッチすることに成功した場合、マッチされることに成功した前記第2のフローエントリの前記アクションフィールドにおける前記操作コマンドにより前記データパケットにおける前記データに対して計算処理を実行して、計算結果を獲得することと、
前記計算結果を、前記データパケットにおける前記送信元ノード情報に対応する前記ノードに送信することと
をさらに備えることを特徴とする請求項3に記載の方法。 - コントローラによって送信されたフローテーブル構成メッセージを受信することであって、前記フローテーブル構成メッセージは、前記スイッチに関する前記フローエントリを構成するのに使用される、受信することと、
前記フローテーブル構成メッセージにより前記フローエントリを構成することと
をさらに備えることを特徴とする請求項1乃至4のいずれか一項に記載の方法。 - スイッチであって、
データパケットを受信するように構成された第1の受信モジュールであって、前記データパケットは、送信元ノード情報と、宛先ノード情報と、プロトコルタイプとを備え、前記プロトコルタイプは、前記データパケットのタイプを示すのに使用される、第1の受信モジュールと、
前記第1の受信モジュールによって受信された前記データパケットに対してフローテーブルをマッチするように構成されたマッチングモジュールであって、前記フローテーブルは、少なくとも1つのフローエントリを備え、前記フローエントリは、マッチングフィールドと、アクションフィールドとを備え、かつ前記少なくとも1つのフローエントリは、第1のフローエントリを備え、前記第1のフローエントリのマッチングフィールドは、前記データパケットにおける前記送信元ノード情報、前記宛先ノード情報、および前記プロトコルタイプとマッチするのに使用され、前記第1のフローエントリのアクションフィールドは、前記スイッチに組み込まれたストレージデバイスに関する操作コマンドを示すのに使用される、マッチングモジュールと、
前記データパケットが前記第1のフローエントリとマッチすることに成功した場合、マッチされることに成功した前記第1のフローエントリの前記アクションフィールドにおける前記操作コマンドにより前記ストレージデバイスに対して操作を実行するように構成された操作モジュールと
を備えることを特徴とするスイッチ。 - 前記操作モジュールは、
前記操作コマンドが読取り操作コマンドである場合、前記ストレージデバイスからデータを読み取るように構成された読取りユニットと、
前記読取りユニットによって読み取られた前記データを、前記送信元ノード情報に対応するノードに戻すように構成された送信ユニットと、
前記操作コマンドが書込み操作コマンドである場合、前記データパケットに入っているデータを前記ストレージデバイスに書き込むように構成された書込みユニットと
を備えることを特徴とする請求項6に記載のスイッチ。 - 前記少なくとも1つのフローエントリは、第2のフローエントリをさらに備え、前記第2のフローエントリのマッチングフィールドは、前記データパケットにおける前記送信元ノード情報、前記宛先ノード情報、および前記プロトコルタイプとマッチするのに使用され、前記第2のフローエントリのアクションフィールドは、前記データパケットにおける前記データに対して計算処理を実行するための操作コマンドを示すのに使用されることを特徴とする請求項6または7に記載のスイッチ。
- 前記データパケットが前記第2のフローエントリとマッチすることに成功した場合、マッチされることに成功した前記第2のフローエントリの前記アクションフィールドにおける前記操作コマンドにより前記データパケットにおける前記データに対して計算処理を実行して、計算結果を獲得するように構成された処理モジュールと、
前記処理モジュールによって獲得された前記計算結果を、前記データパケットにおける前記送信元ノード情報に対応する前記ノードに送信するように構成された送信モジュールと
をさらに備えることを特徴とする請求項8に記載のスイッチ。 - コントローラによって送信されたフローテーブル構成メッセージを受信するように構成された第2の受信モジュールであって、前記フローテーブル構成メッセージは、前記スイッチに関する前記フローエントリを構成するのに使用される、第2の受信モジュールと、
前記第2の受信モジュールによって受信された前記フローテーブル構成メッセージにより前記フローエントリを構成するように構成された構成モジュールと
をさらに備えることを特徴とする請求項6乃至9のいずれか一項に記載のスイッチ。 - スイッチであって、
プロセッサと、
メモリと、
バスと、
通信インターフェースと
を備え、
前記メモリは、コンピュータ実行コマンドを記憶するように構成され、前記プロセッサと前記メモリは、前記バスを使用することによって接続され、前記コンピュータが実行する場合、前記プロセッサは、前記メモリに記憶された前記コンピュータ実行コマンドを実行して、前記スイッチが、請求項1乃至5のいずれか一項に記載の方法を実行するようにすることを特徴とするスイッチ。 - スイッチであって、
データパケットを受信するように構成された入力ポートであって、前記データパケットは、送信元ノード情報と、宛先ノード情報と、プロトコルタイプとを備え、前記プロトコルタイプは、前記データパケットのタイプを示すのに使用される、入力ポートと、
フローテーブルを記憶するように構成されたメモリであって、前記フローテーブルは、少なくとも1つのフローエントリを備え、前記フローエントリは、マッチングフィールドと、アクションフィールドとを備え、かつ前記少なくとも1つのフローエントリは、第1のフローエントリを備え、前記第1のフローエントリのマッチングフィールドは、前記データパケットにおける前記送信元ノード情報、前記宛先ノード情報、および前記プロトコルタイプとマッチするのに使用され、前記第1のフローエントリのアクションフィールドは、前記スイッチに組み込まれたストレージデバイスに関する操作コマンドを示すのに使用される、メモリと、
データを記憶するように構成されたストレージデバイスと、
前記メモリに記憶された前記フローテーブルを使用することによって、前記入力ポートにおいて前記受信されたデータパケットに対してフローテーブルをマッチするように構成されたテーブルルックアップ論理回路と、
前記データパケットが前記第1のフローエントリとマッチすることに成功した場合、マッチされることに成功した前記第1のフローエントリの前記アクションフィールドにおける前記操作コマンドにより前記ストレージデバイスに対して操作を実行するように構成された操作論理回路と、
前記操作論理回路を使用することによって伝送された前記データパケットのために出力ポートを選択するように構成されたクロスバーバスと、
前記クロスバーバスを使用することによって伝送された前記データパケットを送信するように構成された出力ポートと
を備えることを特徴とするスイッチ。 - マルチプロセッサシステムであって、
複数のプロセッサと、
相互接続ネットワークと
を備え、
前記複数のプロセッサは、前記相互接続ネットワークを使用することによって互いに通信可能に接続され、前記相互接続ネットワークは、複数のスイッチを備え、前記スイッチは、請求項6乃至12のいずれか一項に記載のスイッチを備えることを特徴とするマルチプロセッサシステム。 - 複数の外部ストレージデバイスをさらに備え、
前記複数の外部ストレージデバイスは、前記相互接続ネットワークを使用することによって前記複数のプロセッサに通信可能に接続されることを特徴とする請求項13に記載のマルチプロセッサシステム。 - システムオンチップであることを特徴とする請求項13または14に記載のマルチプロセッサシステム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/092421 WO2016082169A1 (zh) | 2014-11-28 | 2014-11-28 | 内存访问方法、交换机及多处理器系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017537404A true JP2017537404A (ja) | 2017-12-14 |
JP6514329B2 JP6514329B2 (ja) | 2019-05-15 |
Family
ID=56073370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017528517A Active JP6514329B2 (ja) | 2014-11-28 | 2014-11-28 | メモリアクセス方法、スイッチ、およびマルチプロセッサシステム |
Country Status (5)
Country | Link |
---|---|
US (1) | US10282293B2 (ja) |
EP (1) | EP3217616B1 (ja) |
JP (1) | JP6514329B2 (ja) |
CN (1) | CN105874758B (ja) |
WO (1) | WO2016082169A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016167806A1 (en) * | 2015-04-17 | 2016-10-20 | Hewlett Packard Enterprise Development Lp | Organizing and storing network communications |
CN109672615B (zh) * | 2017-10-17 | 2022-06-14 | 华为技术有限公司 | 数据报文缓存方法及装置 |
US10541918B2 (en) * | 2018-02-22 | 2020-01-21 | Juniper Networks, Inc. | Detecting stale memory addresses for a network device flow cache |
CN109450811B (zh) * | 2018-11-30 | 2022-08-12 | 新华三云计算技术有限公司 | 流量控制方法、装置及服务器 |
TWI688955B (zh) * | 2019-03-20 | 2020-03-21 | 點序科技股份有限公司 | 記憶體裝置以及記憶體的存取方法 |
CN112383480B (zh) * | 2020-10-29 | 2022-11-04 | 曙光网络科技有限公司 | 流表的处理方法、装置、监管设备和存储介质 |
CN113132358A (zh) * | 2021-03-29 | 2021-07-16 | 井芯微电子技术(天津)有限公司 | 策略分发器、拟态交换机及网络系统 |
CN116684358B (zh) * | 2023-07-31 | 2023-12-12 | 之江实验室 | 一种可编程网元设备的流表管理系统及方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010104033A1 (ja) * | 2009-03-09 | 2010-09-16 | 日本電気株式会社 | プロセッサ間通信システム及び通信方法、ネットワークスイッチ、及び並列計算システム |
JP2011170718A (ja) * | 2010-02-19 | 2011-09-01 | Nec Corp | コンピュータシステム、コントローラ、サービス提供サーバ、及び負荷分散方法 |
JP2011204233A (ja) * | 2010-03-18 | 2011-10-13 | Marvell World Trade Ltd | バッファマネージャおよびメモリ管理方法 |
JP2012023538A (ja) * | 2010-07-14 | 2012-02-02 | Kryna & Pluton Inc | 音響機器用支持具 |
EP2608461A1 (en) * | 2010-08-17 | 2013-06-26 | Nec Corporation | Communication device, communication system, communication method, and recording medium |
WO2013114490A1 (ja) * | 2012-02-02 | 2013-08-08 | 日本電気株式会社 | コントローラ、負荷分散方法、プログラムを格納した非一時的なコンピュータ可読媒体、コンピュータシステム、制御装置 |
WO2013146808A1 (ja) * | 2012-03-28 | 2013-10-03 | 日本電気株式会社 | コンピュータシステム、及び通信経路変更方法 |
JP2013201478A (ja) * | 2012-03-23 | 2013-10-03 | Nec Corp | ネットワークシステム、スイッチ、及び通信遅延短縮方法 |
WO2014112612A1 (ja) * | 2013-01-21 | 2014-07-24 | 日本電気株式会社 | 通信システム、制御装置及びネットワークトポロジの管理方法 |
US20140244966A1 (en) * | 2013-02-28 | 2014-08-28 | Texas Instruments Incorporated | Packet processing match and action unit with stateful actions |
US20140241356A1 (en) * | 2013-02-25 | 2014-08-28 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for flow table lookup parallelization in a software defined networking (sdn) system |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7000078B1 (en) * | 1999-10-01 | 2006-02-14 | Stmicroelectronics Ltd. | System and method for maintaining cache coherency in a shared memory system |
EP2722766A4 (en) | 2011-06-16 | 2015-05-20 | Nec Corp | COMMUNICATION SYSTEM, CONTROL, SWITCH, MEMORY MANAGEMENT DEVICE AND COMMUNICATION METHOD |
CN104185972A (zh) * | 2012-03-05 | 2014-12-03 | 日本电气株式会社 | 网络系统、交换机和网络构建方法 |
CN102946325B (zh) * | 2012-11-14 | 2015-06-03 | 中兴通讯股份有限公司 | 一种基于软件定义网络的网络诊断方法、系统及设备 |
CN103036653B (zh) * | 2012-12-26 | 2015-11-18 | 华中科技大学 | 一种对OpenFlow网络进行网络编码的方法 |
CN103501280A (zh) * | 2013-09-12 | 2014-01-08 | 电子科技大学 | 一种多层虚拟覆盖网络接入方法 |
-
2014
- 2014-11-28 JP JP2017528517A patent/JP6514329B2/ja active Active
- 2014-11-28 WO PCT/CN2014/092421 patent/WO2016082169A1/zh active Application Filing
- 2014-11-28 CN CN201480037772.0A patent/CN105874758B/zh active Active
- 2014-11-28 EP EP14907135.9A patent/EP3217616B1/en active Active
-
2017
- 2017-05-26 US US15/607,200 patent/US10282293B2/en active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010104033A1 (ja) * | 2009-03-09 | 2010-09-16 | 日本電気株式会社 | プロセッサ間通信システム及び通信方法、ネットワークスイッチ、及び並列計算システム |
US20110317691A1 (en) * | 2009-03-09 | 2011-12-29 | Nec Corporation | Interprocessor communication system and communication method, network switch, and parallel calculation system |
JP2011170718A (ja) * | 2010-02-19 | 2011-09-01 | Nec Corp | コンピュータシステム、コントローラ、サービス提供サーバ、及び負荷分散方法 |
JP2011204233A (ja) * | 2010-03-18 | 2011-10-13 | Marvell World Trade Ltd | バッファマネージャおよびメモリ管理方法 |
US20110296063A1 (en) * | 2010-03-18 | 2011-12-01 | Alon Pais | Buffer manager and methods for managing memory |
JP2012023538A (ja) * | 2010-07-14 | 2012-02-02 | Kryna & Pluton Inc | 音響機器用支持具 |
EP2608461A1 (en) * | 2010-08-17 | 2013-06-26 | Nec Corporation | Communication device, communication system, communication method, and recording medium |
WO2013114490A1 (ja) * | 2012-02-02 | 2013-08-08 | 日本電気株式会社 | コントローラ、負荷分散方法、プログラムを格納した非一時的なコンピュータ可読媒体、コンピュータシステム、制御装置 |
JP2013201478A (ja) * | 2012-03-23 | 2013-10-03 | Nec Corp | ネットワークシステム、スイッチ、及び通信遅延短縮方法 |
WO2013146808A1 (ja) * | 2012-03-28 | 2013-10-03 | 日本電気株式会社 | コンピュータシステム、及び通信経路変更方法 |
WO2014112612A1 (ja) * | 2013-01-21 | 2014-07-24 | 日本電気株式会社 | 通信システム、制御装置及びネットワークトポロジの管理方法 |
US20140241356A1 (en) * | 2013-02-25 | 2014-08-28 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for flow table lookup parallelization in a software defined networking (sdn) system |
US20140244966A1 (en) * | 2013-02-28 | 2014-08-28 | Texas Instruments Incorporated | Packet processing match and action unit with stateful actions |
Also Published As
Publication number | Publication date |
---|---|
EP3217616A4 (en) | 2017-09-13 |
US20170262371A1 (en) | 2017-09-14 |
US10282293B2 (en) | 2019-05-07 |
CN105874758B (zh) | 2019-07-12 |
JP6514329B2 (ja) | 2019-05-15 |
WO2016082169A1 (zh) | 2016-06-02 |
CN105874758A (zh) | 2016-08-17 |
EP3217616A1 (en) | 2017-09-13 |
EP3217616B1 (en) | 2018-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11929927B2 (en) | Network interface for data transport in heterogeneous computing environments | |
JP6514329B2 (ja) | メモリアクセス方法、スイッチ、およびマルチプロセッサシステム | |
US9866479B2 (en) | Technologies for concurrency of cuckoo hashing flow lookup | |
JP2021190125A (ja) | メモリリソースを管理するためのシステム及び方法 | |
CN112115090A (zh) | 用于事务的多协议支持 | |
US20180225254A1 (en) | Network communications using pooled memory in rack-scale architecture | |
US20200379922A1 (en) | Adaptive routing for pooled and tiered data architectures | |
CN105518631B (zh) | 内存管理方法、装置和系统、以及片上网络 | |
US20210326270A1 (en) | Address translation at a target network interface device | |
US10762137B1 (en) | Page table search engine | |
CN108702339B (zh) | 用于在结构架构中基于服务质量进行节流的装置和方法 | |
US10810133B1 (en) | Address translation and address translation memory for storage class memory | |
US11157191B2 (en) | Intra-device notational data movement system | |
US10754789B1 (en) | Address translation for storage class memory in a system that includes virtual machines | |
US11847049B2 (en) | Processing system that increases the memory capacity of a GPGPU | |
KR20050080704A (ko) | 프로세서간 데이터 전송 장치 및 방법 | |
EP3926482A1 (en) | System and method for performing transaction aggregation in a network-on-chip (noc) | |
US11281612B2 (en) | Switch-based inter-device notational data movement system | |
US20240069755A1 (en) | Computer system, memory expansion device and method for use in computer system | |
EP4429213A2 (en) | Network interface for data transport in heterogeneous computing environments | |
KR20240007533A (ko) | 메모리 분산 방법, 이를 구현한 컴퓨팅 시스템 | |
CN116795742A (zh) | 存储设备、信息存储方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170704 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170704 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20180511 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20180511 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180815 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181009 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20181207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190104 |
|
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: 20190312 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190411 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6514329 Country of ref document: JP 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 |