Browse Prior Art Database

Client Based Load Balancing Algorithm for Multi-server Environments by Distributing Mostly Read Fileset Operations over the Servers

IP.com Disclosure Number: IPCOM000105506D
Original Publication Date: 1993-Aug-01
Included in the Prior Art Database: 2005-Mar-20
Document File: 2 page(s) / 103K

Publishing Venue

IBM

Related People

Dan, A: AUTHOR [+3]

Abstract

Disclosed is an approach to load balancing in a multi-server environment by distinguishing between read-only and read-write files, and distributing only the operations to read-only files over the servers. The method is client-based and takes into account the server load. The method also reduces the overhead of server cache-consistency and synchronization.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Client Based Load Balancing Algorithm for Multi-server Environments by Distributing Mostly Read Fileset Operations over the Servers

      Disclosed is an approach to load balancing in a multi-server
environment by distinguishing between read-only and read-write files,
and distributing only the operations to read-only files over the
servers.  The method is client-based and takes into account the
server load.  The method also reduces the overhead of server
cache-consistency and synchronization.

      In a large distributed system (e.g., networked workstation
environment) multiple servers are needed to avoid the problem of
server bottleneck.  However, balancing the server load in such an
environment is a difficult problem.  Traditionally files are grouped
into filesets (e.g., private files of an user, system programs) that
are assigned to a fixed set of servers so as to balance the overall
average load.  Earlier studies have shown that this itself is a hard
problem, and even the best effort may lead to an unbalance in average
load.  This is referred to as server load skew.  In addition, there
is dynamic variation of load in each server, which may create
temporary bottleneck.  Hence, a dynamic load balancing policy is
required.

      There are a number of ways to achieve load balancing in a
multi-server environment, but all of them incurs additional processor
or storage overhead.  Prior art has shown that by randomly or
uniformly distributing operations on mostly-read filesets (that are
rarely updated), it is possible to reduce the server load skew.  This
incurs very little overhead in terms of server synchronization.
While the above method is very simple and easy to implement, it does
not take into account the server load, and hence does not eliminate
the server load skew completely.

      This invention disclosure describes an algorithm that takes
into account server load and accordingly distributes the operations
on mostly-read filesets so as to balance the overall server load.
The filesets can be classified as mostly-read or read-write.  All of
the files of a mostly-read fileset are updated very rarely, whereas
all or some of the files of a read-write fileset are updated
frequently.  An example of a mostly-read fileset is the set of system
files (programs).  Additional characteristics of a mostly-read
filesets are that they are accessed frequently by all users, and
their sizes are relatively small.  These imply even a small server
cache will provide high hit ratio.  Since the files of a mostly-read
fileset are rarely updated, specially optimized protocols for
cache-consistency and file synchronization can be devised that incur
very low overhead.  On the other hand, the read-write filesets are
relatively large, frequently updated, and each such fileset is
typically accessed by a single user.

      The proposal is to balance the load by only distributing the
operations to mostly-read fileset...