Patent ID: 7403536

Claim:
A method for re-sequencing packets comprising: a) in each ingress port-adapter ( 200 ), inserting a packet rank (PR) into each packet ( 210 ) to be switched through a parallel packet switch ( 250 ); b) switching the ranked packets through the parallel packet switch; and in each egress port-adapter ( 260 ): c) reading out ( 600 ) the switched packets from the parallel packet switch; d) storing ( 605 ) the switched packets read out from the parallel packet switch into an egress buffer ( 265 ); e) selecting the oldest packet ( 403 ) of each of sets of packets stored in the egress port-adapter, each set being comprised of packets coming from the same switching plane and the same ingress port-adapter, wherein selecting the oldest packet comprises: e1) forming a plurality of linked lists ( 310 ) of egress buffer addresses, each linked list containing the egress buffer addresses of the packets switched through a same said switching plane and coming from the same ingress port-adapter; and e2) selecting the oldest address of each of the linked lists; f) selecting the oldest packet ( 420 ) of the oldest packets selected in e) and which come from the same ingress port-adapter, according to the value of their packet ranks, for each ingress port-adapter, thereby providing a subset of older packets, each subset corresponding to an ingress port adapter; g) validating the content of each subset ( 1030 ); and h) selecting the packet to exit the egress port-adapter among the subsets validated in g).