LINUX.ORG.RU

[пиратство]Пиринговая программа


0

0

Ну, сейчас я тут рискую быть закиданным тазами по поводу сетевой безграмотности, но тем не менее хочу обсудить пришедшую мне в голову (а может и не только мне) концепцию пирингового клиента.

Итак, всем известно что основная проблема торрента, осла и прочих прекрасных программ заключается в том, чтобы настроить к клиенту извне. То есть необходима возможность для удаленного компьютера первому инициировать соединение. Фактически, отдавать что-то, если сидишь за ненастроенным натом, невозможно. А естественно бывают случаи, когда настройка ната зависит от провайдера или сисадмина, которые может и вообще не будут это делать.

Итак, собственно концепт p2p-программы, не страдающий этим недостатком.

Программа-клиент пользователя-1 (п-1) устанавливает соединение с нодой/сервером и это соединение уходит в longpoll-тип. То есть теперь сервер имеет возможность отправлять данные клиенту. То же самое делает п-2. Далее, п-1 хочет установить соединение с п-2 в целях скачивания нового дистрибутива убунты. Сообщает об этом намерении серверу. Сервер отсылает два запроса по longpoll'у - для п-1, инструкции по установлению с ним дополнительного соединения, и для п-2, такие же. Соединения устанавливаются, переключаем их в статус longpoll и тут внимание вопрос! Возможно ли скоммутировать эти соединения друг с другом напрямую(п-1 - п-2), средствами только сервера? Или может быть сделать это на этапе соединения? Работоспособна ли такая система, или может уже существует?

Всем спасибо.

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.