Patent ID: 7406522

Claim:
A computer-readable medium stored therein computer-readable instructions executed by a computer processor allowing for the dynamic allocation of network resources among a plurality of users, the computer readable instructions comprising: a partition management module that accesses a partition object space in a computer-readable memory, wherein the partition object space stores a plurality of partition objects; the plurality of partition objects including at least one dynamic partition object having at least one attribute defining a first allocation of network bandwidth across all data flows corresponding to the at least one dynamic partition object, and a second attribute defining user partition allocations of the network bandwidth within the first allocation, wherein the user partition allocations are each less than the first allocation; and at least one user partition object having at least one attribute defining an allocation of the network bandwidth across all data flows corresponding to a user, selects partition objects based on one or more attributes of data flows; identifies new users based on at least one packet attribute of packets in the data flows; dynamically creates when a dynamic partition object is selected a user partition object in the partition object space in response to an identification of a new user, wherein the dynamically created user partition object is a child of a selected dynamic partition object and includes an allocation of the network bandwidth according to the second attribute of the selected dynamic partition object, and a partitioning mechanism that interfaces with a communication path for transmitting data packets corresponding to a plurality of respective users, associates users with corresponding user partition objects, and enforces the respective network bandwidth allocations defined in the dynamic and user partition objects.