Presentation is loading. Please wait.

Presentation is loading. Please wait.

Internet and Distributed Application Services

Similar presentations


Presentation on theme: "Internet and Distributed Application Services"— Presentation transcript:

1 Internet and Distributed Application Services
Chapter 13 Internet and Distributed Application Services

2 Chapter 13 Internet and Distributed Application Services
Chapter Outline Distributed Computing Network Resource Access Interprocess Communication Focus – Distributed Computing Environment The Internet Components and Distributed Objects Focus – Java 2 Enterprise Edition Directory Services Focus – Microsoft Active Directory

3 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 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

4 Chapter Topics

5 Distributed Computing
Distributing parts of an information system across many computer systems and locations Architectural models Client/server Three-layer N-layer

6 Client/Server Architecture
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

7 Client/Server Architecture
One of the many different ways that client/server architecture can be implemented.

8 Client/Server Architecture
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

9 Three-Layer Client/Server Architecture
The view layer acts as a client of the business logic layer, which in turn acts as a client of the data layer.

10 Multi-Layer Architectures
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

11 Network Resource Access
OS components enable distributed access by: Distinguishing between local and remote resources Interacting with distant operating systems

12 Protocol Stacks Software that implements the lowest five levels of the OSI model Provide several advantages for implementing network I/O and services

13 Protocol Stacks

14 Advantages of Protocol Stacks
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)

15 Accessing Remote Resources
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

16 Premises of Remote Resource Access
Location transparency Service-oriented resource access Resources can be moved among computer systems

17 Service-Oriented Resource Access
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

18 Software components that support service-oriented resource access

19 Interprocess Communication
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)

20 Peer-to-Peer Communication Protocols
Lower-level protocols that enable processes to communicate synchronously across a network Often used by system software to exchange data and coordinate activities

21 Sockets Unique combinations of an IP number and a port number, separated by a colon (e.g., :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

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

23 Named Pipes 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

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

25 Remote Procedure Calls
Allow one process to execute another as a subroutine with parameter passing and format translation The calling process does the following: 1. Passes parameters to the called process 2. Waits for the called process to complete its task 3. Accepts parameters back from the called process 4. Resumes execution with the instruction following the call

26 Distributed Computing Environment
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

27 Distributed Computing Environment
DCE functions are incorporated directly into an operating system or supplied as an optional component.

28 The Internet Internet Global collection of networks interconnected using TCP/IP Infrastructure upon which the Web is based WWW Collection of resources (programs, files, services), accessible over the Internet by standard protocols (FTP, HTTP) Organized using client/server architecture Intranet Private network that uses Internet protocols; accessible only to a limited set of internal users Set of privately accessible resources, organized and delivered via Web protocols over a TCP/IP network

29 Standard Web Protocols and Services
Define valid resource formats and a standard means of requesting resources Identified by a unique URL Uniform Resource Locator

30 URL Components Host Resource Protocol Port

31 Web Protocols

32 Remote Login Telnet Allows access to a remote computer
as if the user was sitting in front of it!

33 The Internet as an Application Platform
Application program executes on a Web server that can be accessed from any computer with an Internet connection

34 The Internet as an Application Platform
Advantages Disadvantages Expands accessibility Eliminates need to install custom client software Cheaper to develop and deploy Built around existing Web standards and browser software already installed on clients Security Performance Reliability

35 Components and Distributed Objects
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

36 Component-Based Software
Enables construction of complex programs and applications from smaller previously developed parts Requires protocols and infrastructure for component registration, discovery, and communication

37 Components and Objects
Send and respond to messages Encapsulate internal data Interact with other components through a well-defined interface

38 Connection Standards and Infrastructure
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

39 CORBA Common Object Request Broker Architecture
Specifies middleware used by objects to interact across networks Key components Object Request Broker (ORB) Interface Definition Language (IDL) Internet Inter-ORB Protocol (IIOP) Robust, scalable, independent of programming language, OS, and CPU architecture Disadvantage: Complexity

40 Component Object Model
COM is an interface standard for software components introduced by Microsoft in 1993. enables interprocess communication and dynamic object creation in a large range of programming languages. A language-neutral way to implement objects to be used in other environments or machines. Differing language requirements are overcome by making objects responsible for their own creation and destruction through reference-counting. Although the interface standard has been implemented on several platforms, COM is primarily used with Microsoft Windows.

41 COM+ Component Object Model Plus
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

42 SOAP Simple Object Access Protocol
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

43 SOAP Simple Object Access Protocol
Messages are encoded in XML and transmitted using HTTP Enables objects to be located anywhere on the Internet.

44 J2EE Java 2 Enterprise Edition
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)

45 J2EE

46 Directory Services 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

47 Information Stored in Network OS Directories
Registered users and their permissions to access directory objects Shared hardware resources Shared files, databases, and programs Computer systems and specialized hardware devices

48 LDAP Lightweight Directory Access Protocol
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

49 Container Object Types
Country (C) Organization (O) Organizational Unit (OU)

50 Microsoft Active Directory
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

51

52

53 Summary Distributed computing Network resource access
Interprocess communication The Internet Components and distributed objects

54 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 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


Download ppt "Internet and Distributed Application Services"

Similar presentations


Ads by Google