2016-09-24 73 views
2

我在本地机器上安装了用于MQTT的mosquitto客户端。 我有如下配置:MQTT中端口和侦听器之间的区别

listener 1883 
protocol mqtt 
listener 9001 
protocol websockets 

是什么在MQTT和WebSockets的运行客户端之间的区别。如果我将侦听器更改为端口,又有什么区别?

回答

5

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

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

端口号范围为1到65535.IP地址+端口对定义了一个通信端点。从某种意义上讲,端口扩展了IP地址空间以指定您想要发送数据的另一台计算机上的哪个程序。例如,HTTP服务器通常侦听端口80

为了让生活更有趣,有时候你选择的随机端口监听,因为

  • 社会尚未达成共识,这是一个很好的新的应用
  • 您的网络管理员只允许某些端口尝试说服自己非标准端口增加了安全性
  • 已知端口已被另一个应用程序使用
  • 只是觉得有乐趣迷惑其他人的WebSocket
+0

感谢temento的详细解释.... – Aquarius24

3

MQTT客户端可以从Web浏览器为例(1)中运行(JavaScript的client的Eclipse PAHO)。普通的mqtt客户端运行在TCP之上,因此不能直接从Web浏览器使用。 Websockets运行在HTTP之上,可以直接在Web浏览器中使用。如果您尝试使用蚊子代理,那么需要使用websocket支持进行编译(2

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

  • 端口 - 默认使用mosquitto broker listener。
  • 监听器 - 通过多次使用这个变量,蚊子可以在多个端口上监听 。听众还允许每个听众,协议等最大连接设置
+2

这是正确的答案。 – ralight

+0

是的,这个答案是MQTT特有的,而我的解释通常是端口和协议。 – temoto

相关问题