
- •Cloud Computing
- •Foreword
- •Preface
- •Introduction
- •Expected Audience
- •Book Overview
- •Part 1: Cloud Base
- •Part 2: Cloud Seeding
- •Part 3: Cloud Breaks
- •Part 4: Cloud Feedback
- •Contents
- •1.1 Introduction
- •1.1.1 Cloud Services and Enabling Technologies
- •1.2 Virtualization Technology
- •1.2.1 Virtual Machines
- •1.2.2 Virtualization Platforms
- •1.2.3 Virtual Infrastructure Management
- •1.2.4 Cloud Infrastructure Manager
- •1.3 The MapReduce System
- •1.3.1 Hadoop MapReduce Overview
- •1.4 Web Services
- •1.4.1 RPC (Remote Procedure Call)
- •1.4.2 SOA (Service-Oriented Architecture)
- •1.4.3 REST (Representative State Transfer)
- •1.4.4 Mashup
- •1.4.5 Web Services in Practice
- •1.5 Conclusions
- •References
- •2.1 Introduction
- •2.2 Background and Related Work
- •2.3 Taxonomy of Cloud Computing
- •2.3.1 Cloud Architecture
- •2.3.1.1 Services and Modes of Cloud Computing
- •Software-as-a-Service (SaaS)
- •Platform-as-a-Service (PaaS)
- •Hardware-as-a-Service (HaaS)
- •Infrastructure-as-a-Service (IaaS)
- •2.3.2 Virtualization Management
- •2.3.3 Core Services
- •2.3.3.1 Discovery and Replication
- •2.3.3.2 Load Balancing
- •2.3.3.3 Resource Management
- •2.3.4 Data Governance
- •2.3.4.1 Interoperability
- •2.3.4.2 Data Migration
- •2.3.5 Management Services
- •2.3.5.1 Deployment and Configuration
- •2.3.5.2 Monitoring and Reporting
- •2.3.5.3 Service-Level Agreements (SLAs) Management
- •2.3.5.4 Metering and Billing
- •2.3.5.5 Provisioning
- •2.3.6 Security
- •2.3.6.1 Encryption/Decryption
- •2.3.6.2 Privacy and Federated Identity
- •2.3.6.3 Authorization and Authentication
- •2.3.7 Fault Tolerance
- •2.4 Classification and Comparison between Cloud Computing Ecosystems
- •2.5 Findings
- •2.5.2 Cloud Computing PaaS and SaaS Provider
- •2.5.3 Open Source Based Cloud Computing Services
- •2.6 Comments on Issues and Opportunities
- •2.7 Conclusions
- •References
- •3.1 Introduction
- •3.2 Scientific Workflows and e-Science
- •3.2.1 Scientific Workflows
- •3.2.2 Scientific Workflow Management Systems
- •3.2.3 Important Aspects of In Silico Experiments
- •3.3 A Taxonomy for Cloud Computing
- •3.3.1 Business Model
- •3.3.2 Privacy
- •3.3.3 Pricing
- •3.3.4 Architecture
- •3.3.5 Technology Infrastructure
- •3.3.6 Access
- •3.3.7 Standards
- •3.3.8 Orientation
- •3.5 Taxonomies for Cloud Computing
- •3.6 Conclusions and Final Remarks
- •References
- •4.1 Introduction
- •4.2 Cloud and Grid: A Comparison
- •4.2.1 A Retrospective View
- •4.2.2 Comparison from the Viewpoint of System
- •4.2.3 Comparison from the Viewpoint of Users
- •4.2.4 A Summary
- •4.3 Examining Cloud Computing from the CSCW Perspective
- •4.3.1 CSCW Findings
- •4.3.2 The Anatomy of Cloud Computing
- •4.3.2.1 Security and Privacy
- •4.3.2.2 Data and/or Vendor Lock-In
- •4.3.2.3 Service Availability/Reliability
- •4.4 Conclusions
- •References
- •5.1 Overview – Cloud Standards – What and Why?
- •5.2 Deep Dive: Interoperability Standards
- •5.2.1 Purpose, Expectations and Challenges
- •5.2.2 Initiatives – Focus, Sponsors and Status
- •5.2.3 Market Adoption
- •5.2.4 Gaps/Areas of Improvement
- •5.3 Deep Dive: Security Standards
- •5.3.1 Purpose, Expectations and Challenges
- •5.3.2 Initiatives – Focus, Sponsors and Status
- •5.3.3 Market Adoption
- •5.3.4 Gaps/Areas of Improvement
- •5.4 Deep Dive: Portability Standards
- •5.4.1 Purpose, Expectations and Challenges
- •5.4.2 Initiatives – Focus, Sponsors and Status
- •5.4.3 Market Adoption
- •5.4.4 Gaps/Areas of Improvement
- •5.5.1 Purpose, Expectations and Challenges
- •5.5.2 Initiatives – Focus, Sponsors and Status
- •5.5.3 Market Adoption
- •5.5.4 Gaps/Areas of Improvement
- •5.6 Deep Dive: Other Key Standards
- •5.6.1 Initiatives – Focus, Sponsors and Status
- •5.7 Closing Notes
- •References
- •6.1 Introduction and Motivation
- •6.2 Cloud@Home Overview
- •6.2.1 Issues, Challenges, and Open Problems
- •6.2.2 Basic Architecture
- •6.2.2.1 Software Environment
- •6.2.2.2 Software Infrastructure
- •6.2.2.3 Software Kernel
- •6.2.2.4 Firmware/Hardware
- •6.2.3 Application Scenarios
- •6.3 Cloud@Home Core Structure
- •6.3.1 Management Subsystem
- •6.3.2 Resource Subsystem
- •6.4 Conclusions
- •References
- •7.1 Introduction
- •7.2 MapReduce
- •7.3 P2P-MapReduce
- •7.3.1 Architecture
- •7.3.2 Implementation
- •7.3.2.1 Basic Mechanisms
- •Resource Discovery
- •Network Maintenance
- •Job Submission and Failure Recovery
- •7.3.2.2 State Diagram and Software Modules
- •7.3.3 Evaluation
- •7.4 Conclusions
- •References
- •8.1 Introduction
- •8.2 The Cloud Evolution
- •8.3 Improved Network Support for Cloud Computing
- •8.3.1 Why the Internet is Not Enough?
- •8.3.2 Transparent Optical Networks for Cloud Applications: The Dedicated Bandwidth Paradigm
- •8.4 Architecture and Implementation Details
- •8.4.1 Traffic Management and Control Plane Facilities
- •8.4.2 Service Plane and Interfaces
- •8.4.2.1 Providing Network Services to Cloud-Computing Infrastructures
- •8.4.2.2 The Cloud Operating System–Network Interface
- •8.5.1 The Prototype Details
- •8.5.1.1 The Underlying Network Infrastructure
- •8.5.1.2 The Prototype Cloud Network Control Logic and its Services
- •8.5.2 Performance Evaluation and Results Discussion
- •8.6 Related Work
- •8.7 Conclusions
- •References
- •9.1 Introduction
- •9.2 Overview of YML
- •9.3 Design and Implementation of YML-PC
- •9.3.1 Concept Stack of Cloud Platform
- •9.3.2 Design of YML-PC
- •9.3.3 Core Design and Implementation of YML-PC
- •9.4 Primary Experiments on YML-PC
- •9.4.1 YML-PC Can Be Scaled Up Very Easily
- •9.4.2 Data Persistence in YML-PC
- •9.4.3 Schedule Mechanism in YML-PC
- •9.5 Conclusion and Future Work
- •References
- •10.1 Introduction
- •10.2 Related Work
- •10.2.1 General View of Cloud Computing frameworks
- •10.2.2 Cloud Computing Middleware
- •10.3 Deploying Applications in the Cloud
- •10.3.1 Benchmarking the Cloud
- •10.3.2 The ProActive GCM Deployment
- •10.3.3 Technical Solutions for Deployment over Heterogeneous Infrastructures
- •10.3.3.1 Virtual Private Network (VPN)
- •10.3.3.2 Amazon Virtual Private Cloud (VPC)
- •10.3.3.3 Message Forwarding and Tunneling
- •10.3.4 Conclusion and Motivation for Mixing
- •10.4 Moving HPC Applications from Grids to Clouds
- •10.4.1 HPC on Heterogeneous Multi-Domain Platforms
- •10.4.2 The Hierarchical SPMD Concept and Multi-level Partitioning of Numerical Meshes
- •10.4.3 The GCM/ProActive-Based Lightweight Framework
- •10.4.4 Performance Evaluation
- •10.5 Dynamic Mixing of Clusters, Grids, and Clouds
- •10.5.1 The ProActive Resource Manager
- •10.5.2 Cloud Bursting: Managing Spike Demand
- •10.5.3 Cloud Seeding: Dealing with Heterogeneous Hardware and Private Data
- •10.6 Conclusion
- •References
- •11.1 Introduction
- •11.2 Background
- •11.2.1 ASKALON
- •11.2.2 Cloud Computing
- •11.3 Resource Management Architecture
- •11.3.1 Cloud Management
- •11.3.2 Image Catalog
- •11.3.3 Security
- •11.4 Evaluation
- •11.5 Related Work
- •11.6 Conclusions and Future Work
- •References
- •12.1 Introduction
- •12.2 Layered Peer-to-Peer Cloud Provisioning Architecture
- •12.4.1 Distributed Hash Tables
- •12.4.2 Designing Complex Services over DHTs
- •12.5 Cloud Peer Software Fabric: Design and Implementation
- •12.5.1 Overlay Construction
- •12.5.2 Multidimensional Query Indexing
- •12.5.3 Multidimensional Query Routing
- •12.6 Experiments and Evaluation
- •12.6.1 Cloud Peer Details
- •12.6.3 Test Application
- •12.6.4 Deployment of Test Services on Amazon EC2 Platform
- •12.7 Results and Discussions
- •12.8 Conclusions and Path Forward
- •References
- •13.1 Introduction
- •13.2 High-Throughput Science with the Nimrod Tools
- •13.2.1 The Nimrod Tool Family
- •13.2.2 Nimrod and the Grid
- •13.2.3 Scheduling in Nimrod
- •13.3 Extensions to Support Amazon’s Elastic Compute Cloud
- •13.3.1 The Nimrod Architecture
- •13.3.2 The EC2 Actuator
- •13.3.3 Additions to the Schedulers
- •13.4.1 Introduction and Background
- •13.4.2 Computational Requirements
- •13.4.3 The Experiment
- •13.4.4 Computational and Economic Results
- •13.4.5 Scientific Results
- •13.5 Conclusions
- •References
- •14.1 Using the Cloud
- •14.1.1 Overview
- •14.1.2 Background
- •14.1.3 Requirements and Obligations
- •14.1.3.1 Regional Laws
- •14.1.3.2 Industry Regulations
- •14.2 Cloud Compliance
- •14.2.1 Information Security Organization
- •14.2.2 Data Classification
- •14.2.2.1 Classifying Data and Systems
- •14.2.2.2 Specific Type of Data of Concern
- •14.2.2.3 Labeling
- •14.2.3 Access Control and Connectivity
- •14.2.3.1 Authentication and Authorization
- •14.2.3.2 Accounting and Auditing
- •14.2.3.3 Encrypting Data in Motion
- •14.2.3.4 Encrypting Data at Rest
- •14.2.4 Risk Assessments
- •14.2.4.1 Threat and Risk Assessments
- •14.2.4.2 Business Impact Assessments
- •14.2.4.3 Privacy Impact Assessments
- •14.2.5 Due Diligence and Provider Contract Requirements
- •14.2.5.1 ISO Certification
- •14.2.5.2 SAS 70 Type II
- •14.2.5.3 PCI PA DSS or Service Provider
- •14.2.5.4 Portability and Interoperability
- •14.2.5.5 Right to Audit
- •14.2.5.6 Service Level Agreements
- •14.2.6 Other Considerations
- •14.2.6.1 Disaster Recovery/Business Continuity
- •14.2.6.2 Governance Structure
- •14.2.6.3 Incident Response Plan
- •14.3 Conclusion
- •Bibliography
- •15.1.1 Location of Cloud Data and Applicable Laws
- •15.1.2 Data Concerns Within a European Context
- •15.1.3 Government Data
- •15.1.4 Trust
- •15.1.5 Interoperability and Standardization in Cloud Computing
- •15.1.6 Open Grid Forum’s (OGF) Production Grid Interoperability Working Group (PGI-WG) Charter
- •15.1.7.1 What will OCCI Provide?
- •15.1.7.2 Cloud Data Management Interface (CDMI)
- •15.1.7.3 How it Works
- •15.1.8 SDOs and their Involvement with Clouds
- •15.1.10 A Microsoft Cloud Interoperability Scenario
- •15.1.11 Opportunities for Public Authorities
- •15.1.12 Future Market Drivers and Challenges
- •15.1.13 Priorities Moving Forward
- •15.2 Conclusions
- •References
- •16.1 Introduction
- •16.2 Cloud Computing (‘The Cloud’)
- •16.3 Understanding Risks to Cloud Computing
- •16.3.1 Privacy Issues
- •16.3.2 Data Ownership and Content Disclosure Issues
- •16.3.3 Data Confidentiality
- •16.3.4 Data Location
- •16.3.5 Control Issues
- •16.3.6 Regulatory and Legislative Compliance
- •16.3.7 Forensic Evidence Issues
- •16.3.8 Auditing Issues
- •16.3.9 Business Continuity and Disaster Recovery Issues
- •16.3.10 Trust Issues
- •16.3.11 Security Policy Issues
- •16.3.12 Emerging Threats to Cloud Computing
- •16.4 Cloud Security Relationship Framework
- •16.4.1 Security Requirements in the Clouds
- •16.5 Conclusion
- •References
- •17.1 Introduction
- •17.1.1 What Is Security?
- •17.2 ISO 27002 Gap Analyses
- •17.2.1 Asset Management
- •17.2.2 Communications and Operations Management
- •17.2.4 Information Security Incident Management
- •17.2.5 Compliance
- •17.3 Security Recommendations
- •17.4 Case Studies
- •17.4.1 Private Cloud: Fortune 100 Company
- •17.4.2 Public Cloud: Amazon.com
- •17.5 Summary and Conclusion
- •References
- •18.1 Introduction
- •18.2 Decoupling Policy from Applications
- •18.2.1 Overlap of Concerns Between the PEP and PDP
- •18.2.2 Patterns for Binding PEPs to Services
- •18.2.3 Agents
- •18.2.4 Intermediaries
- •18.3 PEP Deployment Patterns in the Cloud
- •18.3.1 Software-as-a-Service Deployment
- •18.3.2 Platform-as-a-Service Deployment
- •18.3.3 Infrastructure-as-a-Service Deployment
- •18.3.4 Alternative Approaches to IaaS Policy Enforcement
- •18.3.5 Basic Web Application Security
- •18.3.6 VPN-Based Solutions
- •18.4 Challenges to Deploying PEPs in the Cloud
- •18.4.1 Performance Challenges in the Cloud
- •18.4.2 Strategies for Fault Tolerance
- •18.4.3 Strategies for Scalability
- •18.4.4 Clustering
- •18.4.5 Acceleration Strategies
- •18.4.5.1 Accelerating Message Processing
- •18.4.5.2 Acceleration of Cryptographic Operations
- •18.4.6 Transport Content Coding
- •18.4.7 Security Challenges in the Cloud
- •18.4.9 Binding PEPs and Applications
- •18.4.9.1 Intermediary Isolation
- •18.4.9.2 The Protected Application Stack
- •18.4.10 Authentication and Authorization
- •18.4.11 Clock Synchronization
- •18.4.12 Management Challenges in the Cloud
- •18.4.13 Audit, Logging, and Metrics
- •18.4.14 Repositories
- •18.4.15 Provisioning and Distribution
- •18.4.16 Policy Synchronization and Views
- •18.5 Conclusion
- •References
- •19.1 Introduction and Background
- •19.2 A Media Service Cloud for Traditional Broadcasting
- •19.2.1 Gridcast the PRISM Cloud 0.12
- •19.3 An On-demand Digital Media Cloud
- •19.4 PRISM Cloud Implementation
- •19.4.1 Cloud Resources
- •19.4.2 Cloud Service Deployment and Management
- •19.5 The PRISM Deployment
- •19.6 Summary
- •19.7 Content Note
- •References
- •20.1 Cloud Computing Reference Model
- •20.2 Cloud Economics
- •20.2.1 Economic Context
- •20.2.2 Economic Benefits
- •20.2.3 Economic Costs
- •20.2.5 The Economics of Green Clouds
- •20.3 Quality of Experience in the Cloud
- •20.4 Monetization Models in the Cloud
- •20.5 Charging in the Cloud
- •20.5.1 Existing Models of Charging
- •20.5.1.1 On-Demand IaaS Instances
- •20.5.1.2 Reserved IaaS Instances
- •20.5.1.3 PaaS Charging
- •20.5.1.4 Cloud Vendor Pricing Model
- •20.5.1.5 Interprovider Charging
- •20.6 Taxation in the Cloud
- •References
- •21.1 Introduction
- •21.2 Background
- •21.3 Experiment
- •21.3.1 Target Application: Value at Risk
- •21.3.2 Target Systems
- •21.3.2.1 Condor
- •21.3.2.2 Amazon EC2
- •21.3.2.3 Eucalyptus
- •21.3.3 Results
- •21.3.4 Job Completion
- •21.3.5 Cost
- •21.4 Conclusions and Future Work
- •References
- •Index
12 Peer-to-Peer Cloud Provisioning: Service Discovery and Load-Balancing |
213 |
architecting new applications and algorithms on Cloud infrastructures since it gives finer degree of control and flexibility as regards to runtime control.
To demonstrate the feasibility of architecting Cloud provisioning services based on peer-to-peer network models, we consider composition and execution of Mandelbrot Set computation. Mathematically, the Mandelbrot set is an ordered collection of points in the complex plane, the boundary of which forms a fractal. The Application Provisioner service implements and cloud enables the Mandelbrot fractal calculation using a multithreaded programming model. The application submission interface allows the user to configure a number of horizontal and vertical partitions into which the fractal computation can be divided. The number of independent thread units created is equal to the horizontal x vertical partitions. For evaluations, we vary the values for horizontal and vertical parameters over the interval 5 × 5, 10 × 10, and 15 × 15. This configuration results in observation points.
12.6.4 Deployment of Test Services on Amazon EC2 Platform
To test the feasibility of the aforementioned services with regard to the provisioning of application services on Amazon EC2 cloud platform, we created Amazon Machine Images (AMIs) packaged with a Cloud peer, Application Management, and Aneka Management Co-ordinator services. The image that hosts the Aneka Management Co-ordinator is equipped with Microsoft Windows Server 2003 R2 Datacenter edition, Microsoft SQL Server 2005 Express, and Internet Information Services 6, while the AMI hosts only the Management Service and has Microsoft Windows Server 2003 R2 Datacenter system installed. For every AMI, we installed only the essential software including mandatory Cloud peer service, which is hosted within a Tomcat 6.0.10, Axis2 1.2 container. Cloud peer is exposed to the provisioning and management services through WS* interfaces. Later, we built our customized Amazon Machine Images from the two instances, creating and starting up more management co-ordinator and application management services by using customized images. We configured three management co-ordinators and nine management services. The management service is divided into groups of three that connect with a single co-ordinator resulting in a hierarchical structure. The management co-ordinator services communicate and internetwork through the Cloud peer fabric service. Figure 12.4 shows the pictorial representation of the experiment setup.
12.7 Results and Discussions
To measure the performance of peer-to-peer Cloud provisioning technique in regard to response time, co-ordination delay, and Pastry overlay network message complexity, we consider simultaneous provisioning of test applications at Application Provisioner A and B (see Table 12.7). The response time for an application is calculated by subtracting the output arrival time of the last thread in the submission

