KR100812750B1 - 공유 메모리 스위치에서 풀 스타베이션을 감소시키는 장치및 방법 - Google Patents
공유 메모리 스위치에서 풀 스타베이션을 감소시키는 장치및 방법 Download PDFInfo
- Publication number
- KR100812750B1 KR100812750B1 KR1020037001038A KR20037001038A KR100812750B1 KR 100812750 B1 KR100812750 B1 KR 100812750B1 KR 1020037001038 A KR1020037001038 A KR 1020037001038A KR 20037001038 A KR20037001038 A KR 20037001038A KR 100812750 B1 KR100812750 B1 KR 100812750B1
- Authority
- KR
- South Korea
- Prior art keywords
- pool
- buffers
- reserved
- free
- shared memory
- Prior art date
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/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/103—Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
- H04L49/201—Multicast operation; Broadcast operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/252—Store and forward routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- 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/9047—Buffering arrangements including multiple buffers, e.g. buffer pools
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims (43)
- 인출 포트(egress port)용으로 예약되는 공유 메모리 내의 버퍼들의 예약 풀(reserved pool);복수개의 인출 포트에 의해 공유되는 상기 공유 메모리 내의 버퍼들의 공유 풀;IP 멀티캐스트 패킷들을 저장하기 위하여 예약되며, 상기 복수개의 인출 포트에 의해 공유되는 상기 공유 메모리 내의 버퍼들의 멀티캐스트 풀(multicast pool); 및상기 인출 포트로 전송될, 인입 포트(ingress port)로부터 수신된 데이터를 저장하기 위한 상기 예약 풀로부터 할당할 여유 버퍼를 선택하고, 데이터가 상기 인출 포트로 전송된 후 선택된 상기 버퍼의 할당을 해제하는 풀 선택 로직;을 포함하는 것을 특징으로 하는 스위치.
- 제1 항에 있어서,상기 풀 선택 로직은 상기 예약 풀에서 상기 여유 버퍼가 검출되지 않으면 상기 공유 풀에서 상기 여유 버퍼를 선택하는 것을 특징으로 하는 스위치.
- 삭제
- 제1 항에 있어서,상기 풀 선택 로직은 상기 인입 포트로부터 수신된 IP 멀티캐스트 데이터 패킷을 검출하면 상기 멀티캐스트 풀로부터 상기 여유 버퍼를 선택하는 것을 특징으로 하는 스위치.
- 제1,2 그리고 4항 중 어느 한 항에 있어서,상기 공유 메모리에 상기 여유 버퍼의 수를 저장하는 총 여유 카운터를 더 포함하며, 상기 총 여유 카운터는 상기 공유 메모리 내의 총 버퍼수로 기설정되고, 여기서 상기 멀티캐스트 풀, 상기 예약 풀 및 상기 공유 풀에서의 버퍼의 합은 상기 공유 메모리 내의 버퍼의 총 수보다 더 큰 것을 특징으로 하는 스위치.
- 제1,2 그리고 4 항 중 어느 한 항에 있어서,상기 공유 메모리에 상기 여유 버퍼의 수를 저장하는 총 여유 카운터를 더 포함하며, 상기 총 여유 카운터는 상기 공유 메모리 내의 총 버퍼수로 기설정되고, 여기서 상기 멀티캐스트 풀, 상기 예약 풀 및 상기 공유 풀에서의 버퍼의 합은 상기 공유 메모리 내의 버퍼의 총 수와 동일한 것을 특징으로 하는 스위치.
- 제5 항에 있어서,상기 풀 선택 로직은 상기 총 여유 카운터에 저장된 상기 공유 메모리 내의 상기 여유 버퍼의 수에 따라 상기 공유 메모리에서의 상기 여유 버퍼의 가용성을 결정하는 것을 특징으로 하는 스위치.
- 제6 항에 있어서,상기 풀 선택 로직은 상기 총 여유 카운터에 저장된 상기 공유 메모리 내의 상기 여유 버퍼의 수에 따라 상기 공유 메모리에서의 상기 여유 버퍼의 가용성을 결정하는 것을 특징으로 하는 스위치.
- 인출 포트용으로 예약되는 공유 메모리 내의 버퍼들의 예약 풀;복수개의 인출 포트에 의해 공유되는 상기 공유 메모리 내의 버퍼들의 공유 풀;IP 멀티캐스트 패킷들을 저장하기 위하여 예약되며, 상기 복수개의 인출 포트에 의해 공유되는 상기 공유 메모리 내의 버퍼들의 멀티캐스트 풀(multicast pool);상기 인출 포트로 전송될, 인입 포트로부터 수신된 데이터를 저장하기 위한 상기 예약 풀로부터 할당하기 위해 여유 버퍼를 선택하는 수단; 및데이터가 전송된 후 선택된 상기 버퍼의 할당을 해제하는 수단;을 포함하는 것을 특징으로 하는 스위치.
- 제9 항에 있어서,상기 선택 수단은 상기 예약 풀에서 상기 여유 버퍼가 검출되지 않으면 상기 공유 풀에서 상기 여유 버퍼를 선택하는 것을 특징으로 하는 스위치.
- 삭제
- 제9 항에 있어서,상기 선택 수단은 상기 인입 포트로부터 수신된 IP 멀티캐스트 데이터 패킷을 검출하면 상기 멀티캐스트 풀로부터 상기 여유 버퍼를 선택하는 것을 특징으로 하는 스위치.
- 제9, 10 그리고 12 항중 어느 한 항에 있어서,상기 공유 메모리의 버퍼의 총 수로 기설정되고, 상기 공유 메모리의 상기 여유 버퍼의 수를 카운트하는 카운팅 수단을 더 포함하며, 여기서 상기 멀티캐스트 풀, 상기 예약 풀 및 상기 공유 풀에서의 버퍼의 합은 상기 공유 메모리 내의 버퍼의 총 수보다 더 큰 것을 특징으로 하는 스위치.
- 제9, 10 그리고 12 항중 어느 한 항에 있어서,상기 공유 메모리의 버퍼의 총 수로 기설정되고, 상기 공유 메모리의 상기 여유 버퍼의 수를 카운트하는 카운팅 수단을 더 포함하며, 여기서 상기 멀티캐스트 풀, 상기 예약 풀 및 상기 공유 풀에서의 버퍼의 합은 상기 공유 메모리 내의 버퍼의 총 수와 동일한 것을 특징으로 하는 스위치.
- 제13 항에 있어서,상기 여유 버퍼를 선택하는 수단은 상기 카운팅 수단에 저장된 상기 공유 메모리 내의 상기 여유 버퍼의 수에 따라 상기 공유 메모리에서의 상기 여유 버퍼의 가용성을 결정하는 것을 특징으로 하는 스위치.
- 제14 항에 있어서,상기 여유 버퍼를 선택하는 수단은 상기 카운팅 수단에 저장된 상기 공유 메모리 내의 상기 여유 버퍼의 수에 따라 상기 공유 메모리에서의 상기 여유 버퍼의 가용성을 결정하는 것을 특징으로 하는 스위치.
- 인출 포트용으로 예약되는 공유 메모리 내의 버퍼들의 예약 풀을 제공하는 단계;복수개의 인출 포트에 의해 공유되는 상기 공유 메모리 내의 버퍼들의 공유 풀을 제공하는 단계;IP 멀티캐스트 패킷들을 저장하기 위하여 예약되며, 상기 복수개의 인출 포트에 의해 공유되는 상기 공유 메모리 내의 버퍼들의 멀티캐스트 풀(multicast pool)을 제공하는 단계;상기 인출 포트로 전송될, 인입 포트로부터 수신된 데이터를 저장하기 위한 상기 예약 풀로부터 할당되기 위해 여유 버퍼를 선택하는 단계; 및데이터가 상기 인출 포트로 전송된 후 선택된 상기 버퍼의 할당을 해제하는 단계;를 포함하는 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제17 항에 있어서,상기 선택 단계는 상기 예약 풀에서 상기 여유 버퍼가 검출되지 않으면 상기 공유 풀에서 상기 여유 버퍼를 선택하는 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 삭제
- 제17 항에 있어서,상기 선택 단계는 상기 인입 포트로부터 수신된 IP 멀티캐스트 데이터 패킷을 검출하면 상기 멀티캐스트 풀로부터 상기 여유 버퍼를 선택하는 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제17, 18 그리고 20 항중 어느 한 항에 있어서,상기 멀티캐스트 풀(multicast pool)을 제공하는 단계 이후에,상기 공유 메모리의 버퍼의 총 수로 기설정되고, 상기 공유 메모리의 상기 여유 버퍼의 수를 카운트하는 총 여유 카운터를 제공하는 단계를 더 포함하며, 여기서 상기 멀티캐스트 풀, 상기 예약 풀 및 상기 공유 풀에서의 버퍼의 합은 상기 공유 메모리 내의 버퍼의 총 수보다 더 큰 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제17, 18 그리고 20 항중 어느 한 항에 있어서,상기 멀티캐스트 풀(multicast pool)을 제공하는 단계 이후에,상기 공유 메모리의 버퍼의 총 수로 기설정되고, 상기 공유 메모리의 상기 여유 버퍼의 수를 카운트하는 총 여유 카운터를 제공하는 단계를 더 포함하며, 여기서 상기 멀티캐스트 풀, 상기 예약 풀 및 상기 공유 풀에서의 버퍼의 합은 상기 공유 메모리 내의 버퍼의 총 수와 동일한 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제21 항에 있어서,상기 총 여유 카운터를 제공하는 단계 이후에,상기 총 여유 카운터에 저장된 상기 공유 메모리 내의 상기 여유 버퍼의 수에 따라 상기 공유 메모리에서의 상기 여유 버퍼의 가용성을 결정하는 단계를 더 포함하는 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제22 항에 있어서,상기 총 여유 카운터를 제공하는 단계 이후에,상기 총 여유 카운터에 저장된 상기 공유 메모리 내의 상기 여유 버퍼의 수에 따라 상기 공유 메모리에서의 상기 여유 버퍼의 가용성을 결정하는 단계를 더 포함하는 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 각각이 복수의 인출 포트(egress port)중의 어느 하나와 연결되어 있으며 상기 인출 포트로 전송되기 위한 데이터를 저장하기 위하여 예약되는 공유 메모리 내의 버퍼들의 복수의 예약 풀(reserved pool);상기 복수의 인출 포트들 중의 어느 하나로 전송되기 위한 데이터를 저장하기 위하여 예약되는 상기 공유 메모리 내의 버퍼들의 공유 풀; 및IP 멀티캐스트 그룹의 멤버들에게 적어도 하나의 상기 인출 포트를 전송하기 위하여 인입 포트로부터 수신하는 IP 멀티캐스트 패킷들을 저장하기 위하여 예약되는 상기 공유 메모리 내의 버퍼들의 멀티캐스트 풀(multicast pool);을 포함하는 것을 특징으로 하는 스위치.
- 제 25항에 있어서,상기 버퍼들의 예약 풀들의 총수로 기설정되어 있으며, 상기 버퍼들의 예약 풀들의 여유 버퍼들의 수를 저장하기 위한 예약 여유 카운터; 및각각은 대응되는 상기 버퍼들의 예약풀의 각각에 대한 상기 여유 버퍼들의 수를 저장하기 위한 복수의 포트 예약 풀 카운터를 더 포함하며,여기서 상기 포트 예약 풀의 버퍼들의 합은 상기 예약 풀에서의 버퍼들의 총수보다 더 큰 것을 특징으로 하는 스위치.
- 제 25 항에 있어서,상기 버퍼들의 예약 풀들의 총수로 기설정되어 있으며, 상기 버퍼들의 예약 풀들의 여유 버퍼들의 수를 저장하기 위한 예약 여유 카운터; 및각각은 대응되는 상기 버퍼들의 예약풀의 각각에 대한 상기 여유 버퍼들의 수를 저장하기 위한 복수의 포트 예약 풀 카운터를 더 포함하며,여기서 상기 포트 예약 풀의 버퍼들의 합은 상기 예약 풀에서의 버퍼들의 총수와 동일한 것을 특징으로 하는 스위치.
- 제 26항 또는 제 27항에 있어서,상기 인출 포트로 전송될, 인입 포트(ingress port)로부터 수신된 데이터를 저장하기 위한 할당할 여유 버퍼를 선택하고, 데이터가 상기 인출 포트로 전송된 후 선택된 상기 버퍼의 할당을 해제하는 풀 선택 로직을 더 포함하며,상기 풀 선택 로직은 상기 예약 여유 카운터에 저장된 예약 풀들의 상기 여유 버퍼들의 수에 따라 상기 예약 풀들의 상기 여유 버퍼의 가용성을 결정하는 것을 특징으로 하는 스위치.
- 제 25항 내지 27항 중 어느 한 항에 있어서,상기 예약 풀들에 할당된 버퍼들의 수를 저장하기 위한 예약 임계값 레지스터를 더 포함하여 이루어진 스위치.
- 제 25 항 내지 제 27항 중 어느 한 항에 있어서,각각은 상기 복수의 예약 풀들의 어느 하나에 연결되어 있으며 상기 예약 풀에 할당된 버퍼들의 수를 저장하기 위한 복수의 예약 임계값 레지스터를 더 포함하여 이루어진 스위치.
- 제 25 항 내지 27항 중 어느 한 항에 있어서,상기 인출 포트로 전송될, 인입 포트(ingress port)로부터 수신된 데이터를 저장하기 위한 할당할 여유 버퍼를 선택하기 위한 제1 선택기; 및데이터가 상기 인출 포트로 전송된 후 선택된 상기 버퍼의 할당을 해제하는 제2 선택기를 더 포함하는 것을 특징으로 하는 스위치.
- 제 25 항 내지 제 27 항중 어느 한 항에 있어서,상기 IP 멀티캐스트 패킷이 대기되는 포트 큐들의 수를 저장하기 위한 포트 큐 카운터 레지스터를 더 포함하는 것을 특징으로 하는 스위치.
- 상기 제 32항에 있어서,상기 포트 큐 카운터 레지스터는 상기 IP 멀티캐스트 패킷의 사본이 IP 멀티캐스트 그룹의 모든 멤버에게 전송되는지를 결정하기 위하여 증가되는 것을 특징으로 하는 스위치.
- 각각이 복수의 인출 포트(egress port)중의 어느 하나와 연결되어 있으며 상기 인출 포트로 전송되기 위한 데이터를 저장하기 위하여 예약되는 공유 메모리 내의 버퍼들의 복수의 예약 풀(reserved pool)을 제공하는 단계;상기 복수의 인출 포트들 중의 어느 하나로 전송되기 위한 데이터를 저장하기 위하여 예약되는 상기 공유 메모리 내의 버퍼들의 공유 풀을 제공하는 단계; 및IP 멀티캐스트 그룹의 일원으로 적어도 하나의 상기 인출 포트로 전송되기 위하여 IP 멀티캐스트 패킷들을 저장하기 위하여 예약되는 상기 공유 메모리 내의 버퍼들의 멀티캐스트 풀(multicast pool)을 제공하는 단계;를 포함하는 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제 34항에 있어서,상기 멀티캐스트 풀(multicast pool)을 제공하는 단계 이후에,상기 버퍼들의 예약 풀들의 총수로 기설정되어 있으며, 상기 버퍼들의 예약 풀들의 여유 버퍼들의 수를 저장하기 위한 예약 여유 카운터를 제공하는 단계; 및각각은 대응되는 상기 버퍼들의 예약풀의 각각에 대한 상기 여유 버퍼들의 수를 저장하기 위한 복수의 포트 예약 풀 카운터를 제공하는 단계를 더 포함하며,여기서 상기 포트 예약 풀의 버퍼들의 합은 상기 예약 풀에서의 버퍼들의 총수보다 더 큰 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제 34 항에 있어서,상기 멀티캐스트 풀(multicast pool)을 제공하는 단계 이후에,상기 버퍼들의 예약 풀들의 총수로 기설정되어 있으며, 상기 버퍼들의 예약 풀들의 여유 버퍼들의 수를 저장하기 위한 예약 여유 카운터를 제공하는 단계; 및각각은 대응되는 상기 버퍼들의 예약풀의 각각에 대한 상기 여유 버퍼들의 수를 저장하기 위한 복수의 포트 예약 풀 카운터를 제공하는 단계를 더 포함하며,여기서 상기 포트 예약 풀의 버퍼들의 합은 상기 예약 풀에서의 버퍼들의 총수와 동일한 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제 35항 또는 제 36항에 있어서,상기 포트 예약 풀 카운터를 제공하는 단계 이후에,상기 인출 포트로 전송될, 인입 포트(ingress port)로부터 수신된 데이터를 저장하기 위한 할당할 여유 버퍼를 선택하고, 데이터가 상기 인출 포트로 전송된 후 선택된 상기 버퍼의 할당을 해제하는 단계를 더 포함하며,상기 예약 여유 카운터에 저장된 예약 풀들의 상기 여유 버퍼들의 수에 따라 상기 예약 풀들의 상기 여유 버퍼의 가용성을 결정하는 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제34 항 내지 제36항중 어느 한 항에 있어서,상기 멀티캐스트 풀(multicast pool)을 제공하는 단계 이후에,상기 예약 풀에 할당되기 위하여 예약된 버퍼들의 수를 저장하는 단계를 더 포함하고,각각의 상기 예약 풀에서 할당되기 위하여 예약되는 버퍼들의 수는 모든 예약 풀들에 대하여 동일한 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제 34항 내지 제 36항 중 어느 한 항에 있어서,상기 멀티캐스트 풀(multicast pool)을 제공하는 단계 이후에,상기 예약 풀에 할당되기 위하여 예약된 버퍼들의 수를 저장하는 단계를 더 포함하고,각각의 상기 예약 풀에서 할당되기 위하여 예약되는 버퍼들의 수는 적어도 하나의 예약풀에서 상이한 것을 특징으로 하는 스위치에서의 공유 메모리 관리방법.
- 제 34 항 내지 제 36항중 어느 한 항에 있어서,상기 멀티캐스트 풀(multicast pool)을 제공하는 단계 이후에,부하 상태에 따라 상기 예약 풀들, 상기 공유 풀, 상기 멀티캐스트 풀에서 예약되는 상기 공유 메모리의 버퍼들의 수를 조정하는 단계를 더 포함하여 이루어진 스위치에서의 공유 메모리 관리방법.
- 제 34 항 내지 제 36항 중 어느 한 항에 있어서,상기 멀티캐스트 풀(multicast pool)을 제공하는 단계 이후에,상기 IP 멀티캐스트 패킷이 대기하는 포트 큐의 수를 저장하는 단계를 더 포함하여 이루어진 스위치에서의 공유 메모리 관리방법.
- 제 41 항에 있어서,상기 포트 큐의 수를 저장하는 단계 이후에,상기 IP 멀티캐스트 패킷의 사본이 IP 멀티캐스트 그룹의 모든 멤버에게 전송되는지를 결정하는 단계를 더 포함하여 이루어진 스위치에서의 공유 메모리 관리 방법.
- 복수의 예약 풀들중의 하나의 상기 예약 풀, 공유풀 그리고 멀티개스트 풀중의 하나로부터 버퍼를 할당하는 방법에 있어서,카운터 상태 정보, 상기 버퍼에 저장되는 획득된 데이터 패킷의 헤더에 의존하는 인출 포트 전송 정보 그리고 상기 헤더에 포함된 멀티캐스트 패킷 식별 정보를 포함하는 버퍼 풀 선택 결정자들을 수신하는 단계; 및데이터에 상기 버퍼를 할당하기 위하여 상기 선택 결정자들에 기반하여 상기 풀들중에서 하나를 선택하는 단계를 포함하며,상기 인출 포트 전송 정보는 상기 예약 풀들에서 상기 풀이 선택될 때 상기 풀의 선택에 직접적인 분기를 가지고 있는 특징으로 하는 예약 풀, 공유풀 그리고 멀티개스트 풀중의 하나로부터 버퍼를 할당하는 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/624,276 | 2000-07-24 | ||
US09/624,276 US7007071B1 (en) | 2000-07-24 | 2000-07-24 | Method and apparatus for reducing pool starvation in a shared memory switch |
PCT/CA2001/001049 WO2002009364A2 (en) | 2000-07-24 | 2001-07-20 | Method and apparatus for reducing pool starvation in a shared memory switch |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030019608A KR20030019608A (ko) | 2003-03-06 |
KR100812750B1 true KR100812750B1 (ko) | 2008-03-12 |
Family
ID=24501343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020037001038A KR100812750B1 (ko) | 2000-07-24 | 2001-07-20 | 공유 메모리 스위치에서 풀 스타베이션을 감소시키는 장치및 방법 |
Country Status (8)
Country | Link |
---|---|
US (7) | US7007071B1 (ko) |
KR (1) | KR100812750B1 (ko) |
CN (1) | CN100373885C (ko) |
AU (1) | AU2001276216A1 (ko) |
CA (2) | CA2415952C (ko) |
DE (1) | DE10196447B4 (ko) |
GB (1) | GB2380354B (ko) |
WO (1) | WO2002009364A2 (ko) |
Families Citing this family (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7120117B1 (en) * | 2000-08-29 | 2006-10-10 | Broadcom Corporation | Starvation free flow control in a shared memory switching device |
US7007071B1 (en) * | 2000-07-24 | 2006-02-28 | Mosaid Technologies, Inc. | Method and apparatus for reducing pool starvation in a shared memory switch |
EP1407583B1 (en) * | 2001-07-17 | 2009-06-03 | Alcatel Internetworking, Inc. | In-band message synchronization for distributed shared memory packet switch |
US7283470B1 (en) * | 2002-01-25 | 2007-10-16 | Juniper Networks, Inc. | Systems and methods for dropping data using a drop profile |
US8078763B1 (en) | 2002-04-04 | 2011-12-13 | Juniper Networks, Inc. | Dequeuing and congestion control systems and methods for single stream multicast |
US7209440B1 (en) | 2002-05-07 | 2007-04-24 | Marvell International Ltd. | Method and apparatus for preventing blocking in a quality of service switch |
US7110415B1 (en) | 2002-05-17 | 2006-09-19 | Marvell International Ltd. | Apparatus and method for dynamically limiting output queue size in a quality of service network |
US6985916B2 (en) * | 2002-08-29 | 2006-01-10 | International Business Machines Corporation | Method, system, and article of manufacture for returning physical volumes |
KR101086592B1 (ko) * | 2003-04-22 | 2011-11-23 | 에이저 시스템즈 인크 | 패킷 저장 방법, 버퍼 관리 방법, 손실 버퍼 검출 방법 및공유형 메모리 |
US7561590B1 (en) | 2003-05-05 | 2009-07-14 | Marvell International Ltd. | Network switch having virtual input queues for flow control |
US7716364B2 (en) * | 2003-06-27 | 2010-05-11 | Broadcom Corporation | Internet protocol multicast replication |
US7953086B2 (en) * | 2003-06-27 | 2011-05-31 | Broadcom Corporation | Compression of datagram distribution information |
US20050036445A1 (en) * | 2003-08-14 | 2005-02-17 | Lee Chien-Hsin | Processing data packets |
US7515584B2 (en) | 2003-09-19 | 2009-04-07 | Infineon Technologies Ag | Switching data packets in an ethernet switch |
US7539190B2 (en) * | 2004-01-05 | 2009-05-26 | Topside Research, Llc | Multicasting in a shared address space |
US20050157719A1 (en) * | 2004-01-20 | 2005-07-21 | Robotham Robert E. | Method and apparatus for multicasting of cell or frame data |
KR20050088853A (ko) * | 2004-03-03 | 2005-09-07 | 엘지전자 주식회사 | 휴대단말기의 동적 메모리 관리장치 및 방법 |
US7916743B2 (en) * | 2004-11-17 | 2011-03-29 | Jinsalas Solutions, Llc | System and method for improved multicast performance |
US7522622B2 (en) * | 2005-02-18 | 2009-04-21 | Broadcom Corporation | Dynamic color threshold in a queue |
US20070147404A1 (en) * | 2005-12-27 | 2007-06-28 | Lucent Technologies, Inc. | Method and apparatus for policing connections using a leaky bucket algorithm with token bucket queuing |
CN1964345B (zh) * | 2006-09-25 | 2010-06-30 | 杭州华三通信技术有限公司 | 组播流的处理方法及网络设备 |
US7949815B2 (en) * | 2006-09-27 | 2011-05-24 | Intel Corporation | Virtual heterogeneous channel for message passing |
US8050263B1 (en) | 2006-10-11 | 2011-11-01 | Marvell International Ltd. | Device and process for efficient multicasting |
US7711900B2 (en) * | 2007-03-05 | 2010-05-04 | International Business Machines Corporation | Method, system and program product for equitable sharing of a CAM table in a network switch in an on-demand environment |
US8532117B2 (en) * | 2008-02-13 | 2013-09-10 | Broadcom Corporation | Flexible buffer allocation entities for traffic aggregate containment |
US8619558B1 (en) * | 2008-07-21 | 2013-12-31 | Qlogic, Corporation | Memory management in a network adapter |
US8526326B1 (en) * | 2008-08-27 | 2013-09-03 | Juniper Networks, Inc. | Lock-less access of pre-allocated memory buffers used by a network device |
US8917738B2 (en) * | 2009-04-27 | 2014-12-23 | Lsi Corporation | Multicasting traffic manager in a network communications processor architecture |
US9461930B2 (en) | 2009-04-27 | 2016-10-04 | Intel Corporation | Modifying data streams without reordering in a multi-thread, multi-flow network processor |
EP2517438B1 (en) | 2009-12-23 | 2016-11-30 | Citrix Systems Inc. | Systems and methods for managing ports for rtsp across cores in a multi-core system |
US9098335B2 (en) * | 2009-12-23 | 2015-08-04 | Citrix Systems, Inc. | Systems and methods for managing spillover limits in a multi-core system |
US8825859B2 (en) * | 2009-12-23 | 2014-09-02 | Citrix Systems, Inc. | System and methods for mixed mode of IPv6 and IPv4 DNS of global server load balancing |
CN101873326B (zh) * | 2010-06-24 | 2013-03-06 | 北京安天电子设备有限公司 | 一种基于有序包的迭代式病毒检测方法 |
DE102010033432B3 (de) * | 2010-08-04 | 2012-04-05 | Harting Electric Gmbh & Co. Kg | Verfahren zur Übermittlung von Multicast-Datenpaketen durch einen Switch |
CN102185725A (zh) * | 2011-05-31 | 2011-09-14 | 北京星网锐捷网络技术有限公司 | 一种缓存的管理方法、装置和网络交换设备 |
US8839030B2 (en) | 2011-09-09 | 2014-09-16 | Lsi Corporation | Methods and structure for resuming background tasks in a clustered storage environment |
US8630286B2 (en) * | 2011-09-30 | 2014-01-14 | Broadcom Corporation | System and method for improving multicast performance in banked shared memory architectures |
CN102497431B (zh) * | 2011-12-13 | 2014-10-22 | 曙光信息产业(北京)有限公司 | 一种tcp连接缓存应用数据的内存申请方法和系统 |
US8665725B2 (en) * | 2011-12-20 | 2014-03-04 | Broadcom Corporation | System and method for hierarchical adaptive dynamic egress port and queue buffer management |
US8891540B2 (en) | 2012-05-14 | 2014-11-18 | Juniper Networks, Inc. | Inline network address translation within a mobile gateway router |
US8995455B1 (en) * | 2012-11-15 | 2015-03-31 | Qlogic, Corporation | Memory devices for network devices and associated methods |
US9100313B1 (en) * | 2012-12-10 | 2015-08-04 | Cisco Technology, Inc. | Shared egress buffer in a multi-stage switch |
CN104124962B (zh) * | 2013-04-25 | 2017-07-07 | 联发科技股份有限公司 | 多阶复制计数器存储装置及用来管理多播封包处理的方法 |
US9521007B2 (en) | 2013-04-25 | 2016-12-13 | Mediatek Inc. | Multi-level replication counter storage device for multicast packet processing and related method for managing multicast packet processing |
US10057194B1 (en) * | 2014-01-07 | 2018-08-21 | Marvell Israel (M.I.S.L) Ltd. | Methods and apparatus for memory resource management in a network device |
US10050896B2 (en) * | 2014-11-14 | 2018-08-14 | Cavium, Inc. | Management of an over-subscribed shared buffer |
US9952776B1 (en) * | 2015-07-24 | 2018-04-24 | EMC IP Holding Company LLC | Automatic non-disruptive congestion control of a fabric in a data storage system |
US9965211B2 (en) | 2016-09-08 | 2018-05-08 | Cisco Technology, Inc. | Dynamic packet buffers with consolidation of low utilized memory banks |
CN109218387A (zh) * | 2018-07-02 | 2019-01-15 | 佛山科学技术学院 | 一种共享存储池的存储方法 |
US11171884B2 (en) | 2019-03-13 | 2021-11-09 | Mellanox Technologies Tlv Ltd. | Efficient memory utilization and egress queue fairness |
US11789858B2 (en) * | 2020-08-11 | 2023-10-17 | Samsung Electronics Co., Ltd. | Method and system for performing read/write operation within a computing system hosting non-volatile memory |
GB2612619B (en) * | 2021-11-05 | 2024-02-21 | Graphcore Ltd | Fair arbitration between multiple sources targeting a destination |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6021132A (en) * | 1997-06-30 | 2000-02-01 | Sun Microsystems, Inc. | Shared memory management in a switched network element |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3278865B2 (ja) * | 1991-06-28 | 2002-04-30 | 日本電気株式会社 | トラヒック制御方法 |
US6151301A (en) * | 1995-05-11 | 2000-11-21 | Pmc-Sierra, Inc. | ATM architecture and switching element |
US20030037096A1 (en) * | 1995-04-07 | 2003-02-20 | Ruey Kao | Method and apparatus for the management of queue pointers by multiple processors in a digital communications network |
AU6501096A (en) | 1995-07-19 | 1997-02-18 | Ascom Nexion Inc. | Prioritized access to shared buffers |
US5991295A (en) * | 1995-10-10 | 1999-11-23 | Madge Networks Limited | Digital switch |
US5838994A (en) * | 1996-01-11 | 1998-11-17 | Cisco Technology, Inc. | Method and apparatus for the dynamic allocation of buffers in a digital communications network |
US5724358A (en) | 1996-02-23 | 1998-03-03 | Zeitnet, Inc. | High speed packet-switched digital switch and method |
US6219728B1 (en) * | 1996-04-22 | 2001-04-17 | Nortel Networks Limited | Method and apparatus for allocating shared memory resources among a plurality of queues each having a threshold value therefor |
US6049546A (en) * | 1996-10-15 | 2000-04-11 | At&T Corporation | System and method for performing switching in multipoint-to-multipoint multicasting |
US6046982A (en) * | 1997-03-18 | 2000-04-04 | Cabletron Systems, Inc. | Method and apparatus for reducing data loss in data transfer devices |
US6487202B1 (en) * | 1997-06-30 | 2002-11-26 | Cisco Technology, Inc. | Method and apparatus for maximizing memory throughput |
US6216167B1 (en) * | 1997-10-31 | 2001-04-10 | Nortel Networks Limited | Efficient path based forwarding and multicast forwarding |
US7145868B2 (en) * | 1997-11-28 | 2006-12-05 | Alcatel Canada Inc. | Congestion management in a multi-port shared memory switch |
US6456590B1 (en) * | 1998-02-13 | 2002-09-24 | Texas Instruments Incorporated | Static and dynamic flow control using virtual input queueing for shared memory ethernet switches |
US6320861B1 (en) * | 1998-05-15 | 2001-11-20 | Marconi Communications, Inc. | Hybrid scheme for queuing in a shared memory ATM switch buffer |
US6920146B1 (en) * | 1998-10-05 | 2005-07-19 | Packet Engines Incorporated | Switching device with multistage queuing scheme |
US6147969A (en) * | 1998-10-14 | 2000-11-14 | Lucent Technologies Inc. | Flow control method for ABR service in an asynchronous transfer mode network |
US6625159B1 (en) * | 1998-11-30 | 2003-09-23 | Hewlett-Packard Development Company, L.P. | Nonblocking and fair queuing switching method and shared memory packet switch |
TW444478B (en) * | 1998-12-10 | 2001-07-01 | Ind Tech Res Inst | Ethernet switch IC with shared memory structure and its network |
US6535963B1 (en) * | 1999-06-30 | 2003-03-18 | Cisco Technology, Inc. | Memory apparatus and method for multicast devices |
US6711170B1 (en) | 1999-08-31 | 2004-03-23 | Mosaid Technologies, Inc. | Method and apparatus for an interleaved non-blocking packet buffer |
US6754211B1 (en) | 1999-12-01 | 2004-06-22 | Mosaid Technologies, Inc. | Method and apparatus for wire speed IP multicast forwarding |
US6501757B1 (en) * | 2000-02-29 | 2002-12-31 | Centre For Development Of Telematics | ATM switch |
US6657962B1 (en) * | 2000-04-10 | 2003-12-02 | International Business Machines Corporation | Method and system for managing congestion in a network |
US7236489B1 (en) | 2000-04-27 | 2007-06-26 | Mosaid Technologies, Inc. | Port packet queuing |
US7007071B1 (en) * | 2000-07-24 | 2006-02-28 | Mosaid Technologies, Inc. | Method and apparatus for reducing pool starvation in a shared memory switch |
-
2000
- 2000-07-24 US US09/624,276 patent/US7007071B1/en not_active Expired - Lifetime
-
2001
- 2001-07-20 CN CNB018133061A patent/CN100373885C/zh not_active Expired - Lifetime
- 2001-07-20 WO PCT/CA2001/001049 patent/WO2002009364A2/en active Application Filing
- 2001-07-20 CA CA2415952A patent/CA2415952C/en not_active Expired - Fee Related
- 2001-07-20 KR KR1020037001038A patent/KR100812750B1/ko active IP Right Grant
- 2001-07-20 CA CA2700321A patent/CA2700321C/en not_active Expired - Fee Related
- 2001-07-20 GB GB0301250A patent/GB2380354B/en not_active Expired - Lifetime
- 2001-07-20 DE DE10196447.1T patent/DE10196447B4/de not_active Expired - Lifetime
- 2001-07-20 AU AU2001276216A patent/AU2001276216A1/en not_active Abandoned
-
2005
- 2005-12-29 US US11/323,814 patent/US7403976B2/en not_active Expired - Lifetime
-
2008
- 2008-06-13 US US12/139,007 patent/US7743108B2/en not_active Expired - Fee Related
-
2010
- 2010-05-07 US US12/775,696 patent/US7996485B2/en not_active Expired - Fee Related
-
2011
- 2011-08-05 US US13/204,145 patent/US8630304B2/en not_active Expired - Fee Related
-
2013
- 2013-12-05 US US14/097,614 patent/US9083659B2/en not_active Expired - Fee Related
-
2015
- 2015-07-08 US US14/794,020 patent/US9769080B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6021132A (en) * | 1997-06-30 | 2000-02-01 | Sun Microsystems, Inc. | Shared memory management in a switched network element |
Also Published As
Publication number | Publication date |
---|---|
US7996485B2 (en) | 2011-08-09 |
CN100373885C (zh) | 2008-03-05 |
GB2380354B (en) | 2004-01-14 |
CA2700321A1 (en) | 2002-01-31 |
US8630304B2 (en) | 2014-01-14 |
CA2415952A1 (en) | 2002-01-31 |
WO2002009364A3 (en) | 2002-09-06 |
US7743108B2 (en) | 2010-06-22 |
US20150365333A1 (en) | 2015-12-17 |
CA2700321C (en) | 2014-12-09 |
WO2002009364A2 (en) | 2002-01-31 |
US9769080B2 (en) | 2017-09-19 |
DE10196447B4 (de) | 2020-04-23 |
AU2001276216A1 (en) | 2002-02-05 |
US20140092743A1 (en) | 2014-04-03 |
KR20030019608A (ko) | 2003-03-06 |
CA2415952C (en) | 2011-01-04 |
US20060259572A1 (en) | 2006-11-16 |
GB2380354A (en) | 2003-04-02 |
US20100250699A1 (en) | 2010-09-30 |
US7403976B2 (en) | 2008-07-22 |
CN1444812A (zh) | 2003-09-24 |
GB0301250D0 (en) | 2003-02-19 |
US20080250116A1 (en) | 2008-10-09 |
US7007071B1 (en) | 2006-02-28 |
US20110286455A1 (en) | 2011-11-24 |
DE10196447T1 (de) | 2003-09-11 |
US9083659B2 (en) | 2015-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100812750B1 (ko) | 공유 메모리 스위치에서 풀 스타베이션을 감소시키는 장치및 방법 | |
US6785236B1 (en) | Packet transmission scheduling with threshold based backpressure mechanism | |
US6661802B1 (en) | Congestion management | |
US6658016B1 (en) | Packet switching fabric having a segmented ring with token based resource control protocol and output queuing control | |
US6292492B1 (en) | Efficient method and apparatus for allocating memory space used for buffering cells received on several connections in an asynchronous transfer mode (ATM) switch | |
US5790522A (en) | Method and system for performing traffic congestion control in a data communication network | |
JP3497556B2 (ja) | 非同期転送モード通信装置 | |
US5790545A (en) | Efficient output-request packet switch and method | |
US8189597B2 (en) | Pipeline scheduler with fairness and minimum bandwidth guarantee | |
US6654343B1 (en) | Method and system for switch fabric flow control | |
US7230923B2 (en) | Time based packet scheduling and sorting system | |
US8009689B1 (en) | Apparatus and method for dynamically limiting output queue size in a quality of service network switch | |
US6625159B1 (en) | Nonblocking and fair queuing switching method and shared memory packet switch | |
US6661803B1 (en) | Network switch including bandwidth controller | |
US20030112817A1 (en) | Methods and apparatus for differentiated services over a packet-based network | |
US6128306A (en) | Cell queue formation in an ATM switch | |
US20030072260A1 (en) | Multi-dimensional buffer management hierarchy | |
US20060098673A1 (en) | Input queue packet switch architecture and queue service discipline | |
JPH11510323A (ja) | Atm交換機の多重レベル制御用リンクドリスト構造 | |
JP3416156B2 (ja) | 種々の優先度のバーチャルコネクションを介して情報セルを伝送する方法および回路装置 | |
JPH11510009A (ja) | 割付型並びに動的交換機フロー制御 | |
JP2001223742A (ja) | 輻輳の場合におけるセルバッファ保護の方法および装置 | |
WO2000010281A2 (en) | Network traffic manager | |
van Dorst | Fairness improvement of the priority mechanism of the DQDB protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130304 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140303 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20150130 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20160303 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20170201 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20180201 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20190129 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20200218 Year of fee payment: 13 |