CN109901839A - 一种广播电视关键信息基础设施网络安全攻防实训平台构建方法 - Google Patents

一种广播电视关键信息基础设施网络安全攻防实训平台构建方法 Download PDF

Info

Publication number
CN109901839A
CN109901839A CN201910062406.5A CN201910062406A CN109901839A CN 109901839 A CN109901839 A CN 109901839A CN 201910062406 A CN201910062406 A CN 201910062406A CN 109901839 A CN109901839 A CN 109901839A
Authority
CN
China
Prior art keywords
parallel
programming
task
cpu
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910062406.5A
Other languages
English (en)
Inventor
肖辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Radio And Television Planning Institute State Administration Of Press Publication Radio Film And Television
Original Assignee
Radio And Television Planning Institute State Administration Of Press Publication Radio Film And Television
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Radio And Television Planning Institute State Administration Of Press Publication Radio Film And Television filed Critical Radio And Television Planning Institute State Administration Of Press Publication Radio Film And Television
Priority to CN201910062406.5A priority Critical patent/CN109901839A/zh
Publication of CN109901839A publication Critical patent/CN109901839A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

本发明涉及网络安全处理技术领域,特别是一种广播电视关键信息基础设施网络安全攻防实训平台构建方法,包括以下步骤:任务并行:根据任务问题的求解过程,把任务分成若干子任务;数据并行:根据处理数据的方式,形成多个相对独立的数据区,由不同的处理器分别处理;并行编程:选择并行编程环境,进行CPU的并行程序设计;结果的并行编译:对进行CPU的并行程序设计进行编译。采用上述方法后,本发明CPU核心利用率较高,电力系统数据任务处理更快;当系统中有一个CPU内核空闲时,便从该核心的任务等待队列中选取恰当的任务执行,这种方法的优点是任务基本上无需在多个CPU核心间切换,有利于提高CPU核心局部Cache命中率。

Description

