掌桥专利:专业的专利平台
掌桥专利
首页

检测和量化在访问云服务时的延时分量

文献发布时间:2024-04-18 20:02:40


检测和量化在访问云服务时的延时分量

背景技术

计算机系统目前被广泛使用。一些计算机系统是托管云服务的基于云的系统。云服务可以由可以以各种不同配置部署的客户端计算系统访问。

一些客户端计算系统属于可能具有位于不同地理位置(例如不同城市)的多个不同的分支的租户。不同的分支可以具有通过位于分支之一的代理服务提供方访问云服务的计算系统。不同的分支可以使用客户端网络边界之外的第三方本地代理服务提供方来访问云服务。不同的分支还可以使用本地互联网服务提供方来访问云服务,或者不同的分支可以使用这些和其他网络配置的不同组合来访问云服务。

上文的讨论仅为了提供一般背景信息,而非旨在用来辅助确定所要求保护的发明主题的范围。

发明内容

延时处理系统在云服务端点处检测业务,并且分析检测到的业务中的分组以识别正在访问云服务的客户端的网络配置。与网络配置的不同部分相对应的延时分量被识别并量化。推荐引擎被控制为以生成并显现指示用于减少网络延时的推荐的输出。

提供本发明内容以便以简化的形式对下面在具体实施方式中进一步描述的一组构思进行介绍。本发明内容并不旨在标识要求保护的发明主题的关键特征或重要特征,也不旨在用于辅助限定要求保护的发明主题的范围。要求保护的发明主题不局限于解决背景技术中指出的任意或所有缺点的实施方式。

附图说明

图1是网络架构的一个示例的框图,其中代理服务提供方被布置在客户端网络内。

图2是示出网络架构的另一个示例的框图,其中客户端使用位于客户端网络边界之外的代理服务提供方。

图3是示出网络架构的另一个示例的框图,其中客户端分支位置使用本地互联网服务提供方(ISP)访问云服务。

图4是示出云服务计算系统的一个示例的框图。

图5是示出云服务计算系统在识别客户端网络配置以及检测和量化延时分量时的操作的一个示例的流程图。

图6是示出互联网服务提供方延时分析系统的一个示例的流程图。

图7是示出代理服务提供方延时分析系统的操作的一个示例的流程图。

图8是示出回程延时分析系统的操作的一个示例的流程图。

图9是示出计算环境的一个示例的框图。

具体实施方式

如上所述,客户端经常使用不同类型的网络配置以访问云服务。这些不同的配置可能将不必要的延时合并到系统中,但客户端可能很难识别不必要的且可以通过采取一些相对简单的动作来避免的延时分量。例如,在一种网络配置中,客户端具有位于不同城市的多个不同分支位置,但在客户端网络边界之内的分支位置之一使用单个代理服务提供方以访问云服务。对于远离代理服务提供方的分支,这可能会产生延时。如果这样的分支位置使用本地代理服务提供方或本地ISP作为云服务的出口,则这样的分支位置可能能够减少延时。然而,客户端可能很难知晓这些延时减少技术。

类似地,在客户端分支机构使用本地代理服务提供方的配置中,相同地理位置中可能存在以较低延时执行的其他代理服务提供方,但客户端可能对此并不知晓。因此,客户端可能难以知道是否要切换到不同的代理服务提供方,以及如果要切换,则选择哪个代理服务提供方。

在不同分支位置使用本地ISP访问云服务的配置中也是如此。相同地理区域中的其他ISP可能具有较低的延时,但客户端对此并不知晓,并且不知道相同地理区域中哪个ISP可能具有最低的延时。

因此,本描述针对在云服务端点处检测业务并识别客户端网络配置的系统进行。系统识别客户端是否正在使用代理服务提供方、本地ISP等。本系统还检测与客户端网络结构中的不同组件相对应的延时,并确定那些延时分量是否过多,这意味着客户端可以使用其他延时较低的替代方案。如果可以实现延时减少,则本系统生成推荐,该推荐既量化延时减少又标识为实现延时减少而可以采取的步骤。该推荐可以以交互方式显现给客户端。

图1是示出计算系统架构100的一个示例的框图。架构100示出客户端可以具有多个不同的分支位置102、104和106,这些分支位置可以位于不同的地理区域,例如不同的城市。不同的分支位置具有通过网络路由器连接到代理服务提供方108的计算系统。例如,分支102处的计算系统通过网络路由器110连接到代理服务提供方108。分支104处的计算系统使用网络路由器112连接到代理服务提供方108,并且分支106处的计算系统使用网络路由器114连接到代理服务提供方108。在一个示例中,代理服务提供方位于客户网络边界116内并且位于分支102、104和106之一的地理位置处。为了当前讨论的目的,将假设代理服务提供方108位于分支104的地理位置处。不同分支102、104和106中的每个分支使用代理服务提供方108来连接到一个或多个不同云服务118、120和122。

云服务被部署在云服务计算系统上。每个云服务可以具有前端,该前端展示可以由分支计算系统102-106通过代理服务提供方108访问的接口。每个云服务还具有后端,该后端通过前端接收请求,并可以响应于请求来操纵用户数据。

