首页> 中国专利> 数据转发存储中的拆卸/重新组装

数据转发存储中的拆卸/重新组装

摘要

用于数据转发存储中的拆卸/重新组装的方法和装置。一种方法,包括:从源系统接收用于存储数据的请求,拆卸数据,将拆卸后的数据导向计算机存储器,并且在互连的计算机系统节点的网络中逐计算机存储器地持续转发拆卸后的数据,而不存储在该网络中的任何物理存储设备上。所述持续转发包括:基于一个或多个因素来确定可用于接收拆卸后的数据的节点的地址;向源系统发送消息,该消息带有供请求者转发拆卸后的数据的具体节点的地址;检测在具体节点的存储器中是否存在拆卸后的数据;以及将拆卸后的数据转发给在互连的计算机系统节点的网络中的节点的另一计算机存储器,而不存储在任何物理存储设备上。

著录项

  • 公开/公告号CN102203763A

    专利类型发明专利

  • 公开/公告日2011-09-28

    原文格式PDF

  • 申请/专利权人 塔吉特枢转让有限责任公司;

    申请/专利号CN200980138535.2

  • 发明设计人 吉恩·费恩;爱德华·麦里特;

    申请日2009-09-25

  • 分类号G06F15/167;

  • 代理机构北京东方亿思知识产权代理有限责任公司;

  • 代理人宋鹤

  • 地址 美国特拉华州

  • 入库时间 2023-12-18 03:13:16

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-09-10

    未缴年费专利权终止 IPC(主分类):G06F15/167 授权公告日:20140514 终止日期:20180925 申请日:20090925

    专利权的终止

  • 2014-05-14

    授权

    授权

  • 2011-11-23

    实质审查的生效 IPC(主分类):G06F15/167 申请日:20090925

    实质审查的生效

  • 2011-09-28

    公开

    公开

说明书

背景技术

这里所公开的至少一些实施例涉及数据存储,并且更具体地,涉及数据转发存储中的拆卸/重新组装(disassembly/reassembly)。

个人、组织机构、商业公司和政府必须存储的数据量每一年都在增长。除了跟上需求以外,组织机构还面临其它的存储挑战。伴随着向在线的实时商务和管理的转移,必须保护重要的数据不会由于软件或硬件故障而丢失或不可访问。目前,许多存储产品并不提供完全的故障保护,并且使得用户有丢失数据或不可使用数据的风险。例如,目前市场上的许多存储解决方案提供针对某些故障模式(例如,处理器故障)但是不针对其它故障模式(例如,光盘驱动器故障)的保护。许多组织机构有由于它们的数据存储系统中的组件故障而丢失数据或不可使用数据的风险。

数据存储市场通常被划分为两个主要部分,即,直接附加存储(DAS)和网络存储。DAS包括与服务器直接连接的盘。

网络存储包括附加到网络而不是特定服务器并因此可以被该网络上的其它设备和应用访问和共享的盘。网络存储通常被划分成两个部分,即,存储区域网络(SAN)和网络附加存储(NAS)。

SAN是代表广大用户网络来将不同类型的数据存储设备与相关联的数据服务器互连的高速专用网络(或子网)。通常,SAN是企业的整个计算资源网络的一部分。存储区域网络通常聚集在其它计算资源附近,但也可以通过广域网(WAN)承载技术扩展到远程位置以用于备份和档案存储。

NAS是这样的硬盘存储,其被建立有自己的网络地址而不是被附加到向网络的工作站用户提供应用的本地计算机。通过从本发明服务器移除存储访问及其管理,应用程序和文件两者都可以被更快地提供,这是因为应用程序和文件不竞争同一处理器资源。NAS被附加到局域网(通常,以太网)并被指派IP地址。文件请求被主服务器映射到NAS文件服务器。

以上所有存储都以多于一种方式共有一个共同的、可能是致命弱点的特征,即,数据被存储在物理介质(例如,光盘驱动器、CD驱动器等)上。

发明内容

本发明提供用于数据转发存储中的拆卸/重新组装的方法和装置,包括计算机程序产品。

一般地,根据一个方面,本发明的特征在于一种方法,所述方法包括:从源系统接收用于存储数据的请求;拆卸所述数据;将拆卸后的数据导向计算机存储器;以及在所述互连的计算机系统节点的网络中逐计算机存储器地持续转发所述拆卸后的数据,而不存储在所述网络中的任何物理存储设备上。所述持续转发包括:基于一个或多个因素来确定可用于接收所述拆卸后的数据的节点的地址;向所述源系统发送消息,所述消息带有供请求者转发所述拆卸后的数据的具体节点的地址;检测在所述具体节点的存储器中是否存在所述拆卸后的数据;以及将所述拆卸后的数据转发给在所述互连的计算机系统节点的网络中的节点的另一计算机存储器,而不存储在任何物理存储设备上。

