本发明涉及数据通信领域,特别涉及一种通信过程中数据包智能传输方法。
背景技术:
数据包智能传输方法是一种进行数据包通信传输的支撑方法,在万物互联时代,追求快速、高效已成为当今数据通信的重点,传统的数据通信方式是经过下位机设备把需要发送的数据包一字节一字节发送给服务器,随着科技的不断发展,人们对于数据包智能传输方法的制造工艺要求也越来越高。
现有的数据包智能传输方法在使用时存在一定的弊端,这种方法效率低下、增加额外通信流量、影响双方通信速度,严重的会造成重要数据缺失,不利于人们的使用,给人们的使用过程带来了一定的不利影响,为此,我们提出一种通信过程中数据包智能传输方法。
技术实现要素:
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种通信过程中数据包智能传输方法,对数据包的组包做技术上的处理,数据包的缓存长度和定时器时间都可以设置,适应性强,可以有效解决背景技术中的问题。
(二)技术方案
为实现上述目的,本发明采取的技术方案为:一种通信过程中数据包智能传输方法,包括以下操作步骤:
s1:数据包传输:下位机设备与通信终端c之间进行连接,连接的方式为有线连接,通信终端c与服务器s之间进行通信,通信的方式为无线传输;
s2:通信终端c收到下位机设备发来的数据后,定时器初始化,从0开始计时,收到的数据存入待发送数据包缓存,检测数据包缓存区中的数据量是否超出设置值;
s3:如果s2步骤中数据包缓存区的数据量超出设置值,就将已收到的数据包无线传输发往服务器s,如果数据包缓存区未超出设置值,就继续等待下位机设备的数据;
s4:s3步骤中在等待下位机设备的数据时,如果有收到下位机设备发来的数据,就回到s2步骤,同时在等待过程中不断检测定时器时间是否超时,如果超时则将已收到的数据包无线传输发往服务器s;
s5:数据包无线传输发往服务器s后,通信终端c的数据包缓存区进行清零操作。
作为一种优选的技术方案,所述有线连接指rs232、rs485、rj45等方式数据传输,所述无线通信指2g、3g、4g、5g、wifi等其他无线通信方式。
作为一种优选的技术方案,所述通信终端c收到下位机设备发来的数据时,通过无线传输送达服务器s,所述通信终端c收到服务器s发来的数据时,通过有线连接送达下位机设备。
作为一种优选的技术方案,所述通信终端c接收到的数据长度超过指定的缓冲区大小时,通信终端c把接收到的数据进行组包,然后发往服务器s。
作为一种优选的技术方案,所述指定时间内的通信终端c未再收到下位机设备数据时,通信终端c把已经收到的数据进行组包,然后发往服务器s。
作为一种优选的技术方案,所述通信终端c收到下位机设备发来的数据先放入待发送数据包缓存区,如果缓存区中已存的数据超出了设置的大小,如1024字节,执行数据包组包并发往服务器s步骤;否则继续等待下位机设备发来下一字节数据。
作为一种优选的技术方案,所述通信终端c收到下位机设备发来的数据后,循环判断定时器是否超时,如200ms,如果已超时,执行数据包组包并发往服务器s步骤。
作为一种优选的技术方案,所述数据包进行组包技术处理,数据包的缓存长度和定时器时间都可以设置。
(三)有益效果
与现有技术相比,本发明提供了一种通信过程中数据包智能传输方法,具备以下有益效果:该一种通信过程中数据包智能传输方法,对数据包的组包做技术上的处理,数据包的缓存长度和定时器时间都可以设置,适应性强,有线连接指rs232、rs485、rj45等方式数据传输,无线通信指2g、3g、4g、5g、wifi等其他无线通信方式,通信终端c收到下位机设备发来的数据时,通过无线传输送达服务器s,通信终端c收到服务器s发来的数据时,通过有线连接送达下位机设备,当从下位机设备接收到的数据长度超过指定的缓冲区大小时,通信终端c把接收到的数据进行组包,然后发往服务器s,当在指定的时间内,通信终端c未再收到下位机设备数据时,通信终端c把已经收到的数据进行封包,然后发往服务器s,通信终端c收到下位机设备发来的数据后,先放入待发送数据包缓存区,如果缓存区中已存的数据超出了设置的大小,如1024字节,执行数据包组包并无线传输发给服务器s,发送后,缓存区清零,整个数据包智能传输方法结构简单,操作方便,使用的效果相对于传统方式更好。
附图说明
图1为本发明一种通信过程中数据包智能传输方法的数据包传输结构示意图。
图2为本发明一种通信过程中数据包智能传输方法中通信传输流程的结构示意图。
具体实施方式
下面将结合附图和具体实施方式对本发明的技术方案进行清楚、完整地描述,但是本领域技术人员将会理解,下列所描述的实施例是本发明一部分实施例,而不是全部的实施例,仅用于说明本发明,而不应视为限制本发明的范围。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例中未注明具体条件者,按照常规条件或制造商建议的条件进行。所用试剂或仪器未注明生产厂商者,均为可以通过市售购买获得的常规产品。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
如图1-2所示,一种通信过程中数据包智能传输方法,包括以下操作步骤:
s1:数据包传输:下位机设备与通信终端c之间进行连接,连接的方式为有线连接,通信终端c与服务器s之间进行通信,通信的方式为无线传输;
s2:通信终端c收到下位机设备发来的数据后,定时器初始化,从0开始计时,收到的数据存入待发送数据包缓存,检测数据包缓存区中的数据量是否超出设置值;
s3:如果s2步骤中数据包缓存区的数据量超出设置值,就将已收到的数据包无线传输发往服务器s,如果数据包缓存区未超出设置值,就继续等待下位机设备的数据;
s4:s3步骤中在等待下位机设备的数据时,如果有收到下位机设备发来的数据,就回到s2步骤,同时在等待过程中不断检测定时器时间是否超时,如果超时则将已收到的数据包无线传输发往服务器s;
s5:数据包无线传输发往服务器s后,通信终端c的数据包缓存区进行清零操作。
进一步的,有线连接指rs232、rs485、rj45等方式数据传输。
进一步的,无线通信指2g、3g、4g、5g、wifi等其他无线通信方式。
进一步的,通信终端c收到下位机设备发来的数据时,通过无线传输送达服务器s,所述通信终端c收到服务器s发来的数据时,通过有线连接送达下位机设备。
进一步的,通信终端c接收到的数据长度超过指定的缓冲区大小时,通信终端c把接收到的数据进行组包,然后发往服务器s。
进一步的,指定时间内的通信终端c未再收到下位机设备数据时,通信终端c把已经收到的数据进行组包,然后发往服务器s。
进一步的,通信终端c收到下位机设备发来的数据先放入待发送数据包缓存区,如果缓存区中已存的数据超出了设置的大小,如1024字节,执行数据包组包并发往服务器s步骤;否则继续等待下位机设备发来下一字节数据。
进一步的,通信终端c收到下位机设备发来的数据后,循环判断定时器是否超时,如200ms,如果已超时,执行数据包组包并发往服务器s步骤。
进一步的,数据包进行组包技术处理,数据包的缓存长度和定时器时间都可以设置。
实施例:通信终端c发送“thenumberis7364”给服务器s,传统方法一字节一字节发送的话,服务器s会收到18包(包括空格也是一包),主机s收到后无法解析number是7,还是73,或者是7364;
使用数据包缓存 定时器方法,通信终端c会在全部接收到“thenumberis7364”之后,再组包成一包发送给服务器s。
工作原理:s1:数据包传输:下位机设备与通信终端c之间进行连接,连接的方式为有线连接,通信终端c与服务器s之间进行通信,通信的方式为无线传输;s2:通信终端c收到下位机设备发来的数据后,定时器初始化,从0开始计时,收到的数据存入待发送数据包缓存,检测数据包缓存区中的数据量是否超出设置值;s3:如果s2步骤中数据包缓存区的数据量超出设置值,就将已收到的数据包无线传输发往服务器s,如果数据包缓存区未超出设置值,就继续等待下位机设备的数据;s4:s3步骤中在等待下位机设备的数据时,如果有收到下位机设备发来的数据,就回到s2步骤,同时在等待过程中不断检测定时器时间是否超时,如果超时则将已收到的数据包无线传输发往服务器s;s5:数据包无线传输发往服务器s后,通信终端c的数据包缓存区进行清零操作,数据包的缓存长度和定时器时间都可以设置,适应性强。
需要说明的是,在本文中,诸如第一和第二(一号、二号)等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
1.一种通信过程中数据包智能传输方法,其特征在于:包括以下操作步骤:
s1:数据包传输:下位机设备与通信终端c之间进行连接,连接的方式为有线连接,通信终端c与服务器s之间进行通信,通信的方式为无线传输;
s2:通信终端c收到下位机设备发来的数据后,定时器初始化,从0开始计时,收到的数据存入待发送数据包缓存,检测数据包缓存区中的数据量是否超出设置值;
s3:如果s2步骤中数据包缓存区的数据量超出设置值,就将已收到的数据包无线传输发往服务器s,如果数据包缓存区未超出设置值,就继续等待下位机设备的数据;
s4:s3步骤中在等待下位机设备的数据时,如果有收到下位机设备发来的数据,就回到s2步骤,同时在等待过程中不断检测定时器时间是否超时,如果超时则将已收到的数据包无线传输发往服务器s;
s5:数据包无线传输发往服务器s后,通信终端c的数据包缓存区进行清零操作。
2.根据权利要求1所述的一种通信过程中数据包智能传输方法,其特征在于:所述有线连接指rs232、rs485、rj45等方式数据传输,所述无线通信指2g、3g、4g、5g、wifi等其他无线通信方式。
3.根据权利要求1所述的一种通信过程中数据包智能传输方法,其特征在于:所述通信终端c收到下位机发来的数据时,通过无线传输送达服务器s,所述通信终端c收到服务器s发来的数据时,通过有线连接送达下位机设备。
4.根据权利要求1所述的一种通信过程中数据包智能传输方法,其特征在于:所述通信终端c接收到的数据长度超过指定的缓冲区大小时,通信终端c把已接收到的数据组包后发往服务器s。
5.根据权利要求1所述的一种通信过程中数据包智能传输方法,其特征在于:所述指定时间内的通信终端c未再收到下位机设备数据时,通信终端c把已经收到的数据进行组包后发往服务器s。
6.根据权利要求1所述的一种通信过程中数据包智能传输方法,其特征在于:所述下位机设备发来的一字节数据放入待发送数据包缓存区,如果缓存区中已存的数据超出了设置的大小,如1024字节,执行数据包组包发送给服务器s的步骤;否则等待下位机设备的下一字节数据。
7.根据权利要求1所述的一种通信过程中数据包智能传输方法,其特征在于:所述收到下位机设备的数据后,同时判断定时器是否超时,如200ms,如果已超时,执行已收到的数据包传输发送步骤。
8.根据权利要求1所述的一种通信过程中数据包智能传输方法,其特征在于:所述数据包进行组包技术处理,数据包的缓存长度和定时器时间都可以设置。
技术总结