0% found this document useful (0 votes)
18 views44 pages

Unit 2.1 - PPT

unit 2

Uploaded by

Aarti Aalia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views44 pages

Unit 2.1 - PPT

unit 2

Uploaded by

Aarti Aalia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Ajay Kumar Garg Engineering College,

Ghaziabad

Cloud Computing
(KCS 713)

UNIT 2
CLOUD ENABLING
TECHNOLOGIES SERVICE
ORIENTED
Points To Be Discussed in Unit-2:-

• REST and Systems of Systems


• Web Services
• Publish, Subscribe Model
• Basics of Virtualization
• Types of Virtualization
• Implementation Levels of Virtualization
• Virtualization Structures
• Tools and Mechanisms
• Virtualization of CPU
• Memory
• I/O Devices
• Virtualization Support and Disaster Recovery.
What are “Web Services”?
• “Software application identified by a URI, whose interfaces and
bindings are capable of being defined, described, and discovered as
XML artifacts” – W3C Web Services Architecture Requirements, Oct.
2002
• “Programmable application logic accessible using Standard Internet
Protocols…” – Microsoft
• “An interface that describes a collection of operations that are network
accessible through standardized XML messaging …” – IBM
• “Software components that can be spontaneously discovered,
combined, and recombined to provide a solution to the user’s
problem/request … ” - SUN
History!
• Structured programming
• Object-oriented programming
• Distributed computing
• Electronic Data Interchange (EDI)
• World Wide Web
• Web Services
Distributed Computing
• When developers create substantial applications, it is often more efficient, or
even necessary, for different task to be performed on different computers,
called N-tier applications:

• A 3-tier application might have a user interface on one computer,


business-logic processing on a second and a database on a third – all
interacting as the application runs.

• For distributed applications to function correctly, application components,


e.g. programming objects, executing on different computers throughout a
network must be able to communicate. E.g.: DCE, CORBA, DCOM, RMI
etc.
• Interoperability:
• Ability to communicate and share data with software from different vendors and
platforms
• Limited among conventional proprietary distributed computing technologies
Electronic Data Interchange (EDI)
• Computer-to-computer exchange of business data and documents between
companies using standard formats recognized both nationally and internationally.
• The information used in EDI is organized according to a specified format set by
both companies participating in the data exchange.
Advantages:
• Lower operating costs
• Saves time and money
• Less Errors => More Accuracy
• No data entry, so less human error
• Increased Productivity
• More efficient personnel and faster throughput
• Faster trading cycle
• Streamlined processes for improved trading relationships
Web Services
• Take advantage of OOP by enabling developers to build applications
from existing software components in a modular approach:
• Transform a network (e.g., the Internet) into a library of programmatic
components available to developers to have significant productivity
gains.
• Improve distributed computing interoperability by using open
(nonproprietary) standards that can enable (theoretically) any two
software components to communicate:
• Also, they are easier to debug because they are text-based, rather than
binary, communication protocols
Web Services (contd…)
• Provide capabilities similar to those of EDI (Electronic Data
Interchange), but are simpler and less expensive to implement.
• Configured to work with EDI systems, allowing organisations to use
the two technologies together or to phase out EDI while adopting Web
services.
• Unlike WWW
• Separates visual from non-visual components
• Interactions may be either through the browser or through a desktop
client (Java Swing, Python, Windows, etc.)
Web Services (contd…)
• Intended to solve three problems:
• Interoperability:
• Lack of interoperability standards in distributed object messaging
• DCOM apps strictly bound to Windows Operating system
• RMI bound to the Java programming language
• Firewall traversal:
• CORBA and DCOM used non-standard ports
• Web Services use HTTP; most firewalls allow access though port 80 (HTTP), leading to
easier and dynamic collaboration
• Complexity:
• Web Services: developer-friendly service system
• Use open, text-based standards, which allow components written in different languages and
for different platforms to communicate
• Implemented incrementally, rather than all at once which lessens the cost and reduces the
organisational disruption from an abrupt switch in technologies
Web Service: Definition Revisited
• An application component that:
• Communicates via open protocols (HTTP, SMTP, etc.)
• Processes XML messages framed using SOAP
• Describes its messages using XML Schema
• Provides an endpoint description using WSDL
• Can be discovered using UDDI
Service Oriented Architecture (SOA)
• IBM has created a model to show Web services interactions which is
referred to as a Service-Oriented Architecture (SOA) consisting of
relationships between three entities:
• A service provider;
• A service requestor;
• A service broker
• IBM’s SOA is a generic model describing service collaboration, not
just specific to Web services.
Web Service Model
Web Service Model (contd…)
• Roles in Web Service architecture
• Service provider
• Owner of the service
• Platform that hosts access to the service
• Service requestor
• Business that requires certain functions to be satisfied
• Application looking for and invoking an interaction with a service
• Service registry
• Searchable registry of service descriptions where service providers publish
their service descriptions
Web Service Model (contd…)
• Operations in a Web Service Architecture
• Publish
• Service descriptions need to be published in order for service requestor to find
them
• Find
• Service requestor retrieves a service description directly or queries the service
registry for the service required
• Bind
• Service requestor invokes or initiates an interaction with the service at runtime
Web Service Components
• XML – eXtensible Markup Language
• A uniform data representation and exchange mechanism.
• SOAP – Simple Object Access Protocol
• A standard way for communication.
• WSDL – Web Services Description Language
• A standard meta language to described the services offered.
• UDDI – Universal Description, Discovery and Integration
specification
• A mechanism to register and locate WS based application.
Steps of Operation
Web Service Stack
XML
• Developed from Standard Generalized Markup Method (SGML)
• Widely supported by W3C
• Essential characteristic is the separation of content from presentation
• Designed to describe data
• XML document can optionally reference a Document Type Definition
(DTD), also called a Schema
• XML parser checks syntax
• If an XML document adheres to the structure of the schema it is valid
XML (contd…)
• XML tags are not predefined
• You must define your own tags.
• Enables cross-platform data communication in Web Services
XML vs HTML
• An HTML example:
XML vs HTML (contd…)
• This will be displayed as:

