用单片机实现TCP链接的快捷车道-CH9121芯片,解决MQTT的联网问题。-阿里云开发者社区

开发者社区> 阿里云物联网> 正文

用单片机实现TCP链接的快捷车道-CH9121芯片,解决MQTT的联网问题。

简介:
物联网全栈教程-从云端到设备(三)

关注零妖的微信公众号,获取第一手物联网的技术干货:  LINGYAOIOT  

      没有规矩不成方圆。从目前的市场环境来看,MQTT通讯协议已经成为了物联网行业的标配(具体的MQTT协议零妖将会在后面的文章里说明)。简单地理解就是一个设备连接到云99%都是走MQTT通讯协议的。MQTT通讯协议属于轻量级的一种,说白了就是保证数据可靠传输的前提下,其消耗的流量非常少。有一点需要注意,MQTT通讯协议是运行在可靠的连接基础上的,想建立可靠的双向通讯链接,最简单的办法是搞定TCP连接。
     今天零妖就先普及一下TCP连接的基本知识(大神可以忽略后面的东西了)。

    首先,请你插上网线,或者连上WIFI,或者打开4G网,或者连上3G网。总之,通讯成功的前提是物理链路要OK。拿以太网为例子,插上网线后网口的两个灯会闪烁,这初步证明线路是OK的,好的,接下来我们去搞软件。
e6882c1cf0402aa82c29a5d3d040055be13dfd14

    TCP连接是一种保证两个设备可靠地双向交流的技术。一个巴掌拍不响,这里需要两个角色的参与,一个叫作服务端(Server),另一个叫作客户端(Client),一般来说服务端那边是云端的服务器提供的,其计算能力超强,可以同时和好多个客户端建立链接,而客户端只能同时连接一个服务端。就好比我们的老师在课堂上可以和我们大家一起交流,但是我们学生之间不允许说话。
我们物联网设备在这个TCP连接里,充当的角色是客户端(Client)。我们需要知道服务器那边的IP地址和对应的服务端口,不管我们的设备身处什么地方,只要能上网,那么通过IP地址及其对应的服务端口,我们就能建立TCP连接。然后我们就可以通过MQTT通讯协议和服务器进行数据交流。

    很多情况下,我们是需要使用域名来连接服务器的,比如在浏览器网址输入一个域名,就会自动跳转到对应的IP地址。我们可以通过 Ping 一个域名的方法来获取IP地址。在Windows操作系统中,我们要进入 “命令提示符” 。打开 “运行” ,输入“CMD”即可。比如想知道 www.jixin.pro 对应的IP地址是啥,那么直接输入  “ping  www.jixin.pro ” 然后回车即可。
    注意:一个域名对应的IP地址可能会发生变化,所以如果能够输入域名链接最好。
2ec2bf904de20266818fd420823e55e76dd121b2



我们现在通过TCP助手,演练一个完整的TCP连接流程。我找了两个TCP助手,一个负责模拟Server,另一个负责模拟Client。
2dbec6b828cf8e104d74e3a2ca072c6c495eefaedd5a921771f7ee6e05d2750625b736e78b5b26ae


     好了,基础知识普及篇到这里结束,不懂的要多百度啊。 下一篇咱讲讲MQTT是啥。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
阿里云物联网
使用钉钉扫一扫加入圈子
+ 订阅

致力于实现万物互联的美好世界,为生态合作伙伴提供基于云计算、大数据、人工智能、云端一体化、安全的物联网基础平台和内容服务平台。

官方博客
官网链接
在线咨询