Невозможно общаться без переадресации портов

Привет, у нас есть проект IOT с запущенным приложением website + android, созданным на сервере Node.js и использующим протокол HTTP с REST API для связи со встроенным устройством CC3200 от Texas Instruments .

Проект контролирует нагревательные кровати, отправляя сообщения из Интернета или с мобильного на CC3200, который является нашим блоком управления, который отправляет команды на нагревательные кровати.

Проблемы:

  1. Нам нужна переадресация портов на определенных портах, нам нужно от нее избавиться
  2. CC3200 при публикации изменений в Интернете изменения не видны, если страница не обновлена.

Я исследовал и обнаружил, что есть два возможных решения: использовать IO.js или перейти на MQTT . Но на этом заключительном этапе проекта оба решения кажутся начальными.

Любая помощь в этом будет оценена.

PS: переадресация портов - большая проблема

1 ответ

В большинстве решений обычно используется долговременное соединение, инициируемое встроенным устройством с внешним сервером, чтобы избавиться от проблем переадресации портов. Как вы процитировали это, MQTT позволяет вам сделать это, но и Long-опрос HTTP, или даже Websockets,

Использование одного из вышеперечисленных не обязательно означает начало с самого начала, но, безусловно, требует некоторой дополнительной работы для реализации этой логики на встроенном устройстве из первых рук и настройки общедоступного защищенного брокера сообщений (например, MQTT) с другой.

Другим решением будет использование UPnP IGD для динамического добавления записей переадресации портов на домашнем шлюзе (если это поддерживается) или использование методов STUN. Тем не менее, обратите внимание, что это решение публично представит устройство внешнему миру, поэтому вы можете обратить внимание на аспекты безопасности, которые это подразумевает.

Смотрите также:

Другие вопросы по тегам