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

为远程用户动态生成移动软件定义广域网网关位置的系统和方法与流程

2022-07-11 04:49:37 来源:中国专利 TAG:


1.本公开总体上涉及软件定义广域网(sd-wan),并且更具体地涉及为远程用户动态生成移动软件定义广域网网关位置的系统和方法。


背景技术:

2.随着全球劳动力日趋移动化,远程用户通过软件定义广域网(sd-wan)的方式访问基于互联网和内联网的企业资源。被部署为对现有网络拓扑的虚拟覆盖的sd-wan使用软件定义的概念在广域网上分配流量。在传统sd-wan的模式下,远程用户可以经由企业托管的集中式远程访问网关来连接到网络。集中式远程访问网关的位置一般以企业的物理位置为基础。然而,随着远程用户的数量和/或远程用户与集中式网关之间的距离增加,传统模型在例如速度、连接性、流量分配、带宽可用性和整体系统管理等方面表现出低效。
附图说明
3.图1示出了用于托管用于远程用户的集中式远程访问网关的系统;
4.图2示出了根据本公开的用于为远程用户动态生成sd-wan移动远程访问网关的系统;
5.图3示出了根据本公开的用于为远程用户动态生成sd-wan移动远程访问网关的系统组件的框图;
6.图4示出了根据本公开的用于为远程用户动态生成移动sd-wan远程访问网关的方法的实施例;
7.图5示出了根据本公开的用于动态更新远程访问网关的方法的实施例;并且
8.图6示出了根据本公开的计算机系统。
具体实施方式
9.概览
10.在独立权利要求中阐述了本发明的各方面并且在从属权利要求中阐述了优选特征。一个方面的特征可以单独应用于任何方面或者应用于与其他多个方面相结合。
11.根据一个实施例,一种系统可以包括一个或多个处理器以及一个或多个计算机可读非暂时性存储介质,这些计算机可读非暂时性存储介质包括指令,这些指令当被一个或多个处理器执行时使系统的一个或多个组件执行包括如下项的操作:接收位置数据,所述位置数据与访问一个或多个现有远程访问网关的多个远程用户相关联,其中,所示一个或多个现有远程访问网关位于一个或多个网络位置处;至少部分基于接收到的位置数据,来构建用户位置的热图;并且根据用户位置的热图,来识别至少一个新网络位置,以在该至少一个新网络位置中生成至少一个新远程访问网关,或者来从一个或多个网络位置中识别至少一个现有网络位置,以在该至少一个现有网络位置中从一个或多个现有远程访问网关中
移除至少一个现有远程访问网关。识别步骤还可以包括根据用户位置的热图来确定至少一个新网络位置处的远程用户集中度,并且如果在至少一个新网络位置处的远程用户集中度超过第一预定阈值,则在至少一个新网络位置处生成至少一个新远程访问网关。识别步骤还可以包括根据用户位置的热图来确定至少一个现有网络位置处的远程用户集中度;并且如果在至少一个现有网络位置处的远程用户集中度已经降低至低于第二预定阈值,则从至少一个现有网络位置中移除至少一个现有远程访问网关。
12.此外,位置数据可以包括与多个远程用户相关联的互联网协议(ip)地址,其中,所述ip地址通过地理定位数据库被转换为用户位置,以用于构建或更新热图。
13.另外,所述至少一个新网络位置可以是基于如下项来识别的:每个远程用户所生成的流量、以及该远程用户与一个或多个现有远程访问网关的距离。
14.此外,一个或多个现有远程访问网关和至少一个新远程访问网关可以通过软件定义广域网(sd-wan)结构连接。根据一个实施例,sd-wan可以作为由提供商托管的服务运行,其中,提供商可以包括云服务提供商、企业提供商或混合云-企业提供商中的至少一个。
15.根据另一个实施例,一种方法可以包括以下步骤:接收位置数据,所述位置数据与访问一个或多个现有远程访问网关的多个远程用户相关联,其中,一个或多个现有远程访问网关位于一个或多个网络位置处;至少部分基于接收到的位置数据,来构建用户位置的热图;以及根据所述用户位置的热图,来识别至少一个新网络位置,以在所述至少一个新网络位置中生成至少一个新远程访问网关,或者来从所述一个或多个网络位置中识别至少一个现有网络位置,以在所述至少一个现有网络位置中从所述一个或多个现有远程访问网关中移除至少一个现有远程访问网关。
16.根据另一个实施例,一个或多个计算机可读非暂时性存储介质,该计算机可读非暂时性存储介质可以包括指令,所述指令当由处理器执行时使得包括如下项的操作被执行:接收位置数据,所述位置数据与访问一个或多个现有远程访问网关的多个远程用户相关联,其中,一个或多个现有远程访问网关位于一个或多个网络位置处;至少部分基于接收到的位置数据,来构建用户位置的热图;并且根据所述用户位置的热图,来识别至少一个新网络位置,以在所述至少一个新网络位置中生成至少一个新远程访问网关,或者来从所述一个或多个网络位置中识别至少一个现有网络位置,以在所述至少一个现有网络位置中从所述一个或多个现有远程访问网关中移除至少一个现有远程访问网关。
17.本公开的某些实施例的技术优势可以包括以下中的一项或多项。本文所描述的系统和方法可以使用远程用户的位置数据来构建动态热图,该动态热图指示sd-wan上的远程用户的网络位置。如果系统使用热图识别出远程用户集中度和/或流量上升到高于预定阈值的网络位置,系统可以在识别出的网络位置处或在识别出的网络位置附近“启动(spin-up)”新远程访问网关。类似地,如果系统使用热图识别出远程用户集中度和/或流量降低到低于预定阈值的网络位置,它可能会发起“关闭(spin-down)”存在于识别出的网络位置处或存在于经识别的网络位置附近的远程访问网关。因为热图是动态的,所以远程用户集中度和/或流量每隔一定时间会在热图上不断被更新。热图的动态特性以及系统根据使用来启动和关闭远程访问网关的能力可以改善网络中针对互联网绑定用户和内联网绑定用户两者的流量的用户体验。
18.通过以下附图、描述和权利要求,本领域技术人员将很容易看出其他技术优点。此
外,尽管上面列举了特定优点,但各种实施例可以包括全部或部分列举的优点,或不包括列举的优点。
19.示例实施例
20.图1描绘了传统系统100,该系统用于托管用于远程用户的集中式远程访问网关。如图1所示,位于加利福尼亚125的企业110例如可能拥有位于世界各地不同城市的远程用户。例如,图1描绘了分别在达拉斯145、纽约155和拉斯维加斯165中的远程用户140、远程用户150、远程用户160。另外的远程用户170可以位于其他位置175。为了向远程用户140、150、160、170提供对基于互联网或内联网的企业资源的访问,企业110可以托管集中式远程访问网关120,远程用户140、150、160、170可以通过该网关经由互联网130进行连接。在传统上,这些远程用户连接是通过虚拟专用网络(vpn)建立的,其中,虚拟点对点连接是通过在现有的网络上的专用电路或隧道协议来创建的。然而,随着在云上存储和管理的数据和应用程序越来越多,sd-wan提供了虚拟接口(即,对物理网络的虚拟覆盖)用于连接一系列端点,并且在如图1所示的情况中,用于将远程用户140、150、160、170连接到基于企业或基于云的资源。
21.值得注意的是,如图1所示,集中式远程访问网关120可以驻留在与企业110的物理位置或网络位置相对应的位置,该位置通常与远程用户140、150、160、170的网络位置不同。这可能会给远程用户和服务提供商两者造成困难。例如,当远程移动用户连接到sd-wan集中式远程访问网关时,他/她通常使用多频段设备进行连接。如果该设备在远程位置漫游,它可能会通过wi-fi连接到外国公共陆地移动网络(plmn)。尽管本地wi-fi访问可能会找到更靠近接口的连接点,但是生成于该连接之上的流量必须首先被路由到家庭plmn,然后它才能进入sd-wan。因此,对一个接口可能有益的网络位置可能被证明对另一个接口是低效的。这种低效可能会影响网络内流量资源的速度、连接性和分配。
22.现在参考图2,在该图中示出了根据本公开的系统200,该系统200用于为sd-wan结构中的远程用户动态生成sd-wan移动远程访问网关。系统200包括初始远程访问网关220,该初始远程访问网关220由企业210托管并且具有到互联网230的连接。初始远程访问网关220可以是集中式的和/或与企业210的地理位置和/或网络位置相关联。在各个用户网络位置242、252、262、272中的远程用户240、250、260、270可以通过由sd-wan连接到初始远程访问网关220来访问企业资源。尽管图2描绘了在用户网络位置242、252、262、272的每一个中的单个远程用户240、250、260、270,但是应当理解,在一个或多个网络位置的每一个中,可以存在一个或多个连接到初始远程访问网关220的远程用户。
23.当远程用户240、250、260、270连接到初始远程访问网关220时,与初始远程访问网关220相关联的sd-wan控制器(在图2中未示出)可以接收与远程用户240、250、260、270中的每一个相关的位置数据,并且将这些数据转换成远程用户的相应用户网络位置242、252、262、272。根据一个实施例,位置数据到相应的用户网络位置的转换可以完成如下。给定远程用户的位置数据可以包括与该远程用户的设备相关联的互联网协议(ip)地址。由初始远程访问网关220接收的该位置数据可以被传送到sd-wan控制器。sd-wan控制器可以使用任何地理定位数据库(例如,ipinfo、ipdata、ipgeolocation等)来将位置数据转换为远程用户的网络位置。因为ip地址的地理定位通常是基于网络服务提供商(isp)的办公地址(ip地址被分配到该办公地址)的,所以与ip地址对应的网络位置可能与用户的物理位置不同。
24.然后,sd-wan控制器可以使用远程用户240、250、260、270的用户网络位置242、252、262、272来构建动态热图,该动态热图表示在用户网络位置242、252、262、272中的每一个网络位置处的远程用户240、250、260、270的集中度。在一个实施例中,集中度可以是定量的,表示例如远程用户的数量、总用户的百分比、用户产生的流量的量、带宽、延迟、或路径长度等。在其他实施例中,集中度可以是定性的,描绘相对于其他网络位置的远程用户的高、中或低集中度。在另外的实施例中,集中度可以包括定量因素和定性因素的混合。热图可以包括视觉描绘、数字表示、图形表示、和/或用于表示网络中的用户位置的任何其他图形或分析手段、工具和/或设备。
25.当给定网络位置242处的远程用户240的集中度(如热图所表示)达到或超过预先指定的阈值时,sd-wan控制器可以在给定网络位置242处或在给定网络位置242附近生成新远程访问网关244。例如,图2描绘了与用户网络位置242相关联地生成的第一新远程访问网关244,同时图2也描绘了与单独的用户网络位置252相关联地生成的第二新远程访问网关254。
26.通过sd-wan结构280,每个新远程访问网关244、254可以相互连接并且可以与初始远程访问网关连接。sd-wan结构可以是动态的。换句话说,sd-wan结构可能会随着新远程访问网关的启动(spun-up)而扩展(变大)。类似地,sd-wan结构可能会随着在系统200中的现有远程访问网关的关闭(spun-down)(如下文中进一步解释)而缩小(变小)。此外,sd-wan可以作为由提供商托管的服务运行,其中,提供商可以包括云服务提供商、企业提供商和/或混合云-企业提供商。
27.在某些实施例中,生成新远程访问网关244、254可以涉及“启动”在关联用户网络位置242、252处运行的虚拟机(或编排器)上的远程访问网关。例如,sd-wan控制器可以通过指示虚拟机(或编排器)在用户网络位置处启动新远程访问网关来生成新远程访问网关。类似地,如下文中所解释的,sd-wan控制器可以通过指示虚拟机(或编排器)在用户网络位置处关闭现有远程访问网关来移除现有远程访问网关。在某些实施例中,虚拟sd-wan路由器可以被引发作为远程访问网关。
28.根据本公开,热图可以是动态的。因此,随着各个用户网络位置中的远程用户集中度的变化,热图可以被更新以反映新的集中度。根据一个实施例,可以基于连接到初始远程访问网关220或连接到新远程访问网关244、254之一的远程用户的集中度来动态更新热图。换句话说,当远程用户连接到初始远程访问网关和/或新远程访问网关时,系统可以继续接收与这些远程用户有关的位置数据,并将这些数据转换成这些远程用户的相应用户网络位置。因此,可以基于访问初始远程访问网关220以及新远程访问网关的远程用户的集中度来构建和/或更新动态热图。本公开的某些实施例可以添加新远程访问网关(例如,在具有高远程用户集中度的网络位置中)或移除现有远程访问网关(例如,在具有低远程用户集中度的网络位置中)。现有远程访问网关一般地可以指在确定是否添加和/或移除远程访问网关的时刻存在的远程访问网关。随着时间的推移,“新”远程访问网关可以变成“现有”远程访问网关,并且随时间推移,随着远程用户改变网络位置,可以生成附加的(更加新的)远程访问网关。
29.在一个实施例中,热图的构建可以指创建新的热图和/或更新现有的热图。因此,当用户网络位置处的远程用户集中度上升到高于阈值水平并在预定的一段时间内保持在
该水平或高于该水平时,sd-wan控制器可以在该用户网络位置处或在该用户网络位置附近生成新远程访问网关(例如,可以发起对新远程访问网关的启动)。类似地,当网络位置处的远程用户集中度降低到低于阈值水平并在指定时间段内保持在该水平或低于该水平时,sd-wan控制器可以在该用户网络位置处或在该用户网络位置附近移除远程访问网关(例如,可以发起对远程访问网关的“关闭”)。对特定远程访问网关的关闭可以包括:将远程用户从该特定远程访问网关转移到初始远程访问网关或转移到另一个现有远程访问网关,然后停用该特定远程访问网关。
30.继续参考图2,每个新远程访问网关244、254可以用作双重功能:1)面向用户的网关246、256;2)面向网络的sd-wan边缘设备248、258。作为面向用户的网关246、256,新远程访问网关244、254可以作为用于远程用户访问企业和/或云资源和应用程序的输入点。作为面向网络的边缘设备248、258,新远程访问网关244、254可以通过使能网络和端点之间的连接以及监视网络路径性能来满足sd-wan的功能。每个远程访问网关244、254可以包括边缘设备的任何其他功能。例如,在一些实施例中,每个远程访问网关244、254可以用作认证和/或策略实施点。
31.另外,根据本公开的一个实施例,系统200还可以支持多租户(未示出),其中,可以基于与其他企业(即,与企业210相分离)相关联的远程用户的用户网络位置生成一个或多个远程访问网关。系统200可以用结合图2所一般性地描述的方式为与这些其他企业相关联的远程用户启动和/或关闭远程访问网关。系统可以保持灵活性并且提供隔离功能,由此可以阻止被启动用于另一个企业的用户的远程访问网关和与企业210相关联的其他远程访问网关互连。
32.现在参考图3,在图3中示出了用于为远程用户动态生成sd-wan移动远程访问网关的控制器310(例如,上文中关于图2所描述的sd-wan控制器)和相关组件的框图300。控制器310可以被部署在本地或云端,并且可以通信地耦合到以下组件中的一个或多个:初始远程访问网关320、一个或多个新远程访问网关330a-n、地理位置数据库340、以及编排器350。控制器310可以包括以下项中的一个或多个:位置确定模块312、热图构建模块314、位置计算模块316、以及监视模块318。在操作中,控制器310可以从初始远程访问网关320接收与多个远程用户相关联的位置数据(例如,ip地址)。使用地理定位数据库340,控制器310的位置确定模块312可以确定从初始远程访问网关320接收的位置数据并将这些数据转换为与远程用户相关联的用户网络位置。热图模块314可以接收经转换的用户网络位置,并在一段时间内构建(例如,创建和/或更新)表示每个用户网络位置处的远程用户集中度的热图。
33.当热图被控制器构建(例如,创建和/或更新),其中收集和处理的数据可以被传输到位置计算模块316。位置计算模块316可以通过使用基于划分聚类算法(partition clustering algorithm)的加权聚类技术来计算和/或确定一个或多个新网络位置,以启动新远程访问网关,该划分聚类算法可以被表示为:
34.划分函数(w[x],d,k)

