CN111541749B - 一种嵌入式设备的数据通信方法、系统及相关设备 - Google Patents
一种嵌入式设备的数据通信方法、系统及相关设备 Download PDFInfo
- Publication number
- CN111541749B CN111541749B CN202010290201.5A CN202010290201A CN111541749B CN 111541749 B CN111541749 B CN 111541749B CN 202010290201 A CN202010290201 A CN 202010290201A CN 111541749 B CN111541749 B CN 111541749B
- Authority
- CN
- China
- Prior art keywords
- message
- messages
- same
- grouping
- queues
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
- H04L67/5651—Reducing the amount or size of exchanged application data
-
- 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/164—Adaptation or special uses of UDP protocol
-
- 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/22—Parsing or analysis of headers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Communication Control (AREA)
Abstract
本发明实施例提供了一种嵌入式设备的数据通信方法、系统及相关设备,用于提高嵌入式设备的通信效率,降低嵌入式设备的资源开销。本发明实施例方法包括:将发送给不同外部设备的报文分别缓存在不同的消息队列,其中每一个外部设备对应一个消息队列;对所有消息队列分别进行组包操作,所述组包操作包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文;通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
Description
技术领域
本发明涉及数据通信技术领域,尤其涉及一种嵌入式设备的数据通信方法、系统及相关设备。
背景技术
现有的标准传输层协议常用的是TCP和UDP(User Datagram Protocol)。其中,TCP协议下,1台设备和其他多台设备通信时,需要建立多个链路,对嵌入式设备来说,资源占有较高。因此嵌入式设备常用的标准传输层协议是UDP。
UDP协议资源占用相对TCP少,但是UDP协议下,同一台设备与多个设备进行通信传输时,需要维护多个端口,增加了资源开销,而且UDP协议且通信效率低,无法满足实际业务的需求。
针对现有通信机制对嵌入式设备的不友好,有必要对现有的通信策略进行改进。
发明内容
本发明实施例提供了一种嵌入式设备的数据通信方法、系统及相关设备,用于提高嵌入式设备的通信效率,降低嵌入式设备的资源开销。
本发明实施例第一方面提供了一种嵌入式设备的数据通信方法,可包括:
将发送给不同外部设备的报文分别缓存在不同的消息队列,其中每一个外部设备对应一个消息队列;
对所有消息队列分别进行组包操作,所述组包操作包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文;
通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,作为一种可能的实施方式,本发明实施例中,所述将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文,可包括:
将缓存在同一个消息队列中占用存储空间小于1千字节的每3个报文进行组包合并,生成一个压缩报文。
可选的,作为一种可能的实施方式,本发明实施例中,所述通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备可包括:
调用同一线程,通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,作为一种可能的实施方式,本发明实施例中,每一个报文中包含唯一的序列号,所述方法还可以包括:
在发送每一个报文之后,若在预设时间内未收到反馈消息,则根据报文的序列号重发报文。
本发明实施例第二方面提供了一种嵌入式设备的数据通信系统,可包括:
缓存单元,用于将发送给不同外部设备的报文分别缓存在不同的消息队列,其中每一个外部设备对应一个消息队列;
处理单元,用于对所有消息队列分别进行组包操作,所述组包操作包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文;
发送单元,用于通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,作为一种可能的实施方式,本发明实施例中的所述处理单元可包括:
压缩模块,用于将缓存在同一个消息队列中占用存储空间小于1千字节的每3个报文进行组包合并,生成一个压缩报文。
可选的,作为一种可能的实施方式,本发明实施例中的发送单元可包括:
发送模块,调用同一线程,通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,作为一种可能的实施方式,本发明实施例中,每一个报文中包含唯一的序列号,该系统还可以包括:
重发单元,在发送每一个报文之后,若在预设时间内未收到反馈消息,则根据报文的序列号重发报文。
本发明实施例第三方面提供了一种嵌入式设备,所述嵌入式设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如第一方面及第一方面中任意一种可能的实施方式中的步骤。
本发明实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面及第一方面中任意一种可能的实施方式中的步骤。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,将发送给不同外部设备的报文分别缓存在不同的消息队列,对所有消息队列分别进行组包操作,将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文,最后通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。相对于现有方案,本发明实施例中将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文,一次可以发送多个报文,提高了通信的效率。而且,每台设备只监听一个UDP端口,和其他所有设备的通信走相同的端口,降低嵌入式设备的资源开销。
附图说明
图1为本发明实施例中一种嵌入式设备的数据通信方法的一个实施例示意图;
图2为本发明实施例中一种嵌入式设备的数据通信方法的另一个实施例示意图;
图3为本发明实施例中一种嵌入式设备的数据通信方法的一个具体应用实施例示意图;
图4为本发明实施例中一种数据通信系统的一个实施例示意图;
图5为本发明实施例中一种嵌入式设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种嵌入式设备的数据通信方法、系统及相关设备,用于提高嵌入式设备的通信效率,降低嵌入式设备的资源开销。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
针对现有通信机制对嵌入式设备的不友好,本次专利技术采用了高效高可靠的通信策略,能满足实际的使用需求,且逻辑较简单,资源占有较少,更适合嵌入式设备使用。
为了便于理解,下面对本发明实施例中的具体流程进行描述,请参阅图1,本发明实施例中一种嵌入式设备的数据通信方法的一个实施例可包括:
101、将发送给不同外部设备的报文分别缓存在不同的消息队列;
在嵌入式设备需要与外部设备进行通信时,数据通信系统可以将发送给不同外部设备的报文分别缓存在不同的消息队列。
同时,为了避免报文混淆,本发明实施例中,根据每个报文的接收方设备的唯一身份标识(IP地址或物理地址)为每一个外部设备分配一个消息队列,用于存储发送给同一个接收方设备的报文。
102、对所有消息队列分别进行组包操作,组包操作包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文;
现有的UDP协议下,报文是依次发送,一次只能发送一个报文,单个报文的大小需要小于最大承载T。对于嵌入式设备而言,其单个报文占用的存储空间往往很小,存在很多小于最大承载T的小报文。为了提高通信效率,本申请实施例中,数据通信系统可以对所有消息队列分别进行组包操作,具体的组包操作可包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文。
例如,对于发送给同一个外部设备的消息队列中,可以将占用存储空间小于1千字节的每3个报文进行组包合并,生成一个压缩报文。相对于现有方案,本发明实施例可以一次发送3个报文,提高了通信效率。
可以理解的是,上述生成压缩报文的方式仅仅是示例性的,实际运用中可以进行组合的报文的数量可以根据实际需要进行合理的设置,只需要保障压缩报文大小符合UDP协议即可,具体此处不做限定。
103、通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
为了进一步降低嵌入式设备的资源开销,本发明实施例中,底层传输协议使用UDP协议,每台设备只监听一个UDP端口,和其他所有设备的通信走相同的端口。嵌入式设备的数据通信系统可以通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
本发明实施例中,将发送给不同外部设备的报文分别缓存在不同的消息队列,对所有消息队列分别进行组包操作,将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文,最后通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。相对于现有方案,本发明实施例中将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文,一次可以发送多个报文,提高了通信的效率。而且,每台设备只监听一个UDP端口,和其他所有设备的通信走相同的端口,降低嵌入式设备的资源开销。
可选的,在上述图1所示的实施例的基础上,为了进一步降低嵌入式设备的开销,作为一种可能的实施方式,本发明实施例中,可以调用同一线程,通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,在上述图1所示的实施例的基础上,为了提高嵌入式设备的数据通信可靠性,对消息采用序列号+确认机制+重传机制,实现消息的高可靠传输。
具体的,可以为每一个报文中包含唯一的序列号,作为一种可能的实施方式,本发明实施例中,嵌入式设备的数据通信方法还可以包括:在发送每一个报文之后,若在预设时间内未收到反馈消息,则根据报文的序列号重发报文。在设备X上,发送消息Msg-A1给设备A,消息中带序列号seq=1。消息在网络中丢失,或者设备A没有及时处理。在设备X上判断超时后,然后重发消息Msg-A1,序列号还是seq=1。
为了便于理解,下面将结合具体运用实施例对本发明实施例中给的嵌入式设备的数据通信方法进行描述。
请参阅图2,本发明实施例中嵌入式设备的数据通信方法的一个具体运用实施例可包括:
A1.在设备X上,上层业务发送给A,保存在对A队列中。
A2.取队列中的3个消息a1 a2 a3。合并组包成消息Msg-A1.
A3.发送消息Msg-A1给A。
A4.设备A收到消息Msg-A1后,解包成消息a1 a2 a3。然后正常处理。
A5.在设备X上,做相同的组包发送操作给B。
A6.设备A处理完a1 a2 a3之后,发送回应消息Msg-A1-回应。
A7.在设备X上,收到Msg-A1-回应后,继续从队列中取到消息a4 a5,做相同的组包和发送操作。
其中,设备X同时和设备A和设备B通信,有2个队列保存发给A和B的消息,发送只使用一个线程。
为了提高上述通信过程的可靠性,本实施例中对消息采用序列号+确认机制+重传机制,实现消息的高可靠传输,请参阅图3,具体可以包括如下步骤:
B1.在设备X上,发送消息Msg-A1给设备A,消息中带序列号seq=1。
B2.消息在网络中丢失,或者设备A没有及时处理。
B3.在设备X上判断超时后,然后重发消息Msg-A1,序列号还是seq=1。
B4.设备A收到消息Msg-A1后,标识已经处理的序列号,相同序列号的消息只处理一次,发送Msg-A1的回应确认消息。
B5.设备X收到Msg-A1的回应确认消息后,发送消息Msg-A2给设备A,消息中带序列号seq=2。
本实施例中,对小报文使用固定个数的组包解包机制,实现简单而且通信效率较高,使用轻量级的序列号+确认机制+重传机制组合,实现消息的高可靠传输,使用唯一UDP端口和异步的一对多通信,减少嵌入式设备资源的占用。
请参阅图4,本发明实施例还提供了一种嵌入式设备的数据通信系统,可包括:
缓存单元401,用于将发送给不同外部设备的报文分别缓存在不同的消息队列,其中每一个外部设备对应一个消息队列;
处理单元402,用于对所有消息队列分别进行组包操作,组包操作包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文;
发送单元403,用于通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
本发明实施例中,将发送给不同外部设备的报文分别缓存在不同的消息队列,对所有消息队列分别进行组包操作,将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文,最后通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。相对于现有方案,本发明实施例中将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文,一次可以发送多个报文,提高了通信的效率。而且,每台设备只监听一个UDP端口,和其他所有设备的通信走相同的端口,降低嵌入式设备的资源开销。
可选的,作为一种可能的实施方式,本发明实施例中的处理单元可包括:
压缩模块,用于将缓存在同一个消息队列中占用存储空间小于1千字节的每3个报文进行组包合并,生成一个压缩报文。
可选的,作为一种可能的实施方式,本发明实施例中的发送单元可包括:
发送模块,调用同一线程,通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,作为一种可能的实施方式,本发明实施例中,每一个报文中包含唯一的序列号,该系统还可以包括:
重发单元,在发送每一个报文之后,若在预设时间内未收到反馈消息,则根据报文的序列号重发报文。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
上面从模块化功能实体的角度对本发明实施例中的网图表编辑器进行了描述,请参阅图5,下面从硬件处理的角度对本发明实施例中的嵌入式设备进行描述:
该嵌入式设备1可以包括存储器11、处理器12和输入输出总线13。处理器11执行计算机程序时实现上述图1所示的嵌入式设备的数据通信方法实施例中的步骤,例如图1所示的步骤101至103。或者,处理器执行计算机程序时实现上述各装置实施例中各模块或单元的功能。
本发明的一些实施例中,处理器具体用于实现如下步骤:
将发送给不同外部设备的报文分别缓存在不同的消息队列,其中每一个外部设备对应一个消息队列;
对所有消息队列分别进行组包操作,组包操作包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文;
通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
将缓存在同一个消息队列中占用存储空间小于1千字节的每3个报文进行组包合并,生成一个压缩报文。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
调用同一线程,通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
在发送每一个报文之后,若在预设时间内未收到反馈消息,则根据报文的序列号重发报文。
其中,存储器11至少包括一种类型的可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是嵌入式设备1的内部存储单元,例如该嵌入式设备1的硬盘。存储器11在另一些实施例中也可以是嵌入式设备1的外部存储设备,例如嵌入式设备1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括嵌入式设备1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于嵌入式设备1的应用软件及各类数据,例如计算机程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据通信芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行计算机程序01等。
该输入输出总线13可以是外设部件互连标准(peripheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。
进一步地,嵌入式设备还可以包括有线或无线网络接口14,网络接口14可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该嵌入式设备1与其他电子设备之间建立通信连接。
可选地,该嵌入式设备1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的,用户接口还可以包括标准的有线接口、无线接口。可选的,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-EmittingDiode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在嵌入式设备1中处理的信息以及用于显示可视化的用户界面。
图5仅示出了具有组件11-14以及计算机程序01的嵌入式设备1,本领域技术人员可以理解的是,图5示出的结构并不构成对嵌入式设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,可以实现如下步骤:
将发送给不同外部设备的报文分别缓存在不同的消息队列,其中每一个外部设备对应一个消息队列;
对所有消息队列分别进行组包操作,组包操作包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文;
通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
将缓存在同一个消息队列中占用存储空间小于1千字节的每3个报文进行组包合并,生成一个压缩报文。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
调用同一线程,通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
在发送每一个报文之后,若在预设时间内未收到反馈消息,则根据报文的序列号重发报文。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (4)
1.一种嵌入式设备的数据通信方法,其特征在于,包括:
将发送给不同外部设备的报文分别缓存在不同的消息队列,其中每一个外部设备对应一个消息队列;
对所有消息队列分别进行组包操作,所述组包操作包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文;
通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备;
每一个报文中包含唯一的序列号,在发送每一个报文之后,若在预设时间内未收到反馈消息,则根据报文的序列号重发报文;
所述将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文,包括:将缓存在同一个消息队列中占用存储空间小于1千字节的每3个报文进行组包合并,生成一个压缩报文;
所述通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备包括:调用同一线程,通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
2.一种嵌入式设备的数据通信系统,其特征在于,包括:
缓存单元,用于将发送给不同外部设备的报文分别缓存在不同的消息队列,其中每一个外部设备对应一个消息队列;
处理单元,用于对所有消息队列分别进行组包操作,所述组包操作包括:将缓存在同一个消息队列中占用存储空间小于预设阈值的报文进行组包合并,生成对应的压缩报文;
发送单元,用于通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备;
每一个报文中包含唯一的序列号,重发单元,在发送每一个报文之后,若在预设时间内未收到反馈消息,则根据报文的序列号重发报文;
所述处理单元包括:压缩模块,用于将缓存在同一个消息队列中占用存储空间小于1千字节的每3个报文进行组包合并,生成一个压缩报文;
所述发送单元包括:发送模块,调用同一线程,通过相同的UDP协议端口将经过组包操作的消息队列中的报文分别发送给外部设备。
3.一种嵌入式设备,其特征在于,所述嵌入式设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1所述方法的步骤。
4.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010290201.5A CN111541749B (zh) | 2020-04-14 | 2020-04-14 | 一种嵌入式设备的数据通信方法、系统及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010290201.5A CN111541749B (zh) | 2020-04-14 | 2020-04-14 | 一种嵌入式设备的数据通信方法、系统及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111541749A CN111541749A (zh) | 2020-08-14 |
CN111541749B true CN111541749B (zh) | 2023-05-02 |
Family
ID=71975277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010290201.5A Active CN111541749B (zh) | 2020-04-14 | 2020-04-14 | 一种嵌入式设备的数据通信方法、系统及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111541749B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112422404B (zh) * | 2020-10-19 | 2022-08-19 | 上海哔哩哔哩科技有限公司 | 消息处理方法及系统 |
CN112445631A (zh) * | 2020-12-02 | 2021-03-05 | 广东博智林机器人有限公司 | Rtps的进程通信方法、装置、电子设备及存储介质 |
CN114448976B (zh) * | 2022-03-11 | 2024-02-06 | 中国工商银行股份有限公司 | 网络报文的组装方法、装置、设备、介质和程序产品 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105511954A (zh) * | 2014-09-23 | 2016-04-20 | 华为技术有限公司 | 一种报文处理方法及装置 |
WO2016061987A1 (zh) * | 2014-10-24 | 2016-04-28 | 中兴通讯股份有限公司 | 报文处理方法及装置 |
CN105577566A (zh) * | 2014-10-24 | 2016-05-11 | 中兴通讯股份有限公司 | 报文汇聚传输的方法、装置和系统 |
CN106817726A (zh) * | 2015-11-27 | 2017-06-09 | 中兴通讯股份有限公司 | 数据报文发送接收的处理方法及装置 |
CN107659515A (zh) * | 2017-09-29 | 2018-02-02 | 曙光信息产业(北京)有限公司 | 报文处理方法、装置、报文处理芯片及服务器 |
-
2020
- 2020-04-14 CN CN202010290201.5A patent/CN111541749B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105511954A (zh) * | 2014-09-23 | 2016-04-20 | 华为技术有限公司 | 一种报文处理方法及装置 |
WO2016061987A1 (zh) * | 2014-10-24 | 2016-04-28 | 中兴通讯股份有限公司 | 报文处理方法及装置 |
CN105577566A (zh) * | 2014-10-24 | 2016-05-11 | 中兴通讯股份有限公司 | 报文汇聚传输的方法、装置和系统 |
CN106817726A (zh) * | 2015-11-27 | 2017-06-09 | 中兴通讯股份有限公司 | 数据报文发送接收的处理方法及装置 |
CN107659515A (zh) * | 2017-09-29 | 2018-02-02 | 曙光信息产业(北京)有限公司 | 报文处理方法、装置、报文处理芯片及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN111541749A (zh) | 2020-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111541749B (zh) | 一种嵌入式设备的数据通信方法、系统及相关设备 | |
US20240121180A1 (en) | System and method for facilitating operation management in a network interface controller (nic) for accelerators | |
EP2647163B1 (en) | A method and system for improved multi-cell support on a single modem board | |
US7953093B2 (en) | TCP/IP reordering | |
JP2013511884A (ja) | 動的接続された移送サービス | |
CN109120687B (zh) | 数据包发送方法、装置、系统、设备及存储介质 | |
US8539089B2 (en) | System and method for vertical perimeter protection | |
US20040064815A1 (en) | Apparatus and method for transmit transport protocol termination | |
WO2010056809A2 (en) | Automatic invocation of dtn bundle protocol | |
CN101719872B (zh) | 基于零拷贝方式的多队列报文发送和接收方法和装置 | |
CN101707590B (zh) | 基于零拷贝方式的tcp/ip协议报文发送方法和装置 | |
US20060031588A1 (en) | Distributing timers across processors | |
WO2008073493A2 (en) | Methods and apparatus for reducing storage usage in devices | |
CN115827266A (zh) | 多cpu系统异构计算机系统中消息转发框架的方法及系统 | |
US7313139B2 (en) | Method for batch processing received message packets | |
CN109274467A (zh) | 一种数据重传处理方法、rlc实体和mac实体 | |
US7953876B1 (en) | Virtual interface over a transport protocol | |
US7290055B2 (en) | Multi-threaded accept mechanism in a vertical perimeter communication environment | |
CN116208573A (zh) | 数据处理方法、装置、电子设备和存储介质 | |
CN117335931A (zh) | 数据重传方法、装置及可读存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |