网关代理整个数据流设计

从STM32角度去考虑整个数据流的过程

//一. 出厂首次上电, 组网之后报文

//1. 网关主动上报新 F3EF 节点(网关收到之后,并查询设备类型,类型确定之后,取消网关上报节点)
//2. 中控主动查询设备类型
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x10 0x00 0x06 0x00 0x00 0x0B 0x00 0x61 0x46 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0F 0x00 0x000x0B 0x03 0x01 0x27 0x11 0x02 0x27 0x12 0x03 0x27 0x12 0xBB 0x28

可以将回复的报文修改成 00 00 0B 01 01 02 81

//3. 中控主动取消网关上报节点
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF2 0x4E 0x00 0x10 0x00 0x0D 0x00 0x01 0x0E 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0xB9 0x7A 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF2 0x4E 0x08 0x30 0x00 0x0D 0x00 0x01 0x0E 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x03 0xF0

//4. 上电初始化报文(节点主动发送上电(0007)报文,中控会主动查询各个虚拟设备(CH)的状态(0000))
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x10 0x00 0x07 0x00 0x00 0x07 0x00 0x00 0x23 0xB9 
//5. 中控会主动查询各个虚拟设备(CH)的状态
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x10 0x00 0x06 0x03 0x00 0x00 0x00 0x26 0x60 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x30 0x00 0x02 0x22 0x6E 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x10 0x00 0x06 0x02 0x00 0x00 0x00 0x50 0xD4 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x30 0x00 0x02 0x22 0x6E 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x10 0x00 0x06 0x01 0x00 0x00 0x00 0xCB 0x08 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x30 0x00 0x02 0x22 0x6E

//定时上报数据
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x01 0x01 0x00 0x00 0x00 0x00 0x00 0x22 0x00 0x00 0x03 0x80 0x99 0x3D 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x02 0x01 0x00 0x00 0x00 0x00 0x00 0x36 0x00 0x00 0x01 0xB0 0x41 0xCF 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x03 0x01 0x00 0x00 0x00 0x00 0x00 0x1F 0x00 0x00 0x02 0x9A 0x32 0x09

cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x1C 0x00 0x00 0x01 0x4D 0xEA 0x5B 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x02 0x00 0x00 0x00 0x00 0x00 0x00 0x35 0x00 0x00 0x03 0x99 0xA4 0x7D 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x22 0x00 0x00 0x03 0x75 0xFE 0xCE

cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x01 0x01 0x00 0x00 0x00 0x00 0x00 0x22 0x00 0x00 0x03 0x6B 0xD5 0x78 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x02 0x01 0x00 0x00 0x00 0x00 0x00 0x37 0x00 0x00 0x00 0xDA 0x15 0x43 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x03 0x01 0x00 0x00 0x00 0x00 0x00 0x20 0x00 0x00 0x01 0xF4 0x83 0x25

cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x01 0x01 0x00 0x00 0x00 0x00 0x00 0x22 0x00 0x00 0x03 0xD6 0xA3 0x0E 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x02 0x01 0x00 0x00 0x00 0x00 0x00 0x36 0x00 0x00 0x01 0x36 0xB0 0x81 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x03 0x01 0x00 0x00 0x00 0x00 0x00 0x1E 0x00 0x00 0x03 0x41 0xD1 0x7F

//二. 二次上电,报文(中控收到上电报文,就会查询各个设备(ch)的状态)(查询三个状态的数据,并没有按照顺序上报到中控,这个怪中控,中控还没有收到设备CH1的时候就发送查询设备CH2了,还没有收到设备2,就发送查询3了)
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x10 0x00 0x07 0x00 0x00 0x07 0x00 0x00 0x23 0xB9

cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x10 0x00 0x06 0x03 0x00 0x00 0x00 0x26 0x60 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x30 0x00 0x02 0x22 0x6E 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x10 0x00 0x06 0x02 0x00 0x00 0x00 0x50 0xD4 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x29 0x00 0x00 0x02 0x9A 0x2B 0x2B 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x30 0x00 0x02 0x22 0x6E 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x10 0x00 0x06 0x01 0x00 0x00 0x00 0xCB 0x08 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x02 0x00 0x00 0x00 0x00 0x00 0x00 0x38 0x00 0x00 0x00 0xCA 0xBA 0xC2 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x00 0x30 0x00 0x02 0x22 0x6E 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x08 0x30 0x00 0x0E 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x23 0x00 0x00 0x02 0xF2 0x86 0xC1

//三. 删除节点
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF2 0x4E 0x00 0x10 0x00 0x0D 0x00 0x01 0x0D 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x94 0x3E 
cpp:111# 0x44 0x55 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF2 0x4E 0x08 0x30 0x00 0x0D 0x00 0x01 0x0D 0x00 0x12 0x4B 0x00 0x08 0xC6 0xF3 0xEF 0x2E 0xB4

时间: 2024-08-03 13:39:29

网关代理整个数据流设计的相关文章

代理一般的设计方法以及步骤(个人笔记)