214 |
R. Ranjan et al. |
Fig. 12.4 Experiment Setup in Amazon EC2
Table 12.7 Response time, co-ordination delay, message count versus complexity
Problem complexity |
5 × 5 |
|
|
10 × 10 |
|
|
15 × 15 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Provisioner |
|
A |
B |
|
A |
B |
|
A |
B |
|
|
|
|||||||
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
Response time (s) |
27 |
27 |
107 |
104 |
245 |
229 |
|||
Coordination delay (s) |
5.58 |
7.13 |
26.08 |
24.97 |
60.06 |
48.09 |
|||
Update message |
3,203 |
|
3,668 |
|
3,622 |
|
|||
Discovery message |
75 |
|
400 |
|
450 |
|
|||
Total message count |
5,760 |
|
7,924 |
|
8,006 |
|
|||
|
|
|
|
|
|
|
|
|
|
list from the time at which the application is submitted. The metric co-ordination delay sums up the latencies for: (i) a service discovery query to be mapped to a Cloud peer, (ii) waiting time till an update query matches the discovery query; and (ii) notification delay from the Cloud peer to the Application Provisioner that originally posted the service discovery query. Pastry overlay message complexity measures the details related to the number of messages that flow through the network in order to: (i) initialize the multidimensional attribute space, (ii) map the discovery and update queries, (iii) maintain overlay, and (iv) send notifications.
Table 12.7 (response time vs. complexity) shows the results for response time in seconds with increasing complexity/problem size for the test application. Cloud consumers submit their applications with provisioner A and B. The initial experimental results reveal that with increase in problem complexity (number of horizontal and vertical partitions), the Cloud consumers experience increase in response times. The basic reason behind this behaviour of the provisioning system is related
12 Peer-to-Peer Cloud Provisioning: Service Discovery and Load-Balancing |
215 |
to the fixed number Application Management services, i.e. 9, available to the Application Provisioners. With increase in the problem complexity, the number of job threads (a job thread represents a single work unit, e.g. for a 5 × 5 Mandelbrot configuration, 25 job threads are created and submitted with the Application Provisioner) that are to be executed with management services increase, hence leading to worsening queuing and waiting delays. However, this behaviour of the provisioning system can be fixed through implementation of reactive provisioning of new VM instances to reflect the sudden surge in application workload processing demands (problem complexity). In our future work, we want to explore how to dynamically provision or de-provision VMs and associated Application Management services driven by workload processing demands.
Table 12.7 (coordination delay vs. complexity) presents the measurements for average co-ordination delay for each discovery query with respect to increase in the problem complexity. The results show that at higher problem complexity, the discovery queries experience increased co-ordination delay. This happens because the discovery queries of the corresponding job threads have to wait for a longer period of time before they are matched against an update query object. However, the job thread processing time (CPU time) is not affected by the co-ordination delay; hence, the response time in Table 12.7 shows a similar trend to delay.
In Table 12.7 (message count vs. complexity), we show the message overhead involved with management of multidimensional index, routing of discovery and update query messages, and maintenance of Pastry overlay. We can clearly see that as application size (problem complexity) increase, the number of messages required for mapping the query objects and maintenance of the overlay network increase. The number of discovery and update messages produced in the overlay is a function of the multidimensional index structure that indexes and routes these queries in a distributed fashion. Hence, the choice of the multidimensional data indexing structure and routing technique governs the manageability and efficiency of the overlay network (latency, messaging overhead). Hence, there is much work required in this domain as regards to evaluating the performance of different types of multidimensional indexing structures for mapping the query messages in peer-to-peer settings.
12.8 Conclusions and Path Forward
Developing provisioning techniques that integrate application services in a peer-to- peer fashion is critical to exploiting the potential of Cloud computing platforms. Architecting provisioning techniques based on peer-to-peer network models (such as DHTs) is significant; since peer-to-peer networks are highly scalable, they can gracefully adapt to the dynamic system expansion (join) or contraction (leave, failure), and are not susceptible to a single point of failure. To this end, we presented a software fabric called Cloud peer that creates an overlay network of VMs and application services for supporting scalable and self-managing service discovery and load-balancing. The functionality exposed by the Cloud peer service is very
216 |
R. Ranjan et al. |
powerful and our experimental results conducted on Amazon EC2 platform confirm that it is possible to engineer and design peer-to-peer Cloud provisioning systems and techniques.
As part of our future work, we would explore other multidimensional data indexing and routing techniques that can achieve close to logarithmic bounds on messages and routing state, balance query (discovery, load-balancing, coordination) and processing load, preserve data locality, and minimize the metadata. Another important algorithmic and programming challenge in building robust Cloud peer services is to guarantee consistent routing, look-up, and information consistency under concurrent leave, failure, and join operations by application services. To address these issues, we will investigate robust fault-tolerance strategies based on distributed replication of attribute/query subspaces to achieve a high level of robustness and performance guarantees.
References
1.Armbrust M, Fox A, Griffith R, Joseph A, Katz R, Konwinski A, Lee G, Patterson D, Rabkin A, Stoica I, Zaharia M (2009) Above the clouds: a Berkeley view of cloud computing. University of California at Berkley, USA. Technical Rep UCB/EECS-2009-28
2.The Reservoir Seed Team (2008) Reservoir – an ICT infrastructure for reliable and effective delivery of services as utilities. IBM Res Rep H-0262
3.Buyya R, Yeo C, Venugopal S, Broberg J, Brandic I (2009) Cloud computing and emerging IT platforms: vision, hype, and reality for delivering computing as the 5th utility. Future Gen Comput Syst 25:599–616
4.Google (2009) Google App Engine. https://appengine.google.com/. Accessed 16 Dec 2009
5.Ultra Serve Internet Pty Ltd (2009) Rejila On Demand Cloud Computing Servers. http://www. rejila.com/. Accessed 14 Dec 2009
6.Rackspace US, Inc. (2009) The Rackspace Cloud. http://www.rackspacecloud.com. Accessed 12 Dec 2009
7.Microsoft (2009) Windows Azure Platform, http://www.microsoft.com/windowsazure/. Accessed 12 Dec 2009
8.Amazon Web Services LLC (2009) Amazon Elastic Compute Cloud, http://aws.amazon.com/ ec2/. Accessed 16 Dec 2009
9.Salesforce.com (2009) Application Development with Force.com’s Cloud Computing Platform http://www.salesforce.com/platform/. Accessed 16 Dec 2009
10. Quiroz A, Kim H, Parashar M, Gnanasambandam N, Sharma N (2009) Towards autonomic workload provisioning for enterprise grids and clouds. In: Proceedings of the 10th IEEE/ACM international conference on grid computing, Banf, Alberta, Canada, 13–15 Oct 2009, IEEE Computer Society Press
11.Amazon Web Services LLC (2009) Amazon CloudWatch. http://aws.amazon.com/cloudwatch/. Accessed 22 Sept 2009
12. Amazon Web Services LLC (2009) Elastic Load Balancer http://aws.amazon.com/elasticloadbalancing/. Accessed 22 Sept 2009
13. Rochwerger B, Breitgand D, Levy E, Galis A, Nagin K, Llorente L, Montero R, Wolfsthal Y, Elmroth E, Caceres J, Ben-Yehuda M, Emmerich W, Galan F (2009) The reservoir model and architecture for open federated cloud computing. IBM Syst J 53
14. Chu X et al (2007) Aneka: next-generation enterprise grid platform for e-Science and e-Business applications. In: Proceedings of the 3rd IEEE international conference on e-Science and grid computing, Bangalore, India
12 Peer-to-Peer Cloud Provisioning: Service Discovery and Load-Balancing |
217 |
15. Ranjan R, Chan L, Harwood A, Karunasekera S, Buyya R (2007) Decentralised resource discovery service for large scale federated grids. In: Proceedings of the 3rd IEEE international conference on eScience and grid computing (eScience’07), Bangalore, India, IEEE Computer Society, Los Alamitos, CA
16. Eucalyptus Systems Inc (2009) Eucalyptus Systems. http://www.eucalyptus.com/. Accessed 22 Sept 2009
17. Amazon Web Services LLC (2009) Auto Scaling. http://aws.amazon.com/autoscaling/. Accessed 22 Sept 2009
18. GoGrid Cloud Hosting (2009) F5 Load Balancer. GoGrid Wiki. http://wiki.gogrid.com/wiki/ index.php/(F5)_Load_Balancer. Accessed 21 Sept 2009
19. Bakhtiari S, Safavi-Naini R, Pieprzyk J (1995) Cryptographic Hash Functions: A Survey. http://citeseer.ist.psu.edu/bakhtiari95cryptographic.html. Accessed 22 Sept 2009
20. Balakrishnan H, Kaashoek MF, Karger D, Morris R, Stoica I (2003) Looking up data in peer-to-peer systems. Commun ACM 46(2):43–48
21. Karger D, Lehman E, Leighton T, Panigrahy R, Levine M, Lewin D (1997) Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the World Wide Web. In: Proceedings of the 29th annual ACM symposium on theory of computing (STOC ’97), New York. ACM Press, pp 654–663
22. Preneel B (1999) The state of cryptographic hash functions. In: Lectures on data security. Modern cryptology in theory and practice. Springer, London, pp 158–182
23. Lua K, Crowcroft J, Pias M, Sharma R, Lim S (2005) A survey and comparison of peer-to- peer overlay network schemes. IEEE Commun Surv Tutorials 7(2), IEEE Communications Society Press, Washington DC, USA
24. Li J, Stribling J, Gil TM, Morris R, Frans Kaashoek M (2004) Comparing the performance of distributed hash tables under churn. In: Proceedings of the 3rd international workshop on peer-to-peer systems (IPTPS04), San Diego, CA
25. Bharambe A, Agarwal M, Seshan S (2004) Mercury: supporting scalable multi-attribute range queries. In: Proceedings of SIGCOMM 2004 (SIGCOMM’04). ACM, Portland, OR
26. Castro M, Costa M, Rowstron A (2004) Should we build Gnutella on a structured overlay? SIGCOMM Comput Commun Rev 34(1):131–136
27. Linga P, Demers A, Gupta I, Birman K, van R (2003) Kelips: building an efficient and stable peer-to-peer DHT through increased memory and background overhead. In: Proceedings of the 2nd international workshop on peer-to-peer systems (IPTPS03), Berkeley, CA
28. Spence D, Crowcroft J, Hand S, Harris T (2005) Location based placement of Whole Distributed Systems. In: Proceedings of the 2005 ACM conference on Emerging network experiment and technology (CoNEXT’05). ACM Press, New York, pp 124–134
29. Ganesan P, Yang B, Garcia-Molina H (2004) One torus to rule them all: multi-dimensional queries in peer-to-peer systems. In: Proceedings of the 7th International Workshop on the Web and Databases (WebDB ’04). ACM Press, New York, pp 19–24
30. Ranjan R, Harwood A, Buyya R (2008) Peer-to-peer based resource discovery in global grids: a tutorial. IEEE Commun Surv Tutorials 10(2):6–33
31. Samet H (1989) The design and analysis of spatial data structures. Addison–Wesley, Reading, MA
32. Rowstron A, Druschel P (2001) Pastry: scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In: IFIP/ACM international conference on distributed system platforms, Heidelberg
33. Ranjan R (2007) Coordinated resource provisioning in federated grids. Ph.D. thesis, The University of Melbourne
34. Tanin E, Harwood A, Samet H (2007) Using a distributed quadtree index in peer-to-peer networks. VLDB J 16(2):165–178, Springer, New York
35. Gupta A, Sahin OD, Agrawal D, Abbadi AEl (2004) Meghdoot: content-based publish/ subscribe over peer-to-peer networks. In: Proceedings of the 5th ACM/IFIP/USENIX international conference on Middleware (Middleware ’04), New York. Springer, New York, pp 254–273