a distributed constraint satisfaction problem approach to virtual device composition

49
A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition Eric Karmouch, Amiya Nayak Paper Presentation by Michael Matarazzo ([email protected]) A Distributed Constraint Satisfaction Problem Approach to Virtual Device Co Eric Karmouch, Amiya Nayak

Upload: nicola

Post on 25-Feb-2016

41 views

Category:

Documents


4 download

DESCRIPTION

A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition. Eric Karmouch , Amiya Nayak Paper Presentation by Michael Matarazzo ([email protected]). A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition. Eric Karmouch , Amiya Nayak. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to

Virtual Device Composition

Eric Karmouch, Amiya NayakPaper Presentation by Michael Matarazzo ([email protected])

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 2: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

I. IntroductionII. Related WorkIII. Virtual Device CompositionIV. Simulation and AnalysisV. Conclusion

Overview

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 3: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Networked Appliance [1] The demand from consumers for networked services to be

seamlessly integrated into their lifestyles is driving network and computing technology into everyday objects.

Defined as a dedicated function consumer device with an embedded processor, a network connection, and the ability to disperse its capabilities within the network.

This allows other devices to combine with and use those capabilities as part of a virtual device.

The functionality of a networked appliance is distributed, enabling it to be controlled, monitored, managed, and extended beyond what it was initially designed to do.

I. Introduction

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 4: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Virtual Device Defined as a collection of heterogeneous devices near a user that

behave as a single homogeneous device in solving a given task. Also defined as a system of strong networked devices, both fixed

and mobile, with many distributed input and output capabilities. The networked devices are specific, i.e. they provide a single

functionality at high quality, and users can incorporate autonomous devices in their vicinity as needed.

Single applications can be distributed across a number of devices, with the strengths of each device providing enhanced user experience and quality of service (QoS).

I. Introduction

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 5: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Automatic Composition of Virtual Devices Because virtual devices are managed with little or no

human involvement, an open problem is how to achieve automatic composition of virtual devices and their services.

The goal is to automate the discovery process and to enable the devices to determine what services are required.

Approaches that have been taken [2]: Human-Computer Interaction Networking and Automatic Interoperation

These approaches provide basic interoperability through centralized approaches, and do not support Mobile Ad Hoc Networks (MANETs).

I. Introduction

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 6: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Service Composition in MANETs The hope of finding more reactive and decentralized solutions has led to

research targeting service composition in MANETs [3], [4], [5]. However, QoS has generally not been a priority, i.e. “acceptable” over “best.” Also, constant periodic (or push-based) advertising for service discovery has

been relied on; this unnecessarily depletes limited resources. Since MANETs can be described as self-creating, self-organizing, and self-

administering, they offer unique benefits and versatility to the virtual device problem.

However, they also create environments with varying attributes, e.g. bandwidth, delay, loss, jitter.

A composed virtual device should degrade and upgrade smoothly along with the performance of the network.

I. Introduction

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 7: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Virtual Device Composition Problem This paper defines the Virtual Device

Composition problem, Presents the Virtual Device Constraint

Satisfaction Protocol (VDCSP), Does not require broadcast-based service

advertisements, and Includes a graceful degradation and

upgradation scheme corresponding to the performance of the network.

I. Introduction

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 8: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Virtual Device Constraint Satisfaction Problem We achieve the preceding by modeling and solving the virtual device

problem as a distributed constraint satisfaction problem [6]. What is a distCSP?

A CSP is defined by the triplet . is a set of variables, is a set of domains of values for each , and is a set of constraints.

A CSP is solved by assigning values to variables so that all constraints are satisfied.

A distCSP is defined as a CSP where variables and constraints are distributed among automated agents.

I. Introduction

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 9: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Benefits of using a distCSP Solving a distCSP implies achieving coherence or

consistency among agents. Unlike traditional schemes, distCSPs can be solved

without the need for agents to divulge complete or precise information about their domain and constraints.

Information is passed in a highly summarized form, allowing a greater degree of privacy and security.

I. Introduction

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 10: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