代理的一般设计步骤:(假设控件名为: CJTabBar ) 1.创建一个代理的协议,协议名称为:控件名+Delegate  : CJTableDelegate  (由于要多个文件共享,所以得创建在.h,中) 2.定义代理方法(在CJTabBar.h 中) 1.一般都定义为@optional 2.代理方法名都以控件名开头 3.代理方法至少有一个参数,将本控件传递出去 3.设置代理对象(在需要监听的控制器中实现)() 1.遵守协议 <CJTableDelegate> 3.在需要监听出,实现例如 :

Redis学习之代理 ip 池设计方法详解

代理 ip 因为配置简单而且廉价,经常用来作为反反爬虫的手段,但是稳定性一直是其诟病.筛选出优质的代理 ip 并不简单,即使付费购买的代理 ip 源,卖家也不敢保证 100% 可用:另外代理 ip 的生命周期也无法预知,可能上一秒能用,下一秒就扑街了.基于这些原因,会给使用代理 ip 的爬虫程序带来很多不稳定的因素.要排除代理 ip 的影响,通常的做法是建一个代理 ip 池,每次请求前来池子取一个 ip,用完之后归还,保证池子里的 ip 都是可用的.本文接下来就探讨一下,如何使用 Redis 数

基于 Redis 的代理 ip 池设计

代理 ip 因为配置简单而且廉价,经常用来作为反反爬虫的手段,但是稳定性一直是其诟病.筛选出优质的代理 ip 并不简单,即使付费购买的代理 ip 源,卖家也不敢保证 100% 可用:另外代理 ip 的生命周期也无法预知,可能上一秒能用,下一秒就扑街了.基于这些原因,会给使用代理 ip 的爬虫程序带来很多不稳定的因素.要排除代理 ip 的影响,通常的做法是建一个代理 ip 池,每次请求前来池子取一个 ip,用完之后归还,保证池子里的 ip 都是可用的.本文接下来就探讨一下,如何使用 Redis 构

54_55总结分析动态代理类的设计原理与结构

log()是系统日志,可以利用切面编程将他模块化,热插拔的插入到invoke方法周围             针对之前的代码,应该抽取黄色部分出来,并模块化         目标抽取成为一个参数 final ArrayList target=new ArrayList(); Collection proxy3 = (Collection) getProxy(target,new MyAdvice());   系统功能抽取成一个对象 public static Object getProxy(fi

IOS开发之代理的设计小技巧

1.关于代理对象的设计小技巧 在设计一个类,需要通过代理和协议来从外部获取需要的动态的数据.那么在这里设计使用代理会有两种方法. <第一种方法> 也是比较常见的: 在你设计的类中,声明一个代理属性 然后外部使用的时候 最后根据那个<...Protocol>协议,去遵循这个协议并实现协议的方法. <第二种方法>在创建这个你要设计的类对象的构造方法中添加一个代理对象的参数,目的就是按照需要,你如果要创建这个对象,你必须添加代理对象. 这样外部在创建这个对象的时候,使用这个方

深入浅出聊聊企业级API网关

http://architect.dataguru.cn/article-11431-1.html API Gateway(API GW / API 网关),顾名思义,是出现在系统边界上的一个面向 API 的.串行集中式的强管控服务,这里的边界是企业 IT 系统的边界,主要起到隔离外部访问与内部系统的作用.在微服务概念的流行之前,API 网关的实体就已经诞生了,例如银行.证券等领域常见的前置机系统,它也是解决访问认证.报文转换.访问统计等问题的. API 网关的流行,源于近几年来,移动应用与企业

分布式公布订阅消息系统 Kafka 架构设计

我们为什么要搭建该系统 Kafka是一个消息系统,原本开发自LinkedIn,用作LinkedIn的活动流(activity stream)和运营数据处理管道(pipeline)的基础. 如今它已为多家不同类型的公司 作为多种类型的数据管道(data pipeline)和消息系统使用. 活动流数据是全部站点在对其站点使用情况做报表时要用到的数据中最常规的部分.活动数据包含页面訪问量(page view).被查看内容方面的信息以及搜索情况等内容.这样的数据通常的处理方式是先把各种活动以日志的形式写

Kafka的架构设计(目前翻译最好的一稿)

转自:http://www.oschina.net/translate/kafka-design 参与翻译(4人):fbm, 飞翔的猴子, Khiyuan, nesteaa 感谢这些同志们的辛勤工作,翻译的真不错,目前见到的最好的Kafka中文文章 ------------------------------- Kafka是一个高吞吐量分布式消息系统.linkedin开源的kafka. Kafka就跟这个名字一样,设计非常独特.首先,kafka的开发者们认为不需要在内存里缓存什么数据,操作系统的

RD网关部署说明

RD网关部署说明 文档变更记录 日期 版本 作者 内容 备注 2013/11/12 0.1   背景 新建 2013/11/26 0.2   实验步骤章节补充图片及过程   2013/11/27 0.3   调研用代码可以实现的步骤   2013/11/29 0.4                           一.背景 实现通过RD网关服务器实现外网访问内网的远程桌面. 1.1远程桌面网关 远程桌面网关(RD 网关)是一项角色服务,使授权远程用户可以从任何连接到 Internet 并且可