1、建立通信

在主机和设备之间发送SECS-II消息之前,必须首先“建立”通信。这是通过S1F13(建立通信请求)消息来完成的。这应该是在初始启动后或在长时间不通信之后发送的第一个消息。

这里一定要注意,设备和主机在发送消息之前,一定要先建立通信。

通常情况下,主机和设备都会发送一个S1F13,而且不幸的是,两者都会超时,等待应答。不建议您这样做。

最好是让设备先发送S1F13。然后主机在回复设备的S1F13后,再发送S1F13给设备。让设备发送S1F13可能需要对该设备进行一些实验。有时,让设备进出远程模式,或让设备离线,然后在线,导致设备发送一个S1F13。

如何理解让设备发送S1F13可能需要对该设备进行一些实验?我的理解是:以为不确定设备会不会主动发送 S1F3,所以需要先行做测试,来确定设备会不会主动发送 S1F13。

2、协议故障排除

介绍在使用SECS协议时遇到的一些常见的错误场景。

2.1 T2 Timeout

下面显示了一个T2超时的场景。主机试图与设备通信,但设备脱机,没有响应。此错误情况可能是由物理断开或设备离线引起的。

注意:

这里也可能是设备与主机没有建立通信,导致的 T2 超时

2.2 T3 Timeout

下面显示了一个T3超时场景。主机会向该设备发送一条主消息。它完成时没有出现任何错误。但设备无法发送次要回复消息。错误条件表明主机和设备正在通信,但设备没有响应,这可能是因为通信尚未建立。

2.3 Function 0

函数0被保留给所有的流,以指示一个失败的事务。此次要应答由接收方发送,因此发送方不必等待T3超时。在任何情况下,它都像T3超时一样表示失败的事务。

2.4 Stream 9’s

Streams 9’s 由设备发送到主机,以指示:无法将来自主机的消息处理,或者设备对之前接收到的消息检测到超时。

05、secs协议常见问题分析以及如何建立通信的更多相关文章

  1. capwap协议重点分析

    一.     CAPWAP概述 CAPWAP由两个部分组成:CAPWAP协议和无线BINDING协议. (1)CAPWAP协议是一个通用的隧道协议,完成AP发现AC等基本协议功能,和具体的无线接入技术 ...

  2. NS2仿真:两个移动节点网络连接及协议性能分析

    NS2仿真实验报告2 实验名称:两个移动节点网络连接及协议性能分析 实验日期:2015年3月9日~2015年3月14日 实验报告日期:2015年3月15日 一.实验环境(网络平台,操作系统,网络拓扑图 ...

  3. RTMPdump(libRTMP) 源代码分析 7: 建立一个流媒体连接 (NetStream部分 2)

    ===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...

  4. RTMPdump(libRTMP) 源代码分析 5: 建立一个流媒体连接 (NetConnection部分)

    ===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...

  5. Android IOS WebRTC 音视频开发总结(八十六)-- WebRTC中RTP/RTCP协议实现分析

    本文主要介绍WebRTC中的RTP/RTCP协议,作者:weizhenwei ,文章最早发表在编风网,微信ID:befoio 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID ...

  6. 基于byte[]的HTTP协议头分析代码

    smark 专注于高并发网络和大型网站架规划设计,提供.NET平台下高吞吐的网络通讯应用技术咨询和支持 基于byte[]的HTTP协议头分析代码 最近需要为组件实现一个HTTP的扩展包,所以简单地实现 ...

  7. LIRe 源代码分析 4:建立索引(DocumentBuilder)[以颜色布局为例]

    ===================================================== LIRe源代码分析系列文章列表: LIRe 源代码分析 1:整体结构 LIRe 源代码分析 ...

  8. RTMPdump(libRTMP) 源代码分析 6: 建立一个流媒体连接 (NetStream部分 1)

    ===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...

  9. 协议形式化分析Scyther 资料整理

    1.性能分析 目前来说形式化的分析已经成为安全协议的一种很流行的方法,但是每种工具都用其不同适合的协议,Scyther软件是一种形式化分析工具,极大的促进了协议的分析和设计,scyther工具在运行界 ...

  10. tsung HTTP协议统计报告分析

    tsung HTTP协议统计报告分析 by:授客 QQ:1033553122 1.   Main Static l  higest 10sec mean: 基于每10s的统计,最大耗时 l  lowe ...

随机推荐

  1. github-keydb 知识

    https://github.com/Snapchat/KeyDB KeyDB is now a part of Snap Inc! Check out the announcement here R ...

  2. 高性能Redis服务器注意事项

    摘要 昨天简单理了理安装与配置相关的 但是很多比较重要的核心性能参数并没有进行学习与探讨 就基于昨天理解不深入的地方进行进一步的学习与了解 希望能够提高Redis-Server的性能. 第一部分: 规 ...

  3. MySQL数据库存储varchar时多大长度会出现行迁移?

    最近客户现场有人问过mysql数据库的一些参数配置的问题, 这边数据库需要将strict 严格模式关掉, 目的是为了保证数据库在插入字段时不会出现8126的长度限制错误问题. 但是一直很困惑, mys ...

  4. css中使用蒙层会带来哪些问题。

    css中使用蒙层会带来哪些问题. 1==> 如果蒙层设置的背景颜色或者透明度. 蒙层里面的子集元素将会受到影响: 此时子集元素可能不能注册点击的事件. 因为蒙层将它覆盖住了 2==> 此时 ...

  5. kettle(docker版)系列文章01---docker部署

    1.准备好kettle的镜像文件放在指定目录解压 docker image load -i /home/pdi/jztwebspoon.tar 2.起容器 docker run -d -p 7777: ...

  6. svn把文件日期设置为最后提交的时间

    在使用svn进行checkout或update时,我想让文件的日期为提交那时的日期,这要怎样做? 说明:我是在windows下使用TortoiseSVN进行操作的 方法1.修改config [misc ...

  7. Vue3用户代码片段

    1.defineComponent语法 { "Print to console": { "prefix": "vue3", "bo ...

  8. ElasticSearch7.3学习(十七)----搜索结果字段解析及time_out字段解析

    1.搜索结果字段解析 首先插入一条测试数据 PUT /my_index/_doc/1 { "title": "2019-09-10" } 然后无条件搜索所有 G ...

  9. delphi的bpl、dcp 、dcu

    BPL  英文全称 Borland Package library ,是一种特殊的DLL文件,用于代码重用和减少可执行文件.编译bpl时,仅需要添加相应功能的pas文件,如果有窗体,则需要添加dfm文 ...

  10. npm 为 指定组织下的包 配置数据源 .npmrc配置

    之前公司搭了一个 npm 服务器用于发布自己的包,本地可以使用 nrm 切换数据源并安装成功,但是到了 jenkins 部署的时候就下载失败了,解决办法如下: 1.在根目录下创建 npm 配置文件,文 ...