(2020年)项目管理项目报告014项目概要设计报告

上传人:精****库 文档编号:139923541 上传时间:2020-07-25 格式:DOCX 页数:19 大小:503.69KB
返回 下载 相关 举报
(2020年)项目管理项目报告014项目概要设计报告_第1页
第1页 / 共19页
(2020年)项目管理项目报告014项目概要设计报告_第2页
第2页 / 共19页
(2020年)项目管理项目报告014项目概要设计报告_第3页
第3页 / 共19页
(2020年)项目管理项目报告014项目概要设计报告_第4页
第4页 / 共19页
(2020年)项目管理项目报告014项目概要设计报告_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《(2020年)项目管理项目报告014项目概要设计报告》由会员分享,可在线阅读,更多相关《(2020年)项目管理项目报告014项目概要设计报告(19页珍藏版)》请在金锄头文库上搜索。

1、哈尔滨工程大学信息安全研究中心 HEUISRC-RDT-014哈尔滨工程大学信息安全研究中心项目概要设计报告编号:HEUISRC-RDT-014版本:1.1密级:编 写:吕敬辉-郝建波-贺婷日 期:检 查:日 期:审 核:日 期:批 准:日 期:版本日 期作者修 订 要 点1.02007-03-20杨武文件建立1.12007-03-21杨武内容及文档结构修订目 录目 录I一、引言11.1编写目的11.2项目背景11.3术语11.4参考资料1二、任务概述12.1系统描述12.2开发与运行环境12.2.1开发环境的配置12.2.2运行环境的配置12.2.3测试环境的配置22.3需求概述22.4条件

2、与限制2三、总体设计23.1系统设计原则23.2系统网络结构23.3实现框架与处理流程23.4结构模块设计33.5功能需求与程序模块的关系43.6尚未解决的问题4四、接口设计44.1外部接口44.2内部接口4五、数据结构设计55.1逻辑结构设计55.2物理结构设计65.3数据结构与程序代码的关系6六、数据库设计6七、用户界面设计7八、出错处理设计78.1出错输出信息78.2出错处理对策7九、安全保密设计89.1数据传输安全性设计89.2应用系统安全性设计89.3数据存储安全性设计8十、维护设计8- I -一、引言1.1编写目的 对网络数据流异常检测系统的整体开发进行概要设计,为系统编程提供基础

3、支持。1.2项目背景 项目名称网络数据流异常检测,该项目主要对网络数据出现大的流量变化,尤其对syn、fin、ping、端口和主机不可达事件进行异常检测并报警。1.3术语缩写、术语解 释libPcap捕包库函数MySQL数据库C+ builder界面编程ODBC数据库访问接口标准adsystem服务器端数据库名Newadsystem本地绑定远程数据库的系统数据源变量1.4参考资料 二、任务概述2.1系统描述后台:1)本系统能够对网络出入口的数据包进行分析,统计出TCP、UDP、ICMP等协议以及TCP-SYN事件、TCP-FIN事件、ICMP_PING事件、ICMP_3.1事件(主机不可达事件

4、)、ICMP_3.3事件(端口不可达事件)的包的数量。2)通过异常检测算法,对这些统计数量进行异常检测。根据统计结果用自回归模型对网络数据流量进行预测,当某时刻数据流和预测结果不同时触发报警事件。数据库:将统计量、异常信息存入数据库中前台:1)进行通讯:发送给后台登录、检测、关闭的标识;接收后台数据,包括登录标识、流量包统计数及异常报警标识。2)对数据解析之后,对用户的不同类型检测的要求进行实时动态曲线的描绘;3)对异常事件进行报警4)对历史流量及异常信息进行数据库查询2.2开发与运行环境Linux操作系统平台C+ builder、MySQL数据库提供各种端口扫描的机器2.2.1开发环境的配置

5、类别标准配置最低配置计算机硬件计算机软件Linux、Windows操作系统、mysql数据库管理工具、c+ builder前台开发工具网络通信ODBC其它2.2.2运行环境的配置类别标准配置最低配置计算机硬件计算机软件Linux、Windows操作系统、mysql数据库管理工具网络通信ODBC其它2.2.3测试环境的配置计算机软件:Linux、Windows操作系统、mysql数据库管理工具网 络通 信:ODBC2.3需求概述用户登录:用户输入服务器地址、用户名、密码访问,验证用户权限是否正确用户其他操作:用户的其他操作需要并行进行。包括四个部分,介绍如下:1、动态实时曲线描绘:1) 配置信息

6、,用户可自己配置流量统计时间间隔,根据不同的流量类型,设置曲线图的数据显示高度,同时可设置曲线图的显示宽度(辅助设计);2) 对于各项值,需要提供默认值,尤其数据显示高度,需根据以往的数据流量值给出一个不同类型协议或事件的参考值;3) 完成信息的配置,启动检测,则在设置的时间间隔内开始描点;4) 曲线的描绘:曲线为动态波动、有规律进行的。2、异常检测:当后台检测到异常时,立即发出警报提示。3、历史流量数据的查询:用户可根据协议/事件类型及检测的时间范围完成历史流量查询。4、异常流量信息查询:用户可根据协议/事件类型及检测的时间范围完成异常流量信息查询。2.4条件与限制 三、总体设计3.1系统设

7、计原则 在linux环境下进行系统后台的编程,用libcap库函数进行抓包,并对包进行分析,统计出TCP、UDP、ICMP等协议以及TCP-SYN事件、TCP-FIN事件、ICMP_PING事件、ICMP_3.1事件(主机不可达事件)、ICMP_3.3事件(端口不可达事件)的包的数量。统计完成后将数据传递给异常检测算法和数据库,异常检测算法根据初始统计的正常数据包数量对以后到达的数据包进行预测分析,出现异常时调用socket函数传递给前台一个异常信号,c+ building来进行异常报警。另外pcap统计的包的数量也要传递给前台来建立一个正常流量模型。其中向前台传递正常数据和异常信息分别用一个

8、分线程,还有一个分线程用来接收前台的命令。3.2系统网络结构系统网络结构如图3.1所示:图3.1 系统网络结构图3.3实现框架与处理流程1、系统总体设计流程如图3.2所示:图3.2 系统总体设计流程图2、前台业务流程如图3.3所示:图3.3 前台业务流程图3.4结构模块设计结构模块如图3.4所示:图3.4 系统结构模块模块一览表模块名称标识符模块功能模块性能要求登录模块Login与后台进行连接通讯;判断字符是否合法;判断登录,登录成功,开启主线程。能够及时返回用户登录信息,提供登录或重登录信息。用户操作模块Configuration对数据库操作:保存配置信息,提供检测启动标识;查看历史流量信息

9、;查看异常流量信息。能快速的对数据库进行操作,返回用户查询信息多线程模块TCommunicationThread接收后台数据,判断数据类型,解析数据,启动曲线描绘函数及异常警报线程。当用户进行检测时,应及时的、有规律的描绘出曲线数据包捕获PCAP在网络数据流里捕获数据包并对数据包进行统计,提取出相关的数据信息进行分析并存储于数据库中。对TCP、UDP、ICMP等数据流量进行统计,检测出相关数据流量的异常。异常检测Anomaly detection检测异常数据流对不符合捕获数据包正常流量的进行检测并报警通讯communication进行前后台的通信将统计得数据包数量直接输送到前台进行显示以及异常

10、检测的显示。3.5功能需求与程序模块的关系需求 代码捕包模块异常检测模块通讯登录模块用户操作模块前台多线程模块获取原始数据流异常数据检测存储数据查询数据库接收数据发送数据显示结果3.6尚未解决的问题 四、接口设计4.1外部接口 4.2内部接口4.2.1 MySQL数据库和前台c+ builder的连接1)连接步骤第一步:使用ODBC数据库访问接口标准,绑定服务器adsystem数据库建立一个数据源Newadsystem;第二步:使用Databasesource(一个能和远端资料库透过BDE进行连结的元件),绑定数据源Newadsystem,可以储存登入资料库所需的身分认证资料,包括用户名密码,

11、确保以后的数据库操作中,不在需要确认;第三步:使用Query数据库存取元件,绑定Databasesource;第四步:使用Datasource传递元件,将Query取得的值传递给显示元件;第五步:使用StringGrid元件,将获取到的数据显示。2)数据库连接及数据存取示意图如图4.1所示:图4.1 数据库连接及数据存取示意图4.2.2 MySQL数据库和后台Linux的连接主要是调用API函数,先用mysql_init初始化一个sql描述符m_sql,再用mysql_real_connect去连接服务器上的mysql,然后用mysql_query对数据库进行读写操作,其中读数据库操作还要my

12、sql_query和mysql_fetch_row来读出和存储数据库中的值。4.2.3后台Linux与前台界面的socket连接套接字有两套,分别为后台作为socket服务器端前台作为socket客户端和后台作为socket客户端前台作为socket服务器端。也是调用相关的API函数来实现套接字连接与通信,其中服务器端先用socket函数初始化一个socket描述符sock_fd,对sockaddr_in结构体的成员变量进行赋值,其中sin_family为 AF_INET,sin_port =为4005,地址是本地地址,完了以后用bzero函数将结构体其余空间清零,然后用bind函数进行端口与

13、本地地址绑定,用listen函数来监听是否用连接,用连接是用accept函数生成一个连接socket描述符new_fd,用recv函数来接受前台传来的数据。五、数据结构设计5.1逻辑结构设计1)后台TCP typedef struct tcp_node/存储TCP 流量的循环链表,结构体初始化 int value; /TCP流量大小 struct tcp_node *next;/定义指针tcp_node;tcp_node *head,*tail;/TCP循环链表头尾指针typedef struct tcpsyn_node/存储TCPSYN 流量的循环链表,结构体初始化 int value; /TCPSYN流量大小 struct tcpsyn_node *next;/定义指针tcpsyn_node;tcpsyn_node *head,*tail;/TCPSYN循环链表头尾指针typedef struct tcpfin_node/存储TCPFIN 流量的循环链表,结构体初始

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号