掌桥专利:专业的专利平台
掌桥专利
首页

数据包处理方法、服务器和无线通信系统

文献发布时间:2024-04-18 19:52:40


数据包处理方法、服务器和无线通信系统

技术领域

本申请涉及数据传输控制领域,具体而言,涉及一种数据包处理方法、服务器、无线通信系统、计算机可读存储介质和设备。

背景技术

在ble设备的IoT系统架构中,由于设备的指令传输是以广播的形式发送,设备会向局域网范围的所有的蓝牙设备发送指令,蓝牙设备接收到不是自身指令后,又会以相同的方式广播指令,这就容易导致网络中广播转发消息过多,网络负载过高。另外,一个指令经过不同设备的转发,目标设备会多次接收该指令,造成指令动作重复执行。

发明内容

本申请的主要目的在于提供一种数据包处理方法、服务器、无线通信系统、计算机可读存储介质和设备,以解决现有技术中ble组网容易造成网络负载过高的问题。

根据本发明实施例的一个方面,提供了一种数据包处理方法,包括:获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数;将所述最小跳数和/或最大跳数存储在所述目标数据包中,形成携跳数数据包;将所述携跳数数据包下发,在数据接收设备接收到所述携跳数数据包时,获取所述携跳数数据包转发至所述数据接收设备的实时跳数,所述数据接收设备为组网中的任意一个设备;根据所述携跳数数据包中携带的跳数和所述实时跳数,确定所述数据接收设备是否继续转发所述携跳数数据包。

可选地,在所述携跳数数据包中仅携带有所述最小跳数或者携带有所述最小跳数和所述最大跳数的情况下,根据所述携跳数数据包中携带的跳数和所述实时跳数,确定所述数据接收设备是否继续转发所述携跳数数据包,包括:获取所述携跳数数据包中携带的所述最小跳数与所述实时跳数的大小关系;在所述实时跳数大于或者等于所述最小跳数的情况下,控制所述数据接收设备停止转发所述携跳数数据包;在所述实时跳数小于所述最小跳数的情况下,将所述实时跳数加一后,控制所述数据接收设备继续转发所述携跳数数据包。

可选地,在所述携跳数数据包中仅携带有所述最大跳数的情况下,根据所述携跳数数据包中携带的跳数和所述实时跳数,确定所述数据接收设备是否继续转发所述携跳数数据包,包括:将所述最大跳数和预定系数相乘,得到预设最大跳数;在所述实时跳数大于或者等于所述预设最大跳数的情况下,控制所述数据接收设备停止转发所述携跳数数据包;在所述实时跳数小于所述预设最大跳数的情况下,将所述实时跳数加一后,控制所述数据接收设备继续转发所述携跳数数据包。

可选地,在获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数的过程中,所述方法还包括:获取所述目标数据包从所述起点设备转发至所述目标设备的多条数据传输链路;将所述最小跳数对应的所述数据传输链路确定为从所述起点设备转发至所述目标设备的最短数据传输链路;将所述最大跳数确定为从所述目标设备至最远设备的最短路径的长度,所述最远设备为所述组网中与所述目标设备之间的距离最远的设备。

可选地,所述目标数据包中存储有所述起点设备的地址信息,在所述目标设备接收的所述目标数据包后,所述方法还包括:将所述目标设备的地址信息存储在所述目标数据包中。

可选地,所述组网为BLE组网。

根据本发明实施例的另一方面,还提供了一种数据包处理方法,包括:起点设备开始广播目标数据包,所述目标数据包在传输的过程中每经过一个设备跳数加一;在所述目标数据包发送至目标设备后,获取所述目标数据包从所述起点设备转发至所述目标设备的最小跳数和/或最大跳数;将所述最小跳数和/或最大跳数存储在所述目标数据包中,形成携跳数数据包;将所述携跳数数据包返回至所述起点设备,且从所述起点设备开始广播所述携跳数数据包;在数据接收设备接收到所述携跳数数据包时,获取所述携跳数数据包转发至所述数据接收设备的实时跳数,所述数据接收设备为组网中的任意一个设备;所述数据接收设备根据所述携跳数数据包中携带的跳数和所述实时跳数,确定所述数据接收设备是否继续转发所述携跳数数据包。

