Guidelines for Use of Extended Unique Identifier(EUI), Organizationally Unique Identifier(OUI), and Company ID(CID)

Abstract

本教程介绍由 IEEE 注册结构(IEEE RA, IEEE Registration Authority)分配的组织标识符(origanizational identifiers)以及基于它们的扩展标识符(extended identifiers)。它涵盖了与受让人以及标准开发人员相关的标识符格式(identifier formats)、assignment(分配)、指导方针(guidelines)和策略(policies)。本教程包括与组织标识符(如组织唯一标识符(Organizational Unique Identifier,OUI)和公司 ID(Company ID),以及扩展标识符(Extended Unique Identifier,EUI)和扩展本地标识符(Extended Local Identifier,ELI))相关的信息。


Status and History

本教程替代以下三个 IEEE RA 教程文档:

  • Guidelines for Use Organizationally Unique Identifier (OUI) and Company ID (CID)
  • Guidelines for 48-Bit Global Identifier (EUI-48)
  • Guidelines for 64-Bit Global Identifier (EUI-64)

Contents


IEEE-Administered organizational identifiers: OUI and CID

IEEE 注册机构(IEEE Registration Authority,IEEE RA)向组织分配全局唯一标识符。两种类型的标识符:24 位组织唯一标识符(24-bit Organizationally Unique Identifier, OUI)和 24 位公司 ID (24-bit Company ID,CID)—— 是相互关联的,它们来自相同的 24 位空间,但落在不同的子空间,由成为 X 位的特定位来区分,如表 1 所示。X 位位置如图 1 所示。每个分配的 OUI 和 CID 相对于所有分配的 OUI 和 CID 是唯一的(IEEE 注册管理机构努力避免重复作业,全局唯一性还依赖于赋值的正确使用和没有可能导致重复的错误)。

表 1 :24 位 CID/OUI 空间划分为两个子空间
X bit identifier
0 OUI
1 CID

OUI 或 CID 可用于识别公司、组织、实体、制造商、供应商等。

IEEE 注册管理局还识别并分配 36 位的 OUI-36 作为组织的全球唯一标识符。被分配的 OUI-36 的前 24 位不重复任何 OUI 或 CID 分配。


OUI

OUI 是一个 24 位(3 个 octet)序列。OUI 的结构如图 1 所示。Octet 0 是起始(most significant,最高有效位)octet。Octet 0 的最低有效位(least significant)和第二最低有效位分别为 M 位和 X 位。在 OUI 中,M 和 X 位的值都是 0。

注意:大约有 18 个分配给早起以太网实施者的组织标识符(有些是在 IEEE std 802.3-1085 批准之前分配的 BlockID)的 X 位等于 1。BlockID,就像取代它的 OUI 一样,是一个 24 位的数字,作为 224 的 48 位 MAC 地址块的基数。BlockID 分配被记录在 MA-L(OUI)注册表中。

图 1:Structure of OUI

OUI 可以表示为 6 个十六进制数字。或者,它可以表示为由连字符分割的 octet;IEEE RA 将其称为十六进制(hex)表示。表 2 显示了 OUI 的一个例子,以 base-16 形式 ACDE48 和 hex 形式 AC-DE-48(这个例子中的八位字符串可以被使用,并且不是一个保留值)。表 2 的最后一行表示 24 位二进制 OUI 序列。

表 2:Example OUI
octet identifier 0 1 2
example value (hex) AC DE 48
example value (binary) 1010(MSB) 1100 1101 1110 0100 1000(LSB)

OUI-36

OUI-36 是一个 36 位(four-and-one-half-octet)序列。Octet 0 是起始的(most significant,最高有效位)octet。Octet 0 的最低有效位(least significant)和第二最低有效位分别为 M 位和 X 位。在 OUI-36 中,M 和 X 位的值都是 0。

当需要 36 位组织标识符或 36 位协议标识符(protocol identifier)时,可以使用 OUI-36 分配。例如,一些协议指定 36 位标识符来标识一个组织或该组织指定的对象。OUI 的受让人可以在 OUI 的末尾加上 12 位来创建 OUI-36。如果 OUI-36 的受让人需要唯一的 24 位组织标识符,建议使用 CID 分配。

OUI-36 可以表示为 9 个十六进制数字。或者,也可以表示为由连字符分割的 octet,使用 IEEE RA 十六进制(hex)表示法。表 3 显示了一个 OUI-36 示例,它具有 base-16 形式 ACDE48234 和 hex 形式 AC-DE-48-23-4。表 3 的最后一行表示 36 位二进制 OUI-36 序列。

