IP Library Granted Patent US 8,989,037
Granted Patent B2
US 8,989,037 · App. 13/610,165 · Granted Mar 24, 2015

System for performing data cut-through

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,989,037
App. No.
13/610,165
Granted
Mar 24, 2015
Kind
B2
Abstract

A system transfers data. The system includes an ingress node transferring data at a determined bandwidth. The ingress node includes a buffer and operates based on a monitored node parameter. The system includes a controller in communication with the ingress node. The controller is configured to allocate, based on the monitored node parameter, an amount of the determined bandwidth for directly transferring data to bypass the buffer of the ingress node.

Claims (33)

1. A system for transferring data, comprising:

an ingress node and an egress node, the ingress node including a buffer and operated based on a monitored node parameter to transfer data at a determined bandwidth; and

a controller in communication with the ingress node, the controller configured to allocate an amount of the determined bandwidth for directly transferring data from the ingress node to the egress node to bypass the buffer, the amount of bandwidth allocated being based on the monitored node parameter, where the monitored node parameter includes a length of time that the ingress node has directly transferred data bypassing the buffer, and the amount of the determined bandwidth allocated for directly transferring data varies inversely with the length of time that the ingress node has directly transferred data bypassing the buffer.

2. The system of claim 1 , where the controller is configured to identify a change in the monitored node parameter.

3. The system of claim 2 , where the controller is configured to adjust the allocated amount of the determined bandwidth for directly transferring data based on the identified change in the monitored node parameter.

4. The system of claim 1 , where the monitored node parameter includes a fill level of the buffer of the ingress node.

5. The system of claim 4 , where the allocated amount of the determined bandwidth for directly transferring data varies inversely with the fill level of the buffer of the ingress node.

6. The system of claim 1 , where the ingress node includes a set of ingress ports; and

where a ratio of the allocated amount of the determined bandwidth for directly transferring data corresponds to a ratio of: a number of ingress ports of the set of ingress ports allocated for directly transferring data from the ingress node to the egress node to bypass the buffer to a total number of ingress ports in the set of ingress ports.

7. A method for transferring data, comprising:

monitoring a parameter of an ingress node;

identifying a total bandwidth allocated to the ingress node;

allocating, based on the parameter, a first amount of the total bandwidth to a cut-through mode of operation of the ingress node, the cut-through mode of operation comprises transferring a data segment of a first data packet to an egress node before a subsequent data segment of the first data packet is received at the ingress node, where the parameter includes a length of time the ingress node has transferred previous data packets using the cut-through mode and said first amount of the total bandwidth allocated to the cut-through mode varies inversely with said length of time;

transferring, by the ingress node, the data segment using the cut-through mode using at least part of the first amount of the total bandwidth;

allocating, based on the parameter, a second amount of the total bandwidth to a store-and-forward mode of operation of the ingress node, wherein the store-and-forward mode of operation comprises transferring a second data packet stored in a memory of the ingress node; and

transferring, by the ingress node, the second data packet using the store-and-forward mode using at least part of the second amount of the total bandwidth.

8. The method of claim 7 , where the first amount of the total bandwidth is allocated based on a comparison of the parameter with an entry in a look-up table.

9. The method of claim 7 , where the first amount of the total bandwidth is allocated based on an allocation algorithm that receives the parameter as an input.

10. The method of claim 7 , where the second amount of the total bandwidth comprises a difference between the total bandwidth and the first amount of the total bandwidth.

11. The method of claim 7 , where the parameter includes a fill level of the memory, a store-and-forward credit, an enqueue rate, or a dequeue rate.

12. The method of claim 7 , further comprising updating the allocated first amount of the total bandwidth and the allocated second amount of the total bandwidth in response to a change in the parameter.

13. An ingress node, comprising:

a data transfer component configured to transfer data using total bandwidth;

a buffer in communication with the data transfer component and configured to store data about data packets;

an interface in communication with the data transfer component and configured to receive a data segment of a data packet; and

a controller in communication with the data transfer component, the buffer, and the interface, wherein the controller is configured to:

allocate a first portion and a second portion of the total bandwidth to a first mode of operation and a second mode of operation respectively, wherein the first mode of operation comprises transfer of a data segment of a first data packet that is stored in the buffer, and the second mode of operation comprises transfer of a data segment of a second data packet without being buffered, where said second portion allocated is inversely related to a length of time the ingress node has operated in the second mode of operation.

14. The ingress node of claim 13 , where the controller is configured to store the data packet in the buffer when the second portion of the total bandwidth is not sufficient to transfer the data segment of the second data packet to an egress node.

15. The ingress node of claim 14 , where the data transfer component is configured to transfer the data segment from buffer with the first portion of the total bandwidth after a subsequent data segment of the data packet is received at the interface.

16. The ingress node of claim 14 , where the data stored in the buffer is destined for another egress node, and where the data transfer component does not transfer the data stored in the buffer until a data transfer credit is received from the another egress node.

17. The ingress node of claim 13 , where the data segment includes an identifier indicating an egress node that the data packet is to be transferred to, and where the controller determines whether the identified egress node is idle or available to receive the data segment before a subsequent data segment of the data packet is received at the interface.

18. The ingress node of claim 13 , where the first portion is allocated to the first mode of operation based on a length of time the ingress node has operated in the first mode of operation.

19. The ingress node of claim 13 , where said second portion allocated is further based on a fill level of the buffer.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2012
From: MATTHEWS, BRAD; AGARWAL, PUNEET
To: BROADCOM CORPORATION
Reel/Frame 028937/0229 →