根据本发明实施例的又一方面,还提供了一种服务器,包括:第一获取单元,用于获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数;第一存储单元,用于将所述最小跳数和/或最大跳数存储在所述目标数据包中,形成携跳数数据包;下发单元,用于将所述携跳数数据包下发,在数据接收设备接收到所述携跳数数据包时,获取所述携跳数数据包转发至所述数据接收设备的实时跳数,所述数据接收设备为组网中的任意一个设备;第一确定单元,用于根据所述携跳数数据包中携带的跳数和所述实时跳数,确定所述数据接收设备是否继续转发所述携跳数数据包。

根据本发明实施例的再一方面,还提供了一种无线通信系统,包括:移动终端、服务器、路由设备、蓝牙网关和多个设备,各所述设备中安装有BLE通讯模块,所述移动终端与所述服务器通信,所述服务器与所述路由设备通信,所述路由设备与所述蓝牙网关通信,所述蓝牙网关与多个所述设备中的至少部分设备进行通信,所述移动终端将广播包发送至所述服务器,所述服务器经由所述路由设备将所述广播包发送是所述蓝牙网关,所述蓝牙网关广播所述广播包以使得多个所述设备中的至少部分设备接收到所述广播包,所述服务器用于执行任一种所述的方法。

根据本发明实施例的另一方面,还提供了一种无线通信系统,包括:移动终端、服务器和多个设备,各所述设备中安装有BLE通讯模块,所述移动终端与所述服务器通信,所述移动终端通过ble广播方式直接与所述设备进行通信,所述移动终端具备虚拟网桥功能,所述服务器用于执行任一种所述的方法。

根据本发明实施例的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行任意一种所述的方法。

根据本发明实施例的再一方面,还提供了一种设备,包括:一个或多个处理器,存储器,以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行任意一种所述的方法。

在本发明实施例中,首先获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,之后将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,之后将携跳数数据包下发,在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,最后根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

附图说明

构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示出了根据本申请的实施例的一种数据包处理方法的流程示意图;

图2示出了根据本申请的实施例的另一种数据包处理方法的流程示意图;

图3示出了根据本申请的实施例的一种服务器的结构示意图;

图4示出了根据本申请的实施例的一种无线通信系统的结构示意图;

图5示出了根据本申请的实施例的另一种无线通信系统的结构示意图;

图6示出了根据本申请的实施例的又一种数据包处理方法的流程示意图;

图7示出了根据本申请的实施例的再一种数据包处理方法的流程示意图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

应该理解的是,当元件(诸如层、膜、区域、或衬底)描述为在另一元件“上”时,该元件可直接在该另一元件上,或者也可存在中间元件。而且,在说明书以及权利要求书中,当描述有元件“连接”至另一元件时,该元件可“直接连接”至该另一元件,或者通过第三元件“连接”至该另一元件。

正如背景技术中所说的,现有技术中ble组网容易造成网络负载过高,为了解决上述问题,本申请的一种实施方式中,提供了一种数据包处理方法、服务器、无线通信系统、计算机可读存储介质和设备。

根据本申请的实施例,提供了一种数据包处理方法。

图1是根据本申请实施例的数据包处理方法的流程图。如图1所示,该方法包括以下步骤:

步骤S101,获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数;

步骤S102,将上述最小跳数和/或最大跳数存储在上述目标数据包中,形成携跳数数据包;

步骤S103,将上述携跳数数据包下发,在数据接收设备接收到上述携跳数数据包时,获取上述携跳数数据包转发至上述数据接收设备的实时跳数,上述数据接收设备为组网中的任意一个设备;

步骤S104,根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包。

上述的方法中,首先获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,之后将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,之后将携跳数数据包下发,在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,最后根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本申请的一种实施例中,在上述携跳数数据包中仅携带有上述最小跳数或者携带有上述最小跳数和上述最大跳数的情况下,根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包,包括:获取上述携跳数数据包中携带的上述最小跳数与上述实时跳数的大小关系;在上述实时跳数大于或者等于上述最小跳数的情况下,控制上述数据接收设备停止转发上述携跳数数据包;在上述实时跳数小于上述最小跳数的情况下,将上述实时跳数加一后,控制上述数据接收设备继续转发上述携跳数数据包。该实施例中,通过判断最小跳数和实时跳数的大小关系,可以更为高效准确地确定是否继续转发携跳数数据包,并且在实时跳数大于或者等于最小跳数的情况下,可以进一步高效准确地确定不转发携跳数数据包,在实时跳数小于最小跳数的情况下,可以进一步高效准确地确定转发携跳数数据包,这样进一步降低了组网过程中的网络负载。

本申请的另一种实施例中,在上述携跳数数据包中仅携带有上述最大跳数的情况下,根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包,包括:将上述最大跳数和预定系数相乘,得到预设最大跳数;在上述实时跳数大于或者等于上述预设最大跳数的情况下,控制上述数据接收设备停止转发上述携跳数数据包;在上述实时跳数小于上述预设最大跳数的情况下,将上述实时跳数加一后,控制上述数据接收设备继续转发上述携跳数数据包。该实施例中,通过判断预设最大跳数和实时跳数的大小关系,可以更为高效准确地确定是否继续转发携跳数数据包,并在在实时跳数大于湖综合等于预设最大跳数的情况下,可以进一步高效准确地确定不转发携跳数数据包,在实时跳数小于预设最大跳数的情况下,可以进一步高效准确地确定转发携跳数数据包,这样进一步降低了组网过程中的网络负载。

本申请的再一种实施例中,在获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数的过程中,上述方法还包括:获取上述目标数据包从上述起点设备转发至上述目标设备的多条数据传输链路;将上述最小跳数对应的上述数据传输链路确定为从上述起点设备转发至上述目标设备的最短数据传输链路;将上述最大跳数确定为从上述目标设备至最远设备的最短路径的长度,上述最远设备为上述组网中与上述目标设备之间的距离最远的设备。该实施例中,可以更为准确地确定起点设备与目标设备之间的最短数据传输链路,后续可以通过最短数据传输链路来更为快速且高效地传输数据,可以更为准确地确定与目标设备的距离最远的最远设备,这样在确定了最远设备后,可以进一步在数据传输过程中控制数据传输的路径,后续可以进一步有效减少数据传输过程中的转发的次数。

本申请的又一种实施例中,上述目标数据包中存储有上述起点设备的地址信息,在上述目标设备接收的上述目标数据包后,上述方法还包括:将上述目标设备的地址信息存储在上述目标数据包中。该实施例中,通过将目标设备的地址信息存储在目标数据包中,这样后续在转发目标数据包的过程中,非目标设备可以根据地址信息更为快速地将目标数据包转发至数据接收设备。

本申请的一种具体的实施例中,上述组网为BLE组网。通过BLE组网的方式,组网中的各个设备可以通过BLE技术更为高效地进行通信。

根据本申请的实施例,提供了另一种数据包处理方法。

图2是根据本申请实施例的数据包处理方法的流程图。如图2所示,该方法包括以下步骤:

步骤S201,起点设备开始广播目标数据包,上述目标数据包在传输的过程中每经过一个设备跳数加一;

步骤S202,在上述目标数据包发送至目标设备后,获取上述目标数据包从上述起点设备转发至上述目标设备的最小跳数和/或最大跳数;

步骤S203,将上述最小跳数和/或最大跳数存储在上述目标数据包中,形成携跳数数据包;

步骤S204,将上述携跳数数据包返回至上述起点设备,且从上述起点设备开始广播上述携跳数数据包;

步骤S205,在数据接收设备接收到上述携跳数数据包时,获取上述携跳数数据包转发至上述数据接收设备的实时跳数,上述数据接收设备为组网中的任意一个设备;

步骤S206,上述数据接收设备根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包。

