当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于主与辅虚拟机之间的检查点/传递的技术制造技术

技术编号:16048875 阅读:42 留言:0更新日期:2017-08-20 08:33
示例可包括基于输出分组相似性来确定用于主和辅虚拟机的检查点/传递策略。输出分组相似性可基于时间间隔的比较,经由所述时间间隔内容对于从主和辅虚拟机所输出的分组匹配。检查点/传递模式然后可至少部分基于所确定检查点/传递策略来被选择。

【技术实现步骤摘要】
【国外来华专利技术】用于主与辅虚拟机之间的检查点/传递的技术
本文所描述的示例一般涉及复制运行具有输出分组(其路由到网络)的一个或多个应用的虚拟机(VM)。
技术介绍
与客户端计算装置所耦合的网络服务器越来越多地布置成支持或托管(一个或多个)虚拟机(VM),其使多个操作系统和/或应用能够被单个计算平台所支持。另外,在对托管VM的服务器期望高可用性时,主VM(PVM)和辅VM(SVM)各可托管在独立服务器或节点上(例如数据中心内),并且可复制其状态。状态的这个复制可为“不间断服务”提供应用不可知(agnostic)的软件实现硬件容错解决方案。该容错解决方案可在托管PVM的服务器遭受硬件故障时允许SVM接管(故障转移)。锁步是一种容错解决方案,其可复制每指令的VM状态。例如,PVM和SVM对确定性指令并行地运行,但是对非确定性指令锁步。但是,锁步在应对多处理器(MP)实现(其中各存储器存取可能是非确定性的)时可遭受极大开销。检查点是另一种容错解决方案,其在周期时期(epoch)将PVM状态复制到SVM。对于检查点,为了保证成功故障转移,所有输出分组可需要被缓冲直到已经完成成功检查点。始终缓冲直到VM环境中的成功检查点可导致因输出分组缓冲的额外网络等待时间以及因频繁检查点(有时称作被动(passive)检查点或周期检查点)的额外开销。粗粒度锁步(COLO)是又一种容错解决方案,其使PVM和SVM均馈送有来自客户端的相同请求/数据(输入)网络分组。支持COLO的逻辑可以能够监测PVM和SVM的输出响应,并且将SVM的状态看作是PVM状态的有效复制(只要SVM所生成的网络响应(输出)与PVM所生成的网络响应匹配)。如果给定网络响应不匹配,则抑制对客户端的网络响应的传输,直到PVM状态同步(强制新检查点)到SVM状态。因此,COLO可确保容错系统经由到SVM的故障转移是高度可用的。这个高可用性可存在,即使非确定性可表示SVM的内部状态与PVM的内部状态不同,SVM同样有效并且从外部观察者观点来看对实现COLO的容错系统保持一致。因此,通过避免处理锁步中的MP非确定性的复杂度并且降低被动检查点中的检查点频率/开销,COLO可具有优于纯锁步或检查点容错解决方案的优点。COLO可称作主动检查点或按需检查点。COLO容错解决方案可利用例如与传输控制协议(TCP)栈关联的那些协议的协议。TCP栈可布置成具有每连接的状态,并且可以能够从分组丢失和/或分组重排序进行恢复。COLO可包括使用每TCP连接响应分组比较。如果从PVM所输出的每个TCP连接的响应分组匹配从SVM所输出的每个TCP连接的响应分组,则每TCP连接响应分组比较可将SVM状态看作是有效复制。这个匹配与跨TCP连接的可能分组排序无关。附图说明图1示出示例第一系统。图2示出示例第二系统。图3示出示例第一数据库。图4示出示例第一过程。图5示出示例第三系统。图6示出示例方案。图7示出示例第二数据库。图8示出示例第二过程。图9示出第一设备的示例框图。图10示出第一逻辑流程的示例。图11示出第一存储介质的示例。图12示出第二设备的示例框图。图13示出第二逻辑流程的示例。图14示出第二存储介质的示例。图15示出第三设备的示例框图。图16示出第三逻辑流程的示例。图17示出第三存储介质的示例。图18示出示例计算平台。具体实施方式如本公开中所预期的,COLO可具有优于纯锁步或检查点容错解决方案的优点。COLO可经由使用托管PVM和SVM的服务器极大地改进高度可用容错系统的性能。但是,COLO的性能取决于每个TCP连接的输出相似性。例如,PVM和SVM可生成的每TCP连接的相同输出分组的数量或者PVM和SVM可生成的时长匹配所有TCP连接的输出分组。而且,单个PVM可按照各种TCP/因特网协议(IP)栈实现来保持众多TCP连接或开启(open)。此外,TCP/IP栈实现可以不是确定性的。正是针对这些难题本文所描述的示例是需要的。按照一些第一示例,用于PVM与SVM之间的检查点/传递(CP/D)的技术可包括接收指示第一服务器所托管的PVM与第二服务器所托管的SVM之间的输出分组相似性的信息。对于这些示例,输出分组相似性可包括独立时间间隔,经由所述独立时间间隔内容对来自PVM和SVM的输出分组匹配。第一示例还可包括基于该信息来确定用于输出的分组的CP/D策略,并且向COLO管理器发送CP/D策略。COLO管理器然后可至少部分基于CP/D策略来选择CP/D模式。在一些第二示例中,用于PVM与SVM之间的CP/D的技术可包括将来自第一服务器所托管的PVM的输出分组内容与来自第二服务器所托管的SVM的输出分组内容进行比较。第二示例还可包括确定一个或多个时间间隔,输出分组内容经由所述一个或多个时间间隔匹配,并且基于一个或多个时间间隔来更新指示PVM与SVM之间的输出分组相似性的信息。第二示例还可包括向COLO检查点仲裁器(CCA)发送更新的信息。CCA响应接收更新的信息而可确定用于来自PVM和SVM的输出的分组的CP/D策略。所确定CP/D策略则可从CCA来接收,以及CP/D模式可至少部分基于CP/D策略来选择。图1示出示例第一系统。在一些示例中,如图1中所示的,第一示例系统包括系统100。系统100包括数据中心105,其具有经由内部网络130与辅节点/服务器120耦合的主节点/服务器110。而且,如图1中所示的,主节点110或辅节点120可经由网络(NW)通信信道142与外部网络140耦合。按照一些示例,主节点/服务器110和辅节点/服务器120可布置为容错系统的部分。对于这些示例,主节点/服务器110可布置成托管大量PVM112-1至112-n,其中“n”表示大于1的任何正整数。另外,辅节点/服务器120可布置成托管大量对应SVM122-1至122-n。在一些示例中,PVM112-1和SVM122-1可以能够独立运行(一个或多个)相同应用101,而PVM112-n和SVM122-n可以能够独立运行(一个或多个)相同应用102。对于这些示例,运行(一个或多个)应用101的PVM112-1/SVM122-1以及运行(一个或多个)应用102的PVM112-n/SVM122-n各可利用一个或多个TCP连接将输出的分组路由到外部网络,例如网络140。按照一些示例,主节点/服务器110和辅节点/服务器120各可保持相应心跳115和125,以传递总体服务器(例如物理硬件)的健康状态。例如,心跳115可转播(relay)主节点/服务器110的健康状态信息,以使辅节点120能够确定主节点/服务器110是否出故障或者变成无响应并且因而要求SVM122-1或SVM122-n进行故障转移,以及成为PVM,以服务于或处理来自耦合到网络140(未示出)的客户端的请求。类似地,心跳125可转播辅节点/服务器120的健康状态信息,以使主节点/服务器110能够确定辅节点/服务器120是否出故障或者变成无响应并且因而要求另一个SVM配置用于提供PVM112-1或PVM112-n的容错。按照一些示例,PVM112-1和SVM122-1可在相同内部网络域中进行操作,以用于处理从经由网络140耦合到数据中心105的客户端所接收的请求本文档来自技高网...
用于主与辅虚拟机之间的检查点/传递的技术

