28.2 Functionality Application Software Provides Applications supply the high-level services that user access, and determine how users perceive the capabilities.

Slides:



Advertisements
Similar presentations
DISTRIBUTED COMPUTING PARADIGMS
Advertisements

Categories of I/O Devices
CCNA – Network Fundamentals
Answers of Exercise 7 1. Explain what are the connection-oriented communication and the connectionless communication. Give some examples for each of the.
Network Layer and Transport Layer.
Slide 1 Client / Server Paradigm. Slide 2 Outline: Client / Server Paradigm Client / Server Model of Interaction Server Design Issues C/ S Points of Interaction.
CS335 Networking & Network Administration Tuesday, May 25, 2010.
Distributed Computing. Spring 2002Computer Networks Applications Networking Master-slave: A large, central computer controls small I/O devices Peer-to-peer.
Socket Programming.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 17 Introduction to the Application.
© 2007 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets with Internet Applications, 4e By Douglas.
Chapter 29 Structure of Computer Names Domain Names Within an Organization The DNS Client-Server Model The DNS Server Hierarchy Resolving a Name Optimization.
Chapter 25 Internet Routing Internetworking Technology How routing tables are built initially How routing software updates the tables as needed. Propagation.
© 2007 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets with Internet Applications, 4e By Douglas.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Application Layer PART VI.
An Introduction to Internetworking. Algorithm for client-server communication with UDP (connectionless) A SERVER A CLIENT Create a server-socket (listener)and.
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
1 Computer Networks and Internets, 5e By Douglas E. Comer Lecture PowerPoints Adapted from the notes By Lami Kaya, © 2009 Pearson Education.
What Is TCP/IP? The large collection of networking protocols and services called TCP/IP denotes far more than the combination of the two key protocols.
ARCHITETCTURES of COMPUTERS SYSTEMS
Client Server Model and Software Design TCP/IP allows a programmer to establish communication between two application and to pass data back and forth.
I NTRODUCTION OF S OCKET P ROGRAMMING L.Aseel AlTurki King Saud University.
Fundamentals of Python: From First Programs Through Data Structures
Chapter 26 Client Server Interaction Communication across a computer network requires a pair of application programs to cooperate. One application on one.
CSIT 320 (Blum)1 Client-Server Interaction Based on Appendix 1 in Computer Networks and Internets, Comer.
Process-to-Process Delivery:
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
思科网络技术学院理事会. 1 Application Layer Functionality and Protocols Network Fundamentals – Chapter 3.
NetworkProtocols. Objectives Identify characteristics of TCP/IP, IPX/SPX, NetBIOS, and AppleTalk Understand position of network protocols in OSI Model.
1 Chapter Client-Server Interaction. 2 Functionality  Transport layer and layers below  Basic communication  Reliability  Application layer.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 3.1 Internet Applications Ch. 31,32,34 (DNS, , TELNET, FTP)
1 Computer Networks DA Chapter 1-3 Introduction.
HOW WEB SERVER WORKS? By- PUSHPENDU MONDAL RAJAT CHAUHAN RAHUL YADAV RANJIT MEENA RAHUL TYAGI.
Jozef Goetz, Application Layer PART VI Jozef Goetz, Position of application layer The application layer enables the user, whether human.
The OSI Model and the TCP/IP Protocol Suite Outline: 1.Protocol Layers 2.OSI Model 3.TCP/IP Model 4.Addressing 1.
1 Version 3.0 Module 11 TCP Application and Transport.
Server Sockets: A server socket listens on a given port Many different clients may be connecting to that port Ideally, you would like a separate file descriptor.
User Datagram Protocol (UDP) Chapter 11. Know TCP/IP transfers datagrams around Forwarded based on destination’s IP address Forwarded based on destination’s.
DISTRIBUTED COMPUTING PARADIGMS. Paradigm? A MODEL 2for notes
Dr. John P. Abraham Professor University of Texas Pan American Internet Applications and Network Programming.
The Socket Interface Chapter 21. Application Program Interface (API) Interface used between application programs and TCP/IP protocols Interface used between.
Networking Relationships What is a computer network?
Client-Server Model of Interaction Chapter 20. We have looked at the details of TCP/IP Protocols Protocols Router architecture Router architecture Now.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 3.1 Internet Applications Ch. 28,… (Client-Server Concept, Use of Protocol Ports, Socket API)
1 Client-Server Interaction. 2 Functionality Transport layer and layers below –Basic communication –Reliability Application layer –Abstractions Files.
The Client-Server Model And the Socket API. Client-Server (1) The datagram service does not require cooperation between the peer applications but such.
Part 4: Network Applications Client-server interaction, example applications.
Chapter 20 - Electronic Mail Introduction Description Of Functionality –send a single message to many recipients. –send a message that includes text, voice,
©The McGraw-Hill Companies, Inc., 2000© Adapted for use at JMU by Mohamed Aboutabl, 2003Mohamed Aboutabl1 1 Chapter 15 Application Layer and Client-Server.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
The Client Server Model And Software Design
CSI 3125, Preliminaries, page 1 Networking. CSI 3125, Preliminaries, page 2 Networking A network represents interconnection of computers that is capable.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Network Architecture Protocol hierarchies Design Issues for the layers
Quiz 1 Key 3. Class B 5. |Ethernet Frame|IP Datagram|TCP Header|FTP Header|Data|
File Transfer And Access (FTP, TFTP, NFS). Remote File Access, Transfer and Storage Networks For different goals variety of approaches to remote file.
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets, 5e By Douglas E. Comer Lecture PowerPoints.
R Some of these slides are from Prof Frank Lin SJSU. r Minor modifications are made. 1.
DM Collaboration – OMA & BBF: Deployment Scenarios Group Name: WG5 - MAS Source: Tim Carey, ALU, Meeting Date:
1 K. Salah Application Layer Module K. Salah Network layer duties.
Process-to-Process Delivery:
ARCHITETCTURES of COMPUTERS SYSTEMS
Chapter 3 Internet Applications and Network Programming
File Transfer and access
NET323 D: Network Protocols
Client-Server Interaction
Chapter 3: Windows7 Part 4.
NET323 D: Network Protocols
ARCHITETCTURES of COMPUTERS SYSTEMS
Presentation transcript:

28.2 Functionality Application Software Provides Applications supply the high-level services that user access, and determine how users perceive the capabilities of the underlying internet. (ie: Sending or receiving , transferring files, browsing information archives) Applications determine the format in which information is displayed and the mechanisms utilized to select and access information. (ie: Application software defines names for computers, i/o devices such as printers, and abstract items such as files). Application software handles the details of translating symbolic names into equivalent number values automatically.

28.3 Functionality an Internet Provides An internet is like a telephone system in two significant ways. First, although it provides the ability to communicate, the internet does not specify which computers interact or what those computers do with the communication service. Second, the network hardware and associated protocol software do not know when to initiate contact with or when to accept an incoming communication from a remote computer.

28.3 Functionality an Internet Provides “Although an internet system provides a basic communication service, the protocol software cannot initiate contact with, or accept contact from, a remote computer. Instead two application programs must participate in any communication: one application initiates communication and the other accepts it.”

28.4 Making Contact The application informs local protocol software that a specific type of message is expected, and then the application waits. When an incoming message matches what the application has specified, protocol software passes the message to the application.

28.5 The Client - Server Paradigm A server application waits passively for contact, while a client application initiates communication actively.

28.6 Characteristics of Clients and Severs Client Software: Is an arbitrary application program that becomes a client temporarily when remote access is needed, but also performs other computation locally. Is invoked directly by a user, and executes only for one session. Runs locally on a user’s computer. Actively initiates contact with a server. Can access multiple servers as needed, but actively contacts one remote server at a time. Does not require special hardware or a sophisticated operating system.

