| clients
and servers
What are
these?
One way to divide
up the world of computing is into "servers" and
"clients." Formally, the terms refer to software:
servers are software applications (programs) that carry out
tasks for client applications. Now the terms are also commonly
used to refer to the hardware on which that software runs.
You are experiencing a client-server interaction as you read
this page. Web server software is responsible for processing
Web content -- written in a programming language called HTML
-- for presentation to client software called a Web browser
(e.g., Internet Explorer, Firefox, Opera or Safari).
To take another very common interaction, email server software
(such as Microsoft Exchange Server) processes email messages
for presentation to client email software (such as Microsoft
Outlook, Apple Mail, Eudora or Entourage).
The server software runs on server computers, usually located
in a protected datacenter. Client software runs on personal
computers (PCs), or portable computing devices like a PDA
or smart cellphone. The public Internet, a private wired or
wireless network, or the cell phone network provides the connections
among them.
This arrangement is actually a venerable one (by computing
standards). In the early days, centrally located computers
called "mainframes" interacted over communications
links with "dumb terminals." The terminals were
"dumb" because they could do essentially nothing
on their own -- they had a keyboard and a video display, but
no significant processor "brain."
Today's PCs are obviously much more capable, but still must
rely on servers for tasks.
Why do you need to know this?
If all is going well, the interaction between server and
client is seemless. You don't need to know whether the server
or client is performing a particular task. But if there is
a failure of some sort, it may be helpful to have a basic
understanding of what work is being done by each component
in your particular situation. At the very least, it'll help
you with translating the explanation a customer support technician
gives you.
For example, under some email protocols your messages are
immediately downloaded and stored on your PC by your email
client software (POP3 protocols, for example). In others,
they remain on the email server (IMAP4 protocols). A communications
problem does not affect your access to old messages in the
first situation, but it does in the latter. A hard drive failure
in the former situation may be catastrophic for your email
collection, but not in the latter.
As that example shows, one of the most important things for
you to understand in a client-server world is where your data
files are being stored, so you know whether you have the responsibility
for keeping backup copies. More generally, it affects how
much you need to worry about data security for your computer
or personal computing device.
Confusing the categories
Some information service implementations blur the distinction
between clients and servers:
For example, there are "applications portals" that
allow you to use a Web browser to access software applications
like those of Microsoft Office, that normally must be installed
as clients on your PC. The software is actually running on
a server, interacting with your computer over your network
connection, mimicking the function of installed client software.
Some organizations provide "network file directories"
that can be accessed in the same manner as the files on your
computer's local hard drive. The files are actually stored
on file server computers in a datacenter, made accessible
to you over your network connection.
The advantage of server-based applications is that you do
not need to install your own copy of the software; and, as
noted, with server-stored files you are not dependent on the
security or reliability of your PC (particularly its hard
drive).
The disadvantage is the dependence on a secure high-speed
connection between the servers and your system. In a workplace
environment, that's usually not a problem. For remote use,
such as from home, you'll need a broadband connection for
most of these services.
Note that even services that are entirely "server-based"
may require some kind of minimal software installation on
your client device, such as a plug-in for your Internet browser.
The first time you use the service, you will be prompted for
permission to do this install. As always, you should only
allow installations of software from trusted sources.
What's coming next
As more and more services migrate to the Web, browsers like
Internet Explorer have become a sort of "universal client"
that allows access to everything. Particularly popular are
Web-based email services, that act just like email software
installed on your computer. (Micorsoft's Outlook Web Access
is a server-based version of Outlook, it's client email softare.
Most of the large ISPs also offer Web-based email systems.)
If you can use servers to run your software and store all
your files, for what do you need the processing power and
storage capacity of a PC? Indeed, it has been proposed by
some that PCs should become essentially like the dumb terminals
of old -- no local storage, minimal processing power, reliant
on the server for what is needed. Don't call them dumb, though.
The polite label for such down-scaled PCs is "thin client."
See also:
Servers
(Wickipedia)
What the varieties do, with links to technical detail on the
various branches of the family
Client-server
model (Wikipedia)
More on the architecture that weaves together clients and
servers
Last modified:
17-Apr-2006
[RC]
|