35
Decentralized Resource Allocation in Application Layer Networks T. Eymann, M. Reinicke University Freiburg, Germany O. Ardaiz, P. Artigas, F. Freitag, L. Navarro Polytecnic University Catalunya, Spain

Decentralized Resource Allocation in Application Layer Networks T. Eymann, M. Reinicke University Freiburg, Germany O. Ardaiz, P. Artigas, F. Freitag,

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Decentralized Resource Allocation in Application Layer Networks

T. Eymann, M. ReinickeUniversity Freiburg, Germany O. Ardaiz, P. Artigas, F. Freitag, L. NavarroPolytecnic University Catalunya, Spain

Outline

Motivation Catallaxy Paradigm for Decentralized

Resource Allocation Experiments Results Open Issues & Further Research

Application Layer Network Deployment

S

S

S

S S

SS

SS

S

S

S

SS

S S

SS

S

S S

S

SS

S D D

D

DD

Application Layer Network (Web Proxy Caching Hyrarchy): 6 servers each requires 1 Mbits net capacity, 200 Mbytes Storage, Less 2 hops from demand regions: A,B,C,D,E

Programmable Infrastructure:•30 nodes distributed throught Internet each 10 Mbit net capacity, 2 GByte Storage

Resource Allocation

Resource Allocation Problem

Centralized RA is computationally intensive (and single point of failure).

And it will get works: Very Dynamic Infrastructures (Resource nodes

come and go frequently): dial up nodes, mobile nodes, ...

High Node Density Infrastructures (Many nodes with little resources): P2P systems, pervarsive computing,..

Solution: Economic Markets

Resource Allocation works in Real World with an economic model: allocation of goods among human beings takes place in “markets”.

Markets: just distribution of utility by a central arbitrator (centralized

economy) decentralized action of utility-maximing agents using a

central auctioneer direct agreement between negotiating agents (Catalaxy)

The Catallaxy as a concept for market coordination Catallaxy is an alternative word for „market economy“ (Mises and

Von Hayek of the Neo-austrian economic school) “Fundamentally, in a system in which the knowledge of the

relevant facts is dispersed among many people, prices can act to co-ordinate the separate actions of different people in the same way as subjective values help the individual to co-ordinate the parts of his plan.” (Friedrich A. von Hayek, The Use of Knowledge in Society, 1945)

“The Market” as a technically decentralized, distributed, dynamic coordination mechanism: Adam Smith’s “invisible hand”, Hayek’s “spontaneous order”, Walras’

“non-tâtonnement process” Coordination and a stable environment are emergent features of the

market Pursuing local goals alone already stabilizes and coordinates the

system.

How to Implement Catalaxy: Agents

Environment, e.g. Market

Agent

Sensor, e.g. received offers

Effector, e.g. sent offers

(Intention: increase own utility)

Reasoning, e.g. calculation of a counter-offer using heuristics (may become arbitrarily complex, e.g. AI)

Agent-mediated digital economy

Characteristics for the agent-mediated digital economy: Software agents act selfish, because their human owners do:

Competition is the norm. Software agents keep their utility function private: If made public,

the agent can be exploited. Software agents communicate directly: Centralized control

institutions can always be bypassed.

Consequences: Cooperation is always pareto-eliciting (increases utility of all

participants) No free lunch: everyone has a utility function (business model),

even centralized institutions Information is not free or public (every participant operates on

private knowledge and subjective values)

Negotiation Protocol - Example

Buyer Seller

cfp (service access)

propose (service access, pS=$24)

propose (service access, pB=$18)

propose (service access, pS=$21)

accept-offer(service access, pB=$21)

commit (service access, pS=$21)

timetime

Client SC

Heuristic-Adaptive Reasoning:Example for a Seller (1)

propose (service access, pS=$24)

MarketPrice=offerPrice×weight+lastMarketPrice×(1-weight)

Update Market Price Valuation

propose (service access, pB=$18)

Heuristic-Adaptive Reasoning:Example for a Seller (2)

Should I leave the negotiation?

propose (service access, pS=$24)

negotiate: offerPrice > marketPrice AND () ContinuationProbability

reject: offerPrice > 2 * marketPrice

accept: offerPrice marketPrice

rnd

propose (service access, pB=$18)

Heuristic-Adaptive Reasoning:Example for a Seller (3)

Should I leave the negotiation?

Should I make a concession?

rejectYes

No

() concessionProbability: ourOfferPrice = ourLastOfferPrice

() concessionProbability: ourOfferPrice = ourLastOfferPrice - concessionAmount

rnd

rnd

propose (service access, pS=$24)

propose (service access, pB=$18)

Heuristic-Adaptive Reasoning:Example for a Seller (4)

Should I leave the negotiation?

Should I make a concession?

What amount should I concede?

reject

propose (service access, pS=$24)

Yes

No

No

Yes

concessionAmount = (hisOriginalOffer - ourOriginalOffer) × concessionAmountPercentage

propose (service access, pS=$24)

propose (service access, pB=$18)

Heuristic-Adaptive Reasoning:Example for a Seller (5)

Should I leave the negotiation?

Should I make a concession?

reject

propose (service access, pS=$24)

propose (service access, pS=$21)

propose (service access, pS=$24)

propose (service access, pB=$18)

Yes

No

No

Yes

„costs of life“ (tax) will be deducted in discrete time slots

Application

Coordination

Communication

Cooperation

Application ServicesNetwork ServicesPhysical Services

Heuristic-Adaptive Reasoning:Parameters

Negotiation Strategy:

Achieving utility maximization setting e.g. concession rate, concession amount, time pressure in relation to market (and the transaction partner).

_

_

_

_

_

_

p acq

del change

del jumpG

p sat

w mem

p rep

Concession Probability

Continuation Probability

Concession Amount

Market Price Learning Weight

Mark-up

Heuristic-Adaptive Reasoning: adaptation by evolutionary learning

Send „plumage“ (profitx, Genotypex)

profit1 Genotype1

profit2 Genotype2

profit3 Genotype3

profit4 Genotype4

Create agent (Genotype Genotype1)

select Genotype (profitx)

Experiments

Simulated Scenarios Evaluated Dimensions

Simulated Application Scenario

How to match a network of clients and services?

Clients

(ADSL 1 Mbit)

Acrobat Service Copy of Document

MyCompanyPortfolio.pdf

(6 Mbytes)

Web Server with limited Resource

(4 – 60 Mbits)

1

2 3

Catallactic Message Flow

Client request_Service (MyComPortfolio.pdf)

BW Negotiation

Service Negotation

Baseline Message Flow

Master Service Copy as Centralized Auctioner for BW and SC

Client request_Service (MyComPortfolio.pdf)

Evaluation Dimensions

CDN P2P

GRIDA few, powerful

A lot, modest

Fix

ed

netw

orks

Mob

ile, a

d-ho

c,ov

erlo

ade

dne

twor

ks

Stable

Changing

node density

node dynamics

low medium high

medium

high

CDN

P2P

GRID

It is required an “abstract” simulator

Simulator Scenarios: Resource Density Variations

Low Density:Few nodes (5)

Lots Resources per Node (60 Mbits)

Middle Density:More nodes (25)

Less Resources per Node (12 Mbits)

High Density:More nodes (75)

Less Resources per Node (4 Mbits)

Simulator Scenarios:Dynamic Values

Dynamic: Nodes up & down with 20 % probability every 200 ms.

Quasi-static: Nodes always up.

Very dynamic: Nodes up & down with 40 % probability every 200 ms.

Simulator - Demand

Clients located in every edge node. Client request_Service (1 Mbit Server Net

Bandwidth, 50 sec). Random values:

# of demands (among clients) # of serviceIDs (among 50 diferent videos) time betwen demands (average 2000 ms)

Moving clients: Movement time (How often demand moves) Movement radius (How far demand moves) Movement percent (How much demand moves)

Simulator Choice

The Catnet simulator is build over JavaSim [Univ. Ohio]: JavaSim is a network simulator based in autonomous components.

• Javasim implemented in java=> Ease of development, and efficient [].

• Javasim models every aspect of a real network: latency, bandwith, lost packets, routing,=> We take into account resource locality (vs. MAS simulators)

• Application module implement interfaces of common Inet protocols: TCP, UDP, Mcast => our components can be modified to work in real world without modification.

Preliminary Results

Evaluation Criteria. Preliminary Results:

Comparison by Scenarios, Adaptability Evaluation.

Evaluation Criteria

RAE (Resource Allocation Efficiency) The ratio of matched transactions divided by the number of

all proposals: # "accepts“/ #"proposals“

REST (Response Time (Service Access Time)) How long does it take on average to fill a request:

time between “cfp” and “accept”

CC (Communication Costs) How much communication is needed until the result:

# messages * # hops.

Results by criterion – RAE (%)

0

1

2

0

1

2

0

10

20

30

40

50

60

70

80

90

100

RAE (%)

dynamics

density

0

1

2

0

1

2

0

10

20

30

40

50

60

70

80

90

100

RAE (%)

dynamics

densi ty

Catallactic Baseline

Topology Dependency @ middle density

RAE better @ very dynamic Scenario

RAE at quasi-static, slow scenarios

Results by criterion – REST(ms)

Catallactic Baseline

0

1

2

01

2

0,00

50,00

100,00

150,00

200,00

250,00

300,00

REST (ms)

dynamics

density

0

1

2

0

12

0,00

50,00

100,00

150,00

200,00

250,00

300,00

REST (ms)

dynamics

density

REST is higher for catalactic: but not as much as expected.GOOD

Results by criterion: CC (# messages * #hops)

0

2

01

20

20000

40000

60000

80000

100000

120000

CC (#hops)

dynamics

density

0

2

01

2

0

20000

40000

60000

80000

100000

120000

CC (#hops)

dynamics

density

Catallactic Baseline

CC is similar. But it was expected to be higher because of more negatiations messages: GOOD.

CC increases with density, since higher density means more nodes to send to.

Results by Scenario

Quasi-static High node density Very dynamic / low ND Very dynamic / high ND

Green: confirmed, Red: rejectedRe

sour

ceAl

loca

tion

Effic

ienc

yCo

mm

unica

tion

cost

Reac

tion

time

b b b

b bb

b bc

c b

Syst

em

b

Adaptation: Baseline Simulation

In baseline system prices keep constant => no adaptation

Adaptation: Catallactic Simulation

In catalactic system prices adapt over time

Open Issues & Further Research Oscillations, Caotic behaviour. Tragedy of commons. Malevolous agents.

Colaboration with agent researchers

Colaboration with Complex Adaptive System researchers.

Colaboration with Grid / P2P projects

Scalability, dynamics. Theoretical Modelling.

Implementation in grids & P2P scenarios.

Thank you, Questions?

More info: http://research.ac.upc.es/catnet/