背景。
示例实施例一般涉及一种用于通过测量和监视网络等待时间来控制通信网络的操作的方法和系统。该方法和系统对分组交换网络具有适用性,该分组交换网络包括第5代无线通信网络(5g网络)。
背景技术:
通信网络不断接收到来自各种用户、机器、行业、政府和其他组织的新服务需求。在第五代无线通信网络(5g网络)中,新服务将得到支持,并且通过专用、安全、定制的端到端网络切片使得能够实现。网络切片支持其相关联的服务,并且借助于数据和控制平面中的专用虚拟化网络功能来确保它们在共享物理基础设施中的流量的隔离。
许多新服务和应用程序(例如,虚拟现实(vr)、网络辅助的车辆和无人机自主控制、网络辅助的自动化工厂和城市、远程机器人控制、远程手术等)具有严格的端到端等待时间要求,同时它们会生成“突发”网络流量(即,具有高负载需求的间隔的流量)。在与这些服务及其各自的网络切片相关联的服务级别协议(sla)中,端到端等待时间有望成为重要的关键性能指标(kpi)。
技术实现要素:
至少一个示例实施例包括一种控制通信网络的操作的方法。
在一个示例实施例中,该方法包括:由中央节点的至少一个第一处理器向至少一个第一网络节点传输请求消息,该请求消息均至少包括采样时间窗口和网络切片标识符,该采样时间窗口定义了持续时间,该网络切片标识符在通信网络内标识了所指定的网络切片;在至少一个第一处理器处,接收来自至少一个第一网络节点的分组报告,该分组报告包括分组的等待时间信息,该分组在针对所指定的网络切片的采样时间窗口期间由至少一个第一网络节点处理;以及由至少一个第一处理器基于等待时间信息来控制通信网络的操作。
在一个示例实施例中,至少一个第一网络节点包括:在所指定的网络切片中具有第一链路的至少一个第一类型的网络节点,该第一链路具有在通信网络内的终止端点。
在一个示例实施例中,至少一个第一网络节点包括:在所指定的网络切片中具有第二链路的至少一个第二类型的网络节点,该第二链路具有在网络切片之外的终止端点。
在一个示例实施例中,分组报告的接收包括:从第一类型的网络节点接收针对所指定的网络切片的第一类型的分组报告,该第一类型的分组报告均包括:分组标识符信息、分组大小信息和时间戳信息。
在一个示例实施例中,至少一个第一网络节点包括:在所指定的网络切片中具有第一链路的至少一个第一类型的网络节点,该第一链路具有在通信网络内的终止端点,并且分组报告的接收包括:从第一类型的网络节点接收针对所指定的网络切片的第一类型的分组报告,该第一类型的分组报告均包括分组标识符信息、分组大小信息和时间戳信息;以及从第二类型的网络节点接收针对所指定的网络切片的第二类型的分组报告,该第二类型的分组报告均包括针对第二类型的网络节点的等待时间信息。
在一个示例实施例中,网络切片标识符标识了用于所指定的网络切片的通信方向,该方向是上行链路方向和下行链路方向之一。
在一个示例实施例中,中央节点和第一类型的网络节点被同步到用于通信网络的同一网络时钟,并且到至少一个第一类型的网络节点的请求消息包括:由采样时间窗口定义的开始时间。
在一个示例实施例中,至少一个第一类型的网络节点包括:下游第一类型的网络节点和上游第一类型的网络节点,请求消息的传输包括:向下游第一类型的网络节点传输具有第一采样时间窗口的第一请求消息,该第一采样时间窗口定义了第一开始时间和第一持续时间,并且向上游第一类型的网络节点传输具有第二采样时间窗口的第二请求消息,该第二采样时间窗口定义了第二开始时间和第二持续时间,该第一持续时间是与第二持续时间相同和与第二持续时间不同中的一种。
在一个示例实施例中,分组报告的接收包括:从下游第一类型的网络节点接收第一分组报告,该第一分组报告包括:与一个第一组时间戳信息相关联的一个第一组分组标识符信息,以及从上游第一类型的网络节点接收第二分组报告,该第二分组报告包括与一个第二组时间戳信息相关联的一个第二组分组标识符信息。
在一个示例实施例中,该方法进一步包括:通过以下方式计算等待时间信息,在一个第一组分组标识符信息与一个第二组分组标识符信息之间匹配标识符信息,以得到标识符信息的匹配子集,以及确定一个第一组时间戳信息的第一部分与一个第二组时间戳信息的第二部分之间的差异,该第一部分和第二部分与标识符信息的匹配子集相关联。
至少另一个示例实施例涉及一种在系统中控制通信网络的操作的方法的一个示例实施例,该系统包括中央节点和至少第一网络节点。
在一个示例实施例中,该方法包括:由中央节点的至少一个第一处理器向至少一个第一网络节点的至少一个第二处理器传输请求消息,该请求消息均至少包括采样时间窗口和网络切片标识符,该采样时间窗口定义了持续时间,该网络切片标识符在通信网络内标识了所指定的网络切片;由至少一个第二处理器在接收到请求消息后创建分组报告,该分组报告包括分组的等待时间信息,该分组在针对所指定的网络切片的采样时间窗口期间由至少一个第一网络节点处理;在至少一个第一处理器处,从至少一个第二处理器接收分组报告;以及由至少一个第一处理器基于等待时间信息来控制通信网络的操作。
在一个示例实施例中,至少一个第一网络节点包括:在所指定的网络切片中具有第一链路的至少一个第一类型的网络节点,该第一链路具有在通信网络内的终止端点。
在一个示例实施例中,至少一个第一网络节点包括:在所指定的网络切片中具有第二链路的至少一个第二类型的网络节点,该第二链路具有在网络切片之外的终止端点。
在一个示例实施例中,分组报告的接收包括:从第一类型的网络节点接收针对所指定的网络切片的第一类型的分组报告,该第一类型的分组报告均包括分组标识符信息、分组大小信息和时间戳信息。
在一个示例实施例中,至少一个第一网络节点包括:在所指定的网络切片中具有第一链路的至少一个第一类型的网络节点,该第一链路具有在通信网络内的终止端点,并且分组报告的接收包括:从第一类型的网络节点接收针对所指定的网络切片的第一类型的分组报告,该第一类型的分组报告均包括分组标识符信息、分组大小信息和时间戳信息;以及从第二类型的网络节点接收针对所指定的网络切片的第二类型的分组报告,该第二类型的分组报告均包括针对第二类型的网络节点的等待时间信息。
在一个示例实施例中,网络切片标识符标识了用于所指定的网络切片的通信方向,该方向是上行链路方向和下行链路方向之一。
在一个示例实施例中,中央节点和第一类型的网络节点被同步到用于通信网络的同一网络时钟,并且到至少一个第一类型的网络节点的请求消息包括:由采样时间窗口定义的开始时间。
在一个示例实施例中,至少一个第一类型的网络节点包括:下游第一类型的网络节点和上游第一类型的网络节点,请求消息的传输包括:向下游第一类型的网络节点传输具有第一采样时间窗口的第一请求消息,该第一采样时间窗口定义了第一开始时间和第一持续时间,并且向上游第一类型的网络节点传输具有第二采样时间窗口的第二请求消息,该第二采样时间窗口定义了第二开始时间和第二持续时间,该第一持续时间是与第二持续时间相同和与第二持续时间不同中的一种。
在一个示例实施例中,分组报告的接收包括:从下游第一类型的网络节点接收第一分组报告,该第一分组报告包括:与一个第一组时间戳信息相关联的一个第一组分组标识符信息;以及从上游第一类型的网络节点接收第二分组报告,该第二分组报告包括:与一个第二组时间戳信息相关联的一个第二组分组标识符信息。
在一个示例实施例中,该方法进一步包括:通过以下方式计算等待时间信息,在一个第一组分组标识符信息与一个第二组分组标识符信息之间匹配标识符信息,以得到标识符信息的匹配子集,以及确定一个第一组时间戳信息的第一部分与一个第二组时间戳信息的第二部分之间的差异,该第一部分和第二部分与标识符信息的匹配子集相关联。
在一个示例实施例中,分组报告的创建包括:由至少一个第二类型的网络节点的至少一个第二处理器计算物理资源块(prb)速率信息和承载(bearer)信息,该承载信息包括多个非常活跃的承载的量化,并且由至少一个第二处理器基于prb速率信息和承载信息来确定等待时间信息。
至少另一个示例实施例涉及中央节点。
在一个示例实施例中,中央节点包括:存储器,其存储计算机可读指令;以及至少一个第一处理器,其被配置成执行计算机可读指令,使得至少一个第一处理器被配置成向至少一个第一网络节点传输请求消息,该请求消息均至少包括采样时间窗口和网络切片标识符,该采样时间窗口定义了持续时间,该网络切片标识符在通信网络内标识了所指定的网络切片,接收来自至少一个第一网络节点的分组报告,该分组报告包括分组的等待时间信息,该分组在针对所指定的网络切片的采样时间窗口期间由至少一个第一网络节点处理,并且基于等待时间信息来控制通信网络的操作。
至少另一个示例实施例包括系统。
在一个示例实施例中,该系统包括:中央节点,其包括:第一存储器,其存储第一计算机可读指令;以及至少一个第一处理器,其被配置成执行第一计算机可读指令,使得至少一个第一处理器被配置成:向至少一个第二处理器传输请求消息,该请求消息均至少包括采样时间窗口和网络切片标识符,该采样时间窗口定义了持续时间,该网络切片标识符在通信网络内标识了所指定的网络切片;以及至少一个第一网络节点,其包括:第二存储器,其存储第二计算机可读指令,以及至少一个第二处理器,其被配置成执行第二计算机可读指令,使得至少一个第二处理器被配置成在接收到请求消息后创建分组报告,该分组报告包括分组的等待时间信息,该分组在针对所指定的网络切片的采样时间窗口期间由至少一个第一网络节点处理,至少一个第一处理器,其被进一步配置成接收来自至少一个第二处理器的分组报告,并且基于等待时间信息来控制通信网络的操作。
附图说明
图1图示了依照示例实施例的通信网络的系统的架构;
图2图示了依照示例实施例的系统的中央(控制)节点;
图3图示了依照示例实施例的系统的第一测量节点;
图4图示了依照示例实施例的系统的第二测量节点;
图5图示了依照示例实施例的在具有多个切片的代表性5g通信网络中用于等待时间测量的系统的实例;
图6图示了依照示例实施例的用于在移动无线电接入网(ran)通信网络中进行等待时间测量的系统;
图7图示了依照示例实施例的第一测量节点的操作;以及
图8图示了依照示例实施例的中央节点的方法。
具体实施方式
虽然示例实施例能够有各种修改和替换形式,但是其实施例作为示例在图中示出并且将在本文中进行详细地描述。然而,应当理解的是,不存在使示例实施例限于所公开的特定形式的意图,而相反,示例实施例要覆盖落入本发明的范围内的所有修改、等同方案和替换方案。相似的标号在这些图的描述中自始至终指代相似的元件。
在更详细地讨论示例施例之前,要注意到,一些示例实施例被描述为过程或方法,它们被描绘为流程图。尽管流程图可以将操作描述为顺序过程,但是操作中的许多可以并行、并发或同时实行。另外,可以重新布置操作次序。这些过程可以在其操作完成时终止,但也可以具有图中未包括的附加步骤。这些过程可以对应于方法、功能、过程、子例程、子程序等。
下面讨论的方法(其中一些通过流程图说明)可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或其任何组合来实现。当以软件、固件、中间件或微代码实现时,实行必要任务的程序代码或代码段可以存储在机器或计算机可读介质中,诸如存储介质,诸如非暂时性存储介质。(一个或多个)处理器可以实行所述必要任务。
本文中公开的特定结构和功能细节仅仅出于描述示例实施例的目的而是有代表性的。然而,本发明可以以许多不同的形式来体现,并且不应当被解释为受限于本文中阐述的实施例。
将理解的是,尽管术语第一、第二等可以在本文中被用来描述各种元件,这些元件不应当受这些术语限制。这些术语仅被用来区分一个元件与另一个元件。例如,在不脱离示例实施例的范围的情况下,第一元件可以被称为第二元件,并且类似地,第二元件可以被称为第一元件。如本文中使用的,术语“和/或”包括一个或多个相关联的列出项的任何和全部组合。
将理解的是,当元件被称为被“连接”或“耦合”到另一个元件时,它可以被直接连接或耦合到其他元件,或者可能存在介于中间的元件。相反地,当元件被称为被“直接地连接”或“直接地耦合”到另一个元件时,则不存在介于中间的元件。应当以相似的方式来解释被用来描述各元件之间的关系的其他词语(例如,“在......之间”比对“直接在......之间”、“邻近”比对“直接邻近”等)。
本文中使用的术语仅出于描述特定实施例的目的,并且不意图限制示例实施例。如本文中使用的,单数形式“一”、“一个”和“该”也意图包括复数形式,除非上下文以其它方式清楚地指示。将进一步理解的是,术语“包括”、“包括有”、“包含”和/或“包含有”,当在本文中使用时,规定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但并不排除一个或多个其他特征、整数、步骤、操作、元件、组件和/或其组的存在或添加。
还应当注意到的是,在一些替换实现方式中,所提出的功能/动作可以以附图中提出的次序之外的次序发生。例如,取决于所涉及的功能/动作,连续示出的两个图实际上可以并发地执行,或者有时可以逆序执行。
除非另行限定,否则本文中使用的所有术语(包括技术术语和科学术语)具有与示例实施例所属领域的普通技术人员通常理解的含义相同的含义。将进一步理解的是,术语(例如,常用词典中定义的术语)应当被解释为具有与其在相关技术的上下文中的含义一致的含义,并且除非在本文中如此清楚地定义,将不以理想化或过度形式化的意义解释它们。
根据对计算机存储器内的数据位的操作的软件或算法和符号表示来呈现示例实施例的部分和对应的详细描述。这些描述和表示是本领域普通技术人员通过其有效地将其工作的实质传达给本领域其他普通技术人员的描述和表示。算法(作为在这里使用的术语,并且如其一般被使用的那样)被设想成是导致期望结果的自洽的步骤序列。步骤是需要对物理量的物理操纵的那些步骤。通常,尽管并不一定,这些量采取能够被存储、转移、组合、比较并以其他方式操纵的光、电或磁信号的形式。原则上出于共同使用的原因,已经证明有时方便的是将这些信号称为位、值、元素、符号、字符、项、数字等等。
在以下描述中,将参照可以被实现为程序模块或功能过程的操作的动作和符号表示(例如,以流程图的形式)来描述说明性实施例,该程序模块或功能过程包括例程、程序、对象、组件、数据结构等,它们实行特定任务或实现特定的抽象数据类型,并且可以使用现有网络元件处的现有硬件来实现。这样的现有硬件可以包括一个或多个中央处理单元(cpu)、数字信号处理器(dsp)、专用集成电路、现场可编程门阵列(fpga)计算机等等。
然而,应当牢记,全部这些和类似的术语要与适当的物理量相关联,并且仅仅是被施加于这些量的方便标注。除非另行具体说明,或根据讨论显然的那样,诸如“处理”或“计算”或“运算”或“确定”或“显示”等等的术语指代计算机系统或相似的电子计算设备的动作和过程,该计算设备将被表示为计算机系统的寄存器和存储器内的物理、电子量的数据操纵和变换成被类似地表示为计算机系统存储器或寄存器或其他这样的信息存储、传输或显示设备内的物理量的其他数据。
还要注意的是,示例实施例的软件实现方面通常在某种形式的程序存储介质上编码或在某种类型的传输介质上实现。程序存储介质可以是任何非暂时性存储介质,诸如磁介质、光学介质或闪速存储器等。类似地,传输介质可以是双绞线、同轴电缆、光纤或本领域已知的某种其他合适的传输介质。示例实施例不受任何给定实现方式的这些方面的限制。
通用方法:
为了确保网络切片符合服务水平协议(sla),5g服务提供商(sp)需要可靠且经济高效的手段来实时测量和监视等待时间。用于等待时间测量的被动方法不会在数据平面中注入专用的测量流量,并且不会修改用户流量的报头。服务提供商可以从这样的被动方法中受益,因为它们不会干扰网络性能和基于数据使用的计费方案。相关的等待时间指标包括服务端点之间每个切片的端到端等待时间,以及遍历端到端网络切片的部分片段(诸如单个虚拟链路、子切片和虚拟网络功能)的等待时间。后者在提高故障排除、根本原因分析和实现纠正措施以保留sla保证的能力方面具有显著优势。本示例实施例包括用于网络切片的等待时间的被动、准确和可扩展测量的系统和方法。
存在用于等待时间测量的有限方法,但它们要么(a)不足以满足与5g和网络切片概念相关联的新要求,要么(b)本质上是非被动和侵入式的,并且因此适用性受到限制。以下内容是此类技术的代表性集合:
i.主动测量:使用常规的诊断工具、终端主机或网络节点可以将特殊的往返分组注入网络(往返分组是从第一网络端点行进到第二网络端点并且然后返回到第一端点的分组;分组中的数据可以在分组沿每个方向行进时进行修改,并且也可以在传输到第一端点之前由第二端点修改)。每个返回的往返分组都包含原始分组的时间戳,并且添加的时间戳可以有可能地由远程主机和中间节点添加。源对时间戳进行分析,以推断整个和部分数据路径的等待时间信息。至少出于以下原因,该方法不足以用于5g网络切片及其严格的sla关键性能指标(kpi)。
a.所涉及的诊断工具不是被动的:注入的分组会增加网络负载。尽管负载增加通常是微不足道的,但在某些情况下,它可能会扰乱对等待时间敏感的应用程序及其kpi度量的性能。
b.所指定的新功能需要安装在移动终端设备上,专门用以产生等待时间测量,并且然后将测量结果发信号给网络,这需要最终用户的同意,并且由于终端设备的绝对数量而造成负担。
c.在网络切片环境中,等待时间测量实用程序的分组探针与将每个切片设计成支持其的应用程序的分组不经历相同类型的处理。由于处理会带来等待时间,所以从探针获得的测量结果可能是不准确的。
ii.tcp报头检查:使用传输控制协议(tcp)数据分组的报头中的序列号、和返回确认(ack)分组的报头中的确认号、中间网络节点(而不仅仅是tcp源)可以计算到tcp接收器的往返时间。此方法仅适用于使用tcp进行端到端传输的应用程序。由于tcp分组重传添加的延迟,等待时间要求受到约束的实时应用程序不太可能将tcp用于端到端传输。更好地针对每种应用程序的特定需求量身定制的传输协议有可能会变得司空见惯,尤其是在引入行业快速用户数据报协议(udp)互联网连接协议(即,quic协议)之后,其作为udp之上的垫片层,其允许用于网络可靠性和拥塞控制的自定义方法的设计。
iii.深度分组检查(dpi)或用于基于签名的分组识别的其他方法:中间节点可以深入查看分组(报头和有效负载两者),以识别分组流和单个分组,并且存储每个流和每个分组的到达/离开数据。可以通过匹配在相邻节点为同一分组收集的记录来计算节点间单向等待时间样本。这种方法面临以下挑战:
a:大量的分组到达/离开记录需要存储在每个参与节点处,并且然后进行传输以进行匹配。仅随机采样传输中的一部分分组是行不通的,因为等待时间计算必须比较同一分组在不同节点处的事件时间,并且如果每个节点都随机地且独立于其他节点地对分组进行采样,则在不同节点处对同一分组进行采样的可能性很低。
b.该方法仅适用于切片片段的等待时间的测量,而不适用于网络切片的多跳数据路径的端到端单向等待时间的测量。
对于通信网络运营商而言,通过不同切片来配置共享网络和计算资源的超额预订的能力是合期望的,以使得能够实现网络的最大利用,并且由此实现对基础设施投资的最大回报。
因此,示例实施例提供了一种系统和方法,其包括:两种类型的分布式代理,其可以与用于所指定的网络切片的中央节点协调对切片的等待时间测量,其中分布式代理可以与通信网络内的链路相关联,或者与被用于通信网络外部的通信的链路相关联。该方法和系统可以计算(a)端到端切片等待时间和(b)切片的各个片段的等待时间。
具体实施例:
示例实施例包括一种用于被动测量网络切片中的分组等待时间的系统和方法,既用于端对端等待时间(在切片端点之间),也用于整个切片的内部片段内,其中片段可以是切片的子网、切片内的链路(物理或虚拟的)、切片内的一组连续链路、与切片相关联的网络节点或作为切片的一部分的定义明确的网络域等。等待时间测量结果可以由集中式元件(也被称为“中央节点”或“控制节点”)产生,该集中式元件控制和协调由通信网络中各个元件或节点进行的定期采样,并且定期收集和关联从网络的不同采样点接收到的分组时间戳记录的集合。分组时间戳记录(也被称为“时间戳信息”)可以包括唯一分组标识符和与记录创建的时间相关联的时间戳。在记录收集时期期间,为每个遍历采样点的分组创建一条记录。从网络中的不同点接收到的记录中的与同一分组标识符相关联的时间戳的比较产生了两个点之间的等待时间的样本。集中式元件控制每个记录收集时期的持续时间、收集时期之间的间隔以及过程中所涉及的网络的每个点处的收集时期的开始时间。
示例实施例的一些关键要素由以下属性概括:
i.基于网络的:示例实施例不需要终端设备参与测量。
ii.被动的:示例实施例不涉及探针分组的注入、或用于系统或方法的传输分组的报头的修改。
iii.可扩展的:示例实施例依赖于以与发生采样的节点的处理、存储和传输容量兼容的间歇时间间隔对传输分组进行采样。
iv.准确的:示例实施例使得能够基于应用了等待时间测量过程的数据路径的特性对等待时间测量过程进行微调。
结构实施例:
图1图示了根据示例实施例的用于通信网络50的系统100的架构。系统100可以提供等待时间测量,并且由此获得等待时间信息。系统100可以为分组网络提供等待时间测量(信息),该分组网络包括:一组节点{n-i}(10a,10b,10c,20a)、一组内部链路{il-j}(12a,12b,12c)和一组外部链路{el-k}(22a)。节点n-i可以是分组交换器、分组交换器的一部分、网络功能、网络能力、应用服务器或端点、或能够接收和传输分组的任何其他网络元件,而没有对范围和粒度的限制。节点n-i可以被实例化为物理独立实体或作为虚拟化实体,很可能与其他虚拟化网络功能共享在下面的基础设施资源。内部链路il-j连接通信网络50内的两个节点。外部链路el-k将通信网络50的节点与不属于通信网络50的节点连接。服务小区与所服务的最终用户设备之间的无线连接是外部链路22a的示例。内部和外部链路可以是物理链路或虚拟链路。
示例实施例的系统100包括以下组件:
a.等待时间测量引擎(lme)30:具有处理器300a的集中式组件(“中央节点”或“控制节点”或等待时间测量引擎“lme”)30,该处理器300a控制在不同节点(10a,10b,10c和20a)处的采样(开始和持续时间)的同步,以确保对同一组分组的节点遍历加时间戳。lme30的处理器300a收集并且处理源自网络50的不同点的等待时间测量结果。每个运营商网络(例如,物理网络或虚拟网络)通常可以有一个这样的引擎(lme30),尽管应当理解的是,可以在同一基础设施或通信网络50内部署多个lme30,其中多个lme30可以由多个虚拟网络或网络切片共享。
b.类型1等待时间测量代理(t1lma)——第一类型的网络节点:与内部链路12a的端点相关联的分布式组件(或网络节点/元件,在系统100中被指定为节点10a、10b和10c)。它们收集针对一个链路12a方向或针对链路12a的两个方向的时间同步测量样本(第一类型的测量信息),并且将此信息传输到lme30的处理器300。并非网络节点的所有内部链路都必须与t1lma耦合。
c.类型2等待时间测量代理(t2lma)——第二类型的网络节点:与外部链路22e的网络端点(即,其第二端点在网络50之外并且因此不包括在测量系统中的链路)相关联的分布式组件(或网络节点/元件,在系统100中被指定为节点20a)。外部链路22e的示例是无线访问链路,其中外部端点是由网络50服务的移动设备(诸如用户设备/装备)。t2lma收集针对一个链路22e方向或针对链路22e的两个方向的测量样本(第二类型的测量信息),并且将测量信息传输到lme30的处理器300。并非网络节点的所有外部链路都必须与t2lma耦合。
d.lme30和网络50中的所有lma10a:这些组件被同步到公共时间参考(即,公共“网络时钟”)。可以实现引起该同步的任何公知方法,其中该同步及其实现方式的细节在当前所描述的示例实施例的范围之外。
结构示例实施例:
图2图示了依据示例实施例的系统100的中央(控制)节点30或lme30。节点30包括:用于与系统100中的其他节点进行通信的网络接口304、信令接口306(其可以被认为是“回程”)和存储器存储装置302。节点30还包括:可以控制节点30的操作的处理器300。节点30的这些操作中的一些包括:向存储器302保存信息/数据和从存储器302中检索信息/数据、使用接口304/306将信令和信息传输到系统100中的其他节点,以及至少部分基于计算机可读指令来实行处理,该计算机可读指令保存在处理器300内的等待时间测量控制模块(lmcm)300a中。lmcm300a中的计算机可读指令可以提供以下指令,该指令使处理器300实行与本文档中的当前方法示例实施例中所描述的步骤相称的节点30的方法步骤。应当理解的是,处理器300还包括物理(phy)层(具有不同的配置模式)、媒体访问控制(mac)层(具有不同的配置模式)、分组数据融合协议(pdcp)层(具有不同的配置模式)、用户平面层(具有不同的配置模式)、调度表和无线电链路控制(rlc)缓冲区,其中处理器300的这些元件未在图中示出。
图3图示了依据示例实施例的系统100的第一测量节点10a或t1lma。节点10a包括:用于与系统100中的其他节点进行通信的网络接口204、回程接口206和存储器存储装置202。节点10a还包括:可以控制节点10a的操作的处理器200。节点10a的这些操作中的一些包括:向存储器202保存信息/数据和从存储器202中检索信息/数据、使用接口204/206将信令和信息传输到系统100中的其他节点,以及至少部分基于计算机可读指令来实行处理,该计算机可读指令保存在处理器200内的等待时间测量模块类型1(lmmt1)200a中。lmmt1200a中的计算机可读指令可以提供以下指令,该指令使处理器200实行与本文档中的当前方法示例实施例中所描述的步骤相称的节点10a的方法步骤。在实施例中,处理器200可以包括物理(phy)层(具有不同的配置模式)、媒体访问控制(mac)层(具有不同的配置模式)、分组数据融合协议(pdcp)层(具有不同的配置模式)、用户平面层(具有不同的配置模式)、调度和无线电链路控制(rlc)缓冲区,其中处理器300的这些元件未在图中示出。
图4图示了依据示例实施例的系统100的第二测量节点20a或t2lma。节点20a包括:用于与系统100中的其他节点进行通信的网络接口404、回程接口406和存储器存储装置402。节点20a还包括:可以控制节点20a的操作的处理器400。节点20a的这些操作中的一些包括:向存储器402保存信息/数据和从存储器202中检索信息/数据、使用接口404/406将信令和信息传输到系统100中的其他节点,以及至少部分基于计算机可读指令来实行处理,该计算机可读指令保存在处理器400内的等待时间测量模块类型2(lmmt2)400a中。lmmt2400a中的计算机可读指令可以提供以下指令,该指令使处理器400实行与本文档中的当前方法示例实施例中所描述的步骤相称的节点20a的方法步骤。在实施例中,处理器400可以包括物理(phy)层(具有不同的配置模式)、媒体访问控制(mac)层(具有不同的配置模式)、分组数据融合协议(pdcp)层(具有不同的配置模式)、用户平面层(具有不同的配置模式)、调度和无线电链路控制(rlc)缓冲区,其中处理器300的这些元件未在图中示出。
使用系统内的网络切片:
系统100包括:两种类型的分布式代理10a/20a,其可以与虚拟网络功能耦合以用于收集涉及网络切片的与等待时间相关的测量样本(类型1和类型2等待时间测量代理),并且与集中式等待时间测量引擎(lme)30相称。lme30的处理器300协调采样操作,并且处理代理数据以计算(a)端到端切片等待时间和(b)针对切片的各个片段的等待时间。
在实施例中,该方法包括:
i.协调由lme30的处理器300、由不同代理10a/20a实行的数据采样。
ii.经由连续地适配采样时期的持续时间和频率,并且基于在lme30的处理器300处收集的所报告的采样数据来控制代理10a/20a采样操作的框架。
iii.用于基于从代理10a/20a收集的样本在lme30的处理器300处收集采样数据和计算等待时间的算法或指令。
该系统和方法的示例实施例使得有可能基于在网络切片内的有利点处进行定期采样来建立用于等待时间测量的可靠解决方案,并且使得能够在测量的准确性与它们强加在通信网络50基础设施上的信令和处理负担之间实现“最佳折衷”。
在示例实施例中,通信网络可以是作为分组网络的5g网络50a。因此,图5图示了依据示例实施例的用于在具有多个切片600、602、604的代表性5g通信网络50a中进行等待时间测量的系统100的实例化。特别地,图5图示了对于共享共同的物理基础设施的三个切片600、602、604的示例实施例的组件的实例化。切片与同一物理链路的终端耦合,其中lma(节点20a,20b,10a,10b等)在任何时候都可以属于不同切片600、602、604,它们当与多个切片600、602、604共享的网络功能相关联时,逻辑上是独立的,但是可以被实现为单个实体。各个lma节点10a、20a中的每一个可以被分组为网络50a的部分,其中这些部分作为示例可以包括5ggnb(基站)606a、5g用户平面功能(upf)606b、第3层(l3)路由器以及第2层(l2)交换机。
图5图示了三个网络切片600、602、604在相应的应用服务器600b、602b、604b与客户端设备(ue)600a、602a、604a之间提供数据路径。应用服务器600b、602b、604b中的每一个属于不同的相应切片600、602、604,其中应用服务器600b、602b、604b可以向相应的ue600a、602a、604a提供服务或内容。为此,应用服务器600b与相应的l2交换机606d端口之间的链路是内部链路,与t1lma10q、10r耦合(t1a-m,n是切片m的第n个t1lma)。同时,因为ue600a不在网络50a的切片边界内,所以5ggnb606a与ue600a之间的链路是外部链路,因此那些链路的5ggnb606a端点与t2lma20a(t2a-p,q是切片p的第q个t2lma)耦合。并非相同物理基础设施所支持的所有切片都必须配备有当前示例实施例的等待时间测量能力。在图5中,仅两个顶部切片600、602是这样。单个lme30可以控制被监视和控制的切片600、602的各个lma10a、20a。
方法的示例实施例
类型1(节点10a)lma的操作:
t1lma(节点10a)的处理器200可以在节点10a从lme30接收到触发(请求)消息的时间段之后开始对节点10a所接收到的分组进行采样,其中经采样的分组携带给定的网络切片id(nsid),其指定所指定的切片的身份。应当注意的是,nsid的性质和格式不在当前示例实施例的范围内。因为节点10a与在两个方向上处理流量的链路终结点相关联,所以每个流量方向都需要不同的触发,并且因此nsid可以指定用于采样的流量方向。触发包括以下项目集(其表示网络切片id、样本开始时间和样本结束时间):<nsid,sample_start_time,sample_end_time,direction>。在接收到触发消息之后,节点10a的处理器200处理在所指定的采样时间窗口期间接收到的、沿指定方向传输的所指定的切片的所有分组。注意的是,与节点10a从lme30接收到的触发消息的到达时间相比,采样时间窗口(sample_start_time和sample_end_time)应当是将来的时间段。当节点10a的处理器200处理分组时,它将在当前采样时期内将分组报告记录添加到运行日志中。分组报告记录可以至少包含以下各项:<packet_id,packet_size,timestamp>,其中packet_id可以是该分组的唯一签名标识符,packet_size是可以以字节为单位测量的分组的长度,并且timestamp是根据lme30、节点10a和正被监视的切片的其他lma共享的时间参考来生成分组报告记录的时间。当时间参考达到sample_end_time(即,采样时间窗口的结尾)时,节点10a的处理器200可以停止创建分组报告记录,并且将在采样时期内累积的整个日志发送到lme30。
类型2(节点20a)lma的操作:
t2lma(节点20a)与用于外部链路(与网络50之外的节点通信的链路)的网络端点相关联。外部链路的一个示例是用于移动无线网络的无线访问链路,其中该链路可能正在与最终用户(用户设备)进行通信。无线访问链路的网络端点的放置的一个示例是无线电接入网(ran)协议栈的介质访问控制(mac)层。mac层包括:用于在下行链路(dl)和上行链路(ul)两个方向上访问无线介质的调度程序。本部分描述了与无线电接入网的无线链路调度程序相关联的节点20a的实例化。
图6图示了依据示例实施例的用于在移动无线电接入网(ran)小区50b中进行等待时间测量的系统100a。移动ran50b由三个网络切片610、620、630共享(其中各个nsid被表示为a、b和c)。下面的描述集中于系统100a的操作,该系统专门用于切片610(具有nsida)的等待时间测量。t1a-a,1(节点10b)和t1a-a,2(节点10a)是与将ran小区50b连接到核心网络(t1a-a,1)的链路的端点以及与无线电链路控制(rlc)和ran协议栈中的mac层之间的接口(t1a-a,2)相关联的t1lma。可以与在相同数据路径点为其他切片服务的t1lma共同实现这两个t1lma。t2a-a,1(节点20a)与mac调度程序相关联地服务于切片a(其他切片的t2lma也可以共同实现)。
节点20a的处理器400使用在每个传输时间间隔(tti)从mac调度程序获得的信息来计算无线访问链路的等待时间贡献。该信息可能包括以下数据,其中此描述是指下行链路(dl)数据方向(尽管这种类型的数据对于上行链路(ul)数据方向而言将是相同的):
a.为在持续时间△t的时间间隔内计算的切片a的所有dl承载来聚合物理资源块(prb)速率prb_agg(a,△t,dl),并且(可选地)进一步取平均(或“平滑”)。
b.为切片a的虚拟非常活跃(va)dl承载平均prb速率prb_avg(a,△t,dl)(其中“va承载”几乎总是具有可用于无线发送的数据)。在一个实施例中,prb_avg(a,△t,dl)可以如2017年10月17日发布的美国专利no.9,794,825中所描述的那样来计算,其全部内容通过引用整体地并入本文中,并且在时间间隔△t内取平均。
c.平均切片中的vadl承载的数量nva_avg(a,△t,dl)。在实施例中,nva_avg(a,△t,dl)可以如美国专利no.9,794,825中所描述的那样来计算,并且在时间间隔△t内取平均。
应当注意的是,prb_agg(a,△t,dl)表示被分配给切片a的dl小区资源的平均量,并且prb_avg(a,△t,dl)和nva_avg(a,△t,dl)取决于prb_agg(a,△t,dl)以及取决于切片a中的流量流的取决于应用程序的属性。
节点20a的处理器400在时间间隔△t期间对切片a的d个位计算dl无线链路等待时间l(a,d,△t,dl),其中△t是以通过切片的非常活跃(va)承载获得的平均数据速率传输d个位所花费的时间。同一处理器400计算ul无线链路等待时间l(a,d,△t,ul)。
如果c(a,△t,dl)是跨切片a的所有dl承载在时间间隔△t期间由调度程序分配的每个prb的有用位的平均数量(不对重传计数),并且如e.grinshpun等人的“long-termapplication-levelwirelesslinkqualityprediction”(第36届ieeesarnoff研讨会,2015年9月(可获得),其通过引用整体地并入本文档)中描述的那样计算,节点20a的处理器400计算dl无线链路等待时间如下:
l(a,d,△t,dl)=d/(prb_avg(a,△t,dl)*c(a,△t,dl))-式1
ul等待时间的等式如下:
l(a,d,△t,ul)=d/(prb_avg(a,△t,ul)*c(a,△t,ul))-式2
在等式1和等式2中,可以通过在等式1中进行选择来计算独立于d的平均等待时间:d=d1+d2,其中,d1是切片的平均ip分组大小,并且d2是通过链路发送它们之前的累积分组的缓冲区的平均大小(例如,无线电链路控制(rlc)缓冲区的平均大小)。
如上所述,节点20a的用于等待时间的计算的处理器400不是cpu密集型的,并且不需要存储大量数据。因此,可以由节点20a的处理器400连续地实行该计算。在实施例中,lme30的处理器300触发带有数据消息的最新等待时间值的传输,该数据消息携带以下参数:<nsid,d,△t,方向>。lme30的处理器300基于切片的流量sla来设置d和△t,将d和△t的较大值用于具有较高预期流量的切片,而将较小值用于具有较低预期流量的切片。节点20a的处理器400还可以周期性地、或在超过所配置的(所确定的)阈值的时间发送其等待时间报告。
lme30操作:
lme30的处理器300从节点10a和节点20a接收样本报告,并且将它们进行组合以计算每个受监视切片以及每个受监视切片内的数据路径的所选部分的端到端等待时间。lme30的处理器300设置它控制的每个节点10a/20a的采样时期的频率,以及它控制的每个节点10a的采样时期的开始和结束时间。
图7图示了依据示例实施例的第一测量节点(节点10a)的操作。特别地,图7图示了其中网络50c(类似于图1的网络50)的节点的示例,尽管该网络50c涉及虚拟化网络功能(vnf)实例50c1/50c2。vnfx(50c1)和vnfy(50c2)由三个切片640、650、660(具有由a,b和c表示的相应nsid或“网络切片标识符”)共享。随后的描述仅集中于片a,lme30的处理器300针对其控制三个节点(节点10a、10b、10c)实例(特别是vnfx中的节点10a/10b和vnfy中的节点10c)的操作)。可以将切片a的t1lma实例化为独立功能,或者与关联于相同链路端点的其他切片的t1lma共同地实例化。
节点10a、10b、10c的相应处理器200基于它们从lme30的处理器300接收到的触发消息来收集连续的分组报告记录的集合,并且一旦相应采样时期到达它们的结束时间就将它们发送到lme30。lme30的处理器300使用分组报告记录的集合来计算从vnfx到vnfy的数据路径的等待时间,其中数据路径可以包括单个链路(可能是虚拟的)、或多个串联的链路,可能地加入其他vnf实例。
可扩展性要求t1lma采样时期的持续时间h尽可能短。然而,缩短采样时期减小了在等待时间测量路径的端点处所收集的分组标识符的集合的交集的大小。当lme30的处理器300保持收集分组报告记录的集合时,lme30的处理器300可以在测量端点处对采样时期的持续时间和开始时间两者都进行微调,以增加交集集合的大小。
在实施例中,当在测量数据路径的端点之间测量等待时间时,lme30的处理器300使用以下方法来控制采样时期的参数。
首先,lme30的处理器300必须在测量路径端点的t1lma处设置采样时期的开始和结束时间。设t(a,2,开始)是t1a-a,2处的采样时期的开始时间(在vnfx中),并且t(a,3,开始)是t1a-a,3处的采样时期的开始时间(在vnfy中)。相同时段的结束时间为t(a,2,结束)和t(a,3,结束)。因此,两个t1lma处的采样时期的持续时间为h(a,2)=t(a,2,结束)–t(a,2,开始),并且h(a,3)=t(a,3,结束)–t(a,3,开始)。设e(a,2,3)是基于最新测量结果的从t1a-a,2到t1a-a,3的预期等待时间,则s(a,2,3)——e(a,2,3)的一小部分(例如,s(a,2,3)可以被定义为可配置因子和同一样本的标准偏差的乘积,其产出平均数e(a,2,3))。lme30的处理器300如下设置下游t1lma的开始和结束时间:
t(a,3,开始)=t(a,2,开始)+e(a,2,3)–s(a,2,3),
t(a,3,结束)=t(a,3,开始)+h(a,2)+s(a,2,3)。–式3
以这种方式,下游t1lma(t1a-a,3)的采样间隔h(a,3)的持续时间比上游t1lma(t1a-a,2)的间隔h(a,2)的持续时间长2*s(a,2,3)。
接下来,lme30的处理器300必须使用从两个t1lma接收到的分组报告记录的集合来计算从t1a-a,2到t1a-a,3的等待时间。
图8图示了依据示例实施例的中央节点(lme)30的方法。特别地,图8描述了与t1lmat1a-a,2和t1a-a,3结合的lme30的操作方法,包括:处理分组报告记录集以控制采样参数h和s,并且计算平均等待时间e。如上面陈述的,lmcm300a、lmmt1和lmmt2可以包括用于各个处理器300、200、400(对于lme30,是节点10a和节点20a)的计算机可读指令,以实行该方法的步骤。
在步骤s600中,lme30的处理器300可以通过确定等待时间测量和等待时间控制度量被需要来开始该方法。该方法的开始可以基于与网络事件(诸如网络切片的添加或重新配置、检测到的应用程序体验质量下降、检测到的网络拥塞等)相关联的运营商策略、以规则的定期时间表、来自母节点的命令、来自网络运营商的手动命令来完成。。
在步骤s602中,控制器300将样本触发(请求消息)发送到网络50中的节点。节点可以是网络50内的节点10a,或者节点也可以是具有延伸到网络50之外的链路的节点20a。一旦节点10a和/或20a接收到请求消息,它们就进行测量并且编译与上述示例实施例相称的分组报告。
在步骤s604中,lme30的处理器300从节点10a和/或20a接收分组报告,并且在步骤s606中,处理器300确定匹配签名(如上所述),其中该确定还可以涉及确定量化了匹配数量的阈值数值。该阈值数值例如可以是匹配的总数。
如果在步骤s606中,处理器300确定存在足够的匹配,则在步骤s608中,处理器300可以为匹配计算等待时间信息,或者以其他方式调查等待时间信息。具体地,处理器300可以计算等待时间和控制参数,其中等待时间和控制参数可以用于端到端等待时间,或者在端到端传输内的切片片段的等待时间(如上所述)。在实施例中,与lme30的处理器30确定等待时间信息相反,节点20a的处理器400可以可选地确定该等待时间信息,并且然后将等待时间信息发送到lme30。并且因此,在步骤s608中,处理器300可以分析匹配的等待时间信息。在实施例中,在步骤s608中,处理器300可以响应于等待时间分析来控制网络的操作。这可以通过以下方式来实现:通过不同节点重新路由切片、通过同一节点的不同可配置层(phy层、mac层、pdcp层、用户平面层)重新路由切片和/或改变这些层的设置、通过同一节点的调度程序和/或rlc的不同可配置模式重新路由切片和/或改变调度程序和/或rlc的设置、通知网络节点调整设置、增加或减少网络吞吐量等,其中控制网络操作的这些动作可以可选地与其他lme30、网络的中央办公室(图中未示出)协调,或者以其他方式与网络50内的多个节点或甚至网络50之外的节点协调。在步骤s608之后,可以重复该方法(其中该方法返回到步骤s602)。
如果在步骤s606中,处理器300确定不存在足够的匹配,则在步骤s6610中,lme30的处理器300可以增加h(a,2)和s(a,2,3),具有的目标是增加在该方法的另一个迭代期间的匹配数量。在步骤s610之后,可以重复该方法(其中该方法返回到步骤s602)。
当切片端点之间的等待时间测量结果稳定时,lme30的处理器300可以禁用来自中间t1lma的分组报告记录的收集,并且当等待时间测量结果增加或来自切片端点的分组报告记录的集合变为严重不对齐(只有很少或没有交集)时,再次激活它。
lme30的处理器300通过匹配各个集合中它们的标识符(签名)并且减去它们的时间戳来计算两个t1lma之间的各个分组的等待时间。lme30的处理器300以组合的量度(例如,选择的平均值)累积等待时间样本,并且进一步对其进行标准化。标准化的类型取决于切片流量的流量属性。例如,对于具有持续高的流量的切片,可以在参考数据单元大小d内进行标准化;对于小批量突发流量,代替地,可以在时间△t期间处理的分组数量内进行归一化。
应当理解的是,本文中描述的示例实施例的节点可以是物理或虚拟路由器、交换机、4g无线enodeb、sgw、pgw、mme、5g无线节点(gnodeb、upf)、网关或其他能够履行本文档中概述的功能和方法步骤的结构元件。
尽管在本文中相对于其中例如程序和逻辑存储在数据存储装置内并且存储器通信地连接到处理器的实施例进行了描绘和描述,但是应当领会到的是,可以以任何其他合适的方式存储这样的信息(例如,使用任何合适数量的存储器、存储装置或数据库);使用通信地连接到设备的任何合适布置的存储器、存储装置或数据库的任何合适的布置;将信息存储在(一个或多个)存储器、(一个或多个)存储装置或者(一个或多个)内部或外部数据库的任何合适的组合中;或者使用任何合适数量的可访问外部存储器、存储装置或数据库。照此,本文中所指的术语“数据存储装置”意图涵盖(一个或多个)存储器、(一个或多个)存储装置和(一个或多个)数据库的所有合适的组合。
该描述和附图仅仅图示了示例实施例的原理。因此将领会的是,本领域技术人员将能够设想到尽管未在本文中明确地描述或示出、但体现了本发明的原理并且被包括在其精神和范围内的各种布置。此外,本文中记载的所有示例原则上明确地意图仅用于教学目的,以帮助读者理解本发明的原理和由(一个或多个)发明人推动本领域所贡献的构思,并且要被解释为不限于此类具体记载的示例和状况。此外,本文中记载本发明的原理、方面和实施例及其特定示例的所有语句都意图涵盖它们的等同方案。
可以通过使用专用硬件以及能够执行与适当软件结合的软件的硬件来提供示例实施例中所示的各种元件的功能,包括被标记为“处理器”的任何功能框。当由处理器提供时,功能可以由单个专用处理器、由单个共享处理器、或由多个单独的处理器(它们中的一些可以是共享的)提供。此外,不应当将术语“处理器”或“控制器”的明确使用解释成排外地指代能够执行软件的硬件,并且可以隐含地而没有限制地包括:数字信号处理器(dsp)硬件、网络处理器、专用集成电路(asic)、现场可编程门阵列(fpga)、用于存储软件的只读存储器(rom)、随机存取存储器(ram)和非易失性存储装置。还可以包括常规的或定制的其它硬件。
可以结合各种电信网络和系统来利用示例实施例,诸如以下各项(其中,这仅是示例列表):通用移动电信系统(umts);全球移动通信系统(gsm);先进的手机服务(amps)系统;窄带amps系统(namps);总接入通信系统(tacs);个人数字蜂窝(pdc)系统;美国数字蜂窝(usdc)系统;eia/tiais-95中描述的码分多址(cdma)系统;高速率分组数据(hrpd)系统、全球微波访问互操作性(wimax);超移动宽带(umb);第三代合作伙伴计划lte(3gpplte);以及5g网络。
这样描述了示例实施例,将很明显的是,可以以许多方式改变它们。这样的变化不应被认为脱离示例实施例的预期精神和范围,并且对本领域技术人员将是显而易见的所有这样的修改都意图被包括在所附权利要求的范围内。