Продолжение цикла статей. Начало:


Первая часть > || > Вторая часть > || > Третья часть

Свою четвертую статью я хотел бы посвятить одной важной мысли. На нее меня натолкнули многочисленные комментарии и сообщения в личку.

Интернет Вещей еще очень молод. Он потихоньку забирает под себя все новые сферы и находит применение во все больших областях. Однако, как и любая новая технология, сейчас IoT только встает на ноги. По сути, едва-едва появляются первые правила и рекомендации, как и на основе какой технологии разворачивать сети. И никто не знает точного ответа на вопрос, какой стандарт «взлетит», а какой канет в лету. И я не знаю. Я могу только предполагать, на основе анализа рынка, плюсов или минусов отдельных технологий.


Так почему же все-таки LoRaWAN?


В своей первой статье я приводил аргументы за: там и нелицензируемый спектр, и экономия батареи, и высокая помехозащищенность. Но, в той или ной мере, этим обладают и другие стандарты. Они тоже умеют долго жить на батарее, они тоже работают в 868. Может, мы вообще не туда смотрим, топология «звезда» не приживется и ее вытеснят mesh-сети?


Возможно все. Однако, у LoRa есть важное преимущество, которое далеко не все осознают. Это не проприетарный стандарт. То есть он не сосредоточен на одной фирме, на одном вендоре. Он более-менее открыт, и он выпускается множеством производителей.


Давайте не будем лукавить, бал по-прежнему правит разработчик, французская компания Semtech. Только она делает кристаллы для чипов. И ее влияние ощущается в LoRa Альянсе. Однако, французы выбрали удачную бизнес-модель. Само производство чипов отдано на откуп еще нескольким компаниям, спецификация в открытом доступе и наладить производство LoRa-оконечки сейчас можно чуть ли не в подвале.



А самое главное – все, что честно поддерживает LoRaWAN, совместимо между собой.
Почему это важно?


Любой стандарт, замкнутый на одного производителя-разработчика несет в себе очевидный риск. Производитель может исчезнуть и у вас на руках останется груда купленного, но малополезного железа. Эта угроза встанет в квадрат, если софт развернут не на ваших серверах, а в облаке производителя. Именно потому мы сразу отмели, к примеру, «Стриж». Он может быть в десять раз лучше по характеристикам, я даже спорить на эту тему не буду. Просто он проприетарен от начала и до конца. Если вы выбираете его, как технологию, вы связываете себя вполне ощутимыми узами со «Стриж-Телематикой». Компания замечательная, их директор – вполне приятный и крайне увлеченный делом инженер. Однако, зависеть от его решений как-то недальновидно.


Аналогично Вавиот с его NB-Fi. Тут уже поинтереснее, Вавиот решил открыться и публикует исходники на ГитХабе. Сразу многие обратили внимание, что он подозрительно похож на SigFox, только немного допиленный, но не суть. Как только за производство NB-Fi возьмутся несколько независимых компаний, его уже можно будет рассмотреть для реальных проектов. Конечно, у NB-Fi с безопасностью дела совсем грустно, т.к. там реально провернуть атаки повторения. Но мы сейчас обсуждаем все же концепцию, а не детали.


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


LoRaWAN часто называют дырявым стандартом за многочисленные недоработки. Тут сессионные ключи могут жить по нескольку месяцев (мы об этом поговорим в теме про безопасность), тут не самое эффективное использование спектра, тут есть уловки, как ввести в ступор оконечку.


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


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


А еще у LoRa есть целый Альянс, который продолжает разработки. В октябре вышла спецификация 1.1. Она пока мало используется на практике, во всяком случае, я не встречал устройств с поддержкой новинки. Но если в ней порыться, то становится ясно – помимо прочего, исправлено много багов. Инженеры, когда садились за работу, уже знали над чем надо потрудиться в первую очередь.


Как будут развивать свой стандарт проприетарщики (если вообще будут)? Очевидно, модифицировать и улучшать, не замечая, что критическая ошибка перекочевала в обновленную версию.


Давайте еще раз. В Интернете Вещей пока нет догм, его историю пишем мы с вами здесь и сейчас. Я привожу вам свои аргументы, и они даже не столько за LoRa, сколько за опенсорс в целом. Статья получилась немного философской, но ей я хочу пояснить позицию по вопросу: «А почему вы вот этим не пользуетесь, оно же лучше?». Оно может и лучше, но серьезно будет рассматриваться только в случае открытости, совместимости и мультивендорности. В следующем выпуске «Заметок» поговорим о безопасности и вновь окунемся в технику. Я не сторонник пространных рассуждений, но лучше обозначить позицию сразу и в целом, чем по кусочкам в комментариях.


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