上述的方法中,首先起点设备开始广播目标数据包,并且目标数据包在传输的过程中每经过一个设备跳数加一,之后在目标数据包发送至目标设备后,获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,之后将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,之后将携跳数数据包返回至起点设备,且从起点设备开始广播携跳数数据包,之后在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,最后数据接收设备根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本申请的一种实施例中,在上述携跳数数据包中仅携带有上述最小跳数或者携带有上述最小跳数和上述最大跳数的情况下,上述数据接收设备根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包,包括:上述数据接收设备获取上述携跳数数据包中携带的上述最小跳数与上述实时跳数的大小关系;在上述实时跳数大于或者等于上述最小跳数的情况下,上述数据接收设备停止转发上述携跳数数据包;在上述实时跳数小于上述最小跳数的情况下,将上述实时跳数加一后,上述数据接收设备继续转发上述携跳数数据包。该实施例中,通过判断最小跳数和实时跳数的大小关系,可以更为高效准确地确定是否继续转发携跳数数据包,并且在实时跳数大于或者等于最小跳数的情况下,可以进一步高效准确地确定不转发携跳数数据包,在实时跳数小于最小跳数的情况下,可以进一步高效准确地确定转发携跳数数据包,这样进一步降低了组网过程中的网络负载。

本申请的另一种实施例中,在上述携跳数数据包中仅携带有上述最大跳数的情况下,上述数据接收设备根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包,包括:上述数据接收设备将上述最大跳数和预定系数相乘,得到预设最大跳数;在上述实时跳数大于或者等于上述预设最大跳数的情况下,上述数据接收设备停止转发上述携跳数数据包;在上述实时跳数小于上述预设最大跳数的情况下,将上述实时跳数加一后,上述数据接收设备继续转发上述携跳数数据包。该实施例中,通过判断预设最大跳数和实时跳数的大小关系,可以更为高效准确地确定是否继续转发携跳数数据包,并在在实时跳数大于湖综合等于预设最大跳数的情况下,可以进一步高效准确地确定不转发携跳数数据包,在实时跳数小于预设最大跳数的情况下,可以进一步高效准确地确定转发携跳数数据包,这样进一步降低了组网过程中的网络负载。

本申请的再一种实施例中,在获取上述目标数据包从上述起点设备转发至上述目标设备的最小跳数和/或最大跳数的过程中,上述方法还包括:获取上述目标数据包从上述起点设备转发至上述目标设备的多条数据传输链路;将上述最小跳数对应的上述数据传输链路确定为从上述起点设备转发至上述目标设备的最短数据传输链路;将上述最大跳数确定为从上述目标设备至最远设备的最短路径的长度,上述最远设备为上述组网中与上述目标设备之间的距离最远的设备。该实施例中,可以更为准确地确定起点设备与目标设备之间的最短数据传输链路,后续可以通过最短数据传输链路来更为快速且高效地传输数据,可以更为准确地确定与目标设备的距离最远的最远设备,这样在确定了最远设备后,可以进一步在数据传输过程中控制数据传输的路径,后续可以进一步有效减少数据传输过程中的转发的次数。

本申请的又一种实施例中,上述目标数据包中存储有上述起点设备的地址信息,在上述目标设备接收的上述目标数据包后,上述方法还包括:将上述目标设备的地址信息存储在上述目标数据包中。该实施例中,通过将目标设备的地址信息存储在目标数据包中,这样后续在转发目标数据包的过程中,非目标设备可以根据地址信息更为快速地将目标数据包转发至数据接收设备。

本申请的一种具体的实施例中,上述组网为BLE组网。通过BLE组网的方式,组网中的各个设备可以通过BLE技术更为高效地进行通信。

本申请实施例还提供了一种服务器,需要说明的是,本申请实施例的服务器可以用于执行本申请实施例所提供的用于数据包处理方法。以下对本申请实施例提供的服务器进行介绍。

图3是根据本申请实施例的服务器的示意图。如图3所示,该服务器包括:

第一获取单元10,用于获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数;

第一存储单元20,用于将上述最小跳数和/或最大跳数存储在上述目标数据包中,形成携跳数数据包;

下发单元30,用于将上述携跳数数据包下发,在数据接收设备接收到上述携跳数数据包时,获取上述携跳数数据包转发至上述数据接收设备的实时跳数,上述数据接收设备为组网中的任意一个设备;

第一确定单元40,用于根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包。

