Привет! Сто лет сюда не писал, но теперь появился повод.
Когда-то, я рассказывал в России про Firechat. Сегодня, все та-жа команда работает над новым решением — распределенной сетью передаче данных. Этот пост — приглашение к диалогу.
Не мне вам рассказывать о современных угрозах: атаки, цензура, попытки замедления трафика, стихийные бедствия. Все это препятствует главному: эффективной передаче данных. И мы эту проблему решили. NewNode — гибридная наложенную сеть, использующая существующие инфраструктуры и традиционное одноранговое распределение.
Сеть NewNode состоит из трех типов узлов: инжекторов, пиров и пиров, которые становятся прокси инжекторами. Инжекторы - это доверенная служба, работающая в облаке, в то время как каждый пользователь контента по умолчанию является одноранговым узлом. Узел, который устанавливает соединение с инжектором, становится прокси-сервером инжектора. Каждый инжектор обладает личным ключом инжектора, в то время как каждый одноранговый узел имеет жестко закодированную копию всех открытых ключей инжектора.
Вот как работу сети изобразили авторы, практически на салфетке, в наших лучших традициях:
NewNode обладает уникальной способностью устанавливать CDN в ячеистой сети «устройство-устройство» (D2D) через локальные соединения, такие как WiFi. Он использует архитектуру приложения FireChat (разработанного инженерами NewNode), которое обеспечивает шифрованную связь, даже когда Интернет не доступен, а устройства не находятся в зоне досягаемости друг друга. Как только контент загружен на одно устройство сетки NewNode, он становится доступным для всех других узлов, даже если ни одно из устройств не подключено к Интернету. NewNode легко переключается между WiFi, 3G, LTE и D2D и самовосстанавливается.
Интеграция проста и эффективна. Этим летом, наше решение неожиданно пригодилось в Беларуси во время глобального отключения интернета. Лежало практически все, а Tut.by, популярный новостной сервис - работал. Благодаря NewNode.
Это, только начало. Коллеги работают над улучшениями и новыми продуктами, нам предстоит много вызовов, не только технологического характера — наличие такого решение испортит планы желающих взять под контроль интернет.
Все самое интересное, естественно на GitHub.
SpAwN_gUy
Этот рекламный текст (по содержанию) везде и пихается до сих пор.
Когда на гиковские вопросы начнут отвечать?
https://github.com/clostra/newnode/issues/90
Где жесточайшчие технические подробности? Тесты производительности? Тесты в лабораторных условиях отсутствия коннективити?
Собственно, о чем пост? Вы ищете помощников? Идейных лидеров? Посонов с английским? Интнграторов?
merkurov Автор
Так задавайте жесточайшие технические вопросы!
SpAwN_gUy
Ну, ссылку-то я дал не просто так — по ней я тоже немного насорил. Ну что же:
На чам основана реализация локального p2p в Android/iOS? На официальных апишечках?
Что с безопасностью? Могу ли я ограничивать swarm моим приложением или в нем все приложения от всех вендоров смешны в одну кучу?
Как изменяется скорость доставки контента с и без ньюноде?
Будет ли Локальный p2p работать между Андройд и иос?
Про потоковое данные — что с задержками? по документации аппла/гугла должно поддерживаться, но хотелось бы узнать по лучше.
Кроме тутбая есть ещё реальные примеры?
wanderer_from
Очень много вопросов, попробую коротко:
> Когда на гиковские вопросы начнут отвечать?
Есть много на английском на Гитхабе и есть драфт на Википедии: en.wikipedia.org/wiki/Draft:NewNode
Для гиков самое оно. Там же жесточайшчие технические подробности.
> Тесты производительности? Тесты в лабораторных условиях отсутствия коннективити?
Вот тут есть проблема — никак не можем придумать постановку эксперимента. Проблема в том, что для тестирования нагрузки и реального применения технологий D2D нужно проводить натурный эксперимент. Ну, то есть, собрать несколько тысяч людей на площади, чтоб у всех стояло приложение с SDK NN
wanderer_from
> На чам основана реализация локального p2p в Android/iOS? На официальных апишечках?
на стандартных возможностях доступа к аппаратному обеспечению из конкретной операционной системы. Именно с этим связана проблема плохой работы на Андроидах старых поколений.
> Что с безопасностью? Могу ли я ограничивать swarm моим приложением или в нем все приложения от всех вендоров смешны в одну кучу?
С безопасностью всё в порядке :) Если будет поставлен конкретный вопрос, будет дан более точный ответ. Нужно понять простую штуку — NewNode обеспечивает связанность. Всё остальное выполняет стандартные фичи TCP/IP. И если отвлечься от фантазирования на тему «они читают весь трафик», то можно понять следующую логику:
а) SDK имплементировано в приложение и перехватывает все обращения к телеком-интерфейсам
б) если коннект с интернетами и так норм, то никто ничего не придумывает, а прозрачно пробрасывает трафик
в) если с трафиком есть проблемы, то включаются механизмы решения проблем
Отсюда становится понятным, что коннективити может возникнуть только с конкретным приложением и никакой другой трафик в это подмешаться не может
wanderer_from
> Как изменяется скорость доставки контента с и без ньюноде?
Опять не понял вопроса. Как измерять? Для локальной аналитики у нас есть небольшой подпроект под названием KeyMaker. Потенциально, любое приложение с имплментированным опен-сорс SDK может получать эту статистику, но это уже коммерческая история.
> Будет ли Локальный p2p работать между Андройд и иос?
По идее — да. Но нужна методика испытаний, которой пока у нас нет. Если возникнут идеи как это организовать — будем очень благодарны.
> Про потоковое данные — что с задержками? по документации аппла/гугла должно поддерживаться, но хотелось бы узнать по лучше.
Еще раз — это только транспорт. Медиа по нему передается точно так же, как и прочий сигнальный трафик. При качественном интернете выигрыша особо и не увидим. Но если возникают проблемы с доставкой пакетов в принципе, то у NN есть вероятность доставки, а у «обычного трафика» — нет.
> Кроме тутбая есть ещё реальные примеры?
Конечно есть. Но многие закрыты NDA по просьбе клиентов, «чтоб не привлекать лишнего внимания регуляторов». Есть хороший пример из Индонезии — там несколько образовательных приложений используют NN для организации коннективити на островах. Судя по нашей статистике — довольно эффективное применение. Должно заинтересовать и российских потребителей «из глубинки».
SpAwN_gUy
Приветствую. Рад вашему появлению
Дано: 1 айфон, 1 Андройд. В клетке фарадея.
По очередной оба генерирует какой-то поток данных.
Необходимо получить этот поток на втором телефоне.
Так же можно и скорость посчитать, можно в клетку ещё вайфай раутер запихивать и делать сувере… Локальную сеть обмена трафиком. Можно даже свой днс поднять.
Как раз интересует можно ли на этой технологии пабыстраму собрать silent-disco приложение?
Приложения А и Б — генерируют трафик и работают с ньюноде. В клетке фарадея