88E1548P MACSec使用介绍

电子说

1.3w人已加入

描述

Marvel PHY 88E1548P在其LinkCryCore中支持MACSec功能;

以下内容为此PHY的加密/解密通路结构,配置及编程使用介绍;

此款PHY结合了LinkCry Core和一些相关的缓存及逻辑。MACsec Core、Buffers、mac和设备特有的所有其他逻辑被称为“LinkCrypt Core”。半双工模式下不支持LinkCrypt。

下面的两个框图说明了设备内的总体结构,图39更详细地介绍了slice的内容,以及每个slice中内置的各种复用器,这些复用器允许启用/禁用特定块、非中断环回或完全绕过LinkCrypt核心。图39中的重定向块也包含一个小的(32B)迟滞FIFO。

MarvellLinkCrypt实现提供了IEEE 802.1AE规范要求的以下功能:

1. 支持一个端口多个安全通道;

2. 根据报文内容分离受控端口流量和非受控端口流量;

3. 能够选择和过滤非受控端口流量;

4. 能够通过SCI以外的方式选择安全通道;

5. 数据包重定向增加了新的MAC、DA、SA和以太类型;

6. 支持专有的系统头,以及插入和删除这些头;

7. FIPS符合性测试;

8. 中断和非中断环回;

9. 流量控制数据包的延迟最小化;

10. 自适应速率控制以补偿包的扩展;

11. 支持诊断,包括MACsec报头保留和其他统计计数器;

12. 非受控路径的以太类型匹配。

计数器

计数器

计数器

计数器

计数器

LinkCry CORE 运行原理

LinkCrypt核心执行IEEE 802.1AE标准中定义的加密、解密、身份验证和封装。它还提供了标准之外的额外查找、选择、数据包处理和诊断功能。

Core分为三个主要部分:出口(加密)管道、入口(解密)管道和集中的统计数据收集块。出口管道和入口管道具有一些共同的属性,并且具有相似的功能单元; 两者之间的主要区别在于执行操作的顺序,以及向入口管道添加身份验证检查。

这两个管道都是为“实时”操作而设计的,因此可以在进行加密或解密操作时进行各种表的配置。在管道运行时执行更改需要遵循正确的顺序,每个管道都描述了正确的顺序。不遵循正确的顺序可能导致损坏或流量下降。

由于802.3规范下PHY可用的寄存器空间有限,LinkCrypt核心使用间接访问机制来访问其内部配置状态。这种存取机制由四个22条款寄存器组成。它们包括两个地址寄存器,每个地址寄存器用于读和写,以及两个数据寄存器,它们形成32位数据访问。

MACSec Packet Format

MACsec报文遵循IEEE 802格式报文的规则,由一个具有DA、SA和Ethertype的报文组成。报文中的ethertype表示该报文是MACsec报文,MACsec报头后面的第二个ethertype表示报文内容的类型或下一个报头。

计数器

对于遵守IEEE长度约束(非jumbo)的数据包,这将导致有效负载大小在1到1502字节之间。对于MACsec来说,零大小的有效载荷是非法的。大于1502字节的数据包有效载荷超出了IEEE规范的范围,但由LinkCrypt核支持。

请注意,将MACsec报头和ICV添加到最大大小的以太网帧中会导致在线上的帧大于1518字节的802.3最大值。这些帧通过802.1as规范是合法的,并且在任何情况下,这些802.1AE数据包应该可以被任何能够处理MACsec帧的设备接受。

MACSec Header Format

每个MACsec帧包含一个8或16字节的报头,其中包含标识该帧为MACsec帧的Ethertype,以及处理和认证/解密数据包所需的信息。

计数器

Tag Control Information (TCI) Field

TCI字段包含描述包和头格式的位。它包含一个版本位(零)、端站位、安全通道报头位、单拷贝广播位、加密位、更改位和2位关联号字段。

计数器

其中,ES和SC位是互斥的; 在数据包上同时置位这两个是非法的。SCB位可以与ES位配合使用,但SC位不能。E位和C位共同表示数据包是否被加密;当这两个位都为1时,数据包被加密;当这两个位都为0时,数据包只经过身份验证。

AN字段指定应该使用哪个安全关联(和相应的密钥)来解密此数据包,并执行身份验证检查。

Short Length (SL) Field

该字段包含MACsec有效载荷小于48字节的数据包的有效载荷长度。对于负载较大的报文,该字段设置为0。该字段的目的是允许MACsec实体找到ICV,该ICV跟随那些数据包上的有效载荷,足够短,可能需要以太网填充。

Packet Number (PN) Field

该字段包含该报文的Packet Number。PN用于加密和防止重放攻击。由于这两个原因,给定的包号可能不会在给定的安全关联中重用。驱动程序/密钥交换协议负责在PN计数器转滚之前为MACsec实体提供新的SA。

Secure Channel Identifier (SCI) Field

安全通道标识符标识给定的安全通道。一个安全通道包含1个或多个安全关联,这些安全关联通过上面的关联号(AN)来区分。如果SC位在TCI字段中设置,则SCI可以显式地存在于数据包中,也可以是隐式的。在隐式SCI的情况下,SCI是由MACsec引擎维护的状态和包中包含的信息构建的。

这个构造的SCI用于入方向的表匹配,也是计算数据包ICV的一个因素。(也就是说,如果本地出端口没有将SCI显示带在包中时,那么对端入端口就需要构造这个SCI,而且用这个构造出来的SCI匹配到的密钥等解密关联与本地端的加密关联必须一致 。本地端出口方向只用SCI作为ICV的计算参数,并不用其来进行表项匹配)

计数器





审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分