输出x的k聚类,
[0035]
其中(w[x],d)表示基于如下项的加权数据:给定用户网络位置处的每个远程用户所生成的流量、以及该远程用户与他/她当前连接的远程访问网关的距离。在位置确定模块312已计算和/或确定一个或多个新网络位置之后,控制器310可以指示编排器(或虚拟机)350在所确定的新网络位置处启动一个或多个新远程访问网关。
[0036]
继续参考图3,控制器310可以继续从初始远程访问网关320以及从一个或多个新远程访问网关330接收与远程用户有关的位置数据。如上所述,热图的构建还可以包括每隔一定时间更新热图以反映各个用户网络位置处的远程用户集中度的变化。监视模块318可以继续监视热图的变化。当热图被热图模块314更新时,这些变化可以被传送到监视模块318。如果用户网络位置处的远程用户集中度降低到低于预定阈值并且在预定的一段时间内保持低于该阈值,则监视模块318可以指示编排器(虚拟机)350关闭与该用户网络位置相关联的远程访问网关330。类似地,如果用户网络位置处的远程用户集中度上升到高于预定阈值并且在预定的一段时间内保持高于该阈值,则监视模块318可以指示编排器(虚拟机)350在用户网络位置处或在用户网络位置附近启动新远程访问网关330。应当理解,在不背离本公开的精神的情况下,可以调整或修改结合图3示出和描述的控制器和相关联的组件。
[0037]
现在参考图4,在该图中示出了用于为远程用户动态托管sd-wan远程访问网关的方法400的实施例。方法400可以开始于步骤410。在步骤420处,可以在与企业的地球物理位置或网络位置相对应的第一网络位置处生成初始远程访问网关。在一个实施例中,初始远程访问网关可以指初始(企业托管的)远程访问网关(如图2中所示的元件210)或者可以已经在网络位置处被生成或被启动的另一个远程访问网关(如图2中所示的元件244)。为了清楚起见,网络可以包括一个或多个现有远程访问网关。现有远程访问网关一般地可以指在确定是否添加和/或移除远程访问网关的时刻存在的远程访问网关。现有远程访问网关可以包括初始远程访问网关和任何已经以如下方式被生成的(一个或多个)“新”远程访问网关:这些“新”远程访问网关在确定是否添加和/或移除远程访问网关的时刻存在。随着时间的推移,可以生成附加的(更加新的)远程访问网关。在步骤430处,可以接收与访问初始远程访问网关、新远程访问网关或现有远程访问网关的多个远程用户相关联的位置数据。在步骤440处,可以通过地理位置数据库将位置数据转换为用户网络位置。在步骤450处,可以基于用户网络位置处的远程用户集中度来构建(例如,创建和/或更新)用户网络位置的热图。在步骤450处构建热图还可以包括每隔一定时间更新热图,以反映各个用户网络位置处的远程用户集中度的变化。在步骤460处,可以基于热图来确定一个或多个用户网络位置处的用户集中度在预定的一段时间内是否已经达到或超过阈值集中度。
[0038]
如果在步骤460处确定在预定的一段时间内在一个或多个用户网络位置处的用户集中度没有达到或超过预定的阈值集中度,则该方法可以返回到步骤430,在该步骤430中,可以继续接收与远程用户相关联的位置数据。如果在步骤460处确定在预定的一段时间内在一个或多个用户网络位置处的用户集中度已经达到或超过预定的阈值集中度,则该方法可以继续到步骤470,在该步骤470中,可以识别一个或多个新网络位置(对应于达到预定的阈值集中度的一个或多个用户网络位置处或这些用户网络位置附近的位置),用于生成一个或多个新远程访问网关。在步骤480处,可以在一个或多个新网络位置处生成一个或多个新远程访问网关。在步骤490处,该方法可以结束。
[0039]
图5示出了根据本公开的用于动态更新sd-wan远程访问网关的方法500的另一个实施例。方法500开始于步骤510。在步骤520(对应于图4中的步骤450)处,可以基于在用户网络位置处的远程用户集中度来构建(例如,创建和/或更新)用户网络位置的热图。热图的构建可以包括基于用户网络位置处的远程用户集中度的变化,来每隔预定的时间更新热图。例如,可以每隔5分钟的时间、每隔15分钟的时间、每隔30分钟的时间、或每隔其他合适
的时间更新热图。在步骤530处,可以确定一个或多个用户网络位置处的远程用户集中度是否在预定的一段时间内下降到低于预定的阈值水平。如果在步骤530处确定一个或多个用户网络位置处的远程用户集中度在预定的一段时间内下降到低于预定阈值水平,则该方法可以进行到步骤540,在该步骤540中,可以将远程用户从所识别的一个或多个用户网络位置处的一个或多个远程访问网关移动到一个或多个现有远程访问网关。在步骤550处,可以关闭具有低用户集中度的一个或多个远程访问网关。在步骤560处,该方法可以结束。
[0040]
如果在步骤530处已经确定在预定的一段时间内一个或多个用户网络位置处的远程用户集中度没有下降到低于预定的阈值水平,则该方法可以进行到步骤570,在该步骤570中可以确定在预定的一段时间内一个或多个网络位置处的远程用户集中度是否超过预定的阈值水平。如果在步骤570处确定在预定的一段时间内在一个或多个网络位置处的远程用户集中度没有超过预定阈值水平,则该方法可以返回到步骤520,在该步骤520中,可以每隔预定的时间继续构建(例如,更新)热图。如结合图4所描述的,可以基于从远程用户接收到的位置数据构建热图,这些位置数据被转换成远程用户的用户网络位置。如果在步骤570处确定在预定的一段时间内一个或多个网络位置处的远程用户集中度已经超过预定阈值水平,则该方法可以进行到步骤580,在该步骤580中,可以识别一个或多个新网络位置(对应于达到阈值集中度的一个或多个用户网络位置处或用户网络位置附近的位置),用于生成一个或多个新远程访问网关。在步骤590处,可以在一个或多个新网络位置处生成一个或多个新远程访问网关。在步骤595处,该方法可以结束。
[0041]
现在参考图6,其中示出了示例计算机系统600。在特定实施例中,一个或多个计算机系统600执行本文描述或图示的一个或多个方法的一个或多个步骤。在特定实施例中,一个或多个计算机系统600提供本文描述或图示的功能。在特定实施例中,在一个或多个计算机系统600上运行的软件执行本文描述或图示的一个或多个方法的一个或多个步骤,或提供本文描述或图示的功能。特定实施例包括一个或多个计算机系统600的一个或多个部分。在此,在适当的情况下,对计算机系统的引用可以包括计算设备,反之亦然。此外,在适当的情况下,对计算机系统的引用可以包括一个或多个计算机系统。
[0042]
本公开涉及任何合适数量的计算机系统600。本公开设想采用任何合适的物理形式的计算机系统600。作为示例而非限制,计算机系统600可以是嵌入式计算机系统、片上系统(soc)、单板计算机系统(sbc)(例如,模块上计算机(com)或模块上系统(som))、台式计算机系统、膝上型计算机或笔记本计算机系统、交互式信息亭、主机、计算机系统网格、移动电话、个人数字助理(pda)、服务器、平板计算机系统、增强/虚拟现实设备或其中两个或更多个的组合。在适当的情况下,计算机系统600可以包括一个或多个计算机系统600;单一的或分发的;跨越多个地点;跨越多台机器;跨越多个数据中心;或驻留在云中,该云可以包括一个或多个网络中的一个或多个云组件。在适当的情况下,一个或多个计算机系统600可以在没有实质性空间或时间限制的情况下执行本文描述或图示的一个或多个方法的一个或多个步骤。作为示例而非限制,一个或多个计算机系统600可以实时或以批处理模式执行本文描述或图示的一个或多个方法的一个或多个步骤。在适当的情况下,一个或多个计算机系统600可以在不同的时间或不同的位置执行本文描述或图示的一个或多个方法的一个或多个步骤。
[0043]
在特定实施例中,计算机系统600包括处理器602、存储器604、存储设备606、输入/
输出(i/o)接口608、通信接口610和总线612。尽管本公开描述并示出了在特定布置中具有特定数量的特定组件的特定计算机系统,但本公开设想了在任何适当布置中具有任何合适数量的任何合适组件的任何合适计算机系统。
[0044]
在特定实施例中,处理器602包括用于执行指令的硬件,例如编写计算机程序的硬件。作为示例而非限制,为了执行指令,处理器602可以从内部寄存器、内部缓存、存储器604或存储设备606取回(或提取)指令;解码并执行这些指令;并且然后将一个或多个结果写入内部寄存器、内部缓存、存储器604或存储设备606。在特定实施例中,处理器602可以包括用于数据、指令或地址的一个或多个内部缓存。在适当的情况下,本公开设想处理器602包括合适数量的任何合适内部缓存。作为示例而非限制,处理器602可以包括一个或多个指令缓存、一个或多个数据缓存和一个或多个转换后备缓冲器(tlb)。指令缓存中的指令可以是存储器604或存储设备606中的指令的副本,并且指令缓存可以加速处理器602对这些指令的取回。数据缓存中的数据可以是存储器604或存储设备606中用于在处理器602处执行以进行操作的指令的数据的副本;在处理器602处执行的先前指令的结果用于由在处理器602处执行的后续指令访问或用于写入存储器604或存储设备606;或其他合适的数据。数据缓存可以加速处理器602的读取或写入操作。tlb可以加速处理器602的虚拟地址转换。在特定实施例中,处理器602可以包括用于数据、指令或地址的一个或多个内部寄存器。在适当的情况下,本公开设想处理器602包括任何合适数量的任何合适内部寄存器。在适当的情况下,处理器602可以包括一个或多个算术逻辑单元(alu);是多核处理器;或包括一个或多个处理器602。尽管本公开描述并图示了特定处理器,但本公开考虑了任何合适的处理器。
[0045]
在特定实施例中,存储器604包括用于存储处理器602要执行的指令或处理器602要操作的数据的主存储器。作为示例而非限制,计算机系统600可以将指令从存储设备606或另一源(例如,另一计算机系统600)加载到存储器604。处理器602随后可以将指令从存储器604加载到内部寄存器或内部缓存。为了执行指令,处理器602可以从内部寄存器或内部缓存取回指令并对其进行解码。在执行指令期间或之后,处理器602可以将一个或多个结果(可以为中间或最终结果)写入内部寄存器或内部缓存。处理器602然后可以将这些结果中的一个或多个写入存储器604。在特定实施例中,处理器602仅执行一个或多个内部寄存器或内部缓存或存储器604(与存储设备606相对或其他位置)中的指令,并且仅对一个或多个内部寄存器或内部缓存或存储器604(与存储设备606相对或其他位置)中的数据进行操作。一个或多个存储器总线(其各自可以包括地址总线和数据总线)可以将处理器602耦合到存储器604。总线512可以包括一个或多个存储器总线,如下所述。在特定实施例中,一个或多个存储器管理单元(mmu)存在于处理器602和存储器604之间,并有助于对处理器602请求的存储器604的访问。在特定实施例中,存储器604包括随机存取存储器(ram)。在适当的情况下,该ram可以是易失性存储器。在适当的情况下,该ram可以是动态ram(dram)或静态ram(sram)。此外,在适当的情况下,该ram可以是单端口或多端口ram。本公开设想任何合适的ram。在适当的情况下,存储器504可以包括一个或多个存储器604。尽管本公开描述并图示了特定存储器,但本公开设想任何合适的存储器。
[0046]
在特定实施例中,存储设备606包括用于数据或指令的大容量存储设备。作为示例而非限制,存储设备606可以包括硬盘驱动器(hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(usb)驱动器或其中两个或更多个的组合。在适当的情况下,存储设备606
可以包括可移动或不可移动(或固定)介质。在适当的情况下,存储设备606可以位于计算机系统600的内部或外部。在特定实施例中,存储设备606是非易失性固态存储器。在特定实施例中,存储设备606包括只读存储器(rom)。在适当的情况下,该rom可以是掩码编程rom、可编程rom(prom)、可擦除prom(eprom)、电可擦除prom(eeprom)、电可改写rom(earom)或闪存、或者其中两个或更多个的组合。本公开设想采用任何合适的物理形式的大容量存储设备606。在适当的情况下,存储设备606可以包括一个或多个存储设备控制单元,以有助于处理器602和存储设备606之间的通信。在适当的情况下,存储设备606可以包括一个或多个存储设备606。尽管本公开描述并图示了特定存储设备,但本公开设想任何合适的存储设备。
[0047]
在特定实施例中,i/o接口608包括硬件、软件或这两者,以用于为计算机系统600和一个或多个i/o设备之间的通信提供一个或多个接口。在适当的情况下,计算机系统600可以包括这些i/o设备中的一个或多个。这些i/o设备中的一个或多个可以实现人与计算机系统600之间的通信。作为示例而非限制,i/o设备可以包括键盘、按键、麦克风、监视器、鼠标、打印机、扫描仪、扬声器、静止相机、触笔、平板电脑、触摸屏、轨迹球、摄像机、另一合适的i/o设备或其中两个或个多个的组合。i/o设备可以包括一个或多个传感器。本公开设想了任何合适的i/o设备以及用于它们的任何合适的i/o接口608。在适当的情况下,i/o接口608可以包括一个或多个设备或软件驱动器,使得处理器602能够驱动这些i/o设备中的一个或多个。在适当的情况下,i/o接口608可以包括一个或多个i/o接口608。尽管本公开描述并图示了特定的i/o接口,但本公开设想任何合适的i/o接口。
[0048]
在特定实施例中,通信接口610包括硬件、软件或这两者,以用于为计算机系统600和一个或多个其他计算机系统600或一个或多个网络之间的通信(例如,基于分组的通信)提供一个或多个接口。作为示例而非限制,通信接口610可以包括用于与以太网或其他基于导线的网络通信的网络接口控制器(nic)或网络适配器,或用于与无线网络(例如wi-fi网络)通信的无线nic(wnic)或无线适配器。本公开设想了任何合适的网络及其任何合适的通信接口610。作为示例而非限制,计算机系统600可以与自组织网络、个域网(pan)、局域网(lan)、广域网(wan)、城域网(man)或互联网的一个或多个部分或其中两个或多个的组合进行通信。这些网络中的一个或多个的一个或多个部分可以是有线或无线的。例如,计算机系统600可以与以下项通信:无线pan(wpan)(例如,bluetooth wpan)、wi-fi网络、wi-max网络、蜂窝电话网络(例如,全球移动通信系统(gsm)网络、长期演进(lte)网络或5g网络)或其他合适的无线网络或其中两个或更多个的组合。在适当的情况下,计算机系统600可以包括用于这些网络中的任何一个的任何合适的通信接口610。在适当的情况下,通信接口610可以包括一个或多个通信接口610。尽管本公开描述并图示了特定的通信接口,但本公开设想任何合适的通信接口。
[0049]
在特定实施例中,总线612包括硬件、软件或这两者,以用于将计算机系统600的组件相互耦合。作为示例而非限制,总线612可以包括加速图形端口(agp)或其他图形总线、增强型工业标准体系结构(eisa)总线、前端总线(fsb)、hypertransport(ht)互连、工业标准体系结构(isa)总线、infiniband互连、低引脚数(lpc)总线、存储器总线、微通道体系结构(mca)总线、外围组件互连(pci)总线、pci express(pcie)总线、串行高级技术连接(sata)总线、视频电子标准协会本地(vlb)总线或其他合适的总线或其中两个或更多个的组合。在适当的情况下,总线612可以包括一个或多个总线612。尽管本公开描述并图示了特定总线,
但本公开设想任何合适的总线或互连。
[0050]
概括地说,根据某些实施例,一种系统,包括一个或多个处理器以及一个或多个计算机可读非暂时性存储介质,该计算机可读非暂时性存储介质包括指令,当由一个或多个处理器执行这些指令时,使系统的一个或多个组件执行操作,这些操作包括:接收位置数据,该位置数据与访问一个或多个现有远程访问网关的多个远程用户相关联,该一个或多个现有远程访问网关位于一个或多个网络位置处;至少部分基于接收到的位置数据构建用户位置的热图;并且从用户位置的热图中识别至少一个新网络位置,在其中生成至少一个新远程访问网关,或者识别至少一个现有网络位置,在其中移除至少一个现有远程访问网关。
[0051]
在本文中,在适当的情况下,计算机可读非暂时性存储介质或媒介可以包括一个或多个基于半导体的或其他集成电路(ic)(例如,现场可编程门阵列(fpga)或专用ic(asic))、硬盘驱动器(hdd)、混合硬盘驱动器(hhd)、光盘、光盘驱动器(odd)、磁光盘、磁光盘驱动器、软盘、软盘驱动器(fdd)、磁带、固态驱动器(ssd)、ram驱动器、secure digital卡或驱动器、任何其他适当的计算机可读非暂时性存储介质、或其中两个或更多个的任何合适组合。在适当的情况下,计算机可读的非暂时性存储介质可以是易失性、非易失性或易失性和非易失性的组合。
[0052]
在本文中,除非另有明确说明或上下文另有说明,否则“或”是包容性的,而非排他性的。因此,在本文中,除非另有明确说明或上下文另有说明,否则“a或b”指的是“a、b或这两者”。此外,除非另有明确说明或上下文另有说明,否则“和”是共同和个别的。因此,在本文中,除非另有明确说明或上下文另有说明,“a和b”意指“a和b,共同地或个别地”。
[0053]
本公开的范围包括对本文描述或图示的示例性实施例的所有改变、替换、变化、变更和修改,本领域普通技术人员将理解这些。本公开的范围不限于本文描述或图示的示例性实施例。此外,尽管本公开描述和图示了本文中的各个实施例,包括特定组件、元件、特征、功能、操作或步骤,但这些实施例中的任何一个都可以包括本领域普通技术人员将理解的在本文任何其他地方描述或图示的任何组件、元件、特征、功能、操作、步骤的任何组合或排列。此外,在所附权利要求书中,无论装置、系统或组件、或特定的功能是否被激活、被打开或被解锁,只要装置、系统或组件是这样被适用、被安排、能够、被配置、被启用、可操作或有效,那么对被适用于执行特定功能、被安排为执行特定功能、能够执行特定功能、被配置为执行特定功能、被启用为执行特定功能、可操作执行特定功能或有效执行特定功能的装置或系统、或装置或系统的组件的引用包括该装置、系统或组件。此外,尽管本公开将特定实施例描述或图示为提供特定优点,但特定实施例可以提供部分或全部这些优点,或不提供这些优点。
[0054]
本文公开的实施例仅为示例,本公开的范围不限于这些实施例。特定实施例可以包括本文公开的实施例的部分或全部组件、元件、特征、功能、操作或步骤,或不包括这些。根据本公开的实施例具体地被公开在指向方法、存储介质、系统和计算机程序产品的所附权利要求中,其中,在一个权利要求类别(例如,方法)中被提及的任何特征也可以在另一个权利要求类别(例如,系统)中被要求保护。仅出于形式原因选择所附权利要求中的从属关系或引用。然而,也可以要求保护由于有意地反向引用任何在前的权利要求(特别是多重从属关系)而产生的任何主题,因此权利要求及其特征的任何组合都被公开并且可以被要求
保护,而不用考虑在所附权利要求中所选择的从属关系。可以要求保护的主题不仅包括所附权利要求中列出的特征的组合,还包括权利要求中的任何其他特征的组合,其中,权利要求中提到的每个特征可以与权利要求中的任何其他特征进行组合或与其他特征的组合进行组合。此外,本文描述或描绘的任何实施例和特征都可以被要求保护在独立权利要求中、和/或被要求保护在与本文描述或描绘的任何实施例或特征或与所附权利要求的任何特征的任何组合中。
再多了解一些

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

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

相关文献