Server selection schemes for service-oriented computing in mobile pervasive environment

https://doi.org/10.1016/j.compeleceng.2015.12.007Get rights and content

Highlights

  • An efficient server-centric server selection scheme is proposed for small scenario.

  • A client-centric scheme is proposed that outperforms the existing ones.

  • The client-centric scheme does not guaranty optimal Nash Equilibrium (NE).

  • A Mixed-strategy (MS) based solution is proposed that can attain more efficient NE.

  • The MS based scheme performs better than existing and previously proposed schemes.

Abstract

In this paper, we present a set of server selection schemes that includes all crucial components of resources available at each relevant node of the network to reach at the server selection decision and at the same time attempts to maximise the system-wide resource utilisation. First in the series, a server-centric scheme is proposed that formulates the problem as distributed constraint optimisation problem (DCOP) and solves it using Fast-max-sum (FMS) algorithm. Though it does not scale well in large network scenario yet it provides an estimate of the optimal values of performance metrics achievable under a specific scenario. Next, a client-centric scheme is proposed that outperforms the existing ones but does not guaranty to attain optimal Nash Equilibrium (NE). This motivates us to design another client-centric scheme that can avoid the price of anarchy by attaining superior NE of mix strategies.

Introduction

We consider the problem of selecting the most appropriate server in a pervasive environment where a set of servers is capable of offering a specific service within the network. When a service-consumer generates a service-request for the particular service with desired quality of services (QoS) parameters, the most appropriate server (among the aforesaid set) should be selected for serving the request. This should be carried out in such a manner that the desired QoS of the user is satisfied and at the same time, the resource usage over the whole network is maintained at the minimal level so that higher utilisation level can be achieved.

The problem had been investigated in considerable depth in various contexts during different phases of evolution of networking technology. With the exponential growth of web content, several web servers had been deployed to offer the same content. The challenge was to choose the most appropriate server for specific client requests. Most of the proposed solutions considered the remaining processing capacity of the servers along with current delays from the client to each of the potential servers. At first, a threshold check on both the parameters is carried out based on the desired QoS of the service request. Then, the appropriate server is chosen with the goal of minimising one of the above two parameters. It should be noted that minimisation of maximum unutilised processing capacity over/among all the servers maximises the service availability and minimises the service execution (content delivery in case of content server) time. On the other hand, an attempt to minimise the end to end delay between the client and the server is equivalent to minimisation of service response time. The service discovery is proactively managed by separate directory services such as DNS. In some deployments, the selection process is delegated to some other nodes, known as service brokers.

This approach was found less efficient in P2P system due to dynamic inclusion and exclusion of servers, presence of partial servers and wide range of variation in device capabilities. The proposed solution approaches are similar in nature but the complexity of selection problem increased many folds because of presence of a large number of potential servers. Moreover, additional overhead for dynamic adaptation of distributed directory structure is quite significant. As a result, most of the solutions suggested inclusion of service discovery within the server selection process in a reactive manner for each individual request. This arrangement is more adaptive in nature and in this paper we term it as client-centric approach.

However, the parameters of interest and solution approaches in a mobile ad hoc scenario is substantially different. Here, additional parameters like remaining battery power, remaining memory capacity and probability of link unavailability (due to mobility) are also required to be taken into consideration. Approaches are available that perform threshold check over all the above parameters and then maximise or minimise some of the parameters based on the performance goal (like delay minimisation, capacity maximisation, energy minimisation etc.). However, none of the proposed solutions consider the end to end resource usage for all intermediate nodes and links and hence the goal of maximising system-wide resource utilisation cannot be achieved.

We consider a network scenario where there exist some rudimentary (with low capabilities) networking elements such as sensor, actuator and low capacity communication infrastructure that creates a pervasive computing environment. Some typical examples are shopping malls, food court, entertainment parks, high capacity public transport (like trains, buses, ships) etc. Generally, in this kind of setting, there can be a moderate to large number of people with low mobility holding smart-phones and other hand-held or wearable devices. In one way the presence of user’s devices will put enormous pressure on the available fixed infrastructure but looking in another way, the presence of devices with computing and communication capability offers tremendous opportunity for building up an ad hoc environment that can support elegant and enriched service-oriented computing platform.

The users and things can provide and consume the services to and from each other’s to elevate their level of performance and/or experience. Such network should be self-organised with capability of efficient server selection, service replication, service migration and system-wide resource utilisation. To be more precise the devices should cooperate to form a spontaneous (multi-agent based) middleware to carry out the aforesaid activities and in this paper we study the problem of server selection for specific services where more than one server (may be due to replication) for such services exist in the network. Another noteworthy feature of this system is that the typical things, like sensors, consume services from the clouds that reside at the core of the infrastructure based network. With the rapidly increasing number of such sensors, this is likely to create overwhelming traffic at the core network. By replicating the frequently requested services within the hand-held devices located in the local access network, this traffic load can be drastically reduced. This, in fact, is a fundamental advantage.

