首页 / 专利库 / 专利权 / 形式要求 / 一种批量数值型数据的传输方法、接收终端及发送终端

一种批量数值型数据的传输方法、接收终端及发送终端

阅读:807发布:2021-06-13

专利汇可以提供一种批量数值型数据的传输方法、接收终端及发送终端专利检索,专利查询,专利分析的服务。并且本 发明 提供一种批量数值型数据的传输方法、接收终端及发送终端;传输方法将待传输的各个变量数值分别用字符串形式表示;将各个字符串串连为一体得到多数值字符串;根据设定的编码规则将多数值字符串中的字符进行分组和编码;根据设定的格式要求将编码后的各个字节中的字符进行排序;将排序后的各个字节用数组表示,并将数组进行压缩处理,再发送至接收终端。本发明根据设定的规则来约定发送和接收双方对变量数值的传输方式,可实现批量传输数据中具有多种不同的数值类型,无需额外传输数据的变量自身描述信息,只需要传递其数值,可以节省传输量和降低处理耗时。,下面是一种批量数值型数据的传输方法、接收终端及发送终端专利的具体信息内容。

1.一种批量数值型数据的传输方法,应用于发送终端,其特征在于,包括如下步骤:
步骤S1.1:将待传输的各个变量数值分别用字符串形式表示;
步骤S1.2:将各个字符串串连为一体,并使用预设的分隔符号将每个字符串分隔开,得到多数值字符串;
步骤S1.3:根据设定的编码规则将所述多数值字符串中的字符进行分组,得到分组形式的各个字节,并对各个字节中的字符进行编码;
步骤S1.4:根据设定的格式要求将编码后的各个字节中的字符进行排序;
步骤S1.5:将排序后的各个字节用数组表示,并将数组进行压缩处理;
步骤S1.6:将压缩处理后的数组发送至接收终端。
2.根据权利要求1所述的批量数值型数据的传输方法,其特征在于,实现步骤S1.3的具体方法为:从多数值字符串中的首个字符开始,依次将每两个字符分为一组得到一个字节,将各个字节中的字符由十六进制编码进行二进制位编码,得到每个字节中包括八个二进制位的字符编码。
3.根据权利要求2所述的批量数值型数据的传输方法,其特征在于,当多数值字符串中字符的个数为奇数时,则在多数值字符串的末尾字符之后添加"\0"并与末尾字符组成最后一个分组。
4.根据权利要求2所述的批量数值型数据的传输方法,其特征在于,实现步骤S1.4的具体方法为:根据Little-Endian格式以及同组中的字符在多数值字符串中出现的前后顺序将编码后的字符进行排序,出现在前的字符对应字节的高四位,出现在后的字符对应字节的低四位。
5.根据权利要求2所述的批量数值型数据的传输方法,其特征在于,所述预设的分隔符号为ANSI C语言标准下的空格符号。
6.一种批量数值型数据的传输方法,应用于接收终端,其特征在于,包括如下步骤:
步骤S2.1:将发送终端发送来的数组进行解压缩处理,从解压缩后的数组中得到分组形式的各个字节,并由各个字节得到编码的字符;
步骤S2.2:根据设定的编码规则将各个字节中编码的字符进行解码处理;
步骤S2.3:将解码后的字符依次拼接形成各个字符串;
步骤S2.4:将各个字符串使用预设的分隔符号进行分隔;
步骤S2.5:根据变量类型对分隔后的各个字符串进行解析,还原得到各个变量数值。
7.根据权利要求6所述的批量数值型数据的传输方法,其特征在于,实现步骤S2.2的具体方法为:根据设定的编码规则将每个字节中的八个二进制位的字符编码进行解码处理,还原得到十六进制编码的字符。
8.一种批量数值型数据的发送终端,其特征在于,包括:
转换模,用于将待传输的各个变量数值分别用字符串形式表示;
第一串连模块,用于将各个字符串串连为一体,并使用预设的分隔符号将每个字符串分隔开,得到多数值字符串;
编码模块,用于根据设定的编码规则将所述多数值字符串中的字符进行分组,得到分组形式的各个字节,并对各个字节中的字符进行编码;
排序模块,用于根据设定的格式要求将编码后的各个字节中的字符进行排序;
压缩模块,用于将排序后的各个字节用数组表示,并将数组进行压缩处理;
发送模块,用于将压缩处理后的数组发送至接收终端。
9.根据权利要求8所述的批量数值型数据的接收终端,其特征在于,所述编码模块中,从多数值字符串中的首个字符开始,依次将每两个字符分为一组得到一个字节,将各个字节中的字符由十六进制编码进行二进制位编码,得到每个字节中包括八个二进制位的字符编码。
10.一种批量数值型数据的接收终端,其特征在于,包括:
解压缩模块,用于将发送终端发送来的数组进行解压缩处理,从解压缩后的数组中得到分组形式的各个字节,并由各个字节得到编码的字符;
解码模块,用于根据设定的编码规则将各个字节中编码的字符进行解码处理;
第二串连模块,用于将解码后的字符依次拼接形成各个字符串;
分隔模块,用于将各个字符串使用预设的分隔符号进行分隔;
解析模块,用于根据变量类型对分隔后的各个字符串进行解析,还原得到各个变量数值。

