Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

SRX 系列防火墙上的流量处理概述

适用于安全设备的 Junos OS 集成了瞻博网络的网络安全和路由功能。进出设备的数据包会经历基于数据包和基于流的处理。

了解安全设备上的流量处理

适用于安全设备的 Junos OS 集成了瞻博网络世界一流的网络安全和路由功能。Junos OS 包括各种基于数据包的过滤、服务等级 (CoS) 分类器和流量整形功能,以及一组丰富而广泛的基于流的安全功能,包括策略、筛选、网络地址转换 (NAT) 和其他基于流的服务。

进出安全设备的流量将根据您配置的功能进行处理,例如数据包过滤器、安全策略和屏幕。例如,软件可以确定:

  • 是否允许数据包进入设备

  • 要应用于数据包的防火墙屏幕

  • 数据包到达目的地的路由

  • 要应用于数据包的 CoS(如果有)

  • 是否应用 NAT 转换数据包的 IP 地址

  • 数据包是否需要应用层网关 (ALG)

进出设备的数据包会经历基于数据包和基于流的处理:

  • 基于流的数据包处理以相同的方式处理相关数据包或数据包流。数据包处理取决于为数据包流的第一个数据包(称为流)建立的特征。

    对于服务网关的分布式处理架构,所有基于流的处理都在 SPU 上进行,并且采样是多线程感知的。为取样数据包维护数据包排序。

  • 基于数据包或无状态的数据包处理以离散方式处理数据包。每个包都单独评估治疗。

    对于服务网关的分布式处理架构,一些基于数据包的处理(如流量整形)发生在 NPU 上。某些基于数据包的处理(例如对数据包应用分类器)发生在 SPU 上。

本主题包括以下部分:

了解基于流的处理

数据包在基于数据包的过滤器和一些屏幕应用后进行基于流的处理。单个流的所有基于流的处理都发生在单个服务处理单元 (SPU) 上。SPU 根据为会话配置的安全功能和其他服务处理流的数据包。

图 1 显示了基于流的流量处理如何在服务网关上进行的概念视图。

图 1:基于流的处理 Traffic Flow for Flow-Based Processing的流量

流是满足相同匹配标准并具有相同特征的相关数据包流。Junos OS 以相同的方式处理属于同一流的数据包。

