网络业务映射和性能分析的制作方法_3

文档序号:9423194阅读:来源:国知局
合报告350可作为周期性或非周期性报告而产生,或可经由至服务的API 332应提供者网络的代理或客户端的代理的请求而产生。
[0056]数据流分析
[0057]图4示出根据至少一些实施方案的得到并分析在提供者网络上的客户端专用网络中的客户端资源实例之间的特定的隧道或数据流的性能数据。客户端可在提供者网络上建立专用网络410。专用网络410可包括在由VMM 412监视的VM上实现的多个客户端资源实例414。例如,客户端资源实例414A可由VMM 412A监视,且客户端资源实例414B可由VMM 412B 监视。
[0058]客户端资源实例414A可将客户端数据分组发送到客户端资源实例414B。VMM412A可接收客户端数据分组,根据覆盖网络协议来封装客户端数据分组,并根据IP隧道技术将覆盖网络数据分组发送到在网络基底402上实现的覆盖网络。可根据在覆盖网络分组中的信息经由根据IP隧道技术的隧道406将覆盖网络数据分组路由到VMM412B。对于关于覆盖网络、隧道和IP隧道技术的更多信息,见图10。除了在路由中使用的信息以外,VMM412A还可在覆盖网络分组中包括额外信息(例如确认标记、时间戳、分组序列号等)。对于根据至少一些实施方案的示例覆盖网络数据分组,见图5A。
[0059]注意,可以存在从客户端资源实例414A到客户端资源实例414B的一个、两个或多个单独的数据流,每个数据流对应于在资源实例414A的特定端点和资源实例414B的特定端点之间的通信会话,且因而可以存在在这两个资源实例414之间的一个、两个或多个隧道406。此外注意,客户端资源实例414A和414B可根据状态协议例如传输控制协议(TCP)、无状态协议例如用户数据报协议(UDP)或这两者进行通信。此外注意,客户端资源实例414A和414B还可经由覆盖网络与客户端专用网络410中的其它客户端资源实例通信,且因而每个可以与网络基底402上的其它隧道相关。
[0060]在至少一些实施方案中,VMM 412A还可在已发送分组日志416中记录关于一些或所有覆盖网络数据分组的信息。所记录的信息可包括但不限于下列项中的一个或多个:唯一地识别到VMM 412A的分组的信息,例如数据流/序列号信息;数据分组被发送时的时间,其被称为时间戳;发起覆盖网络数据分组中封装的客户端数据分组的VM、客户端和/或客户端资源实例的指示;以及客户端数据分组的目标的指示。
[0061]当通过隧道406接收到覆盖网络数据分组时,VMM 412B可从客户端数据分组剥去封装并将客户端数据分组转发到客户端资源实例414B。此外,在至少一些实施方案中,VMM412B可经由隧道406将确认(ACK)消息返回到VMM 412A。对于根据至少一些实施方案的覆盖网络确认分组的示例,见图5B和图5C。确认分组可包括识别被确认的覆盖网络数据分组的信息,例如数据流/序列号标识符。在至少一些实施方案中,确认分组可包括额外的信息,例如当覆盖网络数据分组在VMM 412B处被接收到时的时间戳和/或当确认分组由VMM412B发送时的时间戳。如图5B所示,在一些情况下,覆盖网络确认分组可以不包括客户端数据。然而在其它情况下,覆盖网络确认分组还可以包括客户端数据(例如客户端确认分组,例如TCPACK)。
[0062]如前面提到的,在一些实施方案中,VMM 412B可响应于每个接收到的分组而将确认(ACK)消息返回到VMM 412A。在一些实施方案中,作为响应于每个接收到的分组而发送确认消息的可选方案,确认消息可以每第N个分组由VMM 412B发送,例如只有当被VMM412A请求时。在一些实施方案中,如果根据状态协议(例如TCP)建立在客户端资源实例414A和414B之间的通信会话,则VMM 412B可通过在被发送回到发送客户端资源实例414A的客户端ACK消息上捎带确认覆盖网络协议确认消息来利用状态协议。
[0063]在至少一些实施方案中,当经由隧道406从VMM 412B接收到确认分组时,VMM412A可使用包括在分组中的信息来找出在已发送分组日志416中的对应的一个或多个条目。在至少一些实施方案中,VMM 412A可接着使用在确认分组中的或关于确认分组的信息(例如确认分组在VMM 412A处被接收到时的时间)和/或来自对应的一个或多个日志条目的信息(例如当对应的分组被发送时的时间戳)以计算在网络基底402上的覆盖网络隧道406的一个或多个性能度量,例如往返时间。
[0064]不同的技术可用于计算往返时间。例如,在一些实施方案中,VMM 412A可在隧道406上发送的每个分组的已发送分组日志416中记录时间戳。当接收到确认分组时,VMM412A可在对应于已发送分组(对其的确认被接收到)的日志416的条目中记录当确认分组在VMM 412A处被接收到时的时间戳。往返时间可被计算为在这两个时间之间的差异。注意,这种方法并不需要时间戳被包括在确认分组中。
[0065]作为可选方案,在一些实施方案中,VMM 412A可在隧道406上发送的每个分组的已发送分组日志416中记录时间戳。当接收到确认分组时,VMM 412A可在对应于已发送分组(对其的确认被接收到)的日志416的条目中读取并记录当确认分组被接收到时的时间戳。此外,确认分组可包括当覆盖网络数据分组在VMM 412B处被接收到时的时间戳和/或当确认分组由VMM 412B发送时的时间戳。来自确认分组的这个时间戳信息还可记录在已发送分组日志415中。可接着根据时间戳来计算覆盖网络数据分组和确认分组的覆盖网络遍历时间。往返时间可接着被计算为这两个时间的和。在一些实施方案中,作为计算往返时间的可选方案,覆盖网络数据分组的单向遍历时间可替代地从时间戳信息被计算为例如在如在已发送日志416中记录的发送时间和在确认分组中记录的接收时间之间的差异。注意,这些方法需要时间戳包括在确认分组中,且也需要在VMM 412之间的时间同步。因此,时间同步技术或工艺可用于在实现VMM 412的主机设备当中使时间同步,使得往返时间可被准确地计算。
[0066]在一些情况下,覆盖网络数据分组和/或确认分组可能由于某个原因而丢失,且因而VMM 412A可以没有接收先前发送的覆盖网络数据分组的确认分组。在至少一些实施方案中,VMM 412A可例如根据时间阈值来检测丢失的分组,并记录丢失的分组。例如,如果在已发送分组日志416中记录的分组在由阈值规定的时期内未接收到确认,则VMM 412A可在已发送分组日志416中将分组标记为丢失的。
[0067]在一些实施方案中,作为对响应于每个接收到的覆盖网络数据分组而发送确认分组的可选方案,接收VMM 412B可替代地保持接收到的分组日志,其中关于接收到的分组的信息被记录。接收到的分组的所记录的信息可包括但不限于下列项中的一个或多个:唯一地识别接收到的分组的信息,例如数据流/序列号信息;指示数据分组何时被接收到的时间戳;以及指示分组从哪个VMM接收的信息。VMM 412B可接着将为多个分组记录的信息周期性或非周期性地发送到VMM 412A,例如当VMM 412A周期性或非周期性地请求确认分组时。当从VMM 412B接收到信息时,VMM 412A可接着比较这个信息与记录在已发送分组日志416中的信息以计算隧道406的性能信息。注意,因为不为每个分组发送确认分组,可以不计算往返时间。替代地,覆盖网络数据分组的单向遍历时间可被计算为例如在如在已发送分组日志416中记录的发送时间和在从VMM 412B接收的信息中记录的接收时间之间的差异。此外,可通过比较从VMM 412B接收的信息与已发送分组日志416来确定丢失的分组。例如,如果在已发送分组日志416中记录的分组根据接收自VMM 412B的信息遗失,则分组可被标记为丢失的。
[0068]VMM 412A可将在隧道406上发送的每个覆盖网络数据分组的数据发送到覆盖网络分析服务420,或可选地可以周期性或非周期性地将在对应于隧道406的已发送分组日志416中收集的数据发送到覆盖网络分析服务420。覆盖网络分析服务420可收集并存储这个数据,并可在某个时间间隔内执行数据的分析以产生在客户端资源实例414A和414B之间的隧道406特有的性能统计,例如隧道406的时延、吞吐量和分组丢失率。性能统计可作为资源实例数据流报告430经由至服务420的API例如被输出到客户端。图8A示出根据至少一些实施方案的资源实例数据流报告的示例。注意,可以存在从客户端资源实例414A到客户端资源实例414B的一个、两个或多个隧道,且可为每个隧道产生单独的数据流报告430。
[0069]此外,从VMM 412A接收的关于隧道406的数据可与从VMM 412A和/或从在客户端专用网络410上的客户端的资源实例414之间的其它隧道特有的其它VMM接收的其它数据聚合在一起。客户端的资源实例的这个聚合的数据可被分析以产生客户端报告440,例如指示资源实例414的客户端专用网络410的拓扑和在实例之间的连接(隧道)的映射和/或连接的性能统计(例如时延、分组丢失率、吞吐量等)。图SB示出根据至少一些实施方案的客户端级报告的示例。
[0070]此外,客户端的数据可与来自一个或多个其它客户端的数据聚合在一起。来自多个客户端的聚合的数据可被分析以产生覆盖网络的聚合报告450,例如在VMM 412之间的连接(隧道)的映射和连接的性能统计(例如时延、分组丢失率、吞吐量等)。聚合的数据还可用于确定网络基底的特定部件的性能统计并识别在网络基底中的问题点。图SC和8D示出根据至少一些实施方案的示例聚合报告。
[0071]覆盖网络分组
[0072]图5A到图5C示出根据至少一些实施方案的示例覆盖网络数据分组和示例覆盖网络确认分组。图5A示出根据至少一些实施方案的示例覆盖网络数据分组500。分组500可包括根据覆盖网络协议例如由发送VMM封装或加标签的客户端数据分组510。覆盖网络协议可包括覆盖网络头部502。覆盖网络协议可以但不是必须也包括覆盖网络脚注508。覆盖网络头部502可包括覆盖网络地址信息504,其可用于将分组500在覆盖网络上路由到目的地(例如到接收或目标VMM)。发送方(例如发送VMM)可在封装客户端数据分组510时填充这个信息504。覆盖网络头部502还可包括覆盖网络分析信息506。覆盖网络分析信息506可包括但不限于下列项中的一个或多个:指示这个分组500将被确认的确认标记、当这个分组500被发送时的时间戳和这个分组500的分组序列号。分析信息506可包括其它信息,例如识别这个分组500的特定数据流/隧道的信息。在一些实施方案中,覆盖网络头部502还可包括可用于指示确认消息是否响应于这个消息而被发送的标记以及对确认的这个请求所针对的分组的数量的指示。
[0073]图5B示出根据至少一些实施方案的示例覆盖网络确认分组520。确认分组520可包括覆盖网络头部522。确认分组520可以但不是必须也包括覆盖网络脚注528。覆盖网络头部522可包括可用于将分组520在覆盖网络上路由到目的地(例如到发送覆盖网络数据分组500的VMM,对覆盖网络数据分组500产生这个确认分组520)的覆盖网络地址信息524。发送方(例如接收覆盖网络数据分组500的VMM,为覆盖网络数据分组500发送这个确认分组520)将填充这个信息524。覆盖网络头部522还可包括覆盖网络分析信息526。覆盖网络分析信息526可包括但不限于下列项中的一个或多个:一个或多个时间戳(例如指示数据分组500何时被接收到的时间戳和/或指示确认分组520何时被发送的时间戳)以及对应于这个确认分组520的数据分组500的分组序列号。分析信息526可包括其它信息,例如识别对应于这个确认分组520的数据分组500的特定的数据流/隧道的信息。
[0074]图5C示出根据至少一些实施方案的可在状态协议ACK消息上捎带确认消息时使用的示例覆盖网络确认分组530。在一些实施方案中,如果在客户端资源实例之间的通信会话根据状态协议(例如TCP)而建立,则覆盖网络分析方法可通过在被发送回到发送客户端资源实例的客户端ACK消息上捎带覆盖网络协议确认消息来利用状态协议。在这些情况下,除了用包括地址信息534和分析信息536的覆盖网络头部532以及任选的覆盖网络脚注538封装或加标签以外,封装的客户端数据(例如客户端确认分组540)也可包括在覆盖网络分组中。
[0075]分析方法
[0076]图6到图8是根据至少一些实施方案的用于收集并分析覆盖网络客户端业务以确定覆盖网络性能和在各种级别处的其它信息的几种方法的流程图。这些方法基于如在图1和图2中所示的一般方法且并不意欲是限制性的。
[0077]图6是根据至少一些实施方案的用于根据客户端的覆盖网络业务来分析在覆盖网络上的客户端的专用网络实现的性能的方法的流程图。可根据在一段时期内收集的特定客户端的资源实例特有的数据来执行客户端级分析以产生性能、健康和/或客户端的提供者网络实现(例如如图4和图12所示的客户端的虚拟化专用网络)特有的其它信息。
[0078]如在图6的600所指示的,在提供者网络上的一个或多个VMM可基于在覆盖网络上的特定客户端的资源实例之间的业务来收集与覆盖网络性能有关的数据。数据可对应于在特定客户端资源实例之间的隧道上的覆盖网络分组业务,例如,如图4所示。所收集的数据可包括例如从在隧道上的数据分组和确认分组计算的往返时间。替代地或此外,所收集的数据可包括覆盖网络数据分组的单向遍历时间。所收集的数据还可包括丢失的分组的指示。数据可例如被记录在已发送分组日志中,例如,如图4所示。
[0079]如在图6的602所指示的,VMM可周期性或非周期性地向提供者网络的覆盖网络分析服务提供所收集的数据。数据可根据IP隧道协议通过覆盖网络隧道被发送到覆盖网络分析服务,或可选地,数据可根据某个其它联网协议例如TCP或UDP通过覆盖基底被发送。在至少一些实施方案中,覆盖网络分析服务可提供面向网络基底和/或覆盖网络的一个或多个API,VMM可经由网络基底和/或覆盖网络与服务通信,例如以将所收集的覆盖网络业务数据发送到服务。
[0080]如在图6的604所指示的,覆盖网络分析服务分析客户端的所收集的数据以确定在提供者网络上的客户端的专用网络实现的映射和性能统计。例如,可分析为每个隧道收集的往返或单向渡越时间以确定隧道的时延。作为另一示例,可分析数据以确定隧道的分组丢失率。可分析隧道的所计算的性能度量以确定整个专用网络实现的性能统计,例如总时延和/或分组丢失率。
[0081]如在图6的606所指示的,覆盖网络分析服务可经由至服务的API向客户端提供由分析产生的客户端的专用网络实现的信息。例如,客户端专属信息可经由在客户端的外部网络中的控制台例如如图11所示的客户端网络1150的控制台1194上的界面被提供给客户端。
[0082]图7是根据至少一些实施方案的用于根据聚合的客户端网络业务来映射并分析覆盖网络的性能的方法的流程图。可根据在某个时期内为多个客户端收集的数据来执行聚合分析以产生映射、性能、健康和/或作为整体的覆盖网络的其它信息。
[0083]如在图7的700所指示的,在提供者网络上的VMM基于在覆盖网络上的客户端的资源实例之间的业务来收集与覆盖网络性能有关的数据。数据可对应于在客户端资源实例之间的隧道上的覆盖网络分组业务,例如,如图4所示。所收集的数据可包括例如从在隧道上的数据分组和确认分组计算的往返时间。替代地或此外,所收集的数据可包括覆盖网络数据分组的单
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1