表 3:Example OUI-36
octet identifier 0 1 2 3 4
example value (hex) AC DE 48 23 4
example value (binary) 1010(MSB) 1100 1101 1110 0100 1000 0010 0011 0100(LSB)

一个 OUI-36 是由 IEEE RA 通过将 12 位连接到 24 位 IEEE 保留的基底 OUI 来创建的,并将这 12 位连接到 Octet 2 的最低有效位之后,如图 1 所示。基底 OUI 不会被分配给另一个组织,也不会被用作 OUI。OUI-36 的受让人不得将 OUI-36 截断用作 OUI,因为 IEEE RA 将使用基底 OUI 将 OUI-36 值分配给多个组织。

对于基底 OUI 不应做任何假设。例如,不应该假定对单个组织的多个 OUI-36 任务将共一个公共基底 OUI。


CID

CID 是一个 24 位(three-octet)的序列。CID 的结构如下面的图 2 所示。Octet 0 是起始的(most significant,最高有效位)octet。Octet 0 的 4 个最低有效位分别为 M bit、X bit、Y bit、Z bit,从最低有效位开始。在 CID 中,M、X、Y 和 Z 位分别为 0、1、0 和 1。

图 2:Structure of CID

CID 可以表示为 6 个十六进制数字。或者,也可以表示为由连字符分割的 octet,使用 IEEE RA 十六进制(hex)表示法。表 4 显示了一个 base-16 表示的 AADE48 和 hex 表示的 AA-DE-48 的示例。表 4 的最后一行表示 24 位二进制 CID 序列。

表 4:Example CID
octet identifier 0 1 2
example value (hex) AA DE 48
example value (binary) 1010(MSB) 1010 1101 1110 0100 1000(LSB)

Extended Identifiers

除了最为全局唯一的组织标识符,OUI、OUI-36 或 CID 还可以通过连接额外的区分位(differentiating bits),作为扩展标识符(extended identifiers)的基础,包括协议标识符(protocol identifiers)和上下文相关的标识符(context dependent identifiers)。这些扩展标识符可能是全局唯一的(例如,EUI-48 和 EUI-64),或者仅在使用它们的上下文中唯一。详情见下文。


Extended Unique Identifiers

一个扩展唯一标识符(Extended Unique Identifier,EUI)是 48 位扩展唯一标识符(48-bit Extended Unique Identifier,EUI-48)或 64 位位扩展唯一标识符(64-bit Extended Unique Identifier,EUI-64)。除了一些例外情况,特别是在协议标识符方面,每个 EUI 都是全局唯一的,并绑定到需要唯一标识的硬件设备实例或其他对象。EUI-48 和 EUI-64 标识符最常用来作为全局唯一的网络地址(有时成为 MAC 地址),这在各种标准中都有规定。例如,根据 IEEE Std 802,EUI-48 通常被用作硬件接口的地址,历史上使用的名称是 MAC-48。另一个例子是,根据 IEEE 标准 1588,EUI-64 可以作为时钟的标识符。IEEE Std 802 还指定 EUI-64 使用 64 位全球唯一的网络地址。关于 EUI-48 和 EUI-64 的进一步细节如下。

当 EUI 被用作 MAC 地址(例如,IEEE 802 网络地址),初始 octet(Octet 0)中最低有效的两位被用于特殊用途。Octet 0 的最低有效位(I/G 位,I/G 表示 Individual/Group)表示单个地址(I/G = 0,Individual address)或组地址(I/G = 1,Group address),Octet 0 的第二最低有效位(U/L 位,U/L 表示 Universal/Local)表示通用地址(U/L = 0,Universal address)或本地地址(U/L = 1,Local address)的管理。普遍管理地址(universally administered address)是全局唯一的地址(globally unique address)。

在扩展 OUI 创建的 EUI 中,OUI 是起始的(最高有效)三个字节。在扩展 OUI-36 创建的 EUI 中,OUI-36 是起始的(最高有效)四个半字节。

由于由 IEEE RA 分配的 OUI 和 OUI-36 的 X 位等于 0,因此从分配的 OUI 或 OUI-36 创建的扩展标识符 EUI 具有 U/L = 0,当用作 MAC 地址时,因此是一个普遍管理地址。

由于所有由 IEEE RA 分配的 OUI 和 OUI-36 的 M 位 都等于 0,因此从被分配的 OUI 或 OUI-36 创建的扩展标识符 EUI 的 I/G = 0,当用做 MAC 地址时,因此是一个单独的地址。

OUI 或 OUI-36 的受让人被授权分配组 MAC 地址,通过将 OUI 或 OUI-36 的修改版本扩展其 M 位为 1 ,使 I/G = 1。这些地址不是 EUI,并且不能全局识别硬件实例,即使 U/L = 0


Extended Local Identifier(ELI)

一个扩展本地标识符(ELI)是有一个 CID 拼接而成的,CID 由起始的三个(最低有效)字节组成。ELI-48 是 48 为 ELI,ELI-64 是 64 位 ELI。

由于由 IEEE RA 进行的 CID 分配的 X 位等于 1,因此从已分配的 CID 创建的 ELI 作为扩展标识符具有 U/L = 1,因此当用作 MAC 地址时,它是一个本地地址。本地地址不是全局唯一的,网络管理员负责确保分配的任何本地地址在使用范围内是唯一的。(本地地址的唯一性通常不需要扩展到路由器之外。)IEEE Std 802(从修订 IEEE Std 802c-2017 开始)指定了结构化本地地址计划(Structured Local Address Plan,SLAP),它基于 CID 的 Y 位和 Z 位的指定值,描述了本地 MAC 地址空间的一个象限中 ELIs 的使用。在本地 MAC 地址空间的其他象限(quadrants),SLAP 用于描述不基于 CID 的标准分配标识符(Standard Assigned Identifiers,SAIs)和管理分配标识符(Administratively Assigned Identifiers, AAIs)的使用。

由于所有由 IEEE RA 进行的 CID 分配的 M 位都等于 0,因此从已分配的 CID 创建的 ELI 作为扩展标识符的 I/G = 0,因此当用作 MAC 地址时,它是一个单独的地址。CID 的受让人可以通过将已分配 CID 的修改版本扩展为 M 为 1(使 I/G = 1)来分配本地组 MAC 地址。得到的扩展标识符是 ELI。


IEEE RA assignment of identifiers

一个被分配的 EUI 块可以被看做是通过扩展标识符连接从基数(例如,OUI)扩展而来的数组序列。它也可以被描述为 EUI-48 或 EUI-64 的连续范围。

EUI 块由 IEEE RA 分配为三种不同的大小。MA-L 分配块(assignment block)提供 224 的 EUI-48 标识符和 240 的 EUI-64 标识符。MA-M 分配块提供 220 的 EUI-48 标识符和 236 的 EUI-64 标识符。MA-S 分配块提供 212 的 EUI-48 标识符和 228 的 EUI-64 标识符。

MA-L 的分配包括 OUI 的分配,OUI 是已分配的 EUI-48 和 EUI-64 扩展标识符块的基础。MA-L 相当于 2014 年 1 月 1 日之前进行的 OUI 赋值,也包括 OUI 以及 EUI-48 和 EUI-64 标识符相关 块的分配。

MA-S 分配包括 OUI-36 的分配,OUI-36 是已分配的 EUI-48 和 EUI-64 扩展标识符块的基础。MA-S 不包括 24 位 OUI 的分配。分配的 MA-S 的 24 位初始位是一个分配给 IEEE RA 的 OUI。

说明 —— MA-S 分配于 2014 年 1 月 1日可用。MA-S 分配取代了 2014 年 1 月 1 日之前 IEEE RA 提供的个人地址块(Individual Address Block,IAB)和 OUI-36 分配。IAB 只提供了一个包含 4096 个 EUI-48 标识符的块,并没有提供任何其他标识符,例如 EUI-64 标识符;请参阅本教程后面的 IAB Based Identifiers 小节。

MA-M 不包括 OUI 的分配。MA-M 的受让人可以在 MA-M 分配块中创建一个 OUI-36 作为地址的前 36 位。如果 MA-M 的受让人需要唯一的 24 位组织标识符,建议使用 CID 分配。被分配的 MA-M 块的前 24 位是一个分配给 IEEE 的 OUI,不会被重新分配。

注意 —— MA-M 分配于 2014 年 1 月 1 日生效,以响应客户对中间标识块(intermediate block of identifiers)的请求。

CID 分配是一个唯一的 24 位标识符,可用于标识公司、组织等。CID 分配不包括任何 EUI-48 或 EUI-64 分配,且一个 CID 不得用于创建 EUI-48 或 EUI-64。对于寻找唯一 24 位标识符的实体,CID 可以作为 MA-M 或 MA-S 分配的补充,因为这些分配不包括 OUI。

表 5 总结了来自 IEEE RA 的 OUI、OUI-36、CID、EUI-48 和 EUI-64 分配。