I. IntroductionContributions of Paper1. To modify the solution of preliminary work [7], [8] to include

network attributes in the process of VDC,2. To extend the solution to account for postcomposition

adaptation based on changing network attributes, and3. To provide more extensive simulations that study the effects

of mobility and scalability on efficiency and effectiveness. Simulations show that VDCSP can compose high-quality virtual

devices that meet task requirements, service constraints, and user preferences.

VDCSP can also perform postcomposition adaptation while minimizing message cost and composition time.

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 11: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Service Discovery and Composition Research in this area [9] – [17] takes two paths:

Service Description and Matching Service discovery and composition architectures (mostly in

infrastructure-based environments) We will examine:

Service Discovery and composition in both infrastructure-based and infrastructure-less environments, and

Chakraborty et al.’s Distributed Service Composition Protocol (DSC), used for comparison.

II. Related Work

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 12: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Infrastructure-Based Environments Use languages such as Web Services Development Language

(WSDL) [18] and the DARPA Agent Markup Language for Services (DAML-S) [19] to describe network services.

Web Services Flow Language (WSFL) [21] and the Business Process Execution Language for Web Services (BPEL4WS) [20] are used to formally specify services.

The majority of service discovery and composition architectures are designed for wired infrastructures, using central servers and dedicated machines with plenty of resources.

They do not cater to highly pervasive, mobile and ad hoc environments.

II. Related Work

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 13: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Infrastructure-Less Environments As previously mentioned, existing work [31], [32] relies too heavily

on broadcast-based techniques and does not include QoS metrics. As a result, the main focus of most existing protocols is to discover,

integrate, and execute services while satisfying resource constraint issues typical in MANETs without addressing the quality of the composed service.

The work of Chakraborty et al. makes significant contributions in this area with their group-based service discovery protocol (GSD).

It is based on peer-to-peer caching of service advertisements and on group-based selective forwarding of service discovery paths.

II. Related Work

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 14: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Other techniques and protocols Han and Zhang [33] and Wang [34]: a service

composition protocol based on Dynamic Source Routing (DSR)

Standardized protocol: Bluetooth Service Discovery Protocol [35]

MobiLife Integrated Project [36] Intel Research: Dynamic Composable Computing [37] Namman et al.: Flexible Service Composition

Framework [38]

II. Related Work

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 15: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Distributed Service Composition Protocol (Chakraborty et al.) Mobile nodes (connected by ad hoc network protocols)

represent various devices providing one or more services, and are able to be invoked by peer nodes.

Involves a requesting source, service provider and broker. The process begins when a requesting source elects a broker. The broker then discovers nodes providing the required services

and integrates/executes those services on behalf of the source. A requesting source may simultaneously act as a service

provider and/or a broker.

II. Related Work

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 16: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Four phases of the DSC protocol1. Broker Arbitration: a requesting source elects a broker using

information about that broker’s resources and the service providers in their vicinity.

Ideally a node with high computational power, low computational load and long battery life, and located in an area of high service density.

To obtain information on nearby service providers nearby, each broker examines its cache, which is updated according to the GSD [41].

Each service provider periodically advertises a list of its services to other peer nodes within a limited vicinity, including a list of service groups.

Grouping information is used to forward discovery requests to service providers, resulting in less network-wide broadcasts and a more efficient discovery process.

II. Related Work

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 17: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Four phases of the DSC protocol, cont.1. Broker Arbitration2. Service Discovery: all necessary devices are discovered using

GSD and the matching of requests with cached descriptions of services.

3. Service Integration: discovered services are selected using basic cost factors such as “nearest available service.” No specific algorithm is used.

4. Service Execution: an execution flow is created. Execution occurs in a distributed manner; the broker executes service and transmits information from the previous service to the next.

II. Related Work

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 18: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Environment Fig. 1a shows an environment of mobile

nodes connected by ad hoc protocols. They represent various devices providing

one or more services that can be invoked by peer nodes.

Device composition is the composition of services offered in a user’s vicinity, providing the user with a virtual device that satisfies an atomic task.

An atomic task is an application-level task that requires one or more atomic services.

An atomic service is a service residing on a single node.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 19: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Task-based composition specification (TCspec) Fig. 1b shows a specification of service and

service property requirements represented as policies.

It is generated from a task, and divided into three categories: Task requirements: represent the minimum

services required for task satisfaction. Service Constraints: represent the

constraints needed to allow the composed service to function as intended.

User preferences: service constraints controlled by the user; they shape the desired QoS.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 20: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Task-based composition specification (TCspec), cont. The QoS associated with one particular

composition separates it from other compositions. In this paper, QoS is defined as the ability of a

virtual device to match the TCspec. The objective is to examine all possible

composition configurations and identify the configuration that best fulfills the TCspec.

Challenges: some nodes are independent and operate under different rules/guidelines for composition, i.e. private policy.

Private policy may refer to security rules, business models, etc. that must be kept confidential; this is why centralized solutions with extensive information-sharing are unsuitable.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 21: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Virtual Device Composition DistCSP To ensure that the virtual device adapts properly to

the dynamic nature of MANETs, virtual device composition is modeled in the form of a distributed constraint satisfaction problem , where: . is a variable corresponding to the set of services being

provided by node to satisfy a task. . is a set of domains of values, such that is the set of

services that can provide. is the set of constraints of the problem.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 22: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Virtual Device Composition DistCSP, cont. Constraint (1) guarantees that at most

one node provides any particular service. Constraint (2) ensures that all required

services have been assigned. Constraint (3) ensures that the

performance requirements of the composed service are equally or more constrained as the current performance requirement of the network, .

Constraint (4) ensures that the chosen service set maximizes , i.e. the overall QoS of composed VD.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

is a set of services equivalent to all required services , , where each service corresponds to a particular task requirement policy of TCspec.

Page 23: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Utility value of each potential Broker Similar to Chakraborty et al.’s solution, a broker (B) is

elected using a utility function that determines the utility value of each potential broker:

is the battery life, is the number of composite requests currently being processed, and is the processing power.

A weight identifying the amount of influence given is applied to each parameter.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 24: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

QoS and Performance Requirement (PR) The QoS model uses a decentralized version of a model

similar to that defined by Perttunen et al. for MANETs. Requirements of the VD concept: being aware of the user’s

continuously changing environment, immediately recognizing the user’s expectations, and providing a service that matches the user’s circumstances.

The QoS function is identified as the degree of match b/w the requirements of a user’s task (TCspec) and the qualities of service composition.

A particular composition can accept a certain degree of tolerance in bandwidth (BW), delay (D), loss (L), and jitter (J).

Potential service composition candidates (SCCs) can be further classified by their performance requirements, expressed as , representing the maximum QoS among all SCCs.

This satisfies the performance requirement PR, where:

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 25: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Similarity Function and other parameters Using the similarity function , we can classify

similarities in quality and capability between services in a TCspec and those available in the user’s environment.

The output of the function is a value b/w [0,1]; the nearer to 1, the higher the degree of match.

In shaping the amount of relevance given to a particular service, each iteration of the summation is affected by a user-specific or default weight .

Another weight represents the availability of the potential service composition, determined by the minimum of all values.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 26: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Similarity Function and other parameters, cont. represents the service availability of each

service in the potential composition; it is founded on various factors including the current state of the service , the usage policy of the service , queue information on other users waiting for the service.

Every service has a performance requirement representing the minimum bandwidth, maximum loss, delay and jitter it is able to tolerate.

The performance requirement of an SCC can be computed from the maximum BW and minimum L, D, and J values across all services involved.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 27: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Virtual Device Constraint Satisfaction Protocol (VDCSP) The VDCSP allows automated agents, each

representing the interests of a particular node, to act concurrently and asynchronously.

No global control is required in deciding how to best form the virtual device for the user.

No periodic service advertisements are needed, and private policy can be incorporated.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 28: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

VDCSP, cont. The virtual device composition (VDC)

problem can be represented as an Matrix (Fig. 2), comprised of nodes and services: A black circle in represents a service , such

