<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Networking on Chaitanya's blog</title><link>https://blog.chaitanyashahare.com/tags/networking/</link><description>Recent content in Networking on Chaitanya's blog</description><generator>Hugo</generator><language>en</language><copyright>2025 | Chaitanya Shahare</copyright><lastBuildDate>Tue, 16 Jun 2026 18:30:00 +0530</lastBuildDate><atom:link href="https://blog.chaitanyashahare.com/tags/networking/index.xml" rel="self" type="application/rss+xml"/><item><title>Building a Reverse Proxy from Scratch</title><link>https://blog.chaitanyashahare.com/posts/reverse-proxy-from-scratch/</link><pubDate>Tue, 16 Jun 2026 18:30:00 +0530</pubDate><guid>https://blog.chaitanyashahare.com/posts/reverse-proxy-from-scratch/</guid><description>&lt;p&gt;For two years I copy-pasted nginx configs without actually knowing what nginx was doing. &lt;code&gt;proxy_pass http://localhost:3000&lt;/code&gt; — sure, it works, ship it. But every time something broke in prod, I was guessing. I had no mental model of what happened between a client request arriving and my Express app receiving it.&lt;/p&gt;
&lt;p&gt;So I spent an afternoon building a tiny reverse proxy in Node.js. About 40 lines. And now nginx config files make complete sense to me.&lt;/p&gt;</description></item><item><title>How BitTorrent's Choke Algorithm Works (And What I Learned Building Bad Peer)</title><link>https://blog.chaitanyashahare.com/posts/bittorrent-choke-algorithm/</link><pubDate>Tue, 16 Jun 2026 18:00:00 +0530</pubDate><guid>https://blog.chaitanyashahare.com/posts/bittorrent-choke-algorithm/</guid><description>&lt;p&gt;You know that one group project where two people did everything and three people collected the grade? That&amp;rsquo;s what early P2P networks looked like. Napster, Gnutella — studies found up to 70% of users sharing zero files. The people actually uploading got throttled into the ground, and the whole thing quietly died.&lt;/p&gt;
&lt;p&gt;BitTorrent fixed this. The mechanism is called the choke algorithm, and after implementing it myself while building &lt;strong&gt;Bad Peer&lt;/strong&gt; (a BitTorrent client I tuned to cut bandwidth waste ~40%), I think it&amp;rsquo;s one of the most underrated pieces of distributed systems design I&amp;rsquo;ve ever read.&lt;/p&gt;</description></item></channel></rss>