CN103098070B - 用于监视网络服务中数据位置的方法、装置和系统 - Google Patents

用于监视网络服务中数据位置的方法、装置和系统 Download PDF

Info

Publication number
CN103098070B
CN103098070B CN201080069066.6A CN201080069066A CN103098070B CN 103098070 B CN103098070 B CN 103098070B CN 201080069066 A CN201080069066 A CN 201080069066A CN 103098070 B CN103098070 B CN 103098070B
Authority
CN
China
Prior art keywords
service element
data set
record
network service
network
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.)
Expired - Fee Related
Application number
CN201080069066.6A
Other languages
English (en)
Other versions
CN103098070A (zh
Inventor
M·布兰特
S·皮尔逊
S·辛加尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN103098070A publication Critical patent/CN103098070A/zh
Application granted granted Critical
Publication of CN103098070B publication Critical patent/CN103098070B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2111Location-sensitive, e.g. geographical location, GPS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Environmental & Geological Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

在一个实施例中,在网络服务的网络服务元件处接收数据集,生成用于所述数据集的位置记录,将该位置记录发送到网络服务中的位置注册表以监视网络服务中的所述数据集的位置。网络服务元件可操作地耦合到通信链路。基于数据集的一部分和与所述网络服务元件相关联的加密密钥生成位置记录。位置记录唯一地识别数据集在网络服务元件处的存在。

Description

用于监视网络服务中数据位置的方法、装置和系统
背景技术
基于需求,弹性和/或动态网络服务能提供灵活的数据处理和/或数据存储。这种服务允许用户按需访问计算资源和/或存储资源,和/或仅为访问过的计算资源和/或存储资源进行支付。另外,这种服务通常分布和驻留(host)在多个地理位置的物理计算资源处(例如,计算机服务器)。此外,这种服务的实施细节对于用户来说通常是不透明的。
因此,一般情况下用户不知道或者不控制用户数据在服务中的哪个物理计算资源处进行存储和/或处理。而是,例如,基于系统的当前负载或使用、驻留服务的物理计算资源的定期维护、服务内检测到的误差或失败条件和/或其它因素,服务通常确定数据应该在哪个物理计算资源处进行处理和/或存储。因此,这种系统的用户通常不能确定用户的数据存储于哪个地理位置,或者限制用户的数据到达或者来自一个或多个地理位置。
附图说明
图1为根据实施例的存储与数据集的存储相关的信息的过程的流程图。
图2为根据实施例的位置记录的图示。
图3为根据实施例的包括位置记录组的位置注册表的图示。
图4为根据实施例的包括网络服务的系统的示意性框图。
图5为根据实施例的计算设备的示意性框图。
图6为根据实施例的注册模块的图示。
图7为根据实施例的管理与数据集相关的位置信息的过程的流程图。
图8为根据实施例的与在包括网络服务的系统内的数据集相关的位置信息的通信流的示意性框图。
图9为根据实施例的与在图8的包括网络服务的系统内的数据集相关的位置信息的另一通信流的示意性框图。
图10为根据实施例的向客户端设备提供与数据集相关的位置信息的过程的流程图。
图11为根据实施例的位置注册簿的图示。
图12为根据实施例的在图8的包括网络服务的系统内的位置注册簿的通信流的示意性框图。
图13为根据实施例的与在图8的包括网络服务的系统内的数据集相关的位置信息的另一通信流的示意性框图。
具体实施方式
可以经由通信链路将数据发送到计算设备(例如,数据中心内的计算机服务器),该计算设备远离所述数据的所有者或管理人以用于存储和/或处理以及由所有者或管理人经由通信链路进行访问。因此,可以经由通信链路将数据存储和数据处理当作网络服务提供。一些网络服务能够在多个计算机服务器和/或数据中心进行分布。这种分布式网络服务例如可以是驻留在多个计算机服务器处的服务或应用(例如,数据存储服务或数据处理服务),其可作为单个网络服务经由通信链路(例如,计算机网络)被逻辑地访问。这种网络服务可被称作云服务。
例如,位于一个城市的企业经由互联网发送数据到网络服务以进行存储。网络服务驻留于不同城市、州或国家的数据中心内的一个或多个计算机服务器上。驻留网络服务的每个计算机服务器被称为网络服务元件。可替换地,网络服务可以是驻留在多个数据中心内的多个网络服务元件处的分布式网络服务,每个数据中心位于不同的城市、州或国家。因此,数据可以存储在一个或多个不同的物理位置处(即,在一个或多个数据中心的多个网络服务元件处)。另外,网络服务的实施通常对企业来说是不透明的,从而该企业不控制和/或不知道数据的精确物理位置或地理位置(例如,在哪个数据中心内的哪个计算机服务器)。相反,企业能够逻辑地存储和访问数据。也就是说,企业能够经由与网络服务有关而不是与数据的物理位置有关的逻辑标识符(例如,统一资源标识符(URI))来存储和访问数据。因此,因为企业访问与网络服务逻辑上相关而不是与数据的物理位置物理上相关的数据,所以能够在多个位置处(即,数据中心或单个数据中心内的计算机服务器)冗余地存储数据,和/或在网络服务中各个位置处(即,数据中心或单个数据中心内的计算机服务器)移动(或转移)数据,而不影响企业存储或访问数据的能力。
网络服务在多个网络服务元件处冗余地存储数据以及在网络服务元件间转移数据的能力,有利于避免数据丢失并能简化网络服务元件的更换和/或修理。例如,网络服务能够将数据从第一网络服务元件转移到第二网络元件,以允许维护第一网络服务元件。另外,网络服务能响应于网络服务的负载(或使用),而将数据从一个网络服务元件转移到另一网络服务元件。此外,对数据的冗余存储能防止数据例如由于驻留数据的网络服务元件的物理损坏而丢失。
然而,网络服务的数据冗余和/或数据转移属性使得对网络服务内数据物理位置的跟踪和审核变得复杂。例如,网络服务的用户(例如,上例中的企业)通常不能确定物理位置(即,驻留数据的网络服务元件的物理位置)。因此,用户不能独立地跟踪服务内数据的存储或移动。此外,虽然使用了一些安全措施(例如,安全或加密的通信链路和/或诸如用户名和密码的凭证)来存储或访问网络服务内的数据,但是这种网络服务没有安全地记录和/或存储与数据的过去和当前物理位置相关的位置信息。因此,用户不能确定网络服务内数据的当前位置,或者审核网络服务内数据的先前位置。
虽然处理和/或存储数据的物理(或地理)位置对于这种网络系统的有些用户而言是不重要的,但是到某些物理位置或来自这些位置的有些数据集受法律、法规、合同和/或其它限制制约并被要求符合这些限制(例如,通过法律和/或合同义务)以可审核(例如,可跟踪)。因此,对数据转移没有施加限制且不包括审核(例如,跟踪)能力的网络系统对具有这种限制的数据集而言是没有用的。
本文所讨论的实施例能够注册(或记录)分布式网络服务中的数据位置。此外,本文所讨论的实施例能够向分布式网络服务的客户端(或用户)提供:分布式网络服务中数据的当前位置,以及包括分布式网络服务中数据的一组先前位置的标识符的注册簿(例如,诸如历史日志或审核日志的日志)。在本文中使用的术语“网络服务”一般指的是包括分布式网络服务的任意网络服务。
在一个实施例中,网络服务提供基于需求的数据存储。换句话说,网络服务的客户端或用户能向网络服务发送数据,并且网络服务在网络服务的网络服务元件可访问的数据存储器处存储数据,对客户端能存储于网络服务处的数据的量没有预定限制。网络服务在多个网络服务元件处(即,在多个网络服务元件可访问的数据存储器处)冗余地存储网络服务中的数据。此外,为了负载均衡网络服务,并且响应于网络服务中检测到的误差或者潜在失败条件,网络服务自主地(例如,不依赖网络服务的管理者的直接控制)在网络服务元件中转移数据。例如,网络服务能够包括控制器,该控制器监视网络服务中的网络服务元件的负载和误差条件,并向网络服务元件发送数据转移命令。
另外,网络服务包括注册模块,用于存储关于网络服务的网络服务元件的信息。注册模块可以是关于网络服务内的网络服务元件的信息的目录或中央存储库(repository)。每个网络服务元件可以向注册模块注册,并提供与网络服务元件的操作状态相关的信息。例如,网络服务元件能够向注册模块提供注册信息,例如数字证书(例如,包括公钥和由一些权威机构签名或加密的网络服务元件的标识符的文件)或者一些其它凭证,以认证网络服务元件的身份,并声称网络服务元件在网络服务中是可操作且可用的。向注册模块注册的网络服务元件可以被称为注册网络服务元件。
网络服务元件还能向注册模块提供与网络服务元件的操作状态(或者状态信息)相关的信息,例如驻留在网络服务元件处的软件模块的摘要(例如,加密散列值)。这种信息允许注册模块或者其它计算设备确定网络服务元件是否处于预期的操作状态。例如,通过比较摘要和先前确定(例如,根据预期版本的软件模块计算出的)的摘要,注册模块能验证网络服务元件正在执行特定版本的软件模块。
网络服务元件的注册信息和状态信息能一起限定网络服务中的可信关系。也就是说,如果网络服务元件提供认证网络服务元件的身份的注册信息和/或验证特定软件模块驻留在网络服务元件处的状态信息,则注册模块能假设网络服务元件是可信的(即,网络服务元件将按预期运行和/或为打算成为的网络服务元件)。这种网络服务元件可被称为可信网络服务元件。
除了注册信息和状态信息,注册模块可以包括与网络服务的网络服务元件的位置相关的信息。例如,网络服务元件能发送与网络服务元件的物理位置(例如城市、州和/或国家)的位置相关的信息(或者位置信息)。注册模块能存储位置信息与网络服务元件的标识符,以确定网络服务元件的位置。此外,网络服务的客户端能规定:由网络服务从所述客户端处接收到的数据仅能存储在规定位置;或者这种数据不能存储于特定位置。这种限制被称为位置许可。在将数据集发送到网络存储元件之前,基于存储于注册模块处的位置许可和位置信息,网络服务能确定该数据集是否能存储于所述网络存储元件中。
当网络服务的客户端经由通信链路将数据集(例如,文件)传送到网络服务以进行存储时,网络服务将数据集转发到一个或多个网络服务元件以进行存储。接收到数据集的每个网络服务元件生成位置记录,以说明(或者记录或写明)所述数据集存在于(或存储于)所述网络服务元件。例如,位置记录能包括以在网络服务元件处生成的网络服务的私钥加密的数据集的摘要。另外,位置记录能包括数据值、时间值、网络服务元件的标识符、数据集的标识符(例如,唯一识别数据集的标识符),和/或与数据集存储于所述网络服务元件相关的一些其它信息。此外,也能通过网络服务元件的私钥对一个或多个这种额外值或者信息进行加密。
然后,网络服务元件向网络服务的位置注册表发送位置记录。位置注册表可以是用于由网络服务中的网络服务元件生成的位置记录的存储库。因此,能够维护说明数据集存在于网络服务元件处的位置记录。
除了向位置注册表发送位置记录,网络服务元件向客户端发送位置记录。客户端接收位置记录并将位置记录作为数据集存储在网络服务内的网络服务元件处的接收而存储。此外,客户端能向网络服务元件或注册模块请求包括网络服务元件的公钥的数字证书。如上所述,数字证书能用于认证网络服务元件的身份,并且公钥能用于对位置记录的利用网络服务元件的私钥加密的部分进行解密。因此,客户端能确认(例如,验证或证实)网络服务元件的身份,并能访问存储于位置记录处的加密信息。
如上所述,网络服务能在受制于存储在注册模块处用于数据集的位置许可的网络服务元件中转移数据。如上所述,每次当将数据从源网络服务元件转移到目标网络服务元件时,为目标网络服务元件生成位置记录并发送到位置注册表。还能够将位置记录发送到客户端。因此,位置注册表包括用于已经存储有数据集的每个网络存储元件的位置记录。换句话说,位置注册表能跟踪网络服务中的数据集的移动和存储。此外,因为是使用与注册模块处存储的数字证书相关联的网络服务元件的私钥对位置记录进行加密的,所以能证实每个位置记录由特定网络服务元件生成。此外,网络服务能相信:基于在用于网络服务元件的注册模块处存储的状态信息,通过适当操作网络服务元件(例如,高度相信网络服务元件未驻留恶意软件)来生成位置记录。
客户端能向位置注册表请求位置记录,以验证或审核数据集存储在网络服务中。例如,客户端能请求位置注册簿(例如,历史或审核日志),其包括由在网络服务中存储数据集的网络服务元件生成的位置记录。响应于这种请求,位置注册表将与存储在位置注册表的数据集相关的一组位置记录聚集到位置注册簿中(例如,历史或审核日志),并将所述位置注册簿发送给客户端。因此,客户端能审核在网络服务中已经存储数据集的位置。此外,因为网络服务通过注册模块中网络服务元件的位置许可和位置信息限制数据集的转移,所以客户端能限制网络服务中数据集的移动。
如在该说明书中使用的,除非上下文明确指出,否则单数形式的“一(a)”、“一(an)”和“所述”包括复数指示物。因此,例如,术语“网络服务元件”意图表示一个或多个网络服务元件或者网络服务元件的结合。另外,如本文所使用的,术语“模块”指的是电路和/或存储于存储器中并在处理器处进行执行或解译的软件、固件、程序、机器或处理器可读指令、命令或代码。
图1为根据实施例的存储与数据集的存储相关的信息的过程的流程图。过程100可以被实施为硬件模块和/或软件模块。例如,过程100能被实施为专用电路,或实施为包括存储于存储器中并在与存储器通信的处理器处执行的指令的软件模块。在方框110处接收数据集。数据集可以是例如文件、目录、数据流、数据块和/或任意量子数据的任意数据组。例如,数据集可以是经由分组交换通信链路接收到的数据分组。
在方框110处接收到的数据集随后在方框120处被用于生成位置记录。位置记录是与数据集存在于或存储于网络服务元件处相关的信息。换种说法即,位置记录说明数据集存在于诸如网络服务元件的计算设备处。图2为根据实施例的位置记录的图示。如图2所示,位置记录200包括多个数据域和/或数据值。位置记录包括加密签名210、设备标识符220、设备状态标识符230以及数据集标识符240。加密签名210包括数据集摘要214和可信标识符215。数据集摘要214是数据集相关或验证数据集的值。例如,数据集摘要214可以是根据在网络存储元件处接收到数据集生成的加密散列值。可信标识符215是网络服务中可信网络服务元件的标识符。换句话说,可信标识符215能识别网络服务中的网络服务元件。利用例如网络服务元件的公钥对数据集摘要214和可信标识符215进行加密,以生成加密签名210。在一些实施例中,利用对称加密密钥对数据集摘要214和可信标识符215进行加密,以生成加密签名210。可替换地,未加密的数据集摘要214和可信标识符215能包含于位置记录200中。
位置记录200还包括设备标识符220。设备标识符220是生成位置记录200的设备的标识符。例如,设备标识符220与可信标识符215是相同的,但是未加密。设备标识符220还可以是例如网络服务元件的硬件标识符(例如,介质存取控制(MAC)地址)的另外的标识符。设备标识符220对于识别加密密钥和/或加密算法以对加密签名210进行解密是有用的。
设备状态标识符230包括与生成位置记录200的网络服务元件的操作状态相关的信息。换句话说,设备状态标识符230可以是状态信息。也就是,设备状态标识符230可以是驻留于网络服务元件处的软件模块的摘要(例如,加密散列值)。例如,设备状态标识符230可以是驻留在网络服务元件处的操作系统或虚拟机的摘要。因此,在设备状态标识符230中,位置记录200可以包括在据以生成数据集摘要214的数据集存储于所述网络服务元件时生成位置记录200的网络服务元件的操作状态的证明。
数据集标识符240是识别据以生成数据集摘要214的数据集的值。例如,数据集标识符240可以包括诸如唯一识别数据集的摘要或加密散列值的标识符。数据集标识符240还可以包括诸如数据集的URI(例如自向网络服务发送数据集的客户端的客户端标识符导出的URI)和数据集的客户端规定名称的标识符。在一些实施例中,数据集标识符240可以与数据集摘要214是相同的,但是未加密。因此,能够确定与位置记录200相关的数据集,而无需对加密签名210进行解密。
在一些实施例中,位置记录200可以包括比图2所示的更多或更少的域或数据值。例如,可以从位置记录200排除一个或多个设备标识符220、设备状态标识符230以及数据集标识符240。作为具体的例子,可以从位置记录200排除设备状态标识符230和数据集标识符240并且对加密签名210进行解密,以确定与哪个数据集位置记录200相关。类似地,可以从加密签名210排除可信标识符215。例如,设备标识符220能包括在位置记录200中,并且可信标识符能从加密签名210排除。
参照图1,通过对在方框110处接收到的数据集应用例如加密散列函数的摘要函数以生成数据集摘要,在方框120处生成位置记录。然后结合数据集摘要和在方框110处接收数据集的网络服务元件的标识符以生成位置记录。例如,可以对数据集摘要和在方框110处接收数据集的网络服务元件的标识符进行加密,以生成与数据集存储在网络服务元件处相关的加密签名。换句话说,加密签名是具有数据集摘要的数据集存储在具有包含于加密签名的标识符的网络服务元件处的证明。在一些实施例中,位置记录能包括例如设备标识符、设备状态标识符、数据集标识符、与生成位置记录的网络服务元件的物理位置相关的位置信息的额外的域或值,和/或与数据集或存储数据集的网络服务元件相关的其它域或值。
在于方框120处生成位置记录后,在方框130处向位置注册表提供(例如,经由通信链路传送)位置记录。位置注册表是用于在网络服务中存储位置记录的数据库或其它数据存储或存储服务。图3为根据实施例的包括位置记录组的位置注册表的图示。位置注册表300包括三组位置记录。位置记录310、311和312是与第一数据集相关的位置记录。位置记录320、321和322是与第二数据集相关的位置记录。位置记录330、331和332是与第三数据集相关的位置记录。可将位置记录310、311、312、320、321、322、330、331和332作为文件、作为关系数据库中的条目存储在一个或多个可扩展标记语言(XML)的一个或多个元素内,或者作为存储在位置注册表300内。
例如,位置记录310、311和312可以存储为位置注册表300的一个目录中的文件;位置记录320、321和322可以存储为位置注册表300的不同目录中的文件;而位置记录330、331和332可以存储为位置注册表300的又一目录中的文件。作为另一个例子,位置记录310、311和312可以存储为位置注册表300的XML文件中元素的子元素;位置记录320、321和322可以存储为XML文件中不同元素的子元素;而位置记录330、331和332可以存储为XML文件中又一元素的子元素。在一些实施例中,位置记录310、311、312、320、321、322、330、331和332能存储在数据库的单个表中,而不基于每个位置记录310、311、312、320、321、322、330、331和332相关的数据集对位置记录310、311、312、320、321、322、330、331和332进行分组。换句话说,位置记录310、311、312、320、321、322、330、331和332能单独存储,而不考虑对位置记录310、311、312、320、321、322、330、331和332进行分组。
在一些实施例中,位置注册表能存储或跟踪网络服务内的数据集的当前位置。因此,能访问位置注册表以确定网络服务内的数据集的当前位置(即,确定数据集当前存储于哪个网络服务元件处)。例如,可以布置与数据集的存储相关的一组位置记录,使得表示数据集的当前存储(即,当前存储数据集的网络服务元件处的数据集的存储)的位置记录能首先位于分组中。换句话说,位置记录的群组可以存储为堆栈。可替换地,位置记录的群组可以存储为队列。在一些实施例中,位置注册表可以包括在网络服务中存储数据集的当前位置的表或数据库。例如,位置注册表可以包括包含用于网络服务内的数据集的最近接收到的位置记录的位置记录的表。
参照图1,过程100除了图1所示的方框外还可以包括多个方框。另外,能够重新布置一个或多个方框。例如,过程100可以包括将在方框120处生成的位置记录发送给客户端设备的方框(未示出)。此外,可以在方框130处将位置记录发送给位置注册表之前将位置记录发送给客户端设备。
图4为根据实施例的包括网络服务的系统的示意性框图。图4所示的系统包括客户端设备410、客户端设备420、通信链路430以及网络服务490。客户端设备410和420的每一个是计算设备,例如企业服务器或存储设备、个人计算机、便携式计算机、移动设备(例如,个人数字助理(PDA)或智能手机)或者一些其它计算设备。图5示出了根据实施例的计算设备的示意性框图。如图5所示,计算设备500包括通信接口520、处理器510以及存储器530。处理器510可操作地耦合到通信接口520和存储器530。典型地,如图5所示,存储器530包括指令或代码(例如,计算机代码或目标代码),其限定在计算设备500的操作期间由处理器510执行的软件模块。例如,存储器530包括限定操作系统531、设备驱动器532和应用533(例如,软件应用程序)的指令。换句话说,操作系统531、设备驱动器532、应用533和其它在存储器530中作为指令(未示出)存储且在处理器510处执行的软件模块驻留在计算设备500处。在一些实施例中,数据集(例如,经由通信接口520接收到的数据集)可以存储在存储器530处。
通信接口520是处理器510可访问的接口以经由通信链路与其它处理器和/或计算设备进行通信(即,传送表示数据的符号到其它处理器和/或计算设备并且从其它处理器和/或计算设备接收这种符号)。换句话说,通信接口520能够接收来自处理器510的数据,并经由通信接口传送表示所述数据的符号。此外,通信接口520能经由通信接口从其它通信接口接收符号,并将这些符号所表示的数据发送到处理器510。例如,通信接口520可以是电话网络接口、双绞线网络接口、同轴网络接口、光纤网络接口、无线网络接口(例如,无线局域网(WLAN)或蜂窝网),和/或一些其它的网络或通信接口。
参照图4,客户端设备410和420经由通信链路430访问网络服务490。通信链路430可以包括允许客户端410和420与网络服务490进行通信的任意的连接器和/或系统。例如,通信链路430可以是以下物件中的一个或多个:电缆(例如,电信电缆、双绞线电缆、同轴电缆或者光纤电缆)、无线链路或连接(例如,射频链路、无线光学链路或者红外链路)、或者任意其它连接器或支持传输通信符号的系统。另外,通信链路430可以包括能够传送信息(例如,表示数据的符号或信号)的通信网络或通信网络的结合,所述网络例如为以太网、光纤网、无线网、内联网和/或互联网。
在一些实施例中,通信链路430可以包括多条通信链路和/或例如通过网桥、路由器、交换机、集线器和/或网关可操作地彼此耦合的通信网络。例如,客户端设备410能够可操作地耦合到蜂窝网(图4中未示出),并且网络服务490能够可操作地耦合到光纤网(图4中未示出)。蜂窝网和光纤网的每一个能够经由一个或多个网桥、路由器、交换机和/或网关可操作地彼此耦合,从而蜂窝网和光纤网可操作地耦合以形成通信链路。可替换地,蜂窝网和光纤网的每一个能够经由一个或多个额外网络可操作地彼此耦合。例如,蜂窝网和光纤网的每一个能够可操作地耦合到互联网,从而蜂窝网、光纤网和互联网可操作地耦合以形成通信链路。
网络服务490包括网络服务元件450、网络服务元件460、通信440、位置注册表480和注册模块470。网络服务元件450通常是包括加密模块454和数据存储455的计算设备。网络服务元件460通常是包括加密模块464和数据存储465的计算设备。加密模块454和464是硬件模块和/或存储在存储器内并在处理器处执行的软件模块,并提供例如加密、解密、加密散列、加密密钥存储、数字证书管理的加密服务和/或其它加密服务。加密模块454和464的每一个可以包括例如可信平台模块(TPM)或其它基于硬件的加密模块,所述其它基于硬件的加密模块包括对所述基于硬件的加密模块是唯一的加密密钥和/或数字证书。因此,加密密钥或其它加密信息能够物理地与网络服务元件相关或者绑定到所述网络服务元件(例如,物理地耦合到驻留网络服务元件的计算设备)。在一些实施例中,这种加密密钥和/或数字证书可以是全局唯一的,从而没有其它加密模块包括相同的加密密钥和/或数字证书。在一些实施例中,这种加密密钥和/或数字证书对于网络服务或一组网络服务中的加密模块而言是唯一的,从而在所述网络服务或一组网络服务中没有其它加密模块包括相同的加密密钥和/或数字证书。
数据存储455和465可以是硬盘、数据库、基于对象的存储设备和/或其它设备、服务或在其上网络服务实体450和460能分别存储和访问数据的介质。虽然图示出数据存储455和465分别包含于网络服务元件450和460中,但是数据存储455和/或465可以分别在网络服务元件450和460的外部。例如,数据存储455和/或465可以分别在网络服务元件450和460的外部,并且网络服务元件450和460能够经由存储区域网(SAN)分别对数据存储455和/或465进行访问。
网络服务490还包括位置注册表480。位置注册表480存储位置记录,例如在网络服务490中网络服务元件450和460处生成的位置记录。例如,位置注册表480能够如结合图3所述存储位置记录。
注册模块470管理注册信息、位置信息、状态信息,和/或与网络服务模块450和460和/或存储在网络服务490中的数据集相关的其它信息。例如,图6为根据实施例的注册模块的图示。注册模块600包括与网络服务元件和数据集相关的两组信息。第一组信息包括设备标识符610、注册数据620和可信状态630。设备标识符610可以是名称、URI、例如MAC地址的地址、或者网络服务元件的其它标识符。注册数据620可以包括注册信息,例如数字证书或者提供给注册模块600以认证网络服务元件的身份或向注册模块600注册网络服务元件的一些其它凭证。此外,注册数据620可以包括与网络服务元件的位置(即,物理位置)相关的位置信息。可信状态630包括与网络服务元件的操作状态相关的状态信息。例如,可信状态630可以包括驻留在网络服务元件处的软件模块的摘要(例如,加密散列值)。
如图6所示,将设备标识符610、注册数据620和可信状态630组织为表。所述表中的每行与特定网络服务元件相关。例如,设备标识符DI001可以是向注册模块提供注册数据RD001和可信状态TS001的网络服务元件的标识符。类似地,设备标识符DI002可以是向注册模块提供注册数据RD002和可信状态TS002的网络服务元件的标识符。另外,设备标识符DI003可以是向注册模块提供注册数据RD003和可信状态TS003的网络服务元件的标识符。
第二组信息包括数据集标识符640和位置许可650。数据集标识符640包括例如唯一识别数据集的摘要或加密散列值的标识符。数据集标识符640还可以包括例如数据集的URI(例如自向网络服务发送特定数据集的客户端的客户端标识符导出的URI)和数据集的客户端规定名称的标识符。位置许可650包括对特定数据集或从客户端发送到网络服务的数据集存储的位置的限制。例如,网络服务的客户端可以规定网络服务从该客户端接收到的数据仅能存储在规定的位置,或者这种数据不能存储在特定位置。这种限制或制约可以存储在位置许可650中。
类似于第一组信息,数据集标识符640和位置许可650被组织为表。表中的每行与特定的数据集相关。例如,数据集标识符DSI001可以是已经规定位置许可LP001的数据集的标识符。类似地,数据集标识符DSI002可以是已经规定位置许可LP002的数据集的标识符。另外,数据集标识符DSI003可以是已经规定位置许可LP003的数据集的标识符。
在一些实施例中,注册模块可以包括存储网络服务中的数据集的当前位置的表或数据库。该表可以被访问以确定网络服务中数据集的当前位置。例如,包括数据集标识符640和位置许可650的表还可以包括用于每个数据集的位置信息。用于每个数据集的位置信息例如可以包括:数据集当前存储于或位于的网络服务元件的设备标识符、用于所述数据集的在网络服务中生成的最近位置记录、数据集当前存储于或位于网络服务元件的物理位置的标识符,和/或其它位置信息。作为另一个例子,位置注册表能将位置记录转发到注册模块(或者网络服务元件能向注册模块发送位置记录),而注册模块可以包括位置记录的表,所述位置记录包括用于网络服务中的数据集的最近生成的位置记录。
参照图4,通常,在计算设备处实现或驻留注册模块470。因此,注册模块470可以是硬件模块和/或存储于计算设备的存储器内且在处理器处执行的软件模块。在一些实施例中,注册模块470可以是网络服务490可访问的服务(即,网络服务)。另外,注册模块470可以分布到多个计算设备。换句话说,可以在多个计算设备处复制注册模块470;和/或一个计算设备能实施注册模块470的一些功能(例如,与网络服务元件相关的功能),而另一计算设备能实施注册模块470的其它功能(例如,与数据集相关的功能)。因此,图6所示的注册模块600是注册模块的逻辑表示。
另外,网络服务490包括通信链路440。网络服务元件450和460、位置注册表480和注册模块470经由通信链路440彼此可操作地耦合。类似于通信链路430,通信链路440可以包括允许网络元件450和460、位置注册表480和注册模块470经由通信链路430彼此进行通信和/或与客户端设备410和420进行通信的任意连接器和/或系统。另外,通信链路440可以包括能够传输信息(例如,表示数据的符号或信号)的通信网络或通信网络的结合,所述通信网络例如为以太网、光纤网、无线网、内联网和/或互联网。在一些实施例中,通信链路440可以如图4所示直接耦合到通信链路430,或者例如经由网关、网桥、防火墙和/或其它设备或服务(未示出)间接耦合到通信链路430。
图7为根据实施例的管理与数据集相关的位置信息的过程的流程图。过程700可以实施为硬件模块和/或软件模块。例如,过程700可以实施为专用电路,或者实施为包括存储于存储器中并在与存储器通信的处理器处执行的指令的软件模块。更具体地,例如,过程700可以实施为驻留在网络服务元件处的虚拟机。
在方框710处网络服务元件向网络服务的注册模块注册。网络服务元件能够例如经由通信链路向注册模块发送包括注册信息的注册请求。注册请求的注册信息可以包括与网络服务元件相关的各种信息,例如网络服务元件的标识符、与网络服务元件相关的数字证书、加密密钥、与网络服务元件的物理位置相关的位置信息、和/或与网络服务元件相关的其它信息。另外,在注册网络服务元件期间,可以将与网络服务元件的操作状态相关的状态信息发送到注册模块。例如,状态信息可以是通过将加密散列函数应用到限定实施过程700的虚拟机的指令而生成的加密散列值。发送到注册模块的注册信息、位置信息、状态信息和/或其它信息可以存储于注册模块,以注册网络服务元件。
在一些实施例中,注册模块能够在网络服务元件注册前确认(即,验证和/或证实)与网络服务元件相关的信息。例如,网络服务元件能够向注册模块发送数字证书,并且注册模块能结合证书机构来证实数字证书。类似地,基于网络服务元件发送的状态信息(例如,状态信息是否满足一个或多个信任标准),注册模块能验证网络服务元件的操作状态。例如,注册模块能确定基于驻留在网络服务元件处的软件模块的加密散列值是否相当于用于所述软件模块的预定加密散列值。如果不能或没有确认数字证书和/或网络服务元件提供的其它信息,则注册模块能拒绝注册请求并且不注册网络服务元件(例如,通过不在注册模块处存储网络服务元件发送的信息)。
在一些实施例中,可以联合或合作注册。例如,一个或多个网络服务元件能认证网络服务元件(例如,确认网络服务元件的身份或操作状态),并且这些网络服务元件能够通知注册模块网络服务元件可以向注册模块注册和/或被注册模块所信任。作为另一例子,通过向在注册模块注册的和/或受注册模块信任的(例如,已经验证和/或证实)网络服务元件请求那些网络服务元件信任的网络服务元件的标识符,注册模块能确定网络服务元件在网络服务中是否能够或者已经被信任。换句话说,如果网络服务中的其它网络服务元件信任一网络服务元件,则注册模块能确定所述网络服务元件是网络服务的一部分(例如,在网络服务中被信任)。
在网络服务元件向注册模块注册后,网络服务元件可以在网络服务中使用。也就是,网络服务能够向网络服务元件提供待被存储和/或处理的数据。换种说法即,在网络服务元件向网络服务的注册模块注册之后,网络服务元件可以是网络服务的成员或者一部分。换句话说,在网络服务元件注册之后,所述网络服务元件受到网络服务的信任。
在一些实施例中,网络服务模块向注册模块注册之后,网络服务元件能够接收来自注册模块的标识符。例如,注册模块可以使得识别网络服务中的网络服务元件的设备标识符与网络服务元件相关。可替换地,网络服务元件的设备标识符可以是地址,所述地址例如为网络服务元件的网络地址或者MAC地址。这种设备标识符可以被称作可信设备标识符。
在网络服务元件向注册模块注册后,网络服务元件可以在网络服务中使用。也就是,网络服务能够向网络服务元件提供待被存储和/或处理的数据。换种说法即,在网络服务元件向网络服务的注册模块注册之后,网络服务元件可以是网络服务的成员或者一部分。换句话说,网络服务元件能被网络服务所信任,并且网络服务能向网络服务元件发送用于存储和/或处理的数据集。
如图7所示,在方框720处网络服务元件接收数据集。在方框730处根据数据集生成位置记录,并且在方框730处将位置记录发送到位置注册表。例如,如以上结合图1所讨论的,可以为在方框720处接收到的数据集生成位置记录,并将其发送到位置注册表。
网络服务元件实施过程700在方框750处等待或者循环,直到数据集应该被转移。例如,在方框750处,网络服务元件等待以接收来自网络服务的指示网络服务元件转移数据集的命令、指令或信号。在方框750处接收到转移数据集的指令之后,网络服务元件能确定目标网络服务元件(即,数据集应该被转移到的网络服务元件)是否在方框760处向注册模块注册。换句话说,网络服务元件能与注册模块进行通信,以例如基于目标网络服务模块的设备标识符确定目标网络服务元件是否向注册模块注册和/或被注册模块所信任。例如,网络服务元件能向注册模块请求目标网络服务元件已经向注册模块注册和/或被注册模块信任的确认。
如果目标网络服务模块未向注册模块注册和/或未被注册模块信任,则注册模块能拒绝目标网络服务并且不转移数据集,过程700返回到方框750。如果目标网络服务模块向注册模块注册和/或被注册模块信任,则注册模块能向网络服务元件发送网络服务模块向注册模块注册和/或被注册模块信任的确认,并且实施过程700的网络服务元件能确定目标网络服务模块是否被授权接收和/或存储数据集。例如,网络服务模块能向注册模块查询与数据集相关的位置许可。更具体地,例如,基于与目标网络服务元件相关的位置信息和与数据集相关的位置许可,注册模块或网络服务元件能确定数据集是否能转移到目标网络服务元件。如果数据集的位置许可并不限制数据集存储在目标网络服务元件的位置,则目标网络服务元件能被授权转移(即,接收和/或存储)数据集。在一些实施例中,注册模块能向网络服务元件确认(即,发送确认)目标网络服务元件被授权以接收和/或存储数据集,并且如果目标网络服务元件未被授权则能拒绝授权以在目标服务元件处存储数据集。
如果目标网络服务元件未被授权接收数据集,则不转移数据集且过程700返回到方框750。如果目标网络服务元件被授权接收数据集,则数据集能被转移到目标网络服务元件。例如,能够经由通信链路将数据集传输到目标网络服务元件,然后将所述数据集从源网络服务元件处移除或删除。
在数据集被转移到目标网络服务元件之后,生成与数据集存储在目标网络设备元件相关的位置记录,并将该位置记录发送到位置注册表。例如,如以上结合图1讨论的,目标网络服务元件能生成位置记录。在一些实施例中,源网络服务元件(即,自其转移数据集的网络服务元件)能生成位置记录,并将位置记录发送到位置注册表,
过程700能包括比图7所示更多或更少的方框。另外,能够重新布置一个或多个方框。例如,过程700可以包括网络服务元件接收与方框710的注册相关的、表示网络服务元件是否向注册模块注册的响应的方框(未示出)。作为另一个例子,过程700可以在方框750之后包括网络服务元件请求用于目标网络服务元件的标识符的方框(未示出)。在一些实施例中,可以在方框780之前(例如,在方框770之后且在方框780之前)生成位置记录。此外,在方框750处等待转移数据集的网络服务元件能接收额外的数据集。换句话说,过程700的实例能够与存储在网络服务元件处的每个数据集相关。此外,如果在方框760处目标网络服务元件未向注册模块注册和/或未被注册模块信任,或者如果在方框770处目标网络服务元件未被授权接收和/或存储数据集,则网络服务元件或注册模块能选择另一目标网络服务元件并且返回到方框760。
图8为根据实施例的与在包括网络服务的系统内的数据集相关的位置信息的通信流的示意性框图。图8的通信流示出了数据集在网络服务元件处的存储。图8所示的系统包括客户端设备810、客户端设备820、通信链路830和网络服务890。网络服务890包括网络服务元件850、网络服务元件860、通信链路840、位置注册表880以及注册模块870。路径P82、路径P84和路径P85示出了图8所示的系统内的通信路径。这些通信路径是逻辑的,且不必表示沿着通信路径传送的数据符号或者数据信号所遍历的每个物理计算设备或网络设备。
沿着路径P82将数据集DS81从客户端设备810发送到网络服务元件850。网络服务元件850接收数据集DS81,在网络服务元件850的数据存储器(未示出)处存储数据集DS81,并生成位置记录LR83以说明或记录数据集DS81在网络服务元件850处的存储。然后网络服务元件850沿着路径P84向位置注册表880发送位置记录LR83。另外,网络服务元件850沿着路径P85向客户端设备810发送位置记录LR83。因此,位置注册表880和客户端设备810接收确认数据集DS81存储于网络服务元件850的位置记录LR83。
图9为根据实施例的与在图8的包括网络服务的系统内的数据集相关的位置信息的另一通信流的示意性框图。图9的通信流示出了网络服务中数据集的转移。图9示出的系统包括客户端设备810、客户端设备820、通信链路830和网络服务890。网络服务890包括网络服务元件850、网络服务元件860、通信链路840、位置注册表880以及注册模块870。路径P91、路径P92、路径P93和路径P94示出了图9所示的系统内的通信路径。这些通信路径是逻辑的,且不必表示沿着通信路径传送的数据符号或者数据信号所遍历的每个物理计算设备或网络设备。
网络服务元件850沿着路径P91向注册模块发送用于确认数据集DS81能转移到网络服务元件860的请求。例如,网络服务元件850能请求网络服务模块860向注册模块注册和/或被注册模块信任的确认。而且,网络元件850能请求网络服务模块860处于特定操作状态的确认。
注册模块870确定是否能提供被请求的确认(即,网络服务模块860是否向注册模块870注册和/或被注册模块870信任,和/或网络服务元件860是否处于特定的操作状态),并确认或拒绝数据集DS81能沿着路径P92转移到网络服务元件860。在一些实施例中,注册模块870(或者网络服务890的其它部件(未示出))能响应来自网络服务元件850的请求,经由通信链路840查询网络服务元件860的操作状态。换句话说,注册模块870能与网络服务元件860进行通信,并请求网络服务元件860经由840向注册模块870发送操作状态。因此,注册模块870能实时地访问网络服务元件860的操作状态(即,在被请求时访问或更新网络服务元件860的操作状态)。
在网络服务元件850接收到来自注册模块870的确认之后,网络服务元件850沿着路径P93向网络服务元件860发送数据集DS81。网络服务元件860接收数据集DS81,在网络服务元件860的数据存储器(未示出)处存储数据集DS81,并生成位置记录LR85以说明或记录数据集DS81在网络服务元件860处的存储。然后网络服务元件860沿着路径P94向位置注册表880发送位置记录LR85。因此,位置注册表880接收确认数据集DS81存储于网络服务元件860的位置记录LR85。如图9所示,位置记录LR83保留在位置注册表880,以记录数据集DS81在网络服务元件850处的存储。另外,网络服务元件860能向客户端设备810发送(未示出)位置记录LR85。
在一些实施例中,位置记录LR83和LR85可以包括时间戳、序列号或代码,或者一些其它的指示,表示数据集DS81在第一时间存储在网络服务元件850处,并且在第一时间之后的第二时间存储在网络服务元件860处。因此,与数据集DS81相关的位置注册簿能证明或描述数据集DS81在第一时间存储在网络服务元件850处,并且在第一时间之后的第二时间存储在网络服务元件860处。换句话说,时间戳能够表示在何时发生与生成位置记录LR83和/或LR85所响应的数据集DS81相关的动作(例如,存储、转移和/或删除)。另外,位置记录LR83和LR85能包括描述与数据集DS81相关的动作的一个或多个注释。例如,位置记录LR83能包括表示数据集DS81从网络服务元件850转移的注释,而位置记录LR85能包括表示数据集DS81转移到网络服务元件860的注释。
此外,位置记录处的时间戳和/或注释例如能区分在不同时间数据集在网络服务元件处的存储。例如,数据集能在第一时间存储在第一网络服务元件处,并且在第一网络元件处生成包括时间戳的第一位置记录并将其存储于位置注册表,所述时间戳与第一时间相关以记录数据集在第一时间存在于第一网络服务元件处。在第二时间,数据集能存储于第二网络服务元件处,并且在第二网络元件处生成包括时间戳的第二位置记录并将其存储于位置注册表,所述时间戳与第二时间相关以记录数据集在第二时间存在于第二网络服务元件处。在第三时间,数据集能存储于第一网络服务元件处,并且在第一网络元件处生成包括时间戳的第三位置记录并将其存储于位置注册表,所述时间戳与第三时间相关以记录数据集在第三时间存在于第一网络服务元件处。因此,包括第一位置记录、第二位置记录和第三位置记录的位置注册簿能够唯一地分别记录数据集存在于第一网络服务元件处、第二网络服务元件处以及再次于第一网络服务元件处。
在一些实施例中,位置记录LR83可以包括表示数据集DS81转移到网络服务元件860且还保留(例如,作为冗余拷贝)在网络服务元件850处的注释,而位置记录LR85可以包括表示数据集DS81已转移到网络服务元件860处的注释。另外,位置记录LR85可以包括表示数据集DS81(或者数据集DS81的拷贝)保留在网络服务元件850处的注释。
此外,能够从网络服务890处删除数据集DS81,并且位置记录LR83和/或位置记录LR85可以包括记录删除数据集DS81的注释。例如,位置记录LR83可以包括记录存储数据集DS81的注释,以及记录从网络服务元件850转移数据集DS81的另一注释(或者记录存储和转移的单独注释);而位置记录LR85可以包括记录向网络服务元件860转移数据集DS81的注释。位置记录LR85还可以包括记录从网络服务890删除数据集DS81的注释。可替换地,位置注册表880可以包括记录向网络服务元件860转移数据集DS81的注释,以及记录从网络服务元件860转移数据集DS81的注释,而位置注册表880的另一位置记录(未示出)可以包括记录从网络服务890删除数据集DS81的注释。
在一些实施例中,可以通过网络服务的客户端请求和/或初始化网络服务内数据的转移。例如,客户端设备能够向注册模块发送请求,以从源网络服务元件(或者从源物理地址)向目标网络服务元件(或者向目标物理地址)转移数据集。所述请求可以包括数据集的标识符、识别所请求的数据集的名称或URI,和/或证明访问所请求的数据集的许可或权利的凭证(例如,密码或数字证书)。此外,所述请求可以包括与数据集在网络服务元件的当前(或过去)存储相关的位置记录,以识别数据集。例如,参照图8,客户端设备810能够向注册模块870发送位置记录LR83和网络服务元件860的标识符,以请求从网络服务元件850向网络服务元件860转移(图9示出)数据集DS81。
图10为根据实施例的向客户端设备提供与数据集相关的位置信息的过程的流程图。过程1000可以被实施为硬件模块和/或软件模块。例如,过程1000能被实施为专用电路,或实施为包括存储于存储器中并在与存储器通信的处理器处执行的指令的软件模块。更具体地,例如,过程1000可以在注册模块、位置注册表和/或共同地在注册模块和位置模块处实施。将结合位置注册表讨论过程1000,但是如上所述,过程1000可以在注册模块、位置注册表、共同地在注册模块和位置模块处,和/或其它硬件模块和/或软件模块实施。
在方框1010处位置注册表接收用于位置注册簿的请求。位置注册簿是位置记录的组或者聚合。例如,图11为根据实施例的位置注册簿的图示。位置注册簿1100包括位置记录1110、位置记录1120和位置记录1130。位置注册簿1100可以与特定网络服务元件相关,而位置记录1110、1120和1130可以与一个或多个数据集在所述特定网络服务元件处的存储相关。位置注册簿1100还可以与特定数据集相关,从而位置记录1110、1120和1130可以与所述特定数据集在一个或多个网络存储元件处的存储相关。在一些实施例中,位置注册簿1100能独立于特定网络存储元件或者特定数据集。例如,位置注册簿1100可以包括位置注册表的所有的位置记录,和/或位置记录处未分类的或未过滤的位置记录集。在一些实施例中,用于位置注册簿的请求可以是用于具体位置记录或者位置记录集的请求。例如,用于位置注册簿的请求可以请求与单个数据集的当前位置或者存储在网络服务处的一组数据集相关的位置记录。
参照图10,位置注册表响应于在方框1010处接收到的请求确定访问哪个位置记录。例如,在方框1010处接收到的请求可以包括数据集标识符,并且与具有所述标识符的数据集相关的每个位置记录可以包括在位置注册簿中。在一些实施例中,在方框1010处接收到的请求可以包括设备标识符,并且与具有所述设备标识符的网络服务元件相关的每个位置记录可以包括在位置注册簿中。然后,位置记录在方框1020处可被访问并且包括在位置注册簿中。例如,位置记录可以被复制到临时数据存储库,从该临时数据存储库可生成位置注册表。如果在方框1020处访问更多的位置记录以包含于位置注册簿(例如,对于规定的数据集或网络服务元件存在更多的位置记录),则过程1000返回到方框1020并访问另一位置记录。
如果在方框1020和1030处已经访问了用于位置注册簿的所有位置记录,则在方框1040处生成位置注册簿以包括被访问的位置记录。例如,可将存储于临时数据存储库内的位置记录复制或移动到表示位置注册簿的文件中。然后在方框1050处,能够将生成的位置注册簿发送到请求位置注册簿的客户端。
过程1000能够包括比图10所示更多或更少的方框。另外,能够重新布置一个或多个方框。例如,过程1000可以包括位置注册表确定客户端是否被授权请求和/或接收特定位置注册簿的方框(未示出)。更具体地,例如,客户端能够提供一个或多个凭证以认证具有位置注册表的客户端,或者展示对请求和/或接收注册簿的充分许可。在一些实施例中,可以将在方框1020处访问的记录直接插入到位置注册簿,从而在方框1020之前生成位置注册簿,并在方框1020处将位置记录包含于位置注册簿。因此,可以从过程1000处移除方框1040。
图12为根据实施例的在图8的包括网络服务的系统内的位置注册簿的通信流的示意性框图。图12所示的系统包括客户端设备810、客户端设备820、通信链路830和网络服务890。网络服务890包括网络服务元件850、网络服务元件860、通信链路840、位置注册表880和注册模块870。路径P121、路径P122、路径P123和路径P124示出了图12所示的系统内的通信路径。这些通信路径是逻辑的,且不必表示沿着通信路径传送的数据符号或者数据信号所遍历的每个物理计算设备或网络设备。
客户端设备820沿着路径P121向注册模块870发送用于位置注册簿的请求。所述请求包括与客户端设备820向其请求位置注册簿的数据集相关的数据集标识符。换句话说,数据集标识符识别与所请求的位置注册簿相关的数据集。注册模块870接收请求,并确定客户端设备820被授权访问(例如,请求和/或接收)位置注册簿。例如,所述请求可以包括用户名和密码和/或与授权访问位置注册簿相关的数字证书。
如果客户端设备820被授权访问位置注册簿,则注册模块870沿着路径P122访问位置注册表880处与为其请求位置注册簿的数据集相关的位置记录。例如,联系以上结合图8和图9的讨论,客户端设备820能请求与数据集DS81相关的位置注册簿。因此,注册模块870能请求在位置注册表880处的分别与数据集DS81在网络服务元件850和860处的存储相关的位置记录LR83和LR85,并且位置注册表880能沿着路径P123向注册模块870提供位置记录LR83和LR85。如上所述,例如,结合图9,位置记录LR83和LR85能记录数据集DS81存储在网络服务元件850和860处,数据集DS81移动向和/或移动自网络服务元件850和860,从网络服务元件850和/或860删除数据集DS81,和/或在网络服务元件850和860处冗余存储数据集DS81。
然后注册模块870生成位置注册簿LR125,该位置注册簿LR125包括在位置注册表880处访问的位置注册簿的位置记录。在前述例子中且如图12所示,位置注册簿LR125包括分别与数据集DS81在网络服务元件850和860处的存储相关的位置记录LR83和LR85。在一些实施例中,位置注册簿LR125可以是位置记录的列表或序列,而没有额外数据或格式。在其它实施例中,位置注册簿LR125可以是包括例如响应于位置注册簿的格式而改变的一个或多个位置记录的文件。在又一实施例中,位置注册簿LR125可以包括位置记录的其它布置和/或配置。如上所述,例如,结合图9,位置记录(例如,位置记录LR83和LR85)记录(或限定日志或历史)在网络服务中存储数据集(例如,数据集DS81)的网络服务元件。另外,位置记录能够记录数据集从网络服务元件处删除(或移除)。因为在网络服务中注册和/或被信任且对位置记录加密签名的网络服务元件处生成位置记录,所以位置注册簿LR125能用于审核或跟踪所述网络服务中数据集的移动。换句话说,位置注册簿LR125是网络服务中数据集位置(例如,存储和/或遍历数据集的网络服务元件)的历史或记录。
沿着路径P124将位置记录LR125从注册模块870发送到客户端设备820。然后客户端设备820能检查位置注册簿LR125,以确定(或审核)数据集DS81已经和/或正存储在网络服务890中的哪个网络服务元件处。例如,客户端设备820能分别向网络服务元件850和860和/或注册模块870请求和接收(未示出)与网络服务元件850和860相关的数字证书。数字证书可以包括加密密钥,以对位置记录LR83和LR85的加密签名进行解密。客户端设备820能够结合证书机构验证或证实数字证书,并使用包含于数字证书中的加密密钥对位置记录LR83和LR85进行解密,以确定已经存储有或者正存储有数据集DS81的网络服务元件(即,在前述例子中的网络服务元件850和860)的设备标识符。
在一些实施例中,客户端设备820能访问注册模块870处与已经存储有或正存储有数据集DS81的网络服务元件相关的位置信息。例如,响应于接收位置注册簿LR125内的位置记录LR83和LR85,客户端设备820能向注册模块870请求与网络服务元件850和网络服务元件860相关的位置信息,并且注册模块870能向客户端设备820发送位置信息。在其它实施例中,与已经存储有或正存储有数据集DS81的网络服务元件相关的位置信息包括在位置记录或位置注册簿中。例如,注册模块可以包括在位置注册簿LR125中已经存储或正存储数据集DS81的网络服务元件相关的位置信息。作为可替换的例子,当在网络服务元件850和860处分别生成位置记录LR83和/或LR85时,或者当注册模块包括在位置注册簿LR125中的位置记录LR83和/或LR85时,位置记录LR83和/或LR85能够包括位置信息。
图13为根据实施例的与在图8的包括网络服务的系统内的数据集相关的位置信息的另一通信流的示意性框图。图13所示的系统包括客户端设备810、客户端设备820、通信链路830和网络服务890。网络服务890包括网络服务元件850、网络服务元件860、通信链路840、位置注册表880以及注册模块870。路径P131、路径P132、路径P133和路径P134示出了图13所示的系统内的通信路径。这些通信路径是逻辑的,且不必表示沿着通信路径传送的数据符号或者数据信号所遍历的每个物理计算设备或网络设备。
图13示出了在数据集DS81初始已经存储在网络服务元件850(例如,图8所示)并且转移到网络服务元件860(例如,如图9所示)之后的网络服务890和客户端设备810。响应于在网络服务元件850处存储数据集DS81而生成位置记录LR83,并且位置记录LR83被发送到客户端设备810和位置注册表880。响应于在网络服务元件860处存储数据集DS81而生成位置记录LR85,并且位置记录LR85被发送到位置注册表880。
客户端设备810沿着路径P131向注册模块发送访问数据集DS81的请求(或者用于数据集DS81的访问请求)。如图13所示,访问请求包括位置记录LR83。位置记录LR83可以被称作访问位置记录,并且能结合访问请求而被包含以识别数据集DS81,和/或作为展示访问数据集DS81的许可或权利的凭证。
注册模块870接收包括位置记录LR81的访问请求并访问位置注册表880,以验证和/或证实位置记录LR83。例如,注册模块870能沿着路径P132向位置注册表880发送位置记录LR83,并且位置注册表880能比较位置记录LR83和存储于位置注册表880的位置记录。如图13所示,位置注册表880能比较沿着路径P132从注册模块870接收的位置记录LR83与存储于位置注册表880的位置记录LR83和LR85。然后位置注册表880能沿着路径P133向注册模块870报告位置记录LR83的匹配是否包含于位置注册表880。换句话说,位置注册表880能向注册模块870验证位置记录LR83在网络服务890内生成。
在一些实施例中,通过使用例如存储在注册模块870处且与位置记录LR83所识别的网络服务元件相关的加密密钥,对位置记录LR83的加密签名进行解密,注册模块870还可以证实从客户端设备810处接收到的位置记录LR83。例如,当网络服务元件850向注册模块870注册时,注册模块870能从网络服务元件850接收包括公钥的数字证书,并且位置记录LR83能包括利用网络服务元件850的私钥(来自具有包括在数字证书中的公钥的共/私密钥对)加密的加密签名。注册模块870能利用来自数字证书的公钥对位置记录LR83的加密签名进行解密,以访问用于被请求数据集(如图13所示的数据集DS81)的数据集摘要。然后注册模块870能生成(未示出)存储于网络服务元件860处的数据集DS81的摘要,并比较所述摘要与包含于位置记录LR83内的数据集摘要。如果所述摘要与数据集摘要相同(例如,具有相同的值),则注册模块870能够验证和/或证实位置记录LR83生成于网络服务890中。
如果验证和/或证实了位置记录LR83,则注册模块870能够沿着路径P134向网络服务元件860发送命令、指令或信号,以命令或请求网络服务元件860向客户端设备810发送数据集DS81。网络服务元件860能接收命令、指令或信号,并沿着路径P135向客户端设备810发送数据集DS81。在一些实施例中,网络服务元件860还能够生成位置记录,以解释或记录向客户端设备810发送数据集DS81。例如,除了以上结合图2所讨论的位置记录的域和值外,位置记录可以包括包含表示与位置记录相关的数据集由客户端设备访问的值的域。位置记录还可以包括与客户端设备的身份相关的值,例如互联网协议(IP)地址、MAC地址、用户名、账户名,和/或所述客户端设备的其它身份。这种域和/或值可包含于位置记录的加密签名中,或与其分离。可将位置记录发送给位置注册表880,并随后将位置记录包含于用于数据集DS81的位置注册簿中以说明访问数据集DS81。
在一些实施例中,并不结合访问请求而包括访问位置记录,并且访问请求包括标识符和/或独立于访问位置记录证实访问被请求的数据集的许可或权利。例如,访问请求能包括识别被请求数据集的名称或URI,和证明访问被请求数据集的许可或权利的密码或数字证书。
在一些实施例中,网络服务可以包括多个注册模块,和/或网络服务可以包括多个段(或区),其每一个包括注册模块、位置注册表和多个网络服务元件。在这种实施例中,注册模块可以彼此进行通信,以例如转移数据、生成位置注册簿、提供对数据的访问,和/或在位置注册簿处存储位置记录。例如,第一注册模块能够经由通信链路与第二注册模块进行通信,以确定在向目标网络服务元件转移数据集的期间,向第二注册模块注册的目标网络服务元件在网络服务中是否被信任。作为另一例子,第一注册模块能向第二注册模块转发用于访问数据集的请求,其中在所述第二注册模块处注册了存储所述数据集的网络服务元件。类似地,第一注册模块能与第二注册模块进行通信,以访问多个位置注册表处的位置记录,从而响应于来自网络服务的客户端的用于位置注册簿的请求而生成用于数据集的位置注册簿。此外,第一注册模块能向第二注册模块转发位置记录,所述位置记录生成于在第一注册模块处注册了的网络服务元件处,并且第二注册模块能向位置注册表发送位置记录。因此,能向网络服务的一个段通知网络服务的另一个段内数据集的移动。
作为更具体的例子,第一注册模块能从第一网络服务元件接收请求,用于确认第二网络服务元件被授权接收数据集(即,在网络服务中信任第二网络服务元件,并且数据集与防止或禁止在第二网络服务元件处存储数据集的位置许可并不相关)。第一注册模块能向第一注册模块注册,并且第二注册模块能向第二注册模块注册。第一注册模块能向第二注册模块转发请求,这是因为第二网络服务元件没有向第一注册模块注册。第二注册模块能确定第二网络服务元件被授权接收数据集,并能直接或者通过第一注册模块间接向第一网络服务元件确认第二网络服务元件被授权接收数据集。在接收到该确认之后,第一网络服务元件能向第二网络服务元件发送数据集。
一些实施例包括处理器和相关处理器可读介质,所述介质上具有用于执行各种处理器实施操作的指令或计算机代码。这种处理器可以是通用处理器或者专用处理器,并且可以实施为硬件模块和/或软件模块。硬件模块可以是例如微处理器、微控制器、专用集成电路(ASIC)、例如现场可编程门阵列(FPGA)的可编程逻辑设备(PLD),和/或执行操作的其它电子电路。软件模块可以是例如存储于存储器中并在其它处理器中执行的指令、命令和/或代码。可以使用一个或多个编程语言(例如,JavaTM、C++、C、汇编语言、硬件描述语言和/或其它合适的编程语言)来定义这种软件模块。例如,处理器可以是驻留在包括处理器和存储器的计算机服务器处的虚拟机。
在一些实施例中,处理器可以包括多处理器。例如,处理器可以是包括多处理引擎(例如,计算、算法或线程核心)的微处理器。作为另一个例子,处理器可以是包括具有共享时钟、存储器总线、输入/输出总线和/或其它共享资源的多处理器的计算设备。此外,处理器可以是分布式处理器。例如,处理器可以包括多个计算设备,每个计算设备包括一处理器,经由例如计算机网络的通信链路彼此进行通信。
处理机可读介质的例子包括但不限于:磁性存储介质,例如硬盘、软盘和/或磁带;光学存储介质,例如光盘(CD)、数字视频光盘(DVD)、光盘只读存储器(CD-ROM)和/或全息设备;光磁存储介质;非易失存储器,例如只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)和/或闪速存储器;以及随机存取存储器(RAM)。计算机代码的例子包括但不限于:微代码或者微指令、例如由编译器生成的机器指令,以及包含由计算机利用解释器执行的高级指令的文件。例如,可以利用JavaTM、C++或其它面向对象的编程语言和开发工具来实现实施例。计算机代码的额外例子包括但不限于控制信号、加密代码和压缩代码。
虽然以上示出并描述了某些实施例,但是可以做出形式和细节方面的各种改变。例如,结合一个实施例描述的实施例的一些特征和/或注册模块处的处理在位置注册表或网络服务元件是有用的。更具体地,例如,结合注册模块描述的过程可以在位置注册表进行实施。换句话说,结合网络服务的一个元件(例如,注册模块、位置注册表或网络服务元件)描述的各个实施例的过程、特征和/或属性可以与网络服务的另一元件相关(例如,另一元件执行的过程或者存在于另一元件处的特征)。此外,应该理解的是,本文所描述的系统和方法可以包括描述的不同实施例的部件和/或特征的各种组合和/或子组合。因此,结合一个或多个实施例所描述的特征可以与本文所描述的其它实施例结合。

