关于TCP和MQTT之间的转换

Posted 优秀不够,你是否无可替代

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于TCP和MQTT之间的转换相关的知识,希望对你有一定的参考价值。

现在物联网流行的就是MQTT

其实MQTT就是在TCP的基础上建立了一套协议

 

可以看这个,本来我自己想用Wireshark监听一下,不过百度一搜索一大把,我就不测试了

https://blog.csdn.net/libaineu2004/article/details/78773610

 

所以说只要可以TCP连接了,然后只要知道了MQTT的协议,,,,直接就可以用TCP来当做MQTT来使用了

不过要写一些配合MQTT通信的协议,然后发送和接收数据都通过协议处理之后,通过TCP发送和接收,

其实有现成的写好的协议

可以看这两篇

http://sun2y.me/2017/05/12/MQTT协议在STM32上的移植/

https://blog.csdn.net/kh766200466/article/details/79694119

 

 

我也打算先移植(应用)到stm32上,不过我不打算用网络模块W5500,虽然用的挺熟,感觉没有新鲜感

技术分享图片

 

我感觉应该用ESP8266实现

其实思路很简单,8266建TCP客户端(用AT指令),因为现在没有AT指令版的MQTT,所以用AT指令配置8266

然后连接的服务器的地址是我的云端的MQTT,当然TCP是透传的,然后发数据的时候都通过MQTT协议封装部分的程序,然后

发给WIFI模块,然后WIFI模块再发给MQTT服务器,,,接收也一样......然后....就没然后了,,可以用了再说

 

 不过刚刚好像看透了一样.......

其实呢...只要用网络监控的软件看见了数据,然后再看下面的MQTT协议.....就可以自己写了

 

https://legacy.gitbook.com/book/mcxiaoke/mqtt-cn/details 

咱试一试自己写,我呢只是看着协议和传回来的数据,,,然后咱自己试一试写个在TCP连接之后,发个数据(就是MQTT规定的协议)连接MQTT

技术分享图片

 

首先第一个字节是

0x10

技术分享图片

 

 技术分享图片

 

技术分享图片

 

算啦还是直接一张图搞定

技术分享图片

 

用TCP连接上以后,然后用TCP发上面的指令,,,就连接上MQTT了 .....

 然后测试一下把........................................

技术分享图片

 

 技术分享图片

然后就不说了,也不想说了,大家自己看协议把,,,,因为让自己感觉MQTT在我心中的地位大大的受到了..........唉,,,,感觉自己讲出来的东西确实感觉竟然的如此的简单......

只要弄透了,自己写协议就好啦,.....我自己去写协议去,估计写的变量少一点,51单片机就可以....

 

最后说一下如果是4版本的MQTT

技术分享图片

 


以上是关于关于TCP和MQTT之间的转换的主要内容,如果未能解决你的问题,请参考以下文章

mqtt协议和http协议区别

MQTT:不可靠的传递而不是 TCP

MQTT是IBM开发的一个即时通讯协议,构建于TCP/IP协议上,是物联网IoT的订阅协议,借助消息推送功能,可以更好地实现远程控制

关于数组和List之间相互转换的方法

关于QImage和IplImage之间转换的实现

关于socket