22
SOFTWARE – PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2010; 40:485–506 Published online 23 March 2010 in Wiley InterScience (www.interscience.wiley.com). DOI: 10.1002/spe.967 An adaptive load balancing management technique for RFID middleware systems Heung Seok Chae 1, , , Jae Geol Park 2 , Jian Feng Cui 1 and Joon Sang Lee 3 1 Department of Computer Science and Engineering, Pusan National University, Korea 2 SEBANG Co., Ltd., Korea 3 Global R&D Planning Group, MC Research Center, LG Electronics, Korea SUMMARY In recent years, Radio Frequency Identification (RFID) industries have taken a great interest in utilizing the benefits of RFID for supply chain management, inventory control and various other applications. This paper proposed an adaptive load balancing technique for RFID middleware systems to meet the demands of scalability and heterogeneity. First, we explored five basic load balancing policies, namely, information policy, job selection policy, transfer policy, initiation policy and location policy. Eighteen load balancing schemes were then proposed for RFID middleware systems that were combinations of various types of the five basic load balancing policies. Our empirical study suggested that these load balancing strategies performed differently under different workload statuses. Finally, an adaptive load balancing strategy was proposed. The load balancing schemes and the proposed adaptive load balancing strategy have been implemented in the RFID Middleware Load Management System (RM-LMS). Copyright 2010 John Wiley & Sons, Ltd. Received 1 November 2008; Revised 30 December 2009; Accepted 14 January 2010 KEY WORDS: adaptive load balancing; RFID middleware; performance model; load balancing strategy 1. INTRODUCTION Radio Frequency Identification (RFID) technologies have been around for several decades since the U.S. first issued a patent for an RFID implementation technique with active RFID tags and rewritable memory in 1973. It is possible to collect accurate and immediate information about the location and the history of products by identifying and tracking each product using the RFID technology. RFID technologies can be used not only to identify a product, but they are also in a broad sense applicable to embody a short distance communication network environment through which data can be instantaneously exchanged [1, 2]. However, RFID industries only recently took a great interest in RFID’s affordability and capability. As the maturity level of RFID technologies increasingly grows, it becomes possible to employ the RFID technique in a variety of industries. Correspondence to: Heung Seok Chae, Department of Computer Science and Engineering, Pusan National University, Korea. E-mail: [email protected] Contract/grant sponsor: Korean Ministry of Education, Science and Technology Grant (The Regional Core Research Program/Institute of Logistics Information Technology) Copyright 2010 John Wiley & Sons, Ltd.

An adaptive load balancing management technique for RFID middleware systems

Embed Size (px)

Citation preview

SOFTWARE – PRACTICE AND EXPERIENCESoftw. Pract. Exper. 2010; 40:485–506Published online 23 March 2010 in Wiley InterScience (www.interscience.wiley.com). DOI: 10.1002/spe.967

An adaptive load balancing management technique for RFIDmiddleware systems

Heung Seok Chae1,∗,†, Jae Geol Park2, Jian Feng Cui1 and Joon Sang Lee3

1Department of Computer Science and Engineering, Pusan National University, Korea2SEBANG Co., Ltd., Korea

3Global R&D Planning Group, MC Research Center, LG Electronics, Korea

SUMMARY

In recent years, Radio Frequency Identification (RFID) industries have taken a great interest in utilizingthe benefits of RFID for supply chain management, inventory control and various other applications. Thispaper proposed an adaptive load balancing technique for RFID middleware systems to meet the demandsof scalability and heterogeneity. First, we explored five basic load balancing policies, namely, informationpolicy, job selection policy, transfer policy, initiation policy and location policy. Eighteen load balancingschemes were then proposed for RFID middleware systems that were combinations of various types ofthe five basic load balancing policies. Our empirical study suggested that these load balancing strategiesperformed differently under different workload statuses. Finally, an adaptive load balancing strategy wasproposed. The load balancing schemes and the proposed adaptive load balancing strategy have beenimplemented in the RFID Middleware Load Management System (RM-LMS). Copyright q 2010 JohnWiley & Sons, Ltd.

Received 1 November 2008; Revised 30 December 2009; Accepted 14 January 2010

KEY WORDS: adaptive load balancing; RFID middleware; performance model; load balancing strategy

1. INTRODUCTION

Radio Frequency Identification (RFID) technologies have been around for several decades sincethe U.S. first issued a patent for an RFID implementation technique with active RFID tags andrewritable memory in 1973. It is possible to collect accurate and immediate information aboutthe location and the history of products by identifying and tracking each product using the RFIDtechnology. RFID technologies can be used not only to identify a product, but they are also in abroad sense applicable to embody a short distance communication network environment throughwhich data can be instantaneously exchanged [1, 2]. However, RFID industries only recently tooka great interest in RFID’s affordability and capability. As the maturity level of RFID technologiesincreasingly grows, it becomes possible to employ the RFID technique in a variety of industries.

∗Correspondence to: Heung Seok Chae, Department of Computer Science and Engineering, Pusan National University,Korea.

†E-mail: [email protected]

Contract/grant sponsor: Korean Ministry of Education, Science and Technology Grant (The Regional Core ResearchProgram/Institute of Logistics Information Technology)

Copyright q 2010 John Wiley & Sons, Ltd.

486 H. S. CHAE ET AL.

Hence, it is time for the IT industry, as the glue for digital convergence, to pay more attention toRFID that can be useful in offering great benefits for supply chain management, inventory controland various other applications [1].

Middleware is a software layer that connects and manages application components running ona distribution host [3]. Middleware hides and abstracts many of the complex details of distributedprogramming from the application developers. Implementing middleware on RFID applicationshas several benefits, such as network communication, coordination and reliability [4]. Comparedwith the traditional middleware technology, RFID middleware should support various types ofRFID readers, platforms and applications, which influence the operation of RFID applications.Another important issue of RFID middleware systems is managing RFID data, which can benoisy, temporally or spatially obsolescent, and dynamically generated in very large streams [5].For example, when a couple of trucks with many products with attached RFID tags pass an RFIDreader, the reader instantaneously senses a huge number of tags, which accordingly may delay oreven break down the RFID middleware response. Since another RFID middleware may remainidle or may have enough capability to process the workload resulting from extra readers, theproblem could be resolved by redistributing the reader and its associated tag information to anotherunderloaded middleware. Therefore, RFID middleware systems have to overcome the challengesof heterogeneity and scalability, which are typical of traditional distributed systems.

Considering heterogeneity, Application Level Event specification (ALE) [6] provides standard-ized interfaces for RFID middlewares to work in a heterogeneous application environment. In thispaper, the utilization of ALE facilitates the heterogeneity of RFID middleware systems. In addi-tion, the scalability of RFID middleware systems can be addressed as a load balancing problem.However, most existing studies on load balancing techniques are based on a homogeneous platformwhere a non-preemptive local job scheduling discipline like First-Come, First-Serve (FCFS) isused. Besides, dependencies between the jobs and the computing nodes are rarely considered inthe existing studies. Therefore, they are not appropriate for RFID middleware systems.

In this paper, an adaptive load balancing approach is proposed for ALE specification compliantRFID middleware systems based on five basic load balancing policies. The major contributions ofthis study are as follows:

• We explored five basic load balancing policies, namely, information policy, job selectionpolicy, transfer policy, initiation policy and location policy, and we conducted a study onadapting these policies to RFID middleware systems.

• We developed the RFID Middleware Load Management System (RM-LMS). In particular, weproposed a new method to cluster the dependent boundary among RFID readers and ECSpecsinto ECSpecGroup for the integrity of job transfers.

