Chapter 2 Distributed Computing Infrastructure PDF

Document Details

PreeminentPrairieDog

Uploaded by PreeminentPrairieDog

University of Nizwa

Dr. Kamal Aldin Yousif

Tags

distributed computing web security middleware computer science

Summary

This document is a presentation on distributed computing infrastructure, focusing on web security services. It covers topics such as middleware, client-server models, and inter-process communication. The document also references a textbook for more details.

Full Transcript

INFS308/L Web Security Services Chapter 2: Distributed Computing Infrastructure Dr. Kamal Aldin Yousif INFS308— Web Security Services Dr. Kamal Aldin Yousif Outlines By the end of this chapter, Understand the following key enabling technologies that facilitate the dev...

INFS308/L Web Security Services Chapter 2: Distributed Computing Infrastructure Dr. Kamal Aldin Yousif INFS308— Web Security Services Dr. Kamal Aldin Yousif Outlines By the end of this chapter, Understand the following key enabling technologies that facilitate the development of distributed applications for Web services Middleware The Client Server Model Inter-Process Communications INFS308— Web Security Services Dr. Kamal Aldin Yousif Outlines Distributed Computing and Protocols Middleware The Client Server Model Inter-Process Communications INFS308— Web Security Services Dr. Kamal Aldin Yousif Distributed Computing and Protocols Distributed System: is a collection of networked computers, which autonomously communicate and coordinate their actions by passing messages. Several characteristics: – Autonomous – Heterogeneous – Concurrent application execution – Multi-threaded, multiprocessing applications Many Advancements: – Distributed naming, security mechanisms, distributed filing systems, data replication, distributed transaction mechanisms, … INFS308— Web Security Services Dr. Kamal Aldin Yousif Distributed Computing and Protocols Internet protocols: define the format and the order of messages exchanged between two or more communication entities, as well as the actions taken on the transmission/reception of messages. Available Models with layers: – OSI  Open Systems Interconnection – TCP/IP Why models are developed with Layering? INFS308— Web Security Services Dr. Kamal Aldin Yousif Distributed Computing and Protocols Details in Page 55 INFS308— Web Security Services Dr. Kamal Aldin Yousif Distributed Computing and Protocols User interface that manages and Uses TCP/IP communication End-to-end data transfer, connection-(less) Routing datagrams, Schedule Data Transmission Interface to the actual network hardware INFS308— Web Security Services Dr. Kamal Aldin Yousif Middleware Definition: A connectivity software that is designed to help manage the complexity and heterogeneity inherent in a distributed system – Building a bridge between different systems thereby enabling communication and transfer of data – Application elements can interoperate across network links, despite technical differences Role  Ease the task of designing, programming, and managing distributed applications, How? – Providing a simple, consistent, and integrated distributed programming environment. INFS308— Web Security Services Dr. Kamal Aldin Yousif Middleware The Impact (features) of middleware services on the applications: Locate applications transparently across the network – Interaction with another or service Shield software developers from low-level, tedious, and error-prone platform details – i.e., Socket-level network programming Provide a consistent set of network-oriented abstractions that are much closer to application requirements – Simplify the development of DS Leverage previous developments and reuse them.  Interoperability and backward compatibility. INFS308— Web Security Services Dr. Kamal Aldin Yousif Middleware Impact of middleware services on the applications: Provide a wide array of application-related services. – Reliability, Availability, Authentication, and Security INFS308— Web Security Services Dr. Kamal Aldin Yousif Middleware Characteristics: [refer to the textbook chapter for details] Distributed software layer lies above the OS. Abstract (mask) the complexity and heterogeneity of the underlying distributed environment. Allow Heterogeneity at the application level: Apps written in any language. Allow Transparency with respect to distribution location, concurrency, replication, and failure; Explain this statement? (page 58). INFS308— Web Security Services Dr. Kamal Aldin Yousif Middleware Hocks to allow the user app being linked with the middleware Synchronous (Non-Message-based) / Asynchronous (Message-based) event notification mechanisms Characteristics of protocols for communicating between processes Figure: Middleware layers INFS308— Web Security Services Dr. Kamal Aldin Yousif The Client Server Model Definition: A computational architecture in which processing and storage tasks are divided between two classes of network members, clients and servers. – Roles: Client  service requester; Server  service provider – Some devices may act as both roles. Web server File server INFS308— Web Security Services Dr. Kamal Aldin Yousif The Client Server Model Characteristics: details in page 60 Application-oriented system.  distributed applications Distinguished Tasks on devices – Clients Handles applications that are stored and executed locally or remotely. Initiates the request to the server Manages and maintain the interface with the server. – Server provides the data for the application. Store all of the documents and must be able to respond to requests from clients The most prevalent structure for Internet applications. – i.e., Web, e-mail, file transfer, Telnet applications, newsgroups, … INFS308— Web Security Services Dr. Kamal Aldin Yousif The Client Server Model Clients in distributed systems Fat Client: A type of client in traditional client–server architectures that stores large parts of the application locally. Thin Client: A service requester who communicates with the server via web-based applications. – The code of applications is not downloaded into the client’s computer; instead it is executed them on a powerful computer server. – Is a characteristic of the client-server model. INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Definition Processes on two different end systems (and OS also) communicate with each other by exchanging messages across a computer network. How? – Sending process to transmit a single message to a receiving process. Messaging: enables high-speed, asynchronous, program-to- program communication with reliable delivery INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications What is the structure of message in inter-process comm. ? Header: meta-data information such as the destination of a message, the message type, the message expiration time,… Properties: set of application-defined name/value pairs which to be the main focus and the key of the message (abstract) – used in filtering messages Payload (body): carries the actual “payload” of the message and it may vary over the implementations (Plain-text or special XML) INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Messaging in inter-process communications Message description is done at either sender or receiver. Example of messaging: request/reply message Implemented using the principle of Marshalling to enable inter- communications Marshalling: the process breaking structured data it up so that it can be transmitted as a stream of bytes – The original object or data structure can be reconstructed easily on the receiving end. INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Message destinations and sockets Processes may use multiple ports to receive messages. A process sends messages into, and receives messages from, the network through its socket. – Entry point to the process. Messages usually pass through the receiving process’s socket and the receiving process then acts on the message – Socket must be bound to a local port and must refer to the Internet address INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Figure 2.5: Ports and sockets INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Synchronous and asynchronous message Defined as modes of messages communication. Describe the synchronous message communication scenario. Both comm. parts must be active in all times. Sender App. initiates a request to receiving App. Then blocks its processing till receiving response. Receiving App initiate its process on the request to provide the respond. INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Figure 2.6: Synchronous messaging INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Asynchronous message Usually implemented by some queuing mechanisms. – Types of message queues: 1) store and forward and 2) publish / subscribe Store and Forward mechanism A queue of messages is formed by the sender. It is independent of both the sender and receiver applications (its place is not known to the parts) Two applications can be both senders and receivers relative to the message queue Allows work to be performed whenever applications are ready. INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Store and forward messaging INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Asynchronous message Store and Forward mechanism Implemented in many-to-one messaging paradigm where multiple applications can send messages to a single application. Provides high reliability. Can be repeated across multiple message servers that are chained together. – A message acknowledgement is a mechanism that monitors the progress of a message so that it knows when the message was successfully produced and consumed INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Store and forward involving multiple chained message servers INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Asynchronous message Publish/subscribe messaging mechanism The application that produces information publishes it and all other applications that need this type of information subscribe to it. Asynchronous communication enables a loosely coupled. – So it is a core feature in SOA INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Asynchronous message Publish/subscribe messaging mechanism 1. Publishers publish messages to specific topics. 2. A message server keeps track of all the messages, and all its active subscribers. The message server provides a secure environment through authorization and authentication. 3. As soon as messages are published on a specific topic, they are distributed to all of its subscribers. Subscribers can retrieve the messages if they come up within a specified time. INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications INFS308— Web Security Services Dr. Kamal Aldin Yousif Inter-Process Communications Asynchronous message Publish/subscribe messaging mechanism Message server delivers the published messages based on the subscribed topic Messages have expiration time (TTL) from its publication time – It remains in the server to waiting subscribers possibly connect to it. Messages can be filtered at the subscribers side based on their subscription level. INFS308— Web Security Services Dr. Kamal Aldin Yousif THANK YOU... INFS308— Web Security Services Dr. Kamal Aldin Yousif

Use Quizgecko on...
Browser
Browser