1 1.Client/Server Anatomy 2.Client/Server Technologies 3.Client/Server System Standards Understanding Client/Server.

Slides:



Advertisements
Similar presentations
Chapter 4 Computer Networks
Advertisements

TYPES OF COMPUTER NETWORKS
Distributed Processing, Client/Server and Clusters
Chapter 9: The Client/Server Database Environment
Database Architectures and the Web
Networking Basics lesson 17. This lesson includes the following sections: The Uses of a Network How Networks are Structured Network Topologies for LANs.
Technical Architectures
Overview Explain three application components: presentation, processing, and storage Distinguish between file server, database server, 3-tier, and n-tier.
1 Database Architectures Modified from …..Modern Database Management Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden.
12 Chapter 12 Client/Server Systems Hachim Haddouti.
Chapter 9: The Client/Server Database Environment
Copyright©2008 N.AlJaffan®KSU1 Chapter 8 Communications and Networks.
Client/Server Architecture
1 © Prentice Hall, 2002 The Client/Server Database Environment.
Introduction to client/server architecture
NETWORKING HARDWARE.
Lecture The Client/Server Database Environment
The Client/Server Database Environment
CSIT 320 (Blum)1 Client-Server Interaction Based on Appendix 1 in Computer Networks and Internets, Comer.
Chapter 9: The Client/Server Database Environment
{ Networking High School Computer Application. What is a network? A system containing any combination of computers, computer terminals, printers, audio.
NETWORK CHONGSEOK PARK 10DD MRS. VEENA MONY Content.
1 Networks, advantages & types of What is a network? Two or more computers that are interconnected so they can exchange data, information & resources.
Chapter 4.  Understand network connectivity.  Peer-to-Peer network & Client-Server network  Understand network topology  Star, Bus & Ring topology.
Information Systems Today: Managing in the Digital World TB4-1 4 Technology Briefing Networking.
Chapter 4: Computer Networks Department of Computer Science Foundation Year Program Umm Alqura University, Makkah Computer Skills /1436.
 Part 1: The definitions of networking -Network -Standalone -LAN -WAN -Clients -Server -Clients/Server Networks -Peer to Peer Networks Part 1NetworkStandaloneLANWANClientsServerClients/Server.
Lecture On Database Analysis and Design By- Jesmin Akhter Lecturer, IIT, Jahangirnagar University.
Network Structure Students should be aware of what is available in order to –create and use an ICT network: communication devices.
Enterprise Systems MIS 181.9: Service Oriented Architecture 2 nd Semester,
1 © Prentice Hall, 2002 Chapter 8: The Client/Server Database Environment Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
MBA 664 Database Management Systems Dave Salisbury ( )
Database Architectures and the Web Session 5
Local Area Networks (LAN) are small networks, with a short distance for the cables to run, typically a room, a floor, or a building. - LANs are limited.
Networked Information Systems 1 Advantages of and classified by their size & architecture or design.
Unit 1—Computer Basics Lesson 7 Networks.
Without reference, identify principles relating to Computer Networks with at least 70 percent accuracy.
Basic Concepts of a Computer Network
© 2005 by Prentice Hall 1 Chapter 9: The Client/Server Database Environment Modern Database Management 7 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
Networking By Nachiket Agrawal 10DD Contents Network Stand Alone LAN Advantages and Disadvantages of LAN Advantages and Disadvantages of LAN Cabled LAN.
Network Environments. Communications Networks LAN – Local Area Network Collection of Computers and peripherals with a common connection in one building.
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
Personal Computer - Stand- Alone Database  Database (or files) reside on a PC - on the hard disk.  Applications run on the same PC and directly access.
1.05a.  Local Area Networks (LANs) ◦ Small networks in a limited geographical area  Wide-Area Networks (WANs) ◦ Extensive networks that may span hundreds.
What is a Network? Living Online Lesson 1 Mrs. Elzey.
Networking Classification A network is two or more computers that are connected 1 There size 2 Their Servers.
Chapter2 Networking Fundamentals
NETWORKING FUNDAMENTALS. Network+ Guide to Networks, 4e2.
COMPUTER NETWORK CREATED BY:- PALASH SACHAN. CONTENTS INTRODUCTION COMPUTER NETWORK TYPES OF NETWORK CLASSIFICATION OF NETWORK ARCHITECTURE NETWORK TOPOLOGY.
Networking… By: Allan Joe Next page.
Chapter 9  Definition of terms  List advantages of client/server architecture  Explain three application components:
Lesson 7 Networks Unit 1—Computer Basics. Computer Concepts BASICS - 2 Objectives Describe the benefits and disadvantages of networks. List and describe.
Introduction to Networks. When Personal Computers first appeared in business, software programs were designed for a single user. However as computers.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
Introduction Chapter 1. Introduction  A computer network is two or more computers connected together so they can communicate with one another.  Two.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Lecture 9: The Client/Server Database Environment Modern Database Management 9 th Edition.
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
Chapter 9: The Client/Server Database Environment
The Client/Server Database Environment
The Client/Server Database Environment
The Client/Server Database Environment
Chapter 9: The Client/Server Database Environment
Introduction to client/server architecture
#01 Client/Server Computing
An Introduction to Computer Networking
Networking Computer network A collection of computing devices that are connected in various ways in order to communicate and share resources Usually,
#01 Client/Server Computing
Presentation transcript:

1 1.Client/Server Anatomy 2.Client/Server Technologies 3.Client/Server System Standards Understanding Client/Server

2 Class 1 : Client/Server Anatomy Understanding Client/Server Client/Server Anatomy

3 Client/Server Analogy (1) Restaurant service is an analogy to help explain client/server computing. The customer (client) makes a series of requests for a specific set of services that may include an appetizer, beverage, main course and a dessert. These requests are all typically made to one person, the waiter (server). Client/Server Anatomy Restaurant Service

4 Client/Server Anatomy Restaurant Service The services may actually be provided by a number of other people in the restaurant including the bus boy, bartender, and a variety of chefs. However, to the customer, these services are all provided by one person, the waiter. The customer doesn't want to know who performs what service. Client/Server Analogy (2)

5 The customer would just like to have a high quality meal delivered in a timely fashion. The client, in client/server computing is much like the customer in a restaurant. The client requests a service, like running an application or accessing some information from a data base. Client/Server Anatomy Restaurant Service Client/Server Analogy (3)

6 Client/Server Anatomy The server becomes responsible for performing the service and returning the information to the client in a timely manner. The server is like the waiter in a restaurant responsible for handling the client's requests and delivering the finished product to the client. Restaurant Service Client/Server Analogy (4)

7 Not A Client/Server Architecture In the "early days" of the computer networking era, everything was centralized. A company had a mainframe which had all of the "intelligence" - it was the brain that took care of everything such as running programs, keeping files, holding databases, etc. And people had "dumb terminals" on their desks. To do a task, a person would use the dumb terminal to type in their information, which would then go to the mainframe to be processed. The dumb terminal was essentially a soup-up typewriter that related all requests to the mainframe which in turn replied to users. The Mainframe (1) Client/Server Anatomy

8 Not A Client/Server Architecture A limitation of mainframe software architectures is that they do not easily support graphical user interfaces or access to multiple databases from geographically dispersed sites. The Mainframe (2) Client/Server Anatomy Limitation of Mainframe

9 The Mainframe (3) Client/Server Anatomy

10 What is a Client/Server System (1) Client/server computing may be viewed as an extension of modular programming. A modular framework simplifies development and maintenance. As modules become obsolete, they can be replaced or upgraded without replacing the entire system. Client/Server Anatomy

11 Client server computing recognizes that all modules do not have to be executed with the same memory location—the calling module or "client" can request information from the service module or "servers." Because client/server applications rely on communications networks for processing and retrieving information, the management of the entire network is absolutely critical. What is a Client/Server System (2) Client/Server Anatomy

12 What is a Client/Server System (3) Client/Server Anatomy

13 What is a Client Process The client's responsibility is usually to: Handle the user interface Translate the user's request into the desired protocol Send the request to the server Wait for the server's response Translate the response into "human-readable" results Present the results to the user Client/Server Anatomy

14 What is a Server Process The server's functions include: Listen for a client's query Process that query Return the results back to the client Client/Server Anatomy

15 Client/Server Interaction (1) A typical client/server interaction goes like this: 1.The user runs client software to create a query 2.The client connects to the server 3.The client sends the query to the server 4.The server analyzes the query 5.The server computes the results of the query 6.The server sends the results to the client 7.The client presents the results to the user 8.Repeat as necessary Client/Server Anatomy

16 Client/Server Anatomy Client/Server Interaction (2)

17 What is a Network A group of two or more computer systems linked together. There are many types of computer networks, including: Local Area Networks (LANs) : The computers are geographically close together (that is, in the same building). Wide Area Networks (WANs) : The computers are farther apart and are connected by telephone lines or radio waves. Metropolitan Area Networks (MANs): A data network designed for a town or city. Client/Server Anatomy

18 LANs, WANs and MANs (1) Client/Server Anatomy A computer network that spans a relatively small area. Most LANs are confined to a single building or group of buildings. Each node (individual computer) in a LAN executes programs, but it also is able to access data and devices anywhere on the LAN. Devices can be connected by twisted-pair wire, coaxial cables, or fiber optic cables. Some networks do without connecting media altogether, communicating instead via radio waves. LANs are capable of transmitting data at very fast rates, but the distances are limited, and there is also a limit on the number of computers that can be attached to a single LAN. LAN

19 Client/Server Anatomy LANs, WANs and MANs (2) A computer network that spans a relatively large geographical area. Typically, a WAN consists of two or more local-area networks (LANs). Computers connected to a wide-area network are often connected through public networks, such as the telephone system. They can also be connected through leased lines or satellites. The largest WAN in existence is the Internet. WAN

20 Client/Server Anatomy LANs, WANs and MANs (3) Short for Metropolitan Area Network, a data network designed for a town or city. In terms of geographic breadth, MANs are larger than local-area networks (LANs), but smaller than wide-area networks (WANs). MANs are usually characterized by very high-speed connections using fiber optical cable or other digital media. MAN

21 Network Hardware and Standards (1) Client/Server Anatomy The following characteristics are also used to categorize different types of networks: Topology Protocol Architecture Computers on a network are sometimes called “ nodes ”. Computers and devices that allocate resources for a network are called “ servers ”.

22 Client/Server Anatomy Topology How different nodes in a network are connected to each other and how they communicate are determined by the network's topology. Common topologies include a bus, star, and ring. Network Hardware and Standards (2)

23 The protocol defines a common set of rules and signals that computers on the network use to communicate. One of the most popular protocols for LANs is called Ethernet. Another popular LAN protocol is the Token-Ring network. Client/Server Anatomy Protocol Ethernet uses a bus or star topology and supports data transfer rates of 10Mbps, 100Mbps or 1000M(Gigabit)bps. The Ethernet specification served as the basis for the IEEE standard, which specifies the physical and lower software layers. Ethernet uses the CSMA/CD access method to handle simultaneous demands. It is one of the most widely implemented LAN standards. Network Hardware and Standards (3)

24 Networks can be broadly classified as using either a peer- to-peer or client/server architecture. Client/Server Anatomy Architecture Peer-to-Peer architecture : A type of network in which each workstation has equivalent capabilities and responsibilities. The networks are generally simpler, but they usually do not offer the same performance under heavy loads. Client/Server architecture : Each computer on the network is either a client or a server. Servers are powerful computers dedicated to managing disk drives (file servers), printers (print servers), or network traffic (network servers ). Clients are PCs or workstations on which users run applications. Network Hardware and Standards (4)

25 Client/Server Anatomy Enterprise Network Physical Topology

26 System Architectures : Functional Layers Client/Server Anatomy Presentation logic or user interface (for example, ATM machines) Business logic (for example software that enables a customer to request an account balance) Data (for example, records of customer accounts) Every client/server application contains three functional units: These functional units can reside on either the client or on one or more servers in your application. Which of the many possible variations you choose depends on how you split the application and which middleware you use to communicate between the tiers.

27 System Architectures : Two- tier and Three-tier (1) In 2-tier client/server applications, the business logic is buried inside the user interface on the client or within the database on the server in the form of stored procedures. Alternatively, the business logic can be divided between the client and server. File servers and database servers with stored procedures are examples of 2- tier architecture. 2-Tiers Architecture Client/Server Anatomy

28 In 3-tier client/server applications, the business logic resides in the middle tier, separate from the data and user interface. In this way, processes can be managed and deployed separately from the user interface and the database. Also, 3-tier systems can integrate data from multiple sources. System Architectures : Two- tier and Three-tier (2) 3-Tiers Architecture Client/Server Anatomy

29 What is a Middleware (1) interoperate Software which allows an application to interoperate with other software No need for programmer/user to understand internal processing Application Program Interface Accomplished via Application Program Interface (API) “glue” The “glue” that holds client/server applications together Client/Server Anatomy

30 What is a Middleware (2) Client/Server Anatomy Operating System and Computing Hardware Network ServicesLocal Services Middleware Applications

31 Type of Middleware RPC – Remote Procedure Calls (RPC) client makes calls to procedures running on remote computers synchronous and asynchronous Message-Oriented Middleware (MOM) asynchronous calls between the client via message queues Publish/Subscribe push technology  server sends information to client when available Object Request Broker (ORB) Object-oriented management of communications between clients and servers SQL-oriented Data Access Middleware between applications and database servers Client/Server Anatomy

32 Database Middleware ODBC – Open Database Connectivity Most DB vendors support this OLE-DB Microsoft enhancement of ODBC JDBC – Java Database Connectivity Special Java classes that allow Java applications/applets to connect to databases Client/Server Anatomy

33 Client/Server Architectures (1) File Server Architecture Database Server Architecture Three-tier Architecture Client does extensive processing Client does little processing Client/Server Anatomy

34 File Server Architecture All processing is done at the PC that requested the data Entire files are transferred from the server to the client for processing. Problems: Huge amount of data transfer on the network Each client must contain full DBMS Heavy resource demand on clients Client DBMSs must recognize shared locks, integrity checks, etc. FAT CLIENT Client/Server Anatomy Client/Server Architectures (2)

35 Client/Server Anatomy File Server Architecture Client/Server Architectures (3)

36 Database Server Architecture This is a 2-tiered Approach Client is responsible for I/O processing logic Some business rules logic Server performs all data storage and access processing {DBMS is only on server} Advantages Clients do not have to be as powerful Greatly reduces data traffic on the network Improved data integrity since it is all processed centrally Stored procedures  some business rules done on server Thinner clients Client/Server Anatomy Client/Server Architectures (4)

37 Client/Server Anatomy Client/Server Architectures (5) Database Server Architecture

38 Three-Tier Architecture Three layers: Client Application server Database server GUI interface (I/O processing) Business rules Data storage Browser Web Server DBMS Thin Client PC is just for user interface and a little application processing. Limited or no data storage (sometimes no hard drive) Thinnest clients Client/Server Anatomy Client/Server Architectures (6)

39 Business rules on separate server DBMS only on DB server Client/Server Anatomy Three-Tier Architecture Client/Server Architectures (7)

40 Client/Server Security Network environment  complex security issues Security levels: System-level password security for allowing access to the system Database-level password security for determining access privileges to tables; read/update/insert/delete privileges Secure client/server communication via encryption Client/Server Anatomy

41 Why Client/Server (1) The client/server software architecture is a versatile, message-based and modular infrastructure that is intended to provide the following benefits: Encapsulation of services Integrity Location transparency Modular, extensible design Platform independence Scalability Shared resources Client/Server Anatomy

42 The server is a specialist: when given a message requesting a service, it determines how to get the job done. Servers can be upgraded without affecting clients as long as the published message interface used by both is unchanged. Why Client/Server (2) Encapsulation of services Client/Server Anatomy

43 The code and data for a server are centrally maintained, which results in cheaper maintenance and the protection of shared data integrity. At the same time, clients remain personal and independent. Why Client/Server (3) Integrity Client/Server Anatomy

44 The server is a process that can reside on the same machine as a client or on a different machine across a network. Client/server software usually hides the location of a server from clients by redirecting service requests. A program can be a client, a server, or both. Why Client/Server (4) Location Transparency Client/Server Anatomy

45 The modular design of a client/server application enables that application to be fault-tolerant. In a fault- tolerant system, failures may occur without causing a shutdown of the entire application. In a fault-tolerant client/server application, one or more servers may fail without stopping the whole system as long as the services offered on the failed servers are available on servers that are still active. Another advantage of modularity is that a client/server application can respond automatically to increasing or decreasing system loads by adding or shutting down one or more services or servers. Why Client/Server (5) Modular, Extensible Design Client/Server Anatomy

46 The ideal client/server software is independent of hardware or operating system platforms, allowing you to mix client and server platforms. Clients and servers can be deployed on different hardware using different operating systems, optimizing the type of work each performs. Why Client/Server (6) Platform Independence Client/Server Anatomy

47 Client/server systems can be scaled horizontally or vertically. Horizontal scaling means adding or removing client workstations with only a slight performance impact. Vertical scaling means migrating to a larger and faster server machine or adding server machines. Why Client/Server (7) Scalability Client/Server Anatomy

48 One server can provide services for many clients at the same time, and regulate their access to shared resources. Why Client/Server (8) Shared Resources Client/Server Anatomy

49 Client/Server Business Models (1) Client/server architecture can accommodate the needs of each of the following situations: Small Shops Small Businesses and Corporate Departments Large Enterprises Client/Server Anatomy

50 Client/Server Business Models (2) The client, the middleware software, and most of the business services operate on the same machine. This approach is suitable for one-person businesses such as a dentist's office, a home office, and a business traveler who frequently works on a laptop computer. Client/Server Anatomy Small Shops

51 Client/Server Business Models (3) A LAN-based single-server application is required. Users of this type of application include small businesses, such as a medical practice with several doctors, a multi-department corporation, or a bank with several branch offices. In this type of application, multiple clients talk to a local server. Administration is simple: security is implemented at the machine level and failures are detected easily. Client/Server Anatomy Small Businesses & Corporate Departments

52 Client/Server Business Models (4) Client/Server Anatomy Multiple servers that offer diverse functionality are required. Multiple servers can reside on the Internet, intranets, and corporate networks, all of which are highly scalable. Servers can be partitioned by function, resources, or databases, and can be replicated for increased fault tolerance or enhanced performance. This model provides a great amount of power and flexibility. How well you architect your application is critical to this client/server model. You may need to partition work among servers, or design servers to delegate work to other servers. Large Enterprises