根据另一个方面,本发明的特征在于一种网络,所述网络包括一组互连的计算机系统节点,每个计算机系统节点响应于来自请求系统的用于存储数据的请求,接收拆卸后的数据并且将所述拆卸后的数据逐计算机存储器地持续转发而不存储在任何物理存储设备上,并且响应于来自所述请求系统的用于取回数据的请求,取回正被逐计算机存储器地持续转发的拆卸后的数据,每个节点还被配置成检测在其存储器中是否存在拆卸后的数据,应用时间戳,并根据节点的可用性将所述拆卸后的数据转发给所述互连的计算机系统节点中的另一节点的计算机存储器。

以下,将在附图和说明书中阐述本发明的一个或多个实现方式的细节。本发明的更多特征、方面和优点将从说明书、附图和权利要求中显而易见。

附图说明

这些实施例是以示例而非限制方式在附图中的示图中说明的,附图中,类似的标号表示类似的元素。

图1是示例性系统的框图。

图2是示例性用户系统的框图。

图3是示例性网络系统的框图。

图4是处理的流程图。

图5是处理的流程图。

具体实施方式

与使用短暂停留(transient)方式的数据转发使得数据最终被存储在诸如光盘驱动器之类的物理介质上的对等网络不同,本发明是持续冗余数据转发系统,即数据被从一个节点存储器向另一节点存储器地持续转发。

如图1中所示,示例性系统10包括用户系统12和许多网络系统14、16、18、20、22。可以认为网络系统14、16、18、20、22中的每一个是系统10中的一个节点并且可以指定一个这样的网络系统作为中央服务器,例如网络系统14,该网络系统可以担任系统10中的控制角色。网络系统14、16、18、20、22中的每一个可以被建立为在中央服务器14的直接控制下被专用地控制的对等端(peer)的网络。对等的节点也可以是专用节点和公用节点的混合,并且因此可以不受中央服务器14的直接物理控制下。系统10也可以是完全公用的,其中,中央服务器14(或多个服务器)对任一对等节点都没有直接的拥有权或直接的物理控制权。

作为受专用控制的网络,用户可以免费访问对等节点或者通过订阅服务或其它配置进行付费访问。在混合环境中,即,在具有专用节点和公用节点的组合的网络中,中央服务器14可以指示数据要被转发到专用网络还是公用网络。在一个示例中,中央服务器14识别数据的类型并且根据所识别的类型将数据转发给专用网络或公用网络。例如,表示视频或音频文件的数据可以被发送至公用网络,而表示文档(例如,MicrosoftWord文档)可以被发送至专用网络。

在另一示例中,中央服务器14使得用户能够选择用户所拥有的数据将被转发到哪里,即,转发到专用网络还是公用网络。

在一个示例中,可以认为节点14、16、18、20和22是专用网络。在专用网络中,管理员控制这些节点并且可以指定哪个节点是中央服务器。系统10也可以包括一个或多个另外的节点。例如,节点24、26和28。可以认为这些节点24、26和28是管理员对其有很少的控制权或几乎没有控制权的一个或多个公用网络的部分。

如图2中所示,用户系统12可以包括处理器30、存储器32和输入/输出(I/O)设备34。存储器32可以包括操作系统(OS)36,例如Linux、AppleOS或Windows一个或多个应用处理38和存储处理100(以下详细描述)。应用处理38可以包括用户生产力软件,例如OpenOffice或者MicrosoftOffice。I/O设备34可以包括用于显示给用户42的图形用户界面(GUI)40。

如图3中所示,每个网络系统(例如网络系统14)都可以包括处理器50和存储器52。存储器52可以包括OS 54(例如,Linux、AppleOS或Windows)和数据转发处理200(以下详细描述)。

在传统的系统中,应用处理38需要存储和取回(retrieve)数据。在这些传统系统中,数据被存储在本地的或远程的物理设备上,并且用来提供冗余的数据拷贝被本地地存储或被存储在诸如光盘驱动器之类的远程物理存储设备上。并且在某些系统中,该数据可以被划分成不同数据段或数据包并被本地或远程地存储在物理存储介质上。使用固定的物理数据存储设备增加了成本、维护、管理并且生成数据的固定物理记录,而不论这是否是用户42所希望的。