Claims (14)

1.一种监视网络服务内的数据集位置的方法,包括:
在网络服务元件处从客户端设备接收数据集,所述数据集将存储在所述网络服务元件处,所述网络服务元件可操作地耦合到通信链路;
响应于所述接收,在所述网络服务元件处基于所述数据集的至少一部分和与所述网络服务元件相关联的加密密钥而生成位置记录,所述位置记录唯一地识别所述数据集在所述网络服务元件处的存在,所述位置记录包括设备状态标识符,所述设备状态标识符包括与生成所述位置记录的所述网络服务元件的操作状态有关的信息;以及
经由所述通信链路向位置注册表和所述客户端设备发送所述位置记录。
2.根据权利要求1所述的方法,其中所述位置记录是第一位置记录,所述方法还包括:
响应于所述数据集从所述网络服务元件处转移,经由所述通信链路向所述位置注册表提供第二位置记录。
3.根据权利要求1所述的方法,其中所述位置记录包括所述数据集的加密签名和所述网络服务元件的可信设备标识符,所述加密签名是基于所述加密密钥被加密的,所述方法还包括:
在接收所述数据集之前,经由所述通信链路向注册模块发送包括与所述网络服务元件相关联的位置信息的注册请求,所述可信设备标识符响应于所述注册请求而与所述网络服务元件相关联。
4.根据权利要求1所述的方法,其中所述网络服务元件是第一网络服务元件,并且所述位置记录是第一位置记录,所述方法还包括:
在接收之前,经由所述通信链路向注册模块发送与所述第一网络服务元件相关联的注册请求,所述第一网络服务元件响应于所述注册请求向所述注册模块注册为可信设备;
向所述注册模块请求第二网络服务元件向所述注册模块注册为可信设备的确认;
向所述第二网络服务元件发送所述数据集;以及
响应于所述数据集从所述第一网络服务元件处转移,经由所述通信链路向所述位置注册表提供第二位置记录。
5.一种监视数据集位置的系统,包括:
第一注册网络服务元件,其包括基于硬件的加密模块和存储元件;
第二注册网络服务元件,其包括基于硬件的加密模块和存储元件;
注册模块,用于确认所述第一注册网络服务元件向所述注册模块注册,并确认所述第二注册网络服务元件向所述注册模块进行了注册;以及
位置注册表,其用于从所述第一注册网络服务元件接收并随后存储与数据集在所述第一注册网络服务元件的所述存储元件处的存储相关联的第一位置记录,并从所述第二注册网络服务元件接收并随后存储与数据集在所述第二注册网络服务元件的所述存储元件处的存储相关联的第二位置记录,所述第一位置记录唯一地与所述第一注册网络服务元件的所述基于硬件的加密模块相关联,所述第二位置记录唯一地与所述第二注册网络服务元件的所述基于硬件的加密模块相关联,
其中,所述第一位置记录是由所述第一注册网络服务元件生成的,并且所述第二位置记录是由所述第二注册网络元件生成的,所述第一位置记录包括含有与生成所述第一位置记录的所述第一注册网络服务元件的操作状态有关的信息的设备状态标识符,所述第二位置记录包括含有与生成所述第二位置记录的所述第二注册网络服务元件的操作状态有关的信息的设备状态标识符。
6.根据权利要求5所述的系统,其中:
所述第一注册网络服务元件能操作以向所述注册模块请求所述第二注册网络服务元件向所述注册模块进行了注册的确认;
所述第一注册网络服务元件能操作以响应于所述确认向所述第二注册网络服务元件发送所述数据集;以及
在从所述第一注册网络服务元件向所述第二注册网络服务元件发送所述数据集之后,所述位置注册表能操作以接收所述第二位置记录。
7.根据权利要求5所述的系统,其中:
所述注册模块是第一注册模块;
所述第一注册模块能操作以确定所述数据集向第三注册网络服务元件转移是被授权的,所述第三注册网络服务元件向第二注册模块注册;以及
所述位置注册表能操作以接收与所述数据集在所述第三注册网络服务元件处的存储相关联的第三位置记录。
8.根据权利要求5所述的系统,其中:
所述第一位置记录包括所述数据集的第一加密签名和所述第一注册网络服务元件的可信设备标识符,所述第一加密签名是基于所述第一注册网络服务元件的所述基于硬件的加密模块的加密密钥被加密的;以及
所述第二位置记录包括所述数据集的第二加密签名和所述第二注册网络服务元件的可信设备标识符,所述第二加密签名是基于所述第二注册网络服务元件的所述基于硬件的加密模块的加密密钥被加密的。
9.根据权利要求5所述的系统,其中:
所述注册模块能操作以从客户端设备接收针对所述数据集的访问请求和访问位置记录;
所述注册模块能操作以将所述访问位置记录与所述第二位置记录进行比较;以及
如果所述访问位置记录与所述第二位置记录匹配,则所述注册模块能操作以授权所述客户端设备访问所述数据集。
10.一种报告与在网络服务中的网络服务元件处的数据集存储相关联的位置信息的方法,包括:
由位置注册表访问与数据集相关联的第一位置记录,所述第一位置记录唯一地识别所述数据集和能操作以在第一时间存储所述数据集的第一网络服务元件,所述第一位置记录是由所述第一网络服务元件响应于接收到所述数据集以便存储而生成的,并且随后被发送给所述位置注册表,所述第一位置记录包括含有与生成所述第一位置记录的所述第一网络服务元件的操作状态有关的信息的设备状态标识符;
由所述位置注册表访问与所述数据集相关联的第二位置记录,所述第二位置记录唯一地识别所述数据集和能操作以在所述第一时间之后的第二时间存储所述数据集的第二网络服务元件,所述第二位置记录是由所述第二网络服务元件响应于接收到所述数据集以便存储而生成的,并且随后被发送给所述位置注册表,所述第二位置记录包括含有与生成所述第二位置记录的所述第二网络服务元件的操作状态有关的信息的设备状态标识符;以及
由所述位置注册表生成位置注册簿,其包括所述第一位置记录和所述第二位置记录。
11.根据权利要求10所述的方法,还包括:
从客户端设备接收针对与所述数据集相关联的位置注册簿的请求;以及
在所述位置注册簿生成之后,向所述客户端设备发送所述位置注册簿。
12.根据权利要求10所述的方法,还包括:
响应于所述数据集向所述第一网络服务元件的转移,接收所述第一位置记录;以及
响应于所述数据集从所述第一网络服务元件向所述第二网络服务元件的转移,接收所述第二位置记录。
13.根据权利要求10所述的方法,其中:
所述第一位置记录包括所述数据集的第一加密签名和所述第一网络服务元件的可信设备标识符,所述第一加密签名是基于与所述第一网络服务元件物理绑定的第一加密密钥被加密的;以及
所述第二位置记录包括所述数据集的第二加密签名和所述第二网络服务元件的可信设备标识符,所述第二加密签名是基于与所述第二网络服务元件物理绑定的第二加密密钥被加密的。
14.根据权利要求10所述的方法,其中:
所述第一网络服务元件在第一注册模块处注册;
所述第二网络服务元件在第二注册模块处注册;以及
访问所述第二位置记录包括从所述第二注册模块处请求所述第二位置记录。
CN201080069066.6A 2010-09-23 2010-09-23 用于监视网络服务中数据位置的方法、装置和系统 Expired - Fee Related CN103098070B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2010/049947 WO2012039714A1 (en) 2010-09-23 2010-09-23 Methods, apparatus and systems for monitoring locations of data within a network service