【技术保护点】
一种设备,包括:处理器电路;接收组件,供所述处理器电路运行以接收指示第一服务器所托管的主虚拟机(PVM)与第二服务器所托管的辅虚拟机(SVM)之间的输出分组相似性的信息,所述输出分组相似性包括独立时间间隔,在所述独立时间间隔期间内容对于来自所述PVM和所述SVM的输出分组匹配;策略组件,供所述处理器电路运行以基于所述信息来确定输出的分组的检查点/传递策略;以及发送组件,供所述处理器电路运行以发送所述检查点/传递策略到粗粒度锁步(COLO)管理器以便所述COLO管理器至少部分基于所述检查点/传递策略来选择检查点/传递模式。

【技术特征摘要】
【国外来华专利技术】1.一种设备,包括:处理器电路;接收组件,供所述处理器电路运行以接收指示第一服务器所托管的主虚拟机(PVM)与第二服务器所托管的辅虚拟机(SVM)之间的输出分组相似性的信息,所述输出分组相似性包括独立时间间隔,在所述独立时间间隔期间内容对于来自所述PVM和所述SVM的输出分组匹配;策略组件,供所述处理器电路运行以基于所述信息来确定输出的分组的检查点/传递策略;以及发送组件,供所述处理器电路运行以发送所述检查点/传递策略到粗粒度锁步(COLO)管理器以便所述COLO管理器至少部分基于所述检查点/传递策略来选择检查点/传递模式。2.如权利要求1所述的设备,包括所述检查点/传递策略,以指示所述COLO管理器是否要选择按需检查点/即时传递模式或周期检查点/缓冲传递模式其中之一。3.如权利要求2所述的设备,所述按需检查点/即时传递模式包括只要所述输出的分组的内容在所述PVM与所述SVM之间匹配则所述输出的分组要立即被路由到外部网络,如果没有匹配,则实现检查点动作,并且随后输出的分组的传递延迟直到所述检查点动作完成。4.如权利要求2所述的设备,所述周期检查点/缓冲传递模式包括所述输出的分组要被缓冲并且被延迟路由到外部网络,所述输出的分组延迟直到周期检查点动作完成。5.如权利要求4所述的设备,所述周期检查点动作基于先前周期检查点动作与所述周期检查点动作的实现之间的固定时间间隔。6.如权利要求2所述的设备,所述独立时间间隔包括各与所述PVM和所述SVM的多个检查点动作的至少一个检查点动作关联的所述独立时间间隔,较长独立时间间隔指示相对于较短时间间隔的较高输出分组相似性等级,所述较短时间间隔指示较低输出分组相似性等级。7.如权利要求6所述的设备,所述独立时间间隔指示所述多个检查点动作的大多数的所述较高输出分组相似性等级,所述检查点/传递策略向所述COLO管理器指示基于指示所述独立检查点动作的所述大多数的所述较高输出分组相似性等级的所述独立时间间隔来选择按需检查点/即时传递模式。8.如权利要求6所述的设备,所述独立时间间隔指示阈值数量的所述多个检查点动作的所述较高输出分组相似性等级,所述阈值数量按照所述PVM或所述SVM的给定工作负荷的管理偏好来确定,所述COLO管理器基于指示所述阈值数量的独立检查点动作的所述较高输出分组相似性等级的所述独立时间间隔来选择按需检查点/即时传递模式。9.如权利要求6所述的设备,较长独立时间间隔包括大于40毫秒(ms)的时间间隔,较短独立时间间隔包括40ms或以下的时间间隔。10.如权利要求2所述的设备,所述检查点/传递策略向所述COLO管理器指示基于输出的分组的多个连续检查点动作之间的平均时间间隔大于间隔阈值来选择所述按需检查点/即时传递模式,否则所述COLO管理器要选择所述周期检查点/传递策略。11.如权利要求2所述的设备,所述检查点/传递策略向所述COLO管理器指示只要输出的分组的多个连续检查点动作之间的至少一个时间间隔大于间隔阈值则选择所述按需检查点/即时传递模式,否则所述COLO管理器要选择所述周期检查点/传递模式。12.如权利要求11所述的设备,包括:所述接收组件,用于接收指示所述PVM与所述SVM之间的更新的输出分组相似性的更新的信息;所述策略组件,用于基于所述更新的信息来确定是否更新所述检查点/传递策略;以及所述发送组件,用于基于通过所述策略组件的更新的检查点/传递策略向所述COLO管理器发送更新的检查点/传递策略,所述更新的检查点/传递使所述COLO管理器从按需检查点/即时传递改变成周期检查点/缓冲传递模式。13.如权利要求12所述的设备,包括:数据库组件,供所述处理器电路运行以将所述信息和所述更新的信息保持在数据库中,所述数据库还包括所述PVM与所述SVM之间的输出分组相似性的历史统计信息;以及所述策略组件,用于基于所述更新的信息和所述历史统计信息来确定是否更新所述检查点/传递策略。14.如权利要求1所述的设备,包括数字显示器,所述数字显示器耦合到所述电路以呈现用户界面视图。15.至少一种机器可读介质,包括多个指令,所述指令响应由计算平台上实现的系统所运行而使所述系统执行下列操作:接收指示第一服务器所托管的主虚拟机(PVM)与第二服务器所托管的辅虚拟机(SVM)之间的输出分组相似性的信息,所述输出分组相似性包括独立时间间隔,在所述独立时间间隔期间内容对于来自所述PVM和所述SVM的输出分组匹配;基于所述信息来确定用于输出的分组的检查点/传递策略;以及发送所述检查点/传递策略到粗粒度锁步(COLO)管理器以便所述COLO管理器至少部分基于所述检查点/传递策略来选择检查点/传递模式。16.如权利要求15所述...

【专利技术属性】
技术研发人员:田坤董耀祖
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1