The existing server selection schemes are not sufficiently efficient in this scenario for the following reasons. Firstly, all the important resource types and availability of such resources in all the nodes (especially intermediate nodes) are not taken into consideration. Secondly, The implication of QoS for content-delivery services and compute-intensive services are not quantitatively analysed in depth. Thirdly, optimal server-centric solution, incorporating the above issues are not studied in the light of the recently developed distributed computing technique such as DCOP. Further, client-centric techniques, emphasising the service-layer (rather than network layer), incorporating the first two points, were not examined in depth. Moreover, the cross-layer approaches used in some of the client-centric schemes breaks up the flexibility of layered architecture creating device non-conformity for application usage. Finally, the inclusion of service-layer requirements mandate us to make server selection decision at larger time scale and hence the impact of Price of Anarchy (PoA) should be considered with due importance and here comes the need for formulation of a mixed-strategy based efficient NE using client-centric technique.

The above deficiencies of the existing solutions motivate us to propose a set of solutions to the problem that

  • Considers all the relevant important resources available at each node of the network including the intermediate ones.

  • Separates routing and service discovery modules so that the schemes become independent of routing algorithms. The impact of this independence is noteworthy as the efficient hybrid (combination of reactive and proactive) routing algorithms can be used without interfering with the service selection process.

None of the above two considerations have been made in any of the existing proposals as far as our knowledge goes.

In this work, at first we consider the efficiency of server-centric distributed server selection algorithms in the above scenario. Though the approach is server-centric yet we consider the resource availability of all intermediate nodes in addition to those of the servers. We model the problem as DCOP and solve it with FMS [1] algorithm, a modified version of GDL based max-sum [2] algorithm. The performance of the scheme is found to be convincingly better in terms of service execution time, resource utilisation and service availability. However, in practice, the response time is unacceptably high that renders the scheme impractical for most of the scenarios. The reason for higher response time is the time taken for convergence of DCOP solution. Moreover, the increased message passing overhead of the DCOP algorithm consumes non-negligible amount of resources that hampers the overall performance of the scheme. Nonetheless, we implemented the scheme using Java Agent Development Framework (JADE)1 and it helped us to accurately measure and exclude the algorithms convergence time, message passing overhead and their impact on the response time. The fundamental objective behind designing the scheme is to determine the best possible service execution time, achievable level of resource utilisation over the whole network and response time for a given profile of QoS based request generation.

Next, we propose a client-centric scheme, that includes the available resources at each node in the network in addition to those available at the servers. The clients retrieve the resources available at other nodes including the servers and then make individual decision regarding the selection. In the existing algorithms, only a threshold check for resources along the end to end paths is made and the final decision is reached based on remaining energy along the path or processing capabilities of the servers or a Pareto efficient combination of both, depending on requested QoS. But in our approach, we attempt to maximise the overall resource utilisation where the resource is expressed as a weighted sum of all the parameters of interest. This results in improved service execution time, resource utilisation, service drop rate (especially at higher load) and network life time. Unlike the server-centric one, it is practicably implementable and scalable to larger network scenarios.

The client-centric solution, as proposed above though performs better than other existing schemes, still it suffers from the inherent (to all selfish solutions) problem of settling at less efficient equilibrium. It was shown in [3] that selfish routing can lead miserably poor solution compared to that available with an omniscient central authority. But it was shown in [4] that the mixed-strategy based path selection algorithm can offer substantially efficient solution. We determine the required probability distribution for each strategy to achieve the efficient mixed-strategy based NE. In short, we determine the cost function for each available server but instead of always choosing the best server we choose them randomly following a probability distribution derived on the basis of their costs. This scheme offers the best set of performance in terms of resource utilisation, service execution time and service drop rate. The contribution made in this paper can be summed up as follows.

  • 1.

    We propose a distributed server-centric server selection algorithm using a GDL based DCOP solution known FMS. This improves resource utilisation in the network and consequently the service availability and service execution time are also improved compared to that achievable using existing algorithms. However, its applicability is limited within small networks.

  • 2.

    A client-centric scheme is proposed that performs better than the existing selection algorithms in terms of availability, execution time, and system-wide resource utilisation.

  • 3.

    A mechanism within the client-centric approach have been proposed that achieves more efficient NE of mixed strategies even in presence of selfish routing. The probability distribution of each strategy have been computed to reach this more efficient mixed-strategy NE.

The rest of the paper is organised as follows. Section 2 presents the related works carried out in this area. The proposed system and network model, the QoS parameters and performance metrics are elaborated in Section 3. In Section 4 we formulate the server selection problem as a DCOP and proposed the server-centric solution followed by detailed client-centric and mixed-strategy based solution. Results with relevant discussion are presented in Section 5. Finally the conclusions are drawn in Section 6.

Section snippets

Related work

The problem had been thoroughly investigated in last few decades in several contexts. It started with the emergence of processor and memory scheduling [5], [6] in parallel and distributed systems but later, during the early days of the web, the problem received immense attention from the research community. The basic objective was to allocate the service requests to the most appropriate replica of web (or content) server (where such replicas were in place) for the purpose of efficient load

