Comments 52
К этому все и шло.
Вчера начал писать opensource проект на ту же тему.
UFO just landed and posted this here
Суть простая. Пользователь скачивает клиент. Он представляет из себя веб-сервер с хранилищем. Через браузер пользователь входит в систему. По логину и паролю клиент пытается собрать из хранилища его ключ и данные. Если все ок, то дальше возможно зайти на главную страницу этой сети. Все страницы, документы и контент это отдельные куски данных со своим mime-type в хранилище. Автор этих блоков может их править и удалять. Назначать права на просмотр неопределенному кругу лиц через групповые ключи на шифрованные блоки данных. Это вкратце.
Уточняю, клиент представляет из себя веб-сервер с доступ в распределенное хранилище сети. Блоки данных распределяются по нодам с определенным колличеством копий. Число копий с определенной минимальной границей для достаточно быстрой доступености и максимальной границей для особо популярного контента.
Вы решили написать свой Freenet, с карточными играми и дамами легкого поведения?
Как один узел сети будет искать другой без центральных серверов типа треккеров (централизация) и широковещательных рассылок (современная инфраструктура не готова)? Прежде всего при изначальном старте, потом-то узлы которые как-то (как?) узнали друг о друге могут обмениваться списками узлов. Ведь первоначально клиенту нужно знать куда стукнуться за списком действующих узлов и/или анонсировать себя в таком списке.
Пока я аспект безопасности и синхронизации/репликации распределенного хранения данных даже не принимаю во внимание. Просто как мой узел («клиентосервер») узнает, что имя аналогичное habrahabr.ru соответствует «вашему» IP?
А по-моему unite и децентарлизованный веб — это разные вещи.
Opera Unite использует свои сервера для соединения двух клиентов друг с другом. Либо использует прямое соединение мужду клиентами, но всё же ничего там «революционного» нет. Встроенный в браузер веб сервер, ну подумаешь.
Нельзя назвать веб децентрализованным, только потому, что центр сместился с надёного сервера на ненадёжгый компьютер одного пользователя. Чтобы информация была доступна, нужено хранить её более надёжными способами, например, распределённо.
Мне нравятся идеи, описанные в этой статье habrahabr.ru/blogs/p2p/112491/
Opera Unite использует свои сервера для соединения двух клиентов друг с другом. Либо использует прямое соединение мужду клиентами, но всё же ничего там «революционного» нет. Встроенный в браузер веб сервер, ну подумаешь.
Нельзя назвать веб децентрализованным, только потому, что центр сместился с надёного сервера на ненадёжгый компьютер одного пользователя. Чтобы информация была доступна, нужено хранить её более надёжными способами, например, распределённо.
Мне нравятся идеи, описанные в этой статье habrahabr.ru/blogs/p2p/112491/
>Нельзя назвать веб децентрализованным, только потому, что центр сместился с надёного сервера на ненадёжгый
Ихмо, это вынужденная мера в эру IPv4. Как только (если доживем) все перейдут на 6ую версию, то необходимость в «надежных» серверах отпадет.
Ихмо, это вынужденная мера в эру IPv4. Как только (если доживем) все перейдут на 6ую версию, то необходимость в «надежных» серверах отпадет.
Интересно, что в это ввязался Ericsson. С распределенностью у них все порядке (см. Erlang), но вот веб…
Вообще технология TCP/IP, web-серверы и т.д. т т.п. изначально разрабатывались с целью получения децентрализованной системы, устойчивой к разрушению отдельных каналов связи и узлов сети.
Так что эти рабочие группы занимаются вовсе не децентрализацией, а интеграцией коммуникационных возможностей в браузеры. Раньше два компьютера могли общаться по FTP, теперь смогут с использованием еще и голосовой связи.
Так что эти рабочие группы занимаются вовсе не децентрализацией, а интеграцией коммуникационных возможностей в браузеры. Раньше два компьютера могли общаться по FTP, теперь смогут с использованием еще и голосовой связи.
Посмотрите например, что уже есть у Adobe:
labs.adobe.com/technologies/cirrus/
labs.adobe.com/technologies/cirrus/
Эх. Ну есть же полноценный русский аналог слова «implementation» — «реализация». Какая, к чёрту, «имплементация»?!
«Реализация» такое же нерусское слово, как и «имплементация». Русский аналог — «воплощение» что ли :)
UFO just landed and posted this here
Слово «Исполнение» как-то перегружно получится. В контексте программирования оно означает процесс работы программы. Люди путаться будут.
Вобщем не вижу ничего плохого в заимствовании слов типа «реализация»
Вобщем не вижу ничего плохого в заимствовании слов типа «реализация»
Или имплементация.
Зачем заимствовать ещё одно слово, когда есть исконно русское (воплощение) и заимствованное (реализация)?
Жизнь — необъяснимая штука. В коде мы пишем не «realizes», и не «воплощает», а «implements». И с каждым годом слово «implementation» всё крепче влезает во все языки мира.
Ни разу в коде не видел необходимости писать «implements»/ В комментариях бывало — в тех случаях, когда своим английским пытался народ насмешить (ака формально соответствовать соглашениям), а не принести реальную пользу тем, кто в моем коде будет разбираться.
Простите, но это значит, что вам не приходилось сталкиваться с необходимостью практиковать правильное, серьёзное программирование, системный подход.
Не могу представить себе ни одну серьёзную систему без интерфейсов.
Не могу представить себе ни одну серьёзную систему без интерфейсов.
То что вы не можете представить не значит, что их нет. Афаик, их нет, например, во всех языках реализующих явное множественное наследование, в частности в C++. Тем более их нет в не ООП языках. Так же их нет в динамических языках типа python и ruby, в PHP они недавно и большого распространения (пока?) не получили (у нас часто даже применение ООП ещё не считается необходимостью, а просто модной фичей).
Бог с ними с динамическими, но неужели вы серьезно считаете, что на С/С++ или, скажем, Fortran не было написано и до сих пор не пишутся серьёзные системы? Или они есть, но написаны неправильно?
Бог с ними с динамическими, но неужели вы серьезно считаете, что на С/С++ или, скажем, Fortran не было написано и до сих пор не пишутся серьёзные системы? Или они есть, но написаны неправильно?
Не смог пока представить децентрализованный сайт (ресурс). Где он будет существовать? В каком измерении? В децентрализованном вебе есть место для сайтов?
UFO just landed and posted this here
UFO just landed and posted this here
Почитайте habrahabr.ru/blogs/p2p/112855/ — наш проект. Его сайт, кстати уже полностью в P2P крутится.
Это-то представить можно. Мне сложно представить как в децентрализованной системе решить вопросы безопасности — сейчас они по сути решаются физической недоступностью серверов для посетителя. В p2p интересующие меня данные могут находиться на моем компе и теоретически я смогу с ними сделать всё что угодно.
И как в такой сети производить поиск ресурсов — то есть какой-то аналог DNS или треккера должен быть. Приём опять вопрос безопасности всплывает — как защититься от фишинга. Сейчас в инфраструктуре есть ключевые точки которым пользователь по умолчанию доверяет — провайдеры, регистраторы, центры сертификации, хостинги, владельцы сайтов и т. п, а главное доверяет им контролировать его доверие к остальным узлам сети. Если я отключу сейчас DNS, то не смогу прочитать хабр, пока мне кто-то не скажет его IP. Сейчас я доверяю это своему провайдеру, который какую-никакую но ответственность передо мной несёт. Если я буду спрашивать IP хабра какой-то широковещательной рассылкой и получу разные ответы, то не смогу обоснованно выбрать нужный. Да даже если одинаковый от всех моих соседей по сети ответ придёт доверия к ним меньше, чем к провайдеру. Он мои порты не сканит :) Как эту проблему решить я толком не представляю.
И как в такой сети производить поиск ресурсов — то есть какой-то аналог DNS или треккера должен быть. Приём опять вопрос безопасности всплывает — как защититься от фишинга. Сейчас в инфраструктуре есть ключевые точки которым пользователь по умолчанию доверяет — провайдеры, регистраторы, центры сертификации, хостинги, владельцы сайтов и т. п, а главное доверяет им контролировать его доверие к остальным узлам сети. Если я отключу сейчас DNS, то не смогу прочитать хабр, пока мне кто-то не скажет его IP. Сейчас я доверяю это своему провайдеру, который какую-никакую но ответственность передо мной несёт. Если я буду спрашивать IP хабра какой-то широковещательной рассылкой и получу разные ответы, то не смогу обоснованно выбрать нужный. Да даже если одинаковый от всех моих соседей по сети ответ придёт доверия к ним меньше, чем к провайдеру. Он мои порты не сканит :) Как эту проблему решить я толком не представляю.
Я так понял что смысл в том что трафик соседа Васи качающего порно или свежий релиз Винды будет частично проходить через меня как участника будущего P2P-веба?
А теперь скажите — зачем мне это надо, если сеть Интернет и так децентрализована?
А теперь скажите — зачем мне это надо, если сеть Интернет и так децентрализована?
W3C такие слоупоки, что децентрализованного веба ждать будем до второго пришествия…
Интересно, что будет, если им рассказать, скажем, про Freenet?
О боже. Они тоже почитывают дневник Леонида Каганова.
Как быть, если оба клиента за файрволлом? Сдаётся мне — им не дано обменяться данными без привлечения третьей стороны.
Sign up to leave a comment.
Децентрализованный веб