一种基于BAP协议的数据缓存方法、装置、设备及介质与流程

文档序号:34138825发布日期:2023-05-12 20:23阅读:352来源:国知局
一种基于BAP协议的数据缓存方法、装置、设备及介质与流程

本发明涉及通信,具体涉及一种基于bap协议的数据缓存方法、装置、设备及介质。


背景技术:

1、在数据传输过程中,可能会遇到数据的收发两端执行的是不同的数据协议,这种情况下,需要对接收数据先进行解析,将所有数据都存入缓存区后,再对数据进行应用。

2、但相关技术中,在将数据存储到缓存区时,会给数据随机分配缓存区,这样的分配方式会导致空间分配不合理,使得部分缓存区由于空间过小而不够用,或者,部分缓存区由于空间过大而造成空间浪费。

3、因此,如何合理分配缓存区成为一个需要解决的问题。


技术实现思路

1、因此,本发明要解决的技术问题在于克服现有技术中的缓存区分配不合理的缺陷,从而提供一种基于bap协议的数据缓存方法、装置、设备及介质。

2、第一方面,本发明提供了一种基于bap协议的数据缓存方法,包括:

3、接收待传输数据;读取待传输数据的数据信息;基于数据信息判断待传输数据所属数据包的传输方式是否为多帧传输;当确定传输方式为多帧传输时,从数据信息中读取数据总长度、数据id和传输通道号;基于数据客户案号总长度,从空闲缓存区中筛选出目标缓存区,并将待传输数据存储于目标缓存区,其中,目标缓存区的当前可容纳数据长度大于或等于数据总长度,且当目标缓存区的当前可容纳数据长度大于数据总长度时,目标缓存区的当前可容纳数据长度与数据总长度之间的差值,为空闲缓存区中每一个空闲缓存区的可容纳数据长度与数据总长度的差值中的最小值,目标缓存区用于存储携带有数据id和传输通道号的所有待传输数据。

4、本发明在获取到待传输数据后,通过读取的待传输数据的数据信息判断待传输数据所属数据包的传输方式是否为多帧传输。当待传输数据所属数据包的传输方式是多帧传输时,并不能直接进行数据的传输,需要先从待传输数据的数据信息中读取数据总长度,然后根据数据总长度,从现有的空闲缓存区中筛选出当前可容纳数据长度与总数据长度最接近的目标缓存区,然后将待传输数据存储至筛选出的目标缓存区中。本方案通过此方式找到的目标缓存区是当前情况下最适合当前数据总长度的缓存区,因此,采用本方案提供的数据缓存方法,不会出现空间过小而不够用的情况。且,由于目标缓存区的当前可容纳数据长度是所有空闲缓存区中与总数据长度最接近的,因此,也不会出现缓存区的过度浪费,从而保证了缓存区分配的合理性。

5、结合第一方面,在第一方面的第一实施例中,在接收待传输数据之后,还包括:

6、基于待传输数据的数据来源判断待传输数据的数据类型,以便基于数据类型从待传输数据中读取与数据类型对应的数据信息,其中,数据类型包括总线数据和芯片数据。

7、客户案号

8、结合第一方面,在第一方面的第二实施例中,当确定待传输数据为芯片数据时,基于数据信息判断待传输数据所属数据包的传输方式是否为多帧传输,包括:

9、从芯片数据对应的数据信息中读取芯片数据对应的数据总长度;将芯片数据对应的数据总长度与预设数据长度进行比较,当数据总长度大于预设数据长度时,确定芯片数据所属数据包的传输方式为多帧传输。

10、结合第一方面,在第一方面的第三实施例中,当确定待传输数据为芯片数据时,在确定传输方式为多帧传输之后,还包括:

11、为芯片数据分配传输通道号。

12、结合第一方面,在第一方面的第四实施例中,当确定待传输数据为芯片数据时,在从待传输数据的数据信息中读取数据总长度、数据id和传输通道号之后,还包括:

13、基于芯片数据对应的数据总长度和预设数据长度,将芯片数据拆分为至少两帧芯片子数据,并确定芯片子数据的拆分顺序;基于每一帧芯片子数据的拆分顺序,为每一帧芯片子数据配置标志值和序列号,标志值用于指示芯片子数据的帧属性,帧属性包括起始帧和过程帧,序列号用于指示芯片子数据之间的先后顺序;将芯片数据对应的数据id作为每一帧芯片子数据的数据id,将芯片数据对应的传输通道号作为每一帧芯片子数据的传输通道号。

14、结合第一方面,在第一方面的第五实施例中,当确定待传输数据为总线数据时,数据信息还包括第一标志值,基于数据信息判断待传输数据所属数据包的传输方式是否为多帧传输,包括:

15、客户案号

16、读取总线数据第一标志位上的第一标志值;基于第一标志值确定总线数据是否为多帧传输。

17、结合第一方面,在第一方面的第六实施例中,当确定待传输数据为总线数据时,数据信息还包括第二标志值,在确定传输方式为多帧传输之后,还包括:

18、读取总线数据第二标志位上的第二标志值;基于第二标志值确定总线数据是否为起始帧数据;当确定总线数据为起始帧数据时,从数据信息中读取数据总长度、数据id和传输通道号。

19、第二方面,本发明提供了一种基于bap协议的数据缓存装置,包括:

20、接收模块,用于接收待传输数据;第一读取模块,用于读取待传输数据的数据信息;第一判断模块,用于基于数据信息判断待传输数据所属数据包的传输方式是否为多帧传输;第二读取模块,用于当确定传输方式为多帧传输时,从数据信息中读取数据总长度、数据id和传输通道号;筛选模块,用于基于数据总长度,从空闲缓存区中筛选出目标缓存区,并将待传输数据存储于目标缓存区,其中,目标缓存区的当前可容纳数据长度大于或等于数据总长度,且当目标缓存区的当前可容纳数据长度大于数据总长度时,目标缓存区的当前可容纳数据长度与数据总长度之间的差值,为空闲缓存区中每一个空闲缓存区的可容纳数据长度与数据总长度的差值中的最小值,目标缓存区用于存储携带有数据id和传输通道号的所有待传输数据。

21、第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器用于存储计算机程序,计算机客户案号程序被处理器执行时,使处理器执行如
技术实现要素:
中任一项的基于bap协议的数据缓存方法。

22、第四方面,本发明提供了一种计算机可读存储介质,计算机可读存储介质用于存储计算机指令,当计算机指令被处理器执行时,实现如发明内容中任一项的基于bap协议的数据缓存方法。



技术特征:

1.一种基于bap协议的数据缓存方法,其特征在于,包括:

2.根据权利要求1所述的基于bap协议的数据缓存方法,其特征在于,在所述接收待传输数据之后,还包括:

3.根据权利要求2所述的基于bap协议的数据缓存方法,其特征在于,当确定所述待传输数据为芯片数据时,所述基于所述数据信息判断所述待传输数据所属数据包的传输方式是否为多帧传输,包括:

4.根据权利要求3所述的基于bap协议的数据缓存方法,其特征在于,当确定所述待传输数据为芯片数据时,在确定所述传输方式为多帧传输之后,还包括:

5.根据权利要求4所述的基于bap协议的数据缓存方法,其特征在于,当确定所述待传输数据为芯片数据时,在所述从所述待传输数据的数据信息中读取数据总长度、数据id和传输通道号之后,还包括:

6.根据权利要求2所述的基于bap协议的数据缓存方法,其特征在于,当确定所述待传输数据为总线数据时,所述数据信息还包括第一标志值,所述基于所述数据信息判断所述待传输数据所属数据包的传输方式是否为多帧传输,包括:

7.根据权利要求6所述的基于bap协议的数据缓存方法,其特征在于,当确定所述待传输数据为总线数据时,所述数据信息还包括第二标志值,在所述确定所述传输方式为多帧传输之后,还包括:

8.一种基于bap协议的数据缓存装置,其特征在于,包括:

9.一种计算机设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,使所述处理器执行如权利要求1至7中任一项所述的基于bap协议的数据缓存方法。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机指令,当所述计算机指令被处理器执行时,实现如权利要求1至7中任一项所述的基于bap协议的数据缓存方法。


技术总结
本发明公开了一种基于BAP协议的数据缓存方法、装置、设备及介质,方法包括:接收待传输数据;读取待传输数据的数据信息;基于数据信息判断待传输数据所属数据包的传输方式是否为多帧传输;当确定传输方式为多帧传输时,从数据信息中读取数据总长度、数据ID和传输通道号;基于数据总长度,从空闲缓存区中筛选出目标缓存区,并将待传输数据存储于目标缓存区;采用本方案提供的数据缓存方法,不会出现空间过小而不够用的情况。且,由于目标缓存区的当前可容纳数据长度是所有空闲缓存区中与总数据长度最接近的,因此,也不会出现缓存区的过度浪费,从而保证了缓存区分配的合理性。

技术研发人员:李浦
受保护的技术使用者:镁佳(北京)科技有限公司
技术研发日:
技术公布日:2024/1/12
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1