- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
NPMS系体系结构
NPMS系统体系结构、功能及接口
一、 系统功能定义
1、 接收V5格式的NetFlow。
2、 接收V7格式的NetFlow。
3、 接收V8格式的NetFlow。
4、 接收V9格式的NetFlow。
5、 对NetFlow的处理能力不低于10,000条/秒。
6、 能基于源IP地址、目的IP地址、源端口号、目的端口号、协议类型等条件对接收到的NetFlow流过滤。
7、 将过滤(或不过滤)后的NetFlow流,写入二进制文件。
8、 支持zlib压缩。
9、 写入的文件长度可以按时间或大小来选择。
10、 文件名能按照某种规则命名。
11、 后台多进程方式运行。
12、 自适应、健壮性。自适应一方面是指当网络设备发出的NetFlow流的速率超过设定值,则采取定时采样方式来接收NetFlow流,并将相关信息写入日志文件,以保证设备正常运行;另一方面是指系统能根据网络资源情况能动态地启动不同数量的子进程来工作。健壮性是指当启动的多个写入文件进程中的某个进程,由于各种原因成为僵死进程时,其父进程应及时将其杀死,以保证系统的健壮性。
13、 日志。日志内容包括系统开关机时间,异常情况记录。
14、 对自身服务器资源的监控。其内容包括CPU、内存、I/O等。
15、 支持转发功能。
16、 能接收多个网络设备发送的NetFlow。
工具软件功能定义:
1、特定要求发送特定类型的NetFlow流。
2、模拟DDOS攻击。
3、查看NetFlow流文件内容。
二、 系统体系结构
1、 硬件体系结构
2、 软件体系结构
FlowCollecter体系结构-1
设计说明:
1、 FlowCollecter分成4大部分:Manager、FlowWriteFile、FlowWriteDB,FlowRedirect。
2、 Manager处于该模块的总控部分。功能定义如下:
(1)、负责接受网络设备或探针RTProbe以UDP方式发送来的NetFlow数据包。
(2)、创建消息队列MQ。
(3)、fork多个子进程,在每一个子进程中执行FlowWriteFile。
(4)、创建共享内存ShMem,并将简单的NetFlow信息或统计信息存放在ShMem中。这里简单的定义是做这些工作对Manager的影响不大。
(5)、根据配置文件中的过滤规则,实现对NetFlow的过滤。过滤规则,可以基于源IP地址、目的IP地址、源端口号、目的端口号、协议类型等。
(6)、采用心跳(heartbeat)机制实现对子进程FlowWirteFile的监管。即当子进程没有在规定的时间(应定义为多少?),向定义的端口(1212)发送“子进程标识”信息,就认为该子进程为僵死进程,父进程监控该端口,然后杀死该子进程。
3、 FlowWirteFile处于该模块的第二部分。功能定义如下:
(1)、从Manager创建的消息队列中取出NetFlow数据。
(2)、拆分NetFlow包。
(3)、打包。将NetFlow数据按照我们自定义的协议格式xFlow,重新打包。
注:拆包和打包的任务也可以考虑在Manager部分完成。
(4)、写入文件。将xFlow写入文件。注:应考虑文件格式(二进制文件,类似RRD循环文件格式等)。
(5)、实现zlib压缩功能。
(6)、能按照命名规则自动取文件名。
(7)、能按照接收流的时间或文件长度规则,自动截取文件长度。也就是说NetFlow流文件不会是一个文件,而是一系列文件的集合。
4、 FlowWriteDB处于该模块的第三部分。功能定义如下:
(1)、从FlowFile文件中读取NetFlow数据。
(2)、写入到PostgreSQL数据库。
5、 FlowRedirect处于该模块的第四部分。功能定义如下:
(1)、从FlowFile文件中读NetFlow数据。
(2)、将NetFlow数据以UDP的方式转发到某台主机。
FlowCollecter体系结构-2:
设计说明:
1、 FlowCollecter分成3大部分:Manager、FlowWriteFile、FlowWriteDB。
2、 Manager处于该模块的总控部分。功能定义如下:
(1)、负责接受网络设备或探针RTProbe以UDP方式发送来的NetFlow数据包。
(2)、创建消息队列n个有名管道。
(3)、fork多个子进程,在每一个子进程中执行FlowWriteFile。
(4)、创建共享内存ShMem,并将简单的NetFlow信息或统计信息存放在ShMem中。这里简单的定义是做这些工作对Manager的影响不大。
(5)、根据配置文件中的过滤规则,实现对NetFlow的过滤。过滤规则,可以基于源IP地址、目的IP地址、源端口号、目的端口号、协议类型等。
(
文档评论(0)