本发明不使用固定的物理数据存储装置来存储数据并且不使用物理数据存储装置来提供数据冗余。当中央服务器14接收到来自存储处理100的存储数据的请求时,数据被中央服务器14拆卸并导向系统10中的节点,在该节点处,数据随后通过每个网络节点中的数据转发处理200在系统10中被逐节点存储器地持续转发而不存储在诸如光盘驱动器之类的任何物理存储介质上。被转发的拆卸后的数据在系统10中任一节点的存储器中仅驻留非常短的时间段。拆卸后的数据(和重新组装的数据)不被存储在任何网络节点中的任何物理存储介质上。

如上所述,中央服务器14可以将拆卸后的数据导向专用网络,和公用网络,或专用网络和公用网络的组合。并且如上所述,请求者可以向中央服务器14指示一种特定类型的数据被导向专用网络而另一种特定类型的数据被导向公用网络。转发到公用网络可能要求请求者为订阅付费。中央服务器14也可以在拆卸之前分析将要转发的数据并且例如根据类型或请求者的偏好来将数据发送给专用网络或公用网络。

当中央服务器14接收到来自存储处理100的取回数据的请求时,正在系统10中被逐节点存储器地转发的被请求数据、数据分段(fragment)或数据包被取回,并且在必要时被重新组装。

以这种方式转发的数据可以被分段成被如上所述地转发的文件分段或数据包和片段(segment)。分段后的数据仍然不被存储在任何网络节点中的任何物理存储介质上,而是只被从一个节点的存储器向另一个节点的存储器转发。

如图4中所示,存储处理100包括向中央服务器14发送(102)存储数据或取回数据的请求。如果请求是取回数据请求,则在组成所请求的数据的数据包或文件分段的重新组装之后,存储处理100从网络中的节点或中央服务器14接收所请求的数据。

如果给中央服务器14的请求是存储数据请求,则存储处理100从中央服务器14接收(104)节点的地址。存储处理100将数据分段(105)成数据包或文件片段并且将分段或文件片段(即,拆卸后的数据)转发(106)给由接收到的地址所表示的节点存储器。

如图5中所示,数据转发处理200包括接收(202)存储数据或取回数据的请求。如果接收到的请求是存储数据的请求,则数据转发处理200将数据拆卸(203)成数据包或文件片段,并且确定(204)可用于在存储器中接收数据的节点的地址。该确定(204)可以包括对网络进行乒(ping)操作并且确定网络中的哪个节点可用或者确定网络中的哪个节点具有最小流量,或者确定网络中的哪个节点具有最大可用存储,或者这些或其它因素的任何组合。

处理200向用户系统发送(206)消息,所述消息带有供请求者转发拆卸后的数据的具体节点的地址。

处理200检测(208)节点存储器中是否存在拆卸后的数据。处理200将存储器中的拆卸后的数据转发(210)给节点网络中的另一节点,并且继续重复拆卸后的数据的检测(208)和拆卸后的数据的逐节点存储器的转发(210)。当拆卸后的数据到达任何节点存储器中时,处理200可以向拆卸后的数据附加(212)时间戳。

转发(210)可以包括对网络中的节点进行乒操作来确定网络中的哪个节点可用,或确定网络中的哪个节点具有最小流量,或确定网络中的哪个节点具有最大可用存储,或这些或其它因素的任何组合。

在一个特定示例中,在进入节点时,拆卸后的数据经历与节点或中央服务器14或用户的加密“握手”。这可以是可以使用公钥-私钥的公用的或专用的加密系统,例如,Cashmere系统。Cashmere解耦(decouple)加密的转发路径和消息净荷,这提高了性能,因为源仅需要对每个使用目的地的唯一公钥的消息执行单个公钥加密。这具有如下益处:只有真正的目的地节点才将能够解密消息净荷,而不是相应的中继组中的每个节点都将能够解密消息净荷。Cashmere提供这样的能力:目的地可以在不知道源的身份的情况下发送匿名答复消息。这是以类似的方式完成的,其中源创建答复路径并以与转发路径类似的方式加密该答复路径。

在另一示例中,利用其它路由方案。

如果接收到的请求是取回正被逐节点存储器地持续转发的拆卸后的数据的请求,则数据转发处理200在中央服务器14处使用散列标示或其它唯一代码进行匹配(214),其中散列标示或其它唯一代码可以在拆卸后的数据进入节点时经由加密握手被节点“嗅到”。这可以通过对网络中的节点进行乒操作而发生。处理200向中央服务器14相信其中将有可能出现拆卸后的数据的节点状态或节点发送(216)将拆卸后的数据在重新组装(217)后直接返回给用户的消息。中央服务器14可以将其要乒向的节点状态限制得越窄,则取回将变得越高效并且如下的非必要消息传送流量对节点造成的负担会越小,所述非必要消息传送流量对于中央服务器14和能够转发拆卸后的数据的节点之间的业务而言是不必要的。