Publications (2)

Publication Number Publication Date
CN103098070A CN103098070A (zh) 2013-05-08
CN103098070B true CN103098070B (zh) 2016-03-30

Family

ID=45874076

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080069066.6A Expired - Fee Related CN103098070B (zh) 2010-09-23 2010-09-23 用于监视网络服务中数据位置的方法、装置和系统

Country Status (4)

Country Link
US (1) US9166893B2 (zh)
EP (1) EP2619680A1 (zh)
CN (1) CN103098070B (zh)
WO (1) WO2012039714A1 (zh)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8776212B2 (en) * 2010-12-14 2014-07-08 Suridx, Inc. Protecting computers using an identity-based router
CN103380589B (zh) * 2011-06-13 2016-04-27 松下电器产业株式会社 终端装置、服务器装置、内容记录控制系统及记录方法
US9098345B2 (en) * 2012-02-01 2015-08-04 Softlayer Technologies, Inc. System and method for portable and flexible deployment of servers
US9374228B2 (en) * 2012-10-12 2016-06-21 International Business Machines Corporation Verifying a geographic location of a virtual disk image executing at a data center server within a data center
US9074385B2 (en) * 2012-11-20 2015-07-07 Aqua Products, Inc Pool cleaning vehicle with mechanism for skewing an axle
US9608907B2 (en) * 2014-09-29 2017-03-28 Vivint, Inc. Systems and methods for centrally-assisted distributed hash table
US10673852B2 (en) * 2014-12-23 2020-06-02 Mcafee, Llc Self-organizing trusted networks
CN108464031B (zh) * 2016-01-15 2019-11-08 阿弗梅德网络公司 电信网络中的基于数据库的冗余
US10742629B2 (en) 2017-02-28 2020-08-11 International Business Machines Corporation Efficient cloud resource protection
CN109428874B (zh) * 2017-08-31 2020-10-09 华为技术有限公司 基于服务化架构的注册方法及装置
US10503409B2 (en) * 2017-09-27 2019-12-10 Alibaba Group Holding Limited Low-latency lightweight distributed storage system
US10496548B2 (en) 2018-02-07 2019-12-03 Alibaba Group Holding Limited Method and system for user-space storage I/O stack with user-space flash translation layer
US10831404B2 (en) 2018-02-08 2020-11-10 Alibaba Group Holding Limited Method and system for facilitating high-capacity shared memory using DIMM from retired servers
WO2019222958A1 (en) 2018-05-24 2019-11-28 Alibaba Group Holding Limited System and method for flash storage management using multiple open page stripes
WO2020000136A1 (en) 2018-06-25 2020-01-02 Alibaba Group Holding Limited System and method for managing resources of a storage device and quantifying the cost of i/o requests
US11061735B2 (en) 2019-01-02 2021-07-13 Alibaba Group Holding Limited System and method for offloading computation to storage nodes in distributed system
EP3912035A1 (en) 2019-01-15 2021-11-24 Microsoft Technology Licensing, LLC Dynamic auto-configuration of multi-tenant paas components
US10922234B2 (en) 2019-04-11 2021-02-16 Alibaba Group Holding Limited Method and system for online recovery of logical-to-physical mapping table affected by noise sources in a solid state drive
US11169873B2 (en) 2019-05-21 2021-11-09 Alibaba Group Holding Limited Method and system for extending lifespan and enhancing throughput in a high-density solid state drive
US10860223B1 (en) 2019-07-18 2020-12-08 Alibaba Group Holding Limited Method and system for enhancing a distributed storage system by decoupling computation and network tasks
US11126561B2 (en) 2019-10-01 2021-09-21 Alibaba Group Holding Limited Method and system for organizing NAND blocks and placing data to facilitate high-throughput for random writes in a solid state drive
US11042307B1 (en) 2020-01-13 2021-06-22 Alibaba Group Holding Limited System and method for facilitating improved utilization of NAND flash based on page-wise operation
US11449455B2 (en) 2020-01-15 2022-09-20 Alibaba Group Holding Limited Method and system for facilitating a high-capacity object storage system with configuration agility and mixed deployment flexibility
US10872622B1 (en) 2020-02-19 2020-12-22 Alibaba Group Holding Limited Method and system for deploying mixed storage products on a uniform storage infrastructure
US10923156B1 (en) 2020-02-19 2021-02-16 Alibaba Group Holding Limited Method and system for facilitating low-cost high-throughput storage for accessing large-size I/O blocks in a hard disk drive
US11150986B2 (en) 2020-02-26 2021-10-19 Alibaba Group Holding Limited Efficient compaction on log-structured distributed file system using erasure coding for resource consumption reduction
US11144250B2 (en) 2020-03-13 2021-10-12 Alibaba Group Holding Limited Method and system for facilitating a persistent memory-centric system
US11200114B2 (en) 2020-03-17 2021-12-14 Alibaba Group Holding Limited System and method for facilitating elastic error correction code in memory
US11385833B2 (en) 2020-04-20 2022-07-12 Alibaba Group Holding Limited Method and system for facilitating a light-weight garbage collection with a reduced utilization of resources
US11281575B2 (en) 2020-05-11 2022-03-22 Alibaba Group Holding Limited Method and system for facilitating data placement and control of physical addresses with multi-queue I/O blocks
US11494115B2 (en) 2020-05-13 2022-11-08 Alibaba Group Holding Limited System method for facilitating memory media as file storage device based on real-time hashing by performing integrity check with a cyclical redundancy check (CRC)
US11461262B2 (en) 2020-05-13 2022-10-04 Alibaba Group Holding Limited Method and system for facilitating a converged computation and storage node in a distributed storage system
US11218165B2 (en) 2020-05-15 2022-01-04 Alibaba Group Holding Limited Memory-mapped two-dimensional error correction code for multi-bit error tolerance in DRAM
US11507499B2 (en) 2020-05-19 2022-11-22 Alibaba Group Holding Limited System and method for facilitating mitigation of read/write amplification in data compression
US11556277B2 (en) 2020-05-19 2023-01-17 Alibaba Group Holding Limited System and method for facilitating improved performance in ordering key-value storage with input/output stack simplification
US11263132B2 (en) 2020-06-11 2022-03-01 Alibaba Group Holding Limited Method and system for facilitating log-structure data organization
US11422931B2 (en) 2020-06-17 2022-08-23 Alibaba Group Holding Limited Method and system for facilitating a physically isolated storage unit for multi-tenancy virtualization
US11354200B2 (en) 2020-06-17 2022-06-07 Alibaba Group Holding Limited Method and system for facilitating data recovery and version rollback in a storage device
US11354233B2 (en) 2020-07-27 2022-06-07 Alibaba Group Holding Limited Method and system for facilitating fast crash recovery in a storage device
US11372774B2 (en) 2020-08-24 2022-06-28 Alibaba Group Holding Limited Method and system for a solid state drive with on-chip memory integration
US20220101336A1 (en) * 2020-09-30 2022-03-31 EMC IP Holding Company LLC Compliant and auditable data handling in a data confidence fabric
US11487465B2 (en) 2020-12-11 2022-11-01 Alibaba Group Holding Limited Method and system for a local storage engine collaborating with a solid state drive controller
US11734115B2 (en) 2020-12-28 2023-08-22 Alibaba Group Holding Limited Method and system for facilitating write latency reduction in a queue depth of one scenario
US11416365B2 (en) 2020-12-30 2022-08-16 Alibaba Group Holding Limited Method and system for open NAND block detection and correction in an open-channel SSD
US20220224774A1 (en) * 2021-01-08 2022-07-14 Level 3 Communications, Llc Application programming interface for network service devices
CN113076060B (zh) * 2021-03-10 2022-02-22 杭州又拍云科技有限公司 一种单点日志存储方法
US11726699B2 (en) 2021-03-30 2023-08-15 Alibaba Singapore Holding Private Limited Method and system for facilitating multi-stream sequential read performance improvement with reduced read amplification
US11461173B1 (en) 2021-04-21 2022-10-04 Alibaba Singapore Holding Private Limited Method and system for facilitating efficient data compression based on error correction code and reorganization of data placement
US11476874B1 (en) 2021-05-14 2022-10-18 Alibaba Singapore Holding Private Limited Method and system for facilitating a storage server with hybrid memory for journaling and data storage
US11966782B2 (en) * 2021-09-24 2024-04-23 Dell Products L.P. Method and system for performing historical state management services for composed information handling systems

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1722049A (zh) * 1995-02-13 2006-01-18 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7233978B2 (en) * 1998-07-08 2007-06-19 Econnectix, Llc Method and apparatus for managing location information in a network separate from the data to which the location information pertains
AU2002220182A1 (en) * 2000-10-20 2002-05-21 Wave Systems Corporation System and method for managing trust between clients and servers
JP4240297B2 (ja) * 2003-04-21 2009-03-18 ソニー株式会社 端末機器、認証端末プログラム、機器認証サーバ、機器認証プログラム
US20060107008A1 (en) * 2004-11-18 2006-05-18 Adel Ghanem Apparatus and method for augmenting information security through the use of location data
US7613921B2 (en) * 2005-05-13 2009-11-03 Intel Corporation Method and apparatus for remotely provisioning software-based security coprocessors
US8590024B2 (en) * 2007-02-01 2013-11-19 The Boeing Company Method for generating digital fingerprint using pseudo random number code
US8522019B2 (en) * 2007-02-23 2013-08-27 Qualcomm Incorporated Method and apparatus to create trust domains based on proximity
WO2009006083A1 (en) * 2007-06-29 2009-01-08 Wms Gaming, Inc. Initializing and authenticating wagering game machines
JP5813606B2 (ja) * 2012-09-26 2015-11-17 株式会社日立情報通信エンジニアリング ファイル管理システム及び方法、プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1722049A (zh) * 1995-02-13 2006-01-18 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法

