首页 文学文摘 时政新闻 科技科普 经济法律 健康生活 管理财经 教育教学 文化艺术 社科历史

基于NS—3的核电DCS网络仿真框架

作者:孙永胜 贺珊珊 王维 来源:电子技术与软件工程

摘 要 核电DCS的网络通信性能是系统整体性能的重要制约因素,V&V组织需要对其进行必要的验证。而传统的方法只有在搭建了具体的仪控网络环境后,才能通过测试获得数据。本文提出了从V&V设计审查的角度,根据仪控系统的早期设计,通过网络仿真的方法,发现设计中潜在问题的验证策略。为了实现该策略,设计了基于NS-3的核电DCS网络仿真框架。

【关键词】DCS 网络仿真 V&V 核电

核电站DCS与火电类似系统相比,具有点数多,通信量大,对控制站的站间通信以及操纵员站与数据服务器之间的网络通信有较高要求的特点。网络通信性能,直接关系到系统的整体性能,V&V作为产品研发过程和工程实施过程的技术审查者和需求验证者,需要从独立的角度对DCS的设计是否满足系统的需求规格,以及仪控系统实例是否满足业主的工程需要给以客观评价。

1 在V&V活动中引入网络仿真技术的意义

1.1 核电仪控系统的固有技术难点

核电DCS较为突出的特点是现场采集点数多,网络通信负荷重,其中一个重要性能瓶颈便在于网络数据通信。很典型的例子,在某些核电项目上,采用国外的仪控设备所搭建的工程项目,由于站间通信的性能瓶颈,只能在工程设计上采用大量的硬接线方式作为妥协。这不仅给现场施工和后期维护带来了难度,也在一定程度上影响了系统的可靠性。

1.2 传统网络验证方法的缺陷

针对DCS网络设计的验证,传统的方法是搭建具体的DCS环境,对网络性能在真实系统上进行测试。这一方法存在如下的缺点:

(1)暴露问题晚,验证依赖于系统的实现,难以在早期设计阶段发现问题。

(2)验证成本较高,完整的验证依赖于整套仪控环境的搭建,这一点在通常情况下难以在出厂前做到,而作为妥协,多数只能在仅仅搭建少部分设备的条件下进行部分规模的验证。

(3)验证的内容缺乏灵活性,在真实仪控设备上,难以在任意的时间,产生任意种类的设备故障,测试用例的设计受到了客观条件的限制,难以进行拓展。

1.3 引入网络仿真的可行性

现代网络技术的发展,已经为网络通信的研究提供了新的手段,可以在不具备真实网络环境的条件下,对网络的工作状态进行分析或模拟,这也就给V&V工作提供了新的验证手段。V&V在系统设计阶段,根据系统设计,构建仿真网络环境,通过仿真算法获得网络性能数据。这样,有利于在DCS研发生命周期的更早阶段发现重大设计问题,对比不同设计方案的特点,为系统的设计提供改进依据。

2 网络仿真技术簡介

2.1 网络通信的主要研究方法

网络通信的主要研究方法如下:

理论计算:在协议层面对系统进行研究分析,抽象出数学模型,利用数学模型对问题进行求解。常用的方式是采用协议分析、状态机、集合论及概率模型等理论工具对网络进行分析。该方法的建模难度较高,只能给出范围性估算数据,无法给出实验性数据。

实验网络:采用真实主机和网络设备,构造通信网络,部署主机应用和相应的网络协议,其特点是真实有效。然而,其成本较高,在测试的成本受到严格限制的条件下,难以实现一比一的验证。通常的做法是搭建最小验证系统,对网络通信的功能进行验证,但最小系统上所测得的数据对实际应用规模的网络仅具备有限的参考价值。

网络仿真:该方法通过计算机仿真算法,建立一个虚拟的网络平台,通过虚拟环境对真实网络环境中各个节点之间的通信过程进行模拟。通过这个平台可以对系统的网络性能给出有参考价值的估算。通过对不同设计方案进行的仿真模拟,可以对不同设计方案给出对比建议。

2.2 网络仿真软件简介及NS-3的特点

NS-2:NS-2最初由UC Berkeley开发而成,它实现了对TCP、UDP等传输层协议的模拟,也实现了基于传输层协议的应用层协议,如Telnet、Web、CBR、VBR等协议的模拟;在路由算法方面,实现了对动态路由算法、静态路由算法、多播路由算法的模拟。它通过自身的虚拟时钟驱动仿真系统的运转,将仿真系统当作一个离散事件模拟器来实现。

OPNET:OPNET由美国军方提出需求,由麻省理工学院LIDS实验室开发了最早的版本,它可以模拟目前工作在TCP/IP网络模型的各层的绝大部分协议,其中包括Token Ring TCP/UDP/IP、FDDI、Frame Relay、LAN、WAN、ISDN以及卫星通信网等。该软件功能完善,性能卓越,但是为付费软件,价格昂贵。作为国内核电研究项目,采用该系统,存在一些潜在的商业限制因素。

OMNet++:OMNet++是一个免费、开源、可扩展的多协议网络仿真软件,它也基于离散事件仿真,且具备强大的图形界面接口。OMNet++的一个突出优秀特点是支持分布式并行仿真,这就减少了对单台仿真服务器的压力。

NS-3:NS-3名字与NS-2类似,但不是NS-2的扩展,而是一个全新的网络仿真软件。它由美国华盛顿大学的研究小组在NSF的支持下开发。NS-3基于GNU GPLv2 许可,可以免费的获取、使用和修改,它广泛的汲取了现代优秀开源网络模拟器的成功经验和技术特点。

NS-3与NS-2相比较其优点在于仿真模块和仿真脚本都可以采用C++语言编写,而不像NS-2不能使用C++进行仿真模块的功能扩展只能使用Otcl进行仿真脚本的编写,这为使用者提供了便利,同时也为代码的统一风格管理提供了必要条件。近年来的网络仿真研究,已经有越来越多的案例采用了NS-3作为仿真系统设计的基础,一些底层网络协议的仿真研究体现了它的强大功能。在电网领域,NS-3已经取得了一些应用成效。本文的研究也将基于NS-3展开。

3 基于NS-3的核电DCS网络仿真的验证框架设计

基于NS-3仿真软件平台,本文提出了如图1所示的框架,用于仿真核电DCS的网络通信过程。

验证框架纵向分为两个子框架。第一为网络模拟框架,它基于NS-3仿真系统而构建,提供了各类设备的模型和基于设备模型的网络建模系统。第二为仿真支撑框架,该框架提供对模型的维护和数据的收集。下文将对两个子框架分别进行阐述。

3.1 网络模拟子框架

本部分包括三个层次:NS-3仿真系统、设备模型和模型网络拓扑模型。

3.1.1 NS-3仿真系统

作为系统运转的基础,由开源的仿真软件实现。

3.1.2 设备模型层

由网络设备模型和主机协议模型两部分组成,每部分包含若干设备的网络协议工作模拟,作为NS-3的功能扩展部分实现。从面向对象的方法论角度,设备模型层提供了各种具体设备的类定义。这部分主要实现如下的五种模型,这五种模型分为网络设备模型和主机协议模型两大类。

(1)交换机模型:属于网络设备模型,用来模拟交换机设备的功能,通常意义下,这部分模拟链路层交换机。在特殊的网络拓扑条件下,例如划分多子网的通信条件下,这部分还需要模拟具备IP路由功能的三层交换机设备。

(2)通信网关模型:属于网络设备模型,用于模拟一层网络和二层网络之间的通信网关的网络协议与数据中转算法的实现。

(3)主控制器模型:属于主机协议模型,用于模拟主控制器所有通过网络的通信行为,包括了通信网关和站间通信两个部分。主控制器模型的模拟仅仅关注于网络通信协议部分,而组态计算,现场总线,热备冗余等功能不在主控制器模型的范围内。由于仿真的目的是挖掘系统性能的极限,而不设计具体控制功能,所以,所有的控制数据都通过假造的模拟数据包代替。

