范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

MQTT比TCP协议好在哪儿?

  MQTT比TCP协议好在哪儿?就好比汽车底盘上有四个轮胎就能跑了,但是想要大家开车更舒服,我们还是得给底盘加个壳。
  简单对比
  为什么要在 TCP 协议之上再封装一层 MQTT 协议呢?
  举个例子,如果你要用 TCP 协议做一个即时聊天室,那么你:首先写一个服务器程序,监听某个端口,这样客户端就能连接上来了。然后大家就能向自己的服务器发送数据了。但是你不希望随便谁都能连接你的服务器并且往你的服务器里发东西,于是你写了一个注册页面,让别人先去注册账号,然后他们在客户端创建连接时发送的第一个TCP报文必须包含了账号密码。这样当你收到第一个报文之后,你就能判断这个连接是否合法了。但是发过来的账号密码,具体摆在报文什么位置,也得事先约定好吧,不然怎么知道哪几位是账号哪几位是密码,于是你要求:第一个字节为1,用来告诉你这是一个请求连接的报文。然后第二个字节是报文剩下的长度(这个没啥异议,粘包处理必备),然后是"饼干熊最帅"这样一个固定的字符串(没啥意思,就是开心),后面紧跟着就是账号,然后是密码。但是账号有多长呢,所以账号第一个字节是账号的长度,剩下才是账号内容,这样就解决了"账号有多长"的问题了,密码同理。如果账号密码不匹配就断开连接并且返回一句"xxxx off",如果创建连接后半天不发送任何东西也断开连接。现在大家的客户端都连接上来了,你在服务器保存了一个`账号:socket`的map,能通过任何一个账号找到这个人的socket并向他发送信息。接下来大家就要开始聊天了。在聊天室中,一个人发送的消息其他人都能收到,所以你添加了聊天室的概念,用户首先去你的web页面创建聊天室,然后会得到一个聊天室的ID。然后用户要加入聊天室,必须先发送一个加入聊天室的报文。然后你要求报文第一个字节为2代表加入聊天室的请求报文,然后是报文剩余长度,然后是聊天室ID,聊天室ID有多长?我们还是用第一个字节代表长度,剩下的内容为具体ID的形式来搞定。现在有多个用户加入了聊天室,其中每个用户又都加入了多个聊天室。假设现在大家在聊天室A中开始聊天。用户甲向服务器发送消息,然后你发现你不知道这条消息是请求连接还是要加入聊天室还是干啥,所以发送消息也应该定义一种报文类型。于是你要求发送消息的报文的第一个字节为3,那么这个报文是发送到哪个聊天室的呢?于是你要求报文后面跟上聊天室ID,最后是具体的消息内容。服务器收到第一个字节为3的消息,就知道这是一个聊天消息。然后根据上面带的聊天室ID以及你在服务器存储的用户和聊天室的关系,找到了这个聊天室里的所有人,然后你就把消息发给这里面的所有人了。
  上面这个例子,在连接服务器(检查合法性、断开连接)、订阅主题(加入聊天室)、发布消息这些过程中,你约定的报文格式和设计的服务器处理逻辑就是 MQTT 协议的内容,当然我举的例子非常粗糙。
  MQTT是一个客户端服务端架构的发布/订阅模式的消息传输协议。它的设计思想是轻巧、开放、简单、规范,因此易于实现。这些特点使得它对很多场景来说都是很好的选择,包括受限的环境:如机器与机器的通信(M2M)以及物联网环境(IoT),这些场景要求很小的代码封装或者网络带宽非常昂贵。
  MQTT的优点是:
  1)具备实时性,设备控制速度可以在200ms以内;
  2)设计简单、轻巧、便于实现;
  3)占用资源少,非常适合在资源受限的物联网芯片上运行
  当然,它的缺点也很明显:
  1)基于TCP/IP,对网络环境要求相对较高;
  2)TCP存在RST攻击,容易被运营商拦截;
  3)TCP资源相对UDP消耗大,需要建立连接、维护连接、释放连接
  首先TCP是传输层协议,实现了一个双向的通信链路。
  MQTT是基于TCP的应用层协议。(当然中间可能多一层,websocket)
  两者不在一个层级,比较谁比谁好是没有意义的。
  TCP 也可以实现数据通信,比如发送传感器数据到服务器。为什么要用到MQTT呢 ?
  假设现在有一个物联网的应用,当然可以直接用TCP socket 做通信,实际上不少人也是这么做的。然后你就会发现:
  * 需要自己写确认重传的机制,因为TCP 连接说不定就断了。
  * 如果有很多个传感器(生产者),又要写代码管理这么多TCP连接呢。
  * 如果同时又有多个地方需要用到这些数据,还得写一个转发的逻辑。
  * 如果系统很复杂,参与人或公司很多,那通信格式要怎么定,怎么改,沟通成本就很大了。
  这些东西这么麻烦,又不想加班写代码,那有没有办法简便地解决呢?当然有,就是用现成的协议啦,比如MQTT。
  MQTT 提供两个核心功能:
  * 三个级别的QOS
  *基于订阅/发布的消息转发服务。
  用了MQTT, 上面提到的这些问题就都被优雅地解决掉啦。
  其实,同类应用的很多问题,都是有一定共性的。这时候就会有一些人提出一般性的解决方式,这样大家就不用重复造轮子,同时又保证了互操作性。这就是协议存在的意义啦。
  所以一句话总结,MQTT 和其他的应用层协议,比如 HTPP, FTP, BitTorrent 协议一样,都是为了解决特定问题而生的一套方案,可以帮我们省好多事。
  真正的MQTT协议要求的处理逻辑和报文格式都完善很多,但是协议本身还是很简单的,具体内容去看 MQTT 的文档吧。

