Огромное спасибо за спецификацию, буду изучать.
По поводу UDP, мне наоборот казалось чтобы увеличить скорость закачки — ну это не суть.
Для меня не понятно, большинство компьютеров в сети не имеет реальных статических IP, т.е не может принимать входящие соединения, но тем не менее я вижу большое количество пиров, неужели у них всех статичный внешний IP, может есть какая-то хитрость с проксированием двух пиров через другие?
Что касается UPnP, понимаю что за пределами протокола, но как раз протокол то мне понятен, не понятен принцип работы клиента.
Еще интересный момент, мой uTorrent к примеру как-то делает соединения без VPN (у меня корбина) между клиентами в одной подсети.
Т.е клиенты передают на треккер все свои IP в том числе локальные, с VPN, без VPN а треккер выдает конкретному пиру уже
тот который считает удобнее для него? Или это как раз задача DHT?
Где можно найти такого плана информацию, именно то, как клиенты BitTorrent связываются друг с другом.
Здравствуйте, Pzz, Вы писали:
Pzz>Здравствуйте, evger, Вы писали:
E>>Появилась потребность реализовать свой простенький BitTorrent клиент.
E>>Найденная документация BitTorrent протокола описывает принцип общения с трекером и подобные вещи, но к сожалению не касается механизмов работы клиентов друг с другом.
E>>Таких как создание соединения между пирами (как 2 пира создают соединение если оба за NAT), описание протоколов передачи файлов между пирами.
E>>UDP соединения между пирами.
Pzz>http://bittorrent.org/beps/bep_0003.html — спецификация базового протокола
Pzz>http://bittorrent.org/beps/bep_0000.html — ссылки на остальные спецификации
Pzz>Если оба за NAT, то никак, если только хотя бы с одной стороны port forwarding не налажен. Многие клиенты умеют его себе сами налаживать, если на роутере включен UPnP, но это уже за пределами битторрентного протокола.
Pzz>Насчет UDP, поищите сами там вокруг, мне лень
Pzz>Имейте ввиду, я слышал где-то краем уха, что ранняя опубликованная спецификация это не то, что фактически реализовано в микроторренте. Вроде правильная спецификация (или поправки к ранней) тоже не являются секретом.
Pzz>А зачем вам UDP? Его незначение — не быстрее качать, а наоборот, медленнее качать, чтобы не мешаться "нормальному" траффику.