• We conducted a series of empirical experiments to examine the performances of load balancingschemes when the RFID middleware was working at various workload states. A performancemodel was constructed to simulate the experimental environments.

• Our empirical study suggested that these load balancing schemes variously performed underdifferent workload statuses. Therefore, an adaptive load balancing strategy was finallyproposed, with which RM-LMS could be optimized by autonomously adapting the changingworkload states with dynamically executing the load balancing schemes.

The remainder of the paper is organized as follows. Background knowledge is described inSection 2. Section 3 describes five basic load balancing polices. In Section 4, the basic policies areexplored in more detail with RFID middleware systems, based on which an RM-LMS is proposedand implemented to perform those load balancing policies. In Section 5, in order to achieve anoptimized use of RM-LMS, a series of experiments are performed to examine the performances of agroup of load balancing schemes at different workload levels. A performance model is constructedto simulate the experimental environment. As a result, an adaptive load balancing strategy isderived from the experimental data, with which RM-LMS can autonomously adapt the changingworkload state by dynamically executing the load balancing schemes. Section 6 describes relatedwork. Finally, Section 7 gives the conclusion and our future work.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 487

2. BACKGROUND

In this section, we present the background knowledge about ALE compliant RFID middlewaresystems and the existing load balancing techniques.

2.1. RFID middleware system

The Electronic Product Code (EPC) Network [7] has become a de facto standard in RFID business,and it allows individual products manufactured by different vendors to be seamlessly integratedfor collaboration over the Internet. Figure 1 depicts a typical RFID system in accordance with theEPC Network standard. RFID tags that are attached to objects identify themselves when detectinga signal from an RFID reader by emitting a radio-frequency transmission. RFID middlewareperforms the filtering, aggregation and counting of tag data, reducing the volume of data priorto sending it to RFID applications. RFID applications perform business transactions by using thecollected data from an RFID middleware.

The ALE interface proposed by EPCglobal Inc. [8] is a standardized specification in the EPCnetwork, and it specifies the core functions of RFID middleware such as filtering, aggregation,counting and transmission of tag data. Figure 2 illustrates the role of the ALE interface within anRFID system. RFID applications request an RFID middleware to process jobs and return resultsthrough the ALE interface. The event cycle denotes a period during which tag data is processedby an RFID middleware, and the results are then reported to the RFID applications. The EventCycle Specification (ECSpec) specifies what procedures should be performed in each event cycle.ECReport generates the report for the RFID middleware in response to an ECSpec.

Figure 3 shows the entity relationship diagram of an RFID system. One logical reader can beused to represent one or more physical readers that are treated as one group. RFID middleware

App.

App.App.

App.

EPCIS

RFID Middleware

Reader Reader ReaderReaderReader

TagTag

TagTag

TagTag

Tag

BusinessTransactions

Figure 1. The typical structure of an RFID system.

ECSpecEvent Cycle Reports

Collection& Filtering(RFID Middleware)

ALE Interface

ECReport

EPC(s)

Event Cycle Specifications

RFID Application

Reader

Figure 2. The role of ALE interface within an RFID system.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

488 H. S. CHAE ET AL.

ECSpec

LogicalReader

PhysicalReader

ECReport

RFID Application

Mapping

nn

n

1

11

n

n

n

n

Figure 3. The entity relationship diagram in an RFID system.

maintains the mapping information between a logical reader and its associated physical readers.Given the logical readers in an ECSpec, RFID middleware communicates with the correspondingphysical readers using this mapping information. RFID middleware can continuously producemultiple ECReports in response to the request of ECSpec, where an RFID application specifies itsassociated EPCs in a number of ECSpecs and collects the information of interest from multipleECReports.

When requesting EPC information, an RFID application specifies the EPCs of interest viaECSpec. The main fields defined in an ECSpec are as follows:

• logicalReaders: This field specifies a set of logical readers from which RFID tag data iscollected. An RFID application can use the EPC information from some or all of the readersthat are connected to the middlewares according to the specification of logicalReaders.

• boundarySpec: This field specifies how often the data collection and reports take place.The subfield duration determines the duration of an event cycle. The subfield repeatPerioddetermines the timing gap between two adjoining tags within an event cycle.

• reportSpecs: This field specifies the types of filters used to exclude EPCs that are irrelevant tothe RFID applications. The set attribute of the subfield reportSet being equal to ADDITIONmeans only newly collected RFID tags are reported to an RFID application; when the valueis DELETION, the RFID tags that have just been deleted from the current cycle are reported.Likewise, in the case of CURRENT, the RFID tags collected in the current cycle are reportedwithout considering other event cycles. In addition, it is possible to extract the RFID tag datain accordance with a specific pattern by using the subfield includePattern.

Tag data collected from RFID middlewares can be described as EPCSpecs in an XML format.Figure 4 shows an example of ECSpec that filters the RFID tag data with the conditions that thevendor code is 20 and the product code has a serial number in the range of 5000–9999.

2.2. Load balancing techniques for RFID middleware systems

So far, a number of studies have been conducted on load balancing, most of which have addressedmeeting system scalability [9–12]. According to the methods of making load balancing decisions,load balancing techniques can be broadly characterized as dynamic and static. The dynamic loadbalancing techniques continuously make load balancing decisions utilizing workload informationat each node during this node’s operation; on the other hand, the static load balancing techniquesdetermine the load balancing strategy for a system regardless of the system’s current workloadstate [13]. Static load balancing is simple and effective when the workload can be sufficientlywell-characterized beforehand, but it fails to adjust to the fluctuations of the system load. Incontrast, dynamic load balancing attempts to dynamically balance the system load as the jobsarrive. Dynamic load balancing has received increasing attention from the research communitybecause of its generality and ability to respond to a temporary system unbalanced state. Theadaptive load balancing method is a special type of dynamic load balancing technique because itdynamically chooses and applies an appropriate load balancing strategy to adapt to the changing

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 489

<ale:ECSpec xmlns:ale="urn:epcglobal:ale:xsd:1"

<logicalReaders> <logicalReader>dock_1a</logicalReader> ...

</logicalReaders>

<boundarySpec> <repeatPeriod unit="MS">20000</repeatPeriod> <duration unit="MS">3000</duration> ...

</boundarySpec>

<reportSpecs> <reportSpec reportName="report3"> <reportSet set="CURRENT"/> <filterSpec> <includePatterns> <includePattern>urn:epc:pat:gid-96:20.*.[5000-9999]</includePattern> </includePatterns> </filterSpec> <output includeCount="true"/> </reportSpec> ...

</reportSpecs>

... </ale:ECSpec>

Figure 4. An example of ECSpec.

RFID M/W

RFID M/W

Reader

Reader

Reader

Reader

Reader

Reader…

RFID M/W

Reader

Reader

Reader

Load Balancer

Workload Info.

L. B. Instructions

RFID M/W

Reader

Reader

Reader

Workload Info.

L. B. Instructions

Workload Info.

L. B. Instructions

Workload Info.

L. B. Instructions

Figure 5. The overall architecture of the proposed RFID middleware system.

states of system workload. The adaptive dynamic load balancing technology is preferable becausethe workload generally shows a large degree of variance in RFID middleware systems.

Generally, the load balancing techniques allow an agent called load balancer to alter currentload balancing decisions according to the changes in the system’s global states and environmentalinformation [10, 14–16]. According to the location of the load balancer, load balancing techniquescan be classified as centralized and decentralized. The centralized load balancing technique gathersglobal load information and makes load balancing decisions at a single load balancer, whereasmultiple load balancers are utilized in the decentralized load balancing technique. The decentral-ized load balancing technique is more effective in minimizing the performance losses caused bybottleneck problems when there are many nodes in the cluster. However, in case where there arejust a few nodes in a cluster and the cost of the job transfer is low, such as for RFID middlewaresystems, it is preferred to use the centralized load balancing technique to facilitate the accuratemonitoring of the workload over all nodes, based on which more effective decisions for loadbalancing can be made [17, 18].

