Arpit’s Newsletter
Subscribe
Sign in
Home
Career Growth
System Design
Deep Dives
Papers and Musings
Outage Dissections
About
Deep Dives
Latest
Top
Discussions
Exploiting and stealing from the BitTorrent network
P2P networks are prone to exploitation as there is no central authority to keep track of the activity.
Sep 24, 2022
•
Arpit Bhayani
2
Kademlia - a Distributed Hash Table implementation to power the overlay network of BitTorrent
Kademlia is a P2P Distributed Hash Table implementation that distributes the KV stores across nodes in a network and retrieves them without any central…
Sep 22, 2022
•
Arpit Bhayani
2
The Piece Selection algorithm that makes BitTorrent fault tolerant
In a BitTorrent network, the file is split into pieces and then distributed across the network.
Sep 20, 2022
•
Arpit Bhayani
5
The Choke Algorithm that powers BitTorrent
In a P2P network, every peer would want to download the file as fast as possible but this would lead to a skewed load on some peers.
Sep 17, 2022
•
Arpit Bhayani
7
1
Overview of the BitTorrent architecture
The BitTorrent Architecture BitTorrent architecture consists of the following entities
Sep 15, 2022
•
Arpit Bhayani
3
Understanding the Torrent File Format and Bencoding
A torrent file is an independent session of transfer.
Sep 13, 2022
•
Arpit Bhayani
4
Introduction to BitTorrent and the problem it beautifully solves
BitTorrent is a peer-to-peer protocol that makes the distribution of large files easier, faster, and more efficient.
Sep 10, 2022
•
Arpit Bhayani
5
Implementing Hash Maps with Hash Tables
A map, when implemented with Hash Tables, is called a Hash Map; and just like a regular map it supports operations like put, get, and iterate.
Sep 8, 2022
•
Arpit Bhayani
2
Implementing Hash Sets with Hash Tables
The set data structure, when implemented with Hash Tables, is called a Hash Set; and just like a regular set, it supports operations like Union…
Sep 6, 2022
•
Arpit Bhayani
1
Implementing Resize of a Hash Table
Resizing a Hash Table is important to maintain consistent performance and efficiency, but how do we actually implement it?
Sep 3, 2022
•
Arpit Bhayani
Why are Hash Tables always doubled?
To maintain consistent performance, the hash table has to be resized - be it growing or shrinking.
Sep 1, 2022
•
Arpit Bhayani
Getting the best performance from the Hash Table
Hash Tables are designed to give a constant time performance and to do this, it needs to have many slots available.
Aug 30, 2022
•
Arpit Bhayani
1
This site requires JavaScript to run correctly. Please
turn on JavaScript
or unblock scripts