用于提供增强型网络服务的多个网络控制器系统、方法和计算机程序与流程

文档序号:31539390发布日期:2022-09-16 23:27阅读:67来源:国知局
用于提供增强型网络服务的多个网络控制器系统、方法和计算机程序与流程

1.本发明涉及向计算机设备提供网络连接性的网络控制器。


背景技术:

2.为了使计算机设备(如移动设备)能够连接到网络,该计算机设备典型地被配置成包括网络控制器。网络控制器是计算机设备的硬件和/或软件,其控制或以其他方式使计算机设备能够连接到特定网络。网络控制器可以适于基于预定义的参数执行调谐,但是仅在网络级,或者换言之仅针对网络控制器被配置为连接到的特定网络。
3.因此,需要解决与现有技术相关联的这些和/或其他问题。


技术实现要素:

4.如在此所描述的,公开了一种用于提供增强型网络服务的多个网络控制器系统、方法和计算机程序。多个网络控制器系统包括多个网络控制器,每个网络控制器与不同的网络相关联。在使用中,该系统接收对网络服务的请求。另外,系统处理该请求以选择网络控制器中的一个或更多个以用于提供网络服务,其中该选择至少基于为网络服务指定的质量要求来做出。进一步,该系统使网络控制器中所选择的一个或更多个提供网络服务。
附图说明
5.图1示出了根据一个实施例的提供增强型网络服务的多个网络控制器系统的方法。
6.图2示出了根据一个实施例的提供增强型网络服务的多个网络控制器系统。
7.图3示出了根据一个实施例的图2的多个网络控制器系统作为具有多个从设备的主设备的实现方式。
8.图4示出了根据一个实施例的图2的多个网络控制器系统的一个可能方法的流程图。
9.图5示出了根据一个可能的实施例的网络架构。
10.图6示出了根据一个实施例的示例性系统。
具体实施方式
11.图1示出了根据一个实施例的提供增强型网络服务的多个网络控制器系统的方法100。在本说明书的上下文中,多个网络控制器系统是包括多个网络控制器的系统。该系统可以是单个计算机系统,诸如以下参见图5和/或图6所描述的那些计算机系统中的任何计算机系统。
12.网络控制器由硬件和/或软件组成并且分别与不同的网络相关联。具体地,每个网络控制器被配置成通过实施使用特定网络的具体物理层和数据链路层标准进行通信所需
要的电子电路来提供至特定网络的连接并且因此与该特定网络相对应。因此,每个网络控制器可以与网络控制器对应的特定网络的协议、要求等一起使用。与网络控制器相关联的不同网络可以是wifi网络、蜂窝网络、无线电接入技术(rat)等。此外,应注意的是,与网络控制器相关联的多个网络可以是相同的类型(例如,都是wifi网络),但是可以由不同的服务供应商提供。
13.在使用中,该系统接收对网络服务的请求,如操作102中所示。网络服务可以是在网络中提供的任何应用或功能,诸如存储、数据处理、数据访问、通信等。在一个实施例中,可以在系统处发起请求。在另一个实施例中,如以下针对图4更详细地描述的,可以在从设备处向系统(充当主设备)发起请求。因此,请求可以在可以是或可以不是系统的请求设备处发起。
14.在进一步的实施例中,请求可以是针对新的网络服务,或换言之为请求设备建立(例如,访问)网络服务。在该实施例中,请求可按需发起(例如,由请求设备的用户)。然而,在另一可选实施例中,请求可以是针对现有网络服务,或者换言之针对已经为请求设备建立的网络服务。例如,出于改善现有网络服务的一方面(诸如质量等)的目的,可(例如,自动地)发起请求。
15.另外,如操作104中所示,该系统处理该请求以选择这些网络控制器中的一个或更多个以用于提供网络服务,其中该选择是基于要优化的至少一个参数而做出的。
16.在一个实施例中,该参数可以是质量。具体地,系统可以选择能够优化(例如,最大化)与提供网络服务相关联的质量或者能够满足网络服务所要求的指定质量的网络控制器。质量可以指网络服务的服务质量(qos),诸如吞吐量、延迟等。
17.在另一个实施例中,该参数可以是成本。例如,系统可以选择能够优化(例如,最小化)与提供网络服务相关联的成本(例如,每订阅的货币成本)的(一个或更多个)网络控制器。可以在针对网络服务的请求中或者在与系统可访问的请求设备相关联的策略中指定针对网络服务要优化的任何参数,诸如上面提到的那些。
18.然而,任何预定义的算法可以用于处理该请求以确定用于提供网络服务的网络控制器中的一个或更多个。在一个实施例中,算法可以是机器学习算法。机器学习算法可以最初使用从系统或任何远程系统收集的训练数据来训练。训练数据可以包括多个网络控制器和不同网络的历史行为。一旦被训练,机器学习算法可基于所请求的网络服务和要优化的参数来推理网络控制器中的一个或更多个用于提供网络服务。例如,机器学习算法可以能够预测每个网络的状态(例如,健康)并且基于此来选择网络控制器中的一个或更多个。
19.进一步地,如操作106中所示,该系统使所选择的(一个或更多个)网络控制器提供网络服务。在一个实施例中,系统可以指示所选择的网络控制器提供网络服务。例如,系统可以使单个选定的网络控制器向请求设备提供网络服务。作为另一个示例,系统可以使多个所选择的网络控制器向请求设备提供网络服务的不同部分。
20.为此,方法100可以在用于向请求设备提供网络服务的多个网络控制器之间最优地选择。该选择可以动态地执行,或者换言之在请求时执行,以确保该选择对于网络和/或请求设备的当前条件是最佳的。
21.现在将阐述关于各种可选架构和使用的更多说明性信息,其中可以或可以不根据用户的期望实施前述方法。应当强烈注意的是,为了说明性目的阐述以下信息,并且不应当
将以下信息解释为以任何方式进行限制。以下特征中的任一个可以可选地结合有或不排除所描述的其他特征。
22.图2示出了根据一个实施例的提供增强型网络服务的多个网络控制器系统200。作为选项,系统200可以被实现为执行图1的方法100。然而,当然,系统200可以在任何期望的环境的上下文中实现。此外,上述定义可同样应用于以下描述。
23.如图所示,计算机设备202包括多个网络控制器204a-n。多个网络控制器204a-n中的每个网络控制器被配置为将计算机设备202连接至相应的网络206a-n。计算机设备202可以包括任何数量的网络控制器204a-n,以使得计算机设备202能够连接至任何数量的不同网络206a-n。
24.计算机设备202还包括网络控制器选择算法203。计算机设备202执行网络控制器选择算法203,以选择将网络控制器204a-n中的哪个用于提供特定的请求的网络服务。在一个实施例中,网络控制器选择算法203可以是机器学习算法。
25.在一个实施例中,计算机设备202可以提供单个传输支持。换言之,可使计算机设备202在给定时间点上仅允许利用(例如,操作)网络控制器204a-n中的一个。
26.在另一个实施例中,计算机设备202可以提供多个传输支持。在该实施例中,可使计算机设备202能够允许并行使用网络控制器204a-n中的多个(例如,用于协同运行以提供单个网络服务或用于提供多个不同的网络服务)。例如,多个传输支持可以使得通过网络控制器选择算法203所选择的一个网络控制器能够提供所请求的网络服务,同时网络控制器204a-n中的至少一个其他网络控制器(例如,也通过网络控制器选择算法203选择)提供另一个网络服务。
27.图3示出了根据一个实施例的图2的多个网络控制器系统200作为具有多个从设备的主设备的实现方式250。当然,应当注意,本实施例仅是图2的多个网络控制器系统200的一种可能实现方式250,并且因此图2的多个网络控制器系统200不一定受到在此关于图3所示出和描述的实施例的限制。
28.在本实施例中,计算机设备202是具有图2中所示的多个网络控制器的主设备。作为主设备的计算机设备202还具有多个从设备252a-n(例如,与多个从设备通信)。从设备252a-n中的一个或更多个可不一定具有其自身的网络控制器,在此情况下,其可有线连接到主设备。另外,从设备252a-n中的一个或更多个可具有经由特定网络将这些从设备连接到主设备的单个网络控制器。仅仅作为示例,多个从设备252a-n中的一个或更多个可以是物联网(iot)设备。
29.在本实现方式250中,从设备252a-n中的每一个可以向主设备202发送对网络服务的请求。根据图1的方法100,主设备202可处理每一个请求以选择其网络控制器中的一个或更多个来用于将所请求的网络服务提供给请求的从设备252a-n。主设备202可然后使选定的网络控制器将所请求的网络服务提供给请求从设备252a-n。由此,可以通过主设备202将每个网络服务提供给从设备252a-n。
30.在一个示例性用例场景中,从设备252a-n将经由可以最佳地迎合所需网络服务的主设备202网络控制器来连接。例如,在主/从生态系统下的动态多智能iot设备连接情形中,智能汽车从设备252a-n可连接到低延迟网络控制器,而在另一连接的从设备252a-n中的下载可根据该实例处的网络健康经由另一网络控制器发生以满足最佳qos。这有助于满
足智能汽车的ultra低延迟要求,同时选择将具有最高可用资源的网络控制器来满足峰值吞吐量要求。
31.图4示出了根据一个实施例的图2的多个网络控制器系统200的一种可能的方法400的流程图。当然,应当注意,图2的多个网络控制器系统200可以不限于本文描述的方法400。在一个实施例中,方法200可以由图2的多个网络控制器系统200的网络控制器选择算法203来执行。
32.如操作402中所示,确定要提供网络服务的设备的类型。设备类型是指设备配置有单个传输支持(单传输能力)还是多个传输支持(多个传输能力)。当确定设备的类型是提供单个传输支持的类型时,识别用户会话模型,如在操作404中所示。用户会话模型是指根据其进行网络选择的策略。例如,用户会话模型指定在进行网络选择时要被优化的一个或更多个参数。策略可以是用户特定的(即,为设备的当前用户配置的)。
33.当用户会话模型是基于成本的模型时,则被选择用于提供网络服务的网络是对用户的成本进行优化(例如,最小化)的网络。这可以基于对用户持有的网络服务的各个订阅来确定。在所示的示例中,在操作410中使用当前连接的网络。
34.当用户会话模型是基于质量的模型时,则检查每个网络的健康,如操作406中所示。如果当前连接的网络具有用于提供最佳质量的最佳健康,则在操作410中使用当前连接的网络。然而,如果可以由替代网络控制器提供更好的网络质量,则与替代网络控制器相关联的替代网络用于提供网络服务(见操作408)。
35.回到操作402,当设备的类型被确定为提供多个传输支持的类型时,识别用户会话模型,如在操作412中所示。用户模型是基于根据所选择的计划的用户偏好,因此用户模型可以是成本模型(即,对于服务,低成本比质量更重要,因此在这种情况下,用户不会切换到具有更好的服务能力的网络,而是将继续使用当前网络来节约成本)。当用户会话模型是基于成本的模型时,则被选择用于提供网络服务的网络是为用户优化(例如,最小化)成本的网络。在所示的示例中,在操作410中使用当前连接的网络。
36.当用户会话模型是基于质量的模型时,则在操作414中确定对于所请求的网络服务的服务要求。服务要求可以是低延迟、高吞吐量。如果对于网络服务的服务要求低于性能服务水平(psl)阈值,则在所示的示例中,在操作410中使用当前连接的网络。使用当前连接的网络,因为不需要切换网络,因为服务要求仍然不是关键的并且能够由现有网络满足(即,所以在网络之间不需要乒乓切换)。如果对于网络服务的服务要求高于psl阈值,则执行网络的正常健康检查,如在操作416中所示。特别地,由于现有网络不能满足服务要求,因此需要与另一网络的某个网络切换或聚合,从而执行相邻网络的健康检查,并将健康检查的结果用作现有网络必须切换到另一网络或与另一网络聚合的基础。
37.在一个示例性用例中,对于具有高吞吐量要求的网络服务,可以监测由用户请求的数据块的有效负载。如果所请求的数据有效负载低于某个阈值,则不需要使用多个链(网络控制器),因为它将导致请求设备处的额外处理负载。
38.按照rfc 7233(超文本传输协议(http/1.1):范围请求),在接收到客户端请求时,“accept-ranges(接受范围)”报头字段允许服务器指示它支持针对目标资源的范围请求,并且支持针对给定目标资源的字节范围请求的原始服务器可以发送accept-ranges:字节以指示支持什么范围单元。
39.get请求上的“范围(range)”报头字段修改方法语义,以请求在客户端处传送所选择的表示数据的仅一个或更多个子范围,而不是整个所选择的表示数据,因此可以在设备端处利用该功能。
40.如果正常健康检查显示阈值被违反,则在操作410中使用当前连接的网络。如果正常健康检查显示其他网络优于配置的阈值,则在操作418中执行基于负载的预测。换言之,针对小区过载阈值来确定和测量其他网络的负载状况。例如,可以周期性地测量无线电&负载条件以决定要在每个射频链下载的数据有效负载的比例,并且可能地考虑负载条件,使得可以确定rat被改变以用于更好的吞吐量。
41.如果基于负载的预测示出了单元将过载,则在所示出的示例中,在操作410中使用当前连接的网络。如果基于负载的预测示出至少一个相邻网络具有低于阈值的现有和预测的负载,则如操作420所示执行网络控制器选择。因为多个传输支持是可用的,所以根据服务要求来聚合网络服务,其中具有较高吞吐量要求的设备可以由聚合在一起的不同网络或根据设备的要求的最佳网络来服务,并且类似地,低延迟要求可以由可用于该会话的最佳技术/网络来服务。在所示的示例中,为网络服务选择两个网络控制器。然后执行网络服务聚合,如操作422中所示。
42.对于提供网络控制器的并行利用的设备,可以提供服务等级的增强,如超低延迟场景、动态多智能iot设备连接性以及通过智能算法的吞吐量提升。
43.图5示出了根据一个可能的实施例的网络架构500。如图所示,提供了至少一个网络502。在本网络架构500的背景下,网络502可以采取任何形式,包括但不限于电信网络、局域网(lan)、无线网络、广域网(wan)(如互联网)、对等网络、电缆网络等。尽管仅示出了一个网络,但应当理解,可以提供两个或更多个类似或不同的网络502。
44.耦合到网络502的是多个设备。例如,服务器计算机504和终端用户计算机506可被耦合至网络502以用于通信目的。这样的终端用户计算机506可包括台式计算机、膝上型计算机和/或任何其他类型的逻辑。此外,各种其他设备可以耦合到网络502,包括个人数字助理(pda)设备508、移动电话设备510、电视512等。
45.图6示出了根据一个实施例的示例性系统600。作为选项,系统600可以在图5的网络架构500的任何设备的背景下实施。当然,系统600可在任何期望的环境中实现。
46.如图所示,提供了一种系统600,该系统包括至少一个连接至通信总线602的中央处理器601。系统600还包括主存储器604[例如,随机存取存储器(ram)等]。系统600还包括图形处理器606和显示器608。
[0047]
系统600还可以包括辅助存储610。辅助存储610包括例如硬盘驱动器和/或可移动存储驱动器,其表示软盘驱动器、磁带驱动器、致密盘驱动器等。可移动存储驱动器以公知的方式从可移动存储单元读取和/或向可移动存储单元写入。
[0048]
为此,计算机程序或计算机控制逻辑算法可以存储在主存储器604、辅助存储610和/或任何其他存储器中。这样的计算机程序当被执行时,使得系统600能够执行各种功能(例如,如上所述)。存储器604、存储装置610和/或任何其他存储装置是非暂态计算机可读介质的可能示例。
[0049]
系统600还可以包括一个或更多个通信模块612。通信模块612可用于促进系统600和一个或更多个网络之间的通信,和/或通过各种可能的标准或专有通信协议(例如,通过
蓝牙、近场通信(nfc)、蜂窝通信等)与一个或更多个设备进行通信。
[0050]
如在此所使用的,“计算机可读介质”包括用于存储计算机程序的可执行指令的任何合适的介质中的一项或更多项,从而使得指令执行机器、系统、装置或设备可以从计算机可读介质中读取(或获取)指令并且执行用于执行所描述的方法的指令。合适的存储格式包括电子格式、磁性格式、光学格式和电磁格式中的一种或更多种。常规示例性计算机可读介质的非穷尽列表包括:便携式计算机盘;ram;rom;可擦式可编程只读存储器(eprom或闪存);光学存储设备,包括便携式致密盘(cd)、便携式数字视频盘(dvd)、高清dvd(hd-dvd
tm
)、blu-ray盘;等等。
[0051]
应当理解,所描述的附图中所示出的组件的布置是示例性的并且其他布置是可能的。还应理解,下文所描述且在各个框图中所说明的由权利要求书界定的各个系统组件(和装置)表示根据本文中所公开的主题而配置的一些系统中的逻辑组件。
[0052]
例如,这些系统组件(和装置)中的一个或更多个可以整体或部分地由所描述附图中所示出的布置中所示出的这些组件中的至少一些来实现。此外,虽然这些组件中的至少一个至少部分地实现为电子硬件组件并且因此构成机器,但其他组件可以在软件中实现,所述软件在被包括在执行环境中时构成机器、硬件或软件和硬件的组合。
[0053]
更具体地,由权利要求书限定的至少一个部件被至少部分地实现为电子硬件组件,如指令执行机器(例如,基于处理器的或包含处理器的机器)和/或专用电路或电路系统(例如,互连以执行专用功能的分立逻辑门)。其他组件可以在软件、硬件或软件和硬件的组合中实现。此外,可以组合这些其他组件中的一些或所有组件,可以完全省略一些组件,并且可以在仍然实现本文所描述的功能的同时添加附加组件。因此,在此描述的主题可以在许多不同的变体中体现,并且所有这些变体预期在所要求的范围内。
[0054]
在以上描述中,除非另外指明,否则所述主题是参考由一个或更多个设备执行的操作的动作和符号表示来描述的。照此,将理解,有时被称为计算机执行的此类动作和操作包括处理器对结构化形式的数据的操纵。这种操纵转换数据或将其保持在计算机的存储器系统中的位置,其以本领域技术人员熟知的方式重新配置或以其他方式改变设备的操作。该数据被维护在存储器的物理位置处作为具有由数据的格式定义的特定属性的数据结构。然而,虽然在前述上下文中描述了主题,但其不意味着是限制性的,因为本领域的技术人员将理解,下文描述的若干动作和操作也可在硬件中实现。
[0055]
为了便于理解在此所描述的主题,就动作序列而言描述了许多方面。由权利要求限定的这些方面中的至少一个由电子硬件组件执行。例如,将认识到,可以通过专用电路或电路系统、通过由一个或更多个处理器执行的程序指令、或通过两者的组合来执行各个动作。本文中对任何动作序列的描述并不旨在暗示必须遵循所描述的用于执行该序列的特定顺序。除非本文中另有指示或者上下文另有明确冲突,否则,本文中描述的所有方法可以任何合适的顺序执行。
[0056]
在描述主题的上下文中(特别是在以下权利要求的上下文中),术语“一个”和“一种”以及“所述”以及类似指示物的使用应被解释为覆盖单数和复数两者,除非在此另外指示或与上下文明显矛盾。除非本文中另外指出,否则本文中数值范围的列举仅旨在用作单独地提及落入所述范围内的每个单独值的速记方法,并且每个单独值如同其在本文中单独地列举一样被结合到说明书中。此外,前述描述仅用于说明的目的,而不是用于限制的目
的,因为所寻求的保护范围由下文中阐述的权利要求及其有权享有的任何等同物来限定。在此提供的任何和所有示例或示例性语言(例如,“如”)的使用仅旨在更好地示出主题并且不对主题的范围造成限制,除非另外要求。在权利要求和书面描述中使用术语“基于”和表示用于产生结果的条件的其他类似短语,并不旨在排除产生该结果的任何其他条件。说明书中的语言不应被解释为指示任何未要求保护的元件对所要求保护的本发明的实践是必不可少的。
[0057]
在此描述的这些实施例包括发明人已知的用于实施所要求保护的主题的一个或更多个模式。当然,在阅读上述描述后,那些实施例的变化对于本领域普通技术人员将变得显而易见。发明人期望本领域技术人员酌情采用这样的变化,并且发明人意图以除了本文具体描述之外的方式实施所要求保护的主题。因此,如适用法律所允许的,所要求保护的主题包括在所附权利要求书中叙述的主题的所有修改和等效物。此外,除非本文中另外指示或上下文明显矛盾,否则包括所有可能变型中的上述元件的任何组合。
[0058]
虽然以上已经描述了各个实施例,但应理解的是,它们仅仅是通过举例而非限制的方式来呈现。因此,优选实施例的宽度和范围不应受任何上述示例性实施例的限制,而应仅根据以下权利要求及其等同物来限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1