冬季旅游毕节金沙暖水温泉美扫榻迎客来来源人民网贵州频道金沙县安底镇温泉村是金沙县唯一以地热温泉命名的村,温泉村的温泉是远近闻名的康养胜地,随着市场的全面放开,吸引了一大批省内外游客光顾。桂花温泉。金沙县安底镇桂花温泉闽江干流黄金航道今起全线恢复通航500吨级货船通江达海12月18日,在福建南平港的延平新城港区,集装箱被依次吊装到武夷2号新能源船舶上,随后货船鸣笛离港,驶往福州。据介绍,船上装载的是南平地区的竹制品石英砂等货物,抵达福州青州码头后,阳过了之后还会复阳吗?风险到底有多大?最近查阅了一些资料,主要是想了解一下,这次的传播力极强的奥密克戎感染康复了之后,是不是还会再感染?如果会,到底风险有多大?最近很多人聊天说先感先主动,早阳早轻松,反正就相当于打了一泽连斯基突然视察巴赫穆特前线,俄罗斯距离巴赫姆特越来越远了!不计个人生死,豪情万丈!乌军击退俄军后,泽连斯基立刻视察了战况最为惨烈的前线巴赫穆特,给英勇的乌克兰军人颁奖,发表了心向光明的讲话。英国广播公司(BBC)12月20日报道,乌克兰总陌上花开心想柿橙银杏叶绘就上岸签角落涂鸦成治愈系!青大三个嗅皮匠火了半岛全媒体见习记者王春燕近日,校园不起眼的角落里一组组创意涂鸦霸屏了青大学子的朋友圈,大家纷纷点赞给校园增添了生机,也为同学们带来了治愈,温暖而有意义。而随着2023年考研进入倒计叮!科大学霸上分宝具请注意查收科大学霸们的上分宝具学习竞赛大创怎么预习?从哪入手?如何巩固?如何快速升级,提高段位?让科大学霸们的上分宝具助你登顶最强王者!知识回忆录骆苏一名钱学森创新拓展班本科学员,骨灰级专业2023年山东省安全员A证考试题及山东省安全员A证考试报名题库来源安全生产模拟考试一点通公众号小程序山东省安全员A证考试题考前必练!安全生产模拟考试一点通每个月更新山东省安全员A证考试报名题目及答案!多做几遍,其实通过山东省安全员A证实操也许你就在天上,与明月一起举杯,与泗河一起荡漾作者星辰归东你可知道,泗河两岸的桃花一路盛开,年年岁岁花相似,飘香直到鲁门西?你可知道,波摇石动的石门千年未变,金口秋波,还荡漾着你乘夜泛舟的身影?你可知道,老东门旁边的酒仙桥上,听闻你在远方谨以此文献给我曾经的战友于洪彬头条创作挑战赛听闻你在远方谨以此文献给我曾经的战友于洪彬。文刘志洲(61师转业干部)三十多年人生经历,这日子不算长,但也不算短。这期间,我遇到了很多人和事,有过喜怒哀乐,也有过离愁做自己,而不是解释自己最近很治愈我的一段话即使一张纸,被不完整的撕开,它依然是独一无二的,更不会因此影响它本身的价值,正如不完美的才是我们啊,有点不完美又如何,纸依然是纸,我们依然是我们你不需要因为任何夜读做一个内心有光的人主播读经典,陪您说晚安,大家好,这里是闪电夜读,我是宁津县融媒体中心主播赵楠。今天与您分享的文章是做一个内心有光的人。人最重要的,是用坚守并笃行应该恪守的品格。首先应该做一个善良的
越冷越火热黑龙江深挖优势续写冰雪经济发展新篇章来源人民网黑龙江频道北国风光,千里冰封,万里雪飘。在我国最东端和最北端的黑龙江省,进入了一年中气候最冷旅游热度最高的季节。巨型露天雪人冰灯里找鱼万人雪地大蹦迪龙江大地上,丰富多彩的消费持续升温彰显中国经济的潜力和韧性央视网消息在刚刚过去的这个春节假期里,持续升温的消费,彰显着中国经济的潜力和韧性。国家税务总局增值税发票数据显示,春节假期,全国消费相关行业销售收入与去年春节相比增长12。2,比2安徽黟县宏村灯会里的年味夜晚的宏村因为花灯更加艳丽方龙摄光明图片兔年兔灯方龙摄光明图片宏村花灯制作方龙摄光明图片外国友人对宏村花灯产生浓厚兴趣方龙摄光明图片小朋友在学习花灯制作技艺方龙摄光明图片春节一过,灶神掌管上天言好事过新年与远古火神崇拜的绑定春节和灶神信仰有密切关系,小年要先祭祀灶神,对着东方灶司真君之神位供奉纸钱果点等,灶神在腊月二十三或二十四日上天,向天帝汇报这一家人本年的情况,因此人们希望灶神能够上天言好事,下界明日大年初九天日,有钱没钱,4种美食端上桌,日子越过越旺大年初九,是民间传统的天日,也就是玉皇大帝的诞辰之日。也叫玉皇诞天公生天公节等等,天上地下的各路神仙都会为玉皇举行隆重的庆贺活动,以表示尊崇。老人常说七不出,八不归,上九办事一大堆正月初八谷日习俗多,牢记1要放,2不空,吃3样正月初八,民间传统中为谷日,这也源于女娲创世的神话,据说女娲在第七日创造了人之后,担心人们没有吃的,于是在第八日创造了谷子,所以初八为谷子的生日。另外,八是人们都很喜欢的一个数字,宁夏中卫市书本子馍馍走俏市场传统美食变致富新产业本网讯书本子馍馍,又称土棚子烤馍,是宁夏中卫市的一种民间传统特色面点。今年,书本子馍馍一跃成为网红馍馍,走俏春节市场。在物质匮乏的年代,书本子馍馍曾是中卫人家家户户逢年过节必备的食海南橡胶预计2022年净利同比下降54。7369。82中证智能财讯海南橡胶(601118)1月30日晚间披露2022年度业绩预告,预计2022年归母净利润4550万元6825万元,同比下降54。7369。82扣非净利润亏损4。2亿元6一只方兔子背后的中国意象视频加载中人们传统印象中的兔子是圆润乖巧的,但在中国明末清初画家八大山人朱耷的笔下,却有一只线条简约的方兔子。朱耷是联合国教科文组织1985年评出的中国古代十大文化名人之一,也是将北京飞控中心青年科技人才群体精测妙控逐梦九天央视新闻客户端消息(新闻联播)北京航天飞行控制中心是我国载人航天和深空探测的指挥控制和信息交换中心,是天地间联系的关键枢纽。在这里有一群平均年龄不到35岁的年轻人,他们以精测妙控的2023年消费板块具长期配置价值本报记者孙兆消费旺盛暖意浓浓的2023年春节假期,彰显出中国经济的潜力与韧性。国家税务总局数据显示,2023年春节假期,全国消费相关行业销售收入与上年春节假期相比增长12。2,与2