Web browsers and web servers are the communicating client-server programs for distributing documents and information, generally known as web data, over the Internet (Interconnected Network). Web data is marked up using HTML language for presentation and interaction with people in web browsers. Each web server uses an IP along with a port number or a domain name for its identification.
The communication model that the Web (WWW) and Internet follows is the client-server model. Below figure illustrates the client-server model:
In the client-server model, a client, generally a web browser sends requests to one or more servers. A request might be for a web page or to execute an application directly on the server.
Web browser is a software application which runs on the client machine and sends requests to the server. It is named after its functionality of browsing the web pages. A web browser supports many protocols among which the most general supported protocol is HTTP (HyperText Transfer Protocol) which allows the client and server to communicate with each other.
The first web browser with a Graphical User Interface (GUI) was Mosaic developed in 1993. Popular web browsers at present are Google Chrome, Mozilla Firefox, Internet Explorer, Opera, Safari etc.
A web server is a software application which accepts requests from the clients, process them and send a response back. All the communications between a web browser and web server are carried out through HTTP. In general, a web server monitors a port on its host machine for HTTP requests from clients, performs operations and returns responses back to the clients.
Besides the underlying hardware and operating system, all the web servers share the same characteristics. The file structure of a web server contains two separate directories known as document root and server root. The document root contains the web documents (web pages) that will be served as responses to the client’s requests and the server root contains the server and its support software.
Many servers allow multiple web sites to be maintained on a single computer which decreases the cost of each website and its maintenance. Such secondary hosts are known as virtual hosts. Some servers can serve documents that are in the document root of another server. Such servers are known as proxy servers.
Apache web server, IIS (Internet Information Services), nginx and GWS (Google Web Server) are the popular web servers. IE, Firefox and Chrome are the popular web browsers.