0% found this document useful (0 votes)
94 views

Client Server Technology: Ansu Elizabeth Philip

The document discusses client-server technology and architecture. It defines clients as applications or systems that access remote services from servers via a network. Servers are programs that provide services to other programs. Examples of client-server systems on the Internet include web browsers and web servers, FTP clients and servers, and DNS. The client-server model partitions tasks between clients that request services and servers that provide them. Many business applications today use this distributed model.

Uploaded by

Annonymous963258
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
94 views

Client Server Technology: Ansu Elizabeth Philip

The document discusses client-server technology and architecture. It defines clients as applications or systems that access remote services from servers via a network. Servers are programs that provide services to other programs. Examples of client-server systems on the Internet include web browsers and web servers, FTP clients and servers, and DNS. The client-server model partitions tasks between clients that request services and servers that provide them. Many business applications today use this distributed model.

Uploaded by

Annonymous963258
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 10

Client Server Technology

Ansu Elizabeth Philip

School of Management Studies


CUSAT , Kochi – 22
E-mail:[email protected]

Abstract: The term client-server refers to a popular model for computer


networking that utilizes client and server devices each designed for specific
purposes. The client-server model can be used on the Internet as well as local
area networks (LANs). Examples of client-server systems on the Internet include
Web browsers and Web servers, FTP clients and servers, and DNS. Client-
server computing or networking is a distributed application architecture that
partitions tasks or workloads between service providers (servers) and service
requesters, called clients. Many business applications being written today use
the client-server model.

Key Words: Client, Server ,Browser

1.0 INTRODUCTION

1.1 Client

A client is an application or system that accesses a remote service on another computer


system, known as a server, by way of a network. The term was first applied to devices that
were not capable of running their own stand-alone programs, but could interact with
remote computers via a network. These dumb terminals were clients of the time-sharing
computer.Web are clients that connect to web servers and retrieve web pages for display.
Most people use e-mail clients to retrieve their e-mail from their internet service provider's
mail storage servers. Clients are generally classified as either "fat clients", "thin clients", or
"hybrid clients".

1.1.1 Thick Client

Fat client (also known as a thick client or rich client) is a client that performs the bulk of
any data processing operations itself, and does not necessarily rely on the server. The fat
client is most common in the form of a personal computer, as the personal computers or
laptops can operate independently. Programming environments for rich clients include
Curl, Delphi, Droplets,.Net, Java, win32 and X11.

1.1.2 Thin Client

Thin client is a minimal sort of client. Thin clients use the resources of the host computer.
A thin client's job is generally just to graphically display pictures provided by an application
server, which performs the bulk of any required data processing. Programming
environments for thin clients include JavaScript/AJAX , ASP, JSP, Ruby on Rails, Python's
Django, PHP.

1.1.3 Hybrid Client

A hybrid client is a mixture of the above two client models. Similar to a fat client, it
processes locally, but relies on the server for storage data. This approach offers features
from both the fat client.

1.2 Server

In computing, a server is a computer program that provides services to other computer


programs in the same or other computers. The computer that a server program runs in is
also frequently referred to as a server. In the client/server programming model, a server is
a program that awaits and fulfills requests from client programs in the same or other
computers. A given application in a computer may function as a client with requests for
services from other programs and also as a server of requests from other programs.
Examples for servers are:

* File server, provides file services

* Name Server or DNS server


* Print server, provides printer services

* Web server, a server that HTTP clients connect to in order to send commands and
receive responses along with data contents

2.0 CLIENT SERVER TECHNOLOGY

Client-server computing or networking is a distributed application architecture that


partitions tasks or workloads between service providers and service requesters, called
clients. Often clients and servers operate over a computer network on separate hardware.
A server machine is a high-performance host that is running one or more server programs
which share its resources with clients. A client does not share any of its resources, but
requests a server's content or service function. Clients therefore initiate communication
sessions with servers which await incoming requests.

Examples of client-server systems on the Internet include Web browsers and Web
servers, FTP clients and servers, and DNS.

2.1 Description

Client-server describes the relationship between two computer programs in which one
program, the client program, makes a service request to another, the server program.
Standard networked functions such as email exchange, web access and database
access, are based on the client-server model. For example, a web browser is a client
program at the user computer that may access information at any web server in the world.
To check your bank account from your computer, a web browser client program in your
computer forwards your request to a web server program at the bank. That program may
in turn forward the request to its own database client program that sends a request to a
database server at another bank computer to retrieve your account balance. The balance
is returned to the bank database client, which in turn serves it back to the web browser
client in your personal computer, which displays the information for you.

