发明名称 Packet draining from a scheduling hierarchy in a traffic manager of a network processor
摘要 Described embodiments provide for controlling a state of each node in a scheduling hierarchy of a network processor. A traffic manager generates a tree scheduling hierarchy having a root scheduler and N scheduler levels. The network processor generates tasks corresponding to received packets. A traffic manager enqueues received tasks in a queue of the scheduling hierarchy associated with a data flow. The traffic manager maintains scheduling data structures for each node in the scheduling hierarchy. The scheduling data structures include a backpressure indicator and a timer indicator. If the backpressure indicator is set, the traffic manager sets the node as unavailable for scheduling and removes the node from the scheduling hierarchy. If the timer indicator is set, the traffic managers sets the node as unavailable for scheduling. Otherwise, if neither the backpressure indicator nor the timer indicator is set, the traffic manager sets the node as available for scheduling.
申请公布号 US8869151(B2) 申请公布日期 2014.10.21
申请号 US201113250938 申请日期 2011.09.30
申请人 LSI Corporation 发明人 Sundararaman Balakrishnan;Nemawarkar Shashank;Sonnier David;Aulakh Shailendra
分类号 G06F9/455;G06F9/46;H04L12/933;H04L12/863;H04L12/931;G06F12/08 主分类号 G06F9/455
代理机构 Smith Risley Tempel Santos LLC 代理人 Santos Daniel J.;Smith Risley Tempel Santos LLC
主权项 1. A method of controlling a state of each node in a scheduling hierarchy of a network processor having a plurality of processing modules and at least one shared memory with packet data, the method comprising: generating, by a traffic manager of the network processor, a scheduling hierarchy comprising a tree structure of a root scheduler and N scheduler levels, wherein a scheduler is a branch node and a queue is a leaf node of the scheduling hierarchy, wherein N is a positive integer; generating, by the network processor, one or more tasks corresponding to each of a plurality of received packets associated with one or more data flows of the network processor; enqueuing, by the traffic manager, a task provided by one of the plurality of processing modules of the network processor to an associated queue of the scheduling hierarchy, wherein the queue is associated with a data flow corresponding to the received task; maintaining one or more scheduling data structures for each node in the scheduling hierarchy, wherein the one or more scheduling data structures comprise a backpressure indicator and a timer indicator; if the backpressure indicator is set: setting the node as unavailable for scheduling;removing the node from the scheduling hierarchy; if the timer indicator is set: setting the node as unavailable for scheduling; otherwise, if neither the backpressure indicator nor the timer indicator is set: setting the node as available for scheduling.
地址 Milpitas CA US