NS2相关学习——可靠的MANET应用程序的Gossip协议分析

好久不写,应该努力啦!老师把这篇论文给了我,现在还不知道它在讲什么,来边翻译边学习吧!


文章链接:https://www.researchgate.net/publication/316844643_Analyzing_Gossip_Protocols_for_Reliable_MANET_Applications

文章题目:可靠的MANET应用程序的Gossip协议分析(Analyzing Gossip Protocols for Reliable MANET Applications)

Abstract:由于移动设备数目的快速增长以及Ad hoc无线网络(MANET)适应性以及灵活性的特点,人们逐渐把研究目光投向了MANET。在这种情况下,gossip协议已经成为了一种开发具有高度可扩展性和可靠性的广播通信的有力机制,但是可靠性、性能、效率经常发生冲突。事实上,为了满足应用和网络的要求,我们需要非常仔细地配置gossip协议,这不是一件简单的事情。在本文中,我们基于流行的无线自组织网络中的eager-push cyclic strategy评估了gossip协议,并且分析了配置在可靠性和整体性能上的影响。获得的结果有助于我们理解基于gossip协议的复杂的行为,并且可以用于指导他们在MANET中的配置。

1 INSTRUCTION

       在过去十年中,我们可以发现无线功能的移动设备如智能手机,笔记本电脑和平板电脑等的数量大幅增加。在这种情况下,MobileAd Hoc Networks(MANETs)[1]已然成为研究的盛行领域。MANET能够建立立即通信基础设施(没有预先设计的基础设施)。在MANET中,每个节点可以自由移动,加入或离开网络,或通过将数据转发到其他节点来参与路由。MANET在各种领域被广泛应用,从娱乐到任务或安全关键应用(例如搜索和救援,VANETs)。如今,MANET也在为不同领域的物联网(IoT)应用开发铺路。 然而,移动自组织无线网络的典型特征(例如缺乏固定基础设施,节点移动性,无线链路断裂)使数据的可靠传播成为一个巨大的挑战[3]。

大量应用于无线移动自组织网络的数据传输协议被提出,Gossip协议作为其中的一个热门协议被广泛关注。Gossip协议提供了在大规模应用中进行可靠数据传输的方法[5], [6]。后台协议的主要思想是所有节点都参与数据传播。当节点(Gossip源)希望发送消息时,它选择一组随机的节点(Gossip目标)向其发送消息。 在接收到消息后,接收方重复此过程。 因此,这些协议具有固有的冗余级别,允许屏蔽节点和网络故障,有很高的恢复力。

尽管Gossip协议有很大的优点,但他的性能如可靠性,性能或效率通常都是有限的。例如,向大量邻居发送消息可能会保证更高的可靠性水平并可能减少传播延迟,但会增加冗余网络效果。 Gossip协议包括必须正确设置的几种可配置参数(例如扇出)和Gossip策略(例如急切推送)。为了能够在MANET上实现可靠和有效的数据传播,这些策略和参数应根据其特性(例如网络区域大小、节点移动性模式)以及现有需求对特定网络进行调整。 调整Gossip协议不是一项简单的任务,特别是考虑到它所涉及的庞大数量的配置组合的时候。

本文第二节介绍了MANET和Gossip协议中的最新技术资料;第三节讨论了Gossip协议中涉及的关键概念,包括八卦策略,会员策略,可配置网络和Gossip参数;第四节分析关键策略和参数的可靠性,性能和效率的权衡。最后,在第五第六节中,我们采用了一种使用典型的推送循环策略的基于Gossip的协议,并根据几个参数,通过NS3网络仿真器[7]对模拟MANET进行了评估,显示出它们对可靠性,性能和效率的影响。本文的贡献如下:

•综合关于基于Gossip的协议的主要概念,以及关于MANET中关于网络可靠性和性能和效率的权衡的分析;
•评估MANET环境中可靠性,性能和效率,并使用典型的基于Gossip的协议实现;
•确定一套初步的指导方针,以指导典型的Gossip协议的配置。

II. RELATEDWORK

MANET允许具有无线能力的自主移动设备以自组织的方式进行协作[1]。 它适用于许多应用,例如互动游戏,搜索和救援以及物联网应用。这些应用都需要广播,因为它允许设备向所有参与者都发送数据。在最简单的形式中,节点向其邻居发送命名为“纯流”的数据。在接收到数据之后,每个节点都将数据转发到自己的邻居。这种形式的数据传播是可靠的,但不是高效的,它将导致高冗余并且可能导致大量的消息碰撞[8]。

纯流量的替代方法是在物理网络之上建立一个覆盖网络,并执行“结构化流水”[9]。 但是,由于节点移动性和非结构化和中断性质,在MANET中维护覆盖网络代价很高。因此,有效并且高性能地传播数据是十分困难的。

“概率流(Probabilistic flooding”)”旨在减少“纯流”中的冗余。在接收数据时,每个节点应用概率机制来确定它是否应该转发数据。概率流动与纯粹流动相比,显着地降低了开销,但与其概率机制相关联的问题具有巨大的挑战。一方面,固定概率不适合MANET的高度动态性质,但是另一方面,动态概率方法非常难以实现[10]。

“Counter-based flooding”机制被提出来消除概率流(Probabilistic flooding”)的缺点。这个想法是将随机性置于重传的定时上,这意味着第一次接收到消息的节点将在随机事件后重传数据。如果在这个时间内,节点接收到相同的数据包,它将中止重传。这个机制的缺点是它的延迟通常很高。

“Gossip-based flooding” 是一种概率方法[5],它的基本形式是每个节点向其邻居节点发送消息,在第一次接收到该信息式,接受节点重复该过程。由于简单性、可扩展性以及对节点和网络故障的弹性,这种技术在MANET中受到广泛关注。Gossip协议是可配置的,它能实现灵活的行为,并允许几种策略,包括急切推[12],拉[13],懒惰推[14]和混合[15]。NeEM [16]是一种实现急切推送策略的Gossip协议.CREW [14]尝试通过使用拉推策略传输数据来最大限度地发挥传播速度。 Pulp[17]采用混合策略。 MANET应用中的Gossip协议的例子在[18],[19]中给出。 在本文中,我们分析了应用层Gossip协议,并根据不同的场景讨论了其可靠性,性能和效率。

III. GOSSIP-BASEDDISSEMINATIONPROTOCOLS

Gossip协议是一种概念上简单可扩展并且灵活的协议,可在大规模应用程序中传播消息。在Gossip协议中,当一个节点(Gossip源)希望发送一个Gossip消息时,它会

随机选择一组邻居作为Gossip目标并向它们发送数据。在接收消息时,每一个接收节点以相同的方式进行转发。为此,每个节点需要保留和更新网络中其他节点的列表。在

Gossip生命周期中,网络中可能会传播几条消息,每个消息都可以在Gossip round中传播,这针对向所有节点发送gossip消息的全过程。每个gossip包含了几个gossip步骤,表明

了由每个节点采取处理接收的单个gossip消息的动作。在本节中,我们概述了gossip协议中用于gossip和会员管理的策略。 然后,我们解释了到MANET中八卦协议的可靠性

、性能和效率的所有相关的网络,gossip和应用参数。

A.Gossip Strategies

在接下来的几段中,我们概述了在基于gossip协议中可以找到的不同策略。

•渴望推送:在这个颇受欢迎的策略中,gossip信息最早被转发到一组随机的参与者[12]。

•懒惰推送:在第一时间收到gossip消息后,仅将其信息发送给随机邻居。当节点收到尚未收到过的消息的信息时,它明确地请求它[14]。

•拉:每个节点查询随机邻居以获取最近收到的消息的信息。在接收尚未收到的消息的信息的情况下,它明确地请求消息[13]。

•混合:在此策略中使用推拉组合。首先,使用推动策略传播信息,然后采用拉动策略来确保所有参与者都收到了所有消息。

•结构化:网络拓扑信息用于获取gossip的结构[20]。 结构化的gossip放弃了经典的八卦协议的简单性,以便更好地利用资源;

•自治:每个节点通过将消息与参与者的广播(即一种发布/订阅)相匹配来传播消息[21]。

•动态:根据底层的网络特性,该协议自动适应动态变化[22]。

B. Membership Management Strategies

为了在所有参与者中选择随机gossip目标,每个节点需要具有网络的全局视图。在大型MANET中,考虑到构成全局视图的节点数量众多、MANET动态性、更新维护视图的成本等因素,这不是可。为了能在大规模MANET中使用gossip协议,成员管理应该依赖于部分视图,这个部分视图是全体视图的一个子集。 因此,在每个Gossip步骤中,节点从其部分视图中选择一组随机参与者作为其gossip目标。 以下策略可用于维护部分视图。

•循环(Cyclic):在这个相当普遍的策略中,由于与邻居交换信息的周期性过程,每个Δt时间单位更新部分视图[23]。

•无效(Reactive):部分视图仅在响应影响网络结构的某些外部事件(例如,节点加入或失败)时进行更新。 这种策略依赖于故障检测系统来触发局部视图的更新[16]。

•灵活性(Flexible):部分视图的大小被动态调整确保故障恢复能力[24]。 当可靠性降低(即消息丢失率增加)时,该策略依赖于一些监视系统来调整部分视图的大小;

•QoS感知(QoS-Aware):节点根据其QoS特性(例如,延迟和带宽)选择“好邻居”[25];

•备份(Backup):它基于在被动视图中维护备份节点的列表,并选择将被动视图的哪些成员升级到活动视图[26]。

C. Relevant Parameters

与目标是实现可靠和有效的Gossip数据传播有关的MANET特性有几个参数。 参数分为三类,网络,gossip和应用。 网络参数如下:

•移动性(Mobility):这可能是MANET最重要的特征。移动节点可以使用不同的动态速度和/或遵循不同的移动性模式;

•动态性(Dynamicity):在MANET中,允许节点动态地加入和离开网络;

•传输范围(Transmission Range):消息正确接收的概率范围;

•能源容量(Energy Capacity):大多数移动设备的供电有限。无线移动节点的能耗主要是无线传输和接收,数据处理和系统运行等引起的;

•带宽(Bandwidth):指数据传输能力。由于无线节点可以使用共享信道,所以可以限制可用于通信的带宽;

•网络区域(Network Area):指节点被允许移动的MANET的总物理区域。

密度(Density):平均每单位面积的节点数。由于节点动态连接,离开和移动,MANET中的网络全局和局部密度在gossip生命周期中可能会不断改变

•故障率(Failure Rate):指在网络和节点中可能发生的故障频率,常常通过“MeanTime Between Failures”指标描述。

还需要调整以下gossip参数以实现高可靠性和高效率。

•扇出(Fanout):在基于gossip的协议中,此参数指的是针对gossip的相邻节点的数量。

•最大跳数(Maximum Hops):指允许发送给定消息的最大次数

•心跳速率(Heartbeat Rate):指节点每单位时间发送的心跳消息数(即构建和更新部分视图)。

最后,有一个命名为Messaging Rate的应用程序参数,它指的是每单位时间通过八卦源发送的八卦消息数。

IV. ANALYZINGGOSSIPCONFIGURATIONTRADEOFFS

Gossip协议对大规模应用中的数据传播非常有利,但是在实现可靠性性能和效率方面也面临挑战。在这种情况下,作为感兴趣的指标的可靠性是指即使在出现故障的情况下,协议确保gossip源发送的数据也能到达所期望的参与者的能力[27]。故障是指节点不能发送或接收消息(例如由于端点冲突)或网络不能传递消息(例如,由于连接崩溃)。MANET特定的故障原因有几个,包括能源有限,由于传输干扰和冲突而引起的故障,以及移动性导致的节点隔离等。

性能是描述传播延迟和吞吐量的另一个关键指标。 延迟是消息到达所有参与者所花费的平均时间,吞吐量是从给定gossip源到所有参与者的每单位时间可发送的消息的平均数量[28]。

效率包括几个属性,如冗余资源使用(例如存储器CPU)和能量消耗[3]。冗余是指给定消息的每个节点接收的冗余消息的平均数。Gossip协议可能导致严重的冗余,这可能导致带宽争用和消息冲突。能源效率在MANET中也是一个关键的方面,因为它影响了每个节点的寿命和整个网络的使用寿命。 能量主要在传输数据时消耗,因此消息重传会影响节点的能耗。 我们可以设置策略和参数达到近100%的成功概率,但这可能会损害性能或效率。接下来,也是作为本文提出的评估的一种方式的引导,我们讨论了主要gossip策略和参数与可靠性,性能和效率的期望水平之间的关系。

A. Tradeoffs Associated with the Gossip Strategies(与gossip战略相关的权衡)

Gossip协议经常使用 eager push 急速推送策略,其中每个节点在接收后立即转发消息。因为重传导致参与者接收到每条消息的多个副本这种策略对带宽影响很大若果使用延迟消息有效载荷传输的延迟推送策略,带宽使用率显着降低。事实上,仅当消息有效信息的信息(即标识符)对于接收者是未知的时才启动消息有效载荷的传输,这允许有效载荷只传输一次到每个节点,而代价是用于交换消息信息的附加往返时间,这损害了性能。懒惰推送策略也可能影响可靠性,因为额外的往返时间和由此产生的较高延迟可能会增加在gossip生命周期中失败的可能性,从而扩大了应对故障的脆弱性。然而,这种影响可能相当小,这取决于故障率,并且可以通过略微增加扇出来补偿。拉动策略类似于懒惰推送,它也需要至少一个额外的往返时间来传递消息。 不同的是,在拉动策略中,传播过程由gossip目标开始,而在懒惰推动策略中,传播过程由gossip源开始。使用这种策略的产生的冗余业务量更少,但会导致比急切推送更高的延迟。此外,拉动和懒惰的策略,与急切的推动相反,需要保留传送消息的副本以供以后的重新传输。 因此,拉和懒推动策略在内存使用方面效率较低。 在混合策略中,通过在单个gossip中混合拉/懒惰的推送,协议可以根据应用调整延迟和带宽。

结构化gossip策略通过避免冗余消息使用更少的网络资源。由于结构维护成本在具有移动设备的MANET中使用此策略似乎不具吸引力。 事实上,为了实现高度可靠的发行,覆盖层必须随着网络的任何变化而更新,这在网络中代价是很昂贵的,并且有时在高度移动和动态的环境中是不可能的。

自治策略用于基于内容的选择性数据传播,并且因为不需要路由信息和全局信息(例如,目的地节点的信息),它本质上是无状态的方法。其缺点是它不能保证完整性(即向所有感兴趣的参与者传递数据),这是发布/订阅等选择性传播方法的关键目标[21]。 然而,这种不完备性在许多非关键应用场景(例如广告)中不是问题。

动态策略旨在通过根据网络变化调整gossip参数,实现高可靠性和有效的数据传播。 虽然这似乎很有吸引力,但是在大规模和高度动态的网络中,协议的适应性计算成本相当高。此外,为了通过网络传播更改的信息,带宽使用显著增加。

B. Tradeoffs Associated with the Membership Strategies(与成员策略相关的权衡)

用于成员资格管理的策略主要与构建和更新部分视图的过程有关。使用小尺寸部分视图,应用程序变得更容易受到节点故障(或离开网络的节点)的影响。如果大量节点出现故障,,则节点的部分视图可能仅包括故障节点,因此网络可能会断开,节点变得隔离。即使网络保持连接,特别是在早期的gossip步骤中,若故障节点被选为gossip目标,gossip协议的可靠性受到严重的损害。此外,成员管理策略可能需要很长时间才能更新部分视图,这对传播的消息的可靠传递产生不利影响。 接下来的段落讨论不同的成员策略。

在循环策略中,部分视图定期更新。如果这个时间长,若网络中的移动性,动态性和故障率相对较低,则该策略是可靠的。另一方面,短时间可以在具有高故障率的高移动

和动态网络中实现更高的可靠性水平,但资源使用量显着增加。反应策略依赖于故障检测机制,在节点出现故障或离开网络时触发部分视图的更新。因此,如果故障检测机制足够快速准确,则反应策略可靠性比循环策略高。依赖于准确的监控机制,灵活的策略不仅可以更新部分视图成员,还可以调整局部视图的大小以提高可靠性。 QoS感知策略适用于QoS敏感应用,例如实况媒体流和高带宽内容分发,其可以由大型和动态成员资格表征,并且需要高性能覆盖结构。 最后,备份策略适用于具有高故障率的网络,因为当活动视图中的一个节点出现故障时,可以立即替换备份视图中的节点。QoS感知策略适用于QoS敏感应用,例如实况媒体流和高带宽内容分发,其可以由大型动态成员和高性能覆盖结构的使用表征。最后,备份策略适用于具有高故障率的网络,因为当活动视图中的一个节点出现故障时,可以立即替换备份视图中的节点。

C. Tradeoffs Associated with the Network Parameters (与网络参数相关的权衡)

假设网络在端到端性能方面保证了一组应用的属性,例如低延迟和延迟方差(抖动),高带宽或低丢包概率。 然而,节点移动性模式可以影响gossip协议的结果。 节点的

移动性可能会改变节点分布并导致隔离。 与订阅和取消订阅节点(subscription and unsubscription)相关的动态也可能导致网络拓扑的变化,并导致节点的隔离。

更高的传输范围可能会影响信息正确传递的概率。 如果传输范围增加,继而邻域范围增加,移动性将不容易改变节点的邻域,并且更不可能更新部分视图。 因此,这会影响协议的效率。 节点的能量容量影响其使用寿命,随后影响在网络中运行的应用程序的总使用寿命。 因此,具有较高能量容量的节点网络可能更可靠。

带宽限制导致参与者数量以及要交换的数据量增加时的损失率较高,它限制了协议的可扩展性。 更大的网络面积增加了移动性范围,继而密度降低,这可能导致节点隔离。当需要可靠性时,我们必须考虑密度和传输范围。 在节点稀疏的网络中,任何两个节点之间可能的连接数量通常较低,这影响了可靠性和性能。

基于Gossip的协议由于其掩盖了节点和网络故障固有的冗余级别而有弹性。然而,高故障率可能会严重影响可靠性,因为一些节点更可能被隔离。通常,我们将扇出、最大跳数和部分视图大小设置为较高的值,结合合适的成员策略可以在故障率高时有助于提高可靠性。

D. Tradeoffs Associated with the Gossip Parameters(与gossip参数相关的权衡)

高扇出值可以允许更高的容错级别和消息传递的概率。但在,它们产生更多的冗余网络流量。类似地,高最大跳跃值允许更高的可靠性,同时增加了冗余网络流量和随后的带宽使用。最后,还要注意一个与心跳速率值相关的折衷。 一方面,心跳波动率高,当移动性、动态性或故障率高时,可以提高可靠性;但另一方面,它会损害带宽效率。

V. METHODOLOGY ANDEXPERIMENTS

在本节中,我们描述了使用通用配置和不同使用场景分析基于gossip协议行为的方法。我们使用模拟来轻松缩放网络大小,并且引入节点的移动特性,这是非常难以物理复制的方面。该方法建立在前面部分所综合的知识基础上,由以下几个步骤组成:1)选择网络和gossip协议配置,包括固定(例如使用一个成员策略的测试)和可变配置(例如变化扇出); 2)定义一套用固定和可变参数来评估协议的场景; 3)定义一组评估指标; 4)实现gossip协议; 5)执行实验并分析结果。

A. Selecting the Configuration(选择配置)

我们根据实际情况下的典型值选择了网络和协议的固定特性[1],[5]:

- 消息传递率:100消息/秒(gossip间隔:10秒);
- gossip生活周期中的gossip消息数目:30;
-gossip策略:急切推
- 成员管理策略:循环;
- 心跳间隔:10秒;
- 传输范围:30米;
- 移动模式:随机;

然后,我们基于实际使用情况[5],定义了一组典型的可变参数,我们将在实验中改变它们以更好地理解协议行为。 在这个初步研究中,我们由于参数在这些环境中的相关性选择了扇出; 最大跳数 节点数,网络面积; 速度作为可变参数。

B. Defining Evaluation Scenarios(定义评估方案)

表I列出了为了分析协议行为而定义的4种场景,并详细描述了构成每个场景的各个测试配置。场景I和II中,我们的目标是在不同尺寸的网络中了解扇出和最大跳数对协议的影响。在场景I(测试1到30)中,我们将扇出由5逐渐增加到10,最大跳数,网络密度和节点速度的数量保持不变,但是节点数量(从8到128)和面积(从100到1600平方米)变化。情景II(测试31至60)与上一个类似,但是我们改变最大跳数,同时将扇出保持在恒定值。在情景三(测试61至65)中,我们改变节点的速度,以了解移动性对协议的影响。节点速度从0到200公里/小时变化,表示固定节点,步行/跑步,自行车速度,车速以及快车或列车速度等不同的条件。在这种情况下,我们考虑了一个具有64个参与者的中型网络,其中扇出和最大跳数等于5。最后,在场景IV(测试66至70)中,我们旨在了解节点密度的影响,在800 m2的中型网络中,我们改变节点数量,从每100平方米1个节点到每100平方米16个节点。

C. Selecting Evaluation Metrics(选择评估指标)

在第四部分讨论的基础上,我们选择了典型的度量标准,使我们能够在正常工作条件下(例如不存在故障)了解协议的可靠性,性能和效率。也就是说,我们选择了测量丢失率,gossip覆盖,消息冗余和传播延迟作为评估指标。我们将可靠性定义为参与者成功接收到消息的概率(pr),丢包率表示了协议的不可靠性,它被定义为网络中信息丢失的概率(1-pr)。在一个给定N个节点的网络中,gossip源一共发送消息M个,gossip目标Nodei收到信息Ri个,丢包率由以下式子定义:

Gossip 覆(Gossip Coverage(与可靠性相关)指的是接收给定传播消息的节点的百分比,显示丢失消息的分布。在一个给定N个节点的网络中,gossip源一共发送消息M个,收到给定消息mi的节点数目是ni,那么Gossip Coverage的计算公式如下:

作为效率度量的消息冗余是指对于给定消息每个节点接收的冗余消息的平均数。对于N个节点的给定网络,如果M是gossip源发送的消息的总数,并且在所有消息的gossip目标节点中接收到的冗余消息的数量是RMi,那么消息冗余的计算公式如下:

传播延迟是一种性能指标,定义为消息到达所有网络参与者所花费的平均时间。 在给定的网络中,如果M是从gossip源发送的消息的总数,starti是发送Messagei的时间endi是网络中最后一个节点接收到Messagei的时间,那么延迟计算公式是

D. Implementing a Gossip-Based Protocol(实现一个基于Gossip的协议)

因为在真实环境中实现所有场景是不切实际的 我们选择NS3 [7]网络仿真器来实现协议并运行实验。实施的核心部分是gossip策略和成员管理(以创建部分视图),我们分别选择了渴望推送和循环。

部分视图包括几个网络节点的地址及其时间戳,它表示的是最后一次从特定节点接收到心跳或gossip消息的记录。在我们的实现中,部分视图的最大大小是扇出(2*扇出)的功能,这样做是为了确保每个gossip步骤中有足够的候选选择作为gossip目标。为了构建和更新部分视图,我们的协议执行以下步骤。每个节点在进入网络之后,广播心跳消息并且根据根据心跳间隔的值周期性地进行心跳消息广播。收到心跳消息后,如果发件人是部分视图的成员,则会更新其时间戳。否则,如果部分视图的大小小于其最大大小,则将其添加到部分视图。 如果部分视图的大小等于最大大小,则将最旧的邻居替换为发送方作为新邻居。 当收到gossip消息时也会发生这种情况。

实施的gossip策略是常见的推动策略(eager push strategy)。当节点首次收到消息,若消息的跳数小于最大跳数,就将消息转发给其他节点。每个消息的跳数在gossip源中被设置为0,每当消息被gossip目标转发时,其值加1。

E. Executing the Experiments and Analysing the Results(执行实验并分析结果)

如上所述,我们使用NS3 [7]来实现gossip协议并运行实验。 我们使用两个额外的工具来支持分析结果:NetAnalyzer [29]和QlikView [30]。 图1给出了本文中使用的仿真和分析的总体视图。


如图1所示,仿真程序包括三个部分:应用程序,gossip配置和网络配置。 该应用程序使用在NS3内核上运行的gossip协议。它起到gossip源或者gossip目标的作用同时它实现了发送和接收gossip消息所必须的操作。gossip资源发送关于应用程序中定义的消息传递率的消息。gossip协议配置和网络配置分别包括gossip参数和网络参数的值(如第三节所述)。NS3核心和仿真程序都生成日志,保存模拟网络和应用程序中发生的所有事件的记录。 日志导入到NetAnalyzer中,NetAnalyzer依次搜索,组织并将数据导出到关系数据库中。 存储在数据库中的数据随后由QlikView [30]读取,用于生成必要的图形。

VI. RESULTS AND DISCUSSION(结果与讨论)

本节介绍从上一节中介绍的4个场景的70个单独测试获得的结果。 每个单独的测试执行10次,结果显示是10次运行的平均值。

A. Results for Scenario I

图2(a)给出了场景I中各种扇出值和网络大小的丢失率。请注意,网络大小发生变化,但网络密度保持在同一水平(我们按比例增加节点数量和网络面积)。一个观察的关键点是对于所有扇出值,当网络大小增加时,消息丢失也增加(即,具有8个节点的0%到128个节点的50%)。另一个观察结果是,对于恒定的网络大小,当扇出增加时,丢失率降低。 然而,随着网络规模的扩大(我们测试中的128个节点),结果表明,使用扇出5和10之间的丢失率没有相关的差异。在这种情况下,我们需要使用更大的扇出来实现更少的数据丢失。

图2(b)显示了gossip覆盖率的结果。结果表明,当网络较小时,gossip覆盖率约为100%。当网络规模增加到128个节点时,gossip覆盖率降低到20%左右。考虑到关于128个节点的网络丢失率的结果,如图2(a)所示,我们可以说,成功交付的消息的50%分布在20%的节点中。低覆盖率的原因之一可能是隔离gossip源,但在这些实验中并不是这样,因为传输范围足够大不会发生这样的情形。当某些节点不出现在任何部分视图中或部分视图中只出现在几个节点中时(即被选为gossip目标的概率变得非常低)时,低覆盖率的另一个原因可能与成员管理机制有关。因此,用于构建和更新部分视图的策略应理想地保证通过部分视图构建一个网络上的常规图形(即每个节点具有相同数量的邻居的图形)。我们还观察到,对于恒定的网络大小,更高的扇出值与更高的gossip覆盖值相关联。 这是因为当扇出增加时,节点被选为gossip目标的概率也增加。

图2(c)显示了在这些实验期间观察到的延迟。如预期的那样,延迟随着网络规模的增加而增加,但令人惊讶的是,对于具有128个节点的网络,我们观察到当扇出值较小时,延迟较低。这只能通过考虑gossip覆盖来解释。 由于在扇出值较小时,gossip覆盖率较小,因此将消息传递到较少数量的节点需要更少的时间。 如图2(d)所示,消息冗余随着扇出值的增加而增加。 但是,对于恒定的扇出值,当网络大小增加时,它(消息冗余?)将减少。 这是当网络规模增加时损失率很高的主要原因之一。

B. Results for Scenario II(情景二的结果)

在情景二中,我们分析了最大跳数的影响。对于gossip率和八卦覆盖,结果与情景一中讨论的结果非常相似。将最大跳数从5改为10,在可靠性方面具有与将扇出从5
10相同的效果。关于延迟,尽管图3中的图与图2(c)中给出的情景I类似,但在情景II中的延迟略高。 消息冗余相反,因为在场景I中略高,尽管协议在两种情况下的行为相
似。 因此,如果性能是一个问题,为了达到一定的可靠性,我们应该增加扇出,或者我们应该增加最大跳数以支持带宽使用。

C. Results for Scenario III(场景III的结果)
在情景三中,我们分析移动性的影响。 图4(a)显示,随着节点速度的增加,损耗率增加非常平稳。如图4(b)所示,gossip覆盖几乎保持在同一水平(我们不能观察
到gossip覆盖率与节点速度之间的关系)。有趣的是,针对延迟和冗余性我们获得了类似的结果(图4(c)和(d))。 结果表明,在密度和节点移动性模式不改变的MANET中,
协议的行为是相当鲁棒的。 这种观察与节点的速度无关。

D. Results for Scenario IV(场景IV的结果)
在情景IV中,我们分析网络密度的影响。 图5显示,损失率随密集网络的增加而增加,最后达到一定的限度。当网络中每6平方米一个节点的时候损失率接近0,这意味着我们可以通过提高MANET节点密度来达到高可靠水平。

E. Guidelines for Configuring a Gossip-Based Protocol(配置基于Gossip的协议的指导原则)
以下是基于本文讨论的结果的一组初步指导,用于配置MANET中使用循环成员资格管理热门推送策略的基于gossip的协议。
•增加扇出和最大跳数可以提高更高的可靠性。 对于较大的网络,扇出和跳跃必须足够大以实现更高的可靠性水平;
•随着扇出和最大跳数的增加,我们分别得到更高的性能(更低的等待时间)和更高的效率(更低的冗余度)。因此,为了达到一定的可靠性,如果性能是主要关注点,我们应该
增加扇出,否则我们应该增加最大跳数,以获得更好的带宽使用;
•会员策略应确保可以在部分视图中构建每个节点具有相同数量邻居的常规图,以避免出现节点隔离的情况;
•我们实施一个具有固定通用配置的gossip协议对于节点在MANET中的速度似乎是非常稳健的,显示不需要根据不同速度进行可变参数调整;
•当密度足够高时,即使使用低扇出和最大跳数,也可实现高可靠性。 在这种情况下,可以增加扇出以减少等待时间。

VII. CONCLUSION(结论)

在本文中,我们综合了MANET中基于gossip数据传播的主要概念,并分析了影响gossip协议行为的关键参数。 我们在4个模拟场景中展示了不同配置的现有权衡,并提供了一组配置gossip协议的初步指导。 作为未来的工作,我们打算扩展我们的分析,特别是在存在失败的情况下分析协议的行为。 最终目标是提出一种能够适应环境的自适应协议。

ACKNOWLEDGMENT(致谢)

This work has been partially supported by the project DEsign, Verification and VAlidation of large-scale, dynamic Service SystEmS (DEVASSES), Marie Curie International

Research Staff Exchange Scheme (IRSES) number 612569, within the context of the EU Seventh Framework Programme (FP7); the project EUBra-BIGSEA, funded by the

European Commission under the Cooperation Programme, Horizon 2020 grant agreement no 690116; and the FAPESP grant agreement no 2013/17823-0.

REFERENCES(参考文献)


[1] X. Cheng, X. Huang, and D.-Z. Du, Ad hoc wireless networking. Springer Science & Business Media, 2013, vol. 14.
[2] T. A. Ramrekha and et al, “Towards a scalable routing approach for mobile ad-hoc networks,” in IEEE 20th International Workshop on Computer Aided Modelling and Design of Communication Links and Networks (CAMAD), 2015, pp. 261–266.
[3] H. Li and et al., “An efficient data dissemination method over wireless ad-hoc networks,” Wireless Personal Communications, vol. 79, 2014.
[4] E. Alotaibi and et al., “A survey on routing algorithms for wireless ad-hoc and mesh networks,” Computer networks, vol. 56, no. 2, 2012.
[5] R. Friedman and et al., “Gossip-based dissemination,” in Middleware for Network Eccentric and Mobile Applications. Springer, 2009.
[6] F. Pop and N. Bessis, “Energy-efficient and fault tolerant methods for message delivery in internet of things,” in Roedunet International Conference (RoEduNet), 2013 11th. IEEE, 2013, pp. 1–6.
[7] G. F. Riley and T. R. Henderson, “The ns-3 network simulator,” in Modeling and Tools for Network Simulation. Springer, 2010, pp. 15–34.
[8] Y.-C. Tseng and et al., “The broadcast storm problem in a mobile ad hoc network,” Wireless networks, vol. 8, no. 2-3, pp. 153–167, 2002.

[9] A. Jüttner and Á. Magi, “Tree based broadcast in ad hoc networks,” Mobile Networks and Applications, vol. 10, no. 5, pp. 753–762, 2005.
[10] Y. Sasson, D. Cavin, and A. Schiper, “Probabilistic broadcast for flooding in wireless mobile ad hoc networks,” in IEEE Wireless Communications and Networking (WCNC), vol. 2, 2003, pp. 1124–1130.
[11] M. B. Yassein, S. F. Nimer, and A. Y. Al-Dubai, “A new dynamic counter-based broadcasting scheme for mobile ad hoc networks,” Simulation Modelling Practice and Theory, vol. 19, no. 1, 2011.
[12] M. Matos and et al., “Clon: Overlay networks and gossip protocols for cloud environments,” in On the Move to Meaningful Internet Systems (OTM). Springer, 2009, pp. 549–566.
[13] J.-H. Böse and et al., “Adaptive data dissemination in mobile ad-hoc networks.” in GI Jahrestagung (2). Citeseer, 2005, pp. 528–532.
[14] M. Deshpande and et al., “Crew: A gossip-based flash-dissemination system,” in 26th IEEE International Conference on Distributed Computing Systems (ICDCS),  2006, pp. 45–45.
[15] Y. Chen, J. Yang, W. Zhao, M. Ammar, and E. Zegura, “Multicasting in sparse manets using message ferrying,” in IEEE Wireless Communications and Networking Conference (WCNC), vol. 2, 2006, pp. 691–696.
[16] J. Pereira and et al., “Neem: Network-friendly epidemic multicast,” in 22nd International Symposium on Reliable Distributed Systems, 2003.
[17] P. Felber, A.-M. Kermarrec, and et al., “Pulp: An adaptive gossip-based dissemination protocol for multi-source message streams,” Peer-to-Peer Networking and Applications, vol. 5, no. 1, pp. 74–91, 2012.
[18] A. Morris, M. Bouroche, and V. Cahill, “Urban scale dissemination in mobile pervasive computing environments,” PECCS 2014, p. 18, 2014.
[19] E. Yitayal, J.-M. Pierson, and D. Ejigu, “Towards green networking: Gossip based balanced battery usage routing protocol to minimize energy consumption of manets,” in AFRICON. IEEE, 2015.
[20] N. Carvalho and et al., “Emergent structure in unstructured epidemic multicast,” in 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN’07), 2007, pp. 481–490.
[21] A. Datta, S. Quarteroni, and K. Aberer, “Autonomous gossiping: A selforganizing epidemic algorithm for selective information dissemination in wireless mobile ad-hoc networks,” in Semantics of a Networked World. Semantics for Grid Databases. Springer, 2004, pp. 126–143.
[22] P. Kyasanur and et al., “Smart gossip: An adaptive gossip-based broadcasting service for sensor networks,” in IEEE International Conference on Mobile Adhoc and Sensor Systems (MASS), 2006, pp. 91–100.
[23] S. Voulgaris, D. Gavidia, and M. Van Steen, “Cyclon: Inexpensive membership management for unstructured p2p overlays,” Journal of Network and Systems Management, vol. 13, no. 2, pp. 197–217, 2005.
[24] A. J. Ganesh, A.-M. Kermarrec, and L. Massoulié, “Scamp: Peer-to-peer
lightweight membership service for large-scale group communication,”
in Networked Group Communication. Springer, 2001, pp. 44–55.
[25] J. Liang and K. Nahrstedt, “Randpeer: Membership management for qos sensitive peer to peer applications,” 2005.
[26] J. Leitao and et al., “Hyparview: A membership protocol for reliable gossip-based broadcast,” in 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN’07), 2007.
[27] V. Drabkin, R. Friedman, G. Kliot, and M. Segal, “On reliable dissemination in wireless ad hoc networks,” IEEE Transactions on Dependable and Secure Computing, vol. 8, no. 6, pp. 866–882, 2011.
[28] D. Nitnaware and A. Verma, “Performance analysis of energy efficient routing algorithms for adhoc network,” in Advances in Computing, Communication and Control. Springer, 2011, pp. 222–230.
[29] E. Silva, “Analise de falhas em comunicacao multicast-gossip no ambiente manet para aplicacoes p2p,” in MSc Thesis, Univeristy of Campinas, Limeira, Brazil, 2016.
[30] M. García and B. Harmsen, Qlikview 11 for developers. Packt Publishing Ltd, 2012.


完结感言:呼……终于翻完了,也大致理解,剩下的需要好好揣摩,顺便揣摩一下老师让我看这篇论文的意图。。嗯。。大概让我学习一下怎么写一篇好论文,看看人家怎么分析的吧,加油呀!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/508607.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java集合之LinkedList源码分析

概述 LinkedLIst和ArrayLIst一样, 都实现了List接口, 但其内部的数据结构不同, LinkedList是基于链表实现的(从名字也能看出来), 随机访问效率要比ArrayList差. 它的插入和删除操作比ArrayList更加高效, 但还是要遍历部分链表的指针才能移动到下标所指的位置, 只有在链表两头的…

lex和yacc环境配置

lex和yacc的使用很简单,但环境配置却是各种问题,本章说明lex和yacc在windows下的环境配置。 软件需求: 系统 win7-64位(win7-32, win8, win10全部通过) c编译器: vs2010(2008,2013,2015也全部通过) lex和yacc编译器&#xff1a…

Java集合之Vector源码分析

概述 Vector与ArrayLIst类似, 内部同样维护一个数组, Vector是线程安全的. 方法与ArrayList大体一致, 只是加上 synchronized 关键字, 保证线程安全, 下面就不具体分析源码了, 具体可以查看ArrayList中的源码分析. Vector源码分析 1.主要字段 2.构造函数 3.增删改查 其他方法…

Gossip协议的P2P会员管理

阅读此论文主要目的在于理解gossip协议及其背后的原理,此部分详细翻译,其余部分看时间 文章标题:Gossip协议的P2P会员管理 作者:Ayalvadi J. Ganesh, Anne-Marie Kermarrec, and Laurent Massoulie Abstract:基于…

Java集合之LinkedHashSet源码分析

概述 LinkedHashSet与HashSet类似, 不同的是LinkedHashSet底层使用LinkedHashMap维护元素插入的顺序. LinkedHashSet继承自HashSet, 只是重写了HashSet的构造方法, 初始化一个LinkedHashMap, 其他均与HashSet相同. LinkedHashSet构造方法 HashSet的构造方法: 以上几乎就是Li…

Java集合之ArrayList源码分析

概述 ArrayList可以理解为动态数组, 根据MSDN的说法, 就是Array的复杂版本. 与数组相比, 它的容量能动态增长. ArrayList是List接口的可变数组的实现. 实现了所有可选列表操作, 允许包括null在内的所有元素. 数组的特点, 查询快增删慢. 每个ArrayList实例都有一个容量, 该容…

Java集合之Hashtable源码分析

概述 Hashtable也是基于哈希表实现的, 与map相似, 不过Hashtable是线程安全的, Hashtable不允许 key或value为null. 成员变量 Hashtable的数据结构和HashMap一样, 采用 数组加链表的方式实现. 几个成员变量与HashMap一样: 方法 Hashtable的方法与HashMap基本一样, 只是 Ha…

视频质量检测中的TP、FP、Reacll、Precision

在看论文《Measuring Vedio QoE from Encrypted Traffic》的时候看到TP(True Positives)、FP(False Positives)、Precison、Recall的概念,这属于数据挖掘方面的内容,学习之后特来记录。 首先,下…

Java集合之LinkedHashMap源码分析

概述 HashMap是无序的, 即put的顺序与遍历顺序不保证一样. LinkedHashMap是HashMap的一个子类, 它通过重写父类的相关方法, 实现自己的功能. 它保留插入的顺序. 如果需要输出和输入顺序相同时, 就选用此类. LinkedHashMap原理 LinkedHashMap是如何保证输入输出顺序的呢? L…

Java集合之HashSet源码分析

概述 HashSet是基于HashMap来实现的, 底层采用HashMap的key来保存数据, 借此实现元素不重复, 因此HashSet的实现比较简单, 基本上的都是直接调用底层HashMap的相关方法来完成. HashSet的构造方法就是创建HashMap: 基本操作 1.添加操作 2.删除操作 3.迭代器 其他方法基本也是调…

三次握手wireshark抓包分析,成功握手和失败握手

转载之前:基于HTTP的视频流中,客户端有时会打开使用多条TCP与服务器连接,为了验证每一对话的sessionID是否相同,使用wireshark进行了抓包分析(抓到的都是加密的包,无卵用orz....),这…

Java 内部类及其原理

Java中实现内部类 内部类相信大家都用过很多次了,就不说它是怎么用的了。 内部类 1.成员内部类 需要注意的是, 当成员内部类拥有和外部类同名的成员变量或这方法时, 默认情况下访问的是内部类的成员, 如要访问外部类的同名成员&…

Java8 Lambda表达式

概述 lambda表达式, 是Java8中的一个新特性。可以理解为一个匿名函数。 lambda表达式可以理解为将一个函数浓缩为一行代码,使代码更加简洁紧凑。 lambda表达式语法: (parameters) -> statement; 或 (parameters) -> {statements;} 参…

Java8 方法引用

概述 方法引用是用来直接访问类或实例阴茎存在的方法或者构造方法.它需要由兼容的函数式接口(lambda表达式中用到的接口)构成的目标类型上下文. 有时候, 当我们想要实现一个函数式接口的方法, 但是已经由类实现了我们想要的功能, 这时可以使用方法引用来直接使用现有的功能实现…

配置过程中的一些问题

一、 Tomcat相关问题 1、百度经验有设置用户名密码,但是按照步骤进行,到测试的时候发现还是错误的。 解决:在设置的时候应该stop Tomcat,在设置好之后再重新开启Tomcat,发现可以。 2、把web项目加入Tomcat&#xff0…

流媒体通信协议HLS与DASH的对比

简单了解 HLS(HTTP Live Streaming)协议 是由苹果公司实现的基于HTTP的流媒体通信协议,并成为Quick TIme X和IPhone软件系统的一部分。苹果的IPad也有支持HLS的能力。 HLS传出的视频文件为基于MPEG2文件的切片,每个媒体切片在服务器上单独存放。在一个流…

Activity的四种启动模式和onNewIntent()

Android中Activity启动模式详解 在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作。在Android中Activity的启动模式决定了Activity的启动运行方式。 Android总Activity的启动模式分为四种: Activity启动模式设置…

Java8 默认方法

概述 Java8新增了接口的默认方法。使用default关键字。 默认方法就是接口可以有实现方法,而且不需要实现类来实现其方法。相对于JDK1.8之前的接口来说,新增了可以接口中实现方法。 可以说在接口中实现方法一部分原因是为了lambda表达式服务的&#xf…

Android Activity 生命周期中onStart()和onResume()的区别

首先了解Activity的四种状态 Running状态:一个新的Activity启动入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见并可和用户交互的激活状态。 Paused状态:当Activity被另一个透明或者Dialog样式的Activity覆盖时的…

Android 原生ExoPlayer 解析

1.简述与应用范围 ExpPlayer是一个开源的,App等级的媒体API,它的开源项目包含了library和示例。 ExoPlayer相较于MediaPlayer有很多优点: 1. 支持基于http的移动流媒体协议,包括DASH,HSL,Smooth Stream。同…