一种报文处理方法及交换机与流程

文档序号:15594280发布日期:2018-10-02 19:19阅读:507来源:国知局

本申请涉及通信技术领域,特别是涉及一种报文处理方法及交换机。



背景技术:

vxlan(virtualextensiblelocalareanetwork,可扩展虚拟局域网络)是基于ip(internetprotocal,网络协议)网络、采用“mac(mediaaccesscontrol,媒体访问控制)inudp(userdatagramprotocol,用户数据报协议)”封装形式的二层vpn(virtualprivatenetwork,虚拟专用网)技术。为了实现报文广播,在交换机上,每个vxlan对应一个广播域,以及一个vxlan实例。

为了消除vxlan广播风暴,一般关闭交换机上vxlan实例对应的广播功能。关闭vxlan的广播功能,消除了广播风暴,但是也带来了一些负面影响,一些依赖vxlan广播转发的协议的报文,例如,在交换机上未配置除vxlan广播外的处理流程的airplay(音乐播放器)、bonjour(自动连接)等协议的报文,或由于交换机的cpu(centralprocessingunit,中央处理器)性能的原因,需要硬件进行转发的报文等,将不能正确处理。

目前,为了降低关闭vxlan的广播功能后带来的负面影响,在交换机上配置针对依赖vxlan广播转发的报文的acl(accesscontrollist,访问控制列表),每条acl包括报文特征、vxlan实例和广播域。由于每一vxlan的广播域不同,每一vxlan配置一条或多条acl,以设定不同协议的广播域。交换机接收到报文后,将报文与配置的acl包括的报文特征和vxlan实例匹配,在匹配的acl包括的广播域中,广播报文。

通过配置acl,降低了关闭vxlan的广播功能后带来的负面影响。但是,acl在交换机中属于稀缺资源,大量使用acl,将影响其他业务表项的分配和使用。



技术实现要素:

本申请实施例的目的在于提供一种报文处理方法及交换机,以降低关闭vxlan的广播功能后带来的负面影响,降低对其他业务表项的分配和使用影响。具体技术方案如下:

为实现上述目的,本申请实施例提供了一种报文处理方法,应用于交换机,所述方法包括:

判断接收的报文的目的地址是否为广播地址;

如果是广播地址,则根据预设acl中包括的报文特征,确定所述报文的协议类型是否与预设协议类型匹配;

若匹配,则从所述交换机的芯片中获取所述报文所属vxlan实例对应的目标广播域;

在所述目标广播域中广播所述报文。

为实现上述目的,本申请实施例还提供了一种交换机,其特征在于,包括:

判断模块,用于判断接收的报文的目的地址是否为广播地址;

解析模块,用于在所述判断模块的判断结果为是时,根据预设acl中包括的报文特征,确定所述报文的协议类型是否与预设协议类型匹配;

获取模块,用于在所述解析模块确定所述报文的协议类型与预设协议类型匹配时,从所述交换机的芯片中获取所述报文所属vxlan实例对应的目标广播域;

广播模块,用于在所述目标广播域中广播所述报文。

本申请实施例中,交换机中预设了包括报文特征的acl,并且交换机的芯片中预设了vxlan实例与广播域的对应关系。交换机接收到报文后,就可以确定该报文所属vxlan。若接收报文的目的地址是广播地址,且根据预设acl中包括的报文特征,确定接收报文的协议类型与预设协议类型匹配,则交换机从芯片中获取报文所属vxlan对应的目标广播域,在目标广播域中广播该接收的报文。

可见,本申请实施例中,在实现vxlan的广播时,只需要针对每一协议配置一条包括该协议的报文特征的acl,不需要在每一vxlan实例下针对每一协议均配置一条acl,降低了acl的使用量,在降低了关闭vxlan的广播功能后带来的负面影响的同时,降低了对其他业务表项的分配和使用影响。

当然,实施本申请的任一产品或方法必不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的报文处理方法的第一种流程示意图;

图2为本申请实施例提供的报文处理方法的第二种流程示意图;

图3为本申请实施例提供的交换机的第一种结构示意图;

图4为本申请实施例提供的交换机的第二种结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

目前,为了降低关闭vxlan的广播功能后带来的负面影响,在交换机上在每一vxlan实例下针对每一协议均配置一条acl。例如,当前有两个依赖vxlan广播转发的协议,分别为协议01和协议02,当前还有两个vxlan实例,分别为vxlan01实例和vxlan02实例,则需要配置4条acl,包括:vxlan01实例下针对协议01的acl01和针对协议02的acl02,vxlan02实例下针对协议01的acl03和针对协议02的acl04。

一条acl包括报文特征、vxlan实例和广播域。报文特征为该acl对应的协议的报文特征。交换机将接收的报文与acl中包括的报文特征和vxlan实例匹配,在匹配的acl包括的广播域中广播报文。

通过配置acl,降低了关闭vxlan的广播功能后带来的负面影响。但是,acl在交换机中属于稀缺资源,大量使用acl,将影响其他业务表项的分配和使用。

为了降低关闭vxlan的广播功能后带来的负面影响,降低对其他业务表项的分配和使用影响,本申请实施例提供了一种报文处理方法。参考图1,图1为本申请实施例提供的报文处理方法的第一种流程示意图。该报文处理方法应用于交换机,包括:

步骤101:判断接收的报文的目的地址是否为广播地址。如果是广播地址,则执行步骤102。

步骤102:根据预设acl中包括的报文特征,确定报文的协议类型是否与预设协议类型匹配。若匹配,则执行步骤103。

步骤103:从交换机的芯片中获取报文所属vxlan实例对应的目标广播域。

步骤104:在目标广播域中广播报文。

本申请实施例中,在实现vxlan的广播时,只需要针对每一协议配置一条包括该协议的报文特征的acl,不需要在每一vxlan实例下针对每一协议均配置一条acl,降低了acl的使用量,在降低了关闭vxlan的广播功能后带来的负面影响的同时,降低了对其他业务表项的分配和使用影响。

本申请实施例中,交换机接收到报文,可以从接收的报文中获取到该接收的报文的目的地址、以及该接收的报文所属的vxlan实例等信息。这里,报文的目的地址可以为报文的目的ip(internetprotocol,网络协议)地址和/或目的mac(mediaaccesscontrol,媒体访问控制)地址等。

交换机获取到目的地址后,可根据目的地址的结构,确定获取的报文的目的地址是否为广播地址。例如,交换机从报文中获取到报文的目的mac地址。若目的mac地址为ffff.ffff.ffff,交换机确定获取的报文的目的地址为广播地址。否则,交换机确定获取的报文的目的地址不是广播地址。

若确定接收的报文的目的地址为广播地址,则交换机根据预设acl中包括的报文特征,确定报文的协议类型是否与预设协议类型匹配。

若交换机确定接收的报文的目的地址不广播地址,则交换机可从地址表中查找包括接收报文的目的地址的目的地址表项。例如,交换机从mac地址表中查找包括接收报文的目的mac地址的目的mac地址表项。其中,地址表中多个地址表项,每一地址表项包括地址与目的出端口的对应关系。地址表可以在交换机进行地址学习时获得。

若交换机查找到目的地址表项,则交换机通过目的地址表项中包括的出端口单播该接收的报文。若交换机未查找到目的地址表项,则交换机可确定该接收的报文不是单播的报文,进而确定该接收的报文的协议类型是否与预设协议类型匹配。

在本申请的一个实施例中,交换机可以利用tcam(ternarycontentaddressablememory,三态内容寻址存储器),将接收的报文的特征与预设acl中包括的报文特征匹配,来确定该接收的报文的协议类型是否与预设协议类型匹配。其中,报文特征可以包括以太网类型信息、目的mac地址或tcp/udp(transmissioncontrolprotocol/userdatagramprotocol,传输控制协议/用户数据报协议)端口等信息。

若接收的报文的特征与预设acl中包括的报文特征匹配,则交换机可以将该报文标识为协议报文,确定报文的协议类型与预设协议类型匹配。

一种实现方式中,预设acl的匹配项为报文特征,动作项为标识为协议报文。交换机将接收的报文的特征与预设acl的匹配项进行匹配。若接收的报文的特征与预设acl的匹配项匹配,也就是,接收的报文的特征与预设acl中包括的报文特征匹配,则交换机根据预设acl的动作项,将该报文标识为协议报文,进而确定报文的协议类型与预设协议类型匹配。

交换机的芯片中存储有表示vxlan实例与广播域的对应关系的逻辑,该芯片中的逻辑不占用acl资源。在确定接收的报文的协议类型与预设协议类型匹配后,交换机确定该接收的报文是用户允许进行广播的协议报文。交换机结合获取的该接收的报文所属的vxlan实例,从芯片中获取到该接收的报文所属的vxlan实例对应的目标广播域,进而在目标广播域中广播该报文。

若接收的报文的特征与预设acl中包括的报文特征不匹配,则交换机可以确定报文的协议类型与预设协议类型不匹配。

在本申请的一个实施例中,若接收的报文的协议类型与预设协议类型不匹配,交换机确定该接收的报文不是用户允许进行广播的协议报文,而该报文的目的地址为广播地址,则丢弃该报文。

下面结合图2所示的流程图,对本申请实施例进行说明。若协议11和协议12为允许广播的协议,则交换机中预先配置:包括协议11的报文特征t1的acl11和包括协议12的报文特征t2的acl12。另外,交换机的芯片中存储有vxlan实例11与广播域11的对应关系的逻辑。

步骤201,交换机接收报文m,从报文m中提取目的mac地址1,并确定报文m所属的vxlan实例11。

步骤202,交换机判断目的mac地址1是否为广播地址。

如果是广播地址,则执行步骤203。如果不是广播地址,则执行步骤207。

步骤203,交换机对报文m进行协议解析,将报文m的特征与acl中包括的报文特征匹配。

若报文m的特征与acl11中包括的报文特征11匹配,则将报文m标识为协议报文,确定报文m为允许进行广播的协议的报文,执行步骤204。

若报文m的特征与acl11和acl12中包括的报文特征均不匹配,则确定报文m不是允许广播的协议的报文,执行步骤206。

步骤204,交换机从芯片的逻辑中获取vxlan实例11对应的广播域11。

步骤205,交换机在广播域11中广播报文m。

步骤206,交换机若在步骤203确定报文m的特征与acl11和acl12中包括的报文特征均不匹配,则丢弃报文m。

步骤207,交换机若在步骤202中判定目的mac地址1不是为广播地址,则从mac地址表中查找包括目的mac地址1的目的mac地址表项1。

若未查找到目的mac地址表项1,则执行步骤208。若查找到目的mac地址表项1,则执行步骤203,对报文m进行协议解析。

步骤208,交换机通过目的mac地址表项1包括的出端口1单播报文m。

与上述报文处理方法相同的发明构思,本申请实施例还提供了一种交换机。参考图3,图3为本申请实施例提供的交换机的第一种结构示意图,应用于交换机,包括:

判断模块301,用于判断接收的报文的目的地址是否为广播地址;

解析模块302,用于在判断模块301的判断结果为是时,根据预设acl中包括的报文特征,确定报文的协议类型是否与预设协议类型匹配;

获取模块303,用于在解析模块302确定报文的协议类型与预设协议类型匹配时,从交换机的芯片中获取报文所属vxlan实例对应的目标广播域;

广播模块304,用于在目标广播域中广播报文。

在本申请的一个实施例中,参考图4所示的交换机,基于图3,交换机还可以包括:

查找模块305,用于在判断模块301的判断结果为否时,从地址表项中查找包括报文的目的地址的目的地址表项;地址表项包括地址与出端口的对应关系;

单播模块306,用于在查找模块305查找到目的地址表项时,通过目的地址表项中包括的出端口单播报文。

在本申请的一个实施例中,解析模块302,还可以用于在查找模块305未查找到目的地址表项时,确定报文的协议类型是否与预设协议类型匹配。

在本申请的一个实施例中,解析模块302,具体可以用于:

利用tcam,将报文的特征与预设acl中包括的报文特征匹配;若匹配,则将报文标识为协议报文,确定报文的协议类型与预设协议类型匹配;若不匹配,则确定报文的协议类型与预设协议类型不匹配。

在本申请的一个实施例中,如图4所示的交换机,还可以包括:

丢弃模块307,用于在解析模块302确定报文的协议类型与预设协议类型不匹配时,丢述报文。

本申请实施例中,在实现vxlan的广播时,只需要针对每一协议配置一条包括该协议的报文特征的acl,不需要在每一vxlan实例下针对每一协议均配置一条acl,降低了acl的使用量,在降低了关闭vxlan的广播功能后带来的负面影响的同时,降低了对其他业务表项的分配和使用影响。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于交换机实施例而言,由于其基本相似于报文处理方法实施例,所以描述的比较简单,相关之处参见报文处理方法实施例的部分说明即可。

以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1