转发以太网帧的方法及交换的制造方法
【专利摘要】本发明公开了一种转发以太网帧的方法及交换机,属于计算机网络【技术领域】。方法包括:当交换机接收到与交换机相连的终端设备发送的以太网帧时,解析以太网帧,得到以太网帧所携带的源MAC地址及目的MAC地址;当目的MAC地址不为单播地址时,交换机修改目的MAC地址,并将修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备;当目的MAC地址为单播地址时,交换机确定源MAC地址的格式是否与目的MAC地址的格式相同;当源MAC地址的格式与目的MAC地址的格式不相同时,交换机修改源MAC地址,使得修改后的源MAC地址的格式与目的MAC地址的格式相同,之后,将修改后的以太网帧转发给与目的MAC地址对应的终端设备。使得不同MAC地址格式的终端设备之间可以通信。
【专利说明】转发以太网帧的方法及交换机
【技术领域】
[0001]本发明涉及计算机网络【技术领域】,特别涉及一种转发以太网帧的方法及交换机。【背景技术】
[0002]现有常见的网络地址转换技术包括IPv4中的NATPT (Network AddressTranslation - Port Translation,网络地址转换-端口转换),以及IPv4和IPv6地址互相转换的NAPT(Network Address Protocol Translation,网络地址协议转换)。并未提出任何有关MAC (Media Access Control,媒体接入控制)地址转换的方式。
【发明内容】
[0003]为了解决现有技术的问题,本发明实施例提供了一种转发以太网帧的方法及交换机。所述技术方案如下:
[0004]一方面,本发明提供了一种转发以太网帧的方法,所述方法包括:当交换机接收到与所述交换机相连的终端设备发送的以太网帧时,解析所述以太网帧,得到所述以太网帧所携带的源媒体接入控制MAC地址及目的MAC地址;
[0005]当所述目的MAC地址不为单播地址时,所述交换机修改所述目的MAC地址,并将修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备;
[0006]当所述目的MAC地址为单播地址时,所述交换机确定所述源MAC地址的格式是否与所述目的MAC地址的格式相同;
[0007]当所述源MAC地址的格式与所述目的MAC地址的格式不相同时,所述交换机修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同,之后,将修改后的以太网帧转发给与所述目的MAC地址对应的终端设备。
[0008]所述交换机修改所述目的MAC地址包括:
[0009]所述交换机将所述目的MAC地址修改为一预先指定的单播地址。
[0010]所述将修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备包括:
[0011]根据所述修改后的目的MAC地址查找目的MAC地址与转发端口间对应关系,得到所述修改后的目的MAC地址对应的转发端口 ;
[0012]通过查找到的转发端口将所述修改后的以太网帧转发至所述修改后的目的MAC地址对应的终端设备。
[0013]所述交换机修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同包括:
[0014]所述交换机根据所述源MAC地址查找本地存储的MAC地址转换表,得到所述源MAC地址的翻译地址,所述源MAC地址的翻译地址的格式与所述目的MAC地址的格式相同;
[0015]所述交换机将所述源MAC地址修改为所述翻译地址。
[0016]所述交换机根据所述源MAC地址查找本地存储的MAC地址转换表,得到所述源MAC地址的翻译地址包括:[0017]当所述MAC地址转换表为动态配置的转换表时,所述交换机根据所述源MAC地址查找所述MAC地址转换表,确定所述MAC地址转换表内是否存在所述源MAC地址的翻译地址;
[0018]如果所述MAC地址转换表内不存在所述源MAC地址对应的翻译地址,则从预先设定的MAC地址池中选择一未被占用的MAC地址作为所述源MAC地址的翻译地址。
[0019]所述将修改后的以太网帧转发给与所述目的MAC地址对应的终端设备包括:
[0020]所述交换机根据所述目的MAC地址查找目的MAC地址与转发端口间对应关系,得到与所述目的MAC地址相对应的转发端口 ;
[0021]所述交换机将修改后的以太网帧通过查找到的转发端口转发给所述目的MAC地址对应的外部设备。
[0022]所述交换机解析所述以太网帧,还得到所述以太网帧所携带的用户数据;
[0023]相应地,所述将修改后的以太网帧转发给与所述目的MAC地址对应的终端设备包括:
[0024]当所述用户数据内包括MAC地址时,确定所述MAC地址的格式是否与所述目的MAC地址的格式相同;
[0025]当所述MAC地址的格式与所述目的MAC地址的格式不相同时,所述交换机修改所述MAC地址,使得修改后的MAC地址的格式与所述目的MAC地址的格式相同,之后,将修改后的以太网帧转发给与所述目的MAC地址对应的终端设备。
[0026]所述MAC地址包括第一类型格式和第二类型格式,所述第一类型格式包括厂家唯一标识及网络接口标识,所述厂家唯一标识用于标识MAC地址的制造商,所述网络接口标识用于标识网络接口制造商;所述第二类型格式至少包括交换机标识及终端标识,所述交换机标识用于标识以太网内的交换机,所述终端标识用于标识与交换机相连的终端设备。
[0027]另一方面,本发明还提供了一种转发以太网帧的方法,所述方法包括:
[0028]当交换机接收到由其他交换机转发的以太网帧时,解析所述以太网帧,得到所述以太网帧所携带的源媒体接入控制MAC地址及目的MAC地址;
[0029]所述交换机确定所述目的MAC地址的格式是否与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0030]当所述目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式不相同时,所述交换机修改所述目的MAC地址,使得修改后的目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0031]所述交换机将修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
[0032]所述交换机修改所述目的MAC地址,使得修改后的目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同包括:
[0033]所述交换机根据所述目的MAC地址查找本地存储的MAC地址转换表,得到所述目的MAC地址的翻译地址,所述目的MAC地址的翻译地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0034]所述交换机将所述目的MAC地址修改为所述翻译地址。
[0035]所述交换机根据所述目的MAC地址查找本地存储的MAC地址转换表,得到所述目的MAC地址的翻译地址包括:
[0036]当所述MAC地址转换表为动态配置的转换表时,所述交换机根据所述目的MAC地址查找所述MAC地址转换表,确定所述MAC地址转换表内是否存在所述目的MAC地址的翻译地址;
[0037]如果所述MAC地址转换表内不存在所述目的MAC地址的翻译地址,则从预先设定的MAC地址池中选择一未被占用的MAC地址作为所述目的MAC地址的翻译地址。
[0038]所述交换机将修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备,包括:
[0039]所述交换机根据所述修改后的目的MAC地址查找目的MAC地址与转发端口间对应关系,得到与所述修改后的目的MAC地址相对应的转发端口 ;
[0040]所述交换机将修改后的以太网帧通过查找到的转发端口转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
[0041]所述交换机解析所述以太网帧,还得到所述以太网帧所携带的用户数据;
[0042]相应地,所述交换机将修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备包括:
[0043]当所述用户数据内包括MAC地址时,确定所述MAC地址的格式是否与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0044]当所述MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式不相同时,所述交换机修改所述MAC地址,使得修改后的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同,之后,将修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
[0045]所述MAC地址包括第一类型格式和第二类型格式,所述第一类型格式包括厂家唯一标识及网络接口标识,所述厂家唯一标识用于标识MAC地址的制造商,所述网络接口标识用于标识网络接口制造商;所述第二类型格式至少包括交换机标识及终端标识,所述交换机标识用于标识以太网内的交换机,所述终端标识用于标识与交换机相连的终端设备。
[0046]再一方面,本发明提供了一种交换机,所述交换机包括:解析模块、第一修改模块、第一发送模块、确定模块、第二修改模块及第二发送模块;
[0047]所述解析模块,用于当接收到与所述交换机相连的终端设备发送的以太网帧时,解析所述以太网帧,得到所述以太网帧所携带的源媒体接入控制MAC地址及目的MAC地址;
[0048]所述第一修改模块,用于当所述目的MAC地址不为单播地址时,修改所述目的MAC地址;
[0049]所述第一发送模块,用于将经第一修改模块修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备;
[0050]所述确定模块,用于当所述目的MAC地址为单播地址时,确定所述源MAC地址的格式是否与所述目的MAC地址的格式相同;
[0051]所述第二修改模块,用于当所述源MAC地址的格式与所述目的MAC地址的格式不相同时,修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同;[0052]所述第二发送模块,用于将经所述第二修改模块修改后的以太网帧转发给与所述目的MAC地址对应的终端设备。
[0053]所述第一修改模块,具体用于将所述目的MAC地址修改为一预先指定的单播地址。
[0054]所述第一发送模块包括:
[0055]查找单元,用于根据所述修改后的目的MAC地址查找目的MAC地址与转发端口间对应关系,得到所述修改后的目的MAC地址对应的转发端口 ;
[0056]发送单元,用于通过查找到的转发端口将所述修改后的以太网帧转发至所述修改后的目的MAC地址对应的终端设备。
[0057]所述第二修改模块包括:
[0058]查找单元,用于根据所述源MAC地址查找本地存储的MAC地址转换表,得到所述源MAC地址的翻译地址,所述源MAC地址的翻译地址的格式与所述目的MAC地址的格式相同;
[0059]修改单元,用于将所述源MAC地址修改为所述翻译地址。
[0060]所述查找单元,具体用于当所述MAC地址转换表为动态配置的转换表时,根据所述源MAC地址查找所述MAC地址转换表,确定所述MAC地址转换表内是否存在所述源MAC地址的翻译地址,如果所述MAC地址转换表内不存在所述源MAC地址对应的翻译地址,则从预先设定的MAC地址池中选择一未被占用的MAC地址作为所述源MAC地址的翻译地址。
[0061]所述第二发送模块包括:
[0062]查找单元,用于根据所述目的MAC地址查找目的MAC地址与转发端口间对应关系,得到与所述目的MAC地址相对应的转发端口 ;
[0063]发送单元,用于将修改后的以太网帧通过查找到的转发端口转发给所述目的MAC地址对应的外部设备。
[0064]所述解析模块,还用于解析所述以太网帧,得到所述以太网帧所携带的用户数据;
[0065]相应地,所述第二发送模块包括:
[0066]确定单元,用于当所述用户数据内包括MAC地址时,确定所述MAC地址的格式是否与所述目的MAC地址的格式相同;
[0067]修改单元,用于当所述MAC地址的格式与所述目的MAC地址的格式不相同时,修改所述MAC地址,使得修改后的MAC地址的格式与所述目的MAC地址的格式相同;
[0068]发送单元,用于将经所述修改单元修改后的以太网帧转发给与所述目的MAC地址对应的终端设备。
[0069]另外,本发明还提供了一种交换机,所述交换机包括:解析模块、确定模块、修改模块及发送模块;
[0070]所述解析模块,用于当接收到由其他交换机转发的以太网帧时,解析所述以太网帧,得到所述以太网帧所携带的源媒体接入控制MAC地址及目的MAC地址;
[0071]所述确定模块,用于确定所述目的MAC地址的格式是否与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0072]所述修改模块,用于当所述目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式不相同时,修改所述目的MAC地址,使得修改后的目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0073]所述发送模块,用于将经所述修改模块修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
[0074]所述修改模块包括:
[0075]查找单元,用于根据所述目的MAC地址查找本地存储的MAC地址转换表,得到所述目的MAC地址的翻译地址,所述目的MAC地址的翻译地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0076]修改单元,用于将所述目的MAC地址修改为所述翻译地址。
[0077]所述查找单元,具体用于当所述MAC地址转换表为动态配置的转换表时,根据所述目的MAC地址查找所述MAC地址转换表,确定所述MAC地址转换表内是否存在所述目的MAC地址的翻译地址,如果所述MAC地址转换表内不存在所述目的MAC地址的翻译地址,则从预先设定的MAC地址池中选择一未被占用的MAC地址作为所述目的MAC地址的翻译地址。
[0078]所述发送模块包括:
[0079]查找单元,用于根据所述修改后的目的MAC地址查找目的MAC地址与转发端口间对应关系,得到与所述修改后的目的MAC地址相对应的转发端口 ;
[0080]发送单元,用于将修改后的以太网帧通过查找到的转发端口转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
[0081]所述解析模块,还用于解析所述以太网帧,得到所述以太网帧所携带的用户数据;
[0082]相应地,所述发送模块包括:
[0083]确定单元,用于当所述用户数据内包括MAC地址时,确定所述MAC地址的格式是否与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0084]修改单元,用于当所述MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式不相同时,修改所述MAC地址,使得修改后的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0085]发送单元,用于将经所述修改单元修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
[0086]本发明实施例提供的技术方案带来的有益效果是:当交换机接收到与所述交换机相连的终端设备发送的以太网帧时,解析所述以太网帧得到以太网帧携带的源MAC地址及目的MAC地址,当源MAC地址的格式与目的MAC地址的格式不相同时,修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同,之后,将修改后的以太网帧转发给与目的MAC地址对应的终端设备,以便所述目的MAC地址对应的终端设备可以解析并识别发送该以太网帧的源MAC地址。另外,当目的MAC地址不为单播地址时,修改所述目的MAC地址,并将修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备,使得当目的MAC地址是广播地址或者组播地址时,无需向整个以太网或者所有的组播成员转发上述以太网帧,降低整个以太网的通讯量,提高整个以太网的工作效率,且该方式具有良好的可用性及扩展性。【专利附图】
【附图说明】
[0087]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0088]图1a是本发明实施例一提供的一种转发以太网帧的方法流程图;
[0089]图1b是本发明实施例一提供的一种转发以太网帧的方法流程图;
[0090]图2是本发明实施例二提供的一种以太网的架构示例图;
[0091]图3a、3b及3c是本发明实施例二分别提供的一种MAC地址的结构示例图;
[0092]图4是本发明实施例二提供的一种转发以太网帧的方法流程图;
[0093]图5是本发明实施例二提供的一种转发以太网帧的方法流程图;
[0094]图6是本发明实施例三提供的一种交换机的结构示意图;
[0095]图7是本发明实施例三提供的一种交换机的结构示意图;
[0096]图8是本发明实施例三提供的一种交换机的结构示意图;
[0097]图9是本发明实施例三提供的一种交换机的结构示意图;
[0098]图10是本发明实施例三提供的一种交换机的结构示意图;
[0099]图11是本发明实施例四提供的一种交换机的结构示意图;
[0100]图12是本发明实施例四提供的一种交换机的结构示意图;
[0101]图13是本发明实施例四提供的一种交换机的结构示意图;
[0102]图14是本发明实施例四提供的一种交换机的结构示意图。
【具体实施方式】
[0103]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0104]实施例一
[0105]参见图1a:本发明实施例提供了一种转发以太网帧的方法,所述方法包括:
[0106]步骤IOla:当交换机接收到与所述交换机相连的终端设备发送的以太网帧时,解析所述以太网帧,得到所述以太网帧所携带的源媒体接入控制MAC地址及目的MAC地址;
[0107]步骤102a:当所述目的MAC地址不为单播地址时,交换机修改所述目的MAC地址,并将修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备;
[0108]步骤103a:当所述目的MAC地址为单播地址时,交换机确定所述源MAC地址的格式是否与所述目的MAC地址的格式相同;
[0109]步骤104a:当所述源MAC地址的格式与所述目的MAC地址的格式不相同时,交换机修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同,之后,将修改后的以太网帧转发给与所述目的MAC地址对应的终端设备。
[0110]本发明实施例中,当交换机接收到与所述交换机相连的终端设备发送的以太网帧时,解析所述以太网帧得到以太网帧携带的源MAC地址及目的MAC地址,当源MAC地址的格式与目的MAC地址的格式不相同时,修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同,之后,将修改后的以太网帧转发给与目的MAC地址对应的终端设备,以便所述目的MAC地址对应的终端设备可以解析并识别发送该以太网帧的源MAC地址。另外,当目的MAC地址不为单播地址时,修改所述目的MAC地址,并将修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备,使得当目的MAC地址是广播地址或者组播地址时,无需向整个以太网或者所有组播成员转发上述以太网帧,降低整个以太网的通讯量,提高整个以太网的工作效率,且该方式具有良好的可用性及扩展性。
[0111]参见图lb,本发明实施例提供了一种转发以太网帧的方法,所述方法包括:
[0112]步骤IOlb:当交换机接收到由其他交换机转发的以太网帧时,解析所述以太网帧,得到所述以太网帧所携带的源媒体接入控制MAC地址及目的MAC地址;
[0113]步骤102b:交换机确定所述目的MAC地址的格式是否与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0114]步骤103b:当所述目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式不相同时,交换机修改所述目的MAC地址,使得修改后的目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同;
[0115]步骤104b:交换机将修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
[0116]本发明实施例中,当交换机接收到由其他交换机转发的以太网帧时,解析以太网帧得到以太网帧携带的源MAC地址及目的MAC地址,当目的MAC地址的格式与交换机相连的终端设备采用的MAC地址的格式不相同时,修改所述目的MAC地址,使得修改后的目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同,之后,将修改后的以太网帧转发给与交换机相连的修改后的目的MAC地址对应的终端设备,使得交换机可以解析并识别与本地MAC地址格式不同的目的MAC地址,以便可以将其他交换机转发的以太网帧成功的转发至目的地址对应的终端设备。
[0117]实施例二
[0118]参见图2,为本发明实施例所提供的一种以太网的架构示例图,具体可以包括交换机A、与交换机A相连的多个终端设备Al、交换机B以及与交换机B相连的多个终端设备BI,其中,交换机A与交换机B相连。基于如图2所示的以太网架构,终端设备Al与终端设备BI间就可以通过交换机A及交换机B进行通信,如终端设备Al在向终端设备BI发送数据时,该终端设备Al所发送的数据可以经由交换机A发送至交换机B,最终由交换机B将所述数据转投至终端设备BI。
[0119]在以太网内,终端设备之间的通信数据是以以太网帧的格式进行传输,所述以太网帧包括源MAC地址、目的MAC地址、类型、用户数据及校验值,其中,所述源MAC地址用于标识发送所述以太网帧的源终端设备,所述目的MAC地址用于标识需接收所述以太网帧的目的终端设备。这样,交换机在接收到以太网帧时,就可以解析该以太网帧,得到该以太网帧携带的源MAC地址及目的MAC地址,最终将该由源MAC地址所标识的源终端设备发送的以太网帧转发至由目的MAC地址所标识的目的终端设备。
[0120]本发明实施例中,以上所述的MAC地址可以有两种地址格式,具体描述如下:
[0121]第一类型格式的MAC地址可以参见图3a,该类型的MAC地址由48个比特位构成,包括24个比特位的厂家唯一标识及24个比特位的网络接口标识,其中,所述厂家唯一标识用于标识MAC地址的制造商,所述网络接口标识用于标识网络接口制造商;[0122]第二类型格式的MAC地址可以参见图3b或3c,该类型的MAC地址依然由48个比特位构成,但至少包括交换机标识及终端标识,其中,所述交换机标识用于标识以太网内的交换机,所述终端标识用于标识接入交换机的终端设备,但在具体实现时,第二类型格式的MAC地址还可以包括租户标识,该租户标识则可以用于标识MAC地址所标识终端设备的所有者或者使用者;第二类型格式的MAC地址仅包括交换机标识及终端标识时,本发明实施例并不限定所述交换机标识及终端标识在该48比特位的地址格式中的偏移量和长度,例如,图3b所示的可以将MAC地址格式中从低到高的第I至第12个比特位填充为交换机标识,剩余的比特位则填充为终端标识;相应地,第二类型格式的MAC地址在包括交换机标识、终端标识及租户标识时,本发明实施例依然不限定所述交换机标识、终端标识及租户标识在该48个比特位的地址格式中的偏移量和长度,例如图3c所示的可以将MAC地址格式中从低到高的第I至第12个二进制位(bit)填充为交换机标识,第13至第36个二进制位(bit)填充为租户标识,第37至第48个二进制位(bit)填充为终端标识。
[0123]本发明实施例在具体实现时,以太网内的终端设备可以采用上述第一类型格式或第二类型格式的MAC地址。而为了保证不同类型格式的MAC地址对应的终端设备之间可以进行通信,本发明实施例提供了一种转发以太网帧的方法,参见图4,该方法具体可以包括:
[0124]步骤201:当交换机接收到与交换机相连的终端设备发送的以太网帧时,解析该接收到的以太网帧,得到所述以太网帧所携带的源MAC地址及目的MAC地址;
[0125]步骤202:交换机确定所解析到的目的MAC地址是否为单播地址;
[0126]当所述目的MAC地址不为单播地址时,执行步骤203 ;
[0127]当所述目的MAC地址为单播地址时,执行步骤204 ;
[0128]步骤203:交换机修改所述目的MAC地址,并将修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备,操作结束;
[0129]具体地,交换机修改所述目的MAC地址之后,根据修改后的目的MAC地址查找目的MAC地址与转发端口间对应关系,得到所述修改后的目的MAC地址对应的转发端口 ;通过查找到的转发端口将所述修改后的以太网帧转发至所述修改后的目的MAC地址对应的终端设备。
[0130]作为一个优选实现的实施例,交换机可以将所述目的MAC地址修改为一预先指定的单播地址,之后,将修改后的以太网帧转发给所述预先指定的单播地址对应的终端设备,由该单播地址对应的终端设备来返回上述以太网帧的应答,使得当目的MAC地址是广播地址或者组播地址时,无需向整个以太网或者所有的组播成员转发上述以太网帧,降低整个以太网的通讯量,提高整个以太网的工作效率,且该方式具有良好的可用性及扩展性。
[0131]步骤204:交换机确定所述源MAC地址的格式是否与所述目的MAC地址的格式相同;
[0132]当所述源MAC地址的格式与所述目的MAC地址的格式相同时,交换机直接将所述以太网帧转发给所述目的MAC地址对应的终端设备,操作结束;
[0133]当所述源MAC地址的格式与所述目的MAC地址的格式不相同时,执行步骤205 ;
[0134]步骤205:交换机修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同;[0135]具体地,交换机根据所述源MAC地址查找本地存储的MAC地址转换表,得到所述源MAC地址的翻译地址,所述源MAC地址的翻译地址的格式与所述目的MAC地址的格式相同;之后,交换机将所述源MAC地址修改为所述翻译地址。
[0136]其中,交换机根据所述源MAC地址查找本地存储的MAC地址转换表,得到所述源MAC地址的翻译地址包括:
[0137]当MAC地址转换表为动态配置的转换表时,交换机根据所述源MAC地址查找所述MAC地址转换表,确定MAC地址转换表内是否存在所述源MAC地址的翻译地址;
[0138]如果所述MAC地址转换表内不存在源MAC地址对应的翻译地址,则从预先设定的MAC地址池中选择一未被占用的MAC地址作为所述源MAC地址的翻译地址。
[0139]本发明实施例在具体实现时,交换机预先构建并维护一 MAC地址转换表,该MAC地址转换表的条目包括有源MAC地址与该MAC地址的翻译地址间对应关系,以及目的MAC地址与该目的MAC地址间对应关系,其中,源MAC地址的格式与该源MAC地址的翻译地址为对应的两种地址格式,同样的,目的MAC地址与该目的MAC地址的翻译地址为对应的两种地址格式。
[0140]在具体实现时,交换机在设备端口上的发送方向(Transmit)和接收方向(Receive),任意配置一条会形成镜像的条目(Original与Translated相反,Source和Destination相反),如生成表中第一条表项,则第二条表项会自动生成,第一条和第二条成镜像关系;所述条目的生成方式可以通过手工配置的方式(Static),也可以通过地址池动态配置的方式(Dynamic)来生成.[0141]当所述MAC地址转换表内的条目是通过动态配置的方式生成时,交换机添加计时机制,计时器在每次MAC地址转换后重新设定,当计时器计时时间到时则删除MAC地址转换表内的条目。
[0142]其中,交换机所维护的MAC地址转换表可以如表一所示。
[0143]表I
[0144]
【权利要求】
1.一种转发以太网帧的方法,其特征在于,所述方法包括: 当交换机接收到与所述交换机相连的终端设备发送的以太网帧时,解析所述以太网帧,得到所述以太网 帧所携带的源媒体接入控制MAC地址及目的MAC地址; 当所述目的MAC地址不为单播地址时,所述交换机修改所述目的MAC地址,并将修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备; 当所述目的MAC地址为单播地址时,所述交换机确定所述源MAC地址的格式是否与所述目的MAC地址的格式相同; 当所述源MAC地址的格式与所述目的MAC地址的格式不相同时,所述交换机修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同,之后,将修改后的以太网帧转发给与所述目的MAC地址对应的终端设备。
2.根据权利要求1所述的方法,其特征在于,所述交换机修改所述目的MAC地址包括: 所述交换机将所述目的MAC地址修改为一预先指定的单播地址。
3.根据权利要求1所述的方法,其特征在于,所述将修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备包括: 根据所述修改后的目的MAC地址查找目的MAC地址与转发端口间对应关系,得到所述修改后的目的MAC地址对应的转发端口 ; 通过查找到的转发端口将所述修改后的以太网帧转发至所述修改后的目的MAC地址对应的终端设备。
4.根据权利要求1所述的方法,其特征在于,所述交换机修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同包括: 所述交换机根据所述源MAC地址查找本地存储的MAC地址转换表,得到所述源MAC地址的翻译地址,所述源MAC地址的翻译地址的格式与所述目的MAC地址的格式相同;所述交换机将所述源MAC地址修改为所述翻译地址。
5.根据权利要求4所述的方法,其特征在于,所述交换机根据所述源MAC地址查找本地存储的MAC地址转换表,得到所述源MAC地址的翻译地址包括: 当所述MAC地址转换表为动态配置的转换表时,所述交换机根据所述源MAC地址查找所述MAC地址转换表,确定所述MAC地址转换表内是否存在所述源MAC地址的翻译地址;如果所述MAC地址转换表内不存在所述源MAC地址对应的翻译地址,则从预先设定的MAC地址池中选择一未被占用的MAC地址作为所述源MAC地址的翻译地址。
6.根据权利要求1所述的方法,其特征在于,所述将修改后的以太网帧转发给与所述目的MAC地址对应的终端设备包括: 所述交换机根据所述目的MAC地址查找目的MAC地址与转发端口间对应关系,得到与所述目的MAC地址相对应的转发端口 ; 所述交换机将修改后的以太网帧通过查找到的转发端口转发给所述目的MAC地址对应的外部设备。
7.根据权利要求1所述的方法,其特征在于,所述交换机解析所述以太网帧,还得到所述以太网帧所携带的用户数据; 相应地,所述将修改后的以太网帧转发给与所述目的MAC地址对应的终端设备包括: 当所述用户数据内包括MAC地址时,确定所述MAC地址的格式是否与所述目的MAC地址的格式相同; 当所述MAC地址的格式与所述目的MAC地址的格式不相同时,所述交换机修改所述MAC地址,使得修改后的MAC地址的格式与所述目的MAC地址的格式相同,之后,将修改后的以太网帧转发给与所述目的MAC地址对应的终端设备。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述MAC地址包括第一类型格式和第二类型格式,所述第一类型格式包括厂家唯一标识及网络接口标识,所述厂家唯一标识用于标识MAC地址的制造商,所述网络接口标识用于标识网络接口制造商;所述第二类型格式至少包括交换机标识及终端标识,所述交换机标识用于标识以太网内的交换机,所述终端标识用于标识与交换机相连的终端设备。
9.一种转发以太网帧的方法,其特征在于,所述方法包括: 当交换机接收到由其他交换机转发的以太网帧时,解析所述以太网帧,得到所述以太网帧所携带的源媒体接入控制MAC地址及目的MAC地址; 所述交换机确定所述目的MAC地址的格式是否与所述交换机相连的终端设备采用的MAC地址的格式相同; 当所述目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式不相同时,所述交换机修改所述目的MAC地址,使得修改后的目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同; 所述交换机将修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
10.根据权利要求9所 述的方法,其特征在于,所述交换机修改所述目的MAC地址,使得修改后的目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同包括: 所述交换机根据所述目的MAC地址查找本地存储的MAC地址转换表,得到所述目的MAC地址的翻译地址,所述目的MAC地址的翻译地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同; 所述交换机将所述目的MAC地址修改为所述翻译地址。
11.根据权利要求10所述的方法,其特征在于,所述交换机根据所述目的MAC地址查找本地存储的MAC地址转换表,得到所述目的MAC地址的翻译地址包括: 当所述MAC地址转换表为动态配置的转换表时,所述交换机根据所述目的MAC地址查找所述MAC地址转换表,确定所述MAC地址转换表内是否存在所述目的MAC地址的翻译地址; 如果所述MAC地址转换表内不存在所述目的MAC地址的翻译地址,则从预先设定的MAC地址池中选择一未被占用的MAC地址作为所述目的MAC地址的翻译地址。
12.根据权利要求9所述的方法,其特征在于,所述交换机将修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备,包括: 所述交换机根据所述修改后的目的MAC地址查找目的MAC地址与转发端口间对应关系,得到与所述修改后的目的MAC地址相对应的转发端口 ; 所述交换机将修改后的以太网帧通过查找到的转发端口转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
13.根据权利要求9所述的方法,其特征在于,所述交换机解析所述以太网帧,还得到所述以太网帧所携带的用户数据; 相应地,所述交换机将修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备包括: 当所述用户数据内包括MAC地址时,确定所述MAC地址的格式是否与所述交换机相连的终端设备采用的MAC地址的格式相同; 当所述MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式不相同时,所述交换机修改所述MAC地址,使得修改后的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同,之后,将修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
14.根据权利要求9至13任一项所述的方法,其特征在于,所述MAC地址包括第一类型格式和第二类型格式,所述第一类型格式包括厂家唯一标识及网络接口标识,所述厂家唯一标识用于标识MAC地址的制造商,所述网络接口标识用于标识网络接口制造商;所述第二类型格式至少包括交换机标识及终端标识,所述交换机标识用于标识以太网内的交换机,所述终端标识用于标识与交换机相连的终端设备。
15.一种交换机,其特征在于,所述交换机包括:解析模块、第一修改模块、第一发送模块、确定模块、第二修改模块及第二发送模块; 所述解析模块,用于当接收到与所述交换机相连的终端设备发送的以太网帧时,解析所述以太网帧,得到所述以太网帧所携带的源媒体接入控制MAC地址及目的MAC地址; 所述第一修改模块,用于当所述目的MAC地址不为单播地址时,修改所述目的MAC地址; 所述第一发送模块,用于将经第一修改模块修改后的以太网帧转发给修改后的目的MAC地址对应的终端设备; 所述确定模块,用于当所述目的MAC地址为单播地址时,确定所述源MAC地址的格式是否与所述目的MAC地址的格式相同; 所述第二修改模块,用于当所述源MAC地址的格式与所述目的MAC地址的格式不相同时,修改所述源MAC地址,使得修改后的源MAC地址的格式与所述目的MAC地址的格式相同; 所述第二发送模块,用于将经所述第二修改模块修改后的以太网帧转发给与所述目的MAC地址对应的终端设备。
16.根据权利要求15所述的交换机,其特征在于,所述第一修改模块,具体用于将所述目的MAC地址修改为一预先指定的单播地址。
17.根据权利要求15所述的交换机,其特征在于,所述第一发送模块包括: 查找单元,用于根据所述修改后的目的MAC地址查找目的MAC地址与转发端口间对应关系,得到所述修改后的目的MAC地址对应的转发端口 ; 发送单元,用于通过查找到的转发端口将所述修改后的以太网帧转发至所述修改后的目的MAC地址对应的终端设备。
18.根据权利要求15所述的交换机,其特征在于,所述第二修改模块包括: 查找单元,用于根据所述源MAC地址查找本地存储的MAC地址转换表,得到所述源MAC地址的翻译地址,所述源MAC地址的翻译地址的格式与所述目的MAC地址的格式相同; 修改单元,用于将所述源MAC地址修改为所述翻译地址。
19.根据权利要求18所述的交换机,其特征在于,所述查找单元,具体用于当所述MAC地址转换表为动态配置的转换表时,根据所述源MAC地址查找所述MAC地址转换表,确定所述MAC地址转换表内是否存在所述源MAC地址的翻译地址,如果所述MAC地址转换表内不存在所述源MAC地址对应的翻译地址,则从预先设定的MAC地址池中选择一未被占用的MAC地址作为所述源MAC地址的翻译地址。
20.根据权利要求15所述的交换机,其特征在于,所述第二发送模块包括: 查找单元,用于根据所述目的MAC地址查找目的MAC地址与转发端口间对应关系,得到与所述目的MAC地址相对应的转发端口 ; 发送单元,用于将修改后的以太网帧通过查找到的转发端口转发给所述目的MAC地址对应的外部设备。
21.根据权利要求15所述的方法,其特征在于,所述解析模块,还用于解析所述以太网帧,得到所述以太网帧所携带的用户数据; 相应地,所述第二发送模块包括: 确定单元,用于当所述用户数据内包括MAC地址时,确定所述MAC地址的格式是否与所述目的MAC地址的格式相同; 修改单元,用于当所述MAC地址的格式与所述目的MAC地址的格式不相同时,修改所述MAC地址,使得修改后的MAC地址的格式与所述目的MAC地址的格式相同; 发送单元,用于将经所述修 改单元修改后的以太网帧转发给与所述目的MAC地址对应的终端设备。
22.—种交换机,其特征在于,所述交换机包括:解析模块、确定模块、修改模块及发送模块; 所述解析模块,用于当接收到由其他交换机转发的以太网帧时,解析所述以太网帧,得到所述以太网帧所携带的源媒体接入控制MAC地址及目的MAC地址; 所述确定模块,用于确定所述目的MAC地址的格式是否与所述交换机相连的终端设备采用的MAC地址的格式相同; 所述修改模块,用于当所述目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式不相同时,修改所述目的MAC地址,使得修改后的目的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同; 所述发送模块,用于将经所述修改模块修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
23.根据权利要求22所述的交换机,其特征在于,所述修改模块包括: 查找单元,用于根据所述目的MAC地址查找本地存储的MAC地址转换表,得到所述目的MAC地址的翻译地址,所述目的MAC地址的翻译地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同; 修改单元,用于将所述目的MAC地址修改为所述翻译地址。
24.根据权利要求23所述的交换机,其特征在于,所述查找单元,具体用于当所述MAC地址转换表为动态配置的转换表时,根据所述目的MAC地址查找所述MAC地址转换表,确定所述MAC地址转换表内是否存在所述目的MAC地址的翻译地址,如果所述MAC地址转换表内不存在所述目的MAC地址的翻译地址,则从预先设定的MAC地址池中选择一未被占用的MAC地址作为所述目的MAC地址的翻译地址。
25.根据权利要求22所述的交换机,其特征在于,所述发送模块包括: 查找单元,用于根据所述修改后的目的MAC地址查找目的MAC地址与转发端口间对应关系,得到与所述修改后的目的MAC地址相对应的转发端口 ; 发送单元,用于将修改后的以太网帧通过查找到的转发端口转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备。
26.根据权利要求22所述的交换机,其特征在于,所述解析模块,还用于解析所述以太网帧,得到所述以太网帧所携带的用户数据; 相应地,所述发送模块包括: 确定单元,用于当所述用户数据内包括MAC地址时,确定所述MAC地址的格式是否与所述交换机相连的终端设备采用的MAC地址的格式相同; 修改单元,用于当所述MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式不相同时,修改所述MAC地址,使得修改后的MAC地址的格式与所述交换机相连的终端设备采用的MAC地址的格式相同; 发送单元,用于将经所述修改单元修改后的以太网帧转发给与所述交换机相连的修改后的目的MAC地址对应的终端设备`。
【文档编号】H04L12/741GK103685027SQ201210330207
【公开日】2014年3月26日 申请日期:2012年9月7日 优先权日:2012年9月7日
【发明者】丘子隽, 别洪涛 申请人:深圳市腾讯计算机系统有限公司