MQTT中端口和侦听器之间的区别

时间:2016-09-24 17:17:45

标签: mqtt mosquitto libmosquitto

我已在本地计算机上为MQTT安装了mosquitto客户端。 我有以下配置:

listener 1883
protocol mqtt
listener 9001
protocol websockets

在mqtt和websockets上运行客户端有什么区别。如果我将侦听器更改为端口,还有什么区别?

2 个答案:

答案 0 :(得分:7)

这意味着它将监听:1883并期望MQTT数据包并且还监听:9001并期望HTTP / Websocket协议。

有线协议是语言程序所说的。有时适当的谈话是“Yo sup TJ”,有时你应该说“早上好,Marvel先生”。服务器通信中也是如此。我们还在发明更多语言。

端口是1到65535范围内的数字.IP地址+端口对定义通信端点。在某种意义上,端口扩展IP地址空间以指定您打算发送数据的其他计算机上的程序。例如,HTTP服务器通常监听端口80。

为了让生活变得更有趣,有时你会选择随机端口来监听,因为

  • 社区尚未达成共识,哪一个对新申请有利
  • 您的网络管理员仅允许某些端口
  • 试图说服自己非标准端口增加了安全性
  • 众所周知的端口已被其他应用程序占用
  • 只是觉得让其他人感到困惑

答案 1 :(得分:3)

websocket上的Mqtt客户端(Eclipse Paho javascript client)可以从Web浏览器运行,如示例(1)。普通的mqtt客户端运行在TCP之上,因此不能直接从Web浏览器使用。 Websockets运行在HTTP之上,可以直接在Web浏览器中使用。如果您正在尝试使用mosquitto broker,那么需要使用websocket support(2

进行明确编译。

Ports vs Listeners,请参阅mosquitto.conf文件(3)。

  • 端口 - 默认使用mosquitto broker listener。
  • 监听器 - 通过多次使用此变量,mosquitto可以 听一个以上的港口。监听器还允许设置每个监听器,协议等的最大连接数。