2016-09-24 2 views
2

Я установил клиента mosquitto для MQTT на моем локальном компьютере. меня ниже конфигурации:Разница между портом и слушателем в MQTT

listener 1883 
protocol mqtt 
listener 9001 
protocol websockets 

В чем разница между управлением клиента на MQTT и WebSockets. И какая разница, если я сменил прослушиватель на порт?

ответ

5

Это означает, что он будет слушать: 1883 и ожидать пакеты MQTT, а также слушать: 9001 и ожидать протокола HTTP/Websocket.

Проводной протокол - это языковые программы. Иногда подходящий разговор «Yo sup TJ», иногда вы должны сказать «Доброе утро, мистер Марвел». То же самое и в серверной связи. Мы все еще изобретаем больше языков.

  • MQTT http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html

    1. установить соединение TCP
    2. теперь мы говорим MQTT
    3. отправить MQTT пакеты, как это определено стандартом (публикация/суб/неизвестный) или отключить
  • Протокол веб-доступа, https://tools.ietf.org/html/rfc6455

    1. установить соединение TCP
    2. отправить запрос HTTP с Upgrade: websocket заголовком и другой препарат
    3. кроме 101 Switching Protocols ответа
    4. теперь мы говорим WebSocket, любая сторона может отправлять сообщения, как определено с помощью стандартного

Порт - это номер в диапазоне от 1 до 65535. IP-адрес + пара портов определяет конечную точку связи. В некотором смысле, порт расширяет пространство IP-адресов, чтобы указать, какую программу на другом компьютере вы собираетесь отправлять ваши данные. Например, HTTP-серверы обычно слушают порт 80.

Чтобы сделать жизнь более интересной, иногда вы выбираете случайный порт для прослушивания, потому что

  • сообщество еще не достигли консенсуса, который один хорош для нового приложения
  • администратор сети только позволяет определенным портам
  • попытку убедить себя, что нестандартный порт повышает уровень защиты
  • хорошо известный порт уже занят другим приложением
  • просто чувствую, как веселятся сбивающие с толку других людей
+0

спасибо temento за подробное объяснение .... – Aquarius24

3

MQTT клиента на WebSocket (Eclipse, Pāho Javascript client) можно запустить с помощью веб-браузера, как в примере (1). Обычные клиенты mqtt работают поверх TCP и, следовательно, не могут использоваться непосредственно из веб-браузера. Веб-узлы выполняются поверх HTTP и могут использоваться непосредственно из веб-браузеров.Если вы пытаетесь брокера mosquitto, то его нужно скомпилировать с помощью поддержки websocket (2)

Порты против прослушивателей, см. Файл mosquitto.conf (3).

  • Порт - используется по умолчанию mosquitto broker listenener.
  • Слушатель - используя эту переменную несколько раз, москит может прослушивать несколько портов. Слушатели также допускают такие настройки, как максимальные соединения на слушателя, протокол и т. Д.
+2

Это правильный ответ. – ralight

+0

Да, этот ответ специфичен для MQTT, в то время как мой обычно объясняет порты и протоколы. – temoto

Смежные вопросы