对于流的第一个数据包,将评估确定数据包命运的配置设置(例如,如果数据包需要应用层网关 (ALG)、如果应用 NAT 来转换数据包的源和/或目标 IP 地址,则应用其安全策略。

要确定数据包是否存在流,NPU 会根据以下匹配标准尝试将数据包的信息与现有会话的信息进行匹配:

  • 源地址

  • 目标地址

  • 源端口

  • 目标端口

  • 协议

  • 给定区域和虚拟路由器的唯一会话令牌号

区域和策略

用于流的第一个数据包的安全策略缓存在流表中,以便用于相同的流和密切相关的流。安全策略与区域相关联。区域是定义安全边界的接口集合。数据包的传入区域(由其到达的接口确定)及其传出区域(由转发查找确定)共同确定用于流数据包的策略。

流程和会话

基于流的数据包处理是有状态的,需要创建会话。为流的第一个数据包创建会话,用于以下目的:

  • 存储要应用于流数据包的大部分安全措施。

  • 缓存有关流状态的信息。

    例如,流的日志记录和计数信息缓存在其会话中。(某些有状态防火墙屏幕依赖于与单个会话或所有会话相关的阈值。)

  • 为 NAT 等功能分配流所需的资源。

  • 为 ALG 和防火墙功能等功能提供框架。

大多数数据包处理发生在流的上下文中,包括:

  • 管理策略、NAT、区域和大多数屏幕。

  • ALG 管理和身份验证。

了解基于数据包的处理

数据包从其输入接口上的队列中移除时,以及在将数据包添加到其输出接口上的队列之前,将经历基于数据包的处理。

基于数据包的处理将无状态防火墙过滤器、CoS 功能和某些筛选应用于离散数据包。

  • 当数据包到达接口时,将对其应用健全性检查、基于数据包的过滤器、某些 CoS 功能和一些屏幕。

  • 在数据包离开设备之前,任何基于数据包的过滤器、某些 CoS 功能和与接口关联的某些屏幕都将应用于数据包。

过滤器和 CoS 功能通常与一个或多个接口相关联,以影响允许哪些数据包通过系统,并根据需要对数据包应用特殊操作。

以下主题介绍可以配置并应用于传输流量的基于数据包的功能类型。

无状态防火墙过滤器

无状态防火墙过滤器也称为访问控制列表 (ACL),用于控制访问并限制流量速率。它们静态评估将设备从源传输到目标的数据包的内容,或源自路由引擎或发往路由引擎的数据包的内容。无状态 防火墙过滤器 评估每个数据包,包括分段数据包。

您可以将无状态防火墙过滤器应用于输入和/或输出接口。筛选器包含一个或多个术语,每个术语由两个组件组成:匹配条件和操作。默认情况下,与防火墙过滤器不匹配的数据包将被丢弃。

您可以规划和设计用于各种目的的无状态防火墙过滤器,例如,将流量限制到特定协议、IP 源或目标地址或数据速率。无状态防火墙过滤器在 NPU 上执行。

服务等级功能

CoS 功能允许您对流量进行分类和调整。CoS 功能在 NPU 上执行。

  • 行为聚合 (BA) 分类器 — 这些分类器在数据包进入设备时对数据包进行操作。使用行为聚合分类器,设备将不同类型的流量聚合到单个转发类中,以接收相同的转发处理。BA 分类器允许您根据差分服务 (DiffServ) 值设置数据包的转发类和丢失优先级。

  • 流量整形 — 您可以通过为特定流量流服务的特定应用程序分配具有不同延迟、 抖动和数据包丢失特征的服务级别来调整流量。流量整形对于语音和视频传输等实时应用特别有用。

屏幕

某些屏幕(如拒绝服务 (DoS) 屏幕)应用于流进程之外的数据包。它们在网络处理单元 (NPU) 上执行。

了解 IPv4 流量的默认处理行为

要使安全功能(如区域、屏幕和防火墙策略)正常运行,需要基于流的处理模式。默认情况下,除设置为丢弃模式的 SRX300 系列和 SRX550M 设备外,所有设备上的 IPv4 流量都启用了 SRX 系列防火墙基于流的转发。从 Junos OS 版本 15.1X49-D70 和 Junos OS 版本 17.3R1 开始,对于 SRX1500 系列、SRX4100、SRX4200、SRX5400、SRX5600、SRX5800 和 vSRX 虚拟防火墙设备,在流模式、数据包模式和丢弃模式之间切换模式时,无需重新启动设备。对于 SRX300 系列和 SRX550M 设备,在流模式、数据包模式和丢弃模式之间切换时,必须重新启动设备。

SRX300 Series and SRX550M

对于 SRX300 系列和 SRX550M 设备,由于内存限制,默认处理模式设置为丢弃模式。在这种情况下,在将处理模式从丢弃模式默认更改为基于流的处理模式或基于数据包的处理模式(即在这些设备上的模式之间)后,必须重新启动设备。

注意:

对于丢弃模式处理,流量是直接丢弃的,不会转发。它不同于处理流量但不应用安全进程的数据包模式处理。

Configuring an SRX Series Device as a Border Router

为基于流的处理或丢弃模式启用任何类型的 SRX 系列防火墙后,要将设备配置为边界路由器,必须将 MPLS 模式更改为基于数据包的处理。在这种情况下,要将 SRX 系列防火墙配置为 MPLS 的数据包模式,请使用语句 set security forwarding-options family mpls mode packet-based

注意:

如前所述,对于 SRX300 系列和 SRX550M 设备,每当更改处理模式时,都必须重新启动设备。

了解 SRX210 和 SRX320 设备上的信息流处理

本主题介绍 SRX210 和 SRX320 服务网关在为属于通过设备的流的数据包建立会话时执行的过程。SRX210 和 SRX320 设备的流服务是单线程和非分布式的。尽管它们在这方面与其他 SRX 系列防火墙不同,但遵循相同的流模型并实施相同的命令行界面 (CLI)。

为了说明会话建立和数据包“遍历”(包括将服务应用于流数据包的点),以下各节中描述的示例使用了单播会话的简单情况:

了解流处理和会话管理

本主题说明如何设置会话来处理组成流的数据包。在以下主题中,SPU 是指 SRX210 或 SRX320 防火墙的数据平面线程。

一开始,数据平面线程提取数据包并对其执行基本的健全性检查。然后,它处理无状态过滤器和 CoS 分类器的数据包,并应用一些屏幕。

了解第一个数据包处理

要确定数据包是否属于现有流,设备会根据以下六个匹配标准尝试将数据包的信息与现有会话的信息进行匹配:

  • 源地址

  • 目标地址

  • 源端口

  • 目标端口

  • 协议

  • 来自给定区域和虚拟路由器的唯一令牌

SPU 检查其会话表中是否存在数据包的现有会话。如果未找到存在会话,SPU 将为流设置会话。如果找到会话匹配项,则会话已创建,因此 SPU 会对数据包执行快速路径处理。

了解会话创建

在设置会话时,SPU 会为数据包执行以下服务:

  • 屏幕

  • 路由查找

  • 策略查找

  • 服务查找

  • NAT(如果需要)

设置会话后,该会话将用于属于该流的所有数据包。流的数据包根据其会话的参数进行处理。有关数据包处理所需的其余步骤,请继续执行“快速路径处理”中的步骤 1。所有数据包都经过快速路径处理。

了解快速路径处理

如果数据包与会话匹配,Junos OS 将执行以下步骤中所述的快速路径处理。为流中的第一个数据包设置会话后,也会进行快速路径处理。所有数据包都经过快速路径处理。

  1. SPU 将基于流的安全功能应用于数据包。

    • 将应用配置的屏幕。

    • 执行 TCP 检查。

    • 如果需要,将应用 NAT、ALG 和 IPsec 等流服务。

  2. SPU 准备转发数据包并进行传输。

    • 应用路由数据包过滤器。

    • 应用流量整形。

    • 应用流量优先级。

    • 应用流量计划。

    • 数据包已传输。

了解线路和SRX1400设备上SRX3000流量处理

适用于SRX1400、SRX3400和SRX3600服务网关的 Junos OS 集成了瞻博网络世界一流的网络安全和路由功能。用于这些服务网关的 Junos OS 包括广泛的安全服务,包括策略、筛选、网络地址转换、服务等级分类器,以及丰富而广泛的基于流的服务集,这些服务在服务网关中的其他设备上也受支持。

SRX1400、SRX3400和SRX3600设备的分布式并行处理架构包括多个处理器,用于管理会话并运行安全和其他服务处理。此体系结构提供了更大的灵活性,并允许高吞吐量和快速性能。

以下部分以SRX3400和SRX3600设备为例介绍处理体系结构:

本主题包含以下信息:

设置会话所涉及的组件

以下是为数据包设置会话以及在数据包通过SRX3400和SRX3600设备时处理数据包所涉及的主要组件的概述:

  • 服务处理单元 (SPU) — SRX3400和SRX3600设备的主处理器驻留在服务处理卡 (SPC) 上。它们建立和管理流量,并在数据包通过设备时对数据包执行大部分数据包处理。每个 SPU 都有一个用于快速会话查找的哈希表。SPU 对数据包执行所有基于流的处理,包括应用安全服务、分类器和流量整形器。属于同一流的所有数据包都由同一 SPU 处理。

    SPU 维护一个会话表,其中包含它建立的所有会话以及它处理的数据包的条目。当 SPU 从 NPU 接收数据包时,它会检查其会话表以确保数据包属于该数据包。

    对于SRX3400和SRX3600设备,一个 SPU 协同行动,执行其常规会话管理和流处理功能,并充当仲裁会话和分配资源的中心点。当 SPU 以这种方式执行时,它被称为处于组合模式。

  • 中心点 — 中心点用于根据负载平衡标准将会话管理分配给 SPU。它以智能方式分配会话,以避免出现多个 SPU 可能错误地处理同一流量的情况。中心点在将会话分配给 SPU 时遵循负载平衡标准。如果会话存在,中央点会将该流的数据包转发到托管该会话的 SPU。如果 NPU 无法将数据包重定向到正确的 SPU,它也会这样做。

    对于SRX3400和SRX3600设备,一个 SPU 始终在所谓的组合模式下运行,在该模式下,它同时实现中心点的功能以及流和会话管理功能。在组合模式下,SPU 和中心点共享相同的负载平衡线程 (LBT) 和数据包排序线程 (POT) 基础结构。.

  • 路由引擎(RE)— 路由引擎运行控制平面并管理控制平面处理器(CPP)。

了解单播会话的数据路径

适用于SRX3400和SRX3600服务网关的 Junos OS 是一个分布式并行处理、高吞吐量和高性能的系统。本主题介绍为属于通过设备的流的数据包建立会话的过程。

为了说明会话建立和数据包“遍历”(包括将服务应用于流数据包的点),以下示例使用了单播会话的简单案例。此数据包“遍历”汇集了 Junos OS 对数据包执行的基于数据包的处理和基于流的处理。

会话查找和数据包匹配标准

要确定数据包是否属于现有流,设备会根据以下六个匹配标准尝试将数据包的信息与现有会话的信息进行匹配:

  • 源地址

  • 目标地址

  • 源端口

  • 目标端口

  • 协议

  • 来自给定区域和虚拟路由器的唯一令牌

了解会话创建:第一个数据包处理

本主题说明如何设置会话来处理组成流的数据包。为了说明此过程,本主题使用源为“a”和目标为“b”的示例。流数据包从源到目标的方向称为 (a -> b)。从目标到源的方向称为 (b -> a)。

  1. 数据包到达设备上的接口,IOC 对其进行处理。

    IOC 将数据包取消排队,并将其发送到与之通信的 NPU。

  2. NPU 从 IOC 接收数据包并对其进行处理。

    • NPU 对数据包执行基本的健全性检查,并将为接口配置的一些屏幕应用于数据包。

    • 如果找到会话匹配项,则会话已在分配给它的 SPU 上创建,因此 NPU 会将数据包转发到 SPU 进行处理,同时提供会话 ID。

    示例:数据包 (a ->b) 从 IOC1 到达 NPU1。NPU1 执行健全性检查并将 DoS 屏幕应用于数据包。NPU1 检查其会话表中是否存在元组匹配项,但未找到现有会话。NPU1 将数据包转发到 SPU1 上的中央点,以便分配给 SPU。

  3. 中心点创建一个状态为“挂起”的会话。

    中央点维护一个全局会话表,其中包含设备上所有 SPU 中存在的所有会话的条目。它参与会话创建并委派和仲裁会话资源分配。

    此过程包含以下部分:

    1. 中心点检查其会话表和门表,以确定它从 NPU 接收的数据包是否存在会话或门。(NPU 已将数据包转发到中央点,因为它的表指示它没有会话。中心点在为会话分配 SPU 之前验证此信息。

    2. 如果任一表中没有与数据包匹配的条目,则中心点将为会话创建一个挂起翼,并根据其负载平衡算法选择要用于会话的 SPU。

    3. 中心点在消息中将流的第一个数据包转发到选定的 SPU,告诉它在本地设置要用于数据包流的会话。

      示例:中心点为会话创建待处理翼 (a ->b)。它选择要用于会话的 SPU1。它向 SPU1 发送 (a->b) 数据包以及为其创建会话的消息。(碰巧 SPU1 是以组合模式运行的 SPU。因此,其会话管理和流处理服务用于会话。

  4. SPU 设置会话。

    每个 SPU 也有一个会话表,其中包含有关其会话的信息。当 SPU 从中央点收到用于设置会话的消息时,它会检查其会话表,以确保数据包不存在会话。

    1. 如果数据包没有现有会话,SPU 将在本地设置会话。

    2. SPU 向中央点发送消息,告知其安装会话。

    在第一个数据包处理期间,如果启用了 NAT,SPU 将为 NAT 分配 IP 地址资源。在这种情况下,会话的第一个数据包处理将暂停,直到 NAT 分配过程完成。

    SPU 会将它可能收到的流的任何其他数据包添加到队列中,直到安装会话为止。

    示例:SPU1 为 (a ->b) 创建会话,并将消息发送回中心点(在同一 SPU 上实现),告诉它安装挂起的会话。

  5. 中心点安装会话。

    • 它将会话的挂起翼的状态设置为活动。

    • 它将会话的反向机翼安装为活动机翼。

    • 它会向 SPU 发送 ACK(确认)消息,指示会话已安装。

    示例:中央点从 SPU1 接收一条消息,要求安装 (a->b) 的会话。它将 (a->b) 翼的会话状态设置为活动。它为会话安装反向翼 (b->a) 并使其处于活动状态;这允许从流的相反方向传递数据包:目标 (B) 传递到源 (A)。

  6. SPU 在入口和出口 NPU 上设置会话。

    NPU 维护有关数据包转发和传递会话的信息。会话信息在出口和入口 NPU(有时相同)上设置,以便数据包可以直接发送到管理其流量的 SPU,而不是发送到中央点进行重定向。

  7. 进行快速路径处理。

    有关数据包处理所需的其余步骤,请继续执行“了解快速路径处理”中的步骤 1。

了解快速路径处理

所有数据包都经过快速路径处理。但是,如果数据包存在会话,则该数据包将经历快速路径处理并绕过第一个数据包进程。当数据包流已存在会话时,数据包不会通过中心点。

以下是快速路径处理的工作原理: 出口和入口接口上的 NPU 包含会话表,其中包括管理数据包流的 SPU 的标识。由于 NPU 具有此会话信息,因此流的所有流量(包括反向流量)都将直接发送到该 SPU 进行处理。

在 SRX1400、SRX3400 和 SRX3600 设备上, reth 等聚合接口不支持 iflset 功能。

了解SRX4600设备上的流量处理

瞻博网络SRX4600防火墙集成了基于流的安全和路由服务,包括高级安全和威胁缓解以及传统的有状态防火墙安全。Junos OS 基于流的基础架构为第 4 层到第 7 层基于应用程序的服务提供了基础和框架。SRX4600防火墙旨在作为集成防火墙部署在大型企业数据中心边缘和数据中心核心以及园区边缘。它还可以部署为 LTE 安全网关和 Gi/SGi 防火墙。

本主题包含以下内容:

了解SRX4600防火墙及其功能的部署方案

SRX4600防火墙可以部署在许多区域,以保护您的环境及其资源。它通常用于通过以下方式保护数据中心边缘和核心:

  • 将SRX4600防火墙部署为数据中心边缘防火墙

    您可以将SRX4600防火墙部署在数据中心的边缘,为其托管的应用程序和服务提供最佳保护。每个数据中心都有一个入口点,允许客户端访问数据中心的服务,但恶意攻击者可以利用它对这些服务发起攻击。进入数据中心的大量流量是入口互联网流量。仅出于这个原因,在数据中心边缘部署强大的多层安全性就至关重要。SRX4600防火墙可有效且可靠地阻止攻击,并允许您配置系统以阻止特定类型的攻击。SRX4600防火墙支持瞻博网络的软件定义安全网络 (SDSN) 框架,包括瞻博网络高级威胁防御云 (ATP 云),该云围绕自动化和可操作情报构建,可快速共享以识别和缓解威胁。 图 2 显示了部署在数据中心边缘的 SRX4600 防火墙以及 MX480 路由器和 EX 系列交换机。

    图 2:在数据中心边缘 Deploying the SRX4600 Firewall at the Data Center Edge部署SRX4600防火墙
  • 在数据中心核心部署SRX4600防火墙

    您可以在数据中心核心部署SRX4600防火墙,以提供增强的安全性并确保满足合规性要求。数据中心处理变得越来越动态,需要明确的网络定义和合规性要求实施。为确保合规性,您可以使用SRX4600防火墙将整个网络划分为单独的服务器网络,并保护其中的流量。SRX4600防火墙提供高可用性和自动化,其高性能的第 3 层和第 4 层服务可满足数据中心核心的安全要求。 图 3 显示了在数据中心核心作为多层防火墙部署的SRX4600防火墙。

    图 3:在数据中心核心 Deploying the SRX4600 Firewall at the Data Center Core部署SRX4600防火墙

除了高级反恶意软件功能外,SRX4600防火墙还支持以下功能:

  • 有状态防火墙

  • 应用程序安全套件

  • 内容安全(Sophos AV、Web 过滤、反垃圾邮件)

  • 国内流离失所者

  • 高可用性(机箱群集)

    • 双 HA 控制端口 (10G)

    • 对 HA 端口的 MACsec 支持

  • 通过 QSFP28(100G/40G/4x10G 模式)、QSFP+(40G/4x10G 模式)和 SFP+(10G 模式)的以太网接口

  • IPsec VPN,包括 AutoVPN 和 Group VPNv2

  • QoS 和网络服务

  • J-Web

  • 带组播的路由策略

基于流的处理和会话基础知识

要了解 SRX4600 防火墙上的流处理,了解流的基础知识非常重要。

是满足相同匹配标准并具有相同特征的相关数据包流。Junos OS 以相同的方式处理属于同一流的数据包。SRX 系列服务网关的架构及其处理数据包流的方式紧密耦合。因此,在某种程度上,由于架构差异,整个 SRX 系列防火墙的流量实现方式不同。

基于流的数据包处理是有状态的,需要创建 会话。根据路由和其他流量分类信息创建会话,以存储信息并为流分配资源。会话缓存有关流状态的信息,并存储要应用于流数据包的大部分安全措施。由于设备之间的架构差异,不同设备对会话的管理方式也不同。

尽管存在这些差异,但从概念上讲,所有服务网关的流过程都是相同的,并且会话具有相同的目的和功能。

跨 SRX 系列防火墙实施的流和会话底层组件

SRX 系列防火墙使用相同的基础架构组件来支持流量和管理会话,但并非所有设备都能实施所有这些组件。

要了解流,必须了解以下组件及其使用方式:

  • 服务处理单元 (SPU)

    SPU 管理数据包流的会话。它将安全功能和其他服务应用于数据包。它还将基于数据包的无状态防火墙过滤器、分类器和流量整形器应用于数据包。

  • 中心点 (CP)

    中心点是系统用于在 SPU 之间分配资源和分配会话管理的 SPU。处理流的第一个数据包时,中心点确定用于该数据包会话的 SPU。SRX4600防火墙不实施中心点。

  • 网络处理单元 (NPU) 和网络处理会话

    NPU 是在 I/O 卡 (IOC) 上运行并以离散方式处理数据包的处理器。创建流时,流的后续数据包将与 NPU 上的会话匹配。NPU 处理其他处理,例如 TCP 序列检查、生存时间 (TTL) 处理和第 2 层标头转换。NPU 提高了性能,避免了会话 SPU 和哈希 SPU 之间的额外数据包转发。SRX4600防火墙实施 NPU。

SRX4600防火墙流程架构已得到改进,可优化SRX4600设备的高级多核至强™处理器的使用。SRX4600防火墙实现使用专用会话线程来规避诸如流中无序数据包管理之类的问题。它利用网络处理会话来确保将数据包转发到正确的专用线程。数据包根据基于哈希的会话分发模型分发到不同的线程。

了解SRX5000线路设备上的流量处理

SRX5000设备上的 Junos OS 是一个分布式、并行处理、高吞吐量和高性能的系统。SRX5000系列服务网关的分布式并行处理架构包括多个处理器,用于管理会话并运行安全和其他服务处理。此体系结构提供了更大的灵活性,并允许高吞吐量和快速性能。

注意:

在 SRX1400、SRX3400、SRX3600、SRX5400、SRX5600 和 SRX5800 设备中,如果 IKE 对等方位于将在协商期间更改 IKE 数据包的源 IP 地址的 NAT 设备后面,则涉及 NAT 遍历的 IKE 协商将不起作用。例如,如果 NAT 设备配置了 DIP,则会更改源 IP,因为 IKE 协议会将 UDP 端口从 500 切换到 4500。

SRX5000线路设备上的 I/O 卡 (IOC) 和服务处理卡 (SPC) 包含处理单元,用于在数据包遍历设备时对其进行处理。IOC 具有一个或多个网络处理单元 (NPU),SPC 具有一个或多个服务处理单元 (SPU)。

这些处理单元具有不同的职责。数据包的所有基于流的服务都在单个 SPU 上执行。对于在其上运行的其他类型的服务,这些 NPU 的职责没有明确界定。.)

例如:

  • NPU 以离散方式处理数据包。它执行健全性检查,并将为接口配置的某些屏幕(如拒绝服务 (DoS) 屏幕)应用于数据包。

  • SPU 管理数据包流的会话,并对数据包应用安全功能和其他服务。它还将基于数据包的无状态防火墙过滤器、分类器和流量整形器应用于数据包。

  • NPU 使用哈希算法将数据包转发到 SPU。但是,对于某些应用(如 ALG),系统需要查询应用中心点,以确定应在哪个 SPU 上处理数据包。

系统的这些离散协作部分(包括中心点)分别存储标识数据包流是否存在会话的信息,以及数据包匹配的信息,以确定它是否属于现有会话。

此架构允许设备跨多个 SPU 分配所有会话的处理。它还允许 NPU 确定数据包是否存在会话、检查数据包以及将屏幕应用于数据包。数据包的处理方式取决于它是否是流中的第一个数据包。

以下部分以SRX5400、SRX5600和SRX5800设备为例介绍处理体系结构:

了解第一个数据包处理

图 4 说明了流中的第一个数据包进入设备时的路径 - NPU 确定数据包不存在会话,然后 NPU 将数据包发送到分布式中心点以设置分布式中心点会话。然后,分布式中心点向应用程序中心点发送消息,以选择 SPU 为数据包设置会话并处理数据包。然后,分布式中心点将数据包发送到该 SPU。SPU 处理数据包并将其发送到 NPU 以便从设备传输。(此高级描述不涉及功能对数据包的应用。

图 4:第一个数据包处理 First-Packet Processing

在流中的第一个数据包遍历系统并为其建立会话后,将对其进行快速路径处理。

流中的后续数据包也会进行快速路径处理;在这种情况下,在每个数据包进入会话并且 NPU 在其会话表中找到匹配项后,NPU 会将数据包转发给管理其会话的 SPU。

图 5 说明了快速路径处理。这是数据包在为其相关数据包建立流时采用的路径。(它也是流中的第一个数据包在已设置数据包启动的流的会话之后采用的路径。数据包进入设备后,NPU 在其会话表中查找数据包的匹配项,并将数据包转发到管理数据包会话的 SPU。请注意,数据包会绕过与中心点的交互。

了解快速路径处理

以下部分介绍如何创建会话以及数据包在传输设备时经历的过程。

图 5:快速路径处理 Fast-Path Processing

下面概述了为数据包设置会话以及在数据包通过 SRX5400、SRX5600 和 SRX5800 设备时作为流的一部分处理数据包所涉及的主要组件。

  • 网络处理单元 (NPU) — NPU 驻留在 IOC 上。它们处理数据包健全性检查和某些屏幕的应用。NPU 维护会话表,用于确定传入数据包或反向流量是否存在会话。

    如果在 SPU 上为之前通过接口进入设备并由此 NPU 处理的数据包建立了会话,则 NPU 会话表包含会话条目。SPU 在创建会话时会在 NPU 表中安装会话。

    NPU 通过根据其会话表检查数据包信息来确定数据包是否存在会话。如果数据包与现有会话匹配,NPU 会将数据包及其元数据发送到 SPU。如果没有会话,NPU 会将数据包发送到一个使用哈希算法计算的 SPU。

  • 服务处理单元 (SPU) — SRX5400、SRX5600和SRX5800设备的主处理器驻留在 SPC 上。SPU 建立和管理流量,并在数据包通过设备时对数据包执行大部分数据包处理。每个 SPU 都有一个用于快速会话查找的哈希表。SPU 将无状态防火墙过滤器、分类器和流量整形器应用于流量。SPU 对数据包执行所有基于流的处理和大多数基于数据包的处理。每个多核 SPU 独立处理数据包,相同或不同 SPC 上的 SPU 之间的交互最少。属于同一流的所有数据包都由同一 SPU 处理。

    SPU 维护一个会话表,其中包含它建立的所有会话以及它处理的数据包的条目。当 SPU 从 NPU 接收数据包时,它会检查其会话表以确保数据包属于该数据包。当它从分布式中心点接收数据包时,它还会检查其会话表,并发送消息为该数据包建立会话,以验证该数据包不存在现有会话。

  • 中心点 - 中心点架构分为两个模块,即应用程序中心点和分布式中心点。应用程序中心点负责全局资源管理和负载平衡,而分布式中心点负责流量识别(全局会话匹配)。应用程序中心点功能在专用中心点 SPU 上运行,而分布式中心点功能则分发给其余 SPU。现在,中心点会话不再位于专用中心点 SPU 上,而是位于其他流 SPU 上的分布式中心点。

  • 路由引擎 — 路由引擎运行控制平面。

了解单播会话的数据路径

本节介绍为属于通过设备的流的数据包建立会话的过程。

为了说明会话建立和数据包“遍历”(包括将服务应用于流中的数据包的点),此示例使用了单播会话的简单案例。

此数据包“遍历”汇集了 Junos OS 对数据包执行的基于数据包的处理和基于流的处理。

会话查找和数据包匹配标准

要确定数据包是否属于现有流,设备会根据以下六个匹配标准尝试将数据包的信息与现有会话的信息进行匹配:

  • 源地址

  • 目标地址

  • 源端口

  • 目标端口

  • 协议

  • 来自给定区域和虚拟路由器的唯一令牌

了解会话创建:第一个数据包处理

本节介绍如何设置会话来处理组成流的数据包。为了说明该过程,本节使用了一个源“a”和目标“b”的示例。流数据包从源到目标的方向称为 (a ->b)。从目标到源的方向称为 (b->a)。

第 1 步。数据包到达设备上的接口,NPU 对其进行处理。

本节介绍数据包到达 SRX 系列防火墙入口 IOC 时的处理方式。

  1. 数据包到达设备的 IOC,并由 IOC 上的 NPU 处理。

  2. NPU 对数据包执行基本的健全性检查,并将为接口配置的一些屏幕应用于数据包。

  3. NPU 检查其会话表中是否存在数据包的现有会话。(它会根据其会话表中现有会话的数据包元组检查数据包的元组。

    1. 如果未找到现有会话,NPU 会将数据包转发到哈希 SPU。

    2. 如果找到会话匹配项,则会话已在分配给它的 SPU 上创建,因此 NPU 会将数据包转发到 SPU 进行处理,同时提供会话 ID。

Example: 数据包 (a ->b) 到达 NPU1。NPU1 执行健全性检查并将 DoS 屏幕应用于数据包。NPU1 检查其会话表中是否存在元组匹配项,但未找到现有会话。NPU1 将数据包转发到 SPU。

第 2 步。分布式中心点创建具有“挂起”状态的会话。

当 NPU 收到数据包时,NPU 会根据哈希算法将其发送到分布式中心点。然后,分布式中心点查找分布式中心点会话表,并根据需要创建一个条目。

此过程包含以下部分:

  1. 分布式中心点检查其会话表,以确定从 NPU 接收的数据包是否存在会话。(NPU 将数据包转发到分布式中心点,因为它找不到数据包的现有会话)

  2. 如果分布式中心点会话表中没有与数据包匹配的条目,则分布式中心点将为会话创建一个挂起翼。然后,分布式中心点向应用程序中心点发送查询消息,以选择要用于会话的 SPU。

  3. 收到查询消息后,应用程序中心点会检查其门表,以确定数据包是否存在门。如果门匹配或触发了某些其他会话分配算法,则应用程序中心点会选择另一个 SPU 来处理数据包;否则,将选择 SPU(即分布式中心点 SPU)。最后,应用程序中心点向分布式中心点发送查询响应。

  4. 收到查询响应后,分布式中心点会将流中的第一个数据包转发到选定的 SPU,该消息指示 SPU 在本地设置要用于数据包流的会话。例如,分布式中心点为会话创建一个待处理翼 (a ->b)。应用程序中心点选择要用于它的 SPU1。分布式中心点向 SPU1 发送 (a->b) 数据包以及一条消息,以便为分布式中心点创建会话。

Example: 分布式中心点为会话创建一个待处理翼 (a ->b)。它选择要用于它的 SPU1。它向 SPU1 发送 (a->b) 数据包以及为其创建会话的消息。

第 3 步。SPU 设置会话。

每个 SPU 也有一个会话表,其中包含有关其会话的信息。当 SPU 从分布式中央点接收消息以设置会话时,它会检查其会话表以确保数据包不存在会话。

  1. 如果数据包没有现有会话,SPU 将在本地设置会话。

  2. SPU 向分布式中心点发送消息,指示其安装会话。

    注意:

    在第一个数据包处理期间,如果启用了 NAT,SPU 将为 NAT 分配 IP 地址资源。在这种情况下,会话的第一个数据包处理将暂停,直到 NAT 分配过程完成。

SPU 会将它可能收到的流的任何其他数据包添加到队列中,直到安装会话为止。

Example: SPU1 为 (a ->b) 创建会话,并将消息发送回分布式中心点,指示其安装挂起的会话。

第 4 步。分布式中心点安装会话。

分布式中心点从 SPU 接收安装消息。

  1. 分布式中心点将会话的挂起翼的状态设置为活动状态。

  2. 分布式中心点将会话的反向翼安装为活动翼。

    注意:

    对于某些情况,例如 NAT,反向机翼可能安装在与初始化机翼分布式中心点不同的分布式中心点上。

  3. 它会向 SPU 发送确认 (ACK) 消息,指示会话已安装。

Example: 分布式中心点接收来自 SPU1 的消息,要求为 (a->b) 机翼安装会话。它将 (a->b) 翼的会话状态设置为活动。它为会话安装反向翼 (b->a) 并使其处于活动状态;这允许从流的相反方向传递数据包:目标 (B) 传递到源 (A)。

步骤 5.SPU 在入口和出口 NPU 上设置会话。

NPU 维护有关数据包转发和传递会话的信息。会话信息在出口和入口 NPU(有时相同)上设置,以便数据包可以直接发送到管理其流量的 SPU,而不是发送到分布式中心点进行重定向。

第6步。进行快速路径处理。

有关数据包处理所需的其余步骤,请继续执行 了解快速路径处理中的步骤 1。

图 6 说明了流中的第一个数据包到达设备后所经历的过程的第一部分。此时,将设置一个会话来处理数据包以及属于其流的其余数据包。随后,它和流中的其余数据包将进行快速路径处理。

图 6:会话创建:第一个数据包处理 Session Creation: First-Packet Processing

了解快速路径处理

所有数据包都经过快速路径处理。但是,如果数据包存在会话,则该数据包将经历快速路径处理并绕过第一个数据包进程。当数据包流已存在会话时,数据包不会通过中心点。

以下是快速路径处理的工作原理: 出口和入口接口上的 NPU 包含会话表,其中包括管理数据包流的 SPU 的标识。由于 NPU 具有此会话信息,因此流的所有流量(包括反向流量)都将直接发送到该 SPU 进行处理。

为了说明快速路径过程,本节使用了一个源“a”和目标“b”的示例。流数据包从源到目标的方向称为 (a->b)。从目标到源的方向称为 (b->a)。

第 1 步。数据包到达设备,NPU 对其进行处理。

本节介绍数据包到达服务网关的 IOC 时的处理方式。

  1. 数据包到达设备的 IOC,并由卡上的 NPU 处理。

    NPU 执行健全性检查,并将某些屏幕(如拒绝服务 (DoS) 屏幕)应用于数据包。

  2. NPU 在其会话表中标识数据包匹配的现有会话的条目。

  3. NPU 将数据包及其会话表中的元数据(包括会话 ID 和数据包元组信息)转发到 SPU,SPU 负责管理流的会话,对其数据包应用无状态防火墙过滤器和 CoS 功能,并处理数据包的流量处理以及安全和其他功能的应用。

Example: 数据包 (a ->b) 到达 NPU1。NPU1 对数据包执行健全性检查,对其应用 DoS 屏幕,并检查其会话表是否存在元组匹配。它会找到匹配项,并且 SPU1 上的数据包存在会话。NPU1 将数据包转发到 SPU1 进行处理。

第 2 步。会话的 SPU 处理数据包。

数据包的大部分处理发生在分配了其会话的 SPU 上。对数据包进行处理以获取基于数据包的功能,例如无状态防火墙过滤器、流量整形器和分类器(如果适用)。配置的基于流的安全和相关服务(如防火墙功能、NAT、ALG 等)将应用于数据包。(有关如何为会话确定安全服务的信息。

  1. 在处理数据包之前,SPU 会检查其会话表,以验证数据包是否属于其某个会话。

  2. SPU 处理数据包以获取适用的功能和服务。

Example: SPU1 从 NPU1 接收数据包 (a->b)。SPU1 检查其会话表,以验证数据包是否属于其会话之一。然后,它根据适用于其输入接口的输入过滤器和 CoS 功能处理数据包 (a ->b)。SPU 根据其区域和策略,应用为数据包流配置的安全功能和服务。如果配置了任何内容,则会对数据包应用输出过滤器、流量整形器和附加屏幕。

第 3 步。SPU 将数据包转发到 NPU。
  1. SPU 将数据包转发到 NPU。

  2. NPU 将与接口关联的任何适用屏幕应用于数据包。

Example: SPU1 将数据包 (a ->b) 转发到 NPU2,NPU2 应用 DoS 屏幕。

第 4 步。接口从设备传输数据包。

Example: 接口从设备传输数据包 (a->b)。

步骤 5.反向流量数据包到达出口接口,NPU 对其进行处理。

此步骤完全相反地反映了步骤 1。有关详细信息,请参阅本节中的步骤 1。

Example: 数据包 (b->a) 到达 NPU2。NPU2 检查其会话表是否存在元组匹配。它会找到匹配项,并且 SPU1 上的数据包存在会话。NPU2 将数据包转发到 SPU1 进行处理。

第6步。会话的 SPU 处理反向流量数据包。

此步骤与步骤 2 相同,只是它适用于反向流量。有关详细信息,请参阅本节中的步骤 2。

Example: SPU1 从 NPU2 接收数据包 (b->a)。它检查其会话表以验证数据包是否属于 NPU2 标识的会话。然后,它将为 NPU1 接口配置的基于数据包的功能应用于数据包。它根据为其流配置的安全功能和其他服务,基于其区域和策略来处理数据包 (b->a)。

步骤 7.SPU 将反向流量数据包转发到 NPU。

此步骤与步骤 3 相同,只是它适用于反向流量。有关详细信息,请参阅本节中的步骤 3。

Example: SPU1 将数据包 (b->a) 转发到 NPU1。NPU1 处理为接口配置的任何屏幕。

8. 接口从设备传输数据包。

此步骤与步骤 4 相同,只是它适用于反向流量。有关详细信息,请参阅本节中的步骤 4。

示例:接口从设备传输数据包 (b->a)。

图 7 说明了数据包到达设备且数据包所属流存在会话时所经历的过程。

图 7:用于快速路径处理 Packet Walk for Fast-Path Processing的数据包遍历

了解服务处理单元

对于给定物理接口,SPU 从与物理接口关联的网络处理器捆绑包中的所有网络处理器接收入口数据包。SPU 从物理接口提取网络处理器捆绑包信息,并使用相同的 5 元组散列算法将流映射到网络处理器索引。要确定网络处理器,SPU 会查找网络处理器捆绑包中的网络处理器索引。SPU 将出口数据包发送到物理接口的本地物理接口模块 (PIM),以获取传出流量。

注意:

网络处理器和 SPU 使用相同的 5 元组散列算法来获取数据包的散列值。

了解调度程序特征

对于SRX5400、SRX5600和SRX5800设备,IOC 支持以下分层调度程序特征:

  • IFL – 网络处理器捆绑包的配置存储在物理接口数据结构中。例如,SRX5400、SRX5600 和 SRX5800 设备最多有 48 个 PIM。物理接口可以使用 48 位位掩码来指示 PIM,或者除了物理接口的主网络处理器之外,还会分配来自此物理接口的网络处理器流量。

    在SRX5000系列设备上, reth 等聚合接口不支持 iflset 功能。

  • IFD – 与网络处理器捆绑包的物理接口关联的 逻辑接口 将传递到网络处理器捆绑包中具有 PIM 的所有 IOC。

了解网络处理器捆绑

网络处理器捆绑功能可在SRX5000系列设备上使用。此功能允许将数据流量从一个接口分发到多个网络处理器以进行数据包处理。为接收入口流量并将数据包分发到其他几个辅助网络处理器的接口分配主网络处理器。单个网络处理器可以充当主网络处理器,也可以充当多个接口的辅助网络处理器。单个网络处理器只能加入一个网络处理器捆绑包。

网络处理器捆绑限制

网络处理器捆绑功能具有以下限制:

  • 网络处理器捆绑允许每个捆绑包总共 16 个 PIM 和 8 个不同的网络处理器捆绑系统。

  • 您需要重新启动设备才能在捆绑包上应用配置更改。

  • 网络处理器捆绑位于整个架构中的 reth 接口下方。您可以从网络处理器捆绑包中选择一个或两个接口来构成 reth 接口。

  • 如果从网络处理器捆绑包中删除 IOC,则转发到该 IOC 上的 PIM 的数据包将丢失。

  • 启用网络处理器捆绑包后,ICMP、UDP 和 TCP 同步泛洪阈值将不再适用于接口。数据包被分发到多个网络处理器进行处理。这些阈值适用于网络处理器捆绑包中的每个网络处理器。

  • 第 2 层模式不支持网络处理器捆绑。

  • 由于网络处理器上的内存限制,每个 PIM 支持的网络处理器捆绑端口数受到限制。在网络处理器捆绑包中,每个端口都需要有一个全局端口索引。全局端口索引使用以下公式计算:

    Global_port_index = (global_pic * 16) + port_offset

  • 机箱群集实施中的链路聚合组 (LAG) 和冗余以太网接口 LAG 可以与网络处理器捆绑共存。但是,LAG 和冗余以太网接口 LAG 都不能与网络处理器捆绑包重叠或共享物理链路。

了解会话缓存

概述

SRX5400、SRX5600和SRX5800设备上的 SRX5K-MPC (IOC2)、SRX5K-MPC3-100G10G (IOC3) 和 SRX5K-MPC3-40G10G (IOC3) 支持会话缓存和会话缓存的选择性安装。

会话缓存用于缓存网络处理器 (NP) 与 IOC 上的 SPU 之间的会话。对话可以是会话、GTP-U 隧道流量、IPsec VPN 隧道流量等。会话有两个会话缓存条目,一个用于传入流量,另一个用于反向流量。根据流量入口和出口端口的位置,两个条目可能驻留在同一个网络处理器或不同的网络处理器中。IOC 支持 IPv6 会话的会话缓存。

会话缓存条目也称为 会话翼

IOC 上的会话缓存利用 Express Path(以前称为 服务卸载)功能,有助于防止高延迟和 IPsec 性能下降等问题。

会话缓存条目记录:

  • 转换流量应转发到哪个 SPU

  • 在 Express Path 模式下,转换的流量应转发到哪个出口端口

  • 出口流量要执行哪些处理操作,例如 Express Path 模式下的 NAT 转换

从 Junos OS 15.1X49-D10 版和 Junos OS 17.3R1 版开始,IOC 中会话的会话缓存有助于解决某些性能问题。SPU 现在可以指示 IOC 会话缓存将后续流量转发到特定的锚点 SPU。

从 Junos OS 15.1X49-D10 版开始,SRX5K-MPC (IOC2) 和 IOC3 通过改进的流模块和会话缓存支持 VPN 会话关联。从 Junos OS 版本 12.3X48-D30 开始,IOC2 上支持通过会话缓存实现 VPN 会话关联。

其他流量根据 SPU 的 5 元组密钥信息对其进行哈希处理。VPN 流量采用锚定 SPU 的概念,该概念不一定与流 SPU 的功能一致。网络处理器只能根据 5 元组哈希将数据包转发到流 SPU。然后,流 SPU 将数据包转发到锚定的 SPU。这为 VPN 流量创建了一个额外的跃点,从而浪费了交换机结构带宽,并将 VPN 吞吐量降低了大约一半。出现这种性能下降的原因是,在锚定的 SPU 上处理后,流量仍必须返回到流 SPU。

会话缓存表现在在 IOC 上进行了扩展,以支持 NP 会话。Express Path 流量和 NP 流量在 IOC 上共享同一个会话缓存表。Express Path 流量由 IOC 本身在本地或转发到另一个 IOC,因为该流量不需要来自 SPU 的任何服务。NP 流量将转发到会话缓存中指定的 SPU 进行进一步处理。所有会话缓存条目都由 Express Path 会话流量和 NP 流量共享。

要在 IOC 上启用会话缓存,您需要运行 set chassis fpc <fpc-slot> np-cache 命令。

注意:

IOC2 和 IOC3 使用延迟会话删除机制。删除然后立即重新安装的相同会话(具有相同五个元组的会话)不会缓存在 IOC 上。

选择性会话缓存安装

为了避免高延迟、提高 IPSec 性能并更好地利用宝贵的资源,流模块和 IOC 都应用了某些优先级机制。

IOC 维护和监控会话缓存使用阈值级别。IOC 还会将会话缓存使用情况传达给 SPU,以便在达到特定会话缓存使用阈值时,SPU 仅针对选择性高优先级流量会话发送会话缓存安装请求。

IDP、ALG 等应用程序需要按顺序处理数据包。一个 SPU 具有多个流线程来处理属于一个会话的数据包,负载平衡线程 (LBT) 和数据包排序线程 (POT) 数据包顺序可以确保流量按顺序通过防火墙,它不能保证应用程序按顺序处理属于同一会话的数据包。流序列化提供了一种方法,即一次只有一个 SPU 流线程处理属于同一会话的数据包,因此应用程序可以按顺序接收、处理和发送数据包。其他流线程可以同时对其他会话执行流序列化处理。

以下四个优先级用于确定哪种类型的流量可以在 IOC 上安装会话缓存:

  • Priority 1 (P1)— IPSec 和 Express Path 合格流量

  • Priority 2 (P2)— 分片排序

  • Priority 3 (P3)— NAT/SZ(会话序列化)流量

  • Priority 4(P3)— 所有其他类型的流量

IOC 维护和监控会话缓存使用情况的阈值级别,并将当前实时会话缓存使用情况更新到 SPU。SPU 请求 IOC 为某些高优先级流量会话安装会话缓存。表中定义了高优先级流量会话的会话缓存使用情况:

表 1:会话缓存安装栏

流量类型

0% <利用率 < 25%

利用率< 25% < 50%

50% <利用率< 75%

75% <利用率< 100%

IPsec 和 Express Path 流量

是的

是的

是的

是的

分段 对流量进行排序

是的

是的

是的

NAT/SZ 流量

是的

是的

其他流量

是的

为了在 IOC 上保留会话条目,流模块会有选择地在 IOC 上安装会话。为了便于选择会话安装,IOC 会维护相应的阈值,以向流模块提供指示(关于 IOC 上会话缓存表的已满程度)。在元标头中添加两个位以指示当前缓存表利用率状态。进入 SPU 的所有数据包都将携带这两个状态位,以通知流模块IOC 上缓存表的利用率。

使用会话缓存增强 IPsec VPN 会话亲和性

SRX 系列防火墙是完全分布式的系统,IPsec 隧道已分配并锚定到特定 SPU。属于 IPsec 隧道的所有流量都会在其隧道锚定的 SPU 上进行加密和解密。为了实现更好的 IPsec 性能,IOC 改进了流模块,以便在其隧道锚定的 SPU 上为基于 IPsec 隧道的流量创建会话(加密之前和解密之后),并为会话安装会话缓存,以便 IOC 可以将数据包直接重定向到同一 SPU,从而最大限度地减少数据包转发开销。Express Path 流量和 NP 流量在 IOC 上共享同一个会话缓存表。

您需要在 IOC 上启用会话缓存并设置安全策略,以确定会话是否适用于所选灵活 PIC 集中器 (FPC) 上的 Express Path(以前称为 服务卸载)模式。

若要启用 IPsec VPN 关联, set security flow load-distribution session-affinity ipsec 请使用命令。

注意:

若要启用 IPsec VPN 关联,还必须使用命令在 set chassis fpc <fpc-slot> np-cache IOC 上启用会话缓存。

使用 NP 会话缓存的分片数据包排序

会话可能包含正常数据包和分段数据包。通过基于哈希的分发,可以使用 5 元组和 3 元组密钥分别将正常和分段数据包分发到不同的 SPU。在 SRX 系列防火墙上,会话的所有数据包都将转发到正在处理的 SPU。由于转发和处理延迟,处理 SPU 可能无法保证会话的数据包顺序。

IOC 上的会话缓存可确保包含分段数据包的会话数据包的顺序。为会话的正常数据包分配会话缓存条目,并使用 3 元组密钥查找分段数据包。收到会话的第一个分段数据包后,流模块允许 IOC 更新会话缓存条目,以记住 SPU 的分段数据包。稍后,IOC 会将会话的所有后续数据包转发到 SPU,以确保包含分段数据包的会话数据包的顺序。

配置 IOC 到 NPC 的映射

输入/输出卡 (IOC) 到网络处理卡 (NPC) 的映射要求您将一个 IOC 映射到一个 NPC。但是,您可以将多个 IOC 映射到单个 NPC。为了平衡SRX3400和SRX3600服务网关上的 NPC 中的处理能力,机箱进程(守护程序)会运行执行映射的算法。它将 IOC 映射到映射到映射的 IOC 数量最少的 NPC。您还可以使用命令行界面 (CLI) 将特定 IOC 分配给特定 NPC。配置映射时,机箱进程将首先使用您的配置,然后对其余 IOC 应用最少数量的 NPC 算法。

注意:

平台支持取决于安装中的 Junos OS 版本。

要配置 IOC 到 NPC 的映射:

有关选项的说明set chassis ioc-npc-connectivity,请参阅表 2

表 2:IOC 到 NPC 的连接选项

选择

描述

国际 奥委会 slot-number

指定 IOC 插槽编号。对于 SRX3400 设备,范围为 0 到 7,对于 SRX3600 设备,范围为 0 到 12。

全国 人大 slot-number

指定 NPC 插槽编号。对于 SRX3400 设备,范围为 0 到 7,对于 SRX3600 和 SRX 4600 设备,范围为 0 到 12。

没有

机箱进程映射特定 IOC 的连接。

注意:

提交 set chassis ioc-npc-connectivity 命令后,必须重新启动机箱控制。

了解 SRX5K-SPC3 设备上的流处理

引入业务处理卡SRX5K-SPC3是为了提高SRX5000安全服务网关上的安全服务性能。SPC3 卡支持更高的吞吐量,保持其可靠性,因为它保留了机箱群集功能和可扩展性以进行服务处理。

SPC3 卡支持以下安全功能:

安全流程得到增强,可支持 SPC3 卡以及 SPC2 卡上支持的所有现有安全功能。

注意:

以下限制适用于 Junos OS 版本 18.2R1-S1 中的 SPC3 卡:

  • 不支持 SPC3 卡和 SPC2 卡的互操作性。

  • SPC3 卡不支持 IPsec VPN 功能。

从 Junos OS 18.2R1-S1 版开始,为 SRX5000 系列设备引入了新的服务处理卡 (SPC3)。新卡的引入提高了设备的可扩展性和性能,并在保留机箱群集功能的同时保持了其可靠性。SPC3 卡支持更高的吞吐量和可扩展性的服务处理。

在SRX5000系列设备上,SPC3 卡可与 I/O 卡(IOC2、IOC3)、交换机控制板(SCB2、SCB3)、路由引擎和 SPC2 卡互操作。

从 Junos OS 18.4R1 版开始,SRX5000系列设备都支持 SPC3 和 SPC2 卡的组合。

如果要SRX5000系列设备上添加 SPC3 卡,则新的 SPC3 卡必须安装在任何 SPC 中编号最低的插槽中。SPC3 卡安装在原来编号最低的插槽中,在混合模式下提供中心点 (CP) 功能。 例如,如果您的服务网关混合包含 SPC2 和 SPC3 卡,则 SPC3 必须占用机箱中任何 SPC 中编号最低的插槽。此配置可确保混合模式下的中心点 (CP) 功能由 SPC3 卡执行。

在混合模式下运行的SRX5000系列设备上,流处理在 SPC3 和 SPC2 卡之间共享。中心点处理在安装了 SPC3 卡的最低编号 SPC 插槽上进行。

注意:

当 SRX 系列防火墙在机箱群集模式下运行时,SPC3 和 SPC2 卡必须安装在每个机箱上的相同插槽位置。

了解 SPC3 软件架构

SPC3 流程架构与 CP-Lite 架构相同。SPC3 在物理上有两个服务处理单元 (SPU),每个 SPU 有两个 CPU。

安装一个或两个 SPC3 时,流量处理将使用第一个 SPC 的 75%。安装三个或更多 SPC3 时,流量处理将使用第一个 SPC 的 50%。

IOC 对数据包进行哈希处理的方式发生了变化。图显示了采用 SPC3 的 SRX 系列防火墙的数据包流。

图 8:SPC3 Packet flow on SPC3 上的数据包流

在 SPC3 上,数据包从 IOC 直接分发到每个核心。由于 IOC 直接将数据包散列到流动的 RT 线程,因此将删除原始 LBT 线程。数据包现在传送到流线程而不是 SPU。如果安全流安装 NP 会话,则 IOC 将使用会话线程 ID 而不是 SPU ID 将数据包转发到与会话关联的正确线程。

图 9:通过流线程 Packet flow through flowd thread的数据包流

了解负载分布

所有通过收入端口的数据包都将基于哈希算法分发到不同的 SPU,这与基于 CP-Lite 架构的现有 SRX5000 Line 设备哈希相同。散列方法因不同类型的流量而异。下表列出了哈希方法。

表 3:负载分布 - 哈希方法

协议

港口

哈希方法

TCP

L4 SRC 端口和 DST 端口

按 5 元组散列

UDP

正常

L4 SRC 端口和 DST 端口

按 5 元组散列

GTP

L4 SRC 端口和 DST 端口

按 5 元组散列

艾克

L4 SRC 端口和 DST 端口

按 IP 对进行哈希处理

ICMP

  1. ICMP 版本 4 信息消息 ICMP_ECHO/ICM_ECHOREPLY id/seq ICMP_TSTAMP/ICMP_TSTAMPREPLY id/seq ICMP_IREQ/ICMP_IREQREPLY id/seq ICMP_MASKREQ/ICMP_MASKREPLY 0x00010001

  2. ICMP 版本 6 信息消息 ICMP6_ECHO_REPLY/ICMP6_ECHO_REQUEST ID/seq

  3. ICMP 错误消息“通过嵌入式 IP 匹配”

  4. 所有其他0x00010001

ICMP 信息由 5 元组散列;

ICMP 错误由 3 元组散列(无端口信息)

SCTP

L4 SRC 端口和 DST 端口

按 5 元组散列

电除尘器

SPI

按 IP 对进行哈希处理

SPI

按 IP 对进行哈希处理

格雷

如果启用了 PPTP alg,则运动 = 呼叫 ID;dport = 0

默认情况下,端口为0x00010001

按 3 元组散列

PIM

默认情况下,PIM 端口0x00010001

按 3 元组散列

片段

第一个片段,具有正常端口

没有第一个片段,没有端口

按 3 元组散列

其他 IP 数据包

端口0x00010001

按 3 元组散列

无 IP

不適用

按 Mac 地址和以太网类型(VLAN ID)进行哈希处理

了解 NP 会话和服务卸载 (SOF)

网络处理器 (NP) 会话是基于 IOC 的会话,允许并建立 SPU 会话。通过 NP 会话的数据包具有以下优点:

  • 避免在 SPU 上进行会话查找以获得更好的性能。

  • 避免在会话 SPU 和散列 SPU 之间进行额外的数据包转发。

服务卸载是一种特殊类型的 NP 会话,用于为需要基本防火墙服务的会话提供低延迟功能。命中 IOC 上 SOF 会话的数据包会绕过 SPU 上的数据包处理,并由 IOC 直接转发。以量类型支持服务卸载:

  • 基本防火墙(无插件和分片)、IPv4 和 IPv6 TCP、UDP 流量

  • IPv4 NAT

  • 1扇入和1扇出组播

  • ALG,例如 FTP 数据会话

了解 SPC3 上的 J-Flow 支持

J-Flow 是行业标准流量监控机制的瞻博网络版本。它提供了将网络流量统计信息的快照导出到远程服务器以进行网络监视和进一步数据处理的功能。J-Flow 支持 v5、v8 和 v9 格式。SPC3 支持这三个版本。

了解数据路径调试 SPU 支持 (E2E)

数据路径调试在 SRX5000 Line 设备上提供基于过滤器的端到端 (E2E) 数据包调试功能。它跟踪数据包路径和转储数据包内容。

在 SPC3 上,JEXEC 是唯一受支持的 E2E 事件类型,并且支持以下 E2E 操作类型:

  • 计数

  • 转 储

  • 跟踪

  • 跟踪摘要

了解分段处理、ISSU 和 ISHU 支持

在 SPC3 上,分段数据包根据其标头元组值转发到特定 PFE 中的“分段核心”。收到分段数据包后,Flow 会执行碎片整理并将数据包转发到其会话核心。流逻辑不会更改,并且保持不变。

执行 ISSU 时,虚拟 SPU 将同步到相关的虚拟 SPU ID。ISHU 支持基于 CP-Lite 架构。基本上,支持两个 ISHU 操作:

  • 将新的 SPC 插入辅助节点。

  • 更换辅助节点上的 SPC,SPC 数量应与主节点相同。

更改历史记录表

功能支持由您使用的平台和版本决定。使用 功能资源管理器 确定您的平台是否支持某个功能。

释放
描述
18.4R1
从 Junos OS 18.4R1 版开始,SRX5000系列设备都支持 SPC3 和 SPC2 卡的组合。
18.2R1-S1
从 Junos OS 18.2R1-S1 版开始,为 SRX5000 系列设备引入了新的服务处理卡 (SPC3)。新卡的引入提高了设备的可扩展性和性能,并在保留机箱群集功能的同时保持了其可靠性。SPC3 卡支持更高的吞吐量和可扩展性的服务处理。
15.1X49-D70
默认情况下,除设置为丢弃模式的 SRX300 系列和 SRX550M 设备外,所有设备上的 IPv4 流量都启用了 SRX 系列防火墙基于流的转发。从 Junos OS 版本 15.1X49-D70 和 Junos OS 版本 17.3R1 开始,对于 SRX1500 系列、SRX4100、SRX4200、SRX5400、SRX5600、SRX5800 和 vSRX 虚拟防火墙设备,在流模式、数据包模式和 丢弃模式之间切换模式时,无需重新启动设备。对于 SRX300 系列和 SRX550M 设备,在流模式、数据包模式和丢弃模式之间切换时 ,必须重新启动设备。
15.1X49-D10
从 Junos OS 15.1X49-D10 版和 Junos OS 17.3R1 版开始,IOC 中会话的会话缓存有助于解决某些性能问题。
15.1X49-D10
从 Junos OS 15.1X49-D10 版开始,SRX5K-MPC (IOC2) 和 IOC3 通过改进的流模块和会话缓存支持 VPN 会话关联
12.1X48-D30
从 Junos OS 版本 12.3X48-D30 开始,在 IOC2 上,支持通过会话缓存实现 VPN 会话关联