项目概要设计报告

上传人:cl****1 文档编号:512120942 上传时间:2023-07-20 格式:DOC 页数:16 大小:322KB
返回 下载 相关 举报
项目概要设计报告_第1页
第1页 / 共16页
项目概要设计报告_第2页
第2页 / 共16页
项目概要设计报告_第3页
第3页 / 共16页
项目概要设计报告_第4页
第4页 / 共16页
项目概要设计报告_第5页
第5页 / 共16页
点击查看更多>>
资源描述

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

1、哈尔滨工程大学信息安全研究中心项目概要设计报告编号:HEUISRC-RDT-014版本:编 写: 检 查: 审 核: 批 准:密级:吕敬辉-郝建波-贺婷 日期:日期:日期:日期:版本日期作者修订要点2007-03-20杨武文件建立2007-03-21杨武内容及文档结构修订错误!未指定书签。 错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签。 错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签。 错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签

2、。错误!未指定书签。错误!未指定书签。错误!未指定书签。 错误!未指定书签。错误!未指定书签。错误!未指定书签。 错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签。 错误!未指定书签。 错误!未指定书签。 错误!未指定书签。错误!未指定书签。错误!未指定书签。 错误!未指定书签。错误!未指定书签。错误!未指定书签。错误!未指定书签。 错误!未指定书签。目 录一、引言编写目的项目背景术语参考资料二、任务概述系统描述 开发与运行环境 开发环境的配置 运行环境的配置 测试环境的配置需求概述条件与限制三、总体设计 系统设计原则 系统网络结构 实现框架与处理流程 结构模块设计功能需

3、求与程序模块的关系 尚未解决的问题 四、接口设计外部接口 内部接口 五、数据结构设计逻辑结构设计物理结构设计 数据结构与程序代码的关系 六、数据库设计七、用户界面设计八、出错处理设计出错输出信息 出错处理对策 九、安全保密设计数据传输安全性设计 应用系统安全性设计 数据存储安全性设计 十、维护设计一、引言编写目的对网络数据流异常检测系统的整体开发进行概要设计,为系统编程提供基础支持。项目背景项目名称网络数据流异常检测,该项目主要对网络数据出现大的流量变化,尤其对 syn、fin、ping、端口和主机不可达事件进行异常检测并报警。术语缩写、术语解释libPcap捕包库函数MySQL数据库C+ b

4、uilder界面编程ODBC数据库访问接口标准adsystem服务器端数据库名Newadsystem本地绑定远程数据库的系统数据源变量参考资料二、任务概述系统描述后台:1)本系统能够对网络出入口的数据包进行分析,统计出 TCP UDR ICMP等协议以 及TCP-SYh事件、TCP-FIN事件、ICMP_PING事件、事件(主机不可达事件)、事件(端 口不可达事件)的包的数量。2)通过异常检测算法,对这些统计数量进行异常检测。根据统计结果用自回归模 型对网络数据流量进行预测,当某时刻数据流和预测结果不同时触发报警事件。数据库:将统计量、异常信息存入数据库中前台:1)进行通讯:发送给后台登录、检

5、测、关闭的标识;接收后台数据,包括登录标 识、流量包统计数及异常报警标识。2)对数据解析之后,对用户的不同类型检测的要求进行实时动态曲线的描绘;3)对异常事件进行报警4)对历史流量及异常信息进行数据库查询开发与运行环境Linux操作系统平台C+ builder 、MySQL数据库提供各种端口扫描的机器开发环境的配置类别标准配置最低配置计算机硬件计算机软件Linux、Windows 操作系统、 mysql数据库管理工具、c+ builder前台开发工具网络通信ODBC其它运行环境的配置类别标准配置最低配置计算机硬件计算机软件Linux、Windows 操作系统、mysql数据库管理工具网络通信O

6、DBC其它计算机软件:Linux、Windows操作系统、mysql数据库管理工具 网络通信:ODBC需求概述用户登录:用户输入服务器地址、用户名、密码访问,验证用户权限是否正确用户其他操作:用户的其他操作需要并行进行。包括四个部分,介绍如下:1动态实时曲线描绘:1) 配置信息,用户可自己配置流量统计时间间隔, 根据不同的流量类型,设置曲线图的数据显示高度,同时可设置曲线图的显示宽度(辅助设计);2)对于各项值,需要提供默认值,尤其数据显示高度,需根据以往的数据流量值给出一个不同类型协议或事件的参考值;3)完成信息的配置,启动检测,则在设置的时间间隔内开始描点;4)曲线的描绘:曲线为动态波动、

7、有规律进行的。2、异常检测:当后台检测到异常时,立即发出警报提示。3、历史流量数据的查询:用户可根据协议/事件类型及检测的时间范围完成历史流 量查询。4、异常流量信息查询:用户可根据协议/事件类型及检测的时间范围完成异常流量 信息查询。条件与限制三、总体设计系统设计原则在linux环境下进行系统后台的编程,用libcap库函数进行抓包,并对包进行分 析,统计出TCP UDP ICMP等协议以及TCP-SYN事件、TCP-FIN事件、ICMP_PIN(事件、 事件(主机不可达事件)、事件(端口不可达事件)的包的数量。统计完成后将数据传 递给异常检测算法和数据库,异常检测算法根据初始统计的正常数据

8、包数量对以后到达 的数据包进行预测分析,出现异常时调用socket函数传递给前台一个异常信号,C+building来进行异常报警。另外pcap统计的包的数量也要传递给前台来建立一个正常流量模型。其中向前台传递正常数据和异常信息分别用一个分线程,还有一个分线程用 来接收前台的命令。系统网络结构系统网络结构如图所示:图系统网络结构图实现框架与处理流程1、系统总体设计流程如图所示:图系统总体设计流程图图前台业务流程图结构模块设计结构模块如图所示:V4非法通法字讯符判断曲异线常描报绘警图系统结构模块2、前台业务流程如图所示:模块一览表模块名称标识符模块功能模块性能要求登录模块Logi n与后台进行连接

9、通讯;判 断字符是否合法;判断登 录,登录成功,开启主线 程。能够及时返回 用户登录信 息,提供登录 或重登录信 息。用户操作模块Con figurati on对数据库操作:保存配置 信息,提供检测启动标 识;查看历史流量信息;能快速的对数 据库进行操 作,返回用户查看异常流里信息。查询信息多线程模块TCom mun icatio nThread接收后台数据,判断数据 类型,解析数据,启动曲 线描绘函数及异常警报 线程。当用户进行检 测时,应及时 的、有规律的 描绘出曲线数据包捕获PCAP在网络数据流里捕获数 据包并对数据包进行统 计,提取出相关的数据信 息进行分析并存储于数 据库中。对TCP

10、 UDP ICMP等数据 流量进行统 计,检测出相 关数据流量的 异常。异常检测Ano maly detecti on检测异常数据流对不符合捕获 数据包正常流 量的进行检测 并报警通讯com muni cati on进行前后台的通信将统计得数据 包数量直接输 送到前台进行 显示以及异常 检测的显示。功能需求与程序模块的关系需求-弋码捕包模块异常检测模块通讯登录模块用户操作模块前台多线程模块获取原始数据流V异常数据检测V存储数据VVV查询数据库V接收数据VVVV发送数据VVVVV显示结果VV尚未解决的问题四、接口设计外部接口 内部接口 MySQL 数据库和前台 c+ builder 的连接1)连

11、接步骤第一步:使用ODB(数据库访问接口标准,绑定服务器 adsystem数据库建立一个数据源Newadsystem;第二步:使用 Databasesource (一个能和远端资料库透过 BDE进行连结的元件),绑定数 据源Newadsystem,可以储存登入资料库所需的身分认证资料,包括用户名密码,确保以后的 数据库操作中,不在需要确认;第三步:使用 Query 数据库存取元件,绑定 Databasesource ;第四步:使用 Datasource 传递元件,将 Query 取得的值传递给显示元件; 第五步:使用 StringGrid 元件,将获取到的数据显示。2)数据库连接及数据存取示意

12、图如图所示:图 数据库连接及数据存取示意图MySQL 数据库和后台 Linux 的连接主要是调用 API函数,先用 mysql_init 初始化一个sql描述符 m_sql,再用 mysql_real_connect去连接服务器上的 mysql,然后用mysql_query对数据库进行读写 操作,其中读数据库操作还要 mysql_query 和 mysql_fetch_row 来读出和存储数据库中 的值。后台 Linux 与前台界面的 socket 连接套接字有两套, 分别为后台作为 socket 服务器端前台作为 socket 客户端和后台作 为 socket 客户端前台作为 socket

13、服务器端。也是调用相关的 API 函数来实现套接字连 接与通信,其中服务器端先用 socket 函数初始化一个 socket 描述符 sock_fd ,对 sockaddr_in 结构体的成员变量进行赋值,其中 sin_family 为 AF_INET, sin_port = 为 4005,地址是本地地址, 完了以后用 bzero 函数将结构体其余空间清零, 然后用 bind 函数进行端口与本地地址绑定,用 listen 函数来监听是否用连接,用连接是用 accept 函数生成一个连接socket描述符new_fd,用recv函数来接受前台传来的数据。五、数据结构设计 逻辑结构设计 1)后台TCPtypedef struct tcp_node/存储 TCP 流量的循环链表,结构体初始化流量大小定义指针int value; /TCP struct tcp_node *next;/ tcp_node; tcp_node *head,*tail;/TCP typedef struct tcpsyn_node/ int value; /TCPSYN struct tcpsyn_node *next;/循环链表头尾指针存储TCPSYN流量的循环链表

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 活动策划

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