一种广播电视关键信息基础设施网络安全攻防实训平台构建 方法
技术领域
本发明涉及网络安全技术领域,特别是一种广播电视关键信息基础设施网络安全攻防实训平台构建方法。
背景技术
随着信息化的发展,以及互联网、专用网络化信息系统和各种网络技术的普及,国家和政府依赖网络维持政治、经济、文化、军事等各项活动的正常运转,各行各业的企业用户依赖网络进行技术创新和市场拓展,个人用户依赖网络进行信息交互。由于网络中存储、处理和传输的都是事关国家安全、企业及个人的机密信息或是敏感信息,网络与信息安全已成为关系到企业的重要问题,而企业内部网络安全建设仍不完善,对新型网络攻击缺乏完整的安全应对机制,无法实现有效全面的网络安全防护,无法建立持续、稳定、安全的网络。因此,互联网技术的发展在给人们带来了便利的同时,也产生了很多的网络安全威胁,如恶意访问、个人机密信息或敏感信息泄露、勒索病毒/木马的入侵、拒绝服务攻击等。
中国发明专利CN 108040070 A公开了一种网络安全测试平台及方法,所述平台包括:管理系统和攻击行为审计系统,其中,所述管理系统,被配置为通过虚拟专用网络VPN技术,创建用于攻击防守方的目标网络系统的VPN攻击通道;在获得攻击方的身份信息后,基于身份信息,验证攻击方是否为合法用户;在确定攻击方为合法用户后,允许攻击方通过VPN攻击通道对目标网络系统发起攻击;所述攻击行为审计系统,被配置为在攻击方攻击目标网络系统的过程中,通过VPN攻击通道实时记录进出目标网络系统的数据信息,获得攻防日志;对攻防日志进行分析,构建攻击场景,其中,攻击场景用于指示目标网络系统的安全状态。
发明内容
本发明需要解决的技术问题是提供一种广播电视关键信息基础设施网络安全攻防实训平台构建方法。
为解决上述技术问题,本发明的一种广播电视关键信息基础设施网络安全攻防实训平台构建方法,
包括以下步骤:
任务并行:根据任务问题的求解过程,把任务分成若干子任务;
数据并行:根据处理数据的方式,形成多个相对独立的数据区,由不同的处理器分别处理;
并行编程:选择并行编程环境,进行CPU的并行程序设计;
结果的并行编译:对进行CPU的并行程序设计进行编译。
优选的,所述步骤结果的并行编译还包括以下步骤:
流分析:对源代码进行相关性分析,包括流相关、反相关、输出相关和控制相关;并进行数据相关性测试;
程序优化:代码优化,包括代码向量化和代码并行化;
代码生成:将优化后的中间形式的代码转换程可执行的具体的机器目标代码。
优选的,所述步骤并行编程中CPU的并行程序设计包括隐式并行、数据并行、共享变量和消息传递;其中,
隐形并行:通过熟悉的串行语言编程,编译器和运行支持系统自动转化为并行代码;
数据并行:是SIMD的自然模型,局部计算和数据选路操作;
共享变量:是PVP、SMP和DSM的自然模型;
消息传递:是MPP和COW的自然模型。
优选的,所述步骤并行编程中编程中使用的并行化的基本方法包括相并行、流水线并行、主从并行、分治并行和工作池并行。
优选的,所述步骤并行编程中串行程序性能优化的方式包括调用高性能库,选择适当的编译器优化选项,合理定义数组维数,注意嵌套循环的顺序和循环展开。
优选的,所述步骤并行编程中并行程序性能优化的方式包括:减少通信量、提高通信粒度;全局通信采用利用高效集合通信算法;挖掘算法的并行度,减少CPU空闲等待;负载均衡;通信、计算的重叠;通过引入重复计算来减少通信。
采用上述方法后,本发明CPU核心利用率较高,电力系统数据任务处理更快;当系统中有一个CPU内核空闲时,便从该核心的任务等待队列中选取恰当的任务执行,这种方法的优点是任务基本上无需在多个CPU核心间切换,有利于提高CPU核心局部Cache命中率。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明多线程示意图。
图2为本发明超线程CPU运行效率示意图。
图3为本发明多核的并行计算示意图。
具体实施方式
本发明的一种一种广播电视关键信息基础设施网络安全攻防实训平台构建方法,包括以下步骤:
任务并行:根据任务问题的求解过程,把任务分成若干子任务。一个进程可以拥有多个线程,而一个线程只能属于一个进程。每个进程至少包含一个线程——主线程,它负责程序的初始化工作,并执行程序的起始指令。随后,主线程可为执行各种不同的任务而分别创建多个子线程。
一个程序的多个运行,可以通过启动该程序的多个实例(即多个进程)来完成,也可以只运行该程序的一个实例(一个进程),而由该进程创建多个线程来做到。显然后者要比前者更高效,更能节约系统的有限资源。这对需要在同一时刻响应成千上万个用户请求的Web服务器程序和网络数据库管理程序等来说是至关重要的。如图1所示,其中:A为主线程,B、C、D皆为A的子线程,不同并行任务中的同名子线程可以互不相同。
如图2所示,采用超线程及时可在同一时间里,应用程序可以使用芯片的不同部分。虽然单线程芯片每秒钟能够处理成千上万条指令,但是在任一时刻只能够对一条指令进行操作。而超线程技术可以使芯片同时进行多线程处理,使芯片性能得到提升。超线程技术让处理器在只增加5%的芯片面积的情况下,就可以换来15%~30%的效能提升。但实际上,在某些程序或未对多线程编译的程序而言,超线程反而会降低效能。除此之外,超线程CPU技术也需要主板芯片组和操作系统的配合,才能充分发挥超线程的效能。
数据并行:根据处理数据的方式,形成多个相对独立的数据区,由不同的处理器分别处理。传统的串行计算,分为“指令”和“数据”两个部分,并在程序执行时“独立地申请和占有”内存空间,且所有计算均局限于该内存空间。如图3所示,并行计算将进程相对独立的分配于不同的节点上,由各自独立的操作系统调度;享有独立的CPU和内存资源(内存可以共享);进程间相互信息交换通过消息传递。
并行编程:选择并行编程环境,进行CPU的并行程序设计。其中,常见的并行编程环境主要有三类:消息传递、共享存储和数据并行,参见表1,我们使用的数据并行模式。
表1 并行编程环境表
这样我们利用多核心CPU的并行编程总共涉及4个层次:
●指令层:非常细的粒度;
●数据层:细粒度;
●控制层:中粒度;
●任务层:大粒度。
前两层大都由硬件和编译器负责处理,程序员通常处理后两层的并行。CPU并行程序设计,如下四种模型:
■隐式并行(Implicit Parallel)——程序员用熟悉的串行语言编程(未作明确的制定并行性),编译器和运行支持系统自动转化为并行代码。具有如下特点:语义简单、可移植性好、单线程(易于调试和验证正确性)、细粒度并行、效率很低。
■数据并行(Data Parallel)——是SIMD的自然模型,局部计算和数据选路操作。具有如下特点:单线程、并行操作于聚合数据结构(数组)、松散同步、单一地址空间、隐式交互作用、显式数据分布。数据并行的优点是编程相对简单且串并行程序一致;缺点有程序的性能在很大程度上依赖于所用的编译系统及用户对编译系统的了解、并行粒度局限于数据级并行、粒度较小。
■共享变量(Shared Variable)——是PVP、SMP和DSM的自然模型。具有如下特点:多线程(SPMD,MPMD)、异步、单一地址空间、显式同步、隐式数据分布、隐式通信。
■消息传递(Message Passing)——是MPP和COW的自然模型。具有如下特点:多线程、异步、多地址空间、显式同步、显式数据映射和负载分配、显式通信。
其中:使用最常见的数据并行处理,充分利用CPU的多核能力,也降低了开发的难度。
其中,编程中使用的并行化的基本方法有:
■相并行(Phase Parallel)
■流水线并行(Pipeline Parallel)
■主从并行(Master-Slave Parallel)
■分治并行(Divide and Conquer Parallel)
■工作池并行(Work Pool Parallel)
串行程序性能优化方式:
■调用高性能库,比如优化的BLAS(Basic Linear Algebra Subprograms,基本线性代数子程序),FFTW(Fastest Fourier Transform in the West,西方快速傅立叶变换,是最快的FFT自由软件库)等;
■选择适当的编译器优化选项;
■合理定义数组维数;
■注意嵌套循环的顺序,尽量改善数据访问的局部性;
■循环展开。
并行程序性能优化方式:
■减少通信量、提高通信粒度;
■全局通信尽量利用高效集合通信算法;
■挖掘算法的并行度,减少CPU空闲等待;
■负载均衡;
■通信、计算的重叠;
■通过引入重复计算来减少通信,即以计算换通信。
结果的并行编译:对进行CPU的并行程序设计进行编译,具体包括以下步骤:
a、流分析
流分析主要是相关性分析,包括流相关、反相关、输出相关和控制相关。还需要进行数据相关性测试,以证明同一数组变量的下标引用对之间的相关性不存在。
b、程序优化
程序优化就是代码优化,主要包括代码向量化和代码并行化:
■代码向量化——把标量程序中的由一种可向量化循环完成的操作变换成向量操作。
■代码并行化——并行代码的优化是将一个程序展开成多线程以同时供多台处理机并行执行,其目的是要减少总的执行时间。
c、代码生成
并行代码生成涉及到将优化后的中间形式的代码转换程可执行的具体的机器目标代码。包括执行次序、指令选择、寄存器分配、负载平衡、并行粒度、代码调度以及后优化等问题。
虽然以上描述了本发明的具体实施方式,但是本领域熟练技术人员应当理解,这些仅是举例说明,可以对本实施方式作出多种变更或修改,而不背离本发明的原理和实质,本发明的保护范围仅由所附权利要求书限定。