The client-server model has become one of the central ideas of network computing. Many
business applications being written today use the client-server model. So do the Internet's
main application protocols, such as HTTP, SMTP, Telnet, DNS. In marketing, the term has
been used to distinguish distributed computing by smaller dispersed computers from the
"monolithic" centralized computing of mainframe computers. But this distinction has
largely disappeared as mainframes and their applications have also turned to the client-
server model and become part of network computing.Each instance of the client software
can send data requests to one or more connected servers. In turn, the servers can accept
these requests, process them, and return the requested information to the client. Although
this concept can be applied for a variety of reasons to many different kinds of applications,
the architecture remains fundamentally the same.
The most basic type of client-server architecture employs only two types of hosts: clients
and servers. This type of architecture is sometimes referred to as two-tier. It allows
devices to share files and resources. The two tier architecture means that the client acts
as one tier and application in combination with server acts as another tier.

The interaction between client and server is often described using sequence diagrams.
Sequence diagrams are standardized in the Unified Modeling Language.

3.0 COMPARISON TO PEER-TO-PEER ARCHITECTURE

In peer-to-peer architectures, each host or instance of the program can simultaneously act
as both a client and a server, and each has equivalent responsibilities and status.Both
client-server and peer-to-peer architectures are in wide usage today.

4.0 COMPARISON TO CLIENT-QUEUE-CLIENT ARCHITECTURE

While classic client-server architecture requires one of the communication endpoints to act
as a server, which is much harder to implement,Client-Queue-Client allows all endpoints
to be simple clients, while the server consists of some external software, which also acts
as passive queue.This architecture allows greatly simplified software implementation.
Peer-to-peer architecture was originally based on the Client-Queue-Client concept.

5.0 THE CLIENT SERVER ARCHITECTURE IN INTERNET

The Internet revolves around the client-server architecture. Your computer runs software
called the client and it interacts with another software known as the server located at a
remote computer. The client is usually a browser such as Internet Explorer, Netscape
Navigator or Mozilla. Browsers interact with the server using a set of instructions called
protocols. These protocols help in the accurate transfer of data through requests from a
browser and responses from the server. There are many protocols available on the
Internet. The World Wide Web, which is a part of the Internet, brings all these protocols
under one roof. You can, thus, use HTTP, FTP, Telnet, email etc. from one platform - your
web browser.Some common Internet protocols

 HTTP (Hyper Text Transfer Protocol): used on the World Wide Web (WWW) for
transfering web pages and files contained in web pages such as images.

 FTP (File Transfer protocol): employed for transfering files from one machine to the
other.
 SMTP (Simple Mail Transport Protocol): used for email.
 Telnet Protocol: Used to open telnet sessions.
The web employs a connection-less protocol, which means that after every client-server
interaction the connection between the two is lost.

6.0 CLIENT-SERVER INTER-COMMUNICATION

6.1 Model of the client-server architecture - Static HTML pages

Fig. 1 Model Of Static HTML Pages

The client (browser) requests for an HTML file stored on the remote machine through the
server software. The server locates this file and passes it to the client. The client then
displays this file on your machine. In this case, the HTML page is static. Static pages do
not change until the developer modifies them.

6.2 Model of the client-server architecture - CGI Scripts


Fig. 2 Model Of CGI Scripts

The scenario is slightly different for CGI applications. Here the server has to do more work
since CGI programs consume the server machine's processing power.
Let us suppose we come across a search form on a web page that runs a CGI program.
Let us also suppose we type in the word 'computers' as the search query.Our browser
sends our request to the server. The server checks the headers and locates the
necessary CGI program and passes it the data from the request including our search
query "computers". The CGI program processes this data and returns the results to the
server. The server then sends this formatted in HTML to our browser which in turn
displays the HTML page.Thus the CGI program generates a dynamic HTML page. The
contents of the dynamic page depend on the query passed to the CGI program.

6.3 Model of the client-server architecture - Server side scripting


Fig. 3 Model Of Server Side Scripting

The third case also involves dynamic response generated by the use of server side
technologies. There are many server side technologies today.
Active Server Pages (ASP): A Microsoft technology. ASP pages typically have the
extension .asp.
Personal Home Pages (PHP): An open source technology. PHP pages typically have
.php, .phtml or .php3 file name extensions.
Java Server Pages: .jsp pages contain Java code.
Server Side Includes (SSI): Involves the embedding of small code snippets inside the
HTML page. An SSI page typically has .shtml as its file extension.

