用于更新网络设备的系统和方法与流程

文档序号:16807016发布日期:2019-02-10 13:08阅读:160来源:国知局
用于更新网络设备的系统和方法与流程

计算设备的开发商和制造商可周期性地分配增加其产品的性能和/或安全性的系统更新。然而,虽然系统更新可使计算设备受益,但是将更新安装或应用于计算设备的进程可干扰设备的功能。例如,网络设备可能不能在网络设备经历系统更新时为端点设备提供网络服务。

用于更新网络设备的一些常规系统可通过将更新自动安装到网络设备上来确保网络设备接收重要的系统更新。遗憾的是,此类自动更新系统可破坏或干扰用户对访问网络连接的尝试。为了解决该问题,用于更新网络设备的其他传统系统可允许用户手动选择何时将更新应用于他们的网络设备。然而,用户可决定无限期延迟和/或忽略他们的网络设备的关键系统更新。因此,网络设备可能易受安全威胁的攻击并且/或者遭受软件错误或其他性能缺陷。因此,当前公开识别并解决了用于更新网络设备的改进系统和方法的需求。



技术实现要素:

如将在下文更详细地描述,本公开描述了用于通过以下方式来更新网络设备的各种系统和方法:基于对网络设备的用户何时不太可能访问由网络设备提供的网络连接的预测来识别将系统更新应用于网络设备的最佳时间。

在一个示例中,用于执行这样的任务的计算机实现的方法可包括(1)通过监视连接到为端点设备提供网络连接的网络设备的至少一个端点设备来确定端点设备的用户不太可能经由网络设备访问网络连接的周期性时间间隔,(2)检测到系统更新可用于网络设备,该系统更新在应用于网络设备时将损害网络设备为端点设备提供网络连接的能力,(3)基于用户不太可能访问网络连接的周期性时间间隔来识别将可用系统更新应用于网络设备的最佳时间,以及然后(4)在最佳时间将可用系统更新应用于网络设备。在一个实施方案中,该方法还包括确认用户当前不在访问网络连接,然后在最佳时间将可用系统更新应用于网络设备。

在一些示例中,端点设备可部分地基于收集关于用户的活动周期的信息来为用户提供服务。在这些示例中,监视端点设备可包括访问由端点设备收集的信息。除此之外或作为另外一种选择,监视端点设备可包括拦截在端点设备和网络设备之间分配的网络流量,并且然后记录网络流量被分配的时间。

在一些实施方案中,确定用户不太可能访问网络连接的周期性时间间隔可包括确定用户可能在网络连接范围之外的周期性时间间隔。除此之外或作为另外一种选择,确定周期性时间间隔可包括确定用户可能在网络连接范围之内,但不尝试访问网络连接的周期性时间间隔。

在一些示例中,识别应用可用系统更新的最佳时间可包括识别用户不太可能访问网络连接的下一个最近时间间隔开始的时间。在这些示例中,识别最佳时间还可包括确定下一个最近时间间隔的持续时间是否足以将可用系统更新应用于网络设备。除此之外或作为另外一种选择,识别最佳时间还可包括基于确定可用系统更新的重要性等级超过预定重要性阈值并且/或者直到下一个最近时间间隔开始的时间量大于预定时间量来确定在下一个最近时间间隔开始之前将可用系统更新应用于网络设备。

在一个实施方案中,用于实现上述方法的系统可包括(1)确定模块,该确定模块通过监视连接到为端点设备提供网络连接的网络设备的至少一个端点设备来确定端点设备的用户不太可能经由网络设备访问网络连接的周期性时间间隔,(2)检测模块,该检测模块检测到系统更新可用于网络设备,该系统更新在应用于网络设备时将损害网络设备为端点设备提供网络连接的能力,(3)识别模块,该识别模块基于用户不太可能访问网络连接的周期性时间间隔来识别将可用系统更新应用于网络设备的最佳时间,以及(4)更新模块,该更新模块在最佳时间将可用系统更新应用于网络设备。此外,系统可包括至少一个硬件处理器,该硬件处理器被配置为执行确定模块、检测模块、识别模块和更新模块。

在一些示例中,可将上述方法编码为非暂态计算机可读介质上的计算机可读指令。例如,计算机可读介质可包括一个或多个计算机可执行指令,当由计算设备的至少一个处理器执行时,该计算机可执行指令可使得计算设备(1)通过监视连接到为端点设备提供网络连接的网络设备的至少一个端点设备来确定端点设备的用户不太可能经由网络设备访问网络连接的周期性时间间隔,(2)检测到系统更新可用于网络设备,该系统更新在应用于网络设备时将损害网络设备为端点设备提供网络连接的能力,(3)基于用户不太可能访问网络连接的周期性时间间隔来识别将可用系统更新应用于网络设备的最佳时间,以及然后(4)在最佳时间将可用系统更新应用于网络设备。

来自上述实施方案中的任何一者的特征可根据本文所述的一般原理彼此结合地使用。通过结合附图和权利要求阅读下面的详细描述,将会更充分地理解这些和其他实施方案、特征和优点。

附图说明

附图示出了多个示例性实施方案并且为说明书的一部分。这些附图结合下面的描述展示并且说明本公开的各种原理。

图1是用于更新网络设备的示例性系统的框图。

图2是用于更新网络设备的另外示例性系统的框图。

图3是用于更新网络设备的示例性方法的流程图。

