Patent ID: 7602790

Claim:
A method performed by a switching system, the method comprising: receiving, by a switch scheduler of the switching system, a first set of packet forwarding requests identifying input port/output port combinations for each of a number of packets; identifying, by the switch scheduler, a first diagonal service pattern in a matrix of scheduling modules for scheduling packet forwarding for a first future time slot, where the first diagonal service pattern provides for scheduling of packets designating groups of input port/output port combinations that do not conflict with each other; determining, by the switch scheduler, for the groups of input port/output port combinations in the first diagonal service pattern, the input port/output port combinations for which packet forwarding requests are received; scheduling, by the switch scheduler, packet forwarding for the determined input port/output port combinations for which packet forwarding requests are received; updating, by the switch scheduler, reservation information associated with the groups of input port/output port combinations in the first diagonal service pattern to reflect the scheduling; and transferring, by the switch scheduler, the updated reservation information to scheduling modules in a second diagonal service pattern in the matrix of scheduling modules for scheduling packet forwarding for a second future time slot, where the second diagonal service pattern provides for scheduling of packets designating additional groups of input port/output port combinations that do not conflict with each other, where the matrix of scheduling modules comprises an M×M matrix of scheduling modules for scheduling packet forwarding for a combination of N input ports and N output ports, where M is an integer and N is an integer divisible by M, and where each scheduling module in the matrix of scheduling modules schedules packet forwarding for a group of N/M input ports and N/M output ports.