CN112291251A - 一种嵌入式设备通过pcie模拟tcpip协议收发机制的方法 - Google Patents
一种嵌入式设备通过pcie模拟tcpip协议收发机制的方法 Download PDFInfo
- Publication number
- CN112291251A CN112291251A CN202011197888.4A CN202011197888A CN112291251A CN 112291251 A CN112291251 A CN 112291251A CN 202011197888 A CN202011197888 A CN 202011197888A CN 112291251 A CN112291251 A CN 112291251A
- Authority
- CN
- China
- Prior art keywords
- data
- connection
- pcie
- sender
- tcpip protocol
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 19
- 230000007246 mechanism Effects 0.000 title claims abstract description 16
- 230000002093 peripheral effect Effects 0.000 title description 3
- 238000004891 communication Methods 0.000 claims abstract description 21
- 238000007726 management method Methods 0.000 claims abstract description 15
- 238000012790 confirmation Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 3
- 238000012423 maintenance Methods 0.000 abstract description 5
- 238000011161 development Methods 0.000 abstract description 4
- 238000012544 monitoring process Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Environmental & Geological Engineering (AREA)
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
本发明提供了一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法,包括以下步骤:A:进行连接管理;a1:规划可建立的最大连接数量;a2:按照最大连接数量预先分配好端口号和内存;a3:通过预先确定好的端口进行监听/连接动作;a4:Server端监听等待连接请求;B:对数据缓冲区管理;b1:发送方将待发送的数据存入自身的数据缓冲区,并发送给接收方;b2:接收方收到数据后,先通过校验算法对数据的正确性进行校验;b3:发送方收到错误消息后判断是否达到重发的次数限制,来决定对数据进行重发或丢弃。本发明所述的一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法解决了现有的通信设备的不同硬件连接需要不同的操作流程,给上层业务软件的开发和维护增加难度的问题。
Description
技术领域
本发明属于通信技术领域,尤其是涉及一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法。
背景技术
数据通信是当前软件技术中非常常见的功能。随着科技的发展,硬件设备之间的通信,硬件设备内部多个CPU之间的通信业变得十分普遍。目前最常用的通信方式是TCP/IP协议方式实现的通信,上层业务只需调用几个常用的接口实现连接、断开和数据收发的操作,不需要关心硬件的状态和数据缓冲区的维护。
另一方面,设备之间的通信方式又受到硬件连接方式的影响。目前的硬件连接方式可能有串口连接、SPI连接、I2C连接、PCIE连接、网络连接等。不同的硬件连接需要不同的操作流程,给上层业务软件的开发和维护增加了难度。
发明内容
有鉴于此,本发明提出一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法以解决现有的通信设备的不同硬件连接需要不同的操作流程,给上层业务软件的开发和维护增加难度的问题。
为达到上述目的,本发明的技术方案是这样实现的:
一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法,包括以下步骤:
A:进行连接管理,具体包括一下步骤:
a1:根据业务需求规划可建立的最大连接数量;
a2:按照最大连接数量预先分配好端口号和内存;
a3:通信双方仿照TCP协议的Server/Client结构,通过预先确定好的端口进行监听/连接的动作;
a4:Server端监听等待连接请求,Client端查找自己连接状态为空闲态的连接句柄,并发送基本信息给Server端请求连接;
a5:对Server端对应的句柄进行状态检测,如果为空闲状态则反馈建立连接成功,并将连接状态修改为已连接;否则反馈建立连接失败要求用户重新建立;
B:对数据缓冲区管理,具体包括一下步骤:
b1:采用滑动窗口管理机制,发送方将待发送的数据存入自身的数据缓冲区,并发送给接收方;
b2:接收方收到数据后,先通过校验算法对数据的正确性进行校验;
b3:若数据有误,则不进行处理;若数据正确完整,则判断数据的序列号是否正确;
b4:若序列号正确,则返回确认信息,发送方收到确认信息后将这段数据从数据缓冲区中移除;若序列号不正确,则返回错误消息;
b5:发送方收到错误消息后判断是否达到重发的次数限制,来决定对数据进行重发或丢弃。
进一步的,步骤a2中利用的每个连接均具备相同的数据结构和各自独立的状态句柄。
进一步的,当步骤a5中利用的Server或Client端发生错误或需要主动断开连接时,发送断开请求消息通知对端同样断开连接,并将连接状态修改为空闲。
进一步的,上层业务在调用发送的接口时,步骤b5中利用的数据缓冲区的管理模块根据当前缓冲区的剩余空间,决定并通知上层业务实际发送的数据长度。
相对于现有技术,本发明具有以下优势:
本发明提出一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法使业务逻辑不关心具体的通信方式,有助于程序的设计和维护,将不同的通信方式向TCP/IP协议的通信方式上靠拢,对连接建立、断开和数据收发进行抽象,简化了上层业务的逻辑。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例所述的状态句柄示意图;
图2为本发明实施例所述的数据流概要图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以通过具体情况理解上述术语在本发明中的具体含义。
下面将参考附图并结合实施例来详细说明本发明。
如图1所示,一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法,包括以下步骤:
A:进行连接管理,具体包括一下步骤:
a1:根据业务需求规划可建立的最大连接数量;
a2:按照最大连接数量预先分配好端口号和内存;
a3:通信双方仿照TCP协议的Server/Client结构,通过预先确定好的端口进行监听/连接的动作;
a4:Server端监听等待连接请求,Client端查找自己连接状态为空闲态的连接句柄,并发送基本信息给Server端请求连接;
a5:对Server端对应的句柄进行状态检测,如果为空闲状态则反馈建立连接成功,并将连接状态修改为已连接;否则反馈建立连接失败要求用户重新建立;
B:对数据缓冲区管理,具体包括一下步骤:
b1:采用滑动窗口管理机制,发送方将待发送的数据存入自身的数据缓冲区,并发送给接收方;
b2:接收方收到数据后,先通过校验算法对数据的正确性进行校验;
b3:若数据有误,则不进行处理;若数据正确完整,则判断数据的序列号是否正确;
b4:若序列号正确,则返回确认信息,发送方收到确认信息后将这段数据从数据缓冲区中移除;若序列号不正确,则返回错误消息;
b5:发送方收到错误消息后判断是否达到重发的次数限制,来决定对数据进行重发或丢弃。
如图1所示,,步骤a2中利用的每个连接均具备相同的数据结构和各自独立的状态句柄。
如图1所示,,当步骤a5中利用的Server或Client端发生错误或需要主动断开连接时,发送断开请求消息通知对端同样断开连接,并将连接状态修改为空闲。
如图1所示,,上层业务在调用发送的接口时,步骤b5中利用的数据缓冲区的管理模块根据当前缓冲区的剩余空间,决定并通知上层业务实际发送的数据长度。
本地设备:业务数据的生产者。设备间通信场景下为发送数据的设备。设备内部芯片间通信场景下为发送数据的芯片。
远端设备:业务数据的消费者。设备间通信场景下为接收数据的设备。设备内部芯片间通信场景下为接收数据的芯片。
上层业务:实现设备功能的具体业务模块,生产或者消费具体的业务数据。
TCP/IP抽象接口:提供给上层业务的接口模块,将业务数据以简单的形式传递给上层业务,或以硬件相关的具体形式传递给硬件管理模块。
具体硬件操作管理模块:针对不同的硬件类型,对其的驱动程序或硬件本身进行操作,管理的模块。
设备硬件:真正实现数据收发的具体硬件芯片或硬件电路。
本方案针对上述情况,以PCIE的物理连接方式为例,阐述了将不同的通信方式向TCP/IP协议的通信方式上靠拢,对连接建立、断开和数据收发进行抽象,简化上层业务的逻辑。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法,其特征在于:包括以下步骤:
A:进行连接管理,具体包括一下步骤:
a1:根据业务需求规划可建立的最大连接数量;
a2:按照最大连接数量预先分配好端口号和内存;
a3:通信双方仿照TCP协议的Server/Client结构,通过预先确定好的端口进行监听/连接的动作;
a4:Server端监听等待连接请求,Client端查找自己连接状态为空闲态的连接句柄,并发送基本信息给Server端请求连接;
a5:对Server端对应的句柄进行状态检测,如果为空闲状态则反馈建立连接成功,并将连接状态修改为已连接;否则反馈建立连接失败要求用户重新建立;
B:对数据缓冲区管理,具体包括一下步骤:
b1:采用滑动窗口管理机制,发送方将待发送的数据存入自身的数据缓冲区,并发送给接收方;
b2:接收方收到数据后,先通过校验算法对数据的正确性进行校验;
b3:若数据有误,则不进行处理;若数据正确完整,则判断数据的序列号是否正确;
b4:若序列号正确,则返回确认信息,发送方收到确认信息后将这段数据从数据缓冲区中移除;若序列号不正确,则返回错误消息;
b5:发送方收到错误消息后判断是否达到重发的次数限制,来决定对数据进行重发或丢弃。
2.根据权利要求1所述的一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法,其特征在于:步骤a2中利用的每个连接均具备相同的数据结构和各自独立的状态句柄。
3.根据权利要求1所述的一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法,其特征在于:当步骤a5中利用的Server或Client端发生错误或需要主动断开连接时,发送断开请求消息通知对端同样断开连接,并将连接状态修改为空闲。
4.根据权利要求1所述的一种嵌入式设备通过PCIE模拟TCPIP协议收发机制的方法,其特征在于:上层业务在调用发送的接口时,步骤b5中利用的数据缓冲区的管理模块根据当前缓冲区的剩余空间,决定并通知上层业务实际发送的数据长度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011197888.4A CN112291251A (zh) | 2020-10-30 | 2020-10-30 | 一种嵌入式设备通过pcie模拟tcpip协议收发机制的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011197888.4A CN112291251A (zh) | 2020-10-30 | 2020-10-30 | 一种嵌入式设备通过pcie模拟tcpip协议收发机制的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112291251A true CN112291251A (zh) | 2021-01-29 |
Family
ID=74353066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011197888.4A Pending CN112291251A (zh) | 2020-10-30 | 2020-10-30 | 一种嵌入式设备通过pcie模拟tcpip协议收发机制的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112291251A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101212401A (zh) * | 2006-12-29 | 2008-07-02 | 中兴通讯股份有限公司 | 面向网格的可配置数据传输方法及系统 |
CN101969371A (zh) * | 2010-10-19 | 2011-02-09 | 高杰 | 一种基于用户数据包协议实现网络数据高速可靠传输的方法 |
CN103475706A (zh) * | 2013-09-09 | 2013-12-25 | 中国科学技术大学苏州研究院 | 基于syn-ack双服务器反弹模式的伪tcp隐蔽通信方法 |
CN105024861A (zh) * | 2015-07-28 | 2015-11-04 | 天津大学 | 一种基于北斗卫星的可靠远程通信方法及其通信装置 |
CN108886713A (zh) * | 2016-08-11 | 2018-11-23 | 华为技术有限公司 | 一种数据传输方法、数据接收设备及数据发送设备 |
CN110830472A (zh) * | 2019-11-07 | 2020-02-21 | 西北工业大学 | 基于tcp/ip协议的灵活数据传输协议的灵活数据传输方法 |
CN110995697A (zh) * | 2019-11-29 | 2020-04-10 | 济南慧天云海信息技术有限公司 | 一种大数据传输方法及系统 |
-
2020
- 2020-10-30 CN CN202011197888.4A patent/CN112291251A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101212401A (zh) * | 2006-12-29 | 2008-07-02 | 中兴通讯股份有限公司 | 面向网格的可配置数据传输方法及系统 |
CN101969371A (zh) * | 2010-10-19 | 2011-02-09 | 高杰 | 一种基于用户数据包协议实现网络数据高速可靠传输的方法 |
CN103475706A (zh) * | 2013-09-09 | 2013-12-25 | 中国科学技术大学苏州研究院 | 基于syn-ack双服务器反弹模式的伪tcp隐蔽通信方法 |
CN105024861A (zh) * | 2015-07-28 | 2015-11-04 | 天津大学 | 一种基于北斗卫星的可靠远程通信方法及其通信装置 |
CN108886713A (zh) * | 2016-08-11 | 2018-11-23 | 华为技术有限公司 | 一种数据传输方法、数据接收设备及数据发送设备 |
CN110830472A (zh) * | 2019-11-07 | 2020-02-21 | 西北工业大学 | 基于tcp/ip协议的灵活数据传输协议的灵活数据传输方法 |
CN110995697A (zh) * | 2019-11-29 | 2020-04-10 | 济南慧天云海信息技术有限公司 | 一种大数据传输方法及系统 |
Non-Patent Citations (1)
Title |
---|
吴显伟: "嵌入式协议栈结构优化的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1042931B1 (en) | Apparatus and method for intelligent routing of data between a remote device and a host system | |
US5778189A (en) | System and method for converting communication protocols | |
CN1633647B (zh) | 用于管理网络中的数据传送的系统、方法 | |
JP3183343B2 (ja) | データ通信方法、端末装置、中継装置、データ通信システム及びその記録媒体 | |
US7817662B2 (en) | System and method for interfacing with a management system | |
EP2075974A1 (en) | A method and a device for aggregating ports | |
WO2006080357A1 (ja) | 通信機器、通信システム、通信方法、通信プログラム、通信回路 | |
CN101960792A (zh) | 用于多传输方式架构的缓冲器控制 | |
CN105262836A (zh) | 服务器推送信息的方法及客户端接收推送信息的方法 | |
CN106255226A (zh) | 网络连接处理方法及装置 | |
CN100563237C (zh) | 一种多传输通道数据传输方法 | |
JPH10308791A (ja) | データ通信方法、データ通信装置、およびデータ通信プログラム記録媒体 | |
CN112291251A (zh) | 一种嵌入式设备通过pcie模拟tcpip协议收发机制的方法 | |
CN101997862B (zh) | 一种实现单条偶联支持多用户的方法和装置 | |
CN104683023A (zh) | 一种FCoE网络丢包后快速恢复的方法、设备及系统 | |
CN106534331A (zh) | 一种基于动态端口切换的数据传输方法和系统 | |
JP2001308936A (ja) | データ通信方法、中継装置、データ通信システム及びその記録媒体 | |
CN104954187A (zh) | 一种确定用户侧设备状态的方法和装置 | |
US9288322B2 (en) | Call center system with redundant components and method of operation thereof | |
KR100606893B1 (ko) | 통신망에서의 장애 관리 방법 | |
CN115412483B (zh) | 一种跨设备链路聚合保活报文交互的方法和系统 | |
CN112153087B (zh) | 一种第三方网络终端跨Net通讯方法 | |
US20090046685A1 (en) | Method and System for a Wireless Transmission over GPRS Communications Network | |
JPH07240756A (ja) | ネットワーク環境で使用されるシステム及び該システムに実装される装置 | |
JP5121789B2 (ja) | データ伝送システム及びコンピュータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210129 |