用于操作分布式通信网络的技术的制作方法

文档序号:11291535阅读:226来源:国知局
用于操作分布式通信网络的技术的制造方法与工艺

相关申请的交叉引用

本专利文献要求2014年12月14日提交的美国临时专利申请号为62/091,611的优先权利益。前述专利申请的全部内容通过引用作为本文件的公开内容的一部分并入。

背景

现今的许多应用需要大量的传感器进行物理测量或者由大量机器人进行协调操作。这种应用的示例包括危险地点的灾害发生(disasterrelease)、大的偏远地区的环境监测、跨越距离的医疗监督以及许多其他应用。这些应用的通信网络可以分布在大的地理区域或大量的节点或两者上。

概述

本公开中提出了用于层次传感器网络的方法和系统。层次网络架构可被用于在大面积上组织大型传感器或机器人网络,同时保持低功耗和分布式控制。

在一个示例方面,公开了传感器网络。该系统包括提议者节点,其是能够收集和处理传感信息并与网络中的其他节点进行通信的传感器节点。该系统包括作为传感器节点的一组代理接受者节点。每个代理接受者节点和提议者节点通过第一拓扑可通信地连接。该系统包括作为传感器节点的一组集群提议者节点。代理接受者连接到相关联的集群提议者或者也是相关联的集群提议者,每个集群提议者具有其集群接受者组,并且每个集群提议者及其集群接受者组通过单独拓扑连接。

在另一示例方面,公开了由传感器节点执行的方法。该方法包括:激活传感器网络中的传感器节点;向其他连接的传感器节点发送指示传感器节点的功率电平的消息;从其它连接的传感器节点接收指示其他连接的传感器节点的功率电平的消息;以及确定传感器节点用作提议者以形成集群,发起一致性协议,并达成一致性,或者确定传感器节点用作接受者以成为等待来自提议者的一致性形成协议消息的集群的一部分。

在又一个示例方面,公开了一种通信网络。该网络包括多个成员通信节点的上层集群和多个下层集群,每个下层集群包括一个或更多个成员节点。上层集群中的每个节点与多个下层集群中的不同下层集群中的节点可通信地耦合。每个集群都是基于其成员节点进行的投票形成的。集群是与同一集群的其他成员节点传输应用层数据的节点逻辑组。

在另一个示例方面,公开了一种在多个通信节点的分布式网络中操作通信节点的方法,在该分布式网络中通信节点在逻辑上被组织在上层集群和多个下层集群中,使得来自下层集群中的每个的一个节点可通信地耦合到来自上层集群的不同的节点。该方法包括:与第一组通信节点进行通信以形成上层集群;与不在第一组节点中的下层通信节点进行通信,以建立与该下层通信节点是其成员的下层集群的通信耦合;以及促进上层集群和下层集群之间的消息通信。

这些和其他特征在本文件和附录a中进一步描述,附录a形成本说明书的一部分。

附图简述

图1示出了具有上层集群和多个下层集群的传感器网络的示例层次网络架构。

图2a-2b示出了形成传感器网络的层次网络架构的示例性传感器网络。

图3-7示出了paxos一致性协议在平面(flat)分布式网络中如何工作的示例。其中,图3示出了分布式网络中的示例性paxos一致性协议的参与者,图4示出了在paxos协议的两个阶段中执行的示例性步骤,图5示出了paxos协议在传感器网络中的应用,图6示出了paxos协议的示例性状态模型,以及图7示出了paxos协议的示例性协议序列。

图8示出了在n个节点的传感器网络中形成多数的示例性概率。

图9a-9b示出了形成传感器网络的层次网络架构的示例性传感器网络,其中应用了修改的paxos一致性协议。

图10-11示出了修改的paxos一致性协议在层次传感器网络中如何工作。其中,图10示出了层次网络中修改的paxos一致性协议的示例性序列操作,图11示出了分层层次化网络中的条件。

图12示出了形成层次网络的示例方法。

图13示出了在分布式网络中操作上层通信节点的示例方法。

图14示出了在分布式网络中操作下层通信节点的示例方法。

在整个说明书和附图中,相同的参考符号表示相同的元件。

详细描述

在诸如传感器网络或其中部署了大量通信节点的其他应用的应用中,可能希望能够部署节点并维持进行中的操作,而不必主动管理诸如节点功率管理和组管理的网络操作。传感器的网络就是这样一个示例。这种网络中的通信节点可以执行通信操作,例如信号发射和/或接收,并且还执行感测操作,其中节点感测诸如温度、湿度、空气压力、无线电活动、光强度等等的物理属性。对于这种传感器网络,每个网络节点应该能够进行自主动作,例如收集和处理传感信息并与网络中的其他节点进行通信。网络节点需要简单的节点设备、低功耗、维护却很简单、易于以灵活的拓扑结构部署,以及无需严格的延迟预算。

