Distributed control load shaping method and apparatus
First Claim
Patent Images
1. Apparatus for providing distributed access control for load shaping in a computer system, comprising:
- shaper means for comparing payload class against class restriction status to alternatively permit access of payload to transport network or to defer access; and
a credit allocation mechanism interconnected to said shaper means for allocating credits to class restriction status recorded in said shaper means.
2 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is an apparatus for controlling or managing the transmission of data packets over a multiplexed communication path, referred to herein as a bus, on a priority basis up to a given authorized BW (Bandwidth), in a given operational time period, for presently authorized devices or applications. Non-managed (not presently authorized) bus requests are handled in a prior art “best effort” basis.
24 Citations
14 Claims
-
1. Apparatus for providing distributed access control for load shaping in a computer system, comprising:
-
shaper means for comparing payload class against class restriction status to alternatively permit access of payload to transport network or to defer access; and
a credit allocation mechanism interconnected to said shaper means for allocating credits to class restriction status recorded in said shaper means.
-
-
2. A method of bus activity BW (Bandwidth) management in a computer system for use by a plurality of BW managed and BW unmanaged entities wishing to transmit data over said bus, comprising:
-
submitting a request, from a BW managed first entity, for a given bandwidth to an assignment entity;
returning an assigned unique identity and a designated allowable BW from said assignment entity to said first entity;
supplying said assigned unique identity and designated allowable BW from said assignment entity to a load shaping entity upon receipt, by said assignment entity, of acceptance of said BW by said first entity;
sending data packets from said first entity to said load shaping entity for transmission on a bus attended by said load shaping entity, each of said data packets providing class priority information including said unique identity;
reserving a number N of spaced apart time slots, commensurate with said designated BW, over a predetermined number of time slots, for use by said first entity for as long as said first entity continues to supply said data packets for transmission;
maintaining a count of data packets processed over said predetermined number of time slots to prevent said first entity from accessing the bus more than N times in said predetermined number of time slots;
resetting the count to a given value commensurate with N every predetermined number of time slots; and
permitting transmission of data packets over said bus by unmanaged entities when no managed BW entity data packets await transmission.
-
-
3. Shaper apparatus for use in connection with a bus request queue manager of a data transfer system, comprising:
-
a plurality of counter mechanisms each operable to maintain a count of remaining managed bus requests that are available for a given entity in a given operational period;
reset means for reinitializing each of said counter mechanisms each operational period;
table means for maintaining a record of entities authorized for managed data bus requests;
means for checking received bus requests against said table of entities authorized for managed data bus requests;
means for checking an appropriate counter mechanism assigned to the entity presently requesting bus access to determine if BW (Bandwidth) allocation authorized for said entity has already been used in the present operational period;
means for enqueueing the presently received bus request for transmission when the check of the counter mechanism provides an indication that the BW authorized for the present operational period has not already been used; and
means for enqueueing the presently received bus request for delay to a later operational period when the check of the counter mechanism provides an indication that the BW authorized for the present operational period has already been used.
-
-
4. Load shaper apparatus for use in connection with a multiplexed data transfer system, comprising:
-
a plurality of counter mechanisms each operable to maintain a count of remaining managed bus requests that are available for a given entity in a given operational period;
reset means for reinitializing each of said counter mechanisms each operational period;
first checking means operable to compare received bus requests with a list of entities authorized for managed data bus requests;
second checking means operable to access an appropriate counter mechanism assigned to the entity presently requesting bus access to determine if BW (Bandwidth) allocation authorized for said entity has already been used in the present operational period; and
storage means operable to enqueue the presently received bus request for transmission when the check of the counter mechanism provides an indication that the BW authorized for the present operational period has not already been used and alternatively operable to enqueue the presently received bus request for delay to a later operational period when the check of the counter mechanism provides an indication that the BW authorized for the present operational period has already been used.
-
-
5. Load shaper apparatus for use in connection with a multiplexed data transfer system, comprising:
-
a plurality of reset-able time slot allocation tracking mechanisms each operable to maintain a count of remaining managed bus requests that are available for a given entity in a given operational period and which are reinitialized each operational period;
comparison means operable to ascertain when received bus requests are authorized for managed data treatment;
checking means operable to access an appropriate allocation tracking mechanism assigned to the entity presently requesting bus access to determine if BW (Bandwidth) allocation authorized for said entity has already been used in the present operational period; and
means operable to enqueue the presently received bus request for transmission when the check of the counter mechanism provides an indication that the BW authorized for the present operational period has not already been used.
-
-
6. Shaper apparatus for multiplex communication path access control in a computer system, comprising:
-
segregation means for sending path use requests that are not presently authorized for managed access to a best effort queue; and
deferring means for preventing present access to said communication path of a given authorized managed access request when it is determined that a predetermined BW (Bandwidth) of data has already been transmitted over the path during a present operational period where different managed data requesters may have different authorized BW allocations.
-
-
7. Shaper apparatus for multiplex communication path access control in a computer system, comprising:
-
segregation means for removing path use requests that are presently authorized for managed access to a special queue; and
path access means operable to provide access to said communication path of a given authorized managed access request when it is determined that a predetermined BW (Bandwidth) of data has not already been transmitted over the path during a present operational period where different managed data requesters may have different authorized BW allocations.
-
-
8. A method of managing access to a multiplex communication path in a computer system, comprising:
-
removing path use requests that are presently authorized for managed access to a special queue; and
providing priority access to said communication path, of a given authorized managed access request, when it is determined that a predetermined BW (Bandwidth) of data has not already been transmitted over the path during a present operational period where different managed data requesters may have different authorized BW allocations.
-
-
9. A computer program product for managing access to a multiplex communication path in a computer system, the computer program product having a medium with a computer program embodied thereon, the computer program comprising:
-
computer code for removing path use requests that are presently authorized for managed access to a special queue; and
computer code for providing priority access to said communication path, of a given authorized managed access request, when it is determined that a predetermined BW (Bandwidth) of data has not already been transmitted over the path during a present operational period where different managed data requesters may have different authorized BW allocations.
-
-
10. A computer program product for managing bus activity BW (bandwidth) management in a computer system for use by a plurality of BW managed and BW unmanaged entities wishing to transmit data over said bus, the computer program product having a medium with a computer program embodied thereon, the computer program comprising:
-
computer code for submitting a request, from a BW managed first entity, for a given bandwidth to an assignment entity;
computer code for returning an assigned unique identity and a designated allowable BW from said assignment entity to said first entity;
computer code for supplying said assigned unique identity and designated allowable BW from said assignment entity to a load shaping entity upon receipt, by said assignment entity, of acceptance of said BW by said first entity;
computer code for sending data packets from said first entity to said load shaping entity for transmission on a bus attended by said load shaping entity, each of said data packets providing class priority information including said unique identity;
computer code for reserving a number N of spaced apart time slots commensurate with said designated BW, over a predetermined number of time slots, for use by said first entity for as long as said first entity continues to supply said data packets for transmission;
computer code for maintaining a count of data packets processed over said predetermined number of time slots to prevent said first entity from accessing the bus more than N times in said predetermined number of time slots;
computer code for resetting the count to a given value commensurate with N every predetermined number of time slots; and
computer code for permitting transmission of data packets over said bus by unmanaged entities when no managed BW entity data packets await transmission.
-
-
11. A method of queuing data packets for transmission from a source to a target over a multiplexed communication path, comprising:
-
checking received data packets to ascertain whether they belong to a managed class;
placing data packets in a first queue for transmission on a best efforts basis;
checking remaining data packets ascertained to be in a managed class to determine if they originate from a source that is presently authorized to be managed;
placing data packets, determined to have no present authorization to be managed, in said first queue for transmission on a best efforts basis;
checking remaining data packets, determined to presently be authorized for management, to ascertain if BW (Bandwidth) authorized for the source of the data packets has been exceeded for the present operational time period; and
placing data packets, determined to have present authorization to be managed and to have BW remaining in the present operational time period in a second queue unique to that class source of data, said second queue having priority over said first queue. - View Dependent Claims (12, 13)
-
-
14. Apparatus for selectively queuing data packets for transmission from a source to targets over a multiplexed communication path, comprising:
-
means for checking received data packets to ascertain whether they belong to a managed class;
means for placing data packets in a first queue for transmission on a best efforts basis;
means for checking remaining data packets ascertained to be in a managed class to determine if they originate from a source that is presently authorized to be managed;
means for placing data packets, determined to have no present authorization to be managed, in said first queue for transmission on a best efforts basis;
means for checking remaining data packets, determined to presently be authorized for management, to ascertain if BW (Bandwidth) authorized for the source of the data packets has been exceeded for the present operational time period; and
means for placing data packets, determined to have present authorization to be managed and to have BW remaining in the present operational time period, in a second queue unique to that class source of data, said second queue having priority over said first queue.
-
Specification