that provides service . By applying the constraint set , Matrix (Fig.

2) is formed: A black circle in containing the letter

represents a potential service in a node s variable, such that can contribute service in the VDC.

A white circle in containing the letter represents a committed service in a node s variable, such that has committed to contributing service in the VDC.

Each column must contain exactly one white circle containing the letter .

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 29: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Steps of VDCSP: Candidate Formation When a task becomes activated on a user’s

device, the corresponding node sends a virtual device request (VDrequest) message into the user’s immediate vicinity, using a bounded broadcast (Fig. 3).

A VDrequest contains the task’s TCspec, which is used by a receiving node to decide whether or not it can contribute a service.

Nodes that can contribute send a virtual device reply (VDreply) message to the VDrequest initiator.

The initiator uses these replies to compute a candidate table containing the addresses and unique identifiers of all responding nodes organizes in descending priority order.

Once formed, the table is distributed to all nodes.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 30: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

QoS Ranking By implication, a node receiving a candidate table is participating in the

VDCSP. For each service that node has agreed to potentially contribute, a QoS

ranking is computed using (8) as , where a similarity function is computed between and the service requirements specified in TCspec.

The availability and user-specific/default weights and of the service are applied to the similarity function.

For each service that a node has agreed to potentially contribute, three pieces of information are kept in a tertiary: service type, QoS ranking, and commitment status: either potential (p) or committed (c).

In terms of the distCSP, for each service of a node , a tertiary is stored in the node’s variable , such that .

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 31: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Virtual Device Constraint Satisfaction Algorithm With Matrix complete, we apply the VDCSA, based on the

traditional asynchronous backtracking algorithm for solving distCSPs.

The execution of VDCSA (Fig. 4) is asynchronous b/w candidate nodes; it begins with all candidates committing to all services in their respective variable s and exchanging these values in ok? messages.

The ok? Messages are used to spread knowledge of value assignments to candidate nodes, which use them to form their agent view, which reflects a node’s current view of the partial solution – a subset of the final solution.

A partial solution is expanded by adding committed variable tertiaries one by one until a final solution is reached.

Different nodes may have different agent views at any given time, but as the algorithm progresses, all nodes work toward a single common agent view, i.e. the final solution.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 32: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Virtual Device Constraint Satisfaction Algorithm, cont. After the receipt of an ok? message (Fig. 4i), a node

compares its with its agent view (Fig. 4iii), looking for any inconsistencies.

Inconsistencies occur when s value violates the set of constraints of the problem; attempts to resolve them by altering its .

If the node is able to reach consistency, it distributes its new in an ok? message to all candidates; if no exists, then it is necessary to backtrack (Fig. 4iv).

Backtracking involves sending one or more nogood messages to higher priority nodes causing the inconsistency; a recipient of a nogood message attempts to adapt its respective value, enabling the sender to reenter a consistent state.

If inconsistencies cannot be resolved by the recipient, it too triggers a backtrack; eventually it is resolved or there is no solution.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 33: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

VDCSA Example Execution

Fig. 5a shows the initial values; priority has been determined, QoS rankings have been computed, all candidates have committed to their services, and these values have been exchanged using ok? messages.

is currently in a consistent state, but is not; since has already committed to service (Fig. 5b) and has a higher QoS ranking, must uncommit to .

keeps its commitment to as it is not being provided by (Fig. 5c).

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 34: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

VDCSA Example Execution, cont.

is also in an inconsistent state (Fig. 5d). is able to correct its value by uncommitting; however it is unable to uncommit to

because its QoS ranking is higher than ’s. sends a nogood message to ; uncommits to after receiving the nogood message,

and can now enter a consistent state (Fig. 5e).

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 35: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

VDCSA Example Execution, cont.

Now, ’s values for , , and are inconsistent (Fig. 5f). can uncommit to services and , but cannot uncommit to since its QoS ranking is

higher than that of (Fig. 5f). By sending a nogood message to , can reach consistency (Fig. 5g); thus a solution is

found.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 36: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

VDCSA Soundness and Completeness Soundness is guaranteed because agents can only reach a stable state when all values satisfy

