US9270537B2ActiveUtilityA1

Connection distribution within a connectional parallelism architecture

70
Assignee: NETAPP INCPriority: Aug 24, 2011Filed: Oct 2, 2014Granted: Feb 23, 2016
Est. expiryAug 24, 2031(~5.1 yrs left)· nominal 20-yr term from priority
H04L 49/90H04L 67/142H04L 41/12
70
PatentIndex Score
2
Cited by
4
References
18
Claims

Abstract

Example embodiments provide various techniques for distributing connections within a connectional parallelism architecture. In one embodiment, a method is provided where resource utilizations of connection groups are measured. Here, each connection group is assigned to one of multiple processors. A probability distribution is accessed that maps probabilities assigned to relative resource utilizations. A relative resource utilization of one of the connection groups is determined based on a resource utilization of the one connection group relative to other resource utilizations of other connection groups. A probability from the probability distribution is identified based on the determined relative resource utilization, and based on the identified probability, a connection is assigned to this connection group for execution by one of the processors assigned to this connection group.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method of distributing connections within a connectional parallelism architecture, the method comprising:
 accessing a record of previous connection group assignments for multiple connection groups; 
 selecting one of the connection groups for a connection based on the record; 
 determining a current relative resource utilization of the selected connection group as compared to other resource utilizations of other connection groups; 
 identifying a probability from a probability distribution based on the determined current relative resource utilization; and 
 based on the identified probability, assigning the connection to the selected connection group for execution by a processor assigned to the selected connection group; and 
 
       wherein the probability from the probability distribution decreases as the determined current relative resource utilization increases. 
     
     
       2. The method of  claim 1 , wherein selecting one of the connection groups for the connection includes a group preference for the connection, the group preference defining a connection group preferred by the connection over other connection groups. 
     
     
       3. The method of  claim 2 , wherein the group preference is predefined. 
     
     
       4. The method of  claim 2 , wherein the group preference is defined based on a type of Transmission Control Protocol (TCP) connection. 
     
     
       5. The method of  claim 1 , wherein each connection group is identified by a group identifier, and wherein the assignment of the connection comprises assigning the connection to a group identifier that identifies the selected connection group. 
     
     
       6. The method of  claim 1 , wherein the probability distribution is predefined, and wherein the probability distribution corresponds to a step function-based distribution in which probabilities decrease as relative resource utilizations increase. 
     
     
       7. The method of  claim 1 , wherein the resource utilizations of the multiple connection groups are determined by measuring a number of connections to each of the multiple connection groups. 
     
     
       8. The method of  claim 7 , wherein the current relative resource utilization is determined based on a ratio of a number of connections owned by the selected connection group to a total number of connections. 
     
     
       9. The method of  claim 1 , wherein the resource utilizations of the multiple connection groups are determined by measuring data rates serviced by the multiple connection groups. 
     
     
       10. The method of  claim 9 , wherein the current relative resource utilization is determined based on a ratio of a data rate serviced by the selected connection group to a total data rate serviced by the connection groups. 
     
     
       11. A system comprising:
 a plurality of processors including at least a first processor and a second processor; and 
 a memory in communication with the first and second processors, the memory being configured to store a connection distribution module having instructions that when executed, cause operations to be performed, the operations comprising:
 accessing a record of previous connection group assignments for multiple connection groups; 
 selecting one of the connection groups for a connection based on the record; 
 determining a current relative resource utilization of the selected connection group as compared to other resource utilizations of other connection groups; 
 identifying a probability from a probability distribution based on the determined current relative resource utilization; and 
 based on the identified probability, assigning the connection to the selected connection group for execution by a processor assigned to the selected connection group; and 
 wherein the probability from the probability distribution decreases as the determined current relative resource utilization increases. 
 
 
     
     
       12. The system of  claim 11 , wherein selecting one of the connection groups for the connection includes a group preference for the connection, the group preference defining a connection group preferred by the connection over other connection groups. 
     
     
       13. The system of  claim 12 , wherein the group preference is predefined. 
     
     
       14. The system of  claim 12 , wherein the group preference is defined based on a type of Transmission Control Protocol (TCP) connection. 
     
     
       15. The system of  claim 11 , wherein each connection group is identified by a group identifier, and wherein the assignment of the connection comprises assigning the connection to a group identifier that identifies the selected connection group. 
     
     
       16. The system of  claim 11 , wherein the probability distribution is predefined, and wherein the probability distribution corresponds to a step function-based distribution in which probabilities decrease as relative resource utilizations increase. 
     
     
       17. The system of  claim 11 , wherein the resource utilizations of the multiple connection groups are determined by measuring a number of connections to each of the multiple connection groups. 
     
     
       18. A non-transitory, machine-readable medium storing instructions that, when performed by a machine, cause the machine to perform operations comprising:
 accessing a record of previous connection group assignments for multiple connection groups; 
 selecting one of the connection groups for a connection based on the record; 
 determining a current relative resource utilization of the selected connection group as compared to other resource utilizations of other connection groups; 
 identifying a probability from a probability distribution based on the determined current relative resource utilization; and 
 based on the identified probability, assigning the connection to the selected connection group for execution by a processor assigned to the selected connection group; and 
 wherein the probability from the probability distribution decreases as the determined current relative resource utilization increases.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.