图4是用户不太可能访问网络连接的示例性周期性时间间隔的图示。

图5是能够实现本文描述和/或示出的实施方案中的一个或多个的示例性计算系统的框图。

图6是能够实现本文描述和/或示出的实施方案中的一个或多个的示例性计算网络的框图。

在全部附图中,相同引用字符和描述指示类似但未必相同的元件。虽然本文所述的示例性实施方案可以接受进行各种修改和替代形式,但在附图中以举例的方式示出了特定实施方案并且将在本文详细描述这些实施方案。然而,本文所述的示例性实施方案并非旨在限于所公开的特定形式。相反,本发明涵盖落在所附权利要求范围内的所有修改形式、等同形式和替代形式。

具体实施方式

本公开整体涉及用于更新网络设备的系统和方法。如将在下文更详细地解释,通过监视用户与连接到网络的一个或多个端点设备之间的交互,本文所述的系统和方法可预测用户不太可能尝试访问网络的未来时间段。因此,当系统更新可用于提供网络的网络设备时,所公开的系统和方法可在不干扰用户访问网络的尝试的时间将系统更新应用于网络设备。

下面将参考图1和图2提供对用于更新网络设备的示例性系统的详细描述。还将结合图3提供对应计算机实现的方法的详细描述。此外,将结合图4提供用户不太可能访问网络连接的周期性时间间隔的详细描述。最后,将分别结合图5和图6提供能够实现本文所述实施方案中的一个或多个的示例性计算系统和网络体系结构的详细描述。

图1是用于更新网络设备的示例性系统100的框图。如该图所示,示例性系统100可包括用于执行一个或多个任务的一个或多个模块102。例如,并且如将在下文更详细地解释,示例性系统100可包括确定模块104,该确定模块通过监视连接到为端点设备提供网络连接的网络设备的至少一个端点设备来确定端点设备的用户不太可能经由网络设备访问网络连接的周期性时间间隔。示例性系统100还可包括检测模块106,该检测模块检测到系统更新可用于网络设备,该系统更新在应用于网络设备时将损害网络设备为端点设备提供网络连接的能力。

此外,并且如将在下文更详细地描述,示例性系统100可包括识别模块108,该识别模块基于用户不太可能访问网络连接的周期性时间间隔来识别将可用系统更新应用于网络设备的最佳时间。最终,示例性系统100可包括更新模块110,该更新模块在最佳时间将可用系统更新应用于网络设备。尽管被示为独立元件,但图1中的模块102中的一者或多者可表示单个模块或应用程序的部分。

在某些实施方案中,图1中的模块102中的一者或多者可表示一个或多个软件应用程序或程序,所述软件应用程序或程序在被计算设备执行时,可使计算设备执行一个或多个任务。例如,并且如将在下文更详细地描述,模块102中的一个或多个可表示存储在一个或多个计算设备上并且被配置为在一个或多个计算设备上运行的软件模块,所述计算设备诸如为图2中示出的设备(例如,网络设备202)、图5中的计算系统510、和/或图6中的示例性网络体系结构600的部分。图1中的模块102中的一者或多者还可表示被配置为执行一个或多个任务的一台或多台专用计算机的全部或部分。

图1中的示例性系统100可用多种方式来实现。例如,示例性系统100的全部或一部分可表示图2中的示例性系统200的部分。如图2所示,系统200可包括经由网络204与端点设备206(1)-(n)中的一个或多个通信的网络设备202。在一个示例中,网络设备202可用模块102中的一个或多个进行编程。在该示例中,模块102可作为网络设备202上的更新服务的一部分来操作。除此之外或作为另外一种选择,端点设备206(1)-(n)的全部或一部分可用模块102中的一个或多个进行编程。在这些示例中,托管在端点设备206(1)-(n)上的模块可帮助网络设备202上的更新服务监视和记录端点设备206(1)-(n)上的活动。

在一个实施方案中,来自图1的模块102中的一个或多个在被网络设备202的至少一个处理器执行时,可使得网络设备202能够将系统更新应用于网络设备202。例如,并且如将在下文更详细地描述,确定模块104可使得网络设备202通过监视端点设备206(1)-(n)中的至少一个来确定指示端点设备206(1)-(n)的用户何时不太可能经由网络设备202访问网络204的时间间隔208。此外,检测模块106可使得网络设备202检测到系统更新210可用于网络设备202。作为响应,识别模块108可使得网络设备202基于时间间隔208来识别将系统更新210应用于网络设备202的最佳时间212。最终,更新模块110可使得网络设备202在最佳时间212将系统更新210应用于网络设备202。

网络设备202通常表示能够在本地网络和/或外部网络内的计算设备之间转发流量(例如,包)的任何类型或形式的网络器材或设备。在一些示例中,网络设备202可表示调制解调器和/或路由器。如本文所用,术语“调制解调器”通常是指建立与互联网(例如,与互联网服务提供商)的连接并且将互联网连接延伸到一个或多个附加设备的任何类型或形式的设备。在一些示例中,调制解调器可经由路由器将多个计算设备连接到互联网(例如,创建本地或内部网络)。如本文所用,术语“路由器”通常是指经由调制解调器在本地网络内的设备之间转发流量和/或将流量转发到外部网络的任何类型或形式的设备。

