The foundation of the internet lies in the communication between computers. Computers, acting as servers, own and can provide resources to other computers, serving as clients. The roles of computers shift over time – one moment, a computer may own resources, while at another time, it may require resources from others. Communication is essential for data exchange between them. The predominant protocol facilitating Client-Server communication is the HyperText Transfer Protocol (HTTP). HTTP is a protocol for fetching web pages, documents, images, media files, binaries, etc. Pretty much the whole of the internet runs on HTTP. We have discussed HTTP in detail here . A typical HTTP request flow is as follows: A client opens a connection and requests a resource from a server. The server calculates the response The server sends the response to the client on the same opened connection Some of the most popular Client Server Communication models are: Polling / Short Polling / AJAX Polling Long Po...