BitTorrent
BitTorrent adalah protokol yang membuktikan bahwa berbagi file peer-to-peer dapat disesuaikan dengan ukuran Internet. Ini memindahkan ISO Linux, dump Wikipedia, dan (ya) film bajakan selama dua dekade, dan ini masih merupakan salah satu cara paling efisien untuk mendistribusikan file besar. Memahami cara kerjanya — dan mengapa ini digunakan secara diam-diam di Facebook, Twitter, dan Blizzard — adalah cara yang baik untuk melihat batasan distribusi terpusat.
Badan artikel selengkapnya disediakan dalam bahasa Inggris di bawah ini.
BitTorrent dirancang oleh Bram Cohen pada tahun 2001 untuk membuat pendistribusian file besar menjadi efisien dengan memungkinkan banyak pengguna menyumbangkan bandwidth unggahan secara bersamaan. Ide cerdasnya: bagi setiap file menjadi potongan-potongan kecil, mintalah setiap orang yang memiliki bagian menyajikannya kepada siapa pun yang menginginkannya, dan gunakan koordinator untuk melacak siapa yang memiliki apa. Hasilnya adalah protokol yang popularitasnya membuat pengunduhan lebih cepat bukannya lebih lambat — kebalikan dari distribusi berbasis server terpusat.
File BitTorrent
A dipecah menjadi beberapa bagian dengan ukuran yang sama — biasanya 256 KB atau 1 MB, bergantung pada ukuran file. Setiap bagian memiliki hash SHA-1 (atau SHA-256 di BitTorrent v2) sendiri. Daftar semua hash ditambah metadata file adalah file torrent — file kecil (beberapa KB) yang Anda peroleh di luar jalur. File torrent cukup untuk memverifikasi setiap bagian yang diunduh dan untuk menemukan rekan melalui pelacak atau DHT.
Para aktor
- Seed: rekan yang memiliki file lengkap dan hanya mengunggah.
- Leech: rekan yang hanya memiliki beberapa bagian; mengunduh apa yang tidak dimilikinya, mengunggah apa yang dilakukannya.
- Swarm: semua rekan (benih + lintah) untuk torrent tertentu.
- Tracker: server yang memelihara daftar rekan dalam satu gerombolan. Rekan secara berkala mengumumkan diri mereka ke pelacak; pelacak mengembalikan daftar rekan baru. Pelacak bisa bersifat pribadi (hanya pengguna terdaftar) atau publik.
- DHT (Tabel Hash Terdistribusi): sistem penemuan rekan tanpa pelacak. Rekan menyimpan dan menanyakan daftar rekan yang dikunci oleh hash torrent. BitTorrent modern menggunakan DHT plus pelacak plus PEX (Peer Exchange) untuk ketahanan maksimum.
Strategi pemilihan bagian
KeanggunanBitTorrent ada pada algoritma pemilihan bagiannya. Strateginya:
- Paling langka dulu. Seekor lintah lebih suka mengunduh potongan-potongan yang paling tidak umum di gerombolannya. Hal ini memaksimalkan keragaman potongan keseluruhan kawanan, sehingga rekan mana pun yang offline jarang mengambil bagian yang unik.
- Potongan pertama acak. Di awal pengunduhan, lintah mengambil potongan acak, sehingga ia segera memiliki sesuatu untuk diunggah.
- Akhir permainan. Mendekati akhir pengunduhan (ketika hanya ada beberapa bagian tetap), lintah meminta semua bagian yang tersisa dari setiap rekan yang memilikinya, menerima siapa pun yang merespons terlebih dahulu. Menghilangkan ekor panjang menunggu bagian terakhir yang lambat.
Tit-for-tat: sistem insentif Kontribusi paling berpengaruh dari sistem insentif
BitTorrent adalah desain insentifnya. Setiap lintah "mencekik" sebagian besar rekannya dan hanya mengunggah ke segelintir lintah yang mengunggah paling cepat ke dalamnya. Setiap 30 detik ia melakukan perombakan, termasuk "unchoke optimis" untuk mencoba rekan baru secara acak. Efeknya: rekan yang kooperatif mendapatkan rekan yang kooperatif; leecher yang egois akan dikekang oleh orang lain. Berkendara bebas bisa dilakukan tetapi lambat.
Ini adalah bagian desain protokol teori permainan yang paling banyak dipelajari dalam jaringan. Semua protokol peer-to-peer berikutnya merujuknya.
Magnet links
A magnet link mengkodekan hash torrent secara langsung di URL: magnet:?xt=urn:btih:HASH.... Klien menggunakan DHT untuk menemukan rekan, mengambil metadata torrent dari mereka, lalu melanjutkan secara normal. Tautan magnet menghilangkan kebutuhan akan file torrent terpisah — hash sudah cukup, dan pengoperasian tanpa pelacak melalui DHT berarti tidak ada infrastruktur pusat yang perlu dihapus.
Untuk apa BitTorrent sebenarnya digunakan
Persepsi publik adalah pembajakan. Kenyataannya lebih luas:
- Distribusi
- Linux dan BSD. Ubuntu, Debian, Arch, FreeBSD semuanya mendistribusikan ISO melalui torrent untuk pengunduhan pada hari rilis yang hemat bandwidth.
- Wikipedia dan Internet Archive dumps. Dump data multi-gigabyte di-torrent karena alasan yang sama.
- Game update. Peluncur Battle.net Blizzard menggunakan BitTorrent untuk mendistribusikan patch WoW multi-gigabyte.
- Penyebaran internal. Facebook menggunakan BitTorrent untuk mendorong pembaruan kode ke armada servernya (proyek ini disebut Pembunuhan Twitter; Twitter memiliki alat serupa). Persamaan cloud-native modern telah menggantikannya untuk penerapan terbesar.
- Berbagi data ilmiah. Data genom, keluaran model iklim, kumpulan data fisika partikel didistribusikan melalui torrent karena alternatifnya (bandwidth S3) tidak terjangkau.
- Pembajakan. Ya, juga itu.Penyedia
BitTorrent dan VPNs
VPN yang mengizinkan BitTorrent populer di kalangan pengguna yang ingin menyembunyikan lalu lintas P2P dari ISP mereka, yang sering kali membatasi atau mengirimkan pemberitahuan hak cipta untuk konten yang tidak berlisensi. VPN harus:
- Izinkan P2P pada pintu keluar yang dipilih (tidak semua mengizinkan)
- Memiliki tombol pemutus — lihat artikel tombol pemutus VPN kami
- Sembunyikan IPv6 — banyak klien torrent membocorkan v6 bahkan ketika terowongan VPN v4
- Mendukung penerusan port untuk koneksi masuk — meningkatkan kinerja gerombolan
Mullvad, ProtonVPN, IVPN, dan Akses Internet Pribadi adalah penyedia yang paling sering direkomendasikan untuk penggunaan ini case.
Evolusi protokol
BitTorrent v2, diselesaikan pada tahun 2017 dan diluncurkan secara perlahan, menggantikan SHA-1 (yang sudah lama dikenal lemah) dengan SHA-256, menambahkan pohon hash per file untuk verifikasi integritas sebagian file, dan mendukung torrent yang jauh lebih besar. Adopsi berjalan lambat karena v1 masih berfungsi dengan baik. uTP (Micro Transport Protocol) menggantikan TCP mentah dengan transportasi yang lebih ramah kemacetan, penting bagi pengguna yang berbagi koneksi perumahan.
Pertanyaan yang sering diajukan
- Apakah BitTorrent sah?
- Protokolnya sendiri legal di hampir setiap negara. Menggunakannya untuk mengunduh atau mendistribusikan konten berhak cipta tanpa izin adalah tindakan ilegal di sebagian besar tempat. Menggunakannya untuk konten legal (ISO Linux, media domain publik, file Anda sendiri) tidak masalah.
- Mengapa ISP saya mengirimkan pemberitahuan hak cipta ketika saya menggunakan BitTorrent?
- Pemegang hak menjalankan scraper yang terhubung ke torrent publik, mencatat IP setiap rekan, dan mengirimkan pemberitahuan bergaya DMCA melalui ISP. IP itu sendiri bukanlah bukti siapa yang menggunakannya — namun sebagian besar ISP tetap meneruskan pemberitahuan kepada pemegang akun. VPN yang memungkinkan P2P menggeser IP yang terlihat dan secara efektif menghilangkan pemberitahuan ini.
- Apakah penggunaan BitTorrent membocorkan IP saya?
- Ya — secara desain, setiap rekan di gerombolan melihat IP Anda dan Anda melihat IP mereka. Begitulah cara protokol mendistribusikan beban. Kebocoran itu bersifat mendasar, bukan bug. Satu-satunya cara untuk menyembunyikan IP Anda dari rekan-rekan lain adalah dengan melakukan rute melalui VPN atau Tor (yang terakhir bermasalah dalam kinerja dan tidak disarankan oleh operator Tor).
- Apa yang dimaksud dengan 'menyemai'?
- Seeding adalah mengunggah salinan lengkap file ke rekan lain. Segerombolan membutuhkan setidaknya satu benih setiap saat agar lintah baru dapat menyelesaikan pengunduhan. Pengguna torrent yang sopan menyemai rasio minimal 1,0 (mengunggah sebanyak yang mereka unduh) sebelum berhenti.
- Apakah BitTorrent sudah usang?
- Sudah berkali-kali dinyatakan mati dan tetap berfungsi. Penyimpanan cloud terpusat menangani sebagian besar kebutuhan berbagi file saat ini, namun untuk mendistribusikan file berukuran sangat besar ke banyak pengguna secara efisien, keekonomian BitTorrent masih mengalahkan apa pun yang terpusat. Kasus penggunaan baru (IPFS, Arweave, jaringan sosial terdesentralisasi) semuanya dibangun berdasarkan prinsip peer-to-peer yang serupa.