Download
1 / 54

Chapter Goals - PowerPoint PPT Presentation


  • 65 Views
  • Uploaded on

Chapter Goals. Describe client/server and multi-tier application architecture and discuss their advantages compared to centralized applications Explain how operating systems and network protocol stacks cooperate so users and programs can access remote resources

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Chapter Goals' - stacie


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Chapter goals
Chapter Goals

  • Describe client/server and multi-tier application architecture and discuss their advantages compared to centralized applications

  • Explain how operating systems and network protocol stacks cooperate so users and programs can access remote resources

  • Describe low-level protocols for interprocess communication across networks, including sockets, names pipes, RPC, and DCE

Systems Architecture, Fifth Edition


Chapter goals continued
Chapter Goals (continued)

  • List and describe standard Internet protocols used to access distributed resources

  • Discuss component-based application development and describe the protocols and standards that support component-based applications

  • Explain the role and function of directory services and the LSAP standard

Systems Architecture, Fifth Edition



Distributed computing
Distributed Computing

  • Distributing parts of an information system across many computer systems and locations

  • Architectural models

    • Client/server

    • Three-layer

    • N-layer

Systems Architecture, Fifth Edition


Client server architecture
Client/Server Architecture

  • Server

    • Manages system resources; provides access to them through a well-defined communication interface

  • Client

    • Uses communication interface to request resources; server responds to those requests

  • Current dominant model for distributed computing

Systems Architecture, Fifth Edition


One of the many different ways that client/server architecture can be implemented.

Systems Architecture, Fifth Edition


N layer client server architecture
N-Layer Client/Server Architecture architecture can be implemented.

  • Three-layer architecture

    • Divides application software into three tiers

      • Data layer

      • Business logic layer

      • View layer

    • Simplifies distributing or replicating application software across a network

  • N-layer architectures

    • Employ more than three layers

Systems Architecture, Fifth Edition


The view layer acts as a client of the business logic layer, which in turn acts as a client of the data layer.

Systems Architecture, Fifth Edition


Multi layer architectures
Multi-Layer Architectures which in turn acts as a client of the data layer.

  • Require standard models and services to communicate with one another

  • Middleware

    • System software that implements communication standards and gives clients and servers the ability to interact

Systems Architecture, Fifth Edition


Network resource access
Network Resource Access which in turn acts as a client of the data layer.

  • OS components enable distributed access by:

    • Distinguishing between local and remote resources

    • Interacting with distant operating systems

Systems Architecture, Fifth Edition


Protocol stacks
Protocol Stacks which in turn acts as a client of the data layer.

  • Software that implements the lowest five levels of the OSI model

  • Provide several advantages for implementing network I/O and services

Systems Architecture, Fifth Edition


Systems Architecture, Fifth Edition which in turn acts as a client of the data layer.


Advantages of protocol stacks
Advantages of Protocol Stacks which in turn acts as a client of the data layer.

  • Divide network interaction into well-defined pieces that can be separately implemented, installed, and updated

  • Provide flexibility to keep up with rapid protocol standard evolution

  • Insulate application programs and portions of OS from details of low-level network communication protocols and physical network implementation (ensures software portability)

Systems Architecture, Fifth Edition


Accessing remote resources
Accessing Remote Resources which in turn acts as a client of the data layer.

  • Static connection

    • Initialized by user or system administrator prior to accessing a remote resource

    • Difficult to initialize and maintain

  • Dynamic connection

    • Established through interaction between a resource layer and a primary resource registration repository

    • More flexible but requires a distributed registry of resource name and locations

Systems Architecture, Fifth Edition


Premises of remote resource access
Premises of which in turn acts as a client of the data layer.Remote Resource Access

  • Location transparency

  • Service-oriented resource access

  • Resources can be moved among computer systems

Systems Architecture, Fifth Edition


Service oriented resource access
Service-Oriented Resource Access which in turn acts as a client of the data layer.

  • Layers between service layer and device drivers

    • Service provider

      • Server interface to specific resource

    • Resource locator

      • Locates resources referred to in service requests from local or remote users and programs

      • Forwards service requests to appropriate service provider

      • Maintains a resource registry

Systems Architecture, Fifth Edition


Software components that support service-oriented resource access

Systems Architecture, Fifth Edition


Interprocess communication
Interprocess Communication access

  • Distributed processes must communicate with one another to exchange data and synchronize activities

  • Peer-to-peer interprocess communication protocols

    • Sockets

    • Named pipes

    • Remote procedure calls

    • Distributed Computing Environment (DCE)

Systems Architecture, Fifth Edition


Peer to peer communication protocols
Peer-to-Peer Communication Protocols access

  • Lower-level protocols

  • Enable processes to communicate synchronously across a network

  • Often used by system software to exchange data and coordinate activities

Systems Architecture, Fifth Edition



Sockets
Sockets access

  • Unique combinations of an IP number and a port number, separated by a colon (e.g., 129.24.8.1:53)

  • Implement direct process-to-process communication via protocol stacks

  • Supported by all modern OSs, which enable programs to initialize sockets, receive messages sent to a socket, and send messages to sockets anywhere on the Internet

Systems Architecture, Fifth Edition


Each socket uniquely identifies a client or server process on the Internet.

Systems Architecture, Fifth Edition


Named pipes
Named Pipes on the Internet.

  • Region of shared memory that enables multiple processes executing on the same machine to exchange data

  • Name is permanently placed within file system directory

  • Able to communicate among processes on different computers

Systems Architecture, Fifth Edition


OS assigns a free socket to named pipe when it is created, allocates I/O buffers and routes data flowing in/out of the pipe through low-level network protocol stack.

Systems Architecture, Fifth Edition


Remote procedure calls
Remote Procedure Calls allocates I/O buffers and routes data flowing in/out of the pipe through low-level network protocol stack.

  • Allow one process to execute another as a subroutine with parameter passing and format translation

  • The calling process:

    • Passes parameters to the called process

    • Waits for the called process to complete its task

    • Accepts parameters back from the called process

    • Resumes execution with the instruction following the call

Systems Architecture, Fifth Edition


Distributed computing environment
Distributed Computing Environment allocates I/O buffers and routes data flowing in/out of the pipe through low-level network protocol stack.

  • Combines all peer-to-peer approaches and adds security (Kerberos) and minimal directory services

  • Promotes interoperability of distributed software across operating systems and middleware products

Systems Architecture, Fifth Edition


DCE functions are incorporated directly into an operating system or supplied as an optional component.

Systems Architecture, Fifth Edition


The internet
The Internet system or supplied as an optional component.

Systems Architecture, Fifth Edition


Standard web protocols and services
Standard Web Protocols and Services system or supplied as an optional component.

  • Web protocols

    • Define valid resource formats and a standard means of requesting resources

  • Identified by a unique Uniform Resource Locator (URL)

Systems Architecture, Fifth Edition


Resource system or supplied as an optional component.

Host

Protocol

Port

Systems Architecture, Fifth Edition


Systems Architecture, Fifth Edition system or supplied as an optional component.


Systems Architecture, Fifth Edition system or supplied as an optional component.


The internet as an application platform
The Internet as an Application Platform system or supplied as an optional component.

  • Application program executes on a Web server that can be accessed from any computer with an Internet connection

Systems Architecture, Fifth Edition


Systems Architecture, Fifth Edition system or supplied as an optional component.


The internet as an application platform1
The Internet as an Application Platform system or supplied as an optional component.

Systems Architecture, Fifth Edition


Components and distributed objects
Components and Distributed Objects system or supplied as an optional component.

  • Component

    • Standardized, interchangeable software module that is executable, has a unique identifier, and has a well-known interface

  • Distributed object

    • Cooperating process that implements a public interface to the services it provides

Systems Architecture, Fifth Edition


Component based software
Component-Based Software system or supplied as an optional component.

  • Enables construction of complex programs and applications from smaller previously developed parts

  • Requires protocols and infrastructure for component registration, discovery, and communication

Systems Architecture, Fifth Edition


Components and objects
Components and Objects system or supplied as an optional component.

  • Send and respond to messages

  • Encapsulate internal data

  • Interact with other components through awell-defined interface

Systems Architecture, Fifth Edition


Connection standards and infrastructure
Connection Standards and Infrastructure system or supplied as an optional component.

  • Interoperability requires well-defined and widely adopted standards

  • Standard network protocols do not address:

    • Format and content of valid messages and responses

    • Way to uniquely identify each component on the Internet and route messages to/from that computer

  • Additional standards provided by CORBA, COM+, SOAP, J2EE

Systems Architecture, Fifth Edition


Common object request broker architecture corba
Common Object Request Broker Architecture (CORBA) system or supplied as an optional component.

  • Specifies middleware used by objects to interact across networks

  • Key components

    • Object Request Broker (ORB)

    • Internet Inter-ORB Protocol (IIOP)

  • Robust, scalable, independent of programming language, OS, and CPU architecture

  • Disadvantage: Complexity

Systems Architecture, Fifth Edition


Component object model plus com
Component Object Model Plus (COM+) system or supplied as an optional component.

  • Like CORBA, defines component registration, message routing services, and component communication protocol

  • Unlike CORBA, components are not assigned permanent identifier, and are registered in Windows Registry of client machine where installed

  • Disadvantage: Dependence on propriety technology and limited support outside of Microsoft products

Systems Architecture, Fifth Edition


Simple object access protocol soap
Simple Object Access Protocol (SOAP) system or supplied as an optional component.

  • Attempts to address shortcomings of CORBA and COM+

  • Has few infrastructure requirements and relatively simple programming interface

  • Relies on existing Internet protocols

  • Disadvantage: Security and message delivery guarantees

Systems Architecture, Fifth Edition


SOAP: system or supplied as an optional component. Messages are encoded in XML and transmitted using HTTP; enables objects to be located anywhere on the Internet.

Systems Architecture, Fifth Edition


Java 2 enterprise edition j2ee
Java 2 Enterprise Edition (J2EE) system or supplied as an optional component.

  • Standards for developing/deploying component-based distributed applications written in Java

  • Key elements follow three-layer architecture

  • Component interactions based on many standards

    • Remote Method Invocation (RMI)

    • Java Naming and Directory Interface (JNDI)

    • Java Authentication and Authorization Service (JAAS)

    • Java Database Connectivity (JDBC)

Systems Architecture, Fifth Edition


Systems Architecture, Fifth Edition system or supplied as an optional component.


Directory services
Directory Services system or supplied as an optional component.

  • Middleware that:

    • Stores name and network address of distributed resources

    • Responds to directory queries

    • Accepts directory updates

    • Synchronizes replicated or distributed directory copies

  • Integral components of network operating systems

Systems Architecture, Fifth Edition


Information stored in network os directories
Information Stored in Network OS Directories system or supplied as an optional component.

  • Registered users and their permissions to access directory objects

  • Shared hardware resources

  • Shared files, databases, and programs

  • Computer systems and specialized hardware devices

Systems Architecture, Fifth Edition


Lightweight directory access protocol ldap
Lightweight Directory Access Protocol (LDAP) system or supplied as an optional component.

  • Widely deployed directory service standard that can track users, distributed resources, and objects

  • Limited interoperability among different LDAP directories; does not define standard content templates

  • Defines several standard container types and an attribute called distinguished name (DN) which uniquely identifies the object within an objectclass

Systems Architecture, Fifth Edition


  • Container object types: system or supplied as an optional component.

  • Country (C)

  • Organization (O)

  • Organizational Unit (OU)

Systems Architecture, Fifth Edition


Microsoft active directory
Microsoft Active Directory system or supplied as an optional component.

  • Directory service and security system built into Windows server

  • Stores information about network resources

  • Every resource or container object has an access control list that describes access rights

  • Based on LDAP and the Internet Domain Naming Service (DNS)

  • Does not support distributed or component-based software directly

Systems Architecture, Fifth Edition


Systems Architecture, Fifth Edition system or supplied as an optional component.


Systems Architecture, Fifth Edition system or supplied as an optional component.


Summary
Summary system or supplied as an optional component.

  • Distributed computing

  • Network resource access

  • Interprocess communication

  • The Internet

  • Components and distributed objects

  • Distributed computing

Systems Architecture, Fifth Edition


ad