端点设备206(1)-(n)通常表示能够读取计算机可执行指令和/或经由网络设备连接到网络的任何类型或形式的计算设备。在一些示例中,端点设备206(1)-(n)的全部或一部分可由特定用户或用户组拥有和/或访问。例如,端点设备206(1)-(n)可包括住宅或办公室内的互联网使能设备的全部或一部分。端点设备206(1)-(n)的示例包括但不限于笔记本电脑、平板电脑、台式机、服务器、蜂窝电话、个人数字助理(pda)、物联网(iot)设备(例如,互联网使能恒温器、厨房器具、安全系统、婴儿监视器等)、多媒体播放器、嵌入式系统、可穿戴设备(例如,智能手表、智能眼镜等)、游戏控制台、这些设备中一个或多个的组合、图5中的示例性计算系统510或任何其他合适的计算设备。

网络204通常表示能够促进通信或数据传输的任何介质或体系结构。如上所述,网络204可促进端点设备206(1)-(n)和网络设备202之间的通信。此外,网络204可促进端点设备206(1)-(n)中的两个或更多个之间的通信。在一些示例中,网络204可表示局域网(lan),诸如家庭网络。网络204的附加示例包括但不限于内联网、广域网(wan)、个域网(pan)和/或任何其他合适类型的网络。网络204可使用无线或有线连接来促进通信或数据传输。

图3是用于更新网络设备的示例性计算机实现的方法300的流程图。图3中示出的步骤可通过任何合适的计算机可执行代码和/或计算系统来执行。在一些实施方案中,图3中示出的步骤可以通过图1中的系统100、图2中的系统200、图5中的计算系统510和/或图6中的示例性网络体系结构600的部分的组件中的一个或多个执行。

如图3所示,在步骤302处,本文所述的系统中的一个或多个可通过监视连接到为端点设备提供网络连接的网络设备的至少一个端点设备来确定端点设备的用户不太可能经由网络设备访问网络连接的周期性时间间隔。例如,作为图2中的网络设备202的一部分,确定模块104可通过监视端点设备206(1)-(n)中的至少一个来确定指示端点设备206(1)-(n)的用户何时不太可能经由网络设备202访问网络204的时间间隔208。

如本文所用,术语“时间间隔”通常是指任何指定的持续时间。在一些示例中,可通过起始点(例如,下午2:00)和结束点(例如,下午5:00)来描述时间间隔。如本文所用,术语“周期性时间间隔”通常是指定期重复的任何时间间隔。例如,除了起始点和结束点之外,周期性时间间隔可通过其被重复的频率(例如,每周四)来描述。

本文描述的系统可确定用户不太可能以各种方式访问网络连接的周期性时间间隔。在一些示例中,确定模块104可确定特定位置处的所有用户可能无法和/或未尝试访问该位置处的网络连接的周期性时间间隔。例如,确定模块104可确定所有用户何时可能在网络连接范围之外。作为示例,确定模块104可确定办公室的所有员工不在办公室的周期性时间间隔。除此之外或作为另外一种选择,确定模块104可确定网络连接的所有用户在网络连接范围之内,但不尝试访问网络连接的周期性时间间隔。例如,确定模块104可确定居住在住宅中的所有个体都入睡的周期性时间间隔。

在一些实施方案中,确定模块104可基于用户与用户的端点设备中的一个或多个之间的交互来识别用户不太可能访问网络连接的周期性时间间隔。例如,确定模块104可检测用户经由其端点设备访问网络连接的每个实例。具体地讲,确定模块104可识别和/或拦截在端点设备和提供网络连接的网络设备之间分配的所有网络流量。确定模块104可记录网络流量被分配的时间(例如,一天中的时间、一周中的某天和/或一个月中的某天),然后基于记录的时间来识别网络不活动的周期。

除此之外或作为另外一种选择,确定模块104可基于由一个或多个端点设备提供的服务来确定用户何时不太可能访问网络连接。例如,确定模块104可确定端点设备周期性地为用户提供服务。确定模块104然后可基于由端点设备提供的服务的定时来推断用户何时不太可能访问端点设备所使用的网络连接。在一些实施方案中,确定模块104可通过访问端点设备内的用户帐户或简档来识别指示端点设备何时为用户提供周期性服务的信息,该用户帐户或简档包含由用户输入和/或由端点设备收集的信息。

在监视由端点设备提供的服务的示例中,确定模块104可确定用户已经在他们的住宅内安装了智能恒温器(例如,nestauto-away恒温器)。这样的设备可基于居住在住宅中的个体是在家还是在外来自动调节住宅内的温度。因此,该设备可监视、记录和/或预测住宅内个体的活动周期。确定模块104可访问设备内的该信息并且使用该信息来确定住宅内的个体何时可能远离住宅。

在一些示例中,确定模块104可在确定用户不太可能访问网络连接的周期性时间间隔之前,收集关于用户的习惯或活动模式的历史数据(即,训练数据)一段时间。例如,确定模块104可监视用户的一个或多个端点设备达预定时间量(例如,一周、一个月等)以收集关于用户的时间表的信息(例如,用户可能在家,在工作,出差等的时间)。确定模块104然后可分析该数据以识别用户未访问和/或不可用于访问网络连接的时间间隔。接下来,确定模块104可使用所识别的时间间隔来预测用户不太可能访问网络连接的未来时间间隔。例如,确定模块104可将所识别的时间间隔外推到未来的实例。作为示例,确定模块104可确定如果用户在前四个星期五中的三个星期五的上午7:00到上午11:00之间没有访问网络连接,则用户不太可能在下星期五的相同时间间隔期间访问网络连接。此外,确定模块104可通过继续监视用户的端点设备中的一个或多个来更新或修订用户不太可能访问网络连接的周期性时间间隔。

