A client is a program that uses the services of another program.
The client program is used to contact and obtain data or request a service from a server. In the case of the Internet, this means whenever you visit a website, your computer is acting as the client computer, reaching out to the site’s web server and asking for the contents of the site. In an office setting, there is often a main server which houses all of the company’s shared files. All other computers in the office use server resources as client computers.
Frequently Asked Questions
How does the client and server know how to communicate with each other?
Since all operating systems and programs communicate in different ways, computers use standard protocols, such as TCP/IP, to be able to communicate together, regardless of what type of machine they are. Internet protocols are basically a set of common commands that all machines are programmed to understand. This allows Windows users to connect to Linux servers and your iPhone to talk to your PC.
Can a computer be a client and a server?
Yes. We often refer to computers as clients, but a client can refer to either the hardware or software that is accessing another computer. If you have file sharing turned on, your computer is the server for those shared files. However, anytime you use that computer to go online, it is also a client. Or, more accurately, your email program and web browsers are clients, while your home file sharing program is a server.
In fact, your home computer can also act as a web server, providing information to other machines over the Internet. Depending on your configuration, you can even host your own website, but this isn’t recommended for security reasons. A more common setup is using your home computer as a media server. Using software like Plex, you can share music and videos with devise inside and outside of your home. In this case, your computer is the server and your media player or mobile devices are the clients.
Which computer does the work, the client or the server?
This depends on the type of client. In most cases, your computer is what’s known as Fat Client, meaning it does the bulk of the data processing. There’s a good reason for this. Web servers may be accessed by thousands, even millions of clients at the same time. Managing calculations for all of those computers would slow the server or even crash the website. Meanwhile, your computer is only doing your work. It has plenty of processing power left over. Thin clients, on the other hand, are computers that rely on the server to do the crunching for them. In this case, the computer you use simply logs into a central server and runs all of its programs from there. Cloud computing applications, such as Google Docs, use this method. A computer can also be a hybrid client, sharing the processing and storage workload with the server.