网络入侵检测系统(NIDS)资源消耗预测
1. NIDS资源使用建模
1.1 NIDS处理结构
NIDS的核心操作是跟踪多个网络端点之间的通信。如今,所有主要的NIDS都以有状态的方式运行,根据所使用的协议对网络通信进行解码,并在一定程度上反映通信端点所维护的状态。这种状态自然会随着活动连接的数量成比例增长,并且有状态方法的实现与网络协议栈自然对齐。
为了可靠地确定应用层协议的语义,系统首先处理通信的网络层和传输层。例如,对于HTTP,NIDS首先解析IP报头(验证校验和、提取地址、确定传输协议等)和TCP报头(更新TCP状态机、校验有效负载),然后重新组装TCP字节流,最后才能解析HTTP协议。
网络协议栈的一个主要特点是其广泛使用封装:各个层相互独立;虽然它们的输入/输出是相连的,但理想情况下层与层之间没有状态交换。因此,对于按照这些原则构建的NIDS,其协议分析组件也可以独立运行。特别地,可以合理假设,就CPU和内存使用而言,总资源消耗是各个组件需求的总和。这一观察结果构成了我们估算方法的基础。
在运行过程中,NIDS的资源使用主要取决于它所分析的网络流量的特征;它几乎将所有的CPU周期都用于分析输入流量,并需要内存来存储处理结果。一般来说,网络数据包是运行期间唯一持续的输入流,因此资源使用应直接反映所分析数据包的数量和内容。
我们假设,对于NIDS中分析网络活动特定方面或层的每个组件(我们称之为分析器),输入流量与分析器的资源需求之间的关系是线性的。设t0为NIDS开始运行的时间,Pt为到时间t(t ≥ t0)为止看到的输入数据包数量。此外,设Ct为到时间t为止看到的传输层连接总数,ct为时间t时当前活动的连
超级会员免费看
订阅专栏 解锁全文
2523

被折叠的 条评论
为什么被折叠?