图4示出用户不太可能访问用户家中的网络连接的周期性时间间隔的示例。在该示例中,用户时间表402的阴影部分可指示每周期间的时间间隔,该时间间隔对应于用户可能远离网络连接,不能访问网络连接和/或不尝试访问网络连接的周期。

具体地讲,如图4所示,用户时间表402可指示用户不太可能在星期六和星期天的半夜12:00和上午8:00之间以及星期天晚上开始和星期五早晨结束的每晚的晚上11:00和上午7:00之间访问网络连接。在该示例中,这些时间间隔可对应于用户可能入睡的时间。确定模块104可基于确定由用户发起的网络活动每晚停止的时间,用户在其移动电话内设置闹钟的时间,用户已对互联网使能咖啡机进行了编程的时间,和/或用户何时可入睡或醒来的任何附加指示来识别这些时间间隔。此外,用户时间表402可指示用户不太可能在星期一至星期五的上午9:00和下午5:30之间访问网络连接。在该示例中,这些时间间隔可对应于用户可能在工作或以其他方式离开住宅的时间。在一个示例中,确定模块104可基于监视服务(诸如用户住宅中的安全系统和/或智能恒温器)来识别这些时间间隔。

此外,用户时间表402可指示用户不太可能在星期一至星期五的下午6:00和下午6:30之间访问网络连接。在该示例中,这些时间间隔可对应于用户可能正在执行诸如遛狗或烹饪晚餐之类的任务或杂务的时间。最终,用户时间表402可指示用户不太可能在星期六的中午12:00和下午2:00之间访问网络连接,这可对应于每周约会或外出。在一个示例中,确定模块104可基于确定用户在这些时间期间不经由端点设备发起网络活动或发起最小网络活动来识别这些时间间隔。

返回图3,在步骤304处,本文所述的系统中的一个或多个可检测到系统更新可用于网络设备,该系统更新在应用于网络设备时将损害网络设备为端点设备提供网络连接的能力。例如,作为图2中的网络设备202的一部分,检测模块106可检测到系统更新210可用于网络设备202。

如本文所用,术语“系统更新”通常是指对计算设备的任何类型或形式的基于软件的升级或改进。在一些示例中,设备的开发商或制造商可周期性地分配被设计为增强该设备的安全性和/或性能的系统更新。系统更新可通过更换在计算设备上运行的可执行代码(例如,操作系统、应用程序、固件等)的全部或一部分来产生此类益处。

本文所述的系统可以以各种方式检测网络设备的可用系统更新。在一些示例中,检测模块106可周期性地(例如,每天、每周等)搜索可用更新。例如,检测模块106可周期性地查询或抓取由网络设备的开发商或制造商提供的网站,以获得系统更新是可用的指示。除此之外或作为另外一种选择,检测模块106可直接接收系统更新可用于网络设备的指示。例如,网络设备的开发商或制造商可向客户所购买的网络设备的全部或一部分分配通知,以提示客户系统更新是可用的。

在一些示例中,检测模块106可确定可用系统更新的重要性等级或紧迫性。例如,检测模块106可确定更新将改善网络设备的性能或安全性的程度。检测模块106可以以各种方式识别或推断可用系统更新的重要性等级。在一个示例中,在没有更新的情况下,如果网络设备将不起作用和/或易受安全威胁的攻击,则检测模块106可将可用系统更新分类为关键的。作为另外一种选择,在更新仅包含次要和/或非必要升级(例如,对小软件错误的修复)的情况下,检测模块106可将可用系统更新分类为非关键的。

此外,在一些实施方案中,检测模块106可确定更新的创建者或分配者已经用其重要性的指示直接标记了更新(例如,通过将更新标记为“必要”或“关键”)。在另一个示例中,检测模块106可基于与更新相关联的情境因素(诸如自网络设备上次接收到更新以来已经过去的时间量)来确定更新的重要性等级。

返回图3,在步骤306处,本文所述的系统中的一个或多个可基于用户不太可能访问网络连接的周期性时间间隔来识别将可用系统更新应用于网络设备的最佳时间。例如,作为图2中的网络设备202的一部分,识别模块108可基于时间间隔208来识别最佳时间212。

本文所述的系统可以以各种方式识别将可用系统更新应用于网络设备的最佳时间。在一些示例中,识别模块108可确定应用更新的最佳时间是紧接在检测到更新之后的时间(即,当前时间)。例如,如果在用户不太可能访问由网络设备提供的网络连接的周期性时间间隔期间识别出更新,则识别模块108可确定立即将更新应用于网络设备。作为另外一种选择,识别模块108可基于确定用户当前不在访问网络设备和/或应用更新将不会导致对用户的网络服务的显著破坏来确定应当立即将更新应用于网络设备。此外,在一些示例中,识别模块108可基于确定更新的重要性等级指示更新对于网络设备的安全性和/或性能是关键的,来确定应当立即将更新应用于网络设备。