With these server technologies it has become easier to maintain Web pages especially
helpful for a large web site. The developer needs to embed the server-side language code
inside the HTML page. This code is passed to the appropriate interpreter which processes
these instructions.

7.0 THREE-TIER ARCHITECTURE

In 3-tier architecture, there is an intermediary level, meaning the architecture is generally


split up between:

1. A client, i.e. the computer, which requests the resources, equipped with a user
interface (usually a web browser) for presentation purposes
2. The application server (also called middleware), whose task it is to provide the
requested resources, but by calling on another server

Fig. 4 Three Tier architecture

The widespread use of the term 3-tier architecture also denotes the following
architectures:

 Application sharing between a client, middleware and enterprise server


 Application sharing between a client, application server and enterprise database
server.

8.0 ADVANTAGES OF CLIENT SERVER TECHNOLOGY

 In most cases, a client-server architecture enables the roles and responsibilities of a


computing system to be distributed among several independent computers that are known
to each other only through a network. This creates an additional advantage to this
architecture: greater ease of maintenance. For example, it is possible to replace, repair,
upgrade, or even relocate a server while its clients remain both unaware and unaffected
by that change.
 All the data is stored on the servers, which generally have far greater security controls
than most clients. Servers can better control access and resources, to guarantee that only
those clients with the appropriate permissions may access and change data.
 Since data storage is centralized, updates to that data are far easier to administer
than what would be possible under a P2P paradigm. Under a P2P architecture, data
updates may need to be distributed and applied to each peer in the network, which is both
time-consuming and error-prone, as there can be thousands or even millions of peers.
 Many mature client-server technologies are already available which were designed to
ensure security, friendliness of the user interface, and ease of use.
 It functions with multiple different clients of different capabilities.

9.0 DISADVANTAGES OF CLIENT SERVER TECHNOLOGY

 Traffic congestion on the network has been an issue since the inception of the client-
server paradigm. As the number of simultaneous client requests to a given server
increases, the server can become overloaded. Contrast that to a P2P network, where its
aggregated bandwidth actually increases as nodes are added, since the P2P network's
overall bandwidth can be roughly computed as the sum of the bandwidths of every node in
that network.
 The client-server paradigm lacks the robustness of a good P2P network. Under client-
server, should a critical server fail, clients’ requests cannot be fulfilled. In P2P networks,
resources are usually distributed among many nodes. Even if one or more nodes depart
and abandon a downloading file, for example, the remaining nodes should still have the
data needed to complete the download.

10.0 REFERENCES

1. Anonymous 2004, Client, http://en.wikipedia.org/wiki/Client_(Computing), downloaded on


07.10.2009

2. Anonymous 2004, Client Server, http://en.wikipedia.org/wiki/Client_Server, downloaded


on 07.10.2009

3. Anonymous 2004, Server, http://en.wikipedia.org/wiki/Server, downloaded on 07.10.2009

4. Anonymous 2003, Server, http://www.webopedia.com/TERM/S/Server.html, downloaded


on 07.10.2009

5. Anonymous 2003, Server, http://networkworld.com/topics/server.html, downloaded on


07.10.2009

6. Anonymous 2003, Server, http://www.wisgeek.com/TERM/S/Server.html, downloaded on


07.10.2009
7. Anonymous 2003, Client Server, http://www.networkworld.com/topics/Client_Server.html,
downloaded on 13.10.2009

8. Anonymous 2004, Client Server, http://www.webopedia.com/TERM/S/Client-Server.html,


downloaded on 07.10.2009

9.Anonymous 2004, Client Server Architecture,


http://www.yourdictionary.com/Computer/Client_Server_Architecture, downloaded on 13.10.2009

10. Anonymous 2005, Three tier architecture ,http://www.beansoftware.com/ASP/Three


tier Architecture.aspx , downloaded on 13.10.2009

11. Anonymous 2005, Three tier architecture , http://www.linuxjournal.com/article/Three


tier Architecture.aspx , downloaded on 13.10.2009

12.Anonymous 2005, Three tier


architecture ,http://www.sybase.com/products/database/Three tier Architecture.aspx ,
downloaded on 14.10.2009

13. Anonymous 2004, Client Server, http://www.faqs.org/faqs/Client_server, downloaded on


14.10.2009

14.Anonymous2005,ClientServerCommunication
,http://www.howstuffworks.com/Client_server_communication, downloaded on 14.10.2009

15.Anonymous 2003, Client Server Protocol


http://www.livejournal.com/doc/server/ip_csprotocol.htm downloaded on 14.10.2009

You might also like