.torrent — Вікіпедія
Розширення файлу: | .torrent |
---|---|
MIME-тип: | application/x-bittorrent |
Стандарт(и): | BEP-0003[1] |
Файл метаданих з розширенням .torrent є словником в bencode-форматі — використовується в p2p-мережі BitTorrent і містить інформацію про файли, трекери та ін.
Містить наступну інформацію:
- URL трекера;
- Загальну інформацію про файли (ім'я, довжину тощо) у даній роздачі;
- Контрольні суми (точніше, хеш-суми SHA1) сегментів роздаваних файлів;
- Passkey (ключ) користувача, якщо він зареєстрований на цьому трекері. Довжина ключа встановлюється трекером.
- (Необов'язково) хеш-суми файлів цілком[2]
- (Необов'язково) Альтернативні джерела, що працюють не по протоколу BitTorrent. Найбільш поширена підтримка так званих web-сидів (протокол HTTP), але допустимими також є ftp, ed2k, magnet URI.[3]
Розмір сегмента регулюється при створенні торрента і, як правило, вибирається розмір, відповідний ступеню двійки. При виборі розміру необхідно дотримуватися балансу, що пов'язаний з механізмом роботи протоколу (див. нижче). Розмір сегмента найчастіше лежить в діапазоні від 128 кілобайт до 2-4 мегабайт, хоча на дуже великих роздачах (близько сотні гігабайт) можуть використовуватися сегменти розміром 32-64 мегабайта.
Якщо роздача складається з декількох файлів, то в процесі хешування вони зчитуються поспіль і розглядаються як безперервний потік даних. Тому найчастіше сегмент, що містить кінець одного файлу, також містить і початок наступного. Разом з тим для того, щоб переконатися в правильності скачаного сегмента, необхідно мати його весь цілком. Саме тому, незважаючи на те, що більшість клієнтів підтримує скачування не всіх файлів на роздачі, а тільки деяких, майже завжди буде викачаний також і початковий та/або кінцевий шматок файлів, не обраних для скачування.
Через те, що хеші в .torrent-файл містять імена і структуру каталогів роздачі, то перейменування файлів зі збереженням можливості їх роздавати в загальному випадку неможливо. Однак, деякі клієнти підтримують зміну структури, наприклад, створення або перейменування каталогів і перейменування або переміщення файлів.
Файл метаданих є словником в bencode-форматі з додатковою умовою, що будь-які дані, що є символьними рядками, представляються в кодуванні UTF-8. Файли метаданих можуть поширюватися через будь-які канали зв'язку: вони (або посилання на них) можуть викладатися на вебсерверах, розміщуватися на домашніх сторінках користувачів мережі, розсилатися електронною поштою, публікуватися в блогах або стрічках новин RSS. Також є можливість отримати info-частину публічного файлу метаданих безпосередньо від інших учасників роздачі завдяки розширенню протоколу «Extension for Peers to Send Metadata Files» [Архівовано 10 травня 2016 у Wayback Machine.]. Це дозволяє обійтися публікацією тільки магнет-посилання. Отримавши яким-небудь чином файл з метаданими, клієнт може починати завантаження.
Мікроторрент — це торрент від одного файлу, в якому розмір сегмента збігається з розміром файлу або 16 384 байти, якщо розмір файлу менший[4]. На відміну від звичайного торрента, мікроторрент створюється з магнет-посилання, в якому є sha1-хеш файлу, ім'я і розмір.[5] Мікроторрент дозволяє скачувати торрент клієнтом невеликі файли (до 2МБ) з вебсервера без створення стандартного торрент-файлу.
Приклад:
Магнет-посилання
magnet:?xl=10826029&dn=mediawiki-1.15.1.tar.gz&xt=urn:sha1:XRX2PEFXOOEJFRVUCX6HMZMKS5TWG4K5&as=https%3A%2F%2Freleases.wikimedia.org%2Fmediawiki%2F1.15%2Fmediawiki-1.15.1.tar.gz
конвертується в торрент-файл[6]
data:application/x-bittorrent;,d4:infod6:lengthi10826029e4:name23:mediawiki-1.15.1.tar.gz12:piece%20lengthi10826029e6:pieces20:%bc%6f%a7%90%b7%73%88%92%c6%b4%15%fc%76%65%8a%97%67%63%71%5de8:url-listl69:https%3A%2F%2Freleases.wikimedia.org%2Fmediawiki%2F1.15%2Fmediawiki-1.15.1.tar.gzee
- ↑ http://www.bittorrent.org/beps/bep_0003.html
- ↑ Optional Hashes in .torrent metadata files [Архівовано 23 вересня 2018 у Wayback Machine.]
BEP0030 Merkle hash torrent extension [Архівовано 14 вересня 2009 у Wayback Machine.] - ↑ External Sourcing [Архівовано 23 вересня 2018 у Wayback Machine.]
BEP0017 HTTP Seeding (Hoffman-style) [Архівовано 13 грудня 2013 у Wayback Machine.]
BEP0019 WebSeed — HTTP/FTP Seeding (GetRight style) [Архівовано 13 грудня 2013 у Wayback Machine.] - ↑ Для сумісності з uTorrent
- ↑ magnet-converter/magnet-converter.htm at master · ivan386/magnet-converter
- ↑ Торрент-файл представлений у вигляді data: URL[en]
- Офіційна специфікація BitTorrent [Архівовано 8 лютого 2014 у Wayback Machine.]