К слову, настоящий DNS очень сильно централизован в десятке корневых серверов: отключишь все — интернет (в привычном нам виде) умрёт.
Но ладно, давайте перейдём к практике для большего конструкива? Вот есть Алиса в Америке и Вася в России. Они знают друг друга (откуда — опустим для простоты) и хотят поболтать в мессенджере. У обоих серые айпишники за NAT. На внешних айпишниках, которые перед натом, имеются не только они, но и тысячи других абонентов провайдеров Алисы и Васи. Какого-либо центрального сервера нет. Как мессенджер должен начать соединять Алису и Васю?
Ну, лично для меня достаточно того, что никакое p2p-поделие у меня не заработало нормально. После этого никакие численные оценки меня уже не интересуют) Если есть какое-нибудь нормально работающее p2p-поделие — буду рад посмотреть, а там уже и численными оценками заинтересоваться можно.
dynDNS позволяет привязать доменное имя к динамическому айпишнику
Так и думал. Я сам пользовался таким в 2010-2012. Однако все известные мне реализации dynDNS работают через какой-нибудь централизованный DNS-сервер, так что это абсолютно не в тему. (Или я чего-то не знаю.)
Ну, и с рендерингом HTML на сервере общение между фронтом и бэком тоже можно сильно уменьшить, выдав фронтам шаблонизатор (Jinja2 какой-нибудь, учится максимум за сутки) и передавая в контекст шаблонов всё то же, что передаётся по API. Фронтам остаётся только просить передать в шаблон что-нибудь новое, что бэки забыли передать, но мне это не кажется большой проблемой (хотя у меня очень маленький опыт работы в командах и я могу быть не прав)
И да, рендеринг HTML на сервере избавляет от необходимости иметь JavaScript вообще, на радость параноикам c NoScript ;)
Для справки, у меня скрипт для полной аяксификации сайта (велосипед-аналог pjax) весит 50кб со всеми костылями и документацией, с минификацией и гзипом ужался в 1.6кб)
Проба сжатия на скорую руку остальных скриптов одного крупного сайта дала 55кб, но тут в лоб не совсем корректно сравнивать, нужно ещё фичастость учитывать
К сожалению, картинки, гифки, голосовые сообщения и аудиозвонки являются неотъемлемой частью мессенджеров последние года три, а для них скорость крайне важна
после установки соединения вам уже не нужна промежуточная нода же
Во-первых, установка соединения через NAT может занять очень много времени, во-вторых, она вообще не всегда возможна
Чую, или юзерфрендли будет ниже плинтуса, или всё это поприкрывают в течение нескольких лет, или всё сразу) Та ещё возня, в общем, хотя звучит интересно (впрочем, после PPP over XMPP через сообщения в чатике на conference.jabber.ru меня уже трудно удивить)
А если без промежуточного — мне будет очень интересно посмотреть на способ, который позволяет со 100% гарантией пробить любой NAT у обоих собеседников с серыми айпишниками. Если такой есть, я незамедлительно начну топить за p2p)
Вот и я о том же всю эту ветку говорю — без промежуточного сервера никуда. А его можно штрафовать. А если пользоваться чужими публичными STUN, то их начнут прикрывать, чтоб под штрафы не попадать. И всё, нету этого вашего p2p))
А как сами контакты узнают, что новый вы это не я?
Как я уже упоминал — PGP
Есть более чистые концепции.
Не понял о чём речь
NAT не является принципиально непреодолимой преградой.
Является. Но даже если и нет, я могу вывалить ещё с десяток проблем, из-за которых чистый p2p без промежуточных серверов никогда не взлетит выше небольшой кучки гиков-параноиков. Но, думаю, комментарии здесь не самое подходящее место для этого, оффтопик всё-таки)
PGP обеспечит тайну переписки, но не анонимность. Если пихать PGP в мессенджер без анонимности (с привязкой мобильника, например), то сам факт обмена сообщениями (пусть и зашифрованными) между условными Васей и Петей всё равно будет известен. А потом Петя что-нибудь взорвёт и Васю посадят как сообщника за обмен зашифрованными сообщениями и отказ их расшифровать)))
Тоже отмечусь как нелюбитель полностью распределённых решений: Tox и Ring у меня не работают от слова совсем. Даже несмотря на то, что у меня белый статический IP! Думаю, будущее всё-таки за федерацией (возможно, несколько модифицированной, чтобы смягчить упомянутую по ссылке проблему вырождения в централизованную систему), так как чистый p2p, если копнуть поглубже, оказывается тотальным неюзерфрендли, а упомянутые по ссылке суперноды, боюсь, чересчур сложны для реализации
Вы не перезаходите на новый сервер, а пересоздаете профиль.
Да, это косяк джаббера. Потому и упомянул болезненность. Но всё же я не выпадаю из джаббера насовсем, в отличие от того же телеграма. В Psi+ есть импорт-экспорт контактов, что облегчает переезд.
При этом ваши старые контакты как-то должны узнать, что это правда вы
PGP-подпись поможет. (Да, это неудобный костыль, но всё-таки. Думаю, за каким-нибудь мессенджером с федерацией, который максимально автоматизирует переезд с одного сервера на другой, будет будущее — сделать это не так уж трудно, в отличие от возни с чистым p2p.)
Например
Требует промежуточный сервер.
для DHTесть решения.
Пробежался по диагонали, упоминается тот же hole punching с тем же промежуточным сервером.
Вполне конкретный, но любой. Сидел на jabber.ru, он не понравился — переполз на jabbus.org, он умер — переполз на jabberon.ru, с ним что-нибудь случится — переползу на andreymal.org. Да, смена сервера в джаббере к сожалению несколько болезненная процедура, но всё же смерть одного сервера не означает смерти всего джаббера, потому что сервера всё-таки распределены. Если умрёт какой-нибудь телеграм, то он, в отличие, от джаббера, умрёт целиком.
К слову, чистый p2p невозможен: все сидят за NAT с серыми айпишниками. Для того, чтобы пробить NAT, обязательно нужен какой-нибудь промежуточный сервер, который можно успешно штрафовать.
К слову, настоящий DNS очень сильно централизован в десятке корневых серверов: отключишь все — интернет (в привычном нам виде) умрёт.
Но ладно, давайте перейдём к практике для большего конструкива? Вот есть Алиса в Америке и Вася в России. Они знают друг друга (откуда — опустим для простоты) и хотят поболтать в мессенджере. У обоих серые айпишники за NAT. На внешних айпишниках, которые перед натом, имеются не только они, но и тысячи других абонентов провайдеров Алисы и Васи. Какого-либо центрального сервера нет. Как мессенджер должен начать соединять Алису и Васю?
Ну, лично для меня достаточно того, что никакое p2p-поделие у меня не заработало нормально. После этого никакие численные оценки меня уже не интересуют) Если есть какое-нибудь нормально работающее p2p-поделие — буду рад посмотреть, а там уже и численными оценками заинтересоваться можно.
Так и думал. Я сам пользовался таким в 2010-2012. Однако все известные мне реализации dynDNS работают через какой-нибудь централизованный DNS-сервер, так что это абсолютно не в тему. (Или я чего-то не знаю.)
И да, рендеринг HTML на сервере избавляет от необходимости иметь JavaScript вообще, на радость параноикам c NoScript ;)
Проба сжатия на скорую руку остальных скриптов одного крупного сайта дала 55кб, но тут в лоб не совсем корректно сравнивать, нужно ещё фичастость учитывать
Возможно, письмо по ссылке вырвано из контекста или у меня слишком скудные знания английского, но я так и не понял, в чём там 100% гарантия
К сожалению, картинки, гифки, голосовые сообщения и аудиозвонки являются неотъемлемой частью мессенджеров последние года три, а для них скорость крайне важна
Во-первых, установка соединения через NAT может занять очень много времени, во-вторых, она вообще не всегда возможна
Опять не совсем понял о чём речь
Далеко не всегда
Скайп был слишком центральным, через его сервер всё-таки работало абсолютно всё, кроме собственно передачи аудио-видео
Ну вот примерно такая ситуация сейчас и есть)
Тогда юзерфрендли и скорость падают ниже плинтуса. Всё это уже проходили в Tor, I2P, Tox, Ring и так далее
Чую, или юзерфрендли будет ниже плинтуса, или всё это поприкрывают в течение нескольких лет, или всё сразу) Та ещё возня, в общем, хотя звучит интересно (впрочем, после PPP over XMPP через сообщения в чатике на conference.jabber.ru меня уже трудно удивить)
А при условии ненахождения он просто блокируется, пять лет эту тему проходим уже
Не разбирался в Matrix, обязательно погляжу его устройство в таком случае
Проблемы с промежуточным сервером я уже упоминал и не раз, и вы между прочим тоже с них же и начали https://geektimes.ru/post/296663/#comment_10512091
А если без промежуточного — мне будет очень интересно посмотреть на способ, который позволяет со 100% гарантией пробить любой NAT у обоих собеседников с серыми айпишниками. Если такой есть, я незамедлительно начну топить за p2p)
Вот и я о том же всю эту ветку говорю — без промежуточного сервера никуда. А его можно штрафовать. А если пользоваться чужими публичными STUN, то их начнут прикрывать, чтоб под штрафы не попадать. И всё, нету этого вашего p2p))
Как я уже упоминал — PGP
Не понял о чём речь
Является. Но даже если и нет, я могу вывалить ещё с десяток проблем, из-за которых чистый p2p без промежуточных серверов никогда не взлетит выше небольшой кучки гиков-параноиков. Но, думаю, комментарии здесь не самое подходящее место для этого, оффтопик всё-таки)
PGP обеспечит тайну переписки, но не анонимность. Если пихать PGP в мессенджер без анонимности (с привязкой мобильника, например), то сам факт обмена сообщениями (пусть и зашифрованными) между условными Васей и Петей всё равно будет известен. А потом Петя что-нибудь взорвёт и Васю посадят как сообщника за обмен зашифрованными сообщениями и отказ их расшифровать)))
Тоже отмечусь как нелюбитель полностью распределённых решений: Tox и Ring у меня не работают от слова совсем. Даже несмотря на то, что у меня белый статический IP! Думаю, будущее всё-таки за федерацией (возможно, несколько модифицированной, чтобы смягчить упомянутую по ссылке проблему вырождения в централизованную систему), так как чистый p2p, если копнуть поглубже, оказывается тотальным неюзерфрендли, а упомянутые по ссылке суперноды, боюсь, чересчур сложны для реализации
Да, это косяк джаббера. Потому и упомянул болезненность. Но всё же я не выпадаю из джаббера насовсем, в отличие от того же телеграма. В Psi+ есть импорт-экспорт контактов, что облегчает переезд.
PGP-подпись поможет. (Да, это неудобный костыль, но всё-таки. Думаю, за каким-нибудь мессенджером с федерацией, который максимально автоматизирует переезд с одного сервера на другой, будет будущее — сделать это не так уж трудно, в отличие от возни с чистым p2p.)
Требует промежуточный сервер.
Пробежался по диагонали, упоминается тот же hole punching с тем же промежуточным сервером.
Вполне конкретный, но любой. Сидел на jabber.ru, он не понравился — переполз на jabbus.org, он умер — переполз на jabberon.ru, с ним что-нибудь случится — переползу на andreymal.org. Да, смена сервера в джаббере к сожалению несколько болезненная процедура, но всё же смерть одного сервера не означает смерти всего джаббера, потому что сервера всё-таки распределены. Если умрёт какой-нибудь телеграм, то он, в отличие, от джаббера, умрёт целиком.
К слову, чистый p2p невозможен: все сидят за NAT с серыми айпишниками. Для того, чтобы пробить NAT, обязательно нужен какой-нибудь промежуточный сервер, который можно успешно штрафовать.
Всё является, у джаббера сервера очень даже распределены