Also Published As

Publication number Publication date
WO2012039714A1 (en) 2012-03-29
US9166893B2 (en) 2015-10-20
CN103098070A (zh) 2013-05-08
EP2619680A1 (en) 2013-07-31
US20130159723A1 (en) 2013-06-20

Similar Documents

Publication Publication Date Title
CN103098070B (zh) 用于监视网络服务中数据位置的方法、装置和系统
US20220198410A1 (en) Providing data provenance, permissioning, compliance, and access control for data storage systems using an immutable ledger overlay network
US11315110B2 (en) Private resource discovery and subgroup formation on a blockchain
CN102170440B (zh) 适用于存储云间数据安全迁移的方法
CN113742782B (zh) 基于隐私保护的区块链访问权限控制方法和区块链系统
US8997198B1 (en) Techniques for securing a centralized metadata distributed filesystem
KR20210133289A (ko) 블록체인 네트워크에서 데이터 추출
JP2022504637A (ja) 暗号化デジタルidのための分散型台帳
US11121876B2 (en) Distributed access control
US20110258434A1 (en) Online secure device provisioning with updated offline identity data generation and offline device binding
KR20190077765A (ko) 데이터를 블록체인을 이용하여 저장하는 방법 및 클라우드 시스템
KR20220160021A (ko) 낮은 신뢰 권한 액세스 관리
JP2023504492A (ja) データ・オブジェクトの効率的しきい値ストレージ
US20220329446A1 (en) Enhanced asset management using an electronic ledger
CN102845043A (zh) 在线安全设备供应框架
CN111291394B (zh) 一种虚假信息管理方法、装置和存储介质
JP2011134037A (ja) ファイル管理装置、ファイル管理プログラム、およびファイル管理方法
US20210067507A1 (en) Information processing apparatus and processing method for the same
CN110910110B (zh) 一种数据处理方法、装置及计算机存储介质
Ulybyshev et al. (WIP) blockhub: Blockchain-based software development system for untrusted environments
JP7053031B2 (ja) 情報処理システム、情報処理装置、情報処理方法及び情報処理プログラム
Sharma et al. Blockchain-based distributed application for multimedia system using Hyperledger Fabric
CN114239044B (zh) 一种去中心化的可追溯共享访问系统
JP2024501401A (ja) 非集中型のブロードキャスト暗号化および鍵生成ファシリティ
CN117077195A (zh) 一种Web3.0基于分布式存储网络的数据隐私保护方法、系统和设备

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
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160817

Address after: American Texas

Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

Address before: Texas USA

Patentee before: Hewlett-Packard Development Company, Limited Liability Partnership

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160330

Termination date: 20160923

CF01 Termination of patent right due to non-payment of annual fee