• LLTR Часть 1: Первые шаги в OMNeT++ и INET

    • Tutorial

    OMNeT++ (Objective Modular Network Testbed in C++) Discrete Event Simulator – это модульная, компонентно‑ориентированная C++ библиотека и фреймворк для дискретно‑событийного моделирования, используемая прежде всего для создания симуляторов сетей. Попросту говоря это “симулятор дискретных событий”, включающий: IDE для создания моделей, и сам симулятор (GUI).


    INET Framework – “библиотека” сетевых моделей для OMNeT++.


    КДПВ: LLTR Часть 1 – OMNeT++ 5 the Open Simulator :: LLTR Model :: for freedom use


    Полная версия GIF (15.7 MiB)


    В предыдущих частях…


    0. Автоматическое определение топологии сети и неуправляемые коммутаторы. Миссия невыполнима? (+ classic Habrahabr UserCSS)


    В этой части:


    • создадим “свой первый” протокол (на примере LLTR Basic);
    • выберем подходящий симулятор сити для отладки протокола (и создания его модели);
    • познаем тонкости настройки окружения для симулятора и его IDE (конфигурирование, компиляция, линковка, тюнинг, патчинг, игнорирование устаревшей документации; и другие англицизмы в большом количестве);
    • столкнемся со всем, с чем можно столкнуться, при создании своей первой модели своего первого протокола в не своем незнакомом симуляторе сети;
    • пройдем весь путь вместе:
      • от счастья, принесенного успешной (наконец!) компиляции первого проекта с пустой сетью,
      • до полного погружения в эксперименты с функционирующей моделью протокола;
    • tutorial, все описано в виде tutorial – мы будем учиться на ошибках – будем совершать их, и будем понимать их (природу), дабы элегантно/эффективно с ними справится;
    • репозиторий (git ), в коммитах и тегах которого сохранены все шаги (“Add …”, “Fix …”, “Fix …”, “Modify …”, “Correct …”, …), от начала и до конца.


    Note: дополнительная информация для читателей хаба “Mesh-сети”.


    { объем изображений: 2.2+(2.1) MiB; текста: 484 KiB; смайликов: 22 шт. }

    Читать дальше →
  • Мессенджеры, пора делать следующий шаг

      image

      В последние пару лет, мессенджеры изменили привычный ход потребления контента, whatsapp, telegram, viber, простите. Теперь весь контент сосредоточен в них, аудитория растет дикими темпами, они многое изменили, но самое главное — им еще предстоит — способ доставки контента, а если точнее — P2P CDN.

      Почему P2P CDN это необходимый шаг и как все может работать (и что это вообще такое?!) — всё это рассмотрим в посте.
      Читать дальше →
    • Обмен данными в распределенных сетях

        В децентрализованных сетях обрабатывать данные гораздо сложнее, чем в централизованных. К тому же в техникумах и вузах обучают, в основном, программированию клиент-серверных систем. Поэтому p2p-программистов на порядки меньше, чем программистов клиент-серверных систем.

        Этой статьей я решил частично восполнить пробел, перечислив восемь известных мне распределённых технологий: из них первые 3 описывают способы распространения (рассылки) данных по сети, другие 5 разъясняют способы распределения (разделения) данных.


        Все 8 технологий
        • +23
        • 8,4k
        • 8
      • Bluetooth Mesh – развитие стандарта передачи данных для IoT

        Группа компаний Bluetooth SIG, контролирующая развитие Bluetooth-технологий, 18 июля объявила, что стандарт Bluetooth с этого момента поддерживает функциональность mesh-сетей. Эта новость особенно тепло была принята энтузиастами концепции IoT.

        Читать дальше →
      • Тестируем бесшовный WiFi с помощью голосового трафика



          Продолжаем эксперимент, начатый месяцем ранее, когда мы построили Wi-Fi сеть с бесшовным роумингом и прошлись по офису с планшетом, наблюдая, будут ли происходить замирания и сбои при скачивании на него потокового видео? Эксперимент прошел удачно, проблем с потоком не было и отчет выложили здесь же на Хабрахабр. Но!

          Но в комментариях к статье были выражены сомнения, ввиду того, что видеопоток мог буферизоваться и бесшовный вай-фай эмулировался за счет подкачки видео еще до перехода от одной точки доступа к другой и это видео, из буфера воспроизводилось после обрыва и восстановления сессии. Отвечая на эти вопросы мы снова нагрузили абсолютно ту же сеть, с теми же точками Edimax, ничего не меняя в их настройках (поднял те же параметры для другого SSID, чтобы не мешать офису со своими тестами по RADIUS серверу, который так же обкатываю для работы в этой сети). Использовали почти что голосовой трафик, который нельзя было заподозрить в буферизации. С удовольствием делимся результатами второй части эксперимента.
          Читать дальше →
        • Беспроводные сети ZigBee. Часть 2 [Работа с радиомодулями ETRX35X]

          • Tutorial

          Введение



          В прошлой статье были рассмотрены основные особенности беспроводной технологии ZigBee. В этой части мы поговорим о том, как быстро начать работу с данной технологией на практике. Для этого были выбраны модули ETRX357, имеющие встроенную прошивку, которая позволяет работать с сетевыми функциями и управлять аналоговой и цифровой периферией с помощью набора AT-команд. Также в статье будут более подробно разобраны вопросы касающиеся типов устройств в сети ZigBee и безопасности сети. В конце мы соберем сеть сбора данных, которая будет получать информацию о температуре от нескольких беспроводных устройств.

          Читать дальше →
        • Ой, у вас баннер убежал!

          Ну. И что?
          Реклама
        • Яндекс.Карты (а также Google Maps и др.), когда вы начнёте использовать mesh-сети?

            А ведь для этого есть очень хорошие предпосылки:


            1. Территориальная привязка наиболее часто требуемых квантов информации (изображений части карты/схемы/спутника, метаинформации о пробках и т. д.)
              Значительная часть пешеходов, использующих приложение-карты в окрестности точки А, будут использовать карты окрестности точки А. Значит, можно попробовать получить необходимую информацию не от сервера через мобильный интернет, а от другого пользователя.


            2. Дороговизна трафика до сервера. Приложения-карты часто используются на мобильных устройствах, которые, в свою очередь, используют недешёвый и редко безлимитный мобильный интернет (недовольство сиим фактом на Хабре высказывалось ). Конечно, фрагмент карты не так уж тяжёл, но не следует забывать про подводные камни наподобие округления сессий в большую сторону. Кроме того, скорость мобильного интернета часто оставляет желать лучшего.
              Очевидно, что экономия мобильного трафика — это конкурентное преимущество.

            Читать дальше →
          • Кэш, хэш и няш-меш

              UPD0 (2016-07-19 23-31): судя по всему, первая половина моей статьи — успешно изобретённый велосипед. Спасибо хабравчанам за ссылку на спецификацию
              Статья ценна не более, чем вольное описание уже придуманной технологии.


              Предыстория


              Июльский субботний вечер подходил к концу. Нарубив дров на шашлык, я повесил USB-модем на багету, скомандовал sudo wvdial, развернул браузер и обновил вкладку с открытым гитхабом. Вернее, попытался обновить. Скорость не радовала, и в итоге страница-то обновилась, но явно не хватало какого-то из стилевых файлов; и дело было не в блокировке, поскольку аналогичные проблемы я наблюдал и с другими сайтами, и зачастую они решались просто многократным обновлением страницы. Во всём был виноват перегруз 3G-сети.


              Стоп! А как же кэш?

              Читать дальше →
            • Беспроводные сети ZigBee. Часть 1 [Вводная]

              • Tutorial

              Введение


              Сейчас о концепции IoT («интернета вещей») говорят везде. Появляется «умная» бытовая техника, которая может подключиться к сети (Bluetooth/Wi-Fi) по беспроводному интерфейсу и начать рассылать уведомления о том, что задача по стирке/готовке еды/кипячению воды завершена и неплохо бы что-то с этим сделать. Большинство таких «умных» устройств получает питание непосредственно из электросети. Но как быть, если хочется получать информацию от беспроводного термометра и при этом не менять батарейку каждую неделю? Или иметь беспроводной выключатель с небольшим аккумулятором для которого не понадобится штробить стены? И хорошо бы объединить такие устройства в единую распределенную сеть, которой можно управлять удаленно и которая сама, основываясь на показаниях датчиков/извещателей/счетчиков, могла бы принимать какие-то решения.

              Специально для решения таких задач была создана беспроводная технология ZigBee, о которой мы и начнем разговор.

              Читать дальше →
            • RetroShare — инструмент для приватного общения и обмена данными

                После года пребывания в статусе beta и release candidate, состоялся финальный релиз Retroshare версии 0.6.0.

                Программа развивается в течение вот уже 10 лет. Предыдущая версия 0.5.5 была выпущена осенью 2013 года и приобрела немалую популярность среди специалистов по криптографии, энтузиастов децентрализованных сетей и рядовых пользователей сети Интернет, для которых безопасность файлообмена и общения не пустой звук. Однако следует отметить, что на одном из наиболее популярных ресурсов рунета нет ни одного материала о криптоплатформе RetroShare, пару упоминаний о ней удалось обнаружить лишь в комментариях. Нижеследующий текст можно считать скромной попыткой исправить это упущение.

                Итак, Retroshare — криптографически защищенная децентрализованая платформа для анонимного общения и файлообмена. Система позволяет организовывать обособленные бессерверные Friend-to-Friend сети или одну глобальную сеть (что по факту и существует на сей день) с определённым кругом лиц — например, вашими друзьями, семьёй, коллегами или просто незнакомцами. Соединения устанавливаются напрямую только с теми участниками, которым вы дали разрешение. Это важная особенность, перемещающая подобные сети в рамки особого класса децентрализованных сетей, в которых несанкционированное подключение к вашему компьютеру запрещено без вашей на то доброй воли. Сети такого типа называются „Private p2p“, „Darknet“ или просто „Темная сеть“.
                Читать дальше →
              • Mesh-роутер — это просто

                  С того момента, когда cjdns добавили в официальный репозиторий OpenWRT, процесс подготовки mesh-роутера стал просто тривиален. Саму установку OpenWRT на роутеры описывать подробно не вижу смысла, т.к. это популярная тема. На многих официально поддерживаемых роутерах задача установки свободной прошивки сводится к простому скачиванию Factory архива и скармливанию его стандартной форме обновления прошивки на заводской системе. Главное, чтобы не было блокировки на установку сторонней прошивки, но и в этом случае, как я полагаю, будет множество обходных путей.

                  До появления официальной поддержки пакетов cjdns, приходилось возиться немного больше. Можно было собирать пакеты самому или искать собранные кем-то пакеты и устанавливать их. Еще были прошивки от энтузиастов с уже установленным нужных ПО. В любом случае, приходилось повозиться чуть больше, чем сейчас.

                  Читать дальше →
                • Zigbee для самых маленьких. Пост номер 1

                  image
                  Около месяца назад попали в мое распоряжение модули Atmel ATZB-S1-256-3-0-C основанные на чипе ATmega256RFR2 объединяющим в себе 2.4Mhz трансивер, микроконтроллер AVX на 256 килобайт памяти и даже чип-антенну. Атмель обещали в свою очередь out of the box поддержку Zigbee для этих модулей и было принято решение строить наш mesh именно на них.

                  Если кто не понял то при помощи этих модулей можно относительно просто построить IoT меш сеть добавляя к модулям лишь кнопочки, лампочки, сенсоры и батарейки. Основной микропроцессор уже на месте, даже с осцилятором из трансивера.

                  Звучит довольно просто, не так ли? На практике все оказалось намного прозаичнее. Основной проблемой оказалась недооценка технологической сложности атмелевского стека Zigbee, самого стандарта Zigbee, ну и переоценка собственных возможностей. Дело в том что сам я давно не програмировал на C, давно перешел на Matlab и Python, все указатели и другие средства управления ресурсами и процессами давно положил в тумбочку и выкинул ключ. Ну что-же… в мире ембеддед меня ждало много приятных неожиданностей.
                  Читать дальше →
                  • +14
                  • 18,3k
                  • 2
                • Свободный DNS для свободного Интернета

                  В качестве альтернатив Интернету сейчас существует несколько проектов, один из них — cjdns (Hyperboria).
                  Одна из больших проблем в этой сети — отсутствие хорошей замены существующей DNS. Чем не подходит существующая система? Например, зависимостью от «внешних сил» и функционированием в «обычном Интернете». Я предлагаю достаточно хороший вариант построения новой системы доменных имен.
                  Читать дальше →
                • SDN: новые возможности управления потоками в mesh — сетях



                  Здравствуйте, уважаемые читатели. Стоит сразу оговориться, что данная статья не о том, что хорошо, а что плохо в SDN или каких-то других сетевых технологиях. Мы не яростные адепты программно-конфигурируемых сетей. Мы просто хотим рассказать вам о решениях, к которым мы пришли, разрабатывая промышленные mesh-сети в рамках создания промышленных беспроводных систем связи. Рассказать о возможностях, которые находятся на стыке технологий, позволяя опираться на хорошо проверенные решения и в то же время идти в ногу со временем.
                  Читать дальше →
                  • +7
                  • 11,3k
                  • 5
                • Перспективы и трудности Mesh-сетей на рынке мобильных приложений

                  Заинтересовавшись технологией Mesh-сетей я заметил, что тема не достаточно популярна для выхода на рынок, но стремительно набирает обороты. Учитывая технологическую тенденцию миниатюризации и растущий с каждым годом рынок мобильных приложений логично делать ставку на мобильный сегмент. Конечно, не забывая остальные, как дополнение.
                  Читать дальше →
                • Будущее Веб, которого не будет

                    Каким будет Веб в будущем? Об этом много пишут — начиная от новых спецификаций на HTTP, позволяющих быстрее и защищенней передавать данные по сети, заканчивая идеями “семантического” веба. Это все замечательно, вебу нужны быстрые сети и организованные данные, но есть проблемы которые остаются пока недооцененными и нерешаемыми с использующимися технологиями. Давайте соберем претензии к текущей реализации?
                    Читать дальше →
                  • Плавный переход к распределенному интернету?

                      После прочтения этой статьи, и ее обсуждения возникли некоторые мысли по поводу возможного развития интернета в сторону независимости, децентрализованности и анонимности. С этими мыслями я и хочу познакомить вас, уважаемые пользователи сего замечательного ресурса.

                      Для начала два «предупреждения»:
                      1. Предлагаемая идея — это не «еще одна соц. сеть по типу Биткойна», поэтому прошу не делать поспешных выводов.
                      2. Хотя я никогда не слышал о подобных проектах, но это не значит что их нет. Если вы знаете о чем-то подобном, или знаете почему все гарантированно не будет работать — прошу напишите, я удалю статью и мы сбережом время других читателей.

                      Итак. Начнем с того, что сегодня представляют собой соц сети? Фактически есть два вида сетей — обычные и распределенные.
                      Обычные — часто носят массовый характер, и в них уже находится множество людей. Эти сети вроде бы всем хороши, но их легко контролировать, поэтому там всегда будут существовать проблемы с конфеденциальностью, безопасностью, анонимностью и прочими «запретами», от людей ставящих свои интересы выше чужих.
                      В противовес — существуют различные распределенные решения для общения и файлообмена, но там обычно очень мало людей, что делает их относительно малораспространенными, а значит — узко специализированными.

                      Можно ли совместить преимущества традиционных соц. сетей с распределенными? Я считаю что можно.

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

                      Кажется, что для этого потребуется интеграция с соц. сетью, но на самом деле это не так. Наше расширение просто добавляет новые элементы в интерфейс соц. сети. На страницу с музыкой и видео добавляются кнопки «хранить локально», в на страницу поиска, кроме результатов соц. сети — добавляются результаты поиска в нашей распределенной сети.

                      Таким образом, те люди которым не нравятся блокировки, вместо того чтобы искать другие площадки (которых становится все меньше), могут в два клика установить наше расширение и увидеть «мир без диктата и запретов...». Но это только первый шаг. Если вам интересны еще 3 — добро пожаловать под кат.
                      Читать дальше →
                    • Доклады и конкурсы на NeoQUEST-2014


                        Уже скоро в Санкт-Петербурге состоится масштабное мероприятие по кибербезопасности NeoQUEST-2014: с увлекательными докладами из практики информационной безопасности, зрелищными демонстрациями атак и веселыми конкурсами как для начинающих хакеров, так и для настоящих профи! В рамках NeoQUEST традиционно состоится финальный поединок победителей онлайн-тура хак-квеста!

                        Вход на NeoQUEST-2014 свободный! Необходима лишь регистрация тут.

                        Темы докладов основной технической программы NeoQUEST-2014:

                        1. «tpm.txt: на что способно заморское железо?»: доклад про технологии TPM и TXT, аппаратные средства защиты.
                        2. «I2P и TOR: казнить нельзя помиловать. Анонимность в Интернет – иллюзия или реальность?»: анонимные децентрализованные сети I2P и TOR, их достоинства и вектора атак на них.
                        3. «В заMESHательстве: насколько безопасны mesh-сети?»: доклад о mesh-сетях, рассматривается взгляд с двух противоположных сторон.
                        4. «Как украсть кота по USB»: перехват личных данных, таких как фотографии, видео, контакты с вашего смартфона по USB-протоколу и пути возможного противостояния атаке.
                        5. «Автомобиль как большой смартфон: киберугрозы безопасности»: кибератаки на CAN-шину вашего авто.
                        6. «L4»: загадочный доклад с не менее загадочным названием!

                        Под катом — еще больше про доклады, конкурсы, демонстрации и, конечно, сам хак-квест!
                        Читать дальше →
                      • Няш-меш

                          Судя по сообщению в «Российской газете», вчера на официальном портале правовой информации появился подписанный Путиным так называемый «закон о блоггерах», который повелевает популярным «блоггерам» пройти официальную регистрацию в России и соблюдать закон о СМИ под страхом блокировки.

                          Я ставлю «блоггер» в кавычки, потому что это слово — фиговый листок. Всякий может скачать PDF закона и убедиться в том, что статья 10² начинается так: «Владелец сайта и (или) страницы сайта в сети «Интернет», на которых размещается общедоступная информация и доступ к которым в течение суток составляет более трёх тысяч пользователей сети «Интернет» (далее — блогер), при размещении и использовании указанной информации, в том числе при размещении указанной информации на данных сайте или странице сайта иными пользователями сети «Интернет», обязан обеспечивать соблюдение законодательства Российской Федерации…».

                          Стало быть, это не только блогосферы касается. Такими страницами являются, например, не только все мои блогозаписи на Хабрахабре в этом году (кроме одного малопосещаемого перевода, не дотянувшего до 3000), но также, например, и описание API jQuery, и даже файл README.md в репозитории модуля node-sqlite3, который (в составе npm-пакета) подвергается десяткам тысяч скачиваний ежемесячно:

                          [информация о модуле]

                          Кроме того, таковы и вообще все-все сколько-нибудь популярные зарубежные сайты (репозитории, магазины, библиотеки, галереи, пособия, СМИ, блоги, игры…) и отдельные страницы, владельцы которых уж конечно не побегут, задрав штаны, регистрироваться в России — и, более того, бережно хранить итоги полугода пристального слежения за всеми своими посетителями для предоставления в органы.

                          Закон начинает действовать 1 августа. Осталось 86 дней до превращения ситуации с Интернетом в России в ситуацию совершенно северокорейскую. То есть, хотя во второй половине прошлого года я сравнивал положение дел с Кувейтом ([1], [2], [3]) — простите, был не прав: даже Кувейт для нас ещё очень долго (может быть, даже вечно, вечно!…) будет недосягаемым оазисом относительной свободы Интернета.

                          Читать дальше →
                        • Портирование Netsukuku на Vala завершено

                            — Close the world,
                            txEn eht nepO —

                            Многие уже читали про Netsukuku и считали, что проект умер.
                            Да, история у этого проекта сложная — созданный на C, был переписан на Python и, после отказа мейнтейнеров от разработки, был заброшен в 2009.
                            В 2011 один неизвестный разработчик объявил, что перепишет всё на Vala.

                            И вот, 5 марта 2014, спустя ровно три года, портирование было завершено.
                            На данный момент некоторые фичи не реализованы, но уже доступны пакеты для OpenWRT (инструкция).

                            И вот, дальнейшая судьба Netsukuku вновь под угрозой!

                            Читать дальше →
                          Самое читаемое