<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Internet Working]]></title><description><![CDATA[Internet Working]]></description><link>https://networking-of-internet.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Thu, 29 Oct 2026 09:31:33 GMT</lastBuildDate><atom:link href="https://networking-of-internet.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[TCP Working: 3-Way Handshake & Reliable Communication]]></title><description><![CDATA[Imagine two computers trying to talk over the internet without any rules. Data could arrive out of order, data could get lost, get corrupted, etc...]]></description><link>https://networking-of-internet.hashnode.dev/tcp-working-3-way-handshake-and-reliable-communication</link><guid isPermaLink="true">https://networking-of-internet.hashnode.dev/tcp-working-3-way-handshake-and-reliable-communication</guid><category><![CDATA[TCP]]></category><category><![CDATA[TCP Handshake]]></category><category><![CDATA[Acknowledgment (ACK)]]></category><dc:creator><![CDATA[Aman Shukla]]></dc:creator><pubDate>Fri, 30 Jan 2026 03:05:51 GMT</pubDate><content:encoded><![CDATA[<h2 id="heading-what-is-tcp-and-why-do-we-even-need-it">What Is TCP and Why Do We Even Need It?</h2>
<p>Imagine two computers trying to talk over the internet without any rules. Data could arrive out of order, data could get lost, get corrupted, etc. That would make things like loading a webpage or sending a file almost impossible.</p>
<p>This is why we have TCP (Transmission Control Protocol) — a set of rules that ensures reliable communication between two devices. It divided data into small packets and first establish connection then sends the data.</p>
<h3 id="heading-what-is-the-pain-point-which-tcp-solves">What is the pain point which TCP solves?</h3>
<ol>
<li><p>Data loss : TCP make sure that even if data is lost in internet traffic then also it resend missing data.</p>
</li>
<li><p>Out-of-order delivery : TCP set sequence to each of its data packets. With this receiver arranges it accordingly.</p>
</li>
<li><p>Reliability : TCP first perform 3 way handshake and establish connection then only it send data.</p>
</li>
</ol>
<h3 id="heading-what-is-3-way-handshake">What is 3 Way Handshake?</h3>
<p>You can imagine it as when you make a mobile call then first you ring. Only if the other person is available to attend the call then only he/she will pick the call.</p>
<p>In similar what in TCP sender first sends SYN indicating that it want to send the data. Then this SYN gets to the receiver. Now receiver sends SYN ACK. Means ok I am ready to receive your data you may send the data now. This SYN ACK goes to the sender. Sender again sends ACK indicating that after this acknowledgement data will be sent. And after all these 3 round the data is sent.</p>
<p>This 3 round of sending SYN and ACK is called 3 Way Handshaking. It is used to first ensure that receiver is ready or not. Then only the data is send.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1769741580702/79c54d5a-3329-4a69-b6b6-2adf9b4e70cd.png" alt class="image--center mx-auto" /></p>
<p>This is how TCP establishes the connection and then send and receive the acknowledgements.</p>
<h3 id="heading-how-does-connection-terminates">How does connection terminates?</h3>
<p>Now that you know how a connection is established it is very easy to understand the connection termination as well. Basically FIN and ACK are used to terminate the connection.</p>
<p>Once the communication is done. Sender will send FIN meaning I’m finished sending data. Receiver gets FIN and send ACK means acknowledged (got it). Then again sender sends FIN (I am done). Receiver gets FIN and send ACK (Connection closed).</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1769742220123/dab35a07-809c-4a5f-9b99-8c4a14c54e56.png" alt class="image--center mx-auto" /></p>
<p>This is what the happens from establishing the connection to sending data to terminating the connection.</p>
]]></content:encoded></item><item><title><![CDATA[TCP vs UDP: When to Use What, and How TCP Relates to HTTP]]></title><description><![CDATA[Before computers can send data, they need rules. If two machines just send data randomly, messages would get lost, mixed up, or corrupted. So the…]]></description><link>https://networking-of-internet.hashnode.dev/tcp-vs-udp-when-to-use-what-and-how-tcp-relates-to-http</link><guid isPermaLink="true">https://networking-of-internet.hashnode.dev/tcp-vs-udp-when-to-use-what-and-how-tcp-relates-to-http</guid><category><![CDATA[TCP]]></category><category><![CDATA[UDP]]></category><category><![CDATA[networking]]></category><category><![CDATA[http]]></category><dc:creator><![CDATA[Aman Shukla]]></dc:creator><pubDate>Fri, 30 Jan 2026 02:28:21 GMT</pubDate><content:encoded><![CDATA[<h2 id="heading-how-does-data-travel-across-the-internet">How Does Data Travel Across the Internet?</h2>
<p>Before computers can send data, they need rules. If two machines just send data randomly, messages would get lost, mixed up, or corrupted. So the internet uses communication protocols — agreed ways to send and receive data.</p>
<p>Two of the most important ones are: TCP and UDP</p>
<h2 id="heading-what-are-tcp-and-udp">What Are TCP and UDP?</h2>
<p>Both TCP and UDP are transport protocol. They both define rule on how the data moves from one device to another device.</p>
<h3 id="heading-tcp-transmission-control-protocol">TCP (Transmission Control Protocol)</h3>
<p>This is the protocol which ensures that devices communicate reliably on internet. It makes sure that data is set sent correctly, in right order and error is detected.</p>
<p>You can compare TCP with your mobile call. First you ring the bell. When other person is ready then he answers and then also you make sure that the other person is listening or not.</p>
<p>I the similar fashion in TCP there is a concept of ACK acknowledgment once user get the data then they send ack indicating that yes the data is reached.</p>
<p><strong>Tradeoff of TCP</strong> is that all the checking makes TCP slower, but very dependable.</p>
<p>TCP protocol is used when you agree that even if my data reaches some what delay, I am fine but I don’t want my data to get corrupted or lost.</p>
<p>Some real life examples of TCP are Online banking, sending emails, downloading files, etc.</p>
<h3 id="heading-udp-user-datagram-protocol">UDP (User Datagram Protocol)</h3>
<p>This is the protocol which focus on speed. It does not ensure that all the data will reach to the receiver. Some data may lose. There is no recovery system so that the lost data is recovered.</p>
<p>You can consider UDP as how a radio station broadcasts music. f you miss a second due to signal issues, it doesn’t rewind — it just keeps going.</p>
<p><strong>Tradeoff of UDP</strong> is much faster, but some data might be lost.</p>
<p>UDP is used when you need to value speed over correctness. When you agree that its ok even if some of the data is lost but speed should not be compromised.</p>
<p>Some real life examples of UDP are online multiplayer games, video streaming, etc.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1769740008104/97e36394-5b10-4397-8866-bf492dde071c.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-what-is-http">What is HTTP?</h2>
<p>Both TCP and UDP are network level protocol. It means these protocols dictate on how the data will travel in the traffic of internet.</p>
<p>But HTTP(HyperText Transfer Protocol) which is an application level protocol. It means that its main interaction will be on your machine. It defines standard rules on how requests are formatted, how responses are structured, etc.</p>
<p>HTTP does NOT handle data delivery reliability.</p>
<h3 id="heading-relationship-between-http-and-tcp">Relationship Between HTTP and TCP</h3>
<p>HTTP works on top of TCP. This means if your application layer protocol is HTTP then in internet your data will follow TCP protocol while travelling in network or you can say that network level protocol will be TCP.</p>
<p>Layered view (simplified)</p>
<pre><code class="lang-powershell">Application Layer → HTTP
Transport Layer   → TCP
Internet Layer    → IP
</code></pre>
<h3 id="heading-analogy">Analogy:</h3>
<p>HTTP is the <strong>language</strong> of the message.<br />TCP is the <strong>courier service</strong> delivering the envelope safely.</p>
<h2 id="heading-putting-it-all-together">Putting It All Together</h2>
<p>When you open a website, browser creates an <strong>HTTP request</strong> then HTTP data is handed to <strong>TCP</strong>. TCP breaks it into packets and ensures safe delivery. Server responds with <strong>HTTP response</strong>. TCP ensures it reaches you completely.</p>
<p>So while you see <strong>HTTP</strong>, the heavy lifting is done by <strong>TCP</strong> underneath.</p>
]]></content:encoded></item><item><title><![CDATA[Understanding Network Devices]]></title><description><![CDATA[what is modem, router, switch, hub, firewall, load balancer, etc.]]></description><link>https://networking-of-internet.hashnode.dev/understanding-network-devices</link><guid isPermaLink="true">https://networking-of-internet.hashnode.dev/understanding-network-devices</guid><category><![CDATA[networking]]></category><category><![CDATA[modem]]></category><category><![CDATA[router]]></category><category><![CDATA[SWITCH]]></category><dc:creator><![CDATA[Aman Shukla]]></dc:creator><pubDate>Thu, 29 Jan 2026 20:54:19 GMT</pubDate><content:encoded><![CDATA[<h2 id="heading-how-does-the-internet-actually-reach-your-computer">How Does the Internet Actually Reach Your Computer?</h2>
<p>When you open a website, data travels through multiple devices before it reaches your laptop or phone. Whether you are at home or at office, the path usually looks like this:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1769718118700/fdbc8b35-dba7-46b2-bf94-5baeec628cfd.png" alt class="image--center mx-auto" /></p>
<p>Lets understand the purpose of each of these devices.</p>
<hr />
<h3 id="heading-what-is-a-modem">What is a Modem?</h3>
<p>A modem connects your home or office network to your Internet Service Provider (ISP like airtel, jio) etc. It acts like translator. Its main purpose is to translate the signal between ISP’s network (fiber, cable, DSL) to local digital network. In simple words modem converts analog signals to digital signals(which are understood by computers).</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1769718570116/206c195f-9ac9-4b90-9260-19e632072139.png" alt class="image--center mx-auto" /></p>
<hr />
<h3 id="heading-what-is-a-router">What is a Router?</h3>
<p>A router decides where your data should go. It acts as traffic police which directs the flow of data packets in internet. It connects your local network to the modem and then the internet. Its main job is to check the IP address and ensure the secure transfer of data.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1769718824893/40782960-494a-4b6b-91ae-9d49ea83b1f8.png" alt class="image--center mx-auto" /></p>
<hr />
<h3 id="heading-switch-vs-hub-how-local-networks-actually-work">Switch vs Hub: how local networks actually work?</h3>
<p>Both connect multiple devices in a local network, but they behave very differently.</p>
<p><strong>Hub</strong> sends incoming data to every device, even if only one device needs it. Its like broadcasting message to everyone.</p>
<p>Where as <strong>switch</strong> sends data only to the intended device.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1769719047404/7cd80254-e73b-4cc9-826e-478538accb34.png" alt class="image--center mx-auto" /></p>
<hr />
<h3 id="heading-what-is-a-firewall">What is a Firewall?</h3>
<p>A firewall monitors and controls incoming and outgoing network traffic based on security rules. Its main roles is to decide which traffic is safe which traffic is suspicious. You can imagine firewall as a security guard at the gate checking who is allowed to enter your building.</p>
<p>It protects your device from hackers, malwares, etc.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1769719302303/12968de9-2c9f-4146-acce-a6bccda555d3.png" alt class="image--center mx-auto" /></p>
<hr />
<h3 id="heading-what-is-a-load-balancer">What is a Load Balancer?</h3>
<p>Load balancer is traffic distributor for a server. Its main job it to divert traffic to different servers so that a single server does not get overwhelmed with multiple requests.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1769719492486/87e7aed2-2661-4227-8458-77d443f59aca.png" alt class="image--center mx-auto" /></p>
<hr />
<h3 id="heading-how-all-these-devices-work-together">How All These Devices Work Together?</h3>
<p>Let’s say you open google.com from your PC at your office. Now your device sends data to local switch. Switch pass this data to router. Router decides the traffic through which the data can be send in minimal cost(time). Then this data is send to modem which sends the signal to your ISP. Then eventually this data reaches to firewall which checks whether the request is safe or not. Then it send request to load balancer which decides to which server this request need to be send. And at last request reaches to the server and this whole process goes in reverse direction as well.</p>
]]></content:encoded></item></channel></rss>