在其他示例中,识别模块108可确定将系统更新应用于网络设备的最佳时间是将来的时间。例如,如果在用户不太可能访问网络连接的周期性时间间隔内未检测到更新,则识别模块108可确定等待应用更新直到下一个最近周期性时间间隔开始。参见图4的示例,检测模块106可在星期六的上午11:00检测可用系统更新。在该示例中,识别模块108可确定应用更新的最佳时间是在该星期六的中午12:00。

在一个实施方案中,识别模块108可基于下一个最近周期性时间间隔的持续时间是否足以将更新应用于网络设备来识别应用系统更新的最佳时间。如果应用更新的估计时间量长于下一个最近时间间隔的持续时间,则识别模块108可确定应用更新的最佳时间是在另一个时间间隔的开始处,该时间间隔至少与估计的应用时间一样长。参见涉及图4的上述示例,识别模块108可确定可用系统更新需要超过两个小时的估计应用时间。因此,识别模块108可确定应用更新的最佳时间是在半夜12:00(而不是中午12:00)。

返回图3,在步骤308处,本文所述的系统中的一个或多个可在最佳时间将可用系统更新应用于网络设备。例如,作为网络设备202的一部分,更新模块110在最佳时间212将系统更新210应用于网络设备202。

本文所述的系统可以以各种方式将系统更新应用于网络设备。在一些示例中,更新模块110可从由提供更新的组织管理的服务器或数据库下载和/或接收包含更新的文件或者代码的部分。更新模块110然后可在网络设备上安装或执行文件或者代码的部分。如上所解释,在一些实施方案中,将更新应用于网络设备可破坏或损害网络设备提供网络连接的能力。在此类实施方案中,在更新模块110完成应用更新的进程(例如,通过重新引导或重新启动网络设备)之后,网络设备可恢复提供网络连接。

在一些示例中,更新模块110可在应用更新之前确认用户当前不在尝试访问由网络设备提供的网络连接(即,更新模块110可确保用户并未意外地访问网络连接)。然而,在一些实施方案中,更新模块110可在没有来自用户的指导的情况下将可用系统更新应用于网络设备。例如,更新模块110在将更新应用于网络设备之前可以不寻求来自用户的许可,因为更新模块110可在识别模块108确定不太可能给用户带来不便的时间应用更新。

如上结合图3所解释的,网络设备可监视连接到由网络设备提供的网络的一个或多个端点设备,以确定端点设备的用户不太可能访问网络的时间间隔。例如,网络设备可确定用户可能无法和/或未尝试访问网络的周期性时间间隔。当系统更新可用于网络设备时,网络设备可识别用户不太可能访问网络的下一个最近时间。网络设备然后可在此时将系统更新应用于网络设备,以便不干扰用户访问网络的尝试。

图5是能够实现本文描述和/或示出的实施方案中的一个或多个的示例性计算系统510的框图。例如,计算系统510的全部或一部分可单独地或与其他元件结合来执行本文所述的步骤中的一个或多个(诸如图3中所示的步骤中的一个或多个)和/或作为用于执行的装置。计算系统510的全部或一部分也可执行本文描述和/或示出的任何其他步骤、方法或过程和/或作为用于执行的装置。

计算系统510在广义上表示能够执行计算机可读指令的任何单处理器或多处理器计算设备或系统。计算系统510的示例包括但不限于:工作站、膝上型计算机、客户端方终端、服务器、分布式计算系统、手持设备或任何其他计算系统或设备。在其最基本的配置中,计算系统510可以包括至少一个处理器514和系统存储器516。

处理器514通常表示能够处理数据或解译和执行指令的任何类型或形式的物理处理单元(例如,硬件实现的中央处理单元)。在某些实施方案中,处理器514可以接收来自软件应用程序或模块的指令。这些指令可以致使处理器514执行本文描述和/或示出的一个或多个示例性实施方案的功能。

系统存储器516通常表示能够存储数据和/或其他计算机可读指令的任何类型或形式的易失性或非易失性存储设备或介质。系统存储器516的示例包括但不限于:随机存取存储器(ram)、只读存储器(rom)、闪存存储器或任何其他合适的存储器设备。虽然并不是必需的,但是在某些实施方案中,计算系统510可以包括易失性存储器单元(诸如系统存储器516)和非易失性存储设备(诸如主存储设备532,如下详述)两者。在一个示例中,图1的模块102中的一个或多个可被加载到系统存储器516中。

在某些实施方案中,除了处理器514和系统存储器516之外,示例性计算系统510还可以包括一个或多个组件或元件。例如,如图5所示,计算系统510可以包括存储器控制器518、输入/输出(i/o)控制器520和通信接口522,它们中的每一个都可以经由通信基础结构512来互连。通信基础结构512通常表示能够促进计算设备的一个或多个组件之间的通信的任何类型或形式的基础结构。通信基础结构512的示例包括但不限于:通信总线(诸如工业标准体系结构(isa))、外围组件互连(pci)、pciexpress(pcie)或类似的总线)和网络。

存储器控制器518通常表示能够处理存储器或数据或者控制计算系统510的一个或多个组件之间的通信的任何类型或形式的设备。例如,在某些实施方案中,存储器控制器518可以经由通信基础结构512来控制处理器514、系统存储器516和i/o控制器520之间的通信。

i/o控制器520通常表示能够协调和/或控制计算设备的输入和输出功能的任何类型或形式的模块。例如,在某些实施方案中,i/o控制器520可以控制或促进计算系统510的一个或多个元件之间的数据传送,这些元件是诸如处理器514、系统存储器516、通信接口522、显示适配器526、输入接口530和存储接口534。