许多物联网(iot)应用未来将需要在具有多达数百或甚至数百万个节点的大型自主网络中进行传感器测量或机器人操作。例如,仅举几个示例,在危险地点的灾害发生、对无法进入的区域的环境监测、远程医疗监督。这样的应用需要在扩展的地理区域上的大量节点的通信网络。网络应能够自主运行,并保持跨节点的动作的一致性。鉴于部署的性质和环境,预期硬件以及软件在所有节点上都是相同的,使得可能以低成本进行无需维护的操作。这种网络被称为大型传感器网络(lsn),且其部署通常涉及未知的随机节点位置,并且被设计用于延迟容忍服务。为了满足这些要求,分布式网络协议是必要的,因为在分布式网络中,每个节点相当于所有其他节点,并且没有内置的永久性集中控制功能。具体来说,从外部被看作实体的分布式网络是自主的。这种网络对于节点故障是鲁棒的,并且对网络拓扑的变化是自适应的。通过基于相同节点设计的分布式联网(networking)来实现分布式网络的容错。自适应性是通过基本的一致性协议来实现的。分布式联网有潜力避免复杂的收发器硬件和系统控制软件,且因此可以降低功耗和操作维护,并最终降低总的系统成本。

网络架构描述了组织多个网络节点的方式,而通信技术提供网络节点之间的通信方式。当前的网络架构和通信技术可以包括例如wi-fi别名ieee802.11g、蓝牙别名ieee802.15.1、zigbee别名ieee802.15.4或用于毫米波的ieee802.11ad以及许多其他的。所有这些技术都是为短距离通信而设计的,在其之上可以实现特定于应用的网络协议。通常情况下,标准技术可能包含给定应用不需要的功能,而缺少特定于应用的功能。

传感器网络的当前研究主要集中在较低的osi层和小型网络上,其中建立网络只需要节点之间的主从关系。这种联网原理适用于授权频带上的无线网络(例如3gpp和3gpp2)以及非授权频带上的自组织网络(例如ieee802)。对于lsn,这些技术遇到可扩展性问题,因为这些技术依赖于集中式联网,其中有不同的节点用作主节点或基站,且这些节点在网络设置之前是已知的。然而,在lsn应用中,节点位置在部署之前是未知的,并且即使当几乎一半的节点出现故障,也会自主地建立网络。为了实现这一点,分布式网络中的硬件和软件将必须具有相同的能力,使得每个节点可以替换任何其他节点以提供所需的服务。因此,虽然目前的技术在小型网络中表现出完全可接受的性能,但现今对于lsn预期的分布式操作,没有可用的概念。此外,这些现有技术在诸如危险地点的灾害发生、大的偏远地区的环境监测、跨越距离的医疗监督等的应用中使用的大型传感器网络的能量消耗以及运行可靠性方面引起问题。

为了寻求可满足lsn的操作要求的网络协议,谷歌和亚马逊近期在大规模数据中心网络中成功部署了paxos是值得一提的。paxos允许网络中的所有节点共享相同的信息,并且每个节点在其功能上可以替换任何其他节点。在30年前提出的paxos已经被研究了20多年,但主要是在应用于计算机网络的可行性方面。由于对信息产业的越来越大的兴趣,近年来出现了更多关于其实现的讨论。然而,性能研究目前还是未知的,部分原因是实现复杂,且性能取决于软件实现。即使在几个已知的部署中,涉及的节点数量大约为两位数,这远低于lsn应用预期的数量。在这种背景下更重要的是信道:数据中心网络基于由高质量光传输设施组成的可靠的通信信道,其中可靠性超过零后的小数点后的六个九。因此,那里的协议几乎与通信信道的质量无关。到目前为止,对于利用不可靠信道的大量节点的应用是未知的,并因此鉴于其可行性,值得进行理论研究。

借助于现今的分布式网络和传感器网络技术,本文件中描述的技术可被用于克服这些操作限制和其他限制。

图1示出了具有上层集群101和多个下层集群103、105、107、109的传感器网络100的示例性层次网络架构。传感器网络100还可以包含连接在云中的传感器节点111的集群。每个集群101、103、105、107、109包含多个传感器节点。诸如传感器节点113、传感器节点115和传感器节点117的每个传感器节点应当能够自主动作、简单的节点设备、低功耗、维护却很简单、易于以灵活的拓扑结构部署,并且没有严格的延迟预算。然而,诸如传感器节点113、传感器节点115和传感器节点117的不同传感器节点可以在不同时间具有不同的功率电平。

图2a示出了示例性平面传感器网络200。传感器网络200包含放置在各种位置的许多不同的传感器节点。根据应用,传感器节点的数量可大约为数百、数千或甚至数百万。对于具有大量传感器节点的传感器网络,不同传感器节点之间的通信可能是困难的,并且集中式架构可能难以实现和维护。

图2b示出了为传感器网络形成的示例性层次网络250,其具有上层集群251和多个下层集群253、255、257和259。每个集群253、255、257和259包含多个传感器节点。上层集群251包含全部连接在一起的5个节点,它们以传感器节点261为中心完全连接。诸如集群251的节点集群在结构上连接在一起或逻辑上连接在一起。节点可以属于多于一个集群。例如,节点263属于上集群251以及下集群259。另一方面,节点261仅属于上层集群251。集群251中的节点的连接仅用于说明目的,而不是限制。其他形式的连接是可能的。节点和节点之间的连接共同形成拓扑。

对于上层集群251中的每个节点,它被连接到下层集群中的节点。例如,节点263被连接到下层集群259中的节点。节点265、节点267和节点269各自分别被连接到集群257、集群255和集群253中的节点。该示例仅示出两层层次结构。根据传感器节点的数量和应用,可以形成两层以上的层次结构。

传感器网络250是分布式传感器网络的示例,其中不需要中央控制。这样的网络可以在没有永久性集线器的情况下运行,同时仍然保持一致的操作,对于局外人来说看起来像单个节点。分布式计算的一个问题是在多个故障过程的存在下实现整体的系统可靠性。这通常要求过程对在计算期间需要的一些数据值上达成一致。一致性的应用的示例包括是否将事务提交到数据库、同意领导者的身份、状态机复制和原子广播。paxos协议是用于在分布式网络中实现一致性的一种协议。然而,对于分布式层次网络250,paxos协议将不适用。因此,对于分布式层次网络250需要新的一致性协议。

图3-7示出了paxos一致性协议在平面分布式网络中如何工作。其中,图3示出了分布式网络中的示例性paxos一致性协议的参与者,图4示出了在paxos协议的两个阶段中执行的示例性步骤,图5示出了paxos协议在传感器网络中的应用,图6示出了paxos协议的示例性状态模型,以及图7示出了paxos协议的示例性协议序列。

paxos是实现异步分布式计算机和处理器的一致性的协议。在那里,中心任务是以一致的方式将创造为(coinedas)“投票值”的状态信息填充到网络中的所有节点。当网络中的所有参与节点都同意相同的投票值时,达成一致性。当超过一半的节点响应征求的投票并且响应被投票发起者接收时,这是可能实现的。

如图3所示,在paxos中,每个网络节点可以扮演三个角色:提议者、接受者和学习者。提议者发出请求并收集响应;接受者通过以其自己的状态更新提议者来确认接收请求。当提议者看到接受者之间的一致性时,它会将消息发送给所有学习者,并从而关闭实例。可以通过使用以下术语来描述这些角色的交互:

1.法定数量(quorum):当提议者接收到大多数接受者的响应答复时,法定数量存在。因此,具有2f+1个节点的网络上的paxos可以容忍最大f个故障节点。当在协议的所有阶段中法定数量存在于投票时,就说在这次投票中达成一致性。

2.选举:当在一定次数的反复尝试之后没有出现法定数量时,称为选举的过程将开始,其由在接受者处实施的定时器触发。选举是争用解决过程,并将以一个节点作为新的提议者出现结束。

3.客户端:每次投票的内容(即其值)来自可以与提议者进行通信的客户端。客户端通过向提议者发送请求来启动paxos实例,它接收作为实例的关闭的通过的投票以及其他服务数据(如果适用)。

4.故障:节点故障是造成硬件缺陷以及通信信道的变化的原因。有两种类型的故障:故障停止和拜占庭(byzantine)。当节点发生故障并且稍后恢复时发生故障停止故障,而当涉及到恶意动作时,发生拜占庭故障。该专利文件仅考虑故障停止故障,将拜占庭留给安全架构。

图4示出了在paxos协议的两个阶段中执行的示例性步骤。在阶段1中,提议者发出准备消息,而接受者发出承诺消息。在阶段2中,当在提议者处满足法定数量时,提议者发送接受消息,同时接受者发出确认消息。

图5示出了paxos协议在传感器网络中的应用,其中存在一个提议者,且所有其他节点都是接受者和学习者。对于这样的网络架构,提议者必须与所有其他节点进行通信,使其成为通信的瓶颈,其中延迟增加且可靠性降低。由提议者进行的大量计算和通信可更快地消耗其功率。

图6示出了paxos协议的示例性状态模型。状态模型包括状态、阶段1、阶段2、成功3和故障4。连接状态的每个弧上的数字(诸如p21、p12、p14、p23和p24)是从一个状态到另一个状态的概率。这种状态模型可被用于传感器网络操作的马尔可夫链模拟。

图7示出了paxos协议的示例性协议序列。如图7所示,一个提议者必须与所有其他接受者节点进行通信。在从客户端接收到服务请求时,提议者启动称为投票的协议实例,其在可达成一致性之前经过以下步骤:

1.阶段1a:准备消息由提议者发送给所有接受者,其中消息包含投票数。

2.阶段1b:在接收到准备消息时,每个接受者将接收到的投票数与迄今为止其接受的最高投票数进行比较。如果最高投票数比接收到的投票大,则接受者发回最高投票数。否则接受者保留投票并发回承诺。

3.阶段2a:当接收到法定数量的响应时,适当的检查已经接受的投票是否在响应中。当在给定时间内出现法定数量的响应接受者时,提议者向所有学习者传递投票。否则,必须通过以更新的投票数重新启动阶段1a或阶段2a来重复该过程。

