Transmission 2.60
Простой BitTorrent клиент, распространяющийся большей частью
под лицензией GNU GPL с небольшими фрагментами под лицензией MIT. Transmission
может работать как оконном режиме, так и через командную строку или
веб-браузер. Программа позволяет не только скачивать торрент файлы, но и
создавать их самому, при этом все передаваемые данные будут шифроваться.
Функции программы Transmission:
- Выборочная загрузка и выдача приоритетов файлам
- Создание Torrent-файлов
- Блок-лист
- Быстрая приостановка загрузки с кэшированием пиров
- Шифрование соединений между пирами
- Обмен пирами (совместим с Azureus и uTorrent)
- Поддержка UPnP и NAT-PMP
- Опции DHT и PEX
- Управление через командную строку или веб-браузер
- Magnet
- Запрет пиров, которые посылают слишком много неправильных данных
- Один слушающий порт для всех торрентов
- Минимальное использование системных ресурсом
Принцип работы BitTorrent-клиента
Transmission, как и любой BitTorrent-клиент, реализует одноранговый протокол обмена файлами, при котором каждый участник раздачи одновременно и скачивает данные, и отдаёт их другим. В отличие от прямой загрузки с сервера, файл разбивается на фрагменты фиксированного размера, и клиент собирает их от множества пиров в произвольном порядке. Целостность каждого фрагмента проверяется по хешу, указанному в торрент-файле.
Протокол не требует центрального сервера для передачи данных, но нуждается в координаторе — трекере или распределённой сети. Трекер хранит список участников раздачи и сообщает клиенту адреса других пиров. При использовании DHT и PEX клиент может находить пиров без обращения к трекеру: DHT формирует распределённую таблицу участников, а PEX позволяет обмениваться списками пиров напрямую между клиентами.
Шифрование соединений, поддерживаемое Transmission, маскирует трафик протокола, чтобы провайдер не мог определить его по сигнатурам и ограничить скорость. Это не скрывает сам факт передачи данных, но затрудняет классификацию трафика средствами глубокого анализа пакетов. UPnP и NAT-PMP автоматически открывают порт на маршрутизаторе, что увеличивает количество доступных пиров и скорость загрузки.
Выборочная загрузка позволяет исключить ненужные файлы из раздачи ещё на старте, а приоритеты регулируют очерёдность получения фрагментов. Блок-лист отсекает пиров из заданных диапазонов IP-адресов, обычно принадлежащих организациям, отслеживающим активность в торрент-сетях. Функция кэширования пиров при паузе сохраняет адреса участников, чтобы при возобновлении загрузки не тратить время на повторный поиск.