For giving a clear perception of our proposed load balancing approach, Figure 5 shows theoverall architecture of an RFID middleware system where several RFID middleware nodes run incollaboration with an implementation of the centralized load balancing technique.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

490 H. S. CHAE ET AL.

All the RFID middlewares, each of which hold the connections of a number of RFID readers,are connected to a central load balancer, as is shown in Figure 5. The load balancer monitors theglobal workload states of the RFID middlewares and then executes the load balancing schemes thatrelate to different types of the five basic load balancing policies. Once the process of load balancingstarts, a set of RFID readers with their associated tag data are migrated from an overloaded RFIDmiddleware to the underloaded ones.

3. BASIC LOAD BALANCING POLICIES

Load balancing techniques involve five basic policies: information policy, job selection policy, loca-tion policy, transfer policy and initiation policy. The basic policies have covered the main technicalconcerns of load balancing for distributed systems [7, 10, 13, 15, 16, 19]. They are, respectively,illustrated as follows.

• Information policy: Information policy specifies the amount of workload, the job informationmade available to a load balancer and the way the information is gathered. Workload canbe affected by various factors depending on the performance of the node and the amount ofjobs to be processed at a specific point in time, such as CPU usage rate, length of the job-waiting queue, request occurrences per second, throughput and response time. Each of thesefactors can be considered as a workload measure for the computing node. Commonly usedmethods of gathering information include broadcasting, multicasting, polling, software agentand exchanging data between adjacent nodes [14, 20]. According to the employed informationgathering method, the information policy can be classified into three types: demand-drivenpolicy, periodic policy and state-change policy.The demand-driven policy is used in the decentralized load balancing technique. A node

gathers the workload information from other nodes only when its workload exceeds or fallsbelow a threshold. Each node has a load balancer to monitor the local workload state andmake load balancing decisions.The periodic policy gathers information in a regular periodic way. It can be used in either

the decentralized or centralized load balancing technique. Under a centralized environment, asingle load balancer periodically gathers the workload information; whereas under a decen-tralized environment, the workload information is periodically gathered by a load balancerthat is located on the node.The state-change policy transmits the workload information of a node when the node’s

workload state changes by a certain degree. This policy can also be used in both the decen-tralized and the centralized load balancing techniques. In the decentralized environment, loadinformation is transmitted to other nodes, whereas it is transmitted to a single load balancerin the centralized environment.

• Transfer policy: The transfer policy determines whether or not a node is in an appropriatecondition to participate in a job transfer. It serves to establish a criterion to determine whetheror not a node is sender or receiver. A sender node is an overloaded node that is ready totransfer a job to underloaded nodes, whereas a receiver node is an underloaded node thatreceives jobs from the overloaded nodes. There are two types of transfer policies: the thresholdpolicy and the relative policy.The threshold policy measures the workload distinction of a node with some specific

threshold value to determine the role for the node. One threshold is necessary to denote twoseparated states: overloaded and underloaded. Two thresholds are necessary to denote threeseparated states: overloaded, normal and underloaded.The relative policy measures the relative distinction of the workloads of two nodes to

determine the roles of those nodes, based on which a node can be a sender or a receiver. Forexample, a node may be a receiver if its workload is lower than that of some other node at aspecific degree of variance.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 491

• Initiation policy: The initiation policy specifies the node that should initiate the process ofload balancing. Either a sender node or a receiver node can be an initiator, or both. There arefour types of initiation policies: sender-initiated policy, receiver-initiated policy, symmetricallyinitiated policy and adaptive symmetrically (ad-sym) initiated policy.The sender-initiated policy initiates load balancing from a sender node that needs to send

its jobs to an underloaded node, whereas the receiver-initiated policy initiates load balancingfrom a receiver node that can receive additional jobs from other nodes.Under the symmetrically initiated policy, load balancing could be initiated from either a

sender node or a receiver node. This policy may degrade the system performance due totoo many unnecessary load balancing trials in a situation where the system overall workloadremains either high or low.Under the ad-sym-initiated policy, load balancing is initiated only when the sender and

receiver nodes have both been identified. This policy can prevent unnecessary load balancingtrials by avoiding the situation where a sender node is identified, but there are no candidatereceiver nodes. Therefore, the ad-sym-initiated policy clearly has an improvement over thesymmetrically initiated policy.

• Job selection policy: The job selection policy selects the job to be transferred from a sendernode. If the selection policy fails to find a suitable job to transfer, then the node is no longerconsidered a sender. There are two types of job selection policies: non-preemptive policy andpreemptive policy.Under the non-preemptive policy, the jobs are placed in a waiting queue [9], which generally

works in a First-In First-Out (FIFO) way. The latest job or the foremost job placed in thewaiting queue will be transferred first. Under the preemptive policy, weight or cost of jobtransfer is a criterion for job selection. Any job, including the running ones, can be transferredunder a preemptive policy.

• Location policy: Once a node is selected as the initiator (sender or receiver) of load balancingby the initiation policy, the location policy is then used to find an appropriate partner forthis node [11, 19]. There are three types of location policies: least-loaded/most-loaded policy,random policy and adjacent policy.The least-loaded policy works with the sender-initiated policy, which selects the node with

the smallest workload to receive a job. Conversely, the most-loaded policy works with thereceiver-initiated policy to select the node with the largest workload to send out a job. For therandom policy, a partner node is selected randomly. For the adjacent policy, a partner nodeis selected from its adjacent nodes within the cluster.

4. THE PROPOSED RM-LMS

In this section, we propose a centralized load balancing approach for RFID middleware systems,and we present the RM-LMS. RM-LMS is used for executing the load balancing schemes thatare related to different types of load balancing policies. First, we explore the five basic loadbalancing policies in more detail to determine the applicable policies for RFID middlewaresystems. We then propose a new method to the cluster-dependent boundary among RFID readersand ECSpecs into ECSpecGroup. Finally, we provide an illustration of the RM-LMS archi-tecture. Note that in this paper, the decentralized load balancing technique is not considered,so neither the comparison nor the argument on two different implementation techniques is ofinterest.

4.1. Load balancing policies for RFID middleware systems

This subsection explains how to adapt the basic load balancing policies to RFID middlewaresystems by using the centralized load balancing technique. We particularly propose a new wayof clustering each dependent boundary among RFID readers and ECSpecs into ECSpecGroup forensuring the integrity of job transfers in RFID middleware systems.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

492 H. S. CHAE ET AL.

es1

lr1

pr1 pr2

ECSpec

LR

PR

es2

lr2 lr3

es3

lr4

es4 es5

lr5

pr8 pr9

lr6

pr10pr3 pr4 pr5 pr7pr6

eg1ECSpecGroup eg2 eg3

Figure 6. An example of ECSpecGroup.

4.1.1. Job selection policy. The majority of RFID middleware workloads results from gatheringand filtering RFID tag information. The in-processing tags are clearly the main reason for incurringthe RFID middleware workload. ECSpec issued by an RFID application defines a set of readers andtags that are of interest to the RFID application. Therefore, ECSpec can be treated as a basic jobunit in RFID middleware systems. However, an ECSpec is generally associated with many RFIDreaders. It is very difficult for ECSpecs to work properly as intended when many of them sharethe same readers. In order to resolve this problem, the associated ECSpecs should be consistentlyconsidered by setting logical readers and physical readers as job units. We introduce a new term,ECSpecGroup, to conveniently describe a job unit.