4.阶段2b:在接收到完整的投票时,接受者将其与自己接受或承诺的最高数量的投票记录进行比较。接受者然后决定向提议者发送确认、拒绝,或者如果它已经承诺了相同或更大数量的投票,则会跳过。如果在指定的等待时间到期之前没有接收到接受消息,则接受者可以开始选举以产生新的提议者。

应用于分布式计算机网络的一致性协议被设计为应对由处理器引起的节点故障,而分布式lsn遇到由处理器和通信信道两者引起的节点故障。鉴于无线电信道经受比通常以给定的平均故障时间为特征的处理器的倾向要大得多的幅度的变化,一致性协议对无线信道的应用不仅仅面临额外的故障源,而且由于相当快的时变不可靠的信道的复杂性而面临全新的挑战。当一起观察两个故障源时,信道的重要性超过处理器,使得信道的变化是lsn中的主要关注点。因此,在谈论节点故障时,信道质量是主要的焦点。根据软件开发商的讨论,paxos由于难以实现而臭名昭著。这妨碍通过使用实现的协议的模拟进行的网络性能研究,并且证明基于分析手段的研究是合理的。应用于lsn的paxos在至少三个方面上受到可扩展性问题:

1.容量:为了使lsn中的每个节点具有相同的能力,有必要的是,无论发射节点在哪里,接收的功率密度都是相同的。通过用于多接入信道的awgn假设,m个用户的最大数据速率上限为:

其中ri是第i个节点的数据速率,c(x)=0.5ln(1+x)为awgn信道的香农容量函数,w是接收的信号的功率密度,以及n是噪声功率密度。由于节点在提供相同服务的能力上是相同的,所以对于i=0,1,…m,ri=r。从而

由于lsn的节点密度是有限的,所以大的m意味着lsn内的一些节点之间的距离很大。然而,上述不等式意味着所需的接收功率将比当m→∞时的m更快地增加,以保持相同的通信能力。因此,分布式lsn的能力受功率限制。对于信道的时间正交使用,此限制转化为与节点的数量成正比的延迟下限。通过码分正交信道,这种限制在禁止的远近效应中表现自己。

2.复杂性:由于技术或规定,另一个限制是由适用的频谱造成,这使得不可能通过增加频带来解决容量问题。诸如高级信道码、干扰消除、多输入多输出技术或相控阵天线的更有效的算法只能部分帮助。此外,它们受到lsn的低成本要求的限制,因为高级算法和有效的收发器除了功耗之外还将增加复杂性和成本。

3.功耗:为了满足每个节点能够彼此通信的要求,设计应确保用于lsn内任意两个节点之间的无线电连接的足够的发射功率。信号功率衰减的模型在无线技术中是众所周知的(steeleed.,1992)。在这方面,lsn中的信道只能更糟,因为与当前无线网络不同,节点可以被散射和吸收电磁能的物体分开。对于一般的研究,

其中wt是发射功率,r是发射机和接收机之间的距离,其中衰减指数β≥2和vr是说明传播环境的变化的随机变量。那么理想地,预期的发射功率应该通过以下等式适应距离

wt(r)=wrrβ+vt(4)

其中随机变量vt为零均值,其说明了硬件限制的变化,并且wr为预期的最小接收功率。然而,对于lsn,由于复杂性和成本考虑,建议将发射机的功率调整能力限制在最小限度。因此,等式(4)仅用作要使用的功率电平的参考。由于e{wt}=wrrβ取决于发射机放大器,其中e指的是统计期望值,其上限为硬件强加的最大值,即e{wt}<wmax。因此,lsn的最大空间维度由以下界定

d<(wmax/wr)1/β(5)

此外,低成本要求将进一步缩小d的大小。这证明是将paxos应用于lsn的主要制约因素。

图8示出了针对节点数量m的各种值的在m个节点的传感器网络中形成多数的概率之间的关系的示例,其中p是故障事件的概率。

信道对paxos性能的影响通过法定数量表现出来。节点的特征在于其状态,其可以在每轮被测量,其中一轮是接受者和提议者之间的往返时间。因此,一轮也可以指由提议者发送消息并由接受者确认或未确认的事件。这个事件的结果是节点状态,且它具有两个值:故障或非故障。对于所有节点,假定状态的独立同分布(iid)。通过这个假设,研究是基于概率空间其中ω是故障事件集,是关于ω的相关联的代数以及p:概率度量。然后,p=p(a)∈[0,1]是故障事件的概率,并且恰好k个节点有故障的事件呈现(flow)二项分布

其中当超过m/2个接受者已经响应并接收到响应时,会出现法定数量。因此,对于m个相互独立的节点,其概率是

即小于m/2个节点出故障的概率。映射

其中q(0,m)=1和q(1,m)=0在图8中示出,其中观察到q(p,m)随着p减小并且随着m增加。对于大的m,法定数量的概率保持接近小p的单位。对于p,其达到大约0.5的值,而不管n,强调了对信道质量的显著依赖性。可扩展性问题对于以低成本为所有节点维持相等的信道质量带来了困难。

图9a和图9b示出了形成传感器网络的层次网络架构的示例性传感器网络,其中应用了修改的paxos一致性协议。如图9a所示,多个传感器节点形成与图2a所示的相同的平面传感器网络。然而,图9b示出了具有多于一个提议者的层次传感器网络。多个提议者可以减少如图5或图7所示的单一提议者的通信负担。

图10-11示出了修改的paxos一致性协议在层次传感器网络中如何工作。

图10示出了层次网络中修改的paxos一致性协议的示例性序列操作。在从客户端接收到服务请求时,提议者启动以下步骤:

1.阶段1a:上层的提议者u0向代理接受者发出准备。同时,它设置定时器或计数器。

2.阶段1b:代理接受者将准备消息转发到相关联的集群提议者。集群提议者将准备发送给集群接受者。集群提议者同时也设置定时器或计数器。

3.阶段1c:集群接受者以承诺或拒绝响应集群提议者,并启动另一个定时器。

4.阶段1d:集群提议者在存在法定数量时将消息中继回到代理接受者。如果定时器在没有法定数量的情况下到期,则集群提议者重复阶段1b。集群提议者可以在预定次数内未能达到法定数量之后辞去集群提议者。

5.阶段1e:代理接受者将集群响应转发给上层提议者u0。如果代理接受者在其定时器到期之前没有接收到该消息,它启动选举。

6.阶段2a:在阶段1中存在法定数量时,提议者u0向所有代理接受者发出具有完整的投票信息的接受消息。如果不存在法定数量,则以更新的投票数重复阶段1a。提议者可以在预定次数内未能达到法定数量之后辞去提议者。

7.阶段2b:代理接受者将接受消息中继到其相关联的集群提议者。集群提议者将接受消息转发给集群接受者。集群提议者还启动另一个定时器。

8.阶段2c:如果投票数匹配,集群接受者用确认消息响应接受。

9.阶段2d:集群提议者在存在法定数量时将确认转发给代理接受者。当在定时器到期之前不存在法定数量时,集群提议者重复阶段2b。集群提议者可以在预定次数内未能达到法定数量之后辞去集群提议者。

10.阶段2e:代理接受者将集群法定数量转发给提议者u0。在上层处存在时,提供者u0向包括代理接受者的所有学习者发送传送消息。当在定时器到期之前上层处不存在法定数量时,提议者u0重复阶段2a。

图11示出了分层层次化网络中的条件。它示出了诸如图9b中所示的传感器网络的层次传感器网络中的操作状态。层次传感器网络可以处于阶段1(0)的状态,该阶段是第一阶段的上层通信,或者在阶段1(i),它是下层集群的第一阶段的下层通信。类似地,状态阶段2(0)和阶段2(i)是用于在上层或下层的阶段2的通信。状态转变1(i)和转变2(i)是在网络处于下层集群通信时的状态。网络还包含成功状态、故障状态和空闲状态。连接状态的弧上的数字是从一个状态到另一个状态的概率。

两层网络总共由m个节点组成,其被平均分为s个集群。每个集群是m/s个节点的子网络。那么集群(子网络)的法定数量的概率由以下等式计算出来的

ql(p,s,m):=q(p,m/s)(9)

其中下标“l”表示下层。当且仅当集群中有法定数量时,一致性协议才能发展。一致性是通过上层法定数量的概率来衡量的

qu(p,s,m):=q(q,s)(10)

其中集群故障概率为

q=1-ql(p,s,m)(11)

其中下标“u”表示上层。这个定义表明了以下事实:集群的行为像关于在它上面的网络的接受者,且上层将q视为代理接受者的故障概率。

函数qu(p,s,m)对于固定s和m随着增加的p而减小,并且对于固定m和p随着增加的s而减小。为了比较一层架构的性能与两层架构的性能,观察到相同节点的相应架构的法定数量的概率的差。

q(p,m)-qu(p,s,m)=ql(p,l,m)-qu(p,s,m)(12)

两层架构对中到小的信道故障概率p的法定数量概率不造成改变。对于大的s和p,出现法定数量概率的微微下降。本示例中p的所选定的范围用作研究的唯一目的;现实中节点故障概率应在小范围内。

在一些实施例中,由传感器节点执行的方法可以包括:激活传感器网络中的传感器节点;向其他连接的传感器节点发送指示传感器节点的功率电平的消息;从其它连接的传感器节点接收指示其他连接的传感器节点的功率电平的消息;以及确定传感器节点用作提议者以形成集群,发起一致性协议,并达成一致性,或者确定传感器节点用作接受者以成为等待来自提议者的一致性形成协议消息的集群的一部分。在一些实施例中,确定操作包括比较所有从其他连接的传感器节点接收到的指示其他连接的传感器节点的功率电平的消息。例如,在一些实施例中,对网络或集群(例如,子网络)中的提议者的确定是具有一定修改的诸如aloha、csma等的争用解决协议的结果。任何节点都可以成为提议者:在某些情况下,为了打破平局(tie),甚至可以使用ip地址来确定选择的节点。在这个意义上,它也是争用解决协议的随机结果。每个节点可以基于接收质量来维护来自所有节点或前几个节点的接收质量的列表。该列表通过从每个节点以及用于高功率和低功率的上行链路和下行链路的接收来确定。一对多的关系由诸如修改的稳定婚姻算法之类的算法确定。

分布式网络中的每个节点可能够使用高功率电平或低功率电平。根据与上层网络或下层网络的关联,节点实际上可能使用高发射功率或低发射功率模式。例如,上层网络通常使用高发射功率,而下层网络使用低发射功率。

由于节点位置是根据需求而随机的,所以假定它具有空间分布g(r,θ),其中(r,θ)是平面上位置的极坐标。因此,区域a的平面lsn所需的平均功率由下式决定

∫awt(r)g(r,θ)rdrdθ.(13)

假设均匀的空间分布,其将g(r,θ)减少到常数g0∈(0,1)。进一步假设lsn由直径为d的圆盘组成,则平均发射功率预期为

其中右手边的剩余积分是

对于整数n与i0=π/2和i1=1。(单层)网络的总平均发射功率为m·e{wt|d}。

现在,由于m个节点在平面上均匀分布,并且相同的区域被分成s个更小的相等的单元,所以节点被分成s个相等的子群体,每个子群体属于直径为的更小的单元。预期在这样更小的单元中的节点所需的发射功率是

作为分区的结果,集群内的节点具有比不同集群中的节点短的相互距离。下层中(即集群内)的通信在集群之间与上层相比需要较少的功率。根据对简单节点设备的要求,假设每个节点的发射功率的两个电平:高和低。这是两层网络可具有的最小数量的功率电平。由于每个集群具有m/s个节点,其中只有一个用作集群提议者,即代理接受者,所以有s个代理接受者使用高功率电平,而所有其他节点都使用低功率电平。两层网络的总平均发射功率为

两种架构的发射功率的比率是

显然,分区需要s是整数,且甚至除以m。然而,目前一些实施例将f(x,m,β)作为连续变量x∈[1,m]的函数,以针对x∈[1,m]找到第二推导

从而,f(x,·,·)是凸函数,并对于一些x∈(0,m)达到最小值。因此,边界值也是极值,并且对于所有非平凡值(non-trivial)s∈(1,m),等式(17)都小于1。因此,可以得出结论,对于所有非平凡分区,两层网络的预期总发射功率小于一层网络的预期总发射功率。发射功率的降低是否导致功耗的降低仍然取决于信道使用,并因此也与延迟有关。

大型传感器网络(lsn)的应用可能涉及平面网络(2d)或三维网络(3d),因此在一些实施例中,两层的发射功率的比率变为:

为了完成投票,paxos至少需要两次往返,一次用于阶段1,以及一次是用于阶段2。假设mac层可以处理多路访问,使得只要我们对延迟动态感兴趣,就可以通过常数来计算排队延迟,可将这个常数假定为零。然后,使用协议轮次数k来测量延迟。因此,一轮是具有往返的持续时间的时间单位。根据层次paxos,投票的最终法定数量的概率是

其中a是上层网络的法定数量事件,且是下层网络的集群i∈{1,2,...s}的法定数量事件。索引j指的是大小为s/2+1的随机子集,以及对于k=1,2,...,s/2+1,索引ik表示该子集的元素。确定这个概率并使用它来计算预期的延迟并不是不重要,即使是使用均匀分布的二进制信道。一些实施例选择基于上层网络和下层网络是独立的假设来给出延迟的估计。这个假设排除了两层之间的交互,从而在达到法定数量时消除了它们之间的潜在乒乓效应。因此,用这个假设做出的估计代表累积延迟的下限:

其中,τu和τl分别是上层和下层的延迟,其中i是集群的索引。对于节点故障的相同分布,证明延迟的期望值在所有集群中都是常数,其是最大值本身。由于应用于故障概率的几何分布产生以轮次k测量的延迟,并且完成每次投票至少需要两轮,所以投票的延迟下限可被估计为

其中qu和ql分别是如由等式(10)和(9)定义的上层法定数量概率和下层法定数量概率。因此,当m个节点的网络被分割成s个集群时,预期的延迟下限是

对于s>1直到常数因子,以及对于s=1,我们简单地具有t(p,1,m)=q-2(p,m)。很容易看出,t(p,s,m)对于固定s和m随着p增加,因为ql(p,s,m)和qu(p,s,m)均随着p减小。对s>1,作为第一个近似,可以通过两个不同架构中的最小延迟之间的差异除以平面架构的最小延迟来量化延迟变化。这就是

h(p,s,m)随着p和s的增加而增加,其中函数e-h(p,s,m)被绘制并具有(0,1)的范围。到指数函数的映射有助于可视化趋势。明显地,两层架构引入延迟,因为对于s>1,h(p,s,m)>0,或等效地e-h(p,s,m)<1。

使用优化的对预期集群大小的先验确定将有助于每个节点设置列表长度,从而促进集群形成。优化的集群网络的设计可以利用发射功率的比以及两层的延迟变化。

在一些实施例中,可以使用权重参数α来偏向设计偏好,使得

f(p,s,m,α,β)=α·f(s,β)+(1-α)·e-h(p,s,m)(25)

该设计可以更喜欢发射功率降低的重要性,或更喜欢协议延迟降低的重要性。由于等式(25)相对于s是凸的,因此,对于某些s∈[1,m],它具有最小值,其可被用来如下地优化网络分区:

1.对于给定的m和β,基于商业目标和技术环境,从一些α值和节点质量p开始。

2.绘制作为函数s的曲线f(p,s,m,α,β),并找出s=s最小,使得对于所有的s∈(1,m),f(p,s最小,m,α,β)<f(p,s,α,β)。

3.找出最接近s最小并对于给定的网络拓扑是可行的1<s<m。可行性受到适用的空间包装(spatialpacking)或平面平铺(planartiling)法则或任何其他现实约束的支配。

在一些实施例中,传感器网络可以包括提议者,其是能够收集和处理传感信息并与传感网络中的其他节点进行通信的传感器节点;作为传感器节点的一组代理接受者,其中,该组代理接受者的每个节点和提议者通过第一拓扑通信地耦合;作为传感器节点的一组集群提议者,其中,每个代理接受者通信地耦合到对应的集群提议者;以及与每个集群提议者相对应的一组集群接受者,其中,每个集群提议者及其集群接受者的组通过单独拓扑连接。在一些实施例中,提议者和集群提议者和代理接受者具有比集群接受者更多的发射功率。在一些实施例中,第一拓扑和单独拓扑组表现出独立的预期延迟。在一些实施例中,如本文所述,基于发射功率降低和延迟降低来优化第一拓扑和单独拓扑组的形成。在一些实施例中,集群接受者在任何其他集群提议者和所述提议者中最接近其集群提议者。在一些实施例中,每个集群提议者具有类似数量的集群接受者。在一些实施例中,传感器节点在部署时被预编程为提议者,或被随机选择为提议者。在一些实施例中,可以使用处理器和存储用于处理器实现的指令的存储器来实现传感器节点中的每一个,例如,提议者、代理接受者、集群提议者、集群接受者等。传感器节点还可以包括用于与其他传感器节点进行无线通信的电路。每个传感器节点还可以包括诸如换能器的传感元件。

图12示出了形成层次网络的示例性方法1600。在1602,形成多个成员通信节点的上层集群。可以使用本文件中描述的多数一致性协议来形成集群。可选地,可以使用预定操作员设置、随机一致性协议、筏式(raft)一致性协议、chandra-toueg协议等来执行集群形成。在1604,形成多个下层集群。可以使用如本文件所述的一致性协议或另一方案来形成下层集群中的每一个,例如使用预编程的规则集合、随机一致性协议、筏式一致性协议、chandra-toueg协议等。

在1606,每个上层集群节点可以通信地耦合到来自下层集群的其中一个的一个节点。在一些实施例中,上层集群节点和相应的下层集群节点可以是一个和相同的节点。可选地,这些可以是两个不同的节点,其通过无线通信信道进行通信。

图13示出了操作上层集群节点的示例方法1700。方法1700包括:与第一组通信节点进行通信以形成上层集群(1702);与不在第一组节点中的下层通信节点进行通信,以建立与下层通信节点是其成员的下层集群的通信耦合(1704);以及促进上层集群和下层集群之间的消息通信(1706)。

图14示出了在多个传感器节点的分布式网络中操作下层集群节点的示例方法1800,其中通信节点在逻辑上被组织在上层集群和多个下层集群中,使得来自下层集群的每个的一个节点可通信地耦合到来自上层集群的不同的节点。方法1800包括:与第一组通信节点进行通信以形成下层集群(1802);与不在第一组节点中的上层通信节点进行通信,以建立与上层通信节点是其成员的上层集群的通信耦合(1804);以及促进上层集群和下层集群之间的消息通信(1806)。

方法1700和1800可以使用基于一致性的方法,以用于形成上层集群或下层集群。在方法1700和1800中,作为两个不同下层集群的成员的两个通信节点之间的通信对于在下层集群a中的节点a和下层集群b中的节点b可如下发生:下层集群a中的节点a可以与下层集群中的节点x传递消息,该节点x又可以与上层集群中的节点y进行通信,该节点y可以与上层集群中的节点z进行通信,该节点z可以与在节点b所在的下层集群中的节点w进行通信,且节点w可以与节点b进行通信。

在一些实施例中,上层集群节点中的一个可以被指定为用于由分布式网络中的所有节点与外部节点(例如,传感器网络的应用服务器)进行通信的代理节点。来自外部节点的消息可以由代理节点接收,代理节点然后可以将消息转发到上层节点,该上层节点可通信地耦合到来自消息的预期接收节点属于其的下层集群的下层节点。然后将消息转发到接收节点上。类似地,来自每个下层节点的消息可以穿过第一“网关”节点,该第一网关节点将来自下层集群的消息中继到上层集群,然后继续中继到上层集群中的代理节点,其然后将该消息中继到外部节点。在一些实施例中,一种用于在多个通信节点的分布式网络中操作的通信装置包括处理器和存储器,在该分布式网络中,通信节点在逻辑上被组织在上层集群和多个下层集群中,使得来自下层集群的每个的一个节点可通信地耦合到来自上层集群的不同的节点。存储器存储使通信装置实现一种方法的指令,通过该方法,通信装置与第一组通信节点进行通信以形成下层集群;与不在第一组节点中的上层通信节点进行通信,以建立与上层通信节点是其成员的上层集群的通信耦合;以及促进上层集群和下层集群之间的消息通信,如本文所述。在一些实施例中,用于形成上层集群的通信包括在节点之间建立一致性以形成上层集群。在一些实施例中,建立通信耦合的操作包括使用基于定时器的控制来完成建立。

将认识到,已经公开了用于操作通信节点的分布式网络的各种技术。节点可以包括例如收发器、处理器和存储器,存储器存储由处理器使用的程序代码和在操作期间使用的数据(例如,信号质量列表)。

还将理解,所公开的技术可被用于组织集群的多级层次结构中的通信节点的分布式网络,其中下层集群中的节点通过具有跨集群通信链路的单个节点与上层集群或其他下层集群中的节点进行通信。集群的形成可以基于诸如接收信号质量、节点的传输功率等的操作标准。

将进一步理解,所公开的技术可以有利地产生传感器网络,在该传感器网络中使用集群执行通信,从而节省诸如传输功率、传输带宽等的资源。

本文件中描述的公开的和其他实施例、模块和功能操作可在数字电子电路中或包括本文件中公开的结构及其结构等价物的计算机软件、固件或硬件中或者在它们中的一个或更多个的组合中实现。所公开的和其他实施例可被实现为一个或更多个计算机程序产品,即编译在计算机可读介质上以由数据处理装置执行或控制其的操作的计算机程序指令的一个或更多个模块。计算机可读介质可以是机器可读存储设备、机器可读存储衬底、存储器设备、实现机器可读传播信号的物质的组合物或它们中一个或更多个的组合。术语“数据处理装置”包含用于处理数据的所有装置、设备和机器,包括例如,可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或者它们中的一个或更多个的组合的代码。所传播的信号是人为产生的信号,例如,机器产生的电、光或电磁信号,其被产生以对信息进行编码,从而传输到合适的接收机装置。

计算机程序(又称为程序、软件、软件应用、脚本或代码)能够以任何形式的编程语言编写,编程语言包含编译或解释语言,且它能够以任何形式部署,包含部署为独立程序或为模块、组件、子例程或适合在计算环境中使用的其他单元。计算机程序未必对应文件系统中的文件。程序可在保存其他程序或数据(例如,存储在标记语言文件中的一个或更多个脚本)的文件的一部分中、在专用于所讨论的程序的单一文件中或多个协调文件(例如,存储一个或更多个模块、子程序或代码的部分的文件)中存储。计算机程序可被部署成在一个计算机或位于一个站点或分布于多个站点且由通信网络互连的多个计算机上执行。

本文件中所描述的过程和逻辑流程可由一个或更多个可编程处理器实施,该可编程处理器执行一个或更多个计算机程序,以便通过对输入数据进行操作和产生输出来执行功能。过程和逻辑流程也可被专用逻辑电路实施,且装置也可被实现为专用逻辑电路,例如,fpga(现场可编程门阵列)或asic(专用集成电路)。

适合执行计算机程序的处理器包含例如,通用和专用的微处理器和任何类型的数字计算机的任何一个或更多个处理器。通常,处理器将从只读存储器或随机存取存储器或以上两者接收指令和数据。计算机的关键元件是用于执行指令的处理器和用于存储指令和数据的一个或更多个存储器设备。通常,计算机还将包括用于存储数据的一个或更多个大容量存储设备(例如,磁盘、磁光盘或光盘)或可操作地耦合以从该一个或更多个大容量存储设备接收数据或向其传递数据。然而,计算机不需要这种设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如,半导体存储器设备,例如,eprom、eeprom和闪存设备;磁盘,例如,内部硬盘或可移动盘;磁光盘;以及cdrom和dvd-rom盘。处理器和存储器可被专用逻辑电路增补或合并到专用逻辑电路中。

虽然本专利文件包含很多具体说明,但这些不应该理解为是对要求保护的本发明的范围或可要求保护的内容的限制,而应该理解为是对特定于具体实施例的特征的描述。在单独的实施例的背景下,本文件中所描述的某些特征也可在单个实施例中来结合实施。相反地,也可以在多个实施例中单独地或以任何合适的子组合实现在单一实施例的背景下描述的各种特征。此外,尽管特征可在上文中被描述为作用在特定组合中并甚至起初如此要求保护,但是来自所要求保护的组合的一个或更多个特征可在一些情况下从组合中删除,且所要求保护的组合可针对子组合或子组合的变体。类似地,尽管附图中以特定顺序描绘了操作,但这不应该被理解成为了获得满意的结果,要求以所示特定顺序或以序列顺序进行这种操作或者进行所有所示操作。

仅公开了几个示例和实施方式。可以基于所公开的内容来对所描述的示例和实施方式以及其他实施方式进行变化、修改和增强。

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