Но будущее наступило быстрее. К нам обратился заказчик со своей оконечкой, по сути он берет у нас аренду сеть. Потребовалось немного времени, чтобы подогнать формат пакетов и все заработало.


С. Совместимость.


P.P.S. Буду последователен и ко всей статье целиком добавлю подзабытый термин ИМХО.

Комментарии (35)


  1. amartology
    31.05.2018 13:02

    Но если только Semtech имеет право делать кристаллы, то это все еще проприетарный формат, просто на немного другом уровне. Без Semtech всё еще всё развалится, или все развалится с ними, если вдруг чип с серьезным багом пойдет в продакшен. Открытым этот формат станет тогда, когда открытыми станут электрические требования к приемопередатчикам, по которым совместимый чип сможет разработать и произвести любой желающий.


    1. Interfer Автор
      31.05.2018 13:04

      Отчасти соглашусь. Но такой уровень открытости вообще мало кто может обеспечить. Взять тех же ZTE, огромная корпорация. Перекрыли им кислород в Силиконовую долину и все начало разваливаться.
      У LoRa огромное сообщество, куча вендоров, на ней построены многие сети. На таком этапе развития Semtech вряд ли канет в лету. Максимум — продаст свои разработки кому-то еще.
      Зато исследовать технологию вдоль и поперек мы можем.


      1. amartology
        31.05.2018 13:13

        Почему мало кто? Вот есть например стандарты передачи данных CAN, I2C, SpaceWire, DDRx и т.д. и т.п. Они все открыты и доступны для разработки чипов.
        Другой вопрос, что при этом возникает конкурентный рынок, а бизнес-модель Semtech этого не подразумевает, потому что состоит именно в том, что у них должна быть монополия. Они еще очень мудры и пиарят свою монополию так, что пользователи сами говорят, что ее вроде бы и нет, хотя на самом деле она есть, просто на чуть более далеком от пользователя уровне.
        Пример с ZTE некорректный, потому что ZTE активно использует чужие технологии и не может без них. Semtech ничего не мешает опубликовать требования к чипам, кроме собственных коммерческих интересов.
        Более того, на самом деле я думаю, что если они это сделают, то все равно останутся лидерами рынка (конкурентам надо будет ликвидировать отставание), но видимо сама идея конкуренции им не нравится.


    1. dmitryrf
      31.05.2018 15:11

      Модуляция LoRa уже хорошо изучена и реализована программно. При необходимости её можно реализовать на SDR.


      1. amartology
        31.05.2018 15:19

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


        1. dmitryrf
          31.05.2018 15:21

          Не могу сказать, вопрос юридический. Но модуль для GNU Radio есть: github.com/BastilleResearch/gr-lora

          Также компания HopeRF получила лицензию на производство своих чипов LoRa, но я не знаю, делают ли они свои кристаллы или же пакуют семтековские.


          1. amartology
            31.05.2018 15:31

            Вот в ответе на этот юридический вопрос, возможно, кроется будущее LoRa как стандарта. А возможно нет, но тут уже не угадаешь. Хотя мое мнение продолжает быть таким, что называть открытым стандарт, в котором одна компания имеет монополию на железо — это лицемерие и прикрытие неприятной правды красивыми словами.


            1. Interfer Автор
              31.05.2018 15:58

              С юридической стороны тоже не подскажу. Но факт про SDR меня радует, про это не знал.
              HopeRF, насколько знаю, Семтеховские кристаллы использует.

              Что же касается других стандартов, пробежался по приведенным вариантам. Там частью провод, частью немного не про то. Даже на космические нужды) Я все-таки говорю о прикладных стандартах. Счетчики опрашивать. Не уверен, что SpaceWire под это подойдет.


              1. amartology
                31.05.2018 16:24

                Тем не менее, это стандарты передачи данных. В беспроводных я гораздо хуже разбираюсь (поэтому привел примеры из того, что знаю), но рискну преположить, что чипы для, скажем, Wi-Fi или Bluetooth может производить любой желающий, потому что спецификации для совместимости железа там открыты.


      1. SergeAx
        01.06.2018 04:04

        Вы же понимаете, что SDR — это не промышленное решение для IoT, где весь смысл в стоимости и счёт идёт на центы?


        1. Alexeyslav
          01.06.2018 09:29

          Речь идет о том что раз реализовали на SDR то это означает что все протоколы известны, модуляция и ширина полосы определена и ничто не мешает реализовать это уже в железе.


          1. amartology
            01.06.2018 11:29

            Кроме того, что эта модуляция запатентована, и Semtech разорит вас в суде, если вы ее самостоятельно реализуете и начнете продавать. И это фундамент, на котором стоит зависимость LoRa от Semtech, и на котором строится их бизнес-модель.


            1. Alexeyslav
              01.06.2018 11:38

              Как модуляция может быть запатентована? Протокол — может быть, но патентовать модуляцию это как патентовать буквы алфавита…


              1. amartology
                01.06.2018 11:48

          1. SergeAx
            01.06.2018 13:32

            Принято, но с поправкой: "ничто не мешает" — это очень сильно сказано. От понимания модуляции протокола до серийного производства чипа расстояние примерно в полтора года работы команды из десятка квалифицированных специалистов.


            1. amartology
              01.06.2018 14:24

              Во-первых, полтора года — это еще довольно оптимистичный прогноз.
              Во-вторых, остается открытым вопрос патентов Semtech.


              1. SergeAx
                01.06.2018 15:40

                Да, оптимистичный, но с поправкой на моё понимание, какой специалист считается квалифицированным)


                1. amartology
                  01.06.2018 15:45

                  Даже очень квалифицированные специалисты не могут со 100% вероятностью выдать полностью работающий сложный чип с RF-частью с первого запуска.


  1. SergeAx
    31.05.2018 14:00

    Дисклеймер: я сотрудник компании "Стриж".


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


    К этой же статье у меня есть всего два комментария. Во-первых у нас, "Стрижа", конечно же есть решение с выделенным сервером, просто предназначено оно для корпоративных заказчиков, которые хотят, чтобы все данные оставались внутри их частных сетей, включая коммуникацию между базовыми станциями, базами данных и сервером приложений. Такое внедрение для заказчика уровня ТСЖ или застройщика квартала на 4-5 домов — совершенно избыточное.


    А во-вторых читая ваши предыдущие статьи, я не мог не проникнуться сочувствием к вашим мытарствам: с покрытием, со связностью, с зоопарком устройств и т.д. В этом смысле, если хочется поковыряться в этом всём руками, полазить по подвалам и чердакам, повисеть на опоре ЛЭП в 30-градусный мороз — ничего лучше LoRa не найти. Мы в "Стриже" все эти стадии прошли и предлагаем да, закрытое, но работающее из коробки решение. Берёте базовую станцию, устанавливаете её по понятной инструкции с видео, устанавливаете и подключаете устройства — и всё, вот вам показания, вот отчёты в личном кабинете, вот обсчёт небаланса, вот REST API, если данные нужно выгружать в каком-то своём формате.


    Я сам поклонник открытого ПО, пользуюсь им где можно, но слишком хорошо помню, какой путь пришлось пройти той же Мозилле, чтобы сегодня иметь характеристики сравнимые с Chrome, или тому же PHP, прежде чем он превратился в современный объектно-ориентированный язык. Не забудьте про такую вещь, как легаси: когда LoRa станет более-менее пригодной к использованию, те устройства, которые вы создали и установили сегодня могут оказаться неподдерживаемыми, потому что в обеспечении обратной совместимости не заинтересованы никакие участники экосистемы: ни Semtech, ни китайские вендоры. И наоборот: посмотрите, сколько усилий прилагает Microsoft, владелец самой грандиозной закрытой системы, в области обеспечения совместимости с ранее выпущенными продуктами.


    Ах, да, и для инфраструктурных внедрений "Стриж" выходит дешевле из за намного большей дальности передачи: счётчики, которые я в режиме dogfooding установил у себя дома, принимают БС, находящиеся в 8 километрах через городскую застройку. Устройство, которое наша хакатон-команда сделала для соревнований в Питере, было "слышно" в коттеджном посёлке около Ольгино, на расстоянии 9 километров. Недалёк день, когда вместо покупки БС можно будет взять тестер сети и с вероятностью 80% окажется, что покрытие уже есть, можно просто устанавливать устройства.


    Да, и при этой дальности передачи наши водомеры на одной батарейке живут до 6 лет, то есть не требуют обслуживания в пределах межповерочного интервала. Что ты скажешь на это, Илон Маск ЛоРа Альянс? :)


    1. Interfer Автор
      31.05.2018 16:09

      Попробую ответить за Лора Альянс)
      В общем-то ваши минусы я уже описал. Не знал, про возможность установки корпоративного сервера, это уже шаг вперед. Однако, сама суть от этого не поменяется.

      Вы можете показывать отличные результаты, которых добились ваши отличные инженеры (говорю без сарказма). Но вы варитесь в своем закрытом котле.
      Знаете, тут была статья про выкладку кода программы на Гитхаб. Много упоминали про то, как волновался автор кода, т.к. сейчас код увидят тысячи других программистов и могут просто закидать… закидать, в общем. Но выкладывал он именно для того, чтобы свежие люди свежим взглядом посмотрели.
      Тут примерно та же ситуация. Я не могу сказать про вашу технологию что-то плохое или хорошее, просто потому что вижу только внешние моменты.
      Скажем, тот же NB-Fi — крутяк, дальнобойность отличная и… атака повторения. Ну как так. Ваши пакеты, кстати, защищены от этой атаки?


      1. Interfer Автор
        31.05.2018 16:49

        На самом деле, добавлю, что моя точка зрения ни в коем случае не является догмой. Как я уже писал выше, это все ИМХО. Я рассказываю вам свою логику.
        Но Историю ИВ пишем мы сейчас, и наша компания, и Стриж, и компания СигФокса, и большая четверка, и Семтех и все-все-все.
        Мы пока не знаем правильных ответов на многие вопросы. Соберемся лет через пять и поймем, кто был прав, а кто ошибался)


      1. SergeAx
        31.05.2018 19:43

        Я руковожу в "Стриже" отделом серверной разработки и точно знаю, что мои бойцы — инженеры высочайшего уровня, каждый с 2-3 офферами в любой момент времени, и то, что они выбрали (и продолжают выбирать) работать именно тут — о многом говорит. Я уверен, что если мы выложим наш код на GitHub — ни о каком "закидать" речи не пойдёт. Не говоря уже о cross code review, который практикуется у нас в компании. В частности поэтому мы его и не выкладываем)


        Я хорошо знаю разработчиков ПО для базовых станций и устройств, знаю про внедрённые там практики, методологии и регламенты. С учётом выстроенных внутри компании коммуникаций, практик обмена опытом, проведения докладов, участия в хакатонах… В общем, надеюсь не обижу вас, если скажу, что уровень их кода совершенно точно не хуже самого лучшего, что может себе позволить городской провайдер IoT, ограниченный с одной стороны чисто рыночными рамками (сколько вы в принципе можете себе позволить потратить на разработку), а с другой — размером команды и уровнем бойцов (сколько вы можете позволить себе тратить на зарплаты, бонусы, соцпакет и прочие benefits).


        (кстати, мы с удовольствием нанимаем специалистов по разработке устройств и прошивок, если вы читаете это — пишите saksenov@strij.tech)


        На сегодняшнем стеке у нас невозможна не только атака повторением, но и атаки типа MitM на каналы связи между базовыми станциями и серверами, атаки типа N-minutes, а в разработке находится стек следующего поколения, не только с улучшенными скоростными характеристиками, но и с более продвинутой безопасностью, которая расчитана на сертификацию для работы с государственными организациями и военными приложениями. Если вам очень хочется посмотреть на стек изнутри — приходите, подписывайте (пока) NDA, приобретайте developer's kit и смотрите)


        1. BalinTomsk
          31.05.2018 23:55

          Была у меня за углом замечательная компания PixStream, жили богато, пока их не купила Cisco на пике доткома. Когда случился кризис, то решением акционеров их закрыли.

          Такое же революционное устройство как Cybiko купленное Yahoo тоже сгинуло в неизвестности.

          Что будет коммьюнити, если вас стремительно (не дай Бог) закроют?


          1. SergeAx
            01.06.2018 04:01

            А что будет, если по каким-то причинам закроется Semtech? Или ещё интереснее: что будет, если Semtech по каким-нибудь санкционным причинам запретит поставки в Россию под угрозой отзыва лицензии у производителей чипов? Риск прекращения работы правообладателя есть всегда, но если вы думаете, что у LoRa он ниже, чем у "Стрижа", ZigBee или NB-IoT — подумайте чуть шире.


        1. Interfer Автор
          01.06.2018 05:01

          Весьма убедительно. А какие в Стриже недостатки? Что вы считаете слабыми местами и планируете исправить в ближайших обновлениях?


          1. SergeAx
            01.06.2018 12:04

            Помимо расширения механизмов обеспечения безопасности — хотим сделать возможность увеличения скорости передачи данных. Большое расстояние и работа одновременно многих устройств (я не говорил, что в эфир у нас может передавать одновременно больше сотни девайсов? в полевых условиях видели 60 одновременных передач) достигается за счёт узкополосного высокоэнергетического сигнала, но появляются, например, задачи передачи большего количества информации на короткой дистанции. Это необходимо для обновления прошивок устройств по воздуху, что, разумеется, ставит дополнительные задачи обеспечения безопасности.


            1. Interfer Автор
              01.06.2018 13:59

              Хм. Т.е. текущий уровень безопасности хорош для малых объемов, но не подойдет для больших?


              1. SergeAx
                01.06.2018 14:00

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


                1. Interfer Автор
                  01.06.2018 14:34

                  А кто-то сторонний будет проводить этот аудит или своими силами?


                  1. SergeAx
                    01.06.2018 15:40

                    Сторонний, разумеется.


                    1. Interfer Автор
                      01.06.2018 15:56

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

                      Я двигаю Лору, но постоянно говорю — ту не так, там не то. Это не мои мысли, это наблюдения сторонних аналитиков.
                      Если я захочу это замолчать, меня тут в порошок сотрут.

                      А с вами не так. Не заглянуть вглубь. Как бы вы меня не убеждали, что все классно, ну вот я настроен критически)
                      В этом минус проприетарности.

                      Спасибо вам за развернутые ответы) Думаю, каждый останется при своем мнении, на которое имеет полное право) Через пять лет соберемся и посмотрим)


  1. YuryShemchuk
    31.05.2018 16:09

    Да, Олег, почти все так.

    Только конечному заказчику все равно, ибо всегда он наглухо завязан на какое-то решение, технологию, сервис, компанию-провайдера. Всегда решение, решение которое выбирает конечный заказчик — закрыто на каком-то уровне и в лучшем случае на одном.

    Заказчик принимает решение работать с той или иной компанией и это намерение на всю жизнь, и всегда риски.

    Ключевой параметр для конечного заказчика — работоспособность, надежность, сервис и достижение целей бизнеса.

    Кейс из жизни с лорой — заказчик установил систему онлайн-учета на лоре, купив решение у Компании «С». Компания «С» ушла с рынка — система встала. Есть компания «Н» — она тоже работает на лоре. Поможет это ему воскресить систему? Нет, конечно.

    1. Ключи шифрования — остались у прошлого провайдера
    2. Данные упаковываются устройствами (канальный уровень ) — у всех свой! Не писать же заказчику свое серверное ПО.
    3. Базовые станции залочены на сервер компании «С», а как иначе разворачивать и удерживать зону покрытия.
    4. Еще пару «веселых» моментов, о которых пока говорить не буду…

    Вывод? Вывод сделает рынок.


    1. Interfer Автор
      31.05.2018 16:15

      1) Сетевой сервер у кого? Если к нему есть доступ, то все проблемы с ключами снимаются.
      А если нет… Ну как-то жестко интегратор схлопнулся, ушел и мосты за собой сжег. Что с ним случилось-то?
      2) Я так понимаю, что сам радиомодуль опрашивает счетчик и передает сухие данные через LoRa-канал? Тоже решаемо. Конечно, не силами заказчика, а силами компании «Н». Это не настолько сложно. По сути им надо верно интерпретировать пакеты на стороне сервера приложений.
      3) БС какого производителя? У нас был Керлинк, залоченный на Лартех, нам предлагали его разлочить. Но мы просто вернули, т.к. решили не тратить на него деньги. Если БС у вас в собственности, вам любой нормальный производитель поможет с разлочкой.
      4) Озвучивайте уж до конца)


  1. sguslya
    31.05.2018 17:58
    +1

    Я просто смотрю на карту покрытия LoRa в европе, и понимаю что рынок свои выводы уже сделал. До нас докатится через пару лет, это очевидно.


    1. YuryShemchuk
      01.06.2018 13:29

      Покрытие сети и рынок — слабо связанные сущности.

      Рынок оперирует понятиями: количество реализованные проектов, выручка, прибыль, маржинальность и т.п.

      Коммерческие проекты на Лоре в Европе приведите, пожалуйста. Не путать с витринными пилотами.