Allocation in Application Layer Networks T. Eymann, M. Reinicke Albert-Ludwigs-University, Freiburg (DE) O. Ardaiz, P. Artigas, L. Díaz de Cerio, F. Freitag, R. Messeguer, L. Navarro, D. Royo Universitat Politècnica de Catalunya, Barcelona (ES) CATNET project – Open Research, Evaluation (3/2002-3/2003) Exploring Decentralized Resource
Problem: Provisioning services Requiring (huge amount of) resources From large number of computers CDN, Grid and P2P Objective: evaluation of decentralized mechanism for resource allocation, based on economic paradigm: Catallaxy. (compare against a centralized mechanism using an arbitrator object) A concrete case for an application is, for instance, the distributed provisioning of web services for Adobes Acrobat (for creating PDF files) in an Akamai-like application layer network. Problem and objective
Application Layer Networks (ALN) Application layer networks are software architectures that allow the provisioning of services requiring a huge amount of resources by connecting large numbers of individual computers. They are built over a base network that is used to support this second network, layered upon the underlying infrastructure. Motivation: ALN have dynamic demands Deployment/Allocation Requirements: Programable Infrastructure: Nodes with BW, Storage & Processing Resources. Deployment/Allocation Mechanisms: Resource Allocation Algorithm, ….
ALN Lifecycle Phases: Deployment: initial positioning of resources. Deployment can also be economically modeled, although we treat as if done. Allocation: main focus here. Allocates resources for the demands. Changes resource locations: Migrate Clone
Catallaxy Basics 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 Smiths invisible hand Hayeks spontaneous order Walras non-tâtonnement process
Catallaxy Coordination mechanism for systems consisting of autonomous decentralized devices. Based on constant negotiation and price signaling Based on efforts from both agent technology and economics Agents are able to adapt their strategies using machine learning mechanisms Evolution of software agent strategies, a stabilization of prices throughout the system and self-regulating coordination patterns Earlier work has used economic principles for resource allocation in distributed computer systems, but most of these approaches rely on using a centralized auctioneer
Catallaxy properties Spontaneous order of the participants Unplanned result of individuals' planful actions (Hayek) Constitutive Elements of the Catallaxy Access to a Market Knowledge about availability of resources is transported through price information Constitutional Ignorance Self-interest and autonomy of participants Ability to choose between alternative actions Learning Dynamic Co-Evolution Income expectations and price relations stabilize development Problems Tragedy of commons Free riding
Catnet Properties Agent-based solution is always inferior to analytical optimization Information The more information is available, the more accurate are the choices The more agents, the more information exists Computation Computation is fully parallel (no central bottleneck) Solution always exists in the system (no non-allocated resource)
Agents State Agents genotype: Acquisitiveness Satisfaction Price Step Price Next Weight Memory Reputation For each service: Price Distribution For each negotiation: Negotiation History
Parameters to measure Social Welfare (SWF): Sum of all utilities over all participants, in a given timespan Clients subjectively value SC access Prices change due to supply and demand Individual utility = transaction price – market value Also: Response Time (REST), Resource allocation efficiency (RAE), Communication cost (CC), Client- Resource assignment distance.
Experimental Simulator Abstracts from a concrete application and implementation. Allows plug-in of different middleware resource allocation mechanisms. Allows easy changes of Decentralized agent strategies Centralized allocation mechanisms.
Simulation of ALNs CDN P2P GRID A few, powerful A lot, modest Fixed networks Mobile, ad - hoc, overloaded networks Stable Changing node density node dynamics lowmediumhigh medium high CDN P2P GRID In an abstract simulator ALN
Javasim models almost every aspect of a real network: latency, bandwith, lost packets, routing, … It has some of the more common internet protocols like DV, TCP, UDP, … So our components can be easily modified to work in the real world changing the middleware to real sockets. Javasim The Catnet simulator is build over JavaSim, JavaSim is a network simulator based in autonomous components.
Components On top of the physical nodes, a number of different software agents are created, which form the application layer network: Client (C): computer program at host, requests service Service Copy (SC): instance of service, hosted in a resource computer Resource (R): host computer with limited storage and bandwidth R Port 101 C Port 102 SC Port 103 UDP IP - Independent on each other at javasim level - Running as programs with a socket on a computer - Configuration made at startup script
Catallactic Message Flow
Components Generic behaviour on messages Using generic functions: - Bargain/RecommendedAction - Price management So changing strategies is easy Particular behaviour on some messages
Configuration We use TCl to set-up the experiments: Topology Node configuration: wich components (C/R/SC/MSC) should be on each node. Application Layer Network initialitzation Agent parameters: bandwith, price ranges, money balance, genotype, … Current experiment parameters
Output - 1
Output - 2 (Catallaxy shows development over time)
Output - 3
Soundness of Criteria Interdepencies SWF and RAE are dependent Every transaction adds to SWF More transactions add to RAE SWF and CC are dependent Higher CC lowers SWF SWF and REST are dependent Higher REST means more transactions More transactions add to RAE and SWF SWF captures all costs and revenues Dependencies are an emergent feature of the system No direct links have been implemented: economic reasoning works bottom-up in an ACE sense
Conclusions Initial simulation results prove that a decentralized, economic model works better in certain situations. Better is a combination of factors (SWF) Promising: Large scale Dynamic Saturation
Future Future research work: Agent technology layer Application-specific layer Both are linked in a feedback loop. Also: A lot of influencing parameters apart from Density and Dynamism, not fully evaluated due to time constraints.
END Any questions? More info on