|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
как создаются p2p сети?
Доброго всем времени суток!
Как реализуется p2p сеть желательно децентрализованная? примерчики какие нибудь ну или что-нибудь вообще? Насколько я понял p2p клиенты основаны на TCP и не используют серверные компоненты , т.к. если бы они их использовали, то к людям у которых стоит роутер невозможно было бы подключиться без перекидывания портов, а у меня есть роутер, и при этом работает и utorrent и skype без перекидывания портов=) всем за ранее спасибо за ответы! |
#2
|
||||
|
||||
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#3
|
|||
|
|||
Цитата:
это то я читал!!! мне больше интересна сама реализация простейшей сети |
#4
|
||||
|
||||
Transmission bittorrent client. Сырцы открыты - курите на здоровье
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#5
|
||||
|
||||
Ну вообще-то это неверно, что для P2P не нужен сервер. Насколько я в курсе реализация примерно такова:
Имеется сервер на котором хранится информация о подписчиках. Подписчиком становится любой комп на котором запущено клиентское ПО. Клиент сообщает серверу, что для общего доступа есть файлы с такой-то контрольной суммой. Таким образом на сервере накапливается база описателей файлов. Далее я не уверен, но скорее всего, что описатель файла содержит в себе помимо общей контрольной суммы так-же контрольные суммы каждой из частей (файл делится обычно более чем на 100 частей). Таким образом при запросе на получение какого-либо файла для клиента, происходит анализ описателя файла и ищутся активные подписчики имеющие у себя хотя-бы одну из частей с совпавшей контрольной суммой. Ну и конечно серверов может быть в сети более одного и они по логике должны обмениваться подписчиками. Так-что для передачи данных сервер действительно не используется, но вот для поиска нужных подписчиков без него не обойтись. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 09.11.2011 в 19:14. |
#6
|
|||
|
|||
Цитата:
Ты описал гибридную сеть Как происходить подключение между клиентами,если у них используется только клиентские компоненты=) ща по роюсь в тех сырцах может чего накопаю=) |
#7
|
|||
|
|||
Блин нифига не понимаю в этом c++ тем более там файлов завались=(
|
#8
|
|||
|
|||
На самом деле если разговор идет о сервере, как о некотором компьютере, то для p2p сетей он действительно не очень нужен (в классическом торренте он нужен только для получения IP-адреса машины, на которой есть нужные файлы). Дальше устанавливается прямое соединение.
Если разговор идет о собственно сокетах (не важно какая имплементация - API, Indy и т.д.), то клиенсткое p2p ПО уже в себе содержит и сервер и клиента. Так что без сервера и тут не обошлось. |