专利名称:介质访问控制(mac)地址管理系统和方法
介质访问控制(MAC)地址管理系统和方法
背景技术:
计算机网络通常要求附接到该网络的每个设备具有唯 一 识别的通 信设备识别号以用作电子地址。例如,广泛使用的通信设备识别地址是 介质访问控制(MAC)地址。MAC地址号被成块地分配(assign)给设备 制造商,使得制造商使用的分配方法未被规定。计算设备(例如个人计 算才7L(PC))可以具有使用MAC地址的多个设备。例如,PC可以使用网 络接口控制器(NIC)来在用户正使用PC时管理网络流量,以及使用管 理性(administrative)网络接口以甚至在用户已将PC "关闭"之后允 许网络管理员更新和以其他方式管理P C 。 NIC和管理性网络接口 二者都 具有它们自己的MAC地址。因此,制造商和网络管理员不仅仅负有管理 较长的MAC地址列表的负担而且还负有使单个PC的多个MAC地址相关 的负担,每个负担都是耗时的并且管理起来非常困难。
为了更完全地理解本申请及其目标和优点,现在结合附图参照下面 的描述,其中
图l是图解介质访问控制(MAC)地址管理系统的实施例的图; 图2是图解MAC地址管理方法的实施例的流程图;以及 图3是图解MAC地址管理方法的实施例的另 一个流程图。
具体实施例方式
图l是图解介质访问控制(MAC)地址管理系统10的实施例的图。 通常,MAC地址是用作特定设备的电子地址或标识符的字符串,从而实 现针对特定设备的电子通信(例如计算机网络流量)。MAC地址是唯一 的,并且通常由制造商烧入(burn into)设备的存储器中。为了确保 每个设备具有唯一的MAC地址,标准组织为实体(例如设备制造商/经 销商)提供一定范围的(a range of)地址以用于该特定实体制造/经 销的产品。该实体如何将在该范围中的地址分派(allocate)给特定设 备取决于所述实体的判断。当实体预期用尽所提供范围的地址时,该实体通常将请求标准组织保留另一块地址。因此,在运行中,每个具有网
络能力的设备典型地将与唯一的MAC地址相关联,例如通过将MAC地址 加载到该设备的非易失性存储器中。
在图l所图解的实施例中,系统10与计算设备100结合使用。计 算设备100可以包括任何类型的能够和/或以其他方式被配置成通过有 线和/或无线网络进行通信的电子设备,诸如但不限于笔记本计算机、 台式计算机、游戏设备、平板计算机和媒体设备。在图1中图解的实施 例中,计算设备100包括中央处理器(CPU) 110、北桥(northbridge) 120、南桥(southbridge ) 130和固件芯片组131。北桥120和南桥130 是将CPU 110通信耦合到计算设备100中的各种其他设备的芯片或芯片 组。例如,北桥120用作CPU 110和计算设备100的南桥130、随才几存 取存储器(RAM) 121以及图形控制器122之间的接口。南桥130用作 CPU 110和诸如基本输入/输出系统(BIOS)之类的固件芯片组131和一 组输入/输出(I/O)设备132之间的另一个接口。
在图1中,北桥120包括微控制器123,在一些实施例中,该微控 制器123被用于网络管理性功能。例如,在一些实施例中,微控制器123 包括管理性管理技术(administrative management technology, AMT ) 引擎123a,其被用来使网络管理员能够升级计算设备100的软件和病毒 保护(例如甚至在用户已"关闭,,计算设备100之后)。在一些实施例 中,即使计算设备100的其他部分(例如CPU 110和1/0设备132)被 断电或者以其他方式被禁用,微控制器123也保持加电并且继续操作。
在图1中图解的实施例中,计算设备100包括分别以网络接口控制 器(NIC) 124和NIC 135为形式的两个网络设备112a和112b,用于实 现^,越和/或通过网络的通信。然而,应该理解,计算设备100可以包 括更多或更少数量的网络设备112以及其他类型的网络设备。在图1中, 微控制器123包括NIC 124,其使得微控制器123能够经由网络连接138 通过计算机网络(例如局域网(LAN)或其他类型的网络)进行通信。 因此,在一些实施例中,NIC 124使得微控制器123能够从远程网络管 理员接收诸如病毒定义文件和软件补丁的通知之类的管理性更新。在图 1中图解的实施例中,MAC地址126^皮分配给NIC 124并且被存储在NIC 124的存储器125中。MAC地址126-故用来向计算机网络上的其他通信 设备识别NIC 124。在一些实施例中,存储器125包括电子可擦除可编
4程只读存储器(EEPR0M);但是应该理解可以使用其他形式的非易失性 存储器。
在图1中,(一个或多个)1/0设备132耦合到南桥130,并且包 括外围部件互连(PCI )总线133、通用串行总线(USB)134以及NIC 135。 NIC 135耦合到网络连接138,并且为计算设备100提供网络连接性以 便操作计算设备100的用户例如访问因特网、发送电子邮件等等。在图 l中图解的实施例中,MAC地址137:故分配给NIC135,并且被用来向计 算机网络上的其他通信设备识别NIC 135。在图1中,MAC地址137被 存储在NIC 135的存储器136中。存储器136可以包括EEPR0M或其他 形式的非易失性存储器。在一些实施例中,NIC 135包括千兆位(gigabit ) 以太网(GbE)适配器,并且MAC地址137包括GbE MAC地址。但是, 应该理解,NIC 135可以以其他方式进行配置。应该理解,(一个或多 个)1/0设备132可以使用除NIC 135之外的另一设备,以使用MAC地 址137耦合到计算机网络。在图l所示的实施例中,固件芯片组131包 括闪存,但是应该理解固件芯片组131可以包括附加的集成电路(IC) 和其他形式的存储器。
在运行中,系统10使得MAC地址126和137中的至少一个净皮分别 加载到网络接口控制器(NIC) 124和135中。在运行中,当MAC地址被 加载到计算设备100中和/或以其他方式被分配给特定的部件或设备时,
地址块中移除;。在图1中二^解的^施例中,计算设备口100包括两个MAC 地址(例如MAC地址126和137 ) ; ^f旦是应该理解计算i殳备100可以4吏 用更大数量的MAC地址。因此,例如,当MAC地址126和/或137中的 一个或两者被加载到计算设备100中和/或以其他方式被分别分配给 NIC 124和135时,将MAC地址126和137 二者都/人所保留的可用MAC 地址的列表中移除掉。
在图1所图解的实施例中,系统10包括耦合到光学阅读器142的 MAC计算器/写入器(writer) 140。在一些实施例中,MAC计算器/写入 器140包括被配置成向EEPROM写入的EEPROM写入器。但是,应该理解, MAC计算器/写入器140可以包括;故配置成向EEPROM和/或另一形式的非 易失性存储器写入的其他类型的写入器。在一些实施例中,MAC计算器/ 写入器140被暂时耦合到计算设备100 (例如在计算设备100的制造、维护或维修期间),并且用于将MAC地址126和/或137分别写入到NIC 124和135。光学阅读器142可以包括用于读取和/或以其他方式获取MAC 地址信息的任何类型的设备,MAC计算器/写入器140使用该MAC地址信 息来向特定网络设备写入/分配特定MAC地址。光学阅读器142可以暂 时耦合到MAC计算器/写入器140或形成MAC计算器/写入器140的永久 部分。在一些实施例中,光学阅读器142被配置成光学地读取在其上具 有MAC地址的信息和/或指示(例如,MAC地址126或137的指示)的条 形码标记143。在一些实施例中,条形码标记143被附着到计算设备100 或其特定部件(例如在制造或配置计算设备100的过程中的某个点)。 因此,在运行中,光学阅读器142读取条形码标记143并且将读取的信 息(例如MAC地址信息,诸如MAC地址126或137 )传^T到MAC计算器/ 写入器140以便于分别将MAC地址126和/或137写入/分配到NIC 124 和135。
在图1中图解的实施例中,MAC计算器/写入器14G包括逻辑(logic) 141,该逻辑141可以包括一组包含在硬件、软件、固件或其组合中的 可执行指令。在一些实施例中,逻辑141被配置成根据和/或基于一个 MAC地址计算、导出和/或生成另一MAC地址。例如,在一些实施例中, 为了便于容易地跟踪到计算设备100和/或其设备的MAC地址和/或给计 算设备100和/或其设备分配MAC地址,逻辑141利用特定的算法和/或 可重复的过程来根据和/或基于一个MAC地址来生成和/或导出另一MAC 地址。例如,在一些实施例中,逻辑141被配置成按照预定的字母数字 关系(例如通过递增/递减某个预定字母数字值来计算)来根据和/或基 于一个MAC地址生成和/或导出另一MAC地址。在一些实施例中,例如, 基于第一 MAC地址,通过将第一 MAC地址递增整数一或某个其他数字值 来生成和/或导出第二 MAC地址。但是,应该理解,可以使用其他方法 (例如按照预定的序列和/或模式改变特定MAC地址中的特定位和/或字 母数字值来生成和/或导出另一MAC地址)。
因此,在运行中,例如,条形码标记143包括与MAC地址相关联的 信息。光学阅读器142从条形码标记14 3读取MAC地址信息并且将该MAC 地址信息传输到MAC计算器/写入器140。所接收的MAC地址信息可以被 预先指定用于特定设备(例如NIC135)或者MAC计算器/写入器140可 以被配置成选择计算设备100的特定设备来接收到其的MAC地址/向其分配该MAC地址(例如基于预定的方案或随机地)。MAC计算器/写入器 140然后将MAC地址写入到该特定设备(例如NIC 135为MAC地址137 )。 MAC地址1 37 :故对应地在所提供的MAC地址块或范围上移除和/或以其他 方式指示为不可用/已分配。代替随机接收和/或获得另一 MAC地址和/ 或读取另一条形码标记143,逻辑141被配置成基于第一MAC地址自动 生成用于计算设备100的另一设备的MAC地址,或在该示例中生成MAC 地址126。因此,例如,逻辑141基于MAC地址137 (例如通过将MAC 地址递增数字值"一,,以得到NIC 124的MAC地址,或者MAC地址126) 自动生成用于NIC 124的MAC地址。MAC计算器/写入器140将MAC地址 126写入到NIC 124,并且MAC地址126被对应地在所提供的MAC地址 块或范围上移除和/或以其他方式指示为不可用/已分配。对于需要分配 给其的(例如,基于MAC地址137生成的或基于先前使用的/分配的MAC 地址(例如MAC地址126 )生成的)MAC地址的计算设备100的其他网 络设备112,可以重复上述方法或操作系列。可替换地,MAC计算器/写 入器140可以被配置成仅写入MAC地址126和137中的一个,从而将MAC 地址126和137中的另一地址的计算留给计算才几100中的逻辑139。即 使利用该可替换的配置,MAC地址126和137 二者在所提供的MAC地址 块或范围上仍将被移除和/或以其他方式指示为不可用/已分配。
还应该理解,逻辑141可以使用不同的才莫式和/或地址分配方法, 来将MAC地址分配到特定类型的网络设备ll2。例如在一些实施例中, 特定类型的网络设备可以被指定为默认和/或主要网络设备112 (例如 NIC 135 ),以使得分配给计算设备100的任何MAC地址首先被分配给 该默认/主要网络设备112。此后,在一些实施例中,逻辑141基于距被 分配给该默认/主要网络设备的MAC地址的某一递增值而将MAC地址分 配给计算设备100的另一类型的网络设备112,而逻辑141基于距被分 配给该默认/主要网络设备的MAC地址的不同递增值而将MAC地址分配 给另一类型的网络设备。因此,应该理解,可以使用若干不同的预定方 法来将MAC地址分配给计算设备100的网络设备112。
在一些实施例中,条形码标记143不需要包含MAC地址的全部。例 如,制造商的所保留的MAC地址块可能限于其中的 一些数字不改变的号 码序列。在这样的情况下,条形码标记143可以仅包括MAC地址的子集 或一部分。因此,在一些实施例中,逻辑141被配置成将MAC地址的剩余部分附加到包含在条形码标记143上的信息以生成完整的MAC地址。
在一些实施例中,或者代替条形码标记143或者除使用条形码标记 143之外,可以使用射频识别(RFID)标签150来持有和/或以其他方式 提供MAC地址的指示。例如,RFID标签是在存在发射RFID标签阅读器 152的情况下并且响应于被RFID标签阅读器152发射的射频能量激励而 发射代码的无源无线设备。因此,在一些实施例中,由RFID标签150 发射的代码指示MAC地址,然后由RFID标签阅读器152将该地址传输 到MAC计算器/写入器140。 RFID标签150还可以在此后物理地耦合到 和/或布置在计算设备IOO或其特定网络设备112上。
如上所述,MAC计算器/写入器140被配置成使用和/或基于一 MAC 地址生成另一MAC地址。^f旦是,应该理解,MAC计算器/写入器140还可 以被配置成使用和/或基于一 MAC地址确定/导出另一 MAC地址。例如, 在一些实施例中,响应于被给予和/或被提供一个网络设备112的MAC 地址(例如MAC地址126),逻辑141 ;波配置成自动确定和/或以其他方 式导出已将什么MAC地址分配给另一网络设备(例如NIC 135)。
在一些实施例中,逻辑141的实例也可以驻留在固件芯片组131中, 在图1中被指示为逻辑139。逻辑139可以被配置成与逻辑141相同, 或者可以被配置成具有除逻辑141之外的附加的功能和/或与逻辑141 不同的功能。例如,在一些实施例中,逻辑139被配置成(例如在计算 设备100启动(boot-up)期间)根据和/或基于MAC地址126和137中 的一个地址计算和/或导出MAC地址126和137中的另一地址。例如, 在一些实施例中,如果MAC地址126还没有i^写入到NIC 124的存储器 125,则逻辑139被配置成从存储器136读取MAC地址137、计算MAC地 址126以及将MAC地址126写入到存储器125 (例如当计算设备100被 引导(boot)时或在其他时候)。逻辑139还可以被配置成根据另一个 MAC地址导出和/或以其他方式确定一个MAC地址(例如基于MAC地址 137确定MAC地址126 ),以便于将特定MAC地址传送到另一方(例如 到另一网络设备、到系统/网络管理员等等)。
在图1所示的实施例中,固件芯片组131还包括持有(hold) MAC 地址126和137的副本以及有效性标志145和146的描述符表144。在 一些实施例中,除存储器125和存储器136之外或代替存储器125和存 储器136, MAC计算器/写入器140将MAC地址126和/或137分别写入配置成在计算设备100启动时或在 其他情况下,将MAC地址126和/或137从描述符表144分别复制到存 储器125和/或存储器136。在一些实施例中,标志145和146代表MAC 地址126和137的有效性指示。例如,在一些实施例中,如果MAC计算 器/写入器140将MAC地址126和137写入到NIC 124和NIC 135,则 MAC计算器/写入器140设置标志145。但是,如果MAC计算器/写入器 140仅将MAC地址126或137中的一个写入到NIC 124或NIC 135,并 且因此NIC 124和NIC 135中的一个缺少有效的MAC地址,则MAC计算 器/写入器设置标志146而不是标志145。在一些实施例中,在引导时, 逻辑139基于标志145是否纟皮设置来确定MAC地址126和137 二者是否 都有效,并且如果不是,则计算MAC地址126或137中的缺失的一个, 将MAC地址126或137写入到描述符表144和/或存储器125或存储器 136的相应一个,并且设置标志145。 一旦有效的MAC地址已经;故存储 在相应网络设备的存储器中,则描述符表144还可以被锁定。在随后的 引导事件期间,逻辑139因此可以将标志145读取为被设置。
图2是图解用于写入MAC地址的方法20的实施例的流程图。参考 图1中图解的系统10来描述方法20;但是,应该理解方法20可以#:用 于可替换的实施例。在框200处,MAC计算器/写入器l"从光学阅读器 142接收MAC地址137。在框201处,MAC计算器/写入器140将MAC地 址137写入到存储器136中,并且在框202处设置标志146。
图3是图解用于写入MAC地址的方法30的实施例的流程图。参考 图1中图解的系统IO来描述方法30;但是,应该理解方法30可以被用 于可替换的实施例。
在框300处,逻辑139读取标志145并且在判断框301处确定标志 145是否被设置。如果标志145^:设置,则在框302处完成方法30。但 是,如果标志145没有^皮设置,则逻辑139读取标志146。如果标志146 没有被设置,则方法30在框305处停止,因为标志146没有被设置指 示MAC地址137还没有被写入到存储器136,并因此不可用于计算MAC 地址126。但是,如果标志145祐:设置,则逻辑139在框306处从存储 器136读取MAC地址137并且计算MAC地址126。在框307处,还辑139 将MAC地址126写入到存储器125,并且在框308处,逻辑139设置标 志145。
权利要求
1、一种介质访问控制(MAC)地址管理系统(10),包括逻辑(141、139),其被配置成基于计算设备(100)的另一网络设备(112a、112b)的MAC地址(126、137)来生成用于所述计算设备(100)的至少一个网络设备(112a、112b)的MAC地址(126、137)。
2、 根据权利要求1所述的系统(10),其中所述逻辑(141、 139) 被配置成将所生成的MAC地址(126、 137)写入到所述至少一个网络设 备(112a、 112b)的存储器(125、 136)。
3、 根据权利要求1所述的系统(10),其中所述逻辑(141、 139) 被配置成将所生成的MAC地址(126、 137)写入到所述计算设备(100) 的描述符表(144)。
4、 根据权利要求1所述的系统(10),其中所述逻辑(141、 139) 被布置在所述计算设备(100)的固件芯片组(131 )中。
5、 根据权利要求l所述的系统(10),其中所述逻辑(141、 139) 被配置成通过将所述另一网络设备Ul2a、 112b)的MAC地址(126、 137)递增预定值来导出所生成的MAC地址(126、 137)。
6、 根据权利要求1所述的系统(10),其中所述逻辑(141、 139) 被配置成导出用于所述计算设备(100)的管理性管理技术(AMT)引擎(123a )的所生成的MAC地址(126、 137)。
7、 一种用于写入介质访问控制(MAC)地址的方法,该方法包括 根据第二MAC地址(126、 137)导出第一MAC地址(126、 137);以及将所述第一MAC地址(126、 137)写入到存储器(125、 136)。
8、 根据权利要求7所述的方法,还包括读取所述第一MAC地址(126、 137)的有效性的指示。
9、 根据权利要求7所述的方法,其中将所述第一MAC地址(126、 137)写入到存储器(125、 136)包括将所述第一MAC地址(126、 137) 写入到网络设备(112a、 112b)的存储器(125、 136)。
10、 根据权利要求7所述的方法,其中根据第二 MAC地址(126、 137)导出第一MAC地址(126、 137)包括将所述笫二MAC地址(126、 137)递增预定值。
全文摘要
一种介质访问控制(MAC)地址管理系统(10)包括逻辑(141、139),其被配置成基于计算设备(100)的另一网络设备(112a、112b)的MAC地址(126、137)来生成用于所述计算设备(100)的至少一个网络设备(112a、112b)的MAC地址(126、137)。
文档编号H04L29/12GK101658016SQ200880012320
公开日2010年2月24日 申请日期2008年3月7日 优先权日2007年4月17日
发明者G·L·哈巴德, J·K·让桑纳, T·L·邓拉普, W·Z·刘 申请人:惠普开发有限公司