上述的服务器中,第一获取单元获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,第一存储单元将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,下发单元将携跳数数据包下发,在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,第一确定单元根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

本申请的一种实施例中,在上述携跳数数据包中仅携带有上述最小跳数或者携带有上述最小跳数和上述最大跳数的情况下,第一确定单元包括获取模块、第一控制模块和第二控制模块,获取模块用于获取上述携跳数数据包中携带的上述最小跳数与上述实时跳数的大小关系;第一控制模块用于在上述实时跳数大于或者等于上述最小跳数的情况下,控制上述数据接收设备停止转发上述携跳数数据包;第二控制模块用于在上述实时跳数小于上述最小跳数的情况下,将上述实时跳数加一后,控制上述数据接收设备继续转发上述携跳数数据包。该实施例中,通过判断最小跳数和实时跳数的大小关系,可以更为高效准确地确定是否继续转发携跳数数据包,并且在实时跳数大于或者等于最小跳数的情况下,可以进一步高效准确地确定不转发携跳数数据包,在实时跳数小于最小跳数的情况下,可以进一步高效准确地确定转发携跳数数据包,这样进一步降低了组网过程中的网络负载。

本申请的另一种实施例中,在上述携跳数数据包中仅携带有上述最大跳数的情况下,第一确定单元包括处理模块、第三控制模块和第四控制模块,处理模块用于将上述最大跳数和预定系数相乘,得到预设最大跳数;第三控制模块用于在上述实时跳数大于或者等于上述预设最大跳数的情况下,控制上述数据接收设备停止转发上述携跳数数据包;第四控制模块用于在上述实时跳数小于上述预设最大跳数的情况下,将上述实时跳数加一后,控制上述数据接收设备继续转发上述携跳数数据包。该实施例中,通过判断预设最大跳数和实时跳数的大小关系,可以更为高效准确地确定是否继续转发携跳数数据包,并在在实时跳数大于湖综合等于预设最大跳数的情况下,可以进一步高效准确地确定不转发携跳数数据包,在实时跳数小于预设最大跳数的情况下,可以进一步高效准确地确定转发携跳数数据包,这样进一步降低了组网过程中的网络负载。

本申请的再一种实施例中,上述服务器还包括第二获取单元、第二确定单元和第三确定单元,第二获取单元用于在获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数的过程中,获取上述目标数据包从上述起点设备转发至上述目标设备的多条数据传输链路;第二确定单元用于将上述最小跳数对应的上述数据传输链路确定为从上述起点设备转发至上述目标设备的最短数据传输链路;第三确定单元用于将上述最大跳数确定为从上述目标设备至最远设备的最短路径的长度,上述最远设备为上述组网中与上述目标设备之间的距离最远的设备。该实施例中,可以更为准确地确定起点设备与目标设备之间的最短数据传输链路,后续可以通过最短数据传输链路来更为快速且高效地传输数据,可以更为准确地确定与目标设备的距离最远的最远设备,这样在确定了最远设备后,可以进一步在数据传输过程中控制数据传输的路径,后续可以进一步有效减少数据传输过程中的转发的次数。

本申请的又一种实施例中,上述目标数据包中存储有上述起点设备的地址信息,上述服务器还包括第二存储单元,第二存储单元用于在上述目标设备接收的上述目标数据包后,将上述目标设备的地址信息存储在上述目标数据包中。该实施例中,通过将目标设备的地址信息存储在目标数据包中,这样后续在转发目标数据包的过程中,非目标设备可以根据地址信息更为快速地将目标数据包转发至数据接收设备。

本申请的一种具体的实施例中,上述组网为BLE组网。通过BLE组网的方式,组网中的各个设备可以通过BLE技术更为高效地进行通信。

本申请实施例还提供了一种服务器,提供了一种设备集群,包括起点设备、目标设备和数据接收设备,起点设备包括广播单元,目标设备包括目标获取单元、目标存储单元和目标返回单元,数据接收设备包括数据接收单元和数据确定单元,

广播单元用于开始广播目标数据包,上述目标数据包在传输的过程中每经过一个设备跳数加一;

目标获取单元用于在上述目标数据包发送至目标设备后,获取上述目标数据包从上述起点设备转发至上述目标设备的最小跳数和/或最大跳数;

