JP7138190B2 - ネットワークスイッチのキュー - Google Patents
ネットワークスイッチのキュー Download PDFInfo
- Publication number
- JP7138190B2 JP7138190B2 JP2020555898A JP2020555898A JP7138190B2 JP 7138190 B2 JP7138190 B2 JP 7138190B2 JP 2020555898 A JP2020555898 A JP 2020555898A JP 2020555898 A JP2020555898 A JP 2020555898A JP 7138190 B2 JP7138190 B2 JP 7138190B2
- Authority
- JP
- Japan
- Prior art keywords
- queue
- entries
- bit
- entry
- memory
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/522—Dynamic queue service slot or variable bandwidth allocation
- H04L47/524—Queue skipping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/525—Queue scheduling by attributing bandwidth to queues by redistribution of residual bandwidth
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
- H04L47/564—Attaching a deadline to packets, e.g. earliest due date first
- H04L47/566—Deadline varies as a function of time spent in the queue
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/622—Queue service order
- H04L47/6235—Variable service order
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/624—Altering the ordering of packets in an individual queue
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9005—Buffering arrangements using dynamic buffer space allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/901—Buffering arrangements using storage descriptor, e.g. read or write pointers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9031—Wraparound memory, e.g. overrun or underrun detection
-
- 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
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L12/5602—Bandwidth control in ATM Networks, e.g. leaky bucket
-
- 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
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5679—Arbitration or scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Memory System (AREA)
Description
Claims (20)
- ネットワークスイッチ内の回路を備えるキューであって、
データを、前記キューの先頭に最も近い最初の利用可能なエントリから開始してインオーダで連続して記憶するように構成されている複数のキューエントリと、
制御論理と、
回路を備える複数のスケジューラと、を備え、
前記複数のスケジューラの各々は、
割り当て解除のために前記複数のキューエントリのキューエントリを選択することと、
単一のビット遷移を伴う複数のビットを含むビットベクトルを生成することであって、前記ビットベクトル内の前記ビット遷移の位置は、割り当て解除のために選択されたキューエントリを識別する、ことと、を行うように構成されており、
前記制御論理は、前記複数のキューエントリのうち少なくとも2つの非連続エントリを識別する前記複数のスケジューラから複数のビットベクトルを受信したことに応じて、
前記少なくとも2つの非連続エントリの各々を割り当て解除することと、
割り当てられたままのエントリが前記キューの先頭から開始する連続したエントリに配置されるように、割り当てられたままのキューエントリを前記キューの先頭に向けてシフトすることと、を行うように構成されている、
キュー。 - 前記キューは、N(Nは整数)個の読み取りポートと、N個の書き込みポートと、をさらに備え、割り当て解除するために選択されたキューエントリの数はNに等しい、
請求項1のキュー。 - 前記選択されたキューエントリは、サービス品質(QoS)パラメータに関してアウトオブオーダで前記複数のスケジューラによる割り当て解除のために選択される、
請求項2のキュー。 - 前記データは、エイジに関してインオーダで前記複数のキューエントリに記憶される、
請求項3のキュー。 - 前記制御論理は、受信したビットベクトル内の各ビット位置を、受信した他のビットベクトルに記憶された値に基づく量だけ最下位ビット位置に向けてシフトすることによって、前記受信したビットベクトルの変換ビットベクトルを生成するように構成されている、
請求項1のキュー。 - 前記量は、他の変換ビットベクトルに記憶された値に基づいている、
請求項5のキュー。 - 前記キュー内の所定の位置にある前記キュー内のキューエントリは、前記所定の位置に等しい変換ビットベクトルのビット位置に記憶された値に基づいて、前記キューの先頭に向けてシフトされる、
請求項5のキュー。 - 前記キューは、前記キューに記憶されたデータに対応するデータを記憶するように構成されたメモリへの第1のインターフェースを備え、
前記制御論理は、データを読み取るために、前記選択されたキューエントリに記憶されたメモリアドレスを前記メモリに送信するように構成されている、
請求項1のキュー。 - 前記キューは、メモリ内のエントリを識別するメモリアドレスを記憶するように構成された回路を備えるインオーダ循環バッファへの第2のインターフェースを備え、
前記制御論理は、割り当てるメモリエントリを識別するために使用される前記循環バッファのエントリを更新するために、選択されたキューエントリに記憶されたメモリアドレスを、前記第2のインターフェースを介して前記循環バッファに送信するように構成されている、
請求項8のキュー。 - 前記制御論理は、
前記第2のインターフェースを介して、割り当てられた前記メモリのエントリを識別する、前記循環バッファに記憶されたメモリアドレスを受信することと、
受信したメモリアドレスを、使用可能なキューエントリに記憶することと、を行うように構成されている、
請求項9のキュー。 - データを、ネットワークスイッチ内の回路を備えるキューの複数のキューエントリに、前記キューの先頭に最も近い最初の利用可能なエントリから開始してインオーダで連続して記憶することと、
回路を備える複数のスケジューラによって、割り当て解除のために前記複数のキューエントリのキューエントリを選択することと、
前記複数のスケジューラによって、複数のビットベクトルを生成することであって、各ビットベクトルは、単一のビット遷移を伴う複数のビットを備え、前記ビットベクトル内の前記ビット遷移の位置は、割り当て解除のために選択されたキューエントリを識別する、ことと、
前記複数のキューエントリのうち少なくとも2つの非連続エントリを識別する前記複数のスケジューラから複数のビットベクトルを受信したことに応じて、
前記キュー内の制御論理によって、前記少なくとも2つの非連続エントリの各々を割り当て解除することと、
前記制御論理によって、割り当てられたままのエントリが前記キューの先頭から開始する連続したエントリに配置されるように、割り当てられたままのキューエントリを前記キューの先頭に向けてシフトすることと、を含む、
方法。 - 受信したビットベクトル内の各ビット位置を、受信した他のビットベクトルに記憶された値に基づく量だけ最下位ビット位置に向けてシフトすることによって、前記受信したビットベクトルの変換ビットベクトルを生成することをさらに含む、
請求項11の方法。 - 前記量は、他の変換ビットベクトルに記憶された値に基づいている、
請求項12の方法。 - 前記キュー内の前記制御論理によって、所定のエントリ位置にある前記キュー内のキューエントリを、前記所定のエントリ位置に等しい変換ビットベクトルのビット位置に記憶された値に基づいて、前記キューの先頭に向けてシフトすることをさらに含む、
請求項12の方法。 - データを読み取るために、前記選択されたキューエントリに記憶されたメモリアドレスをメモリに送信することをさらに含む、
請求項14の方法。 - ネットワークスイッチであって、
データを、キューの先頭に最も近い最初の利用可能なエントリから開始してインオーダで連続して記憶するように構成された複数のキューエントリを備えるキューであって、回路を備えるキューと、
前記キューに記憶された前記データに対応するデータを記憶するように構成されたメモリと、
前記メモリ内のエントリを識別するメモリアドレスを管理するように構成された回路を備えるインオーダ循環バッファと、を備え、
前記キューは、
割り当て解除のために前記複数のキューエントリのキューエントリを選択することと、
単一のビット遷移を伴う複数のビットを含むビットベクトルを生成することであって、前記ビットベクトル内の前記ビット遷移の位置は、割り当て解除のために選択された前記キューエントリを識別する、ことと、を行うように構成されており、
前記複数のキューエントリのうち少なくとも2つの非連続エントリを識別する回路を備える複数のスケジューラから複数のビットベクトルを受信したことに応じて、
前記少なくとも2つの非連続エントリの各々を割り当て解除することと、
割り当てられたままのエントリが前記キューの先頭から開始する連続したエントリに配置されるように、割り当てられたままのキューエントリを前記キューの先頭に向けてシフトすることと、を行うように構成されている、
ネットワークスイッチ。 - 前記キューは、受信したビットベクトル内の各ビット位置を、受信した他のビットベクトルに記憶された値に基づく量だけ最下位ビット位置に向けてシフトすることによって、前記受信したビットベクトルの変換ビットベクトルを生成するように構成されている、
請求項16のネットワークスイッチ。 - 前記量は、他の変換ビットベクトルに記憶された値に基づいている、
請求項17のネットワークスイッチ。 - 前記キューは、所定の位置にある前記キュー内のキューエントリを、前記所定の位置に等しい変換ビットベクトルのビット位置に記憶された値に基づいて、前記キューの先頭に向けてシフトするように構成されている、
請求項17のネットワークスイッチ。 - 前記キューは、データを読み取るために、前記選択されたキューエントリに記憶されたメモリアドレスを前記メモリに送信するように構成されている、
請求項17のネットワークスイッチ。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/951,844 US10601723B2 (en) | 2018-04-12 | 2018-04-12 | Bandwidth matched scheduler |
US15/951,844 | 2018-04-12 | ||
PCT/US2019/026571 WO2019199817A1 (en) | 2018-04-12 | 2019-04-09 | Queue in a network switch |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2021521529A JP2021521529A (ja) | 2021-08-26 |
JPWO2019199817A5 JPWO2019199817A5 (ja) | 2022-07-28 |
JP7138190B2 true JP7138190B2 (ja) | 2022-09-15 |
Family
ID=66248826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020555898A Active JP7138190B2 (ja) | 2018-04-12 | 2019-04-09 | ネットワークスイッチのキュー |
Country Status (6)
Country | Link |
---|---|
US (1) | US10601723B2 (ja) |
EP (1) | EP3777059B1 (ja) |
JP (1) | JP7138190B2 (ja) |
KR (1) | KR102456086B1 (ja) |
CN (1) | CN112189324B (ja) |
WO (1) | WO2019199817A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11294678B2 (en) | 2018-05-29 | 2022-04-05 | Advanced Micro Devices, Inc. | Scheduler queue assignment |
KR20200116268A (ko) * | 2019-04-01 | 2020-10-12 | 에스케이하이닉스 주식회사 | 버퍼 메모리, 이를 이용하는 연산 장치 및 시스템 |
US11334384B2 (en) * | 2019-12-10 | 2022-05-17 | Advanced Micro Devices, Inc. | Scheduler queue assignment burst mode |
US11948000B2 (en) | 2020-10-27 | 2024-04-02 | Advanced Micro Devices, Inc. | Gang scheduling for low-latency task synchronization |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5108476B2 (ja) | 2007-11-22 | 2012-12-26 | アイシン精機株式会社 | 車両用ドアロック装置 |
JP2017173884A (ja) | 2016-03-18 | 2017-09-28 | 日本電気株式会社 | メモリアクセス制御装置、情報処理システム、メモリアクセス制御方法、及び、プログラム |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05108476A (ja) * | 1991-10-18 | 1993-04-30 | Fujitsu Ltd | 主記憶制御装置 |
US6246680B1 (en) | 1997-06-30 | 2001-06-12 | Sun Microsystems, Inc. | Highly integrated multi-layer switch element architecture |
US7406554B1 (en) | 2000-07-20 | 2008-07-29 | Silicon Graphics, Inc. | Queue circuit and method for memory arbitration employing same |
US6782461B2 (en) | 2002-02-25 | 2004-08-24 | Intel Corporation | Dynamically adjustable load-sharing circular queues |
US20040151197A1 (en) * | 2002-10-21 | 2004-08-05 | Hui Ronald Chi-Chun | Priority queue architecture for supporting per flow queuing and multiple ports |
US7689793B1 (en) | 2003-05-05 | 2010-03-30 | Marvell Israel (M.I.S.L.) Ltd. | Buffer management architecture |
US20080320274A1 (en) * | 2007-06-19 | 2008-12-25 | Raza Microelectronics, Inc. | Age matrix for queue dispatch order |
US8090892B2 (en) * | 2009-06-12 | 2012-01-03 | Freescale Semiconductor, Inc. | Ordered queue and methods therefor |
US9286075B2 (en) * | 2009-09-30 | 2016-03-15 | Oracle America, Inc. | Optimal deallocation of instructions from a unified pick queue |
US9008113B2 (en) | 2010-12-20 | 2015-04-14 | Solarflare Communications, Inc. | Mapped FIFO buffering |
US9397961B1 (en) | 2012-09-21 | 2016-07-19 | Microsemi Storage Solutions (U.S.), Inc. | Method for remapping of allocated memory in queue based switching elements |
US9378168B2 (en) | 2013-09-18 | 2016-06-28 | International Business Machines Corporation | Shared receive queue allocation for network on a chip communication |
US9979668B2 (en) * | 2014-12-22 | 2018-05-22 | Intel Corporation | Combined guaranteed throughput and best effort network-on-chip |
CN107005494B (zh) * | 2014-12-24 | 2021-03-19 | 英特尔公司 | 用于在交换机中缓冲数据的装置和方法 |
US10178011B2 (en) | 2016-02-10 | 2019-01-08 | Hewlett Packard Enterprise Development Lp | Network traffic management via network switch QoS parameters analysis |
US10250530B2 (en) * | 2016-03-08 | 2019-04-02 | Mellanox Technologies Tlv Ltd. | Flexible buffer allocation in a network switch |
US10607623B2 (en) * | 2018-01-12 | 2020-03-31 | Ribbon Communications Operating Company, Inc. | Methods and apparatus for supporting communication of content streams using efficient memory organization |
-
2018
- 2018-04-12 US US15/951,844 patent/US10601723B2/en active Active
-
2019
- 2019-04-09 JP JP2020555898A patent/JP7138190B2/ja active Active
- 2019-04-09 WO PCT/US2019/026571 patent/WO2019199817A1/en active Application Filing
- 2019-04-09 CN CN201980031960.5A patent/CN112189324B/zh active Active
- 2019-04-09 KR KR1020207032316A patent/KR102456086B1/ko active IP Right Grant
- 2019-04-09 EP EP19719094.5A patent/EP3777059B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5108476B2 (ja) | 2007-11-22 | 2012-12-26 | アイシン精機株式会社 | 車両用ドアロック装置 |
JP2017173884A (ja) | 2016-03-18 | 2017-09-28 | 日本電気株式会社 | メモリアクセス制御装置、情報処理システム、メモリアクセス制御方法、及び、プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2021521529A (ja) | 2021-08-26 |
US10601723B2 (en) | 2020-03-24 |
KR20200139812A (ko) | 2020-12-14 |
CN112189324B (zh) | 2023-09-26 |
EP3777059B1 (en) | 2022-08-17 |
WO2019199817A1 (en) | 2019-10-17 |
US20190319891A1 (en) | 2019-10-17 |
CN112189324A (zh) | 2021-01-05 |
EP3777059A1 (en) | 2021-02-17 |
KR102456086B1 (ko) | 2022-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7138190B2 (ja) | ネットワークスイッチのキュー | |
CN111190553B (zh) | 使用混合存储器立方体链路的互连系统及方法 | |
JP6535253B2 (ja) | 複数のリンクされるメモリリストを利用する方法および装置 | |
US8656071B1 (en) | System and method for routing a data message through a message network | |
US7406568B2 (en) | Buffer allocation for split data messages | |
US9841913B2 (en) | System and method for enabling high read rates to data element lists | |
KR20210064377A (ko) | 재순서화 동안 캐시 일관성을 유지하기 위한 방법 | |
US11994996B2 (en) | Transmission of address translation type packets | |
US9785367B2 (en) | System and method for enabling high read rates to data element lists | |
KR20240024188A (ko) | 네트워크 인터페이스 디바이스 | |
US10146434B1 (en) | FIFO systems and methods for providing access to a memory shared by multiple devices | |
EP3841484B1 (en) | Link layer data packing and packet flow control scheme |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220411 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220720 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20220720 |
|
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: 20220809 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220905 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7138190 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |