System and method for allocating resources on a network
Abstract
A system and method for allocating resources on a network, including a server and at least one client. The resources are associated within a single set, such that the number of resources within the network can be easily incremented or decremented. Flags are associated with each resource, where the flags may be set to one of two states: a first state or a second state. When the server receives a connection request from a client, the server examines the flags associated with the resources to find a flag set to a second state. Upon finding a resource with a flag set to the second state, that resource is assigned to the client. Once the resource is assigned to a client, the associated flag is set to a first state and another flag associated with another resource is set to a second state.
Claims
exact text as granted — not AI-modified1 . A method for load balancing of a plurality of return options on a network without setting up virtual subnets, wherein said network includes at least a server, at least a client, and a plurality of return options, said method comprising:
allocating a plurality of sets in a container, wherein each of said plurality of sets includes a plurality of return options of a same type; and assigning a set of return options to a client on a network, wherein said set of return options includes at least one option from each of said plurality of sets.
2 . The method according to claim 1 , said assigning further includes:
wherein each of said plurality of return options includes a value representing a maximum number of clients that may be assigned to said each of said return options:
repeatedly assigning a first return option out each of said plurality of sets to a requesting client until said value is reached; and
in response to reaching said value, assigning another return option out of each of said plurality of sets.
3 . The method according to claim 1 , said assigning further includes:
assigning each of said plurality of return options of the same type out of said plurality of sets to a requesting client in a round-robin fashion
4 . The method according to claim 1 , further comprising:
wherein each of said plurality of return options includes:
a first value representing a maximum number of clients that may be assigned to said each of said plurality of return options; and
a second value representing a number of clients currently assigned to each of said plurality of return options; and
in response to determining that a first set of said plurality of sets includes a return option wherein said second value exceeds said first value, setting said second value corresponding to each of said plurality of return options of a same type included in said first set to zero.
5 . A system for load balancing of a plurality of return options on a network without setting up virtual subnets, wherein said network includes at least a server and at least a client, said system comprising:
a container, including a plurality of sets, wherein each of said plurality of sets includes a plurality of return options of the same type; and means for assigning a set of return options to a client on a network, wherein said set of return options includes at least one option from each of said plurality of sets.
6 . The system according to claim 5 , said means for assigning further includes:
wherein each of said return options includes a value representing a maximum number of clients that may be assigned to said each of said return options:
means for repeatedly assigning a first return option out each of said plurality of sets to a requesting client until said value is reached; and
in response to reaching said value, a means for assigning another return option out of each of said plurality of sets.
7 . The system according to claim 5 , said means for assigning further includes:
wherein each of said return options includes a value representing a maximum number of clients that may be assigned to said each of said return options:
means for assigning each of said return options out of said plurality of sets to a requesting client in a round-robin fashion.
8 . The system according to claim 5 , said means for assigning further includes:
The method according to claim 1 , further includes:
wherein each of said plurality of return options includes:
a first value representing a maximum number of clients that may be assigned to said each of said plurality of return options; and
a second value representing a number of clients currently assigned to each of said plurality of return options; and
in response to determining that a first set of said plurality of sets includes a return option wherein said second value exceeds said first value, means for setting said second value corresponding to each of said plurality of return options of a same type included in said first set to zero.
9 . A method for allocating a plurality of resources on a network, which includes a server and at least one client, said method comprising:
associating said plurality of resources within a single set, such that said plurality of resources are allocated only from said single set, such that the number of said plurality of resources within said network may be more easily incremented or decremented; associating a respective one of a plurality of flags with each of said plurality of resources, wherein each of said plurality of flags may be set to one of two states, a first state or a second state; in response to said server receiving a connection request from said client, examining said plurality of flags to identify a first flag set to said second state; in response to identifying said first flag set to said second state, assigning an associated one of said plurality of resources to said client; and in response to assigning said associated one of said plurality of resources to said client, setting said first flag to said first state and setting a second flag associated with another one of said plurality of resources to said second state.
10 . The method in claim 9 , wherein said associating a respective one of a plurality of flags, further comprises:
associating a respective one of a plurality of counters with each of said plurality of resources, wherein each of said plurality of counters represents a number of clients currently utilizing each of said plurality of resources.
11 . The method of claim 9 , wherein said associating a respective one of a plurality of flags, further comprises:
associating a respective one of a plurality of variables with each of said plurality of resources, wherein each of said plurality of variables represents a maximum number of clients permitted to utilize each of said plurality of resources.
12 . The method of claim 9 , further comprising:
in response to determining the workload of one of said plurality of resources exceeds a predetermined value, removing said one of said plurality of resources from said single set.
13 . The method of claim 9 , further comprising:
in response to determining the workload of one of said plurality of resources does not exceed a predetermined value, associating said one of said plurality of resources in said single set.
14 . A system for allocating a plurality of resources on a network, which includes a server and at least one client, said system comprising:
means for associating said plurality of resources within a single set, such that said plurality of resources are allocated only from said single set, such that the number of said plurality of resources within said network may be more easily incremented or decremented; means for associating a respective one of a plurality of flags with each of said plurality of resources, wherein each of said plurality of flags may be set to one of two states, a first state or a second state; means for examining said plurality of flags to identify a first flag set to said second state, in response to said server receiving a connection request from said client; means for assigning an associated one of said plurality of resources to said client, in response to identifying said first flag set to said second state; and means for setting said first flag to said first state and setting a second flag associated with another one of said plurality of resources to said second state, in response to assigning said associated one of said plurality of resources to said client.
15 . The system in claim 14 , wherein said means for associating a respective one of a plurality of flags, further comprises:
means for associating a respective one of a plurality of counters with each of said plurality of resources, wherein each of said plurality of counters represents a number of clients currently utilizing each of said plurality of resources.
16 . The system of claim 14 , wherein said means for associating a respective one of a plurality of flags, further comprises:
means for associating a respective one of a plurality of variables with each of said plurality of resources, wherein each of said plurality of variables represents a maximum number of clients permitted to utilize each of said plurality of resources.
17 . The system of claim 14 , further comprising:
means for removing said one of said plurality of resources from said single set, in response to determining the workload of one of said plurality of resources exceeds a predetermined value.
18 . The system of claim 14 , further comprising:
means for associating said one of said plurality of resources in said single set, in response to determining the workload of one of said plurality of resources does not exceed a predetermined value.
19 . A computer program product for allocating a plurality of resources on a network, which includes a server and at least one client, said computer program product comprising:
instruction means, embodied within computer-readable media, for associating said plurality of resources within a single set, such that said plurality of resources are allocated only from said single set, such that the number of said plurality of resources within said network may be more easily incremented or decremented; instruction means, embodied within computer-readable media, for associating a respective one of a plurality of flags with each of said plurality of resources, wherein each of said plurality of flags may be set to one of two states, a first state or a second state; instruction means, embodied within computer-readable media, for examining said plurality of flags to identify a first flag set to said second state, in response to said server receiving a connection request from said client; instruction means, embodied within computer-readable media, for assigning an associated one of said plurality of resources to said client, in response to identifying said first flag set to said second state; and instruction means, embodied within computer-readable media, for setting said first flag to said first state and setting a second flag associated with another one of said plurality of resources to said second state, in response to assigning said associated one of said plurality of resources to said client.
20 . The computer program product in claim 19 , wherein said instruction means for associating a respective one of a plurality of flags, further comprises:
instruction means, embodied within computer-readable media, for associating a respective one of a plurality of counters with each of said plurality of resources, wherein each of said plurality of counters represents a number of clients currently utilizing each of said plurality of resources.
21 . The computer program product of claim 19 , wherein said instruction means for associating a respective one of a plurality of flags, further comprises:
instruction means, embodied within computer-readable media, for associating a respective one of a plurality of variables with each of said plurality of resources, wherein each of said plurality of variables represents a maximum number of clients permitted to utilize each of said plurality of resources.
22 . The computer program product of claim 19 , further comprising:
instruction means, embodied within computer-readable media, for removing said one of said plurality of resources from said single set, in response to determining the workload of one of said plurality of resources exceeds a predetermined value.
23 . The computer program product of claim 19 , further comprising:
instruction means, embodied within computer-readable media, for associating said one of said plurality of resources in said single set, in response to determining the workload of one of said plurality of resources does not exceed a predetermined value.Join the waitlist — get patent alerts
Track US2008177830A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.