28.6 Characteristics of Clients and Severs Server Software: Is a special-purpose, privileged program dedicated to providing one service, but can handle multiple remote clients at the same time. Is invoked automatically when a system boots, and continues to execute through many sessions. Runs on a shared computer. Waits passively for contact from arbitrary remote clients. Accepts contact from arbitrary clients, but offers a single service. Requires powerful hardware and a sophisticated operating system.

28.7 Server Programs and Server- Class Computers  Formally the term server refers to a program that waits passively for communication, and not to the computer on which it executes.

28.8 Requests, Response, and Direction of Data Flow Information can flow in either or both directions between a client and server. Although many services arrange for the client to send one or more requests and the server to return responses, other interactions are possible.

28.9 Transport Protocols and Client-Server Interaction A client and server each interact with a protocol in the transport layer. (See figure 28.1)

28.10 Multiple Services on One Computer A single, server-class computer can offer multiple services at the same time; a separate server program is needed for each service. Running many servers on a single computer is practical because a server does not consume computational resources while waiting for a request. (See figure 28.2)

28.11 Identifying a Particular Service Transport protocols assign each service a unique identifier. Both Clients and servers specify the service identifier; protocol software uses the identifier to direct each incoming request to the correct server.

28.12 Multiple Copies of a Server for a Single Service A computer system that permits multiple application programs to execute at the same time is said to support concurrency, and a program that has more than one thread of control is called a concurrent program. Concurrency is fundamental to the client-server model of interaction because a concurrent server offers service to multiple clients at the same time, without requiring each client to wait for previous clients to finish.

28.13 Dynamic Server Creation Concurrent execution is fundamental to servers because concurrency permits multiple clients to obtain a given service without having to wait for the server to finish previous requests. In a concurrent server, the main server thread creates a new service thread to handle each client.

28.14 Transport Protocols and Unambiguous Communication Transport protocols assign an identifier to each client as well as to each service. Protocol software on the server’s machine uses the combination of client and server identifiers to choose the correct copy of a concurrent server.

28.15 Connection-Oriented and Connectionless Transport Clients and servers can use either connection-oriented or connectionless transport protocols to communicate. When using a connection-oriented transport, a client first forms a connection to a specific server. The connection then stays in place while the client sends requests and receives responses. When it finishes using the service, the client closes the connection.

28.15 Connection-Oriented and Connectionless Transport Clients and servers that use connectionless protocols exchange individual messages. For example, many services that use connectionless transport require a client to send each request, and the server to return each response, in a single message.

28.16 A Service Reachable Through Multiple Protocols There are two implementations of a multiprotocol server. The first implementation is simply that two servers exist for the same service. One uses connectionless transport, while the other use connection-oriented transport. The second implementation is more complex: a single server program interacts with two or more transport protocols at the same time. The server accepts requests that arrive from either protocol, and uses the protocol in which the request arrived when sending a response.

28.17 Complex Client-Server Interactions  A client application is not restricted to accessing to a single service. An application can first become a client of one service, and then become a client of another. The client contacts a different server for each server, possibly on a different computer.

28.17 Complex Client-Server Interactions  A client application is not restricted to accessing a single server for a give service. In some services, each server provides different information than servers running on other computers. For example, a date server might provide the current time and date for the computer on which it runs. A server on a computer in a different time zone gives a different answer. In other services, all servers provide the same information. In such cases, a client might send a request to multiple servers to improve performance.

28.17 Complex Client-Server Interactions  A server is not restricted from performing further client-server interactions – a server for one service can become a client of another. For example, a file server that needs to record the time that a file was accessed might become a client of a time server.

28.18 Interactions and Circular Dependencies A circular dependency can result if the time server also uses the file server. For example, suppose a programmer is asked to modify the time server so it keeps a record of each request. If the programmer chooses to have the time server become a client to the file server, a cycle can result: the file server become a client of the time server which becomes a client of the file server, and so on. The result is a disaster analogous to an infinite loop in a program.