Network model

The devices in the system can offer various services and at the same time they can consume the services offered by other (including itself) devices. The devices are considered to be autonomic and heterogeneous in terms of capability and usage, creating a typical pervasive IoT segment. The various services available in the network, as a whole, can be combined and assimilated to create a typical service-oriented computing platform. In this scenario each individual device in the system are capable

Server selection schemes

Let a service si is currently being provided by a set of nodes Nsi and at a particular instant of time, a client ci requests that service. Under these circumstances, to make the service available to the client, the proposed middleware goes through two phases, first it triggers the service discovery module where the potential servers are discovered and then it goes to the selection or allocation phase where the most suitable server, among the discovered set, is selected based on QoS parameters

Experimental setup

For implementation of our multi-agent based middleware we choose Java Agent Development Framework (JADE) see Footnote that offers fundamental framework for developing agent actions, message passing and message queue management. We implemented the following server selection algorithms within this framework:

  • 1.

    The selection scheme based on minimum hop count (MHC).

  • 2.

    A recently proposed [22] algorithm for service selection in machine to machine (M2M) communication environment where the considered

Conclusions

  • 1.

    A set of server selection schemes for service-oriented pervasive computing environment has been proposed that includes most important components of sources available at each node of the network including the intermediate ones. The schemes are also independent of underlying routing algorithms.

  • 2.

    All the proposed algorithms achieve lower service execution time, lower service drop rate and system-wide resource utilisation by compromising the service response time at least to some extent.

  • 3.

    A DCOP based

Bikash Choudhury received his B.Tech from WBUT, India and M.Tech from NIT Durgapur, India. Currently pursuing Ph.D in the Department of Information Technology, NIT Durgapur, India. His research interest includes Service-Oriented Computing, Mobile Pervasive Computing and Distributed Systems.

References (27)

  • ChenH. et al.

    Using service brokers for accessing backend servers for web applications

    J Netw Comput Appl

    (2005)
  • MalatrasA.

    State-of-the-art survey on {P2P} overlay networks in pervasive computing environments

    J Netw Comput Appl

    (2015)
  • LendersV. et al.

    Service discovery in mobile ad hoc networks: A field theoretic approach

    Pervasive Mob. Comput.

    (2005)
  • MacarthurK.S. et al.

    A distributed anytime algorithm for dynamic task allocation in multi-agent systems

    Proceedings of the twenty-fifth AAAI Conference on artificial intelligence

    (2011)
  • FarinelliA. et al.

    Agent-based decentralised coordination for sensor networks using the max-sum algorithm

    J Auton Agents Multi Agent Syst

    (2014)
  • KoutsoupiasE. et al.

    Worst-case equilibria

    Proceedings of the sixteenth annual symposium on theoretical aspects of computer science

    (1999)
  • HuiT. et al.

    A game theory based load-balancing routing with cooperation stimulation for wireless ad hoc networks

    Proceedings of the eleventh IEEE international conference on high performance computing and communications, HPCC ’09

    (2009)
  • GonzalezM. et al.

    Periodic job scheduling in a distributed processor system

    IEEE Trans Aerosp Electron Syst

    (1976)
  • ChanY.-N. et al.

    Performance comparison of processor scheduling strategies in a distributed-memory multicomputer system

    Proceedings of the eleventh international parallel processing symposium, 1997

    (1997)
  • WoliszA. et al.

    Service provider selection in an open services environment

    Proceedings of the second IEEE workshop on future trends of distributed computing systems, 1990

    (1990)
  • ZeguraE. et al.

    Application-layer anycasting: a server selection architecture and use in a replicated web service

    IEEE/ACM Trans Netw

    (2000)
  • WuT. et al.

    A comparative analysis of server selection in content replication networks

    IEEE/ACM Trans Netw

    (2008)
  • HanS.C. et al.

    Constructing an optimal server set in structured peer-to-peer networks

    IEEE J Sel Areas Commun

    (2007)
  • Cited by (0)

    Bikash Choudhury received his B.Tech from WBUT, India and M.Tech from NIT Durgapur, India. Currently pursuing Ph.D in the Department of Information Technology, NIT Durgapur, India. His research interest includes Service-Oriented Computing, Mobile Pervasive Computing and Distributed Systems.

    Subhrabrata Choudhury received his B.E. and Ph.D from NIT Durgapur, India and ME from Jadavpur University, India. Currently he is working as an Associate Professor in the Department of Information Technology NIT Durgapur, India. His research interest includes Networking, Distributed Systems and Computational Social Science.

    Animesh Dutta received his B.E. and M.Tech degrees from NIT Durgapur, India. He completed his Ph.D from Jadavpur University, India. He is currently an Assistant Professor in the Department of Information Technology, NIT, Durgapur, India. His research interests includes Distributed Computing, Multi Agent Based Modeling and Simulation of Real World problems, Semantic Technology.

    Reviews processed and recommended for publication to the Editor-in-Chief by Associate Editor Dr. H. Vahdat-Nejad.

    View full text