Patent ID: 8542691

Claim:
A method for transmitting packets, comprising: receiving, by a local switch of a plurality of switches each located on a single chip, a first plurality of upstream packets, each assigned a first class of service, from an upstream switch of the plurality of switches, wherein the plurality of switches are interconnected in a daisy chain topology; receiving, by the local switch, a first plurality of local packets, each assigned the first class of service, from a local device located on the chip; inserting, by the local switch according to a first insertion rate, at least one of the first plurality of local packets between a plurality of subsets of the first plurality of upstream packets to obtain a first ordered plurality of first class packets; receiving, by the local switch, a second plurality of upstream packets, each assigned a second class of service, from the upstream switch; receiving, by the local switch, a second plurality of local packets, each assigned the second class of service, from the local device; inserting, by the local switch according to a second insertion rate, at least one of the second plurality of local packets between plurality of subsets of the second plurality of upstream packets to obtain an ordered plurality of second class packets; and for each timeslot of a plurality of timeslots: selecting a selected class of service from a set comprising the first class of service and the second class of service; and forwarding, during the timeslot, a packet from the selected class of service to a downstream switch of the plurality of switches, wherein the packet from the selected class of service is obtained from a set comprising the first ordered plurality of first class packets and the ordered plurality of second class packets.