网状网络寻址的制作方法

文档序号:11142931阅读:220来源:国知局
网状网络寻址的制造方法与工艺

本申请要求于2015年7月13日提交的序列号为14/798,448的美国专利申请的优先权。本申请还要求于2015年7月13日提交的序列号为14/798,451的美国专利申请的优先权。本申请还要求于2015年7月13日提交的序列号为14/798,452的美国专利申请的优先权。本申请还要求于2015年7月13日提交的序列号为14/798,455的美国专利申请的优先权。本申请还要求于2015年7月13日提交的序列号为14/798,456的美国专利申请的优先权。本申请还根据35U.S.C.§119(e)要求于2015年2月3日提交的序列号为62/111,510的美国临时专利申请的优先权,其全部内容以引用的方式并入本文。本申请还根据35U.S.C.§119(e)要求于2015年3月10日提交的序列号为62/131,188的美国临时专利申请的优先权,其全部内容以引用的方式并入本文。



背景技术:

使用无线网状组网将设备相互连接并且连接至基于云的服务日益盛行,以用于感测环境条件、控制设备、和向使用者提供信息和警告。然而,网状网络上的许多设备被设计为操作用于延长的电池电量时间,这限制了可用的计算、用户界面、和设备中的无线电资源。另外,一些网状网络设备可能会周期性的睡眠以减少电力消耗,并且并非恒定地与网状网络无线电联系以接收数据分组。然而,随着网状网络的日益普遍和互联性,网络寻址技术限制了在网状网络内和在网状网络设备与外部网络设备和服务之间路由数据分组的有效性、灵活性和冗余度。



技术实现要素:

本“发明内容”的提供是为了介绍网状网络寻址的简化构思,大体上与寻址和路由有关。下面将在“具体实施方式”中进一步描述该简化构思。本“发明内容”不旨在识别所要求的主题的本质特征,也不旨在用于确定所要求的主题的范围。

描述了大体上与在网状网络中寻址和路由分组有关的网状网络寻址。在实施例中,边界路由器从外部网络接收所分配的地址前缀和相关联的配置信息;该所接收的地址前缀和配置信息使边界路由器能够创建配备域,该配备域包括所接收的地址前缀和配置信息以及唯一标识符。边界路由器将所创建的配备域转发至网状网络中的领导者设备,该领导者设备存储该配备域并且传播该配备域以及任何其它配备域作为网状网络的网络数据的一部分。配备域使得网状网络中的路由器、终端设备、或者主机能够选择路由以将分组寻址到目的地地址。在实施方式中,配备域包括边界路由器的路由定位符(RLOC),使得路由器能够使用边界路由器将分组转发至外部网络。

描述了大体上与在网状网络中寻址和路由分组有关的网状网络寻址。在实施例中,路由器可以接收分组以递送至网络目的地并且确定该网络目的地是否在网状网络内。网络目的地使得路由器能够发现与网络目的地相关联并且为网络目的地提供可路由网络地址的路由定位符(RLOC)。路由器使用来自所发现的路由定位符的可路由网络地址来转发所接收的分组。在实施方式中,路由器可以按照多种方式发现RLOC,所述方式包括搜索存储在路由器中的RLOC的高速缓存、或者通过网状网络发送地址查询。

描述了大体上与在网状网络中寻址和路由分组有关的网状网络寻址。在实施例中,路由器登记终端设备的地址并且将子标识符分配给终端设备。路由器可以将终端设备的端点标识符(EID)和路由器的路由器标识符编码成端点标识符,路由器将该端点标识符并入该终端设备的路由定位符(RLOC)中。路由器通过网状网络接收对终端设备的地址查询,并且代表终端设备用包括终端设备的RLOC的响应对该地址查询作出响应。路由器可以代表终端设备接收数据分组并且存储用于该终端设备的数据分组,直到路由器可以将数据分组转发至终端设备。

描述了大体上与在网状网络中寻址和路由分组有关的网状网络寻址。在实施例中,路由器设备接收配备域,每个配备域包括地址前缀和相关联的用于该地址前缀的偏好值。路由器可以基于地址前缀中的一个地址前缀来确定用于将数据分组转发至目的地的路由。路由器可以使用偏好值来对数据分组的路由进行优先化。在其它方面中,可以基于一个或者多个因素来设置偏好值,并且,除了网状网络寻址成本之外,路由器可以使用偏好值来确定数据分组的路由。

描述了大体上与在网状网络中进行重复地址检测有关的网状网络寻址。在实施例中,网状网络的终端设备可以生成地址标识符,该地址标识符包括与终端设备相关联的地址和基于时间的信息,该终端设备附接至路由器设备以在网状网络中通信。地址标识符还可以包括由终端设备生成的随机值。由路由器设备维持地址标识符作为终端设备的元组状态。终端设备或者路由器设备可以发起地址查询,该地址查询请求网状网络中的具有指定地址的网状网络设备用与该指定地址对应的元组状态作出响应。终端设备或者路由器设备响应于该地址查询接收具有指定地址的网状网络设备的元组状态。终端设备或者路由器设备然后可以将网状网络设备的元组状态中的基于时间的信息与终端设备的元组状态中的基于时间的信息进行比较,并且基于所述基于时间的信息检测网状网络设备的重复地址。终端设备或者路由器设备然后可以引导具有重复地址的网状网络设备中的一个或者多个网状网络设备生成新地址。

附图说明

参照以下附图来描述网状网络寻址的实施例。贯穿整个附图,相同的附图标记用于表示类似的特征和组件。

图1图示了在其中可以实施网状网络寻址的各个实施例的示例网状网络系统。

图2图示了在其中可以实施网状网络寻址的各个实施例的示例环境。

图3图示了在其中可以实施网状网络寻址技术的各个实施例的示例环境。

图4进一步图示了在其中可以实施网状网络寻址技术的各个实施例的示例环境400。

图5图示了在其中可以实施大体上与重复地址检测相关的网状网络寻址的各个实施例的示例网状网络系统。

图6进一步图示了根据网状网络寻址的各个实施例的在示例网状网络系统中的重复地址检测的示例。

图7进一步图示了根据网状网络寻址的各个实施例的在示例网状网络系统中进行的重复地址检测的示例。

图8进一步图示了根据网状网络寻址的各个实施例的在示例网状网络系统中进行的重复地址检测的示例。

图9进一步图示了根据网状网络寻址的各个实施例的在示例网状网络系统中进行的重复地址检测的示例。

图10图示了根据本文描述的技术的实施例的大体上与网状网络中的配备域(provisioning domain)有关的网状网络寻址的示例方法。

图11图示了根据本文描述的技术的实施例的大体上与网状网络中的寻址架构有关的网状网络寻址的另一示例方法。

图12图示了根据本文描述的技术的实施例的大体上与网状网络中的终端设备有关的网状网络寻址的示例方法。

图13图示了根据本文描述的技术的实施例的大体上与网状网络中的对路由进行优先化有关的网状网络寻址的另一示例方法。

图14图示了根据本文描述的技术的实施例的大体上与网状网络中的重复地址检测有关的网状网络寻址的示例方法。

图15图示了根据本文描述的技术的实施例的可以实施网状网络的示例环境。

图16图示了根据本文描述的技术的一个或多个实施例的在网状网络环境中可以实施的示例网状网络设备。

图17图示了具有可以实施网状网络寻址的实施例的示例设备的示例系统。

具体实施方式

无线网状网络是具有连接在网状拓扑中的无线节点的通信网络,该网状拓扑为网状网络内的业务提供可靠的并且冗余的通信路径。无线网状网络使用多个无线电链路或者跳来在网状网络内的设备之间转发业务。这提供了面积比单个无线电链路所覆盖的面积更大的覆盖率。

无线网状网络可以是基于专有技术或者基于标准的技术。例如,无线网状网络可以是基于IEEE 802.15.4标准,该标准定义了供网状组网堆栈的更高层中的应用使用的物理(PHY)层和媒体访问控制(MAC)层特征和服务。上层应用依赖于这些标准定义的服务来支持对数据分组进行寻址和路由,以支持跨网状网络以及在网状网络与外部网络之间的应用级通信。

虽然许多基于标准的技术已经是为在诸如互联网协议(IP)网络的网络中进行数据分组的寻址和路由而开发的,但是这些技术未提供用于网状网络的分组的寻址和路由的方案。例如,网状网络可以连接至多个外部网络,每个这种外部网络提供了可供网状网络设备用来对数据分组进行寻址和路由的不同的网络配置数据集。然而,网状网络设备需要判定要使用哪一个网络配置数据集或者如何将来自不同网络配置数据集的配置信息的不同的、潜在冲突的项合并到地址数据分组中。

建立配备域来识别、存储、和传播用于网状网络的网络配置数据为不同的外部网络提供了一致的网络配置数据管理。当网状网络设备使用来自给定配备域的网络配置数据时,防止了不一致的或者冲突的使用(例如,由于混合网络配置数据所导致)。各个实施例提供了网状网络寻址技术以改进对网络配置数据的管理和使用。

用于网状网络的寻址和路由技术可能会产生路由低效率,并且可能会造成网状网络的单个故障点。例如,将网状网络连接至互联网服务提供商(ISP)的外部网络的边界路由器可以从ISP接收地址前缀和相关联的网络配置数据。在边界路由器中的动态主机配置协议(DHCP)服务器使用ISP供应的地址前缀将网状网络设备地址映射到网络地址以进行路由。

当网状网络中的网络地址查经过DHCP服务器时,产生路由低效率,并且DHCP服务器成为网状网络的潜在的单个故障点。同样,要求DHCP服务器配置IPv6地址产生网状网络的潜在的单个故障点。如果DHCP服务器出现故障,则网状网络设备无法获取IPv6地址。描述了为数据分组提供网上全球寻址而无需集中式服务来在网状网络内和在网状网络外为数据分组确定目的地地址的网状网络寻址技术。

用于网状网络的许多诸如传感器的设备,是针对在诸如几个月或者几年的长时间内低电池电量操作而设计的。为了实现长服务寿命,靠电池供电的网状设备可能会关闭许多功能(诸如,无线电接口和网络接口)或者使该许多功能睡眠一段时间。在睡眠期间,所述网状设备在网状网络上不可用于接收寻址至其的分组。

许多网络寻址和路由技术不能将数据分组传递至这种睡眠设备,并且可能会向分组的发送方指示至睡眠设备的该传递失败。描述了利用父路由器设备为睡眠的子终端设备提供地址登记的网状网络寻址技术,该父路由器设备代表终端设备提供路由目的地并且对地址查询作出响应。父路由器设备为睡眠的终端设备存储接收到的数据分组,直到终端设备醒来接收该数据分组。

可以基于路由成本来路由网状网络中的分组。例如,路由成本可以是基于路由的特性中的一种或者其组合,诸如,路由路径中的链路的数量或者链路质量的测量。路由成本可能未充分描述对于将通过一条路由的数据分组的路由相对于通过另一条路由优先化所需的信息。描述了将偏好与地址前缀相关联以基于偏好对数据分组的路由进行优先化的网状网络寻址技术。

网状网络中的设备可以使用进程来以分散的方式随机生成地址,而不需要获知在网状网络中使用的其它地址集。由于网状网络的拓扑随时间而变化,所以设备可能会附接至不同的路由器并且创建另外的地址。由于地址是在网状网络内传播的,所以,当地址在网状设备之中不是唯一时,由不同网状设备创建的重复地址可能会产生路由问题。描述了检测网状网络中的重复地址的网状网络寻址技术。

虽然可以按照任何数目的不同环境、系统、设备和/或各种配置来实施所描述的用于网状网络寻址的系统和方法的特征和构思,但是在下列示例设备、系统和配置的场境中描述网状网络寻址的实施例。

图1图示了在其中可以实施网状网络寻址的各个实施例的示例网状网络系统100。网状网络100是包括路由器102、适于用作路由器的终端设备104、和终端设备106的无线网状网络。路由器102、适于用作路由器的终端设备104、和终端设备106每个都包括用于通过网状网络进行通信的网状网络接口。路由器102通过网状网络接口接收并且传送分组数据。路由器102还可以跨网状网络100路由业务。

适于用作路由器的终端设备104位于网状网络拓扑的叶节点处并且不主动将业务路由至网状网络100中的其它节点。当将适于用作路由器的设备104连接至另外的网状网络设备时,适于用作路由器的设备104能够成为路由器102。终端设备106是可以使用网状网络100进行通信但是除了将分组简单地转发至其父路由器102之外缺乏在网状网络100中路由业务的能力的设备。例如,靠电池供电的传感器是一种类型的终端设备106。

一些终端设备106可以在终端设备106运行的部分时间内使一些操作或者硬件断电(即,睡眠)。例如,终端设备106可以使无线电或者网络接口断电,以在要求连接至网状网络100的操作之间节省电力。例如,靠电池供电的温度传感器可以仅仅周期性地唤醒以传送温度报告,并且然后,该温度传感器睡眠,直到下一次该温度传感器报告。当终端设备106睡眠时,终端设备106不主动连接至网状网络100以对地址查询作出响应或者通过网状网络100接收数据分组。

图2图示了在其中可以实施网状网络寻址技术的各个实施例的示例环境200。环境200包括网状网络100,在其中一些路由器102正在网状网络100中起着特定的作用。

边界路由器202(也称为网关和/或边缘路由器)是路由器102中的一个路由器。边界路由器202包括用于与在网状网络100外的外部网络进行通信的第二接口。边界路由器202通过外部网络连接至接入点204。例如,接入点204可以是以太网络由器、Wi-Fi接入点、蜂窝基站、或者用于桥接不同类型的网络的任何其它合适的设备。虽然出于清楚起见在图2中示出了单个边界路由器202,但是网状网络100可以具有任何数目的边界路由器202,这些边界路由器可以连接至任何数目的外部网络。在另一实施方式中,终端设备106可以作为边界路由器202操作。在这种情况下,作为边界路由器202操作的终端设备正在网状网络100与外部网络之间路由业务,但是不在其它网状网络设备之间路由业务。

接入点204连接至诸如互联网的通信网络206。经由通信网络206连接的云服务208提供与网状网络100内的设备有关和/或使用网状网络100内的设备的服务。例如但不限于,云服务208提供包括以下的应用:将终端用户设备(诸如,智能电话、平板等)连接至网状网络100中的设备、处理并且向终端用户呈现在网状网络100中获取的数据、将一个或者多个网状网络100中的设备链接至云服务208的用户账户、对网状网络100中的设备进行配备和更新等。

路由器102中的一个路由器起着网状网络100的领导者210的作用。领导者210管理路由器标识符分配,是网络配置信息的中央仲裁者,并且传播网状网络100的网络数据,所述网络数据包括网络配置信息。

图3图示了在其中可以实施网状网络寻址技术的各个实施例的示例环境300。环境300图示了连接至两个外部网络302和304的网状网络100。在本示例中,两个外部网络是已知的,但是可以使用任何合适的组网技术将任何数目的物理或者虚拟网络连接至网状网络100。图3还图示了由一个或者多个边界路由器202(在306和308处示出)将外部网络302和304中的每一个外部网络连接至网状网络100。任何边界路由器202可以连接至任何数目的外部网络。任何外部网络也可以通过任何数目的边界路由器202连接至网状网络100。

配备域

图4图示了在其中可以实施网状网络寻址技术的各个实施例的示例环境400。环境400包括网状网络100,该网状网络100被图示为从外部网络302和304接收网络配置数据。外部网络302向边界路由器406提供配置数据402。该配置数据402与外部网络302分配给网状网络100的地址前缀相关联,并且该地址前缀在网状网络100上可用于对数据分组进行寻址和路由。外部网络304向边界路由器406和边界路由器408提供配置数据404。该配置数据404与外部网络304分配给网状网络100的地址前缀相关联,并且该地址前缀在网状网络100上可用于对数据分组进行寻址和路由。

任何网状网络设备都可以使用配置数据402或者配置数据404对数据分组进行寻址和路由。配备域用于确保从配置数据402和配置数据404提取的配置信息的任何潜在的冲突组合不被用于将数据分组寻址至目的地。配备域是由边界路由器202中的一个或者多个路由器提供的网状网络100的一致的配置信息集。例如但不限于,在配备域中的配置信息可以包括网上前缀、网络地址配置信息、外部路由、和/或其它网络配置信息。

配备域将一起使用的网络配置信息的项相关联。存储在多个配备域中的网络配置信息的使用是相互排斥的(即,网状网络设备每次使用来自仅仅单个配备域的网络配置信息)。

在实施例中,在特定配备域中的网络配置信息可以由单个边界路由器202供应。替选地,多个边界路由器202可以分别供应包括在任何特定配备域中的信息的子集,在这种情况下,配备域是由多个边界路由器202供应的多个网络配置信息子集的集合。

由领导者210维持网状网络100的配备域作为元组。由包括在元组中的唯一标识符来识别配备域中的每个配备域。领导者210将配备域传播至网状网络100中的路由器102和适于用作路由器的终端设备104。例如,领导者210可以使用任何合适的协议(诸如,低功耗有损网络多播协议(MPL))或者对MLE-UPDATE消息进行多播来在网状网络100的网络数据中传播配备域。

例如但不限于,用于配备域的元组包括网络地址前缀(例如,IPv6地址前缀)、元组所关联的唯一配备域标识符、用于边界路由器202的使网络地址前缀可用于网状网络100的路由定位符(RLOC)、配备域的配置标记的数目、和/或路由器偏好值。

元组中的配置标记可以包括用于指示以下的一个或者多个标记:配备域中的路由将在一段最短时间内是稳定的、允许网状网络设备自动配置使用网络地址前缀的地址、允许网状网络设备使用先前配置的使用网络地址前缀的地址、与配备域相关联的边界路由器202管理用于网络地址前缀的地址配置、与配备域相关联的边界路由器202供应其它网络配置数据(例如,域名服务(DNS)服务器)、和/或与配备域相关联的边界路由器202利用使用该网络地址前缀的源为数据分组提供默认路由。

网状网络地址架构

在网状网络100中,可以由单无线电传输可到达的一组网状网络接口(网状网络设备)来定义链路本地范围。换言之,链路本地范围包括在网状网络100内彼此直接连接的网状网络设备。

网状网络设备使用链路本地地址来到达单无线电传输范围内的网状网络设备。网状网络设备使用链路本地地址来发现邻居、配置链路、和/或交换路由信息。在某些实施例中,网状网络设备向链路本地地址分配接口标识符,该接口标识符衍生自IEEE 802.15.4网络栈的媒体访问控制(MAC)层的IEEE 802.15.4扩展地址。例如,网状网络设备向链路本地IPv6地址分配接口标识符(IID),该接口标识符(IID)是通过计算IEEE 802.15.4扩展地址的SHA-256哈希并且将该SHA-256哈希的前八个字节作为IID而获得的。当附接至网状网络100时,网状网络设备向链路本地IPv6地址分配相同的IID,作为分配给网状网络设备的RLOC。

在网状网络100中,通过任何数量的无线电传输,由参与到相同网状网络100内的网状接口(网状网络设备)集合来定义网状网络本地(即,网状本地(Mesh-Local)或者领域本地(Realm-Local))范围。而且,相同网状本地范围内的所有网状接口共享相同的网状核用参数(即,主密钥、扩展个域网标识符(PANID)、和网状本地前缀)并且主动参与到相同的网状网络100中。网状网络设备从网状本地前缀形成网状本地地址。

网状网络设备使用网状本地地址来到达相同网状网络100内的其它网状网络设备。当网状网络设备附接至网状网络100时,存在分配给网状网络设备的两个网状本地地址。第一个是包括前缀(网状本地唯一本地地址(ULA)前缀)的路由定位符(RLOC),以及包括前缀(网状本地ULA前缀)的端点标识符(EID)。RLOC是对父路由器102的路由器标识符(路由器ID)和作为父路由器102的子路由器的终端设备106的子标识符(子ID)的编码。第二个所分配的网状本地地址是网状本地端点标识符(ML-EID),其在前缀是网状本地ULA前缀并且接口标识符(IID)随机选取的情况下是EID。

除了单播网状本地地址和网状本地多播地址之外,网状网络100还支持任播寻址。网状网络100使用IPv6任播地址来与网状网络DHCPv6代理通信。定义了基于网状本地前缀的DHCPv6代理任播地址,终端设备106使用该地址来到达针对给定前缀的DHCPv6代理。基于前缀的DHCPv6代理任播地址是使用网状本地ULA前缀和接口标识符而形成的RLOC,并且具有形式0000:00FF:FE00:FC0n,其中,‘n’是分配给边界路由器202所服务的网上前缀的IPv6超低功耗无线个域网(6LoWPAN)的上下文ID。

网状网络100还使用IPv6任播地址与网状网络服务器通信。网状网络服务器是向领导者210贡献网络数据的任何网状设备,例如,边界路由器202、DHCP服务器等。定义了网状本地服务任播地址,终端设备106可以使用该网状本地服务任播地址来到达给定类型的网状网络服务器。网状本地服务任播地址是使用网状本地前缀而形成的RLOC,并且接口标识符具有形式0000:00FF:FE00:FCmn,其中,‘mn’是服务类型ID+16。

网状网络设备还分配单播地址,该单播地址的范围比网状本地范围大。在网状网络100内,全球单播地址(GUA)用于实现与网状网络100外的设备的通信(例如,通过逻辑连接的网络(诸如,Wi-Fi)或者经由互联网)。全球单播地址可以包括范围比网状本地范围大的任何IPv6单播地址。网络数据中的配备域指示在配置全球地址时可以使用的全球前缀。例如,连接至外部网络的移动设备可以通过外部网络连接经由边界路由器202使用全球地址而连接至网状网络100上的设备。

配备域指示分配给网状网络100的一个或者多个网上(on-mesh)前缀。在实施例中,网状网络设备可以从网上前缀分配全球地址。替选地,如果网状网络100的网络数据指示在网状网络100上存在一个或者多个DHCPv6服务器,则网状网络设备可以使用DHCPv6分配全球地址。

在一些实施例中,网状网络100中的所有网状网络设备使用大量不同的单播地址进行通信(例如,IPv6单播地址)。对于范围比链路本地范围大的地址,网状网络100可以定义两种不同类型的地址:路由定位符(RLOC)和端点标识符(EID)。

RLOC是识别网状网络100内的特定网状网络设备的位置的网络地址(例如,IPv6地址)。在一些实施例中,RLOC仅用于网状网络设备通信控制业务和将数据包(例如,IPv6数据包、UDP传输等)传递至它们的预期目的地。在这种实施例中,应用通常看不见RLOC或者通常不使用RLOC。

单播RLOC具有网状本地范围并且将路由器ID和子ID编码在接口标识符中。例如,但不限于,单播RLOC的前缀是网状本地前缀和接口标识符,并且具有形式0000:00FF:FE00:xxxx,其中,‘xxxx’是嵌入路由器ID和子ID的16位值。

网状网络端点标识符(EID)是唯一地识别网状网络100内的给定网状网络设备的网络地址(例如,IPv6地址),并且独立于网状网络100中的拓扑变化。除了RLOC,网状网络100将范围与网状本地范围相同或者比网状本地范围大的所有其它单播地址(诸如,IPv6单播地址)都视作端点标识符。端点标识符独立于网状网络100内的网状网络设备的位置,并且不会响应于网状网络100中的拓扑变化而变化。

EID为网状网络100内的网状网络设备提供稳定的标识符。然而,EID不可以直接路由,这是因为网状路由协议仅仅针对RLOC交换路由信息。为了传递具有EID(如IPv6目的地地址)的数据报(诸如,IPv6数据报),网状网络设备执行EID到RLOC映射查找。

例如,网状网络设备接收具有目的地地址的数据分组,该目的地地址包括IPv6地址前缀,该IPv6地址前缀指示该地址具有相关联的网上RLOC。网状网络设备可以通过将接收到的IPv6地址前缀与网状网络100内传播的配备域中的地址前缀进行比较来确定存在相关联的网上RLOC,如上所述。

如果网状网络设备确定目的地地址与网上地址前缀相关联,则网状网络设备为接收到的地址发现EID到RLOC映射。按照任何合适的方式来发现该EID到RLOC映射,诸如在由网状网络设备存储的EID到RLOC映射的高速缓存中搜索或者将地址查询多播至网状网络100中的所有路由器102和/或适于用作路由器的终端设备。

在实施例中,网状网络设备包括对EID到RLOC映射进行缓存的地址查询集。EID到RLOC映射的该地址查询集包括从由网状网络设备发起的地址查询获得的EID到RLOC映射。该地址查询集还可以包括通过观察经由网状网络设备路由的网状网络业务而适当时机地获得的EID到RLOC映射,并且将来自观察到的业务的EID到RLOC映射存储在地址查询集中。

在实施例中,网状网络设备通过网状网络100对包括针对其而寻找EID到RLOC映射的EID的地址查询消息进行多播。将地址查询消息多播至所有路由器102和适于用作路由器的终端设备104。使用多播地址来对地址查询消息进行多播,该多播地址指定将地址查询消息寻址到网状网络100中的所有路由器102和适于用作路由器的终端设备104。具有EID到RLOC映射的任何路由器102和/或适于用作路由器的终端设备104,针对地址查询消息中的EID,通过将相关联的EID到RLOC映射发送至发起该地址查询的网状网络设备来对地址查询消息作出响应。

为了提高地址查询性能和减少网络业务,网状网络设备可以限制用于地址查询消息的多播的跳数。例如,终端设备106可能仅需要通过单跳来传送地址查询消息到达父路由器102,以获得所需的EID到RLOC映射。如果通过有限跳数多播的地址查询未返回所需的EID到RLOC映射,则网状网络设备通过更大的跳数对地址查询消息进行多播,诸如将其多播至整个网状网络100。

另外,为了提高EID到RLOC映射查找的速度并且减少网络业务,网状网络设备可以按照任何合适的方式将上述实施例进行组合,诸如搜索地址查询集并且如果对地址查询集的搜索未能返回针对给定EID的EID到RLOC映射则对地址查询进行多播。

因为EID面对网状网络100中的拓扑变化维持稳定,所以应用程序在与网状网络设备通信时优选地使用EID。然而,在一些实施例中,针对网状网络100内的简单请求-响应通信模式,应用程序可以直接使用RLOC。

在网状网络100中,多播寻址包括各种多播组。多播传递依赖于网状网络中的设备的类型和多播地址的登记。例如,全节点多播组包括上电的网状网络设备和睡眠一段时间的网状网络设备(诸如靠电池供电的传感器)两种,或者,全路由器多播组包括路由器102和适于用作路由器的终端设备104两种。将多播组定义为各种范围,诸如链路本地范围和领域本地范围。例如,网状网络设备中的每个网状网络设备预订链路本地全节点多播地址(例如,ff02::1)。作为路由器102、适于用作路由器的设备104、或者边界路由器202操作的网状网络设备预订链路本地全路由器多播地址(例如,ff02::2)。在另一示例中,网状网络设备中的每个网状网络设备预订领域本地全节点多播地址(例如,ff03::1)。作为路由器102、适于用作路由器的设备104或者边界路由器202操作的网状网络设备预订领域本地全路由器多播地址(例如,ff03::2)。

对于具有全球范围的多播地址,边界路由器202可以限制或者制约从外部网络转发多播分组到网状网络100中。例如,边界路由器202可以制约从更高带宽的外部网络转发多播分组,以避免压垮网状网络100的容量。然而,当诸如来自与使用网状网络100的应用相关联的云服务208的多播分组的这种多播适于网状网络100时,边界路由器202可以选择性地从外部网络转发多播分组到网状网络100中。

终端设备寻址

诸如传感器的许多类型的终端设备106,是针对在诸如几个月或者几年的长时间内低电池电量操作而设计的。为了实现长服务寿命,靠电池供电的网状设备可能会关闭或者使许多操作(诸如,无线电接口和网络接口)睡眠一段时间。终端设备106可以使用网状网络100进行通信但是除了简单地转发至其父路由器102之外缺乏在网状网络100中路由业务的能力。如此,这种类型的设备可以称为精简功能设备(RFD)或者睡眠子设备。在睡眠时段期间,终端设备106在网状网络100上不可用于接收寻址至终端设备106的数据分组。

当终端设备106附接至父路由器102时,为终端设备106进行的地址登记将子ID分配给终端设备106。父路由器102使用所分配的父路由器102的子ID和路由器ID代表子终端设备106对寻址至子终端设备106的网状网络业务作出响应。

当终端设备106向父路由器102登记时,终端设备106向父路由器102登记多播地址。例如,在默认情况下,父路由器102不将子终端设备106的多播消息排队。通过登记多播地址,父路由器可以确定子设备106感兴趣的是哪些多播消息,并且父路由器102代表子终端设备106将这些多播消息排队。在实施例中,一些多播地址对于网状网络设备是强制性的并且针对每个网状网络设备是隐式登记的。对于子终端设备106,向父路由器102隐式地登记强制性多播地址。由父路由器102为子终端设备106将用于这些强制性多播地址的多播消息排队。

在网状网络100中路由分组数据基于映射至EID的RLOC。对于附接至父路由器102的子终端设备106,将父路由器102的路由器ID和子终端设备106的子ID编码到接口标识符(IID)中。例如,将路由器ID编码到IID中的位字段的第一子集中,并且将子ID编码到IID中的位字段的第二子集中。例如,但不限于,将路由器ID编码到16位IID的位0-5中,并且将子ID编码到IID的位7-15中。任何给定路由器102都可以具有在任何给定时间登记的多个子终端设备106。

利用来自在IID中的编码的路由器ID和子ID的网状本地范围来编码每个终端设备106的RLOC。终端设备106的RLOC被网状网络设备用于将数据分组寻址和路由至终端设备106。当使用这样的RLOC对数据分组进行寻址时,在网状网络100中将数据分组路由至子终端设备106的父路由器102,这在终端设备106睡眠一段时间的情况下是很重要的。在终端设备106未睡眠的情况下,父路由器102可以用子终端设备106的RLOC作出响应,这将允许将分组被直接发送至子终端设备106。

父路由器102对寻址至子终端设备106的任何消息作出响应。例如,父路由器102用子终端设备106的RLOC对包含子终端设备106的EID的任何地址查询作出响应。

子终端设备106作为仅主机设备操作,并且将所有分组转发至父路由器102以用于跨网状网络100和/或外部网络进行通信。例如,子终端设备106不将EID解析为RLOC。子终端设备106依赖于父路由器102来执行该解析。子终端设备106依赖于父路由器102来为具有在网状网络100外的目的地的分组选择边界路由器202。

子终端设备106还依赖于父路由器102来接收并且存储寻址至子设备106的所有数据分组、以及来自子终端设备106向父路由器102登记的多播地址的多播消息,这些数据分组可以在子终端设备106睡眠时接收。当子终端设备106醒来时,将存储的数据分组转发至子终端设备106。由于父路由器102对发送至子终端设备106的消息作出响应,代表睡眠的子终端设备106作出响应的父路由器102确保在网状网络100上高效地并且可靠地处理用于子终端设备106的业务,这使得子终端设备能够在低功耗模式下操作更长的时间以节省电力。

用于对路由优先化的偏好

在网状网络中为数据分组确定路由的决定可以基于与可以转发数据分组的每个潜在路由相关联的路由成本。例如,路由成本可以基于以下中的一个或者其组合:路由的特性、和路由中的构成跳。例如,可以基于路由路径中的跳数或者对路由中的跳的链路质量的测量,来确定路由成本。

在将数据分组路由至外部网络(诸如,互联网)中的目的地的情况下,在潜在路由之间做出决定时,可能存在需要考虑的其它因素。不同的外部网络可以具有不同的财务成本、可靠性、时延、带宽、安全性等,这些可以使一条路由优于另一条路由。然而,路由成本可能未充分描述有助于使通过一个外部网络的分组数据的路由相对于通过另一个外部网络分组数据的路由优先化的其它因素。

例如,可以通过使用Wi-Fi网络连接的路由或者使用蜂窝网络连接的路由来转发分组。如果使用Wi-Fi网络的成本更低,则使Wi-Fi网络路由优先于蜂窝网络路由可以是优选的。在另一示例中,如果存在有线网络(例如,以太网)线路,如果有线网络提供的服务质量(QoS)保障比无线网络更好,则可以使该有线网络路由优先于无线网络路由。

网络数据中的每个配备域与外部网络分配的地址前缀相关联。每个配备域与还包括与地址前缀相关联的路由器偏好值、和相关联的边界路由器202。路由器偏好值用于对偏好进行比较以便对候选路由进行优先化。

例如,但不限于,可以将偏好设置为与高偏好、中等偏好、或者低偏好对应的值。用户可以基于用户为路由偏好选取的任何合适的准则,来设置任何偏好的值。如果未对偏好设置值,则可以在填写配备域时设置默认值。例如,可以将偏好的值设置为表示中等偏好的值。

在实施例中,路由器102在做转发决定时使用配备域中的路由信息以及网状路由成本和下一跳信息。如果IPv6目的地地址不是网上地址,则路由器102使用IPv6源地址来确定边界路由器202集合,这些边界路由器202提供与所述IPv6源地址的前缀相同的配备域相关联的路由。

在该边界路由器202集合内,路由器102找到最长的外部路由前缀匹配,如下:

1)如果两个地址前缀匹配,则选取具有更高偏好的地址前缀。

2)如果无外部路由匹配,则选取提供了默认路由的边界路由器202。

3)如果多于一个的边界路由器202提供了默认路由,则选取具有更高偏好的边界路由器202。

4)最后,如果两个或更多边界路由器202余下,则选取具有最低网状路径成本的边界路由器202。

如果IPv6目的地地址是基于前缀的DHCPv6代理任播RLOC,则路由器102使用编码在任播地址中的上下文ID来将具有相同配备域的该DHCPv6代理集合确定为与该上下文ID相关联的前缀。在该集合内,路由器102找到最接近的DHCPv6代理,如下:

1)如果多于一个的DHCPv6代理提供了默认路由,则选取具有更高偏好值的DHCPv6代理。

2)如果两个或更多DHCPv6代理余下,则选取具有最低网状路径成本的DHCPv6代理。

重复地址检测

图5图示了可以实施大体上与重复地址检测相关的网状网络寻址的各个实施例的示例网状网络系统500。示例网状网络系统500包括针对图1和图2所描述的网状网络100,并且包括路由器设备102和终端设备106。虽然在以下对示例网状网络系统500的讨论中仅仅为了对设备进行区分而用102之外的数字标识符标出了路由器设备中的一些路由器设备,但是路由器中的任何路由器都可以实施为本文描述的路由器102。相似地,虽然在以下讨论中仅仅为了对设备进行区分而用106之外的数字标识符标出了终端设备,但是终端设备中的任何终端设备都可以实施为本文描述的终端设备106。

终端设备106包括网状网络接口以用于通过网状网络进行通信,诸如经由可以通过网状网络接口接收和传送分组数据并且可以跨网状网络100对业务进行路由的路由器设备102进行通信。进一步地,终端设备(也称为网状网络的叶节点或者边界设备)可以通过将数据转发至其相关联的路由器设备102来通过网状网络100进行通信,该路由器设备102然后跨网状网络对数据进行路由。通常,网状网络设备,并且具体地是终端设备,诸如出于隐私原因而在网状网络上随机地选择或者生成IP地址。然而,网状网络设备中的一个或者多个网状网络设备可以选择或者生成相同的地址,这产生了检查由网状网络设备中的多于一个的网状网络设备生成的重复地址的需要。

当终端设备106附接至网状网络100中的路由器设备102(例如,终端设备通信地耦合至路由器设备以用于在网状网络中进行无线通信)时,终端设备将要将设备状态存储在网状网络中的与该终端设备附接的路由器中。例如,所存储的设备状态是元组状态(例如,作为元素的有序列表的元组),该元组状态包括地址、随机值、和使用期。地址由终端设备选择或者生成,随机值由终端设备生成,并且使用期指示路由器将为附接的终端设备维持该状态多久。例如,终端设备502附接至网状网络100中的路由器504,并且终端设备生成地址1111和随机值2653,使用期为60分钟(60m)。路由器504在指定使用期60分钟(60m)内维持终端设备502的元组状态506。注意,终端设备502维持自己的状态作为终端设备的地址标识符508。如下面更详细描述的,随机值可以由网状网络设备(例如,终端设备或者路由器设备)用于测试网状网络中的设备地址的唯一性。

与终端设备502相似,终端设备510附接至网状网络100中的路由器512,并且终端设备510生成地址2222和随机值5829,使用期为45分钟(45m)。路由器512在指定使用期或者剩余使用期内维持终端设备510的元组状态514,并且终端设备510维持自己的状态作为终端设备的地址标识符516。相似地,终端设备518附接至网状网络100中的路由器520,并且终端设备518生成地址1111和随机值4829,使用期为30分钟(30m)。路由器520在指定使用期或者剩余使用期内维持终端设备518的元组状态522,并且终端设备518维持自己的状态作为终端设备的地址标识符524。在本示例中,相应的终端设备的使用期用分钟来表示,但是可以指定为任何其它持续时间,诸如,秒、小时、天等。在其它场景中,终端设备518可能已经附接至使用期为60分钟的路由器520(即,在30分钟时的网状网络的当前状态之前的30分钟)。相似地,终端设备510可能已经附接至使用期为60分钟的路由器512(即,在45分钟时的网状网络的当前状态之前的15分钟)。

在网状网络100的实施方式中,路由器设备102可以具有有限的存储器,并且终端设备106可以在各个时间处附接至路由器设备中的不同路由器设备。例如,图6继续在终端设备518从路由器设备520移动并且附接至路由器设备526时重复地址检测的示例。在考虑到维持终端设备的地址标识符的使用期的情况下,路由器设备能够回收存储器,所述存储器会以其他方式存储已经附接至不同路由器设备的终端设备的地址标识符。随着终端设备在路由器设备周围移动并且附接至路由器设备中的不同路由器设备,终端设备留下地址标识符作为在对应的指定使用期内在先前路由器处的所存储的元组状态。

图6进一步图示了根据网状网络寻址的各个实施例的在示例网状网络系统500中进行的重复地址检测的示例。在本示例600中,终端设备518已经从路由器设备520(例如,如图5所示)移动并且已经附接至网状网络100中的路由器设备526。终端设备518仍然具有地址1111并且生成新随机值9482,使用期为60分钟(60m)。路由器526在指定使用期60分钟(60m)内维持终端设备518的新元组状态602。注意,终端设备518维持自己的状态作为地址标识符518,该地址标识符518已经被更新为包括由路由器520维持的先前元组状态522和由路由器526维持的新元组状态602二者。同样,注意,已经将针对所有终端设备的使用期指定都减量了10分钟,以指示终端设备518在终端设备518附接至路由器520时的网状网络的先前状态10分钟后移动并且附接至不同路由器526。

终端设备518可以向网状网络100中的所有其它网状网络设备发起多播地址查询,请求具有相同地址的任何其它网状网络设备用针对相同地址所存储的对应元组状态返回响应。例如,终端设备518可以在网状网络100中发起多播地址查询,请求具有相同地址1111的任何其它网状网络设备用在相关联的路由器设备处的对应的所存储的元组状态返回响应。相同地址1111自身并不提供足够的信息来检测网状网络中的重复地址。然而,该地址与随机数的组合为检测网状网络中的网状网络设备的重复地址提供了基础。

例如,响应于由终端设备518发起的多播地址查询,终端设备将从路由器520(例如,终端设备518先前所附接的路由器)接收回(1111,4289,20m)元组状态522;从路由器526(例如,终端设备518当前所附接的路由器)接收回(1111,9482,60m)元组状态602;以及从路由器504接收回(1111,2653,50m)元组状态506。虽然(1111,4289,20m)元组状态522指示在除了终端设备518当前所附接的路由器设备之外的路由器设备处的重复地址1111,终端设备518可以基于该终端设备维持自己的状态作为地址标识符524而确定该重复是先前由终端设备518自己生成的。相似地,来自路由器504的(1111,2653,50m)元组状态506向终端设备502指示重复地址1111,因为随机值2653与终端设备已经生成并且存储的任何随机值(例如,4829和9482)都不匹配,该重复地址1111被终端设备518检测为重复地址。

这是第一方重复地址检测的示例,因为终端设备518正发起地址查询以确定其它网状网络设备中的任何其它网状网络设备是否具有是终端设备地址的重复的地址。在相似的技术中,网状网络100中想要确定是否存在网状网络设备的一个或者多个重复地址的一些其它网状网络设备可以发起第三方重复地址检测。参照图5和图7对第三方重复地址检测进行描述。

当终端设备518或者一些其它网状网络设备检测到网状网络100中的重复地址时,终端设备可以引导具有该重复地址的网状网络设备生成新地址。在实施方式中,终端设备或者路由器设备可以检测重复地址的可能性并且多播地址错误通知以将检测到的重复地址通知给网状网络设备。进一步地,接收到多播地址错误通知的父设备(例如,终端设备的父设备)可以检查以确定其子网络设备中的任何子网络设备是否是地址错误通知的目标,并且发送单播消息使得睡眠子设备也可以收到该通知。

在重复地址检测的实施例中,可以按照乐观重复地址检测的形式来实施网状网络100,其中可以在发生对检测和解析重复的任何尝试之前分配并使用IPv6地址。使用ML-EID来唯一地识别具有高概率的网状网络设备,这是由于这些网状网络设备是由给定设备随机选取的。虽然可以使用设备的IEEE 802.15.4扩展地址,但是因为这些地址在通过无线传送时总是加密了的,所以利用ML-EID。将802.15.4扩展地址作为802.15.4报头的一部分以明文发送,所以设备可以改变其扩展地址以保护隐私。可以使用地址通知消息来检测重复EID。网状网络设备可以响应于地址查询或者在主动地址通知的情况下同步地接收地址通知消息。网状网络设备在这两种场景中进行重复检测。

当将相同的EID分配给相同网状网络分区中的两个或者更多网状网络设备时,地址查询生成多个地址通知消息。地址通知消息的接收方比较接收到的地址通知消息的ML-EID TLV以确定多个回复是否归因于使用相同IPv6地址的多个接口或者从路由器设备迁移至路由器设备的单个接口。如果两个或者更多接收到的地址通知消息具有相同的EID但是具有不同的ML-EID,则接收设备可以确定该EID被多于一个的设备使用并且向领域本地全路由器多播地址(FF03::2)多播地址错误通知消息。

接收到主动地址通知消息的网状网络设备将地址通知消息的RLOC16与其EID到RLOC映射高速缓存中包含的RLOC16进行比较。如果由于EID和RLOC16不同而存在EID到RLOC映射高速缓存条目,则网状网络设备可以确定EID可以被多于一个的设备使用并且向EID到RLOC映射高速缓存条目中包含的RLOC16单播地址错误通知,并且然后用新接收到的RLOC16来更新EID到RLOC映射高速缓存条目。该单播消息用于检查旧RLOC是否真的是EID的重复用户或者仅仅是过期数据。

单播地址错误通知消息的接收方可以确定目标EID是否属于自己,或者,在路由器设备的情况下,是否属于其子设备中的一个,并且将在其本地状态下与目标EID相关联的ML-EID与地址错误通知消息中的ML-EID进行比较。如果ML-EID不同,则网状网络设备可以确定目标EID由多于一个的设备使用并且向领域本地全路由器多播组(FF03::2)多播地址错误通知消息。

网状网络设备可以发送地址错误通知消息,以通知其它网状网络设备重复EID可能正在使用。在实施方式中,地址错误通知消息是CoAP POST消息,该CoAP POST消息包含检测到的重复IPv6地址和在触发重复地址检测的地址通知中包含的ML-EID:URI-Path;NON POST coap://[<peer address>]:MM/a/ae;CoAP Payload;Target EID TLV;以及ML-EID TLV。IPv6源地址是始发方设备的RLOC,并且IPv6目的地地址是:当经由多播发送时,是领域本地全路由器多播地址(FF03::2),或者当经由单播发送时,是目的地设备的RLOC。从地址通知或者触发该消息的地址错误通知消息复制Target EID TLV和ML-EID TLV。

当网状网络设备接收到地址错误通知消息时,网状网络设备可以检查是否将目标EID分配至其网状网络接口。如果将目标EID分配至了其网状网络接口并且ML-EID不同,则检测重复并且该设备停止使用目标EID。如果地址错误通知的接收方设备是路由器设备,则该设备检查是否将目标EID分配至其RFD子设备的网状网络接口中的一个网状网络接口。如果将目标EID分配至了RFD子设备的网状网络接口并且ML-EID不同,则检测重复并且路由器设备向对应的RFD子设备(例如,终端设备)单播地址错误通知,并且路由器设备从RFD子地址集移除目标EID。如果单播地址错误通知的接收方设备不是RFD,则网状网络设备向领域本地全路由器多播地址(FF03::2)多播地址错误通知。

图7进一步图示根据网状网络寻址的各个实施例的在示例网状网络系统500中进行的重复地址检测的示例。在本示例700中,终端设备518已经从路由器设备520(例如,如图5所示)移动并且已经附接至网状网络100中的路由器设备526。终端设备518仍然具有地址1111并且生成新随机值9482,指定使用期为60分钟(60m)。路由器526在指定使用期60分钟(60m)内维持终端设备518的新元组状态702。

在本示例700中,元组状态702包括地址、一个或者多个先前随机值、当前随机值、和使用期。元组状态702的该格式提供了终端设备518已经存在的踪迹(例如,终端设备已经附接的路由器的踪迹)。例如,从路由器520移动并且附接至网状网络100中的路由器526的终端设备518具有地址1111并且生成新随机值9482,使用期为60分钟(60m)。路由器526在指定使用期内维持(1111,9482,4829,60m)作为终端设备518的元组状态702。包括该一个或者多个先前随机值的元组状态702的格式提供了可以被检测为移动并且附接至各个路由器设备的终端设备,相对于附接至两个路由器设备的终端设备。终端设备518还维持自己的状态作为地址标识符524,并且用于终端设备518的地址标识符包括先前元组状态522和新元组状态702二者。

网状网络设备中的另一个网状网络设备,诸如网状网络100中的路由器设备102中的任一个,可以向所有其它网络网状网络设备发起多播地址查询,请求具有指定地址的任何其它网状网络设备用针对相同地址所存储的对应元组状态返回响应。例如,终端设备102可以在网状网络100中发起多播地址查询,请求具有地址1111的任何其它网状网络设备用对应的所存储的元组状态返回响应。响应于该多播地址查询,路由器设备将从路由器520(例如,终端设备518先前所附接的路由器)接收回(1111,4289,20m)元组状态522;从路由器526(例如,该终端设备当前所附接的路由器)接收回(1111,9482,4829,60m)元组状态702;以及从路由器504接收回(1111,2653,50m)元组状态506。

虽然(1111,4289,20m)元组状态522中的随机值4829包含在(1111,9482,4289,60m)元组状态702中,但是路由器102可以确定(1111,4289,20m)元组状态522和(1111,9482,4829,60m)元组状态702是由相同网状网络设备(例如,在本示例中是终端设备518)生成的。然而,(1111,2653,50m)元组状态506中的随机值2653都不发生在(1111,4289,20m)元组状态522或者(1111,9482,4289,60m)元组状态702中的任一个中,并且路由器设备检测到重复地址。

第三方重复地址检测的益处是始终开启的路由器(例如,路由器设备102)可以测试地址的唯一性而不涉及电池供电的终端设备,这与针对图5和图6描述的终端设备518上电以发起多播地址查询、接收响应并且处理所述响应的第一方重复地址检测场景中不同。对重复地址检测技术的优化包括:使用元组状态的使用期值来对随机值进行编码并且减少相关联的路由器设备(例如,由于在路由器设备处的可用存储器有限)维持随机值的需要。另外,可以维持k-最新随机值以应对网络分区和/或消息丢失。

图8图示了根据网状网络寻址的各个实施例的在示例网状网络系统500中进行的重复地址检测的示例800。在本示例800中,当终端设备106附接至网状网络100中的路由器设备102(例如,终端设备通信地耦合至路由器设备以用于在网状网络中进行无线通信)时,终端设备将会在网状网络中的与该终端设备附接的路由器中存储设备状态。例如,所存储的设备状态是基于时间的信息,该基于时间的信息包括当终端设备106附接至路由器设备102时所附的时间(“Ta”),并且包括当终端设备106最后与附接的路由器设备102通信时的最后交易时间(“Tt”)。

例如,终端设备502附接至网状网络100中的路由器504,并且终端设备生成地址111,使用期为60分钟(60m)。终端设备502维持自己的状态作为终端设备的地址标识符802。路由器504维持基于时间的信息804,该基于时间的信息804指示终端设备502在时间Ta:4处附接至路由器504,并且终端设备502在时间Tt:6处最后与路由器504传递交易。在本示例中,所指示的附接时间和交易时间,诸如附接时间Ta:4和最后交易时间Tt:6,仅仅表示为整数,这些整数可以表示秒、分、小时、天、和/或其它时长中的任何一个或者组合。

与终端设备502相似,终端设备510附接至网状网络100中的路由器512,并且终端设备510生成地址2222,使用期为45分钟(45m)。终端设备510维持自己的状态作为终端设备的地址标识符806。路由器512维持基于时间的信息808,该基于时间的信息804指示终端设备510在时间Ta:3处附接至路由器512,并且终端设备510在时间Tt:7处最后与路由器512传递交易。相似地,终端设备518附接至网状网络100中的路由器520,并且终端设备510生成地址1111,使用期为30分钟(30m)。终端设备518维持自己的状态作为终端设备的地址标识符810。路由器520维持基于时间的信息812,该基于时间的信息812指示终端设备518在时间Ta:4处附接至路由器520,并且终端设备518在时间Tt:5处最后与路由器520传递交易。图9继续在终端设备518从路由器设备520移开并且附接至路由器设备526时的重复地址检测的示例。

图9进一步图示了根据网状网络寻址的各个实施例的在示例网状网络系统500中进行的重复地址检测的示例,如参考图8所描述的。在本示例900中,终端设备518已经从路由器设备520(例如,如图8所示)移动并且已经附接至网状网络100中的路由器设备526。终端设备518仍然具有地址1111,使用期为30分钟(30m)。路由器526维持新的基于时间的信息902,该新的基于时间的信息902指示终端设备518在时间Ta:10处附接至路由器526,并且终端设备518在时间Tt:13处最后与路由器526传递交易。注意,已经基于与相应路由器设备最后传递的交易对所指示的用于所有终端设备的交易时间全部进行了更新。

终端设备518可以向网状网络100中的所有其它网状网络设备发起多播地址查询,请求具有相同地址的任何其它网状网络设备用针对相同地址存储的对应的基于时间的信息返回响应。例如,终端设备518可以在网状网络100中发起多播地址查询,请求具有相同地址1111的任何其它网状网络设备用在相关联的路由器设备处的对应的所存储的基于时间的信息返回响应。相同地址1111自身并不提供足够的信息来检测网状网络中的重复地址。然而,基于时间的信息、或者地址与基于时间的而信息的组合为检测网状网络中的网状网络设备的重复地址提供了基础。

例如,响应于由终端设备518发起的多播地址查询,终端设备将从路由器520(例如,终端设备518先前所附接的路由器)接收回(Ta:2,Tt:5)基于时间的信息812;从路由器526(例如,终端设备518当前所附接的路由器)接收回(Ta:10,Tt:13)基于时间的信息902;以及从路由器504接收回(Ta:4,Tt:12)基于时间的信息804。可以基于在终端设备的附接时间Ta与该终端设备与所附接的路由器设备传递交易时的最近交易时间Tt之间的重叠持续时间,来检测网状网络设备的重复地址。例如,与终端设备502(具有地址1111)相对应的(Ta:4,Tt:12)基于时间的信息804与(Ta:2,Tt:5)基于时间的信息812和与终端设备518(也具有地址1111)相对应的(Ta:10,Tt:13)基于时间的信息902二者都重叠。因此,终端设备518可以将基于时间的信息重叠检测为网状网络设备具有重复地址。

这是第一方重复地址检测的示例,因为终端设备518正发起地址查询以确定任何其它网状网络设备是否具有是终端设备地址的重复的地址。在如上所述的相似技术中,网状网络100中的想要确定是否存在网状网络设备的一个或者多个重复地址的一些其它网状网络设备(诸如,路由器设备102中的任何路由器设备),可以发起第三方重复地址检测。

根据网状网络寻址的一个或者多个实施例,参照相应的图10至图14对示例方法1000至示例方法1400进行描述。通常,本文描述的组件、模块、方法、和操作中的任何一个可以通过使用软件、固件、硬件(例如,固定逻辑电路系统)、手动处理、或者其任何组合来实施。可以用存储在计算机可读存储存储器上的可执行指令为通用场境来描述示例方法的一些操作,该计算机可读存储存储器是在计算机处理系统本地的和/或远离计算机处理系统,并且实施方式可以包括软件应用、程序、功能等。替选地或者另外地,本文描述的任何功能性可以至少部分地通过一个或者多个硬件逻辑组件来进行,诸如,但不限于,现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统(Soc)、复杂可编程逻辑器件(CPLD)等。

图10图示了大体上与在网状网络中对分组进行寻址和路由有关的网状网络寻址的示例方法1000。描述方法框的顺序并不旨在构成限制,并且可以将任何数目的所描述的方法框按照任何顺序进行组合来实施方法或者替代方法。

在框1002中,从外部网络接收地址前缀和相关联的配置信息,并且,在框1004中,创建配备域并且将其与接收到的地址前缀相关联。例如,边界路由器202分别从外部网络(诸如,外部网络302或者304)接收地址前缀和相关联的网络配置信息(诸如,配置数据402或者404)。边界路由器202创建配备域,该配备域包括接收到的地址前缀和相关联的配置信息、以及该配备域的唯一标识符。

在框1006中,将所创建的配备域转发至网状网络100的领导者设备。在框1008中,将配备域从领导者传播至网状网络100。例如,边界路由器202将创建的配备域通过网状网络100转发至领导者设备210,有效地使领导者设备210能够存储配备域。领导者设备210将接收到的配备域传播至网状网络100中的路由器102和适于用作路由器的终端设备104。替选地,边界路由器202将配置数据402或者404转发至领导者设备210,该领导者设备210创建配备域,并且在将该配备域传播至网状网络100之前将唯一标识符分配至该配备域。

在框1010中,使用在所传播的配备域中的信息,来对分组进行寻址。在框1012中,通过网状网络来转发寻址的分组。例如,针对数据分组(例如,来自RLOC查找)的目的地,路由器102确定使用配备域中的地址前缀为数据分组形成目的地地址。路由器102在使用了目的地地址的路由上转发该数据分组。

图11图示了大体上与在网状网络中对分组进行寻址和路由有关的网状网络寻址的示例方法1100。描述方法框的顺序并不旨在构成限制,并且可以将任何数目的所描述的方法框按照任何顺序进行组合来实施方法或者替代方法。

在框1102中,接收分组以递送至网络目的地。在框1104中,确定网络目的地是否在网状网络上。例如,路由器102接收分组(例如,来自在路由器102上执行的应用或者来自路由器102的子终端设备106)以递送至网络目的地。路由器102确定网络目的地在网状网络上,诸如,确定网络目的地是指示网络目的地在网状网络上但不是可路由地址的的端点标识符(EID)。

在框1106中,发现与网络目的地相关联的路由定位符(RLOC)。在1108中,将来自RLOC的可路由网络地址用作目的地地址,来转发分组。例如,诸如通过高速缓存在路由器102中的RLOC的RLOC查找或者通过执行地址查询,路由器102发现针对该EID的RLOC。路由器102使用从RLOC中的EID映射得到的可路由网络地址为分组形成目的地地址(诸如,IPv6目的地地址)。路由器102基于目的地地址在网状网络100上转发分组。

图12图示了大体上与在网状网络中针对终端设备进行寻址和路由有关的网状网络寻址的示例方法1200。描述方法框的顺序并不旨在构成限制,并且可以将任何数目的所描述的方法框按照任何顺序进行组合来实施方法或者替代方法。

在框1202中,登记终端设备的地址。在1204中,将子标识符分配给终端设备。在框1206中,来自子标识符和路由器标识符的端点标识符(EID)被编码成路由定位符(RLOC)。例如,在父路由器102处登记子终端设备106的地址。父路由器102将子标识符分配给子终端设备106。父路由器102将子标识符和父路由器102的路由器标识符编码成用于子终端设备的路由定位符。

在框1208中,接收针对终端设备的地址查询。在1210中,代表终端设备对地址查询作出响应。例如,父路由器102通过网状网络100接收到地址查询,该地址查询包括子终端设备106的编码的EID。父路由器102代表子终端设备以子终端设备的RLOC对地址查询作出响应。

在框1212中,为终端设备接收数据分组,在1214中,为终端设备存储接收到的数据分组,并且在1216中,将存储的数据分组转发至终端设备。例如,父路由器102代表子终端设备106接收寻址至子终端设备106的数据分组。代表子终端设备106接收数据分组可以包括:执行任何组网协议,诸如肯定接收到的数据分组、将接收到的数据分组组合到消息中、请求重传丢失的分组等。诸如在子终端设备106睡眠的时段期间,父路由器102存储接收到的数据分组。诸如在子终端设备106结束睡眠时段并且与父路由器102重建网状网络通信时,父路由器102将存储的数据分组转发至子终端设备106。

图13图示了大体上与在网状网络中基于地址对路由进行优先化有关的网状网络寻址的示例方法1300。描述方法框的顺序并不旨在构成限制,并且可以将任何数目的所描述的方法框按照任何顺序进行组合来实施方法或者替代方法。

在框1302中,将第一偏好值分配给第一地址前缀。在框1304中,将第二偏好值分配给第二地址前缀。例如,在第一配备域中,为第一地址前缀分配第一偏好值。在第二配备域中,为第二地址前缀分配第二偏好值。可以以任何合适的方式来设置偏好值,诸如,由网络管理员使用默认值等来设置偏好值。

在框1306中,将地址前缀和相关联的偏好值传播至网状网络。例如,网状网络100的领导者设备210将第一配备域和第二配备域作为网络数据的一部分传播至网状网络100中的路由器102和适于用作路由器的设备104。

在1308中,基于偏好值,确定用于将分组寻址至目的地地址的地址前缀。例如,路由器102使用传播的配备域中的第一和第二偏好值来确定是否要使用用于目的地地址(例如,IPv6目的地地址)的第一地址前缀或者第二地址前缀来通过网状网络100对分组进行寻址和转发。

图14图示了大体上与在网状网络中的重复地址检测有关的网状网络寻址的示例方法1400。描述方法框的顺序并不旨在构成限制,并且可以将任何数目的所描述的方法框按照任何顺序进行组合来实施方法或者替代方法。

在框1402中,生成地址标识符,其中,该地址标识符与附接至路由器设备的终端设备相关联以用于在网状网络中通信,由路由器设备维持该地址标识符作为终端设备的元组状态。例如,当终端设备106附接至网状网络100中的路由器设备102时(例如,终端设备通信地耦合至路由器设备以用于在网状网络中进行无线通信),终端设备518生成地址标识符。终端设备将设备状态存储在网状网络中与该终端设备附接的路由器中。在实施方式中,所存储的设备状态是元组状态(例如,元素的列表),该元组状态包括地址、随机值、和使用期。地址由终端设备选择或者生成,随机值由终端设备生成,并且使用期指示路由器将为附接的终端设备维持该状态多久。在其它实施方式中,地址标识符包括地址和与终端设备相关联的基于时间的信息。该基于时间的信息包括当终端设备106附接至路由器设备102时附接的时间(“Ta”),并且包括当终端设备106最后与附接的路由器设备102通信时的最后交易时间(“Tt”)。

在框1404中,发起地址查询,该地址查询请求网状网络中的具有指定地址的网状网络设备用与指定地址对应的元组状态作出响应。例如,终端设备或者路由器设备向网状网络100中的所有其它网状网络设备发起多播地址查询,请求具有相同地址的任何其它网状网络设备用针对相同地址存储的对应元组状态返回响应。在其它实施方式中,终端设备或者路由器设备向网状网络100中的所有其它网状网络设备发起多播地址查询,请求具有相同地址的任何其它网状网络设备以针对相同地址存储的对应的基于时间的信息返回响应。

在框1406中,响应于地址查询,接收具有指定地址的网状网络设备的元组状态。例如,终端设备或者路由器设备接收回与具有该相同指定地址的其它网状网络设备(例如,其它终端设备)对应的元组状态。在其它实施方式中,终端设备或者路由器设备接收回与具有该相同指定地址的其它网状网络设备(例如,其它终端设备)对应的基于时间的信息。

在框1408中,将网状网络设备的元组状态中的地址标识符的信息与该终端设备的元组状态中的信息进行比较。例如,终端设备或者路由器设备将用于该终端设备的地址标识符信息与具有相同地址的其它网状网络设备的地址标识信息进行比较以确定重复设备地址。替选地,终端设备或者路由器设备将其它网状网络设备的元组状态中的基于时间的信息与该终端设备的元组状态中的基于时间的信息进行比较来检测网状网络设备的重复地址。

在框1410中,基于对维持作为网状网络设备的元组状态的一部分的地址标识符的信息的比较,来检测网状网络设备的重复地址。例如,基于维持作为网状网络设备的元组状态的一部分的随机值,或者在其它实施方式中,基于与网状网络设备对应的基于时间的信息,发起多播地址查询的终端设备或者路由器设备检测网状网络设备的重复地址。

在框1412中,引导具有重复地址的网状网络设备中的一个或者多个网状网络设备生成新地址。例如,检测到重复地址的终端设备或者路由器设备引导具有重复地址的网状网络设备中的一个或者多个网状网络设备生成新地址。

图15图示了可以实施网状网络100(如针对图1所描述的)和网状网络寻址的实施例的示例环境1500。通常,环境1500包括实施为具有任何数目和类型的网状网络设备的智能家居或者其它类型的结构的一部分的网状网络100,该网状网络设备配置为在网状网络中进行通信。例如,网状网络设备可以包括恒温器1502、危险检测器1504(例如,针对烟雾和/或一氧化碳)、相机1506(例如,室内和室外)、灯光单元1508(例如,室内和室外)、和实施在结构1512(例如,在智能家居环境)内部和/或外部的任何其它类型的网状网络设备1510。在本示例中,网状网络设备也可以包括任何先前描述的设备,诸如,边界路由器202、路由器102、适于用作路由器的终端设备104、和/或终端设备106。

在环境1500中,任何数目的网状网络设备可以实施为进行无线互连以彼此无线地通信和交互。网状网络设备是模块化的、智能的、多传感的、网络连接的设备,其可以彼此无缝集成和/或与中央服务器或者云计算系统无缝集成以提供多种有用智能家居目标和实施方式中的任何一种。针对图16示出并且描述了可以实施为本文描述的任何设备的网状网络设备的示例。

在实施方式中,恒温器1502可以包括检测环境气候特性(例如,温度和/或湿度)并且控制在智能家居环境中的HVAC系统的学习型恒温器。学习型恒温器1502和其它智能设备通过捕获对设备的居住者设置来“学习”。例如,恒温器学习针对早晨和晚上的优选温度设置点和该结构的居住者何时入睡或者醒来、以及居住者通常何时离开家或者在家。

危险检测器1504可以实施为检测有害物质的存在或者指示有害物质的物质(例如,烟雾、火、或者一氧化碳)的存在。在无线互连的示例中,危害检测器1504可以检测烟雾的存在,该烟雾指示在结构中的火,在这种情况下,首先检测到烟雾的危险检测器可以将低功率唤醒信号广播至所有连接的网状网络设备。其它危险检测器1504然后可以接收广播的唤醒信号,并且发起用于危险检测的高功率状态以接收警报消息的无线通信。进一步地,灯光单元1508可以接收广播的唤醒信号并且在检测到的危险所在的区域中激活以照明并且识别该问题区。在另一示例中,诸如针对检测到的火或者非法闯入,灯光单元1508可以以一种照明颜色激活以指示该结构中的问题区或者区域,并且以不同于该颜色的照明颜色激活以指示安全区域和/或离开该结构的逃生路由。在另一示例中,门铃或者大门监视系统更可以包括LED,该LED在检测到存在时闪现黄色(或者其它颜色),或者在激活了警报器时闪现红色。

在各种配置中,网状网络设备1510可以包括入口通道接口设备,该入口通道接口设备与网络连接的门锁系统配合作用并且检测有人接近或者离开某个位置(诸如,结构1512的外门)并且作出响应。入口通道接口设备可以基于是否有人已经接近或者进入智能家居环境来与其它网状网络设备交互。入口通道接口设备可以控制门铃功能,经由音频或者可视装置宣告有人接近或者离开,并且控制安全系统上的设置,以便在居住者来去时激活或者去激活安全系统。网状网络设备1510还可以包括其它传感器和检测器,以便检测环境灯光条件、检测住宅居住状态(例如,利用居住情况传感器)、并且控制一个或者多个灯的电源和/或亮度状态。在一些情况下,传感器和/或检测器还可以控制风扇(诸如,吊扇)的电源状态或者速度。进一步地,传感器和/或检测器可以检测住宅或者围场的居住情况,并且诸如在住宅或者结构未居住的情况下控制对插座或者设备的供电。

网状网络设备1510还可以包括连接的电器和/或控制的系统,诸如冰箱、炉子和烤箱、洗衣机、烘干机、空调、泳池加热器、灌溉系统、安全系统等、以及其它电子设备和计算设备(诸如,电视、娱乐系统、计算机、对讲系统、车库门开启器、吊扇、控制面板等)。当将电器、设备、或者系统插入时,该电器、设备、或者系统可以向网状网络宣告自身,如上所述,并且可以自动与诸如智能家居的网状网络的控制器和设备集成样。应该注意,网状网络设备1510可以包括物理位于结构外部但是处于无线通信范围内的设备,诸如控制游泳池加热器或者灌溉系统的设备。

如上所述,网状网络100包括边界路由器202,该边界路由器202接口连接以与在网状网络100外部的外部网络通信。边界路由器202连接至接入点204,该接入点204连接至诸如互联网的通信网络206。经由通信网络206连接的云服务208提供与网状网络100内的设备有关和/或使用网状网络100内的设备的服务。例如,但不限于,云服务208可以包括以下用途的应用:将终端用户设备(诸如,智能电话、平板等)连接至网状网络100中的设备、向终端用户处理并且呈现在网状网络100中获取的数据、将一个或者多个网状网络100中的设备链接至云服务208的用户账户、对网状网络100中的设备进行配备和更新等。例如,用户可以使用网络连接的计算机或者诸如移动电话或者平板设备的便携式设备,来控制智能家居环境中的恒温器1502和其它网状网络设备。进一步地,网状网络设备可以经由边界路由器202和接入点204向任何中央服务器或者云计算系统传递信息。可以使用多种自定义或者标准的无线协议(例如,Wi-Fi、针对低功率的ZigBee、6LoWPAN等)中的任何一种和/或通过使用多种自定义或者标准的有线协议(例如,CAT6 Ethernet、HomePlug等)中的任何一种,来执行数据通信。

网状网络100中的任何网状网络设备都可以用作低功率通信节点,以在智能家居环境中创建网状网络100。网络的个体低功率节点可以定期地发出有关它们所感测到的内容的消息,并且,在环境中的除了发出它们自己的消息之外的其它低功率节点可以重复这些消息,从而将这些消息从网状网络内的一个节点传递到另一个节点(即,从一个设备传递到另一个设备)。网状网络设备可以实施为节省电力,尤其是在靠电池供电时,从而利用低功率通信协议来接收这些消息,将这些消息转化成其它通信协议,并且将转化后的消息发送至其它节点和/或发送至中央服务器或者云计算系统。例如,居住情况传感器和/或环境光传感器可以检测住宅中的居住者以及可以测量环境光,并且,在环境光传感器检测到住宅较暗时并且在居住情况传感器检测到有人在该住宅中时,激活光源。进一步地,传感器可以包括定期发出有关住宅的居住情况和住宅中的光亮的消息的低功率无线通信芯片(例如,ZigBee芯片),这些消息包括与检测到住宅中有人的居住情况传感器一致的即时消息。如上面提及的,可以使用网状网络将这些消息从智能家居环境内的一个节点无线发送至另一节点(即,从一个智能设备发送至另一智能设备),并且也可以经由互联网将这些消息发送至中央服务器或者云计算系统。

在其它配置中,网状网络设备中的各种网状网络设备都可以用作智能家居环境中的警报系统的“绊线”。例如,在由位于结构或者环境的窗户、门、和其它进入点处的警报传感器处进行的犯罪者检测的事件中,仍然可通过从网状网络中的低功率网状节点中的一个或者多个低功率网状节点接收居住情况、运动、热、声音等消息来触发警报。在其它实施方式中,网状网络可以用于随着人在结构中从一个住宅转到另一个住宅而自动打开和关闭灯光单元1508。例如,网状网络设备可以检测到有人移动穿过该结构,并且经由网状网络的节点来传递对应的消息。使用指示哪些住宅被居住的消息,接收到消息的其它网状网络设备可以因此激活和/或去激活。如上所提到的,网状网络还可以用于在紧急情况下提供出口灯光,诸如通过打开通往安全出口的适当的灯光单元1508。灯光单元1508还可以打开,以指示人们安全离开该结构应该遵循的出口路由的方向。

各种网状网络设备还可以实施为与可穿戴计算设备集成和通信,诸如可以用于识别和定位该结构的居住者,并且因此调节温度、灯光、声音系统等。在其它实施方式中,RFID感测(例如,具有RFID手镯、项链、钥匙扣的人)、合成视觉技术(例如,视频相机和人脸识别处理器)、视频技术(例如,语音、声音模式、震动模式识别)、超声感测/成像技术、和红外或者近场通信(NFC)技术(例如,佩戴有支持红外或者NFC的智能电话的人)、以及从感测到的信息得出有关结构或者环境中的居住者的位置的有用结论的基于规则的推理引擎或者人工智能技术。

在其它实施方式中,可以根据用于实现个人舒适区网络、个人健康区网络、个人安全区网络、和/或服务机器人的其它这种面向人类的功能的更好性能的基于规则的推理技术或者人工智能技术,通过与环境中的其它网状网络设备和传感器的逻辑集成,来增强这些功能。在有关个人健康区的示例中,该系统可以结合基于规则的推理技术和人工智能技术,来检测家庭宠物是否正朝居住者的当前位置移动(例如,使用网状网络设备和传感器中的任何一种)。相似地,危险检测器服务机器人可以被通知厨房中的温度水平和湿度水平正在升高,并且,在推断环境烟雾水平的任何小增加最有可能是由于烹饪活动而不是由于真正危险状况时,危险检测器服务机器人可以暂时升高危险检测阈值,诸如,烟雾检测阈值。针对任何类型的监视、检测、和/或服务而配置的任何服务机器人可以实施为网状网络上的网状节点设备,这符合用于在网状网络上进行通信的无线互连协议。

网状网络设备1510还可以包括用于智能家居环境中的结构的个体居住者中的每个个体居住者的智能闹钟。例如,居住者可以针对起床时间(诸如,第二天或者一周的起床时间)自定义和设置警报设备。人工智能可以用于考虑在居住者出门时对于警报的响应,并且随着时间针对优选睡眠模式做出推论。然后,可以基于该人的唯一签名,在网状网络中对个体居住者进行追踪,该唯一签名是基于从位于网状网络设备中的传感器获得的数据来确定的,所述传感器诸如包括超声传感器、无源IR传感器等的传感器。居住者的唯一签名可以基于移动、语音、高度、大小等的模式的组合、以及使用人脸识别技术。

在无线互连的示例中,可以将个人的起床时间与恒温器1502相关联来按照高效的方式控制HVAC系统,以便将该结构预热或者冷却至所需的睡眠和醒来的温度设置。可以随着时间来学习优选设置,诸如,通过捕获在人去睡觉之前和醒来时在恒温器中设置的温度。所收集的数据还可以包括人的生物计量指示,诸如呼吸模式、心率、移动等,通过这些生物计量指示,基于该数据并且结合指示人实际醒来的时间的数据,可以做出推断。其它网状网络设备可以使用该数据来提供其它智能家居目的,诸如调节恒温器1502以便将该环境预热或者冷却到所需设置和打开或者关闭灯1508。

在实施方式中,还可以利用网状网络设备进行声音、振动、和/或运动感测,以便检测流动的水并且基于水使用和消耗的算法和映射来确定有关智能家居环境中的水使用的推断。这可以用于确定在住宅中的每个水源的签名或者指纹,并且也称为“音频指纹水使用”。相似地,可以利用网状网络设备来检测讨厌的害虫(诸如,老鼠和其它啮齿动物以及白蚁、蟑螂和其它昆虫)的细微声音、振动和/或运动。该系统然后可以将环境中的可疑害虫通知给居住者,诸如利用警告消息,以帮助促进较早的检测和预防。

在另外的场景中,可以针对可配置和/或可寻址以加入网状网络和示例环境1500并且在网状网络和示例环境1500中操作的第三方产品和设备,来实施本文针对网状网络描述的技术和网状网络设备。下面描述可以实施在示例环境中来无线互连以彼此无线地通信和交互的第三方产品和设备的各个示例。如上面指出的,第三方产品和设备可以设计并且实施为彼此无缝集成和/或与中央服务器或者云计算系统无缝集成以提供多种有用目的和实施方式中的任何有用目的和实施方式。

电器设备,诸如主要的家用电器(例如,洗衣机、烘干机、烤箱和火炉、洗碗机、冰箱等)可以在网状网络中操作,以便在将房屋设置为HOME状态下时对洗衣房进行清洁,或者,电器可以在将房屋设置为AWAY状态(例如,所有人都已经离开了该结构)下时进入经济模式。在紧急情况下,诸如火灾或者自然灾害,或者基于检测到的可能会导致紧急情况的天气状况,可以禁用使用天然气的电器(例如,炉子和热水器)。在房屋的AWAY状态下,可以将烤箱开着的通知传递至用户的移动设备,或者报告任何电器的状态,诸如洗衣机状态、冰箱已经停止运行、锅炉正超出预计地运行等。进一步地,锅炉正超出预计地运行的通知也可以是门或者窗户一直向寒冷的外部环境敞开或者已经被砸开的指示。如果用户未对电器通知(诸如,烤箱开着的通知)作出响应,则该系统可以自动关闭烤箱。

在房屋的HOME状态下,电器(例如,洗衣机和烘干机)可以进入安静模式。如果房屋处于AWAY状态下并且水龙头被打开以获得热水,则该系统可以发起房屋HOME状态。进一步的电器使用可以提供居住情况的指示以及居住者的大概人数。如果结构的居住者离开达指定小时数或者天数,则该系统可以传送进入经济模式的请求,用户然后可以在移动设备上远程地批准该请求。另外,如果电器在RHR期间被激活,则该系统可以发起警告(在高峰使用期间节省能量)、减少在RHR期间的热水流量、在紧急情况期间或者如果激活了报警则激活中央加热和冷却系统来推动或拉动空气、基于烤箱温度或者烤箱开着来调节恒温器或者设置一些其它网状网络设备设置点、并且将水和/或电使用的报告传递至用户的移动设备。

可以自动激活具有百叶窗、帘子、或者其它类型的遮盖物的门和窗户、或者可以是电致变色的门和窗户,以便在晚间或者在房屋AWAY状态下降低帘子。除了打开HVAC之外,或者如果检测到直射阳光,还可以关闭帘子来降低温度。替选地,如果警报响了,则可以打开帘子,或者如果是RHR,则可以关闭帘子。相似地,如果是RHR则可以打开电扇,或者如果是对结构或者环境加热则可以关闭风扇。也可以将风扇状态、速度和其它特性用作改变另一网状网络设备设置点的依据。进一步地,可以将能量使用数据传递至用户的移动设备。如果HVAC单元正在加热或者冷却,则可以在去层理(反向)模式下操作风扇。如果将房屋设置为AWAY模式,则可以定期地打开风扇和/或在与HVAC风扇相同的有限时长内激活风扇。在警报期间,可以激活任何外部通风的风扇。HVAC可以具有多个传感器输入来确定住宅环境的居住情况以进行自定义温度控制。

电动车充电可以基于DR,如果检测到危险则停止充电,或者用户给出在RHR期间延迟充电的选项。另外,可以上传电动车充电的能量使用数据,并且该系统可以学习调度表,以便基于用户通常离开和取车的时间来事先准备好车辆以供使用。

可以基于房屋HOME模式或者AWAY模式将住宅灯光设置为打开或者关闭,并且可以使用运动感测来确定或者设置房屋HOME模式。如果房屋处于AWAY模式下,该系统可以随机打开和关闭灯。不太高效的灯可以使用得较少。可以利用布景和灯光来创建住宅“情景”,诸如晚餐情景、观影情景、浪漫情景等。如上面提出的,灯可以照亮为红色以指示危险或者紧急情况,并且然后转为亮白色以照亮离开该结构的出口路径。灯也可以针对RHR关闭或者变暗、基于温度打开或者关闭、和/或具有不同的开始、期间、和结束颜色。

可以结合运动感测来切换灯并且激活HOME模式。可以对灯激活进行监视来检测居住情况,并且如果未检测到居住者则可以传递请求去激活HVAC的消息。针对相机整合和成像,如果检测到运动则可以提高灯的亮度以用于相机成像。如果灯坏了,相机可以对该灯进行缩放。可以基于检测到的用户、用户简档来调节灯,和/或调节灯光或者温度。可以针对房屋HOME模式和AWAY模式来学习灯光调度表,并且灯致动指示或者激活HOME模式。如果激活了警报,则所有的室外灯都可以被激活和/或照明不同的颜色,诸如,游泳池灯、泛光灯、和其它室外灯。也可以稳定、闪烁、随机地、或者在指示警告或者警报的一些模式下打开灯。如果激活了警报,则灯可以照明提醒状态颜色,诸如,黄色作为警示或者红色作为警告。灯的子集可以照明以指示侵入者的位置和存在。灯也可以诸如基于住宅环境传感器确定打开以照亮离开该结构的安全出口路径。

如果门锁未上锁,则可以发起房屋HOME模式,并且相似地,如果居住者离开并且将门锁上,则可以设置房屋AWAY模式。如果居住者在家并且处于房屋HOME模式,则该系统可以不那么频繁地轮询门锁的状态,而在房屋AWAY模式下时常常可以更频繁地轮询门锁的状态。进一步地,如果遇到低电量情况并且房屋处于AWAY模式下,该特征可以进入休眠以节省基于门锁的网状网络设备的电量。基于门锁的设备可以设计为基于PIN代码+BLE认证来操作,并且可以使用锁定或者解锁状态来进行居住情况确定和/或可以与其它传感器信息组合来进行居住情况确定。非期望的门解锁可以发起警报,诸如如果用户在度假,并且可以将解锁消息传递至用户的移动设备。进一步地,当用户到达或者离开时,可以发起通知以显示在移动设备的屏幕上。

所有类型的无线传感器设备都可以实施为在网状网络中操作,并且向用户和任何其它网状网络设备提供温度和其它度数。从服务的角度看,当用户在其它某处签到时,可以发起房屋AWAY模式和HVAC设置,这也可以基于位置服务输入和/或日历事件。该系统还可以实施为用于恒温器或者其它网状网络设备中的任何其它网状网络设备的预订、警报交互、和/或语音控制。可以允许住宅的客人基于接近度来控制该系统的一些特征和方面。传感器还可以方便客人临时相机访问和临时钥匙访问。进一步地,可以基于在包括网状网络环境的另一结构中检测到的居住情况,来控制客人自己的住宅并且发起AWAY模式。还可以在客人到达之前并且在客人离开之后自动对房间(room)进行拍照,并且还可以检测到有太多客人。

太阳能设备可以在网状网络中通信以基于天气预报和存储的电荷来控制恒温器、改变电动车辆、和/或激活电器。可以针对本文描述的许多特征,连同居住情况传感器一起实施开关和插头,以便激活警报设备、在RHR(高峰时段)期间去激活设备、传递能量消耗通知以供用户检测等。可以集成VOIP系统以诸如在房屋AWAY模式下向用户转发通话,或者在激活警报的情况下拨打911紧急电话。VOIP系统还可以监视调度的HOME模式时间,并且如果未进入房屋HOME状态则向用户发起通话。

音频和视频特征可以实施为在紧急、危险、和警报情况下调低电视和音频设备,并且在房屋HOME状态和房屋AWAY状态下打开或者关闭设备。还可以通过网状网络设备来传播(例如,重新广播)警报,作为特定分贝级的消息。还可以基于房屋状态来切换音频,并且IR传感器和应用使用可以指示房屋HOME状态。音频系统可以用于通过该系统的扬声器传播音频警报,和/或如果相机检测到侵入者则可以播放声音。可以基于人到家的ETA,来打开或者关闭音频系统以及网状网络设备中的任何网状网络设备。

汽车通常可以作为示例环境中的网状网络设备而集成进来,并且传递人到家的ETA。当回到和离开结构时,或者当ETA基于阈值时,可以基于所提供的ETA来发起房屋HOME状态和房屋AWAY状态,包括使用热转变时间来升温或者冷却该结构。还可以合并地理围栏的特征以用于网状网络。与用户的移动设备相似,汽车可以显示网状网络设备中的任何网状网络设备的车载状态和/或网状网络整体的车载状态,以包括相机图像和视频馈送。可以基于在房屋中的恒温器设置预先准备好汽车(车辆)以备使用,从而在用户从房屋转移到车辆时维持用户环境温度,反之亦然。在示例环境中的结构的微定位控制可以用于致动进入点,以便在到达时打开车库门但却不解锁该结构的任何其它进入门(或者其任何其它组合)。车库门的打开和关闭还可以用于发起房屋HOME状态或者房屋AWAY状态。还可以基于检测到温度过热或者过冷,来打开或者关闭车库门。可以基于诸如针对烟雾或者CO的警报来打开或者关闭车库门,并且如果强制打开车库门,则该系统可以激活相机。

个人健康和监视设备可以合并在网状网络和示例环境1500。进一步地,还可以集成有可穿戴设备,作为可操作为实施本文描述的各种特征中的许多特征的任何类型的网状网络设备。例如,床罩或者可穿戴设备可以检测到用户在睡觉,并且调节房间的恒温器状态以适应用户偏好和/或简档。起床温度还可以基于床罩运动或者可穿戴设备、以及发起的房屋HOME状态,以包括灯光、音乐、电视等。可以将婴儿的状态和/或体温传递至用户的移动设备,可以基于婴儿的状态来打开相机,并且婴儿监视器振动和/或增强该系统中的警报激活,诸如如果婴儿监视器离开地理围栏则可以激活警报。针对婴儿需要的网状网络设备可以更严格,以便适应对于婴儿设置的更小温度漂移。可以通过可穿戴设备来确定用户的体温,并且因此可以调节HVAC。可以使用用于宠物检测的宠物可穿戴设备来减少相机的误触发。

替选上面列举的许多相机特征或者除了上面列举的许多相机特征之外,如果设置了房屋AWAY状态,则可以使用相机中的一个或者多个相机来发起通知。相机可以基于房屋HOME状态和房屋AWAY状态之间的手动或者自动切换来激活和去激活。如果激活了警报,则可以将图像剪辑作为通知发送至诸如用户的移动设备,并且还可以包括视频历史。当检测到门铃或者敲门时(例如,通过麦克风、传感器接触等),打开相机、捕获图像或者视频、并且在房屋的显示设备上或者在用户的移动设备上传递该图像或者视频供查看。如果用户离开该结构则可穿戴设备可以发起打开相机,并且在返回该结构时发起关闭相机。相似地,如果用户入睡了,则可穿戴设备可以检测到该入睡并且发起打开相机,并且在醒来时发起关闭相机。如果在某个区域检测到运动并且该结构没有人居住(例如,房屋AWAY状态),则该系统可以通过打开音乐、灯等来发起模拟就如同有人在该结构中一样。相似地,如果在延长的时间内未检测到运动,则该系统可以发起模仿就如同有人在家一样。人脸识别可以实施为支持用户偏好和/或简档。通常,可以针对在网状网络的示例环境中检测到的任何事件来捕获和/或生成视频剪辑、音频录制、或者图像。进一步地,至网状网络的第三方接入点向相关的相机提供通知并且随后提供链路。

可以将淋浴头和水龙头作为示例环境中的网状网络设备进行控制。例如,在警报期间,可以将使用中的淋浴头或者水龙头变为流出冷水,或者可以将淋浴头周围的LED灯带激活以指示警报。相似地,对于在门处的人,淋浴头可以转冷和/或可以激活LED灯带来通知用户。通常,对于住宅自动化,可以基于恒温器、警报、运动、检测到的音频、危险、和其它性质和特征来控制网状网络设备。对于RHR,可以打开风扇、关闭窗帘、并且关掉灯。情景可以设置为包括设置温度、窗帘、音乐等。闹钟可以宣告或者警报所检测到的相机运动事件,并且打开音频馈送。闹钟可以用于促进许多特征,以便宣告警报、对睡眠温度和唤醒温度、灯光、和警报进行编程,并且用于宣告RHR。

远程控制设备还可以实施为网状网络设备以控制和激活本文描述的任何网状网络设备和特征,以便在检测到危险情况或者在激活警报时调低音频和视频。远程控制设备还可以用于进行音频录制,以回答系统询问并且宣告RHR。还可以并入保险保护的特征和方面,以便在(尤其是在烟雾和CO检测器中)检测到低电池电量状况时自动地为网状网络设备寄出电池。还可以在警报状况被激活时通知保险运营商,从而可以提供支援,诸如在火灾或者非法闯入之后。

可以设计为在网状网络中和/或在示例环境1500中操作的其它第三方产品和设备可以包括婴儿和宠物监视设备、其它物联网(IoT)设备、软件栈提供商、RF模块和开发套件、接入点和集线器设备、负载控制开关、基于安全的设备、RFID标记和信标设备、无人机和机器人设备、能量存储装置和设备、爱好设备、计量单元和设备、PERS、气象站设备、实用工具、和/或用于任何其它类型的产品和网状网络设备。例如,在房屋处于AWAY模式时或者在RHR期间为了节省能量,可以将游泳池加热器和泵作为非必要的泳池元件而关闭。对于与网状网络相关联的基于云的特征,可以实施ISP/MSO特征,以便使用户一眼便可以看出恒温器状态(或者,任何网状网络设备的状态)。如果激活了侵入者警报或者火警,则可以激活并且打开洒水系统。还可以将水的使用消息传递至用户的移动设备。当发起房屋AWAY状态时,可以将真空吸尘器系统设置为进行清洁。

图16图示了根据本文描述的网状网络寻址的一个或者多个实施例的可以实施为在网状网络中的任何网状网络设备的示例网状网络设备1600。设备1600可以集成有电子电路系统、微处理器、存储器、输入/输出(I/O)逻辑控制、通信接口和组件、以及其它硬件、固件、和/或软件以实施在网状网络中的设备。进一步地,网状网络设备1600可以利用各种组件来实施,诸如,利用任何数目和组合的不同组件,如针对图17所示的示例设备进一步描述的。

在本示例中,网状网络设备1600包括处理可执行指令的低功率微处理器1602和高功率微处理器1604(例如,微控制器或者数字信号处理器)。该设备还包括输入/输出(I/O)逻辑控制1606(例如,以包括电子电路系统)。微处理器可以包括集成电路的组件、可编程逻辑设备、使用一个或者多个半导体形成的逻辑器件、以及硅和/或硬件形式的其它实施方式,诸如实施为片上系统(SoC)的处理器和存储器系统。替选地或者另外地,该设备可以用软件、硬件、固件、或可以是可以用处理和控制电路来实施的固定逻辑电路系统中的任何一种或者组合来实施。低功率微处理器1602和高功率微处理器1604还可以支持该设备的一个或者多个不同的设备功能。例如,高功率微处理器1604可以执行计算量很大的操作,而低功率微处理器106可以管理不那么复杂的进程,诸如从一个或者多个传感器1608检测危险或者温度。低功率处理器1602还可以唤醒或者初始化高功率处理器1604以进行计算量很大的进程。

该一个或者多个传感器1608可以实施为检测各种性质,诸如,加速度、温度、湿度、水、所提供的电力、接近度、外部运动、设备运动、声音信号、超声信号、光信号、火、烟雾、一氧化碳、全球定位卫星(GPS)信号、射频(RF)、其它电磁信号或者场等。如此传感器1608可以包括温度传感器、湿度传感器、与危险有关的传感器、其它环境传感器、加速度计、麦克风、达到相机标准并且包括相机的光学传感器(例如,电荷耦合器件或者视频相机、有源或者无源辐射传感器、GPS接收器、和射频识别检测器)。在实施方式中,网状网络设备1600可以包括一个或者多个主传感器、以及一个或者多个辅助传感器,诸如以该设备的核心操作为中心感测数据的主传感器(例如,感测恒温器中的温度或者感测烟雾检测器中的烟雾),而辅助传感器可以感测可以用于能量高效目的或者智能操作目的的其它类型的数据(例如,运动、光或者声音)。

网状网络设备1600包括存储器设备控制器1610和存储器设备1612,诸如任何类型的非易失性存储器和/或其它合适的电子数据存储设备。网状网络设备1600还可以包括各种固件和/或软件,诸如操作系统1614,该操作系统1614由存储器维持为由微处理器执行的计算机可执行指令。设备软件还可以包括实施网状网络寻址的实施例的寻址应用1616。网状网络设备1600还包括设备接口1618以与另一设备或者外围组件接口连接,并且包括耦合网状网络的各个组件以便在组件之间进行数据通信的集成式数据总线1620。网状网络设备中的数据总线也可以实施为不同总线结构和/或总线架构中的任何一种或者组合。

设备接口1618可以从用户接收输入和/或向用户提供信息(例如,作为用户界面),并且可以使用接收到的输入来确定设置。设备接口1618还可以包括对用户输入作出响应的机械或者虚拟组件。例如,用户可以机械地移动滑动组件或者可旋转组件,或者可以检测沿着触摸板的运动,并且这种运动可以对设备的设置调节作出响应。物理上和虚拟上可移动的用户界面组件可以允许用户沿着表观连续统一体的一部分设置设定。设备接口1618还可以从任何数目的外围设备接收输入,诸如按钮、键盘、开关、麦克风、和成像器(例如,相机设备)。

网状网络设备1600可以包括网络接口1622,诸如,用于与网状网络中的其它网状网络设备通信的网状网络接口、和诸如经由互联网进行网络通信的外部网络接口。网状网络设备1600还包括用于经由网状网络接口与其它网状网络设备进行无线通信并且用于多个不同的无线通信系统的无线的无线电系统1624。无线的无线电系统1624可以包括Wi-Fi、BluetoothTM、移动宽带、和/或点到点IEEE 802.15.4。这些不同无线电系统中的每一个无线电系统都可以包括无线电设备、天线、和针对特定无线通信技术实施的芯片集。网状网络设备1600还包括电源1626,诸如电池和/或用于将该设备连接至线电压。也可以使用AC电源对该设备的电池进行充电。

图17图示了包括示例设备1702的示例系统1700,该示例系统1700可以实施为实施参照先前的图1至图16描述的网状网络寻址的实施例的网状网络设备中的任何网状网络设备。示例设备1702可以是任何类型的计算设备、客户端设备、移动电话、平板、通信、娱乐、游戏、媒体播放、和/或其他类型的设备。进一步地,示例设备1702可以实施为配置为在网状网络上进行通信的任何其它类型的网状网络设备,诸如,恒温器、危险检测器、相机、灯光单元、路由器、边界路由器、接合路由器、接合设备、终端设备、领导者、接入点、和/或其它网状网络设备。

设备1702包括实现设备数据1706的有线和/或无线通信的通信设备1704,所述设备数据1706诸如在网状网络中的设备之间通信的数据、接收到的数据、调度用于广播的数据、数据的数据分组、在设备之间同步的数据等。设备数据可以包括任何类型的通信数据、以及由在该设备上执行的应用生成的音频、视频、和/或图像数据。通信设备1704还可以包括用于蜂窝电话通信和/或用于网络数据通信的收发器。

设备1702还包括输入/输出(I/O)接口1708,诸如,在设备、数据网络(例如,网状网络、外部网络等)、和其它设备之间提供连接和/或通信链路的数据网络接口。I/O接口可以用于将该设备耦合至任何类型的组件、外围设备、和/或附属设备。I/O接口还包括数据输入端口,可以经由其接收任何类型的数据、媒体内容、和/或诸如至该设备的用户输入的输入、以及任何类型的通信数据、以及从任何内容和/或数据源接收到的音频、视频、和/或图像数据。

设备1702包括可以至少部分地实施在硬件中的处理系统1710,诸如具有处理可执行指令的任何类型的微处理器、控制器等的硬件。处理系统可以包括集成电路的组件、可编程逻辑设备、使用一个或者多个半导体形成的逻辑器件、以及硅和/或硬件形式的其它实施方式,诸如实施为片上系统(SoC)的处理器和存储器系统。替选地或者另外地,该设备可以用软件、硬件、固件、或者可以用处理和控制电路来实施的固定逻辑电路系统中的任何一种或者组合来实施。设备1702可以进一步包括任何类型的系统总线、或者将该设备内的各种组件进行耦合的其它数据和命令传输系统。系统总线可以包括不同总线结构和架构中的任何一种或者组合、以及控制线和数据线。

设备1702还包括计算机可读存储存储器1712,诸如可由计算设备访问的并且提供对数据和可执行指令(例如,软件应用、模块、程序、功能等)的永久存储的数据存储设备。本文描述的计算机可读存储存储器不包括传播信号。计算机可读存储存储器的示例包括易失性存储器和非易失性存储器、固定的和可移动的介质设备、和维持数据以供计算设备访问的任何合适的存储器设备或者电子数据存储。计算机可读存储存储器可以包括随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、和各种存储器设备配置的其它类型的存储存储器的各种实施方式。

计算机可读存储存储器1712提供对设备数据1706和各种设备应用1714的存储,诸如利用计算机可读存储存储器作为软件应用维持并且可由处理系统1710执行的操作系统。设备应用还可以包括设备管理器,诸如任何形式的控制应用、软件应用、信号处理和控制模块、对于特定设备是本机的代码、特定设备的硬件抽象层等。在本示例中,设备应用还包括寻址应用1716,该寻址应用1716实施网状网络寻址的实施例,诸如当将示例设备1702实施为本文描述的网状网络设备中的任何网状网络设备时。

设备1702还包括音频和/或视频系统1718,该音频和/或视频系统1718生成用于音频设备1720的音频数据并且/或者生成用于显示设备1722的显示数据。音频设备和/或显示设备包括处理、显示、和/或以其他方式渲染音频、视频、显示、和/或图像数据(诸如,数字照片的图像内容)的任何设备。在实施方式中,音频设备和/或显示设备是示例设备1702的集成组件。替选地,音频设备和/或显示设备是示例设备外部的外围组件。在实施例中,针对网状网络寻址描述的至少一部分技术可以实施在分布式系统中,诸如通过平台1726中的“云”1724。云1724包括和/或代表用于服务1728和/或资源1730的平台1726。

平台1726使诸如服务器设备(例如,包括在服务1728中)和/或软件资源(例如,包括作为资源1730)的硬件的底层功能抽象化,并且将示例设备1702与其它设备、服务器等连接。资源1730还可以包括在远离示例设备1702的服务器上执行计算机处理的同时可以利用的应用和/或数据。另外,服务1728和/或资源1730可以促进订户网络服务,诸如通过互联网、蜂窝网络或者Wi-Fi网络。平台1726还可以用于使资源抽象化并且按比例缩放以用作经由平台实施的资源1730的命令,诸如在具有分布在整个系统1700中的功能的互连的设备实施例中。例如,可以部分地在示例设备1702处、以及经由使云1724的功能抽象化的平台1726来实施该功能。

虽然已经以专用于特征和/或方法的语言描述了网状网络寻址的实施例,但是随附权利要求书的主题并不一定限于所描述的特定特征或者方法。相反,该特定特征和方法是作为网状网络寻址的示例实施方式而公开,并且其它等效的特征和方法旨在包括在随附权利要求书的范围内。进一步地,描述了各种不同的实施例,并且要了解,每个所描述的实施例可以独立地或者结合一个或者多个其他描述的实施例来实施。

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