李翰林,裴 江,陈传良
(中国船舶集团有限公司第八研究院,南京 211153)
随着军事通信中信息化水平的提高和泛在互联应用需求的增加,无线通信系统呈现出全方位、多元化、专业化趋势。以往单纯依靠设计经验对网络进行规划设计、开发网络设备与网络协议的方式效率较低,一体化的军事信息系统需要能够预测网络性能、预估通信网络中关键指标的技术手段,网络仿真能够根据应用要求和评价指标设计网络模型,分析并验证网络设计方案,可为实物系统的研发提供很好的技术支撑,是目前得到广泛应用的通信网络规划设计方法。
网络仿真软件OPNET是由美国OPNET Technology公司开发的大型通信与计算机网络仿真软件包,为通信网和分布式系统的模拟提供了全方位的支持,是目前先进的网络仿真开发和应用平台之一。大量研究使用基于该软件的网络仿真技术对通信网络性能进行评估[1-4]。
在无线自组织网络中,当各个节点独立启动后,按照协议与其他节点形成网络,并展开通信;无线自组织网络具有自组织和网络拓扑动态变化的特点;可靠的组网时间对保证此类网络有效运行十分重要。本文采用软件OPNET,基于实物通信节点软硬件建立了网络仿真模型,利用仿真结果统计评估某项目中通信网络的性能,预测该通信网络的组网时间。
本文网络采用基于TDMA接入的延迟确定性网络协议,并通过自组织发现和搜索构建集中式多跳网状拓扑网络结构。
网络按照周期运行,每个执行周期划分为5个帧,每一帧划分为固定个数的定长时隙,每个时隙划分若干微时隙(Mini Slots),微时隙没有固定长度,其长度由各个时隙拥有节点根据业务长度决定。
全网分为中心节点与普通节点2类。中心节点负责全网态势统一、维护与下发,同时根据统一态势完成时隙资源的统一分配;当进行网络融合时,由中心节点根据融合准则授权网间桥接节点进行融合流程;当组网完成后,全网只有一个中心节点存在。网络中的其他节点为普通节点,具备中心节点的计算能力,但由于全网态势等原因,主要用于完成信息收发及路由转发任务。
中心节点根据业务需求及链路实际将时隙分配给所需的网内节点,中心节点定期发送信标(beacon),以进行网络管理和新节点扫描发现等功能。
网络协议栈规划采用网络层、Mac层和物理层三层架构:网络层主要负责态势管理、网络维护、路由管理以及资源调度,实际硬件系统中主要在CPU处理器中实现;Mac层主要负责完成重传机制、数据中转、优先级控制、传输队列、时隙控制、收发控制以及波束控制,在实际硬件系统中通过CPU和FPGA联合实现;物理层主要负责完成控制信道、窄带、宽带信道的调制解调和编解码等处理,在实际硬件系统中由FPGA和数字阵列天线实现。
节点组网包含孤立节点入网与网络融合两种情况,在两种组网情况下存在以下4种节点状态:
(1)孤立节点。节点开机时的默认状态,执行入网流程;
(2)普通入网节点。节点已入网,且不负责维护全网的时隙分配和态势;
(3)中心节点。节点已入网,且负责维护全网的时隙分配和态势;
(4)休眠节点。节点已入网,且处于网络融合过程中,等待主网络的激活beacon。
节点转移规则如图1所示。
节点开机后进入孤立节点状态,孤立节点入网可分为两种情况,如图2所示。在图2(a)中,孤立节点与中心节点完成认证流程,中心节点可直接为该孤立节点分配节点号和时隙;在图2(b)中,孤立节点与普通入网节点完成认证流程,普通入网节点将认证结果发送给中心节点,中心节点为该孤立节点分配节点号和时隙。
节点开机自动进入孤立节点状态。孤立节点入网时的包交互流程如图3所示。待入网节点与网内节点完成握手认证与态势信息交互,收到网内节点beacon包,按中心节点分配的时隙正常工作,表明入网成功。
图3 孤立节点入网认证的包交互流程
若通信网络中包含不同子网,则两个网络须进行融合。网络融合可分为4类,如图4所示,图中网络①表示被融合网络,网络②表示融合网络,(a)、(b)、(c)、(d)分别对应以下4种情况:被融合网络中心节点与融合网络中心节点交互;被融合网络中心节点与融合网络非中心节点交互;被融合网络非中心节点与融合网络中心节点交互;被融合网络非中心节点与融合网络非中心节点交互。
图4 网络融合的4种情况
网络融合分为4个阶段:
(1)网外信息收集阶段。当普通入网节点收到网外beacon时,首先决策本网络是否融入该网络。如果决定融入,普通入网节点以数据包的形式将外网信息发送给中心节点。
(2)决策阶段。最终的融合决策由中心节点给出。当中心节点自身收到网外beacon或收到网内节点上报的beacon信息后,启动定时器,并保存收到的信息,待定时器归零时根据收到的网外beacon信息做出融合决策,决策的内容包括是否融合、融合的目标网络和发起融合的桥接节点。
(3)融合认证阶段。中心节点做出融合决策之后,设定静默标记位,在下次组建波控描述字时发送静默beacon包。在组建好静默beacon包之后设置节点状态为休眠节点。静默beacon包内包含融合的目标网络号和桥接节点地址。网内其他节点收到静默beacon包后设定静默标记位,在下次组建波控描述字时发送静默beacon包。与中心节点一样,普通入网节点在组建好静默beacon包之后设置节点状态为休眠节点。所有节点在进入休眠状态时设定休眠结束定时器,如果在定时器归零之前仍未收到融合网络的激活beacon,表明融合失败,节点恢复以前的状态。桥接节点侦听目标节点的beacon包,并执行认证流程。
(4)被融合网络激活阶段。融合网络在完成融合认证后为被融合网络内节点分配节点号和时隙,并通过beacon广播。休眠节点侦听目标网络的beacon,如果在其中找到自己的节点号和时隙,则表明该节点融合成功,修改状态为普通入网节点,成为融合网络的成员。
在网络融合中,桥接节点和融合网络内的节点交互,分为两种情况:若桥接节点与中心节点完成认证流程,中心节点可直接为被融合网络的节点分配节点号和时隙,并更新态势;若桥接节点与普通入网节点完成认证流程,普通入网节点需将被融合网络的认证情况发送给中心节点,由中心节点为被融合网络内的节点分配节点号和时隙。
当被融合网络中的休眠节点收到标志入网的beacon之后,转换为普通入网节点状态。如果在一定时间内未收到标志入网的beacon包,则休眠节点转为原始状态(中心节点或普通入网节点)。
本文利用网络仿真软件OPNET,使用其三层建模机制,自顶向下建立通信网络网络域、节点域、进程域模型,并对节点开机组网流程进行模拟仿真。
在网络仿真中,网络域模型定义各个通信节点位置和网络拓扑。一般在OPNET中的子网层级内完成网络建模。子网的位置、大小可根据需求设定,子网内包含若干节点,并可根据实际网络仿真需要,设置网络拓扑、节点初始位置及运动参数。本文在300 km×300 km范围内,利用24个随机分布的通信节点,组成无线通信网络,如图5所示。
图5 节点网络拓扑图
节点模型由进程模型构成,可以组成完整的协议栈,真实反映所建模设备的特性,其中节点代表实际网络中各种计算和通信设备,节点参数代表设备可选用的协议模型和设备性能;各模块间通过数据包和状态信息的传递来进行各种操作,进而对设备功能进行模拟。
节点域建模如图6所示。按照硬件形态,将通信节点按照事务处理器、实时逻辑处理器和前端收发机3部分进行分解,并完成仿真建模:事务处理器部分通过使用自行编写的进程域模型,构建上层业务模块、数据分发模块、网络管理模块和资源调度模块,模拟通信设备中事务处理器对网络层与Mac层协议的实现。实时逻辑处理器部分通过使用自行编写的进程域模型与仿真软件自带的无线收发信机模块,构建波控模块、外部时间模块、信号处理模块、发射机和接收机,模拟通信设备中实时逻辑处理器对物理层与Mac层的实现。前端收发机部分包括阵列天线,结合真实硬件特点,编辑OPNET中自带的天线模型,得到4个信号处理模块对应的4组面阵天线。
图6 节点域建模示意图
进程模型的基础是用有限状态机来描述各种协议。有限状态机中各个状态的转移可以描述节点中所含进程的行为,如协议和算法等。进程域包含节点域中各功能模块的具体实现。
本文进程域主要包含如下核心进程模块:信号处理模块、波束控制模块、资源调度模块、数据分发模块、网络管理模块等;借助中断与状态转移机制,各进程模块执行各类功能函数,实现对通信网络节点行为的仿真,是仿真的核心。
信号处理模块(sp)的功能包括:按照波束控制模块所发送的事件描述字,控制发射机、发射信道、接收机、接收信道、天线模式、天线指向等,并将上行包发送到对应发射信道;对接收包进行地址过滤,判定接收包的有效性,向波束控制模块发送下行包及各类附带的通信包接收信息。
波束控制模块(bc)的功能包括:维护节点的工作时序,向资源调度发送定时触发;按照资源调度发送的波控描述字生成事件描述字,及时传递给信号处理模块以控制各面阵、各信道的收发状态及其参数;执行自主应答,包括认证自主应答、测距测向自主应答和数据包自主应答;维护特定包的发送状态,等待期望回复包;组建Mac层包;执行本地时间调整。
资源调度模块(rs)控制着实时逻辑处理器和事务处理器之间的数据交互,控制节点的工作方式,主导节点入网与组网过程,在模型建立中处于核心地位。资源调度的功能包括:维护节点状态,执行入网和网络融合流程;管理时隙资源,编排波控描述字;向网络管理发送测距测向信息和态势信息;承接数据分发下发的数据,向数据分发上传收到的数据包。
数据分发(ddc)处于上层应用和下层数据处理之间,该模块的功能包括:承接上层应用包,组建网络层包;解析资源调度发送的下行包;维护数据发送队列;包队列优先级管理;路由管理等。
网络管理模块(nm)与资源调度、数据分发模块进行交互,主要负责网络态势的维护,具体功能如下:基于资源调度发送的态势包和一跳态势合成最新态势并分发给资源调度和数据分发;定时向资源调度发送触发,通知资源调度执行态势更新。
OPNET软件采用离散事件驱动的模拟机理,仿真时间的推进靠事件与中断来驱动。主要进程的初始化与状态转移过程如图7所示。在开始仿真中断后,各进程初始化状态变量并注册本进程,在等待各个进程完成Mac地址设定、初始事件设定、包流索引设定等步骤后,各进程转入工作状态,开始组网与通信过程。
图7 主要进程模块状态转移流程
为仿真验证本通信网络的组网时间,建立多节点任意拓扑组网场景如图4所示。仿真分布在300 km×300 km的仿真区域内。各节点在10 s内开机(开机时间随机分布)。其他部分主要仿真参数如表1所示。
表1 主要仿真参数
针对上述网络场景,进行10组仿真,每组采用1 000次蒙特卡洛仿真,每组仿真基于不同的随机数种子,从而随机设定各节点的开机时间、面阵0的法线方向和系统时间。单节点入网时延定义如下:从节点开机算起,到节点组建至少包含两个节点的网络时为止,包含以下两种情况:孤立节点变成普通入网节点;孤立节点变成中心节点,再接入另一个普通入网节点。单节点入网时延的累积概率密度函数如图8所示。单个节点入网时延小于10 s的概率大于90%。
图8 多节点场景单节点入网时延累积概率密度函数
上述某组仿真所形成的网络拓扑如图9所示。图中8号节点是中心节点,其他节点通过孤立节点入网或网络融合的形式加入主网络。
图9 某次仿真完整网络态势
10组仿真的组网时间如表2所示。本文的组网时间定义为从第一个节点开机算起,到所有节点融入一个网络为止的时延。组网时延与节点的开机时间与网络拓扑密切相关。由表2可知,最早于10.347 s内即可组成完整网络。其中中心节点位于网络边缘、组网流程中各类定时器初始值设置等均可能导致组网时延过大。
表2 多节点场景组网时延仿真结果
网络仿真技术能为网络的规划设计和性能优化提供定量化的分析评估依据,提高通信网络开发效率。本文中针对某通信网络节点特性与通信协议,建立网络仿真模型并进行仿真试验,仿真结果表明,多节点的通信网络,单节点可在90%概率下,于10 s内与其他节点建立通信;各节点在15s内可组成完整通信网络。仿真结果可为该项目中的网络通信协议开发与通信节点软硬件研制提供设计参考。