分布式高速缓冲存储器一致性协议制造技术

技术编号:8805706 阅读:154 留言:0更新日期:2013-06-13 22:28
描述了与分布式高速缓冲存储器一致性协议关联的系统、方法和其他实施例。根据一个实施例,一种方法包括:接收来自请求者的、对访问在由至少两个物理计算机器共享的块存储设备中的一个或多个存储器块的请求,以及确定对一个或多个存储器块中的任何存储器块的高速缓存权是否已经被授予了不同的请求者。如果高速缓存权尚未被授予不同的请求者,则向请求者授予对一个或多个存储器块的访问权。

【技术实现步骤摘要】
【国外来华专利技术】分布式高速缓冲存储器一致性协议相关申请的交叉引用本公开要求于2010年10月6日递交的第61/390,588号美国临时申请的权益,其通过引用的方式全部并入于此。
技术介绍
在此提供的
技术介绍
描述用于大体呈现本公开的上下文的目的。当前专利技术人的工作(到在此
技术介绍
部分描述的工作的程度)以及在提交时可能无法以其他方式作为现有技术衡量的本描述的诸多方面,既不被明确地也不被暗含地承认为本公开内容的现有技术。存储区域网络(SAN)提供了可以由许多计算机器共享的大量存储容量。通过互联网(iSCSI)或光纤通道连接的方式,机器通常使用SCSI协议与SAN通信。往往,机器会包括SCSI接口卡或者控制器,其控制在机器与SAN之间的数据流。对于机器而言,SAN会显示得如同SAN本地连接到操作系统。因为所有机器都可以访问SAN中的共享存储器,所以通常禁用个体机器上的高速缓存以避免在多个机器上的高速缓冲存储器当中难于保持一致性的问题。
技术实现思路
在一个实施例中,一种装置包括:非瞬态存储介质,其配置作为与物理计算机器关联的高速缓冲存储器,所述物理计算机器与至少一个其他物理计算机器共享对块存储设备的访问。该装置也包括与物理计算机器关联的高速缓存逻辑。该高速缓存逻辑配置成在高速缓冲存储器中高速缓存数据。高速缓存逻辑高速缓存在指定范围内的存储器块中存储的数据而不高速缓存在指定范围之外的存储器块中存储的数据。该装置也包括块指定逻辑,其配置成将对块存储设备中的指定范围的存储器块的高速缓存权分配给高速缓存逻辑。高速缓存权是向高速缓存逻辑授予的独占权。在另一种实施例中,一种方法包括:接收来自请求者的、对访问在由至少两个物理计算机器共享的块存储设备中的一个或多个存储器块的请求,以及确定对一个或多个存储器块中的任何存储器块的高速缓存权是否已经被授予给不同的请求者。如果高速缓存权尚未被授予不同的请求者,则向请求者授予对一个或多个存储器块的访问权。在又一种实施例中,提供了配置用于耦合到物理计算机器的块存储器接口。该块存储器接口还配置成:从物理机器接收对访问在至少一个其他物理计算机器可访问的块存储设备中存储的数据的请求;确定对包括所请求的一个或多个存储器块的一个范围的存储器块的高速缓存权是否已经被分配给块存储器接口 ;如果高速缓存权已经被分配给块存储器接口,则提供在高速缓冲存储器中的数据的访问。高速缓存权是物理计算机器对高速缓存在块存储设备中的一个范围的存储器块的独占权。附图说明附图(并入说明书并且成为其一部分)示出了本专利技术的多个系统、多种方法,以及其他实施例。要理解的是附图示出的元件的界限(例如,框形、框组形或其他形状)代表界限的一个示例。本领域普通技术人员会理解:在一些示例中,可以将元件设计为多个元件或者可以将多个元件设计为一个元件。在一些示例中,显示为另一元件的内部元件的元件可以实现为其外部元件,反之亦然。此外,元件可能未按比例绘制。图1示出了与分布式高速缓冲存储器一致性协议装置关联的系统的一个实施例。图2示出了与分布式高速缓冲存储器一致性协议关联的方法的一个实施例。图3示出了与分布式高速缓冲存储器一致性协议关联的方法的一个实施例。图4示出了与分布式高速缓冲存储器一致性协议关联的方法的一个实施例。图5示出了与分布式高速缓冲存储器一致性协议关联的方法的一个实施例。图6示出了与分布式高速缓冲存储器一致性协议关联的方法的一个实施例。图7示出了与分布式高速缓冲存储器一致性协议设备关联的系统的一个实施例。具体实施方式随着CPU性能增强,虚拟机器的应用变得广泛。诸如Vmware和Windows Hyper-V的操作系统允许单一物理机器运行操作系统的多个实例,每个表现如同完全独立的机器。虚拟机器的操作系统实例访问虚拟“磁盘”的形式为通常存储于SAN中的文件。在SAN上存储虚拟机器的虚拟磁盘文件允许虚拟机器在物理机器间无缝转移。只要SAN可被两个或更多个物理机器访问,虚拟机器就可以在机器间移动。访问SAN通常牵涉到高延迟,使在主物理机器上对虚拟机器的虚拟磁盘文件进行本地高速缓存的选项很吸引人。然而,如在
技术介绍
中所讨论的,当有多个物理机器访问同一 SAN时,高速缓冲存储器的一致性成为一个问题。如果虚拟机器从一个物理机器(A)移动到另一个物理机器(B),则在机器B能够开始从移动后的虚拟机器高速缓存数据之前,需要使在机器A上用于虚拟机器的高速缓冲存储器失效。当虚拟机器使用的存储的形式为基于块设备(SAN)的文件,例如vmfs上的vmdk文件时,情况更加复杂。(在此情况中,块设备通常用诸如vmfs的群集可感知(cluster-aware)文件系统来格式化)。物理机器的高速缓冲存储器,其通常在块层之上操作,无法识别哪些块与任何给定虚拟机器的文件关联,并且同样不能够识别应该使哪些块失效。在此描述的为与分布式高速缓冲存储器一致性协议关联的示例系统、方法和其他实施例。使用一致性协议,共享对块存储设备的访问权的计算机器能够在执行本地高速缓存的同时,动态地解决高速缓冲存储器一致性问题。一致性协议允许块存储设备与各个计算机器协作以促进计算机器当中的高速缓冲存储器一致性。使用分布式高速缓冲存储器一致性协议,对块存储设备中的一个范围的存储器块的独占高速缓存权被指定给访问存储器块的计算机器。除非关于那些存储器块的高速缓存权已经被授予机器,否则计算机器不高速缓存存储器块。以此方式,集中式块指定逻辑确定:块存储设备中的哪些存储器块应该被给定计算机器所高速缓存,并且向上述块授予高速缓存权。块指定逻辑也控制给定计算机器对被另一计算机器所高速缓存的存储器块的访问。因为虚拟机器趋向于访问专属存储块,该专属存储块充当作为用于虚拟机器的虚拟磁盘,虚拟机器通常不访问已经分配给其他虚拟机器的存储块。这使得在此描述的分布式高速缓冲存储器一致性协议很适合在虚拟机器环境中使用,因为其在促进在主机器上高速缓存虚拟机器的虚拟磁盘文件的同时允许虚拟机器无缝转移到另一主机器。参考图1,示出了与分布式高速缓冲存储器一致性协议关联的系统100的一个实施例。系统100包括两个计算机器100、130,其共享对块存储设备160的访问权。计算机器110,130至少包括处理器(未示出),以及本地存储器,其被配置用作高速缓冲存储器115、135。高速缓冲存储器115、135存储来自块存储设备160的所选数据用于由计算机器110、130直接访问(例如,而不是请求在块存储设备中的数据或在块存储设备中存储数据)。访问在高速缓冲存储器110、135中的数据,而不是来自块存储设备160的数据,使计算机器I/O操作的速度加快。虽然图1仅示出了两个计算机器,但是可以用任何数量的计算机器来使用在此描述的分布式高速缓冲存储器一致性协议。为了促进在机器当中高速缓冲存储器一致性,在控制用于计算机器110、130的本地高速缓存的高速缓存逻辑120、140与控制对块存储设备160的访问权的块指定逻辑150之间建立了分布式高速缓冲存储器一致性协议。分布式高速缓冲存储器一致性协议通过指定工作。指定是独占高速缓存权,其由块指定逻辑150分配给各个高速缓存逻辑120、140。针对一个范围的存储器块来授予高速缓存权。在一些实施例中,高速缓存逻辑120、140实施在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:A·普鲁希
申请(专利权)人:马维尔国际贸易有限公司
类型:
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1