(4)操作员站模型:属于主机协议模型,用于模拟操作员站的网络通信。其数据包内容的设计策略同控制器类似。

(5)二层服务器模型类:属于主机协议模型,用于模拟工作于二层网络的计算服务器、历史服务器等,既不直接与一层网络通信,又不直接参与人机交互的设备。计算延时和查询延时等服务器主机应用所造成的延时,在模型中提供可以配置的接口。

3.1.3 网络拓扑建模

这部分在面向对象的方法论中属于对象层次,根据具体工程案例的网络拓扑,通过对各类模型进行实例化,构建真实的网络环境的模拟。这部分又可以分为操作监控层建模和控制层建摸两大部分:

(1)操作监控层建模:这部分模拟DCS的二层网络,实例化操作员站模型、服务器模型和网关模型。

(2)控制层建模:这部分模拟DCS的一层网络,实例化主控制器模型、网关模型和交换机模型。

两部分模型根据仿真的目的,可以独立工作,也可以协同工作。

3.2 仿真支撑子框架

仿真支撑子框架,用于维护仿真模型的运行,提供模型与实验人员的交互接口,主要实现如下功能:

3.2.1 模型编写与维护

提供具体模型的编写与维护服务,该服务基于各个网络设备模型和主机协议模型实现。实验设计者使用这个模块进行模型的编写、调试、修改和管理。

3.2.2 模型的启停与干预

维护基于NS-3的网络仿真程序的运转,负责提供启动,终止,暂停等功能。

3.2.3 虚拟故障

用于在仿真过程中插入系统设备的虚拟故障。这是仿真模拟的一个突出优势。它可以按照特定的时序注入故障序列,完成实验网络方法都难以实现的大规模的准确时序的设备故障场景。

3.2.4 日志与数据统计

记录模型运行中各个网络节点实例的运行状态日志,日志的内容和时间粒度可以进行预先配置,基于日志可以进行数据的统计和后期的分析。

4 结束语

通过本文方法,V&V组织可以在核电DCS的设计阶段对网络协议和网络拓扑的设计策略进行仿真模拟,获得对网络性能的仿真数据,有力的支撑设计验证工作。本文的仿真方法具备如下应用优点:

(1)暴露问题早,在早期设计阶段发现问题。

(2)验证成本较低,无需仪控设备参与,只进行软件仿真。

(3)验证的内容灵活,可以在任意的时间,产生任意种类的设备故障。

未来的工作,将首先结合具体的DCS项目,把本文所设计的框架进行实例化。继而,完善仿真框架的设计。当积累了足够的对比数据后,把这种验证方法应用于具体的非安全级DCS项目中。

后继研究的另一方面,是将仿真框架应用于信息安全领域。框架中的虚拟故障模块可以模拟特定主机或网络设备遭受攻击后的网络吞吐能力下降以及宕机现象,在性能工况的角度对各类攻击所造成的系统破坏给出仿真参数,结合核电信息安全的相关标准体系可以对DCS系统的信息安全保障属性给出有效的评估。

参考文献

[1]IEEE.IEEE 1012 IEEE Standard for Software Verification and Validation[S].IEEE,2004.

[2]雷擎,王行刚.计算机网络模拟方法与工具[J].通信学报,2001,22(09):84-90.

[3]王晓燕,郑明春.基于NS2的网络仿真研究与应用[J].计算机仿真,2004(12):128-131.

[4]黄茂森,朱陈鹏.基于OPNET的智能变电站继电保护建模與仿真[J]工程技术(引文版),2016,04(17):16-16.

[5]王新伟,景旭,孙晓波.基于OMNeT++的环形网络仿真[J].2004(02):42-45.

[6]王悦.NS-3 802.11物理层源代码实现原理分析[J].计算机科学,2016,S1:281-284.

作者简介

孙永胜(1982-),男,2008年毕业于华北电力大学,硕士,工程师,中核控制系统工程有限公司安质部V&V室工程师。

作者单位

中核控制系统工程有限公司 北京市 100176