一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

使用跟踪路由聚合的网络问题节点标识的制作方法

2022-03-19 15:13:43 来源:中国专利 TAG:

使用跟踪路由聚合的网络问题节点标识


背景技术:

1.常规计算系统目前通常以应用程序、操作系统功能和/或其他计算逻辑的形式提供广泛分类的计算功能。这种功能的大部分依赖于通过网络与其他计算系统通信的能力。例如,电子邮件、web导航、即时消息收发、互联网呼叫、在线会议和协作、基于云的存储和处理都是依赖于网络正常运行的应用程序的示例。
2.当消息通过网络从一个计算系统传送到另一个计算系统时,该消息通常通过多个中介系统(也称为“路由器”)被路由。对于任何给定的消息,都可以跟踪消息从其起点到其目的地所采用的路由。对消息路由的此类描述通常被称为“跟踪路由(trace route)”。例如,跟踪路由可以包含互联网协议(ip)地址的有序列表,从原始ip地址开始,通过各种中介系统(例如,路由器、防火墙、网关等),并且在目的地ip地址结束。
3.像每个复杂系统一样,网络具有它们可能无法达成其最佳功能的各种方式。例如,中介系统可能经历硬件故障、被错误配置、资源不足、无法动态适应增加的通信量、经历意外状态、遭受软件故障、沿低效路由分派消息,以及各种不同的可能故障机制中的任一种。
4.本文所要求保护的主题不限于解决任何缺点或仅在诸如上述环境中操作的实施例。而是,提供该背景仅用于说明一个示例性技术区域,其中可以实践本文描述的一些实施例。


技术实现要素:

5.本文公开的实施例涉及对网络中潜在问题节点的计算机辅助标识。作为数据采集的一部分,计算系统收集针对在网络内发生的通信的遥测和跟踪路由数据。在检测到网络内已经发生性能问题后,标识发生于性能问题时间的前后的若干个通信。例如,所收集的遥测和跟踪路由数据本身可以首先用于检测性能问题。
6.然后,针对这若干个通信的跟踪路由数据被聚合。例如,聚合可采取图的形式,其中图的每个节点表示离散网络节点。聚合还可聚合所收集的遥测数据。例如,针对给定网络节点的经聚合的遥测可表示对于经过相关联网络节点的通信中的至少一些通信的遥测的聚合。
7.然后,聚合数据可以用于标识网络内的潜在问题网络节点以允许进一步调查。例如,针对给定节点的经聚合的遥测本身可以揭示与该网络节点相关联的性能问题。问题网络节点的标识(以及针对该网络节点的潜在观察到的遥测)然后可以被传送给受性能问题影响的实体。这可以允许实体理解哪个网络节点潜在地导致问题,并且因此做出适当的调查和补救措施。因此,网络性能问题可以快速被分析以标识和补救促成网络性能问题的有问题的网络节点。因此,本文描述的原则推进了网络性能故障排除的领域。
8.附加的特征和优点将在下面的描述中阐述,并且部分地从描述中将是明显的,或者可通过本文的教导的实践来学习。本发明的特征和优点可通过所附权利要求中特别指出的器械和组合来实现和获得。本发明的特征将从下面的描述和所附的权利要求中变得更加明显,或者可通过如下所述的本发明的实践来了解。
附图说明
9.为了描述可获得上述和其他优点和特征的方式,将参考在附图中示出的特定实施例来呈现对上面简要描述的主题的更具体描述。理解这些附图仅描述了典型的实施例并且因此不应被认为在范围上是限制性的,将通过使用附图以附加的具体性和细节来描述和解释实施例,其中:
10.图1示出了本文描述的原理可以在其中操作的网络环境,该网络环境包括经由多个中介系统进行通信的多个计算系统;
11.图2示出了可以用于评估图1的网络环境的计算环境;
12.图3示出了用于响应于检测到网络中已发生性能问题而对网络中的潜在问题网络节点进行计算机辅助标识的方法的流程图;
13.图4示出了实时通信所采取的示例网络路径;
14.图5示出了可以针对图1的网络环境内发生的多个通信被收集的示例数据集;
15.图6示出了示例有向非循环图,该有向非循环图表示由图5的数据集的第二到第五行表示的四个通信的跟踪路由数据的聚合;以及
16.图7示出了其中可以采用本文所述原理的示例计算系统。
具体实施方式
17.本文公开的实施例涉及对网络中的潜在问题节点的计算机辅助标识。作为数据采集的一部分,计算系统收集针对在网络中发生的通信的遥测和跟踪路由数据。在检测到网络内已经发生性能问题后,发生于性能问题时间的前后的若干个通信被标识。例如,所收集的遥测和跟踪路由数据本身可以首先用于检测性能问题。
18.然后,聚合用于这若干个通信的跟踪路由数据。例如,聚合可以采取图的形式,其中图的每个节点表示离散网络节点。聚合还可以聚合所收集的遥测数据。例如,针对给定网络节点的聚合遥测可以表示对于经过相关联网络节点的通信中的至少一些通信的遥测的聚合。
19.然后,经聚合的数据可以用于标识网络内的潜在问题网络节点以允许进一步调查。例如,针对给定节点的经聚合的遥测本身可以揭示与该网络节点相关联的性能问题。然后问题网络节点的标识(以及针对该网络节点的潜在观察到的遥测)可以被传送给受性能问题影响的实体。这可以允许实体理解哪个网络节点潜在地导致问题,并且因此做出适当的调查和补救措施。因此,网络性能问题可以快速被分析以标识和补救促成网络性能问题的有问题的网络节点。因此,本文描述的原则推进了网络性能故障排除的领域。
20.图1示出了本文描述的原理可以在其中操作的网络环境100。网络环境100包括网络101和多个计算系统110(每个计算系统用正方形表示),这些计算系统可以连接到网络101以便能够从网络101接收消息和/或通过网络101传输消息。网络101还包括多个中介系统120(每个中介系统由圆圈表示,也称为“中介”),当消息从计算系统110中的一个计算系统行进到计算系统110中的另一个计算系统时,消息可以通过这些中介传递。例如,中介可以是防火墙、网关、路由器等。计算系统110和中介120中的每个计算系统和中介可以如以下针对图7的计算系统700所描述的那样被构造。
21.网络101可以是相对较小的网络,诸如小型局域网。在另一个极端,网络101可扩展
到全球各地并且包括无数的计算系统,诸如互联网。网络101还可包括介于这两个极端之间的任何网络。作为更具体的示例,网络101可以是家庭网络、企业网络、互联网服务提供方(isp)网络、传输网络、云提供方网络、上述的组合等。因此,计算系统110被示为仅包括八个计算系统111至118的事实仅是用于示例目的。省略号119表示本文描述的原理不限于网络的特定性质、大小或复杂性。此外,省略号119表示用于通过网络101传送消息的计算系统110的数目可以是静态的或动态的,其中计算系统110随时间推移被添加到网络101和/或从网络101被移除。同样地,尽管仅七个中介121至127被示出为被包括在网络101内的中介120内,但是省略号128表示本文描述的原理不限于网络101内的中介的数目。
22.图2示出了可以用于评估图1的网络环境100的计算环境200。计算环境200包括数据收集组件210、故障检测组件220、故障分析组件230和报告组件240。这些组件中的每个组件可以按照以下针对图7的可执行组件706所描述的那样被结构化。此外,可以使用一个计算系统或多个计算系统的分布来操作计算环境200。计算环境200还包括用于存储所收集的数据的数据库201。潜在地,计算环境200包括网络地址到负责维互网络节点的物理位置和/或实体的映射202。
23.作为示例,如果使用图7的计算系统700来操作计算环境200,则各种组件210、220、230和240可以响应于处理单元702执行存储器704中的计算机可执行指令而执行它们的操作。此外,响应于处理单元702执行计算机可执行指令,组件210、220、230和240可以在存储器中被实例化。
24.图3示出了用于响应于检测到网络中已经发生性能问题而对网络中的潜在问题节点进行计算机辅助标识的方法300的流程图。仅作为示例,可以使用图2的计算环境200来执行方法300以便标识图1的网络环境100中的潜在问题节点。因此,现在将经常参考图1和2作为示例来描述图3的方法300。
25.方法300包括收集针对在网络内发生的多个实时通信中的每个实时通信的遥测和跟踪路由数据(动作301)。该收集动作(动作301)被示出为独立于方法300内的其他动作,以强调对方法300内的其他动作不存在受限制的时间依赖性。仅作为示例,当实时通信被执行时,遥测和跟踪路由数据可以持续地被收集(动作301)。作为示例,实时通信可以是电话通信(例如,ip电话)、视频呼叫、在线会议通信等。
26.图2示出了数据收集组件210包括跟踪路由确定组件211,跟踪路由确定组件211可以收集针对多个实时通信中的每个实时通信的跟踪路由信息。因此,跟踪路由确定组件可执行图3的收集动作(动作301)的一部分。图4示出了实时通信所采取的示例网络路径400。示例网络路径400具有计算系统112的起源节点。通信按该顺序经过中介121、123、126和127,并且然后到达计算系统117的目的地节点。在本示例中,跟踪路由器确定组件211将收集针对该通信的有序互联网协议(ip地址)列表。
27.图2示出了数据收集组件210还包括通信质量组件212,该通信质量组件212估计跟踪路由确定组件211针对其确定跟踪路由的每个实时通信的通信质量。例如,通信质量组件212可以收集从实时通信的端点所采集的端到端遥测数据。作为示例,在通信400的情况下,通信质量组件212可以从计算系统112和117中的一个或两者收集端到端遥测。例如,遥测可包括是否存在抖动、延迟、分组丢失(和/或其程度),或甚至连接是否掉线(drop)(例如,如果通信是呼叫,则呼叫是否掉线)。
28.其他通信质量度量可以是平均和/或中值信噪比为多少、用户反馈度量(是否存在用户投诉、用户如何评定呼叫质量等)、实时通信中是否存在任何差错(glitch)以及差错的程度等。因此,通信质量组件212也可执行图3的收集动作(动作301)的一部分。针对每个被监测的通信的遥测数据和相关联的跟踪路由数据被存储(例如,在图2的数据库201中)。
29.图5示出了可以针对图1的网络环境100内发生的多个通信被收集的示例数据集500。示例数据集500包括在网络环境100内发生的六个通信(参见行511至行516)中的每个通信的跟踪路由数据(参见列501)、遥测数据(参见列502)和时间数据(参见列503)。
30.例如,行511包括针对图4的通信400的跟踪路由数据、遥测数据和时间数据。当然,本文描述的原理不限于在简单和小型网络中所执行的六个通信的这样的简单情况,其只是作为可管理的示例被提供。在实践中,数据集500可以包含在包括无数计算系统和中介(例如,也许整个互联网)的网络环境内发生的数千、数百万或更多的通信。
31.这里,遥测数据被约减为1与10之间的得分,其中10指示高通信质量,并且1指示低通信质量。通信511、512和514指示相对高的通信质量(分别为9、8和7)。另一方面,通信513、515和516指示相对低的通信质量(低于5)。本文描述的原理不限于遥测数据的结构,也不限于如何生成遥测数据。在一个示例中,遥测数据更能描述通信中遇到的任何问题的类型。例如,对于通信515,不是仅具有简单的遥测概括(1至10的标度内的2),遥测可以包括以下指示:通信掉线、通信中存在某个量的延迟、信噪比处于某个水平、通信在起点和目的地之间具有特定数目的其他中介、中介具有特定配置等。
32.示例数据集500可以包括相应通信发生的时间(参见列503)。时间可以使用诸如通用协调时间(utc)的任何格式被表示。备选地,时间可以是逻辑时间(诸如单调增加的通信标识符)。然而,在所示的示例中,时间以本地时间表示为分钟(省略了日期,因为在示例中时间都发生在同一天)。
33.返回参考图3,在每次检测到在网络内发生性能问题(动作311)时,虚线框310的内容被执行。可以使用所收集的遥测和跟踪路由数据(其是在动作301中被收集的)中的至少一些来执行该检测。例如,在图2中,故障检测组件220接收被收集并且被存储在数据库201中的数据。故障检测组件220可以针对所收集的数据而查询数据库201。如前所述,所收集的数据的示例是图5的数据集500。使用数据集500作为示例,故障检测组件220可检测到在6:41pm发生的与行512相关联的通信与在6:45发生的与行513相关联的通信之间,遥测数据突然下降。使用该信息,故障检测组件220可以检测到在6:45pm发生了故障。
34.故障检测组件220可以持续地操作以便基本上在问题已经发生时检测到问题。备选地或附加地,故障检测组件220可响应于查询而检测问题。例如,在早上开始工作后,信息技术员工可以查询自该员工上次工作以来的过去16小时内发生的任何问题。然后,故障检测组件220可以评估数据库201以标识遥测中的问题发生的时间。
35.回到图3,一旦标识出性能问题已经发生(动作311),发生于网络中发生性能问题的时间前后的若干实时通信就被标识(动作312)。例如,如果(使用数据集500)标识出性能问题在6:45pm发生,则在性能问题的时间前后的时间窗口可以被选择。然后,在该时间段内发生的任何实时通信可以被标识。例如,如果时间窗口是在所检测到的6:45pm的性能问题之前10分钟到这之后10分钟,则6:35pm与6:55pm之间的所有通信可以被标识。在图5的数据集500中,由行512(在6:41pm发生)、行513(在6:45pm发生)、行514(在6:52pm发生)、行515
(在6:53pm发生)表示的四个通信可以被标识。其他时间窗口也可以是合适的。例如,时间窗口可能从出现性能问题的时间开始,并且继续直到出现性能问题的时间之后的某个持续时间。作为另一个示例,时间窗口可以在性能问题的时间之前开始某个持续时间,并且在出现性能问题的时间结束。
36.参考图2,该通信集收集可以由输入通信集收集组件231执行,该输入通信集收集组件可以是故障分析组件230中的一个故障分析组件。输入通信集收集组件231从故障检测组件220接收性能问题的时间,并且可以查询数据库201。
37.然后,使用被标识为发生于性能问题的时间前后的若干实时通信(动作312),跟踪路由数据被聚合(动作313)。参考图2,该聚合可以由聚合组件232执行,该聚合组件232也可以是故障分析组件230中的一个故障分析组件。作为一个示例,聚合组件232可通过聚合针对所标识的输入通信集的跟踪路由数据来构造经聚合的非循环图。例如,经聚合的非循环图可以包括如下图:在该图中多个输入通信被叠加以使得相同的计算系统或中介被表示为图中的单个节点,并且其中每个图链接表示网络节点之间的不同链路。
38.图6示出了示例有向非循环图,该有向非循环图表示由行512到515(示例中的输入通信集)表示的四个通信的跟踪路由数据的聚合。链接604、605、607和613表示用于图5的行512的通信的跟踪路由的有序路径。链接601、602、603和613表示用于图5的行513的通信的跟踪路由的有序路径。链接608、610、611和612表示用于图5的行514的通信的跟踪路由的有序路径。链接606、607和609表示用于图5的行515的通信的跟踪路由的有序路径。
39.因此,图6的节点121是明显地表示图1的中介121的叠加节点,该中介121用于行512和513的两个通信。图6的节点122是明显地表示图1的中介122的节点,该中介122用于行514的单个通信。图6的节点123是明显地表示图1的中介123的节点,该中介123用于行513的单个通信。图6的节点124是明显地表示图1的中介124的节点,该中介124用于行514的单个通信。图6的节点125是明显地表示图1的中介125的叠加节点,该中介125用于行512和515的两个通信。图6的节点126是明显表示图1的中介126的叠加节点,该中介126用于行512、513、514和515的所有四个通信。
40.除了聚合跟踪路由之外,针对每个网络节点的遥测数据也可以被聚合。该聚合也可以由图2的聚合组件232执行。在一个简单示例中,针对涉及输入通信集的至少一个通信的网络节点121到126中的每个网络节点,通过对经过网络节点的每个通信的遥测数据进行平均来获得经聚合的遥测数据。
41.因此,在这个简单示例中,对于网络节点121,经聚合的遥测数据可以是6(行512的8以及行514的4的平均值)。对于网络节点122到124,经聚合的遥测数据可以与其中出现网络节点的单个行相同(与行514对应的网络节点122的7,与行513对应的网络节点123的4,以及与行514对应的网络节点124的7)。对于网络节点125,经聚合的遥测数据可以是5(行512的8以及行515的2的平均值)。对于网络节点126,经聚合的遥测数据可以是5.25(行512的8、行513的4、向514的7以及行515的2的平均值)。该经聚合的遥测数据可被视为危险得分,其中得分越低,危险越大。下面将进一步描述用于获得危险得分的备选方法。
42.参考图3,方法300然后包括使用针对被标识为发生于性能问题的时间前后的若干实时通信中的至少一些实时通信的跟踪路由数据的聚合来标识网络中的潜在问题网络节点(动作314)。参考图2,该问题节点的标识可以由问题节点标识组件233执行,该问题节点
标识组件233也可以是故障分析组件230中的一个故障分析组件。
43.在一个实施例中,该问题节点的标识还通过使用经聚合的遥测数据来完成。例如,在其中针对经过网络节点的所有通信的遥测数据被平均以便确定经聚合的遥测得分的以上示例中,可以按网络节点的经聚合的遥测得分对网络节点进行排名。网络节点123具有处于4的最严重危险得分,然后网络节点125具有处于5的危险得分,然后网络节点126具有处于5.25的危险得分,然后网络节点121具有处于6的危险得分,然后网络节点122和125各自具有处于7的危险得分。标识可以确定具有满足阈值的经聚合的遥测数据的每个网络节点被确定为潜在问题节点。例如,具有处于5或低于5的经聚合的遥测数据的每个网络节点可以被确定为潜在问题网络节点。因此,网络节点123和125潜在地促成网络的性能问题,其中网络节点123是促成不利网络性能的更有可能的候选。
44.返回到图3,一旦一个或多个问题网络节点被标识(动作314),问题网络节点就可以被传送给与受检测的到的性能问题影响的实体相关联的计算系统(动作315)。例如,该报告可以由图2的报告组件240执行。作为示例,报告组件240可以向计算系统112和/或116报告问题网络节点123,因为计算系统112和/或116是由行513所表示的通信(其包括中介123)中的端点,针对该行的遥测数据仅是10分中的4分。同样地,报告组件可以向计算系统114和115报告问题节点125,因为它们是由行515表示的通信(其包括中介125)中的端点,针对该行的遥测数据是10分中的非常低的2分。如果存在多个潜在问题网络节点,则这些节点可以以排名的顺序被显示。
45.在上面的示例中,使用针对每个网络节点的经聚合的遥测数据来标识有问题的网络节点。然而,也可以基于观察到的性能问题(在动作311中检测到的)来标识有问题的网络节点。例如,假设观察到的性能问题是呼叫掉线。然后,可以针对每个网络节点评估与该特定性能问题相关的遥测数据。
46.例如,经过网络节点的呼叫的分数可以被计算为经过网络节点的呼叫的数目除以呼叫的总数目。在上面的示例中,输入通信集中总共有四个呼叫(与行512到515对应)。对于网络节点121,该分数将是0.5,因为这些通信中有两个通信(对应于行512和513)经过该网络节点。然后,性能特定分数被计算。作为示例,“每个图节点的呼叫掉线贡献”可被计算为经过网络节点121的掉线的呼叫的数目(在我们的示例中假设为两个)除以掉线的呼叫的总数(在我们的示例中假设为三个)。因此,在该示例中,网络节点121的呼叫掉线贡献将是0.667(或2/3)。网络节点121的呼叫掉线危险得分可以被计算为呼叫掉线贡献(2/3)除以经过该节点的呼叫的分数(1/2)。这将导致4/3的呼叫掉线危险得分。针对其他中介122到126中的每个中介的呼叫掉线危险得分可以类似地被确定。因此,可以基于与特定的检测到的性能问题相关的经聚合的遥测数据来评估网络节点。
47.在一个实施例中,网络节点被映射到物理位置或近似物理位置。例如,特定的互联网协议地址集可以被映射到商业企业中的特定建筑物、楼层或办公室。参考图2,该映射202可以被提供到数据库201中。这样,报告组件240可以接收潜在有问题的网络节点的标识(来自问题节点标识组件232)并且针对每个有问题的网络节点的物理位置而查询数据库。然后,报告组件240还可以报告关于问题网络节点的物理位置。
48.在一些实施例中,问题网络节点可以在受性能问题影响的实体(例如,公司)所管理的网络部分(例如,公司内联网)内。在该情况下,向受影响的实体报告问题网络节点可允
许该实体采用资源来对其管理的网络部分内的问题进行纠正或故障排除。另一方面,问题网络节点可以位于由受影响实体所管理的网络部分之外。在这种情况下,问题发生在受性能问题影响的实体之外的事实可以被报告给实体。这减轻了实体不得不花费时间试图在实体管理的网络部分中解决问题(当这将是徒劳的时)。另外,对该实体的报告可以报告其中显现出现问题的实体或服务提供方的标识。因此,本文描述的原则允许个体确定问题发生在他们自己的网络内、发生在实时服务(例如,语音和电话会议服务)内,还是可能仅是由于一般的互联网问题。
49.因此,本文描述的原理使用跨多个实时通信的遥测和跟踪路由数据以便标识潜在有问题的网络节点。可以存在一些时间段,在这些时间段中没有足够的实时通信用于可靠地标识潜在有问题的网络节点。在这种情况下,本文描述的原理准许标识当前存在不足的遥测和跟踪路由数据(动作302),并且作为结果,制定针对这些时间段的合成实时通信(动作303)。合成实时通信可以涉及不同计算系统上的机器人程序之间的自动连接或呼叫。这样的机器人程序可能被设计成向彼此发布音频或视频以便模拟人类参与者之间的连接或呼叫。
50.例如,在给定区域的正常营业时间之外,对于仅限于该区域的网络的面向业务的应用来说,可能存在不足的实时通信。因此,在这些时间期间,可以存在某个数目的合成实时通信,这些合成实时通信可以被执行以便测量这些通信的遥测和跟踪路由数据,并且以便能够在数据集500内具有某个最小水平的实时通信以能够检测不良网络性能,并且标识潜在的罪魁祸首网络节点。
51.因为本文描述的原理可以在计算系统的上下文中被执行,所以将参考图7描述计算系统的某个介绍性讨论。计算系统现在越来越多地采用各种各样的形式。例如,计算系统可以是手持设备、电器、膝上型计算机、台式计算机、大型机、分布式计算系统、数据中心,或者甚至是诸如可穿戴设备(例如,眼镜)的传统上不被认为是计算系统的设备。在本说明和权利要求中,术语“计算系统”被广义地定义为包括以下任何设备或系统(或其组合):该设备或系统(或其组合)包括至少一个物理有形处理器、以及能够在其上具有可以由处理器执行的计算机可执行指令的物理有形存储器。存储器可以采取任何形式并且可取决于计算系统的性质和形式。计算系统可以分布在网络环境之上并且可以包括多个组成计算系统。
52.如图7所示,在其最基本配置中,计算系统700通常包括至少一个硬件处理单元702和存储器704。处理单元702可以包括通用处理器,并且还可包括现场可编程门阵列(fpga)、专用集成电路(asic)或任何其他专用电路。存储器704可以是物理系统存储器,其可以是易失性、非易失性或两者的某种组合。术语“存储器”在本文中也可用于指代诸如物理存储介质的非易失性大容量存储装置。如果计算系统是分布式的,则处理、存储器和/或存储能力也可以是分布式的。
53.计算系统700在其上还具有经常被称为“可执行组件”的多个结构。例如,计算系统700的存储器704被示出为包括可执行组件706。术语“可执行组件”是结构的名称,该结构由计算领域的本领域普通技术人员很好地理解为可以是软件、硬件或其组合的结构。例如,当在软件中被实现时,本领域普通技术人员将理解,可执行组件的结构可以包括可以在计算系统上被执行的软件对象、例程、方法等,无论这样的可执行组件是否存在于计算系统的堆中,或者可执行组件是否存在于计算机可读存储介质上。
54.在这种情况下,本领域普通技术人员将认识到,可执行组件的结构存在于计算机可读介质上,使得当由计算系统的一个或多个处理器(例如,由处理器线程)解释时,使计算系统执行功能。这样的结构可以是直接由处理器计算机可读取的(如在可执行组件是二进制的情况下)。备选地,该结构可以被构造为可解释和/或经编译的(无论是在单级中还是在多级中)以便生成由处理器直接可解释的二进制。当使用术语“可执行组件”时,对可执行组件的示例结构的这种理解完全在计算领域普通技术人员的理解范围内。
55.术语“可执行组件”也被普通技术人员很好地理解为包括专门或接近专门在硬件中(诸如在现场可编程门阵列(fpga)、专用集成电路(asic)或任何其他专用电路内)实现的结构(诸如硬编码或硬连线逻辑门)。因此,术语“可执行组件”是用于计算领域的普通技术人员很好理解的结构的术语,无论是以软件、硬件或组合实现的。在本说明书中,也可以使用术语“组件”、“代理”、“管理器”、“服务”、“引擎”、“模块”、“虚拟机”等。如在本说明书中和在本例中所使用的,这些术语(无论用或不用修饰子句表达)也意在与术语“可执行组件”同义,并且因此也具有计算领域的普通技术人员很好地理解的结构。
56.在下面的描述中,参考由一个或多个计算系统执行的动作来描述实施例。如果此类动作是在软件中实现的,则(执行该动作的相关联计算系统的)一个或多个处理器响应于已经执行的构成可执行组件的计算机可执行指令而指导计算系统的操作。例如,此类计算机可执行指令可以体现在形成计算机程序产品的一个或多个计算机可读介质上。此类操作的一个示例涉及数据的操纵。如果此类动作专门地或接近专门地在硬件中实现,诸如在fpga或asic内,则计算机可执行指令可以是硬编码或硬连线逻辑门。计算机可执行指令(以及被操纵的数据)可以被存储在计算系统700的存储器704中。计算系统700还可以包含允许计算系统700通过例如网络710与其他计算系统通信的通信信道708。
57.虽然并非所有计算系统都需要用户接口,但在一些实施例中,计算系统700包括用于与用户对接的用户接口系统712。用户接口系统712可以包括输出机构712a以及输入机构712b。本文描述的原理不限于精确的输出机构712a或输入机构712b,因此将取决于设备的性质。然而,输出机制712a可包括例如扬声器、显示器、触觉输出、虚拟或增强现实、全息图等。输入机构712b的示例可包括例如麦克风、触摸屏、虚拟或增强现实、全息图、相机、键盘、鼠标或其他指针输入、任何类型的传感器等。
58.本文描述的实施例可以包括或利用包括计算机硬件(诸如,例如一个或多个处理器和系统存储器)的专用或通用计算系统,如下面更详细地讨论的。本文描述的实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理介质和其他计算机可读介质。这样的计算机可读介质可以是可以由通用或专用计算系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。承载计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,本发明的实施例可以包括至少两种明显不同的计算机可读介质:存储介质和传输介质。
59.计算机可读存储介质包括ram、rom、eeprom、cd-rom或其他光盘存储装置、磁盘存储装置或其他磁存储器设备,或可以用于以计算机可执行指令或数据结构的形式存储期望程序代码装置并且可以由通用或专用计算系统访问的任何其他物理有形存储介质。
[0060]“网络”被定义为使得能够在计算系统和/或模块和/或其他电子设备之间传输电子数据的一个或多个数据链路。当信息通过网络或另一通信连接(硬连线、无线或硬连线或
无线的组合)被传送或提供给计算系统时,计算系统正确地将该连接视为传输介质。传输介质可包括网络和/或数据链路,其可用于以计算机可执行指令或数据结构的形式承载期望的程序代码装置,并且可以由通用或专用计算系统访问。以上的组合也应被包括在计算机可读介质的范围内。
[0061]
此外,在到达各种计算系统组件后,以计算机可执行指令或数据结构的形式的程序代码装置可以自动地从传输介质传送到存储介质(或反之亦然)。例如,通过网络或数据链路所接收的计算机可执行指令或数据结构可以被缓冲在网络接口模块(例如,“nic”)内的ram中,并且然后最终被传送到计算系统ram和/或计算系统处的较不易失性存储介质。因此,应当理解,存储介质可以被包括在计算系统组件中,该计算系统组件还(或者甚至主要地)利用传输介质。
[0062]
例如,计算机可执行指令包括指令和数据,当在处理器处被执行时,该指令和数据使通用计算系统、专用计算系统或专用处理设备执行某个功能或某组功能。备选地或附加地,计算机可执行指令可将计算系统配置为执行某个功能或某组功能。例如,计算机可执行指令可以是二进制文件,或者甚至是在处理器直接执行之前经历一些转换(例如编译)的指令,诸如中间格式指令(诸如汇编语言),或者甚至是源代码。
[0063]
尽管已经以特定于结构特征和/或方法行为的语言描述了主题,但应当理解,在所附权利要求中定义的主题不一定限于上述描述的特征或行为。相反,所描述的特征和动作被公开为实现权利要求的示例形式。
[0064]
本领域技术人员将理解,本发明可在具有许多类型的计算系统配置的网络计算环境中实现,包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持设备、多处理器系统、基于微处理器或可编程的消费电子设备、网络pc、小型机、大型计算机、移动电话、pda、寻呼机、路由器、交换机、数据中心、可穿戴设备(诸如眼镜)等。本发明还可在分布式系统环境中实现,其中通过网络链接(通过硬连线数据链路、无线数据链路、或通过硬连线和无线数据链路的组合)的本地和远程计算系统都执行任务。在分布式系统环境中,程序模块可位于本地和远程存储器存储设备中。
[0065]
本领域技术人员还将理解,本发明可在云计算环境中实践。云计算环境可以是分布式的,尽管这不是必需的。当是分布式的时,云计算环境可以国际性地分布在组织内和/或具有跨多个组织被拥有的组件。在本说明书和所附权利要求中,“云计算”被定义为用于实现对可配置计算资源(例如,网络、服务器、存储装置、应用和服务)的共享池的按需网络访问的模型。“云计算”的定义不限于在适当部署时可以从这样的模型获得的其他众多优势中的任何优势。
[0066]
对于本文公开的过程和方法,在过程和方法中执行的操作可以不同的顺序来实现。此外,所概述的操作仅作为示例提供,一些操作可以是可选的,组合成较少的步骤和操作,被补充以进一步的操作,或者被扩展成附加的操作,而不减损所公开的实施例的本质。
[0067]
本发明可在不脱离其精神或特征的情况下以其他特定形式实施。所描述的实施例在所有方面仅被认为是说明性的而不是限制性的。因此,本发明的范围由所附的权利要求不是由前面的说明书指示。在权利要求的等同效力的意义和范围内的所有变更都应包括在其范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献