340 likes | 525 Views
CHAPTER 13 Internet and Distributed Application Services. I. Distributed Computing. Client-Server Architecture Network printing services implemented with client-server architecture. Fig.13-2. Service request. Document. Response. Three-layer Architecture. Fig. 13-3. Information request.
E N D
CHAPTER 13 Internet and Distributed Application Services
I. Distributed Computing • Client-Server Architecture Network printing services implemented with client-server architecture Fig.13-2 Service request Document Response
Three-layer Architecture Fig. 13-3 Information request Database query User request Business Logic layer Data layer View layer Unformatted response Query response
N-Layer Client-Server Architecture • The data layer manages stored data, usually in one or more databases • The business logic layer implements the rules and procedures of business processing • The view layer accepts user input and formats and displays processing results
II. Network Resource Access • Protocol stacks • They divide the task of network interaction into several well-defined pieces that can be separately implemented and installed • They provide the flexibility needed to keep up with rapid protocol standard evolution
They insulate application programs and many portions of the operating system from details of low-level network communication protocols and physical network implementation, which ensures software portability across a wide range of network protocols and transmission media
Two upper-level stacks sharing a single NIU and driver Fig. 13-4 Layer description Stack 1 Stack 2
Accessing Remote Resources • Operating systems, application programs, and user interfaces are simpler if there is no distinction between local and remote resource access • All resources potentially are shared across a network • Any computer system potentially is both a client and a server • Resources can be moved among computer systems
Fig. 13-6 Application program Software layers to access local and remote resources Service call Local service layer Service request Resource locator Service request Service request Service provider Low-level protocol stack Local device driver Local hardware device Network messages
Resource Locator has two important tasks: • The locator resources referred to in service requests from local or remote users and programs • Route service requests to the appropriate service provider
III. Interprocess Communication Fig.13-7Peer-to-peer protocols layered over TCP/IP
Sockets Fig. 13-8 Multiple Processes communicating through sockets Computer A Computer B Client process Client process Client process Client process TCP/IP layer 0|1|2|3|4|5|6••• Sockets 0|1|2|3|4|5|6••• Sockets TCP/IP layer (129.24.8.212) (207.46.230.219) Physical layer Physical layer Network
Named Pipes • A name that is permanently placed within a file system directory • The ability to communicate among processes on different computers
Fig. 13-9Two processes communicating through a named pipe Computer A Computer B Sending process Sending process File I/O Service calls File I/O Service calls Named pipe Service Named pipe Service I/O buffer I/O buffer 0|1|2|3|4|5|6••• Sockets 0|1|2|3|4|5|6••• Sockets TCP/IP layer TCP/IP layer Physical layer Physical layer Network
Remote Procedure Calls • 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
IV. The Internet • The Internet is a global collection of networks that are interconnected using TCP/IP • The World Wide Web(www), also called the Web, is a collection of resources(programs, files, and services) that can be accessed over the Internet by standard protocols such as the File Transfer Protocol(FTP) and Hypertext Transfer Protocol(HTTP) • An Intranet is a private network that uses Internet protocols but is accessible only by a limited set of internal users(usually members of the same organization or workgroup). It also describes a set of privately accessible resources that are organized and delivered via one or more Web protocols over a TCP/IP network
Standard Web Protocols and Services • Protocol- an optional header specifying the resource access protocol (http:// is the default value) • Host- the P number or registered name of an Internet host computer or device • Port- an optional port number that, together with the IP address, specifies a socket as described in Chapter 9 (if omitted, a standard port number for the protocol is assumed) • Resource- the complete path name of a resource on the host (if omitted, the host can be configured to supply a default value)
Fig. 13-11URL components IP address or host name Optional resource name on IP host Optional protocol header and separator Optional port number and separator
Fig. 13-12 Telnet Connection O/S command layer Telnet client Telnet server Network protocol stack Network protocol stack Remote stack Local host
Home or office microcomputer Fig. 13-15 A distributed Web-based application User Web browser software Database server software Web server software Payroll update application Payroll database Database server Web server
Although sockets, named pipes, HTTP, and HTML are adequate to implement distributed applications, they’re not optimal for the following reasons: • With lower-level protocols, server addresses are stored in client configuration files or source code. I server resources are moved, the clients must be reconfigured or recompiled. • Breaking up server-side processes into small manageable pieces is difficult. Each new distributed piece requires a new set of hard-coded connections. • Developers usually create large complex server processes to avoid the complexity of large numbers of connections between many smaller server processes. But doing so reduces the chances that server processes can be incorporated into multiple distributed applications.
V. Components and Distributed Objects • Component- • Is executable • Has a unique identifier • Has a well-known interface
Component-Based Software • The developers of another word processing program want to incorporate the existing grammar-checking function into their product • The developers of the grammar-checking function modify it to improve speed and accuracy
Components and objects • Connection Standards and Infrastructure
Fig. 13-16Standard connectors and infrastructure enable communication between telephones Telephone infrastructure
Two important issues protocols don’t address: • Format and content of valid messages and responses • Means of uniquely identifying each component on the internet and routing messages to and from that component
CORBA • Object Request Broker(ORB), a service that maintains a component directory and routes messages among components • Internet Inter-ORB Protocol(IIOP), a component message-passing protocol
COM+ • Components are not assigned a permanent identifier and their internal states cannot be stored permanently. COM+ components can’t remember information from one invocation to the next. COM+ components are similar to functions or subroutines. CORBA components are objects • COM+ Components are registered in the Windows Registry of the client machine on which they’re installed. The Windows Registry stores information other than component registrations, including hardware configuration, software configuration, and user profile information. A CORBA ORB is dedicated to component services
VI. Directory Services • Stores the name and network address of distributed resources • Responds to directory queries • Accepts directory updates • Synchronizes replicated or distributed directory copies • Network operating system directories store information about: • Registered users and their permissions to access directory objects • Shared hardware resources such as printers • Shared files, databases, and programs • Computer systems and specialized hardware devices such as network storage appliances
Fig. 13-17An LDAP hierarchy of objects and container objects Directory root C = Mexico C = USA C = Canada OU = University of New Mexico OU = New Mexico State University O = School of Arts and Sciences O = School of Management O = School of Law O = Faculty O = Workstations O = Servers DN = AGUILA DN = AVERIA DN = Ranjit Bose DN = Stephen Burd DN = ASM