Network processor which defines virtual paths without using logical path descriptors
AssigneeInternational Business Machines Corporation
InventorMerwin Herscher Alferness
Life of this patent
Estimating the term…
Abstract
A virtual path feature in which several virtual channels share an assigned amount of bandwidth is implemented in a network processor. The network processor maintains a schedule indicative of respective times at which a plurality of virtual channels are to be serviced. An entry is read from the schedule. The entry corresponds to a current transmit cycle and includes a pointer to a channel descriptor for a virtual channel to be serviced in the current transmit cycle. A data cell for the virtual channel to be serviced in the current cycle is transmitted. An entry is added to the schedule to point to a channel descriptor that is pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle.
Claims4
A method of operating a network processor, the method comprising:
- (a) maintaining a schedule indicative of respective times at which a plurality of virtual channels are to be serviced;
- (b) reading an entry from the schedule, the entry corresponding to a current transmit cycle and including a pointer to a channel descriptor for a virtual channel to be serviced in the current transmit cycle;
- (c) transmitting a data cell for the virtual channel to be serviced in the current transmit cycle;
- (d) adding to the schedule an entry which points to a channel descriptor that is pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle;
- and
- (e) writing to the channel descriptor pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle a time stamp indicative of a scheduled time for servicing a virtual channel which corresponds to the channel descriptor pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle.
A network processor, comprising:
- means for maintaining a schedule indicative of respective times at which a plurality of virtual channels are to be serviced;
- means for reading an entry from the schedule, the entry corresponding to a current transmit cycle and including a pointer to a channel descriptor for a virtual channel to be serviced in the current transmit cycle;
- means, responsive to the means for reading, for transmitting a data cell for the virtual channel to be serviced in the current transmit cycle;
- means for adding to the schedule an entry which points to a channel descriptor that is pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle;
- and
- means for writing to the channel descriptor pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle a timestamp indicative of a scheduled time for servicing a virtual channel which corresponds to the channel descriptor pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle.
A computer program product comprising:
- a medium, other than a carrier wave signal, readable by a computer, the computer readable medium having program code adapted to:
- maintain a schedule indicative of respective times at which a plurality of virtual channels are to be serviced;
- read an entry from the schedule, the entry corresponding to a current transmit cycle and including a pointer to a channel descriptor for a virtual channel to be serviced in the current transmit cycle;
- transmit a data cell for the virtual channel to be serviced in the current transmit cycle;
- add to the schedule an entry which points to a channel descriptor that is pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle;
- and
- write to the channel descriptor pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle a timestamp indicative of a scheduled time for servicing a virtual channel which corresponds to the channel descriptor pointed to by the channel descriptor for the virtual channel serviced in the current transmit cycle.
Dependencies are inferred from the claim text.