Connection distribution within a connectional parallelism architecture
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-modifiedWhat 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.Join the waitlist — get patent alerts
Track US9270537B2 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.