Local Peer Discovery
Local Peer Discovery (LPD), Local Service Discovery (LSD) — протокол, расширяющий возможности системы обмена файлами BitTorrent. Он был разработан для получения возможности обнаружения торрент-клиентом пиров в локальных сетях, чтобы сократить трафик, проходящий через подключение к Интернету в случае, когда другой компьютер в локальной сети раздаёт нужный торрент.
История
Протокол Local Peer Discovery был разработан в 2007 году и реализован в uTorrent версии 1.7[1].
Формальная спецификация протокола — BEP 14 — была создана в 2015 году[2].
Протокол
Протокол LPD использует многоадресную рассылку пакетов приватного диапазона подобно протоколу SSDP[2].
LPD (LSD) реализован с помощью похожих на HTTP сообщений в пакетах UDP, отправляемых multicast-группе IPv4 239.192.152.143:6771 из диапазона административно-ограниченных (англ. Administratively scoped) адресов многоадресных рассылок[англ.] (org-local)[3][2].
В IPv6 для Local Service Discovery используется multicast-группа [ff15::efc0:988f]:6771, относящаяся к адресному пространству site-local[2].
Данные в пакете LPD/LSD представляют собой текстовые строки. Структура данных[2]:
BT-SEARCH * HTTP/1.1\r\n Host: <host>\r\n Port: <port>\r\n Infohash: <ihash>\r\n cookie: <cookie (optional)>\r\n \r\n \r\n
Значения полей пакета[2]:
- <host> — адрес использованной мультикаст-группы (
[ff15::efc0:988f]:6771или239.192.152.143:6771); - <port> — порт, на котором торрент-клиент принимает соединения;
- <ihash> — хэш раздачи (торрента);
- <cookie (optional)> — специфичное для отправителя значение, по которому отправитель может определить, что к нему вернулся его собственный пакет, вся строка может отсутствовать в пакете;
- постоянные строки:
- \r\n — символы возврата каретки и новой строки;
BT-SEARCH * HTTP/1.1— идентификатор протокола LDP/LSD (заголовок).
Реализации
Поддержка протокола Local Peer Discovery (Local Service Discovery) реализована в следующих клиентах:
- µTorrent, начиная с версии 1.7 RC6[4];
- BitTorrent/Mainline[5];
- MonoTorrent, начиная с версии 0.80[6]
- протокол реализован в библиотеке libtorrent[7]:
- Transmission, начиная с версии 2.0[8];
- Deluge, как минимум с версии 2.1[9]
Альтернативы
10 мая 2008 года была опубликована спецификация BEP 26 multicast-расширения протокола Bittorrent «Zeroconf Peer Advertising and Discovery»[10], но оно мало используется из-за сложности реализации.[источник не указан 137 дней]
Примечания
- ↑ Local Peer Discovery - Best new uTorrent Feature (англ.). SuperJason’s Personal Blog (14 августа 2007). Дата обращения: 20 января 2026. Архивировано из оригинала 12 марта 2013 года.
- ↑ 1 2 3 4 5 6 BEP14, 2017.
- ↑ Protocol Design Discussion » Local Peer Discovery Documentation (англ.). uTorrnet Forum (30 октября 2009). Дата обращения: 12 декабря 2009. Архивировано из оригинала 29 сентября 2012 года.
- ↑ Announcements » µTorrent 1.7 Release Candidate 6 (англ.) (28 июня 2007). Дата обращения: 12 декабря 2009. Архивировано из оригинала 29 сентября 2012 года.
- ↑ BitTorrent User Manual (англ.). Дата обращения: 12 декабря 2009. Архивировано из оригинала 29 сентября 2012 года.
- ↑ MonoTorrent 0.80 (англ.). Дата обращения: 5 мая 2010. Архивировано из оригинала 29 сентября 2012 года.
- ↑ libtorrent manual: features (англ.). Дата обращения: 12 декабря 2009. Архивировано из оригинала 29 сентября 2012 года.
- ↑ Changes : Transmission 2.00 (англ.) (15 июня 2010). Дата обращения: 23 июня 2010. Архивировано 31 августа 2011 года.
- ↑ Релиз BitTorrent-клиента Deluge 2.1. OpenNET (29 июня 2022).
- ↑ BEP 26 : [англ.] : [арх. 23 ноября 2025] // BitTorrent.org. — 2017. — 12 January.
Литература
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.