Claims (6)

1.一种广播电视关键信息基础设施网络安全攻防实训平台构建方法,其特征在于,包括以下步骤:
任务并行:根据任务问题的求解过程,把任务分成若干子任务;
数据并行:根据处理数据的方式,形成多个相对独立的数据区,由不同的处理器分别处理;
并行编程:选择并行编程环境,进行CPU的并行程序设计;
结果的并行编译:对进行CPU的并行程序设计进行编译。
2.按照权利要求1所述的一种广播电视关键信息基础设施网络安全攻防实训平台构建方法,其特征在于,所述步骤结果的并行编译还包括以下步骤:
流分析:对源代码进行相关性分析,包括流相关、反相关、输出相关和控制相关;并进行数据相关性测试;
程序优化:代码优化,包括代码向量化和代码并行化;
代码生成:将优化后的中间形式的代码转换程可执行的具体的机器目标代码。
3.按照权利要求1所述的一种广播电视关键信息基础设施网络安全攻防实训平台构建方法,其特征在于:所述步骤并行编程中CPU的并行程序设计包括隐式并行、数据并行、共享变量和消息传递;其中,
隐形并行:通过熟悉的串行语言编程,编译器和运行支持系统自动转化为并行代码;
数据并行:是SIMD的自然模型,局部计算和数据选路操作;
共享变量:是PVP、SMP和DSM的自然模型;
消息传递:是MPP和COW的自然模型。
4.按照权利要求1所述的一种广播电视关键信息基础设施网络安全攻防实训平台构建方法,其特征在于:所述步骤并行编程中编程中使用的并行化的基本方法包括相并行、流水线并行、主从并行、分治并行和工作池并行。
5.按照权利要求1所述的一种广播电视关键信息基础设施网络安全攻防实训平台构建方法,其特征在于:所述步骤并行编程中串行程序性能优化的方式包括调用高性能库,选择适当的编译器优化选项,合理定义数组维数,注意嵌套循环的顺序和循环展开。
6.按照权利要求1所述的一种广播电视关键信息基础设施网络安全攻防实训平台构建方法,其特征在于:所述步骤并行编程中并行程序性能优化的方式包括:减少通信量、提高通信粒度;全局通信采用利用高效集合通信算法;挖掘算法的并行度,减少CPU空闲等待;负载均衡;通信、计算的重叠;通过引入重复计算来减少通信。
CN201910062406.5A 2019-01-23 2019-01-23 一种广播电视关键信息基础设施网络安全攻防实训平台构建方法 Pending CN109901839A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910062406.5A CN109901839A (zh) 2019-01-23 2019-01-23 一种广播电视关键信息基础设施网络安全攻防实训平台构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910062406.5A CN109901839A (zh) 2019-01-23 2019-01-23 一种广播电视关键信息基础设施网络安全攻防实训平台构建方法

