Introduction to client/server architecture. Objectives Explain what is the client/server...
-
Upload
aubrey-booker -
Category
Documents
-
view
225 -
download
5
Transcript of Introduction to client/server architecture. Objectives Explain what is the client/server...
Introduction to client/server architecture
Objectives
• Explain what is the client/server architecture• How it works• Examples for client/server architecture• Other network architectures
What is a computer network?
• Computer network A collection of computing devices that are connected in various ways in order to communicate and share resources
• Usually, the connections between computers in a network are made using physical wires or cables, However, some connections are wireless, using radio waves or infrared signal
What is a computer network?
• The generic term node or host refers to any device on a network
• Examples of networks…
client-server Model
• client-server Model: Model of a computer network in which many clients (remote processors) request and receive service from a centralized server (host computer)
• The most basic type of client-server architecture employs only two types of nodes: clients and servers.
• This type of architecture is sometimes referred to as two-tier.
• It allows devices to share files and resources.
Server-Based Networking
• Server– A single computer that provides extensive
multiuser access to network resources– Can handle hundreds of users at once• Fast response• Less network congestion when multiple workstations
access the same resource
What Servers do?
• Essentially, any server must serve a network — either clients or other servers, or some combination of the two.
• The term server also includes the actual server operating system that makes the computer do its job.
• Commercial server software products such as Windows Server 2008 are designed to handle a greater frequency and variety of tasks than are typical in either the desktop or workstation
How it works
The client will follow this process:1. Initiate a request: The client caller requests access to some resource or information from the remote server.2. Wait for a reply: A participating server issues a reply, either permitting or forbidding the connection, which may require authentication in some cases.3. Connect and interact: If access is granted, the client possibly authenticates and then begins interacting in some fashion with the server.
How it works
• The server will do the following:1. Listen for a request: Calling clients come and go as they
please, requesting to initiate and interact with hosted services.
2. Process the request: Once received, the client request may optionally require authentication.
3. Connect and interact: At this point, both client and server are connected on a common channel and able to share resources or information.
Examples: E-mail clients send and receive messages from e-mail servers.
Web browser clients broker data connections to FTP and Web servers.
Client/server roles
• Server provides the service • Client is considered as the customer requesting the service • The server service can be shared among a number of clients • Clients must request or initiate the service • The location of the server in the network is transparent to
clients • Transaction between C/S is message-passing based • C/S architecture is scalable • horizontally (more clients can added)• Vertically (more servers can be added)
• The server is centrally maintained where as clients are independent of each other
Why do we use servers
• A server is designed and intended to provide services and run server applications under heavy workloads, left unattended and self-managing most of the time.
• Larger amounts of memory (upwards of 8GB or more), larger storage capacity (terabytes, petabytes, and beyond), special storage methods (mirroring, striping, and multiple disk aggregation), redundant power supplies.
Systems with Client server model• File servers – File sharing and file processing
• Data base servers– Passing file results – Example: Query in DBMS server – Typically one single request/reply
• Transaction servers– Transaction server includes DBMS and transaction
monitoring– Server has remote procedures run online by the client
• web servers– Super-fat servers and clients – Uses HTTP protocol – Java was first to introduce interactive C/S forms
Clustering
• ClusteringLinking two or more discrete computer systems so they
appear to function as though they are one
– Advantages• Increases computer speed.• Provides more computing power.• Increase performance.
Peer to Peer Model P2P
• In this model, participants act as both clients and servers, sometimes sharing multiple parts of a single piece of data
• In P2P networks, clients provide resources as well as using them. This means that unlike client-server systems, the content serving capacity of peer-to-peer networks can actually increase as more users begin to access the content (especially with protocols such as Bittorrent that require users to share)
Homework
• What is the difference between Client/server and peer to peer model? (do some research to find the answer and summarize it in a table )