[go: up one dir, main page]

HK1241590B - Methods, apparatuses, and systems for network analysis - Google Patents

Methods, apparatuses, and systems for network analysis Download PDF

Info

Publication number
HK1241590B
HK1241590B HK18100749.4A HK18100749A HK1241590B HK 1241590 B HK1241590 B HK 1241590B HK 18100749 A HK18100749 A HK 18100749A HK 1241590 B HK1241590 B HK 1241590B
Authority
HK
Hong Kong
Prior art keywords
network
event
devices
satellite
controller
Prior art date
Application number
HK18100749.4A
Other languages
Chinese (zh)
Other versions
HK1241590A1 (en
Inventor
C.赫斯特
J.P.M.梅尔
S.桑德斯
Original Assignee
艾斯兰股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 艾斯兰股份有限公司 filed Critical 艾斯兰股份有限公司
Publication of HK1241590A1 publication Critical patent/HK1241590A1/en
Publication of HK1241590B publication Critical patent/HK1241590B/en

Links

Description

用于网络分析的方法、设备和系统Method, device and system for network analysis

技术领域Technical Field

本发明的实例实施例大体上涉及网络装置的检测和管理,并且更具体来说涉及一种用于网络的检测、管理、故障处理和优化的网络分析装置。Example embodiments of the present invention generally relate to detection and management of network devices, and more particularly to a network analysis device for detection, management, troubleshooting, and optimization of a network.

背景技术Background Art

申请人发现当前用于管理网络装置的方法、系统和设备存在一些问题。通过付诸工作、创造性和创新,申请人通过开发出本发明所具体实施的方案解决了许多这些认识到的问题,在下文中详细描述该方案。The applicant has discovered that there are several problems with current methods, systems, and apparatus for managing network devices. Through effort, creativity, and innovation, the applicant has solved many of these recognized problems by developing the solution embodied in the present invention, which is described in detail below.

发明内容Summary of the Invention

方法、设备和计算机程序产品提供一种用于网络的监视、管理和故障处理的网络分析装置。所述网络分析装置能够通过监视无线网络业务来检测无线网络上的装置的存在。可以经由图形用户界面呈现检测到的装置以提供用于显示检测到的装置的存在的界面、优化检测到的装置的性能、对与检测到的装置相关的错误进行故障处理等等。实施例还可辅助管理装置保修和保险计划并且为装置登记所述保修和保险计划。另外其它实施例可以在检测到特定装置时采取某些动作,诸如在检测到未经授权的装置时生成通知。在一些实施例中,规则引擎可以在检测到装置时采取特定动作。例如,用户可以利用数字门房的装置检测特征来检测特定用户的进出并且记录这些进出的时间。一些实例实施例可以利用额外或替代的装置检测特征,诸如条码扫描仪、收据读取器、库存单元(SKU)读取器等等。Methods, apparatus, and computer program products provide a network analysis device for monitoring, managing, and troubleshooting a network. The network analysis device is capable of detecting the presence of devices on a wireless network by monitoring wireless network traffic. Detected devices can be presented via a graphical user interface to provide an interface for displaying the presence of detected devices, optimizing the performance of detected devices, troubleshooting errors associated with detected devices, and the like. Embodiments can also assist in managing device warranties and insurance plans and registering devices for such warranties and insurance plans. Still other embodiments can take certain actions when a specific device is detected, such as generating a notification when an unauthorized device is detected. In some embodiments, a rules engine can take specific actions when a device is detected. For example, a user can utilize a device detection feature of a digital concierge to detect the entry and exit of specific users and record the times of these entries and exits. Some example embodiments can utilize additional or alternative device detection features, such as a barcode scanner, a receipt reader, a stock keeping unit (SKU) reader, and the like.

实施例包含一种用于提供计算机网络分析的系统。所述系统包含至少一个卫星装置,其被配置成监视无线网络业务以确定所述卫星装置之外的第一网络装置与第二网络装置之间的至少一个网络通信事件,基于所述至少一个网络通信事件生成事件消息,并且传输所述事件消息。所述系统还包括控制器装置,其被配置成接收所述事件消息,确定在所述网络通信事件期间通信的至少一个装置的身份,至少部分地基于所述至少一个装置的身份确定网络状态,并且经由管理界面提供所述网络状态。An embodiment includes a system for providing computer network analysis. The system includes at least one satellite device configured to monitor wireless network traffic to determine at least one network communication event between a first network device and a second network device external to the satellite device, generate an event message based on the at least one network communication event, and transmit the event message. The system also includes a controller device configured to receive the event message, determine the identity of at least one device that communicated during the network communication event, determine a network status based at least in part on the identity of the at least one device, and provide the network status via a management interface.

所述事件消息可以包含网络通信事件的信号强度,并且控制器装置可以进一步被配置成至少部分地基于信号强度确定至少一个装置的位置。事件消息可以包含协议识别符。所述控制器装置可以进一步被配置成至少部分地基于所述事件消息识别所述至少一个装置的装置类型。所述至少一个卫星装置可以进一步被配置成通过检测第一网络装置与第二网络装置之间的网络传输来监视无线网络业务,第一网络装置和第二网络装置可以都是不同于所述至少一个卫星装置和所述控制器装置的装置。所述事件消息可以包含网络通信事件的包标头。至少一个卫星装置的时钟和控制器装置的时钟可以彼此同步。事件消息可以包含基于来自至少一个卫星装置的时钟的读数导出的时戳。网络通信事件可以是根据802.11协议、紫蜂协议或蓝牙协议传输的网络消息。The event message may include a signal strength for the network communication event, and the controller device may be further configured to determine the location of the at least one device based, at least in part, on the signal strength. The event message may include a protocol identifier. The controller device may be further configured to identify the device type of the at least one device based, at least in part, on the event message. The at least one satellite device may be further configured to monitor wireless network traffic by detecting network transmissions between a first network device and a second network device, where the first network device and the second network device may be devices different from the at least one satellite device and the controller device. The event message may include a packet header for the network communication event. The clocks of the at least one satellite device and the controller device may be synchronized with each other. The event message may include a timestamp derived from a reading of the clock of the at least one satellite device. The network communication event may be a network message transmitted according to the 802.11 protocol, the ZigBee protocol, or the Bluetooth protocol.

实施例还包含一种用于提供网络分析系统的方法。所述方法包含:在控制器装置处从第一卫星装置接收第一事件消息,第一事件消息包括基于第一网络装置与第二网络装置之间的第一网络通信事件的内容;在控制器装置处从第二卫星装置接收第二事件消息,第二事件消息包括基于第三网络装置与第四网络装置之间的第二网络通信事件的内容;以及通过控制器装置处理第一事件消息和第二事件消息以确定网络状态,其中所述网络状态包括第一、第二、第三和第四网络装置中的每个网络装置的存在的指示器。所述第一事件消息可以包含第一网络通信事件的信号强度,并且其中控制器装置进一步被配置成至少部分地基于信号强度确定第一网络装置的位置。第一事件消息可以包含协议识别符。所述控制器装置可以进一步被配置成至少部分地基于第一事件消息识别第一网络装置和第二网络装置中的每个网络装置的装置类型。所述至少一个卫星装置可以进一步被配置成通过检测第一网络装置与第二网络装置之间的网络传输来监视无线网络业务,第一网络装置和第二网络装置可以都是不同于所述至少一个卫星装置和所述控制器装置的装置。所述事件消息可以包含网络通信事件的包标头。所述方法可以包含使至少第一卫星装置的时钟和控制器装置的时钟同步。事件消息可以包含基于来自至少一个卫星装置的时钟的读数导出的时戳。Embodiments also include a method for providing a network analysis system. The method includes: receiving, at a controller device, a first event message from a first satellite device, the first event message including content based on a first network communication event between the first network device and a second network device; receiving, at the controller device, a second event message from a second satellite device, the second event message including content based on a second network communication event between a third network device and a fourth network device; and processing, by the controller device, the first and second event messages to determine a network status, wherein the network status includes an indicator of the presence of each of the first, second, third, and fourth network devices. The first event message may include a signal strength of the first network communication event, and the controller device may be further configured to determine a location of the first network device based, at least in part, on the signal strength. The first event message may include a protocol identifier. The controller device may be further configured to identify a device type of each of the first and second network devices based, at least in part, on the first event message. The at least one satellite device may be further configured to monitor wireless network traffic by detecting network transmissions between the first and second network devices, the first and second network devices being devices different from the at least one satellite device and the controller device. The event message may include a packet header of the network communication event. The method may include synchronizing a clock of at least the first satellite device and a clock of the controller device.The event message may include a timestamp derived based on a reading from the clock of the at least one satellite device.

实施例还包含一种用于提供计算机网络分析的设备,其包括耦合到存储器的处理器。所述设备被配置成:接收事件消息,所述事件消息是基于卫星装置监视到的至少一个网络通信事件;确定在所述网络通信事件期间通信的至少一个装置的身份;至少部分地基于所述至少一个装置的身份确定网络状态;以及经由管理界面提供所述网络状态。Embodiments also include an apparatus for providing computer network analysis, comprising a processor coupled to a memory. The apparatus is configured to: receive an event message based on at least one network communication event monitored by a satellite device; determine an identity of at least one device that communicated during the network communication event; determine a network status based at least in part on the identity of the at least one device; and provide the network status via a management interface.

所述事件消息可以包含网络通信事件的信号强度,并且所述设备可以进一步被配置成至少部分地基于信号强度确定至少一个装置的位置。事件消息可以包含协议识别符。所述设备可以进一步被配置成至少部分地基于所述事件消息识别所述至少一个装置的装置类型。The event message may include a signal strength of the network communication event, and the apparatus may be further configured to determine a location of the at least one device based at least in part on the signal strength. The event message may include a protocol identifier. The apparatus may be further configured to identify a device type of the at least one device based at least in part on the event message.

实施例还包含一种用于在网络分析操作期间为事件消息去除重复的方法。所述方法包含:响应于接收到第一事件消息,从第一卫星装置接收包括序列识别符的第一事件消息;打开具有预定义时长的事件窗;在关闭事件窗之前,从第二卫星装置接收至少一个包括序列识别符的第二事件消息;确定对应于事件窗的时间段已经经过;关闭事件窗;组合第一事件消息和至少一个第二事件消息以生成聚合消息;以及处理聚合消息以确定网络状态。Embodiments also include a method for deduplicating event messages during a network analysis operation. The method includes: in response to receiving a first event message, receiving a first event message including a sequence identifier from a first satellite device; opening an event window having a predefined duration; before closing the event window, receiving at least one second event message including the sequence identifier from a second satellite device; determining that a time period corresponding to the event window has elapsed; closing the event window; combining the first event message and the at least one second event message to generate an aggregate message; and processing the aggregate message to determine a network status.

所述方法还可包含:接收包括序列识别符的第三事件消息,第三事件消息是在关闭事件窗之后接收到的;处理聚合消息以确定网络状态;以及丢弃第三事件消息。所述方法可以包含:通过生成校准消息确定预定义时长;将校准消息传输到第一卫星装置和第二卫星装置;从两个或更多个卫星装置接收校准响应,所述校准响应包括传输时戳;至少部分地基于传输时戳确定第一卫星装置和第二卫星装置中的每个卫星装置的等待时间;以及至少部分地基于第一卫星装置和第二卫星装置的等待时间当中的最长等待时间选择预定义时长。所述方法可以包含通过控制器装置生成至少一个时间同步消息,以及将所述至少一个时间同步消息传输到第一卫星装置和第二卫星装置。所述方法可以包含:在事件窗打开的时间期间接收额外事件消息;确定额外事件消息与第一事件消息的序列识别符之外的序列识别符相关联;以及对于额外事件消息打开额外事件窗,额外事件窗与第一事件消息的序列识别符之外的序列识别符相关联。第一事件消息和第二事件消息中的每个事件消息可以基于第一卫星装置和第二卫星装置之外的至少两个网络装置之间的相同网络通信事件生成。聚合消息可以包含来自第一事件消息的第一信号强度和来自第二事件消息的第二信号强度。所述方法可以包含至少部分地基于聚合消息中包含的第一信号强度和第二信号强度确定网络通信事件的传输方的位置。The method may also include: receiving a third event message including a sequence identifier, the third event message received after closing the event window; processing the aggregate message to determine a network status; and discarding the third event message. The method may include: determining a predefined duration by generating a calibration message; transmitting the calibration message to a first satellite device and a second satellite device; receiving calibration responses from two or more satellite devices, the calibration responses including a transmission timestamp; determining a latency for each of the first and second satellite devices based at least in part on the transmission timestamp; and selecting the predefined duration based at least in part on a longest latency between the latency of the first and second satellite devices. The method may include: generating, by a controller device, at least one time synchronization message, and transmitting the at least one time synchronization message to the first and second satellite devices. The method may include: receiving an additional event message during a time when the event window is open; determining that the additional event message is associated with a sequence identifier other than the sequence identifier of the first event message; and opening an additional event window for the additional event message, the additional event window being associated with a sequence identifier other than the sequence identifier of the first event message. Each of the first event message and the second event message may be generated based on the same network communication event between at least two network devices other than the first satellite device and the second satellite device. The aggregate message may include a first signal strength from the first event message and a second signal strength from the second event message. The method may also include determining a location of a transmitter of the network communication event based at least in part on the first signal strength and the second signal strength included in the aggregate message.

实施例还包含一种用于提供网络分析的设备,其包括耦合到存储器的处理器。所述设备被配置成:响应于接收到第一事件消息,通过控制器装置从第一卫星装置接收包括序列识别符的第一事件消息;打开具有预定义时长的事件窗;在关闭事件窗之前,从第二卫星装置接收至少一个包括序列识别符的第二事件消息;确定对应于事件窗的时间段已经经过;关闭事件窗;组合第一事件消息和至少一个第二事件消息以生成聚合消息;以及处理聚合消息以确定网络状态。An embodiment further includes an apparatus for providing network analysis, comprising a processor coupled to a memory. The apparatus is configured to: in response to receiving a first event message, receive, via a controller, a first event message including a sequence identifier from a first satellite device; open an event window having a predefined duration; before closing the event window, receive at least one second event message including the sequence identifier from a second satellite device; determine that a time period corresponding to the event window has elapsed; close the event window; combine the first event message and the at least one second event message to generate an aggregate message; and process the aggregate message to determine a network status.

所述设备可以进一步被配置成:接收包括序列识别符的第三事件消息,第三事件消息是在关闭事件窗之后接收到的;处理聚合消息以确定网络状态;以及丢弃第三事件消息。所述设备可以进一步被配置成:生成校准消息;将校准消息传输到第一卫星装置和第二卫星装置;从两个或更多个卫星装置接收校准响应,所述校准响应包括传输时戳;至少部分地基于传输时戳确定第一卫星装置和第二卫星装置中的每个卫星装置的等待时间;以及至少部分地基于第一卫星装置和第二卫星装置的等待时间当中的最长等待时间选择预定义时长。所述设备可以进一步被配置成:通过控制器装置生成至少一个时间同步消息;以及将至少一个时间同步消息传输到第一卫星装置和第二卫星装置。所述设备可以进一步被配置成:在事件窗打开的时间期间接收额外事件消息;确定额外事件消息与第一事件消息的序列识别符之外的序列识别符相关联;以及对于额外事件消息打开额外事件窗,额外事件窗与第一事件消息的序列识别符之外的序列识别符相关联。第一事件消息和第二事件消息中的每个事件消息可以基于第一卫星装置和第二卫星装置之外的至少两个网络装置之间的相同网络通信事件生成。聚合消息可以包含来自第一事件消息的第一信号强度和来自第二事件消息的第二信号强度。The apparatus may be further configured to: receive a third event message including a sequence identifier, the third event message being received after closing the event window; process the aggregated message to determine a network status; and discard the third event message. The apparatus may be further configured to: generate a calibration message; transmit the calibration message to the first and second satellite devices; receive calibration responses from two or more satellite devices, the calibration responses including a transmission timestamp; determine a latency for each of the first and second satellite devices based at least in part on the transmission timestamp; and select a predefined duration based at least in part on a longest latency between the latency of the first and second satellite devices. The apparatus may be further configured to: generate, via a controller device, at least one time synchronization message; and transmit the at least one time synchronization message to the first and second satellite devices. The apparatus may be further configured to: receive an additional event message during the time when the event window is open; determine that the additional event message is associated with a sequence identifier other than the sequence identifier of the first event message; and open an additional event window for the additional event message, the additional event window being associated with a sequence identifier other than the sequence identifier of the first event message. Each of the first event message and the second event message may be generated based on the same network communication event between at least two network devices other than the first satellite device and the second satellite device. The aggregate message may include a first signal strength from the first event message and a second signal strength from the second event message.

所述设备可以进一步被配置成基于聚合消息中包含的第一信号强度和第二信号强度确定网络通信事件的传输方的位置。The device may be further configured to determine a location of a transmitting party of the network communication event based on the first signal strength and the second signal strength included in the aggregate message.

实施例还包含一种非暂时性计算机可读存储媒体,其包括程序指令,所述程序指令在由处理器执行时,使所述处理器通过至少如下操作在网络分析操作期间为事件消息去除重复:响应于接收到第一事件消息,从第一卫星装置接收包括序列识别符的第一事件消息;打开具有预定义时长的事件窗;在关闭事件窗之前,从第二卫星装置接收至少一个包括序列识别符的第二事件消息;确定对应于事件窗的时间段已经经过;关闭事件窗;组合第一事件消息和至少一个第二事件消息以生成聚合消息;以及处理聚合消息以确定网络状态。An embodiment also includes a non-transitory computer-readable storage medium including program instructions that, when executed by a processor, cause the processor to de-duplicate event messages during a network analysis operation by at least: receiving, in response to receiving a first event message, a first event message including a sequence identifier from a first satellite device; opening an event window having a predefined duration; before closing the event window, receiving at least one second event message including the sequence identifier from a second satellite device; determining that a time period corresponding to the event window has elapsed; closing the event window; combining the first event message and the at least one second event message to generate an aggregate message; and processing the aggregate message to determine a network status.

所述指令可以进一步使所述处理器:接收包括序列识别符的第三事件消息,第三事件消息是在关闭事件窗之后接收到的;处理聚合消息以确定网络状态;以及丢弃第三事件消息。在一些实施例中,所述指令可以进一步使所述处理器:生成校准消息;将校准消息传输到第一卫星装置和第二卫星装置;从两个或更多个卫星装置接收校准响应,所述校准响应包括传输时戳;至少部分地基于传输时戳确定第一卫星装置和第二卫星装置中的每个卫星装置的等待时间;以及至少部分地基于第一卫星装置和第二卫星装置的等待时间当中的最长等待时间选择预定义时长。在一些实施例中,所述指令可以进一步使所述处理器通过控制器装置生成至少一个时间同步消息;以及将所述至少一个时间同步消息传输到第一卫星装置和第二卫星装置。The instructions may further cause the processor to: receive a third event message including a sequence identifier, the third event message being received after the closing event window; process the aggregated message to determine a network status; and discard the third event message. In some embodiments, the instructions may further cause the processor to: generate a calibration message; transmit the calibration message to the first satellite device and the second satellite device; receive calibration responses from two or more satellite devices, the calibration responses including a transmission timestamp; determine a latency for each of the first satellite device and the second satellite device based at least in part on the transmission timestamp; and select a predefined duration based at least in part on a longest latency between the latency of the first satellite device and the second satellite device. In some embodiments, the instructions may further cause the processor, via the controller device, to generate at least one time synchronization message; and transmit the at least one time synchronization message to the first satellite device and the second satellite device.

另一个实施例包含一种用于在网络分析系统中提供网络安全的方法。所述方法包含:检测网络分析系统的卫星装置中的主电源的丢失;响应于主电源的丢失,激活卫星装置的备用电源;以及响应于激活备用电源,停用耦合到卫星装置的通电状态的可视指示器。Another embodiment includes a method for providing network security in a network analysis system. The method includes detecting a loss of primary power in a satellite device of the network analysis system; activating a backup power supply for the satellite device in response to the loss of primary power; and deactivating a visual indicator of a power status coupled to the satellite device in response to activating the backup power supply.

另一个实施例包含一种用于提供网络分析系统的方法。所述方法包含:在控制器处从卫星装置接收事件消息,所述事件消息包括基于第一网络装置与第二网络装置之间的第一网络通信事件的内容;通过所述控制器的网络分析组件处理事件消息以确定网络状态,其中网络状态包括第一网络装置和第二网络装置中的每个网络装置的存在的指示器;通过控制器的规则引擎组件确定第二网络装置是未经授权的;响应于确定第二网络装置是未经授权的,通过规则引擎组件生成通知;以及使得经由管理界面显示通知。Another embodiment includes a method for providing a network analysis system. The method includes: receiving, at a controller, an event message from a satellite device, the event message including content based on a first network communication event between a first network device and a second network device; processing, by a network analysis component of the controller, the event message to determine a network status, wherein the network status includes an indicator of the presence of each of the first network device and the second network device; determining, by a rules engine component of the controller, that the second network device is unauthorized; generating, by the rules engine component, a notification in response to determining that the second network device is unauthorized; and causing the notification to be displayed via a management interface.

又一实施例包含一种用于提供网络分析系统的设备。所述设备包含网络分析电路组件,其被配置成从卫星装置接收事件消息,所述事件消息包括基于第一网络装置与第二网络装置之间的第一网络通信事件的内容;并且处理事件消息以确定网络状态,其中所述网络状态包括第一网络装置和第二网络装置中的每个网络装置的存在的指示器。所述设备还包括:装置管理电路组件,其被配置成确定第二网络装置是未经授权的,并且响应于确定第二网络装置是未经授权的,生成通知;以及远程管理电路组件,其被配置成使得经由管理界面显示通知。Yet another embodiment includes an apparatus for providing a network analysis system. The apparatus includes a network analysis circuit component configured to receive an event message from a satellite device, the event message including content based on a first network communication event between a first network device and a second network device; and process the event message to determine a network status, wherein the network status includes an indicator of the presence of each of the first network device and the second network device. The apparatus also includes a device management circuit component configured to determine that the second network device is unauthorized and, in response to determining that the second network device is unauthorized, generate a notification; and a remote management circuit component configured to cause the notification to be displayed via a management interface.

又一实施例包含一种用于提供网络分析系统的设备。所述设备包含网络分析电路组件,其被配置成从卫星装置接收事件消息,所述事件消息包括基于第一网络装置与第二网络装置之间的第一网络通信事件的内容;处理事件消息以确定网络状态,其中所述网络状态包括第一网络装置和第二网络装置中的每个网络装置的存在的指示器;并且至少部分地基于事件消息确定第一网络通信事件的传输方的位置。所述设备还包括装置管理电路组件,其被配置成:确定第二网络装置是未经授权的;并且响应于确定第二网络装置是未经授权的,向相机装置生成通知,其中所述通知包括将相机装置导向到第一网络通信事件的传输方的位置并且向相机装置传输通知的指令。Yet another embodiment includes an apparatus for providing a network analysis system. The apparatus includes a network analysis circuit component configured to receive an event message from a satellite device, the event message including content based on a first network communication event between a first network device and a second network device; process the event message to determine a network status, wherein the network status includes an indicator of the presence of each of the first network device and the second network device; and determine a location of a transmitter of the first network communication event based at least in part on the event message. The apparatus also includes a device management circuit component configured to: determine that the second network device is unauthorized; and in response to determining that the second network device is unauthorized, generate a notification to a camera device, wherein the notification includes instructions to direct the camera device to the location of the transmitter of the first network communication event and transmit the notification to the camera device.

提供以上发明内容只是为了概述一些实例实施例以提供对本发明的一些方面的基本理解。因此,应了解,上述实施例只是实例,并且不应解释为以任何方式限制本发明的范围或精神。应了解,本发明的范围除了这里概述的实施例之外还涵盖许多可能的实施例,下文将进一步描述一些实施例。The above summary of the invention is provided only to summarize some example embodiments to provide a basic understanding of some aspects of the present invention. Therefore, it should be understood that the above embodiments are merely examples and should not be construed as limiting the scope or spirit of the present invention in any way. It should be understood that the scope of the present invention encompasses many possible embodiments in addition to the embodiments summarized here, some of which will be further described below.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

因而总体上描述了本公开的某些实例实施例,现在将参照附图,附图未必是按比例绘制的,并且其中:Having thus generally described certain example embodiments of the present disclosure, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and in which:

图1示出了一个实例网络,本发明的实施例可以在该网络中工作;FIG1 illustrates an example network in which embodiments of the present invention may operate;

图2示出了描绘用于使用根据本发明的一些实例实施例的专用电路实施网络分析系统的控制器装置的实例的框图;FIG2 shows a block diagram depicting an example of a controller device for implementing a network analysis system using dedicated circuitry according to some example embodiments of the present invention;

图3示出了描绘用于使用根据本发明的一些实例实施例的专用电路实施网络分析系统的卫星装置的实例的框图;FIG3 shows a block diagram depicting an example of a satellite device for implementing a network analysis system using dedicated circuitry according to some example embodiments of the present invention;

图4示出了根据本发明的一些实施例的网络分析系统和家庭网络的组件之间的互连性的实例;FIG4 illustrates an example of interconnectivity between components of a network analysis system and a home network according to some embodiments of the present invention;

图5示出了使用根据本发明的一些实施例的网络分析系统的网络架构的实例;FIG5 illustrates an example of a network architecture using a network analysis system according to some embodiments of the present invention;

图6示出了根据本发明的一些实施例的驻地地图(premises map)的实例;FIG6 illustrates an example of a premises map according to some embodiments of the present invention;

图7示出了根据本发明的一些实施例的网络分析系统的组件之间的数据流交互的实例;FIG7 illustrates an example of data flow interactions between components of a network analysis system according to some embodiments of the present invention;

图8示出了根据本发明的一些实施例的控制器装置的逻辑组件之间的交互的实例;FIG8 illustrates an example of interaction between logical components of a controller device according to some embodiments of the present invention;

图9示出了根据本发明的一些实施例的用于与网络分析系统交互的界面的实例;FIG9 illustrates an example of an interface for interacting with a network analysis system according to some embodiments of the present invention;

图10示出了描绘根据本发明的一些实施例的用于使用卫星装置监视网络通信的方法的实例的流程图;FIG10 shows a flow chart depicting an example of a method for monitoring network communications using a satellite device according to some embodiments of the present invention;

图11示出了描绘根据本发明的一些实施例的用于使用网络分析系统初始化卫星装置的方法的实例的流程图;FIG11 shows a flow chart depicting an example of a method for initializing a satellite device using a network analysis system according to some embodiments of the present invention;

图12示出了描绘根据本发明的一些实施例的用于从卫星装置接收网络通信事件的方法的实例的流程图;FIG12 shows a flow chart depicting an example of a method for receiving network communication events from a satellite device according to some embodiments of the present invention;

图13示出了描绘根据本发明的一些实施例的用于使用网络分析系统生成驻地地图的方法的实例的流程图;FIG13 shows a flow chart depicting an example of a method for generating a premises map using a network analysis system according to some embodiments of the present invention;

图14示出了描绘根据本发明的一些实施例的用于使用网络分析系统生成网络元数据的方法的实例的流程图;FIG14 shows a flow chart depicting an example of a method for generating network metadata using a network analysis system according to some embodiments of the present invention;

图15示出了描绘根据本发明的实施例的用于使用网络分析系统用规则引擎生成通知的方法的实例的流程图;15 shows a flow chart depicting an example of a method for generating notifications using a rules engine using a network analysis system according to an embodiment of the present invention;

图16示出了描绘根据本发明的一些实施例的用于使用卫星装置的防篡改安全性的方法的实例的流程图;以及FIG16 shows a flow chart depicting an example of a method for using tamper-resistant security for a satellite device according to some embodiments of the present invention; and

图17示出了描绘根据本发明的实施例的用于配合相机装置使用网络分析系统的方法的实例的流程图。17 shows a flow chart depicting an example of a method for using a network analysis system with a camera device according to an embodiment of the present invention.

具体实施方式DETAILED DESCRIPTION

综述Overview

本发明的各种实施例涉及用于提供网络分析系统的经过改进的设备、方法和计算机可读媒体。就此而言,实施例可以电子地检测家庭网络上的装置的存在并且执行与检测到的装置有关的监视和管理功能。监视功能可以包含监视到每个装置的网络业务的类型和数量、监视每个装置连接到网络的方式、监视何时特定装置连接到网络或从网络断开等等。管理功能可以包含启用或停用装置与网络的连接,向用户提供关于装置配置变化的建议,提醒用户新装置已经连接,检测和评估网络拓扑以建议配置变化,评估路由器安全性设置等等。Various embodiments of the present invention relate to improved apparatus, methods, and computer-readable media for providing a network analysis system. In this regard, embodiments can electronically detect the presence of devices on a home network and perform monitoring and management functions associated with the detected devices. The monitoring functions can include monitoring the type and amount of network traffic to each device, monitoring the manner in which each device is connected to the network, monitoring when a particular device is connected to or disconnected from the network, and the like. The management functions can include enabling or disabling a device's connection to the network, providing a user with recommendations regarding device configuration changes, alerting a user that a new device has been connected, detecting and evaluating the network topology to recommend configuration changes, evaluating router security settings, and the like.

应当容易理解,用于提供网络分析系统的方法、系统、装置和设备的实施例可以用多种另外的替代的方式配置,以按照本文所述提供对家庭网络的监视和管理。It should be readily understood that embodiments of the methods, systems, apparatus, and devices for providing a network analysis system may be configured in a variety of additional alternative ways to provide monitoring and management of a home network as described herein.

示例性实施例的技术基础和实施方案Technical basis and implementation of exemplary embodiments

随着家庭网络变得越来越常见,越来越多的装置能够在这些网络上通信。给定家庭网络包含多个经由有线和无线通信机制彼此通信的装置,这种情况越来越常见。此类装置不仅可以包含诸如路由器和交换机之类常见的网络连接组件,而且还包含“智能”电视、家庭影院系统、打印机、手提电脑、可穿戴设备、台式电脑、平板电脑、智能手机和更多设备。然而,随着越来越多的装置连接到给定网络,此类装置的检测和管理可能变得越来越复杂。用户可能不是一直能够容易地确定给定连接装置是否经过授权,或者此装置是否为躲过了网络安全功能的恶意装置。为了解决这些问题,本发明人开发了用于经由数字门房装置检测、监视和管理连接到家庭网络的装置的技术、系统和装置。As home networks become more common, more and more devices are able to communicate on these networks. It is increasingly common for a given home network to contain multiple devices that communicate with each other via wired and wireless communication mechanisms. Such devices may include not only common network connectivity components such as routers and switches, but also "smart" TVs, home theater systems, printers, laptops, wearable devices, desktops, tablets, smartphones, and more. However, as more and more devices are connected to a given network, the detection and management of such devices can become increasingly complex. A user may not always be able to easily determine whether a given connected device is authorized, or whether the device is a malicious device that has evaded network security features. To address these issues, the inventors have developed techniques, systems, and devices for detecting, monitoring, and managing devices connected to a home network via a digital concierge device.

此外,本发明人认识到,即使是并未完全“连接”(例如接收被指派的因特网协议地址)到网络的装置,通过识别此类装置执行的连接请求和资源请求,仍然可以检测到此类装置。本发明人已确定,有可能使用这个数据和其它网络数据执行管理和记录功能以向用户通知各种事件。例如,本发明的实施例可以检测到网络附近存在未经授权的装置,并且提醒用户所述装置的存在。其它实施例可以记录经过授权的装置何时连接到网络和从网络断开,以便提供关于孩子何时在宵禁以后回家的信息。另外其它实施例可以识别何时经过授权的装置在与未经授权的装置相同的时间或大概相同的时间连接,这表明除了经过授权的装置的用户之外还有别人在。Furthermore, the inventors have recognized that even devices that are not fully "connected" (e.g., receive an assigned Internet Protocol address) to a network can still be detected by identifying connection requests and resource requests performed by such devices. The inventors have determined that it is possible to use this data and other network data to perform management and logging functions to notify users of various events. For example, embodiments of the present invention can detect the presence of unauthorized devices near a network and alert the user to the presence of the devices. Other embodiments can record when authorized devices connect to and disconnect from the network to provide information about when children come home after curfew. Still other embodiments can identify when an authorized device connects at or approximately the same time as an unauthorized device, indicating that someone other than the user of the authorized device is present.

为此目的,本发明的实施例可以不断地监视网络活动以发现新装置进入与家庭网络的通信。这个监视可以通过各种有线和无线接口执行。例如,本发明的实施例可以包含用于监视无线通信的无线天线,和用于监视经由有线网络传输的数据的有线网络连接。在一些实施例中,数字门房可以位于网络拓扑中,在路由器与网络的其余部分之间,或者在路由器与因特网之间,用于监视流入路由器或从路由器流出的业务。To this end, embodiments of the present invention can continuously monitor network activity to detect new devices entering communication with the home network. This monitoring can be performed through various wired and wireless interfaces. For example, embodiments of the present invention can include a wireless antenna for monitoring wireless communications and a wired network connection for monitoring data transmitted via the wired network. In some embodiments, a digital concierge can be located in the network topology, between the router and the rest of the network, or between the router and the Internet, to monitor traffic flowing into or out of the router.

实施例可以监视网络上的装置的连接性和装置的性能以确定是否每个装置都在与其它装置和与因特网最优地通信。Embodiments may monitor the connectivity of devices on a network and the performance of the devices to determine whether each device is communicating optimally with the other devices and with the Internet.

一些实施例可以对来自多个装置的性能进行三角测量,以确定最优网络速度以便支持每个装置,诸如通过自动实施网络服务品质(QoS)设置或通过向用户建议对网络拓扑的改变。实施例可以进一步检测有线和无线拓扑(例如装置用于彼此通信的连接基础设施),评估拓扑以确定可能的性能优化,并且向用户建议可能的性能优化。在一些实施例中,数字门房可以通过更改耦合到网络的各种装置上的配置设置,借此自动执行这些优化。实施例还可询问家庭路由器以确定家庭路由器是否以正确的安全性状态配置,路由器是否用最新的软件和固件正确地更新过。Some embodiments may triangulate the performance from multiple devices to determine the optimal network speed to support each device, such as by automatically implementing network quality of service (QoS) settings or by suggesting changes to the network topology to the user. Embodiments may further detect wired and wireless topologies (e.g., the connection infrastructure that devices use to communicate with each other), evaluate the topologies to determine possible performance optimizations, and suggest possible performance optimizations to the user. In some embodiments, the digital concierge may automatically perform these optimizations by changing configuration settings on the various devices coupled to the network. Embodiments may also interrogate the home router to determine whether the home router is configured with the correct security state and whether the router is properly updated with the latest software and firmware.

一些实施例可以通过检测尝试与家庭网络通信的任何装置的存在,借此实施装置检测周界(例如“地理围栏”)。这些检测可以由监听装置在低网络层(诸如在开放系统互连模型第2层“数据链路”层)上执行,这些监听装置进入无线路由器的范围中,并且生成网络请求,诸如动态主机配置协议(DHCP)请求或第六版因特网协议(IPV6)路由器发现包。实施例可以检测装置并更改这些检测到的装置的管理员,并且监视此类装置的活动,只要此类装置在家庭网络上是可检测的。应了解,实施例可能不需要此类装置来采集网络上的可路由(例如IP)地址,并且可以仅仅基于诸如上述OSI第2层通信之类的较低层级通信来监视这些活动。可以使用这种方式的装置检测来支持各种使用情况,包含但不限于检测何时用户进入或离开家里的房间,检测何时用户从工作单位、学校或夜游回家,在不寻常的时间(例如在凌晨2点之后)检测到未经授权的装置等等。这些使用情况可以用于例如追踪何时孩子在宵禁之后回家,确定何时孩子的房间的访客的停留时间超过阈值时间量,检测天黑之后的侵入者等等。可以响应于检测到这些场景而采取各种行动,包含通知特定用户或管理员、激活家庭安全系统等等。Some embodiments can implement device detection perimeters (e.g., "geofencing") by detecting the presence of any device attempting to communicate with the home network. These detections can be performed at a low network layer (such as the Open Systems Interconnection model Layer 2 "Data Link" layer) by listening devices that come within range of a wireless router and generate network requests, such as Dynamic Host Configuration Protocol (DHCP) requests or Internet Protocol Version 6 (IPv6) router discovery packets. Embodiments can detect devices and change the administrators of these detected devices, and monitor the activities of such devices, as long as such devices are detectable on the home network. It should be understood that embodiments may not require such devices to collect routable (e.g., IP) addresses on the network and can monitor such activities based solely on lower-level communications, such as the OSI Layer 2 communications described above. Device detection in this manner can be used to support a variety of use cases, including, but not limited to, detecting when a user enters or leaves a room in the home, detecting when a user returns home from work, school, or a night out, detecting unauthorized devices at unusual times (e.g., after 2 a.m.), and the like. These use cases can be used, for example, to track when children come home after curfew, determine when visitors to a child's room remain for more than a threshold amount of time, detect intruders after dark, etc. Various actions can be taken in response to detecting these scenarios, including notifying specific users or administrators, activating a home security system, and the like.

一些实施例可以提供低成本的小型装置以获取网络业务并且将这些业务中继到中心位置以用于处理和分析。例如,一些实施例可以包含“Raspberry Pi”(超小电脑)装置。在一些实施例中,移除电源可能会使装置停用机载发光二极管(LED)但是允许装置继续使用电池电力工作。在一些实施例中,可以使用多个此类装置对特定网络装置的位置进行三角测量,或者可以并行采用此类装置以在有人尝试抵御系统导致故障或故意断开的情况下实现备援效果。Some embodiments may provide a small, low-cost device that acquires network traffic and relays it to a central location for processing and analysis. For example, some embodiments may include a "Raspberry Pi" (mini computer) device. In some embodiments, removing power may disable the device's onboard light-emitting diodes (LEDs) but allow the device to continue operating on battery power. In some embodiments, multiple such devices may be used to triangulate the location of a particular network device, or such devices may be deployed in parallel to provide redundancy in the event of a system failure or intentional disconnection while attempting to defend against the system.

实施例还可识别何时已知装置(例如先前检测到的装置)已经从网络中离开一段时间。在此些情况下,实施例可以生成通知,从而允许用户指示装置已卖掉、已停止服务、已损坏等等。在一些情况下,实施例可以识别一段时间未连接的装置的转卖价值,并且辅助用户转卖未使用的装置,诸如通过提供界面以便于将装置运送到存放处并且向用户支付该装置的价格。Embodiments may also identify when a known device (e.g., a previously detected device) has been off the network for a period of time. In these cases, embodiments may generate a notification, allowing the user to indicate that the device has been sold, taken out of service, damaged, etc. In some cases, embodiments may identify the resale value of a device that has not been connected for a period of time and assist the user in reselling the unused device, such as by providing an interface to facilitate shipping the device to storage and paying the user the price of the device.

实施例还可提供用于管理装置保修信息的系统和技术。例如,实施例可以提供界面,供用户指示哪些检测到的装置是用户所有的,此类装置是何时购买的,以及何时装置保修过期。实施例还可容许用户说明装置的购买环境(例如是否使用了特定的信用卡,或者用户是否购买了延保计划)并且自动更新保修信息。例如,实施例可以在购买装置时检测到用户使用的信用卡有保修时间加倍的优惠(例如通过监视用户交易数据,诸如通过在线银行或金融服务聚合系统,或通过允许用户选择他们使用的是哪张信用卡),并且自动更新装置的保修信息以反映加倍的时间。实施例还可向用户通知提交保修申请的机制(例如通过提供电话号码或联系方式信息),或者提供客服代表界面以发出申请。实施例还可向用户通知一些事件,诸如产品召回、免费服务和/或网络上检测到的装置可享受的其它服务(例如对于任何连接到覆盖装置的装置提供保护的接线保护计划)。Embodiments may also provide systems and techniques for managing device warranty information. For example, embodiments may provide an interface for a user to indicate which detected devices the user owns, when such devices were purchased, and when the device warranty expires. Embodiments may also allow the user to specify the circumstances surrounding the purchase of the device (e.g., whether a specific credit card was used, or whether the user purchased an extended warranty plan) and automatically update warranty information. For example, embodiments may detect that a user purchased a device using a credit card that offers a double warranty (e.g., by monitoring user transaction data, such as through an online banking or financial services aggregation system, or by allowing the user to select which credit card they used) and automatically update the device's warranty information to reflect the double warranty. Embodiments may also notify the user of a mechanism for submitting a warranty claim (e.g., by providing a phone number or contact information) or provide a customer service representative interface for submitting a claim. Embodiments may also notify the user of events such as product recalls, free services, and/or other services available for devices detected on the network (e.g., a wiring protection plan that provides protection for any device connected to a covered device).

一些实施例可以容许传送关于附接装置的信息以便提供保修或服务计划。例如,可以收集关于连接到用户的家庭网络的装置的信息并将其传送给保修或保险提供方,以便向用户提供保修或保险套餐以覆盖检测到的装置中的一或多个装置。在一些实施例中,可以基于所提供的保修或保险所覆盖的装置的数量或装置的类型向用户提供折扣。Some embodiments may allow for the transfer of information about attached devices to facilitate the provision of warranty or service plans. For example, information about devices connected to a user's home network may be collected and transferred to a warranty or insurance provider to provide the user with a warranty or insurance package covering one or more of the detected devices. In some embodiments, a discount may be offered to the user based on the number of devices or types of devices covered by the warranty or insurance provided.

为了实施本文所述的经过改进的系统,本发明人指出了多种数据源和处理技术和算法,可以用来支持家庭网络上的装置的检测、监视和管理。为此目的,本发明人构想了多种通信技术、应用编程界面和数据界面用于获得这些数据。通过使用这些经过改进的技术,本发明人减少了实施这些系统所必需的处理开销、应用程序数量和工时。因此,本发明的实例实施例提供了用于评估、管理和监视家庭网络和附接装置的灵活、简化的系统的技术益处。本发明人还开发了用于网络业务监视和生成网络分析结果的系统、方法及装置。这些系统、方法及装置可以用于通过识别网络瓶颈、监视网络安全违反行为和提议和/或实施网络的连接性变化而改善网络性能。To implement the improved system described herein, the inventors have identified a variety of data sources and processing techniques and algorithms that can be used to support the detection, monitoring and management of devices on a home network. To this end, the inventors have conceived a variety of communication technologies, application programming interfaces and data interfaces for obtaining this data. By using these improved technologies, the inventors have reduced the processing overhead, number of applications and man-hours required to implement these systems. Therefore, example embodiments of the present invention provide technical benefits of a flexible, simplified system for evaluating, managing and monitoring home networks and attached devices. The inventors have also developed systems, methods and devices for network traffic monitoring and generating network analysis results. These systems, methods and devices can be used to improve network performance by identifying network bottlenecks, monitoring network security violations and proposing and/or implementing connectivity changes to the network.

此外,本发明人创造了以简单灵活的方式访问家庭网络数据和管理家庭网络和附接装置的新的界面、方法和技术。这些经过改进的界面能通过以新颖的方式组织信息而减少查看和管理家庭网络所必需的用户输入数量。因此,本发明的实施例还提供了用于检测与家庭网络通信的装置以及管理和监视家庭网络和/或附接装置的经过改进的显示和用户界面的技术益处。Furthermore, the inventors have created new interfaces, methods, and techniques for accessing home network data and managing the home network and attached devices in a simple and flexible manner. These improved interfaces can reduce the amount of user input required to view and manage the home network by organizing information in novel ways. Thus, embodiments of the present invention also provide the technical benefits of improved displays and user interfaces for detecting devices communicating with a home network and for managing and monitoring the home network and/or attached devices.

系统架构System Architecture

本发明的方法、设备和计算机程序产品可以通过任何多种装置具体实施。例如,实例实施例的方法、设备和计算机程序产品可以通过诸如服务器或其它网络实体之类的联网装置具体实施,该联网装置被配置成与一或多个装置(诸如一或多个客户端装置)通信。另外或替代地,计算装置可以包含固定计算装置,诸如个人计算机或计算机工作站。再者,实例实施例可以通过任何多种移动终端具体实施,诸如便携式数字助理(PDA)、移动电话、智能手机、便携式电脑、平板电脑或前述装置的任何组合。The methods, apparatus, and computer program products of the present invention may be implemented by any of a variety of devices. For example, the methods, apparatus, and computer program products of example embodiments may be implemented by a networked device, such as a server or other network entity, configured to communicate with one or more devices, such as one or more client devices. Additionally or alternatively, the computing device may comprise a stationary computing device, such as a personal computer or a computer workstation. Furthermore, example embodiments may be implemented by any of a variety of mobile terminals, such as a portable digital assistant (PDA), a mobile phone, a smartphone, a laptop, a tablet computer, or any combination thereof.

就此而言,图1公开了实例计算系统,本发明的实施例可以在该计算系统中工作。家庭网络104可以包含多个卫星装置108和多个网络装置110,这些装置经由网络104通信(例如带有一或多个路由器的家庭网络)。控制器装置102也可与网络104通信以检测、监视和管理网络装置。卫星装置108可以向控制器102通知网络事件的发生,诸如新网络装置110加入网络、在网络上通信、离开网络等等。虽然当前的实例实施例是相对于并入有卫星装置和控制器装置两种装置的系统描述的,但是应了解,在一些实施例中,卫星装置的一些或全部功能可以集成在控制器装置内。例如,控制器装置102可以用与本文关于卫星装置108所述的相同的方式监视网络通信事件。在监视有限的实体区域(例如公寓)的实施例中,因而不需要使用卫星装置就能实现监视网络通信的完全覆盖。路由器106可以便于控制器102和网络装置110连接到因特网。虽然图1中描绘控制器102与路由器106分开地与网络通信,但是应了解,一些实施例的特征可以是路由器106通过控制器102连接,以便于通过控制器102监视网络上的业务。In this regard, FIG1 discloses an example computing system in which embodiments of the present invention may operate. A home network 104 may include multiple satellite devices 108 and multiple network devices 110, which communicate via the network 104 (e.g., a home network with one or more routers). A controller device 102 may also communicate with the network 104 to detect, monitor, and manage the network devices. Satellite devices 108 may notify the controller 102 of network events, such as a new network device 110 joining the network, communicating on the network, leaving the network, and so on. While the present example embodiment is described with respect to a system incorporating both satellite devices and a controller device, it should be understood that in some embodiments, some or all of the functionality of the satellite devices may be integrated within the controller device. For example, the controller device 102 may monitor network communication events in the same manner as described herein with respect to the satellite devices 108. In embodiments where monitoring is limited to a physical area (e.g., an apartment), full coverage of monitoring network communications may be achieved without the use of satellite devices. Router 106 may facilitate connection of the controller 102 and network devices 110 to the Internet. Although FIG. 1 depicts controller 102 and router 106 as communicating with the network separately, it should be appreciated that some embodiments may feature router 106 connected through controller 102 to facilitate monitoring of traffic on the network through controller 102 .

在一些实施例中,网络装置110中的一或多个网络装置可以与控制器102通信以接收关于网络104和连接装置102、106、108的数据。例如,在用户的智能手机上执行的“应用”可以与控制器102介接,以向用户提供关于连接装置、网络拓扑、提议优化等等的信息。应用还可向用户提供界面以控制控制器102的操作(例如管理装置检测、监视和管理的配置设置)、网络的特性(例如QoS设置、子网配置、地址分配设置)或其它网络装置110。In some embodiments, one or more of the network devices 110 can communicate with the controller 102 to receive data about the network 104 and the connected devices 102, 106, 108. For example, an "app" executing on a user's smartphone can interface with the controller 102 to provide the user with information about connected devices, network topology, proposed optimizations, etc. The app can also provide the user with an interface to control the operation of the controller 102 (e.g., configuration settings for managing device detection, monitoring, and management), characteristics of the network (e.g., QoS settings, subnet configuration, address allocation settings), or other network devices 110.

用于实施本发明的实施例的控制器设备的实例Examples of controller devices for implementing embodiments of the present invention

控制器装置102可以通过一或多个计算系统(诸如图2中描绘的设备200)具体实施。如图2中所示,设备200可以包含处理器202、存储器204、输入/输出电路206、通信电路208、网络分析电路210、装置管理电路212和远程管理电路214。设备200可被配置成执行上文相对于图1说明的操作。虽然相对于功能限制说明了这些组件202-214,但是应理解,特定实施方案必定包含特定硬件的使用。还应理解,这些组件202-214中的某些组件可以包含类似或共同的硬件。例如,两组电路都能利用相同处理器、网络接口、存储媒体等等的使用以执行其相关功能,使得每一组电路不需要重复的硬件。本文相对于设备组件所使用的术语“电路”的使用因而应当理解成包含被配置成执行与本文所述的特定电路相关的功能的特定硬件。The controller device 102 can be implemented by one or more computing systems (such as the device 200 depicted in Figure 2). As shown in Figure 2, the device 200 can include a processor 202, a memory 204, an input/output circuit 206, a communication circuit 208, a network analysis circuit 210, a device management circuit 212, and a remote management circuit 214. The device 200 can be configured to perform the operations described above with respect to Figure 1. Although these components 202-214 are described with respect to functional limitations, it should be understood that a particular embodiment necessarily includes the use of specific hardware. It should also be understood that some of these components 202-214 can include similar or common hardware. For example, two groups of circuits can utilize the same processor, network interface, storage media, etc. to perform their related functions, so that each group of circuits does not require duplicate hardware. The use of the term "circuit" used herein with respect to device components should therefore be understood to include specific hardware configured to perform the functions associated with the specific circuits described herein.

术语“电路”应广义理解为包含硬件,并且在一些实施例中包含用于配置硬件的软件。例如,在一些实施例中,“电路”可以包含处理电路、存储媒体、网络接口、输入/输出装置等等。在一些实施例中,设备200的其它元件可以提供或补充特定电路的功能。例如,处理器202可以提供处理功能、存储器204可以提供存储功能、通信电路208可以提供网络接口功能等等。The term "circuitry" should be broadly interpreted to include hardware and, in some embodiments, software used to configure the hardware. For example, in some embodiments, "circuitry" may include processing circuitry, storage media, network interfaces, input/output devices, and the like. In some embodiments, other components of device 200 may provide or supplement the functionality of a particular circuit. For example, processor 202 may provide processing functionality, memory 204 may provide storage functionality, communication circuitry 208 may provide network interface functionality, and so on.

在一些实施例中,处理器202(和/或协处理器或任何其它处理电路辅助处理器或以其它方式与处理器相关)可以经由总线与存储器204通信,总线用于在设备的组件之间传递信息。存储器204可以是非暂时性存储器并且可以包含(例如)一或多个易失性和/或非易失性存储器。换句话说,例如,存储器可以是电子存储装置(例如计算机可读存储媒体)。存储器204可被配置成存储用于使得设备能够执行根据本发明的实例实施例的各种功能的信息、数据、内容、应用程序、指令等等。In some embodiments, the processor 202 (and/or a coprocessor or any other processing circuitry assisting the processor or otherwise associated with the processor) can communicate with the memory 204 via a bus that is used to transfer information between components of the device. The memory 204 can be a non-transitory memory and can include (for example) one or more volatile and/or non-volatile memories. In other words, for example, the memory can be an electronic storage device (e.g., a computer-readable storage medium). The memory 204 can be configured to store information, data, content, applications, instructions, etc. for enabling the device to perform various functions according to example embodiments of the present invention.

处理器202可以用多种不同方式具体实施,并且可以例如包含一或多个被配置成独立工作的处理装置。另外或替代地,处理器可以包含一或多个处理器,其经由总线串列配置,以使得能够独立执行指令、管线处理和/或多线程处理。“处理电路”这个术语的使用可以理解为包含单核处理器、多核处理器、设备内部的多个处理器和/或远程或“云端”处理器。The processor 202 can be implemented in a variety of different ways and may, for example, include one or more processing devices configured to operate independently. Additionally or alternatively, the processor may include one or more processors configured in series via a bus to enable independent instruction execution, pipeline processing, and/or multi-threaded processing. The use of the term "processing circuitry" may be understood to include a single-core processor, a multi-core processor, multiple processors within a device, and/or a remote or "cloud" processor.

在实例实施例中,处理器202可被配置成执行存储于存储器204中或以其它方式可供处理器访问的指令。或者或另外,处理器可被配置成执行硬译码功能。因此,无论是通过硬件或软件方法还是通过其组合配置的,处理器都能代表能够在相应地配置的同时执行根据本发明的一个实施例的操作的实体(例如在电路中实体地具体实施)。替代地,作为另一实例,当处理器具体实施为软件指令的执行器时,指令可以具体配置处理器以在执行指令时实行本文所述的算法和/或操作。In an example embodiment, the processor 202 may be configured to execute instructions stored in the memory 204 or otherwise accessible to the processor. Alternatively or additionally, the processor may be configured to perform hard-coded functionality. Thus, whether configured by hardware or software methods, or by a combination thereof, a processor can represent an entity (e.g., physically embodied in circuitry) capable of performing operations according to an embodiment of the present invention while being configured accordingly. Alternatively, as another example, when the processor is embodied as an executor of software instructions, the instructions may specifically configure the processor to perform the algorithms and/or operations described herein when executing the instructions.

在一些实施例中,设备200可以包含输入/输出电路206,输入/输出电路206又可以与处理器202通信,以向用户提供输出,并且在一些实施例中接收用户输入指示。输入/输出电路206可包括用户界面,并且可以包含显示器,并且可以包括网络用户界面、移动应用、客户端装置、信息站(kiosk)等等。在一些实施例中,输入/输出电路206还可包含键盘、鼠标、操纵杆、触摸屏、触摸区域、软键、麦克风、扬声器或其它输入/输出机构。处理器和/或包括处理器的用户界面电路可被配置成通过存储于处理器可访问的存储器(例如存储器204等等)上的计算机程序指令(例如软件和/或固件)控制一或多个用户界面元件的一或多个功能。In some embodiments, the device 200 may include input/output circuitry 206, which may in turn communicate with the processor 202 to provide output to a user and, in some embodiments, receive user input indications. The input/output circuitry 206 may include a user interface and may include a display and may include a web user interface, a mobile application, a client device, a kiosk, and the like. In some embodiments, the input/output circuitry 206 may also include a keyboard, a mouse, a joystick, a touch screen, a touch area, soft keys, a microphone, a speaker, or other input/output mechanisms. The processor and/or user interface circuitry including the processor may be configured to control one or more functions of one or more user interface elements via computer program instructions (e.g., software and/or firmware) stored in a memory accessible to the processor (e.g., memory 204, etc.).

通信电路208可以是任何装置,诸如具体实施在硬件中或硬件与软件的组合中的装置或电路,其被配置成从网络和/或与设备200通信的任何其它装置、电路或模块接收数据和/或向网络和/或与设备200通信的任何其它装置、电路或模块传输数据。就此而言,通信电路208可包含(例如)用于实现与有线或无线通信网络的通信的网络接口。例如,通信电路208可以包含一或多个网络接口卡、天线、总线、交换机、路由器、调制解调器和支持硬件和/或软件,或者任何其它适合于经由网络实现通信的装置。另外或替代地,通信接口可以包含用于与天线交互以实现经由天线传输信号并且处理经由天线接收到的信号的接收的电路。The communication circuitry 208 can be any device, such as a device or circuit embodied in hardware or a combination of hardware and software, that is configured to receive data from a network and/or any other device, circuit, or module in communication with the device 200 and/or transmit data to a network and/or any other device, circuit, or module in communication with the device 200. In this regard, the communication circuitry 208 can include, for example, a network interface for enabling communication with a wired or wireless communication network. For example, the communication circuitry 208 can include one or more network interface cards, antennas, buses, switches, routers, modems, and supporting hardware and/or software, or any other device suitable for enabling communication via a network. Additionally or alternatively, the communication interface can include circuitry for interacting with an antenna to enable transmission of signals via the antenna and processing reception of signals received via the antenna.

网络分析电路210包含硬件,其被配置成检测网络上的装置并监视网络条件。例如,网络分析电路210可以与通信电路208介接以检测在家庭网络上接收到的特定网络包。例如,可以通过分析网络数据以检测DHCP请求、IPV6路由器发现包、地址分辨协议(ARP)数据等等来检测装置。网络分析电路210还可检测并监视网络带宽、网络连接和断开事件、IP冲突以及某些类型和数量的数据包的存在。在一些实施例中,网络分析电路210可以用“混杂”方式检测网络数据,其中即使门房装置不一定是既定接收方,也要接收并分析所有包。这些网络包可以直接从通信电路208获得,或者在分析之前存储于设备200上(诸如经由存储器204存储)。从网络包数据识别装置和分析网络的操作可以通过诸如处理器202之类的处理电路执行,并且检测到的装置可以用电子格式存储于存储器204中。在一些实施例中,网络分析电路210可以生成电子信息,该电子信息向装置管理电路212通知新检测到的装置、已经断开的装置、连接持续时间、当前网络状态等等。Network analysis circuitry 210 comprises hardware configured to detect devices on a network and monitor network conditions. For example, network analysis circuitry 210 can interface with communication circuitry 208 to detect specific network packets received on a home network. For example, devices can be detected by analyzing network data to detect DHCP requests, IPv6 router discovery packets, Address Resolution Protocol (ARP) data, and the like. Network analysis circuitry 210 can also detect and monitor network bandwidth, network connection and disconnection events, IP conflicts, and the presence of certain types and quantities of data packets. In some embodiments, network analysis circuitry 210 can detect network data in a "promiscuous" manner, receiving and analyzing all packets even if the concierge device is not necessarily the intended recipient. These network packets can be obtained directly from communication circuitry 208 or stored on device 200 (such as via memory 204) prior to analysis. The operations of identifying devices from network packet data and analyzing the network can be performed by processing circuitry such as processor 202, and the detected devices can be stored in electronic format in memory 204. In some embodiments, the network analysis circuitry 210 may generate electronic messages that notify the device management circuitry 212 of newly detected devices, devices that have disconnected, connection durations, current network status, and the like.

还应了解,在一些实施例中,除了处理器202之外,网络分析电路210还可以包含单独的处理器、专门配置的现场可编程门阵列(FPGA)或专用接口电路(ASIC)以检测网络上的装置。网络分析电路210因而使用设备的硬件组件实施,该硬件组件通过硬件或软件配置以用于实施这些规划的功能。It should also be understood that in some embodiments, in addition to the processor 202, the network analysis circuit 210 may also include a separate processor, a specially configured field programmable gate array (FPGA), or an application specific interface circuit (ASIC) to detect devices on the network. The network analysis circuit 210 is thus implemented using hardware components of the device that are configured through hardware or software to implement these planned functions.

装置管理电路212包含硬件,该硬件被配置成管理在网络上检测到的装置并且响应于某些准则而采取合适的行动。为此目的,装置管理电路212可以包含处理器或处理电路,诸如处理器202,以实施规则引擎或其它应用程序以便响应于检测到某些准则而采取某些行动。例如,装置管理电路212可以负责响应于网络分析电路210检测到的网络条件而采取某些行动。例如,装置管理电路212可以经由设备200提供的用户界面(例如通过通信电路208或输入/输出电路206)向用户提供通知。装置管理电路212还可基于从网络分析电路210接收的数据来确定网络的特性,并且向用户提供建议优化或故障处理措施以处理任何检测到的问题、改善性能等等。就此而言,装置管理电路212可以实施规则引擎或其它决策组件以响应于特定网络条件而采取合适的行动。下文相对于图8进一步描述此规则引擎组件的实例。装置管理电路212还可基于观察到的网络业务数据识别装置类型。例如,装置管理电路212可以识别协议类型、装置识别符和发送至那些装置或从那些装置发送的数据的网络业务标头内包括的其它装置信息,以尝试将网络业务数据与已知的装置类型匹配。因此,装置管理电路212可以例如确定特定装置是智能手机、平板电脑、无线扬声器、无线鼠标、“智能”电器(例如带有网络连接功能的冰箱、洗衣机或烘干机)或其它装置类型。Device management circuitry 212 comprises hardware configured to manage devices detected on the network and take appropriate actions in response to certain criteria. To this end, device management circuitry 212 may include a processor or processing circuitry, such as processor 202, to implement a rules engine or other application to take certain actions in response to the detection of certain criteria. For example, device management circuitry 212 may be responsible for taking certain actions in response to network conditions detected by network analysis circuitry 210. For example, device management circuitry 212 may provide notifications to a user via a user interface provided by device 200 (e.g., via communication circuitry 208 or input/output circuitry 206). Device management circuitry 212 may also determine network characteristics based on data received from network analysis circuitry 210 and provide the user with recommended optimization or troubleshooting measures to address any detected issues, improve performance, and so on. In this regard, device management circuitry 212 may implement a rules engine or other decision-making component to take appropriate actions in response to specific network conditions. An example of such a rules engine component is further described below with respect to FIG. Device management circuitry 212 may also identify device types based on observed network traffic data. For example, the device management circuitry 212 may identify protocol types, device identifiers, and other device information included within network traffic headers of data sent to or from those devices to attempt to match network traffic data with known device types. Thus, the device management circuitry 212 may, for example, determine whether a particular device is a smartphone, a tablet, a wireless speaker, a wireless mouse, a "smart" appliance (e.g., a refrigerator, washer, or dryer with network connectivity), or other device types.

装置管理电路212还可维护数据结构,该数据结构表示检测到哪些装置。装置信息可以存储在数据结构内以表示装置类型、与装置相关的各种网络量度(例如使用的带宽、安全日志等)以及装置是否是已知的和/或经过授权的。例如,当检测到新装置时,可以向用户呈现界面(例如通过远程管理电路214提供)以给装置命名、表示装置类型和/或表示新检测到的装置是经过授权的。The device management circuitry 212 may also maintain a data structure indicating which devices have been detected. Device information may be stored within the data structure to indicate the device type, various network metrics associated with the device (e.g., bandwidth used, security logs, etc.), and whether the device is known and/or authorized. For example, when a new device is detected, an interface may be presented to the user (e.g., provided by the remote management circuitry 214) to name the device, indicate the device type, and/or indicate that the newly detected device is authorized.

在另外其它实施例中,装置管理电路212可以可操作以检测何时未经授权的装置进入了网络、检测何时装置到特定时间为止未能连接(例如青少年的智能手机到与宵禁相关的特定时间为止尚未连接到家庭网络)等等。虽然处理器202可以用于执行装置管理,但是还应了解,在一些实施例中,装置管理电路212可以包含单独的处理器、专门配置的现场可编程门阵列(FPGA)或专用接口电路(ASIC)来执行这些任务。装置管理电路212因而使用设备的硬件组件实施,该硬件组件通过硬件或软件配置以用于实施这些规划的功能。In still other embodiments, the device management circuitry 212 may be operable to detect when an unauthorized device has entered the network, detect when a device has failed to connect by a specified time (e.g., a teenager's smartphone has not connected to the home network by a specified time associated with curfew), and the like. While the processor 202 may be used to perform device management, it should also be understood that in some embodiments, the device management circuitry 212 may include a separate processor, a specially configured field programmable gate array (FPGA), or an application specific interface circuit (ASIC) to perform these tasks. The device management circuitry 212 is thus implemented using hardware components of the device that are configured through hardware or software to perform these intended functions.

远程管理电路214包含硬件,该硬件被配置成提供远程“控制板”型界面,用于可视显示装置管理电路212和网络分析电路210生成的数据。以此方式,远程管理电路214可以经由在设备200上执行的本地服务器应用程序而提供数据,或者可以将数据提供到远程计算机(例如本地路由器或云端实施方案)以容许查看设备200生成的数据。这些信息可包含(例如)与连接到网络的装置有关的数据,包含装置标识、网络配置设置、故障处理数据、保修数据(例如其中可经由网络访问装置序列号)等等。远程管理电路214还可包含硬件,该硬件被配置成用于从远程界面接收输入,诸如一或多个规则的配置和与规则引擎相关的通知。Remote management circuitry 214 includes hardware configured to provide a remote "dashboard" type interface for visually displaying data generated by device management circuitry 212 and network analysis circuitry 210. In this manner, remote management circuitry 214 can provide data via a local server application executing on device 200, or can provide data to a remote computer (e.g., a local router or cloud-based implementation) to allow viewing of data generated by device 200. This information can include, for example, data related to devices connected to the network, including device identification, network configuration settings, troubleshooting data, warranty data (e.g., where device serial numbers are accessible via the network), and the like. Remote management circuitry 214 can also include hardware configured to receive input from the remote interface, such as configuration of one or more rules and notifications associated with the rule engine.

在一些实施例中,远程管理电路214还可提供界面,该界面允许输入保修数据。例如,远程管理电路214可以提供界面,该界面允许用户输入连接到网络的一或多个装置的保修信息。实例保修信息可以包含特定装置是否为用户所有、用户在哪里购买了该装置、为该装置支付的金额、购买装置使用的付款方式、与用于购买装置的信用卡相关的品牌或优惠等等。在一些实施例中,可以通过条码扫描仪、通过扫描收据、通过允许用户输入SKU等等来由用户提供这些保修信息。另外或替代地,在一些实施例中,远程管理电路214可以直接从网络分析电路210检测到的一或多个装置确定保修信息。In some embodiments, remote management circuitry 214 may also provide an interface that allows for the entry of warranty data. For example, remote management circuitry 214 may provide an interface that allows a user to enter warranty information for one or more devices connected to the network. Example warranty information may include whether a particular device is owned by the user, where the user purchased the device, the amount paid for the device, the payment method used to purchase the device, the brand or offers associated with the credit card used to purchase the device, and so forth. In some embodiments, this warranty information may be provided by the user via a barcode scanner, by scanning a receipt, by allowing the user to enter a SKU, and so forth. Additionally or alternatively, in some embodiments, remote management circuitry 214 may determine warranty information directly from one or more devices detected by network analysis circuitry 210.

在一些实施例中,远程管理电路214可以向检测到的装置的厂家注册该装置以获得保修范围,或者向用户提供界面以执行此操作。在一些实施例中,远程管理电路214可以基于检测到哪些装置而向用户提供购买新的或额外的保修范围的能力。在一些实施例中,可以用“捆绑”形式提供保修范围,从而在网络分析电路210检测到的附接到网络的多个装置上提供覆盖。本发明的一些实施例可以辅助确定一或多个联网装置的价值,并且经由界面显示那些所确定的价值。例如,实施例可以确定特定装置的型号、评估特定装置的状况、并且使用型号和状况基于数据库查找而确定特定装置的价值。一些实施例可以容许根据所确定的价值来出售或交换这些装置。一些实施例可以允许一或多个装置折旧以交换其它联网装置的保修范围。例如,用户智能手机的鉴定价值可以是$80,并且实施例可以可编程控制地方便装置折旧,以交换例如在家庭网络上识别的另一智能手机、电视机和平板电脑上的保修范围。In some embodiments, remote management circuitry 214 may register the detected device with its manufacturer to obtain warranty coverage, or provide the user with an interface to do so. In some embodiments, remote management circuitry 214 may offer the user the ability to purchase new or additional warranty coverage based on which devices are detected. In some embodiments, warranty coverage may be provided in a "bundle" format, providing coverage across multiple devices connected to the network detected by network analysis circuitry 210. Some embodiments of the present invention may facilitate determining the value of one or more networked devices and display those determined values via an interface. For example, an embodiment may determine the model of a particular device, assess the condition of the particular device, and use the model and condition to determine the value of the particular device based on a database lookup. Some embodiments may allow these devices to be sold or exchanged based on the determined value. Some embodiments may allow one or more devices to be traded in for warranty coverage on other networked devices. For example, a user's smartphone may have an identified value of $80, and an embodiment may programmably facilitate device trade-in in exchange for warranty coverage on, for example, another smartphone, a television, and a tablet identified on the home network.

在一些实施例中,远程管理电路214可以提供界面以用于为保修范围内的装置发送或发起申请。例如,远程管理电路214可以包含界面,允许用户向客服代表提供信息。在一些实施例中,这些信息由设备200自动收集和/或生成,这样就无需用户在界面中输入这些信息。In some embodiments, remote management circuitry 214 may provide an interface for sending or initiating a claim for a device under warranty. For example, remote management circuitry 214 may include an interface that allows a user to provide information to a customer service representative. In some embodiments, this information is automatically collected and/or generated by device 200, eliminating the need for a user to enter this information into the interface.

远程管理电路214可以使用诸如处理器202之类的处理电路来执行这些功能。虽然处理器202可以用于执行远程管理功能,但是还应了解,在一些实施例中,远程管理电路214可以包含单独的处理器、专门配置的现场可编程门阵列(FPGA)或专用接口电路(ASIC)以执行这些任务。远程管理电路214因而使用设备的硬件组件实施,该硬件组件通过硬件或软件配置以用于实施这些规划的功能。Remote management circuitry 214 may utilize processing circuitry such as processor 202 to perform these functions. While processor 202 may be used to perform remote management functions, it should also be understood that in some embodiments, remote management circuitry 214 may include a separate processor, a specially configured field programmable gate array (FPGA), or an application specific interface circuit (ASIC) to perform these tasks. Remote management circuitry 214 is thus implemented using hardware components of the device that are configured through hardware or software to implement these intended functions.

如将了解的,任何这些计算机程序指令和/或其它类型的代码可以加载到计算机、处理器或其它可编程设备的电路上以产生机器,使得执行机器上的代码的所述计算机、处理器、其它可编程电路形成用于实施各种功能、包含本文所述的那些功能的装置。As will be appreciated, any of these computer program instructions and/or other types of code may be loaded onto the circuitry of a computer, processor, or other programmable device to produce a machine, such that the computer, processor, or other programmable circuitry executing the code on the machine forms an apparatus for performing various functions, including those described herein.

还应注意,本文所述的实例界面呈现的所有或一些信息可以基于设备200的一或多个组件接收到的、生成的和/或维护的数据。在一些实施例中,还可利用一或多个外部系统(诸如远程云计算和/或数据存储系统)提供本文中论述的至少一些功能。It should also be noted that all or some of the information presented by the example interfaces described herein may be based on data received, generated, and/or maintained by one or more components of device 200. In some embodiments, one or more external systems (such as remote cloud computing and/or data storage systems) may also be utilized to provide at least some of the functionality discussed herein.

用于实施本发明的实施例的卫星设备的实例Examples of Satellite Equipment for Implementing Embodiments of the Invention

卫星装置108可以通过一或多个计算系统(诸如图3中描绘的设备300)具体实施。如上文所述,卫星装置可以是在一定的实体区域上散布的多个装置之一,用以收集关于网络的数据以向控制器报告。以此方式,卫星装置可被配置成无源地监听各种频带(例如802.11协议集、蓝牙、紫蜂和其它无线协议)上的网络业务,并且检测所述网络上发生的通信事件。可以向控制器、诸如上文相对于图1和图2描述的控制器报告通信事件。如图3中所示,设备300可以包含处理器302、存储器304、输入/输出电路306、通信电路308、网络监视电路310、控制器接口电路312和电力管理电路314。Satellite device 108 may be implemented by one or more computing systems, such as device 300 depicted in FIG3 . As described above, a satellite device may be one of a plurality of devices dispersed over a physical area to collect data about a network for reporting to a controller. In this manner, a satellite device may be configured to passively listen for network traffic on various frequency bands (e.g., the 802.11 protocol suite, Bluetooth, ZigBee, and other wireless protocols) and detect communication events occurring on the network. Communication events may be reported to a controller, such as the controller described above with respect to FIG1 and FIG2 . As shown in FIG3 , device 300 may include a processor 302, memory 304, input/output circuitry 306, communication circuitry 308, network monitoring circuitry 310, controller interface circuitry 312, and power management circuitry 314.

虽然相对于功能限制说明了这些组件302-314,但是应理解,特定实施方案必定包含特定硬件的使用。还应理解,这些组件302-314中的某些组件可以包含类似或共同的硬件。例如,两组电路都能利用相同处理器、网络接口、存储媒体等等的使用以执行其相关功能,使得每一组电路不需要重复的硬件。本文相对于设备组件所使用的术语“电路”的使用因而应当理解成包含被配置成执行与本文所述的特定电路相关的功能的特定硬件。While these components 302-314 are described with respect to functional limitations, it should be understood that specific implementations necessarily include the use of specific hardware. It should also be understood that some of these components 302-314 may include similar or common hardware. For example, both sets of circuits can utilize the same processor, network interface, storage media, etc. to perform their related functions, such that each set of circuits does not require duplicate hardware. The use of the term "circuitry" as used herein with respect to device components should therefore be understood to include specific hardware configured to perform the functions associated with the specific circuits described herein.

处理器302、存储器304和输入/输出电路306的配置方式可以与上文相对于图2所述的类似,并且为了简洁起见不再赘述。The processor 302 , memory 304 , and input/output circuitry 306 may be configured in a manner similar to that described above with respect to FIG. 2 , and are not described again for the sake of brevity.

设备300的通信电路308的实施方式也可类似于设备200的通信电路208。然而,应了解,在一些实施例中,通信电路308可以包含额外或替代的硬件,该硬件被配置成检测各种频带上的根据各种无线协议的射频传输。这些硬件可被配置成检测在设备300附近发生的通信事件并且通知网络监视电路310。The implementation of the communication circuit 308 of the device 300 may also be similar to the communication circuit 208 of the device 200. However, it should be understood that in some embodiments, the communication circuit 308 may include additional or alternative hardware configured to detect radio frequency transmissions according to various wireless protocols on various frequency bands. Such hardware may be configured to detect communication events occurring in the vicinity of the device 300 and notify the network monitoring circuit 310.

网络监视电路310包含被配置成识别网络通信事件的硬件。这些网络通信事件可以通过使用通信电路308检测到,然后转发到控制器接口电路312以管理向控制器装置的传输。网络通信事件可以包含设备300检测到的任何传输。例如,设备300可以检测来自向附近所有装置通知其存在的装置、加入(或试图加入)无线网络的装置、请求和接收因特网协议地址的装置、彼此通信(例如传输数据包)的装置等等的传输。在一些实施例中,网络监视电路310可以将所有接收到的网络通信事件转发到控制器,而在其它实施例中,网络监视电路310可以去掉消息数据有效负载,以便减少在将网络通信事件传输到控制器时消耗的带宽量。例如,发送到控制器向控制器通知网络通信事件的事件消息可以仅仅包含检测到的网络通信事件的标头。The network monitoring circuit 310 includes hardware configured to identify network communication events. These network communication events can be detected using the communication circuit 308 and then forwarded to the controller interface circuit 312 to manage transmissions to the controller device. Network communication events can include any transmission detected by the device 300. For example, the device 300 can detect transmissions from a device that notifies all nearby devices of its presence, a device that joins (or attempts to join) a wireless network, a device that requests and receives an Internet Protocol address, a device that communicates with each other (e.g., transmits data packets), and the like. In some embodiments, the network monitoring circuit 310 can forward all received network communication events to the controller, while in other embodiments, the network monitoring circuit 310 can remove the message data payload to reduce the amount of bandwidth consumed when transmitting the network communication event to the controller. For example, an event message sent to the controller to notify the controller of a network communication event can contain only the header of the detected network communication event.

控制器接口电路312包含硬件,该硬件被配置成通过传输事件消息向控制器通知网络通信事件。控制器接口电路312还可执行与控制器的其它通信,诸如控制器与设备300之间的初始配对。在一些实施例中,控制器接口电路312可以经由各种无线网络协议与控制器通信,包含但不限于802.11系列、蓝牙、紫蜂等等。控制器接口电路312可以基于网络监视电路310检测到的网络通信事件构建事件消息。下文相对于图7进一步用于生成的处理的实例。控制器接口电路312可以利用通信电路308的组件以实现向控制器传输事件消息,但是还应了解,在一些实施例中,控制器接口电路312、网络监视电路310和通信电路308可以各自包含独立的硬件。例如,可以使用与设备300和控制器之间通信用的硬件不同的天线、收发器等等来监听各种类型的网络业务以识别网络上的各种装置之间发生的网络通信事件。Controller interface circuitry 312 includes hardware configured to notify the controller of network communication events by transmitting event messages. Controller interface circuitry 312 may also perform other communications with the controller, such as initial pairing between the controller and device 300. In some embodiments, controller interface circuitry 312 may communicate with the controller via various wireless network protocols, including but not limited to the 802.11 family, Bluetooth, ZigBee, and the like. Controller interface circuitry 312 may construct event messages based on network communication events detected by network monitoring circuitry 310. An example of the generated processing is further described below with respect to FIG. 7. Controller interface circuitry 312 may utilize components of communication circuitry 308 to implement the transmission of event messages to the controller. However, it should be understood that in some embodiments, controller interface circuitry 312, network monitoring circuitry 310, and communication circuitry 308 may each include independent hardware. For example, antennas, transceivers, and the like, different from the hardware used for communication between device 300 and the controller, may be used to monitor various types of network traffic to identify network communication events occurring between various devices on the network.

电力管理电路314包含被配置成管理向设备300提供电力的处理的硬件。具体来说,电力管理电路314包含硬件,该硬件被配置成能启用主电源(例如交流电(AC)电力)和备用电源(例如备用电池)。由于并入有卫星装置的诸如设备300的网络分析系统可能经常用于安全用途(例如检测未经授权的装置和/或未经授权的网络使用的存在),所以卫星装置可能会遭受通过移除电源(诸如从壁装插座上拔掉)使其功能停用的尝试。为了即使拔掉时也能继续提供装置的功能,电力管理电路314可以方便故障时转移到诸如电池之类的备用电源。在一些实施例中,设备300可以设计为低功率装置,能够在更长的时间段中通过电池电力工作(例如24小时)。转移到备用电池后,电力管理电路314可以停用外部电源指示器(例如发光二极管(LED)或其它可视电力指示器),使得设备300看起来已断电。停用这些外部电源指示器可能使犯罪者认为装置已停用,并且还提供在装置用电池电力工作时减少耗电的益处。Power management circuitry 314 includes hardware configured to manage the process of providing power to device 300. Specifically, power management circuitry 314 includes hardware configured to enable a primary power source (e.g., alternating current (AC) power) and a backup power source (e.g., a backup battery). Because network analysis systems such as device 300 that incorporate satellite devices may often be used for security purposes (e.g., to detect the presence of unauthorized devices and/or unauthorized network use), the satellite device may be subject to attempts to disable its functionality by removing the power source (e.g., unplugging it from a wall outlet). To ensure that the device continues to function even when unplugged, power management circuitry 314 can facilitate failover to a backup power source, such as a battery. In some embodiments, device 300 can be designed as a low-power device capable of operating on battery power for extended periods of time (e.g., 24 hours). After transferring to the backup battery, power management circuitry 314 can disable an external power indicator (e.g., a light-emitting diode (LED) or other visual power indicator) so that device 300 appears to be powered off. Disabling these external power indicators may lead a criminal to believe that the device is disabled and also provides the benefit of reducing power consumption when the device is operating on battery power.

如将了解的,任何这些计算机程序指令和/或其它类型的代码可以加载到计算机、处理器或其它可编程设备的电路上以产生机器,使得执行机器上的代码的所述计算机、处理器、其它可编程电路形成用于实施各种功能、包含本文相对于设备200和设备300所述的那些功能的装置。As will be appreciated, any of these computer program instructions and/or other types of code may be loaded onto the circuitry of a computer, processor, or other programmable device to produce a machine, such that the computer, processor, or other programmable circuitry that executes the code on the machine forms an apparatus for implementing various functions, including those described herein with respect to device 200 and device 300.

如上文所述并且如基于本公开将了解,本发明的实施例可以配置成方法、移动装置、后端网络装置等等。因此,实施例可包括各种装置,完全包含硬件或包含软件与硬件的任何组合。此外,实施例可以采取至少一个非暂时性计算机可读存储媒体上的计算机程序产品的形式,该非暂时性计算机可读存储媒体具有在存储媒体上具体实施的计算机可读程序指令(例如计算机软件)。可以利用任何合适的计算机可读存储媒体,包含非暂时性硬盘、CD-ROM、快闪存储器、光学存储装置或磁性存储装置。As described above and as will be appreciated based on this disclosure, embodiments of the present invention can be configured as methods, mobile devices, backend network devices, and the like. Thus, embodiments can include various devices, entirely comprising hardware or comprising any combination of software and hardware. Furthermore, embodiments can take the form of a computer program product on at least one non-transitory computer-readable storage medium having computer-readable program instructions (e.g., computer software) embodied on the storage medium. Any suitable computer-readable storage medium can be utilized, including a non-transitory hard disk, CD-ROM, flash memory, optical storage device, or magnetic storage device.

现在描述了被配置成实施和/或支持各种实例实施例的实施方案的设备,现在将描述几个实例实施例的特征。应了解,以下特征是一些实例实施例提供的特征的非限制性实例。此外,应了解,在公开范围内可以设想实施本文中进一步描述的特征的各种子集或组合的实施例。因此,应了解,一些实例实施例可以省略以下特征中的一或多个和/或实施以下特征中的一或多个的变体。Having now described devices configured to implement and/or support implementations of various example embodiments, features of several example embodiments will now be described. It should be understood that the following features are non-limiting examples of features provided by some example embodiments. Furthermore, it should be understood that embodiments implementing various subsets or combinations of the features further described herein are contemplated within the scope of the disclosure. Thus, it should be understood that some example embodiments may omit one or more of the following features and/or implement variations of one or more of the following features.

示例性网络架构Exemplary Network Architecture

图4描绘网络架构400的示例性实施例,其突出显示根据本发明的实施例的网络分析系统的组件之间的通信。网络架构400包含网关路由器410,其与控制器402、多个卫星装置404-408和多个网络装置412-420通信。卫星装置404-408中的每个卫星装置可被配置成检测特定实体区域内的网络通信事件。例如,第一卫星装置404可具有第一检测区域422,第二卫星装置406可具有第二检测区域424,第三卫星装置可具有第三检测区域426。虽然仅仅示出卫星装置404-408具有检测区域,但是应了解,在一些实施例中,控制器402还可以具有用于检测网络装置的检测区域。FIG4 depicts an exemplary embodiment of a network architecture 400, highlighting the communication between components of a network analysis system according to an embodiment of the present invention. Network architecture 400 includes a gateway router 410 that communicates with a controller 402, a plurality of satellite devices 404-408, and a plurality of network devices 412-420. Each of satellite devices 404-408 can be configured to detect network communication events within a specific physical area. For example, first satellite device 404 can have a first detection area 422, second satellite device 406 can have a second detection area 424, and third satellite device can have a third detection area 426. While only satellite devices 404-408 are shown as having detection areas, it should be understood that in some embodiments, controller 402 can also have detection areas for detecting network devices.

卫星装置404-408中的每个卫星装置可操作以通过监视无线通信来检测去往和来自位于其相应检测区域内的网络装置的网络通信事件。检测到网络通信事件后,卫星装置404-408可以经由网络向控制器402通知网络通信事件。卫星装置404-408可以通过使用网络装置通信时使用的相同网络向控制器传输网络通信事件,该网络是网关路由器410提供的网络。替代地,在一些实施例中,卫星装置404-408可以经由替代的网络向控制器402传送网络通信事件,该替代网络与网关路由器提供的网络分开存在(例如包括卫星装置和控制器的网状网络)。Each of the satellite devices 404-408 is operable to detect network communication events to and from network devices within its corresponding detection area by monitoring wireless communications. Upon detecting a network communication event, the satellite devices 404-408 may notify the controller 402 of the network communication event via the network. The satellite devices 404-408 may transmit the network communication event to the controller using the same network used by the network devices to communicate, which is the network provided by the gateway router 410. Alternatively, in some embodiments, the satellite devices 404-408 may transmit the network communication event to the controller 402 via an alternative network that exists separately from the network provided by the gateway router (e.g., a mesh network including the satellite devices and the controller).

如上文所述,卫星装置404-408中的每个卫星装置可以检测到所发生的去往和来自位于其检测区域内的网络装置412-420的无线网络通信事件。例如,如图4中所描绘,用于第一检测区域(称为“区域1”)422的卫星装置404可以检测与网络装置412、414和416有关的网络通信事件。用于第二检测区域(称为“区域2”)424的卫星装置406可以检测与网络装置414、416和418有关的网络通信事件。用于第三检测区域(称为“区域3”)426的卫星装置408可以检测与网络装置420有关的网络通信事件。As described above, each of satellite devices 404-408 can detect wireless network communication events occurring to and from network devices 412-420 located within its detection area. For example, as depicted in FIG4 , satellite device 404 for a first detection area (referred to as “Area 1”) 422 can detect network communication events associated with network devices 412, 414, and 416. Satellite device 406 for a second detection area (referred to as “Area 2”) 424 can detect network communication events associated with network devices 414, 416, and 418. Satellite device 408 for a third detection area (referred to as “Area 3”) 426 can detect network communication events associated with network device 420.

卫星装置404-408可被配置成“混杂地”监听,使得它们甚至对于与卫星装置404-408用于与控制器402和/或网关路由器410通信的网络不相关的装置也能在其实体区域中识别本地无线业务。例如,卫星装置404-408可以监听包含经由其它网络(例如蜂窝网络、蓝牙、其它Wi-Fi网络)的通信在内的各种传输。例如,卫星装置404-408可以监听初始连接请求、装置识别信号和除了在卫星装置404-408用于与控制器402和/或网关路由器410通信的相同网络上发生的通信之外的其它传输。The satellite devices 404-408 can be configured to listen "promiscuously," such that they can identify local wireless traffic in their physical area even for devices not associated with the network the satellite devices 404-408 use to communicate with the controller 402 and/or the gateway router 410. For example, the satellite devices 404-408 can listen for a variety of transmissions, including communications via other networks (e.g., cellular networks, Bluetooth, other Wi-Fi networks). For example, the satellite devices 404-408 can listen for initial connection requests, device identification signals, and other transmissions other than communications occurring on the same network the satellite devices 404-408 use to communicate with the controller 402 and/or the gateway router 410.

由于网络装置414和416位于两个检测区域内,所以实施例可以尝试对那些装置的位置进行三角测量,测量的方法是通过向控制器402提供与每个装置相关的信号强度数据,并使用接收信号强度指示符(RSSI)位置检测技术。还应了解,即使是仅在单一检测区域内的装置也可以基于RSSI技术确定位置,但是从重叠的检测区域接收的更多数据点可以改善位置测量的精确度。Because network devices 414 and 416 are located within two detection zones, embodiments may attempt to triangulate the locations of those devices by providing signal strength data associated with each device to controller 402 and using a received signal strength indicator (RSSI) location detection technique. It should also be appreciated that even devices within only a single detection zone may be able to determine location based on RSSI techniques, but receiving more data points from overlapping detection zones may improve the accuracy of the location measurement.

网关路由器410可以是任何被配置成能实现多个网络装置之间的网络通信的装置。虽然本实例总体上是相对于无线装置说明的,但是应了解,一些实施例可能涉及经由网络进行通信的有线装置,并且还可对这些有线装置使用各种网络分析服务,但是还应了解,本实施例的某些功能(例如基于RSSI的位置追踪)是基于无线装置的使用。网关路由器410因而包含可能被配置成提供有线和/或无线通信的硬件。在一些实施例中,网关路由器410提供卫星装置404-408与控制器402之间的网络通信,而在其它实施例中,卫星装置404-408可以直接与控制器通信。在一些实施例中,控制器402的功能可以与网关路由器410的功能集成,使得单一物理装置既能实现网络的装置之间的网络通信,又能执行本文相对于本发明的各种实施例所述的网络分析功能。The gateway router 410 can be any device that is configured to enable network communications between multiple network devices. Although the present example is generally described with respect to wireless devices, it should be understood that some embodiments may involve wired devices that communicate via a network, and various network analysis services may also be used for these wired devices, but it should also be understood that certain functions of the present embodiment (such as RSSI-based location tracking) are based on the use of wireless devices. The gateway router 410 thus includes hardware that may be configured to provide wired and/or wireless communications. In some embodiments, the gateway router 410 provides network communications between the satellite devices 404-408 and the controller 402, while in other embodiments, the satellite devices 404-408 can communicate directly with the controller. In some embodiments, the functionality of the controller 402 can be integrated with the functionality of the gateway router 410 so that a single physical device can both enable network communications between devices of the network and perform the network analysis functions described herein with respect to various embodiments of the present invention.

图5描绘网络架构500的额外实施例的实例,其中控制器502实体上安置于网关路由器510与因特网或其它广域网(WAN)514之间。如上文所述,一或多个网络装置512可以经由网关路由器510建立的网络通信,并且一组卫星装置504-508可以检测网络通信事件并将那些网络通信事件传送到控制器502。5 depicts an example of an additional embodiment of a network architecture 500 in which a controller 502 is physically disposed between a gateway router 510 and the Internet or other wide area network (WAN) 514. As described above, one or more network devices 512 can establish network communications via the gateway router 510, and a set of satellite devices 504-508 can detect network communication events and transmit those network communication events to the controller 502.

控制器502安置于网关路由器510与因特网/WAN 514之间,使得从网关路由器510到位于因特网/WAN 514上的计算节点的网络业务穿过控制器502。大体而言,这可以通过使用控制器502与网关路由器510之间的实体缆线和控制器502与调制解调器、光纤端点或其它因特网/WAN访问装置之间的另一缆线实现,但是在一些实施例中,此穿通可以在软件中实施(例如通过使用路由表),或者无线地实施(例如,以无线中继器的形式)。The controller 502 is positioned between the gateway router 510 and the Internet/WAN 514, such that network traffic from the gateway router 510 to the computing nodes located on the Internet/WAN 514 passes through the controller 502. Generally, this can be accomplished using a physical cable between the controller 502 and the gateway router 510 and another cable between the controller 502 and a modem, fiber optic endpoint, or other Internet/WAN access device, but in some embodiments, this pass-through can be implemented in software (e.g., by using a routing table) or wirelessly (e.g., in the form of a wireless repeater).

以此方式安置控制器502,有利地确保能通过控制器502监视和分析来自每个网络装置512的网络业务,即使业务是经由未必与卫星装置交互的有线连接发生也是如此。Positioning controller 502 in this manner advantageously ensures that network traffic from each network device 512 can be monitored and analyzed by controller 502, even if the traffic occurs via a wired connection that does not necessarily interact with a satellite device.

替代地,在一些实施例中,不同于控制器502的一个装置可以安置于网关路由器510与因特网/WAN 514之间。例如,经过专门配置的卫星装置可以包含如上文所述用于实施实体缆线穿通的端口,并且经过专门配置的卫星装置可以用与上述其它卫星装置相似的方式检测网络通信事件并向控制器502报告事件消息。Alternatively, in some embodiments, a device other than controller 502 may be positioned between gateway router 510 and Internet/WAN 514. For example, a specially configured satellite device may include a port for implementing a physical cable pass-through as described above, and the specially configured satellite device may detect network communication events and report event messages to controller 502 in a manner similar to the other satellite devices described above.

示例性驻地地图Example Station Map

图6示出根据本发明的一些实施例的用网络分析系统生成驻地地图600的实例使用。通过在家庭中安置一系列卫星装置604,有可能生成所有驻地的网络装置地图,这是通过考虑到每一卫星装置的相应检测区域和那些卫星装置能看到的网络装置。驻地地图600描绘控制器602、一系列卫星装置604、网关路由器606和多个网络装置608和610。驻地地图600进一步描绘建筑物(诸如家庭、办公室,等等)的楼层平面图。FIG6 illustrates an example use of a network analysis system to generate a premises map 600, according to some embodiments of the present invention. By placing a series of satellite devices 604 in a home, it is possible to generate a map of all the network devices in the premises, taking into account the corresponding detection area of each satellite device and the network devices that those satellite devices can see. Premises map 600 depicts a controller 602, a series of satellite devices 604, a gateway router 606, and a plurality of network devices 608 and 610. Premises map 600 further depicts a floor plan of a building (such as a home, office, etc.).

为了生成驻地地图600,实施例可以在每一卫星装置604的初始设置和/或校准期间接收该卫星装置的位置数据。例如,用户可以利用界面绘制简单的楼层平面图,并在所绘制的楼层平面图上的对应于建筑物中的每一卫星装置的位置的位置上指示该卫星装置的位置(例如通过放置拖放图标)。To generate the premises map 600, embodiments may receive location data for each satellite assembly 604 during initial setup and/or calibration of the satellite assembly. For example, a user may utilize the interface to draw a simple floor plan and indicate the location of each satellite assembly (e.g., by placing a drag-and-drop icon) at a location on the drawn floor plan that corresponds to the location of each satellite assembly in the building.

驻地地图600还可示出网络装置之间的检测到的关系。例如,驻地地图600可以包含一些图标、动画或其它可视显示,用来指示特定装置与特定路由器或访问点的网络连接(例如,在用户具有多个无线访问点的场景中),或者展示卫星装置检测到的网络装置之间的有线连接,或者通过与网络路由器的直接通信提供的数据。Premises map 600 may also illustrate detected relationships between network devices. For example, premises map 600 may include icons, animations, or other visual displays to indicate network connections of specific devices to specific routers or access points (e.g., in a scenario where a user has multiple wireless access points), or to display wired connections between network devices detected by satellite devices, or data provided through direct communication with network routers.

网络分析系统的组件之间的示例性数据流Example data flow between components of a network analysis system

图7描绘根据本发明的一些实施例的网络分析系统的组件之间的数据流700的实例。具体来说,数据流700示出一或多个卫星704可以如何监视网络装置706以识别与网络装置706相关的网络通信事件708。卫星704可以基于网络通信事件生成一或多个事件消息710并且向控制器702传输事件消息。控制器702可以分析接收到的事件消息710以确定网络状态信息712。控制器702可以向管理界面714提供网络状态信息712,诸如“控制板”型界面,其显示连接到网络的每个装置的状态、那些装置的故障处理信息、那些装置的保修信息、每个装置的位置等等。管理界面714可以进一步向控制器702提供控制器配置数据716以配置控制器的各种功能。下文相对于图8进一步描述这种功能。FIG7 depicts an example of a data flow 700 between components of a network analysis system according to some embodiments of the present invention. Specifically, data flow 700 illustrates how one or more satellites 704 may monitor network devices 706 to identify network communication events 708 associated with network devices 706. Satellites 704 may generate one or more event messages 710 based on the network communication events and transmit the event messages to controller 702. Controller 702 may analyze received event messages 710 to determine network status information 712. Controller 702 may provide network status information 712 to a management interface 714, such as a "dashboard"-style interface displaying the status of each device connected to the network, troubleshooting information for those devices, warranty information for those devices, the location of each device, and so forth. Management interface 714 may further provide controller configuration data 716 to controller 702 to configure various functions of the controller. This functionality is further described below with respect to FIG8.

如上所述,卫星704监视其附近的网络业务。在卫星704包含有线接口和无线接口的一些实施例中,卫星704还可监视发生在有线接口上的网络业务。卫星704检测到的网络业务被监视并且用于生成描述该业务的一系列事件消息。例如,在一些实施例中,使用每个检测到的网络数据包或网络请求生成对应的事件消息。这个网络业务可以包含但是未必限于因特网协议(IP)消息、Bonjour消息、服务器消息块(SMB)消息等等。应了解,任何类型的可以通过卫星704的有线或无线接口检测的消息协议都可以用作生成事件消息的基础。As described above, satellite 704 monitors network traffic in its vicinity. In some embodiments where satellite 704 includes both a wired interface and a wireless interface, satellite 704 may also monitor network traffic occurring on the wired interface. Network traffic detected by satellite 704 is monitored and used to generate a series of event messages describing the traffic. For example, in some embodiments, a corresponding event message is generated using each detected network packet or network request. This network traffic may include, but is not necessarily limited to, Internet Protocol (IP) messages, Bonjour messages, Server Message Block (SMB) messages, and the like. It should be understood that any type of message protocol that can be detected by the wired or wireless interface of satellite 704 may be used as the basis for generating event messages.

事件消息710可以包含多种个别的字段。例如,事件消息710可以包含信号强度字段718、MAC地址字段720、事件类型字段722、时戳字段724和事件有效负载字段726。信号强度字段718可以包含承载该消息的射频传输的测量信号强度。通过在事件消息710中包含信号强度字段,控制器702可以能够确定报告事件消息的卫星704与消息中起源的网络装置706之间的距离。在有线通信的情况下,信号强度字段718可以留空或以其它方式包含令牌或值(例如0)以指示不是无线地接收到的消息。Event message 710 may include various individual fields. For example, event message 710 may include a signal strength field 718, a MAC address field 720, an event type field 722, a timestamp field 724, and an event payload field 726. Signal strength field 718 may include the measured signal strength of the radio frequency transmission carrying the message. By including the signal strength field in event message 710, controller 702 may be able to determine the distance between the satellite 704 reporting the event message and the network device 706 from which the message originated. In the case of wired communication, signal strength field 718 may be left blank or otherwise include a token or value (e.g., 0) to indicate that the message was not received wirelessly.

MAC地址字段720可以包含发端装置的MAC地址。通过包含发端装置的MAC地址,事件消息710可以向控制器702指示网络通信事件的起源网络装置。The MAC address field 720 may include the MAC address of the originating device. By including the MAC address of the originating device, the event message 710 may indicate to the controller 702 the originating network device of the network communication event.

事件类型字段722可以包含描述与网络通信事件相关的特定协议或特定协议子集的信息。例如,事件类型字段722可以指示网络通信事件是IP消息,或者更具体来说,是IP地址解析协议(ARP)消息或动态主机配置协议(DHCP)消息等等。The event type field 722 may include information describing a specific protocol or a specific protocol subset associated with the network communication event. For example, the event type field 722 may indicate that the network communication event is an IP message, or more specifically, an IP Address Resolution Protocol (ARP) message or a Dynamic Host Configuration Protocol (DHCP) message, etc.

时戳字段724可以包含序列号或卫星704接收到消息时的其它时戳。卫星704施加的时戳可以与控制器和/或其它卫星同步,以确保网络分析系统的每个组成装置(即,至少卫星和控制器)的内部时钟彼此同步。以此方式,可以使用时戳识别重复消息,并且确定多个卫星之间的检测顺序。The timestamp field 724 may contain a sequence number or other timestamp of when the message was received by the satellite 704. The timestamp applied by the satellite 704 may be synchronized with the controller and/or other satellites to ensure that the internal clocks of each component device of the network analysis system (i.e., at least the satellite and the controller) are synchronized with each other. In this way, the timestamps may be used to identify duplicate messages and determine the order of detection between multiple satellites.

事件有效负载字段726可以包含关于该事件的额外数据,诸如与网络通信事件相关的数据包的复本。在一些实施例中,事件有效负载字段726可能不包含整个数据包,而是只包含包标头或包中包含的所有数据的另一缩小子集,以便节省网络带宽。The event payload field 726 may contain additional data about the event, such as a copy of the data packet associated with the network communication event. In some embodiments, the event payload field 726 may not contain the entire data packet, but rather only the packet header or another reduced subset of all data contained in the packet, in order to conserve network bandwidth.

向控制器702提供事件消息710,其中控制器702处理事件消息710以生成网络状态信息712以用于输出。The event message 710 is provided to the controller 702 , where the controller 702 processes the event message 710 to generate network status information 712 for output.

事件消息处理的示例性数据流Example data flow for event message processing

图8描绘根据本发明的实施例的使用控制器800的实例处理事件消息以生成网络状态数据的实例。控制器800可以是上文相对于图2描述的设备200,或者它的配置方式可以类似于设备200。控制器800包含消息聚合器组件802、网络分析器组件804、消息元数据存储组件805、规则引擎组件806、驻地绘图器组件808和管理界面810。FIG8 depicts an example of processing event messages to generate network status data using an instance of a controller 800 according to an embodiment of the present invention. Controller 800 may be the device 200 described above with respect to FIG2 , or it may be configured similarly to device 200. Controller 800 includes a message aggregator component 802, a network analyzer component 804, a message metadata storage component 805, a rules engine component 806, a resident mapper component 808, and a management interface 810.

消息聚合器组件802包含用于如上文所述从一或多个卫星装置接收事件消息的服务。消息聚合器组件802可以用作集中源,用于异步接收事件消息、去除接收到的事件的重复、概括接收到的事件消息、和将概括消息传送到网络分析器组件804以用于处理。为了支持这个功能,消息聚合器组件802包含高速处理队列以支持消息实时进入和传送。消息聚合器组件802还可实施接收到的事件消息的消息接收窗,以辅助消息去除重复和卫星装置之间的同步。下面相对于图11-图12进一步描述管理此消息接收窗的处理的实例。消息聚合器组件802还可用控制器800维护的时间时钟在卫星装置之间校准时序机构,以确保网络分析系统的所有组件之间的时戳信息一致。The message aggregator component 802 includes services for receiving event messages from one or more satellite devices, as described above. The message aggregator component 802 can serve as a centralized source for asynchronously receiving event messages, deduplicating received events, summarizing received event messages, and transmitting the summarized messages to the network analyzer component 804 for processing. To support this functionality, the message aggregator component 802 includes a high-speed processing queue to support real-time message entry and transmission. The message aggregator component 802 can also implement a message receive window for received event messages to assist with message deduplication and synchronization between satellite devices. An example of a process for managing this message receive window is further described below with respect to Figures 11-12. The message aggregator component 802 can also calibrate timing mechanisms between satellite devices using the time clock maintained by the controller 800 to ensure consistent timestamp information across all components of the network analysis system.

消息聚合器组件802接收到事件消息并且去除事件消息的重复后,可以将这些聚合事件消息提供到网络分析器组件804以用于处理。网络分析器组件804可以检查聚合事件消息以确定事件消息的协议和任何特定消息类型。在处理期间,可以将聚合事件消息从原生协议翻译成总体描述该消息、消息的用途(例如通过将消息类型映射成已知的消息协议)、发送装置、消息的信号强度、既定接收方装置、任何消息有效负载等等的元语言。翻译成元语言的消息可以存储在消息元数据805的集合(例如数据库或数据表)内。所述消息元数据集合805可以用于多种网络分析和/或量度。例如,消息元数据805可以用作规则引擎组件806的输入,以基于从消息元数据805导出的关于网络的特定状态信息而生成通知或采取其它行动。After the message aggregator component 802 receives the event messages and removes duplicates from the event messages, it can provide these aggregated event messages to the network analyzer component 804 for processing. The network analyzer component 804 can examine the aggregated event messages to determine the protocol of the event messages and any specific message types. During processing, the aggregated event messages can be translated from the native protocol into a meta-language that generally describes the message, the purpose of the message (e.g., by mapping the message type to a known message protocol), the sending device, the signal strength of the message, the intended recipient device, any message payload, etc. The messages translated into the meta-language can be stored in a collection of message metadata 805 (e.g., a database or data table). The message metadata collection 805 can be used for various network analyses and/or metrics. For example, the message metadata 805 can be used as input to the rule engine component 806 to generate notifications or take other actions based on specific state information about the network derived from the message metadata 805.

规则引擎组件806可以包含一系列处理、线程、应用程序等等,其监视事件消息和/或消息元数据集合,以确定那些事件消息和/或消息元数据集合是否符合特定规则准则。当符合规则准则时,可以采取特定行动。例如,在检测到新的未知装置时,规则可以通过电子邮件、作为移动推送通知、通过家庭中的音频输出装置、或通过各种其它通知技术生成通知。例如,当先前未知的无线装置询问网络路由器表明它的身份时,卫星装置可以生成关于网络交互的事件消息、告知控制器800,并且因此处理消息事件的消息可以存储于消息元数据集合805中从而指示该询问。规则引擎组件806可以维护已知装置或先前经过授权的装置的列表,并且发起一项规则,当从不在先前经过授权的装置的列表上的装置发生新询问时生成通知。The rules engine component 806 may comprise a series of processes, threads, applications, and the like that monitor event messages and/or message metadata collections to determine whether those event messages and/or message metadata collections meet specific rule criteria. When rule criteria are met, specific actions may be taken. For example, when a new unknown device is detected, a rule may generate a notification via email, as a mobile push notification, via an audio output device in the home, or via various other notification technologies. For example, when a previously unknown wireless device queries a network router to identify itself, a satellite device may generate an event message regarding the network interaction, notify the controller 800, and a message processing the message event may be stored in the message metadata collection 805 to indicate the query. The rules engine component 806 may maintain a list of known or previously authorized devices and initiate a rule to generate a notification when a new query occurs from a device not on the list of previously authorized devices.

规则可以总体上被视为包含一组准则和响应于符合该准则而有待采取的一或多个行动。规则引擎组件806可以容许分别和彼此配合地利用各种准则。规则准则的实例包含(但不限于)通过卫星检测先前已知的装置、通过特定装置检测因特网通信、检测信号位率超出特定阈值或降低到特定阈值以下、同时检测到已知装置和未知装置、检测到装置在特定位置(例如在特定房间)、检测到通信协议过时或特定装置需要软件更新的其它指示、检测到先前已知的装置在阈值时间量中离开网络、检测到装置保修到期(例如在检测到装置序列号并将其与外部保修管理系统对照的情况下)等等。A rule can be generally viewed as comprising a set of criteria and one or more actions to be taken in response to meeting the criteria. The rule engine component 806 can allow for the utilization of various criteria, both individually and in conjunction with one another. Examples of rule criteria include, but are not limited to, detecting a previously known device via satellite, detecting Internet communications via a particular device, detecting a signal bit rate exceeding or falling below a particular threshold, detecting both known and unknown devices, detecting a device in a particular location (e.g., in a particular room), detecting an outdated communication protocol or other indication that a particular device requires a software update, detecting a previously known device leaving the network for a threshold amount of time, detecting a device warranty expiration (e.g., where the device serial number is detected and compared to an external warranty management system), and the like.

可以响应于符合规则准则而采取的实例行动包含(但不限于)向各种外部系统和/或装置(例如扬声器、电视机、智能手机、路由器管理界面等)生成通知、在两个或更多个装置之间起始流量监视操作、阻挡特定装置(例如通过通知路由器阻挡该装置,诸如通过应用程序编程界面)、触发相机被导向特定位置(例如响应于基于位置数据检测到接近入口或出口的未知装置)、触发让用户购买作废的或未使用的装置的提议(例如在装置先前已知但是在特定一段时间中未检测到的情况下)、触发某一装置基于当前网络配置不兼容或并非最优的通知等等。这些行动可以采用规则引擎组件806生成的通知的形式,该通知如上文所述被传输到各种网络装置。Example actions that can be taken in response to compliance with rule criteria include, but are not limited to, generating notifications to various external systems and/or devices (e.g., speakers, televisions, smartphones, router management interfaces, etc.), initiating traffic monitoring operations between two or more devices, blocking a particular device (e.g., by notifying a router to block the device, such as through an application programming interface), triggering a camera to be directed to a particular location (e.g., in response to detecting an unknown device near an entrance or exit based on location data), triggering an offer for a user to purchase an obsolete or unused device (e.g., where the device was previously known but not detected for a certain period of time), triggering a notification that a certain device is incompatible or suboptimal based on the current network configuration, etc. These actions can take the form of notifications generated by the rules engine component 806, which are transmitted to the various network devices as described above.

规则引擎组件806还可包含规则制作组件,其允许指定特定规则准则并且响应于那些规则准则而采取行动。这些规则可以通过管理界面810定义。The rule engine component 806 may also include a rule authoring component that allows for the specification of specific rule criteria and for actions to be taken in response to those rule criteria. These rules may be defined through the management interface 810.

驻地绘图器组件808被配置成生成控制器800和附带的卫星装置监视的本地实体区域的可视显示,并且说明网络装置安置的方式和与本地实体区域交互的方式。驻地绘图器组件808接收驻地数据集合,该驻地数据集合与网络分析器组件804(例如通过使用RSSI读数)生成的装置位置数据组合以生成可视显示。The premises mapper component 808 is configured to generate a visual display of the local physical area monitored by the controller 800 and the attached satellite devices, and to illustrate how network devices are positioned and interacting with the local physical area. The premises mapper component 808 receives a premises data set and combines it with device location data generated by the network analyzer component 804 (e.g., by using RSSI readings) to generate the visual display.

在一些实施例中,驻地绘图器组件808可以配合一或多个用户装置执行驻地映射操作。例如,驻地绘图器可以指令用户在家里走动,同时在智能手机上执行映射应用程序,用以在用户在家里走来走去时采集各种静态装置(例如不大可能移动的装置,诸如路由器或带网络功能的灯具)的信号强度数据。在一些实施例中,用户可以提供楼层平面图或其它实体数据以用作映射操作的指导。在一些实施例中,驻地绘图器组件808可以基于映射操作结果推荐用于放置卫星装置的特定位置。In some embodiments, the site mapper component 808 can cooperate with one or more user devices to perform site mapping operations. For example, the site mapper can instruct a user to move around their home while executing a mapping application on a smartphone to collect signal strength data for various static devices (e.g., devices that are unlikely to move, such as routers or network-enabled lights) as the user moves around the home. In some embodiments, the user can provide a floor plan or other physical data to guide the mapping operation. In some embodiments, the site mapper component 808 can recommend specific locations for placing satellite devices based on the results of the mapping operation.

驻地绘图器组件808可以包含一个界面,以允许用户布设一定的实体区域(例如周界和内壁)。该界面还可允许用户在该实体区域内选择其位置,并且对一或多个访问点(例如路由器、网络范围扩展器等等)或卫星装置进行信号强度测量。在一些实施例中,如果从一或多个卫星接收的信号强度未能超出最小阈值,则可以经由该界面提供建议将卫星装置放置在信号强度低的位置的通知。在一些实施例中,界面可以推荐以特定间隔放置卫星装置(例如每隔10英尺、25英尺或50英尺)。The site mapper component 808 can include an interface that allows a user to define a physical area (e.g., perimeters and interior walls). The interface can also allow a user to select a location within the physical area and perform signal strength measurements for one or more access points (e.g., routers, range extenders, etc.) or satellite devices. In some embodiments, if the signal strength received from one or more satellites fails to exceed a minimum threshold, a notification can be provided via the interface suggesting that a satellite device be placed in a location with low signal strength. In some embodiments, the interface can recommend placing satellite devices at specific intervals (e.g., every 10 feet, 25 feet, or 50 feet).

在一些实施例中,可以提供网络分析器组件804导出的发现装置列表以供用户放置在界面内。该放置可以设计成对应于每个检测到的装置的实体位置,这可以在可视显示内用来说明装置的已知位置并且校准信号强度读数。在一些实施例中,在映射操作期间,可以将信号发送到卫星装置和/或网络分析系统的其它组件,以使得那些装置广播特定信号(例如“回归”信号)。In some embodiments, a list of discovered devices derived by the network analyzer component 804 can be provided for the user to place within the interface. This placement can be designed to correspond to the physical location of each detected device, which can be used within the visual display to illustrate the known location of the device and calibrate the signal strength reading. In some embodiments, during the mapping operation, a signal can be sent to satellite devices and/or other components of the network analysis system to cause those devices to broadcast a specific signal (e.g., a "home" signal).

通过检测各种位置的信号强度并向驻地绘图器组件808提供检测到的信号,借此可以检测一组参考范围以用于将来的RSSI装置位置操作。By detecting signal strength at various locations and providing the detected signals to the premises mapper component 808, a set of reference ranges may be detected for use in future RSSI device location operations.

映射操作完成后,还可更新可视显示以指示“弱”信号覆盖区域的存在。这个信息还可用于后续故障处理操作以通过网络分析组件对装置性能进行故障处理。After the mapping operation is complete, the visual display can also be updated to indicate the presence of "weak" signal coverage areas. This information can also be used in subsequent troubleshooting operations to troubleshoot device performance through network analysis components.

管理界面810可以提供一个界面,诸如图形用户界面(GUI),其允许用户查看网络分析器组件804导出的网络的状态、驻地绘图器组件808导出的驻地地图、以及规则引擎组件806生成的通知。如上所述,管理界面810还可提供配置数据,用于控制控制器800的操作,包含但不限于规则定义、网络装置识别等等。管理界面810可以例如提供“信息中心”,其展示网络的每个装置在网络上通信的速度、哪些装置在与特定云服务通信、哪些装置在与其它外部计算节点通信等等。配合规则引擎,可以使用这个网络分析数据,例如识别特定装置在夜里消耗大量带宽(例如孩子在上床时间之后在他们的智能手机上使用流视频服务),或者已确认的规则准则集合内定义的未经授权的使用或不期望的使用。The management interface 810 can provide an interface, such as a graphical user interface (GUI), that allows a user to view the status of the network derived by the network analyzer component 804, the map of the premises derived by the premises mapper component 808, and notifications generated by the rules engine component 806. As described above, the management interface 810 can also provide configuration data for controlling the operation of the controller 800, including, but not limited to, rule definitions, network device identification, and the like. The management interface 810 can, for example, provide a "dashboard" that displays the speed at which each device of the network is communicating on the network, which devices are communicating with specific cloud services, which devices are communicating with other external computing nodes, and the like. In conjunction with the rules engine, this network analysis data can be used, for example, to identify specific devices consuming large amounts of bandwidth at night (e.g., children using streaming video services on their smartphones after bedtime), or unauthorized or undesirable usage as defined within a set of confirmed rule criteria.

还可使用实施例来实施地理围栏系统,以便检测和记录何时特定装置(例如孩子的智能手机)进入和离开卫星的检测范围。Embodiments may also be used to implement a geo-fencing system to detect and record when a particular device (such as a child's smartphone) enters and leaves the satellite's detection range.

网络分析控制板界面的实例Example of the network analysis dashboard interface

图9描绘根据本发明的实施例的用于显示控制器生成的网络分析数据和其它输出的控制板界面900的实例的图示。界面900包含在家庭网络上检测到的各种装置的图标表示。选择特定装置(例如通过触摸或点击图标)可显示与装置相关的网络量度和统计数据。界面900还可包含一系列界面控件,以便于装置发现、编辑装置数据(例如为了提供每个检测到的装置的名称或类型)和访问用户帐户。在一些实施例中,用户帐户可以包含用于访问控制器的本地证书,而在其它实施例中用户帐户可以向用户提供对于从控制器接收数据的远程服务器的访问权。这个远程服务器还可提供界面以访问与装置相关的各种其它数据,诸如通过与制造商系统介接以管理装置保修(例如通过识别保修时长)、通过第三方服务向用户提供针对所识别装置购买附件、产品、服务计划等等的能力、用于提供故障处理服务等等。FIG9 depicts an example of a dashboard interface 900 for displaying network analysis data and other output generated by a controller, according to an embodiment of the present invention. Interface 900 includes icon representations of various devices detected on a home network. Selecting a particular device (e.g., by touching or clicking an icon) displays network metrics and statistics related to the device. Interface 900 may also include a series of interface controls to facilitate device discovery, editing device data (e.g., to provide the name or type of each detected device), and accessing user accounts. In some embodiments, a user account may include local credentials for accessing the controller, while in other embodiments, the user account may provide the user with access to a remote server that receives data from the controller. This remote server may also provide an interface for accessing various other data related to the device, such as managing device warranties (e.g., by identifying warranty duration) by interfacing with manufacturer systems, providing the user with the ability to purchase accessories, products, service plans, etc. for the identified device through third-party services, providing troubleshooting services, and the like.

可以例如在诸如智能手机或平板电脑之类的用户装置上执行的“应用”上、通过在控制器上执行的服务器应用程序、或者通过托管在用户的网络外部的远程服务器上的网络界面来显示界面900。在一些情况下,访问界面900可能需要直接访问用户的网络(例如作为附接装置),而在其它情况下,可以通过因特网可路由的系统(例如通过在控制器上执行的网络服务器,或者通过控制器的制造商提供的外部托管网站)提供界面900。Interface 900 may be displayed, for example, on an "app" executing on a user device such as a smartphone or tablet, through a server application executing on the controller, or through a web interface hosted on a remote server external to the user's network. In some cases, accessing interface 900 may require direct access to the user's network (e.g., as an attached device), while in other cases, interface 900 may be provided through an Internet-routable system (e.g., through a web server executing on the controller, or through an externally hosted website provided by the controller's manufacturer).

用于实施网络分析系统的处理的实例Example of a process for implementing a network analysis system

图10至图17示出了根据本发明的实施例的控制器装置和/或卫星装置可以用于实施网络分析系统的功能的示例性处理。这些处理和其它处理可以通过例如上文相对于图2描述的设备200和/或上文相对于图3描述的设备300并且配合图4至图8中示出的数据流和装置交互来执行。Figures 10 to 17 illustrate exemplary processes that a controller device and/or satellite device may use to implement the functionality of a network analysis system according to embodiments of the present invention. These and other processes may be performed, for example, by the device 200 described above with respect to Figure 2 and/or the device 300 described above with respect to Figure 3, in conjunction with the data flows and device interactions illustrated in Figures 4 to 8.

图10示出描绘根据本发明的实施例的用于检测网络通信事件并向控制器传输事件消息的程序1000的实例的流程图。处理1000用作根据本发明的实施例的使用卫星装置检测事件并且引起向控制器传输该事件以用于网络分析操作的技术的实例。10 shows a flow chart depicting an example of a process 1000 for detecting network communication events and transmitting event messages to a controller according to an embodiment of the present invention. Process 1000 serves as an example of a technique for detecting events using a satellite device and causing the events to be transmitted to a controller for network analysis operations according to an embodiment of the present invention.

在动作1002处,监视一或多个频带上的网络业务。虽然本实例是相对于监视无线频带提供的,但是应了解,实施例还可包含监视有线连接。在动作1004处,在监视的频带上检测到网络通信事件。如上文所述,网络通信事件可以是以卫星装置可检测的方式发生的任何网络通信。在一些实施例中,不同卫星装置具有不同的监视能力。例如,给定卫星装置可以配置有无线电以检测蓝牙、紫蜂、802.11a/b/g/n/ac等等中的一或多种,而另一卫星装置可能没有那些能力中的一或多种。以此方式,用户可以选择哪些卫星装置最适合于它们自身的家庭网络配置,尤其在不必要的额外功能会导致硬件更高价的场景中。At act 1002, network traffic on one or more frequency bands is monitored. While this example is provided with respect to monitoring wireless frequency bands, it should be understood that embodiments may also include monitoring wired connections. At act 1004, a network communication event is detected on the monitored frequency band. As described above, a network communication event can be any network communication that occurs in a manner detectable by a satellite device. In some embodiments, different satellite devices have different monitoring capabilities. For example, a given satellite device may be configured with a radio capable of detecting one or more of Bluetooth, ZigBee, 802.11a/b/g/n/ac, etc., while another satellite device may not have one or more of those capabilities. In this way, users can select which satellite devices are best suited for their own home network configuration, particularly in scenarios where unnecessary additional features would result in higher hardware costs.

在动作1006处,生成检测到的事件的事件序列号。由于事件的时戳值,或者配合事件的时戳值,可以生成事件序列号。如上文所述,实施例可以在控制器与卫星装置之间使时钟同步,使得每个装置时钟预期在彼此的特定阈值时间(例如<1ms)以内。序列号因而可能是消息的时戳、或者消息特性(例如消息类型、消息有效负载等等)与时戳组合的某种组合。At act 1006, an event sequence number is generated for the detected event. The event sequence number may be generated due to, or in conjunction with, the timestamp value of the event. As described above, embodiments may synchronize clocks between the controller and the satellite devices such that each device clock is expected to be within a specific threshold time (e.g., <1 ms) of each other. The sequence number may thus be the timestamp of the message, or some combination of message characteristics (e.g., message type, message payload, etc.) and the timestamp.

在动作1008处,对于接收到的网络通信事件生成事件消息。如上文相对于图7所述,事件消息可以包含消息的各种特性连同序列号。在动作1010处,将生成的事件消息传输到控制器装置用于进一步处理。At action 1008, an event message is generated for the received network communication event. As described above with respect to FIG7, the event message may include various characteristics of the message along with a sequence number. At action 1010, the generated event message is transmitted to a controller device for further processing.

图11示出描绘根据本发明的实施例使用控制器装置初始化卫星装置使得卫星装置和控制器装置能够执行网络分析操作的处理1100的实例的流程图。可以例如在首次一起初始化控制器和卫星装置以在每一卫星与控制器之间建立配对时执行处理1100。替代地,也可在将新卫星添加到先前配置的系统时执行处理1100。起始该处理可包含(例如)按压每个装置上的实体按钮以起始配对操作,以便确保只有属于特定用户的装置与控制器配对以保持用户隐私。因而,控制器可以执行处理1100以建立事件窗,以在对从多个卫星装置接收的消息执行消息去除重复时考虑到不同卫星装置之间的信号衰减、反射和传播时延,并且考虑到每个装置的内部时钟的轻微差异。在一些实施例中,可以用特定间隔执行处理1100以确保在控制器与卫星装置之间保持同步。FIG11 shows a flow chart depicting an example of a process 1100 for initializing satellite devices using a controller device so that the satellite devices and the controller device can perform network analysis operations, according to an embodiment of the present invention. Process 1100 can be performed, for example, when the controller and satellite devices are first initialized together to establish a pairing between each satellite and the controller. Alternatively, process 1100 can be performed when a new satellite is added to a previously configured system. Initiating the process can include, for example, pressing a physical button on each device to initiate the pairing operation, thereby ensuring that only devices belonging to a specific user are paired with the controller to maintain user privacy. Thus, the controller can perform process 1100 to establish an event window to account for signal attenuation, reflections, and propagation delays between different satellite devices when performing message deduplication on messages received from multiple satellite devices, as well as to account for slight differences in each device's internal clock. In some embodiments, process 1100 can be performed at specific intervals to ensure synchronization between the controller and the satellite devices.

在动作1102处,确定一或多个本地卫星装置。如上所述,可以通过实际按压按钮、拨动开关或以其它方式与卫星交互将其置于初始化模式配对,借此来确定本地卫星。替代地,卫星装置可以在首次通电时自动开始搜索控制器,或者卫星装置可以基于被无线传输到装置的编程指令或者通过直接连线而进入配对模式。At act 1102, one or more local satellite devices are identified. As described above, local satellites can be identified by physically pressing a button, flipping a switch, or otherwise interacting with the satellites to place them in initialization mode for pairing. Alternatively, the satellite devices can automatically begin searching for a controller when first powered on, or the satellite devices can enter pairing mode based on programming instructions transmitted wirelessly to the device or through a direct connection.

在动作1104处,使检测到的卫星之间的时钟彼此同步和/或与控制器同步。可以根据各种时间同步协议执行同步,包含但不限于网络时间协议、精确时间协议、时钟取样相互网络同步或任何其它足够用于在多个装置之间同步时钟的协议。At act 1104, the clocks between the detected satellites are synchronized with each other and/or with the controller. Synchronization can be performed according to various time synchronization protocols, including but not limited to the Network Time Protocol, the Precision Time Protocol, Clock Sample Inter-Network Synchronization, or any other protocol sufficient for synchronizing clocks between multiple devices.

在动作1106处,启动卫星校准操作。卫星校准操作可以使卫星装置以已知的预期间隔向控制器传输包括事件消息的校准信号。例如,在同步时钟之后,控制器可以通知卫星让每颗卫星在特定开始时间开始传输事件消息然后以特定间隔传输事件消息。At action 1106, a satellite calibration operation is initiated. The satellite calibration operation may cause the satellite devices to transmit calibration signals including event messages to the controller at known, expected intervals. For example, after synchronizing the clocks, the controller may notify the satellites to begin transmitting event messages at a specific start time and then at specific intervals.

在动作1108处,控制器接收到校准信号,并且存储接收到校准信号的时间。在动作1110处,使用校准信号的预期到达时间与校准信号的实际到达时间之间的时间差来确定从卫星装置到控制器的消息传输时间的预期等待时间。可以利用这个等待时间基于等待时间最长的卫星装置来计算事件窗时间。例如,如果对于3颗卫星装置测量到5ms的等待时间,并且对于第四装置测量到10ms的等待时间(很可能是因为第四装置离控制器更远),则给定消息序列号的事件窗将设置在10ms以允许第四装置测量到的事件消息有足够的时间被发回到控制器。一些实施例可以使用替代技术或估计来计算等待时间,诸如使等待时间翻倍以考虑到在接收到对校准信号的响应之前传输校准信号以发送到卫星的指令。At act 1108, the controller receives the calibration signal and stores the time at which the calibration signal was received. At act 1110, the time difference between the expected arrival time of the calibration signal and the actual arrival time of the calibration signal is used to determine the expected latency of the message transmission time from the satellite device to the controller. This latency can be used to calculate the event window time based on the satellite device with the longest latency. For example, if a latency of 5 ms is measured for three satellite devices and a latency of 10 ms is measured for the fourth device (most likely because the fourth device is farther away from the controller), the event window for a given message sequence number would be set to 10 ms to allow sufficient time for the event message measured by the fourth device to be sent back to the controller. Some embodiments may use alternative techniques or estimates to calculate the latency, such as doubling the latency to account for the fact that the calibration signal was transmitted before a response to the calibration signal was received to send an instruction to the satellite.

图12示出描绘根据本发明的实施例的使用事件窗处理从卫星装置接收的事件消息的处理1200的实例的流程图。处理1200示出了消息聚合器组件(诸如上文相对于图8说明的消息聚合器组件802)用来先接收和聚合消息然后将那些消息转发到网络分析器组件以用于进一步处理的一种技术。FIG12 shows a flow chart depicting an example of a process 1200 for processing event messages received from satellite devices using event windows according to an embodiment of the present invention. Process 1200 illustrates a technique used by a message aggregator component (such as message aggregator component 802 described above with respect to FIG8 ) to first receive and aggregate messages and then forward those messages to a network analyzer component for further processing.

在动作1202处,接收到第一事件消息。响应于接收到第一事件消息,确定事件消息是否为“新的”,诸如事件消息是否具有新的序列号。如果事件消息是新的,则在动作1204处打开事件窗。如上文相对于图11所述,可以基于来自网络分析系统内使用的等待时间最长的卫星装置的信号传播延迟来确定事件窗的时长。At act 1202, a first event message is received. In response to receiving the first event message, a determination is made as to whether the event message is "new," such as whether the event message has a new sequence number. If the event message is new, an event window is opened at act 1204. As described above with respect to FIG. 11 , the duration of the event window can be determined based on the signal propagation delay from the longest-latency satellite device used within the network analysis system.

在动作1206处,具有相同内容(例如相同序列号)的后续事件消息,并且在动作1208处,在分配的时间经过之后事件窗关闭。在接收到多个事件消息的情况下,有可能确定与检测到该消息的每个卫星装置有关的信号强度。在此些情况下,可以使用RSSI位置识别技术确定发起该消息的装置的近似位置。At action 1206, a subsequent event message with the same content (e.g., the same sequence number) is received, and at action 1208, the event window closes after the allotted time has elapsed. In the event that multiple event messages are received, it is possible to determine the signal strength associated with each satellite device that detected the message. In such cases, RSSI location identification techniques can be used to determine the approximate location of the device that originated the message.

在动作1210处,将内容相同的事件消息概括成带有单一共同数据集合(例如消息的所有例子之间共同的消息类型和其它数据)和每个卫星装置特有的特有内容集合(诸如每个卫星装置测量到的信号强度)的单一事件消息中。在动作1212处,作为单一事件提供概括事件消息以用于处理,诸如通过上文相对于图8所述的网络分析器组件804处理。At act 1210, event messages with identical content are summarized into a single event message with a single set of common data (e.g., message type and other data common between all instances of the message) and a unique set of content specific to each satellite device (e.g., the signal strength measured by each satellite device). At act 1212, the summarized event message is provided as a single event for processing, such as by the network analyzer component 804 described above with respect to FIG.

在动作1214处,接收到具有相同事件内容(例如相同序列号)的额外事件消息。然而,由于事件窗已经关闭,所以在动作1216处丢弃额外事件消息,因为具有该序列号的事件消息已经被转发以用于处理。以此方式,实施例能避免对同一个事件消息的重复处理,同时仍然允许多个卫星装置报告同一个事件消息。在一些实施例中,在事件窗关闭之后重复接收事件消息,可能会触发重新计算事件窗以减小事件消息在窗口关闭之后进来的可能性,而在其它情况下,如果靠近事件窗结束时仅仅非常不频繁地接收到消息,则可以缩短事件窗以提高概括消息并且提供消息用于进一步处理的速度。At act 1214, an additional event message is received with the same event content (e.g., the same sequence number). However, since the event window has already closed, the additional event message is discarded at act 1216 because the event message with that sequence number has already been forwarded for processing. In this way, embodiments can avoid repeated processing of the same event message while still allowing multiple satellite devices to report the same event message. In some embodiments, repeated receipt of event messages after the event window has closed may trigger a recalculation of the event window to reduce the likelihood of event messages arriving after the window has closed, while in other cases, if messages are received only very infrequently near the end of the event window, the event window may be shortened to increase the speed with which messages are summarized and provided for further processing.

图13示出了描绘根据一些实施例的用于生成一组网络装置的可视显示的处理1300的流程图。处理1300用于在界面上生成对应于家庭或其它建筑物的实体布局的多个装置的可视显示。可以基于相对于卫星装置测量到的信号强度、基于通过与一或多个联网装置的通信确定的网络拓扑、或者通过根据本文所述的实施例的各种其它网络分析技术,来确定装置在建筑物内的位置。FIG13 shows a flow chart depicting a process 1300 for generating a visual display of a group of network devices according to some embodiments. Process 1300 is used to generate a visual display of multiple devices on an interface that corresponds to the physical layout of a home or other building. The location of the devices within the building can be determined based on signal strength measured relative to satellite devices, based on network topology determined through communication with one or more networked devices, or through various other network analysis techniques according to embodiments described herein.

在动作1302处,接收驻地数据。如上文相对于图6所述,驻地数据可以包含建筑物的楼层平面图、在针对该目的提供的界面上绘制的图画、或者任何其它布局对应于一或多个网络装置和/或卫星装置和控制器的实体区域的数据。在动作1304处,至少部分地基于卫星装置接收到的事件消息来确定一或多个装置的位置。例如,事件消息可以指示每一卫星装置测量到的相对信号强度,并且有可能以基于那些测量到的信号对发送方移动装置的位置进行三角测量。在动作1306处,使用装置位置和驻地数据生成驻地地图。在动作1308处,通过管理界面诸如经由用户的智能手机、在计算机显示器上等等提供驻地地图。At act 1302, location data is received. As described above with respect to FIG. 6 , the location data may include a floor plan of a building, a drawing drawn on an interface provided for that purpose, or any other data that lays out the physical area corresponding to one or more network devices and/or satellite devices and a controller. At act 1304, the location of one or more devices is determined based, at least in part, on event messages received by the satellite devices. For example, the event messages may indicate the relative signal strength measured by each satellite device, and it may be possible to triangulate the location of the sending mobile device based on those measured signals. At act 1306, a location map is generated using the device locations and the location data. At act 1308, the location map is provided via an administrative interface, such as via a user's smartphone, on a computer display, or the like.

图14示出描绘根据本发明的一些实施例的用于处理从消息聚合器组件接收的事件消息的处理1400的实例的流程图。如上所述,消息聚合器组件可用以从卫星装置接收事件消息并且组合重复事件消息以用于进一步处理。然而,为了确保消息聚合器组件监视的事件消息的队列的快速性能,消息聚合器组件可以将那些聚合消息的处理分流给控制器的网络分析组件。处理1400示出了用于执行网络分析组件的处理的方法的一个实例。FIG14 shows a flow chart depicting an example of a process 1400 for processing event messages received from a message aggregator component according to some embodiments of the present invention. As described above, the message aggregator component can be used to receive event messages from satellite devices and combine duplicate event messages for further processing. However, to ensure fast performance of the queue of event messages monitored by the message aggregator component, the message aggregator component can offload the processing of those aggregated messages to the network analysis component of the controller. Process 1400 illustrates one example of a method for performing processing of the network analysis component.

在动作1402处,接收聚合事件消息。应了解,在此背景下,术语“聚合”仅指代经过消息聚合器组件处理的事件消息,并且聚合事件消息可以仅仅包含单一事件消息。在动作1404处,确定聚合事件消息的事件协议。在动作1406处,根据事件协议处理聚合事件消息。例如,处理聚合事件消息可以包含基于消息类型和附带的协议(例如消息是否为加入网络、在网络上传输数据、在网络上接收数据等等的一部分)确定消息的上下文和目的。处理消息可以包含将消息转换成协议不可知的元语言。消息的元语言表示可以在动作1408处存储于消息元数据集合中,用于生成网络状态数据、确定是否符合规则准则,并且支持网络分析系统的各种其它功能。At action 1402, an aggregate event message is received. It should be understood that in this context, the term "aggregate" refers only to event messages that have been processed by the message aggregator component, and that an aggregate event message may only contain a single event message. At action 1404, an event protocol for the aggregate event message is determined. At action 1406, the aggregate event message is processed according to the event protocol. For example, processing the aggregate event message may include determining the context and purpose of the message based on the message type and the accompanying protocol (e.g., whether the message is part of joining a network, transmitting data on a network, receiving data on a network, etc.). Processing the message may include converting the message into a protocol-agnostic metalanguage. The metalanguage representation of the message may be stored in a message metadata collection at action 1408 for use in generating network status data, determining compliance with rule criteria, and supporting various other functions of the network analysis system.

图15示出了描绘根据本发明的一些实施例的用于实施规则引擎组件的处理1500的实例的流程图。如上文相对于图8所述,可以使用规则引擎确定网络分析器组件生成的网络状态数据和/或消息元数据是否满足特定规则准则。在满足规则准则的情况下,规则引擎可以采取对应于满足其准则的规则的某些行动。FIG15 shows a flow chart depicting an example of a process 1500 for implementing a rule engine component according to some embodiments of the present invention. As described above with respect to FIG8 , a rule engine can be used to determine whether network state data and/or message metadata generated by a network analyzer component satisfies specific rule criteria. If the rule criteria are met, the rule engine can take certain actions corresponding to the rule whose criteria are met.

在动作1502处,接收规则配置数据。规则配置数据可以包含一组规则准则和有待响应于满足该规则准则而执行的一组动作。一些实施例可以包含编辑工具和用于指定规则准则和适当动作的编辑语言,而其它实施例可以提供符合条件的规则的列表,用户可以从中进行选择。At action 1502, rule configuration data is received. The rule configuration data may include a set of rule criteria and a set of actions to be performed in response to satisfying the rule criteria. Some embodiments may include editing tools and an editing language for specifying rule criteria and appropriate actions, while other embodiments may provide a list of eligible rules from which a user may select.

在动作1504处,诸如从上文所述的网络分析器组件接收消息元数据集合。消息元数据可以包含经过处理的事件消息,其指示何时装置加入网络、离开网络、到达一或多个卫星装置附近、向网络上的另一装置传输数据等等。At act 1504, a message metadata set is received, such as from the network analyzer component described above. The message metadata may include processed event messages indicating when the device joins the network, leaves the network, comes within proximity of one or more satellite devices, transmits data to another device on the network, and so on.

在动作1506处,基于消息元数据确定规则状态准则以确定是否满足该准则。如果满足该准则,则启动与该规则相关的动作。例如,许多规则可以包含向管理界面、用户装置、音频输出装置、视频输出装置等等生成通知。在动作1508处,生成通知,在动作1510处,向通知目标装置传输该通知。At act 1506, a rule status criterion is determined based on the message metadata to determine whether the criterion is met. If the criterion is met, an action associated with the rule is initiated. For example, many rules may include generating a notification to a management interface, a user device, an audio output device, a video output device, etc. At act 1508, a notification is generated, and at act 1510, the notification is transmitted to the notification target device.

图16示出描绘根据本发明的实施例的用于以保持网络安全的方式执行卫星装置的电力管理的处理1600的流程图。如上文所述,控制器和卫星装置实现的网络分析系统提供了许多新颖的应用,其中许多应用与安全侵犯行为和未经授权的装置的检测有关。因此,可以设想有些恶意用户可能想停用网络分析系统的一或多个组件以破坏这些安全应用程序。能实际访问卫星装置的恶意用户尝试进行破坏的一种方法很简单,就是将卫星装置的AC电源拔掉。然而,处理1600示出了一种保持家庭安全的机制,可以用来阻止这样的恶意用户。FIG16 shows a flow chart depicting a process 1600 for performing power management on a satellite device in a manner that maintains network security, according to an embodiment of the present invention. As described above, the network analysis system implemented by the controller and satellite device provides numerous novel applications, many of which relate to the detection of security violations and unauthorized devices. Therefore, it is conceivable that a malicious user might want to disable one or more components of the network analysis system to subvert these security applications. One way a malicious user with physical access to a satellite device could attempt to do so is simply to unplug the satellite device from its AC power source. However, process 1600 illustrates a mechanism for maintaining home security that can be used to deter such malicious users.

在动作1602处,处理1600检测到卫星装置的主电源丢失。作为响应,在动作1604处,卫星装置切换到备用电池电力。然而,由于有可能装置是被有意断电以允许恶意用户将未经授权的装置添加到网络,所以在动作1604处切换到电池电力可能会伴随在动作1606处停用电力的外部指示器。例如,如果卫星装置包含LED指示器以指示卫星装置通电,则可以响应于切换到电池电力而停用LED指示器。在动作1608处,可以向控制器传输通知以供转发到管理界面以通知用户或其它管理员装置电力丢失。以此方式,卫星装置可以继续提供网络安全操作,同时让潜在的恶意用户认为他们已经破坏了网络安全,从而增加了侵入将被注意到的可能性。At act 1602, process 1600 detects a loss of primary power to the satellite device. In response, at act 1604, the satellite device switches to backup battery power. However, because it is possible that the device was intentionally powered down to allow a malicious user to add an unauthorized device to the network, the switch to battery power at act 1604 may be accompanied by the deactivation of an external indicator of power at act 1606. For example, if the satellite device includes an LED indicator to indicate that the satellite device is powered, the LED indicator may be deactivated in response to the switch to battery power. At act 1608, a notification may be transmitted to the controller for forwarding to a management interface to notify a user or other administrator of the device power loss. In this way, the satellite device can continue to provide network security operations while misleading a potential malicious user into believing they have compromised the network security, thereby increasing the likelihood that the intrusion will be noticed.

图17示出了描绘根据本发明的一些实施例的用于利用规则引擎提供改进的家庭安全性的处理1700的实例的流程图。处理1700示出了从卫星装置执行的信号强度读取导出的位置数据可以如何生成配置相机以查看对应于未知装置的位置的通知。17 shows a flow chart depicting an example of a process 1700 for providing improved home security using a rules engine according to some embodiments of the present invention. Process 1700 illustrates how location data derived from signal strength readings performed by a satellite device can generate a notification that configures a camera to view a location corresponding to an unknown device.

在动作1702处,处理1700基于从卫星装置接收的事件消息来检测未知装置。在动作1704处,诸如基于如上文所述的RSSI位置确定技术来确定未知装置的位置。响应于确定未知装置的位置,在动作1706处,可以向平移-侧倾-变焦相机生成通知将相机引导向所识别位置。以此方式,相机系统可以自动编程以被引导向未知的实体,因而改善用户的家庭安全系统。例如,此系统可以用于识别有人带有未知装置从奇怪的方向(例如不是从正门)接近用户的家,或者无需手动开门就能将相机聚焦在正门处的访客。At act 1702, process 1700 detects an unknown device based on an event message received from a satellite device. At act 1704, the location of the unknown device is determined, such as based on the RSSI location determination technique described above. In response to determining the location of the unknown device, at act 1706, a notification can be generated to the pan-tilt-zoom camera to direct the camera toward the identified location. In this way, the camera system can be automatically programmed to be directed toward unknown entities, thereby improving the user's home security system. For example, this system can be used to identify someone approaching the user's home from an unusual direction (e.g., not from the front door) with an unknown device, or to focus the camera on the front door without manually opening the door.

上文已经参看方法、设备、系统和计算机程序产品的框图和流程图图示描述了本发明的实施例。应理解,电路图和处理流程图的每个框以及电路图和处理流程图的框组合分别可以通过包含计算机程序指令的各种装置实施。可以将这些计算机程序指令加载到通用计算机、专用计算机或其它可编程数据处理设备以产生机器,使得计算机程序产品包含在计算机或其它可编程数据处理设备上执行的指令创建用于实施在流程图框中指定的功能的装置。Embodiments of the present invention have been described above with reference to block diagrams and flowchart illustrations of methods, apparatus, systems, and computer program products. It should be understood that each block of the circuit diagrams and process flowcharts, and combinations of blocks of the circuit diagrams and process flowcharts, respectively, can be implemented by various means comprising computer program instructions. These computer program instructions can be loaded onto a general-purpose computer, a special-purpose computer, or other programmable data processing device to produce a machine, such that the computer program product comprises instructions that, when executed on the computer or other programmable data processing device, create means for implementing the functions specified in the flowchart blocks.

这些计算机程序指令还可存储于计算机可读存储装置中,该计算机可读存储装置可以指导计算机或其它可编程数据处理设备以特定方式运转,使得存储于计算机可读存储装置中的指令产生一种包含用于实施本文中论述的功能的计算机可读指令的制品。计算机程序指令还可加载到计算机或其它可编程数据处理设备上,以使得在计算机或其它可编程设备上执行一系列操作步骤,由此产生计算机实施的处理,使得在计算机或其它可编程设备上执行的指令引起步骤的执行并且由此实施本文中论述的功能。These computer program instructions may also be stored in a computer-readable storage device that can direct a computer or other programmable data processing apparatus to operate in a specific manner, such that the instructions stored in the computer-readable storage device produce an article of manufacture containing computer-readable instructions for implementing the functions discussed herein. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus, thereby producing a computer-implemented process, such that the instructions executed on the computer or other programmable apparatus cause the steps to be performed and thereby implement the functions discussed herein.

因此,框图的框支持用于执行指定功能的装置的组合、用于执行指定功能的步骤和用于执行指定功能的程序指令装置的组合。还应了解,电路图和处理流程图的每个框以及电路图和处理流程图中的框的组合可以通过执行指定功能或步骤的基于专用硬件的计算机系统或者专用硬件和计算机指令的组合来实施。Therefore, the blocks of the block diagrams support combinations of means for performing the specified functions, combinations of steps for performing the specified functions, and program instruction means for performing the specified functions. It should also be understood that each block of the circuit diagrams and process flow diagrams, and combinations of blocks in the circuit diagrams and process flow diagrams, can be implemented by a computer system based on dedicated hardware or a combination of dedicated hardware and computer instructions that performs the specified functions or steps.

一些额外实施例可以允许消费者通过应用或网络门户管理其装置和网络。实施例还可包含呼叫中心组件,从而向CSR提供宝贵的见解以提供故障处理、诊断和推荐方面的针对性帮助和建议。实施例可以帮助管理多个装置,即使不知道是什么制造商、装置类型、操作系统和网络。实施例可以使得通过简单的装置指导和示出网络连接和装置发生故障的情况的控制板就能实现故障处理。在需要人帮助的情况下,可能只要打个电话、发段文字、聊会儿天或者发一封电子邮件就能得到24/7实时支持。Some additional embodiments may allow consumers to manage their devices and networks through an app or web portal. Embodiments may also include a call center component, providing valuable insights to CSRs to provide targeted help and advice on troubleshooting, diagnostics, and recommendations. Embodiments can help manage multiple devices even without knowing the manufacturer, device type, operating system, and network. Embodiments may enable troubleshooting with simple device guides and a dashboard showing network connections and device failures. If human help is needed, 24/7 live support may be just a phone call, text, chat, or email away.

实施例还可阻挡蹭网的侵入者并且监视网络上的恶意软件。其它实施例可以注册并且跟踪保修、扩展服务合同、信用卡优惠制造商双重保修和零售店优惠。实施例还可提供可用的服务(诸如免费清洁)、软件升级通知、相关新外围设备和产品召回提醒。一些实施例可以提醒用户权益和产品召回即将到期。实施例还可提供对说明书的轻松访问。Embodiments can also block intruders and monitor the network for malware. Other embodiments can register and track warranties, extended service contracts, credit card offers, manufacturer double warranties, and retail store offers. Embodiments can also provide available services (such as free cleanings), software upgrade notifications, relevant new peripherals, and product recall reminders. Some embodiments can remind users of upcoming rights and product recalls. Embodiments can also provide easy access to manuals.

一些实施例可以提供跨装置的意外和机械损坏、丢失和被盗、低电损害等等的保护,以及ID窃取保护并且辅助申请登记。一些实施例提供维修和出借服务,并且帮助用户与合适的维修点联系和/或代表消费者处理维修。Some embodiments can provide protection against accidental and mechanical damage, loss and theft, low battery damage, etc. across devices, as well as ID theft protection and assist in application registration. Some embodiments provide repair and loan services and help users contact appropriate repair points and/or handle repairs on behalf of consumers.

一些实施例可以基于个人的实际使用需求和历史为个人提供与您的网络装置、网络和路由器有关的购买建议以帮助确保互操作性和兼容性。实施例可以提供相关情境帮助和解决方案。一些实施例可以提供简单的方式以便离开旧装置升级到新装置和网络,这是通过提供以旧换新价值、确定出售装置的场所、对于新装置和网络的个性化推荐等等。一些实施例还可包含积分组件,其中基于订购时长、附接到网络的装置数量等等有另外的或增加的优惠。Some embodiments can provide individuals with purchasing recommendations for their network devices, networks, and routers based on their actual usage needs and history to help ensure interoperability and compatibility. Embodiments can provide contextual assistance and solutions. Some embodiments can make it easy to upgrade from old devices to new devices and networks by offering trade-in value, identifying locations to sell devices, personalized recommendations for new devices and networks, and so on. Some embodiments can also include a points component with additional or increased benefits based on subscription length, number of devices connected to the network, and so on.

实施例可以通过多种用户界面提供相关功能。例如,实施例可以提供控制板以提供对于装置单独地和作为连接网络的健康状况、连接和性能的高水平概观。“开始”界面可以辅助用户注册和设置有待监视的装置和适当的网络配置。Embodiments may provide related functionality through a variety of user interfaces. For example, embodiments may provide a dashboard that provides a high-level overview of the health, connectivity, and performance of devices individually and as a connected network. A "Start" interface may assist users in registering and setting up devices to be monitored and appropriate network configuration.

在装置注册期间,实施例可以收集关键信息以便完成OEM注册并且开始追踪权益(例如保修或换新计划)。这些权益可以包含零售商在POS提供的优惠服务(例如每年清洁服务)、OEM优惠和升级、家庭所有者附加保险/核心覆盖范围或信用卡优惠(例如制造厂双重保修、90天保护和其它特征)。实施例还可在一个部分中加入注册装置的用户手册或用户手册链接。During device registration, embodiments can collect key information to complete OEM registration and begin tracking benefits (e.g., warranty or trade-in programs). These benefits can include retailer-provided POS discounts (e.g., annual cleaning services), OEM discounts and upgrades, homeowner supplemental insurance/core coverage, or credit card benefits (e.g., double manufacturer warranty, 90-day protection, and other features). Embodiments can also include a user manual or link to a user manual for the registered device in a section.

一些实施例可以提供逐步设置指令、识别兼容性问题和提供设置装置的提示和技巧。这些提示和技巧可以包含对于支持装置和网络的额外产品和服务的个性化的、及时的、合适的推荐。Some embodiments can provide step-by-step setup instructions, identify compatibility issues, and provide tips and tricks for setting up the device. These tips and tricks can include personalized, timely, and appropriate recommendations for additional products and services that support the device and network.

实施例还可提供常规维护服务,诸如辅助帮助诊断小问题以防它们以后变成大问题,辅助用户对装置上的问题进行彻底的故障处理,众包和实时技术支持,帮助预测将来的问题,诸如存储空间限制、电池、连接问题、监视网络的安全性、阻止恶意软件和蹭网者,以及提供服务保护和一键申请服务。这些申请可以包含对于覆盖丢失、意外损害、机械损坏、失窃/被盗、恶意软件、窃取身份等等的服务的申请。一些实施例可以提供针对用户、装置和/或网络的个性化信息。Embodiments may also provide general maintenance services, such as assistance in diagnosing minor problems before they become major problems later, assisting users in thoroughly troubleshooting problems on their devices, crowdsourcing and real-time technical support, helping to predict future problems such as storage space limitations, battery, and connection issues, monitoring network security, blocking malware and freeloaders, and providing service protection and one-click subscription services. These subscriptions may include subscriptions for services covering loss, accidental damage, mechanical damage, theft/theft, malware, identity theft, etc. Some embodiments may provide personalized information for users, devices, and/or networks.

一些实施例可以提供与权益(例如到期、新优惠、提醒)、装置和网络问题、针对装置和网络的布告(例如升级、常见难题的解决新方案)、安保/安全问题(例如检测到恶意软件;检测到蹭网者)和/或与连接“装置”有关的相关帮助(例如汽车警告您制动片在变薄、发送警告和帮助用附近的便宜的维修方案解决问题)有关的警告和/或通知。Some embodiments may provide warnings and/or notifications related to benefits (e.g., expirations, new offers, reminders), device and network issues, announcements specific to the device and network (e.g., upgrades, new solutions to common problems), security/safety issues (e.g., malware detected; freeloaders detected), and/or related assistance related to connected "devices" (e.g., a car warning you that your brake pads are getting thin, sending a warning, and helping to resolve the problem with a nearby, inexpensive repair solution).

实施例还可辅助更改网络和装置/迁移(例如添加到装置和/或网络,淘汰装置和/或网络)。实施例可以辅助添加新装置、新网络并且离开旧装置、旧网络和旧外围设备。Embodiments may also assist with network and device changes/migration (e.g., adding devices and/or networks, retiring devices and/or networks). Embodiments may assist with adding new devices, new networks, and leaving old devices, old networks, and old peripherals.

一些实施例可以基于数字门房监视到的用户习惯、用户的特定需求和对用户的现有网络和兼容性/互操作性考量的了解而提供建议,以提供关于新购买行为的建议和指导。Some embodiments may provide recommendations based on the digital concierge's monitored user habits, the user's specific needs, and knowledge of the user's existing network and compatibility/interoperability considerations to provide suggestions and guidance on new purchases.

一些实施例可以基于装置状况提供装置的以旧换新价值的独立估测,包含基于装置诊断结果对装置状态的认证。Some embodiments may provide an independent estimate of a device's trade-in value based on the device's condition, including certification of the device's status based on device diagnostics.

一些实施例可以辅助购买新装置。此类实施例可以提供新产品购买的场所和价格保证以及对使用过的/重建的/定制的(具有所有设置和特征)/经认证的装置的访问权。Some embodiments can assist in purchasing new devices. Such embodiments can provide location and price guarantees for new product purchases as well as access to used/rebuilt/customized (with all settings and features)/certified devices.

一些实施例可以提供在装置和/或网络已经存在覆盖范围的情况下通过延伸现有保护覆盖范围来覆盖装置的能力、或者对于新购买开始覆盖处理的能力。一些实施例可以辅助数据备份和数据传送操作以便于迁移到新装置。这种迁移可以包含提供备份和数据传送。实施例可以通过恢复设置甚至跨平台或操作系统执行这种迁移。Some embodiments can provide the ability to extend existing protection coverage to a device if coverage already exists for the device and/or network, or to initiate coverage for new purchases. Some embodiments can facilitate data backup and data transfer operations to facilitate migration to a new device. This migration can include providing backup and data transfer. Embodiments can perform this migration by restoring settings, even across platforms or operating systems.

实施例还可提供客服控制板和工具。例如,控制板可以提供对顾客的装置和连接、应用和消费者在装置上的行为的见解。实施例还可包含建议工具,用以辅助客服代表获得关于装置和网络和外围设备的信息以最佳解决客户的问题。Embodiments may also provide a customer service dashboard and tools. For example, the dashboard may provide insights into a customer's devices and connections, applications, and consumer behavior on the devices. Embodiments may also include a suggestion tool to assist customer service representatives in obtaining information about devices, networks, and peripherals to best resolve customer issues.

实施例还可包含追踪历史信息以辅助客服代表预测问题。一些实施例提供消费者先前活动的完整视图,包含先前票证、所有装置、所有连接和/或所有网络。实施例可能能够处理例如保险产品的交叉销售。Embodiments may also include tracking historical information to assist customer service representatives in anticipating issues. Some embodiments provide a complete view of a consumer's previous activity, including previous tickets, all devices, all connections, and/or all networks. Embodiments may be able to handle cross-selling of insurance products, for example.

一些实施例可以利用聚合数据的使用以提供装置诊断、检测和管理功能。例如,装置可以随时间基于用户使用该装置的方式来测量装置和网络性能。实施例可以比较确定其它装置和网络如何表现。一些实施例可以识别一或多个装置的以旧换新状况,并且基于装置的实际状况确定装置在其使用时间和类型以及真正的公平市价方面的估价如何/评级如何。Some embodiments may utilize aggregated data to provide device diagnostics, monitoring, and management capabilities. For example, a device may measure device and network performance over time based on how the user uses the device. Embodiments may compare and determine how other devices and networks perform. Some embodiments may identify the trade-in condition of one or more devices and determine how the device is valued/rated based on its age and type of use and true fair market value based on its actual condition.

实施例可以基于连接装置的装置类型、用户的网络和用户对其装置和网络的行为而提供个性化优惠。实施例还可监视和方便装置的迁移行为。例如,实施例可以追踪和方便切换行为,包含追踪装置的品牌和型号以及网络;追踪距离升级还有几个月;和/或追踪切换行为、升级和以旧换新的保护效果。实施例还可基于用户行为、装置、网络和/或分配给用户的确定“技术知识”水平提供建议。一些实施例还可诸如基于情境需要、技术知识得分、特定装置的存在或网络的整体状态向用户提供提示和技巧。一些实施例可以包含基于已知的装置问题、型号、装置使用时间或事件前的装置行为对预期装置问题的预测性警告。实施例还可测量性能以识别哪些装置和网络对于谁和在什么样的环境下表现最好。Embodiments may provide personalized offers based on the type of device connected to the device, the user's network, and the user's behavior with their devices and network. Embodiments may also monitor and facilitate device migration behavior. For example, embodiments may track and facilitate switching behavior, including tracking the brand and model of the device and network; tracking how many months are left until an upgrade; and/or tracking the conservation effectiveness of switching behavior, upgrades, and trade-ins. Embodiments may also provide recommendations based on user behavior, devices, networks, and/or a determined level of "tech knowledge" assigned to the user. Some embodiments may also provide tips and tricks to the user, such as based on situational needs, tech knowledge scores, the presence of specific devices, or the overall state of the network. Some embodiments may include predictive warnings of expected device issues based on known device issues, models, device age, or device behavior prior to the event. Embodiments may also measure performance to identify which devices and networks perform best for whom and in what environments.

得益于前文描述和相关附图中呈现的传授内容,本发明的这些实施例的相关领域中的技术人员将了解本文阐述的本发明的许多修改和其它实施例。因此,应理解,本发明的实施例不限于所公开的具体实施例,并且希望修改和其它实施例包括在所附权利要求书的范围内。尽管本文中采用了特定术语,但所述术语仅在通用和描述性意义上使用,而不用于限制目的。Many modifications and other embodiments of the inventions set forth herein will be apparent to those skilled in the art having regard to these embodiments of the invention, having benefit of the teachings presented in the foregoing description and the associated drawings. Therefore, it should be understood that the embodiments of the invention are not limited to the specific embodiments disclosed, and modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

Claims (29)

1.一种用于提供计算机网络分析的系统,其包括:1. A system for providing computer network analysis, comprising: 至少一个卫星装置,其被配置成:At least one satellite device is configured to: 监视无线网络业务以确定第一网络装置与第二网络装置之间的至少一个网络通信事件,第一网络装置和第二网络装置都是与卫星装置不同的装置;Monitoring wireless network services to determine at least one network communication event between a first network device and a second network device, both of which are devices different from satellite devices; 基于所述至少一个网络通信事件生成事件消息;以及Generate an event message based on the at least one network communication event; and 传输所述事件消息;以及Transmit the event message; and 控制器装置,其被配置成:The controller device is configured to: 接收所述事件消息;Receive the event message; 确定在所述网络通信事件期间通信的至少一个装置的身份;Identify at least one device that communicated during the network communication event; 至少部分地基于所述至少一个装置的所述身份确定网络状态;The network state is determined at least in part based on the identity of the at least one device; 执行所述网络状态和预定规则集的比较;Perform a comparison between the network state and the predetermined rule set; 至少部分地基于与所述预定规则集的比较,发起响应动作;以及The response action is initiated based at least in part on a comparison with the predetermined rule set; and 经由管理界面提供所述网络状态。The network status is provided via the management interface. 2.根据权利要求1所述的系统,其中所述事件消息包括所述网络通信事件的信号强度,并且其中所述控制器装置进一步被配置成至少部分地基于所述信号强度确定所述至少一个装置的位置。2. The system of claim 1, wherein the event message includes the signal strength of the network communication event, and wherein the controller device is further configured to determine the location of the at least one device based at least in part on the signal strength. 3.根据权利要求1所述的系统,其中所述事件消息包括协议识别符。3. The system according to claim 1, wherein the event message includes a protocol identifier. 4.根据权利要求1所述的系统,其中所述控制器装置进一步被配置成至少部分地基于所述事件消息识别所述至少一个装置的装置类型。4. The system of claim 1, wherein the controller device is further configured to identify the device type of the at least one device based at least in part on the event message. 5.根据权利要求1所述的系统,其中所述至少一个卫星装置进一步被配置成通过检测第一网络装置与第二网络装置之间的网络传输来监视所述无线网络业务,所述第一网络装置和所述第二网络装置都是不同于所述至少一个卫星装置和所述控制器装置的装置。5. The system of claim 1, wherein the at least one satellite device is further configured to monitor the wireless network service by detecting network transmissions between a first network device and a second network device, wherein the first network device and the second network device are devices different from the at least one satellite device and the controller device. 6.根据权利要求1所述的系统,其中所述事件消息包括所述网络通信事件的包标头。6. The system of claim 1, wherein the event message includes a packet header of the network communication event. 7.根据权利要求1所述的系统,其中所述至少一个卫星装置的时钟和所述控制器装置的时钟彼此同步。7. The system of claim 1, wherein the clock of the at least one satellite device and the clock of the controller device are synchronized with each other. 8.根据权利要求7所述的系统,其中所述事件消息包括基于来自所述至少一个卫星装置的所述时钟的读数导出的时戳。8. The system of claim 7, wherein the event message includes a timestamp derived from a reading of the clock from the at least one satellite device. 9.根据权利要求1所述的系统,其中所述网络通信事件是根据802.11协议、紫蜂协议或蓝牙协议传输的网络消息。9. The system according to claim 1, wherein the network communication event is a network message transmitted according to the 802.11 protocol, the Beehive protocol, or the Bluetooth protocol. 10.根据权利要求1所述的系统,10. The system according to claim 1, 其中所述响应动作包括自动更改第一网络装置或第二网络装置的配置以及自动更改网络的拓扑特征;以及The response actions include automatically changing the configuration of the first or second network device and automatically changing the network topology; and 其中控制器还被配置为:The controller is also configured as follows: 经由所述管理界面提供所述网络状态和所述响应动作的指示。The management interface provides instructions on the network status and the response actions. 11.根据权利要求10所述的系统,其中所述响应动作还包括激活安全系统。11. The system of claim 10, wherein the response action further includes activating a security system. 12.根据权利要求10所述的系统,其中所述响应动作还包括阻止通信装置。12. The system of claim 10, wherein the response action further includes blocking the communication device. 13.根据权利要求10所述的系统,其中所述响应动作还包括使相机被导向到特定位置。13. The system of claim 10, wherein the response action further includes guiding the camera to a specific position. 14.根据权利要求10所述的系统,其中所述响应动作还包括发起至少两个通信装置之间的流量监视操作。14. The system of claim 10, wherein the response action further includes initiating a traffic monitoring operation between at least two communication devices. 15.根据权利要求10所述的系统,其中所述响应动作还包括向外部系统生成通知,其中所述外部系统包括扬声器。15. The system of claim 10, wherein the response action further includes generating a notification to an external system, wherein the external system includes a speaker. 16.根据权利要求1所述的系统,其中所述至少一个卫星装置还被配置为至少部分地基于所述至少一个网络通信事件确定所述网络状态。16. The system of claim 1, wherein the at least one satellite device is further configured to determine the network state at least in part based on the at least one network communication event. 17.一种用于提供网络分析系统的方法,所述方法包括:17. A method for providing a network analysis system, the method comprising: 在控制器装置处从第一卫星装置接收第一事件消息,所述第一事件消息包括基于网络内的第一网络装置与第二网络装置之间的第一网络通信事件的内容,第一网络装置和第二网络装置都是与第一卫星装置不同的装置;At the controller device, a first event message is received from the first satellite device. The first event message includes the content of a first network communication event between a first network device and a second network device within the network. The first network device and the second network device are devices that are different from the first satellite device. 在所述控制器装置处从第二卫星装置接收第二事件消息,所述第二事件消息包括基于第三网络装置与第四网络装置之间的第二网络通信事件的内容;The controller receives a second event message from the second satellite device, the second event message including the content of a second network communication event based on the third network device and the fourth network device; 通过所述控制器装置处理所述第一事件消息和所述第二事件消息以确定网络状态,其中所述网络状态包括所述第一、第二、第三和第四网络装置中的每个网络装置的存在的指示器;The controller device processes the first event message and the second event message to determine the network status, wherein the network status includes an indicator of the presence of each of the first, second, third and fourth network devices; 执行所述网络状态和预定规则集的比较;Perform a comparison between the network state and the predetermined rule set; 至少部分地基于与所述预定规则集的比较,发起响应动作;以及The response action is initiated based at least in part on a comparison with the predetermined rule set; and 经由管理界面提供所述网络状态。The network status is provided via the management interface. 18.根据权利要求17所述的方法,其中所述第一事件消息包括所述第一网络通信事件的信号强度,并且其中所述控制器装置进一步被配置成至少部分地基于所述信号强度确定所述第一网络装置的位置。18. The method of claim 17, wherein the first event message includes the signal strength of the first network communication event, and wherein the controller device is further configured to determine the location of the first network device at least in part based on the signal strength. 19.根据权利要求17所述的方法,其中所述第一事件消息包括协议识别符。19. The method of claim 17, wherein the first event message includes a protocol identifier. 20.根据权利要求17所述的方法,其中所述控制器装置进一步被配置成至少部分地基于所述第一事件消息识别所述第一网络装置和所述第二网络装置中的每个网络装置的装置类型。20. The method of claim 17, wherein the controller device is further configured to identify, at least in part, the device type of each of the first network device and the second network device based on the first event message. 21.根据权利要求17所述的方法,其中所述第一卫星装置进一步被配置成通过检测第一网络装置与第二网络装置之间的网络传输来监视无线网络业务,所述第一网络装置和所述第二网络装置都是不同于所述第一卫星装置和所述控制器装置的装置。21. The method of claim 17, wherein the first satellite device is further configured to monitor wireless network services by detecting network transmissions between the first network device and the second network device, wherein the first network device and the second network device are devices different from the first satellite device and the controller device. 22.根据权利要求17所述的方法,其中所述第一事件消息包括所述网络通信事件的包标头。22. The method of claim 17, wherein the first event message includes a packet header of the network communication event. 23.根据权利要求17所述的方法,其进一步包括使至少所述第一卫星装置的时钟和所述控制器装置的时钟同步。23. The method of claim 17, further comprising synchronizing the clock of at least the first satellite device and the clock of the controller device. 24.根据权利要求23所述的方法,其中所述第一事件消息包括基于来自所述第一卫星装置的所述时钟的读数导出的时戳。24. The method of claim 23, wherein the first event message includes a timestamp derived from a reading of the clock from the first satellite device. 25.根据权利要求17所述的方法,其中所述响应动作包括自动更改第一网络装置或第二网络装置的配置以及自动更改网络的拓扑特征。25. The method of claim 17, wherein the response action includes automatically changing the configuration of the first network device or the second network device and automatically changing the topology characteristics of the network. 26.一种用于提供计算机网络分析的设备,其包括耦合到存储器的处理器,所述设备被配置成:26. An apparatus for providing computer network analysis, comprising a processor coupled to a memory, the apparatus being configured to: 接收事件消息,所述事件消息基于卫星装置监视到的至少一个网络通信事件;Receive event messages, the event messages being based on at least one network communication event monitored by the satellite device; 确定在所述网络通信事件期间通信的至少一个装置的身份;Identify at least one device that communicated during the network communication event; 至少部分地基于所述至少一个装置的所述身份确定网络状态;The network state is determined at least in part based on the identity of the at least one device; 执行所述网络状态和预定规则集的比较;Perform a comparison between the network state and the predetermined rule set; 至少部分地基于与所述预定规则集的比较,发起响应动作;以及The response action is initiated based at least in part on a comparison with the predetermined rule set; and 经由管理界面提供所述网络状态。The network status is provided via the management interface. 27.根据权利要求26所述的设备,其中所述事件消息包括所述网络通信事件的信号强度,并且其中所述设备进一步被配置成至少部分地基于所述信号强度确定所述至少一个装置的位置。27. The device of claim 26, wherein the event message includes the signal strength of the network communication event, and wherein the device is further configured to determine the location of the at least one means based at least in part on the signal strength. 28.根据权利要求26所述的设备,其进一步被配置成至少部分地基于所述事件消息识别所述至少一个装置的装置类型。28. The device of claim 26, further configured to identify the device type of the at least one device based at least in part on the event message. 29.根据权利要求26所述的设备,29. The device according to claim 26, 其中所述响应动作包括自动更改所述至少一个装置的配置以及自动更改网络的拓扑特征;以及The response actions include automatically changing the configuration of the at least one device and automatically changing the network topology characteristics; and 经由所述管理界面提供所述网络状态和所述响应动作的指示。The management interface provides instructions on the network status and the response actions.
HK18100749.4A 2014-10-08 2015-10-08 Methods, apparatuses, and systems for network analysis HK1241590B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US62/061,205 2014-10-08

Publications (2)

Publication Number Publication Date
HK1241590A1 HK1241590A1 (en) 2018-06-08
HK1241590B true HK1241590B (en) 2021-04-30

Family

ID=

Similar Documents

Publication Publication Date Title
US20230208904A1 (en) Methods, apparatuses, and systems for network analysis
US10558323B1 (en) Systems and methods for smart home automation using a multifunction status and entry point icon
US11165658B2 (en) Systems and methods for contextual network assurance based on change audits
US10051068B2 (en) Mechanisms to route IoT notifications according to user activity and/or proximity detection
JP6739456B2 (en) Home automation system including cloud and home message queue synchronization, and related methods
US9813308B2 (en) Statistical monitoring of customer devices
CN104935454A (en) Capability monitoring in a service oriented architecture
US10225347B2 (en) Message controlled appliances
US20200162353A1 (en) Bifocal timeline graphs for network analytics
HK1241590B (en) Methods, apparatuses, and systems for network analysis
HK1241590A1 (en) Methods, apparatuses, and systems for network analysis