Posts

Showing posts from March, 2024

Understanding Client and Server Communications

Image
Network communication plays a vital role in facilitating the exchange of data and resources between devices. But who are we communicating with? Communication is supposed to be between two people, so who’s on the other side?   When we fire up a browser or connect to a website, we establish a connection with a server, which is hosted somewhere and allows us to communicate with it. The server then sends data to the incoming receivers, illustrating the fundamental workings of a web server. This is known as the Client-Server architecture. Here a Client initiates a connection which the server then responds to . Note: A server can never initiate a connection. It ONLY listens. But communication on the internet can’t happen without some predefined rules. One of the protocols that define how data is supposed to transfer between clients and servers is called the TCP (Transmission Control Protocol). TCP ensures reliable, ordered, and error-checked delivery of data between applications runni...

Packet Switching

Image
We often don’t wonder how the data that we send to the internet is transferred from one location to the other without any errors. Suppose you’re transferring a 100MB file and during the process, you lose your connection. Now the file that you’re sending, would it have to be sent all over again? What happens if one byte of data gets corrupted during file transfer? All these scenarios are dealt with by a process called packet switching . As previously discussed,   Packets are bundles of divided data from a file that can be simultaneously sent through different routes on the internet . Different routes can transmit data at different rates, with the transmission rate of a link measured in bits/second. Packet switching is the fundamental way of transferring data on the internet. Most packet switches use store-and-forward transmission at the inputs to the links. Store-and-forward transmission means that the packet switch must receive the entire packet before it can begin to transmit...