通信接口522在广义上表示能够促进示例性计算系统510与一个或多个另外设备之间的通信的任何类型或形式的通信设备或适配器。例如,在某些实施方案中,通信接口522可促进计算系统510与包括的计算系统的专用或公共网络之间的通信。通信接口522的示例包括但不限于有线网络接口(诸如网络接口卡)、无线网络接口(诸如无线网络接口卡)、调制解调器和任何其他合适的接口。在至少一个实施方案中,通信接口522可以经由与网络诸如互联网的直接链路来提供与远程服务器的直接连接。通信接口522也可通过例如局域网(诸如以太网网络)、个人区域网、电话或电缆网络、蜂窝电话连接、卫星数据连接或任何其他合适的连接来间接地提供此类连接。

在某些实施方案中,通信接口522还可以表示主机适配器,主机适配器被配置为经由外部总线或通信信道来促进计算系统510与一个或多个另外网络或存储设备之间的通信。主机适配器的示例包括但不限于:小型计算机系统接口(scsi)主机适配器、通用串行总线(usb)主机适配器、电气与电子工程师协会(ieee)1394主机适配器、高级技术附件(ata)、并行ata(pata)、串行ata(sata)和外部sata(esata)主机适配器、光纤通道接口适配器、以太网适配器等。通信接口522还可以允许计算系统510参与分布式或远程计算。例如,通信接口522可以接收来自远程设备的指令或将指令发送到远程设备以供执行。

如图5所示,计算系统510也可以包括至少一个显示设备524,该显示设备经由显示适配器526而联接到通信基础结构512。显示设备524通常表示能够以可视的方式显示由显示适配器526转发的信息的任何类型或形式的设备。类似地,显示适配器526通常表示被配置为转发来自通信基础结构512(或来自帧缓冲器,如本领域中已知的)的图形、文本和其他数据以在显示设备524上显示的任何类型或形式的设备。

如图5所示,示例性计算系统510还可以包括经由输入接口530而联接到通信基础结构512的至少一个输入设备528。输入设备528通常表示能够向示例性计算系统510提供输入(由计算机或人生成)的任何类型或形式的输入设备。输入设备528的示例包括但不限于:键盘、指向设备、语音识别设备或任何其他输入设备。

如图5所示,示例性计算系统510还可以包括主存储设备532和经由存储接口534联接到通信基础结构512的备份存储设备533。存储设备532和533通常表示能够存储数据和/或其他计算机可读指令的任何类型或形式的存储设备或介质。例如,存储设备532和533可以是磁盘驱动器(例如,所谓的硬盘驱动器)、固态驱动器、软盘驱动器、磁带驱动器、光盘驱动器、闪存驱动器等。存储接口534通常表示用于在存储设备532和533与计算系统510的其他组件之间传输数据的任何类型或形式的接口或设备。

在某些实施方案中,存储设备532和533可以被配置为对被配置为存储计算机软件、数据或其他计算机可读信息的可移除存储单元执行读取和/或写入。合适的可移除存储单元的示例包括但不限于:软盘、磁带、光盘、闪存存储器设备等。存储设备532和533还可以包括允许将计算机软件、数据或其他计算机可读指令加载到计算系统510内的其他类似的结构或设备。例如,存储设备532和533可以被配置为读取和写入软件、数据或其他计算机可读信息。存储设备532和533还可以是计算系统510的一部分,或可以是通过其他接口系统进行访问的单独设备。

可以将许多其他设备或子系统连接到计算系统510。相反地,无需图5中示出的所有组件和设备都存在,也可以实践本文描述和/或示出的实施方案。上文提及的设备和子系统也可以通过不同于图5所示的方式进行互连。计算系统510也可以采用任何数量的软件、固件和/或硬件配置。例如,本文所公开的一个或多个示例性实施方案可被编码为计算机可读介质上的计算机程序(也称为计算机软件、软件应用程序、计算机可读指令或计算机控制逻辑)。如本文所用,术语“计算机可读介质”通常指能够存储或携带计算机可读指令的任何形式的设备、载体或介质。计算机可读介质的示例包括而不限于:传输型介质(诸如载波)和非暂态型介质(诸如磁存储介质,例如,硬盘驱动器、带驱动器和软盘)、光存储介质(例如,光盘(cd)、数字视频盘(dvd)和蓝光光盘)、电子存储介质(例如,固态驱动器和闪存介质)和其他分配系统。

可以将包含计算机程序的计算机可读介质加载到计算系统510中。然后,可以将存储在计算机可读介质上的计算机程序的全部或一部分存储在系统存储器516和/或存储设备532和533的各个部分中。当由处理器514执行时,加载到计算系统510中的计算机程序可以致使处理器514执行本文描述和/或示出的示例性实施方案中的一个或多个的功能和/或作为用于执行其的装置。除此之外或作为另外一种选择,可在固件和/或硬件中实现本文描述和/或例示的示例性实施方案中的一者或多者。例如,计算系统510可以被配置成用于实施本文公开的示例性实施方案中的一个或多个的专用集成电路(asic)。

图6为示例性网络体系结构600的框图,其中客户端系统610、620和630以及服务器640和645可联接到网络650。如上详述,网络体系结构600的全部或一部分可单独地或与其他元件结合地来执行本文所公开的步骤中的一个或多个步骤(诸如图3中所示的步骤中的一个或多个)和/或作为用于执行其的装置。网络体系结构600的全部或一部分还可以用于执行本公开中阐述的其他步骤和特征和/或作为用于执行其的装置。