在正确的节点接收到用于转发节点存储器中的拆卸后的数据的消息后,处理200重新组装(217)拆卸后的数据并将节点存储器中的重新组装后的数据转发(218)给请求者,并且转发(220)重新组装后的数据已被发送给用户的确认消息。该路由消息可以被直接发送给中央服务器14或者可以经由网络10中的其它(一个或多个)节点或(一个或多个)超节点被传递给中央服务器14或多个服务器。在用户接收到所请求的重新组装后的数据时,用户的应用自动发挥作用以向中央服务器14回应(ping)所请求的重新组装后的数据已被接收到。因此,网络10在没有将数据缓存、下载和/或存储到任何物理存储介质上的情况下创建数据存储。数据存储和管理是经由数据的逐节点存储器的持续路由来完成的,所转发的数据仅在用户从网络10请求将数据返回给用户时被下载。

新的节点和节点状态可以基于性能被添加到网络10和/或从网络10删除。用户可以有权访问所有节点或者可以被(一个或多个)中央服务器或经由专用、公用的或专用公用网络的特定体系架构被划分到某些节点或“节点状态”。

各个节点、节点状态和超节点也可以是公用或专用网络中的外联网对等端、无线网络对等端、卫星对等节点、Wi-Fi对等节点、宽带网络等。在采用了相同的安全系统以及适合于严格的特定部署的客户解决方案(例如用于无线对等端的无线加密方案等等)的情况下,对等节点或用户可以从任何有效的对等点开始用作网络10中的路由参与方。

在处理200中,不是将数据缓存或保持在远程服务器、硬盘驱动器或其它固定存储介质中,而是,数据被逐节点存储器地传递、路由、转发。在经授权的用户调用数据之前,数据从来不会被下载。该系统上的用户可以授权多于一个的用户有权访问数据。

处理200中的主要目标是生成这样的数据存储和管理系统,其中,数据从来不被固定在物理存储装置中,而是实际上,在网络中被逐节点存储器地持续路由/转发。数据被转发到的节点的路径也可以被中央服务器14更改,以针对系统能力进行调节并且消除冗余的数据路径,没有该特征,这些冗余的数据路径可能由于数据路径的增大的可能性而减弱网络的安全性。

本发明可以被执行来实现以下优点中的一个或多个。网络创建数据存储而不缓存或下载。数据存储和管理是经由数据的不断路由来完成的。

本发明的实施例可以以数字电路或计算机硬件、固件、软件中或者在它们的组合的形式实现。本发明的实施例可以被实现为计算机程序产品或者被实现为计算机程序产品以供数据处理设备运行或控制数据处理设备的操作,所述计算机程序产品即被有形地包含在信息载体中(例如在机器可读存储装置中或传播信号中)的计算机程序,所述数据处理设备例如是可编程处理器、计算机或多个计算机。计算机程序可以以任何形式的编程语言(包括汇编语言或解译语言)来编写,并且其可以以任何形式来部署,这些形式包括作为单独的程序或作为模块、组件、子例程或适于在计算环境中使用的其他单元。计算机程序可以被部署为在一个地点或跨越多个地点并通过通信网络互联的一个计算机或多个计算机上执行。

本发明实施例的方法步骤可以由一个或多个可编程处理器执行,所述一个或多个可编程处理器执行计算机程序以通过对输入数据进行运算并生成输出来执行本发明的功能。方法步骤也可以由专用逻辑电路执行,并且本发明的装置可以实现为专用逻辑电路,所述专用逻辑电路例如是FPGA

(现场可编程门阵列)或ASIC(专用集成电路)。

适合于计算机程序的执行的处理器例如包括通用和专用微处理器,以及任何类型的数字计算机的一个或多个处理器。一般地,处理器将从只读存储器或随机存取存储器或这两者接收指令和数据。计算机的必要元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。一般地,计算机也将包括用于存储数据的一个或多个大容量存储设备,或可操作地耦合到用于存储数据的一个或多个大容量存储设备以从其接收数据或向其传送数据,或者既包括又与之耦合,这些存储设备例如是磁盘、磁光盘或光盘。适于包含计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,例如包括半导体存储装置,例如EPROM、EEPROM和闪存装置;磁盘,例如内部硬盘或可移除光盘;磁光盘;以及CD ROM和DVD-ROM盘。这些处理器和存储器可以用专用逻辑电路补充或结合在专用逻辑电路中。

可以理解,以上描述意图说明而非限制本发明的范围,本发明的范围由所附权利要求限定。其它实施例在以下权利要求书的范围以内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号