Протокол BitTorrent
Что такое BitTorrent?
BitTorrent — пиринговый сетевой протокол для кооперативного обмена файлами через Интернет.Файлы передаются частями, каждый torrent-клиент, получая эти части, в то же время отдаёт их другим клиентам, что снижает нагрузку и зависимость от каждого клиента-источника и обеспечивает избыточность данных. Протокол был создан Брэмом Коэном, написавшим первый torrent-клиент «BitTorrent» на языке Python, 4 апреля 2001 года. Запуск первой версии состоялся 2 июля 2001 года.Существует множество других программ-клиентов для обмена файлами по протоколу BitTorrent.
Принцип работы
Клиенты соединяются друг с другом и обмениваются сегментами файлов без непосредственного участия трекера, который лишь хранит информацию, полученную от подключенных к обмену клиентов, список самих клиентов и другую статистическую информацию. Для эффективной работы сети BitTorrent необходимо, чтобы как можно больше клиентов были способны принимать входящие соединения.При соединении клиенты сразу обмениваются информацией об имеющихся у них сегментах. Клиент, желающий скачать сегмент (личер), посылает запрос и, если второй клиент готов отдавать, получает этот сегмент. После этого клиент проверяет контрольную сумму сегмента. Если она совпала с той, что записана в торрент-файле, то сегмент считается успешно скачанным, и клиент оповещает всех присоединённых пиров о наличии у него этого сегмента. Если же контрольные суммы различаются, то сегмент начинает скачиваться заново. Некоторые клиенты банят тех пиров, которые слишком часто отдают некорректные сегменты.Таким образом, объём служебной информации (размер торрент-файла и размер сообщений со списком сегментов) напрямую зависит от количества, а значит, и размера сегментов. Поэтому при выборе сегмента необходимо соблюдать баланс: с одной стороны, при большом размере сегмента объём служебной информации будет меньше, но в случае ошибки проверки контрольной суммы придётся заново скачивать больше информации. С другой стороны, при малом размере ошибки не так критичны, так как необходимо заново скачать меньший объём, но зато размер торрент-файла и сообщений об имеющихся сегментах становится больше.
![Картинки по запросу bittorrent принцип работы](https://i.ytimg.com/vi/5ZnqUwKtS18/maxresdefault.jpg)
Какие программы работают с этим протоколом?
- WebTorrent
- BitComet
- BitSpirit
- BitTorrent (программа)
- FlashGet
- Lphant
- Net Transport
- Opera
- QBittorrent
- RTorrent
- Shareman
- Tixati
- Tribler
- ΜTorrent