跳到主要内容

5. IP 流量处理

如第 4.4.1 节“安全策略数据库(SPD)”所述,在处理所有跨越 IPsec 保护边界的流量时,都必须(MUST)查询 SPD(或关联缓存),包括 IPsec 管理流量。如果在 SPD 中找不到与某个包相匹配的策略(无论是入站还是出站流量),则该包必须(MUST)被丢弃。

SPD 缓存机制

为简化处理,并支持非常快速的 SA 查找(用于安全网关/BITS/BITW),本文档为所有出站流量(SPD-O 加 SPD-S)引入了 SPD 缓存的概念,并为入站且未受 IPsec 保护的流量(SPD-I)引入了缓存。(如前所述,SAD 充当缓存,用于检查到达 SA 的、受 IPsec 保护的入站流量的选择器。)

名义上每个 SPD 有一个缓存。就本规范而言,假定每个缓存条目都精确映射到一个 SA。但需注意,当使用多个 SA 承载不同优先级(例如由不同 DSCP 取值指示)但选择器相同的流量时,会出现例外。

去相关(Decorrelated)SPD

由于 SPD 条目可能重叠,一般不能安全地缓存这些条目。简单缓存可能导致匹配到某个缓存条目,而对 SPD 的有序搜索本应匹配不同的条目。但是,如果先对 SPD 条目进行去相关处理,则生成的条目可以安全地缓存。

注意:本文假定起点是“相关(correlated)”的 SPD,因为用户和管理员习惯以这种方式管理此类访问控制列表或防火墙过滤规则。然后应用去相关算法来构建一份可缓存的 SPD 条目列表。去相关在管理接口中是不可见的。

流量处理方向

  • 5.1 出站 IP 流量处理(受保护侧到不受保护侧)
  • 5.2 入站 IP 流量处理(不受保护侧到受保护侧)

对于入站的 IPsec 流量,在执行 AH 或 ESP 处理后,由 SPI 选中的 SAD 条目充当缓存,用于保存要与到达的 IPsec 包进行匹配的选择器。