Figure 6 presents an example of ECSpecGroup that clusters the associated ECSpecs by consid-ering the dependencies between ECSpecs and RFID readers for preserving the integrity of jobtransfers. The ECSpecGroup can be determined by mapping logical readers (LR) that are managedby ECSpecs and physical readers (PR) that are physically connected to an RFID middleware. Asshown in Figure 6, five ECSpecs (es1 to es5) are grouped into three ECSpecGroups (eg1 to eg3),and they are associated with 10 physical RFID readers (pr1 to pr10). Six logical RFID readers(lr1 to lr6) are created between the ECSpecs and the physical readers for mapping the dependencyrelations.

Figure 6 shows that the logical reader lr1 is shared by the ECSpecs es1 and es2, and thephysical reader pr6 is shared by the logical readers, lr3 and lr4. We can see that five ECSpecsare clustered into three ECSpecGroups. Considering the dependencies between ECSpecs and thereaders, ECSpecGroup is an appropriate candidate of a job unit of transfer. The workload ofECSpecGroup is measured via the number of the underlying ECSpecs and via the number ofreceived tag data per second.

The size of a job is used in preemptive job selection policy as a criterion according to thepreemptive schedule discipline of ECSpecs. Note that the system workload state may becomeover-fluctuated in RFID middleware systems; therefore, we classify job size into three levels:maximal size, middle size and minimal size. All the three types of jobs could be used for RFIDmiddleware job transfer.

4.1.2. Information policy. RFID middleware system is data-centric, where guaranteeing the time-liness and the accuracy of RFID data is the major concern. Therefore, RFID middleware systemsgenerally give more weight to the rapid response than to the efficient management of middle-wares. The periodic policy and the state-change policy, which are suitable for the centralized loadbalancing technique, are applicable to RFID middleware systems. Under the periodic policy, anRFID middleware periodically sends its workload information to a load balancer. While understate-change policy, an RFID middleware sends the workload information to a load balancer onlywhen the local workload state is changed.

Table I specifies the fundamental workload factors of RFID middleware systems, where thenode performance and the job workload are separately considered. The average report time and theaverage CPU usage rate are used to measure the performance of a node where an RFID middleware

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 493

Table I. Workload factors of RFID middleware systems.

Workload information Contents

RFID middleware Average Report TimeAverage CPU usage Rate

ECSpecGroup Number of in-processing ECSpecsNumber of tags received from RFID readers

Table II. Evaluation criteria along with 2-threshold transfer policy.

Workload state Evaluation criterion

Underloaded workload < Lower thresholdNormal Lower threshold < workload < Upper thresholdOverloaded workload > Upper threshold

is located, whereas the number of ECSpecs and the number of tags received per second are usedto measure the workload of the ECSpecGroup.

4.1.3. Transfer policy. The transfer policy determines whether or not an RFID middleware isappropriate for participating in the job transfer according to the workload information that isgathered by the information policy. In the case of 1-threshold policy, the workload states areclassified into two types: the underloaded level and the overloaded level. In the case of the2-threshold policy, the workload state has one of the following three types: underloaded level,normal level and overloaded level.

Table II shows the evaluation criteria and the 2-threshold policy, where an overloaded node couldbe a candidate for sender and an underloaded node could be a candidate for receiver. The thresholdvalues may vary because the performances of the nodes where RFID middlewares are located andthe practical application environment may be different. In our study, in order to obtain accuratethreshold values, we performed simulation experiments based on the proposed performance model,which is described in detail in Section 5.1.

4.1.4. Initiation policy. The initiation policy is used to determine which RFID middleware nodeshould initiate load balancing with the transfer policy. Three types of initiation policies are appli-cable to RFID middleware systems depending on their workload states: sender-initiated policy,receiver-initiated policy and ad-sym policy.

Under the sender-initiated policy, load balancing is initiated when an overloaded RFID middle-ware is identified as a sender. Under the receiver-initiated policy, load balancing is initiated whenan underloaded RFID middleware is identified as a receiver. Under ad-sym policy, load balancingis initiated when a sender and a receiver RFID middlewares are both identified. The symmetricallyinitiated policy is not considered due to too many unnecessary trials of load balancing.

4.1.5. Location policy. The location policy selects an appropriate partner for a load balancinginitiator that is determined by the initiation policy. The least-loaded/most-loaded location policiesare applicable to RFID middleware systems according to the initiation policy.

The least-loaded policy is used with the sender-initiated policy to select an RFID middlewarewith the smallest workload to receive a job. Conversely, the most-loaded policy is used with thereceiver-initiated policy to select an RFID middleware with the largest workload to send out a job.In the case of the ad-sym policy, the location policy behaves as in the sender-initiated policy, thatis, only the least-loaded policy is used to find a partner for the sender node, and the most-loadedpolicy is not considered for reducing unnecessary computation cost.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

494 H. S. CHAE ET AL.

Middleware1

ECSpec2ECSpec1 ECSpec3

R1 R2 R3 R4

Middleware2

ECSpec5

R6 R7

ECSpec4

R5

Middleware1

ECSpec2ECSpec1 ECSpec3

R1

(a)

(b) R2 R3 R4

ECSpec4

R5

Middleware2

ECSpec5

R6 R7

Figure 7. RFID readers’ migration: (a) Before and (b) after.

4.2. Job transfer based on reader dependencies

The job transfer takes place subsequently once the process of load balancing has been initiated.As previously mentioned, workload in RFID middleware systems is characterized by ECSpec.ECSpecs are transferred from an overloaded middleware to an underloaded middleware. In addition,job transfer can take place without considering the associated RFID applications since RFIDapplication is not necessarily dependent on a specific RFID middleware.

In contrast to the independence of RFID applications, ECSpecs are dependent on RFID readers.As discussed in Section 2, each ECSpec specifies its associated logical readers from which itaccesses tag information. Since an RFID reader is generally connected to one RFID middleware, thereaders associated with an ECSpec altogether need to be also reallocated to another middleware.

Take Figure 7 as an example. The RFID system configuration in Figure 7 shows the deployedECSpecs and the relations of RFID readers to the ECSpecs. Assume that ECSpec3 has beenchosen to be moved to Middleware2, then the associated readers R4 and R5 should be moved toMiddleware2 as well.

The relationship between ECSpecs and RFID readers can also cause additional dependencybetween ECSpecs. For example, reader R5 is shared by two ECSpecs, ECSpec3 and ECSpec4,as is shown in Figure 7(a). Once ECSpec3 is chosen for transfer, ECSpec4 should also be movedto the same destination middleware since ECSpec4 is dependent on the reader R5 that is alsoused by ECSpec3. That is, instead of simply moving one ECSpec, we should move all the otherECSpecs that share readers with that ECSpec. Figure 7(b) shows the configuration after ECSpec4and ECSpec3 have been moved to Middlewar2. Figure 7(b) also shows that the associated readersR4 and R5 with the moved ECSpecs have been also reallocated to Middleware2. The migration ofECSpec and the related RFID readers can be practically realized by ALE, which currently supportsHTTP, TCP and FILE Notification URI for job transfer. Owing to space limitation, the detaileddescription of the migration of ECSpecs and RFID readers is intentionally omitted.

4.3. The design and implementation of RM-LMS

Based on the five load balancing policies, a centralized load balancing system, called RM-LMS, isproposed and implemented. Figure 8 is the deployment diagram of RM-LMS that shows how anRFID middleware system works in collaboration with the centralized load balancing technique.

As seen in Figure 8, the node Load Management Server acts as a central load balancer. RFIDM/W Node is a node where an RFID middleware is located. Each RFID M/W Node comprises anested node Load Management Agent and an RFID middleware.

The Load Management Agent is comprised of three major components: WorkloadCollection,TransmissionComp and WorkloadReallocation. The components WorkloadCollection and Trans-missionComp cooperate to complete the information policy. The component WorkloadCollection isused to collect workload data from the RFID middleware by implementing the interface IMW. IMW

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 495

Load Management Agent

RFID M/W Node

Load Management Server

WorkloadMonitor

LBManagerILBM

IWLM

IMW

ILBcomponent

WorkloadCollection

TransmissionComp

IWLC

WorkloadReallocation

ITC

RFID M/W

Figure 8. The deployment diagram of RM-LMS.

provides a set of operations to collect information about adding or deleting ECSpecs and RFIDreaders. IMW also manages other related information for RFID middleware. The component Trans-missionComp requests workload information from the component WorkloadCollection through theinterface IWLC. Workload information is sent to Load Management Server in a specific manneras defined by the information policy. WorkloadReallocation receives load balancing instructionsfrom the Load Management Server and it then notifies RFID middlewares through the interfaceILBComponent.

The Load Management Server is used to monitor the global workload state of an RFID middle-ware system and to execute load balancing schemes, which is comprised of various types of thefive load balancing policies. The Load Management Server is composed of two major components:WorloadMonitor and LBManager.WorkloadMonitor is used to gather workload data from the RFIDmiddleware nodes through the interface ITC. Four load balancing policies, job selection policy,initiation policy, transfer policy and location policy, are implemented in LBManager. LBManagerreceives the global workload information from WorkloadMonitor through the interface IWLM,and it then transmits the instructions according to a specific load balancing scheme. The LoadManagement Server allows the users to manually establish a load balancing scheme by selectinga specific load balancing policy and by providing the corresponding parameter values.

In summary, in RM-LMS, we have implemented periodic and state-change information policies;1-threshold and 2-threshold transfer polices; sender-initiated, receiver-initiated and ad-sym-initiatedinitiation policies; minimal size, maximal size and middle size selection polices; least-loaded andmost-loaded location polices. Note that there are constraints on different types of policies. Forexample, the sender-initiated initiation policy should cooperate with the least-loaded location policybecause an overloaded middleware can only transfer an excessive workload to those underloadedmiddlewares.

Figure 9 is a screen-shot of the Load Management Server. The left part of Figure 9 showsthat 4 RFID middlewares are registered to the load balancer, and 10 ECSpecGroups (denotedby ‘JobGoup’ in Figure 9), including a total of 111 ECSpecs, are processed by these RFIDmiddlewares. The number of running ECSpecs in each ECSpecGroup and the number of receivedtags are managed by the Load Management Server. Job transfer is also executed by the LoadManagement Server. The right part of Figure 9 shows the average report time of each RFIDmiddleware.

Figure 10 is a screen-shot of a Load Management Agent. Each Load Management Agent runs ona node where one RFID middleware is located. As shown in Figure 10, the number of ECSpecs,the number of tags received per second and the average report time of local RFID middleware are

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

496 H. S. CHAE ET AL.

Figure 9. A screen-shot of the Load Management Server.

35 50

9999

1

Figure 10. A screen shot of Load Management Agent.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 497

managed by the Load Management Agent. The average CPU usage rate can also be managed ifnecessary. In order to register into the Load Management Server, the IP address and port of theLoad Management Server, the cluster ID and the threshold values for the transfer policy shouldbe provided by the Load Balancing Agent. The threshold values should be provided in advancewhen the threshold transfer policy is applied to a load balancing scheme. RM-LMS allows eachRFID middleware to hold its own thresholds. The thresholds should be determined before theRFID middleware is registered into the Load Management Server.

5. ADAPTIVE LOAD BALANCING FOR RFID MIDDLEWARE SYSTEMS

An appropriate load balancing strategy is essential to adaptively exploit the available powerof an RFID middleware system to optimize RM-LMS. In this section, based on the proposedRM-LMS and a performance model, a series of empirical experiments are carried out to examinethe performances of a group of load balancing schemes. An adaptive load balancing strategyis derived from the experimental data, with which RM-LMS could autonomously adapt to thechanging workload state by dynamically executing the load balancing schemes.

5.1. The performance model for RFID middleware systems

In order to obtain accurate experimental results, the system workload should represent the contextin which an RFID middleware system is actually deployed. This subsection describes an RFIDmiddleware workload model to empirically evaluate the performances of various load balancingschemes.

5.1.1. Performance model definition. The workload of a computing node in the distributed envi-ronment is often measured via the amount of jobs waiting at that node. In RFID middlewaresystems, ECSpecs and RFID tags make up the majority of the workloads. Suppose that allnodes work under a stable network environment; the workload can be figured out by two majormeasurements:

• The number of ECSpecs (NoE): The configurations of an RFID reader, such as tag datasettings, reporting period and data filtering method, are all defined in ECSpec. The workloadincurred by the preemptive computations of ECSpec significantly affects the performance ofRFID middleware. Generally, greater NoE will lead to a larger workload amount on RFIDmiddleware.

• The number of tags received per second (Tags/s): An RFID middleware has to filter thetag data according to filter type and it has to notify RFID applications. The workloadincurred by the collected tags also has a significant effect on the performance of an RFIDmiddleware.

In an RFID middleware system, the average report time and average CPU usage rate can beeasily obtained. They intuitively reflect the performance of an RFID middleware node. Hence,they can be used as performance criteria for an RFID middleware node:

• The average report time (ART): the required time for an RFID middleware to generate reportsis defined in the field repeatPeriod in ECSpec. Business failure or processing delay occurs inRFID middleware systems if the specific report due-time cannot be met in a real-time process.A number of studies have used ART as a criterion for performance evaluation.

• The average CPU usage rate (ACR): CPU usage rate is widely used as a performance measure-ment for servers or middleware nodes; hence, we use it in our study as well.

Figure 11 shows the architecture of the proposed performance model for an RFID middlewaresystem. The performance model is constructed with one RFID middleware, three RFID applicationsand four virtual readers. The RFID middleware runs on a computing node with an Intel Pentium43.02GHz processor, 2GB of memory and Windows Server 2003 OS.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

498 H. S. CHAE ET AL.

Figure 11. The architecture of the performance model.

Figure 12. The experimental results of the performance model: (a) Average reporttime and (b) average CPU usage rate.

5.1.2. Discussion on the performance model. Experiments are conducted to explore the relevancebetween job workload measurements and node performance criteria based on the performancemodel. The configuration of the RFID middleware system is defined as follows:

• ECSpec: The RFID middleware receives ECSpecs from RFID applications once every 20 s.The field reportSet of ECSpec is CURRENT. The EPC filtering pattern is utilized and thefiltering rate is 50%. This configuration is exemplified in ALE Specification 1.0 [6].

• RFID application: RFID applications send ECSpecs to and receive ECReport from an RFIDmiddleware. The experiment is conducted with a group of various NoE: 1, 10, 30, 50 and 70.

• Virtual readers and tags: Virtual readers are used to collect RFID tag data for the RFIDmiddleware system. Tag data format is compliant with the standard tag format GID-96(96 bits tag) [6]. In this experiment, the rate of collecting RFID tags by a reader followsa Poisson distribution whose mean value is set to be 1, 50, 100, 150, 200, 250 and 330,respectively.

Figure 12 shows the experimental results of average report time (ART) and average CPU usagerate (ACR) against NoE and Tags/s derived from the performance model. As seen in Figure 12(a),when Tags/s and NoE are small, they both have a trivial effect on ART. However, when the valuesof NoE and Tags/s increase, the value of ART grows steeply. Figure 12(b) shows that ACR remains

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 499

Table III. Regression analysis results.

Regression model R2 Adj.R2 F

ART=−51.987+2.008ECSpec+0.456tag 0.830 0.827 334.313ACR=11.568+0.387ECSpec+10.974lntag 0.915 0.914 741.746

VirtualReader

Load Balancer

RFIDMiddleware

Poisson mean tags/sec 40 25 10 540 25 10 540 25 10 540 25 10 5

Figure 13. Deployment of the simulation environment.

high when either NoE or Tags/s is in a high level. It can be observed that a high ART or ACRvalue is easily obtained by a small value of NoE, but it is not the case for Tags/s. Thus, it can beinferred that NoE is more sensitive than Tags/s to the performance of RFID middleware.

Based on the above experimental results, a regression analysis is performed for ART and ACRto explore their relevance to NoE and Tags/s. Data collection is repeated five times to deduce theregression models. Table III shows the regression analysis results.

As shown in Table III, as for ART, the coefficient of determination (R2) is 0.830, the adjustedcoefficient of determination (Adj. R2) is 0.827 and the F value (F) is 334.313. As for ACR, R2 is0.915, Adj. R2 is 0.914 and F is 741.746. These results show very high credibility in statistics. Inthe t test, Sig.=0.000 suggests that the regression coefficients are statically significant. Thus, itcan be concluded that the workload measurements, NoE and Tags/s, have strong correlation withthe performance criteria ART and ACR.

5.2. An adaptive load management strategy for RFID middleware systems

Each of the five basic load balancing policies is classified into several different types as previouslyillustrated, but not all of them offer an optimum performance at all workload levels. In order tooptimize RM-LMS use, we have performed a series of empirical experiments for a group of loadbalancing schemes that relate to different types of the five policies to examine their performancesat different workload states. The experiments are performed at high, medium and low workloadlevels. According to the observations from the experiments, an adaptive load balancing strategy isderived, with which RM-LMS realizes a high-performance potential of RFID middleware systems.

5.2.1. Experimental environment. Figure 13 shows the deployment of the simulation environmentthat is built according to the RFID middleware performance model. This simulation environmentcomprises one load balancer, four RFID middlewares and 16 virtual readers. At the beginninga group of four readers are assigned to each middleware. Note that all the nodes are configuredwith the performance model. The network system among those nodes is a standard 100Mbps fastEthernet. The rate that RFID tags are collected by a virtual reader follows a Poisson distribution.As shown in Figure 13, each virtual reader is assigned a Poisson mean Tags/s value.

NoE has a strong correlation with Tags/s on ART and ACR as was mentioned in Section 5.1.In addition, NoE is more effective than Tags/s for representing different workload states. Forsimplicity sake, NoE is used as the criterion for distinguishing different workload levels in thissimulation experiment. Table IV shows the initial configurations of RFID middlewares at different

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

500 H. S. CHAE ET AL.

Table IV. The initial configurations of RFID middlewares at different workload levels.

M/W 1 M/W 2 M/W 3 M/W 4

Workload levels Avg. NoE NoE NoE NoE NoE

High 45 60 55 50 15Medium 30 55 35 20 10Low 15 40 10 5 5

Table V. Detailed scheme settings for load balancing polices.

Transfer policyInformation Initiation Selection Location

Scheme policy Load info t1 t2 policy policy policy

1 Periodic ART 50 × Sender Minimal size Least-loaded2 Periodic ART 50 × Sender Middle size Least-loaded3 Periodic ART 50 × Sender Maximal size Least-loaded4 Periodic ART 35 × Receiver Minimal size Most-loaded5 Periodic ART 35 × Receiver Middle size Most-loaded6 Periodic ART 35 × Receiver Maximal size Most-loaded7 Periodic ART 35 50 Ad-sym Minimal size Least-loaded8 Periodic ART 35 50 Ad-sym Middle size Least-loaded9 Periodic ART 35 50 Ad-sym Maximal size Least-loaded10 State-change ART 50 × Sender Minimal size Least-loaded11 State-change ART 50 × Sender Middle size Least-loaded12 State-change ART 50 × Sender Maximal size Least-loaded13 State-change ART 35 × Receiver Minimal size Most-loaded14 State-change ART 35 × Receiver Middle size Most-loaded15 State-change ART 35 × Receiver Maximal size Most-loaded16 State-change ART 35 50 Ad-sym Minimal size Least-loaded17 State-change ART 35 50 Ad-sym Middle size Least-loaded18 State-change ART 35 50 Ad-sym Maximal size Least-loaded

workload levels. Three average NoE values 45, 30 and 15 are used to represent three workloadlevels: high, medium and low, respectively.

Table V shows the details of 18 load balancing schemes that are combined by different typesof five basic load balancing policies. In the empirical experiments, all these schemes are executedby RM-LMS at various workload levels. The threshold values are obtained through the simulationexperiments.

As it can be seen from Tables IV and V, we employed two workload measures for variouspurposes. In the proposed adaptive load balancing approach, an RFIDmiddleware can have differentload balancing schemes depending on its workload state; hence, we select the number of ECSpecs(NoE) as the measurement for distinguishing between various workload states. In addition, in theprocess of job transfer, an RFID middleware can be a receiver, a sender or both depending onthe specific load balancing scheme used; hence, the average report time (ART) is used as themeasurement to determine whether or not it is appropriate for a node to participate in the loadbalancing process.

For the periodic information policy, an RFID middleware sends its workload data to the loadbalancer once every 3 s, whereas the load balancer makes a load balancing decision once every10 s. The 2-threshold policy and the 1-threshold policy are both applied for the transfer policy.The average report time (ART) is used as the measurement to distinguish overloaded, normaland underloaded states for the RFID middleware nodes. Considering the initiation policy, thesender-initiated, receiver-initiated, and ad-sym policies are used. Considering the location policy,

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 501

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 180

10

20

30

40

50

60

70

80

90

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 180

5

10

15

20

25

30

35

40

45

50

55

Scheme Scheme

Ave

rage

rep

ort t

ime

(mse

c)

Num

ber

of tr

ansf

ers

(a) (b)

Sender Receiver

PeriodicAd-sym Sender Receiver Ad-sym

State-changeSender Receiver

PeriodicAd-sym Sender Receiver Ad-sym

State-change

Figure 14. Experimental results for each scheme at high workload level: (a) Average reporttime and (b) number of transfers.

the least-loaded policy works with the sender-initiated initiation policy, and the most-loaded policyworks with the receiver-initiated and the ad-sym-initiated policies. The duration of each simulationexperiment is 20min.

5.2.2. Experimental results. The observations from the experimental results at each workload levelare summarized as follows.

• High workload level: Figure 14 shows the experimental results for each load balancing schemeat the high workload level. Figure 14(a) shows the average report time and Figure 14(b) showsthe number of job transfers produced by each load balancing scheme.In terms of average report time, the periodic information policy outperforms the state-change

information policy. The state-change information policy only distinguishes three workloadstates for each node, but it does not digitize the workload data; therefore, it does not performas well as the periodic information policy. In terms of the number of transfers, the job-transfercost becomes the lowest when the schemes that combine the periodic information policy andthe receiver-initiated policy are used.Considering the number of job transfers, the schemes numbered 13, 14, 16, 17 and 18 are

relatively good. However, they do not offer superior performances in terms of the averagereport time. Most of the nodes are overloaded when the workload level is high; hence, thetask of job transfer takes place very frequently under the sender-initiated policy, which inturn increases the overhead workload of the RFID middleware systems. On the other hand,under the receiver-initiated policy, an underloaded node can easily find an overloaded nodefrom which to receive a job; hence, it offers superior performance in terms of the cost of jobtransfer.

• Medium workload level: Figure 15 shows the experimental results of each load balancingscheme with a medium workload level.The periodic policy outperforms the state-change policy in terms of the average report

time. In addition, under the ad-sym initiation policy, all the job selection policies showbetter performance with the periodic information policy. The state-change information policyoutperforms the periodic information policy in terms of the number of job transfers.The state-change information policy offers superior performance in the number of job

transfers, whereas it does not in average report time. Although a less frequent job transfer couldbe obtained with the state-change information policy, the period information policy providesmore accurate workload information to facilitate the selection of proper RFID middleware

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

502 H. S. CHAE ET AL.

0 1 2 3 4 5 6 7 8 9 11 13 15 170

10

20

30

40

50

60

0 1 2 3 4 5 6 7 8 90

2

4

6

8

10

12

14

16

18

10 12 14 16 18 11 13 15 1710 12 14 16 18

20Sender Receiver Ad-sym Sender Receiver Ad-sym

Periodic State-change

Sender Receiver Ad-sym Sender Receiver Ad-sym

Periodic State-change

Scheme

Ave

rage

rep

ort t

ime

(mse

c)

Num

ber

of tr

ansf

ers

(a) (b) Scheme

Figure 15. The experimental results of each scheme with a medium workload level: (a) Averagereport time and (b) number of transfers.

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 180

5

10

15

20

25

30

35

40

45Sender Receiver

Periodic

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 180

5

10

15

20

25

30

35

40

Scheme Scheme

Ave

rage

rep

ort t

ime

(mse

c)

Num

ber

of tr

ansf

ers

(a) (b)

Ad-sym Sender Receiver Ad-sym

State-changeSender Receiver

Periodic

Ad-sym Sender Receiver Ad-sym

State-change

Figure 16. The experimental results for each scheme at low workload level: (a) Averagereport time and (b) number of transfers.

nodes for load balancing. The periodic information policy offers better performance with thead-sym initiation policy because unnecessary trails of load balancing are reduced.

• Low workload level: Figure 16 shows the experimental results of each load balancing schemewith a low workload level.The periodic information policy shows superior performance in terms of average report

time, as well as at high and medium workload levels. The sender-initiated and the ad-sympolicies outperform the receiver-initiated policy under both the periodic and state-changeinformation policies. In terms of the number of job transfers, the sender-initiated and thead-sym polices show superior performance. The fact that most of the RFID middlewaresare underloaded would bring about many unnecessary trails of load balancing under thereceiver-initiated policy; hence, the receiver-initiated policy performs worse than the othertwo initiation policies with either the periodic or state-change information policies.As it can be seen, combining the periodic information policy with the sender-initiated or

with the ad-sym initiation policy shows superior performances in terms of both the averagereport time and the number of transfers. The likelihood that a sender can easily find a receiver

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 503

Table VI. An adaptive load balancing strategy for RFID middleware systems.

Informationpolicy Periodic State-change

Initiation policy Sender Receiver Ad-sym Sender Receiver Ad-sym

Job policy min mid max min mid max min mid max min mid max min mid max min mid max

Systemworkload Type ID 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

High Average reporttime

© © © © © ©Number oftransfers

© © © © © © © © ©

Medium Average reporttime

© © © © ©Number oftransfers

© © © © © © © © © ©

Low Average reporttime

© © © © © ©Number oftransfers

© © © © © © © © © © © ©

node is very high with a low workload level; hence, the sender-initiated and ad-sym policiesshow superior performances.

5.2.3. The adaptive load balancing strategy. The experimental results suggest that different typesof load balancing policies may perform differently at different workload levels. At the high workloadlevel, the receiver-initiated policy is prioritized for better performance since the probability fora receiver node to successfully request a job from an overloaded node is high. At the mediumworkload level, underloaded and overloaded RFID middlewares often appear simultaneously;hence, the ad-sym policy is prioritized. At the low workload level, the sender-initiated policy isprioritized, and the ad-sym policy shows superior performance with the middle size or maximalsize job selection policies. In addition, superior performance can be obtained by the periodicinformation policy at any workload level in comparison to the state-change information policy.However, this is not the case for the initiation policy.

As shown in Figures 14–16, load balancing schemes show a large degree of variance on averagereport time and the number of transfers. We found that in the situation that the average report timedoes not exceed 7% of the smallest value and that the number of job transfers does not exceed 4times the smallest value, a load balancing scheme has superior performance on RFID middlewaresystems. In order to identify the optimal load balancing schemes for RFID middleware systemsin an illustrative way, we subjectively used these two thresholds as criteria from the data shownin Figures 14–16. Note that the exact threshold values may vary depending on the specific RFIDmiddleware system under study.

Table VI shows an adaptive load balancing strategy that comprises a set of load balancingschemes prioritized at different workload levels. For example, load balancing schemes that arenumbered as 4, 5 and 6 meet both criteria average report time and number of transfers at the highworkload level; hence, these three schemes are prioritized at the high workload level. Likewise,schemes 7, 8 and 9 are prioritized at the medium workload level, and schemes 1, 2, 3, 8, 9 areprioritized at the low workload level.

We have performed a series of empirical experiments based on a typical performance modelthat guarantees the generalization of this load balancing strategy. However, our experiments areconducted based on only ALE specification compliant RFID middleware systems. More exper-iments other than using ALE specification compliant RFID middleware systems need to beconducted to validate the effectiveness of the proposed load balancing strategy.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

504 H. S. CHAE ET AL.

6. RELATED WORK

A number of studies have been performed on the load balancing techniques for distributed systemsover the past several years. Considering the scalability and the heterogeneity of grid computation,Kai Lu et al. [21] proposed a decentralized algorithm for scheduling jobs by taking into accountthe jobs’ time demands. Payli et al. [22] proposed an application level load balancing techniquefor concurrent job processing in the grid computing environment. Myint and Tun [20] proposed anagent-based approach to load balancing in a cluster of computers, where several different mobileagents were created following the required load balancing policies.

A few load balancing approaches have been concerned with RFID middleware systems. Donget al. [23] proposed a static approach that considers two different variants, the min–max costassignment and the min–max tag count assignment, for the job transfer policy. In [24], the authorsproposed a decentralized load balancing approach by creating a connection pool between RFIDmiddlewares and readers. A connection pool manager played the role of allocating tag data tomiddlewares from a connection pool. Both approaches utilized non-adaptive load balancing strate-gies; hence, they had difficulties in dealing with the wide fluctuation of workloads on RFIDmiddlewares. Moreover, addressing dependencies between jobs and computing nodes was notexplicitly represented in the aforementioned studies.

There have been several studies on performance analysis of load balancing techniques fordistributed systems, such as [9, 10, 21, 25, 26]. A study on load balancing algorithms by Eageret al. [25] suggested that the performances of different types of load balancing policies were relatedto the workload states. The studies presented in [9, 10] supposed that the thresholds of the length ofthe job-waiting queue were 2 and 1, respectively, job arrival rates obeyed the Poisson distributionand the jobs were processed following the non-preemptive scheduling discipline, FCFS.

Marei et al. [9] proposed a centralized load balancing approach for distributed systems, wherea non-preemptive scheduling discipline was used. Marei et al. study the sender-initiated and thead-symmetrically initiation policies at different workload levels. At the low workload level, boththe sender-initiated and the ad-symmetrically initiation policies showed superior performances thatwere similar to the results of our experiment. At the medium workload level, there were fewdifferences between the sender-initiated and the ad-sym initiation policies, and this is different fromour observation that the ad-sym policy outperformed the sender-initiated policy in performance.This was, maybe, caused by the use of different scheduling disciplines.

In addition, Krueger and Shivaratri [10] focused their study on the decentralized load balancingtechnique in evaluating the average response time with various cases: the receiver-initiated, sender-initiated, symmetrically and ad-symmetrically initiation policies at medium and high workloadlevels. At both the medium and high workload levels, the ad-sym policy showed superior perfor-mances. At the high workload level, the receiver-initiated and the ad-sym initiation policies alsoshowed superior performances. By contrast, we used the centralized load balancing techniquewith the preemptive job scheduling discipline. At the medium workload level, we had the sameresult with Krueger’s study, but at the high workload level, the receiver-initiated policy obviouslyoutperformed the ad-sym policy in performance.

7. CONCLUSION AND FUTURE WORK

An increasing demand for RFID middleware systems has revisited two traditional challenges suchas scalability and heterogeneity in distributed systems. In this study, the ALE specification isutilized to facilitate the heterogeneity of RFID middleware systems. The challenge of scalability isconcerned with load balancing. In RFID systems, RFID data, which can be noisy and temporallyor spatially obsolete due to its short lifespan, is often dynamically generated in large streams. Theissue of workload distribution within an RFID system can be effectively managed by adopting loadbalancing techniques that are typical of distributed systems. However, most existing load balancingtechniques focused on the homogeneous and non-preemptive local job scheduling discipline, and

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

AN ADAPTIVE LOAD BALANCING MANAGEMENT TECHNIQUE 505

the dependencies between jobs and computing nodes were rarely considered. Therefore, this paperproposed an adaptive load balancing technique for ALE-based RFID middleware systems withconsideration of five basic load balancing policies: job selection, information, transfer, initiationand location policies.

In this paper, five basic load balancing policies were explored to adapt the properties of RFIDmiddleware systems, based on which the RM-LMS was proposed for executing various loadbalancing schemes, which concerned different types of each load balancing policy. Specifically, anew way of clustering the dependence boundary among RFID readers and ECSpecs into ECSpec-Group was proposed for achieving integrity of job transfers in RFID middleware systems. Thena series of empirical experiments were performed to examine the performances of a group ofload balancing schemes with an RFID middleware system working at different workload states.A performance model was constructed on top of RM-LMS to simulate an experimental environ-ment. Finally, an adaptive load balancing strategy was derived from the experimental data withwhich RM-LMS could be optimized by autonomously adapting the changing workload states withdynamically executing the load balancing schemes.

In the near future, the performance model will be extended with RFID middleware systemsother than ALE compliant ones. In our future work, we plan to improve RM-LMS with morerealistic variants in the performance model.

ACKNOWLEDGEMENTS

This work was supported by the Korean Ministry of Education, Science and Technology Grant (TheRegional Core Research Program/Institute of Logistics Information Technology).

REFERENCES

1. Weinstein R. RFID: A technical overview and its application to the enterprise. IT Professional 2005; 7(3):27–33.2. Kim H. A study on the efficiency of RFID application in container terminal. PhD Thesis, Korea Maritime

University, South Korea, 2007.3. Park J, Kim S, Yoo W, Hong S. Designing real time and fault-tolerant middleware for automotive software.

Proceeding of SICE-ICASE International Joint Conference (SICE-ICASE 2006), Busan, South Korea, 2006;4409–4413.

4. Emmerich W. Software engineering and middleware: A roadmap. Proceedings of the Conference on the Futureof Software Engineering, Limerick, Ireland, 2000; 117–129.

5. Sheng QZ, Li X, Zeadally S. Enabling next-generation RFID applications: Solutions and challenges. Computer2008; 41(9):21–28.

6. EPCglobal Inc. The application level events (ALE) specification. Available at: http://www.epcglobalinc.org/standards/ale [1 November 2008].

7. EPCglobal Inc. The EPCglobal architecture framework. Available at: http://www.epcglobalinc.org/standards/architecture [1 November 2008].

8. EPCglobal Inc. Available at: http://www.epcglobalinc.com [1 November 2008].9. Al-Amri MS, Ahmed RE. New job selection and location policies for load-distributing algorithms. International

Journal of Network Management 2002; 12(3):165–178.10. Krueger P, Shivaratri NG. Adaptive location policies for global scheduling. IEEE Transactions on Software

Engineering 1994; 20(6):432–444.11. Corradi A, Leonardi L, Zambonelli F. Diffusive load balancing policies for dynamic applications. IEEE Parallel

and Distributed Technology 1999; l7(1):22–31.12. Lu K, Subrata R, Zomaya AY. Towards decentralized load balancing in a computational grid environment.

Proceedings of the First International Conference on Advances in Grid and Pervasive Computing, Taiwan, China,2006; 466–477.

13. Shivaratri NG, Krueger P, Singhal M. Load distributing for locally distributed systems. Computer 1992; 25(12):33–44.

14. Shah R, Veeravalli B, Misra M. On the design of adaptive and decentralized load balancing algorithms with loadestimation for computational grid environments. IEEE Transaction on Parallel and Distributed Systems 2007;18(12):1675–1686.

15. Kremien O, Kramer J, Magee J. Scalable, adaptive load sharing for distributed systems. IEEE Parallel andDistributed Technology 1993; 1(3):62–70.

16. Eager DL, Lazowska ED, Zahorjan J. Adaptive load sharing in homogeneous distributed systems. IEEETransactions on Software Engineering 1986; 12(5):662–675.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe

506 H. S. CHAE ET AL.

17. Theimer MM, Lantz KA. Finding idle machines in a workstation-based distributed system. IEEE Transactionson Software Engineering 1989; 15(11):1444–1458.

18. Zhu W, Steketee CF. An experimental study of load balancing on amoeba. Proceedings of the First AizuInternational Symposium on Parallel Algorithms/Architecture Synthesis, Fukushima, 1995; 220–226.

19. Lu C, Lau SM. An adaptive load balancing algorithm for heterogeneous distributed systems with multiple taskclasses. Proceedings of the 16th International Conference on Distributed Computing Systems (ICDCS 1996),1996; 629–636.

20. Myint CC, Tun KML. A framework of using mobile agent to achieve efficient load balancing in cluster.Proceedings of the Sixth Asia–Pacific Symposium on Information and Telecommunication Technologies, Yangon,Myanmar, 2005; 66–70.

21. Sanghi D, Jalote P, Agarwal P, Jain N, Bose S. A testbed for performance evaluation of load-balancing strategiesfor web server systems. Software: Practice and Experience 2004; 18(11):339–353.

22. Payli R, Yilmaz E, Ecer A, Akay H, Chien S. DLB—A dynamic load balancing tool for grid computing.Proceedings of Parallel CFD (Computational Fluid Dynamics) Conference, Canary Islands, Spain, 2004; 1–8.

23. Dong QF, Shukla A, Shrivastava V, Agrawal D, Banerjee S, Kar K. Load balancing in large-scale RFID systems.Computer Networks 2008; 52(9):1782–1796.

24. Park SM, Song JH, Kim CS, Kim JJ. Load balancing method using connection pool in RFID middleware.Proceedings of the Fifth ACIS International Conference on Software Engineering Research, Management andApplications (SERA 2007), Busan, South Korea, 2007; 132–137.

25. Eager DL, Lazowska ED, Zahorjan J. A comparison of receiver-initiated and sender-initiated adaptive loadsharing. Performance Evaluation 1986; 6(1):53–68.

26. Qin X. Performance comparisons of load balancing algorithms for I/O-intensive workloads on clusters. Journalof Network and Computer Applications 2008; 31(1):32–46.

Copyright q 2010 John Wiley & Sons, Ltd. Softw. Pract. Exper. 2010; 40:485–506DOI: 10.1002/spe