Publications (1)

Publication Number Publication Date
CN109901839A true CN109901839A (zh) 2019-06-18

Family

ID=66944086

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910062406.5A Pending CN109901839A (zh) 2019-01-23 2019-01-23 一种广播电视关键信息基础设施网络安全攻防实训平台构建方法

Country Status (1)

Country Link
CN (1) CN109901839A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109918133A (zh) * 2019-01-24 2019-06-21 董栋挺 一种电力传输系统用多核心任务处理方法
CN111158853A (zh) * 2019-12-13 2020-05-15 海光信息技术有限公司 虚拟机内存数据迁移方法、cpu芯片及服务器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101387965A (zh) * 2008-10-24 2009-03-18 北京科技大学 并行程序编译方法及系统
CN103049245A (zh) * 2012-10-25 2013-04-17 浪潮电子信息产业股份有限公司 一种基于cpu多核平台的软件性能优化方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101387965A (zh) * 2008-10-24 2009-03-18 北京科技大学 并行程序编译方法及系统
CN103049245A (zh) * 2012-10-25 2013-04-17 浪潮电子信息产业股份有限公司 一种基于cpu多核平台的软件性能优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
AMIR M. MIRZENDEHDEL: "Assembly-Free Structural Dynamics On CPU and GPU", 《HTTPS://WWW.RESEARCHGATE.NET/PUBLICATION/280742949 ASSEMBLY-FREE_STRUCTURAL DYNAMICS_ ON CPU AN GPU》, pages 455 - 457 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109918133A (zh) * 2019-01-24 2019-06-21 董栋挺 一种电力传输系统用多核心任务处理方法
CN111158853A (zh) * 2019-12-13 2020-05-15 海光信息技术有限公司 虚拟机内存数据迁移方法、cpu芯片及服务器

Similar Documents

Publication Publication Date Title
Zhang et al. Narrowing the gap between serverless and its state with storage functions
Besta et al. To push or to pull: On reducing communication and synchronization in graph computations
Li et al. Quantum supremacy circuit simulation on Sunway TaihuLight
Drozdowski Scheduling for parallel processing
Yang et al. Techniques to minimize state transfer costs for dynamic execution offloading in mobile cloud computing
Teich et al. Invasive computing: An overview
Ubal et al. Multi2Sim: A simulation framework for CPU-GPU computing
Mayer et al. The tensorflow partitioning and scheduling problem: it's the critical path!
Kulkarni et al. Splinter:{Bare-Metal} extensions for {Multi-Tenant}{Low-Latency} storage
Czarnul et al. Survey of methodologies, approaches, and challenges in parallel programming using high-performance computing systems
Gayatri et al. A case study for performance portability using OpenMP 4.5
Zheng et al. Architecture-based design and optimization of genetic algorithms on multi-and many-core systems
Muller et al. Responsive parallel computation: Bridging competitive and cooperative threading
Diamos et al. Translating GPU binaries to tiered SIMD architectures with Ocelot
CN109901839A (zh) 一种广播电视关键信息基础设施网络安全攻防实训平台构建方法
Klemm et al. High Performance Parallel Runtimes: Design and Implementation
Rauber et al. Performance analysis of parallel programs
Berezovskyi et al. Faster makespan estimation for GPU threads on a single streaming multiprocessor
Pellegrini et al. Cross-state events: A new approach to parallel discrete event simulation and its speculative runtime support
Paudel et al. Hybrid parallel task placement in X10
Moreira et al. Function call re-vectorization
Davis et al. Paradigmatic shifts for exascale supercomputing
Yang et al. Managing asynchronous operations in Coarray Fortran 2.0
Wei et al. Minimizing communication in rate-optimal software pipelining for stream programs
Farooqi et al. Vectorized barrier and reduction in llvm openmp runtime

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination