首页 > 文章中心 > 数据管理系统

数据管理系统

前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇数据管理系统范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。

数据管理系统

数据管理系统范文第1篇

CATIA软件以其强大的自由曲面造型和逆向功能,成为航空和汽车行业的主流CAD平台[1]。CATIA软件为兼顾用户的不同需求,预留了二次开发接口。在CATIA平台下进行零件库的开发主要有3种方法[2]:第1,使用CATIA的Formula、DesignTable和Catalog功能建立三维标准件库,但其格式固定,不能有效和国家及企业标准结合起来,且操作繁琐、更新性较差、零件存储的数据冗余、不易操作[3]。第2,可以利用CATIA提供的组件应用架构(ComponentApplicationArchitec⁃ture,CAA)接口和二次开发工具快速应用开发环境(RapidApplicationDevelopmentEnvironment,RADE)进行CATIA的二次开发,创建零件库的应用程序。此方法入门困难,但实现的功能强大,开发的程序效率高,能够满足用户深层次专业化的要求[4]。第3,使用自动化接口(AutomationAPI),在VB环境下引用CATIA的类对象、函数进行二次开发。此种方法入门容易,但功能限制大[5],且所开发的零件库系统只能在特定模块下使用,灵活性较差[6]。本文从车身关键数据管理的实际问题出发,结合CATIA平台下3种开发零件库方法的优缺点,利用和MySL建立车身关键数据管理系统,采用CA⁃TIA/CAA技术,实现了数据库系统与CATIA的无缝连接,应用Automation技术实现了数据库系统与CATIA的数据通信。该数据管理系统可以完成关键数据的管理、预览、对比以及模型输出,为提高对标设计效率、缩短车身开发周期提供了支持。

2车身关键数据管理系统总体设计

该系统以Windows和CATIAV5为操作平台,使用作为开发语言,通过MySL作为底层数据库进行数据存储。图1为系统的体系结构框图,可分为集成层、用户层和数据存储层。集成层使用RADE和CAAAPI实现用户层与CATIA的集成。用户层体现了系统功能,目前可分为3个基础模块(分别为系统管理模块、车型管理模块、材料管理模块)和1个关键数据模块,关键数据管理模块作为车身关键数据的载体,根据用户对不同零件的需求,可进行实时扩展。数据存储层为用户层的各模块提供相应的数据支持,其和用户层通过接口和Automation进行数据交流与更新。系统的工作流程可描述为:进入CATIA,点击开发工具条上的车身关键数据管理系统命令按钮,打开已加载到CATIA内部的车身关键数据管理系统,通过访问数据库,进行车身关键数据的功能性操作。

3系统关键结构的实现本系统关键结构包括集成层的实现和用户层的开发。

3.1基于CAA的集成层开发

采用组件应用架构CAA完成数据库系统在CATIA下的入口设计,要在CATIA中创建一个全新的work⁃bench,以便将基于CAA二次开发的车身关键数据辅助设计模块进行集中显示,也要将开发的工具条嵌入到其他相关工作台中,以利于实际操作。集成层的开发框架(图2)分为两个步骤:第1步,插入新工作台;第2步,在新工作台中开发新工具条并将工具条关联到CATIA的创成式、零件设计和装配设计工作台。a.工作台的插入在CAA中创建新的工作台流程。b.工具条及命令按钮开发工具条在新建工作台和创成式设计、零件设计以及装配设计下可用,因此需要将工具条描述类与这4项的接口建立联系。以新建工作台为例,通过以下两个语句,可实现工具条与新建工作台的连接。#include"TIE_IBATVBDCreationWbenchAddin.h"TIE_IBATVBDCreationWbenchAddin(BATDataAd⁃din)工具条描述类作为对系统接口的扩展,会重载Cre⁃ateToolbars和CreateCommands两个函数,CreateToolbars用以创建一个按钮容器,即工具条。图4是创建工具条及添加按钮的过程。4标准工具条及按钮的创建流程函数CreateCommands()的作用是关联工具条按钮的响应命令。在该命令中添加调用外部程序的响应,可实现对外部程序调用的API函数有Shell、ShellExecute、ShellExecuteEx、Winexec、CreateProcess等,本文采用使用率较高的ShellExecute函数。

3.2车身关键数据管理系统

作为车身设计数据的对标平台,也可以作为通用化的基础平台,系统的设计功能如图6所示。a.用户权限划分:不同用户权限使用不同功能。管理员职能涉及对数据库的修改操作,而普通用户仅对数据库有查询操作权限。图7为系统主界面。b.数据存储:记录用户关注的车身关键数据,包括车型、材料、主断面位置、车门、主断面、密封条断面、孔堵和铰链等数据的几何信息及其数模文件。c.数据查询:实现对车型、材料、主断面位置、车门、主断面、密封条断面、孔堵和铰链的几何信息进行浏览和查询,同时可以对零件或断面的形状进行初步预览。图8为关键数据的信息展示界面。d.数据输出与对比报表:对于其他程序或脚本来说,CATIA只是一个OLE自动化对象服务器,因此任何能访问COM对象的程序或脚本都能访问CATIA的对象并对其进行操作[7]。本文通过Automation技术实现了数据库系统与CATIA的通信,使用前在程序框架中引用CATIA的库文件,在获取当前CATIAApplication对象后,使用Documents的Open方法将数据库中的数模文件在CATIA中打开。通过Automation技术实现数据库与CATIA的通信,将相应断面或零件数模从数据库中直接导入到CATIA。对比报表的输出同样采用支持自动化操作的Excel实现,用户根据自身需要搜索到所需零件或断面,通过选择相应的参数,输出参数对比报表。图9为对标数据参数对比报表的输出。

4结束语

数据管理系统范文第2篇

质量数据管理系统是卷烟企业制丝线生产管理系统的重要组成部分之一,其主要指设计过程质量规范、检测、监控与改进过程质量指标,达到保证产品或服务质量目的的管理系统。从质量管理的最新发展理论可以看:BPR(过程管理)技术、六西格玛质量管理、ISO标准及PLM等都是以关注过程质量为核心。这些质量管理相关理论从本质上来看,可以将过程质量管理的内容划分为规划过程质量、设计过程质量、制造过程质量、使用过程质量、报废处理过程质量和服务过程质量等产品生命周期各个阶段的管理。图1为制丝线质量管理系统的功能边界示意图。

2过程质量模型

过程质量模型是以关键工艺设备为核心来建立的。系统首先对设备的工艺任务进行描述,根据工艺任务完成的内容,对需要考核的质量指标、工艺标准进行建模,将质量指标、工艺标准转化为具体的工艺参数设定值和设定范围;然后,系统将针对具体的工艺参数要求对各个控制环节需要的控制器件、检测器件进行分类和建模,完成质量标准、工艺标准工艺参数控制器件的统一建模过程;最后系统针对质量问题的描述进行建模,将质量问题描述转化为具体的数值信息,便于分析和考核生产过程的质量状况。

3过程数据模型

根据制丝线生产组织方式特性、制丝工艺流程形式和制丝线过程质量管理的业务需求建立了面向制丝线过程质量管理的过程数据模型,其模型结构如图2所示。

4过程质量分析评价方法统计

过程控制(SPC)提供了一系列的统计分析方法和相应的分析控制图用于对加工过程中的各个工序进行监控,从而达到改进与保证产品质量的目的。在制丝过程质量管理系统中我们将以SPC的统计分析方法为基础,结合前述的过程数据模型的特性建立面向制丝线的过程质量分析评价方法。基本的分析评价方法如图3所示。

5关键设备工艺数据分析

5.1CPK实时计算

过程能力指数(ComplexProcessCapabilityIndex,CPK)反映设备生产能力强弱,是衡量过程加工内帐一致性的、最稳态下的最小波动。对于生产过程,产品质量总是分散存在。若CPK过高,则产品质量特性值的分散就会越小;反之,产品质量特性值的分散就会越大。CPK实时计算主要分下面几个步骤实现:①计算出该工艺数据的标准方差。标准方差的计算公式如式(1)所示。STDDEV=(PVi-PV)2姨n(1)其中,PVi为第i个采样周期的采样值;PV为所有采样值的平均值;n为采样次数。对上式进行化简有:STDDEV=∑PV2-(∑PV)2/nn-1姨(2)其中,PV为当前采样周期的采样值。在PLC中实时计算式(2)时,存在一个“大数吃小数”的问题:因为在PLC中,32浮点数的有效位数只有7位,在计算标准方差时,∑PV2和(∑PV)2是一个很大值且大小相当值,导致两者之差的结果会产生误差,从而最终导致CPK的计算结果产生误差。为解决上述问题,克服PLC浮点数计算精度导致的计算误差,对式(2)的标准方差计算公式进行如下改进:STDDEV=∑(PV-SP)2-(∑(PV-SP))2/nn-1姨(3)②计算制程准确度K值。K=SP-(∑PV)/nSP*Scale(4)其中,SP为工艺参数设定值;Scale为设定的波动标准。③计算制程精密度CP值。CP=SP*Scale3*STDDEV(5)④计算过程能力指数CPK值。CPK=(1-K)*CP(6)PLC通过式(3)至(6)在设备控制层对重要工艺参数的CPK值进行实时计算,然后将计算的CPK值通过监控网络实时传输到IO数据采集服务器,最终在WINCC监控系统和质量数据管理系统中实时更新显示。

5.2叶片水分、温度控制

构建润叶机质量数据管理模型,首先根据工艺任务和工艺标准确定润叶机的工艺质量指标,包括出口水分和出口温度。当系统正常工作时,确保系统条件满足要求,也就是水压、气压、汽压等需按照设备正常工作条件进行设定,按照批次组织生产。将润叶机整个工序中的关键数据实时记录,主要是电子秤流量、润叶机出入口水分、润叶机出口水分。当润叶机出口水分达不到工艺标准要求时,可分析是否生产控制参数设定错误,加水管路工作是否正常,电子秤、流量计、水分仪精度是否满足精度要求。当润叶机出口温度达不到工艺标准要求时,可分析温度检测仪是否精度不够、蒸汽控制阀是否平稳、系统工作压力是否正常等。通过润叶机水分、温度的控制可以看出,质量分析不仅是对某批次简单的质量评定,同时通过质量分析,可以对在线设备的各方面性能提出明确的改进方向。

6小结

数据管理系统范文第3篇

【关键词】长输管道;输油生产;数据管理

长输管道具有距离长、管理难度大的特点,特别是早期建设的部分原油输送管道,受限于当时的技术水平,自动化管理水平普遍较低。中石化所辖邹城输油处长输管线投产以来,一直使用电话汇报、手工记录的方式记录各站库生产数据,出错率高而且多个输油站同时汇报使调度人员应接不暇,造成数据处理的迟缓和混乱,在一定程度上影响管理水平和经济效益的提高。随着管道公司现代化水平全面提高,电话汇报的管理方式已经处于落后水平,而借助公司内部局域网可以方便地进行生产数据的管理,同时利用计算机对相关数据进行分析处理,可以极大提高工作效率。同时提高数据汇报的准确性,对于石油企业保证安全生产有重要意义。

1.数据管理系统的开发内容

输油生产数据管理系统主要设计了泵站输油生产报表的数据提取保存功、数据报表的局域网传输、服务器端的数据库的保存与查询功能,包括数据采集、存储、传输、统计汇总、查询、报表打印及图形输出等。将计算机技术和现代通讯技术有机的结合在一起,实现了长输管线生产管理信息的最优化处理。其中主要的研究重点是局域网内数据的无差错稳定传输;单一服务器端对多个客户端的局域网通信技术;数据的提取及保存;数据库的保存和查询。其目标是对现有管道输油的汇报方式进行更新,提高数据汇报系统的可靠性,提高工作效率,保证输油安全生产。

1.1 系统软件的开发

输油生产数据管理系统的设计开发主要有数据报表、服务器端程序、客户端程序等内容。

(1)数据报表的制作

邹城输油处有12个输油泵站,其中临邑首站和其他11个中间泵站的数据报表不同,因此要同时制作适合临邑输油站的数据报表、适用于中间泵站和末站的数据报表和适用于处调度的汇总报表。利用EXCEL表格处理软件制作的数据报表实现简单,并且利用VBA宏功能,能实现复杂的表格制作,生成符合要求的数据报表。

(2)系统程序的设计

程序的制作分为临邑站客户端程序,中间站客户端程序和处调度服务器端程序。使用VB语言编程实现简单,而且利用VB开发环境中的Active控件实现例如EXCEL报表操作、内部局域网数据传输,设计程序的相关功能模块,包括数据报表的传输,数据报表汇总,数据报表保存分析,软件状态的保存以及其他设置功能等功能极为方便。

1.2 数据通信的实现方法

由于各站调度室的电脑只能连接单位内网,因此系统软件利用VB程序中自带的WINSOCK控件实现处调度与输油泵站调度的上下级网络联系,利用处调度电脑的固定内网IP地址,通过固定多个通信端口来实现多个泵站调度同时对处调度的通信。数据传输的代码如下。

Private Sub chudiaodu_DataArrival (ByVal bytesTotal As Long)

Dim WskChat As String

filename = App.Path & "\temp.xls"

chudiaodu.GetData WskChat

GetFileNum = FreeFile

LenFile = FileLen(filename)

Open filename For Binary As #GetFileNum

OnSend = True

querenhuibao.Enabled = False

Call SendFile(chudiaodu,GetFile-Num,SplitFile)

End Sub

1.3 数据提取的实现方法

由于报表模板均为EXCEL制作,因此可以方便的利用VBA进行数据提取功能的实现。将数据报表模板设计好后,固定数据的存储位置即可利用VBA进行数据的提取工作。数据提取的代码如下。

Workbooks.Open (ExcelPath.filename)

Sheets(“上报报表”).Select

jinzhanyali.Text = Range("B" & loc).Text

…………

diwen.Text = Range("AJ" & loc).Text

MsgBox “报表提取成功!”, vb-OKOnly, “提示”

'Windows(ExcelPath.FileTitle).Close (False)

2.数据管理系统的整体测试

在系统软件编写调试完成后我们进行了相关的测试使用,由于系统实现了泵站生产报表数据的自动提取工作提高了数据汇报的准确性,只要原始报表无误,通过程序自动提取的数据就因此保证了数据在汇报过程中的一致性。系统模型图如图1所示。

在内部局域网测试环境下该系统的网络连接迅速、稳定。在输油站部署完毕后,进行系统的实际测试,经过一个月的测试,各输油站调度人员均能熟练使用,调度工作量有极大的减轻。

图1 输油生产数据管理系统S/C模型图

3.系统开发的意义

利用现代局域网技术和计算机实现生产数据自动汇报,生产调度岗位的大量工作由计算机完成,可以减少值班人员的人数,同时调度人员有更多的时间和精力参与其他生产管理活动,同时降低了相关人员的劳动强度,提高了工作效率;也可以迅速、完整、规范的提供生产运行数据;及时、准确地掌握全线生产参数状况,提高生产管理水平。

数据管理系统范文第4篇

关键词:产品检验;数据管理

中图分类号:TP311文献标识码:A文章编号:1009-3044(2011)17-4096-03

Design and Implementation of the Product Testing and Data Management System

YU Jie

(Data Processing Center of Bank Shanghai, Shanghai 200040, China)

Abstract: This article Based on the data management system for product testing requirements analysis, system architecture and functional model, and system refinement of the functions of each module, using Jbuilder 2010 development environment to achieve the system's basic functions.

Key words: product inspection; data processing

随着企业信息化应用的深入,为了实现对产品质量更好地管理和控制,将产品检验环节集成到企业的信息系统中,建立产品检验管理数据系统,对检验过程和检验数据进行电子化管理,是当代制造企业的必然选择。检验的目的不仅仅是判断产品是否合格,而更重要的是通过检验得来的数据通过汇总、统计、分析、计算,可以得到许多有用的图表和分析结果,帮助企业了解产品质量现状,做出正确的质量决策。产品检验管理系统可以实现检验流程的电子化,对检验数据进行组织分类和集中管理,解决数据输入难、查询统计复杂等问题。

产品检验管理系统的研究以现代质量管理方法与理念为基础,以信息技术为支撑,旨在实现检验信息的采集、处理和传递的信息化,支持各层次质量的诊断与决策,实现企业质量管理的信息、功能和过程集成,从而辅助企业提高质量管理水平,优化整体质量体系,降低质量成本,保证产品从设计到制造、服务等各个环节的质量,为企业进行全面质量管理提供支持。

本文本文研究了基于XML的产品检验数据表达方法。应用XML定制多样化产品检验数据模板,表达检验数据模型;结合企业质量检验特点,通过对企业需求的分析,总结出产品检验管理系统应满足的功能要求和具备的特点,对系统的总体功能框架和数据库进行设计;在上述技术研究的基础上,开发了产品检测管理系统,利用JBuilder2010开发软件实现系统的基本功能。产品检验管理系统实现企业检验过程的电子化管理和检验数据的电子化管理等功能。主要通过给出相应的界面,介绍了产品检验管理系统部分运行实例。该系统在实际运行中,取得了良好的应用效果。

1 产品检验数据管理系统需求分析

产品检验是产品从开始生产到出厂交付之间的一个必备环节,包括过程检验和入库/验收检验。该企业对产品检验的要求非常严格,产品检验过程复杂,需要处理的数据量大。但是在信息密集的检验部门,虽然目前部分检验测试数据已实现数据库管理,但大量的测试记录和检验结果数据以及检验过程都以纸介质的形式存在,数据输入繁琐,生产人员、设计人员、检验人员和客户无法及时、完整的了解产品的质量信息。可见,通过一个信息管理系统来收集检验测试数据并对它们进行有效的管理,使检验信息不再以纸介质的形式流动,实现检验过程的电子化,这样既大大提高了工作效率,也有利于管理人员随时了解并监控产品的过程状态信息。

产品检验管理系统是企业信息化建设的重要的环节,因此系统必须具有可扩展性,在将来可以与其它信息系统集成;实现对产品的测试指标、测试合格值(范围)和测试结果数据的有效管理,并能将合适的数据按照规定的格式填入到产品证明书中;实现工艺可视化,使操作人员可以按照相应的操作来进行,减少次品。企业生产的产品品种多样,不同的客户对产品的要求不同,如何根据客户的要求来实现产品的检验是需求之一,为此需要提供定制的功能。

通过对企业需求的分析,产品检验管理系统应该具备以下基本功能:

1) 通过工序过程树来进行工序过程检验管理。通过系统能够创建生产任务,并分配给负责的生产人员,然后可以通过可视化工艺在线查询相关操作视频,记录所有的生产操作结果。碰到检验点时通过提交申请进行检验,满足要求后再进行下道工序操作。

2) 实现产品检验的一整套电子化的检验过程管理,包括过程检验和入库验收检验;定义检验生命周期中产品的不同生命周期状态,实现产品检验数据的电子化管理(检验数据的具体表现形式是产品履历书、产品证明书、质量反馈单、检验提交单和客户检验通知单等),各部门能够快捷而安全地访问到所关心产品的检验数据,并按照过程阶段任务的要求编辑特定的数据。

3) 提供数据导入接口,实现将来源于检测设备并经过统计处理以后的检测结果数据填入到产品证明书的测试记录表中,并能够进行相应的判断;在检验数据电子化管理的基础上,提品检测结果数据的查询和统计功能。

4) 系统具有可扩展性。应该提供相应接口以便与其他系统集成,并最终实现完善的产品检验管理系统。通过提供模板定制的功能满足不同产品型号和不同客户的要求。

5) 根据不同部门、用户提供不同内容的界面,并且根据该成员登录的部门、用户的权限及对象的状态集成必须的要素,达到很好的权限与安全控制。

2 系统模块与数据结构设计

2.1 系统模块设计

图1是产品检验管理系统的功能模块图。产品检验管理系统主要由数据录入、统计分析、信息查询、用户管理和数据导出五个子功能模块构成。

数据录入模块包括:基本信息录入、检验信息录入和故障信息录入。统计分析模块包括:数据统计分析、故障诊断和工具集。信息查询模块包括:基本信息查询、检验信息查询和故障信息查询。用户管理模块包括:用户的添加、用户的删除和用户信息的修改。

2.2 数据结构设计

数据库建模设计是整个系统关键的一步,一个良好的数据库设计是高效率的系统所必须的。首先依据需求,获取并分析系统信息,进行数据内部以及外在关系的分析,有效地建立整个系统的数据结构,在此基础上对数据库的数据量、数据流量及响应速度的估算分析,产生数据模型,数据存储合理,没有冗余,符合数据库设计的3个范式。由实体联系分析可知,本系统使用的基本表有:产品基本信息表、工艺检验信息表、用户信息表。其具体的数据结构设计如表1-表3。

3 产品检验数据管理系统实现及运行实例

结合企业检验的具体情况,开发了产品检验管理系统。该系统采用JBuilder2010开发软件实现,后台数据库为ACCESS。它实现了:实现了用户管理;产品检验数据的电子化管理,能够实现添加、删除和查询产品信息,并根据不同要求对信息进行编辑。基于上述理论开发的产品检验管理系统的功能,检验流程以及部分界面。

图2所示为系统登录界面,凡是要用该系统的用户都必须定义相应的用户,然后通过用户登录系统。如果该用户离职或不再负责该产品的话,管理员可以通过用户定义界面中的有效标志修改用户的状态。在登录界面下方的状态栏中会显示“请输入用户名和密码”等相关提示信息。

用户登录系统之后,进入系统的主界面,在主界面的右下方会显示当前登录用户的用户名和登录时间。如图3所示。

在图4中可以看到,主界面的左侧是产品结构树,该树只有一层节点,其中每一个节点直接对应一种产品。选中某种产品,点击“产品基本信息”按钮或“工序检验信息”按钮时在主界面的右侧可以显示出该产品对应的基本信息表或检验信息表。在选中表中的一行数据时,下方的状态栏会显示所选行对应的产品编号或者工序编号。

工序信息编辑只能对产品工序信息的一行数据进行编辑,所以当用户要对某种产品的工序信息进行编辑时,必需先选中一个产品,并选中该产品工序信息的一行,才能点击“工序信息编辑”按钮,否则将出现提示报错。见图5。

在产品工序检验信息编辑对话框中,共有七个文本框,分别对应工序检验信息表中的七列,其中“工序名称”和“工序编号”为固定的,不能进行编辑,其余五项“技术要求”、“检验结果”、“是否合格”、“记录时间”和“备注”都可以在文本框中进行编辑。以适应同一种产品不同加工要求的变化。“技术要求”、“检验结果”、“是否合格”和“记录时间”是必填字段,不能为空,否则不能保存并出现提示框以确认信息到完整性。见图6。

当用户输入正确的休息并点击“确定”按钮,系统提示编辑信息成功,退出编辑界面并将用户输入的信息显示在工序检验信息表中。结果见图7和图8。

4 结束语

本文结合企业质量检验特点,对产品检验数据管理系统进行需求分析,对系统的总体功能框架和数据库进行设计;系统开发过程虽然实现了系统之间的集成,但只完成部分功能,为了更好地在企业的各个信息系统之间进行数据共享,需要研究并实现系统间的集成,并保证检验数据的安全性和可控性。

参考文献:

[1] Shalev D M,Joseph Tiran.Condition-based fault tree analysis (CBFTA): A new method for improved fault tree analysis (FTA),reliability and safety calculations[J].Reliability Engineering and System Safety,2007(92):1231-1241.

[2] 杨世元,刘渤海.基于质量信息技术的全质量管理信息系统的总体设计[C]//上海质量协会.第十届ISO9000与TQM国际会议论文集,上海:上海质量杂志社,2005.

数据管理系统范文第5篇

关键词:入侵检测;数据;数据管理

中图分类号:F49 文献标识码:A

入侵检测数据管理系统是入侵检测系统实现的关键,是入侵检测数据分析的基础。本文所研究的入侵检测数据管理系统实现分三个部分:数据包捕获模块、数据提取模块和事件分析数据库的实现。

一、数据包捕获模块实现

数据包捕获模块是进行检测和决策的基础,它的准确性、可靠性和效率直接影响到整个系统的性能。数据包捕获模块的任务是利用数据包捕获工具从网卡上捕获网络上的数据包,再将捕获的数据包经过解码引擎填入到链路层协议的包结构体中,以便对高层次的协议进行解码。

对网络数据包的捕获机制。网络数据包捕获机制指通过捕获整个网络的所有信息流量,根据信息源主机、目标主机、服务协议端口等信息简单过滤掉不关心的数据,再将系统感兴趣的数据发送给更上层的应用程序进行分析。网络数据捕获可以通过两种方法实现:一种是利用以太网络的广播特性;另一种方式是通过设置路由器的监听端口实现。

1、利用以太网络的广播特性进行捕获。以太网数据传输通过广播实现,但是在系统正常工作时,应用程序只能接收到以本主机为目标主机的数据包,其他数据包将被丢弃不作处理,其数据包过滤机制分为链路层、网络层和传输层几个层次。链路层主要指网卡驱动程序判断所收到包的目标MAC地址,如果不是自己网卡的MAC地址,又不是广播地址和组播地址,将直接丢弃,不向上层提交。网络层判断目标IP地址是否为本机所绑定IP地址,否则将不向上层提交。传输层如TCP层或者UDP层判断目标端口是否在本机已经打开,如果没有打开不作处理,并不向应用层提交。

2、在交换环境中的网络数据捕荻。在实际应用中,存在很多非以太网接入的情况,如通过光纤接入等。

二、数据提取模块实现

数据提取模块是实现入侵检测系统VIDS的基础,它为检测模块提供分析的数据。根据数据包和系统日志提取出相应的特征数据,并对其进行规范化,以方便后面的数据分析。数据提取的三个过程是:协议解析、规则解析和数据预处理。

1、协议解析。数据包捕获模块把捕获的数据提交给协议解析模块后,协议解析模块必须对这些数据进行分析,根据相应的协议把这些分析后的数据放到指定的数据结构中,供上层模块调用。协议解析模块设计了一些对数据包进行表述的数据结构,在这些数据结构中,存放数据的Packet结构是其中最为关键的一个,数据包的数据结构如下:在数据包解码时,首先判断以太网封装的协议是否为IP协议,如果不是,则直接返回;否则,首先解析出IP头部,再根据所封装的协议,并分别对TCP、UDP、ICMP解析,将各项值写入Packet结构中对应的字段。

2、规则解析。在本系统中,采用了Snort的入侵行为描述方法。这种描述方法简单、易于实现,能够描述绝大多数的入侵行为。Snort的规则在逻辑上分为两部分:规则头和规则选项。规则头部分包括:规则行为、协议、源/目的IP地址、子网掩码以及源,目的端口。规则选项包含了所要显示给用户查看的警告信息,以及用来判定此报文是否为攻击报文的其他信息(比如,TCP的Flag字段以及数据字段的内容等)。

3、数据预处理。数据预处理模块的作用就是对网络数据进行预先处理,从而方便随后的检测分析。另外,我们可以发现,基于规则的检测引擎并不能检测所有的入侵,尤其是针对有效载荷的检测,而像端口扫描、SYN Flooding等攻击,按照前面所述的方法很难对它们的特征进行提取。因此,需要特殊情况特殊处理,而数据预处理就是一个很好的选择。常用的预处理内容如下:

(1)minfrag的格式。minfrag预处理检查分组数据包的大小是否低于某一设定的闽值。数据包分组通常是由源和目的地址之间的路由器来进行的。一般来讲,商业网络设备不会将数据包的分组大小设置于512字节。因此,能使用这个事实监控小的数据包分组,这种小的分组数据一般说明某些试图在分组里隐藏它们的数据。

(2)HTTP Decode的格式。HTTP De-code用于处理HTTP URL地址字符串,并将串中的数据转化为可读的ASCII字串。这样做的目的是为了检测到躲避Web URL扫描的行为和攻击,这些入侵行为常常会通过地址字符串中某些异常字符的设置,来躲避对HTrP通信可疑行为的内容分析检查。格式为:http_deeode:L―unicode][-cginull]。

(3)Portscan Detecto的格式。Portsean向标准日志设备中记录从一个源IP地址所发出的端口扫描活动的开始和结束。如果指定了一个日志文件,在记录扫描类型的同时也记录目的IP地址和端口号。端口扫描定义为在时间T(秒)之内对超过P个端口的TCP连接尝试,或者在时间T(秒)之内对超过P个端口发送UDP数据包。端口扫描可以是对任一IP地址的多个端口,也可以是对多个IP地址的同一端口。Snortl,6版本可以处理单对单和单对多方式的端口扫描,而现在的版本可以处理分布式的端口扫描(多对一或多对多)。端口扫描也包括单一的“隐蔽扫描”数据包,比如NULL、FIN、SYN-FIN、XMAS等。如包括秘密扫描的话,端口扫描模块会对每一个扫描数据包告警。