客户端系统610、620和630通常表示任何类型或形式的计算设备或系统,诸如图5中的示例性计算系统510。类似地,服务器640和645通常表示被配置为提供各种数据库服务和/或运行某些软件应用程序的计算设备或系统,诸如应用程序服务器或数据库服务器。网络650通常表示任何电信或计算机网络包括,例如,内联网、wan、lan、pan或互连网。在一个示例中,客户端系统610、620和/或630和/或服务器640和/或645可以包括图1的系统100的全部或一部分。

如图6所示,一个或多个存储设备660(1)-(n)可以直接地附接到服务器640。类似地,一个或多个存储设备670(1)-(n)可以直接地附接到服务器645。存储设备660(1)-(n)和存储设备670(1)-(n)通常表示能够存储数据和/或其他计算机可读指令的任何类型或形式的存储设备或介质。在某些实施方案中,存储设备660(1)-(n)和存储设备670(1)-(n)可以表示被配置为使用各种协议(诸如网络文件系统(nfs)、服务器消息块(smb)或通用互联网文件系统(cifs))与服务器640和645进行通信的网络附接存储(nas)设备。

服务器640和645也可以连接到存储区域网络(san)架构680。san架构680通常表示能够促进多个存储设备之间的通信的任何类型或形式的计算机网络或体系结构。san架构680可促进服务器640和645与多个存储设备690(1)-(n)和/或智能存储阵列695之间的通信。san架构680还可通过网络650以及服务器640和645以这样的方式促进客户端系统610、620和630与存储设备690(1)-(n)和/或智能存储阵列695之间的通信:设备690(1)-(n)和阵列695呈现为客户端系统610、620和630的本地附接设备。与存储设备660(1)-(n)和存储设备670(1)-(n)相同,存储设备690(1)-(n)和智能存储阵列695通常表示能够存储数据和/或其他计算机可读指令的任何类型或形式的存储设备或介质。

在某些实施方案中,并且参照图5的示例性计算系统510,通信接口(诸如图5中的通信接口522)可以用于在每个客户端系统610、620和630与网络650之间提供连接性。客户端系统610、620和630可能能够使用例如web浏览器或其他客户端软件来访问服务器640或645上的信息。此类软件可以允许客户端系统610、620和630访问由服务器640、服务器645、存储设备660(1)-(n)、存储设备670(1)-(n)、存储设备690(1)-(n)或智能存储阵列695托管的数据。虽然图6示出了使用网络(诸如互联网)来交换数据,但是本文描述和/或示出的实施方案不仅限于互联网或任何特定的基于网络的环境。

在至少一个实施方案中,本文公开的一个或多个示例性实施方案中的全部或一部分可以被编码为计算机程序并加载到服务器640、服务器645、存储设备660(1)-(n)、存储设备670(1)-(n)、存储设备690(1)-(n)、智能存储阵列695或它们的任何组合上并且加以执行。本文公开的一个或多个示例性实施方案中的全部或一部分也可以被编码为计算机程序,存储在服务器640中,由服务器645运行,以及通过网络650而分配到客户端系统610、620和630。

如上详述,计算系统510和/或网络体系结构600的一个或多个组件可单独地或与其他元件结合地来执行用于更新网络设备的示例性方法的一个或多个步骤和/或作为用于执行其的装置。

虽然上述公开内容使用特定框图、流程图和示例阐述了各种实施方案,但每个框图组件、流程图步骤、操作和/或本文描述和/或例示的组件可使用多种硬件、软件或固件(或其任何组合)配置单独和/或共同地实现。此外,包含在其他组件内的组件的任何公开内容应当被视为在本质上是示例性的,因为可实施许多其他体系结构来实现相同功能。

在一些示例中,图1中的示例性系统100的全部或一部分可表示云计算环境或基于网络的环境的部分。云计算环境可通过互联网提供各种服务和应用程序。这些基于云的服务(例如软件即服务、平台即服务、基础结构即服务等)可通过网页浏览器或其他远程接口进行访问。本文所述的各种功能可通过远程桌面环境或任何其他基于云的计算环境提供。

在各种实施方案中,图1中的示例性系统100的全部或一部分可促进基于云的计算环境内的多租户应用。换句话讲,本文所述的软件模块可配置计算系统(例如,服务器)以促进本文所述功能中的一个或多个的多租户应用。例如,本文所述软件模块中的一个或多个可对服务器进行编程以允许两个或更多个客户端(例如,顾客)共享正在服务器上运行的应用程序。以这种方式编程的服务器可在多个顾客(即,租户)之间共享应用程序、操作系统、处理系统和/或存储系统。本文所述模块中的一个或多个还可为每个顾客分割多租户应用程序的数据和/或配置信息使得一个顾客不能访问另一个顾客的数据和/或配置信息。

