用于性能测量的管理程序和物理机以及其中的相应方法_4

文档序号:9333008阅读:来源:国知局
是由于物理机的特定硬件上的虚拟化引起的还是由于网络引起的。再一优点在于,对虚拟机没有影响,影响仅在对于虚拟机来说透明的管理程序中。再进一步地,该方法可以使得云(或虚拟机)的用户能够研究管理程序的性能并且测量SLA。
[0088]根据实施例,插入单元422适于基于诸如地址和端口号之类的分组属性来确定是否要将管理程序时间戳插入在分组中。
[0089]根据再一实施例,插入单元422适于基于分组具有预定协议来确定是否要将管理程序时间戳插入在分组中。
[0090]根据又一实施例,当分组是TWAMP或ICMP的分组时,则管理程序适于将管理程序时间戳插入到分组中。
[0091]本文中的实施例还涉及物理机,如上面描述的,物理机包括执行至少一个虚拟机的至少一个管理程序,适于当虚拟机是虚拟机和对等节点之间的测量的发起者时,在虚拟机和对等节点之间执行性能测量。物理机具有与上面描述的由物理机执行的方法相同的技术特征、目的和优点。将仅简要描述物理机,以便避免不必要的重复。
[0092]这样的物理机还将参照图4a简要描述。图4a图示包括虚拟机430的物理机400,虚拟机430包括适于创建要被传送到对等节点460的分组的创建单元431,其中虚拟机430进一步包括适于通过将第一虚拟机时间戳插入在分组中来初始化分组的初始化单元432、以及适于朝向对等节点460传送分组的传送单元433。物理机进一步包括管理程序420,管理程序420包括适于拦截从虚拟机430传送的分组的拦截单元421、适于将第一管理程序时间戳插入在分组中的插入单元422、适于朝向对等节点460转发分组的转发单元423,其中拦截单元421进一步适于当分组从对等节点被传送回到虚拟机430时拦截分组,插入单元422进一步适于将另外的管理程序时间戳插入在分组中,并且转发单元423进一步适于向虚拟机430转发分组。虚拟机430的初始化单元432进一步适于生成最终虚拟机时间戳。
[0093]物理机具有与由物理机执行的方法相同的优点。一个优点在于,一旦分组已经行进完它的路线,可能从测试分组提取更多信息。(多个)管理程序时间戳使得能够从使用标准化协议的端对端主动测量来定位可能的性能劣化,该劣化可能是由于虚拟化引起的,或者由于互连物理机(虚拟机运行在其上)和对等节点的网络引起的。另一优点在于,该方法可以提供用于系统诊断的功能,例如可能的问题是由于物理机的特定硬件上的虚拟化引起的还是由于网络引起的。再一优点在于,对虚拟机没有影响,影响仅在对于虚拟机来说透明的管理程序中。再进一步地,该方法可以使得云(或虚拟机)的用户能够研究管理程序的性能并且测量SLA。
[0094]根据实施例,虚拟机430的创建单元431进一步适于当创建分组时,确定虚拟机430运行在其上的物理机400的管理程序的数目以及对等节点460的管理程序的数目,并且每管理程序定义两个管理程序时间戳字段。
[0095]根据再一实施例,虚拟机进一步包括分析单元434,其适于基于包括在分组中的管理程序时间戳、虚拟机时间戳和生成的最终虚拟机时间戳,来分析分组。
[0096]根据再一实施例,虚拟机创建分组包括由虚拟机执行的应用创建要被传送到对等节点的分组。
[0097]本文中的实施例还涉及物理机,如上面描述的,物理机包括执行至少一个虚拟机的至少一个管理程序,适于当对等节点是虚拟机和对等节点之间的测量的发起者时,在虚拟机和对等节点之间执行性能测量。物理机具有与上面描述的由物理机执行的方法相同的技术特征、目的和优点。将仅简要描述物理机,以便避免不必要的重复。
[0098]这样的物理机还将参照图4a简要描述。图4a图示包括管理程序420的物理机400,管理程序420包括适于拦截去往虚拟机430的分组的拦截单元421、适于将管理程序时间戳插入在分组中的插入单元422、以及适于向虚拟机430转发分组的转发单元423。物理机400还包括虚拟机,虚拟机包括:适于将虚拟机时间戳插入在分组中的初始化单元432,初始化单元432适于将另外的虚拟机时间戳插入在分组中;适于朝向从其接收到分组的对等节点460传送回分组的传送单元433。管理程序420的拦截单元421适于拦截去往对等节点的分组,并且插入单元422适于将另外的管理程序时间戳插入在分组中,并且转发单元423适于朝向对等节点460转发分组。
[0099]物理机具有与由物理机执行的方法相同的优点。一个优点在于,一旦分组已经行进完它的路线,可能从测试分组提取更多信息。(多个)管理程序时间戳使得能够从使用标准化协议的端对端主动测量来定位可能的性能劣化,该劣化可能是由于虚拟化引起的,或者由于互连物理机(虚拟机运行在其上)和对等节点的网络引起的。另一优点在于,该方法可以提供用于系统诊断的功能,例如可能的问题是由于物理机的特定硬件上的虚拟化引起的还是由于网络引起的。再一优点在于,对虚拟机没有影响,影响仅在对于虚拟机来说透明的管理程序中。再进一步地,该方法可以使得云(或虚拟机)的用户能够研究管理程序的性能并且测量SLA。
[0100]根据实施例,将虚拟机时间戳插入231在分组中的虚拟机包括由该虚拟机执行的、将虚拟机时间戳插入在分组中的应用。
[0101]图4b是物理机、管理程序和虚拟机的另一例示实施例的框图。
[0102]图4b图示在物理机的硬件上运行一个管理程序420的物理机400。管理程序420执行三个虚拟机430a、430b和430c。应该指出的是,这仅是示例,并且管理程序可以执行更少或更多的虚拟机。每个虚拟机执行操作系统OS 450a、450b和450c。存在不同的OS可用,例如 Linux、Windows、OS X Mountain L1n 等。在 OS 450a、450b 和 450c 上,可以运行不同的应用或程序451a、45 Ib和451c,并且在图4b中的示例中,第一虚拟机执行三个不同应用或程序,其中之一是TWAMP。
[0103]图4c是一个物理机、管理程序和虚拟机的另一例不实施例的框图。
[0104]首先,指示为420-1的管理程序I运行在物理机400上。第一管理程序420-1执行第一虚拟机430a-l。第一虚拟机430a-l进而运行称为管理程序2并且指示为420-2的管理程序。在该管理程序2上,运行或执行第二虚拟机,第二虚拟机被指示为430a-2。在指示为430a-2的第二虚拟机上,执行OS 450,并且OS 450进而执行TWAMP控制器或应用451d0以这种方式,物理机可以包括管理程序的分层结构。管理程序分层结构可以驻留在发起者节点、反射器节点或者两者。
[0105]图4d是由管理程序的分层架构产生的两个物理机中的不同管理程序时间戳的框图。
[0106]在该示例中,管理程序被配置为以堆叠方式添加时间戳。也就是说,它们将时间戳添加在测量分组中的下一空槽(empty slot)上(例如在针对TWAMP的分组填充的情况中)。空槽被确定为测试分组中的下一未使用或零字段。也就是说,测量分组将具有在三个不同管理程序处添加的时间戳的堆栈。如果测试应用(或其它实体)知道该情景(即图4b所示的内容),则容易推断哪个时间戳属于哪个管理程序。
[0107]第一物理机400a运行第一管理程序420_1,第一管理程序420_1执行虚拟机(未示出),该虚拟机进而执行第二管理程序420-2。第二管理程序420-2执行第二虚拟机(未示出),第二虚拟机进而执行测试应用,例如充当发起者/控制器的TWAMP应用451d。第一物理机400a的TWAMP应用451d发起性能测量,并且创建要被传送到第二物理机400b的测试分组。第二管理程序420-2拦截测试包、插入第一管理程序时间戳、并且朝向第二物理机400b转发分组,第二物理机400b运行管理程序420b,管理程序420b进而运行充当反射器的TWAMP控制器/应用451d。第一管理程序420-1拦截测试包、将第二管理程序时间戳插入到分组中、并且朝向第二物理机400b转发分组。
[0108]当在第二物理机400b处被接收时,它的管理程序420b拦截分组,并且在将分组转发到充当反射器的TWAMP应用之前,将第三管理程序时间戳插入到分组中。当充当反射器的TWAMP应用朝向第一物理机的第二虚拟机返回分组时,第二物理机400b的管理程序420b拦截分组,并且在将分组转发回到第一物理机的第二虚拟机之前,将第四管理程序时间戳插入到分组中。当在第一物理机400a处接收分组时,第一管理程序420-1拦截分组、并且将第五管理程序时间戳插入到分组中、并且朝向第二虚拟机转发分组。第二管理程序
420-2拦截分组、并且将第六管理程序时间戳插入到分组中、并且朝向充当发起者/控制器的TWAMP应用转发分组。应该注意的是,这是仅图示管理程序时间戳的简化示例,并且已经省略了虚拟机时间戳。
[0109]在图4a中,物理机400还图示为包括接收单元411和传送单元412。通过这两个单元,物理机400适于与通信网络中的其它节点和/或实体进行通信。接收单元411可以包括不止一种接收布置。例如,接收单元可以连接到接线和天线两者,借助于此使得物理机400能够与通信网络中的其它节点和/或实体进行通信。相似地,传送单元412可以包括不止一种传送布置,传送布置进而连接到接线和天线两者,借助于此使得物理机400能够与通信网络中的其它节点和/或实体进行通信。物理机400进一步包括用于存储数据的存储器401。进一步地,物理机400被图示为包括控制或处理单元440,控制或处理单元440进而连接到不同的单元420和430。应该指出的是,这仅是说明性示例,并且物理机400可以包括更多、更少或其它单元或模块,它们以与图4a所示单元相同的方式来执行物理机400的功能。
[0110]应该注意的是,图4a仅在逻辑意义上图示物理机400中的各种功能单元。在实践中,功能可以使用任何合适的软件和硬件装置/电路等来实现。因而,实施例一般不限定于物理机400和功能单元的所示结构。因此,先前描述的示例性实施例可以以许多方式来实现。例如,一个实施例包括具有存储在其上的指令的计算机可读介质,指令可由控制或处理单元440执行,以执行物理机400中的方法步骤。可由计算系统执行并且存储在计算机可读介质上的指令执行如权利要求中阐述的物理机400的方法步骤。
[0111]图4a进一步示意性地图示了使得由物理机的管理程序执行的虚拟机能够借助于接收单元411和传送单元412与通信网络中的其它节点和/或实体进行通信。经由接收单元411和传送单元412的通信通过虚线图示为经由管理程序进行。应该指出的是,这仅是逻辑和简化图示。
[0112]图5示意性地示出管理程序500的例示布置的实施例。包括在管理程序500中的此处为例如具有DSP (数字信号处理器)的处理单元506。处理单元506可以是用于执行本文中描述的过程的不同动作的单个单元或多个单元。管理程序500还可以包括用于从其它实体接收信号的输入单元502以及用于向其它实体提供(多个)信号的输出单元504。输入单元和输出单元可以被布置作为集成实体,或者如图4a的示例所示,作为一个或多个接P 411/412。
[0113]此外,管理程序500包括非易失性存储器形式的至少一个计算机程序产品508,例如EEPR0M(电可擦除可编程只读存储器)、闪速存储器和硬驱动。计算机程序产品508包括计算机程序510,计算机程序510包括代码组件,代码组件当在管理程序500中的处理单元506中执行时使得管理程序执行例如早前结合图1描述的过程的动作。
[0114]计算机程序510可以被配置作为计算机程序模块510a_510e中结构化的计算机程序代码。因此,在例示实施例中,管理程序500的计算机
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1