CN103491030B - 一种数据处理方法及设备 - Google Patents
一种数据处理方法及设备 Download PDFInfo
- Publication number
- CN103491030B CN103491030B CN201310416434.5A CN201310416434A CN103491030B CN 103491030 B CN103491030 B CN 103491030B CN 201310416434 A CN201310416434 A CN 201310416434A CN 103491030 B CN103491030 B CN 103491030B
- Authority
- CN
- China
- Prior art keywords
- message
- data
- rdp
- data cell
- agreement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种数据处理方法及设备,该方法包括:针对任一远程桌面协议报文,根据该协议报文中的各数据单元与该协议报文所使用的N个虚拟通道的承载对应关系,从该协议报文中拆分提取出M组由同一虚拟通道所承载的数据单元组成且包含的各数据单元之间的排列顺序和该同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的协议子报文;对该M组协议子报文及拆分提取后剩余的协议报文数据单元进行组合,并在对组合后的协议报文进行数据去重处理后将其发送给数据接收设备。在本方案中,通过对远程桌面协议报文进行拆分重组,使得至少一组由同一虚拟通道所承载的数据单元能够组合在一起,达到了提高数据的可去重能力及提高数据的传输速率的目的。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种适用于远程桌面协议的数据处理方法及设备。
背景技术
远程桌面协议,也可称为虚拟桌面协议或云桌面协议,是云计算发展中的极其重要的应用协议,其具有传输数据量大、实时性强以及可远程传输等特点,在无线数据传输技术领域越来越受到人们的重视。
具体地,远程桌面协议,如RDP(Remote Desktop Protocol,远程桌面协议)协议、ICA(Independent Computing Architecture,独立计算结构)协议或SPICE(Simple Protocol for Independent Computing Environment,独立计算环境简单协议)协议等,通常是基于虚拟通道技术来进行相应数据的传输的,即从属于同一数据流的不同类型的数据单元可分别承载在不同的虚拟通道上进行传输,以达到各个虚拟通道所承载的数据互不影响、进而提高各虚拟通道所承载的数据的独立性的目的。
例如,假设基于所述虚拟通道技术的远程桌面协议报文具备A、B、C三种不同类型的数据单元,并且A、B、C三种不同类型的数据单元分别使用a、b、c三种不同的虚拟通道来传输,则所述远程桌面协议报文的数据传输结构示意图可如图1所示,在图1中,A、B、C三种不同类型的数据单元在同一数据流中传输、相互夹杂在一起,但相互隔离、互不影响,从而达到提高各虚拟通道所承载的数据的独立性的目的。
但是,申请人发现,在采用目前常用的DSO(Data Stream Optimization,数据流优化)技术对待传输的远程桌面协议报文进行优化处理,消除待传输远程桌面协议报文中的冗余数据,以便达到减少数据的传输量和存储量、进而提高相应数据的传输速率时,由于远程桌面协议报文是基于虚拟通道技术进行传输的,报文中的各类数据单元在同一条数据流中传输、相互夹杂在一起,且各虚拟通道所承载的数据单元相互隔离、互不影响,因而,会导致数据的重复率较低,降低数据的可去重能力,使得数据优化处理的效果并不佳、进而降低数据的传输效率。
发明内容
本发明实施例提供了一种数据处理方法及设备,以解决远程桌面协议报文去重率低所导致的数据传输效率低下的问题。
第一方面,提供了一种数据处理方法,包括:
接收数据发送设备发送的远程桌面协议报文;
根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组协议子报文;
每一个所述协议子报文由同一虚拟通道所承载的数据单元组成,且所述协议子报文中的各数据单元之间的排列顺序和所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同,所述M、N为大于1的正整数且M不大于N;
对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文,并在对所述组合后的远程桌面协议报文进行数据去重处理后,将其发送给相应的数据接收设备。
结合第一方面,在第一方面的第一种可能的实现方式中,根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组满足设定条件的协议子报文,包括:
根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组分别由所述N个虚拟通道中的M个虚拟通道所承载的数据单元组成的数据单元集合;
针对任一数据单元集合,按照所述远程桌面协议报文中与所述数据单元集合相对应的虚拟通道所承载的各数据单元之间的原始排列顺序,对所述数据单元集合中的各数据单元进行排列组合,得到与所述数据单元集合相对应的协议子报文。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文,包括:
按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
其中,所述M组协议子报文在所述组合后的远程桌面协议报文中的位置按照优先级从高到低或从低到高的顺序排列。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文,包括:
按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
其中,针对任一协议子报文,所述协议子报文中的第一个数据单元在所述远程桌面协议报文中的原始排列顺序越靠前,所述协议子报文在在所述组合后的远程桌面协议报文中的位置越靠前。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述远程桌面协议报文至少包括RDP协议报文、ICA协议报文和SPICE协议报文中的一种或多种。
第二方面,提供了一种数据处理设备,包括:
数据接收模块,用于接收数据发送设备发送的远程桌面协议报文;
数据拆分模块,用于根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组协议子报文,其中,每一个所述协议子报文由同一虚拟通道所承载的数据单元组成,且所述协议子报文中的各数据单元之间的排列顺序和所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同,M为大于等于1的正整数、N为大于1的正整数且M不大于N;
数据组合模块,用于对所述数据拆分模块拆分提取后得到的M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
数据去重模块,用于对所述数据组合模块组合后的远程桌面协议报文进行数据去重处理;
数据发送模块,用于将所述数据去重模块去重处理后的远程桌面协议报文发送给相应的数据接收设备。
结合第二方面,在第二方面的第一种可能的实现方式中,所述数据拆分模块,具体用于根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组分别由所述N个虚拟通道中的M个虚拟通道所承载的数据单元组成的数据单元集合,以及,针对任一数据单元集合,按照所述远程桌面协议报文中与所述数据单元集合相对应的虚拟通道所承载的各数据单元之间的原始排列顺序,对所述数据单元集合中的各数据单元进行排列组合,得到与所述数据单元集合相对应的协议子报文。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述数据组合模块,具体用于按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
其中,所述M组协议子报文在所述组合后的远程桌面协议报文中的位置按照优先级从高到低或从低到高的顺序排列。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述数据组合模块,具体用于按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
其中,针对任一协议子报文,所述协议子报文中的第一个数据单元在所述远程桌面协议报文中的原始排列顺序越靠前,所述协议子报文在所述组合后的远程桌面协议报文中的位置越靠前。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第四种可能的实现方式中,所述数据接收模块接收到的远程桌面协议报文至少包括RDP协议报文、ICA协议报文和SPICE协议报文中的一种或多种。
根据第一方面提供的数据处理方法或第二方面提供的数据处理设备,在接收到数据发送设备发送的远程桌面协议报文后,可从所述远程桌面协议报文中拆分提取出至少一组由同一虚拟通道所承载的数据单元组成、且包含的各数据单元之间的排列顺序和所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的协议子报文,并在对拆分提取出的协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,以及对组合后的远程桌面协议报文进行去重处理后,将其发送给相应的数据接收设备,从而使得至少一组由同一虚拟通道所承载的数据单元能够组合在一起,提高了远程桌面协议报文的数据重复率,进而达到了提高数据的可去重能力及提高数据的传输速率的目的。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1所示为现有技术中所述远程桌面协议报文的数据传输结构示意图;
图2所示为本发明实施例一中所述数据处理方法的流程示意图;
图3(a)所示为本发明实施例一中所述远程桌面协议报文的数据拆分提取过程示意图一;
图3(b)所示为本发明实施例一中所述远程桌面协议报文的数据拆分提取过程示意图二;
图4(a)所示为本发明实施例一中所述远程桌面协议报文的数据处理全过程示意图一;
图4(b)所示为本发明实施例一中所述远程桌面协议报文的数据处理全过程示意图二;
图5所示为本发明实施例二中所述数据处理设备的结构示意图;
图6所示为本发明实施例三中所述数据处理设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例一:
本发明实施例一提供了一种数据处理方法,所述数据处理方法可适用于基于RDP协议、ICA协议或SPICE协议等远程桌面协议的数据传输过程中。具体地,如图2所示,其为本发明实施例一中所述数据处理方法的流程示意图,所述数据处理方法可包括以下步骤:
步骤101:接收数据发送设备发送的远程桌面协议报文。
具体地,所述远程桌面协议报文至少可以包括RDP协议报文、ICA协议报文和SPICE协议报文中的一种或多种,本发明实施例对此不作任何限定。
进一步地,在本发明所述实施例中,各步骤的执行主体通常可以为广域网或局域网等网络内的数据加速设备,如WOC(WAN optimization controller,广域网加速控制器)等设备,本发明实施例对此不作任何限定。
另外需要说明的是,在本发明所述实施例中,所述数据发送设备可以为客户端或服务器等任何具备远程桌面协议报文发送功能的设备,本发明实施例对此也不作任何限定。
步骤102:针对任一远程桌面协议报文,根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组协议子报文,所述M为大于等于1的正整数、N为大于1的正整数且M不大于N。
其中,针对任一协议子报文,所述协议子报文由同一虚拟通道所承载的数据单元组成,且所述协议子报文中的各数据单元之间的排列顺序和所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同。
需要说明的是,在本发明所述实施例中,与现有技术类似,通常可以采用根据所述远程桌面协议报文的报文格式,对所述远程桌面协议报文进行解析的方式,来得到所述远程桌面协议报文当前所使用的虚拟通道的个数N,以及所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系等,本发明实施例对此不作赘述。
具体地,在本步骤102中,根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组满足设定条件的协议子报文,可以包括:
根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组分别由所述N个虚拟通道中的M个虚拟通道所承载的数据单元组成的数据单元集合;
针对任一数据单元集合,按照所述远程桌面协议报文中与所述数据单元集合相对应的虚拟通道所承载的各数据单元之间的原始排列顺序,对所述数据单元集合中的各数据单元进行排列组合,得到与所述数据单元集合相对应的协议子报文。
具体地,假设接收到的所述远程桌面协议报文具备A、B、C三种不同类型的数据单元,并且A、B、C三种不同类型的数据单元分别使用a、b、c三种不同的虚拟通道来传输,则当需要从所述远程桌面协议报文中拆分提取出1组协议子报文时,所述远程桌面协议报文的数据拆分提取过程可如图3(a)所示:
在图3(a)中,所提取出的数据单元集合A或协议子报文A由虚拟通道a所承载的数据单元组成,包括数据单元A1、数据单元A2...以及数据单元AN;并且,所述协议子报文A中的各数据单元,如数据单元A1、数据单元A2...以及数据单元AN等分别按照所述远程桌面协议报文中各数据单元之间的原始排列顺序依次排列,以保证数据传输的正确性。
进一步地,仍假设所述远程桌面协议报文具备A、B、C三种不同类型的数据单元,并且A、B、C三种不同类型的数据单元分别使用a、b、c三种不同的虚拟通道来传输,则当需要从所述远程桌面协议报文中拆分提取出3组协议子报文时,所述远程桌面协议报文的数据拆分提取过程可如图3(b)所示:
在图3(b)中,对所述远程桌面协议报文进行数据拆分提取后,最终所得到的数据单元集合或协议子报文的个数为3,其中,协议子报文A包括依次连续排列的数据单元A1、数据单元A2...以及数据单元AN,协议子报文B包括依次连续排列的数据单元B1、数据单元B2…以及数据单元BN,协议子报文C包括依次连续排列的数据单元C1、数据单元C2…以及数据单元CN。
步骤103:对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文。
具体地,在本步骤103中,可按照以下方式对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合:
方式一:按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文。
其中,所述M组协议子报文在所述组合后的远程桌面协议报文中的位置按照优先级从高到低或从低到高的顺序排列,也就是说,针对任一协议子报文,所述协议子报文所具备的优先级越高,所述协议子报文在所述组合后的远程桌面协议报文中的位置越靠前或越靠后。
需要说明的是,在本发明所述实施例中,通常来说,针对任一协议子报文,所述协议子报文所对应的虚拟通道的优先级越高,所述协议子报文所具备的优先级也越高。
方式二:按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文。
其中,针对任一协议子报文,所述协议子报文中的第一个数据单元在所述远程桌面协议报文中的原始排列顺序越靠前,所述协议子报文在所述组合后的远程桌面协议报文中的位置越靠前。
需要说明的是,在本发明所述实施例中,在不改变同一虚拟通道所承载的各数据单元之间的原始排列顺序的前提下,还可以按照其他方式,如随机排列方式对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,本发明实施例对此不作任何限定。较优地,为了提高数据的传输效率和传输效果,在本发明所述实施例中,通常采用方式一的方式对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合。
具体地,假设所述远程桌面协议报文具备A、B、C三种不同类型的数据单元,并且A、B、C三种不同类型的数据单元分别使用a、b、c三种不同的虚拟通道来传输,则当需要从所述远程桌面协议报文中拆分提取出1组由虚拟通道a所承载的数据单元组成的协议子报文时,所对应的远程桌面协议报文的数据处理全过程可如图4(a)所示:
具体地,在此种情况下,由于拆分提取出的协议子报文仅有1组,并不涉及到多组协议子报文相互之间的位置先后顺序等,因此,在对所述协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合时,只要保证组合后的同一虚拟通道所承载的各数据单元之间的排列顺序与其相应的原始排列顺序相同即可。
具体地,在图4(a)中,可将拆分提取出的协议子报文A组合在拆分提取后剩余的远程桌面协议报文数据单元所组成的数据块之前,其中,所述协议子报文A中的各数据单元,如数据单元A1、数据单元A2...以及数据单元AN等分别按照所述远程桌面协议报文中各数据单元之间的原始排列顺序依次排列,在保证数据传输的正确性的前提下,使得属于同一数据类型A的数据单元能够排列在一起,从而在一定程度上达到了提高数据的重复率以及数据的可去重能力的效果。
需要说明的是,在本发明所述实施例中,所拆分提取出的满足设定条件的协议子报文的个数越多,所能够达到的数据可去重能力越佳。例如,当从所述远程桌面协议报文中拆分提取出的协议子报文的个数与所述远程桌面协议报文所使用的虚拟通道的个数相同时,由于此时拆分提取后所剩余的远程桌面协议报文数据单元将为空,因此,可达到对所述远程桌面协议报文中的各属于同一类型的数据单元均进行重组的效果,从而可在最大程度上提高数据的重复性以及数据的可去重能力。
具体地,仍假设所述远程桌面协议报文具备A、B、C三种不同类型的数据单元,并且A、B、C三种不同类型的数据单元分别使用a、b、c三种不同的虚拟通道来传输,则当从所述远程桌面协议报文中拆分提取出的协议子报文的个数与所述远程桌面协议报文所使用的虚拟通道的个数相同,并且采用方式二的方式对拆分提取出的协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合时,所对应的远程桌面协议报文的数据处理全过程可如图4(b)所示:
在图4(b)中,属于同一类型的各数据单元相互之间依次连续排列,并且各不同类型的数据单元依次排列组合为同一数据流,如所拆分提取出的协议子报文A、协议子报文B以及协议子报文C相互依次连续排列,并且协议子报文A包括依次连续排列的数据单元A1、数据单元A2、...以及数据单元AN,协议子报文B包括依次连续排列的数据单元B1、数据单元B2、…以及数据单元BN,协议子报文C包括依次连续排列的数据单元C1、数据单元C2、…以及数据单元CN,从而最大程度地达到了提高数据的重复率以及数据的可去重能力的效果。
步骤104:对所述组合后的远程桌面协议报文进行数据去重处理,并将数据去重处理后的远程桌面协议报文发送给相应的数据接收设备。
具体地,在接收到所述组合后的远程桌面协议报文后,可按照现有技术中采用的数据去重处理技术对所述组合后的远程桌面协议报文进行去重处理;具体地,可在靠近数据发送设备的一端对所述组合后的远程桌面协议报文进行编码操作,并在靠近数据接收设备的一端对所述编码后的远程桌面协议报文进行解码操作,以此来完成所述组合后的远程桌面协议报文的去重处理;进一步地,当发现N个重复的数据单元时,仅传输或存储所述N个重复的数据单元中一个数据单元,并将其他冗余的数据单元用相应的索引进行替代,以便达到减少数据的传输量和存储量、进而提高数据的传输速率的目的。
另外需要说明的是,在本发明所述实施例中,所述数据接收设备可以为客户端或服务器等任何具备远程桌面协议报文接收功能的设备,本发明实施例对此不作任何限定。
本发明实施例一提供了一种数据处理方法,在接收到数据发送设备发送的远程桌面协议报文后,可根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的多个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出至少一组由同一虚拟通道所承载的数据单元组成、且包含的各数据单元之间的排列顺序和所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的协议子报文,并在对拆分提取出的协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,以及对组合后的远程桌面协议报文进行去重处理后,将其发送给相应的数据接收设备,从而使得接收到的远程桌面协议报文中的至少一组由同一虚拟通道所承载的数据单元能够组合在一起,提高了远程桌面协议报文的数据重复率,进而达到了提高数据的可去重能力以及提高数据的传输速率的目的。
实施例二:
本发明实施例二提供了一种可用于实现本发明实施例一所示方法的数据处理设备,如图5所示,其为本发明实施例二中所述数据处理设备的结构示意图,其中,所述数据处理设备可为广域网或局域网等网络内的数据加速设备,如WOC等设备,本发明实施例对此不作任何限定。
具体地,所述数据处理设备可以包括数据接收模块11、数据拆分模块12、数据组合模块13、数据去重模块14以及数据发送模块15,其中:
所述数据接收模块11用于接收数据发送设备发送的远程桌面协议报文;具体地,所述数据接收模块11所接收到的远程桌面协议报文至少可以包括RDP协议报文、ICA协议报文和SPICE协议报文中的一种或多种,本发明实施例对此不作任何限定。
所述数据拆分模块12用于针对任一远程桌面协议报文,根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组协议子报文,其中,针对任一协议子报文,所述协议子报文由同一虚拟通道所承载的数据单元组成,且所述协议子报文中的各数据单元之间的排列顺序和所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同,M为大于等于1的正整数、N为大于1的正整数且M不大于N。
所述数据组合模块13用于对所述数据拆分模块12拆分提取后得到的M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文。
所述数据去重模块14用于对所述数据组合模块13组合后的远程桌面协议报文进行数据去重处理。
所述数据发送模块15用于将所述数据去重模块14去重处理后的远程桌面协议报文发送给相应的数据接收设备。
具体地,所述数据拆分模块12可用于根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组分别由所述N个虚拟通道中的M个虚拟通道所承载的数据单元组成的数据单元集合,以及,针对任一数据单元集合,按照所述远程桌面协议报文中与所述数据单元集合相对应的虚拟通道所承载的各数据单元之间的原始排列顺序,对所述数据单元集合中的各数据单元进行排列组合,得到与所述数据单元集合相对应的协议子报文。
进一步地,所述数据组合模块13可用于按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;其中,所述M组协议子报文在所述组合后的远程桌面协议报文中的位置可按照优先级从高到低或从低到高的顺序排列,也就是说,针对任一协议子报文,所述协议子报文所具备的优先级越高,所述协议子报文在所述组合后的远程桌面协议报文中的位置越靠前或越靠后。
或者,所述数据组合模块13还可用于按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;其中,针对任一协议子报文,所述协议子报文中的第一个数据单元在所述远程桌面协议报文中的原始排列顺序越靠前,所述协议子报文在所述组合后的远程桌面协议报文中的位置越靠前。
需要说明的是,在本发明所述实施例中,在不改变同一虚拟通道所承载的各数据单元之间的原始排列顺序的前提下,所述数据组合模块13还可以按照其他方式,如随机排列方式对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,本发明实施例对此不作任何限定。
本发明实施例二提供了一种数据处理设备,在接收到数据发送设备发送的远程桌面协议报文后,所述数据处理设备可根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的多个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出至少一组由同一虚拟通道所承载的数据单元组成、且包含的各数据单元之间的排列顺序和所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的协议子报文,并在对拆分提取出的协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,以及对组合后的远程桌面协议报文进行去重处理后,将其发送给相应的数据接收设备,从而使得接收到的远程桌面协议报文中的至少一组由同一虚拟通道所承载的数据单元能够组合在一起,提高了远程桌面协议报文的数据重复率,进而达到了提高数据的可去重能力以及提高数据的传输速率的目的。
实施例三:
本发明实施例三提供了一种可用于实现本发明实施例一所示方法的数据处理设备,如图6所示,其为本发明实施例三中所述数据处理设备的结构示意图,为了便于说明,仅示出了与本发明实施例三相关的部分,具体技术细节未揭示的,请参照图2所示的本发明实施例。
具体地,所述数据处理设备可为广域网或局域网等网络内的数据加速设备,如WOC等设备,本发明实施例对此不作任何限定;具体地,本发明实施例三以所述数据处理设备为WOC为例进行说明,图6示出的是与本发明实施例三相关的WOC20的部分结构的框图。
如图6所示,所述WOC20包括:接收器21、处理器22以及发送器23等部件。本领域技术人员可以理解,图6中示出的WOC的结构并不构成对WOC的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,本发明实施例对此不作任何限定。
下面结合图6对所述WOC20的各个构成部件进行具体的介绍:
所述接收器21可用于接收数据发送设备发送的远程桌面协议报文;具体地,所述接收器21所接收到的远程桌面协议报文至少可以包括RDP协议报文、ICA协议报文和SPICE协议报文中的一种或多种,本发明实施例对此不作任何限定。
所述处理器22可用于针对任一远程桌面协议报文,根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组协议子报文,以及,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文,并对所述组合后的远程桌面协议报文进行数据去重处理。
其中,针对任一协议子报文,所述协议子报文由同一虚拟通道所承载的数据单元组成,且所述协议子报文中的各数据单元之间的排列顺序和所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同,M为大于等于1的正整数、N为大于1的正整数且M不大于N。
所述发送器23可用于将所述处理器22去重处理后的远程桌面协议报文发送给相应的数据接收设备。
具体地,所述处理器22可用于采用以下方式从所述远程桌面协议报文中拆分提取出M组协议子报文:
根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组分别由所述N个虚拟通道中的M个虚拟通道所承载的数据单元组成的数据单元集合,以及,针对任一数据单元集合,按照所述远程桌面协议报文中与所述数据单元集合相对应的虚拟通道所承载的各数据单元之间的原始排列顺序,对所述数据单元集合中的各数据单元进行排列组合,得到与所述数据单元集合相对应的协议子报文。
进一步地,在从所述远程桌面协议报文中拆分提取出M组协议子报文之后,所述处理器22可用于按照以下方式对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文:
方式一:按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文。
其中,所述M组协议子报文在所述组合后的远程桌面协议报文中的位置可按照优先级从高到低或从低到高的顺序排列,也就是说,针对任一协议子报文,所述协议子报文所具备的优先级越高,所述协议子报文在所述组合后的远程桌面协议报文中的位置越靠前或越靠后。
方式二:按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文。
其中,针对任一协议子报文,所述协议子报文中的第一个数据单元在所述远程桌面协议报文中的原始排列顺序越靠前,所述协议子报文在所述组合后的远程桌面协议报文中的位置越靠前。
需要说明的是,在本发明所述实施例中,在不改变同一虚拟通道所承载的各数据单元之间的原始排列顺序的前提下,所述处理器22还可以按照其他方式,如随机排列方式对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,本发明实施例对此不作任何限定。
进一步地,在得到所述组合后的远程桌面协议报文后,所述处理器22还可按照现有技术中采用的数据去重处理技术对所述组合后的远程桌面协议报文进行去重处理,如可在靠近数据发送设备的一端对所述组合后的远程桌面协议报文进行编码操作,并在靠近数据接收设备的一端对所述编码后的远程桌面协议报文进行解码操作,以此来完成所述组合后的远程桌面协议报文的去重处理,本发明实施例对此不再赘述。
本发明实施例三提供了一种数据处理设备,在接收到数据发送设备发送的远程桌面协议报文后,所述数据处理设备可根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的多个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出至少一组由同一虚拟通道所承载的数据单元组成、且包含的各数据单元之间的排列顺序和所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的协议子报文,并在对拆分提取出的协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,以及对组合后的远程桌面协议报文进行去重处理后,将其发送给相应的数据接收设备,从而使得接收到的远程桌面协议报文中的至少一组由同一虚拟通道所承载的数据单元能够组合在一起,提高了远程桌面协议报文的数据重复率,进而达到了提高数据的可去重能力以及提高数据的传输速率的目的。
本领域技术人员应明白,本发明的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
接收数据发送设备发送的远程桌面协议报文;
根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组协议子报文;
其中,每一个所述协议子报文由同一虚拟通道所承载的数据单元组成,且所述协议子报文中的各数据单元之间的排列顺序和所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同,M为大于等于1的正整数、N为大于1的正整数且M不大于N;
对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文,并在对所述组合后的远程桌面协议报文进行数据去重处理后,将其发送给相应的数据接收设备。
2.如权利要求1所述的数据处理方法,其特征在于,根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组协议子报文,包括:
根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组数据单元集合,其中,所述M组数据单元集合与所述N个虚拟通道中的M个虚拟通道一一对应,且,每组数据单元集合由所述N个虚拟通道中的、与该数据单元集合相对应的1个虚拟通道所承载的数据单元组成;
针对任一数据单元集合,按照所述远程桌面协议报文中与所述数据单元集合相对应的虚拟通道所承载的各数据单元之间的原始排列顺序,对所述数据单元集合中的各数据单元进行排列组合,得到与所述数据单元集合相对应的协议子报文。
3.如权利要求1或2任一所述的数据处理方法,其特征在于,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文,包括:
按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
其中,所述M组协议子报文在所述组合后的远程桌面协议报文中的位置按照优先级从高到低或从低到高的顺序排列。
4.如权利要求1或2任一所述的数据处理方法,其特征在于,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文,包括:
按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
其中,针对任一协议子报文,所述协议子报文中的第一个数据单元在所述远程桌面协议报文中的原始排列顺序越靠前,所述协议子报文在所述组合后的远程桌面协议报文中的位置越靠前。
5.如权利要求1或2任一所述的数据处理方法,其特征在于,所述远程桌面协议报文至少包括远程桌面协议RDP协议报文、独立计算结构ICA协议报文和独立计算环境简单协议SPICE协议报文中的一种或多种。
6.一种数据处理设备,其特征在于,包括:
数据接收模块,用于接收数据发送设备发送的远程桌面协议报文;
数据拆分模块,用于根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组协议子报文,其中,每一个所述协议子报文由同一虚拟通道所承载的数据单元组成,且所述协议子报文中的各数据单元之间的排列顺序和所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同,M为大于等于1的正整数、N为大于1的正整数且M不大于N;
数据组合模块,用于对所述数据拆分模块拆分提取后得到的M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
数据去重模块,用于对所述数据组合模块组合后的远程桌面协议报文进行数据去重处理;
数据发送模块,用于将所述数据去重模块去重处理后的远程桌面协议报文发送给相应的数据接收设备。
7.如权利要求6所述的数据处理设备,其特征在于,
所述数据拆分模块,具体用于根据所述远程桌面协议报文中的各数据单元与所述远程桌面协议报文所使用的N个虚拟通道的承载对应关系,从所述远程桌面协议报文中拆分提取出M组数据单元集合,其中,所述M组数据单元集合与所述N个虚拟通道中的M个虚拟通道一一对应,且,每组数据单元集合由所述N个虚拟通道中的、与该数据单元集合相对应的1个虚拟通道所承载的数据单元组成,以及,针对任一数据单元集合,按照所述远程桌面协议报文中与所述数据单元集合相对应的虚拟通道所承载的各数据单元之间的原始排列顺序,对所述数据单元集合中的各数据单元进行排列组合,得到与所述数据单元集合相对应的协议子报文。
8.如权利要求6或7任一所述的数据处理设备,其特征在于,
所述数据组合模块,具体用于按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
其中,所述M组协议子报文在所述组合后的远程桌面协议报文中的位置按照优先级从高到低或从低到高的顺序排列。
9.如权利要求6或7任一所述的数据处理设备,其特征在于,
所述数据组合模块,具体用于按照组合后的由同一虚拟通道所承载的各数据单元之间的排列顺序与所述远程桌面协议报文中所述同一虚拟通道所承载的各数据单元之间的原始排列顺序相同的原则,对所述M组协议子报文以及拆分提取后剩余的远程桌面协议报文数据单元进行组合,得到组合后的远程桌面协议报文;
其中,针对任一协议子报文,所述协议子报文中的第一个数据单元在所述远程桌面协议报文中的原始排列顺序越靠前,所述协议子报文在所述组合后的远程桌面协议报文中的位置越靠前。
10.如权利要求6或7任一所述的数据处理设备,其特征在于,
所述数据接收模块接收到的远程桌面协议报文至少包括远程桌面协议RDP协议报文、独立计算结构ICA协议报文和独立计算环境简单协议SPICE协议报文中的一种或多种。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310416434.5A CN103491030B (zh) | 2013-09-12 | 2013-09-12 | 一种数据处理方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310416434.5A CN103491030B (zh) | 2013-09-12 | 2013-09-12 | 一种数据处理方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103491030A CN103491030A (zh) | 2014-01-01 |
CN103491030B true CN103491030B (zh) | 2016-10-05 |
Family
ID=49830999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310416434.5A Active CN103491030B (zh) | 2013-09-12 | 2013-09-12 | 一种数据处理方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103491030B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105577617B (zh) * | 2014-10-15 | 2019-05-10 | 中国电信股份有限公司 | 一种客户端、终端设备、宿主机、文件传输系统及方法 |
CN106209954B (zh) * | 2015-05-08 | 2019-08-13 | 中国科学院声学研究所 | 一种rdp明文数据解析方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783937A (zh) * | 2008-12-18 | 2010-07-21 | 威睿公司 | 利用嵌入式编码像素测量远程视频回放性能 |
CN101964798A (zh) * | 2010-10-15 | 2011-02-02 | 德讯科技股份有限公司 | 基于远程桌面协议的多图形协议统一代理系统 |
CN102541555A (zh) * | 2011-12-27 | 2012-07-04 | 福建升腾资讯有限公司 | 一种使用api拦截方式实现远程桌面视频流畅播放的方法 |
CN102986189A (zh) * | 2010-05-09 | 2013-03-20 | 思杰系统有限公司 | 用于为对应于虚通道的网络连接分配服务等级的系统和方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7676549B2 (en) * | 2005-05-27 | 2010-03-09 | Microsoft Corporation | Techniques for providing accessibility options in remote terminal sessions |
-
2013
- 2013-09-12 CN CN201310416434.5A patent/CN103491030B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783937A (zh) * | 2008-12-18 | 2010-07-21 | 威睿公司 | 利用嵌入式编码像素测量远程视频回放性能 |
CN102986189A (zh) * | 2010-05-09 | 2013-03-20 | 思杰系统有限公司 | 用于为对应于虚通道的网络连接分配服务等级的系统和方法 |
CN101964798A (zh) * | 2010-10-15 | 2011-02-02 | 德讯科技股份有限公司 | 基于远程桌面协议的多图形协议统一代理系统 |
CN102541555A (zh) * | 2011-12-27 | 2012-07-04 | 福建升腾资讯有限公司 | 一种使用api拦截方式实现远程桌面视频流畅播放的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103491030A (zh) | 2014-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103428226A (zh) | 一种用户态与内核通信的方法与系统 | |
CN103716056B (zh) | 数据压缩方法、数据解压缩方法和设备 | |
CN103926592B (zh) | 一种北斗rd通信虚拟指挥机的实现方法 | |
CN104348862B (zh) | 数据迁移处理方法、装置及系统 | |
CN103677968B (zh) | 事务处理方法、事务协调器装置、事务参与者装置及系统 | |
CN104731899A (zh) | 一种基于异步处理的数据高并发处理方法 | |
CN103491030B (zh) | 一种数据处理方法及设备 | |
CN107391516B (zh) | 公交站点聚合方法及装置 | |
CN106776014A (zh) | 异构计算中的并行加速方法及系统 | |
CN104965810A (zh) | 多核模式下快速处理数据报文的方法及装置 | |
CN106790347A (zh) | 一种基于netty的大规模并发数据转发方法 | |
CN106803841A (zh) | 消息队列数据的读取方法、装置及分布式数据存储系统 | |
CN110502337A (zh) | 针对Hadoop MapReduce中混洗阶段的优化系统及方法 | |
CN103634385A (zh) | 一种数据同步系统、方法及服务器 | |
CN103840871A (zh) | 无线网络中三维模型拓扑数据鲁棒传输的编码和重构方法 | |
CN105117401A (zh) | 一种并行传输图片的方法、装置及系统 | |
CN106354581B (zh) | 一种循环冗余校验方法以及多核处理器 | |
CN104079368B (zh) | 一种应用软件的测试数据传输方法及服务器 | |
CN102999518B (zh) | 一种图形设备接口资源管理方法和装置 | |
CN106254420B (zh) | 一种跨域通讯方法及装置 | |
CN107070955A (zh) | 一种电力系统数据的传输方法及装置 | |
CN102420764A (zh) | 一种链路建立方法及设备 | |
CN103258016B (zh) | 数据传输方法及系统 | |
CN106803826B (zh) | 一种数据摆渡装置和方法 | |
CN104572316A (zh) | 游戏程序与运行平台交互的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |