一种基于硬件学习的多对一vlan映射的芯片实现方法
【技术领域】
[0001]本发明涉及网络通信技术领域,尤其是涉及一种基于硬件学习的多对一VLAN映射的芯片实现方法。
【背景技术】
[0002]现有技术中,VLAN(Virtual Local Area Network虚拟局域网)是将一个物理的局域网在逻辑上划分成多个广播域,相同VLAN内的主机间可以直接通信,而不同VLAN间不能直接互通,从而将广播报文限制在一个VLAN内。由于不同VLAN间不能直接互访,因此提高了网络安全性。VLAN映射用于实现不同VLAN间的通信。报文从交换机入端口接收进来后,在向外发送本地VLAN的帧时,将帧中的VLAN替换成外部的VLAN。在接收外部VLAN的帧时,将帧中的VLAN替换成本地的VLAN,这样不同VLAN间就实现了互相通信。
[0003]当一个端口上有多个业务同时存在时,可通过VLAN来区分不同的业务。有多个业务同时在UNI(User Networks Interf ace用户网络侧接口)方向和丽I (Network to
Network Interface网络侧接口)方向之间转发。此时是N个VLAN(a,b,c......η)同时映射成同一个VLANs。与普通1:1的VLAN映射相比,从UNI方向向NNI方向时能够通过端口P0RT+VLAN(a,b,c……η)映射得到新的VLANs并进行转发。但是在从NNI方向回UNI时N:1的VLAN映射在NNI方向由于只有一个VLANs但是却要有多个用于区分不同业务的VLAN需要映射,现有技术的方案是将UNI方向的多个VLAN分成M个区间,每个区间包含多个VLAN,从NNI方向回UNI时进行MAC学习和查MAC表,如果查不到MAC,则复制M份,每份再复制多份,复制的数量为区间中的VLAN数,完成数据包在UNI的广播。
[0004]上述提到的N:1的VLAN映射方法,其缺点就是从NNI方向回UNI时会进行报文多次复制广播传输,网络传输效率低。
【发明内容】
[0005]本发明的目的在于克服现有技术的缺陷,提供一种基于硬件学习的多对一VLAN映射的芯片实现方法。
[0006]为实现上述目的,本发明提出如下技术方案:一种基于硬件学习的多对一VLAN映射的芯片实现方法,其包括一个端口,所述一个端口上有多个业务同时存在,N个VLAN(a,b,c……η)同时映射成同一个VLANs,N为大于I的整数,通过VLAN来区分不同的业务,每个业务分配一个单独的逻辑端口,当多个业务同时在UNI方向和NNI方向之间转发,此时多个业务同时通过P0RT+VLAN(a,b,c……η)映射得到新的VLANs并进行转发
[0007]优选地,从UNI转发到NNI时,入方向通过报文携带的不同的VLAN来区分不同的业务,通过P0RT+VLAN映射获取新的VLAN S。
[0008]优选地,当报文从NNI转发到UNI方向时,通过上层为每个业务分配一个逻辑端口,预先创建好出方向的VLAN编辑行为,并将其绑定到相应的逻辑端口上。
[0009]优选地,从NNI到UNI的转发MAC表是之前通过硬件学习得到的,通过mac_da+vlanS查找得到不同的逻辑端口,并通过之前在逻辑端口上绑定的nexthop进行相应的VLAN映射编辑。
[0010]优选地,入方向配置的映射关系表如下:port+vlan(a,b,c......n) — vlan s +
logic_port(a,b,c......n)。
[0011]优选地,所述新的VLAN s用于MAC查找,所述逻辑端口用于硬件学习。
[0012]优选地,所述上层为每个NNI 口也分配了一个逻辑端口。
[0013]优选地,从UNI转发到N NI的报文在入方向编辑完成,N NI的逻辑端口绑定的nexthop只需要是普通的二层单播的nexthop。
[0014]本发明的有益效果是:本发明使用逻辑端口区分不同的业务,并使用逻辑端口进行硬件学习以及绑定进行VLAN映射的Nexthop,实现从NNI方向回UNI时N:1的VLAN映射不需要多次广播,通过本发明可以大大提高网络传输效率。
【附图说明】
[0015]图1是本发明N比I的VLAN映射图。
【具体实施方式】
[0016]下面将结合本发明的附图,对本发明实施例的技术方案进行清楚、完整的描述。
[0017]结合图1所示,本发明所揭示的一种基于硬件学习的多对一VLAN映射的芯片实现方法,该方法使用逻辑端口区分不同的业务,并使用逻辑端口进行硬件学习以及绑定进行VLAN映射的Nexthop,实现从NNI方向回UNI时N:1的VLAN映射不需要多次广播。
[0018]【具体实施方式】如下:
[0019]当一个端口上有多个业务同时存在时,可通过VLAN来区分不同的业务。有多个业务同时在UNI方向和NNI方向之间转发,如图1。此时是N个VLAN(a,b,c……η)同时映射成同一个VLAN S0
[°02°] 首先上层需要为每个NNI分配一个逻辑端口(logic port),并为每个业务分配单独一个逻辑端口,然后通过这些逻辑端口来区分不同的业务。
[0021]步骤一,从UNI转发到NNI时,入方向通过报文携带的不同的VLAN来区分不同的业务,与普通的VLAN映射类似,这时也是通过P0RT+VLAN映射获取新的VLAN s,但是此时为了使NNI返回的报文能够区分不同的业务,还需为每个业务分配一个logic port,所以在入方向配置的映射关系表如下:
[0022]port+vlan(a,b,c......n)^vlan s+logic_port(a,b,c......η)
[0023]其中VLAN s是用于MAC查找的,而logic port则用于硬件学习。
[0024]步骤二,当报文从NNI转发到UNI方向时,通过上层为每个业务分配一个logicport,从而使不同的业务对应了不同的logic port,因为每个业务的VLAN不同,需要根据业务将VLAN s替换为各个不同的VLAN,因此编辑行为不同,此时需要预先创建好出方向的VLAN编辑行为,并将其绑定到相应的logic port上。从而实现不同的logic port有不同的VLAN编辑行为,并将NNI的VLAN s替换为业务各自的VLAN。上层为每个NNI 口也分配了一个logic port,但是从UNI转发到NNI的报文在入方向编辑完成,NNI的logic port绑定的nexthop只需要是普通的二层单播的nexthopg卩可。
[0025]步骤三,从NNI到UNI的转发MAC表是之前通过硬件学习得到的,通过mac_da+vlans查找得到不同的出口 logic port,并通过之前在logic port上绑定的nexthop进行相应的VLAN映射编辑。
[0026]本发明与普通1:1的VLAN映射相比,从UNI方向向NNI方向时能够通过P0RT+VLAN(a,b,c……η)映射得到新的VLAN s并进行转发。但是在从NNI方向回UNI时N:1的VLAN映射在NNI方向由于只有一个VLAN s但是却要有多个用于区分不同业务的VLAN需要映射,本发明提出使用逻辑端口实现,使用逻辑端口区分不同的业务,并使用逻辑端口进行硬件学习以及绑定进行VLAN映射的Nexthop,实现从NNI方向回UNI时N:1的VLAN映射不需要多次广播,通过本发明可以大大提高网络传输效率。
[0027]本发明的技术内容及技术特征已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰,因此,本发明保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。
【主权项】
1.一种基于硬件学习的多对一VLAN映射的芯片实现方法,其包括一个端口,所述一个端口上有多个业务同时存在,其特征在于:N个VLAN(a,b,c……η)同时映射成同一个VLANs,N为大于I的整数,通过VLAN来区分不同的业务,每个业务分配一个单独的逻辑端口,当多个业务同时在UNI方向和NNI方向之间转发,此时多个业务同时通过PORT+VLAN(a,b,c……η)映射得到新的VLAN s并进行转发。2.根据权利要求1所述的基于硬件学习的多对一VLAN映射的芯片实现方法,其特征在于,从UNI转发到NNI时,入方向通过报文携带的不同的VLAN来区分不同的业务,通过PORT+VLAN映射获取新的VLAN S。3.根据权利要求1所述的基于硬件学习的多对一VLAN映射的芯片实现方法,其特征在于,当报文从NNI转发到UNI方向时,通过上层为每个业务分配一个逻辑端口,预先创建好出方向的VLAN编辑行为,并将其绑定到相应的逻辑端口上。4.根据权利要求1所述的基于硬件学习的多对一VLAN映射的芯片实现方法,其特征在于,从NNI到UNI的转发MAC表是之前通过硬件学习得到的,通过mac_da+vlan s查找得到不同的逻辑端口,并通过之前在逻辑端口上绑定的nexthop进行相应的VLAN映射编辑。5.根据权利要求2所述的基于硬件学习的多对一VLAN映射的芯片实现方法,其特征在于,入方向配置的映射关系表如下:port+vlan(a,b,c......n)—vlan s+logic_port(a,b,c......η) ο6.根据权利要求2所述的基于硬件学习的多对一VLAN映射的芯片实现方法,其特征在于,所述新的VLAN s用于MAC查找,所述逻辑端口用于硬件学习。7.根据权利要求3所述的基于硬件学习的多对一VLAN映射的芯片实现方法,其特征在于,所述上层为每个NNI 口也分配了 一个逻辑端口。8.根据权利要求3所述的基于硬件学习的多对一VLAN映射的芯片实现方法,其特征在于,从UNI转发到NNI的报文在入方向编辑完成,NNI的逻辑端口绑定的nexthop只需要是普通的二层单播的nexthop。
【专利摘要】本发明揭示了一种基于硬件学习的多对一VLAN映射的芯片实现方法,通过使用逻辑端口区分不同的业务,并使用逻辑端口进行硬件学习以及绑定进行VLAN映射的Nexthop,实现从NNI方向回UNI时多对一的VLAN映射不需要多次广播,通过本发明可以大大提高网络传输效率。
【IPC分类】H04L12/46, H04L12/24, H04L29/12
【公开号】CN105553812
【申请号】CN201610041654
【发明人】何志川, 蒋华, 赵茂聪
【申请人】盛科网络(苏州)有限公司
【公开日】2016年5月4日
【申请日】2016年1月21日