用于网络基础设施监测的设备侧测试和报告的制作方法

文档序号:18005582发布日期:2019-06-25 23:19阅读:196来源:国知局
用于网络基础设施监测的设备侧测试和报告的制作方法

本文中描述的各种实施例涉及计算机网络,并且更具体地但非排他性地涉及监测医院和其他医学环境中的网络基础设施。



背景技术:

部署的容易性和灵活性已经导致无线网络(特别是,wifi)的几乎无处不在。然而,相比于有线网络,无线网络易遭受源于各种根本原因的连接性问题,各种根本原因包括例如信道干扰、低信号强度、高无线电噪声、覆盖间隙、以及由于对关于主动连接的次数的物理限制的移除而引起的客户端过载。这些问题能够相对频繁地发生,导致当连接关闭时丢失旨在用于传输的数据的间歇的或不稳定的连接。虽然这对于大多数应用(例如,网页浏览、发消息、以及甚至诸如客户端侧缓冲的其他措施被采用时的多媒体流传输)是可接受的,但是其他应用需要更可靠的连接。

例如,在无线患者监测的领域中,患者数据被实时流传输到中心设备是重要的,因为在检测患者发作方面的延迟可能带来负面反响,并且甚至可能意味着生与死之差。虽然企业无线系统意图提供用于管理遍及医院(或连接至关重要的应用被部署在其中的其他场所)的连接的质量的工具,但是这些系统经常被关闭并且对于正在被支持的具体应用而言是不完美的。例如,这样的系统可能试图通过适合于非时间关键的应用但是起到对实时的至关重要的应用的损害作用的广泛的、一般的且频繁的网络连接改变对现场无线网络进行组织。



技术实现要素:

根据前述内容,将会希望提供用于执行对无线网络基础设施的专用监测的方法和系统。然而,在这样的网络中,可能不能出于执行网络监测的目的而定义或改变网络连接硬件本身的功能性;相反,许多网络利用来自不能提供在这些方面进行定制的解决方案的供应商的现成的硬件或硬件。因此,本文中描述的各种实施例提供了对网络基础设施的客户端侧监测,以给出网络的应用层视图并且鉴于具体应用要求而识别最佳的重新配置。

本文中描述的各种实施例涉及一种患者监测设备,包括:无线通信接口;患者监测硬件,其用于测量患者的至少一个生理参数;以及处理器,其被配置为:提供用于使得能够经由所述无线通信接口进行通信的协议栈,经由所述协议栈和所述无线通信接口发送所述至少一个生理参数,从所述协议栈请求关于多个无线接入点(ap)的ap信息,基于所述ap信息来生成连接性报告,并且经由所述协议栈和所述无线通信接口将所述连接性报告发送到远程服务器。

本文中描述的各种实施例涉及一种用于由无线网络连接的设备的处理器执行的设备侧网络监测的方法,所述方法包括:从由所述处理器实施的协议栈请求关于多个无线接入点(ap)的ap信息,所述协议栈用于使得能够经由所述无线网络连接的设备的无线通信接口进行通信,基于关于所述多个ap中的至少一个的当前状态的所述ap信息来生成连接性报告,以及经由所述协议栈和所述无线通信接口将所述连接性报告发送到远程服务器。

本文中描述的各种实施例涉及一种被编码有用于由处理器执行的指令的非瞬态机器可读介质,所述指令用于由无线网络连接的设备的处理器执行的设备侧网络监测,所述非瞬态机器可读介质包括:用于从由所述处理器实施的协议栈请求关于多个无线接入点(ap)的ap信息的指令,所述协议栈用于使得能够经由所述无线网络连接的设备的无线通信接口进行通信,用于基于关于所述多个ap中的至少一个的当前状态的所述ap信息来生成连接性报告的指令,以及用于经由所述协议栈和所述无线通信接口将所述连接性报告发送到远程服务器的指令。

描述了各种实施例,其中,所述处理器还被配置为:将所述多个ap中的至少一个ap识别为关键ap,其中,所述连接性报告识别所述关键ap。

描述了各种实施例,其中,在将所述多个ap中的所述至少一个ap识别为关键ap中,所述处理器被配置为执行以下项中的至少一项:确定用于所述ap的连接持续时间是否超过连接持续时间阈值,其中,处理器基于所请求的ap信息来确定所述连接持续时间,并且所述连接持续时间指示已经在所述协议栈与所述ap之间建立连接的持续时间;确定用于所述ap的漫游表持续时间是否超过漫游表持续时间阈值,其中,所请求的ap信息包括由所述协议栈维持的漫游表,并且所述漫游表持续时间指示所述ap已经由所述协议栈保持在所述漫游表中的持续时间;并且确定漫游表出现计数是否超过漫游表出现计数阈值,其中,所述漫游表出现计数指示在对请求所述ap信息的步骤的一系列执行内已经在所述漫游表中观察到所述ap的次数。

描述了各种实施例,其中,所述处理器还被配置为:仅关于所述关键ap执行至少一个测试;并且将来自所述至少一个测试的结果包括在所述连接性报告中。

描述了各种实施例,其中,所述处理器还被配置为:关于所述多个ap执行至少一个测试,其中:针对关键ap以第一方式来执行所述至少一个测试,并且针对除了所述关键ap之外的ap以与所述第一方式不同的第二方式来执行所述至少一个测试;并且将来自所述至少一个测试的结果包括在所述连接性报告中。

描述了各种实施例,其中,所述处理器还被配置为:关于所述多个ap执行至少一个测试;并且将来自所述至少一个测试的结果包括在所述连接性报告中。

描述了各种实施例,其中,在执行所述至少一个测试中,所述处理器被配置为分析所请求的ap信息以确定关于网络基础设施的警报是否应当被升级到所述远程服务器。

描述了各种实施例,其中,所述至少一个测试包括以下项中的至少一项:针对所述ap的低信噪比的测试;针对ap之间的共信道干扰的测试;针对ap之间的相邻信道干扰的测试;针对任何ap的网络覆盖外花费的时段的测试;针对来自ap的低网络覆盖的测试;针对ap中的信道改变的测试;以及针对ap的客户端密度的测试。

描述了各种实施例,其中,所请求的ap信息是所述ap的802.11信标,并且所述连接性报告包括来自所述802.11信标的所述信息的至少一部分。

附图说明

为了更好地理解各种范例实施例,参考附图,其中:

图1图示了用于提供设备侧监测和报告的网络环境的范例;

图2图示了用于实施患者监测器设备或基础设施监测器服务器的硬件系统的范例;

图3图示了用于执行设备侧监测和报告的方法的范例;

图4图示了已知接入点(ap)列表的范例;

图5图示了用于更新已知ap列表的方法的范例;

图6图示了用于识别关键ap的方法的范例;

图7图示了用于针对共信道和相邻信道干扰进行测试的方法的范例;

图8图示了用于针对低覆盖进行测试的方法的范例;

图9图示了用于跟踪范围外实例的方法的范例;

图10图示了用于针对低信噪比(snr)进行测试的方法的范例;

图11图示了用于针对关键ap上的高客户端密度进行测试的方法的范例;以及

图12图示了用于处理连接性报告以用于呈现给网络管理员的方法的范例。

具体实施方式

本文中呈现的描述和附图说明了各种原理。将认识到,尽管未在本文中进行明确地描述或示出,但是本领域技术人员将能够设想体现这些原理并且被包括在本公开的范围内的各种布置。如本文中使用的,术语“或”指的是非排他的或(即,和/或),除非另行指出(例如,“否则”或“或在替代方案中”)。额外地,本文中描述的各种实施例不一定是相互排斥的,并且可以进行组合以产生包含本文中描述的原理的额外实施例。

图1图示了用于提供设备侧监测和报告的网络环境100的范例。网络环境100可以至少部分地被部署在医院场所、家庭监测场所或网络环境100内的至少一个应用(不管是本质上临床的/医学的还是其他情况)将会受益于高可靠性无线通信的其他位置上。例如,网络环境100图示了无线患者监测应用的具体实施例。因此,环境100包括用于监测各个患者的生理参数(例如,心率、血压、脉搏氧饱和度等)并且将该信息报告回到聚集控制中心服务器140的一个或多个无线患者监测器110a、b、c,在聚集控制中心服务器处临床医师、护理人员或其他人员可以监测每个患者并且视情况而定来采取动作。

如所示的,无线患者监测器110a包括天线111、网络接口112、以及协议栈113以用于使得无线患者监测器110a能够向一个或多个无线接入点120a、b、c无线地发送信息。网络接口112可以包括用于经由天线在选定频率(或其范围)上发送和接收数字信息的各种硬件。协议栈113可以包括用于控制网络接口112(包括提供用于发送的信息和解读所接收的信息)的各种软件(在诸如处理器的硬件上运行)。虽然要被发送的一些这样的信息可以是从无线患者监测器110a的其他部件114-116接收的“有效载荷”信息,但是其他这样的信息可以包括诸如标题和成帧数据的“协议开销”。因此,协议栈113可以实施用于在无线介质上进行通信的各种标准协议。例如,在一些实施例中,协议栈113可以实施ieee802.11、互联网协议(ip)、传输控制协议(tcp)、和/或用户数据报协议(udp)中的一个或多个版本。在实施ieee802.11(或其他协议)中,协议栈113可以包括用于执行各种功能的软件,各种功能诸如接入点120a、b、c发现、认证、加密、信道选择和其到网络接口112的通信等。协议栈113还可以包括用于(例如,通过控制网络接口112)跟踪网络统计的各种软件工具,网络统计诸如信号强度、接入点延迟、所尝试的再试的次数、失败的传输的次数、操作信道(或频率)等。为了支持这些功能(例如,通过保持对发现的ap和其统计的跟踪),协议栈113可以维持用于存储或组织该信息的漫游表。虽然术语“漫游表”在本文中使用,但是漫游表实际上可以不被组织为表并且可以采取一个或多个其他数据结构的形式。因此,如本文中使用的,术语“漫游表”将会被理解为指的是通过关于无线接入点的协议栈保持的任何数据集。

如所示的,无线患者监测器110a还包括用于监测关于患者的各种信息并将其报告给另一设备(诸如聚集控制中心140)的患者监测软件114和患者监测硬件115。例如,在无线患者监测器适于报告患者的心率的情况下,患者监测硬件115可以包括将光投射在患者的皮肤上的led和用于基于反射的来自led的光来生成信号的光电二极管。该信号然后可以被患者监测硬件115(例如被一个或多个专用集成电路)或被患者监测软件114进一步处理,以导出光体积描记(ppg)信号,脉搏可以从该信号提取。患者监测软件114然后可以连续地、周期性地、根据需要、响应于脉搏超过阈值或在其他时间通过将具有目的设备的标识的信息传递到协议栈113来向聚集控制中心140发送脉搏值。将理解,这仅仅是如何获得脉搏的一个范例,并且脉搏仅仅是可以在网络环境中进行通信的患者参数的一个范例。各种额外的或备选的患者监测硬件115或患者监测软件114将是显而易见的。在一些实施例中,要被收集或通信的信息甚至可以在本质上不是临床的/医学的。在一些实施例中,患者监测部件114、115可以由在依赖于经由网络接口112提供的无线连接的另一应用内提供或操作的其他部件代替。

无线患者监测器110a包括网络监测器116,其可以包括适于执行对无线患者监测器110a可用的(一个或多个)无线连接的高层(例如,应用层)监测的软件或硬件。例如,在一些实施例中,虽然协议栈113可以执行连接的一些管理以选择适当的连接,但是这种方法不能完全适合于一些应用(例如,需要高网络可用性的应用)。因此,网络监测器116可以与协议栈113通信以收集关于发现的接入点的信息,执行一个或多个测试以生成额外的网络统计信息或得出关于网络的适合性的结论,并且经由协议栈113将诸如“连接性报告”的发现发送到基础设施监测器150。这样的测试和结论的各种范例将在下面更详细地进行描述。如将意识到的,虽然一个无线患者监测器110a可以能够仅收集关于整个环境100的有限信息(例如,关于监测器110a的范围内的那些接入点120a、b、c的信息),但是遍及环境100执行相同或类似的客户端侧监测的多个无线患者监测器110b可以能够以分布式方式收集网络的更完整画面。

接入点120a、b、c可以是根据通过协议栈113实施的无线协议进行通信的一个或多个接入点,由此提供到更宽网络130的无线访问。网络130可以包括用于通信数据的任何网络(或其部分),诸如(例如,医院或云计算环境的)局域网络、载波网络或互联网。聚集控制中心140和基础设施监测器150因此均可以位于具有患者监测器110a、b、c的场所上(例如,在护士站处或在医院的it办公室中)或在远离其的场所(诸如单独的服务位置、家庭监测控制中心或云计算数据中心)处。聚集控制中心140和基础设施监测器150因此可以以各种方式实施(诸如在服务器、刀片、或运行在云计算架构中的硬件上的虚拟机上)。

基础设施监测器150可以从一个或多个无线患者监测器110a收集连接性报告,并且基于其来执行各种网络监测功能性。例如,在一些实施例中,基础设施监测器可以识别医院或其他位置的遭受低或无连接性的过载的接入点120a、b、c或区域。在一些实施例中,基础设施监测器150可以实施或(例如,向网络管理员)推荐对网络的改变,诸如改变一个或多个接入点120a、b、c的操作信道以解决由监测器110a、b、c报告的干扰。因此,在各种实施例中,接入点120a、b、c可以是可由例如软件定义的网络连接(sdn)控制器远程地配置的。在一些实施例中,基础设施监测器150可以实施或与sdn控制器通信以实现这样的改变。在一些实施例中,接入点120a、b、c和基础设施监测器150可以属于闭合或专有系统,其中专有协议用于基础设施监测器150配置ap120a、b、c的各种方面。在基础设施监测器150为人类网络管理员提供报告接口的一些实施例中,基础设施监测器150可以分析连接性报告以确定是否应当向管理员引发任何警报。

图2图示了用于实施患者监测器设备(例如图1的患者监测设备110a、b、c,包括元件261-270中的一个或多个)或基础设施监测器服务器(例如,图1的基础设施监测服务器150,包括元件271-278中的一个或多个)的硬件系统200的范例。如所示的,设备200包括经由一个或多个系统总线210相互连接的处理器220、存储器230、用户接口240、网络接口250和存储设备260。将理解,在一些方面中,图2构成了抽象概念,并且设备200的部件的实际组织会比所图示的更复杂。另外,虽然该范例将各种特征描述为通过智能设备来实施并且其他通过服务器来实施,但是将理解,这仅仅是范例实施例。如上面提及的,各种功能可以以许多不同布置被分布一个或多个设备之中;为了实现这样的备选布置对软件和存储设备260内容的修改将是显而易见的。

处理器220可以是能够执行存储器230或存储设备260中存储的指令或以其他方式处理数据的任何硬件设备。因此,处理器可以包括微处理器、现场可编程门阵列(fpga)、专用集成电路(asic)、或其他类似的设备。将显而易见的是,在处理器包括将本文中描述的功能中的一个或多个实施在硬件中的一个或多个asic(或其他处理设备)的实施例中,在其他实施例中被描述为对应于这样的功能性的软件可以被省略。

存储器230可以包括各种存储器,例如l1、l2或l3高速缓冲存储器、或系统存储器。因此,存储器230可以包括静态随机存取存储器(sram)、动态ram(dram)、闪速存储器、只读存储器(rom)、或其他类似的存储器设备。

用户接口240可以包括用于实现与用户(诸如管理员)通信的一个或多个设备。例如,用户接口240可以包括显示器、鼠标、触摸屏、或用于接收用户命令的键盘。在一些实施例中,用户接口240可以包括可以经由通信接口250被呈现给远程终端的命令行接口或图形用户接口。在一些实施例中,诸如硬件200实施无线患者监测器的那些,用户接口240包括用于监测患者的一个或多个生理参数的一个或多个传感器或其他硬件。例如,用户接口可以包括加速度计、led、光电二极管、温度传感器、或对监测患者生理参数有用的其他硬件。

通信接口250可以包括用于实现与其他硬件设备通信的一个或多个设备。例如,通信接口250可以包括被配置为与其他设备通信的有线或无线网络接口卡(nic)。额外地或备选地,通信接口250可以包括用于与附近设备通信的硬件,诸如用于根据nfc、蓝牙、wi-fi或其他本地无线或有线协议进行通信的硬件。用于通信接口250的各种备选的或额外的硬件或配置将是显而易见的。

存储设备260可以包括一个或多个机器可读存储介质,诸如只读存储器(rom)、随机存取存储器(ram)、磁盘存储介质、光学存储介质、闪速存储器设备、或类似的存储介质。在各种实施例中,存储设备260可以存储用于由处理器220执行的指令或处理器220可以对其进行操作的数据。

例如,在硬件200实施患者监测设备的情况下,存储设备可以包括用于协调设备200的基本功能性的操作系统261和用于使得能够根据一个或多个协议经由通信接口250进行通信的协议栈262。例如,栈262可以实施用于通信的tcp/ip/wifi栈。在一些实施例中,栈262可以被实施为操作系统261的一部分。在一些实施例中,栈262包括用于收集关于发现的接入点的信息的漫游表263和用于测试接入点或其他网络硬件的状态的一个或多个网络统计工具。存储设备160还可以包括用于在用户接口240中解读由传感器提供的信息并且经由协议栈262报告给聚集控制中心的患者监测软件265。

存储设备260还包括与协议栈262分开的网络监测器软件266,以执行客户端侧监测并且发送用于由基础设施监测器使用的连接性报告。因此,网络监测器软件可以包括用于识别哪些已知ap被认为对设备的操作(例如,对患者监测软件265的操作)是关键的关键ap识别指令267、用于从设备200的视角执行网络的各种测试的一组或多组设备侧测试指令、以及用于经由协议栈262将连接性报告发送到基础设施监测器的报告指令269。为了方便这些指令,网络监测器软件266可以包括用于跟踪与已知ap相关的信息的已知ap列表270。已知ap列表中的这样的信息可以包括漫游表263中的信息,而且可以包括额外的信息,诸如被关键ap识别指令267或设备侧测试指令268辨别的信息。

在硬件200实施基础设施监测器的情况下,存储设备260可以包括用于协调设备200的基本功能性的操作系统271。此外,患者监测器列表272可以存储患者监测器的指示,例如在push或pull方法中连接性报告274可以经由报告收集指令273从所述患者监测器接收。报告分析指令275可以通过导出额外的统计并且为网络管理员生成可视化来分析所接收的报告274。如果任何警报阈值277被超过(例如,用于任何单个设备的通信链接的最小可接受停机时间、连接到单个ap的设备的最大数量、关键ap的信号强度降至最小阈值之下等),根据警报指令276向一个或多个警报联系人278(例如,网络管理员)推送警报(例如,经由文本、电子邮件或联系人接下来访问的门户网站)。

将显而易见的是,被描述为被存储在存储设备260中的各种信息可以额外地或备选地被存储在存储器230中。在这方面,存储器230还可以被认为构成“存储设备”,并且存储设备260可以被认为构成“存储器”。各种其他布置将是显而易见的。另外,存储器230和存储设备260都可以被认为是“非瞬态机器可读介质”。如本文中使用的,术语“非瞬态”将被理解为不包括瞬态信号,但是包括所有形式的存储设备,包括易失性和非易失性存储器两者。

虽然主机设备200被示为包括每种所描述的部件中的一个,但是各种部件可以在各种实施例中进行复制。例如,处理器220可以包括多个微处理器,所述多个微处理器被配置为独立地执行本文中描述的方法,或被配置为执行本文中描述的方法的步骤或子例程使得多个处理器协作来实现本文中描述的功能性。另外,在设备200被实施在云计算系统中的情况下,各种硬件部件可以属于单独的物理系统。例如,处理器220可以包括第一服务器中的第一处理器和第二服务器中的第二处理器。

图3图示了用于执行设备侧监测和报告的方法300的范例。该方法可以通过被部署在网络环境内的设备(诸如图1的无线患者监测器110a、b、c中的一个或多个)来执行。该方法可以对应于图2的网络监测器软件266。将显而易见的是,该方法是用于根据本文中公开的原理执行监测和报告的方法的一个范例,并且备选方法可以被使用。例如,一些步骤可以以与所示出的不同的顺序、彼此并行地、作为单独方法的一部分被执行(例如,包括步骤315-330的用于测试的第一方法可以被周期性地执行,而包括步骤310和355的用于报告的第二方法可以在由基础设施监测器请求后执行。另外,备选的或额外的步骤可以被包括在其他实施例中。

在所示出的范例中,方法300在周期性基础上执行,并且因此,在步骤305中,方法300在周期性定时器的到期后开始。用于开始方法300(例如,从另一设备接收请求或从协议栈接收新信息)的其他触发器将是显而易见的。该方法前进到步骤310,在那里设备初始化连接性报告。例如,在一些实施例中,该方法可以创建新的数据结构或以其他方式将用于存储要被报告的关于接入点的一组信息的存储器分配给基础设施监测器。接下来,在步骤315中,设备针对它已经收集的信息查询其协议栈。例如,在各种实施例中,协议栈(或其个体层)可以实施用于请求和接收各种信息(诸如漫游表的内容(包括连接或链接统计))的应用程序接口(api)。在一些实施例中,步骤315可以包括指示协议栈(例如,经由api)使用被实施在其中的工具(例如网络统计工具264)执行一个或多个测试,并且返回结果以用于进一步分析。在一些实施例中,一条或多条期望的信息可以不可经由协议栈的api来访问,并且步骤315可以利用其他方法用于获得漫游表数据。例如,在一些实施例中,步骤315可以直接访问被分配给协议栈的存储器的一部分,并且基于协议栈的布置的布置的预定指示或通过执行识别信息的位置(例如,扫描漫游表的开始和结束的已知标记、搜索已知ap名称来定位表的一般区域、或应用训练的模型(例如,分类器或其他机器学习技术)以分析其存储器并指出网络统计的分析来读取信息。在一些实施例中,步骤315可以额外地包括基于新信息来更新已知ap列表。已知ap列表的范例将在下面参考图4更详细地进行描述,并且用于更新已知ap列表的方法的范例将在下面参考图5更详细地进行描述。

一旦漫游表被获得,该方法就前进到步骤320,在那里设备对漫游表中的ap执行一般基础设施测试。这样的测试可以包括利用与其他部件(例如,ap、诸如无线患者监测器的其他设备、或协议栈)通信的额外工具来分析关于漫游表中的ap的已经可用的信息,以获得不是漫游表中已经可用的额外信息。一般基础设施测试的各种范例将在下面参考图7-10更详细地进行描述。

在步骤325中,设备可以识别哪些已知ap被认为对由设备支持的应用的操作是“关键的”。例如,关键ap可以是设备花费大量时间连接到其或在没有其的情况下设备在至少一个访问区域中将不具有备选接入点的ap。用于识别关键ap的方法的范例将在下面参考图6更详细地进行描述。哪些ap被客户端设备认为是关键的信息对基础设施监测器考虑何时考虑网络的状态和对网络的可能改变可以是有用的。在步骤330中,更密集或否则额外的测试可以参考这样的关键ap(而非已知的所有ap)来执行以用于将额外信息包括在连接性报告中。这样的关键基础设施测试的范例将参考图11进行描述。

对仅应用于关键ap的图7-10的范例一般基础设施测试的各种修改和对应用于所有已知ap的图11的范例关键基础设施测试的修改将是显而易见的。另外,在一些实施例中,单个方法可以定义一般基础设施测试和关键基础设施测试两者(例如,一种方法可以将相比于其他ap不同的警报或其他阈值应用于关键ap)。在这样的实施例中,步骤320、330实际上可以是相同的步骤,其可以在步骤325中识别了关键ap之后发生。

在一些实施例中,一个或多个基础设施测试可以不在方法300之内被执行,并且代替地,可以作为单独的方法的一部分被执行(例如,一种方法在不同周期性基础上或当诸如连接性丢失的事件发生时响应于这样的事件而被执行)。在一些这样的实施例中,这样的其他方法可以将数据直接写入当前打开的连接性报告中,或者可以将由测试产生的数据存储在当步骤320或330被执行时它能够被获得并且被输入到连接性报告中的位置中。

在步骤335中,设备将连接性报告发送到一个或多个基础设施监测器。在一些实施例中,设备可以不在每个连接性报告被形成时发送每个连接性报告,并且代替地,可以聚集根据本文中描述的方法产生的多个报告并且例如根据基础设施监测设备的需要或在较慢的周期性基础上(例如,每小时或每天)发送它们。在一些实施例中,如果连接性报告在设备具有低或无连接性的时间被创建,则步骤335可以等待直至连接性被恢复才发送连接性报告。方法300然后可以前进以在步骤340中结束。

虽然用于将信息包括在连接性报告中的各种方法将在下面进行描述,但是将显而易见的是,各种额外的或备选的方法或信息可以用于构建连接性报告。例如,在一些实施例中,网络监测器可以包括来自连接性报告中的一个或多个802.11信标的数据。例如,每一个可见信标、用于被指定为关键的那些ap的信标、用于新连接的ap的信标、用于设备刚刚已经漫游到的ap的信标、设备已经被重新连接到的信标等可以(例如从协议栈)被收集,并且被插入到报告中。这样的信息可以包括支持的调制方案、支持的数据率、主动调控域、诸如信道利用率的ap负载信息、802.11n/ac/etc、能力(例如,支持的信道宽度、greenfield模式状态、短保护间隔支持、块ack特征、运输波束形成特征支持等)、或其他供应商特异性特征。作为另外的范例,连接性报告可以包括如下信息,诸如设备状态和统计、关于多个ap的信息以及应用连接状态。

图4图示了已知接入点(ap)列表400的范例。在各种实施例中,客户端设备的网络监测器部件可以建立并维持这样的已知ap列表400,以支持对网络的设备视图的分析和对连接性报告的创建。在一些实施例中,已知ap列表400可以对应于图270的已知ap列表270。已知ap列表400实际上可以任何数据结构,诸如数据库、表、阵列、链接列表等。如所示的,已知ap列表405-440包括多个字段;将显而易见的是,一些实施例可以使用额外的或备选的字段用于收集关于接入点的信息。

接入点名称字段405存储每个已知ap的识别符。例如,字段405可以存储在漫游表中发现的每个ap的bssid或mac地址。关键字段410可以存储指示ap是否已经被识别为针对已知ap列表400所属的设备的关键ap(例如,通过诸如在下面参考图5描述的范例的方法的操作)的指示(例如,布尔值)。连接持续时间字段415可以存储设备连接到接入点已经花费的持续时间。漫游表中的持续时间字段420可以存储ap已经存在于协议栈的漫游表中的持续时间。实例字段425可以跟踪在随后的查询后ap已经出现在协议栈的漫游表中的次数。持续时间和实例可以在设备的寿命内(即从未重置)、从设备激活、从设备分配给患者、在一段时间内(例如,每小时、天等重置)、在滚动基础上(例如,比小时或天更久的持续时间的部分可以从该值中减去)等进行跟踪。snr字段430可以存储与ap相关联的一个或多个信噪比值。例如,这样的值可以包括当前的或最近的snr;或所观察到的snr的平均值、中值、模式最小值或最大值。同样,这样的snr值可以应用于如在上面参考持续时间值描述的设备的寿命或其他时段。信道字段435可以存储ap在其上操作(或之前已经在其上操作)的信道的指示。如所提及的,ap列表400可以包括多个额外字段440。

在一些备选实施例中,ap列表400可以不包括发现的所有ap,并且代替地,仅发现的ap的子集可以被列出并且被跟踪。例如,在一些实施例中,ap列表400可以包括预定数量的条目,并且每当在协议栈的漫游表中发现新的ap时,最老ap、具有最短连接持续时间的ap、随机的非关键ap或其他ap的记录可以被识别以用于从ap列表400中移除。

作为范例,第一记录450描述了设备当前未连接到的关键接入点“a”。apa已经在漫游表中被看见432次,并且已经始终在漫游表中被看见总共2小时21分钟。apa具有60的snr,指示相对强的信号。apa当前也在信道1上进行操作。

作为另一范例,第二记录455描述了设备已经连接到其总共1小时14分钟的另一关键ap“b”。apb已经在漫游表中被看见2380次,并且已经始终在漫游表中总共1小时19分钟。apb具有32的snr,并且当前正在信道7上进行操作,而且过去已经在信道1和6上被观察到。

第三记录460描述了尚未被认为对本设备是关键的ap“c”。将认识到,在环境中包括多个类似设备的部署中,另一设备(例如,另一患者监测器设备)可以认为apc对它自己的操作是关键的,例如,由于apc被这样的其他设备大量使用。然而,对于ap列表400所属的设备,设备当前未连接到apc。apc仅仅已经在漫游表中被看见50次,但是当前不在漫游表中。对于apc,snr为0(可能指示apc当前在范围之外)。apc也被示为在信道7上进行操作。考虑到前述描述,其余范例记录465、470、475的含义应当是显而易见的。

图5图示了用于更新已知ap列表(诸如图2的已知ap列表270或图4的已知ap列表400)的方法500的范例。方法500可以通过客户端设备的网络监测器(诸如图1的网络监测器116)来执行,并且可以对应于图2的网络监测器软件266。方法500可以在各种时间(独立地或作为图3的步骤315的一部分)被执行,诸如周期性地(例如,每一分钟或每5分钟)、根据另一设备(诸如基础设施监测器)的需要、或在来自协议栈的漫游表已经被更新的指示后被执行。

方法500在步骤505中开始,并且前进到步骤515,在那里网络监测器通过首先从协议栈的漫游表接收漫游表条目来开始更新在已知ap列表中反映的ap。例如,在一些实施例中,网络监测器可以在每个条目基础上访问漫游表(例如,经由api或凭借通过识别存储器空间中的每个相继记录来直接访问协议栈的存储器空间)。作为另一范例,在一些实施例中,网络监测器可以创建它自己的漫游表副本,并且迭代通过副本的条目。例如,在协议栈的api仅能够在请求时提供完整漫游表而非个体请求的条目的情况下这种方法可以是有用的。接下来,在步骤515中,网络监测器确定已知ap列表是否已经包括对应于在当前漫游表条目中列出的ap的条目。例如,步骤515可以包括将漫游表条目的ap名称与已知ap列表中的每个ap名称进行比较。如果不存在匹配,则方法500前进到步骤520,在那里网络监测器将针对新ap的新条目添加到已知ap列表中。在已知ap列表具有固定长度的实施例中,步骤520还可以包括从已知ap列表中移除老条目(例如,最老或最不活动的条目),以为新ap条目让出空间。在步骤525中,网络监测器确定当前漫游表条目是否是协议栈的漫游表中的最后一个。如果不是的话,则方法500循环回到步骤510以处理额外的漫游表条目。

一旦已知ap列表中的ap基于整个漫游表被更新,方法500就前进到步骤530,在那里网络监测器通过首先从列表中选择要分析的ap来开始更新针对已知ap的统计。在步骤535中,网络监测器确定当前ap是否存在于漫游表中(例如,经由api、直接访问存储器等)。如果不是的话,在步骤540、575中,网络监测器重置漫游表持续时间和连接持续时间值(其可以分别对应于图4中的字段420、415)。如果ap当前在漫游表中,则方法500代替地从步骤535前进到步骤545,在那里针对ap的漫游表实例(其可以对应于图4中的字段425)被递增。在步骤550中,网络监测器增加针对当前ap的漫游表持续时间。例如,在各种实施例中,网络监测器可以跟踪在方法500的随后执行之间逝去的时间,并且将自上一次执行以后的时间添加到ap条目中的当前漫游表持续时间值。作为另一范例,在一些实施例中,诸如方法500在周期性基础上执行的那些,网络监测器可以将预定值添加到漫游表持续时间(例如,等价于方法500的执行的时段的值)。在步骤552中,网络设备利用由协议栈报告的当前snr(其可以对应于图3的字段430)更新针对当前ap的ap列表条目。

在步骤555中,网络监测器通过将当前信道与之前记录的信道进行比较来确定ap的信道自ap上一次出现在漫游表中以后是否已经改变。如果是的话,则网络监测器在步骤560中将ap的新信道记录在ap列表中,并且在当前在构建中的连接性报告中记录信道改变的指示,或当下一个连接性报告被生成时记录用于包括在连接性报告中的指示(例如,在方法500不作为方法300的一部分执行的一些实施例中)。

接下来,在步骤570中,网络监测器确定协议栈和网络接口当前是否连接到当前ap。该信息可以被存储在漫游表中,或否则可从协议栈访问(例如,经由api)。如果设备未连接到当前ap,则方法600前进到步骤575。如果另一方面,设备连接到当前ap,那么网络监测器增加当前ap条目的连接持续时间(例如,通过在上面参考步骤550描述的相同值之一)。在步骤585中,网络监测器确定当前ap是否是已知ap列表中的最后一个ap。如果不是的话,该方法循环回到步骤530以处理列表中的其余ap。一旦已知ap列表中的所有ap都已经被更新,方法500就前进以在步骤590中结束。

如在上面参考图4提及的,各种备选的或额外的字段可以被包括在ap列表中。为了支持这样的额外字段对方法500的各种修改(例如,额外的、修改的或省略的步骤)将是显而易见的。

图6图示了用于识别关键ap的方法600的范例。方法600可以通过客户端设备的网络监测器(诸如图1的网络监测器116)来执行,并且可以对应于图2的关键ap识别指令267。方法600可以在各种时间(例如,独立地或作为图3的步骤325的一部分)被执行,诸如周期性地(例如,每一分钟或每5分钟)、根据另一设备(诸如基础设施监测器)的需要、或在来自协议栈的漫游表已经被更新的指示后。

方法600在步骤605中开始,并且前进到步骤610,在那里网络设备从已知ap列表(例如,已知ap列表270或400)读取ap的条目以用于考虑。在步骤615中,网络监测器确定条目中存储的连接持续时间是否超过第一连接持续时间阈值t1。第一连接持续时间阈值t1(和本文中描述的其他阈值)可以被预先确定或可以是可配置的(例如,基础设施监测器可以指示环境内的每个网络监测器利用具体的阈值)。作为范例,t1可以被设置为1小时的值。如果阈值被超过,则方法600前进到步骤670,在那里针对当前ap的ap列表条目被标记为关键的(例如,在对应于图4的字段410的字段中)。否则,方法600前进以测试用于判断ap关键性的其他度量。

在步骤620中,网络监测器确定针对ap的漫游表持续时间是否超过第一漫游表持续时间阈值t2(例如,4小时)。如果是的话,则方法600前进到步骤670。否则,在步骤625中,网络监测器确定ap的漫游表出现计数是否超过第一漫游表出现阈值(例如,1000)。如果是的话,则该方法前进到步骤670。否则,方法600前进到步骤630。因此,被方法600考虑的三个统计中的任一个可以单独地是足够高的(通过超过适当的阈值t1、t2或t3),以认为ap是关键的。

根据该范例实施例,即使没有单个值是足够高的,一起获取的值仍然可以证明关键指定合理。在步骤630中,网络监测器将分数值初始化为0。然后,在步骤635中,网络监测器确定连接持续时间是否超过第二连接持续时间阈值t4,其可以小于第一连接持续时间阈值t1。例如,t4可以是10分钟,而t1可以是1小时。如果是的话,则连接持续时间权重w1(例如,40)可以被添加到分数。如所示的,权重可以是常数,但是在其他实施例中,被添加到分数的量可以取决于连接持续时间值(例如,量可以与连接持续时间或连接持续时间超过阈值t4的部分成比例)。

接下来,在步骤645中,网络监测器确定漫游表持续时间是否超过第二漫游表持续时间阈值t5,其可以小于第一漫游表持续时间阈值t2。例如,t5可以是1小时,而t2可以是4小时。如果是的话,则漫游表持续时间权重w2(例如,20)可以被添加到分数。如所示的,权重可以是常数,但是在其他实施例中,被添加到分数的量可以取决于漫游表持续时间值(例如,量可以与漫游表持续时间或漫游表持续时间超过阈值t5的部分成比例)。在步骤655中,网络监测器确定漫游表出现值是否超过第二漫游表出现阈值t6,其可以小于第一漫游表出现阈值t6。例如,t5可以是500个实例,而t2可以是1000个实例。如果是的话,则漫游表出现权重w3(例如,20)可以被添加到分数。如所示的,权重可以是常数,但是在其他实施例中,被添加到分数的量可以取决于漫游表出现值(例如,量可以与漫游表出现或漫游表出现超过阈值t6的部分成比例)。

一旦分数已经被计算,网络监测器就确定分数是否超过分数阈值t7,使得ap可以被指定为关键的。例如,t7可以被设置为50(指示连接持续时间和漫游表持续时间或漫游表出现必须示出关键性)或70(指示所有三个度量都必须示出关键性)的值。如果t7被超过,则该方法前进到步骤670并且然后前进到步骤675。否则,该方法直接前进到步骤675,在那里网络监测器确定是否依然存在额外的ap用于关键性评价。如果当前ap不是列表中的最后一个,则方法600循环回到步骤610以分析已知ap列表中的其余ap。否则,该方法前进以在步骤680中结束。

如在该范例中描述的,ap可以仅基于连接持续时间、漫游表持续时间或漫游表出现、或基于其组合而评定为关键ap。将ap标记为关键的各种备选的统计和方法将是显而易见的。例如,在一些实施例中,步骤330-365可以被省略,或步骤315-325中的一个或多个可以被省略。各种其他修改将是显而易见的。

图7图示了用于测试共信道和相邻信道干扰的方法700的范例。方法700可以通过客户端设备的网络监测器(诸如图1的网络监测器116)来执行,并且可以对应于图2的一组或多组设备侧测试指令268。方法700可以在各种时间(例如,独立地或作为方法300的一部分)被执行,诸如周期性地(例如,每一分钟或每5分钟)、根据另一设备(诸如基础设施监测器)的需要、或在来自协议栈的漫游表已经被更新的指示后。

方法700在步骤705中开始,并且前进到步骤710,在那里网络监测器从已知ap列表(例如,已知ap列表270或400)读取ap的条目以用于考虑。在步骤715中,网络监测器确定与当前ap相关联的信道(例如,通过从检索的ap条目读取信道)。在步骤720中,网络监测器针对当前在相同信道或相邻信道(例如,相距一个信道、相距两个信道等)上的任何其他ap搜索漫游表(或在一些实施例中已知ap列表,诸如具有不受限制的或否则全面的已知ap列表的那些)。在步骤725中,网络设备确定在步骤720中是否识别到任何额外的ap。如果不是的话,则网络设备可以确定对于当前ap不存在共信道或相邻信道干扰的危险,并且方法700可以前进到步骤780。否则,如果至少一个其他ap被识别到,则方法700前进到步骤730。为了考虑自漫游表/已知ap列表上一次被更新以后的可能的信道改变,网络监测器可以探查该信道或一组相邻信道(例如,通过经由api指示协议栈这样做)来确定任何ap当前在信道上是否是可见的。在步骤735中,网络监测器确定步骤730中的信道探查是否已经披露了对象ap或所有识别到的其他ap不再是可见的,方法700前进到步骤780。否则,网络监测器已经识别到干扰的可能性,并且前进以分析要前进到步骤745的问题的幅值。

在步骤745中,网络设备确定对象ap的信号水平(例如,snr值)是否足够强以用于要应用的当前测试。具体地,如果对象ap在远处并且不管干扰如何都具有低信号,那么干扰可以被容忍使得环境内的网络ap的布置和配置不被过度限制。因此,在步骤745中,网络监测器确定对象ap信号水平是否超过主信号水平阈值mslt(例如,30db)。如果不是的话,那么方法700可以前进到步骤780。否则,网络前进以在步骤750中利用每个识别到的其他ap分析干扰的危险。

网络监测器在步骤750中检索识别到的其他ap中的一个,并且在步骤755中确定其他ap的信号水平。在步骤760中,网络设备计算两个信号水平之差。例如,网络设备可以从对象ap信号水平简单地减去另一个ap信号水平。在一些实施例中,该步骤可以考虑信道之间的距离。例如,当两个ap在间隔开1个信道的信道上时,值(例如,10或20)可以被添加到该差。用于考虑信道分开的其他方法将是显而易见的。在步骤765中,网络监测器确定所计算的差是否在信号水平差阈值sldt(例如,20db)之下,由此指示信道干扰的可认识到的可能性或影响。在一些实施例中,不同的阈值可以针对共信道和相邻信道(或针对每个可能的信道距离)干扰测试进行设置。如果差足够大到超过阈值,则网络监测器可以确定该对ap不造成足够的干扰风险,并且该方法可以向前跳到步骤775。否则,网络监测器将可能的信道冲突的指示添加到连接性报告(例如,到当前在构建中的连接性报告或到存储器中的要被将在未来构建连接性报告的另一过程评价的地点)。

在步骤775中,网络监测器确定是否依然存在(如在步骤720中识别到的)任何其他ap以用于连同当前对象ap一起考虑。如果当前的其他ap不是最后一个要被考虑的,则方法700可以循环回到步骤750。否则,该方法前进到步骤780,在那里网络监测器确定是否依然存在要作为对象ap被分析的任何额外的已知ap。如果当前的对象ap不是已知ap列表中的最后一个,则方法700循环回到步骤710。否则,该方法前进以在步骤785中结束。

图8图示了用于针对低覆盖进行测试的方法800的范例。例如,在正用于连接性的ap具有相对低的信号水平的情况下或在所有可见的ap都具有相对低的信号水平的情况下,低覆盖可以存在。如所示的,方法800可以针对两种可能性进行测试,但是对仅针对这些中的一个的测试的各种修改将是显而易见的。方法800可以通过客户端设备的网络监测器(诸如图1的网络监测器116)来执行,并且可以对应于图2的一组或多组设备侧测试指令268。方法800可以在各种时间(例如,独立地或作为方法300的一部分)被执行,诸如周期性地(例如,每一分钟或每5分钟)、根据另一设备(诸如基础设施监测器)的需要、或在来自协议栈的漫游表已经被更新的指示后。

方法800在步骤805中开始,并且前进到步骤810,在那里网络监测器从已知ap检索针对当前连接的ap的条目。接下来,在步骤815中,网络监测器从检索到的条目读取针对连接的ap的信号水平。在步骤820中,网络监测器确定连接的ap是否具有低信号水平,例如,通过将连接的ap信号水平与“针对连接的ap的低连接性测试阈值”(lct_c_t)(例如,-70dbm)进行比较。如果信号水平不低,那么网络监测器将在方法800的相继执行内跟踪的“针对连接的ap的低连接性测试持续时间”(lct_c持续时间)重置为零。换言之,如果信号水平在阈值之上,则连接的ap被标记为到方法800的当前执行时为止已经在低连接性状态下花费0相继秒。该方法然后前进以分析在步骤845中未连接的ap。

如果另一方面,网络监测器在步骤820中确定连接的ap当前不具有低信号强度,则方法800前进到步骤830,在那里网络监测器基于自方法800的上一次执行以后的时间来增加跟踪的lct_c持续时间(例如,在已知方法800在周期性基础上执行的情况下增加固定时间或增加跟踪自上一次执行以后的时间的跟踪的变量)。在步骤835中,网络监测器确定连接的ap是否已经具有低信号足够长的时间以证明引发标志合理。该步骤可以被执行,例如,以确保信号强度的短暂或瞬时下降不引发虚假警报。在一些实施例中,步骤835可以被完全省略。如果低连接性的持续时间降至“低连接性测试连接持续时间阈值”(lct_cdur_t)(例如,10分钟)之下,那么网络监测器可以将描述发现的低连接性条目添加到当前连接性报告(例如,到在构建中的连接性报告或到存储器中的它能够被将在未来构建连接性条目的另一过程读取的位置)。否则,方法800跳过步骤840(如果lct_c持续时间最终超过lct_cdur_t,则其可以方法800的未来执行时被执行)。

网络监测器然后通过在步骤845中将跟踪布尔变量alllow初始化为真来开始分析未连接的ap。接下来,在步骤850中,网络监测器从已知ap列表检索对应于在范围内(例如,与非零信号水平相关联,具有非零漫游表持续时间,或当前存在于漫游表中)的ap的记录。在步骤855中,网络监测器从检索到的条目读取针对当前ap的信号水平。在步骤860中,网络监测器确定连接的ap是否具有低信号水平,例如,通过将连接的ap信号水平与“针对未连接的ap的低连接性测试阈值”(lct_nc_t)(例如,-75dbm)进行比较。在一些实施例中,lct_nc_t和lct_c_t可以是相同的阈值。如果信号水平不低,那么网络监测器将在方法800的相继执行内跟踪的针对当前ap的“针对未连接的ap的低连接性测试持续时间”(lct_nc持续时间)重置为零。换言之,如果信号水平在阈值之上,则当前ap被标记为到方法800的当前执行时为止已经在低连接性状态下花费0相继秒。网络监测器然后在步骤880中将alllow变量设置为假,指示至少一个未连接的ap被认为在方法800的当前执行中不具有低信号。

如果另一方面,网络监测器在步骤860中确定连接的ap当前不具有低信号强度,则方法800前进到步骤870,在那里网络监测器基于自方法800的上一次执行以后的时间来增加跟踪的lct_nc持续时间(例如,在已知方法800在周期性基础上执行的情况下增加固定时间或增加跟踪自上一次执行以后的时间的跟踪的变量)。在步骤885中,网络监测器确定当前ap是否已经具有低信号足够长的时间以证明引发标志合理(如果其他未连接的范围内的ap类似地证明标志合理的话)。该步骤可以被执行,例如,以确保信号强度的短暂或瞬时下降不引发虚假警报。在一些实施例中,步骤875可以被完全省略。如果低连接性的持续时间降至“低连接性测试未连接持续时间阈值”(lct_ncdur_t)(例如,5分钟)之下,那么该方法可以前进到步骤885(使alllow设置为真);否则,方法800可以前进到步骤880。在一些实施例中,lct_ncdur_t和lct_cdur_t可以是相同的阈值。

在步骤885中,网络监测器确定是否依然存在额外的未连接的范围内的ap以用于考虑。如果当前ap不是最后一个范围内但未连接的ap,则方法800循环回到步骤850。否则,方法800前进到步骤890,在那里网络监测器确定跟踪变量alllow是否已经在方法800的执行期间保持真。如果是的话,那么网络监测器可以已经确定所有范围内的未连接的ap已经在低信号强度状态下足够长的时间以引发标志。网络监测器可以在步骤895中将描述发现的低连接性条目添加到当前连接性报告(例如,到在构建中的连接性报告或到存储器中的它能够被将在未来构建连接性条目的另一过程读取的位置)。方法800然后前进以在步骤899中结束。

图9图示了用于跟踪覆盖外实例的方法900的范例。例如,在设备进入ap(或设备被配置为连接到的ap)不可见的区域的情况下,覆盖外事件可以存在。方法900可以通过客户端设备的网络监测器(诸如图1的网络监测器116)来执行,并且可以对应于图2的一组或多组设备侧测试指令268。方法900可以在各种时间(例如,独立地或作为方法300的一部分)被执行,诸如周期性地(例如,每一分钟或每5分钟)、根据另一设备(诸如基础设施监测器)的需要、或在来自协议栈的漫游表已经被更新的指示后。

方法900在步骤905中开始,并且前进到步骤910,在那里网络监测器确定设备当前是否连接到ap(例如,通过查询漫游表或检查已知ap列表是否有具有非零连接持续时间的ap)。如果设备当前未连接到ap,那么范围外事件可能存在,并且方法900可以前进到步骤915,在那里网络监测器确定漫游表当前是否是空的(或,在一些实施例中,仅包括设备不能连接到的ap)。如果漫游表是空的,则网络监测器可以确定范围外事件在进行中。在这样的情况下,方法900前进到步骤920,在那里网络监测器确定用于测量范围外事件的长度的定时器是否已经被启动。如果不是的话,则网络监测器在步骤925中启动新的定时器,其将在方法900的相继执行内继续运行直至被另一步骤(例如,步骤930)的操作停止。

如果另一方面,在步骤915中网络监测器确定漫游表不是空的,则方法900代替地前进到步骤930,在那里网络监测器停止定时器(因为一旦漫游表被重新填充,任何现有的范围外事件就可以结束)。在步骤935中,网络监测器通过将由定时器从开始到停止所跟踪的持续时间与范围外阈值(ooc)(例如,5分钟)进行比较来确定事件是否持续足够长以保证引发标志。如果事件持续足够长,则网络监测器可以在步骤940中准备用于包括在连接性报告中的范围外条目。该条目可以包括各种信息,诸如范围外事件的持续时间或在事件期间设备的gps坐标。网络监测器可以不在该步骤中将条目直接添加到连接性报告,因为可能(还)不存在通过其发送连接性报告的任何连接。在其他实施例中,网络监测器可以将信息直接添加到在构建中的连接性报告,以被保持直至它能够被发送。

一旦设备再次连接到ap,方法900就从步骤910前进到步骤945,在那里网络监测器确定一个或多个范围外条目是否已经被构建(例如,通过在方法900的之前执行时执行步骤940)。如果是的话,则在步骤950中,条目(或多个条目)被添加到连接性报告。方法900然后前进以在步骤955中结束。

对方法900各种修改将是显而易见的。例如,在一些实施例中,方法900可以不假设它将在漫游表被重新填充的时间与设备再次连接到ap的时间之间执行至少一次。在这样的实施例中,步骤930-940可以在被复制时移动到当步骤910确定设备连接到ap时被访问的方法900的分支。

图10图示了用于针对低信噪比(snr)进行测试的方法1000的范例。方法1000可以通过客户端设备的网络监测器(诸如图1的网络监测器116)来执行,并且可以对应于图2的一组或多组设备侧测试指令268。方法1000可以在各种时间(例如,独立地或作为方法300的一部分)被执行,诸如周期性地(例如,每一分钟或每5分钟)、根据另一设备(诸如基础设施监测器)的需要、或在来自协议栈的漫游表已经被更新的指示后。如所示的,方法1000可以针对关键ap与它针对非关键ap如何表现不同地表现;因此,方法1000可以构成一般基础设施测试和关键基础设施测试两者。对本文中描述的针对非关键和关键ap表现出不同行为的其他方法的各种修改将是显而易见的。

方法1000在步骤1005中开始,并且前进到步骤1010,在那里网络监测器从已知ap列表检索ap以用于对其信号强度的分析。在步骤1015中,网络监测器确定ap当前是否在范围内(例如,通过确定snr值是否存在或非零,持续时间是否非零,或ap当前是否在漫游表中)。如果ap不在范围内,那么信号强度测试可以不被应用到ap,并且方法1000可以向前跳到步骤1050。

一旦网络监测器发现在范围内的ap,方法1000就前进到步骤1020,在那里网络监测器读取针对已知ap列表中的ap标记的snr(或来自漫游表或请求新的探查),并且在步骤1025中确定ap是否是关键ap(例如,通过从已知ap列表中的当前ap的条目读取这样的指示)。如果当前ap是关键ap,则网络监测器确定snr是否降至针对关键ap设置的阈值(critsnrt)(例如,40)之下。如果snr低于关键阈值,那么在步骤1035中网络监测器将描述低snr状态的信息添加到连接性报告(例如,直接添加到在构建中的连接性报告中或直接添加到存储器中的连接性报告下一次被创建时将被读取的区域)。

如果另一方面,当前ap不是关键的,则跟随有类似的过程,但是基于大致可应用的snr阈值(gensnrt)(例如,30)。关键阈值可以被设置得高于一般阈值,因为例如相较于其他已知ap,它可以被认为对于关键ap具有高信号强度是更重要的,并且因此用于报告信号强度的下降的门槛可以被设置得更高。如果在步骤1040中,确定snr降至gensnrt之下,那么在步骤1045中网络监测器将描述低snr状态的信息添加到连接性报告(例如,直接添加到在构建中的连接性报告中或直接添加到存储器中的连接性报告下一次被创建时将被读取的区域)。在步骤1050中,网络监测器确定当前ap是否是最后一个要被处理的。如果当前ap不是已知ap列表中的最后一个,则方法1000循环回到步骤1010,以处理列表中的其余ap。一旦整个已知ap列表已经被考虑,方法1000就前进以在步骤1055中结束。

图11图示了用于针对关键ap上的高客户端密度进行测试的方法1100的范例。方法1100可以通过客户端设备的网络监测器(诸如图1的网络监测器116)来执行,并且可以对应于图2的一组或多组设备侧测试指令268。方法1100可以在各种时间(例如,独立地或作为方法300的一部分)被执行,诸如周期性地(例如,每一分钟或每5分钟)、根据另一设备(诸如基础设施监测器)的需要、或在来自协议栈的漫游表已经被更新的指示后。如所示的,方法1100可以仅对关键ap执行测试。对本文中描述的仅应用于关键ap的其他方法的各种修改将是显而易见的。

方法1100在步骤1105中开始,并且前进到步骤1110,在那里网络监测器可以从已知ap列表(如果存在任何的话)检索第一关键ap。在步骤1115中,网络监测器可以读取连接到当前关键ap的客户端的当前计数。该信息可以是例如可从协议栈(例如,在漫游表、存储器的其他部分中、或经由请求对协议栈可用的一个或多个网络工具的使用)获得的。备选地,网络监测器可以向关键ap发送消息以直接询问它该信息。作为又一备选方案,信息可以通过网络监测器软件本身从ap的信标或探查响应中包含的qos增强的基本服务集(qbss)信息元素(ie)进行挖掘。在步骤1120中,网络监测器通过将客户端计数与客户端计数阈值(cct)(例如,50个客户端)进行比较来确定针对关键ap的客户端计数是否是如此高以致于它保证报告给基础设施监测器(例如,由于ap的可能过载)。如果客户端计数是足够高的,则网络监测器将描述高客户端密度的信息添加到连接性报告(例如,根据之前描述的添加到连接性报告的方式中的一个或多个)。否则,方法1100向前跳到开始单独的利用率测试。

在步骤1130中,网络监测器读取与关键ap相关联的网络利用率。同样,这可以是例如可从协议栈(例如,在漫游表、存储器的其他部分中、或经由请求对协议栈可用的一个或多个网络工具的使用)获得的。备选地,网络监测器可以向关键ap发送消息以直接询问它该信息。在步骤1135中,网络监测器通过将利用率与利用率阈值(ut)(例如,90%)进行比较来确定针对关键ap的利用率是否是如此高以致于它保证报告给基础设施监测器(例如,由于ap的可能过载)。如果利用率是足够高的,则网络监测器将描述高客户端密度的信息添加到连接性报告(例如,根据之前描述的添加到连接性报告的方式中的一个或多个)。否则,方法1100向前跳到步骤1145。

在步骤1145中,网络设备确定是否依然存在额外的关键ap用于测试。如果当前关键ap不是已知ap列表中的最后一个,那么方法1100循环回到步骤1110以处理其余关键ap。否则,方法1100前进以在步骤1150中结束。

将指出的是,虽然本文中描述的各种实施例将多个测试分开在许多单独方法之中,但是其他实施例可以将这样的方法简缩到单个算法中。例如,在一些实施例中,步骤845-895和步骤1015-1045可以被插入到方法700中(例如紧挨着步骤710之后),以便利用已经由步骤710和780创建的循环。作为另一范例,在一些实施例中,步骤1115-1140可以被插入到方法600中(例如,在步骤670之后),以便在识别关键ap后立即执行关键ap特异性测试。本文中描述的方法的各种其他修改将是显而易见的。

图12图示了用于处理连接性报告以用于呈现给网络管理员的方法1200的范例。方法1200可以通过基础设施监测器(例如,图1的基础设施监测器150),并且可以对应于图2的报告收集指令273、报告分析指令275和警报指令276。方法1200可以周期性地(例如,每5分钟、每一小时等)、在接收到连接性报告后(例如在每个新连接性报告后,在接收到5个新连接性报告后,在从每个活动网络监测器接收到至少一个连接性报告后等)、或在一些其他基础上被执行。

方法1200在步骤1205中开始,并且前进到步骤1210,在那里基础设施监测器从部署在系统的客户端设备中的网络监测器接收一个或多个连接性报告。在步骤1215中,基础设施监测器导出额外的统计(例如,跨多个连接性报告可辨别的各种统计,诸如平均ap负载、被标记为关键的所有ap的列出、范围外事件的图、低连接性事件的时间线等),并且在步骤1220中,基础设施监测器呈现对连接性报告的一个或多个可视化(或生成其以用于在稍后的请求后呈现)。

基础设施监测器然后通过在步骤1225中将统计(不论是连接性报告中递送的还是从其导出的)与一个或多个预定义警报规则进行比较来开始确定是否应当引发任何警报。例如,规则可以规定如果被至少10个设备(例如,患者监测器)标记为关键的ap达到70%利用率则应当引发警报。下面的表1包括要基于连接性报告中报告的事件而被引发的多个警告规则的另一范例。

如果在步骤1230中,基础设施监测器确定警告规则中的一个或多个已经满足,那么在步骤1235中,基础设施监测器做出对网络管理员可用的那些警告的识别(例如,通过当被管理员访问时在管理者门户网站/网站的主页或警告页上呈递警告的列表)。基础设施监测器然后通过在步骤1240中确定从步骤1225产生的警告中的任一个是否是关键的来继续确定警告中的任一个是否值得向一个或多个网络管理员推送通知。警告可以例如基于被认为是关键的相关联的规则、基于特定的关键阈值或在规则(例如,规则可以包括正常阈值和关键阈值)内满足的其他关键准则、基于警报已经存在的持续时间、基于受影响的一个或多个关键ap等被认为是关键的。如果是的话,则基础设施监测器可以在步骤1245中向网络管理员发送警报(例如,文本消息、电子邮件、电话呼叫等)。方法1200可以前进以在步骤1250中结束。

根据前述内容,各种实施例实现并提供对无线网络基础设施的增强的监测以获得更鲁棒的可用性和性能。例如,通过使网络的客户端设备执行超过由标准协议执行的至少一些监测和报告的任务,总体监测能够被分布在多个(可能许多)设备之中,而非重复地探查网络以获悉网络状态的一个或几个中心设备之中。另外,通过提供识别关键节点的客户端设备,在这样的分布式系统中执行的冗余处理和报告的量能够被减少(以及获悉哪些ap本身被认为是关键的益处)。鉴于前述内容,各种额外的益处将是显而易见的。

从前面的描述应当明白,本发明的各种范例实施例可以在硬件或固件中实施。此外,各种示范性实施例可以被实施为存储在机器可读存储介质上的指令,所述指令可以由至少一个处理器读取和运行以执行本文中详细描述的操作。机器可读存储介质可以包括用于以可由机器读取的形式存储信息的任何机制,所述机器例如是个人或膝上型计算机、服务器或其他计算设备。因此,机器可读存储介质可以包括只读存储器(rom)、随机存取存储器(ram)、磁盘存储介质、光学存储介质、闪存设备和类似的存储介质。

本领域技术人员应当认识到,本文中的任何框图表示体现了本发明的原理的说明性电路的概念性视图。类似地,将认识到,任何流程图、流图、状态转移图、伪代码等表示实质上可以被表示在机器可读介质中并因此由计算机或处理器运行的各种过程,不论这样的计算机或处理器是否被明确示出。

尽管已经具体参考各种示范性实施例的某些示范性方面详细描述了各种示范性实施例,但是应当理解,本发明能够具有其他实施例并且其细节能够在各种明显的方面被修改。如对于本领域技术人员显而易见的,变化和修改可以在保持在本发明的精神和范围内时被实现。因此,前述公开、描述和附图仅用于说明性目的并且不以任何方式限制本发明,本发明仅由权利要求限定。

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