首页 > 其他分享 >modbusTCP协议和TCP协议

modbusTCP协议和TCP协议

时间:2024-03-04 09:13:56浏览次数:24  
标签:协议 字节 首部 报文 TCP 寄存器 modbusTCP 连接

TCP 最主要的特点

  • TCP 是面向连接的运输层协议。应用程序在使用 TCP 协议之前,必须先建立 TCP 连接。在传送数据完毕后,必须释放已经建立的 TCP 连接
  • 每一条 TCP 连接只能有两个端点,每一条 TCP 连接只能是点对点的(一对一)
  • TCP 提供可靠交付的服务。通过 TCP 连接传送的数据,无差错、不丢失、不重复,并且按序到达
  • TCP 提供全双工通信。TCP 允许通信双方的应用进程在任何时候都能发送数据。TCP 连接的两端都设有发送缓存和接受缓存,用来临时存放双向通信的数据
  • 面向字节流。TCP 中的“流”指的是流入到进程或从进程流出的字节序列

TCP 的连接建立

TCP 建立连接的过程叫做握手,握手需要在客户和服务器之间交换三个 TCP 报文段

TCP 报文段的首部格式

TCP 虽然是面向字节流的,但 TCP 传送的数据单元却是报文段。一个 TCP 报文段分为首部和数据两部分。TCP 报文段首部的前20个字节是固定的,后面有4n字节是根据需要而增加的选项(n是整数)。因此 TCP 首部的最小长度是20字节

首部字段

  • 源端口目的端口 各占2个字节,分别写入源端口号和目的端口号
  • 序号 占4字节。序号范围是[0, 232-1],共232(即4 294 967 296)个序号。序号增加到232-1后,下一个序号就又回到0。在一个 TCP 连接中传送的字节流中的每一个字节都按顺序编号
  • 确认号 占4字节,是期望收到对方下一个报文段的第一个数据字节的序号
  • 数据偏移 占4字节,它指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。这个字段实际上是指出 TCP 报文段的首部长度
  • 保留 占6位,保留为今后使用,但目前应置为0

 

modbus-TCP协议

modbus的操作对象有四种:线圈寄存器、离散输入寄存器、输入寄存器、保持寄存器。

线圈寄存器和离散输入寄存器是以bit为单位的寄存器,只能存储开关量,线圈寄存器可读可写,而离散输入寄存器只可读。

输入寄存器和保持寄存器以为2个byte为单位的寄存器,可以存储离散的变量, 保持寄存器可读可写, 输入寄存器只读。

常用功能码0x03:读保持寄存器

功能码0x03用于读取保持寄存器的值,从远程设备中读保持寄存器连续块的内容。

发送报文

请求报文的结构如下:

MBAP header + 功能码 + 起始地址H 起始地址L + 寄存器数量H 寄存器数量L(共12字节)

响应报文

响应报文的结构由下面几个部分组成:

MBAP header + 功能码 + 数据长度 + 寄存器数据

数据总长度 = 9 + 寄存器数量 × 2

标签:协议,字节,首部,报文,TCP,寄存器,modbusTCP,连接
From: https://www.cnblogs.com/yangdihao/p/18051124

相关文章

  • 什么是TCP/IP模型?
    什么是TCP/IP模型? TCP/IP 是传输控制协议/互联网协议的首字母缩写。我们刚才看到的OSI模型只是一个逻辑/参考模型。它的创建是为了通过将通信过程分解为更小、更易于管理的组件来定义通信系统的功能。但是,基于标准协议的TCP/IP概念是由国防部(DoD)在1960年代设计和开发......
  • unhide 是一款强大的取证工具,主要用于查找和发现被隐藏的进程、TCP/UDP端口以及其他隐
    unhide是一款强大的取证工具,主要用于查找和发现被隐藏的进程、TCP/UDP端口以及其他隐藏技术。其基本技术原理如下:ROOTKIT和LKM:ROOTKIT(RootKit)是一种恶意软件,常用于隐藏恶意活动和进程。它通过修改操作系统的核心组件和内核模块(LinuxKernelModule,LKM)来实现对系统的隐匿。u......
  • 高级消息队列协议AMQP
    一、什么AMQPAMQP(AdvancedMessageQueuingProtocol高级消息队列协议)是一种链接协议,最早用于解决金融领域不同平台之间消息传递而在2003年被提出的,用于进程之间传递异步消息。它描述了通过网络传输的字节流的数据格式。AMQ协议模型包含如下几个概念:Producer(生产者......
  • AP8851H DC-DC降压恒压IC+协议芯片 USB PD快充方案电源驱动
    产品描述    AP8851H一款宽电压范围降压型DC-DC电源管理芯片,内部集成使能开关控制、基准电源、误差放大器、过热保护、限流保护、短路保护等功能,非常适合在宽输入电压范围具有优良的负载和线性调整度。AP8851H芯片包含每周期的峰值限流、软启动、过压保护和温度保护,带......
  • WiFi协议的调制技术介绍
    ​ 调制技术是WiFi协议的核心部分,它负责将数据转换成可以在无线信道中传输的信号。WiFi协议采用正交频分复用(OFDM)调制技术,该技术通过将数据分成多个子载波进行传输,提高了信道利用率和抗干扰能力。OFDM调制的工作原理是将高速数据流分割成多个低速子数据流,然后在多个子载波上同......
  • Modbus和Modbus/TCP协议
    一.概述Modbus是MODICON公司与1979年开发的一种通讯协议,是一种工业现场总线协议标准。1996年施耐德公司推出了基于以太网TCP/IP的Modbus协议------ModbusTCP。Modbus协议是一项应用层报文传输协议,包括ASCII、RTU、TCP三种报文类型,协议本身并没有定义物理层,只是定义了控制器......
  • TCP握手与重发机制
    TCP通信时序 TCP三次握手1.客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的段1。客户端发出段1,SYN位表示连接请求。序号是1000,这个序号在网络通讯中用作临时的地址,每发一个数据字节,这个序号要加1,这样在接收端可以根据序号排出数据包的正确顺序,也可以发现......
  • Protobu协议
    1.protobufprotobuf是Google公司提出的一种更轻便高效的结构化数据存储格式,常用于结构化数据的序列化,具有语言无关、平台无关、可扩展性特性,常用于通讯协议、服务端数据交换场景。1.1Win安装下载地址:https://github.com/protocolbuffers/protobuf/releases添加环境变量......
  • Qt QModbus相关类实现ModbusTcpServer总结
    在疫情环境下催生出了很多的无人或者减少人员接触的项目,比如无人智慧餐厅项目中的无人送餐项目,主要是由送餐小车和一个中控屏和部分协助发餐的设备组成,由于餐厅一般的范围不会很大,考虑到Wi-Fi通信可能比较麻烦,我们前期组网协议使用的是zigbee,这样的话小车可以无网络运行且待......
  • 低功耗全功能蓝牙5.1与2.4GHz私有协议的双模无线连接芯片OM6621FB 无线键鼠应用领域
    便携易操作且连接稳定的键鼠设备市场前景广阔。从有线发展为无线,高性能低功耗芯片在无线键鼠领域的应用,为开发者提供了优异的射频性能、强抗干扰及迅速稳定安全的连接,极大程度上提升了用户的办公灵活性和效率。为什么无线键鼠那么方便和好用,为何现在还有那么多人使用有线键鼠?今天......