首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用golang提取TCP有效负载中的自定义数据格式

使用golang提取TCP有效负载中的自定义数据格式
EN

Stack Overflow用户
提问于 2018-11-22 10:18:29
回答 1查看 291关注 0票数 0

我有一个工业传感器,它连接到一个接口模块,通过telnet向最终用户提供信息。

Telnet配置

港口: 10001

数据格式:小终端

数据有效载荷

代码语言:javascript
复制
Preamble - 32 bit
Article number - 32 bit
Serial number - 32 bit
Channels - 64 bit
Status - 32 bit
Frame number M / - 16 bit/ 16 bit
bytes per frame
Measuring value counter - 32 bit
Measuring value frame 1 - N * 32 bit
..
..

这应该可以在TCP报头(如果我正确理解的话),即有效载荷之后使用。

我正试图用更多的实例来学习高丽,我的想法是:

  1. 创建一个TCP服务器,用于监听传感器的接口模块IP和端口号
  2. 提取有效载荷,并将其打印为独立的参数,如preamblearticle number等,作为初学者任务

我已经看过一些关于TCP服务器/客户端创建的博客文章,但是它们只在有效负载中处理string。如前所述,我如何提取这样一个面向字节的自定义有效载荷?

附注:

我可以理解,这可以在python中实现,可能是通过struct.packstruct.unpack实现的,因此,如果能理解的话,就会有一定的相关性。

EN

回答 1

Stack Overflow用户

发布于 2018-11-22 10:43:47

在上面链接的pdf文档6.2节中,有一个表格列出了您在问题中似乎列出的数据。

我会将该表转换为一个结构,然后用编码/二进制模块读取它。有关示例,请参见朗读

“根据连接的传感器,所有测量值都以Int32、Uint32或浮起的形式传输”可能最容易将它们作为uint32,然后再进行转换。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53428674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档