1 / 30

NETE4631 Cloud-enabling technologies and standards

NETE4631 Cloud-enabling technologies and standards. Lecture Notes #2. Recap – Definition if Cloud Computing.

ronan-munoz
Download Presentation

NETE4631 Cloud-enabling technologies and standards

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NETE4631Cloud-enabling technologies and standards Lecture Notes #2

  2. Recap – Definition if Cloud Computing • “Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.” (A definition by the US National institute of standards and technology (NIST)) • Some of the characteristics • Distributed computing at a massive scale • On demand elasticity • Exploiting existing technologies (Grid, Utility, Virtualization) • Pay per use model • Driven by economies of scale

  3. Recap (2) - Cloud Types

  4. Recap (3) - Benefits VS Challenges

  5. Lecture Outline • Existing technologies • Abstraction and Virtualization • Load balancing • Hypervisor and its types • Communication protocols and Services

  6. Existing technologies • Grid Computing • Utility Computing • Virtualization

  7. Grid Computing • Grid computing combines computers from multiple administrative domains to reach a common goal,to solve a single task. (Wikipedia) • One of the main strategies of grid computing is to use middleware to divide and apportion pieces of a program among several computers, sometimes up to many thousands. • Grid computing involves computation in a distributed fashion, which may also involve the aggregation of large-scale cluster computing-based systems.

  8. Utility Computing • Utility computing is the packaging of computing resources, such as computation, storage and services, as a metered service. This model has the advantage of a low or no initial cost to acquire computer resources; instead, computational resources are essentially rented. (Wikipedia)

  9. Virtualization Technology • Virtualization is the creation of a virtual (rather than actual) version of something, such as a hardware platform, operating system (OS), storage device, or network resources. (Wikipedia)

  10. Virtualization type • Platform virtualization • Virtual memory • Storage virtualization • Network virtualization • Memory virtualization • Application virtualization • Desktop virtualization • Data Center Virtualization

  11. Virtualization Platform virtualization

  12. Which technologies make up Cloud? Grid Computing Utility Computing + Virtualization Technology Cloud

  13. Abstraction and Virtualization • Virtualization supports “Abstraction” • Abstraction is the key concept in providing the promised benefits of cloud computing • Mapping a logical address (id) to a set of physical resources • Virtual servers • Virtual storage • Virtual networks • Load balancing • Hypervisor • Porting applications between vendors

  14. Virtualization (2) • Virtualization is a key enabler of abstraction and cloud computing –logical address for extendable and scalable physical resources • Types of virtualization • Virtualization support for cloud computing attributes • Service-based • Scalable and elastic • Shared services • Metered usage • Internet delivery

  15. Load Balancing • Virtualized network access to a service through load balancing technology –Hardware or software based • Resources to be load balanced • Network interfaces and services such as DNS, FTP, HTTP • Connections through intelligent switches • Processing through computer system assignment • Storage resources • Access to application instances

  16. Load Balancing (2) • A load balancer listens to service request and uses a scheduling algorithm to assign the request • Keeps the record of a request’s session to support a failover for the request

  17. Hypervisor • A low level program that provides system resources access to virtual machines • Hypervisor is also called Virtual Machine Monitor (VMM) • One level higher than the supervisory program for a hardware and/or hardware & OS • Presents a virtual platform to a guest OS and manages its functioning • Two types of Hypervisor • Type 1 or full virtualization (Oracle VM, Vmware ESX) • Type 2 or paravirtualization (Xen)

  18. Types of Hypervisors • Types of Hypervsiors : Reproduced Figure 5.1 from Sosinsky, B., Cloud Computing Bible, 2011.

  19. Communication • Communication • HTTP 1.0 and 1.1 (W3C) • Provide 8 different ways of request (HEAD, GET, POST) • XMPP • Extensible Messaging Presence Protocol (XMPP) –provides two ways of communication as compared to one way • Pooling can be problematic • Because of two ways communication, no pooling required • XML-based and easily extensible • Efficient and can easily scale to millions of concurrent users • Security • Secure Socket Layer (SSL) • Open ID and PCI DSS

  20. Client • Hypertext Markup Language (HTML) • Tags for separating content and HTML code • Cascading Style Sheets for controlling the presentation

  21. Client (2) • Dynamic HTML • Provides more control over HTML elements on client side • Document Object Model (DOM) • Scripts (e.g., JavaScript and ActiveX) • Changing the tags and properties • Real-time positioning • Dynamic fonts (Netscape feature only) • Data binding (IE feature only) • JavaScript

  22. Service • A web service “is a software system designed to support interoperable machine-to-machine interaction over a network” W3C • Data • JSON: JavaScript Object Notation computer data interchange format –transmitted after serialization –alternative to XML • JSON Basics: Based on subset of JavaScript –language independent • JSON should be used instead of XML when JavaScript is used –less CPU overhead and less coding as no need to use DOM for data extraction because an object is already an object in JSON

  23. XML: Extensible Markup Language • Provides a standardized way to represent text and data for platform independence • HTML and XML • XML is extensible by end users while W3C defines HTML

  24. XML: Extensible Markup Language (2) • Key features • Self-descriptive data –no type or relation definition • Database integration: multiple types of data • No programmatic modification –XSL Style sheet can handle • Open Server view of data –only one view of data, even located at different places • Open and extensible • Contains machine-readable context information • Content vs. presentation

  25. Web Services • Representational state transfer (REST) • An architectural style based on Internet-based technologies like HTTP and XML • Easier to use compared with SOAP which has much richer functionality • Resources are sources of specific information and each of them is referred by a global identifier, URI

  26. Web Services (2) • Potential benefits • Better response time and reduced server load -caching • No need to maintain session state • Only browser is enough at the client side • No separate resource discover, hyperlinks are sufficient • Better long term compatibility and evolvability

  27. SOAP • Simple Object Access Protocol (SOAP) • Support communication between two different systems • Procedure calls • Remote Procedure Calls (RPC) wouldn’t go through firewall with HTTP • SOAP solves this problem by describing how to encode an HTTP header and an XML file –so a program can call an other program, both running on different computers, in a way that program calls can get through firewalls

  28. References • Course book – Chapter 3, 5

  29. THANK YOU!!!!!

  30. References of Lecture note#1 • Armbrust, M., et al., 2010, A View of Cloud Computing, ACM, 53(4), pp. 50-58. • Zhang, Q., Cheng, L., Boutaba, R., Cloud Coomputing: state-of-the-art and research challenges, Journal of Internet Services and Applications, 2010, 1:7-18. • The Future of Cloud Computing: Opportunities for European Cloud Computing Beyond 2010.

More Related