Claims
- 1. A system comprising:
means for comparing the number of data packets (WPC) temporarily stored within a buffer to a predefined threshold value (WPCth); means (410) for storing the packet sequence number (PSNr) of a last received in-sequence data packet, and each highest packet sequence number (HPSNj) respectively received through a plurality of switching planes; and means (275) coupled to the comparing means and to the storing means for determining at least one switching plane among a plurality of switching planes on which to unstop a flow of data packets by comparing the last-received in-sequence packet sequence number (PSNr) to each highest packet sequence number (HPSNj) when the number of data packets (WPC) exceeds the predefined threshold value (WPCth).
- 2. The system of claim 1 further comprising at least one ingress adapter (200) coupled to the plurality of switching planes, the at least one ingress adapter comprising means (210) to sequentially number the data packets within each flow and means to identify each data packet within each flow by an ingress adapter identifier (Sn) and by a priority level identifier (Pn).
- 3. The system of claims 1 or 2 wherein the determining means further comprises means for pointing to the storing means using the ingress adapter identifier (Sn) and the priority level identifier (Pn) of each data packet flow.
- 4. The system of claim 2 wherein the at least one ingress adapter further comprises means (205) for load balancing the data packets within each flow among the plurality of switching planes.
- 5. The system of claim 1 further comprising at least one egress adapter having an egress buffer in which packets are temporarily stored.
- 6. The system of claim 5 wherein the at least one egress adapter further comprises means (270) for resequencing the data packets temporarily stored within the egress buffer for each flow of data packets.
- 7. The system of claim 6 wherein the at least one egress adapter further comprises means (280) for outputting the resequenced data packets from the egress buffer.
- 8. The system of claims 1 or 2 wherein the comparing means further comprises means for counting the number of data packets (WPC) temporarily stored within the egress buffer for each flow of data packets.
- 9. The system of claim 8 wherein the counting means further comprises means for decrementing the number of data packets (WPC) temporarily stored within the egress buffer when a resequenced data packet is output from the egress buffer.
- 10. The system of claims 1 or 2 wherein the data packets are numbered with an increasing sequence of data packets numbers.
- 11. A method comprising:
a) receiving packets through a plurality of switching planes; identifying a packet sequence number for a last received in-sequence packet; b) identifying highest packet sequence number for packets received through each of the plurality of switching planes; and c) determining at least one of the plurality of switching planes to unstop based upon the packet sequence number for the last received in-sequence packet number and the highest sequence number for at least one of the plurality of switching planes.
- 12. The method of claim 11 further including
d) comparing number of packets temporarily stored in a buffer with a predefined threshold value.
- 13. The method of claim 12 wherein the at least one of the plurality of switching planes is determined only if the number of packets stored in the buffer is equal or greater than a predefined threshold value.
- 14. The method of claim 13 wherein c) includes comparing the last received in-sequence packet number with the highest sequence number for each of the plurality of switching planes.
- 15. A program product comprising:
a computer readable medium on which a computer program is embedded, said computer program including a first module of instructions that examine packets in a flow and recording a packet sequence number for a last received in-sequence packet; a second module of instructions that examine packets received through a plurality of switching planes and record highest sequence number for packets received through each of the plurality of switching planes; and a third module of instructions using the packet sequence number for last received in-sequence packet number and the highest sequence number for each of the plurality of switching planes to identify at least one plane to unstop.
- 16. The program product of claim 15 further including fourth module of instructions to determine number of packets in a buffer associated with said flow; and
to compare said determined number with a threshold value.
Priority Claims (1)
Number |
Date |
Country |
Kind |
02368138.0 |
Dec 2002 |
EP |
|
CROSS REFERENCE TO RELATED PATENT APPLICATIONS
[0001] The present invention is related to the following patent applications which are incorporated herein by reference:
[0002] Ser. No. __/______ (Attorney Docket No. FR920020045US1) entitled “CAM Based System and Method for Re-Sequencing Data Packets”, filed ______ ;
[0003] Ser. No. __/______ (Attorney Docket No. FR920020049US1) entitled “System and Method for Sequencing Data Packets on a Per-Flow Basis”, filed ______ ;
[0004] Ser. No. __/______ (Attorney Docket No. FR920020052US1) entitled “Method and System for Resequencing Data Packets Switched Through a Parallel Packet Switch”, filed ______.