all constraints. The algorithm is complete because it either finds a solution if one exists or terminates if no

solution is found w/in a finite time. A “no solution” scenario occurs if the problem is overconstrained, i.e. any set of values leads to

a constraint contradiction; this is considered a failure and the algorithm terminates. The only way in which termination would not happen in finite time is if one or more nodes were

to cycle through their possible variable values in an infinite loop. However, an infinite loop cannot happen because the number of potential values for each node

is finite; at some point, all possible combinations will be tried. To clarify, we can assume that if there was a node in an infinite loop, it will only receive nogood

messages, not send them; each time it receives a nogood message, it changes its value. At some point, a value change will cause it to stop receiving nogood messages, or it will

exhaust its finite set of values and send a nogood to the next node; or if it is the root node, there will be “no solution.”

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 37: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Postcomposition Adaptation Since the network conditions () tend to vary over time, there could come a point

where either: 1) does not satisfy the service composition initially selected, or 2) a service upgrade is possible; in either case adaptation will be needed.

So, a new virtual device request is sent forming a new candidate table and triggering another iteration of VDCSA.

If we apply the preceding QoS model to postcomposition, we assume that advertised services contain performance tolerance information and that any node is able to obtain periodic performance metrics from the network.

This information would lead to the generation of a dynamic hash table , whereby: The values of the table represent service composition candidates in the user’s environment, The keys of the table represent the current performance requirement of the network, The hash function maps to a particular , such that .

However, the completeness of , and broker awareness of services, depends on whether a push (DSC) or pull method is used in service advertisement.

III. Virtual Device Composition

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 38: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Evaluating the Performance of VDCSP We now evaluate the performance of VDCSP in varying

service densities, mobility, and topologies. We also look at the VDCSPs ability to gracefully

degrade and upgrade in postcomposition adaptation. We will compare the results to those of Chakraborty et

al.’s push-based DSC protocol. We hope to identify the efficiency gain in message

usage and composition time, as well as to determine the reactions to varying mobility and scaling.

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 39: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Simulation Parameters and Metrics A MANET is built and J-SIM [43] (simulation environment) is

used to implement both VDCSP and DSC. A 30x30 m area is used containing 25 nodes w/ transmission

range of 30 m. For mobility, a random-way-point model w/ min speed of 1

m/s, max speed of 3 m/s, and a 5s stoppage time is used. All broadcasts follow a strict bounded hop count of 1, and

DSC service advertising intervals are set to 5s. The simulations are intended to reflect a mobile device

making 100 requests over a 24-hour period.

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 40: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Simulation Parameters and Metrics The simulation is repeated for composite lengths of 3, 5, and 7, and

service densities of 20-100 percent. We define service density as the percentage of nodes containing one of

the atomic services required in the composition. For each simulation, we identify the optimal QoS achieved; a normalized

QoS value to represent how close the actual formed composition comes to the best TCspec match currently present in the network.

We also identify the amount of time taken and the number of messages consumed.

It should be noted that since the derivation of similarity functions and weight are out of the scope of this paper, predetermined similarity values are utilized.

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 41: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

QoS Analysis Fig. 6 shows that, compared to DSC,

VDCSP provides an average increase in QoS of 55, 44, and 35 percent when composing 3, 5, and 7 services, respectively.

For all service densities, VDCSP is able to provide a QoS above 99 percent.

However, DSC does not fare well, mainly because there is no mechanism to distinguish a poor service from a better service.

This simply reflects the average QoS performance in the network, a metric that drops as service density rises.

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 42: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Cost Analysis

Fig. 7 shows that the number of messages used by VDCSP, per composition, is an average of 62,750 (98 percent) lower than DSC.

This is because DSC requires nodes to advertise their services at periodic intervals; DSC also requires the broker election, service discovery, and service aggregation phases to be sequential; VDCSP solves this in a single distCSP.

Fig. 8 shows that average VDCSP composition time decreases by 15.39 seconds (74 percent) when compared to DSC. The initial spike of DSC for composition lengths 5 and 7 can be attributed to the fact that DSC makes futile attempts to

