×

System for balance distribution of requests across multiple servers using dynamic metrics

  • US 8,302,100 B2
  • Filed: 08/12/2005
  • Issued: 10/30/2012
  • Est. Priority Date: 01/18/2000
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method for allocating a server, selected from a plurality of servers, to client requests originating over a predefined time interval at a plurality of user accounts, the method comprising:

  • collecting a plurality of client requests that arrive within the predefined time interval wherein at least two of said client requests are serviceable by the server and wherein a first of said at least two of said client requests originates at a first user account and a second of said at least two of said client requests originates at a second user account;

    determining a first value of a cost metric for a first set of client request-server pairings wherein said first set includes at least one client request-server pair with said server being paired with either said first or said second of said at least two client requests;

    determining a second value of a cost metric for a second set of client request-server pairings wherein said second set includes at least one client request-server pair with said server being paired with both said first and said second of said at least two client requests; and

    at the end of said predefined time interval distributing said client requests according to one of said first and said second set of client request-server pairings based on said first and second values of said cost metric;

    wherein the step of determining the first or the second value of a cost metric for the first or the second set of client request-server pairings further comprises the steps of;

    initializing the first or second set of client request-server pairings at a commencement of the predefined time interval;

    a) selecting a client request-server pair to satisfy a selection criteria;

    b) creating a requirement vector corresponding to said client request;

    c) creating a capability vector corresponding to said server;

    d) calculating a distance between the requirement vector and the capability vector and adding said distance to a cumulative value when said distance exceeds a match threshold value and repeating steps a), b), c) and d); and

    e) adding said client request-server pair to said set of client request-server pairings when said distance exceeds the match threshold value, said cumulative value is less than a cost threshold and said client request has arrived within said predefined time interval.

View all claims
  • 11 Assignments
Timeline View
Assignment View
    ×
    ×