基于设备虚拟化的低带宽高安全性的数据传输方法转让专利
申请号 : CN202010462154.8
文献号 : CN111741072B
文献日 : 2021-10-12
发明人 : 冯建华 , 顾健华 , 卞涛 , 王昀 , 李国良
申请人 : 清华大学 , 上海卓易科技股份有限公司
摘要 :
权利要求 :
1.一种基于设备虚拟化的低带宽高安全性的数据传输方法,其特征在于,包括以下步骤:
在客户端和服务端设置相同的协议配置文件,以通过所述协议配置文件对传输的数据进行封装或解封装;
当所述客户端获取待传输的目标数据及系统相关配置文件时,将所述目标数据及系统相关配置文件按照所述协议配置文件进行封装,得到二进制流文件,并通过网络传输将所述二进制流文件传输至所述服务端;
利用所述协议配置文件对所述服务端接收到的二进制流文件进行解封装,得到所述目标数据及系统相关配置文件;
其中,所述协议配置文件采用位字节方式对传输的数据进行封装或解封装,包括:将每个字节的最高标识位记为数据标识区,以标识传输的数据的数据区范围;
将所述每个字节的最后三个位记为变量名称区,以对传输的数据的系统变量名和协议变量名进行转换;
将所述最高标识位后面的四个位记为扩展标记区,以对所述变量名称区中的变量名进行扩展或其他标识;
通过对每个字节的不同位进行的标记,对传输的数据进行封装或解封装。
2.根据权利要求1所述的基于设备虚拟化的低带宽高安全性的数据传输方法,其特征在于,所述将每个字节的最高标识位记为数据标识区,以标识传输的数据的数据区范围,包括:
当所述数据标识区取0时,标识所述传输的数据的数据区只有一行;
当所述数据标识区取1时,标识所述传输的数据不止一行且下一行的数据也作为上一行的数据区。
3.根据权利要求1所述的基于设备虚拟化的低带宽高安全性的数据传输方法,其特征在于,所述将所述每个字节的最后三个位记为变量名称区,以对传输的数据的系统变量名和协议变量名进行转换,包括:若传输的数据的类型为正整数,则将所述正整数按照所述正整数的原值转换为二进制;
若传输的数据的类型为负数,则将所述负数通过预设的映射规则转换为正整数,并将映射后得到的正整数转换为二进制;
若传输的数据的类型为浮点数,则将所述浮点数以科学计数法进行转换。
4.根据权利要求3所述的基于设备虚拟化的低带宽高安全性的数据传输方法,其特征在于,通过用户自定义或按照预设映射算法对应映射得到所述预设的映射规则。
5.根据权利要求1所述的基于设备虚拟化的低带宽高安全性的数据传输方法,其特征在于,还包括:
当获取一个字节时,将第一行作为数据名称区,将所述第一行的后一行或多行作为数据区。
6.根据权利要求1所述的基于设备虚拟化的低带宽高安全性的数据传输方法,其特征在于,所述服务端通过所述协议配置文件,按照数据区分割顺序对所述二进制流文件进行解封装,得到所述目标数据及系统相关配置文件,其中,所述数据区分割顺序由扩展标记区对待传输的所述目标数据进行数据区分割后确定。
7.一种非易失性存储介质,其上存储有计算机程序,其特征在于,所述计算机可读指令可被处理器执行时,使所述处理器实现如权利要求1‑6中任一项所述的方法。
8.一种数据传输设备,其特征在于,包括:一个或多个处理器;
非易失性存储介质,用于存储一个或多个计算机可读指令,当所述一个或多个计算机可读指令被所述一个或多个处理器执行时,所述一个或多个处理器实现如权利要求1‑6中任一项所述的方法。
说明书 :
基于设备虚拟化的低带宽高安全性的数据传输方法
技术领域
背景技术
系统永远运行在远端服务器上面,在本地手机只需耗费少量资源的情况下获取更好的体
验。如图1所示,现阶段大体的流程中,在音视频方面各大厂商可以采用封装成常见视屏格
式如:mp4、FLV、AVI等,然后传送再反向解析,也可以采用音频视频流分开传送并分别解析。
如图2所示,在控制方面,本地客户端Client把用户在屏幕上所有的操作打包成xml、Json或
者字节byte的数据通过网络传送到云服务server上注入以达到控制的目的。
递,按照Json(key:value)的数据类型进行封装,封装之后需要39字节的内存大小,如果精
简事件里面的key换成1,2,3,4的形式,那么也是需要花费20字节的内存大小。由此,当所需
要的参数更多Json对象更复杂的时候,过多的key值的存在就会浪费很大一部分数据空间,
造成带宽的浪费。例如,在屏幕上做一小段滑动,从底层上报的event可达到几十次,里面包
含了相当多的重复内容,导致带宽占用高。
都是公共的协议,只要截取了从云服务server发出来的数据,就可以很轻易的还原出当前
用户交互的界面,如图3所示。在音视频方面很容易被解析,在控制方面也一样,例如需要传
送如图4所示的数据时,当前最通用的是Json的格式,在传送过程中把它抓过来解析之后如
图5所示,使得具体的信息均可以在用户交互的界面看到,导致安全性方面不足。
制不够灵活。若用XML传输相关配置时,需要客户端与服务器的解析代码高度一致,若想兼
容则需要更多的逻辑判断才能达到相应的效果,导致版本兼容困难。
发明内容
协议配置文件对传输的数据进行封装或解封装;当所述客户端获取待传输的目标数据及系
统相关配置文件时,将所述目标数据及系统相关配置文件按照所述协议配置文件进行封
装,得到二进制流文件,并通过网络传输将所述二进制流文件传输至所述服务端;利用所述
协议配置文件对所述服务端接收到的二进制流文件进行解封装,得到所述目标数据及系统
相关配置文件。
由扩展标记区对待传输的所述目标数据进行数据区分割后确定。
输的数据进行封装或解封装,保证了通信双方都具有相应的协议配置文件,使得传输数据
时无关语言和硬件,从而提高数据传输过程中的版本兼容性,同时实现了通过二进制方式
进行待传输的目标数据的封装或解封装,从而保证数据传输的安全性。
传输方法。
附图说明
具体实施方式
图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
示例。
计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动
态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除
可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD‑ROM)、
数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或
任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本发明实施例的界定,
计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载
波。
据的封装/解封装过程中,该方法包括以下步骤:
封装或解封装,使得在进行数据传输时无关语言和硬件,从而提高数据传输过程中的版本
兼容性。
输将二进制流文件传输至服务端。
好的协议配置文件进行封装(即打包),封装成二进制以得到二进制流文件,并经过网络传
输将二进制流文件发送至服务端,从而实现对需要传输的目标数据的编码并封装。也就是
说,本申请可以通过预置的协议配置文件将需要传输的视频video流或音频audio流及其控
制状态等参数打包成一个整体的二进制流文件发出无需额外的添加配置项来做设置,使得
需要传输的数据的系统相关配置文件config可以随视频video流或音频audio流一起到达
目的地,从而实现控制的灵活性。
保证了传输的数据的安全性。同时,如图9所示,本申请的数据传输方式能够明显减少数据
的大小,从而达到降低带宽的效果。
协议配置文件对传输的数据进行封装或解封装的过程中,协议配置文件采用位字节的方式
对传输的数据进行封装或解封装,以降低信息的冗余,如图10所示,本申请中的协议配置文
件采用位字节的方式对传输的数据进行封装或解封装,具体包括:
一行;当数据标识区取1时,标识传输的数据不止一行且下一行的数据也作为上一行的数据
区。当一个字节来时,将第一行作为数据名称区,第一行的后一行或多行作为数据区;
000~111只有8个变量名,当需要更多变量名时,可以通过扩展标记区tag来进行扩展,以扩
展到263个变量名;
能被填满则补0。
也可以是按照某一映射算法进行对应映射的。
据进行数据区分割后确定的。例如,因前期的协议配置文件在通信的客户端与服务端均拥
有,那么可以通过扩展标记区Tag把需要传输的目标数据进行数据区分割,如每两行作为一
个数据,按照数据区分割顺序可以在目的地对二进制流文件进行解析,例如,图10中的byte
[14]~byte[20],其中,第一行为数据名称区,下面六行为数据区,每两行代表一个变量名
对应的数据,可用一个字节byte一次性代表三个目标数据。当然,当被解析的二进制流文件
(如,被解析的内容)中没有当前配置时,可以按照最高标识位THFB或者扩展标记区Tag直接
跳过该数据区,以实现对二进制流文件的解封装。
或解封装,保证了通信双方都具有相应的协议配置文件,使得传输数据时无关语言和硬件,
从而提高数据传输过程中的版本兼容性;客户端获取待传输的目标数据及系统相关配置文
件;将目标数据和系统相关配置文件按照协议配置文件进行封装,得到二进制流文件;并通
过网络传输将二进制流文件传输至服务端;服务端通过协议配置文件对二进制流文件进行
解封装,得到目标数据及系统相关配置文件,实现了通过二进制方式进行待传输的目标数
据的封装或解封装,从而保证数据传输的安全性。
执行时,一个或多个处理器实现如上述的数据传输方法。
点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不
必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任
一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技
术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结
合和组合。
隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三
个等,除非另有明确具体的限定。
分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺
序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请
的实施例所属技术领域的技术人员所理解。
指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执
行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设
备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传
输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装
置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电
连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器
(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存
储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的
介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其
他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技
术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离
散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编
程门阵列(FPGA)等。
质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如
果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机
可读取存储介质中。
制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变
型。