目标存储单元用于将上述最小跳数和/或最大跳数存储在上述目标数据包中,形成携跳数数据包;

目标返回单元用于将上述携跳数数据包返回至上述起点设备,且从上述起点设备开始广播上述携跳数数据包;

数据接收单元用于在数据接收设备接收到上述携跳数数据包时,获取上述携跳数数据包转发至上述数据接收设备的实时跳数,上述数据接收设备为组网中的任意一个设备;

数据确定单元用于上述数据接收设备根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包。

上述的设备集群中,广播单元开始广播目标数据包,并且目标数据包在传输的过程中每经过一个设备跳数加一,目标获取单元在目标数据包发送至目标设备后,获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,目标存储单元将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,目标返回单元将携跳数数据包返回至起点设备,且从起点设备开始广播携跳数数据包,数据接收单元在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,数据确定单元数据接收设备根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

本申请的一种实施例中,在上述携跳数数据包中仅携带有上述最小跳数或者携带有上述最小跳数和上述最大跳数的情况下,数据确定单元包括数据获取模块、数据停止转发模块和数据继续转发模块,数据获取模块用于获取上述携跳数数据包中携带的上述最小跳数与上述实时跳数的大小关系;数据停止转发模块用于在上述实时跳数大于或者等于上述最小跳数的情况下,停止转发上述携跳数数据包;数据继续转发模块用于在上述实时跳数小于上述最小跳数的情况下,将上述实时跳数加一后,继续转发上述携跳数数据包。该实施例中,通过判断最小跳数和实时跳数的大小关系,可以更为高效准确地确定是否继续转发携跳数数据包,并且在实时跳数大于或者等于最小跳数的情况下,可以进一步高效准确地确定不转发携跳数数据包,在实时跳数小于最小跳数的情况下,可以进一步高效准确地确定转发携跳数数据包,这样进一步降低了组网过程中的网络负载。

本申请的另一种实施例中,在上述携跳数数据包中仅携带有上述最大跳数的情况下,数据确定单元包括数据处理模块,数据处理模块用于将上述最大跳数和预定系数相乘,得到预设最大跳数;数据停止转发模块还用于在上述实时跳数大于或者等于上述预设最大跳数的情况下,停止转发上述携跳数数据包;数据继续转发模块用于在上述实时跳数小于上述预设最大跳数的情况下,将上述实时跳数加一后,继续转发上述携跳数数据包。该实施例中,通过判断预设最大跳数和实时跳数的大小关系,可以更为高效准确地确定是否继续转发携跳数数据包,并在在实时跳数大于湖综合等于预设最大跳数的情况下,可以进一步高效准确地确定不转发携跳数数据包,在实时跳数小于预设最大跳数的情况下,可以进一步高效准确地确定转发携跳数数据包,这样进一步降低了组网过程中的网络负载。

本申请的再一种实施例中,目标设备还包括目标链路获取单元、目标链路确定单元和目标长度确定单元,目标链路获取单元用于在获取上述目标数据包从上述起点设备转发至上述目标设备的最小跳数和/或最大跳数的过程中,获取上述目标数据包从上述起点设备转发至上述目标设备的多条数据传输链路;目标链路确定单元用于将上述最小跳数对应的上述数据传输链路确定为从上述起点设备转发至上述目标设备的最短数据传输链路;目标长度确定单元用于将上述最大跳数确定为从上述目标设备至最远设备的最短路径的长度,上述最远设备为上述组网中与上述目标设备之间的距离最远的设备。该实施例中,可以更为准确地确定起点设备与目标设备之间的最短数据传输链路,后续可以通过最短数据传输链路来更为快速且高效地传输数据,可以更为准确地确定与目标设备的距离最远的最远设备,这样在确定了最远设备后,可以进一步在数据传输过程中控制数据传输的路径,后续可以进一步有效减少数据传输过程中的转发的次数。

本申请的又一种实施例中,上述目标数据包中存储有上述起点设备的地址信息,目标设备还包括目标存储单元,目标存储单元用于在上述目标设备接收的上述目标数据包后,将上述目标设备的地址信息存储在上述目标数据包中。该实施例中,通过将目标设备的地址信息存储在目标数据包中,这样后续在转发目标数据包的过程中,非目标设备可以根据地址信息更为快速地将目标数据包转发至数据接收设备。

本申请的一种具体的实施例中,上述组网为BLE组网。通过BLE组网的方式,组网中的各个设备可以通过BLE技术更为高效地进行通信。

上述服务器包括处理器和存储器,上述第一获取单元、第一存储单元、第一下发单元和第一确定单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数降低ble组网的网络负载。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。

本申请还提供了一种无线通信系统,如图4所示,包括移动终端、服务器、路由设备、蓝牙网关和多个设备,各上述设备中安装有BLE通讯模块,上述移动终端与上述服务器通信,上述服务器与上述路由设备通信,上述路由设备与上述蓝牙网关通信,上述蓝牙网关与多个上述设备中的至少部分设备进行通信,上述移动终端将广播包发送至上述服务器,上述服务器经由上述路由设备将上述广播包发送是上述蓝牙网关,上述蓝牙网关广播上述广播包以使得多个上述设备中的至少部分设备接收到上述广播包,上述服务器用于执行任一种上述的方法。

上述的系统中,由于包括任一种上述的方法,该方法中首先获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,之后将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,之后将携跳数数据包下发,在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,最后根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

本申请还提供了另一种无线通信系统,如图5所示,包括移动终端、服务器和多个设备,各上述设备中安装有BLE通讯模块,上述移动终端与上述服务器通信,上述移动终端通过ble广播方式直接与上述设备进行通信,上述移动终端具备虚拟网桥功能,上述服务器用于执行任一种上述的方法。

上述的系统中,由于包括任一种上述的方法,该方法中首先获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,之后将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,之后将携跳数数据包下发,在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,最后根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

本发明实施例提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现上述数据包处理方法。

本发明实施例提供了一种处理器,上述处理器用于运行程序,其中,上述程序运行时执行上述数据包处理方法。

本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现至少以下步骤:

步骤S101,获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数;

步骤S102,将上述最小跳数和/或最大跳数存储在上述目标数据包中,形成携跳数数据包;

步骤S103,将上述携跳数数据包下发,在数据接收设备接收到上述携跳数数据包时,获取上述携跳数数据包转发至上述数据接收设备的实时跳数,上述数据接收设备为组网中的任意一个设备;

步骤S104,根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包,或者步骤S201,起点设备开始广播目标数据包,上述目标数据包在传输的过程中每经过一个设备跳数加一;

步骤S202,在上述目标数据包发送至目标设备后,获取上述目标数据包从上述起点设备转发至上述目标设备的最小跳数和/或最大跳数;

步骤S203,将上述最小跳数和/或最大跳数存储在上述目标数据包中,形成携跳数数据包;

步骤S204,将上述携跳数数据包返回至上述起点设备,且从上述起点设备开始广播上述携跳数数据包;

步骤S205,在数据接收设备接收到上述携跳数数据包时,获取上述携跳数数据包转发至上述数据接收设备的实时跳数,上述数据接收设备为组网中的任意一个设备;

步骤S206,上述数据接收设备根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包。

本文中的设备可以是服务器、PC、PAD、手机等。

本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有至少如下方法步骤的程序:

步骤S101,获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数;

步骤S102,将上述最小跳数和/或最大跳数存储在上述目标数据包中,形成携跳数数据包;

步骤S103,将上述携跳数数据包下发,在数据接收设备接收到上述携跳数数据包时,获取上述携跳数数据包转发至上述数据接收设备的实时跳数,上述数据接收设备为组网中的任意一个设备;

步骤S104,根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包,或者步骤S201,起点设备开始广播目标数据包,上述目标数据包在传输的过程中每经过一个设备跳数加一;

步骤S202,在上述目标数据包发送至目标设备后,获取上述目标数据包从上述起点设备转发至上述目标设备的最小跳数和/或最大跳数;

步骤S203,将上述最小跳数和/或最大跳数存储在上述目标数据包中,形成携跳数数据包;

步骤S204,将上述携跳数数据包返回至上述起点设备,且从上述起点设备开始广播上述携跳数数据包;

步骤S205,在数据接收设备接收到上述携跳数数据包时,获取上述携跳数数据包转发至上述数据接收设备的实时跳数,上述数据接收设备为组网中的任意一个设备;

步骤S206,上述数据接收设备根据上述携跳数数据包中携带的跳数和上述实时跳数,确定上述数据接收设备是否继续转发上述携跳数数据包。

为了本领域技术人员能够更加清楚地了解本申请的技术方案,以下将结合具体的实施例来说明本申请的技术方案和技术效果。

实施例

本实施例涉及一种处理包处理方法,

如图6所示,应用/服务器下发指令,将指令的跳数初始为0;组网范围内的ble设备接收到指令包/数据包,将指令包/数据包的跳数加1后,再进行广播;指令包/数据包到达目标设备后,目标设备记录本条消息的起点设备的地址信息和跳数,记录从起点设备至目标设备的最小跳数,同时目标设备携带最小跳数向起点设备发送回复数据包;起点设备接收到目标设备返回的回复数据包后,记录目标设备的地址信息和最小跳数;组网中所有的设备记录所有跳数中,将最小跳数作为从起点设备转发至目标设备的最短数据传输链路,将最大跳数作为从目标设备至最远设备的最短路径的长度,最远设备为组网中与目标设备之间的距离最远的设备;

如图7所示,应用/服务器下发指令时,将要发送至目标设备对应的最小跳数携带一起发送,若目标设备还未记录到最小跳数,则将最大跳数和预定系数K相乘,作为预设最大跳数;组网范围内的ble设备在接收到数据包后,将当前数据的实时跳数与携带的最小跳数进行对比,若实时跳数大于或者等于最小跳数,则不再将数据进行转发;若数据包携带的不是最小跳数而是最大跳数,则设备判断实时跳数是否大于或者等于预设最大跳数,若大于的情况则不再将数据进行转发。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

从以上的描述中,可以看出,本申请上述的实施例实现了如下技术效果:

1)、本申请的处理包处理方法,首先获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,之后将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,之后将携跳数数据包下发,在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,最后根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

2)、本申请的另一种处理包处理方法,首先起点设备开始广播目标数据包,并且目标数据包在传输的过程中每经过一个设备跳数加一,之后在目标数据包发送至目标设备后,获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,之后将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,之后将携跳数数据包返回至起点设备,且从起点设备开始广播携跳数数据包,之后在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,最后数据接收设备根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

3)、本申请的服务器,第一获取单元获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,第一存储单元将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,下发单元将携跳数数据包下发,在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,第一确定单元根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

4)、本申请的无线通信系统,由于包括任一种上述的方法,该方法中首先获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,之后将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,之后将携跳数数据包下发,在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,最后根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

5)、本申请的另一种处理包处理方法,由于包括任一种上述的方法,该方法中首先获取目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,之后将最小跳数和/或最大跳数存储在目标数据包中,形成携跳数数据包,之后将携跳数数据包下发,在数据接收设备接收到携跳数数据包时,获取携跳数数据包转发至数据接收设备的实时跳数,最后根据携跳数数据包中携带的跳数和实时跳数,确定数据接收设备是否继续转发携跳数数据包。该方案中,通过存储目标数据包从起点设备转发至目标设备的最小跳数和/或最大跳数,对这两个跳数进行汇总,得到携跳数数据包,再根据携跳数数据包中携带的跳数和实时跳数就可以准确地确定数据接收设备是否继续转发携跳数数据包,该方案通过记录最小跳数和最大跳数,可以有效减少组网中不必要的指令传播的次数,降低了组网过程中的网络负载,进而在组网为ble组网的情况下,解决了现有技术中ble组网容易造成网络负载过高的问题。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 一种测试热轧钢板表面氧化铁皮孔隙率的方法
  • 一种检测固体表面除尘效果的装置和方法
  • 一种具有除尘功能的家具生产用表面处理装置
  • 一种智能热轧钢板表面除尘装置
  • 一种智能热轧钢板表面除尘装置
技术分类

06120116331706