IEEE RA 公开列表:
<https://regauth.standards.ieee.org/standards-ra-web/pub/view.html#registries> 
为 MA-L、MA-M 和 MA-S 提供了单独的数据库。如果前 24 位匹配 IEEE RA 已分配的 OUI,那
么搜索前 28 位或 36 位可能会发现分配了 MA-M 或 MA-S。如果在 MA-S 中没有找到 
OUI-36,那么对前 24 或 28 位的搜索可能会发现一个 MA-L 或 MA-M 分配,该分配块中的一
个成员可能已经创建了 OUI-36 。
表 5:EUI, OUI, and CID assignment summary
IEEE RA Assignment Number of IEEE assigned bits Block size of globally unqiue EUI-48 identifiers Block size of globally unqiue EUI-64 identifiers company or organization identifier included
MA-L(MAC Adresses - Large) 24 224 (16,777,216) 240 (1,099,511,627,776) OUI(24-bit)
MA-M(MAC Adresses - Medium) 28 220 (1,048,576) 236 (68,719,476,736) none
MA-S(MAC Adresses - Small) 36 212 (4096) 228 (268,435,456) OUI-36(36-bit)
CID(Company ID) 24 0 (zero) 0 (zero) CID(24-bit)

IEEE 标识符的受让人负责在其指定的块内管理扩展标识符。IEEE RA 不能控制扩展标识符的分配,并且对于使用 IEEE 分配的标识符(例如,重复的上下文相关标识符、EUI-48 或 EUI-64 值)的组织分配重复的扩展标识符不承担任何责任。

表 5 中 IEEE 管理的标识符的分配通常是公开的,可从 IEEE RA 获得,因此感兴趣的用户可以标识 EUI-48、EUI-64、OUI、OUI-36 或 CID 的注册所有者。然而,对于选择使用私有上市选项的受让人,IEEE 分配是公开的,但不公开受让人的身份。


EUI Structure and Representation

表 6 说明了 EUI-48 的结构及其与 IEEE RA 的分配的关系。

表 6

一个 EUI-48 是一个由六个 octets 组成的字符串,在表 6 中从 Octet 0(起始的和最高有效的)标记到 Octet 5(最后的和最低有效的)。表 6 的最后两行包括一个 EUI-48 的例子,以 base-16 表示 ACDE48234567 和 hex 表示 AC-DE-48-23-45-67。注意:EUI-48 可以用 IEEE RA 十六进制(hex)表示(octet 用连字符隔开),也可以用纯 16 进制数字表示。

表 6 举例说明了 EUI-48 是如何产生的:OUI AC-DE-48 的 MA-L 分配,扩展标识符为 23-45-67 的实体分配;以 AC-DE-48-2 为基址的 MA-M 分配,以及扩展标识符为 3-45-67 的实体分配;以一个带有 OUI-36 AC-DE-48-23-4 的 MA-S 分配,以及一个扩展标识符为 5-67 的实体分配。

EUI-64 以类似的方式表示,它是一个由 8 个 octet 组成的字符串,从 Octet 0(起始位和最高有效位)到 Octet 7(最后位和最低有效位)。表 7 显示了这一点,使用 base-16 表示 ACDE48234567019F 和 hex 表示 AC-DE-48-23-45-67-01-9F 为例的 EUI-64。

表 7: Structure if EUI-64

EUI Bit Ordering

虽然 EUI octet 的顺序和 octet 中的位是特定的和固定的,但是它们的传输顺序可以根据协议变化。通常,基于 octet 的传输以 octet 标识符升序的方式传输,从 Octet 0 开始。一些分组代码对多个 octet 进行编码。数据的位串行编码可能在 octet 内的位传输顺序上有所不同。同样,地址在内存中的存储顺序也会因协议的不同而不同。有关比特传输顺序的进一步信息可在相关标准中找到,如 IEEE Std 802。

考虑到位顺序和字节定位可能存在混淆,应用程序和协议必须明确地指定标识符值(表示为十六进制数字)到使用的寄存器或字节和位序列的映射。为了确保清晰,每个映射都应该是自包含的(self-contained)。如果认为有必要对其他文件进行交叉引用,则应将具体的文件和页码进行交叉引用,使不熟悉的读者能够容易地找到来源。

为了避免现有标准的变化,工作组可能会提供关于在其标准中使用标识符的教程,并将其发布在 IEEE RA 网站上。

如果某个标准,或其在其他标准中的交叉引用部分,不符合这些文档策略,IEEE 注册管理委员会(IEEE Registration Authority Committee,RAC)可以建议不批准该标准。


Unassigned and NULL EUI values

许多应用程序发现定义一个独特的空标识符(null identifier)很有用,通常表示没有有效的 EUI-48 或 EUI-64 值。例如,空值可能是集成电路寄存器的上电状态,直到硬件或固件用有效的 EUI 初始化寄存器。类似的,当另一个设备或对象的 EUI 被放置在一个协议字段时,可能会使用一个空值,直到学习将有效的 EUI 值放置在协议字段的中为止 。如果方便地使用空值,管理信息库参数也可能面临类似的初始值问题。

