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

  • Upload
    tierra

  • View
    34

  • Download
    0

Embed Size (px)

DESCRIPTION

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. Outline. Motivation Catallaxy Paradigm for Decentralized Resource Allocation - PowerPoint PPT Presentation

Citation preview

Page 1: Decentralized Resource Allocation in Application Layer Networks

Decentralized Resource Allocation in Application Layer Networks

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

Page 2: Decentralized Resource Allocation in Application Layer Networks

Outline

Motivation Catallaxy Paradigm for Decentralized

Resource Allocation Experiments Results Open Issues & Further Research

Page 3: Decentralized Resource Allocation in Application Layer Networks

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

Page 4: Decentralized Resource Allocation in Application Layer Networks

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,..

Page 5: Decentralized Resource Allocation in Application Layer Networks

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)

Page 6: Decentralized Resource Allocation in Application Layer Networks

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.

Page 7: Decentralized Resource Allocation in Application Layer Networks

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)

Page 8: Decentralized Resource Allocation in Application Layer Networks

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)

Page 9: Decentralized Resource Allocation in Application Layer Networks

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

Page 10: Decentralized Resource Allocation in Application Layer Networks

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)

Page 11: Decentralized Resource Allocation in Application Layer Networks

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)

Page 12: Decentralized Resource Allocation in Application Layer Networks

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)

Page 13: Decentralized Resource Allocation in Application Layer Networks

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)

Page 14: Decentralized Resource Allocation in Application Layer Networks

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

Page 15: Decentralized Resource Allocation in Application Layer Networks

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

Page 16: Decentralized Resource Allocation in Application Layer Networks

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)

Page 17: Decentralized Resource Allocation in Application Layer Networks

Experiments

Simulated Scenarios Evaluated Dimensions

Page 18: Decentralized Resource Allocation in Application Layer Networks

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

Page 19: Decentralized Resource Allocation in Application Layer Networks

Catallactic Message Flow

Client request_Service (MyComPortfolio.pdf)

BW Negotiation

Service Negotation

Page 20: Decentralized Resource Allocation in Application Layer Networks

Baseline Message Flow

Master Service Copy as Centralized Auctioner for BW and SC

Client request_Service (MyComPortfolio.pdf)

Page 21: Decentralized Resource Allocation in Application Layer Networks

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

Page 22: Decentralized Resource Allocation in Application Layer Networks

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)

Page 23: Decentralized Resource Allocation in Application Layer Networks

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.

Page 24: Decentralized Resource Allocation in Application Layer Networks

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)

Page 25: Decentralized Resource Allocation in Application Layer Networks

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.

Page 26: Decentralized Resource Allocation in Application Layer Networks

Preliminary Results

Evaluation Criteria. Preliminary Results:

Comparison by Scenarios, Adaptability Evaluation.

Page 27: Decentralized Resource Allocation in Application Layer Networks

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.

Page 28: Decentralized Resource Allocation in Application Layer Networks

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

Page 29: Decentralized Resource Allocation in Application Layer Networks

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

Page 30: Decentralized Resource Allocation in Application Layer Networks

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.

Page 31: Decentralized Resource Allocation in Application Layer Networks

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

Page 32: Decentralized Resource Allocation in Application Layer Networks

Adaptation: Baseline Simulation

In baseline system prices keep constant => no adaptation

Page 33: Decentralized Resource Allocation in Application Layer Networks

Adaptation: Catallactic Simulation

In catalactic system prices adapt over time

Page 34: Decentralized Resource Allocation in Application Layer Networks

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.

Page 35: Decentralized Resource Allocation in Application Layer Networks

Thank you, Questions?

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