Patent ID: 8040907

Claim:
A switching device comprising a plurality of ingress ports and a plurality of egress ports, the switching device being arranged to receive data packets through said ingress ports and to forward received data packets to respective ones of said egress ports, wherein the switching device further comprises: an ingress module for each of said ingress ports, each ingress module being arranged to receive data packets from a respective single one of said ingress ports and to store the received data packets in one of a plurality of data structures provided by the ingress module; a plurality of egress modules each arranged to receive a plurality of requests for permission to transmit data packets through a particular egress port, the requests being generated by a plurality of ingress modules, to select one of said plurality of requests, and to provide data indicating whether requests for permission to transmit data packets through a particular egress port should be made by said ingress modules; and wherein each ingress module is further configured to select a data packet from one of said plurality of data structures, and to request permission to transmit the selected data packet to an egress port if but only if said data provided by one of said egress modules indicates that requests for permission to transmit data packets through said egress port should be made, the request for permission not including the selected data packet; wherein each of said egress modules is arranged to receive said requests, to select one of said requests and to provide said data independently of and simultaneously with others of said plurality of egress modules; and wherein each ingress module is arranged to select data packets from said data structures and to request permission to transmit the selected data packets independently of and simultaneously with others of said plurality of ingress modules.