• HTML specifies how the document is to be displayed, and not what information is
contained in the document.
• Hard for machine to extract the embedded information. Relatively easy for human.
XML vs HTML (contd…)
• Now look at the following:

In this case:
• The information contained is being marked, but not for displaying.
• Readable by both human and machines.
SOAP
• Simple Object Access Protocol
• Format for sending messages over Internet between programs
• XML-based
• Platform and language independent
• Simple and extensible
• Uses mainly HTTP as a transport protocol
• HTTP message contains a SOAP message as its payload section
• Stateless, one-way
• But applications can create more complex interaction patterns
SOAP
• Envelope (required) – identifies XML document as SOAP message
• Header (optional) – contains header information
• Body (required) –call and response information
• Fault (optional) – errors that occurred while processing message
SOAP
• Request and Response messages
• Request invokes a method on a remote object
• Response returns result of running the method

• SOAP specification defines an “envelop”


• “envelop” wraps the message itself
• Message is a different vocabulary
• Namespace prefix is used to distinguish the two parts
SOAP
SOAP Request
SOAP Response
Why SOAP?
• Other distributed technologies failed on the Internet
• Unix RPC – requires binary-compatible Unix implementations at each
endpoint
• CORBA – requires compatible ORBs
• RMI – requires Java at each endpoint
• DCOM – requires Windows at each endpoint
• SOAP is the platform-neutral choice
• Simply an XML wire format
• Places no restrictions on the endpoint implementation technology choices
SOAP Characteristics
• SOAP has three major characteristics:
• Extensibility – security and WS-routing are among the extensions under
development.
• Neutrality - SOAP can be used over any transport protocol such as HTTP,
SMTP or even TCP.
• Independent - SOAP allows for any programming model.
SOAP Usage Models
• RPC-like message exchange
• Request message bundles up method name and parameters
• Response message contains method return values
• However, it isn’t required by SOAP
• SOAP specification allows any kind of body content
• Can be XML documents of any type
• Example:
• Send a purchase order document to the inbox of B2B partner
• Expect to receive shipping and exceptions report as response
SOAP Security
• SOAP uses HTTP as a transport protocol and hence can use HTTP
security mainly HTTP over SSL.
• But, since SOAP can run over a number of application protocols (such
as SMTP) security had to be considered.
• The WS-Security specification defines a complete encryption system.
WSDL - Web Service Definition Language
• WSDL : XML vocabulary standard for describing Web services and
their capabilities
• Contract between the XML Web service and the client
• Specifies what a request message must contain and what the response
message will look like in unambiguous notation
• Defines where the service is available and what communications
protocol is used to talk to the service.
WSDL Document Structure
• A WSDL document is just a simple XML document.
• It defines a web service using these major elements:
• port type - The operations performed by the web service.
• message - The messages used by the web service.
• types - The data types used by the web service.
• binding - The communication protocols used by the web service.
A Sample WSDL
Binding to SOAP
UDDI - Universal Description, Discovery,
and Integration
• A framework to define XML-based registries
• Registries are repositories that contain documents that describe
business data and also provide search capabilities and programmatic
access to remote applications
• Businesses can publish information about themselves and the services
they offer
• Can be interrogated by SOAP messages and provides access to WSDL
documents describing web services in its directory
UDDI Roles and Operations
•Service Registry
•Provides support for publishing and locating services
•Like telephone yellow pages
•Service Provider
•Provides e-business services
•Publishes these services through a registry
•Service requestor
•Finds required services via the Service Broker
•Binds to services via Service Provider
How can UDDI be Used?
UDDI Benefits
• Making it possible to discover the right business from the millions
currently online
• Defining how to enable commerce once the preferred business is
discovered
• Reaching new customers and increasing access to current customers
• Expanding offerings and extending market reach
Web Services Security Architecture
THANK YOU

You might also like