在图1所示的架构100中,代理服务器108位于分支计算系统104的地理位置处,如虚线109所示。在实施策略和防火墙约束的代理服务提供方108处分析请求和响应。代理服务提供方108基于来自不同分支计算系统102-106的请求来建立与云服务118-122的新连接。架构100引入了所谓的“回程延时”,其是分支位置102和106向分支104的地理位置发送请求所引起的延时,这是因为分支104的地理位置是代理服务提供方108所在的位置。回程延时可能过长,尤其是在分支位置102和106位于距离分支104的位置很远的地理距离的情况下。

图2是示出第二计算系统架构124的一个示例的框图。一些项与图1中所示的项类似,并且它们具有类似的编号。然而,图2所示的架构中的不同分支计算系统102、104和106各自使用由第三方部署的代理服务提供方,而不是使用客户网络边界116内的代理服务提供方108。例如,分支计算系统102使用代理服务提供方126。分支计算系统104使用代理服务提供方128,并且分支计算系统106使用代理服务提供方130。

在架构124中,在第三方代理服务提供方126、128和130处实施安全和公司策略。代理服务提供方终止从相应分支计算系统102、104和106接收的请求,并创建到云服务端点118、120和122的新连接。这使得代理服务提供方能够对未加密分组实施特定的客户网络策略,但它也会引入额外的延时。另外,代理服务提供方126、128和130中的每个代理服务提供方的物理地理位置可能影响在使用那些代理服务提供方时引入的延时。此外,在相似的地理位置中可能存在具有较低延时的其他代理服务提供方,但是分支计算系统102、104和106处的用户可能对此无法知晓。

图3是示出计算系统架构132的一个示例的框图。架构132与图2所示的架构124类似,并且对类似的项进行了类似的编号。然而,分支计算系统102、104和106不是仅使用第三方代理服务提供方126、128和130(如图2所示),而是使用本地互联网服务提供方(ISP)来连接到云服务118、120和122。例如,分支计算系统102使用本地ISP 134。分支计算系统104使用本地ISP 136,并且分支计算系统106使用本地ISP 138。在图3所示的架构132中,分支计算系统102、104和106中的每个分支计算系统都具有到各种云服务118、120和122的互联网访问的直接路由,但是本地ISP 134、136和138不执行策略实施。因此,在一个示例中,计算系统可以将图3中的架构用于可信业务,并且可以将代理用于不可信业务。网络地址转换组件135、137和139执行针对连接性的网络分析转换,并且分支计算系统102、104和106各自期望本地ISP 134、136和138对云服务118、120、122具有最小的延时。然而,在与本地ISP 134、136和138相同的地理区域中(例如,在相同的城市或其他预定义区域中)可能存在提供比ISP 134、136和138更低的延时的其他ISP。然而,对于分支计算系统102、104和106的用户来说,对此知晓将是非常困难的,更不用说知晓用户通过切换到不同ISP而将经历的延时减少的量。

图4是云服务计算系统140的一个示例的框图。云服务计算系统140可以用于部署云服务118、120和122或不同的云服务中的任何一者。在图4所示的示例中,云服务计算系统140说明性地包括一个或多个处理器或服务器142、数据存储库144、服务后端146、服务前端148、延时处理系统150、以及各种各样其他计算系统功能152中的任何一种。延时处理系统150说明性地包括业务检测器154、ISP延时分析系统156、代理SP延时分析系统158、网络配置检测器155、回程延时分析系统160、推荐引擎162、用户界面生成器164和其他项166。ISP延时分析系统156包括ISP识别器168、ISP延时检测器170、ISP排序系统172、ISP延时比较系统174、ISP延时减少量化系统176和其他项178。代理SP延时分析系统158包括代理SP识别器180、代理SP延时检测器182、代理SP排序系统184、代理SP延时比较系统186、代理SP延时减少量化系统188和其他项190。回程延时分析系统160包括总延时识别器192、中程(mid-mile)延时识别器194、分支选择器196、回程延时识别器198、延时比较系统200、回程延时减少量化系统202和其他项204。在更详细地描述云服务计算系统140的总体操作之前,将首先提供对云服务计算系统140中的一些项及其操作的描述。

服务前端148向由云服务计算系统140托管的服务展示接口206。接口206可以由不同的分支计算系统102、104和106访问,因此系统102、104和106可以向云服务端点提供请求。服务前端148通过接口206接收请求并将它们提供给服务后端146,服务后端146基于请求对存储在数据存储库144中的客户数据执行操纵。服务后端146还可以响应于请求而将信息返回给服务前端148。服务前端148可以通过接口206响应进行请求的分支计算系统102、104和/或106。

延时处理系统150检测在托管服务处接收到的业务(请求)并识别提交请求的客户端的网络配置。例如,业务检测器154可以检测接收到的请求中的分组,并且网络配置检测器155可以检测请求所源自的配置类型(例如图1-图3中所示的那些)。如果客户端通过ISP(例如在图3中所示的配置132中)提交请求,则ISP延时分析系统156分析与ISP相对应的延时以确定是否可以实现任何延时减少。ISP识别器168执行反向IP地址查找以识别每个请求来自的ISP并识别在相同地理区域(例如在相同城市)中使用的多个不同的ISP。ISP延时检测器170检测通过使用所识别的ISP中的每个ISP而引起的延时。ISP排序系统172基于检测到的延时来对可用ISP进行排序。ISP延时比较系统174选择客户端进行分析,并且如果客户端要切换到排序列表中的另一个ISP,则将客户端当前正在使用的ISP的延时与可以由客户端观察到的最小延时进行比较。ISP延时减少量化系统176量化可以通过切换ISP而实现的延时减少,并向推荐引擎162提供输出。输出标识客户端应切换到的特定ISP,以及如果客户端切换到该ISP,客户端可能会经历的延时减少的量。推荐引擎162基于该信息生成推荐,并将推荐提供给用户界面生成器164,用户界面生成器164生成用于向发送请求的客户端计算系统处的用户显现推荐的用户界面。用户界面可以是交互式用户界面,使得用户可以与其交互以便快速且自动地切换ISP、摒弃(dismiss)推荐、保存推荐以供以后动作等。

当网络配置检测器155确定客户端处于诸如图2所示的配置124之类的网络配置中时,代理SP分析系统158识别与客户端正在使用的代理服务提供方相对应的任何可避免的延时。代理SP识别器180使用网络地址转换结构执行反向IP查找并将其映射到特定代理服务提供方。代理服务提供方延时检测器182检测所识别的代理服务提供方的延时以及和与客户端正在使用的代理服务提供方处于相同地理区域(例如,在相同城市)的其他代理服务提供方相对应的延时。代理服务提供方排序系统184基于延时来对可用代理服务提供方进行排序。代理服务提供方延时比较系统186将使用所识别的代理服务提供方的客户端所经历的延时与在客户端使用排序最高的代理服务提供方(具有最低延时的代理服务提供方)的情况下客户端将经历的延时进行比较。如果通过选择另一个代理服务提供方存在可用的延时减少,则延时减少量化系统188量化该延时减少并向推荐引擎162提供输出,该输出指示客户端应切换到的代理服务提供方以及如果客户端切换将经历的延时减少的量。推荐引擎162生成推荐,该推荐量化可能的延时减少并标识为实现可能的延时减少而采取的动作(例如,切换到特定代理服务提供方)。该推荐被提供用于用户界面生成器164,用户界面生成器164为用户显现该推荐。

当网络配置检测器155确定客户端处于诸如图1所示的配置之类的配置中时,则系统160分析回程延时(例如,分支向代理服务提供方发送请求的延时)以确定是否有任何延时减少可用。

总延时识别器192识别与请求相对应的总延时。可以通过访问作为请求的一部分发送的分组上的时间戳来确定总延时,以确定它们何时被发送以及何时到达云服务端点。中程延时识别器194将中程延时识别为从本地(on-premise)代理服务提供方108到云服务端点的延时。分支选择器196然后选择分支计算系统102、104和106之一,并且回程延时识别器198识别与所选择的分支相对应的回程延时。例如,假设分支选择器196选择分支计算系统102。来自分支102的针对请求的总延时被识别,并且从总延时中减去从代理服务提供方108到云服务端点的中程延时以得到回程延时。因此,回程延时是分支计算系统102在向分支104的位置处的代理服务提供方108发送请求时遇到的延时。回程延时可能很高,例如在分支计算系统102距离代理服务提供方108很远的情况下。

延时比较系统200识别如果分支计算系统102使用第三方本地代理服务提供方(例如图2所示的代理服务提供方126)将经历的延时以及如果分支计算系统102使用本地ISP(例如图3所示的ISP 134)将经历的延时。延时比较系统200然后将分支计算系统102在经过代理服务提供方108时经历的延时与在其他架构之一中经历的延时进行比较。如果可以通过切换到其他架构之一来实现延时减少,则回程延时减少量化系统202量化该延时减少并生成指示可以实现的延时减少的量以及分支计算系统102应当切换到以便实现该减少的特定架构的输出。基于来自系统202的输出,推荐引擎162生成推荐并将该推荐提供给用户界面生成器164,用户界面生成器164在分支计算系统102处显现该推荐以供用户交互。

图5是示出云计算系统140在检测延时、识别可能的延时减少以及显现推荐以供用户交互时的操作的一个示例的流程图。业务检测器154首先检测到达云服务端点的业务,如图5的流程图中的框210所指示的。延时处理系统150然后对业务执行延时分析,以识别为了减少在客户端计算系统处经历的延时而能够做出的任何推荐。执行延时分析由图5的流程图中的框212指示。

举例来说,网络配置检测器155可以识别网络配置,如框214所指示的。ISP延时分析系统156可以分析IPS性能以识别任何可能的延时减少,如框216所指示的。代理SP延时分析系统可以分析代理SP性能以识别任何可能的延时减少,如框218所指示的,并且回程延时分析系统160可以分析回程性能以识别任何可能的延时减少,如框220所指示的。延时处理系统150也可以以其他方式识别延时减少,如框222所指示的。

推荐引擎162然后可以生成推荐,并且该推荐可以由用户界面生成器164显现,如图5的流程图中的框224所指示的。推荐可以作为交互式用户界面显示的一部分来显现,并且与推荐的用户交互也可以被检测和处理,如框226所指示的。也可以以其他方式生成和显现推荐,如框228所指示的。

在一个示例中,这种类型的延时监测是连续的、周期性的或间歇性的。除非到了停止执行延时分析的时间,如框230所指示的,处理返回到框210,其中在云服务端点处检测到更多业务。

图6是更详细地示出ISP延时分析系统156的操作的一个示例的流程图。首先假设业务检测器154检测到到达服务端点的业务,如图6的流程图中的框232所指示的。还假设网络配置检测器155已经检测到被分析的分支计算系统(例如,分支计算系统102)正在使用本地ISP,例如在图3所示的配置132中。ISP识别器168然后执行反向IP地址查找以识别分支计算系统102正在使用的出口ISP 134,如图6的流程图中的框234所指示的。ISP识别器168还基于在云服务端点处接收到的其他业务来识别相同地理区域中的其他ISP。可以使用网络地址转换基础设施和分组的报头中的IP地址来执行反向查找,如框236所指示的。反向查找可以用于映射到分支计算系统102正在使用的以及相同区域中的其他计算系统正在使用的相应出口ISP 134,如框238所指示的。也可以以其他方式来识别ISP,如框240所指示的。

ISP延时检测器170然后检测分支计算系统102可以使用的每个ISP的最小延时。每个可用ISP到相同服务端点的最小延时被计算,如框242所指示的。说明性地,最小延时可以是来自每个ISP从相同地理位置(例如,来自相同城市)发起的所有网络请求的第十个百分位的延时,如框244所指示的。也可以以其他方式计算可用ISP上的最小延时,如框246所指示的。然后,对于相同地理区域(例如,相同城市)中并且计算出最小延时的每个ISP,根据每个ISP遇到的最小延时来对ISP进行排序。基于延时来对ISP进行排序由图6的流程图中的框248指示。

ISP延时比较系统174然后识别ISP排序列表中具有最低延时的ISP,并将所识别的ISP的延时与被分析的分支计算系统(分支计算系统102)当前正在使用的特定ISP的延时进行比较。识别排序列表中具有最低延时的ISP由框250指示,并且将该延时与针对被分析的分支计算系统当前正在使用的ISP的延时进行比较由框252指示。

如果分支计算系统可以通过切换到所识别的ISP(排序列表中具有最低延时的ISP)而经历较低的延时,则ISP延时减少量化系统176量化该可能的延时减少并将输出提供给推荐引擎162,推荐引擎162生成针对分支计算系统102的推荐。确定任何延时减少是否可用由框254指示,并且生成推荐由框256指示。在一个示例中,该推荐量化了通过切换ISP而可用的延时减少,如框258所指示的。在一个示例中,该推荐还标识分支计算系统102应当使用的特定ISP以便实现延时减少。标识ISP由框260指示。该推荐可以是交互式的并且还包括各种各样的其他信息,如框262所指示的。用户界面生成器164然后向用户显现推荐,如框264所指示的。

图7是示出当所考虑的分支计算系统处于如图2所示的配置时,代理SP延时分析系统158在分析延时时的操作的一个示例的流程图,其中分支计算系统102使用第三方代理服务提供方来访问云服务端点。首先假设业务检测器154检测到达云服务端点的业务,其中该业务包括来自相同城市中的客户端计算系统的请求。检测业务由框266指示,并且识别来自相同城市的业务由框268指示。需要注意的是,可以通过其他方式检测到业务来自相同地理区域,并且该区域也可以是不同于相同城市的区域,例如地理直径内的区域,或者在另一个预定义大小的区域中。以其他方式检测业务由图7的流程图中的框270指示。

在云服务端点处检测到的业务(请求分组)中,代理SP识别器180检测代理服务提供方前缀以识别正在提供请求的代理服务提供方。检测代理服务提供方前缀由图7的流程图中的框272指示。代理SP识别器180然后可以访问公开可用的前缀,并对那些前缀与分组上可用的网络地址转换IP地址进行比较以识别正在发送请求的特定服务提供方。访问公开可用的前缀由框274指示,并且将它们与网络地址转换基础设施中的IP地址进行比较由框276指示。也可以以其他方式来识别代理服务提供方,如框278所指示的。

代理SP延时检测器182然后计算针对源自相同城市的每个代理服务提供方的最小延时,如框280所指示的。同样,最小延时可以是第十个百分位的延时,如框282所指示的,或者另一延时,如框284所指示的。

代理SP排序系统184然后基于通过那些代理服务提供方到达云服务端点的最小延时来对计算了延时的代理服务提供方进行排序。基于最小延时来对代理服务提供方进行排序由图7的流程图中的框286指示。

代理SP延时比较系统186然后识别排序列表中具有最低延时的代理服务提供方,并将所识别的代理服务提供方的延时与被分析的分支计算系统(例如,分支计算系统102)当前正在使用的代理服务提供方的延时进行比较。识别排序列表中具有最低延时的代理服务提供方由框288指示,并且将针对该代理服务提供方的延时与针对被分析的分支计算系统102所经历的延时进行比较由图7的流程图中的框290指示。

例如,假设第一代理服务提供方具有从城市A到达云服务端点的28毫秒的延时。假设第二代理服务提供方具有从城市A的52毫秒的延时,并且假设第三代理服务提供方(分支计算系统102当前正在使用的代理服务提供方)具有从城市A到达云服务端点的129毫秒的延时。在那种情况下,列表中排序最高的代理服务提供方是延时为28毫秒的第一代理服务提供方,并且分支计算系统102处的客户端可用的延时减少是101毫秒(129毫秒-28毫秒)。因此,在框292处,代理SP延时比较系统186识别存在可用的延时减少,并生成到推荐引擎162的输出,该输出标识延时减少的量以及为了实现该延时减少客户端应当切换到的特定代理服务提供方。

推荐引擎162生成推荐,如框294所指示的。该推荐可以量化延时减少,如框296所指示的,并标识为了实现延时减少应当选择的代理服务提供方,如框298所指示的。

在另一示例中,延时减少量化系统188还考虑如果分支计算系统102使用本地出口ISP而不是代理服务提供方则可能可用的延时减少。在那种情况下,可以提供单独的延时减少和推荐的单独部分来标识可以通过使用出口ISP而不是代理服务提供方来实现的延时减少,并且该推荐还可以标识为了实现延时减少而应当选择的特定ISP。让推荐考虑针对可信业务的出口而无需代理服务提供方由图7的流程图中的框300指示。该推荐也可以包括其他信息302。

该推荐可以从推荐引擎162输出到用户界面生成器164,用户界面生成器164为被分析的分支计算系统(分支计算系统102)的用户显现推荐。显现推荐由图7的流程图中的框304指示。

图8是更详细地示出回程延时分析系统160的操作的一个示例的流程图。首先假设业务检测器154检测到从位于相同城市的多个不同代理服务提供方以及从全部使用相同代理服务提供方的多个不同分支到达服务端点的业务。检测到达云服务端点的业务由图8的流程图中的框306指示。

总延时识别器192然后识别请求的总延时,如框308所指示的。说明性地,总延时是回程延时加上从代理服务提供方到云服务端点的延时,如框310所指示的。也可以以其他方式检测总延时,如框312所指示的。

中程延时识别器194然后检测针对相同城市、针对多个不同ISP的最佳中程延时,如框314所指示的。最佳中程延时可以是从出口城市到相同ISP上的服务端点的第十个百分位的延时,如框316所指示的。也可以以其他方式检测最佳中程延时,如框318所指示的。

分支选择器196然后选择要针对其计算回程延时的分支。选择分支由图8的流程图中的框320指示。例如,假设分支选择器196已经选择分支计算系统102用于计算回程延时。回程延时识别器198然后计算针对所选择的分支的回程延时,如框322所指示的。可以通过在分支(或分支提交的请求)处观察到的总延时减去该分支的中程延时(从代理服务提供方到云服务端点的延时)来计算回程延时,如框324所指示的。也可以以其他方式计算回程延时,如框326所指示的。

延时比较系统200然后确定是否存在可用的延时减少。延时减少可以基于分支计算系统102是否可以通过使用本地ISP或第三方代理服务提供方而不是使用本地服务提供方108来经历延时减少而确定。例如,当分支计算系统102距离代理服务提供方108的物理位置很远时,则分支计算系统102最好改为使用本地ISP或本地第三方代理服务提供方来访问云服务端点。延时比较系统200确定是否可以通过使用这些方法之一而不是使用本地代理服务提供方108来实现延时减少。确定是否存在可用的延时减少由框328指示。

如果是,则延时比较系统200生成到推荐引擎162的输出,该输出量化可能的延时减少并标识可能被选择以便实现延时减少的本地第三方代理服务提供方或本地ISP。推荐引擎162生成包括该信息的推荐,如框330所指示的。该推荐可以标识来自分支位置的本地出口,如框332所指示的。该推荐也可以包括其他信息334。用户界面生成器164然后生成输出以为用户显现推荐,如框356所指示的。

如果有更多分支要考虑,如框358所指示的,则处理返回到框320,在此选择下一个分支计算系统以用于回程延时的计算,以及切换到不同的配置以减少总体延时的可能推荐。

因此可以看出,本系统检测到达云服务端点的业务,识别进行请求的计算系统的配置以及正被使用的特定ISP或代理服务提供方。系统然后确定通过切换配置、切换ISP或切换代理服务提供方是否可以存在可用的延时减少,并且如果是,则生成推荐,该推荐量化可能可用的延时减少,并标识为了获得该延时减少而要采取的特定步骤。该推荐可以是交互式的,使得用户能够轻松切换ISP、切换代理服务提供方、改变配置等。

将指出的是,上述讨论已经描述了各种不同的系统、组件和/或逻辑。将领会的是,这样的系统、组件和/或逻辑可以由执行与那些系统、组件和/或逻辑相关联的功能的硬件项(例如处理器和相关联的存储器,或其他处理组件,在下文中描述了其中的一些)组成。另外,如下所述,系统、组件和/或逻辑可以由加载到存储器中并随后由处理器或服务器或其他计算组件执行的软件组成。系统、组件和/或逻辑还可以由硬件、软件、固件等的不同组合组成,在下文中描述了它们的一些示例。这些只是可以用于形成上述系统、组件和/或逻辑的不同结构的一些示例。也可以使用其他结构。

本讨论已提及处理器和服务器。在一个示例中,处理器和服务器包括具有相关联的存储器和定时电路(没有单独示出)的计算机处理器。它们是其所属的系统或设备的功能部分,并且由那些系统中的其他组件或项激活,并且便利那些系统中的其他组件或项的功能。

另外,已经讨论了多个用户界面显示。它们可采取多种不同的形式,并且可以具有置于其上的多种不同的用户可致动的输入机制。例如,用户可致动的输入机制可以是文本框、复选框、图标、链接、下拉菜单、搜索框等。也可以用多种不同的方式来致动这些机制。例如,可以使用点击设备(例如轨迹球或鼠标)来致动这些机制。可以使用硬件按钮、开关、操纵杆或键盘、拇指开关或拇指垫等来致动这些机制。还可以使用虚拟键盘或其他虚拟致动器来致动这些机制。此外,在显示它们的屏幕是触摸敏感屏幕的情况下,可以使用触摸手势来致动这些机制。另外,在显示它们的设备具有语音识别组件的情况下,可以使用语音命令来致动这些机制。

也已经讨论了多种数据存储库。将指出的是,可以将它们各自分割成多个数据存储库。所有的数据存储库对于访问它们的系统来说可以是本地的,所有的数据存储库可以是远程的,或者一些可以是本地的而其他是远程的。在本文中设想了所有这些配置。

另外,附图示出了具有归于每个框的功能的多个框。将指出的是,可以使用更少的框,以便功能由更少的组件执行。另外,在功能分布在更多组件之中的情况下,可以使用更多的框。

本文中已经讨论了云计算架构。在一个示例中,云计算提供不要求端用户知晓传送服务的系统的物理位置或配置的计算、软件、数据访问和存储服务。在各个示例中,云计算使用合适的协议在广域网(例如互联网)上传送服务。例如,云计算提供方在广域网上传送应用,并且其可以通过web浏览器或任何其他计算组件来访问。云架构的软件或组件以及相应数据可以被存储在远程位置处的服务器上。云计算环境中的计算资源可以被合并在远程数据中心位置处,或者它们可以是分散的。云计算基础设施可以通过共享的数据中心来传送服务,即使对于用户来说它们看起来像单个接入点。因此,可以使用云计算架构从远程位置处的服务提供方提供本文中描述的组件和功能。替代地,这些组件和功能可从传统服务器提供,或者它们可以直接或以其他方式被安装在客户端设备上。

本描述旨在包括公共云计算和私有云计算二者。云计算(公共和私有二者)提供资源的大量无缝汇集,以及管理和配置底层硬件基础设施的降低的需求。

公共云由供应商管理,并且一般支持多个消费者使用相同的基础设施。另外,与私有云相反,公共云可以将终端用户从管理硬件中解放出来。私有云可以由组织自身管理,并且基础设施一般不与其他组织共享。组织仍然在某个程度上维护硬件,例如安装和维修等。

图9是可以用于前图所示的架构中的计算环境的一个示例。参考图9,用于实现一些实施例的示例系统包括具有被编程为如上所述进行操作的计算机810形式的计算设备。计算机810的组件可以包括但不限于:处理单元820(其可以包括来自前图的处理器或服务器),系统存储器830,以及将包括系统存储器的各种系统组件耦合到处理单元820的系统总线821。系统总线821可以是若干种类型的总线结构中的任意一种,包括存储器总线或存储器控制器、外围总线、以及使用各种总线架构中的任意一种的本地总线。通过举例而非限制的方式,这样的架构包括:工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线和外围组件互连(PCI)总线(也被称为Mezzanine总线)。针对前图描述的存储器和程序可以被部署在图9的相应部分中。

计算机810通常包括各种计算机可读介质。计算机可读介质可以是可以由计算机810访问的任何可用介质,并且包括易失性和非易失性介质,可移动和不可移动介质二者。通过举例而非限制的方式,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质不同于,并且不包括调制数据信号或载波。计算机存储介质包括硬件存储介质,硬件存储介质包括用于存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的信息的、以任何方法或技术实现的易失性和非易失性、可移动和不可移动介质二者。计算机存储介质包括但不限于:RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储装置、磁带盒、磁带、磁盘存储装置或其他磁存储设备、或者可以用于存储期望的信息且可以由计算机810访问的任何其他介质。通信介质通常体现为计算机可读指令、数据结构、程序模块或传输机制中的其他数据,并且包括任何信息传送介质。术语“经调制的数据信号”意指其一个或多个特性以用于对信号中的信息进行编码的方式来设置或改变的信号。通过举例而非限制的方式,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声音、RF、红外线和其他无线介质之类的无线介质。上述各项中任意项的组合也应当被包括在计算机可读介质的范围之内。

系统存储器830包括具有易失性和/或非易失性存储器形式的计算机存储介质,例如只读存储器(ROM)831和随机存取存储器(RAM)832。包含有助于在计算机810内的元件之间传输信息(例如在启动时)的基本例程的基本输入/输出系统833(BIOS)通常被存储在ROM831中。RAM 832通常包含由处理单元820立即可访问的和/或当前在处理单元820上操作的数据和/或程序模块。通过举例而非限制的方式,图9示出了操作系统834、应用程序835、其他程序模块836和程序数据837。

计算机810还可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。仅通过举例的方式,图9示出了从不可移动、非易失性磁性介质读取或向其写入的硬盘驱动器841,以及从可移动、非易失性光盘856(例如CD ROM或其他光介质)读取或向其写入的光盘驱动器855。可以用于示例性操作环境的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于:盒式磁带、闪存卡、数字多功能盘、数字视频磁带、固态RAM、固态ROM等。硬盘驱动器841通常通过不可移动存储器接口(例如接口840)连接到系统总线821,而光盘驱动器855通常通过可移动存储器接口(例如接口850)连接到系统总线821。

替换地或另外地,本文中描述的功能至少部分可以由一个或多个硬件或逻辑组件来执行。举例而非限制性地,可以使用的硬件逻辑组件的说明性类型包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、程序专用标准产品(ASSP)、系统芯片系统(SOC)、复杂可编程逻辑器件(CPLD)等。

在上文讨论并且在图9中示出的驱动器及其相关联的计算机存储介质为计算机810提供计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图9中,硬盘驱动器841示为存储操作系统844、应用程序845、其他程序模块846和程序数据847。注意,其他组件可以与操作系统834、应用程序835、其他程序模块836和程序数据837相同或不同。操作系统844、应用程序845、其他程序模块846和程序数据847在这里被赋予不同的编号以说明至少它们是不同的副本。

用户可以通过诸如键盘862、麦克风863和定点设备861(例如鼠标、轨迹球或触摸板)之类的输入设备来向计算机810输入命令和信息。其他输入设备(未示出)可以包括操纵杆、游戏手柄、碟形卫星天线、扫描仪等。这些和其他输入设备经常通过耦合到系统总线的用户输入接口860连接到处理单元820,但可以通过其他接口和总线结构(例如并行端口、游戏端口或通用串行总线(USB))连接。视觉显示器891或其他类型的显示设备也经由接口(例如视频接口890)连接到系统总线821。除了显示器之外,计算机还可以包括诸如扬声器897和打印机896之类的其他外围输出设备,这些设备可以通过输出外围接口895连接。

计算机810使用去往一个或多个远程计算机(例如远程计算机880)的逻辑连接而操作在联网环境中。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其他公共网络节点,并且通常包括上文针对计算机810描述的许多或所有元素。图9中描绘的逻辑连接包括:局域网(LAN)871和广域网(WAN)873,但还可以包括其他网络。这样的联网环境常见于办公室、企业范围计算机网络、内联网和互联网。

当用于LAN联网环境时,计算机810通过网络接口或适配器870连接到LAN 871。当用于WAN联网环境时,计算机810通常包括调制解调器872或用于在WAN 873(例如互联网)上建立通信的其他单元。调制解调器872(其可以是内部或外部的)可以经由用户输入接口860或其他适当的机制连接到系统总线821。在联网环境中,针对计算机810描绘的程序模块或其部分可以被存储在远程存储器存储设备中。通过举例而非限制的方式,图9将远程应用程序885示为驻留在远程计算机880上。将领会的是,示出的网络连接是示例性的,并且可使用用于在计算机之间建立通信链路的其他单元。

还应当指出的是,本文中描述的不同实施例可以不同方式进行组合。也就是说,一个或多个实施例的一些部分可以与一个或多个其他实施例的一些部分组合。在本文中设想了所有这些。

示例1是一种计算机系统,包括:

至少一个处理器;以及

存储指令的数据存储库,所述指令在由所述至少一个处理器执行时使所述至少一个处理器执行包括下列各项的步骤:

检测第一客户端在使用第一组网络组件连接到云服务端点时的第一延时;

检测第二客户端在使用第二组网络组件连接到所述云服务端点时的第二延时,所述第二客户端与所述第一客户端在公共地理区域中,所述第二延时高于所述第一延时;

基于使用所述第一组网络组件遇到的延时,识别所述第二客户端为了获得延时减少而能够做出的所述第二组网络组件的改变;以及

生成到所述第二客户端的延时减少推荐输出,所述延时减少推荐输出标识可用于所述第二客户端的延时减少的量以及所述第二组网络组件的所识别的改变。

示例2是根据任何或所有先前示例所述的计算机系统,其中,识别所述第二组网络组件的改变包括:

识别从所述公共地理区域中的第一较高延时互联网服务提供方(ISP)到所述公共地理区域中的第二较低延时ISP的改变。

示例3是根据任何或所有先前示例所述的计算机系统,其中,识别从第一较高延时ISP到第二较低延时ISP的改变包括:

基于检测到的业务来识别所述公共地理区域中的正被用于连接到所述云服务端点的多个ISP;

检测与所述多个ISP中的每个ISP相对应的延时;

基于在所述云服务端点处从所述第一客户端和所述第二客户端接收到的请求来确定所述第一客户端和所述第二客户端正在使用所述多个ISP中的哪个ISP;以及

将所述第二客户端使用的所述ISP识别为较高延时ISP,并将所述第一客户端使用的所述ISP识别为较低延时ISP。

示例4是根据任何或所有先前示例所述的计算机系统,其中,识别所述第二组网络组件的改变包括:

识别从所述公共地理区域中的第一较高延时代理服务提供方到所述公共地理区域中的第二较低延时代理服务提供方的改变。

示例5是根据任何或所有先前示例所述的计算机系统,其中,识别从第一较高延时代理服务提供方到第二较低延时代理服务提供方的改变包括:

基于检测到的业务来识别所述公共地理区域中的正被用于连接到所述云服务端点的多个代理服务提供方;

检测与所述多个代理服务提供方中的每个代理服务提供方相对应的延时;

基于在所述云服务端点处从所述第一客户端和所述第二客户端接收到的请求来确定所述第一客户端和所述第二客户端正在使用所述多个代理服务提供方中的哪个代理服务提供方;以及

将所述第二客户端使用的所述代理服务提供方识别为较高延时代理服务提供方,并将所述第一客户端使用的所述代理服务提供方识别为较低延时代理服务提供方。

示例6是根据任何或所有先前示例所述的计算机系统,其中,所述第一客户端具有多个分支计算系统,并且其中,检测第一延时包括:

检测所述分支计算系统中的每个分支计算系统在连接到所述云服务端点时遇到的延时。

示例7是根据任何或所有先前示例所述的计算机系统,其中,所述分支计算系统通过代理服务提供方连接到所述云服务端点,并且其中,检测所述分支计算系统中的每个分支计算系统遇到的延时包括:

检测针对所述分支计算系统中的每个分支计算系统的回程延时,所述回程延时包括从所述分支计算系统连接到所述代理服务提供方的延时。

示例8是根据任何或所有先前示例所述的计算机系统,并且还包括:

针对每个分支计算系统识别较低延时连接配置是否可用;以及

如果是,则识别针对所述分支计算系统的较低延时连接配置以及与所述较低延时连接配置相对应的延时减少的量。

示例9是根据任何或所有先前示例所述的计算机系统,其中,生成所述延时减少推荐输出包括:

生成指示所述延时减少的量并且标识所述较低延时连接配置的推荐输出。

示例10是一种计算机实现的方法,包括:

检测第一客户端在使用第一组网络组件连接到云服务端点时的第一延时;

检测第二客户端在使用第二组网络组件连接到所述云服务端点时的第二延时,所述第二客户端与所述第一客户端在公共地理区域中,所述第二延时高于所述第一延时;

基于使用所述第一组网络组件遇到的延时,识别所述第二客户端为了获得延时减少而能够做出的所述第二组网络组件的改变;以及

生成到所述第二客户端的延时减少推荐输出,所述延时减少推荐输出标识可用于所述第二客户端的延时减少的量以及所述第二组网络组件的所识别的改变。

示例11是根据任何或所有先前示例所述的计算机实现的方法,其中,识别所述第二组网络组件的改变包括:

识别从所述公共地理区域中的第一较高延时互联网服务提供方(ISP)到所述公共地理区域中的第二较低延时ISP的改变。

示例12是根据任何或所有先前示例所述的计算机实现的方法,其中,识别从第一较高延时ISP到第二较低延时ISP的改变包括:

基于检测到的业务来识别所述公共地理区域中的正被用于连接到所述云服务端点的多个ISP;

检测与所述多个ISP中的每个ISP相对应的延时;

基于在所述云服务端点处从所述第一客户端和所述第二客户端接收到的请求来确定所述第一客户端和所述第二客户端正在使用所述多个ISP中的哪个ISP;以及

将所述第二客户端使用的所述ISP识别为较高延时ISP,并将所述第一客户端使用的所述ISP识别为较低延时ISP。

示例13是根据任何或所有先前示例所述的计算机实现的方法,其中,识别所述第二组网络组件的改变包括:

识别从所述公共地理区域中的第一较高延时代理服务提供方到所述公共地理区域中的第二较低延时代理服务提供方的改变。

示例14是根据任何或所有先前示例所述的计算机实现的方法,其中,识别从第一较高延时代理服务提供方到第二较低延时代理服务提供方的改变包括:

基于检测到的业务来识别所述公共地理区域中的正被用于连接到所述云服务端点的多个代理服务提供方;

检测与所述多个代理服务提供方中的每个代理服务提供方相对应的延时;

基于在所述云服务端点处从所述第一客户端和所述第二客户端接收到的请求来确定所述第一客户端和所述第二客户端正在使用所述多个代理服务提供方中的哪个代理服务提供方;以及

将所述第二客户端使用的所述代理服务提供方识别为较高延时代理服务提供方,并将所述第一客户端使用的所述代理服务提供方识别为较低延时代理服务提供方。

示例15是根据任何或所有先前示例所述的计算机实现的方法,其中,所述第一客户端具有多个分支计算系统,并且其中,检测第一延时包括:

检测所述分支计算系统中的每个分支计算系统在连接到所述云服务端点时遇到的延时。

示例16是根据任何或所有先前示例所述的计算机实现的方法,其中,所述分支计算系统通过代理服务提供方连接到所述云服务端点,并且其中,检测所述分支计算系统中的每个分支计算系统遇到的延时包括:

检测针对所述分支计算系统中的每个分支计算系统的回程延时,所述回程延时包括从所述分支计算系统连接到所述代理服务提供方的延时。

示例17是根据任何或所有先前示例所述的计算机实现的方法,并且还包括:

针对每个分支计算系统识别较低延时连接配置是否可用;以及

如果是,则识别针对所述分支计算系统的较低延时连接配置以及与所述较低延时连接配置相对应的延时减少的量。

示例18是根据任何或所有先前示例所述的计算机实现的方法,其中,生成所述延时减少推荐输出包括:

生成指示所述延时减少的量并且标识所述较低延时连接配置的推荐输出。

示例19是一种计算机实现的方法,包括:

在云服务端点处检测源自公共地理区域的多个不同请求;

检测每个请求源自的网络配置;

检测每个网络配置遇到的延时以识别具有第一延时的高延时网络配置和具有比所述第一延时更低的第二延时的低延时网络配置;

识别是所述高延时网络配置的一部分的客户端;

生成针对所识别的客户端的网络配置推荐,所述网络配置推荐量化通过切换到所述低延时网络配置而可用于所识别的客户端的延时减少;以及

将接口生成器控制为输出所述网络配置推荐以显现给所识别的客户端。

示例20是根据任何或所有先前示例所述的计算机实现的方法,其中,所识别的客户端具有多个分支计算系统,并且其中,所述分支计算系统通过代理服务提供方与所述云服务端点连接,并且其中,检测所述分支计算系统中的每个分支计算系统遇到的延时包括:

检测针对所述分支计算系统中的每个分支计算系统的回程延时,所述回程延时包括从所述分支计算系统连接到所述代理服务提供方的延时。

虽然以特定于结构特征和/或方法动作的语言对发明主题进行了描述,但应当理解的是,所附权利要求书中定义的发明主题并不一定受限于上述具体特征或动作。更确切地说,上述具体特征或动作是作为实现权利要求书的示例形式而公开的。

技术分类

06120116587907