说明书全文

一种批量数值型数据的传输方法、接收终端及发送终端

技术领域

[0001] 本发明主要涉及批量数据传输领域,具体涉及一种批量数值型数据的传输方法、接收终端及发送终端。

背景技术

[0002] 网络游戏软件是基于互联网技术开发的应用型软件,是以一定的文化内涵为核心利用网络构建互联互动虚拟游戏空间的平台。网络游戏软件在运行过程中,会产生大量的数值型数据,而通过网络互联的各个参与者之间需要进行大量的数据通信和数值型数据的传输。对于网络游戏软件的数据传输,有以下几个重要的需求:一是在保证数据完整的前提下传输数据量要尽可能小;二是从发送端到传输端的整个传输过程的处理耗时要尽可能少;三是支持传输数据内容的通用性和可扩展性;四是要考虑数据传输的安全可靠。
[0003] 目前网络游戏软件领域的数据传输方式,常见包括使用二进制格式、使用XML格式(参考http://www.w3.org/XML)、使用JSON格式(参考http://www.json.org/)、使用Google Protocol Buffer格式(https://developers.google.com/protocol-buffers)等方案。这些方案的特点是它们都是通用型的传输方法,可以用于传输所有数据类型的数据。为了达到通用性传输的目的,这些传输格式都需要对所传输的数据进行类型结构的描述,对每一个传输数据单元需要同时指明其键和值。使用这些传输方式进行数据传输,对人类来说更友好,具有更好的内容可读性,但这是以增加计算机的处理耗时为代价的。
[0004] 在网络游戏软件领域,经常会遇到同时传输一批数值型数据的情况,比如在游戏战斗的结算阶段需要把战斗过程中产生的几十乃至几百个数值型变量一起发送给服务器。这种数据集的特点是:需要传输的变量个数是预先确定的,每个变量都是数值类型(可能是整数、小数、浮点数),而且每个变量的类型可能是整数、小数、浮点数相互混杂的。要传输这种数据集,可以使用基于前述的XML、JSON等通用传输方案,分别对每一个变量进行“键-值”描述,最后合起来组成一个大的描述结构进行传输。这样做的好处是每个变量的传输描述是独立的,变量之间的先后顺序并不重要,但缺点是会有较大的数据传输量,传输过程中处理数据的耗时也相应较多。

发明内容

[0005] 本发明所要解决的技术问题是针对现有技术的不足,提供一种批量数值型数据的传输方法、接收终端及发送终端。
[0006] 本发明解决上述技术问题的技术方案如下:一种批量数值型数据的传输方法,应用于发送终端,包括如下步骤:
[0007] 步骤S1.1:将待传输的各个变量数值分别用字符串形式表示;
[0008] 步骤S1.2:将各个字符串串连为一体,并使用预设的分隔符号将每个字符串分隔开,得到多数值字符串;
[0009] 步骤S1.3:根据设定的编码规则将所述多数值字符串中的字符进行分组,得到分组形式的各个字节,并对各个字节中的字符进行编码;
[0010] 步骤S1.4:根据设定的格式要求将编码后的各个字节中的字符进行排序;
[0011] 步骤S1.5:将排序后的各个字节用数组表示,并将数组进行压缩处理;
[0012] 步骤S1.6:将压缩处理后的数组发送至接收终端。
[0013] 本发明的有益效果是:根据设定的规则来约定发送和接收双方对变量数值的传输方式,可实现批量传输数据中具有多种不同的数值类型,无需额外传输数据的变量自身描述信息,只需要传递其数值,可以节省传输量和降低处理耗时;允许几种数值类型(整数、小数或可用科学计数法表示的实数)相互混合一起传输,本发明对数值型数据传输具有广泛的通用性,可适用于所有的数值型数据传输场合;在传输过程中对数据进行压缩等中间变换处理,从而可进一步提升传输效率,具有良好的扩展性。
[0014] 在上述技术方案的基础上,本发明还可以做如下改进。
[0015] 进一步,实现步骤S1.3的具体方法为:从多数值字符串中的首个字符开始,依次将每两个字符分为一组得到一个字节,将各个字节中的字符由十六进制编码进行二进制位编码,得到每个字节中包括八个二进制位的字符编码。
[0016] 采用上述进一步方案的有益效果是:能够支持传输数据内容的通用性和可扩展性。
[0017] 进一步,当多数值字符串中字符的个数为奇数时,则在多数值字符串的末尾字符之后添加"\0"并与末尾字符组成最后一个分组。
[0018] 采用上述进一步方案的有益效果是:保证了传输数据的完整性与规范性。
[0019] 进一步,实现步骤S1.4的具体方法为:根据Little-Endian格式以及同组中的字符在多数值字符串中出现的前后顺序将编码后的字符进行排序,出现在前的字符对应字节的高四位,出现在后的字符对应字节的低四位。
[0020] 采用上述进一步方案的有益效果是:降低了处理耗时。
[0021] 进一步,所述预设的分隔符号为ANSI C语言标准下的空格符号。
[0022] 进一步,将数组进行压缩处理前还包括将数组进行加密的步骤。
[0023] 采用上述进一步方案的有益效果是:可以提高数据的安全性。
[0024] 本发明技术上述技术问题的另一技术方案如下:一种批量数值型数据的传输方法,应用于接收终端,包括如下步骤:
[0025] 步骤S2.1:将发送终端发送来的数组进行解压缩处理,从解压缩后的数组中得到分组形式的各个字节,并由各个字节得到编码的字符;
[0026] 步骤S2.2:根据设定的编码规则将各个字节中编码的字符进行解码处理;
[0027] 步骤S2.3:将解码后的字符依次拼接形成各个字符串;
[0028] 步骤S2.4:将各个字符串使用预设的分隔符号进行分隔;
[0029] 步骤S2.5:根据变量类型对分隔后的各个字符串进行解析,还原得到各个变量数值。
[0030] 接收终端接收到发送终端发送来的压缩处理后的数组,根据相同的编码规则进行与发送终端相反的数据处理过程,即可还原得到各个变量数值。
[0031] 在上述技术方案的基础上,本发明还可以做如下改进。
[0032] 进一步,实现步骤S2.2的具体方法为:根据设定的编码规则将每个字节中的八个二进制位的字符编码进行解码处理,还原得到十六进制编码的字符。
[0033] 本发明技术上述技术问题的另一技术方案如下:一种批量数值型数据的发送终端,包括:
[0034] 转换模,用于将待传输的各个变量数值分别用字符串形式表示;
[0035] 第一串连模块,用于将各个字符串串连为一体,并使用预设的分隔符号将每个字符串分隔开,得到多数值字符串;
[0036] 编码模块,用于根据设定的编码规则将所述多数值字符串中的字符进行分组,得到分组形式的各个字节,并对各个字节中的字符进行编码;
[0037] 排序模块,用于根据设定的格式要求将编码后的各个字节中的字符进行排序;
[0038] 压缩模块,用于将排序后的各个字节用数组表示,并将数组进行压缩处理;
[0039] 发送模块,用于将压缩处理后的数组发送至接收终端。
[0040] 根据设定的规则来约定发送和接收双方对变量数值的传输方式,可实现批量传输数据中具有多种不同的数值类型,无需额外传输数据的变量自身描述信息,只需要传递其数值,可以节省传输量和降低处理耗时;允许几种数值类型(整数、小数或可用科学计数法表示的实数)相互混合一起传输,本发明对数值型数据传输具有广泛的通用性,可适用于所有的数值型数据传输场合;在传输过程中对数据进行压缩等中间变换处理,从而可进一步提升传输效率,具有良好的扩展性。
[0041] 在上述技术方案的基础上,本发明还可以做如下改进。
[0042] 进一步,所述编码模块中,从多数值字符串中的首个字符开始,依次将每两个字符分为一组得到一个字节,将各个字节中的字符由十六进制编码进行二进制位编码,得到每个字节中包括八个二进制位的字符编码。
[0043] 能够支持传输数据内容的通用性和可扩展性。
[0044] 本发明技术上述技术问题的另一技术方案如下:一种批量数值型数据的接收终端,包括:
[0045] 解压缩模块,用于将发送终端发送来的数组进行解压缩处理,从解压缩后的数组中得到分组形式的各个字节,并由各个字节得到编码的字符;
[0046] 解码模块,用于根据设定的编码规则将各个字节中编码的字符进行解码处理;
[0047] 第二串连模块,用于将解码后的字符依次拼接形成各个字符串;
[0048] 分隔模块,用于将各个字符串使用预设的分隔符号进行分隔;
[0049] 解析模块,用于根据变量类型对分隔后的各个字符串进行解析,还原得到各个变量数值。附图说明
[0050] 图1为本发明实施例提供的发送终端的批量数值型数据传输方法的方法流程图
[0051] 图2为本发明实施例提供的接收终端的批量数值型数据传输方法的方法流程图;
[0052] 图3为本发明实施例中批量数值型数据的发送终端的模块框图
[0053] 图4为本发明实施例中批量数值型数据的接收终端的模块框图。

具体实施方式

[0054] 以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
[0055] 本发明是为了解决批量数值型数据的高效传输问题,首先明确批量数值型数据的定义:假设有一个变量序列x1,x2,……,xn,其中每个变量xi(1≦i≦n)是一个整数、或者有限小数、或者可以用科学计数法表示的实数,则这个序列就是批量数值型数据。
[0056] 图1为本发明实施例提供的发送终端的批量数值型数据传输方法的方法流程图;
[0057] 如图1所示的一种批量数值型数据的传输方法,应用于发送终端,包括如下步骤:
[0058] 步骤S1.1:将待传输的各个变量数值分别用字符串形式表示;
[0059] 步骤S1.2:将各个字符串串连为一体,并使用预设的分隔符号将每个字符串分隔开,得到多数值字符串;
[0060] 步骤S1.3:根据设定的编码规则将所述多数值字符串中的字符进行分组,得到分组形式的各个字节,并对各个字节中的字符进行编码;
[0061] 步骤S1.4:根据设定的格式要求将编码后的各个字节中的字符进行排序;
[0062] 步骤S1.5:将排序后的各个字节用数组表示,并将数组进行压缩处理;
[0063] 步骤S1.6:将压缩处理后的数组发送至接收终端。
[0064] 该实施例中,步骤S1.4得到的数组的长度刚好为原字符串长度的一半,极大的减少了数据传输量。
[0065] 上述实施例中,根据设定的规则来约定发送和接收双方对变量数值的传输方式,可实现批量传输数据中具有多种不同的数值类型,无需额外传输数据的变量自身描述信息,只需要传递其数值,可以节省传输量和降低处理耗时;允许几种数值类型(整数、小数或可用科学计数法表示的实数)相互混合一起传输,本发明对数值型数据传输具有广泛的通用性,可适用于所有的数值型数据传输场合;在传输过程中对数据进行压缩等中间变换处理,从而可进一步提升传输效率,具有良好的扩展性。
[0066] 可选地,作为本发明的一个实施例,实现步骤S1.3的具体方法为:从多数值字符串中的首个字符开始,依次将每两个字符分为一组得到一个字节,将各个字节中的字符由十六进制编码进行二进制位编码,得到每个字节中包括八个二进制位的字符编码。
[0067] 上述实施例中,能够支持传输数据内容的通用性和可扩展性。
[0068] 可选地,作为本发明的一个实施例,当多数值字符串中字符的个数为奇数时,则在多数值字符串的末尾字符之后添加"\0"并与末尾字符组成最后一个分组。
[0069] 上述实施例中,举例:"0 1 2 3 4 5 6 7 8 9 0 -0.1234567890+123456789.0\0"。
[0070] 上述实施例中,保证了传输数据的完整性与规范性。
[0071] 可选地,作为本发明的一个实施例,实现步骤S1.4的具体方法为:根据Little-Endian格式以及同组中的字符在多数值字符串中出现的前后顺序将编码后的字符进行排序,出现在前的字符对应字节的高四位,出现在后的字符对应字节的低四位。
[0072] 上述实施例中,可以降低处理耗时。
[0073] 具体的,在该实施例中,从字符串第一个字符开始,每两个字符为一组,如果字符串长度为奇数,则最后一个字符后面添加一个"\0"构成最后一组。每一组的两个字符,可以用一个字节紧凑表示,因为总共只有16=2^4种字符,只需要4个二进制位即可表示一个字符,一个字节有8个二进制位,刚好能够容纳一组两个字符的编码。采用Little-Endian格式,对同一组中的两个字符,根据每个字符在原数值字符串中出现的先后顺序(称为“下标”或“索引”),下标较小的字符对应于字节的高四位,下标较大的字符对应于字节的低四位。16种字符的二进制位编码如表一所示:
[0074] 表一:
[0075]字符集 二进制位编码 十六进制编码
\0 0000 0x0
1 0001 0x1
2 0010 0x2
3 0011 0x3
4 0100 0x4
5 0101 0x5
6 0110 0x6
7 0111 0x7
8 1000 0x8
9 1001 0x9
0 1010 0xa
. 1011 0xb
- 1100 0xc
+ 1101 0xd
E 1110 0xe
空格 1111 0xf
[0076] 接收终端进行解码时,参照表一的对应规则进行解码。
[0077] 可选地,作为本发明的一个实施例,所述预设的分隔符号为ANSIC语言标准下的空格符号。
[0078] 可选地,作为本发明的一个实施例,将数组进行压缩处理前还包括将数组进行加密的步骤。
[0079] 上述实施例中,可以提高数据的安全性。
[0080] 图2为本发明实施例提供的接收终端的批量数值型数据传输方法的方法流程图;
[0081] 可选地,作为本发明的另一个实施例,如图2所示,一种批量数值型数据的传输方法,应用于接收终端,包括如下步骤:
[0082] 步骤S2.1:将发送终端发送来的数组进行解压缩处理,从解压缩后的数组中得到分组形式的各个字节,并由各个字节得到编码的字符;
[0083] 步骤S2.2:根据设定的编码规则将各个字节中编码的字符进行解码处理;
[0084] 步骤S2.3:将解码后的字符依次拼接形成各个字符串;
[0085] 步骤S2.4:将各个字符串使用预设的分隔符号进行分隔;
[0086] 步骤S2.5:根据变量类型对分隔后的各个字符串进行解析,还原得到各个变量数值。
[0087] 上述实施例中,接收终端接收到发送终端发送来的压缩处理后的数组,根据相同的编码规则进行与发送终端相反的数据处理过程,即可还原得到各个变量数值。
[0088] 可选地,作为本发明的一个实施例,实现步骤S2.2的具体方法为:根据设定的编码规则将每个字节中的八个二进制位的字符编码进行解码处理,还原得到十六进制编码的字符。
[0089] 图3为本发明实施例中批量数值型数据的发送终端的模块框图;
[0090] 可选地,作为本发明的一个实施例,如图3所示,一种批量数值型数据的发送终端,包括:
[0091] 转换模块,用于将待传输的各个变量数值分别用字符串形式表示;
[0092] 第一串连模块,用于将各个字符串串连为一体,并使用预设的分隔符号将每个字符串分隔开,得到多数值字符串;
[0093] 编码模块,用于根据设定的编码规则将所述多数值字符串中的字符进行分组,得到分组形式的各个字节,并对各个字节中的字符进行编码;
[0094] 排序模块,用于根据设定的格式要求将编码后的各个字节中的字符进行排序;
[0095] 压缩模块,用于将排序后的各个字节用数组表示,并将数组进行压缩处理;
[0096] 发送模块,用于将压缩处理后的数组发送至接收终端。
[0097] 上述实施例中,根据设定的规则来约定发送和接收双方对变量数值的传输方式,可实现批量传输数据中具有多种不同的数值类型,无需额外传输数据的变量自身描述信息,只需要传递其数值,可以节省传输量和降低处理耗时;允许几种数值类型(整数、小数或可用科学计数法表示的实数)相互混合一起传输,本发明对数值型数据传输具有广泛的通用性,可适用于所有的数值型数据传输场合;在传输过程中对数据进行压缩等中间变换处理,从而可进一步提升传输效率,具有良好的扩展性。
[0098] 可选地,作为本发明的一个实施例,所述编码模块中,从多数值字符串中的首个字符开始,依次将每两个字符分为一组得到一个字节,将各个字节中的字符由十六进制编码进行二进制位编码,得到每个字节中包括八个二进制位的字符编码。
[0099] 上述实施例中,能够支持传输数据内容的通用性和可扩展性。
[0100] 图4为本发明实施例中批量数值型数据的接收终端的模块框图;
[0101] 可选地,作为本发明的另一个实施例,如图4所示,一种批量数值型数据的接收终端,包括:
[0102] 解压缩模块,用于将发送终端发送来的数组进行解压缩处理,从解压缩后的数组中得到分组形式的各个字节,并由各个字节得到编码的字符;
[0103] 解码模块,用于根据设定的编码规则将各个字节中编码的字符进行解码处理;
[0104] 第二串连模块,用于将解码后的字符依次拼接形成各个字符串;
[0105] 分隔模块,用于将各个字符串使用预设的分隔符号进行分隔;
[0106] 解析模块,用于根据变量类型对分隔后的各个字符串进行解析,还原得到各个变量数值。
[0107] 本发明根据设定的规则来约定发送和接收双方对变量数值的传输方式,可实现批量传输数据中具有多种不同的数值类型,无需额外传输数据的变量自身描述信息,只需要传递其数值,可以节省传输量和降低处理耗时;允许几种数值类型(整数、小数或可用科学计数法表示的实数)相互混合一起传输,本发明对数值型数据传输具有广泛的通用性,可适用于所有的数值型数据传输场合;在传输过程中对数据进行压缩等中间变换处理,从而可进一步提升传输效率,具有良好的扩展性。
[0108] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