MACsec 技术概述
MACsec 是一种基于 IEEE 802.1AE 标准的以太网加密技术,旨在在不影响性能的情况下保护运动中的数据。主要特点包括:
- 支持预共享密钥(PSK)、主会话密钥(802.1X/EAP)和静态 SAK 模式。
- 采用 GCM-AES-128/256 和 GCM-AES-XPN-128/256 密码。
- 支持清除 802.1Q 标签和机密性偏移 0/30/50。
MACsec 的关键价值
MACsec 适用于 LAN 和 WAN,提供高速以太网线率加密吞吐量,支持安全的第 2 层及以上服务,具有强大的加密保护和低开销。随着云和数据中心带宽需求的增加,MACsec 成为保护关键任务应用的重要手段。
不同层的加密对比
不同层的加密提供全面保护,其中:
- 应用层加密:高效率、高延迟和开销。
- L3 加密(IPSec):高效率和低延迟,但仅支持 IP。
- L2 加密(MACsec):基于 IETF 标准,100% 吞吐量操作,效率高。
- L1 加密:高效率,但高延迟和开销。
MACsec 技术演进
MACsec 技术自 2006 年开始发展,经历了多个标准演进:
- 2006 年:802.1AE 标准发布。
- 2011 年:GCM-AES-128 支持。
- 2018 年:IEEE 802.1AE 更新,支持 GCM-AES-256 和 GCM-AES-XPN-128/256。
- 2020 年:IEEE 802.1X 更新。
行业现状
MACsec 已集成到硅芯片中,并随下一代路由器和交换机一起发货。支持 MACsec 的 OCP 白盒交换机正在兴起,Linux 也在 2016 年重新添加了对 MACsec 的支持。
关键用例
超大规模运营商的关键用例包括:
- 保护物理控制之外的任何链接。
- 将客户的本地网络扩展到云端。
- 从 10 Gbps 扩展到 100 Gbps 的电路大小。
- 提供企业级 SLA。
实现挑战
实现 MACsec 承诺面临以下挑战:
- 在高以太网速度下实现线速吞吐量。
- 支持从小型帧到 Jumbo 帧大小而不损失吞吐量。
- 最小化加密对延迟的影响。
- 在物理链路上复用服务。
- 确保在密钥轮换期间的服务连续性。
- 优化控制平面和数据平面的交互。
- 在各种网络条件下保证稳健性。
早期测试问题
早期的 MACsec 测试揭示了以下关键问题:
- MKA 控制平面破碎。
- 钥匙旋转期间的问题。
- 数据平面转发问题。
- MKA 与 XPN 加密失败。
- MKPDU 与明文 VLAN 失败。
- 压力下停止发送 MKPDU。
- 填充 64 字节帧至 96 字节导致数据包丢失。
- 不同帧大小流量下出现故障,导致丢包和 CRC 错误。
- 压力测试中 SCI 不匹配,向不同 CA 端口发送数据。
- 错误的关键服务器 ID 导致切换到新密钥延迟。
- 重新生成密钥期间错误地发送未加密流量。
- 密钥服务器因错误的 LLPN 未能检测到 PN 耗尽导致流量丢失。
测试演进
测试必须不断发展以确保正确验证:
- 市场上没有用于高速以太网的有效测试工具。
- 测试必须发展为满怀信心地部署 MACsec。
- 大多数供应商和最终客户在供应商设备之间测试不足,影响质量。
- 现实的交通混合云和数据中心工作负载加密。
演示与资源
Keysight 与 Juniper 联合展示了 100/400GE MACsec 演示,准备情况良好。可用资源包括:
- SONiC MACsec HLD:链接。
- Keysight IxNetwork MACsec 数据表:链接。
- Keysight MACsec Blackbook:链接。
呼吁行动
呼吁社区:
- 增强有效验证的测试方法。
- 为社区贡献 MACsec 测试用例以提高质量。
- 通过更多白盒交换机和开源 NOS 支持 MACsec。
- 扩展 SONiC MACsec SAI 扩展以提高 MACsec 功能覆盖率。