Allocating resources in multi-core computing environments
First Claim
1. A method by a first processor core of a plurality of processor cores for allocating resources in a multi-core computing environment, the method comprising:
- assigning a level of service to each client;
receiving a request from a client;
determining, by a dedicated core of the plurality of processor cores, the level of service associated with the client;
executing, by the dedicated core, a resource allocation algorithm, wherein the executing the resource allocation algorithm includes;
collecting statistics associated with processing of a network traffic associated with the client, the statistics including one or more of a volume of a transmitted network traffic associated with the client and a volume of a queued network traffic associated with the client; and
based on the statistics, selecting a quantum of a network resource for processing of the network traffic associated with the client;
allocating, by the dedicated core, using the resource allocation algorithm, the quantum of the network resource to the network traffic associated with the client, the client including at least one client processor, wherein the network resource is allocated to the network traffic associated with the client based on the level of service; and
assigning, by the dedicated core, using the allocating, other processor cores of the plurality of processor cores to processing network packets of the network traffic associated with the client, the other processor cores processing the network packets according to the allocated quantum of the network resource.
1 Assignment
0 Petitions
Accused Products
Abstract
Provided are methods and systems for allocating resources in a multi-core computing environment. The method comprises selecting, by one or more processors, at least one dedicated core for execution of a resource allocation algorithm. After selection of the dedicated core, the dedicated core allocates, based on the resource allocation algorithm, a network resource to a client. Furthermore, the dedicated core assigns the network resource to network packets associated with the client for processing by data cores. After the assigning of the network resource, the data cores process the network packets according to the allocated network resource.
336 Citations
20 Claims
-
1. A method by a first processor core of a plurality of processor cores for allocating resources in a multi-core computing environment, the method comprising:
-
assigning a level of service to each client; receiving a request from a client; determining, by a dedicated core of the plurality of processor cores, the level of service associated with the client; executing, by the dedicated core, a resource allocation algorithm, wherein the executing the resource allocation algorithm includes; collecting statistics associated with processing of a network traffic associated with the client, the statistics including one or more of a volume of a transmitted network traffic associated with the client and a volume of a queued network traffic associated with the client; and based on the statistics, selecting a quantum of a network resource for processing of the network traffic associated with the client; allocating, by the dedicated core, using the resource allocation algorithm, the quantum of the network resource to the network traffic associated with the client, the client including at least one client processor, wherein the network resource is allocated to the network traffic associated with the client based on the level of service; and assigning, by the dedicated core, using the allocating, other processor cores of the plurality of processor cores to processing network packets of the network traffic associated with the client, the other processor cores processing the network packets according to the allocated quantum of the network resource. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system for allocating resources in a multi-core computing environment, the system comprising:
-
at least one hardware processor configured for; assigning a level of service to each client; and selecting a first processor core of a plurality of processor cores as a dedicated core; the dedicated core configured for; receiving a request from a client; determining the level of service associated with the client; executing a resource allocation algorithm, wherein the executing the resource allocation algorithm includes; collecting statistics associated with processing of a network traffic associated with the client, the statistics including one or more of a volume of a transmitted network traffic associated with the client and a volume of a queued network traffic associated with the client; and based on the statistics, selecting a quantum of a network resource for processing of the network traffic associated with the client; allocating, using the resource allocation algorithm, the quantum of the network resource to the network traffic associated with the client, the client including at least one client processor, wherein the network resource is allocated to the network traffic associated with the client based on the level of service; and assigning, using the allocating, other processor cores of the plurality of processor cores to processing network packets of the network traffic associated with the client; and the other processor cores processing the network packets according to the allocated quantum of the network resource. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A non-transitory computer-readable storage medium having embodied thereon a program, the program being executable by a first processor core of plurality of processor cores to perform a method for allocating resources in a multi-core computing environment, the method comprising:
-
assigning a level of service to each client; receiving a request from a client; determining, by a dedicated core, the level of service associated with the client; executing, by the dedicated core, a resource allocation algorithm, the first processor core being selected by a processor as the dedicated core for executing the resource allocation algorithm, wherein the executing the resource allocation algorithm includes; collecting statistics associated with processing of a network traffic associated with the client, the statistics including one or more of a volume of a transmitted network traffic associated with the client and a volume of a queued network traffic associated with the client; and based on the statistics, selecting a quantum of a network resource for processing of the network traffic associated with the client; allocating, by the dedicated core, using the resource allocation algorithm, the quantum of the network resource to the network traffic associated with the client, the client including at least one client processor, wherein the network resource is allocated to the network traffic associated with the client based on the level of service; assigning, by the dedicated core, using the allocating, other processor cores of the plurality of processor cores to processing network packets of the network traffic associated with the client, the other processor cores processing the network packets according to the allocated quantum of the network resource.
-
Specification