全零的 EUI-48 值(00-00-00-00-00-00) 和 EUI-64 (00-00-00-00-00-00-00-00),虽然被分配给一个组织,但尚未也不会被受让人用作 EUI。(它们可以被认为是分配给 IEEE 注册管理局的)全 1 的 48 位值(FF-FF-FF-FF-FF-FF)和 64 位值(FF-FF-FF-FF-FF-FF-FF-FF)是指示网络上所有站点的 IEEE 多播(group)MAC 地址。这些全 1 值不是有效的 EUI。

推荐的空值分别为 FF-FF-FF-FF-FF-FFFF-FF-FF-FF-FF-FF-FF-FF,作为未知的 EUI-48 和 EUI-64 的默认值。基于零值的 OUI 的值,例如 00-00-00-00-00-0000-00-00-00-00-00-00-00,不能用作标识符。


Appropriate EUI Use

EUI 用于需要固定大小的全局唯一标识符的应用程序。

除某些情况外,如协议标识符,受让人将 EUI-48 或 EUI-64 与单个可识别对象(如网络接口)相关联。根据设备支持的功能,它可以使用多个标识符。例如,智能手机可以使用 EUI-48 作为 802.11/ Wi-Fi ® MAC 地址和蓝牙®接口的第二标识符。以太网连接的设备可以有一个 EUI-48 MAC 地址和一个 EUI-64 唯一标识 802.1 AS clock(即,"clockIdentity")。

使用 EUI-64 而不是 EUI-48,以避免在大容量(特别是非联网)应用程序中过度消耗 OUI 值。考虑到使用所有 EUI-64 标识符的可能性极小,IEEE RA 对它们在标准内的使用施加了最小的限制。除非有向后兼容的限制,否则使用 EUI-64 比使用 EUI-48 更可取。但是,为了向后兼容,这种转换对于一些与 IEEE 802 相关的应用程序(例如,需要桥接到 48 位 IEEE 802 网络的新网络)可能是困难的。因此,IEEE 注册委员会将考虑在 802 相关系统中选择性地使用 48 位标识符。详细见下文 Maintaining Longevity of EUI-48 and EUI-64

EUI-48 和 EUI-64 是由 IEEE 注册的。组织被允许为商业目的有限地使用这些术语。如果这种使用是在标准中指定的特性或功能的标识,或者是声称符合 IEEE 标准,那么没有 IEEE 明确批准的使用是可以接受的,但是术语的其他使用必须由 IEEE RAC 审查和批准。

当 EUI 在 IEEE 标准或标准草案中使用时,草案的正确性和清晰度应由 IEEE RAC 进行审查。当 EUI 在非 IEEE 标准中被引用时,标准开发人员应该联系 IEEE RAC 以检查正确的用法。


Maintaining Longevity of EUI-48 and EUI-64

可用的 EUI-48 标识符的总数虽然很大,但并不是无穷无尽的。IEEE RAC 有责任与 IEEE 标准和非 IEEE 标准一起促进 EUI-48 能力的持续可用性,以使使用这些标准的全球社区受益。

最初,EUI-48 表示仅用于识别实际物理设备的项目(identify item of real physical equipment)、设备的部分(parts of such equipment)或适用于许多实例的物理设备的功能(functions that apply to many instance of physical equipment)。

48 位标识符的使用后来得到了扩展,以便它们可以用作协议标识符。通过这种使用,它们确定了物理设备实例之间操作的协议设计和设计修订。与物理设备的项目数量相比,这种协议所需的标识符要少得多。

除此类协议标识符外,EUI-48 标识符仍用于标识实际物理设备的项目或此类设备的部分,如可分离子系统或单独寻址的网络端口。每个硬件子系统的预期使用不应超过一个 EUI-48 标识符,或者此类设备的每个物理实例最多不超过非常低数量的 EUI-48 标识符(例如,用于链路聚合的 IEEE Std 802.1 AX 中的端口组)。分配单个 EUI-48 标识符,以识别或允许寻址与物理设备的真实项目相关联的固定和永久功能,这在该设备的整个寿命期间或无限期使用期间发生。

任何标准规范,或 EUI 区块的受让人实现或受让人管理,要求对可用的数字空间进行细分,将区块分配给产品类型,或将区块分配给物理设备,而每个 EUI-48 标识符没有可识别的物理实例,或对于编码功能中的重要位或位模式的标识符,有可能迅速耗尽地址空间。为了减耗尽的可能性,强烈鼓励新应用程序和对当前应用程序的延伸,以利用 EUI-64 而不是 EUI-48 来识别硬件实例。IEEE 将审查标准中规定的要求地址格式与现有 EUI-48 设备相匹配的新应用程序,此类例外情况将根据具体情况进行审批。不支持 EUI-48 的非标准使用。

IEEE RAC 征求任何关于威胁到唯一的 EUI-48/EUI-64 地址空间的信息,无论是 IEEE 提议的标准还是另一个标准或规范。信息应该发送到 IEEE RAC(ieee-registration-authority@ieee.org)。此外,为了履行保持这些标识符功能寿命的职责,IEEE RAC 将通过联络或直接协调采取行动,以防止潜在的误用 EUI-48。

当 IEEE 802 在 1980 年开始工作时,EUI-48 标识符的目标寿命是 100 年。在这个世纪中,超过三分之一的时间里,EUI-48 标识符的使用继续增长,没有迹象表明 EUI-48 地址将在 2080 年过时。因此,IEEE RAC 认为这些限制的一致实施是确保 EUI-48 标识符寿命和基本的现实基础。

如果一个实体(无论是否是 IEEE RA 客户),有意或无意地滥用了 IEEE RA 分配,使得 EUI-48/EUI-64 地址或该实体从其 RA 分配中创建的任何其他标识符被分配到其分配之外,则该实体违反了 IEEE RAC 政策。在这种情况下,IEEE RAC 可以建议 IEEE RA 向该实体收取额外费用,以弥补任何潜在的重复和/或组织未来的滥用。


Non-Overlapping Assignments

无论应用程序如何,都鼓励受让人只分配一种形式的 EUI-48 或 EUI-64 标识符。换句话说,鼓励组织不要将相同的标识符分配给多个组织的不同最终应用使用。该建议的目的是减少由管理每个组织中多个与上下文相关地址空间的复杂性而可能引入的错误。

例如,指定 I/O 驱动程序软件接口、语言代码和硬件型号的 EUI-48 值不应该重叠。同样的,指定 I/O 驱动程序软件接口、语言代码、硬件型号和硬件实例的 EUI-64 值永远不会重叠。虽然可能消耗更多的标识符值,但是通过消除主观的应用程序类判断,这种不重叠策略有望减少标识符值的无意重复。


IEEE RA Policies to Reduce the Volume of Unused EUI-48s

MA-L 分配包括超过 1600 万个(224) EUI-48 值。为了减少未使用 EUI-48 的发生(例如,当受让人需要远远少于 1600 万 EUI-48 时),IEEE RAC 在第一次引入 CID 时制定了以下分配 MA-L、MA-M、MA-S 和 CID 标识符的策略:

  1. 首次客户(即受让人)不能购买 MA-L。第一次需要 24 位公司/组织标识符的客户可以购买 CID,而第一次需要 EUI-48 或 EUI-64(或废弃标识符)的客户可以购买 MA-M 或 MA-S,具体取决于客户需要多少特定标识符。这个策略的例外必须由 IEEE RAC 审查。
  2. 回头客(即以前购买过 MA-L、MA-M、MA-S 和/或 CID 的客户)可以购买任意标识符块大小,受以下限制:
    1. 如果当前 EUI-48 的 MA-L 或 MA-M 分配的 95% 被使用,IEEE 注册机构将接受额外的分配申请。这同样适用于 2014 年 1 月之前发布的 OUI 转让。当现有 EUI-48 大部分已用完时,可能会发出额外的转让。客户必须同意,在之前的 EUI-48 配额用完之前,不得使用新的配额生产产品。这适用于所有注册表分配。
    2. 一个客户有一个 MA-L (2014 年 1 月 1 日或之前,是的)或 CID 分配,不应该需要购买新的公司标识,但有资格购买新 CID 用作其他用途,例如,当电流 CID 作业提供了 ELI 地址空间不足。

由 IEEE 管理的组织标识符标识管理级联的扩展标识符以创建例如 EUI 的组织。不应孤立地使用 IEEE 管理的标识符来表示公司或组织的一个部门或类似部分。当受让人认为有必要识别这样的内部组时,可以使用 EUI-48 或 EUI-64 标识符。(使用一些扩展位标识部门或产品的受让人,管理实践并不能免除受让人使用上述大多数 EUI-48 值的要求。)类似的,标准开发组织中的组也可以由其发起组织管理的不同 EUI-48 (或 EUI-64)标识符标识。


Mapping an EUI-48 to an EUI-64

不支持将 EUI-48 映射到 EUI-64。这里描述映射是出于历史原因。

将一个分配了 MA-S/OUI-36 或 MA-M 的 EUI-48 映射到一个 EUI-64 可能会创建一个分配了不同 MA-S/OUI-36 或 MA-M 的 EUI-64 的副本。IEEE RA 已经采取了适当的措施来减少基于此映射的副本创建,但是,为了保护 EUI-64 标识符的完整性,不建议使用此映射。

一些标准已经描述了如何将一个 EUI-48 的值映射到 EUI-64,具体如下:设 EUI-48 的六个 octet 被标记位 eui48[0] 到 eui48[5]。设映射的 EUI-64 的八个 octet 被标记为 eui64[0] 到 eui64[7]。对应关系描述如下:

  • eui64[0] = eui48[0]
  • eui64[1] = eui48[1]
  • eui64[2] = eui48[2]
  • eui64[3] = FFhex
  • eui64[4] = FEhex or eui64[4] = FFhex
  • eui64[5] = eui48[3]
  • eui64[6] = eui48[4]
  • eui64[7] = eui48[5]

换句话说,eui48[2] 和 eui48[3] 之间插入 FF-FEhex 值或 FF-FFhex 值生成 EUI-64 值。


Other worldwide identifiers based on EUI

WWN(World Wide Names)有部分格式来源于 EUI-48 或 EUI-64。WWN 在 SCSI 和相关协议中用作磁盘和端点地址。请参阅最新的 INCITS SATA 和 SAS 标准以了解更多细节。

来自 EUI-64 的 IPv6 地址定义在 IETF RFC 4291,附录a。请参见 IETF RFC 2460、5952 和 6052。

UUID 寻址由 EUI-64 地址和 OUI 派生,在 ITU-T X.667 的 IETF RFC 4122 中定义。


Context dependent identifiers

就像 OUI 可以扩展为创建 EUI-48 和 EUI-64 标识符,或者 CID 可以扩展为创建本地管理的 MAC 地址一样,其他扩展标识符也可以从 OUI 或 CID 分配中创建。这样的扩展标识符,称为上下文依赖标识符(Context Dependent Identifier,CDI),不一定是全局唯一的,但只在指定上下文中是唯一的。

上下文依赖标识符(Context Dependent Identifier,CDI)是基于 OUI、CID 或 OUI-36 的扩展标识符,通常在带有附加规范的标准中指定,以允许对标识符的明确解释和对其他数据的解析。一些例子包括(但不限于):

  • 在一个标准中定义上下文依赖标识符的所有字段。例如,使用 OUI 或 CID 来标识硬件制造商,以及表示硬件型号和版本的附加字段。(OUI 或 CID 所有者通常在标准指定的范围内为附加字段分配值。)如果正确定义,这样的标识符在标准上下文中是唯一的。
  • 在标准中定义特定于供应商的管理信息扩展,但允许唯一标识符的受让人指定附加字段。这个扩展标识符在定义的管理信息库上下文中是唯一的。
  • 特定于供应商的协议可以通过 OUI/CID 进行识别,标准定义的固定字段允许识别来自同一供应商的多个协议;或使用 OUI/CID 指示用来解析 OUI/CID 之后的数据的规则集。
  • CDI-32 和 CDI-40 的遗留定义(参见 Deprecated and Obsolete Identifiers )。

Restrictions on the Use of Context Dependent Identifiers

除非与 22 位公司标识的遗留定义兼容,否则在创建上下文依赖标识符时,OUI 被用作 24 位字段。在这种情况下,CID 应作为 OUI 的有效替代品。上下文相关标识符的规范应该允许使用 OUI 或 CID 作为上下文相关标识符的基础。

对于那些指定上下文依赖标识符的人,需要注意以下事项:

  • 如果准确地定义要求扩展标识符的分配必须在上下文是唯一的,那么就存在处于不同目的无意中重新使用现有标识符分配的危险,导致分配值使用的模糊性;
  • 如果选择的扩展标识符的大小相对于在单个 OUI/CID 下需要分配的标识符值的实际数量较小,那么结果可能是 OUI/CID 值的消耗率不可接受。并且 OUI 的所有者可能难以满足注册机构的要求,也就是说在使用进一步的分配之前,他们现有的 OUI 所代表的块分配的 95% 需要被消耗掉;

因此,上下文相关的标识符的使用是可以接受的,但必须满足以下所有要求:

  • 相关标准中明确定义了上下文相关标识符使用的上下文,以及要求标识符值在上下文中唯一。
  • 所选扩展标识符的大小足以容纳在定义的上下文中单个 OUI 下分配不同值的所有可能的需求。
  • IEEE RAC 已经批准了标识符和将使用它的上下文的定义。
  • 描述提议的上下文相关标识符机器提议应用的标准草案或工作组材料应提交给 IEEE RAC。

Deprecated and Obsolete Identifiers

对于“已弃用(deprecated)”这个词,IEEE 并没有一个标准的定义。当被 IEEE RA 或 IEEE RAC 使用时,术语 deprecated 意味着它所描述的项目(例如,标识符(identifier)、映射(mapping)、需求(requirement)、推荐(recommendation)、过程(process) 等)不应用与任何新的应用程序。如果合理,遗留使用可以保存在 revision 或 amendment 中(例如,修订不会将不一致性引入标准中。)当术语发生变化时,应该尽快更新使用当前术语并删除已弃用的术语。此外,除符合相关标准外,新设备和新设计不得使用废弃项目,除非符合相关标准。不需要修改现有设备和部署的设备来不使用不赞成使用的项目。

过去使用的一些标识符和术语,包括一些由 IEEE 管理的标识符创建的标识符(即,由分配了 IEEE 管理标识符的组织创建的标识符),现在已被弃用或废弃。这些标识符和术语包括独立地址块(IAB)、基于 OUI 的 22 位标识符、MAC-48 标识符和 EUI-60。这些标识符将在下面的小节中进行简要描述。

IAB Based Identifiers

不再分配 36 位的 IAB 标识符。IAB 分配的是 4096 个 MAC-48 地址块(现在称为 EUI-48)。基本的 24 位 OUI 被分配给 IEEE RA,IEEE RA 分配的附加 12 位扩展产生地址块的前 36 位。然后,4096 个 EUI-48 标识符随后由受让人通过另外一个 12 位与 36 位 IAB 基数连接而创建。

IAB 只能用于指定 EUI-48 标识符;使用用于创建 IAB 的 24 位 OUI 值创建的任何其他标识符仍然是 IEEE RA 的财产。此外,IAB 不能用于使用分配给受让人的 36 位来创建任何其他标识符(例如,受让人不能通过将 28 位附加到它已被分配的 IAB 标识符来创建 EUI-64)。

虽然 IEEE RA 不保证 36 位 IAB 标识符总是从相同的 OUI 创建的,但所有 IAB 分配实际上都是从两个特定的 OUI 创建的:00-50-C2hex 和 40-D8-55hex。使用前者知道基于它的所有 IAB 都被分配,然后使用后者。

IAB 和 MA-S 的 EUI-48 用法是相同的,因此被分配了 IAB 的组织可以继续按照最初的意图使用它。向 IEEE RA 提出的任何新的 IAB 请求都将通过分配 MA-S 来完成。

展望未来,现有的 IAB 公开列表将作为历史注册表进行维护。因为没有新的 IAB 会被分配,因此 IAB 注册表不会增加。

22-Bit OUI-Based Identifiers

虽然 OUI 始终被指定为 24 位值,但过去指定了各种可选的上下文相关的标识符。一些标准规定只能使用 OUI 的 22 位(去掉 M 和 X 位)。不赞成这种用途。所有使用 OUI 的新规范,除网络寻址外,应使用 IEEE RA 指定的所有 24 为 OUI。这允许使用 OUI 或 CID。

MAC-48

MAC-48 这个术语现在已经过时了。MAC-48 类似于 EUI-48,也就是说,它是一个由 IEEE RA 分配的 24 位 OUI 和一个由组织分配的 24 位扩展标识符的串联。然而,它被用来处理现有的基于 802 的网络应用程序中寻址硬件接口。术语EUI-48在历史上用于标识设计实例,与硬件接口相对;示例包括软件接口标准(如 VGA)、产品型号以及供应商特定内容的形式/功能。MAC-48 和 EUI-48 之间的细微差别尚不清楚,因此 EUI-48 一词现在用于两种用途,MAC-48 标识符一词现在已经过时了。(IEEE RAC 不了解任何情况,但是如果 MAC-48 用作任何 48 位 MAC 地址的名称,那么 EUI-48 不是 MAC-48 的合适替代术语,因为 EUI-48 仅指单独的、全球唯一的网络地址。)

EUI-60

EUI-60 不应用于未来的应用。在可预见的未来,没有计划取消这些 EUI-60 值的使用。EUI-64 (与 EUI-60 相反)标识符应该在未来的应用程序、未来的标准以及现有标准的 revisions 和 amendments 中使用,这些标准要求每个硬件使用唯一的实例标识符。

CDI-32 and CDI-40

CDI-32 和 CDI-40 历史上被推荐作为上下文依赖的标识符。

历史上,CDI-32 是由 IEEE RA 分配的 OUI 值和由该组织分配的 8 位扩展标识符的串联。

历史上,CDI-40 是由 IEEE RA 分配的 OUI 值和由该组织分配的 16 位扩展标识符的串联。


来源:https://standards.ieee.org/wp-content/uploads/import/documents/tutorials/eui.pdf