discover services that do not exist; VDCSP is able to quickly identify whether a desired service exists or not.

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 43: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Effects of Scaling To examine the effects of scaling

on the performance of each protocol, The parameters in Table 1 are utilized.

However, the service density is held at 50 percent, and the composition length is held at 3 services.

In addition, the dimension area of the experiment and the number of nodes involved gradually increases.

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 44: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Effects of Scaling, cont.

Both protocols suffer from scalability issues. For VDCSP, the effect of scaling begins to reduce QoS as the dimension area surpasses the transmission range of a node

(Fig. 9); this can be attributed to the lack of discovery of potential services by both bounded broadcast and node disconnect.

Fig. 11 shows an increase in composition time for VDCSP, but Fig. 10 shows only a small increase in the number of messages, which taper down as the dimensions continue to grow; in the latter, it is likely that more nodes are out of range of a given node as the dimension increases, resulting in negotiations b/w fewer nodes.

For DSC, the QoS performance remains unchanged (Fig. 9), generally achieving a level that matches the network average; this decreases as the number of nodes increases due to continuous broadcasting.

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 45: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Effects of Mobility

Again, the parameters from Table 1 are utilized, service density is held at 50 percent, and the composition length is held at 3 services; however, the number of nodes increases to 49, the dimensions increase to 42x42 m, and the mobility model (random-way-point) increases from 0 to 10 m/s with no stoppage time.

The results show that DSC (broadcast) is resilient to mobility since it continuously discovers the network average QoS level (Fig. 12).

VDCSP (pull) suffers due to the increase in nodes outside the initiating node’s range; thus fewer nodes participate and spend less time solving the distCSP (Figs. 13 and 14).

However, as node speed exceeds 5 m/s, there is a rise in QoS, composition time, and number of messages used for VDCSP; this can be attributed to quick movement in an out of an initiating node’s range, allowing nodes to be discovered and participate in the distCSP.

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 46: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Postcomposition Adaptation (PA)

To analyze the effect of service advertisement techniques on PA, DSC is modified to include the QoS model for VDCSP (). Using the parameters in Table 1, these simulations represent a mobile device forming an initial virtual device, and then

making 100 adaptations due to 100 simulated changes in bandwidth, delay, loss, and jitter. Fig. 15 shows that both VDCSP and DSC are able to discover the optimal adaptation for varying service densities and

composition lengths; this is expected since both protocols are using identical QoS models. However, the number of messages used by VDCSP (Fig. 16) is an average of 89 percent less than DSC, while DSC’s

composition time is an average of 3.05 seconds less than VDCSP; DSC holds at ~0.15 seconds for all service densities and composition lengths (Fig. 17).

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 47: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Postcomposition Adaptation (PA), cont.

What does this mean? There is a clear tradeoff between push and pull discovery mechanisms! Since DSC uses a push method, the broker is continuously receiving periodic service advertisements

from nodes in the vicinity; the higher the service density, the higher the number of messages. The benefits of DSC are realized in adaptation time, since it has a low constant value; the time required

for VDCSP to adapt is directly related to service density and composition length. The VDCSP protocol would benefit from small amounts of pushed service advertisements!

IV. Simulation and Analysis

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 48: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

Summary and Future Work This paper presented a distCSP model for task-based, QoS-aware, virtual

device composition in MANETs, An asynchronous backtracking algorithm for solving the distCSP, A method of VDC without continuous broadcast-based service

advertisements, and A network-performance-influenced QoS model for graceful degradation

and upgradation postcomposition. Simulation results show that VDCSP achieves high QoS compositions

w/out the unnecessary depletion of node resources. Future work will address some drawbacks of VDCSP by exploring a hybrid

push/pull technique with multihop broadcasting along with more constrained upgrade policies to deal with dynamic network conditions.

V. Conclusion

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak

Page 49: A Distributed Constraint Satisfaction Problem Approach to Virtual Device Composition

It’s finally over! Questions?

A Distributed Constraint Satisfaction Problem Approach to Virtual Device CompositionEric Karmouch, Amiya Nayak