用于压缩设备与解压缩设备探索及握手的系统和方法

文档序号:8945723阅读:296来源:国知局
用于压缩设备与解压缩设备探索及握手的系统和方法
【专利说明】用于压缩设备与解压缩设备探索及握手的系统和方法
[0001]本申请要求2014年I月10日提交的美国临时专利申请N0.61/926,158的优先权,以上申请的内容以引用方式全文并入于此。
技术领域
[0002]本发明涉及数据压缩与解压缩技术领域,特别涉及含冗余的数据压缩与解压缩。
【背景技术】
[0003]通常通过计算机网络或在存储设备之间通过I/O(输入/输出)界面转存海量数据。例如,用户可将整个主目录从硬盘驱动器转存至非易失性存储器(如闪存驱动器)以对硬盘驱动器进行定期备份,或者可通过因特网转存大文档文件。转存数据可包括冗余数据,即接收者已经处理的数据,例如,用户在闪存驱动器上生成硬盘驱动器定期备份的情况下,将要传输至闪存驱动器的备份数据通常包括闪存驱动器中已经存在的数据。同样地,用户通过因特网转存文档文件的情况下,用户可从网络源(如一个服务器)下载文件、修正该文件并将该文件上传回该网络源,如果该文档文件未完全修正,上传文件版本和下载文件版本之间亦可存在公用数据。传输同时存储于源和目标地的冗余数据会导致I/o界面及因特网带宽的低效利用。现有压缩与解压缩方法未能利用这种数据冗余的优势,因为在千兆字节到兆兆字节数据存储上定位冗余数据通常被认为费时且低效益。
[0004]因此,需要一种于大型数据中高效、高概率地查找冗余数据的技术,该技术可最小化冗余数据的传输并可提高I/O界面以及因特网有限带宽的利用。另外,一個可使用上述技术在网络上来传输冗余数据的设备,还需要一种技术用以探索和确认另一能恢复该冗余数据的设备,并同该设备交换信息,以便于传输该冗余数据。

【发明内容】

[0005]本发明实施方式的附加方面及优点在以下说明书中给出并清楚描述,或从本发明实施方式的实施中得到。
[0006]根据一些实施方式,一种装置包括存储历史数据的存储器,以及至少一个处理器,该至少一个处理器设置成接收输入数据或一个或多个令牌,其中,该一个或多个令牌包含反映所述输入数据与所述历史数据之间关系的一个或多个引用令牌;以及传输第一消息至接收设备以启动一个或多个令牌的传输和/或接收。该装置进一步设置成从所述接收设备中获取第二消息以确认所述接收设备有能力处理和/或传输所述一个或多个令牌;以及响应于所述接收设备有能力处理和/或传输所述一个或多个令牌的确认,从所述接收设备中获取配置信息用于生成一个或多个令牌。该装置进一步设置成响应于所述配置信息的获取,传输所述一个或多个令牌至所述接收设备。根据一些实施方式,该装置进一步设置成响应于接收第二消息,判定资源是否可在所述装置上分配用于所述一个或多个令牌的传输。该装置还设置成响应于判定资源可在所述装置上分配,传输所述一个或多个令牌。
[0007]根据一些实施方式,所述第一消息包括第一指示符,该第一指示符设置成指示所述装置被设置成传输所述一个或多个令牌。在一些实施方式中,所述第二消息包含第二指示符,该第二指示符指示所述接收设备有能力处理所述一个或多个令牌。在一些实施方式中,所述配置信息包含第一识别码,该第一识别码设置成唯一识别所述接收设备。在一些实施方式中,所述配置信息包含用于一个或多个第二识别码的生成的第一信息,该一个或多个第二识别码设置成识别所述历史数据的一个或多个部分,该第二识别码包含在所述一个或多个令牌中以表达所述一个或多个令牌与所述历史数据之间的关系。
[0008]根据一些实施方式,所述第一消息以及所述第二消息在TCP/IP下分别被传输与接收,其中,所述第一消息为SYN包,所述第二消息为SYN+ACK包。在一些实施方式中,所述第一消息包含TCP报头和IP报头,该IP报头包含识别域,该TCP报头包含窗口域,所述识别域存储第一值,所述窗口域存储第二值,其中,所述第一及第二值的组合设置成指示所述装置被设置成传输和/或处理所述令牌。在一些实施方式中,所述配置信息同样以一个或多个TCP包传输。
[0009]根据一些实施方式,一种用于处理数据的计算机执行的方法包括:从存储器中接收历史数据;接收输入数据或一个或多个令牌,其中该一个或多个令牌包含反映所述输入数据与所述历史数据之间关系的一个或多个引用令牌;以及传输第一消息至接收设备以启动一个或多个令牌的传输和/或接收。该方法进一步包括:从所述接收设备中获取第二消息以确认所述接收设备有能力处理和/或传输所述一个或多个令牌;响应于所述接收设备有能力处理和/或传输所述一个或多个令牌的确认,从所述接收设备中获取配置信息用于生成一个或多个令牌;以及响应于所述配置信息的获取,传输所述一个或多个令牌至所述接收设备。
【附图说明】
[0010]体现本发明申请实施例的附图的参考说明,其中:
[0011]图1示出本发明的实施方式中的示例网络系统的框图。
[0012]图2示出本发明的实施方式中的示例系统的框图。
[0013]图3A-3C示出根据本发明的实施方式的便于历史数据查找的示例数据结构的框图。
[0014]图4A示出根据本发明的实施方式的示例压缩模块的框图。
[0015]图4B示出根据本发明的实施方式的示例解压缩模块的框图。
[0016]图5A-5B示出根据本发明的实施方式,与用于传输压缩数据的设备探索、确认并握手的示例方法的流程图。
[0017]图6A-6B示出根据本发明的实施方式,用于传输压缩数据的示例IPv4报头和TCP报头的框图。
【具体实施方式】
[0018]下面结合附图对本发明的【具体实施方式】进行详细描述,不论何时,同样的引用数字在整个附图中用于表示相同或相近的特征。
[0019]实施方式的描述仅为示例性描述,并不起限定作用。为描述目的,本发明和权利要求书中引用数字“第一”、“第二”以及“第三”,本领域的普通技术人员应当理解,它们不表示或不是指“特定的第一”、“特定的第二”或“特定的第三”。
[0020]根据一些实施方式,此中描述的运算、技术和/或要素可通过电子设备实现,该电子设备可包含一个或多个特殊用途计算设备。这些计算设备之间可以为硬连接以执行此中描述的运算、技术和/或要素;或可包含数字电子设备,例如:一个或多个特定用途集成电路(ASICs)或可现场编程门阵列(FPGAs),它们持续运行以执行此中描述的运算、技术和/或要素;或可包含一个或多个硬件处理器,运行该硬件处理器根据固件、存储器、其他存储件或他们的组合中的程序指令执行本发明的这些特征。这些特殊用途计算设备亦可将定制硬连接逻辑、特定用途集成电路或可现场编程门阵列与定制程序联合来完成本发明的技术和其他特征。特殊用途计算设备可以为台式计算机系统、手提计算机系统、手持设备、网络设备或并入硬连接和/或程序逻辑以实现本发明的技术或其他特征的任何其他设备。
[0021]—个或多个特殊用途计算设备通常可被运算系统软件控制或协调,例如因特网操作系统、安卓、黑莓、谷歌操作系统、Windows XP、Windows Vista、Windows 7、Windows 8、Windows 服务器、Windows CE、Unix、Linux、SunOS、Solaris、VxWorks 或其他兼容操作系统。在其他实施方式中,计算设备可被专用操作系统控制。操作系统控制安排计算机执行过程,执行存储管理,提供文件系统、网络化及1/0/服务,并在其他项中为用户提供界面功能,例如:图形用户界面(GUI)。
[0022]图1示出实施方式描述中使用的示例系统100的框图。如图1所示,系统100包含第一计算机系统110、网络130以及第二计算机系统140。第一计算机系统110包含一个或多个处理器112、存储器114、存储设备116以及网络界面118,所有这些部件可通过总线120相互通信,第一计算机系统110可通过网络130与第二计算机系统140交换数据。第二计算机系统140也包含一个或多个处理器142、存储器144、存储设备146以及网络界面148,所有这些部件可通过总线150相互通信。
[0023]存储器114和144均可为用于存储分别由处理器112和142执行的信息和指令的随机存取存储器(RAM)或其他非易失性存储设备,存储器114和144还可用来在处理器112和142执行指令时存储临时参数或其他中间信息。在被存储于可访问处理器112和142的非临时性存储媒介(例如存储设备116和146)后,这些指令使计算机系统110和140成为定制执行指令指定运算的特殊用途机器。这些指令可组织成不
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1