根据各种实施方案,图1中的示例性系统100的全部或一部分可在虚拟环境内实现。例如,本文所述模块和/或数据可在虚拟机内驻留和/或执行。如本文所用,术语“虚拟机”通常指由虚拟机管理器(例如,虚拟机监控程序)从计算硬件中抽象出来的任何操作系统环境。除此之外或作为另外一种选择,本文所述的模块和/或数据可在虚拟化层内驻留和/或执行。如本文所用,术语“虚拟化层”通常指覆盖操作系统环境和/或从操作系统环境中抽象出来的任何数据层和/或应用层。虚拟化层可由软件虚拟化解决方案(例如,文件系统过滤器)管理,软件虚拟化解决方案将虚拟化层呈现为就好像它是底层基本操作系统的一部分。例如,软件虚拟化解决方案可将最初定向至基本文件系统和/或注册表内的位置的调用重定向至虚拟化层内的位置。

在一些示例中,图1中的示例性系统100的全部或一部分可表示移动计算环境的部分。移动计算环境可由多种移动计算设备来实现,这些设备包括移动电话、平板电脑、电子书阅读器、个人数字助理、可穿戴计算设备(例如,具有头戴式显示器的计算设备、智能手表等),等等。在一些示例中,移动计算环境可具有一个或多个区别特征,包括例如对电池供电的依赖、在任何给定时间只呈现一个前台应用程序、远程管理特征、触摸屏特征、(例如,由全球定位系统、陀螺仪、加速度计等提供的)位置和移动数据、限制对系统级配置的修改和/或限制第三方软件检查其他应用程序的行为的能力的受限平台、限制应用程序的安装的控制装置(例如,仅安装来源于经批准的应用程序商店的应用程序)等等。本文所述的各种功能可被提供用于移动计算环境和/或可与移动计算环境交互。

此外,图1中的示例性系统100的全部或一部分可表示一个或多个信息管理系统的部分,与一个或多个信息管理系统交互,使用由一个或多个信息管理系统产生的数据和/或产生被一个或多个信息管理系统使用的数据。如本文所用,术语“信息管理”可指数据的保护、组织和/或存储。信息管理系统的示例可包括但不限于:存储系统、备份系统、存档系统、复制系统、高可用性系统、数据搜索系统、虚拟化系统等。

在一些实施方案中,图1中的示例性系统100的全部或一部分可表示一个或多个信息安全系统的部分,产生受一个或多个信息安全系统保护的数据和/或与一个或多个信息安全系统通信。如本文所用,术语“信息安全”可指对受保护数据的访问的控制。信息安全系统的示例可包括而不限于:提供受管理的安全服务的系统、数据丢失防护系统、身份认证系统、访问控制系统、加密系统、策略遵循系统、入侵检测与防护系统、电子发现系统等等。

根据一些示例,图1中的示例性系统100的全部或一部分可表示一个或多个端点安全系统的部分、与一个或多个端点安全系统通信和/或受一个或多个端点安全系统保护。如本文所用,术语“端点安全”可指保护端点系统免遭未经授权和/或非法使用、访问和/或控制。端点保护系统的示例可包括而不限于:反恶意软件系统、用户认证系统、加密系统、保密系统、垃圾邮件过滤服务,等等。

本文描述和/或例示的过程参数和步骤序列仅通过举例的方式给出并且可根据需要改变。例如,虽然本文示出和/或描述的步骤可以特定顺序示出或讨论,但这些步骤不一定需要按例示或讨论的顺序来执行。本文描述和/或例示的各种示例性方法也可省略本文描述或例示的步骤中的一个或多个,或除了所公开的那些步骤之外还包括另外步骤。

虽然在全功能计算系统的背景中描述和/或例示了各种实施方案,但这些示例性实施方案中的一个或多个可作为各种形式的程序产品来分配,而不顾及用于实际执行分配的计算机可读介质的特定类型。本文所公开的实施方案也可使用执行某些任务的软件模块来实现。这些软件模块可包括脚本、批文件或可存储在计算机可读存储介质上或计算系统中的其他可执行文件。在一些实施方案中,这些软件模块可将计算系统配置为执行本文所公开的示例性实施方案中的一个或多个。

此外,本文所述的模块中的一个或多个可将数据、物理设备和/或物理设备的表示从一种形式转换为另一种形式。例如,本文所述的模块中的一个或多个可接收用户不太可能访问网络连接的周期性时间间隔,将周期性时间间隔转换为将系统更新应用于提供网络连接的网络设备的最佳时间,将转换的结果输出到网络设备,使用转换结果来更新网络设备,并且将转换结果存储在服务器或数据库中。除此之外或作为另外一种选择,本文所述模块中的一个或多个可通过在计算设备上执行、在计算设备上存储数据和/或以其他方式与计算设备交互,来将处理器、易失性存储器、非易失性存储器、和/或物理计算设备的任何其他部分从一种形式转换为另一种形式。

提供前面描述的目的是使本领域的其他技术人员能够最好地利用本文所公开的示例性实施方案的各种方面。该示例性描述并非旨在是详尽的或局限于所公开的任何精确形式。在不脱离本发明精神和范围的前提下,可进行许多修改和变化。本文所公开的实施方案在所有方面均应被视为示例性的而非限制性的。应当参考所附权利要求及其等同形式来确定本发明的范围。

除非另有说明,否则在本说明书和权利要求中使用的术语“连接到”和“联接到”(以及其衍生形式)应该理解为允许直接和间接(即,经由其他元件或组件)连接。此外,在本说明书和权利要求中使用的术语“一”或“一个”应当理解为表示“...中的至少一者”。最后,为了易于使用,在本说明书和权利要求中使用的术语“包括”和“具有”(以及其衍生形式)与词语“包含”可互换并且与词语“包含”具有相同含义。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1