ebook img

Decentralised Economic Resource Allocation For Computational Grids PDF

145 Pages·2009·5.32 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Decentralised Economic Resource Allocation For Computational Grids

Decentralised Economic Resource Allocation For Computational Grids by Simon Mark Davy Submittedinaccordancewiththerequirements forthedegreeofDoctorofPhilosophy. TheUniversityofLeeds SchoolofComputing November2008 Thecandidateconfirmsthattheworksubmittedishisownandthattheappropriate credithasbeengivenwherereferencehasbeenmadetotheworkofothers. Thiscopyhasbeensuppliedwiththeunderstandingthatitiscopyrightmaterial andthatnoquotationfromthethesismaybepublishedwithoutproper acknowledgement. Abstract Grid computing is the concept of harnessing the power of many computational re- sources in a transparent manner. It is currently an active research area, with significant challengesduetothescaleandlevelofheterogeneityinvolved. Oneofthekeychallenges inimplementinggridsystemsisresourceallocation. Currently,centralisedapproachesare employedthathavelimitedscalabilityandreliability,whichisakeyfactorinachievinga usablegridsystem. The field of economics is the study of allocating scarce resources using economic mechanisms. Such systems can be highly scalable, robust and adaptive and as such are a potentialsolutiontothegridallocationproblem. Thereisalsoanaturalfitoftheeconomic allocationmetaphortogridsystems,giventhediversityofautonomyofgridresources. We propose that an economic system is a suitable mechanism for grid resource allo- cation. We propose a simple market mechanism to explore this idea. Our system is a fully decentralised economic allocation scheme, which aims to achieve a high degree of scalabilityandreliability,andeasilyallowsresourcestoretaintheirautonomy. We implement a simulation of a grid system to analyse this system, and explore its performance and scalability, with a comparison to existing systems. We use a network tofacilitatecommunicationbetweenparticipatingagents,andwepayparticularattention to the topology of the network between participating agents, examining the effects of differenttopologiesontheperformanceofthesystem. i Acknowledgements I’d like to thank my supervisors Karim Djemame and Jason Noble for all their time, effort and knowledge. I’d like to thank the Biosystems Research Group at the School of Computing for much insightful discussion and enjoyable comradeship. For supporting methroughtheprocessofcompletingthisthesis,I’dliketothankmywonderfulwife. ii Contents 1 Introduction 1 1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.1 ComputationalGrids . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.2 EconomicResourceAllocation . . . . . . . . . . . . . . . . . . . 2 1.1.3 AnEconomicGrid . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.3 InvestigationMethodology . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.4 ThesisContribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.5 ThesisOverview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2 ResourceAllocationonGridSystems 6 2.1 TheGridConcept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2 HistoryofGridResearch . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2.1 EarlyWork . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2.2 TheOpenGridForum . . . . . . . . . . . . . . . . . . . . . . . 9 2.3 GridChallenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.4 GridApplications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.4.1 TypesofApplication . . . . . . . . . . . . . . . . . . . . . . . . 11 2.4.2 TypesofGridSystems . . . . . . . . . . . . . . . . . . . . . . . 12 2.5 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.5.1 GridFabricLayer . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.5.1.1 ComputationalResources . . . . . . . . . . . . . . . . 14 2.5.1.2 StorageResources . . . . . . . . . . . . . . . . . . . . 15 2.5.1.3 NetworkResources . . . . . . . . . . . . . . . . . . . 15 2.5.2 GridConnectivityLayer . . . . . . . . . . . . . . . . . . . . . . 15 2.5.3 GridResourceLayer . . . . . . . . . . . . . . . . . . . . . . . . 15 2.5.4 GridCollectiveLayer . . . . . . . . . . . . . . . . . . . . . . . . 16 2.5.5 GridApplicationLayer . . . . . . . . . . . . . . . . . . . . . . . 16 iii 2.5.6 GirdArchitectureSummary . . . . . . . . . . . . . . . . . . . . 16 2.6 ResourceDiscoveryandAllocation . . . . . . . . . . . . . . . . . . . . 16 2.6.1 ResourceDiscovery . . . . . . . . . . . . . . . . . . . . . . . . 17 2.6.2 ResourceSelection/Allocation . . . . . . . . . . . . . . . . . . . 17 2.6.3 LimitationsofCentralisedApproaches . . . . . . . . . . . . . . 18 2.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3 EconomicsandMarketBasedControl 20 3.1 Economics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.1 Supply,Demand,andMarketEquilibrium . . . . . . . . . . . . . 21 3.1.2 MarketTraders . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.1.3 MarketRulesandAuctions . . . . . . . . . . . . . . . . . . . . . 23 3.1.3.1 EnglishAuction . . . . . . . . . . . . . . . . . . . . . 23 3.1.3.2 DutchAuction . . . . . . . . . . . . . . . . . . . . . . 24 3.1.3.3 Sealed-bidAuction . . . . . . . . . . . . . . . . . . . 24 3.1.3.4 SecondPriceSealedBidAuction . . . . . . . . . . . . 24 3.1.3.5 DoubleAuctions . . . . . . . . . . . . . . . . . . . . . 25 3.1.3.6 OtherAuctionMechanisms . . . . . . . . . . . . . . . 26 3.1.4 ComputationalEconomics . . . . . . . . . . . . . . . . . . . . . 26 3.1.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.1.6 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.2 ComputationalEconomicTraders . . . . . . . . . . . . . . . . . . . . . 29 3.2.1 ModellingHumanTraders: TheTradingAgentCompetition . . . 29 3.2.2 SimpleComputationalTraders . . . . . . . . . . . . . . . . . . . 30 3.2.2.1 ZIPTraders . . . . . . . . . . . . . . . . . . . . . . . 31 3.2.2.2 DecentralisedZIPTraders . . . . . . . . . . . . . . . . 33 3.2.2.3 GDTraders . . . . . . . . . . . . . . . . . . . . . . . 33 3.2.2.4 SimpleAgentComparison . . . . . . . . . . . . . . . 35 3.3 MarketBasedControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 3.3.1 EarlyPre-GridWork . . . . . . . . . . . . . . . . . . . . . . . . 36 3.3.1.1 AgoricOpenSystems . . . . . . . . . . . . . . . . . . 36 3.3.1.2 Enterprise . . . . . . . . . . . . . . . . . . . . . . . . 36 3.3.1.3 Spawn . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.3.1.4 OtherPre-GridSystems . . . . . . . . . . . . . . . . . 37 3.3.2 GridMBCSystems . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.3.2.1 Nimrod/G . . . . . . . . . . . . . . . . . . . . . . . . 38 iv 3.3.2.2 Bellagio . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.3.2.3 Tycoon . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.3.2.4 TheSE3DCompetition . . . . . . . . . . . . . . . . . 40 3.3.2.5 HewlettPackard’sUtilityDataCentre . . . . . . . . . 41 3.3.2.6 CATNETS . . . . . . . . . . . . . . . . . . . . . . . . 43 3.3.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 3.4 NetworkTheory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.4.1 Motivation: ModellingtheMarketplace . . . . . . . . . . . . . . 46 3.4.2 NetworkCharacteristics . . . . . . . . . . . . . . . . . . . . . . 47 3.4.2.1 StatisticalAnalysis . . . . . . . . . . . . . . . . . . . 47 3.4.3 TypesofNetwork . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.4.3.1 RandomNetworks . . . . . . . . . . . . . . . . . . . . 48 3.4.3.2 RegularNetworks . . . . . . . . . . . . . . . . . . . . 48 3.4.3.3 SmallWorldNetworks . . . . . . . . . . . . . . . . . 48 3.4.3.4 ScaleFreeNetworks . . . . . . . . . . . . . . . . . . . 49 3.4.3.5 SocialNetworks . . . . . . . . . . . . . . . . . . . . . 49 3.4.4 AGridMarketplace . . . . . . . . . . . . . . . . . . . . . . . . 50 3.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4 Methodology 51 4.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 4.2 TheGridModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.2.1 ResourcesandJobs . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.2.2 GridSites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.2.3 OtherAbstractionsandAssumptions . . . . . . . . . . . . . . . . 55 4.3 TheMarketModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 4.3.1 Commodities-WhatAreWeTrading? . . . . . . . . . . . . . . 55 4.3.2 TraderRationale . . . . . . . . . . . . . . . . . . . . . . . . . . 55 4.3.3 BuyersandSellers . . . . . . . . . . . . . . . . . . . . . . . . . 56 4.3.4 AuctionRules . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 4.4 EconomicCommunicationModel . . . . . . . . . . . . . . . . . . . . . 57 4.4.1 TraderRelationships . . . . . . . . . . . . . . . . . . . . . . . . 58 4.4.2 NetworkTopology . . . . . . . . . . . . . . . . . . . . . . . . . 58 4.5 ModelEvaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 4.5.1 Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 4.5.2 Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 v 4.6 PreliminaryInvestigation . . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.7 ImplementationDetails . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.7.1 ApproximatingReality . . . . . . . . . . . . . . . . . . . . . . . 62 4.7.2 SystemLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.7.3 SupplyandDemand . . . . . . . . . . . . . . . . . . . . . . . . 63 4.7.4 DecentralisedTrading . . . . . . . . . . . . . . . . . . . . . . . 64 4.7.4.1 AcceptanceProtocol . . . . . . . . . . . . . . . . . . . 66 4.7.4.2 ObservingSuccess/Failure . . . . . . . . . . . . . . . 67 4.7.5 TechnicalDetails . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.8 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 5 PerformanceResults 69 5.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 5.2 Sealed-BidAuction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 5.2.1 ADecentralisedSealedBidAuction . . . . . . . . . . . . . . . . 70 5.2.1.1 TheSealedBidAuctionProtocol . . . . . . . . . . . . 70 5.2.2 BasicPerformance . . . . . . . . . . . . . . . . . . . . . . . . . 72 5.2.3 GridAllocationEfficiency . . . . . . . . . . . . . . . . . . . . . 75 5.2.3.1 JobSize . . . . . . . . . . . . . . . . . . . . . . . . . 77 5.2.4 LimitPrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 5.2.4.1 Nodedegree . . . . . . . . . . . . . . . . . . . . . . . 82 5.2.5 EconomicPerformance . . . . . . . . . . . . . . . . . . . . . . . 83 5.2.6 Scalability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 5.2.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 5.3 CDAAuction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 5.3.1 CDAImplementation . . . . . . . . . . . . . . . . . . . . . . . . 91 5.3.2 ZIPimplementation . . . . . . . . . . . . . . . . . . . . . . . . 92 5.3.3 CDAwithZICTraders . . . . . . . . . . . . . . . . . . . . . . . 93 5.3.4 CDAwithZIPDTraders . . . . . . . . . . . . . . . . . . . . . . 96 5.3.5 CDASummary . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 5.4 NetworkTopologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 5.4.1 ImplementationDetails . . . . . . . . . . . . . . . . . . . . . . . 99 5.4.2 Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 5.4.2.1 SmallWorldNetworks . . . . . . . . . . . . . . . . . 100 5.4.2.2 ScaleFreeNetworks . . . . . . . . . . . . . . . . . . . 103 5.4.2.3 SocialNetworks . . . . . . . . . . . . . . . . . . . . . 106 vi 5.4.3 NetworksSummary . . . . . . . . . . . . . . . . . . . . . . . . 109 5.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 6 Evaluation 110 6.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 6.2 ACentralisedGridAllocationMechanism . . . . . . . . . . . . . . . . . 111 6.2.1 PerformanceCharacteristics . . . . . . . . . . . . . . . . . . . . 112 6.3 ComparisonofSystems . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 6.4 MarketAdaption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 6.5 EvaluationSummary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 7 ConclusionsandFurtherWork 121 7.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 7.1.1 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 7.2 ThesisContribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 7.3 FurtherWork . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 7.3.1 AMoreAccurateModeloftheGrid . . . . . . . . . . . . . . . . 122 7.3.2 GridInfrastructureandNetworkTopology . . . . . . . . . . . . 123 7.3.3 AuctionMechanisms . . . . . . . . . . . . . . . . . . . . . . . . 124 7.3.4 TraderStrategy . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 7.3.5 FurtherEconomicEvaluation . . . . . . . . . . . . . . . . . . . 126 Bibliography 127 vii Chapter 1 Introduction 1.1 Motivation 1.1.1 Computational Grids Theareaof“gridcomputing”,ormorerecently“cloudcomputing”isanongoingresearch area looking at computing resource provision. It denotes a concept of computers as a utility, where computational resource can be provided as-and-when needed transparently to large and diverse numbers of users. It is similar in concept to other utilities, such as water or electricity, indeed the grid name owes in part to its similarity in concept to the National Grid. An ideal grid system would allow users to utilise massive computational resourcesaseasilyandastransparentlyasweplugsomethingintoapowersocketathome andturniton. Whileallowingdifferentpeopletosharecomputingresourcesisnothingnew,thegrid takes the concept to a new level in several ways. Firstly, the sheer scale is much larger. Previously, a few hundred machines, or at the most a few thousand, have been harnessed together in some sort of grid-like system. The grid concept takes these numbers into the tensofthousand,orevenmillions. Secondly,andmoreimportantly,itreliesonthesharing of multiple resources owned and administered by different organisations or individuals. In previous resource sharing systems, the resources are all owned by a single entity. Grid computing, however, aims to allow many resource-owners to participate in sharing their resourcestogetherinasingleunifiedmanner. Thisistheultimateaimofgridcomputing, 1 Chapter1 2 Introduction and presents some major research challenges. Arguably the most significant of these challenges,andtheonewiththefewestpracticalsolutions,isresourceallocation. In a grid environment, a resource is some computational facility which users wish to utilise for their applications and programs. The challenges of deciding which users run which applications on whose resources are significant, especially in the face of huge numbers of resources and different administrative domains. Additionally, to achieve the fullpotentialofgridcomputing,resourceallocationneedstobedoneinafast,automatic, robustandscalablemanner. The current dominant approach is to have a central point that maintains the state of allresourcesonthegrid,andprovideswaysofselectingsuitableresourcestouse. Thisis thehistoricalapproachtoallocatingcomputingresources,asmostcomputationalsystems are centralised in nature. However, this method is not particularly scalable or robust, at least in current implementations, especially when you start to scale to thousands of resources. Current resource allocations systems do not deliver the necessary resource allocationcapabilitiesnecessarytorealisethegridconcept. 1.1.2 Economic Resource Allocation The problem of allocating scarce resources is one that has been ever-present in human history. A resource is scarce if there is not enough supply of that resource to meet the corresponding demand for at a price of 0. The raw method used by nature for allocat- ing such resources is through competition and survival. Humans have developed more sophisticatedsystemsforfacilitatingthisallocation,whichisthesubjectofeconomics. Economicsprovidesasystemforallocatingscarceresourcesbetweendifferentparties usingunderstoodmechanismstoswap(trade)oneresourceforanother,usuallymoneyin exchange for some other resource. Many varying and complex economic systems have arisen over the centuries of human history to facilitate the exchange of scarce goods, and in recent centuries, these system have been much examined in their function and performance. Economicsystemsarerecognisedtobeadaptivetochange,highlyscalable and robust to the failure of individual components. They have evolved to provide highly efficientmethodsofresourcedistributionatalargescale. The property of economic systems that gives rise to these factors is that they are generally decentralised at the base level, except in extreme cases (such as governmen- tal regulation). Whilst many existing economic systems utilise a central mechanism for efficiency, base economic systems developed from individuals acting independent of any central imperative. This decentralisation is present in two distinct ways. Firstly, individ-

Description:
We propose that an economic system is a suitable mechanism for grid resource allo- fully decentralised economic allocation scheme, which aims to achieve a
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.