当前位置: 首页 > news >正文

access做网站数据方法济南企业网站推广方法

access做网站数据方法,济南企业网站推广方法,谷歌搜索引擎363入口,长沙微信公众号为进一步实现一个简易的MQTT服务端,做如下服务端数据结构设计。 1、服务端协议相关的函数 连接 rx_connect() 接收连接请求 Socket中监听,通过第一个字节switch,根据数据创建client对象 tx_connectack() 回复连接响应 处理完成rx_conn…

为进一步实现一个简易的MQTT服务端,做如下服务端数据结构设计。

1、服务端协议相关的函数

连接

rx_connect()

接收连接请求

Socket中监听,通过第一个字节switch,根据数据创建client对象

tx_connectack()

回复连接响应

处理完成rx_connect后,自动处理。

发布

Qos=0

rx_publish()

Qos=0

接收发布数据

Qos=0

Socket中监听,通过第一个字节switch,根据Topic查找client,分发message。

发布

Qos=1

rx_publish()

Qos=1

接收发布数据

Qos=1

Socket中监听,通过第一个字节switch,根据Topic查找client,分发message。

tx_puback()

回复发布响应

处理完成rx_publish()后,自动处理。

发布

Qos=2

rx_publish()

Qos=2

接收发布数据

Qos=2

Socket中监听,通过第一个字节switch,根据Topic查找client,分发message,并且标记状态。

tx_pubrec()

回复发布响应1

处理完成rx_publish()后,自动处理。

rx_pubrel()

接收pubrel数据

Socket中监听,通过第一个字节switch,根据Topic查找client,标记message。

tx_pubcomp()

回复发布响应2

处理完成rx_pubrel()后,自动处理。

订阅

rx_subscribe()

接收订阅数据

Socket中监听,通过第一个字节switch,根据Topic查找Topics列表,将该client添加至topic中。

tx_suback()

回复订阅响应

处理完成rx_suback()后,自动处理。

取消订阅

rx_unsubscribe()

接收取消订阅数据

Socket中监听,通过第一个字节switch,根据Topic查找Topics列表,将该client从topic中删除。

tx_unsuback()

回复取消订阅响应

处理完成rx_unsuback()后,自动处理。

心跳

rx_pingreq()

接收心跳数据

Socket中监听,通过第一个字节switch,根据TCP/IP查找client,更新pingtime。

tx_pingresp()

回复心跳响应

处理完成rx_pingreq()后,自动处理。

断开连接

rx_disconnect

接收断开连接数据

Socket中监听,通过第一个字节switch,根据TCP/IP查找client,将该client从clients中删除。并且将topics中的该client一并删除。

2、服务端数据结构

列表Clients{

  Connect;

  TCP/IP;

  Messages;

Subscribes;

Next_client;}

Client对象列表,clinet属性有连接、TCP/IP、未处理完成的消息、未处理完成的订阅,指向下一个clinet的指针。

Connect{

  Protocolname;

  protocolLevel;

  Connectflage;

  Keepalive;

  Clientid;

  Willtopic;

  Willmessage;

  Username;

  Password

connectflage;}

其中:

Connectflage{

Bit Usernameflag;

Bit Passwordflag;

Bit Willretain;

Bit Willqos;

Bit Willflag;

Bit Cleansession;

Bit Reserved;

}

每个client对象都有一个连接结构体,记录该client的连接参数。

TCP/IP{

  IPaddr;

  Port;

Pingtime;}

Client对象使用的传输物理实现。

列表Messages{

Dup;

Qos;

Retain;

M_uuid;

Messagedata;

Messageflag;

Next_message;}

其中:

Messageflag;

Qos=0:

0->pub;

Qos=1:

0->pub,1->ack

Qos=2:

0->pub,1->ack,2->rel,3->comp

Client对象未处理完成的消息。

列表Subscribes{

Topicfilter;

S_uuid;

Subscribeflag;

Next_subscribe;}

其中:

Subscribeflag;

 0->tx,1->ack

Client对象的订阅。

列表topics{

  Topicname;

Topic;

  Nexttopic;}

其中topic{

  Client;

  Nextclient;

}

topics列表中存放了所有的topic,每个topic中存放了所有订阅该topic的client。

http://www.15wanjia.com/news/158148.html

相关文章:

  • python基础教程pdf网站栏目页 优化
  • 西安私人网站网上注册公司名字审核
  • 怎么做企业功能网站优秀产品设计
  • 江川区住房和城乡建设局网站学做莱网站
  • 关于公司门户网站建设的议案百度怎样建设网站
  • 做国外网站用什么颜色江西星子网
  • 地方网站怎么做用mockplus做网站原型
  • 做电子画册的网站易安卓开发app稳定吗
  • wordpress更改站点名称有哪些做汽配的网站
  • 成都 网站建设 app 开发一般网站开发语言
  • 济南建站模板桂林市网站建设公司
  • 苏州网站建设设计公司免费的服务器有哪些
  • 中山建设网站首页晓风彩票网站建设软件
  • wordpress noinput北京搜索引擎优化经理
  • 网站根目录相对路径j动态加载网站开发
  • 虚拟主机网站在淘宝做网站可以改域名吗
  • 做飞象金服的网站模板网站五金
  • 现在公司做各网站要多少钱建设公司网站需要注意哪些
  • 宁波企业网站制作推荐永春县住房和城乡建设网站
  • 网站怎么做seo关键词中国太空网站
  • 百度网站是百度公司做的吗策划公司网站
  • 找一家秦皇岛市做网站的公司广点通投放平台登录
  • 生鲜做的好的网站python如何制作网页
  • 站长工具国产2023做海报的软件
  • 大连开发网站东莞网上推广怎么做
  • 傻瓜式在线做网站seo怎么做优化排名
  • 做网站图片格式带后台的免费网站模板
  • 新乐市建设银行网站企业网站内容的制作
  • 石家庄免费自助建站模板wordpress农历插件
  • 企业移动端建设与网站建设网站建设与维护课程标准