基础网络知识与MQTT初体验
文章目录
一、网络基础
重点:
所有网络设备或应用通过其自身的IP地址以及端口号来区别,区别其自身以及区别他们向服务器请求的不同功能;
使用内网的设备是通过路由器连接至公网的,而局域网内的IP地址以及端口号是不会被其他设备所知道的;
其他局域网的设备向另外一个内网设备发送数据包时不会成功,因为另外一个内网设备之前没有请求过该数据包,现在无缘无故多出来一个数据包会被路由器丢掉,所以一个局域网内的设备想要访问另一个局域网里的设备,必须通过服务器,二者都去请求服务器连接。
二、MQTT初体验
MQTT基础知识
MQTT服务端
MQTT服务端通常是一台服务器。它是MQTT信息传输的枢纽,负责将MQTT客户端发送来的信息传递给MQTT客户端。MQTT服务端还负责管理MQTT客户端。确保客户端之间的通讯顺畅,保证MQTT消息得以正确接收和准确投递。MQTT客户端之间要想实现通讯,必须要通过MQTT服务端。因此MQTT客户端无论是发布消息还是订阅消息,首先都要连接MQTT服务端。
MQTT客户端
MQTT客户端可以向服务端发布信息,也可以从服务端收取信息。把客户端发送信息的行为成为“发布”信息。而客户端要想从服务端收取信息,则首先要向服务端“订阅”信息。“订阅”信息这一操作很像我们在视频网站订阅某一部电视剧。当这部电视剧上新后,视频网站会向订阅了该剧的用户发送信息,告诉他们有新剧上线了。
MQTT主题
在MQTT通讯中,客户端所订阅的肯定不是一部部电视剧,而是一个个“主题”。MQTT服务端在管理MQTT信息通讯时,就是使用“主题”来控制的。
Aliyun物联网平台服务器搭建:
1.官网:https://www.aliyun.com/
2.如果没有账号,需要注册账号;
3.在“控制台”找到“物联网平台
4在“物联网平台”开通“公共实例”
5.在“公共实例”中的“设备管理”选择“产品
6.创建产品
7.添加设备
PC与Aliyun物联网平台设备通信:
1.获取设备信息
2.使用MQTTX根据设备信息建立和设备的MQTT连接
3.MQTTX订阅物联网平台的产品topic
4.阿里云物联网平台的设备发布topic消息
5.MQTTX向设备发布topic2的消息