CN104956701A - 监视无线网络的大小 - Google Patents
监视无线网络的大小 Download PDFInfo
- Publication number
- CN104956701A CN104956701A CN201480006385.0A CN201480006385A CN104956701A CN 104956701 A CN104956701 A CN 104956701A CN 201480006385 A CN201480006385 A CN 201480006385A CN 104956701 A CN104956701 A CN 104956701A
- Authority
- CN
- China
- Prior art keywords
- wireless device
- bloom filter
- identifier
- hash function
- neighboring wireless
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本文描述了用于监视无线网络中的相邻无线设备数量的系统和方法。在一个方面,该方法包括从这些相邻无线设备中的一个相邻无线设备接收具有与该相邻无线设备相关联的标识符的消息,以及将该标识符添加到布隆过滤器中。该方法可进一步包括基于布隆过滤器中0的数量来估计已被添加到该布隆过滤器中的相异串的数量,相异串的数量表示对该无线网络中的相邻无线设备数量的估计。
Description
背景
领域
本申请一般涉及无线通信,且更具体地涉及用于监视无线网络的大小的系统、方法和设备。
背景技术
在许多电信系统中,通信网络被用于在若干个空间上分开的交互设备之间交换消息。网络可根据地理范围来分类,该地理范围可以是例如城域、局域或者个域。此类网络可分别被指定为广域网(WAN)、城域网(MAN)、局域网(LAN)、无线局域网(WLAN)、或个域网(PAN)。网络还根据用于互连各种网络节点和设备的交换/路由技术(例如,电路交换-分组交换)、用于传输的物理介质的类型(例如,有线-无线)、和所使用的通信协议集(例如,网际协议集、SONET(同步光学联网)、以太网等)而有所不同。
当网络元件是移动的并由此具有动态连通性需求时,或者在网络架构以自组织(ad hoc)拓扑而非固定拓扑来形成的情况下,无线网络往往是优选的。无线网络使用无线电、微波、红外、光等频带中的电磁波以非制导传播模式来采用无形的物理介质。在与固定的有线网络相比较时,无线网络有利地促成用户移动性和快速的现场部署。
无线网络中的设备可以向和从彼此传送和/或接收信息。该信息可包括分组,这些分组在一些方面可被称为数据单元。分组可包括帮助通过网络路由分组、标识分组中的数据、处理分组等的开销信息(例如,报头信息、分组性质等)。分组可进一步包括可在分组的有效载荷中携带的数据,诸如用户数据、多媒体内容等。
为了确保无线网络(诸如社交WiFi网络)中的可缩放操作,应当基于网络中的设备数量来控制网络中每个设备进行的传输。例如,可能期望基于网络中的设备数量来调节传送信标和/或定时信号的速率。在许多应用中,获得对网络中的设备数量的粗略估计就足够了。使无线设备跟踪网络中的设备数量的一种方式是简单地存储在消息中接收到的且表示设备的任何标识符。每当有新消息进来时,设备就将新消息中的标识符与已存储在该设备处的标识符作比较,并且若先前尚未存储该标识符则存储该标识符。然而,这种办法可导致较大存储器需求并且需要对大量收到标识符进行分序。由此,具有能极大地减少较大存储器需求和对标识符进行分序的需要的跟踪无线网络中的设备数量的方法将是有益的。
概述
本文所讨论的系统、方法、设备和计算机程序产品各自具有若干方面,其中并非仅靠任何单一方面来负责其期望属性。在不限定如所附权利要求所表达的本发明的范围的情况下,以下简要地讨论一些特征。在考虑此讨论后,并且尤其是在阅读了题为“详细描述”的章节之后,本领域普通技术人员将领会本发明的有利特征如何包括当在介质上引入设备时降低的功耗。
本公开的一个方面提供了一种配置成监视无线网络中的相邻无线设备数量的无线设备。该无线设备包括接收机,其配置成从这些相邻无线设备中的一个相邻无线设备接收消息,该消息包括与该相邻无线设备相关联的标识符。该无线设备可进一步包括处理器,其配置成将该标识符添加到布隆过滤器中并基于该布隆过滤器中0的数量来估计已被添加到该布隆过滤器中的相异串的数量,相异串的数量表示对该无线网络中的相邻无线设备数量的估计。
本公开的另一方面提供了一种监视无线网络中的相邻无线设备数量的方法。该方法包括从这些相邻无线设备中的一个相邻无线设备接收包括与该相邻无线设备相关联的标识符的消息,以及将该标识符添加到布隆过滤器中。该方法可进一步包括基于布隆过滤器中0的数量来估计已被添加到该布隆过滤器中的相异串的数量,相异串的数量表示对该无线网络中的相邻无线设备数量的估计。
本公开的另一方面提供了一种用于监视无线网络中的相邻无线设备数量的无线设备。该无线设备包括用于从这些相邻无线设备中的一个相邻无线设备接收包括与该相邻无线设备相关联的标识符的消息的装置,以及用于将该标识符添加到布隆过滤器中的装置。该无线设备可进一步包括用于基于布隆过滤器中0的数量来估计已被添加到该布隆过滤器中的相异串的数量的装置,相异串的数量表示对该无线网络中的相邻无线设备数量的估计。
本公开的另一方面提供了一种包括配置成实现用于监视无线网络中的相邻无线设备数量的方法的计算机可执行指令的非瞬态物理计算机存储。该方法包括从这些相邻无线设备中的一个相邻无线设备接收包括与该相邻无线设备相关联的标识符的消息,以及将该标识符添加到布隆过滤器中。该方法可进一步包括基于布隆过滤器中0的数量来估计已被添加到该布隆过滤器中的相异串的数量,相异串的数量表示对无线网络中的相邻无线设备数量的估计。
附图简述
图1解说了其中可采用本公开的各方面的无线通信系统的示例。
图2示出了可在图1的无线通信系统内采用的无线设备的功能框图。
图3解说了可在无线设备中用于传送无线通信的各种组件。
图4解说了可在无线设备中用于接收无线通信的各种组件。
图5是根据一种实现的监视无线网络中的无线设备数量的方法的流程图。
图6示出了根据一种实现的布隆过滤器的一个解说性示例。
图7解说了将网络中的无线设备数量与来自布隆过滤器的估计数量作比较的仿真结果。
图8解说了示出估计误差百分比相对于网络中的无线设备数量的仿真结果。
图9解说了示例因供应商而异的发现帧。
图10示出了可在图1的无线通信系统内采用的发现类型长度值(TLV)。
图11解说了其中可采用本公开的各方面的另一无线通信系统的示例。
图12示出媒体接入控制(MAC)帧的示例性结构。
图13示出了可在图11的无线通信系统内采用的示例性服务发现属性。
详细描述
本文使用词语“示例性”来意指“用作示例、实例或解说”。本文中描述为“示例性”的任何实施例不必被解释为优于或胜过其他实施例。以下参照附图更全面地描述本新颖系统、装置和方法的各种方面。然而,本公开可用许多不同形式来实施并且不应解释为被限定于本公开通篇给出的任何具体结构或功能。确切而言,提供这些方面是为了使本公开将是透彻和完整的,并且其将向本领域技术人员完全传达本公开的范围。基于本文中的教导,本领域技术人员应领会到,本公开的范围旨在覆盖本文中公开的这些新颖的系统、装置和方法的任何方面,不论其是独立实现的还是与本发明的任何其他方面组合实现的。例如,可使用本文所阐述的任何数目的方面来实现装置或实践方法。另外,本发明的范围旨在覆盖使用作为本文中所阐述的本发明各种方面的补充或者与之不同的其他结构、功能性、或者结构及功能性来实践的装置或方法。应当理解,本文所披露的任何方面可由权利要求的一个或多个要素来实施。
尽管本文描述了特定方面,但这些方面的众多变体和置换落在本公开的范围之内。尽管提到了优选方面的一些益处和优点,但本公开的范围并非旨在被限定于特定益处、用途或目标。确切而言,本公开的各方面旨在宽泛地适用于不同的无线技术、系统配置、网络、和传输协议,其中一些藉由示例在附图和以下对优选方面的描述中解说。详细描述和附图仅仅解说本公开而非限定本公开,本公开的范围由所附权利要求及其等效技术方案来定义。
流行的无线网络技术可包括各种类型的无线局域网(WLAN)。WLAN可被用来采用广泛使用的联网协议来将近旁设备互连在一起。本文描述的各个方面可应用于任何通信标准,诸如无线协议、WiFi、或者更一般地应用于IEEE802.11无线协议族中的任何成员。例如,本文描述的各个方面可被用作使用亚1GHz频带的IEEE 802.11ah协议的一部分。
在一些实现中,WLAN包括作为接入无线网络的组件的各种设备。例如,客户端(也称为站或“STA”)。例如,STA可以是膝上型计算机、个人数字助理(PDA)、移动电话等。在一示例中,STA经由遵循WiFi(例如IEEE 802.11协议)的无线链路连接到其它STA以获得至因特网或至其他广域网的一般连通性。
站“STA”还可包括、被实现为、或被称为接入终端(“AT”)、订户站、订户单元、移动站、移动设备、远程站、远程终端、用户终端、用户代理、用户设备、用户装备、或其他某个术语。在一些实现中,接入终端可包括蜂窝电话、无绳电话、会话发起协议(“SIP”)话机、无线本地环路(“WLL”)站、个人数字助理(“PDA”)、具有无线连接能力的手持式设备、或连接至无线调制解调器的其他某种合适的处理设备或无线设备。因此,本文所教导的一个或多个方面可被纳入到电话(例如,蜂窝电话或智能电话)、计算机(例如,膝上型计算机)、便携式通信设备、头戴式送受话器、便携式计算设备(例如,个人数据助理)、娱乐设备(例如,音乐或视频设备、或卫星无线电)、游戏设备或系统、全球定位系统设备、或被配置成经由无线介质通信的任何其他合适的设备中。
设备(诸如一群站)例如可被用于邻域知悉网络(NAN)、或者社交WiFi网络。例如,网络内的各个站可在设备到设备(例如,对等通信)的基础上关于每个站支持的应用来彼此通信。社交WiFi网络可以是自组织(ad hoc)无线网络,这是一种分散类型的无线网络。该网络之所以是自组织的是因为它不依赖于事先存在的基础设施,诸如受管理(基础设施)无线网络中的接入点。期望在社交WiFi网络中使用的发现协议使移动设备能够宣告自身(例如,通过发送发现分组或消息)以及发现由其它STA提供的服务(例如,通过发送寻呼或查询分组或消息),而同时确保安全通信和低功耗。
图1解说了可以在其中采用本公开的各方面的无线通信系统100的示例。无线通信系统100包括第一移动设备群集110、第二移动设备群集120、第三移动设备群集130和移动设备142。
第一移动设备群集110包括移动设备112、114、116、118。第二移动设备群集120包括移动设备118、122、124、126、128。第三移动设备群集130包括移动设备132、134、136、138。在图1的特定示例中,移动设备142尚未加入移动设备群集110、120、130中的任一个(例如,不是其成员)。此外,在图1的特定示例中,移动设备118已经加入多个移动设备群集(即,移动设备群集110、120)(例如,是其成员)。
无线通信系统100可包括移动设备112、114、116、118、122、124、126、128、132、134、136和138,它们能与任何其它移动设备通信。作为示例,移动设备112可与移动设备116通信。作为另一示例,移动设备112可与移动设备118通信,尽管图1中并未解说这一通信链路。
可以将各种过程和方法用于无线通信系统100中在任两个移动设备之间的传输。例如,可以根据OFDM/OFDMA技术来发送和接收信号。如果是这种情形,则无线通信系统100可以被称为OFDM/OFDMA系统。替换地,可以根据CDMA技术在任两个移动设备之间发送和接收信号。如果是这种情形,则无线通信系统100可被称为CDMA系统。
根据各个实施例,无线通信系统100可以是邻域知悉网络,并且移动设备群集110、120、130中的一个或多个移动设备群集可与特定的通用移动设备应用相关联。例如,移动设备群集110、120、130中的每个移动设备群集可与相应的通用移动设备应用(诸如社交联网移动设备应用、游戏移动设备应用、或其组合)相关联。
在操作中,无线通信系统100的移动设备可以根据一个或多个无线通信协议来无线地进行通信。例如,在至少一个实施例中,无线通信系统100的移动设备可以发送和接收发现消息,诸如与电气电子工程师协会(IEEE)802.11协议相关联的发现信标。作为另一示例,无线通信系统100的移动设备可以经由无线通信系统100中的每个移动设备通用的网络宣告协议来进行通信。作为另一示例,第一移动设备群集110可以使用与网络宣告协议不同的第二协议来进行通信。类似地,第二移动设备群集120可以使用与网络宣告协议不同的第三协议来进行通信,而第三移动设备群集130可以使用与网络宣告协议不同的第四协议来进行通信。在本上下文中,协议是指用来通信的参数,诸如发生通信的信道、通信的定时(例如,发现区间的定时)等等。
为了进一步解说,移动设备142可以开启并保持处于监听状态以经由无线通信系统100通用的网络宣告协议来接收第一发现消息。例如,移动设备142可从移动设备122接收第一发现消息。第一发现消息可包括第二移动设备群集120特有的信息,并且可在本文被称为“群集发现消息”。例如,该信息可以诸如通过指示与第二移动设备群集120相关联的协议的特性来指示(例如,宣告)第二移动设备群集120。该信息可包括与第二移动设备群集120相关联的无线信道(其可以不同于与网络宣告协议相关联的无线信道)的指示。替换地或附加地,该信息可包括与第二移动设备群集120相关联的定时参数(例如,发现区间的开始时间和/或历时)——其可以不同于与网络宣告协议相关联的定时参数——的指示。替换地或附加地,该信息可包括与第二移动设备群集120相关联的网络大小(例如,以使移动设备能确定是否加入第二移动设备群集120,例如基于与第二移动设备群集120相关联的估计带宽基于该网络大小超过阈值是否太小来确定是否加入第二移动设备群集120)。替换地或附加地,该信息可包括与第二移动设备群集120相关联的发现区间和/或后续监听区间的历时。替换地或附加地,该信息可包括群集标识信息,诸如关于与第二移动设备群集120相关联的社交联网移动设备应用或游戏移动设备应用的信息。
响应于收到第一发现消息,移动设备142可以将第一发现消息中的信息用来通过使用与第二移动设备群集120相关联的协议与移动设备122进行通信。例如,移动设备142可以加入第二移动设备群集120,向第二移动设备群集120的移动设备查询与第二移动设备群集120相关联的附加信息(例如,与移动设备应用有关的信息),或其组合。与移动设备122进行通信可包括将移动设备142的收发机从(与网络宣告协议相关联的)第一信道调谐至(与第二移动设备群集相关联的)第二信道。在调谐至第二信道后,移动设备142可以在由与第二移动设备群集120相关联的第二定时参数确定的时间从移动设备122接收第二发现消息。
在另一特定示例中,移动设备132可以经由无线通信系统100通用的网络宣告协议来发送第二发现消息。第二发现消息可包括第三移动设备群集130特有的信息。一个或多个其它设备可以接收第二发现消息。例如,移动设备128可以接收由移动设备132发送的第二发现消息。移动设备132可以从移动设备128接收基于第三移动设备群集130特有的信息来发送的消息。该消息可以使用与第三移动设备群集130相关联的协议来发送。从移动设备128发送的消息可以是加入第三移动设备群集130的请求、对与第三移动设备群集130有关的附加信息的查询、或其组合。
在特定实施例中,移动设备群集110、120和130中的每个移动设备群集可以在与无线通信系统100通用的网络宣告协议相关联的发现区间期间被宣告。例如,在与无线通信系统100通用的网络宣告协议相关联的第一发现区间期间,第一移动设备群集110的特定设备(诸如移动设备114)可以发送宣告第一移动设备群集110的发现消息。另外,在第一发现区间期间,第二移动设备群集120的特定设备(诸如移动设备126)可以发送宣告第二移动设备群集120的发现消息。此外,在第一发现区间期间,第三移动设备群集130的特定设备(诸如移动设备136)可以发送宣告第三移动设备群集130的发现消息。因此,在第一发现区间期间,移动设备142可以经由无线通信系统100通用的网络宣告协议来接收与各移动设备群集中的每个移动设备群集相关联的发现消息(例如,通过调谐至与无线通信系统100通用的网络宣告协议相关联的信道)。因此,移动设备142不必扫描各种信道(诸如与移动设备群集110、120和130中的每个移动设备群集相关联的信道)以标识在特定区域中处于活跃的移动设备群集。
将认识到,利用无线通信系统100通用的网络宣告协议可以实现与特定移动设备群集(例如,移动设备群集110、120、130中的任一个)有关的信息的传输和接收。此外,通过根据不同于网络宣告协议的因群集而异的协议进行通信,移动设备群集110、120、130中的每个移动设备群集可以根据因群集而异的特性(诸如,与特定的移动设备群集相关联的一个或多个特定的移动设备应用)来定制通信。
图2解说了可在无线通信系统100内可采用的无线设备202中使用的各种组件。无线设备202是可被配置成实现本文所描述的各种方法的设备的示例。例如,无线设备202可包括移动设备之一。
无线设备202可包括控制无线设备202的操作的处理器204。处理器204也可被称为中央处理单元(CPU)。可包括只读存储器(ROM)和随机存取存储器(RAM)两者的存储器206可向处理器204提供指令和数据。存储器206的一部分还可包括非易失性随机存取存储器(NVRAM)。处理器204通常基于存储器206内存储的程序指令来执行逻辑和算术运算。存储器206中的指令可以是可执行的以实现本文描述的方法。
处理器204可包括或者是用一个或多个处理器实现的处理系统的组件。这一个或多个处理器可以用通用微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、控制器、状态机、选通逻辑、分立硬件组件、专用硬件有限状态机、或能够对信息执行演算或其他操纵的任何其他合适实体的任何组合来实现。
处理系统还可包括用于存储软件的机器可读介质。软件应当被宽泛地解释成意指任何类型的指令,无论其被称作软件、固件、中间件、微代码、硬件描述语言、或是其他。指令可包括代码(例如,以源代码格式、二进制代码格式、可执行代码格式、或任何其他合适的代码格式)。这些指令在由该一个或多个处理器执行时使处理系统执行本文描述的各种功能。
无线设备202还可包括外壳208,该外壳208可内含发射机210和/或接收机212以允许在无线设备202和远程位置之间进行数据传送和接收。发射机210和接收机212可被组合成收发机214。天线216可被附连至外壳208且电耦合至收发机214。无线设备202还可包括(未示出)多个发射机、多个接收机、多个收发机和/或多个天线。
发射机210可被配置成无线地传送具有不同分组类型或功能的分组。例如,发射机210可被配置成传送由处理器204生成的不同类型的分组。当无线设备202被实现为或用作移动设备时,处理器204可被配置成处理多种不同分组类型的分组。例如,处理器204可被配置成确定分组类型并且相应地处理该分组和/或该分组的字段。当无线设备202被实现为或者被用作移动设备时,处理器204还可被配置成选择并生成多个分组类型之一。例如,处理器204可被配置成生成发现分组(诸如,群集发现消息和/或发现消息)并且确定要在特定实例中使用什么类型的分组信息。
接收机212可被配置成无线地接收具有不同分组类型的分组。在一些方面,接收机212可被配置成检测所使用的分组的类型并相应地处理该分组。
无线设备202还可包括可被用于力图检测和量化由收发机214所接收的信号的电平的信号检测器218。信号检测器218可检测诸如总能量、每副载波每码元能量、功率谱密度之类的信号以及其他信号。无线设备202还可包括供处理信号使用的数字信号处理器(DSP)220。DSP 220可被配置成生成分组以供传输。在一些方面,分组可包括物理层数据单元(PPDU)。
在一些方面,无线设备202可进一步包括用户接口222。用户接口222可包括按键板、话筒、扬声器、和/或显示器。用户接口222可包括向无线设备202的用户传达信息和/或从该用户接收输入的任何元件或组件。
无线设备202的各个组件可由总线系统226耦合在一起。总线系统226可包括例如数据总线,以及除数据总线外还包括功率总线、控制信号总线、和状态信号总线。无线设备202的组件可以使用其他某种机制耦合在一起或者彼此接受或提供输入。
尽管图2中解说了数个分开的组件,但这些组件中的一个或多个组件可被组合或者共同地实现。例如,处理器204可被用来不仅实现以上关于处理器204描述的功能性,而且还实现以上关于信号检测器218和/或DSP 220描述的功能性。另外,图2中所解说的每个组件可使用多个分开的元件来实现。
为了确保多个移动设备之间的恰当通信,移动设备可以接收关于移动设备的特性的信息。例如,移动设备142(图1)可以接收关于移动设备114(图1)的定时信息,以便在移动设备142与移动设备114之间同步通信定时。附加地或替换地,移动设备142可以接收其它信息,诸如另一移动设备的媒体接入控制(MAC)地址等。移动设备142可以独立地确定它是否需要此类信息,诸如通过使用存储器206和处理器204执行的软件来进行确定。
移动设备142(图1)可以具有多个操作模式。例如,移动设备142可以具有被称为活跃模式、正常操作模式、或全功率模式的第一操作模式。在活跃模式中,移动设备142可以始终处于“苏醒”状态并且活跃地向/从另一移动设备传送/接收数据。此外,移动设备142可以具有被称为功率节省模式或休眠模式的第二操作模式。在功率节省模式中,移动设备142可以处于“苏醒”状态或可以处于“打盹”或“休眠”状态,其中移动设备142不在活跃地向/从另一移动设备传送/接收数据。例如,移动设备142的接收机212以及可能还有DSP220和信号检测器218可以在打盹状态中使用降低的功耗来操作。此外,在功率节省模式中,移动设备142可以不时地进入苏醒状态以监听来自其它移动设备的消息(例如,寻呼消息),该消息向移动设备指示该移动设备是否需要在某个时间“苏醒”(例如,进入苏醒状态)以便能够向/从另一移动设备传送/接收数据。
如以上所讨论的,无线设备202可包括AP 104或STA 106,并且可被用于传送和/或接收通信。图3解说了可在无线设备202中用于传送无线通信的发射机模块300。图3中所解说的组件可以例如被用于传送OFDM通信。
发射机模块300可包括配置成调制诸比特以供传输的调制器302。例如,如果发射机模块300被用作图2中的无线设备202的组件,则调制器302可例如通过根据星座将各个比特映射至多个码元来从接收自处理器204或用户接口222的比特确定多个码元。这些比特可对应于用户数据或者控制信息。在一些方面,这些比特是在码字中接收的。在一个方面,调制器302包括QAM(正交振幅调制)调制器,例如16-QAM调制器或者64-QAM调制器。在其他方面,调制器302包括二进制相移键控(BPSK)调制器或者正交相移键控(QPSK)调制器。
发射机模块300可进一步包括变换模块304,该变换模块304被配置成将来自调制器302的码元或以其他方式调制的比特转换到时域。在图3中,变换模块304被解说为是通过快速傅里叶逆变换(IFFT)模块来实现的。在一些实现中,可以有变换不同大小的数据单元的多个变换模块(未示出)。
在图3中,调制器302和变换模块304被解说为在DSP 320中实现。然而,在一些方面,调制器302和变换模块304中的一者或两者可以在无线设备202的其他组件中(诸如在处理器204中)实现。
一般而言,DSP 320可被配置成生成数据单元以供传输。在一些方面,调制器302和变换模块304可被配置成生成包括多个字段的数据单元,该多个字段包括控制信息和多个数据码元。包括控制信息的字段可包括例如一个或多个训练字段和一个或多个信号(SIG)字段。这些训练字段中的每一个训练字段可包括已知的比特序列或码元序列。这些SIG字段中的每一个SIG字段可包括关于数据单元的信息,例如对数据单元的长度或数据率的描述。
回到图3的描述,发射机模块300可进一步包括数模转换器306,该数模转换器306被配置成将变换模块的输出转换成模拟信号。例如,变换模块306的时域输出可由数模转换器306转换成基带OFDM信号。在一些方面,发射机模块300的各部分可被包括在来自图2的无线设备202中。例如,数模转换器306可在处理器204、收发机214或者在无线设备202的另一元件中实现。
模拟信号可由发射机310来无线地传送。模拟信号可在由发射机310传送之前被进一步处理,例如被滤波或者被上变频至中频或载波频率。在图3中所解说的方面,发射机310包括发射放大器308。在被传送之前,模拟信号可由发射放大器308放大。在一些方面,放大器308包括低噪声放大器(LNA)。
发射机310被配置成基于模拟信号在无线信号中传送一个或多个分组或数据单元。这些数据单元可使用处理器和/或DSP 320来生成,例如使用以上所讨论的调制器302和变换模块304来生成。如以上所讨论的可被生成和传送的数据单元以下关于图5-7来更详细地描述。
图4解说了可在无线设备202中用于接收无线通信的接收模块400。图4中所解说的组件可以例如被用于接收OFDM通信。在一些方面,图4中所解说的组件被用于接收包括一个或多个训练字段的数据单元,如以下将更详细地讨论的。例如,图4中所解说的组件可被用于接收由以上关于图3所讨论的组件传送的数据单元。
接收机412被配置成接收无线信号中的一个或多个分组或数据单元。如以下所讨论的可被接收和解码或以其他方式处理的数据单元关于图5-7来更详细地描述。
在图4中所解说的方面,接收机412包括接收放大器401。接收放大器401可被配置成放大由接收机412接收的无线信号。在一些方面,接收机412被配置成使用自动增益控制(AGC)规程来调整接收放大器401的增益。在一些方面,自动增益控制使用一个或多个接收到的训练字段(诸如举例而言接收到的短训练字段(STF))中的信息来调整增益。本领域普通技术人员将理解用于执行AGC的方法。在一些方面,放大器401包括LNA。
接收模块400可包括模数转换器402,该模数转换器402被配置成将来自接收机412的经放大的无线信号转换成其数字表示。继被放大之后,无线信号可在由数模转换器402转换之前被处理,例如被滤波或者被下变频至中频或基带频率。在一些方面,模数转换器402可在图2的处理器204、收发机214或者在无线设备202的另一元件中实现。
接收模块400可进一步包括变换模块404,该变换模块404被配置成将无线信号的表示转换到频谱。在图4中,变换模块404被解说为是由快速傅里叶变换(FFT)模块来实现的。在一些方面,变换模块可针对其使用的每个点标识一码元。
接收模块400可进一步包括信道估计器与均衡器405,该信道估计器与均衡器405被配置成形成对在其上接收到数据单元的信道的估计,并且基于该信道估计来移除该信道的某些效应。例如,信道估计器可被配置成逼近信道函数,并且信道均衡器可被配置成在频谱中对数据应用该函数的逆函数。
在一些方面,信道估计器与均衡器405使用一个或多个接收到的训练字段(诸如举例而言长训练字段(LTF))中的信息来估计信道。信道估计可基于在数据单元开始处接收到的一个或多个LTF来形成。此信道估计可随后被用于均衡跟随于该一个或多个LTF后面的数据码元。在某个时间段之后或者在某个数目的数据码元之后,可在数据单元中接收一个或多个附加LTF。可使用这些附加LTF来更新信道估计或者形成新的估计。该新的或更新的信道估计可被用于均衡跟随于这些附加LTF后面的数据码元。在一些方面,该新的或经更新的信道估计被用于重新均衡居于这些附加的LTF前面的数据码元。本领域普通技术人员将理解用于形成信道估计的方法。
接收模块400可进一步包括解调器406,该解调器406被配置成解调经均衡的数据。例如,解调器406可以例如通过在星座中倒转比特至码元的映射来从变换模块404和信道估计器与均衡器405输出的码元确定多个比特。在一些方面,在接收模块400被实现为无线设备202的一部分的情况下,这些比特可由处理器204来处理或评估,或者被用来向用户接口222显示或以其他方式输出信息。以此方式,数据和/或信息可被解码。在一些方面,这些比特对应于码字。在一个方面,解调器406包括QAM(正交振幅调制)解调器,例如,16-QAM解调器或者64-QAM解调器。在其他方面,解调器406包括二进制相移键控(BPSK)解调器或者正交相移键控(QPSK)解调器。
在图4中,变换模块404、信道估计器与均衡器405以及解调器406被解说为是在DSP 420中实现的。然而,在一些方面,变换模块404、信道估计器与均衡器405以及解调器406中的一者或多者可被实现在无线设备202的另一组件(诸如处理器204)中。
如以上所讨论的,在接收机412处接收到的无线信号包括一个或多个数据单元。这些数据单元可使用上述组件来解码、评估和/或处理。例如,处理器和/或DSP 420可被用于使用变换模块404、信道估计器与均衡器405和解调器406来解码数据单元中的数据码元。
由AP 104和STA 106交换的数据单元可包括控制信息或数据。在物理(PHY)层,这些数据单元可被称为物理层协议数据单元(PPDU)。在一些方面,PPDU可被称为分组或物理层分组。每个PPDU可包括前置码和有效载荷。前置码可包括训练字段和SIG字段。例如,训练字段可包括一个或多个长训练字段(LTF)以及一个或多个短训练字段(STF)。有效载荷可包括媒体接入控制(MAC)报头和/或用户数据。有效载荷可使用一个或多个数据码元(诸如BPSK码元或QPSK码元)来传送。
为了确保社交WiFi网络(诸如移动设备群集(110、120和130))中的可缩放操作,应当基于网络中的设备数量来控制网络中每个设备进行的传输。例如,可能期望基于网络中的设备数量来调节传送信标和/或定时信号的速率。在许多应用中,获得对网络中的设备数量的粗略估计就足够了。使无线设备跟踪网络中的设备数量的一种方式是简单地存储在消息中接收到的且表示设备的任何标识符。每当接收到新消息时,设备将新消息中的标识符与已存储在该设备处的标识符作比较,并且若该标识符先前尚未被存储则存储该标识符。然而,这种办法可导致较大存储器需求并且需要对大量收到标识符进行分序。由此,具有能极大地减少较大存储器需求和对标识符进行分序的需要的跟踪无线网络中的设备数量的方法将是有益的。
在如下将描述的实现中,布隆过滤器(以下将进一步详细描述)被用于跟踪网络中的设备的标识符。布隆过滤器是m位的位阵列,具有与之相关联的k个散列函数。每当从另一无线设备接收到包括与该另一无线设备相关联的标识符的消息时,该标识符就被添加到布隆过滤器中。布隆过滤器中0的密度被用于估计布隆过滤器中的设备数量。在一些方面,1的密度可被用于估计布隆过滤器中的设备数量。由于布隆过滤器包括预定义的数目个位,且每个位可被设为0或1,因此一旦0的数量已知,要确定布隆过滤器中的1的数量在数学上可以是很简单的,反之亦然。相应地,为了确定网络中的设备数量,可使用布隆过滤器中0的数量或1的数量。
图5是根据一种实现的监视无线网络中的无线设备数量的方法的流程图。方法500可由无线设备(诸如移动设备112(图1中所示))来执行。在一种实现中,无线网络是社交WiFi网络或自组织网络。无线网络可以是移动设备群集1120、120和130(图1中所示)。然而,该方法也可用在基础设施类型无线网络(例如,包括接入点的网络)中,其中无线设备可基于它们周围的其他设备的数量来调节自己的行为。
在框502,该方法包括从无线设备接收消息,该消息包括与该无线设备相关联的标识符。该消息可例如由无线设备202(图2中所示)的接收机212接收自无线网络中的另一无线设备(也被称为“相邻无线设备”)。术语“相邻无线设备”简单地指同一无线网络中的另一无线设备。该消息可以是来自另一无线设备的任何分组或帧。在示例性实现中,该消息包括与该相邻无线设备相关联的标识符。
移至框504,该方法包括将该标识符添加(或输入)到布隆过滤器中。该过程可例如由无线设备202(图2中所示)的处理器204来执行。在一种实现中,每当从另一无线设备接收到消息时就将标识符添加到布隆过滤器中。
布隆过滤器是空间高效的概率性数据结构。布隆过滤器包括m位的位阵列和k个不同的散列函数。每个位可具有值0或1。这k个不同散列函数中的每一者以均匀随机分布将输入串映射至这m个阵列位置之一。在示例性实现中,该m位全部被初始化为0。每当接收到标识符时,该标识符就被添加到布隆过滤器中。将标识符添加到布隆过滤器中的过程包括:a)将标识符作为输入串馈送至该k个散列函数中的每一者,其中每个散列函数将该输入串映射至一个阵列位置,以及b)将由这k个散列函数标识出的阵列位置处的位设为1。
接下来在框506,该方法包括基于布隆过滤器中0的数量来估计已被添加到布隆过滤器中的相异串的数量,其中相异串的数量表示对无线网络中的无线设备数量的估计。该过程可例如由无线设备202(图2中所示)的处理器204来执行。在一种实现中,相异串的数量是基于布隆过滤器中1的密度(或布隆过滤器中0的密度)来确定的。相异输入的估计数量,即已被添加到布隆过滤器中的相异串的数量Ndistinct,可例如通过以下公式来计算:
其中N0标示布隆过滤器的m位阵列中0的数量。由此,该方法允许在无需跟踪或存储个体标识符的情况下监视无线网络中的设备数量。结果,该方法只需要低存储空间。在一种替换实现中,公式(1)可简化如下:
公式(1a)利用了以下事实:log(1-1/m)约等于1/m,尤其是在m充分大时。
在一种实现中,该方法可进一步包括可任选过程,其中当第一无线设备加入无线网络时,该无线设备请求第二无线设备提供该第二设备的当前布隆过滤器。这有助于第一设备获知无线网络中的设备数量的当前情况。从这一刻起,第一设备可通过更新从第二设备接收到的布隆过滤器来计数任何附加设备。在一种实现中,第二无线设备可以是第一设备的邻居之一。在另一实现中,第一无线设备可请求多个相邻无线设备提供它们的当前布隆过滤器。如果第一无线设备从两个或更多个无线设备接收到布隆过滤器,则第一无线设备可对接收到的布隆过滤器执行逐位求或(OR)运算并存储结果所得的布隆过滤器作为第一无线设备的当前布隆过滤器。在一种实现中,无线设备可从一个相邻无线设备接收消息,该消息包括该相邻无线设备的布隆过滤器以及该相邻无线设备的布隆过滤器被启动的时间。这允许接收布隆过滤器的无线设备知道所接收的布隆过滤器是否太旧或者是否要允许所接收的布隆过滤器过期。
在一些应用中,可能因一些无线设备离开但没有显式地指示它们正离开网络而导致通过该方法作出的估计的准确性受损。另外,也会因一些无线设备出于安全性原因持续地改变其MAC地址而导致该方法的准确性受损。存在各种方式来解决这些因素的影响。例如,该方法可进一步包括允许无线设备以随机时间间隔来复位布隆过滤器中的随机选择的位的可任选过程。可基于以下一者或多者来决定要复位的位数和随机间隔的分布:网络中的无线设备数量、无线设备离开网络的速率(其可来自外部源)、以及无线设备改变其地址的间隔。在一种实现中,复位布隆过滤器的所选位的这一过程还要求无线设备不时地发送发现消息以确保它们不会被对网络中的设备数量进行计数的布隆过滤器完全无视。无线设备发送此类发现消息的频度是由用于复位布隆过滤器的所选位的此类过程的参数来决定的。
作为替换方案,该方法可为布隆过滤器中的m位阵列中的每一位指派计数器。可存在用于该m位阵列的m个计数器,其中每个计数器被指派给该m位阵列的不同位。计数器可被设置为0与最大值C_max之间的整数值。例如,如果计数器有3位,则C_max可具有值7。每次当布隆过滤器中的m位阵列的一位被设置为1时,与该位相关联的计数器就被复位为C_max的值。针对历时T的每个时间间隔将具有非零值的每个计数器的值减小1。例如,取决于应用,历时T可以是100微秒或1分钟。在一种实现中,可基于以下一者或多者来决定历时T:无线设备离开网络的速率(其可来自外部源)、以及无线设备改变其地址的间隔。当计数器的值被减小至0时,与该计数器相对应的位被设置为0。如上所述,网络的大小可以是基于布隆过滤器中被设置为0、或设置为1的位来估计的。
在一种实现中,该方法可进一步包括其中无线设备从第一相邻无线设备请求布隆过滤器的副本的可任选过程。无线设备随后通过执行该无线设备的布隆过滤器与第一相邻无线设备的布隆过滤器的逐位求与(AND)来生成第一布隆过滤器。无线设备随后基于第一布隆过滤器来估计该无线设备和第一相邻无线设备共有的相邻无线设备的数量。第一布隆过滤器中的1的密度也是邻居集合的交集中的设备数量的良好估计。
如上所述,布隆过滤器包括k个不同的散列函数,每个散列函数将输入串映射至位阵列中的位位置。散列函数可以是例如输入串的循环冗余校验(CRC)。在一种实现中,可以使用单个散列函数(例如,CRC)和k个不同串(称为“修改串”)来创建k个不同的散列函数。对于至布隆过滤器的每个输入串(称为“布隆输入串”),生成k个不同的输入串(称为“散列输入串”),其中每个散列输入串是通过将这k个修改串中不同的一个修改串添附至布隆输入串来创建的。随后,这k个不同的散列输入串中的每个散列输入串被馈送到单个散列函数中,由此生成该位阵列中的位位置。由于存在k个不同的散列输入串,因此该位阵列中的k个位位置被标识出来(其中一些可以是相同的位位置)。结果,布隆过滤器使用单个散列函数和k个不同串来模拟了k个不同的散列函数。
在另一实现中,可按不同方式来创建这k个散列输入串。在一个示例中,可通过将诸修改串中不同的一个修改串添附至布隆输入串来创建每个散列输入串。在另一示例中,可通过将诸修改串中不同的一个修改串插入至布隆输入串之中来创建每个散列输入串。
如上所述,布隆过滤器包括m位的位阵列和k个不同的散列函数。在一种实现中,散列函数的数目k具有值1,并且该位阵列的大小m具有为要估计的无线网络的最大大小的约2倍的值。在某些应用中,这种简单的布隆过滤器对于估计邻居数量的问题而言足够了。在另一实现中,布隆过滤器被设计成跟踪最多达N个设备,并且布隆过滤器的位阵列m被设计成具有N位。在另一实现中,布隆过滤器的大小(参数m和k的值)可基于将存储在该布隆过滤器中的相异标识符的期望数量(标示为n)和尚未添加到该过滤器中的标识符被确定为在该布隆过滤器中的期望虚警概率(标示为p)使用以下公式来确定:
m=-n*ln(p)/(ln(2))2 (2)
k=(m/n)ln(2) (3)
在一种实现中,消息中的标识符可与相邻无线设备、或服务或应用相关联。消息中的标识符可以是发现帧的MAC地址,其标识发送该帧的无线设备。标识符也可以是帧中的服务标识符,其中服务标识符可以在帧的主体中或者可以代换帧中的地址字段之一。作为另一示例,标识符可以是基于特定应用的标识符并位于帧的主体中。由此,该方法使用布隆过滤器来估计无线设备接收到的相异标识符的数量。
图6示出了根据一种实现的布隆过滤器的一个解说性示例。该布隆过滤器包括全部初始化为0的m位的位阵列(600)和k个不同的散列函数(未示出),其中m=18且k=3。这k个不同散列函数中的每一者以均匀随机分布将输入串映射或散列至该m个阵列位置之一。三个输入串(即x、y和z)已被添加至该布隆过滤器。对于输入串x,布隆过滤器将其映射至位阵列中的三个不同的位位置(使用未示出的k个散列函数),如由图6中在x处发出的三个箭头所指示的。结果,与输入串“x”相对应的这三个位位置全部具有值1。类似地,输入串y和z通过将这些串中的每一者映射至位阵列中的三个不同的位位置并将这些位位置设置为值1而被添加至布隆过滤器中。布隆过滤器的结果所得位阵列在图6中示出。为了确定输入串w是否已被添加至布隆过滤器,布隆过滤器将输入串w映射至该位阵列中的三个位位置,如由在w处发出的三个箭头所指示的。由于与输入串w相对应的位位置中的一个位位置具有值0,因此确定输入串w不在该布隆过滤器中。此确定是正确的,因为布隆过滤器仅存储了x、y和z,而没有存储w。
图7解说了将网络中的无线设备数量与来自布隆过滤器的估计数量作比较的仿真结果700。图8解说了示出估计误差百分比相对于网络中的无线设备数量的仿真结果800。在该仿真中,布隆过滤器具有600字节的位阵列和4个散列函数。如图7和8中所示,仿真结果指示,对于包括超过50个设备的无线网络而言,估计误差在实际设备数量的约2%以内。
在一些前述实现中,布隆过滤器包括k个不同的散列函数(称为“布隆散列函数”),每个散列函数将输入串映射至m位的位阵列中的位位置。布隆散列函数可使用将输入串映射至0与p-1之间的单个整数的散列函数(称为“通用散列(General Hash)函数”)来实现,其中p不小于m。布隆散列函数可通过首先使用通用散列函数将输入串映射至0与p-1之间的单个整数、并随后应用模运算以找出该单个整数除以m的余数(remainder)来实现,其中该余数对应于m位的位阵列中的位位置。该余数是布隆散列函数返回的值。由此,布隆散列函数可表示如下:
布隆散列=remainder(General Hash(输入串),m) (4)
在一种实现中,通用散列函数可以是例如输入串的循环冗余校验(CRC)。在一种实现中,布隆过滤器的通用散列函数可以是从输入串选择多个位并根据一模式将这些位安排成序列的函数。位序列的值由此表示该通用散列函数的输出整数。从输入串选择的位不必在输入串内是连续的。通用散列函数可基于预定义模式来生成位序列。.例如,预定义模式可定义输入串的从首位、末位、中间位、距开头有预定义偏移处的位、或者距末尾有预定义偏移处的位开始的B个位的序列。预定义模式可定义在标识符串的奇数位置处的B个位的序列、或者在标识符串的偶数位置处的B个位的序列,其中该序列始于首位、末位、中间位、距开头有预定义偏移处的位、或者距末尾有预定义偏移处的位。在另一示例中,预定义模式可定义包括来自输入串的位1、位37、位8、位9、位15、位3和位2的位序列。
在一些前述实现中,无线设备在加入无线网络之际请求第二无线设备提供第二设备的当前布隆过滤器。在一种实现中,可使用带有指定的管理服务标识(例如,保留用于管理操作的0x000000或0xFFFFFF)的发现类型长度值(TLV)来交换布隆过滤器。布隆过滤器可被存储在被称为管理专用信息容器的发现TLV的可任选字段中。
发现TLV可被携带在因供应商而异的发现帧中。替换地,TLV可被携带作为对等(P2P)信息元素(例如,在WiFi直连系统中)中的属性。该信息元素可以是因供应商而异的信息元素。在一种实现中,用于交换布隆过滤器的协议在新的无线站扫描邻域知悉网络(NAN)同步信标或发现帧时开始。一旦接收到同步信标或发现帧,新站就可向该同步信标或发现帧的发送方发送对布隆过滤器的请求。该请求是使用管理发现TLV来作出的。该同步信标或发现帧的发送方随后在管理发现TLV中用布隆过滤器来作出响应。
图9解说了示例因供应商而异的发现帧900。在所解说的实现中,因供应商而异的发现帧900包括类别字段910、动作字段920、组织唯一性标识符(OUI)字段930、OUI类型字段940、OUI子类型950、对话令牌960、以及一个或多个发现类型长度值(TLV)字段970-980。如图所示,类别字段910是1个八位位组,动作字段920是1个八位位组,OUI字段930是3个八位位组,OUI类型字段940是1个八位位组,OUI子类型950是1个八位位组,对话令牌960是1个八位位组,且这一个或多个发现TLV字段970-980是可变长度的。在各种实现中,因供应商而异的发现帧900可省略图9中所示的一个或多个字段。本领域普通技术人员将领会,因供应商而异的发现帧900中的各字段可以是不同的合适长度的,并且可按照不同次序。
在一些实现中,类别字段910可以指示公共动作帧。动作字段920可以指示因供应商而异的动作帧。OUI字段930可被用来全球或全世界唯一性地标识供应商、制造商、或其他组织(称为“受托者”)且可有效地保留每种可能类型的派生标识符块(诸如MAC地址、群地址、子网接入协议标识符,等等)以供受托者独占使用。OUI类型字段940可被用来指示OUI字段930的类型,诸如MAC标识符、上下文相关标识符(CDI)、扩展唯一性标识符(EUI),等等。OUI子类型字段950可指示OUI类型字段940的子类型。对话令牌960可被选择以指示特定事务。TLV字段970和980在本文中关于图10更详细地描述。
图10示出了可在图1的无线通信系统100内采用的发现类型长度值(TLV)1000。发现TLV 1000可在各种消息中传送,诸如发现帧和P2P信息元素。TLV1000可在发现帧900中被实现为TLV 970和980(图9中所示)。在各种实现中,本文描述的任何设备(例如移动设备,诸如图1中所示的移动设备112)可以传送发现TLV 1000。
在所解说的实现中,发现TLV 1000包括服务标识符1010、长度字段1020、可任选的服务控制字段1030、可任选的射程控制字段1050、管理控制字段1060、以及可任选的管理专用信息容器1070。本领域普通技术人员将领会,发现TLV1000可包括附加字段,并且各字段可被重新安排、移除、和/或重新设定大小。例如,在各种实现中,发现TLV 1000可以省略服务控制字段1030、射程控制字段1050、和/或管理控制1060。
在解说性实现中,所示的服务标识符字段1010为6个八位位组长。在一些实现中,服务标识符字段1010可具有可变长度,诸如逐信号变动的长度和/或在诸服务提供者之间变动的长度。服务标识符字段1010可包括标识发现帧的服务或应用的值。例如,服务标识符1010可包括服务名称的散列或基于服务的其他值。在一些实现中,预定令牌值可被保留。例如,全0或全1的服务标识符可指示NAN管理操作。
长度字段1020可被用来指示发现TLV 1000的长度或诸后续字段的总长度。图10中示出的长度字段1020为1个八位位组长。在一些实现中,长度字段1020可具有可变长度,诸如逐信号变动的长度和/或在诸服务提供者之间变动的长度。在一些实现中,长度为零(或另一预定令牌值)可指示一个或多个其他字段(诸如服务控制字段1030、射程控制字段1050、管理控制1060、和/或管理专用信息容器1070)不存在。
服务控制字段1030可包括适用服务的信息。图10中示出的服务控制字段1030为1个八位位组长。在一些实现中,服务控制字段1030可具有可变长度,诸如逐信号变动的长度和/或在诸服务提供者之间变动的长度。
射程控制字段1050可包括与管理控制1060相关的信息。图10中示出的射程控制字段1050为1个八位位组长。在一些实现中,射程控制字段1050可具有可变长度,诸如逐信号变动的长度和/或在诸服务提供者之间变动的长度。
管理控制字段1060可被用于携带与管理控制相关的信息。在解说性实现中,管理控制字段1060可以是1个或2个八位位组长。在一些实现中,管理控制字段1060具有可变长度。
管理专用信息容器1070可被用于携带相关的附加信息。图10中所示的管理专用信息容器1070是可变长度的。在解说性实现中,管理专用信息容器1070可被用于包含布隆过滤器。
在一些实施例中,对等网络的一个或多个节点可以传送同步消息以协调一个或多个可用性窗口以供在该对等网络的各节点之间通信。这些节点还可以交换发现查询和响应以提供在相同的对等网络或邻域知悉网络内操作的设备之间的服务发现。在一些方面,邻域知悉网络可被认为是对等网络或自组织网络。这些节点重复地从休眠状态苏醒以周期性地传送和/或接收同步消息和发现消息。如果节点能够更久地停留在休眠状态以节约功率并且不从休眠状态苏醒以在网络上传送和/或接收同步消息则将是有利的。另外,由节点传送和重传同步和发现消息可向网络引入大量不必要的开销。
在一些实施例中,仅节点子集能被配置成传送同步消息,例如以便减少网络拥塞。在一些实施例中,节点子集可被指定或选举为“主控”节点。例如,能接入外部功率源的节点可被选举为主控节点,而靠电池功率运作的节点可能不被选为主控节点。在各种实施例中,节点可被指定为一种或多种不同类型的主控节点,包括:发现主控节点、同步主控节点、和/或锚主控节点。在一些实施例中,一个或多个发现主控节点可传送NAN发现消息,而其他节点可以不传送NAN发现消息。在一些实施例中,一个或多个同步主控节点可传送同步消息,而其他节点可以不传送同步消息。
在一些实施例中,一个或多个锚主控节点可优先被选举为同步主控节点和/或发现主控节点。锚节点可被预设、如本文关于主控节点选举所描述地那样被选举、或以另一方式确定。具有锚节点的NAN可被称为锚定NAN,而没有锚节点的NAN可被称为非锚定NAN。在一实施例中,NAN可具有单个锚主控节点。
在一些实施例中,NAN中的一个或多个节点可基于动态确定的或预设的主控节点偏好值(MPV)来选举一个或多个主控节点。例如,能接入外部功率源的节点可将其MPV设置为较高(例如,10),而靠电池功率运作的节点可将其MPV设置为较低(例如,5)。在选举过程期间,具有较高MPV的节点可以更有可能被选举为主控节点。在一些实施例中,锚节点可具有比非锚节点更高的MPV,且由此可以更有可能被选为主控节点。
图11解说了可以在其中采用本公开的各方面的另一无线通信系统1100的示例。无线通信系统1100包括锚节点1110、主控节点1120、和非主控节点1130。在各种实施例中,无线通信系统1100可类似于无线通信系统100(图1)。例如,一个或多个节点1110–1130可包括移动设备112–118、122–128和132–142(图1)中的任一者。在一些实施例中,一个或多个节点1110–1130可包括无线设备202(图2)并且可实现方法500(图5)。在一些实施例中,每个主控节点1120和/或锚节点1110可对应于特定群集,诸如以上关于图1讨论的群集110、120和130。
在一些实施例中,每个主控节点1120可跟踪无线电射程内的其他节点的标识符。例如,每个主控节点1120可以用射程内的其他节点的标识符来填充布隆过滤器,如以上关于图5–6所讨论的。由此,在一些实施例中,每个主控节点1120可通过对从其相关联的群集内的设备接收到的所有NAN帧的传送地址进行散列来填充其布隆过滤器。在一些实施例中,每个主控节点1120可仅跟踪其群集内的设备的标识符。在一些实施例中,每个主控节点1120可跟踪任何所发现的设备的标识符而不管群集。在一些实施例中,主控节点1120可避免跟踪其他主控节点1120和/或锚节点1110的标识符。在其他实施例中,主控节点1120可跟踪包括其他主控节点和/或锚节点1110的标识符在内的标识符。在各种实施例中,锚节点1110可如本文关于主控节点120所描述地那样跟踪标识符。
在各种实施例中,各主控节点1120可形成根在锚节点1110处的树拓扑。每个主控节点1120可维护指示至锚节点1110的跳跃距离的信息。在一些实施例中,锚节点1110和主控节点1120可根据树拓扑来估计和传播群集大小。如本文所讨论的,每个主控节点1120和/或锚节点1110可从其他节点接收布隆过滤器。每个主控节点1120和/或锚节点1110可执行对接收到的布隆过滤器与第一无线设备的当前或本地布隆过滤器的逐位求或运算。在一些实施例中,每个主控节点1120和/或锚节点1110可请求布隆过滤器。在一些实施例中,每个主控节点1120和/或锚节点1110可接收布隆过滤器而无需请求。
在一些实施例中,每个主控节点1120和/或锚节点1110可仅从树拓扑中的毗邻主控节点1120接收布隆过滤器。在一些实施例中,每个主控节点1120和/或锚节点1110可仅从树拓扑中的子节点接收布隆过滤器。在一些实施例中,每个主控节点1120可执行对接收到的布隆过滤器与本地布隆过滤器之间的逐位求或运算,然后向父节点发送经合并的布隆过滤器。相应地,在一些实施例中,锚节点1110可最终构建包含无线通信系统1100中的所有布隆过滤器的逐位求或的布隆过滤器。在一些实施例中,锚节点1110可最终构建无线通信系统1100中所有发现的标识符的布隆过滤器。
如以上所讨论的,在一些实施例中,每个主控节点1120和/或锚节点1110可从其他节点(诸如举例而言,从每个子节点或子主控节点1120)请求布隆过滤器。在一些实施例中,每个主控节点1120和/或锚节点1110可使用服务发现帧(SDF)来传送该请求。例如,每个主控节点1120和/或锚节点1110可传送包括发布位被置位了的服务发现属性1300(图13)的服务发现帧。
在各种实施例中,对所发现设备的请求可包括传送设备已自其接收到对所发现设备的指示的设备的指示。例如,锚节点1110可向主控节点1120传送所发现设备请求,该请求包括已提供其布隆过滤器600(图6)的主控节点1120的全部或部分标识符(诸如MAC地址)的列表。在一些实施例中,对设备的指示本身可以是指示传送设备已自其接收到对所发现设备的指示的设备的布隆过滤器。
在各种实施例中,对所发现设备的请求可包括应当对该请求作出响应的设备的跳跃计数。跳跃计数可以是最大、最小、或确切跳跃计数。例如,锚节点1110可传送指示跳跃计数为1的所发现设备请求。相应地,只有相距一个跳跃的主控节点1120被配置成用对所发现设备的指示(诸如图6的布隆过滤器600)来作出响应。在一些实施例中,节点可基于对所发现设备的请求中所包括的跳跃计数来选择性地对该请求作出响应。例如,一个特定设备可仅对来自具有比该特定设备的跳跃计数更高的跳跃计数的设备的请求作出响应。
在一些实施例中,每个主控节点1120和/或锚节点1110可如本文所描述地(诸如关于图5所描述地)估计群集大小。每个主控节点1120和/或锚节点1110可经由锚信息属性来传送群集大小估计或其指示,如以下关于图12所讨论的。在一实施例中,群集大小估计或其指示可被包括于在各发现窗口之间的间隔中传送的发现信标中。
由此,在一个示例中,每个主控节点1120可生成指示所发现设备的布隆过滤器600(图6)。锚节点1110可从每个主控节点1120请求布隆过滤器,并且可将这些布隆过滤器与它自己的布隆过滤器合并(例如,经由逐位求或运算)。在一些实施例中,主控节点1120可从子节点接收布隆过滤器,将接收到的布隆过滤器与它自己的本地布隆过滤器合并,并且将经合并的布隆过滤器传递给父节点,藉此将整个NAN的布隆过滤器传播至锚节点1110。锚节点1110可估计网络大小并在其信标中传送该估计。主控节点1120可接收来自父节点的信标并且可在其自己的信标中重传所估计的网络大小,藉此传播所估计的网络大小遍及该NAN。
在各种实施例中,每个主控节点1120和/或锚节点1110可传送指示所发现设备标识符的布隆过滤器600(图6),例如响应于所发现设备请求地、间歇性地、周期性地、随机地、和/或伪随机地传送该布隆过滤器。
图12示出媒体接入控制(MAC)帧1200的示例性结构。在一些方面,媒体接入控制帧(MAC)1200可被用于以上讨论的信标信号。如图所示,MAC帧1200包括11个不同的字段:帧控制(FC)字段1202、历时/标识(dur)字段1204、接收机地址(A1)字段1206、发射机地址(A2)字段1208、目的地地址(A3)字段1210(其在一些方面可指示NAN BSSID或群集ID)、序列控制(sc)字段1212、时间戳字段1214、信标区间字段1216、能力字段1218、信息元素1220(其可包括发现窗口信息)、以及帧校验序列(FCS)字段1222。在一些方面,字段1202–1222包括MAC报头。每一字段可包括一个或多个子字段或字段。例如,媒体接入控制报头1200的帧控制字段1202可以包括多个子字段,诸如协议版本、类型字段、子类型字段、以及其它字段。此外,本领域普通技术人员将领会,本文描述的各种字段可被重新安排、重新设定大小,一些字段可被省略,并且可添加附加字段。
在一些方面,NAN BSSID字段1210可指示NAN设备集群。在另一实施例中,每个NAN可具有不同的(例如,伪随机的)NAN BSSID 1210。在一实施例中,NAN BSSID 1210可以基于服务应用。例如,应用A所创建的NAN可具有基于应用A的标识符的BSSID 1210。在一些实施例中,NAN BSSID 1210可由标准体来定义。在一些实施例中,NAN BSSID 1210可以基于其他上下文信息和/或设备特性,诸如举例而言设备位置、服务器指派的ID,等等。在一个示例中,NAN BSSID 1210可包括NAN的纬度和经度位置的散列。所示的NAN BSSID字段1210为6个八位位组长。在一些实现中,NAN BSSID字段1210可以为4个、5个或8个八位位组长。在一些实施例中,AP 104可在信息元素中指示NAN BSSID 1210。
在各种实施例中,帧1200或另一发现帧可包括锚信息属性和/或服务发现属性,诸如以下参照图13描述的服务发现属性1300。在一实施例中,NAN IE字段1220可包括字段1202,其可包括锚信息属性和/或服务发现属性。在一实施例中,锚信息属性可包括对群集大小或群集大小估计的指示。在一实施例中,锚信息属性可被包括于在各发现窗口之间的间隔中发送的发现信标中。在一实施例中,锚信息属性可由一个或多个节点1110–1130(图11)未经索求地(例如周期性地、间歇性地、和/或随机或伪随机地)传送。
图13示出了可在图11的无线通信系统1100内采用的示例性服务发现属性1300。在各种实施例中,本文描述的任何设备、或另一兼容设备可传送服务发现属性1300,诸如举例而言任何节点1110–1130(图11)、任何移动设备112–118、122–128和132–142(图1)、和/或无线设备202(图2)。无线通信系统100(图1)和/或无线通信系统1100(图11)中的一条或多条消息可包括服务发现属性1300,诸如举例而言NAN信标1200(图12)、发现帧、探测响应、和/或发现查询帧。在一个实施例中,服务发现帧可包括公共动作帧,该公共动作帧包含一个或多个服务发现属性1300。作为另一示例,服务发现属性1300可以在因供应商而异的IE中。作为服务发现属性1300的补充或替换,服务发现属性1300的一个或多个字段可被包括在信息元素的属性中。
在所解说的实施例中,服务发现属性1300包括属性标识符1305、长度字段1320、服务标识符1310、服务控制字段1330、匹配过滤器容器1350、服务响应过滤器(SRF)信息容器1360、以及服务专用信息容器1370。本领域普通技术人员将领会,服务发现属性1300可包括附加字段,并且各字段可被重新安排、移除、和/或重新设计大小。例如,在各种实施例中,服务发现属性1300可省略匹配过滤器容器1350和/或匹配过滤器容器1350,并且可包括附加长度字段。
所示的服务标识符字段1310为6个八位位组长。在一些实现中,服务标识符字段1310可以为2个、5个或12个八位位组长。在一些实现中,服务标识符字段1310可具有可变长度,诸如逐信号变动的长度和/或在诸服务提供者之间变动的长度。服务标识符字段1310可包括标识发现帧的服务或应用的值。例如,服务标识符1310可包括服务名称的散列或基于服务的其他值。在一些实施例中,预定令牌值可被保留。例如,全0或全1的服务标识符可指示NAN管理操作。
长度字段1320可被用来指示服务发现属性1300的长度或诸后续字段的总长度。图13中示出的长度字段1320为2个八位位组长。在一些实现中,长度字段1320可以为1个、5个、或12个八位位组长。在一些实现中,长度字段1320可具有可变长度,诸如逐信号变动的长度和/或在诸服务提供者之间变动的长度。在一些实施例中,长度为零(或另一预定令牌值)可指示一个或多个其他字段(诸如服务控制字段1330、匹配过滤器容器1350、服务响应过滤器信息容器1360、服务专用信息容器1370、和/或所发现地址信息容器1380)不存在。
服务控制字段1330可指示适用服务的信息。图13中示出的服务控制字段1330为1个八位位组长。在一些实现中,服务控制字段1330可以为2个、6个或8个八位位组长。在一些实现中,服务控制字段1330可具有可变长度,诸如逐信号变动的长度和/或在诸服务提供者之间变动的长度。在一实施例中,服务控制字段1330可包括发布标志、订阅标志、射程受限标志、匹配过滤器标志、服务信息标志、AP标志、所发现地址标志、以及保留位。在一实施例中,服务控制字段1330可包括关于该帧包括指示所发现设备的布隆过滤器的指示。在一实施例中,订阅标志在被置位时可指示要接收设备发送其布隆过滤器600(图6)的请求。在一实施例中,发布标志在被置位时可指示包括布隆过滤器600(图6)的响应帧。本领域普通技术人员将领会,服务控制字段1330可包括附加字段,并且各字段可被重新安排、移除、和/或重新设定大小。
匹配过滤器容器1350可指示匹配过滤器信息。图13中所示的匹配过滤器容器1350是可变长度的。在一些实现中,匹配过滤器容器1350可以为2个、6个或8个八位位组长。匹配过滤器容器1350可包括匹配过滤器长度字段和/或针对NAN的匹配过滤器。匹配过滤器长度字段可指示匹配过滤器的长度。匹配过滤器长度字段可以是1个八位位组长。在一实施例中,匹配过滤器长度可以是零(或另一预定令牌值)且匹配过滤器可被省略。匹配过滤器可以是可变长度的。本领域普通技术人员将领会,匹配过滤器容器1350可包括附加字段,并且各字段可被重新安排、移除、和/或重新设定大小。
服务响应过滤器信息容器1360可指示设备是否应当对查询作出响应。在一些实施例中,服务响应过滤器信息容器1360可包括服务响应过滤器和服务响应过滤器长度字段。服务响应过滤器可包括例如不应当作出响应的设备的部分和/或全部设备标识符(例如,MAC地址)列表。在一实施例中,服务响应过滤器可包括指示不应当作出响应的设备的标识符(例如,MAC地址)列表的布隆过滤器。图13中所示的服务响应过滤器信息容器1360是可变长度的。在一些实现中,服务响应过滤器信息容器1360可以为2个、6个或8个八位位组长。
服务专用信息容器1370可封装与适用服务相关的一个或多个附加数据字段。图13中所示的服务专用信息容器1370是可变长度的。在一些实现中,服务专用信息容器1370可以为1个、5个或12个八位位组长。服务专用信息容器1370可包括服务专用信息长度字段和/或服务专用信息字段。服务专用信息长度字段可指示服务专用信息字段的长度。在一实施例中,服务专用信息长度字段可以是零(或另一预定令牌值)且服务专用信息字段可被省略。服务专用信息字段可以是可变长度的。在一些实现中,服务专用信息字段可以为1个、5个或12个八位位组长。
在一些实施例中,服务专用信息字段可包括所发现地址信息容器。所发现地址信息容器可指示传送设备202(图2)已发现的设备的一个或多个地址。例如,所发现地址信息容器可包括布隆过滤器600(图6)。所发现地址信息可以是可变长度的。在一些实现中,所发现地址信息容器可以为1个、5个或12个八位位组长。
如本文所使用的,术语“确定”涵盖各种各样的动作。例如,“确定”可包括演算、计算、处理、推导、研究、查找(例如,在表、数据库或其他数据结构中查找)、探知及诸如此类。而且,“确定”可包括接收(例如,接收信息)、访问(例如,访问存储器中的数据)及诸如此类。而且,“确定”还可包括解析、选择、选取、确立及类似动作。另外,如本文中所使用的“信道宽度”可在某些方面涵盖或者还可称为带宽。
上面描述的方法的各种操作可由能够执行这些操作的任何合适的装置来执行,诸如各种硬件和/或软件组件、电路、和/或模块。一般而言,在附图中所解说的任何操作可由能够执行这些操作的相对应的功能性装置来执行。
结合本公开所描述的各种解说性逻辑框、模块、以及电路可用设计成执行本文所描述功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列信号(FPGA)或其他可编程逻辑器件(PLD)、分立的门或晶体管逻辑、分立的硬件组件或其任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何市售的处理器、控制器、微控制器或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协同的一个或多个微处理器、或任何其他此类配置。
在一个或多个方面中,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现,则各功能可以作为一条或多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或能被用来携带或存储指令或数据结构形式的期望程序代码且能被计算机访问的任何其它介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其它远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘和蓝光碟,其中盘(disk)往往以磁的方式再现数据,而碟(disc)用激光以光学方式再现数据。因此,在一些方面,计算机可读介质可包括非暂态计算机可读介质(例如,有形介质)。另外,在一些方面,计算机可读介质可包括暂态计算机可读介质(例如,信号)。上述的组合应当也被包括在计算机可读介质的范围内。
本文所公开的方法包括用于实现所描述的方法的一个或多个步骤或动作。这些方法步骤和/或动作可以彼此互换而不会脱离权利要求的范围。换言之,除非指定了步骤或动作的特定次序,否则具体步骤和/或动作的次序和/或使用可以改动而不会脱离权利要求的范围。
所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现,则各功能可以作为一条或多条指令存储在计算机可读介质上。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或能被用来携带或存储指令或数据结构形式的期望程序代码且能被计算机访问的任何其它介质。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘、和碟,其中盘(disk)常常磁性地再现数据,而碟(disc)用激光来光学地再现数据。
因此,一些方面可包括用于执行本文中给出的操作的计算机程序产品。例如,此种计算机程序产品可包括其上存储(和/或编码)有指令的计算机可读介质,这些指令能由一个或多个处理器执行以执行本文中所描述的操作。对于一些方面,计算机程序产品可包括包装材料。
软件或指令还可以在传输介质上传送。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或诸如红外、无线电、以及微波等无线技术从web站点、服务器或其它远程源传送而来的,则该同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电以及微波等无线技术就被包括在传输介质的定义里。
此外,应当领会,用于执行本文中所描述的方法和技术的模块和/或其它恰适装置能由用户终端和/或基站在适用的场合下载和/或以其他方式获得。例如,此类设备能被耦合至服务器以促成用于执行本文中所描述的方法的装置的转移。替换地,本文所述的各种方法能经由存储装置(例如,RAM、ROM、诸如压缩碟(CD)或软盘等物理存储介质等)来提供,以使得一旦将该存储装置耦合至或提供给用户终端和/或基站,该设备就能获得各种方法。此外,可利用适于向设备提供本文中所描述的方法和技术的任何其他合适的技术。
将理解,权利要求并不被限定于以上所解说的精确配置和组件。可在以上所描述的方法和设备的布局、操作和细节上作出各种改动、更换和变形而不会脱离权利要求的范围。
尽管上述内容针对本公开的各方面,然而可设计出本公开的其他和进一步的方面而不会脱离其基本范围,且其范围是由所附权利要求来确定的。
Claims (30)
1.一种无线设备,其配置成监视无线网络中的相邻无线设备数量,所述无线设备包括:
接收机,其配置成从所述相邻无线设备中的一个相邻无线设备接收消息,所述消息包括与该相邻无线设备相关联的标识符;以及
处理器,其配置成将所述标识符添加到布隆过滤器中并基于所述布隆过滤器中0的数量或所述布隆过滤器中1的数量来估计已被添加到所述布隆过滤器中的相异串的数量,所述相异串的数量表示对所述无线网络中的相邻无线设备数量的估计。
2.如权利要求1所述的无线设备,其特征在于,所述无线设备包括锚设备,所述锚设备配置成传送包括对所述无线网络中的相邻无线设备数量的所述估计的信标以供相继传播遍及所述无线网络。
3.如权利要求1所述的无线设备,其特征在于,所述布隆过滤器包括m位的位阵列和m个计数器,每个计数器与所述位阵列中的不同位相关联,每个计数器具有在0与最大值之间的整数值,其中所述处理器被进一步配置成:
针对历时T的每个时间间隔将具有非零值的每个计数器的值减小1;以及
若计数器的值被减小至0,则将与该计数器相对应的位设置为0。
4.如权利要求3所述的无线设备,其特征在于,所述处理器被进一步配置成:当所述位阵列的任何位被设置为1时,将与该位相对应的计数器设置为所述最大值。
5.如权利要求1所述的无线设备,其特征在于,所述布隆过滤器是m位的位阵列,其具有与所述位阵列相关联的k个不同散列函数,其中每个散列函数以均匀随机分布将输入串映射至该m个阵列位置之一。
6.如权利要求5所述的无线设备,其特征在于,已被添加到所述布隆过滤器中的相异串的数量Ndistinct通过以下公式来计算:
其中N0是所述阵列中0的数量。
7.如权利要求5所述的无线设备,其特征在于,所述布隆过滤器被设计成跟踪最多达N个设备,并且所述布隆过滤器的参数m具有约为N的值。
8.如权利要求5所述的无线设备,其特征在于,所述k个散列函数中的至少一个散列函数是输入串的循环冗余校验。
9.如权利要求5所述的无线设备,其特征在于,所述k个散列函数中的至少一个散列函数是使用第一散列函数来创建的,所述第一散列函数将输入串映射至0与p-1之间的整数,其中所述至少一个散列函数包括使用所述第一散列函数将输入串映射至0与p-1之间的整数,并且随后应用模运算以找出所述整数除以m的余数,所述余数是所述至少一个散列函数返回的值。
10.如权利要求9所述的无线设备,其特征在于,所述第一散列函数从所述输入串选择多个位并根据一模式将这些位安排成序列,该位序列表示作为由所述第一散列函数返回的所述值的整数。
11.如权利要求1所述的无线设备,其特征在于,所述标识符是以下一者:MAC地址、服务标识符、或基于应用的标识符。
12.如权利要求1所述的无线设备,其特征在于,所述处理器被进一步配置成从所述无线网络中的所述相邻无线设备中的至少一个相邻无线设备请求所述布隆过滤器。
13.如权利要求12所述的无线设备,其特征在于,所述处理器被配置成向所述相邻无线设备发送包括经置位的订阅位的服务发现帧以请求所述布隆过滤器。
14.如权利要求13所述的无线设备,其特征在于,所述服务发现帧包括以下至少一者:对已自其接收到布隆过滤器的相邻无线设备的指示、以及对相邻设备应当作出响应的跳跃计数的指示。
15.如权利要求13所述的无线设备,其特征在于,所述无线设备包括锚节点和主控节点中的至少一者。
16.如权利要求12所述的无线设备,其特征在于,所述处理器被进一步配置成通过存储从多个相邻无线设备接收到的布隆过滤器的逐位求或来生成所述相邻无线设备的布隆过滤器。
17.如权利要求1所述的无线设备,其特征在于,所述布隆过滤器包括m位的位阵列,其中所述处理器被进一步配置成按随机时间间隔将一个或多个位复位为0,所述一个或多个位是从所述布隆过滤器的所述m位中随机挑选的,并且其中所述处理器被配置成基于以下一者或多者来选取要复位的位数和所述随机间隔的分布:所述网络中的无线设备数量、无线设备离开所述网络的估计速率、以及无线设备改变其MAC地址的时间间隔。
18.一种监视无线网络中的相邻无线设备数量的方法,所述方法包括:
从所述相邻无线设备中的一个相邻无线设备接收消息,所述消息包括与该相邻无线设备相关联的标识符;
将所述标识符添加到布隆过滤器中;以及
基于所述布隆过滤器中0的数量来估计已被添加到所述布隆过滤器中的相异串的数量,所述相异串的数量表示对所述无线网络中的相邻无线设备数量的估计。
19.如权利要求18所述的方法,其特征在于,所述布隆过滤器包括m位的位阵列和m个计数器,每个计数器与所述位阵列中的不同位相关联,每个计数器具有在0与最大值之间的整数值,其中所述方法进一步包括:
针对历时T的每个时间间隔将具有非零值的每个计数器的值减小1;以及
若计数器的值减小至0,则将与该计数器相对应的位设置为0。
20.如权利要求19所述的方法,其特征在于,所述方法进一步包括:当位被设置为1时,将与所述位相对应的计数器设置为所述最大值。
21.如权利要求18所述的方法,其特征在于,所述布隆过滤器是m位的位阵列,其具有与所述位阵列相关联的k个不同散列函数,其中每个散列函数以均匀随机分布将输入串映射至该m个阵列位置之一。
22.如权利要求21所述的方法,其特征在于,所述k个散列函数中的至少一个散列函数是输入串的循环冗余校验。
23.如权利要求21所述的方法,其特征在于,所述k个散列函数是使用单个散列函数和k个不同补充串来实现的,其中将所述标识符添加到所述布隆过滤器包括:
基于所述标识符和所述k个补充串生成k个经修改串;以及
将所述k个经修改串馈送至所述单个散列函数,由此生成k个阵列位置。
24.如权利要求21所述的方法,其特征在于,所述布隆过滤器的参数k具有值1,并且所述布隆过滤器的参数m具有为所述无线网络的最大大小的约两倍的值。
25.如权利要求18所述的方法,其特征在于,所述标识符是以下一者:MAC地址、服务标识符、或基于应用的标识符。
26.如权利要求18所述的方法,其特征在于,所述方法进一步包括:在加入无线网络之际,从所述无线网络中的至少一个相邻无线设备请求布隆过滤器,以及从相邻无线设备接收消息,所述消息包括所述相邻无线设备的布隆过滤器以及所述相邻无线设备的所述布隆过滤器被启动的时间。
27.如权利要求26所述的方法,其特征在于,所述方法进一步包括通过存储从多个相邻无线设备接收到的布隆过滤器的逐位求或来生成所述无线设备的布隆过滤器。
28.如权利要求18所述的方法,其特征在于,进一步包括:
从至少第一相邻无线设备请求布隆过滤器;以及
基于布隆过滤器来估计所述无线设备和所述第一相邻无线设备共有的相邻无线设备的数量,所述布隆过滤器是通过执行所述无线设备的布隆过滤器与所述第一相邻无线设备的布隆过滤器的逐位求与来生成的。
29.一种用于监视无线网络中的相邻无线设备数量的无线设备,所述设备包括:
用于从所述相邻无线设备中的一个相邻无线设备接收消息的装置,所述消息包括与该相邻无线设备相关联的标识符;
用于将所述标识符添加到布隆过滤器中的装置;以及
用于基于所述布隆过滤器中0的数量来估计已被添加到所述布隆过滤器中的相异串的数量的装置,所述相异串的数量表示对所述无线网络中的相邻无线设备数量的估计。
30.一种包括配置成实现用于监视无线网络中的相邻无线设备数量的方法的计算机可执行指令的非瞬态物理计算机存储,所述方法包括:
从所述相邻无线设备中的一个相邻无线设备接收消息,所述消息包括与该相邻无线设备相关联的标识符;
将所述标识符添加到布隆过滤器中;以及
基于所述布隆过滤器中0的数量来估计已被添加到所述布隆过滤器中的相异串的数量,所述相异串的数量表示对所述无线网络中的相邻无线设备数量的估计。
Applications Claiming Priority (11)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361758577P | 2013-01-30 | 2013-01-30 | |
US61/758,577 | 2013-01-30 | ||
US201361762246P | 2013-02-07 | 2013-02-07 | |
US61/762,246 | 2013-02-07 | ||
US201361824907P | 2013-05-17 | 2013-05-17 | |
US61/824,907 | 2013-05-17 | ||
US201361842328P | 2013-07-02 | 2013-07-02 | |
US61/842,328 | 2013-07-02 | ||
US14/161,556 | 2014-01-22 | ||
US14/161,556 US9226231B2 (en) | 2013-01-30 | 2014-01-22 | Systems and methods for monitoring the size of a wireless network |
PCT/US2014/012803 WO2014120557A1 (en) | 2013-01-30 | 2014-01-23 | Monitoring the size of a wireless network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104956701A true CN104956701A (zh) | 2015-09-30 |
CN104956701B CN104956701B (zh) | 2020-01-21 |
Family
ID=51222852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480006385.0A Active CN104956701B (zh) | 2013-01-30 | 2014-01-23 | 监视无线网络的大小 |
Country Status (8)
Country | Link |
---|---|
US (1) | US9226231B2 (zh) |
EP (1) | EP2952025B1 (zh) |
JP (1) | JP6026675B2 (zh) |
KR (1) | KR101660471B1 (zh) |
CN (1) | CN104956701B (zh) |
ES (1) | ES2763649T3 (zh) |
HU (1) | HUE045516T2 (zh) |
WO (1) | WO2014120557A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106647397A (zh) * | 2016-12-22 | 2017-05-10 | 北京金风科创风电设备有限公司 | 风电场联网设备列表的获取方法及装置 |
CN113556692A (zh) * | 2020-04-24 | 2021-10-26 | 北京小米移动软件有限公司 | 网络设备探测方法、装置及系统 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9295015B2 (en) * | 2013-02-12 | 2016-03-22 | Intel IP Corporation | Methods, wireless communication stations, and system for synchronizing devices and neighbor area networking (NAN) configuration |
US9154934B2 (en) * | 2013-03-28 | 2015-10-06 | Futurewei Technologies, Inc. | System and method for pre-association discovery |
US10003970B2 (en) * | 2013-05-16 | 2018-06-19 | Telefonaktiebolaget L M Ericsson (Publ) | Coordinator and device in a radio communication network |
CN104053227B (zh) * | 2013-12-02 | 2017-06-27 | 华为终端有限公司 | 一种用于锚主设备选择的方法和设备 |
WO2015119440A1 (ko) * | 2014-02-05 | 2015-08-13 | 엘지전자 주식회사 | 무선 통신 시스템에서 nan 단말의 신호 송수신 방법 및 장치 |
US9439089B2 (en) * | 2014-05-23 | 2016-09-06 | Google Inc. | Device to device round-trip time (RTT) measurement via neighbor aware network |
EP3790300B1 (en) * | 2014-06-24 | 2021-12-22 | Google LLC | Mesh network commissioning |
KR102222337B1 (ko) * | 2014-08-05 | 2021-03-04 | 삼성전자주식회사 | 전자 기기의 어플리케이션 동기화 방법 및 장치 |
US10129900B2 (en) | 2014-09-04 | 2018-11-13 | Lg Electronics Inc. | Wireless resource scheduling method and device for NAN |
US9788264B2 (en) | 2014-10-17 | 2017-10-10 | Qualcomm Incorporated | Bloom filter for service hint information in advertisements |
US10021644B2 (en) | 2014-10-30 | 2018-07-10 | Qualcomm Incorporated | Network discovery |
US20160142897A1 (en) * | 2014-11-14 | 2016-05-19 | Telefonaktiebolaget L M Ericsson (Publ) | Enriched D2D Discovery Content |
KR102251326B1 (ko) * | 2014-11-25 | 2021-05-12 | 삼성전자주식회사 | 근접 네트워크 구성 방법 및 그 전자 장치 |
US10820314B2 (en) | 2014-12-12 | 2020-10-27 | Qualcomm Incorporated | Traffic advertisement in neighbor aware network (NAN) data path |
US10827484B2 (en) | 2014-12-12 | 2020-11-03 | Qualcomm Incorporated | Traffic advertisement in neighbor aware network (NAN) data path |
US9763074B2 (en) * | 2015-01-01 | 2017-09-12 | Intel IP Corporation | Apparatus, system and method of communicating a beacon frame |
CN105991325B (zh) * | 2015-02-10 | 2019-06-21 | 华为技术有限公司 | 处理至少一个分布式集群中的故障的方法、设备和系统 |
WO2016144088A1 (ko) * | 2015-03-09 | 2016-09-15 | 엘지전자 주식회사 | 무선 통신 시스템에서 멀티 채널을 이용하여 데이터를 전송하는 방법 및 장치 |
US10129813B2 (en) * | 2015-03-11 | 2018-11-13 | Cisco Technology, Inc. | Minimizing link layer discovery based on advertising access technology parameters in a multimode mesh network |
US10277686B2 (en) * | 2015-07-29 | 2019-04-30 | Cisco Technology, Inc. | Service discovery optimization in a network based on bloom filter |
JP6548539B2 (ja) | 2015-09-24 | 2019-07-24 | キヤノン株式会社 | 無線通信装置、無線通信方法、およびプログラム |
US10210195B2 (en) * | 2016-02-12 | 2019-02-19 | International Business Machines Corporation | Locating data in a set with a single index using multiple property values |
JP6805816B2 (ja) * | 2016-12-27 | 2020-12-23 | 富士通株式会社 | 情報処理装置、情報処理システム、情報処理方法及びプログラム |
US20190007903A1 (en) * | 2017-06-28 | 2019-01-03 | Qualcomm Incorporated | Coordinated neighbor aware network (nan) role assignment |
US10999780B2 (en) * | 2017-11-15 | 2021-05-04 | Apple Inc. | Bluetooth trigger for NAN |
KR102501760B1 (ko) * | 2018-04-23 | 2023-02-21 | 삼성전자주식회사 | 복수의 주파수 대역에서 신호를 전송하기 위한 장치 및 방법 |
US11147126B2 (en) | 2018-05-15 | 2021-10-12 | Apple Inc. | Neighbor awareness networking discovery window congestion mitigation |
CN108718401B (zh) * | 2018-08-09 | 2020-09-01 | Oppo广东移动通信有限公司 | 视频会议实现方法及相关装置 |
CN109271408B (zh) * | 2018-08-31 | 2020-07-28 | 阿里巴巴集团控股有限公司 | 一种分布式数据连接处理方法、装置、设备及存储介质 |
WO2020082034A1 (en) * | 2018-10-18 | 2020-04-23 | Tektronix Communications | System and method for space and time efficient probe search analytics |
US11595971B1 (en) | 2019-05-28 | 2023-02-28 | Marvell Asia Pte Ltd | Quieting a wireless local area network |
KR20210039643A (ko) | 2019-10-02 | 2021-04-12 | 삼성전자주식회사 | 전자 장치 및 전자 장치에서의 서비스 디스커버리 수행 방법 |
CN113381874B (zh) * | 2020-03-10 | 2023-06-02 | 上海杰之能软件科技有限公司 | 一种故障信号处理方法、存储介质及终端 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080002599A1 (en) * | 2004-08-09 | 2008-01-03 | Johnny Yau | Method and Apparatus for Ad Hoc Mesh Routing |
CN101731015A (zh) * | 2007-07-10 | 2010-06-09 | 高通股份有限公司 | 在对等网络中的对等设备发现中传送标识符的编码方法 |
CN101785331A (zh) * | 2007-07-11 | 2010-07-21 | 高通股份有限公司 | 对等的多个标识符 |
WO2012045240A1 (en) * | 2010-10-04 | 2012-04-12 | Huawei Technologies Co., Ltd. | Content router forwarding plane architecture |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030026268A1 (en) * | 2000-11-28 | 2003-02-06 | Siemens Technology-To-Business Center, Llc | Characteristic routing |
US7054867B2 (en) * | 2001-09-18 | 2006-05-30 | Skyris Networks, Inc. | Systems, methods and programming for routing and indexing globally addressable objects and associated business models |
US8040836B2 (en) * | 2006-05-26 | 2011-10-18 | Microsoft Corporation | Local network coding for wireless networks |
US8406132B2 (en) * | 2008-05-30 | 2013-03-26 | Alcatel Lucent | Estimating cardinality distributions in network traffic |
WO2011026604A1 (en) * | 2009-09-01 | 2011-03-10 | Nec Europe Ltd. | Method for monitoring a network and network including a monitoring functionality |
US8134934B2 (en) | 2009-09-21 | 2012-03-13 | Alcatel Lucent | Tracking network-data flows |
EP2636233A4 (en) * | 2010-11-05 | 2017-06-14 | Nokia Technologies Oy | Method and apparatus for providing efficient management of certificate revocation |
US8880880B2 (en) | 2011-07-29 | 2014-11-04 | Qualcomm Incorporated | Facilitating access control in peer-to-peer overlay networks |
US8472983B1 (en) | 2011-12-07 | 2013-06-25 | Cisco Technology, Inc. | Selective location-aware paging |
US20140032714A1 (en) * | 2012-07-27 | 2014-01-30 | Interdigital Patent Holdings, Inc. | Method and apparatus for publishing location information for a content object |
US9071533B2 (en) * | 2012-07-31 | 2015-06-30 | Cisco Technology, Inc. | Multicast group assignment using probabilistic approximations |
-
2014
- 2014-01-22 US US14/161,556 patent/US9226231B2/en active Active
- 2014-01-23 KR KR1020157023203A patent/KR101660471B1/ko active IP Right Grant
- 2014-01-23 WO PCT/US2014/012803 patent/WO2014120557A1/en active Application Filing
- 2014-01-23 HU HUE14704238A patent/HUE045516T2/hu unknown
- 2014-01-23 JP JP2015555281A patent/JP6026675B2/ja active Active
- 2014-01-23 CN CN201480006385.0A patent/CN104956701B/zh active Active
- 2014-01-23 ES ES14704238T patent/ES2763649T3/es active Active
- 2014-01-23 EP EP14704238.6A patent/EP2952025B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080002599A1 (en) * | 2004-08-09 | 2008-01-03 | Johnny Yau | Method and Apparatus for Ad Hoc Mesh Routing |
CN101731015A (zh) * | 2007-07-10 | 2010-06-09 | 高通股份有限公司 | 在对等网络中的对等设备发现中传送标识符的编码方法 |
CN101785331A (zh) * | 2007-07-11 | 2010-07-21 | 高通股份有限公司 | 对等的多个标识符 |
WO2012045240A1 (en) * | 2010-10-04 | 2012-04-12 | Huawei Technologies Co., Ltd. | Content router forwarding plane architecture |
Non-Patent Citations (1)
Title |
---|
MINGZE ZHANG ET AL.: "Connectivity Monitoring in Wireless Sensor Networks", 《MASS 2008. 5TH IEEE INTERNATIONAL CONFERENCE ON MOBILE AD HOC AND SENSOR SYSTEMS》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106647397A (zh) * | 2016-12-22 | 2017-05-10 | 北京金风科创风电设备有限公司 | 风电场联网设备列表的获取方法及装置 |
CN106647397B (zh) * | 2016-12-22 | 2019-09-10 | 北京金风科创风电设备有限公司 | 风电场联网设备列表的获取方法及装置 |
CN113556692A (zh) * | 2020-04-24 | 2021-10-26 | 北京小米移动软件有限公司 | 网络设备探测方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
US9226231B2 (en) | 2015-12-29 |
KR101660471B1 (ko) | 2016-09-27 |
KR20150111994A (ko) | 2015-10-06 |
JP6026675B2 (ja) | 2016-11-16 |
EP2952025A1 (en) | 2015-12-09 |
WO2014120557A1 (en) | 2014-08-07 |
US20140211659A1 (en) | 2014-07-31 |
JP2016506215A (ja) | 2016-02-25 |
EP2952025B1 (en) | 2019-09-25 |
CN104956701B (zh) | 2020-01-21 |
ES2763649T3 (es) | 2020-05-29 |
HUE045516T2 (hu) | 2019-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104956701A (zh) | 监视无线网络的大小 | |
JP6363256B2 (ja) | ワイヤレスネットワーク上の改善された通信のためのシステムおよび方法 | |
CN104919884A (zh) | 用于为每个通信会话选择介质接入参数的系统和方法 | |
US9544811B2 (en) | Systems and methods for beacon timing adjustment in wireless networks | |
CN104938019A (zh) | 用于修改密集网络的载波侦听多址(csma)的系统和方法 | |
CN105684540A (zh) | 用于高效无线网络中的改进的通信效率的系统和方法 | |
CN104115470A (zh) | 用于传送和接收发现和寻呼消息的系统和方法 | |
US11357042B2 (en) | Apparatus and method for flexible operational structures for UWB devices | |
CN105493571A (zh) | 用于从接入点向无线设备提供邻居报告信息的方法、接入点和无线设备 | |
CN103609058A (zh) | 用于千兆赫以下频带中的无线通信的范围扩展的系统和方法 | |
CN105557053A (zh) | 用于无线网络上改进的通信的系统和方法 | |
CN105684339A (zh) | 增强型子信道选择性传输规程 | |
CN103858491A (zh) | 用于低功率介质访问的系统和方法 | |
CN105103587A (zh) | 用于功率高效地发现网络上的基础设施服务的系统和方法 | |
CN104904276A (zh) | 用于使用受限接入窗口来节约功率的系统和方法 | |
CN105493601A (zh) | 用于高效无线网络中的改善的通信效率的系统和方法 | |
CN104854950A (zh) | 用于无线消息中的延迟指示的系统和方法 | |
CN105706503A (zh) | 用于无线网络中的接入点功率管理信令的系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |