水下声学传感器网络仿真与实验平台综述

水下声学传感器网络的仿真与实验平台:进展与挑战

罗汉江,淄博职业学院,深圳大学吴开顺和鲁克萨娜·拉比,深圳大 学洪峰和郭忠文,中国海洋大学倪明选,澳门大学

海洋和水域基本上覆盖了我们星球的大部分区域。为了更好地利用地球这些区域的潜在资源,人们已取得了一些 研究进展。特别是水下无线声学传感器网络(UWA‐SNs)的研究取得了显著进步。然而,由于多种原因, UWA‐SNs的大规模部署仍远未实现。其中一个重要的原因是,以海洋为中心的应用在近海部署和现场级实验方 面既昂贵又耗费人力。实现这一目标的其他替代方法是进行仿真或实验,以降低成本并加速研究活动及其成果产 出。然而,设计高效且可靠的仿真与实验平台已被证明比预期更具挑战性。在本文中,我们探讨了开发仿真与实 验平台所需的主要技术(包括其优缺点)和组件,并在此领域提供了全面的综述报告。我们根据一些典型标准对 仿真与实验平台进行分类,并为研究人员根据其需求选择合适的平台提供有用的指南。最后,我们讨论了该领域 中一些尚未解决的问题,并对未来研究提出了一些建议。

CCS概念: Computer系统组织→嵌入式与信息物理系统;传感器网络;实时系统; Networks→网络仿 真;网络实验;

附加关键词和短语:水下声学传感器网络,实验,模拟器,测试平台

ACM引用格式: 罗汉江、吴开顺、鲁克萨娜·拉比、洪峰、郭忠文和倪明选。2017年。水下声学传感器网络的仿真与实验平台:进 展与挑战。ACMComput.Surv.50,2,第28篇文章(2017年5月),44页。DOI: http://dx.doi.org/10.1145/3040990

1. 引言

与陆地无线传感器网络(WSNs)不同,水下无线声学传感器网络(UWA‐SNs)具有许多独特的特 性[2, 78, 108, 114, 122]。

本研究部分得到了国家自然科学基金项目61472259、61379127、61379128,深圳科技基础研究基金(编号: KQCX20150324160536457),广东省人才项目2014TQ01X238、2015TX01X111及GDUPS(2015),山东省高 校科技计划项目J11LG88,澳门科学技术发展基金资助149/2016/A以及澳门大学资助SRG2015‐00050‐FST的支持。

作者地址:H.罗,淄博职业学院,深圳大学,山东省淄博市联通路,255314,中国;电子邮件: luo.wireless@gmail.com;K.Wu(通讯作者)和R.Ruby,深圳大学,广东省深圳市南山区南海大道3688号, 518060,中国;电子邮件:{wu,ruby}@szu.edu.cn;Z.Guo和F.Hong,中国海洋大学,山东省青岛市崂山 区松岭路238号,266100,中国;电子邮件:{guozhw,hongfeng}@ouc.edu.cn;L.M.Ni,澳门大学,中国 澳门氹仔大学大马路,邮箱:ni@umac.mo。允许为个人或课堂教学用途制作本作品的部分或全部数字或纸质 副本,但前提是不得以盈利或商用为目的复制或分发,并且在每份副本的首页或显示设备的初始屏幕上必须注明 本声明及完整引用信息。对于本作品中由非ACM拥有版权的组件,必须尊重其版权。允许注明出处进行摘要引用。 如需其他方式复制、重新发布、在服务器上发布、再分发到列表,或在其他作品中使用本作品的任何组件,则必 须事先获得特定许可和/或支付费用。可向美国纽约州纽约市彭广场2号701室ACM公司出版部(传真:+1 (212)869‐0481,或电子邮件:permissions@acm.org)申请许可。c© 2017 ACM 0360‐0300/2017/05‐ART28$15.00DOI:http://dx.doi.org/10.1145/3040990 ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。 本文档由funstory.ai的开源PDF翻译库BabelDOCv0.5.10(http://yadt.io)翻译,本仓库正在积极的建设当中,欢迎star和关注。

28:2 H.罗等

因此,水下声学传感器网络(UWA‐SNs)相关问题自2000[22, 35, 58]以来一直是一个活 跃的研究主题。然而,在此类网络广泛部署之前,该领域仍存在许多需要解决的挑战。其 中一个挑战在于开发新型且设计良好的仿真或实验平台,同时考虑合适且低成本的软硬件 组件、仿真工具、协议框架、传感器等[67, 82]。特别是在水下声学传感器网络研究中, 实验平台尤为重要。因为通过这些平台进行仿真、模拟或实验,研究人员能够以较低的成 本验证、调试和测试水下协议,同时缩短协议设计周期。迄今为止,研究人员已为陆地无 线传感器网络(terrestrialWSNs)开发了多种实验平台。然而,水下声学传感器网络中 的实体通过在时间和空间上变化的声学信道进行通信,这些声学信道在路径损耗、多径传 输、传播延迟、多普勒扩展、噪声等方面的特性与陆地无线电通信信道完全不同[2, 45]。 因此,为陆地无线传感器网络开发的实验平台无法直接用于水下声学传感器网络。

为了设计适用于水下声学传感器网络的仿真工具和真实测试平台1,研究人员遇到的挑 战比最初预期的要多。首先,精确建模时变和频率选择性水下声学信道具有挑战性[105], , 这使得设计准确且可靠的仿真工具或实验测试平台更加困难。为应对不断变化的水下通信 信道,声学调制解调器是水下声学传感器网络的关键组成部分,这些调制解调器用于根据 时变环境设计和实现自适应协议,以提高实验精度、灵活性和效率。其次,与陆地无线传 感器网络相比,建立水下声学传感器网络实验测试平台在部署、硬件和维护成本方面非常 昂贵。第三,由于该研究方向存在困难且投入较少,目前仅开发了数量有限的实用实验测 试平台,用于评估通信和网络协议。第四,在现实场景中有效评估和比较不同仿真或实验 平台的性能不仅困难,而且仍是一个开放性问题。

尽管构建仿真与实验平台的研究存在困难,但新兴的潜在应用和日益增长的研究兴趣 激励着研究人员设计和开发新型经济实惠、用户友好的仿真工具以及现场级实验测试平台。 因此,这些进展推动了水下声学传感器网络的快速发展。多年来,已开发出许多仿真平台 和现场级测试平台,这些平台要么使用基于软件的组件,要么采用更复杂的基于硬件的实 验组件。水下研究领域也投入了大量努力,致力于缩小基于仿真的实验室环境与真实现场 部署之间的差距,以促进从实验室级仿真和模拟向真实现场级实验的顺利过渡。

一般来说,为了对水下协议进行仿真、评估、验证或测试,研究人员目前依赖于三种 技术,即基于软件的仿真、基于硬件的仿真以及使用测试平台[128]的实地实验。为了降低 成本,基于软件的仿真中通常采用数学建模的物理层。基于硬件的仿真也称为模拟,其中 物理层模型被真实的水下声学调制解调器所替代。与真实现场级实验测试平台相比,使用 基于软件的仿真或基于硬件的仿真的性能评估成本要低得多。原因是通过仿真评估某些系 统的性能更加方便,因为这

在本文中,实验平台通常被称为测试平台。

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月

水下声学传感器网络的仿真与实验平台 28:3

使研究人员能够通过改变网络拓扑、流量模式、信道传播等因素来设计不同的系统场景。 此外,仿真可以在相对较低的成本下对大规模网络进行重复实验。

然而,基于软件和基于硬件的仿真技术都无法替代真实的现场级实验测试平台,因为 这些技术自身存在局限性。例如,仿真工具通常只考虑部分真实环境变量,从而导致信道 或环境动态的模型被近似简化。此外,这些技术有时未能充分考虑硬件特性,这会显著影 响系统性能[86]。另一方面,实地实验通常在真实环境中使用真实的传感器节点来测试或 验证所设计的协议。这类实验大致可分为小规模实验(例如在水池中进行)或大规模的真 实场景实验,后者通过在湖泊、河流或海洋中长期部署测试平台来实现。尽管每种技术都 有其优缺点,但在部署实际水下传感器网络应用之前的不同设计阶段,研究人员可能需要 综合运用所有这些不同的技术(例如仿真、模拟和实地实验)。

一些综述文章总结了多个方面,例如通信和时间同步技术[22, 46–48],信道行为与动 态[105],介质访问控制(MAC)、路由与组网[8, 19, 24, 92],部署与本地化[18, 43], 水下声学传感器网络的架构与测试[26,44, 117]。在[22],中,作者概述了该领域的一些 关键技术,例如点对点水下通信技术和组网协议。在[105],中,作者提供了关于此类网络 的信道传播模型及其统计特性的教程式概述。文章[44]总结了设计UWA‐SN应用中的主要 挑战和方法。作者还讨论了此类网络的一些其他问题和组件,例如硬件、仿真工具、水下 环境的动态特性、实验测试平台的开发等。最近,有一篇文章[24]发表,概述了 UWA‐SN领域的当前正在进行的研究活动,并总结了此类网络在物理层、MAC和路由协议 方面的逐步发展。尽管这些综述文章就模拟器和测试平台提供了有价值的建议和意见,但 它们并未真正关注水下测试平台,因此这些综述文章的讨论并不完整。

迄今为止,一些研究人员仅对为陆地无线传感器网络开发的仿真工具和测试平台进行 了综述[49, 52, 70]。例如,在[49], 中,作者对为无线传感器网络开发的测试平台和实 验工具进行了全面的综述,并深入讨论了该研究方向当前和未来面临的问题。最近也出现 了一些针对水下声学传感器网络的基于比较的综述文章。例如,在[102], 中,研究并比 较了四种基于ns‐2的仿真工具在不同特性方面的表现。SUNSET和DESERT在[89]中进 行了比较。在[126], 中,SUNSET和SeaLinx基于多个性能指标进行了评估和比较。 尽管上述文献对水下声学传感器网络(UWA‐SNs)中相关工具和测试平台的实验研究 问题有所贡献,但目前仍缺乏关于水下仿真平台和现场级实验测试平台的综合综述。因此, 本文选取了17种典型的仿真与实验平台,这些平台可为研究人员提供仿真、模拟甚至真实 的实地实验测试,如表I所示,旨在对自2004年以来开发的先进测试平台进行一次全面的综 述。本文的动机在于促进水下声学传感器网络的研究,并协助研究人员设计此类平台。具 体而言,本综述文章的贡献有两方面。首先,本文

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月

28:4 H.罗等

表一. 选定的仿真与实验平台

平台 发布年份 机构 实验室
Seaweb 1995/2004 美国海军及大学 TheOfficeofNaval 研究
Aqua‐Lab 2007 康涅狄格大学 水下传感器 网络实验室
UPPER 2007 国家CES大学 系统与网络 研究实验室(SysNet)
Aqua‐Sim 2009/2015 康涅狄格大学 水下传感器 网络实验室
UANT 2009 加利福尼亚大学洛杉矶分校 洛杉矶 网络与嵌入式系统 实验室
Aqua‐Net/Mate 2009/2013 康涅狄格大学 水下传感器 网络实验室
UW‐Buffalo 2012 纽约州立大学布法罗分校 水牛城 无线网络与 嵌入式系统实验室
DESERT 2012 帕多瓦大学 NAUTILUS项目实验室
SUNSET 2012/2013 罗马智慧大学 水下传感器网络组感知实验室
SeaLinx 2013 康涅狄格大学 水下传感器 网络实验室
UnetStack 2014 新加坡国立大学声学研究 实验室
海洋调谐网络(康涅狄格大学) 2014 康涅狄格大学 水下传感器 网络实验室
海洋调谐网络(华盛顿大学) 2014 华盛顿大学 网络实验室
日出计划(loon) 2014 北约科学技术 组织 海上研究与实验中心 研究与 实验
SUNRISE(波尔图) 2014 波尔图大学 水下系统与 技术实验室
SeaNet 2015 东北大学,波士顿 电气工程系 和计算机工程
Ocean‐TUNE(WaterCom) 2015 大学的大学 加利福尼亚,洛杉矶 网络化和嵌入式 系统实验室

文章对水下仿真与实验平台进行了综述,并指出了研究挑战、指标和未来趋势,这将帮助 研究人员设计出更加新颖且实用的测试平台。其次,我们从组件、功能、特性和局限性方 面总结了17种不同的平台,并提供了具体指南和建议,以帮助研究人员根据其特定需求选 择合适的研究平台。

为了说明水下测试平台研究的进展,本文根据部署规模、成本和测试平台特性,将所 选测试平台大致分为三类(例如实验室级实验测试平台、短期实验测试平台和长期现场级 实验测试平台),如表II所示。实验室级实验测试平台(例如Aqua‐Lab、UPPER(促进 实验研究的水下平台)、SeaNet、UANT(水下声学网络平台)、Aqua‐Sim和华盛顿大 学‐布法罗分校)主要专注于实验室级别的实验与测试。它们的部署成本相对较低,可进行 小规模实验,适用于早期测试以及初学者熟悉水下通信环境。短期实验测试平台(例如 Aqua‐Net、SeaLinx、UnetStack、DESERT和SUNSET)实际上可以同时支持实验室级 和现场级实验。然而,与专门为实地长期实验设计和部署的测试平台相比,这类测试平台 主要用于短期实验或测试。其成本为中等到高,部署规模为中等到大规模。它们大多数支 持仿真、模拟或

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

水下声学传感器网络的仿真与实验平台 28:5

表II. 仿真与实验平台的分类

分类 主要特征 测试平台
实验室级实验测试平台 低成本 Aqua‐Lab
小规模 UPPER
早期测试 SeaNet
适合初学者 UANT
Aqua‐Sim
UW‐Buffalo
短期实验测试平台 中等到高成本 Aqua‐Net/Mate
中到大规模 SeaLinx
短期测试 UnetStack
无缝过渡支持 DESERT
SUNSET
长期现场级实验测试平台 高成本和大规模 Seaweb
长期现场测试 Ocean‐TUNE(UCONN,
异构测试平台 华盛顿大学(UW),WaterCom
远程访问与控制 SUNRISE(LOON, 波尔图)

甚至是真实的现场级测试。长期现场级实验测试平台(例如Sea‐web、Ocean‐TUNE和 SUNRISE(Sunrise))主要专注于高成本的大规模长期实地部署。这些测试平台通常配 备有异构组件,如水下静态节点、自主水下航行器(AUV)、无人水下航行器(UUV)或 水面节点。它们还支持远程访问与控制功能,因为这些测试平台通常部署在远离海岸的海 洋中。

文章的其余部分组织如下。在第2节中,介绍了仿真与实验平台的主要组件。我们在第 3节中详细阐述了测试平台设计的指标。在第4节、第5节和第6节中,分别讨论了实验室级 实验测试平台、短期实验测试平台和长期现场级实验测试平台,并对每种类型进行了详细 的比较性讨论。选择仿真和实验平台的建议与推荐在第7节中给出。最后,第8节总结了文 章并提出了未来研究的一些方向。

2. 仿真与实验平台的组件

仿真与实验平台通常由基于软件的组件、水下调制解调器、静态或移动传感器节点以及用 户界面[22]组成。在基于软件的组件中,使用仿真工具、协议栈和操作系统(OS)来控制 整个系统。声学调制解调器负责测试平台中的数据传输。测试平台中通常包含大量静态或 移动传感器节点,用于从特定应用中感知或收集数据。另一方面,用户界面是为研究人员 在进行仿真、模拟或现场级测试时与测试平台通信或发送命令而开发的。在本节中,我们 将讨论仿真、现场级和实验室级实验平台的主要组件。

2.1. 基于软件的组件

在基于软件的组件中,仿真工具、水下协议栈、操作系统和信道模拟器尤为突出且重要。 仿真工具包括商用软件、研究人员编写的定制化仿真软件或其他免费开源网络软件。迄今 为止,研究人员已开发出许多知名的网络软件,例如OPNET[77, 120], Omnet ++[13, 76],以及 ns‐2[73],,适用于模拟/仿真水下传感器网络。其中,ns‐2是最可靠且广为人知的开源离 散事件模拟器,为分布在世界50多个国家的600多个机构提供了大量协议、网络和应用模 型。Ns2‐Miracle是ns‐2的扩展版本,增加了新库以支持跨层消息交换功能,并允许多 个协议存在于同一协议层中[11]。更重要的是,它在物理层使用Bellhop射线追踪软件 [94],为全球海洋模拟系统(WOSS)[17, 41]提供更真实的水下声学信道。除了商用网 络模拟器外,研究人员还使用C和C++语言开发了许多定制仿真软件[16]。Linux是典 型的操作系统,部署在测试平台和传感器节点的硬件上[71]。

由于软件定义无线电(SDR)能够使用软件组件替代传统的硬件组件,因此在水下声学传感器网 络(UWA‐SNs)中具有诸多优势[29, 54,72]。例如,为了应对恶劣的水下通信信道,采用SDR设计 软件定义调制解调器(SDM)是十分可取的,这种调制解调器能够适应复杂多变环境下的通信技术 变化 [20, 32] 。 GNU(Gnu非Unix)Radio是最流行的SDR架构之一,通常用于设计先进的调制方案以及构建系 统的早期原型。GNURadio提供了许多独立的功能模块,可用于快速构建原型,例如信号处理模块 等。这些模块在逻辑上相互连接,依次执行特定功能,从而在早期原型设计阶段替代真实的硬件组件 [40]。

2.2. 水声调制解调器

水声调制解调器是仿真与实验平台的关键组成部分。[24, 33]中提供了不同水声调制解调器 之间的更详细比较。在本节中,我们简要描述一些商用调制解调器、面向研究的调制解调 器以及软件定义调制解调器(SDM)[20]。

一些现成的商业声学调制解调器可供研究人员使用,其中最著名的商用水下声学调制 解调器包括LinkQuest[57],Teledyne[109], EvoLogics[36], AquaSeNT[7], DSPComm[34],Tritech[112], Devel‐ogic[30], AppliedOceanSystems[6],等。这 些调制解调器主要在数据速率低于10Kbps时,确保浅水和深水区应用中的可靠通信,并具 有低误码率。通信距离可从几百米到几公里,最大发射功率可高达60W。商用调制解调器 主要基于可靠的点对点远距离通信,因此在测试新协议和应用时,研究人员几乎无法调整 其硬件参数[104]。

为了满足研究社区的需求,在评估不同水下应用、协议和算法性能时,调制解调器应具备 可配置性。例如,研究人员应能够灵活地对调制解调器进行完全重新编程(如选择调制模式), 以支持自适应网络协议[14, 55]。迄今为止,已为研究社区开发了多种面向研究的调制解调器, 例如伍兹霍尔海洋研究所(WoodsHoleOceanographicInstitution)微型调制解调器、 rModem[118],等。其中,伍兹霍尔海洋研究所微型调制解调器(WHOIMicro‐Modem) 是最著名的调制解调器之一,最初是为小型低成本自主水下航行器(如REMUS[97])设计的。 然而,在后续阶段,增加了导航设备支持以及选择相位相干高速通信模式和发射功率的功能。 其通信模式的数据速率范围为80bps至5400bps,功耗范围为8W至48W[39]。

rModem也是一种可重构调制解调器,旨在简化基于跨层优化的实验研究[9, 104]。其现场可编程门 阵列

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

水下声学传感器网络的仿真与实验平台 28:7

示意图0

使研究人员可以从[1−100]kHz范围内选择载波频率。通过使用Simulink工具箱[104],, 研究人员可以访问调制解调器硬件,以处理数据传输或事件记录相关操作[9]。rModem可 与全向Teledyne换能器(例如AT‐408)配合使用,并可通过其四个可配置输入输出通道 实现多输入多输出传输[9]。尽管rModem具有可重构性,但其协议栈和Simulink工具需 在个人计算机(PC)上运行,这可能会影响其性能。

基于硬件的调制解调器的所有功能都可以由SDM中的基于软件的实现来替代,例如信号检 测、错误校正、调制和解调等[20, 37]。此外,使用软件定义调制解调器(SDM)可以更方便 地根据不断变化的海洋环境动态选择合适的通信技术,以实现最优性能[31, 71, 95]。

2.3. 静态和移动传感器

为了建立一个真实的 fi 在底层测试平台中,可能需要静态和移动传感器节点以实现混合组网[59, 62]。通常, 节点部署在海洋表面、海洋内部或海底附近[61, 63, 64, 122]。典型的静态水下声学传感器 节点结构如图1所示,包括用于控制整个节点的中央处理单元(CPU)、用于接收或发送消 息的换能器和调制/解调模块、用于感知周围环境的一组传感器、电源模块以及数据存储模 块。

移动传感器节点是现场级实验平台的基本组成部分。这类节点的典型示例包括自由漂 移传感器节点[53],自主水下航行器或无人水下航行器(UUVs)[65],或水下滑翔机[101]。 自主水下航行器或无人水下航行器(UUVs)可根据预先设定的配置,在水下安静且持续地 运行数月,依靠太阳能充电电池供电[4, 60, 78]。一种REMUS级AUV的航行速度约为1.5 m/s,功耗约为15W。然而,当功耗达到约110W时,其航行速度可高达2.9m/s[106]。水 下滑翔机是另一种类型的自由漂移节点,能够在海洋中自由漂流,且能耗极低[101]。

3. 仿真与实验平台的设计准则

对于任何应用,在设计仿真工具或实验平台时,研究人员都会遇到许多挑战。主要挑战在 于应对高度时变和空间变化的水下通信信道,并基于变化的环境条件和不同的应用需求提 供实时自适应平台。另一个挑战是设计一个完全可配置且灵活的测试平台,使研究人员能 够高效、准确地编程或配置硬件或软件参数,以测试不同的新型协议和算法。其他挑战包 括时间同步与事件定时;信道准确性;仿真、模拟与现场级测试的无缝集成与过渡;成本 与能效;测试平台的远程访问与控制设施;以及

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月

28:8 H.罗等

因此,为了克服上述挑战,我们认为在设计仿真工具或实验平台时,应考虑以下标准。

—可重构性和跨层设计支持:一个典型的测试平台应具备灵活的架构,并能够在不同的协 议层进行配置。该特性使研究人员能够通过调整涵盖广泛应用场景和条件的参数,对测试 平台的硬件和软件组件进行编程。基本上,测试平台构建的成功在很大程度上依赖于这些 特性。自适应性也是一个重要指标,它使测试平台具备一定程度的智能,以应对与事件相 关的动态环境。另一方面,水下声学通信信道具有高度动态性,因此其容量以及相应的通 信延迟具有位置依赖性,或在空间和/或时间上变化,甚至本质上具有突发性。为了在高度 动态且不断变化的水下声学信道中开发优化协议和算法,测试平台应提供一种机制,允许 研究人员交换跨层协议信息。如果高层(例如MAC、路由、传输甚至应用层)可以获得底 层信息(例如链路层或物理层),则研究人员能够以自适应的方式重新配置和控制测试平 台,以验证新设计协议和应用的性能。

—效率和准确性:任何测试或实验的效率和准确性在很大程度上取决于相应模拟器/测试平 台的架构、内存使用、功耗等。其中,测试平台架构、模拟/仿真信道的准确性以及时间同步是最关键的因素。准确的模拟/仿真信道可确保仿真工具或测试平台具备精确的声学传播 模型,能够捕捉实际水下声学信道的行为特性。因此,相应的模拟器/测试平台能够生成与 实际应用场景相比较合理的评估结果。时间同步是实时分布式传感器网络应用的基础,因 此仿真工具和测试平台应确保所有事件能够及时发生。

—无缝过渡支持:仿真、模拟和现场级测试在应用开发的生命周期中扮演着不同的角色。 仿真、模拟或现场级测试(SEFT)的集成及其无缝过渡对于任何工具或测试平台都至关重 要。研究人员通常首先通过仿真来消除协议设计中的常见错误,而无需使用任何水下硬件。 随后,在真实声学调制解调器或水下传感器上对前一阶段已验证的相同功能进行模拟,以 调试与水下硬件相关的错误。最后一步是在海洋中的现场级测试平台上实施协议或应用, 进行长期测试和验证。因此,集成仿真、模拟和现场级测试的测试平台极大地促进了应用 开发。对于此类测试平台而言,在开发的不同阶段之间实现无缝过渡且不产生误导性信息 交换至关重要。测试平台的效率还取决于为实现测试或实验不同阶段所编写的实际代码的 质量。

—Modem support:水声调制解调器是测试平台的重要组成部分。测试平台应支持现成的商 业和面向研究的水下声学调制解调器,并最好能够支持不同类型的调制解调器。可重构的 调制解调器使测试平台能够灵活地根据需要随时更改其配置,这有利于跨层设计以及处理 环境自适应问题。

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

水下声学传感器网络的仿真与实验平台 28:9

—资源的免费可获取性:可自由访问的测试平台允许更广泛的研究人员免费使用这些平台, 并促进协作式水下研究。为了充分利用这些开放访问测试平台,仿真工具或软件组件应能 从互联网下载,以便研究人员独立开展纯软件仿真。对于开放访问实验室或现场级测试平 台,其全部或部分设施应可供普通研究人员远程进行实地实验。

—远程可访问性:现场级测试平台通常部署在海洋中,因此远程访问设施为研究人员通过 互联网或基于云的技术随时开展实验提供了极大便利。研究人员应能够远程访问、控制和 重新配置测试平台的软硬件组件。研究人员经常执行的典型任务包括硬件或网络参数配置、 功能模式选择、传感器节点初始化等。其他任务包括上传面向实验的任务、下载实验结果 等。

—部署成本:根据不同的测试目标和实验要求,研究人员可以开展小规模、中等或大规模 实验。这是因为如果研究人员在任何情况下都进行大规模实验,将会产生巨大开销。为了 获得现场实验的多样性,测试平台应部署在与不同环境相关联的不同地理位置。为了满足 混合测试平台的多样性要求,系统中应同时包含静态和移动传感器节点,例如自主水下航 行器、无人水下航行器(UUVs)甚至水下滑翔机。

4. 实验室级实验平台概述及其比较

实验室级实验平台包括Aqua‐Lab、UPPER、SeaNet、UANT、Aqua‐Sim和 UW‐Buffalo。在本节中,我们将简要描述每个测试平台,包括功能描述、主要特征、局限 性等。然后,基于上述设计标准,对它们进行对比研究。

4.1 实验室级实验测试平台列表

4.1.1. Aqua-Lab

Aqua‐Lab(2007年)是由康涅狄格大学在 2007[79]开发的低 成本测试平台,配备真实的调制解调器。如图2所示,该测试平台由笔记本电脑、伍兹霍尔 海洋研究所调制解调器(WHOImodems)、混音器、水箱、水下扬声器和水听器组成。 笔记本电脑通过串行端口发送命令来控制声学调制解调器,然后这些调制解调器驱动水下 扬声器和水听器以实现水下声学通信。借助一套软件应用程序编程接口(API),研究人员 可以控制和重新配置调制解调器,以开发新的应用或协议。该平台还提供一个基于C语言的 仿真器,因此研究人员可以仿真网络拓扑、传播延迟和衰减,从而全面评估所需的算法和 协议。Aqua‐Lab还配备了声音混音器,用于模拟复杂的水下声学通信信道。

特点与局限性:配备真实的伍兹霍尔海洋研究所调制解调器,Aqua‐Lab提供了低成 本且可配置的环境。它适合初学者搭建自己的实验室级测试平台。初期有助于用户熟悉简单 的水下声学通信概念。然而,它在提供后续开发设施方面存在不足,无法进行复杂的仿真或 实验。另一个局限性是它无法模拟仅在两个调制解调器之间的并发数据传输。

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

28:10 H.罗等

示意图1

示意图2

4.1.2. UPPER

UPPER(2012)是一种超低成本(约25–60美元)的DIY(自己动 手做)式测试平台[1, 12]。为了降低测试平台的成本,该测试平台的开发者采用了一种较 便宜的水听器,并将其连接到声卡上,利用GNURadio实现基于软件的调制解调器。因此, 包括信号处理模块在内的数据调制与解调均由GNURadio实现,从而显著降低了成本。测 试平台结构如图3所示,由两个主要部分组成:中间层和物理层。中间层提供应用程序接口 (API),用于建立远程用户与软件调制解调器之间的通信,以实现数据或音调传输、向软 件调制解调器发送配置命令等。同时,它还管理中间层与水听器之间的通信拥塞

28:11

UPPER有两个版本:v1和v2,通信范围分别为6–10米和30–60米[12]。

特点与局限性:UPPER是一个受DIY(自己动手做)启发的低成本试验平台,可让 初学者在实验室中轻松搭建水下测试环境。因此,它适用于早期水下实验、协议以及应用 设计的初步测试与验证。其局限性在于

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

水下声学传感器网络的仿真与实验平台 28:11

示意图3

测试平台支持的通信范围有限,由于成本限制,小于60米。出于同样原因,它不适用于大 规模仿真,且仿真中缺乏精确的水下信道模型。

4.1.3. SeaNet

SeaNet(2015年)由东北大学于2015年开发,是一种基于声学通信 介质的低成本、完全可重构的软件定义网络框架[28]。通过利用SDR的特性(例如模块化 架构、灵活设计等),它提供了完全可重构的协议栈(例如物理层、数据链路层、网络层 和应用层)。此外,它支持跨层设计,并根据环境和应用条件的变化,为通信和网络协议 提供实时自适应功能。例如,物理层通过一些用户定义决策算法,为协议设计者提供选择 前向纠错编码速率和调制方案的自适应机制。SeaNet的初步原型采用廉价的商用现成硬件 制成,因此成本较低。

特点与局限性:SeaNet是一种基于软件定义无线电(SDR)开发的低成本、完全可 重构的水下测试平台,用于下一代水下声学传感器网络(UWA‐SNs)。其局限性在于仅 支持初步原型的构建,例如在小型水箱中的实验。因此,需要进一步改进以支持更全面的 实验。

4.1.4. UANT

UANT(2009)旨在提供一种灵活的方法来修改系统参数,而无需涉及任何专 用硬件组件[71, 110]。通过GNURadio和著名的仿真工具TOSSIM(TinyOS模拟器)[40, 110], , UANT提供了可配置的物理层、MAC层和应用层。因此,研究人员可以在配备Linux操作系统或 TinyOS的个人计算机上快速实现或比较其提出的方案(例如协议、物理层调制方案)。UANT的示 例架构如图4所示。它包括通用软件无线电外设收发器[113],,该收发器连接至硬件换能器,以及 GNURadio、基于TinyOS的TOSSIM模拟器和基于TinyOS或Linux的应用。GNURadio为 UANT提供可配置的物理层。当研究人员需要设计新的先进调制方案时,可以利用GNURadio提供 的丰富调制方案库和信号处理模块进行快速原型开发,而无需涉及任何专用硬件。 UANT还通过部署TinyOS或Linux操作系统提供可重构的应用层。UANT在配备TOSSIM的个 人计算机上运行TinyOS应用。由于TinyOS是专为能量受限传感器设计的一种著名的开源操作系统

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

28:12 H.罗等

示意图4

网络方面,UANT利用它构建真实的水下环境。为了精确模拟特定环境,UANT会修改 TinyOS配置文件,以满足不同水下应用的具体需求。因此,由于使用了相同的操作系统, 为仿真实现的程序可以几乎无需额外工作即可转移到真实的水下传感器网络环境中进行部 署。对于更复杂的应用,UANT通过引入虚拟以太网卡并结合LinuxTCP/IP(传输控制协 议/互联网协议)协议栈,为配备TinyOS的节点分配IP(互联网协议)地址。因此,当应 用程序处于运行模式时,节点可以通过其IP地址利用TCP/IP协议相互通信。TCP/IP协议 的另一个优势是研究人员可以配置MAC或物理层,以研究特定应用的性能。

特点与局限性:UANT可能是首个为水下通信协议栈的低层和高层(如物理层、 MAC层和应用层)提供可重构灵活性的测试平台。UANT采用了知名的开源工具,例如软 件定义GNU无线电、TinyOS和Linux操作系统,为研究人员提供跨层设计灵活性。 UANT还是一个完整的基于端到端网络的水下测试平台。此外,借助TinyOS,仿真中实 现的程序可以轻松地移植到实际的水下传感器网络中。其局限性在于,在嵌入式传感器上 运行GNURadio非常困难,且对基于TinyOS和TOSSIM的原始陆地传感器网络进行修 改和测试以用于水下通信也并非易事。TinyOS还具有僵化的接口,使其与GNURadio中 整个物理层的互换极具挑战性[28]。

4.1.5. Aqua-Sim

Aqua‐Sim(2009‐2015)是在著名模拟器ns‐2[73],基础上开发 的,可能是首个针对水下网络的完整分组级仿真工具。其初始版本于 2009[121],开发完成, 信道和物理层模型分别在2013年和2014年得到改进[127, 128]。2015年,ns‐3[74]作为 ns‐2[66]的扩展版本被引入。如图5所示,在[121],中,Aqua‐Sim包含了额外的水下网 络协议,并且能够独立于旧的ns‐2仿真包进行演进。此外,与ns‐2类似,Aqua‐Sim采用 面向对象设计风格,因此可以将新的功能或协议模块作为新对象引入。

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

水下声学传感器网络的仿真与实验平台 28:13

示意图5

由于Aqua‐Sim初始版本使用了基础的声学信道模型,研究人员发现此前所有现场级实 验的整体性能较差是由于数据传输周期中的长前导码和低传输速率所致。因此,在[127], 中,Aqua‐Sim的信道模型通过综合考虑多种因素(如物理因素、环境动态)得到了改进。 该版本的Aqua‐Sim通过考虑声信号折射来响应海洋环境中的物理因素和影响。在这种环境 中,声信号折射可能由海床沉积物类型(如沙、粉砂、黏土)、水柱深度以及风和波浪效 应产生的噪声引起。此外,该模型还集成了浅水衰减模型,即罗杰斯模型[100],,该模型 考虑了沉积物类型,使涉及的传输损耗更加真实。同时,还考虑了当前商用声学调制解调 器应用中的两个实际系统参数。 在[128],中,基于上述工作,作者通过将抛物线方程(PE)模型集成到物理层以替代 基于射线的模型,进一步提高了仿真的准确性。其中一种PE模型,即蒙特雷‐迈阿密抛物线 方程(MMPE)[103],被选用于模拟器,以捕捉随海面动态变化的声信号传播。然而,当 PE模型与物理层集成时,不仅带来较高的计算开销,而且需要较长时间才能完成一次仿真 任务。因此,大多数PE模型(例如MMPE)无法直接集成到Aqua‐Sim中。为解决此问题, 如图6所示,需首先运行MMPE模型,然后使用MATLAB处理其输出以生成查找表。该表 通过提供信道传播的精确信息来提高仿真精度。

特点与局限性:Aqua‐Sim是为数不多的可供公众使用的开源仿真工具之一,可从互 联网下载。此外,它是一个分组级仿真平台,为研究人员提供了丰富的水下网络协议。它 还提供了仿真部署环境的三维结构。尽管它采用罗杰斯模型和PE模型来提高仿真信道的准 确性,但这些模型在浅水环境中可能更为敏感。另一个局限性是,与大多数射线追踪模型 相比,PE模型通常会带来较高的计算开销,尽管PE模型在使用Aqua‐Sim时对多径传输损 耗具有更好的预测能力。然而,它应支持射线追踪模型以提供更精确的仿真信道。

4.1.6. UW-Buffalo

UW‐Buffalo(2012)旨在基于TelesonarBenthos( SM‐75)调制解调器提供一个共享可重构水下网络平台。为了应对不断变化的水下通信环 境,它采用跨层设计,通过高层与链路层或物理层之间交换信息[55]。商用的Telesonar Benthos(SM‐75)调制解调器并不

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月

28:14 H.罗等

示意图6

为研究人员提供实现自定义MAC和网络协议的接口。其原因是这些协议的原始代码块嵌入 在调制解调器的DSP(数字信号处理)中,因此研究人员无法修改或重新配置它们。 UW‐Buffalo通过将调制解调器与Gumstix处理器集成来修改其实现方式,Gumstix处理 器是一种尺寸类似于口香糖的小型知名可编程系统板[42]。因此,这使得研究社区能够按 需开展先进的网络实验。 如图7所示,通过利用网络API,在TeledyneBenthos调制解调器中开发了调制解调 器管理协议(MMP)。该调制解调器的原生协议层被完全绕过,其原有功能被转移至 Gumstix处理器。借助MMP,可以在保持物理层和数据链路层原有实现不变的情况下,通 过Gumstix处理器与调制解调器之间持续交换消息来控制或重新配置调制解调器。为了支 持跨层设计,设计了一个名为跨层控制器(XLC)的新模块,用于控制和调节不同协议层 之间的信息交换。XLC需要借助MMP,通过监控调制解调器状态来获取物理层和逻辑链路 控制层的信息。通常,一组与调制解调器物理状态相关的参数会在XLC中被监控、存储和 更新。类似地,链路层和网络层的信息,如链路可靠性、信道竞争、路径延迟等,也被存 储并在XLC中更新,以支持跨层设计。该测试平台包含TelesonarBenthos品牌的 SM‐975和SM‐75调制解调器,并集成了一个水下模拟器,以模拟不同的水下信道,实现全 面的实验场景。此外,它还配备了一个IP兼容协议栈,用于水下互联网接入[107]。

特点与局限性:UW‐Buffalo对商用的TelesonarBenthos(SM‐75)调制解调器 进行改造,提供一个可重构的跨层设计支持平台。通过应用程序接口(API)和XLC模块, 研究人员可以利用来自链路层或物理层的底层信息,在高层(例如MAC、网络或应用层) 设计跨层优化协议。此外,该平台具备IP兼容协议栈(如IPv4和IPv6),便于实现互 联网接入。其局限性在于,它的信道仿真器无法与真实水下信道相媲美,可能需要采用基 于射线追踪的水声模型来提高信道准确性。 此外,它在大规模仿真方面的能力弱于著名的ns‐2模拟器或TOSSIM。

4.2. 实验室级测试平台之间的比较

在表III中,我们从硬件或软件组件、支持的调制解调器、信道适应能力、成本以及跨层设 计灵活性等一系列特性方面,对不同的实验室级实验测试平台进行了比较。接下来,我们 将基于上述突出且相关的设计标准,对这些测试平台进行更详细的对比研究。

可重构性和跨层设计支持:可重构性选项为研究人员提供了灵活性,使其在设计实验 时能够采用跨层交互支持,或根据面向应用的需求或环境动态调整测试平台的配置。 Aqua‐Lab和UW‐Buffalo均具有灵活的架构,并配备了可重构调制解调器。Aqua‐Lab 提供应用程序接口(API)以配置WHOI调制解调器的各种选项,例如设置不同的功能参 数或选择不同的功能模式等;而UW‐Buffalo则提供了对其TeledyneBenthos调制解调 器的重构灵活性。SeaNet的重构灵活性源于其基于软件定义无线电的架构。另一方面, UPPER和UANT的灵活架构也基于SDR和GNURadio。UPPER主要采用SDR和 GNURadio来实现通信中的声学调制与解调特性,并允许研究人员配置调制模式、频率和 数据速率。UANT利用GNURadio提供可配置的物理层,其中传输比特率和中心频率均 可轻松配置。由于嵌入式设备因计算复杂度较高而不适用于GNURadio,通常使用个人计 算机(PC)来运行GNURadio。 UW‐Buffalo、UANT和SeaNet也支持跨层设计。UW‐Buffalo配备了XLC模块, 可实现物理层与高层之间的连接。因此,研究人员可以通过运行在Gumstix板上的软件定 义协议栈来实现跨层优化的协议。丰富的跨层设计支持覆盖多个层,进一步帮助研究人员 快速、简便地找出影响其应用功能的因素。作为rModem(仅在低层协议层提供重新配置 选项)的补充平台,UANT可能是首个提供重新配置功能的水下平台

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

28:16 H.罗等

在三种不同的层(如网络层、MAC层和物理层)上提供灵活性。SeaNet在四个层面上提 供了更加灵活的跨层设计支持。这四个层面分别是物理层、数据链路层、网络层和应用层。

效率和准确性:为了提高仿真中不同应用的信道自适应能力,UW‐Buffalo和 Aqua‐Sim均提供了信道仿真器。UW‐Buffalo的仿真器基于Teledyne(SM‐75)调制解 调器开发,允许研究人员开展小规模以实验室为中心的实验。Aqua‐Sim集成了Rogers和 PE模型,提供了更精确的水下声学信道,从而在细粒度级别上提高仿真精度。 Aqua‐Sim也是首个开源的完整分组级水下网络仿真平台。Aqua‐Sim和UANT均基于知 名且功能强大的开源仿真器开发,而其他平台则使用C、C++或其他编程语言进行专有实 现。Aqua‐Sim建立在ns‐2基础之上,但它并未对现有的ns‐2无线包进行补丁修改,而 是设计了一个与卡内基梅隆大学(CMU)无线包并行的新仿真包,因此具备独立演进的能 力。UANT在仿真中采用TinyOS的TOSSIM,以支持其真实的水下部署并提升效率。 UANT的一个缺点是,TOSSIM和TinyOS最初是基于IEEE802.15.4标准为陆地无线传 感器网络设计的,因此若将其用于水下声学传感器网络,则需要在TOSSIM中增加更多支 持,以实现重构和自适应功能。

无缝过渡支持:尽管该组中的六个测试平台适用于现场级实验,但它们的主要重点仅 限于实验室级实验评估和开发。Aqua‐Lab主要专注于使用其仿真器和可配置的伍兹霍尔海 洋研究所调制解调器进行模拟,以在更接近实际的环境中评估协议。通过Aqua‐Lab的仿 真器,研究人员可以根据自身偏好设置网络拓扑、传播延迟等。尽管UPPER可用于在湖泊 中进行实验,但由于成本限制,它更适合在实验室环境中进行初级阶段的实验。SeaNet也 适合使用定制硬件组件快速构建初级测试原型,尤其可用于验证物理层、数据链路层、网络 层和应用层等不同层的协议。UANT是一个基于TOSSIM的框架,尽管并不完全将 TOSSIM作为仿真工具使用。TinyOS是传感器节点的嵌入式操作系统,因此研究人员可以 轻松地将经过仿真实现验证的代码块转移到真实网络环境中。Aqua‐Sim借助强大的仿真 工具ns‐2,集成了大量协议,并支持在部署中使用三维虚拟环境。然而,目前 Aqua‐Sim主要仅专注于仿真和模拟。

Modem支持:调制解调器在协议仿真、验证和测试中起着重要作用。Aqua‐Lab、 SeaNet、UW‐Buffalo和Aqua‐Sim均配备了真实商用的水下调制解调器。如表III所示, Aqua‐Lab支持WHOI微型调制解调器,SeaNet支持TeledyneRESONTC4013, UW‐Buffalo支持TelesonarBenthosSM‐75,Aqua‐Sim支持Benthos声学调制解调器。 另一方面,UPPER和UANT则采用低成本水听器和换能器作为调制解调器的替代方案。

资源的免费可获取性:在六个测试平台中,目前只有Aqua‐Sim为研究社区提供了一 个开源软件包,并且Aqua‐Sim的新版本(2.0)最近已发布[125]。此外,这六个测试平 台的实现并不十分复杂,因此研究人员可以借助已发表文献轻松模拟类似的或不同的水下 测试环境。

远程可访问性:由于实验室级实验测试平台主要在实验室中使用,因此远程访问与控制对于这类测试 平台而言并非重要指标。

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

水下声学传感器网络的仿真与实验平台 28:17

然而,一些测试平台具备远程访问功能。UPPER的远程访问功能通过远程过程调用实现, 这需要在中间层中扩展API。UW‐Buffalo拥有IP兼容协议栈,未来将提供便捷的水下互 联网接入。

部署成本:由于所有这些测试平台都部署在实验室环境中,因此它们的部署成本相对 较低。其中,Aqua‐Lab和UPPER的部署成本最低。尽管Aqua‐Lab属于早期版本的仿真测 试平台,但它提供了基于伍兹霍尔海洋研究所调制解调器的低成本可配置平台。因此,它 适用于新进入的研究人员在设计初期建立信心并评估其设计的协议。与Aqua‐Lab类似, UPPER也专注于降低成本,以便让更多研究人员能够使用。尽管由于成本较高,UPPER 可能不适合在大面积的海洋或海中部署,但在实际进行现场级测试或实验之前,使用 UPPER在早期阶段评估所设计的协议仍被认为是经济可行的。SeaNet也是基于低成本的商 用硬件组件构建的,以降低部署成本。

5. 短期实验平台概述及其比较

迄今为止,属于此类别的测试平台包括Aqua‐Net/Mate、SeaLinx、UnetStack、 DESERT和SUNSET。在本节中,我们将对它们进行简要描述,然后基于上述设计标准对 其进行对比研究。

5.1. 短期实验测试平台列表

5.1.1. Aqua-Net/Mate

Aqua‐Net(2009)和Aqua‐NetMate(2013年)分别由 康涅狄格大学于2009年和2013年开发[83, 124]。与主流的模拟器ns‐2或TOSSIM不同, Aqua‐Net是从零开始开发的,并支持跨层设计。由于最初的Aqua‐Net是为真实系统设计 的,不具备仿真功能,因此后来被扩展以提供此类功能,并命名为Aqua‐NetMate[124]。 由于采用了实时调度机制,Aqua‐NetMate的事件调度效率与Aqua‐Net相同,研究人员可 根据需要轻松地在仿真和实验测试之间切换。Aqua‐Net可运行在嵌入式Linux操作系统之 上,使用微型调制解调器作为通信设备,Gumstix作为控制器。Aqua‐Net曾在2011年在一 个湖泊中进行了测试(一项名为Aqua‐TUNE的实验[81]),并在 2013[80]年在大西洋进 行了测试。 Aqua‐Net的架构如图8所示。物理层支持多种类型的调制解调器,通过封装器实现现 实场景下的水下网络。该封装器依据国家海洋电子协会的串行通信标准开发,用于指导水 下设备与非海洋设备的连接。套接字接口供研究人员创建协议或复用现有实现以开发新应 用。为实现跨层设计,不同层的信息存储在系统数据库中,然后通过跨层接口被各层利用, 以提升网络性能。如图9所示,Aqua‐NetMate中新增了三个层,分别为适配器、虚拟调 制解调器和虚拟通道。虚拟调制解调器用于模拟真实调制解调器,通过适配器与 Aqua‐Net连接。虚拟通道是不同虚拟调制解调器之间的通信信道。 一个基于Linux开发的Aqua‐Net版本于2011年在湖泊(曼斯菲尔德霍洛湖)中进行了 测试,该版本称为Aqua‐TUNE[81]。部署的实验Aqua‐TUNE使用了四个节点。每个节点 配备一个浮标,同时装有无线电和水下声学调制解调器,用于水面和水下通信

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月

28:18 H.罗等

示意图7

示意图8

通信。此外,该节点还配备了GPS(全球定位系统)功能,以获取其瞬时位置信息。借助 Aqua‐TUNE,研究人员可以调整一些特性或功能,例如节点定位、时间同步、节点发射功 率、网络协议等,以验证其设计的协议。2013年,Aqua‐Net在大西洋[80]进行了测试。该 实地实验在10公里开阔海域部署了11个节点。实验的目的是识别、研究和分析影响网络协议 性能的各种因素。

特点与局限性:Aqua‐Net是从零开始开发的,因此研究人员可以更轻松地定制水下 网络协议。与其他仿真工具(如ns‐2)相比,Aqua‐Net占用空间更小,这最终有利于嵌入 式传感器网络。Aqua‐Net的一个缺点是调制解调器中仅支持一种协议,导致资源利用 效率低下。

5.1.2. SeaLinx

SeaLinx(2013年)源自Aqua‐Net及其克服了Aqua‐Net一些缺点后的扩展 框架[56]。凭借优化跨层设计的能力,SeaLinx提供了更优的解决方案。如图10所示,SeaLinx

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

水下声学传感器网络的仿真与实验平台 28:19

示意图9

包括三个部分:协议模块、SeaLinx核心和调制解调器驱动。这种架构使SeaLinx成为一个协 作式工具,而非单体式工具。在典型的协议栈中,每个协议层只能与其相邻的层直接通信,例 如其上方或下方的层。相反,在SeaLinx中,每一层都可以通过SeaLinx核心与协议栈中的任 何其他层直接通信。 在Aqua‐Net中,每个调制解调器只能处理一种协议,这导致资源利用效率低下。因此, 在SeaLinx中,每种协议由独立的进程运行。这样,每种协议都可以独立修改或重启。如果 某一协议无法正常工作,则对协议栈中其余进程的影响最小。此外,SeaLinx中的仿真代码 块也可直接用于现场级实验而无需更改。基于SeaLinx,在[51],开展了基于正交频分复用 (OFDM)调制解调器的真实海面测试。

特点与局限性:由于SeaLinx在实时系统上运行,该工具中的事件调度几乎精确且准 确。此外,其操作架构本质上是分布式的,因此仿真用的代码模块无需修改即可用于模拟。 它还支持多进程和多线程应用。因此,在时序上具有更高的准确性,适用于测试时间敏感 型协议。其局限性在于,由于实时操作,在此平台上进行的测试可能会出现效率损失。

5.1.3. UnetStack

UnetStack(2014)是一种基于Fjage代理框架[21]的新型水下 网络试验台。该测试平台最显著的特点是不采用传统的基于层次结构的协议栈,而是由多 个软件代理组成,构建出一种面向服务的架构。这些代理能够共享信息并相互通信,因此 与传统分层架构相比,更容易实现跨层优化。此外,UnetStack将Java虚拟机(JVM)作为其 组件之一,支持离散事件仿真和实时操作。因此,在JVM的支持下,一旦在UnetStack上 通过仿真开发和测试了协议和应用,仿真代码块便可直接用于任何符合UnetStack标准的 调制解调器,以进行后续的现场级实验。这样一来,研究人员可以避免为仿真和现场级实 验分别编写代码的繁琐工作。截至目前,UnetStack已支持多种类型的

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月。

28:20 H.罗等

示意图10

示意图11

调制解调器,例如Subnero、埃沃逻辑和ARLUNET‐II[23]。UnetStack还支持软件定义调制解调器 (SDM),并且[20]提供了适用于UnetStack的OFDM调制解调器的实现。 UnetStack的架构如图11所示,包括UnetStack代理、Fjage代理框架、Java虚拟机和 调制解调器。协议栈中的代理提供了类似传统网络协议栈中各层的明确定义的功能。通常情 况下,代理之间通过不同类型的消息进行通信,例如请求、响应和通知。除了这些低级代理 间通信外,UnetStack还支持高级通信,以监控或控制其他代理。除了基于消息的代理间 通信外,UnetStack还支持消息广播服务,使得一组已订阅代理能够接收到其订阅主题的 相关消息。需要注意的是,面向服务的代理架构具有高度可扩展性,因此使研究人员能够开 发、测试并向传统基于层的网络架构所不支持的过程中添加新功能。图12描绘了 UnetSim的架构,其中节点通过部署在其上的物理代理相互交互。研究人员可以直接或远 程访问协议栈

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月

水下声学传感器网络的仿真与实验平台 28:21

开源fjage代理框架,支持基于文本的命令,并可在仿真模式下通过物理代理(驱动程序)使用真实的硬件 调制解调器。

特点与局限性:UnetStack的基于代理、面向服务的架构为应用、仿真、现场级测试和部 署提供了快速且灵活的跨层设计支持。此外,由于UnetStack具有JVM组件,因此为仿真编写 的编译后的二进制代码块可直接转移到兼容UnetStack的调制解调器上,用于进一步的实地实验。

5.1.4. DESERT

DESERT(2012)是一种基于ns‐2和Ns2‐Miracle的开源仿真、 模拟和实验工具,由帕多瓦大学开发[15, 68]。Ns2‐Miracle是ns‐2的扩展版本,增加了 许多新库,以增强跨层设计和优化的信息交换机制[75]。在Ns2‐Miracle中,多个模块可 以在同一层中同时共存,且相互之间交互较少。此外,其高度模块化的架构使研究人员只 需进行少量修改即可重用为ns‐2编写的大量代码块。它进一步利用模块化特性,在充分考 虑跨层信息的基础上优化系统设计。 DESERT的架构如图13所示。物理层提供了模拟器与真实硬件调制解调器(例如 Micro‐Modems、Evologics)之间的接口。移动性模块实现了四种不同的二维(2D)或 三维移动模型,用于模拟水下机器人运动。与真实的硬件设备类似,Ns2‐Miracle的架构 是逻辑性的,因此在评估用户设计的应用和协议性能时能够提供有效的结果。此外, ns2‐Miracle通过连接特定的水下信道模型工具(例如WOSS)[41]来提高其仿真精度。 Ns2‐Miracle还可以将真实硬件调制解调器集成到仿真过程中,从而在开发高性能协议和 应用时创建更加真实的环境。 DESERT支持模拟和测试平台设置。在模拟设置中,如图14所示,多个声学调制解调 器连接到一台个人计算机或笔记本电脑,该计算机运行单个ns2‐Miracle进程以控制所有调 制解调器及其连接的声学换能器。另一种是测试平台设置,如图15所示,其中每个声学调 制解调器由独立的ns2‐Miracle实例或相关设备进行管理。RECORDS(水下网络远程控制 框架)使得DESERT能够在真实现场试验中实现远程控制[111],,这已经

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月

28:22 H.罗等

示意图12

示意图13

示意图14

在海上研究与实验中心(CMRE)成功进行了实验[67]。

特点与局限性:DESERT基于ns‐2和Ns2‐Miracle开发,能够以无缝方式集成仿真、 模拟和现场级测试。它也是一个可从互联网下载的开源框架。尽管DESERT架构简单,并 提供了仿真、模拟和现场级测试之间的无缝过渡灵活性,但它存在一些局限性,例如资源 和能耗较高。

5.1.5. SUNSET

SUNSET(2012)也是一个从ns‐2和Ns2‐Miracle开发而来的开源平台。与 DESERT类似,它提供了类似的功能,例如在仿真、模拟和现场级测试之间提供无缝过渡支持,同时

ACM计算调查,第50卷,第2期,文章28,出版日期:2017年5月。

水下声学传感器网络的仿真与实验平台 28:23

示意图15

评估新型应用和协议的性能[84]。例如,研究人员可以首先使用SUNSET的仿真模式来实 现、评估并改进其设计的应用和协议。然后,根据需要,他们可以将仿真代码块用于模拟 或海上实地测试。当研究人员从仿真切换到模拟或海上实地测试时,无需对其编写的设计 应用和协议的代码块进行重大修改。目前,SUNSET支持多种声学调制解调器,包括 TeledyneBenthos调制解调器、Kongsberg、Evologic和微型调制解调器。此外, SUNSET还集成了各种水面或水下移动载体(自主水下航行器(AUVs)或自主水面航行器 (ASVs))以及不同类型的节点,用于测量海洋的温度、CO2,或其他物理层或环境特性。 它还支持跨层优化协议或应用的设计。 SUNSET分别于2012年和2013年向研究社区发布了版本1.0和版本2.0。SUNSET的最 新版本提供了通过水下声学通信介质和后座驾驶员模块[88]远程控制或重新配置测试平台 的机制。借助SUNSET,已通过在三个不同国家部署其组件开展了大量实验[25]。由于 SUNSET具备协作和远程管理功能,此类部署成为可能。SUNSET已通过15次以上的测试 和实验得到了广泛评估。它被选为欧盟FP7计划SUNRISE项目的标准测试平台, SUNRISE是一个基于水下物联网、部署于欧洲和北美洲的欧盟第七框架计划项目[5, 67]。 SUNSET的功能框图分别如图16和图17所示,对应仿真模式和模拟模式。SUNSET包 含三个主要模块:核心组件、网络协议和仿真组件[86]。在图17中,新增了多个模块,包括 应用驱动器、数据包转换器、通用驱动器、调制解调器驱动、信道仿真器和多线程实时调 度器。应用驱动器通过提供设置/获取外部设备参数或执行所需操作的方法,实现了与任意 外部设备进行数据交换或交互的便捷集成。外部设备通常包括真实传感平台和水下自动航 行器,例如AUV/自主水面航行器。数据包转换器用于在传输前尽可能减小数据包头部大小

ACM计算调查,第50卷,第2期,第28篇文章,出版日期:2017年5月

28:24 H.罗等

示意图16

实际设备。这是因为在仿真中,一个数据包包含一些冗余的头部信息以承载额外的数据, 这些信息可用于调试或统计目的。通用驱动器负责协助真实硬件调制解调器与ns‐2模拟器 之间的交互。SUNSET支持多线程实时调度技术。这允许某个任意程序(处理一个网络协 议)拥有多个线程,其中主线程与主程序相关联,而辅助线程可以是连接外部设备以实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值