关于大象流
大象流非常大(以总字节数为单位),由 TCP(或其他协议)设置的相对长运行的网络连接通过网络链路测量。默认情况下,大象流是速率大于每 10 秒 1GB 的流。它们可能会在 Snort 核心中造成性能威胁或问题。大象流很重要,因为它们可能会消耗过多的 CPU 资源,并影响检测资源的其他竞争流,并导致延迟增加或丢包等问题。
此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科可能会在某些地方提供本内容的当地语言翻译版本。请注意,翻译版本仅供参考,如有任何不一致之处,以本内容的英文版本为准。
大象流非常大(以总字节数为单位),由 TCP(或其他协议)设置的相对长运行的网络连接通过网络链路测量。默认情况下,大象流是速率大于每 10 秒 1GB 的流。它们可能会在 Snort 核心中造成性能威胁或问题。大象流很重要,因为它们可能会消耗过多的 CPU 资源,并影响检测资源的其他竞争流,并导致延迟增加或丢包等问题。
大象流配置允许自定义和绕过甚至限制大象流的选项。
您可以选择绕过或限制基于所选应用的流量,以提供可疑流量的 Snort 检查,同时绕过更受信任的流量。
大象流补救有助于根据您的特定要求确定优先级并为内部应用释放更多带宽。
当根据配置的参数检测到大量流时,您可以选择绕过或限制该流。当流量被绕过时,允许流量通过而不进行 Snort 检查。限制表示流量吞吐量降低。以 10% 的增量降低流量,直到 CPU 使用率降至配置的阈值以下。在识别大流并满足额外的 CPU 和时间窗口参数后,会发生绕行或限制。在识别大流之前,入侵策略会处理流,假设您已在“允许”规则中配置此流。这意味着不允许大量流在完全未经检查的情况下通过系统,因为大多数攻击都是在连接中很早就被检测到的。
要了解如何处理流,请参阅以下流程图。
除非系统检测到 Snort 强制条件(性能问题),否则不会执行任何操作。系统不会仅仅因为流量大而限制或绕过流量。此外,限制和旁路的操作是相互排斥的。这意味着您可以绕过或限制流,但不能同时绕过或限制流。
如果您不想绕过导致威胁的所有大流,可以将绕过选项限制为仅适用于特定应用。您可以优先考虑您信任的应用的连接,而不会限制性能。您可以配置必须绕过的应用,但剩余流量(导致威胁)将受到限制。这可确保其他不受信任的应用流仍会收到完整的 Snort 检测,尽管其带宽已减少。
在数据中心中,会发生多项活动,例如集群之间的数据复制、虚拟机集成和数据库备份。组织中的用户可能正在 OTT 上观看或下载视频。此类活动的带宽利用率可能会导致大量流量,降低网络速度并影响重要任务的性能。作为网络管理员(根据您的特定要求),您希望了解导致带宽问题的大型数据流并进行补救。
例如,让我们看看如何配置大流参数来绕过 WebEx 流量(您的组织用于实时视频会议)并限制其余应用或连接,包括视频、电影等。
确保您运行的是管理中心 7.2.0 或更高版本,并且托管威胁防御也是 7.2.0 或更高版本。
仅启用大象流检测不会生成其他连接事件。大象流检测将大象流表示法添加到已记录到管理中心的匹配连接。要记录这些事件,必须在访问控制策略中启用连接日志记录。您可以对特定规则执行此操作,也可以添加记录所有连接(包括大流)的监控规则。
步骤 1 |
依次选择 。 |
步骤 2 |
点击要编辑的访问控制策略旁边的 编辑 ( |
步骤 3 |
从数据包流末尾的 更多 下拉箭头中选择 高级设置 。 |
步骤 4 |
点击 大象流设置旁边的 编辑( ![]() |
步骤 5 |
默认情况下,大象流检测 (Elephant Flow Detection) 切换按钮处于启用状态。默认设置仅启用检测,不配置默认操作。检测设置允许您调整流字节和持续时间,以便可以识别系统中的大象流。 作为测试设置,配置流字节和持续时间参数,如下图所示。 ![]() |
步骤 6 |
启用 大象流补救 切换按钮。当检测到大象流时,您可以选择绕过或限制该流。绕过流意味着允许流量通过而无需 Snort 检查。限制表示流量吞吐量降低。此速率降低以 10% 为增量,直到 CPU 使用率降至低于配置的阈值。 作为测试设置,配置大象流补救参数,如下图所示。 ![]() |
步骤 7 |
启用 绕过流 切换按钮,然后点击 选择应用/过滤器 单选按钮。 ![]() |
步骤 8 |
在 应用过滤器下,搜索并选择 WebEx 应用,将其添加到规则中,然后点击 保存。这意味着 WebEx 连接是受信任的和优先的,如果这些 WebEx 连接被检测为大象流,则将根据配置的参数跳过 Snort 检查。 ![]() |
步骤 9 |
启用 限制 切换按钮以限制剩余流量(导致强制)。这可确保所有其他流量以 10% 的增量减慢,直到满足 Snort 强制条件。 |
步骤 10 |
点击确定 (OK)。 |
步骤 11 |
点击保存 (Save)。 |
部署配置更改。请参阅部署配置更改。
配置大流设置后,监控连接事件以查看是否检测到、绕过或限制了任何流。您可以在连接事件的 原因 字段中查看此信息。大象流连接的三种类型为:
大象流
受限制的大象流
受信任的大象流
步骤 1 |
选择统一事件 查看器中查看事件。 。您还可以在 |
||
步骤 2 |
在 连接事件 页面中,从 预定义搜索 下拉列表中选择 大象流 以显示象形流事件。 ![]()
![]() |
||
步骤 3 |
查看在流中检测到的大象流,并且 原因 字段显示 大象流。在流结束时,它被绕过,并且 原因 字段显示 受信任的大象流。 ![]() |
您可以为必须豁免补救的流配置 L4 访问控制列表 (ACL) 规则。如果检测到大型流,并且该流与为必须豁免补救操作的流定义的规则匹配。
您必须运行管理中心 7.4.0 或更高版本,并且托管威胁防御也必须是 7.4.0 或更高版本。
步骤 1 |
依次选择 。 |
步骤 2 |
点击要编辑的访问控制策略旁边的 编辑 ( |
步骤 3 |
从数据包流末尾的 更多 下拉箭头中选择 高级设置 。 |
步骤 4 |
点击 大象流设置旁边的 编辑( |
步骤 5 |
确保您已配置大象流检测和补救参数。请参阅配置大象流参数。 |
步骤 6 |
点击 补救豁免规则旁边的 添加规则 按钮。 ![]() |
步骤 7 |
从 可用网络列表中,选择要免于执行大象流补救的已配置主机。在本示例中,我们创建了一个名为“Host1_Exception”的主机。 ![]() |
步骤 8 |
点击 添加到源 或 添加到目标 (根据需要),将此主机添加到源或目标。 |
步骤 9 |
点击端口选项卡。 |
步骤 10 |
对于源端口,选择 协议 作为 TCP 并输入 80 作为目的端口,然后点击 添加。 ![]() |
步骤 11 |
点击确定 (OK)。 ![]() |
步骤 12 |
点击保存 (Save)。 |
部署配置更改。请参阅部署配置更改。
步骤 1 |
选择统一事件 查看器中查看事件。 。您还可以在 |
步骤 2 |
查看免于补救的大象流。 理由 字段显示 免于补救的大象流。 ![]() |
有关详细的概念信息,请参阅本指南中的“Snort 3 大象流检测”一章或以下链接中的内容: