CN105637815B - 一种数据转发方法、装置及接入设备 - Google Patents

一种数据转发方法、装置及接入设备 Download PDF

Info

Publication number
CN105637815B
CN105637815B CN201480016981.7A CN201480016981A CN105637815B CN 105637815 B CN105637815 B CN 105637815B CN 201480016981 A CN201480016981 A CN 201480016981A CN 105637815 B CN105637815 B CN 105637815B
Authority
CN
China
Prior art keywords
port
vlan
mark
message
corresponding relationship
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201480016981.7A
Other languages
English (en)
Other versions
CN105637815A (zh
Inventor
普云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Gaohang Intellectual Property Operation Co ltd
Nanjing Advanced Biomaterials And Process Equipment Research Institute Co ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN105637815A publication Critical patent/CN105637815A/zh
Application granted granted Critical
Publication of CN105637815B publication Critical patent/CN105637815B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4645Details on frame tagging
    • H04L12/465Details on frame tagging wherein a single frame includes a plurality of VLAN tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/467Arrangements for supporting untagged frames, e.g. port-based VLANs

Abstract

本发明提供了一种数据转发方法、装置及接入设备,用以解决现有技术中,IVL和SVL地址学习方式对应的转发表不适用于S+C业务进而造成无法转发S+C业务数据的问题,该方法为:首先将接入设备中的所有端口的端口分为两个端口组,接入设备上保存有VLAN、端口标识以及端口标识的所属的端口组之间的对应关系,接入设备接收报文,识别接收报文的端口所属的端口组为第一端口组,并获取报文中VLAN;接入设备利用获取的VLAN以及第二端口组从对应关系中获取对应的端口标识;以及通过获取的端口标识所标识的端口转发报文。这样,转发报文时,可以根据VLAN以及端口组快速查询转发表,确定出端口标识,提高了接入设备的转发效率。

Description

一种数据转发方法、装置及接入设备
技术领域
本发明涉及通信领域,尤其涉及一种数据转发方法、装置及接入设备。
背景技术
交换机是根据接收到的报文的目的介质访问控制(Media Access Control,MAC)地址对报文进行转发的,因此交换机维护了一种记录MAC地址与端口对应关系的转发表来指示交换机进行转发,该转发表称为MAC地址转发表。交换机将接收到的报文的源MAC地址以及接收报文的源端口信息记录到该表中,供后续报文转发使用,这个记录过程称为MAC地址的学习过程。
随着虚拟局域网(Virtual Local Area Network,VLAN)技术的发展,在标准以太网帧中增加了VLAN信息,参阅图1所示,在IEEE802.1Q标准中定义的以太网帧增加的标签头Tag中包含了2个字节的标签协议标识(Tag Protocol Identifier,TPID)和2个字节的标签控制信息(Tag Control Information,TCI)。
TPID表示该以太网帧为添加802.1Q标签的帧。TCI包含帧的控制信息,它包含了下面的一些元素:优先级Priority、规范格式指示符(Canonical Format Indicator,CFI)以及VLAN标识(VLAN Identified,VLAN ID)。其中,VLAN ID为12位的域,指示VLAN标识。每个支持802.1Q协议的交换机发送出来的数据包都携带VLAN ID,以指示本地归属的VLAN。
支持VLAN交换机的数据转发流程与普通交换机的数据转发流程最大的区别在于:报文在支持VLAN交换机内转发时都携带有VLAN Tag,即转发过程中不仅需要根据MAC地址查找出端口外,还需要判断VLAN ID的信息。因此,支持VLAN交换机交换引擎与普通交换机有所不同,参阅图2所示,交换机根据VLAN ID的不同分别根据二层转发表(Layer2Forwarding DataBase,L2FDB)进行业务转发。
目前,支持VLAN的交换机有两种地址学习方式,分别为独立VLAN学习(Independent VLAN Learning,IVL)和共享VLAN学习(Shared VLAN Learning,SVL)。其中,参阅图3所示,在IVL方式下,每个VLAN都有自己的对应的MAC地址表,且每个MAC地址表之间没有影响,一个MAC地址可以被学习到不同的VLAN中,如MAC2,因此对一个用户来说如果属于多个VLAN,那么每个VLAN内的信息都需要重新学习;而在SVL方式下,一个地址表对所有的VLAN均适用,因此,表中的MAC地址不能有重复。
参阅图4所示,IVL地址学习方式的转发流程为:首先,根据接收到的以太网帧内的Tag Header中确定VLAN ID——VLAN 2,然后根据该VLAN ID查询交换机对应的L2FDB表,参阅表1所示,确定查找范围——第一条和第四条表项;然后根据目的地址(DestinationAddress,DA)——MAC D在L2FDB表确定的查找范围中确定出端口——端口2。若未在L2FDB表中找到MAC D对应的表项,则将该以太网帧通过广播的方式在该VLAN 2内所有的端口转发。同时,将该以太网帧的源地址(source address,SA)——MAC A以及源端口——端口1(即接收到该以太网帧的端口)通过老化机制更新至L2FDB表中。
表1IVL地址学习方式对应的L2FDB表
VLAN ID MAC地址 所在端口标识
VLAN 2 MAC A PORT 1
VLAN 3 MAC B PORT 1
VLAN 3 MAC C PORT 2
VLAN 2 MAC D PORT 2
仍以图4为例,SVL地址学习方式的转发流程为:直接确定接收到的以太网帧的DA为MAC D,根据该DA查询交换机对应的L2FDB表,参阅表2所示,确定出端口——端口2;然后,判断出端口的VLAN ID和接收到的以太网帧Tag Header中的VLAN ID是否匹配,匹配则转发该以太网帧,否则丢弃。若未在L2FDB表中找到该MAC D对应的表项,则在该L2FDB表中查找出端口的VLAN ID和该以太网帧Tag Header中的VLAN ID匹配的所有出端口,并在该VLANID对应的所有出端口广播。同时,将该以太网帧的SA——MAC A以及源端口——端口1通过老化机制更新至L2FDB表中。
表2 SVL地址学习方式对应的L2FDB表
MAC地址 所在端口标识
MAC A PORT1
MAC B PORT 1
MAC C PORT 2
MAC D PORT 2
参阅图5所示,在802.1Q的基础上,业界出现了双层VLAN QinQ技术,即一个以太网帧具有两层VLAN标签,内外层标签的Etype相同都是0x8100,或者内外层标签的Etype为可配。使用根据QinQ封装的以太网帧进行数据传输的业务即VLAN cross connect业务,即S+C业务,其中,S为服务提供商虚拟局域网(Service VLAN,SVLAN),即以太网帧的外层标签的VLAN,C为用户侧虚拟局域网(Customer VLAN,CVLAN),即以太网帧的内层标签的VLAN,S+C业务是在两个端口之间的数据转发业务。
由于用于S+C业务的设备对应的转发表需要对应两个端口,其中一个端口为源端口,另一个端口为出端口,显然,现有技术中的两种地址学习方式对应的L2FDB表中每条表项只能规定一个端口,因此,均不适用于S+C业务,无法转发S+C业务数据。
发明内容
本发明实施例提供了一种数据转发方法、装置及接入设备,用以解决现有技术中IVL和SVL地址学习方式对应的转发表不适用于S+C业务进而造成无法转发S+C业务数据的问题。
第一方面,一种数据转发方法,将接入设备上的端口划分成第一端口组和第二端口组,在接入设备上保存有虚拟局域网VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,所述方法包括:
所述接入设备接收报文,识别接收所述报文的端口所属的端口组,为第一端口组;
所述接入设备从所述报文中获取VLAN;
所述接入设备利用获取的VLAN以及第二端口组从所述对应关系中获取对应的端口标识;以及
所述接入设备通过获取的端口标识所标识的端口转发所述报文。
结合第一方面,在第一种可能的实现方式中,所述VLAN包括服务提供商虚拟局域网SVLAN和用户侧VLAN;或者所述VLAN为SVLAN。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,在所述VLAN包括SVLAN和用户侧VLAN时,所述方法还包括:
当所述接入设备利用获取的VLAN以及第二端口组从所述对应关系中未获取对应的端口标识时,利用获取的VLAN中的SVLAN以及第二端口组从所述对应关系中获取对应的至少一个端口标识。
结合第一方面或以上任一种可能的实现方式,在第三种可能的实现方式中,所述接入设备识别接收所述报文的端口所属的端口组为第一端口组,且从所述报文中获取VLAN后,还包括:
所述接入设备根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新,包括:
确定在所述对应关系中是否包含所述VLAN和第一端口组之间的一对应关系;
若是,则基于接收所述报文的端口对应的端口标识更新所述一对应关系中包含的端口标识;
否则,组建一新的对应关系添加至所述对应关系中,所述新的对应关系中包含所述VLAN、第一端口组以及接收所述报文的端口对应的端口标识。
第二方面,一种数据转发装置,将数据转发装置上的端口划分成第一端口组和第二端口组,在所述数据转发装置上保存有虚拟局域网VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,所述装置包括:
接收单元,用于接收报文,识别接收所述报文的端口所属的端口组,为第一端口组;
获取单元,用于从所述报文中获取VLAN;
处理单元,用于利用获取的VLAN以及第二端口组从所述对应关系中获取对应的端口标识;以及通过获取的端口标识所标识的端口转发所述报文。
结合第二方面,在第一种可能的实现方式中,所述VLAN包括服务提供商虚拟局域网SVLAN和用户侧VLAN;或者所述VLAN为SVLAN。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,在所述VLAN包括SVLAN和用户侧VLAN时,所述处理单元还用于:
当所述处理单元利用获取的VLAN以及第二端口组从所述对应关系中未获取对应的端口标识时,利用获取的VLAN中的SVLAN以及第二端口组从所述对应关系中获取对应的至少一个端口标识。
结合第二方面或第二方面的以上任一种可能的实现方式,在第三种可能的实现方式中,所述装置还包括:
更新单元,用于在所述接收单元识别接收所述报文的端口所属的端口组为第一端口组,且所述获取单元从所述报文中获取VLAN后,根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新。
结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述更新单元,具体用于:
确定在所述对应关系中是否包含所述VLAN和第一端口组之间的一对应关系;
若是,则基于接收所述报文的端口对应的端口标识更新所述一对应关系中包含的端口标识;
否则,组建一新的对应关系添加至所述对应关系中,所述新的对应关系中包含所述VLAN、第一端口组以及接收所述报文的端口对应的端口标识。
第三方面,一种接入设备,将所述接入设备上的端口划分成第一端口组和第二端口组,在所述接入设备的存储器中保存有虚拟局域网VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,所述接入设备包括:
收发器,用于接收报文,并在处理器获取到端口标识时,通过获取的端口标识所标识的端口转发所述报文;
处理器,用于识别接收所述报文的端口所属的端口组,为第一端口组,以及从所述报文中获取VLAN;利用获取的VLAN以及第二端口组从所述对应关系中获取对应的端口标识。
结合第三方面,在第一种可能的实现方式中,所述VLAN包括服务提供商虚拟局域网SVLAN和用户侧VLAN;或者所述VLAN为SVLAN。
结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,在所述VLAN包括SVLAN和用户侧VLAN时,所述处理器还用于:
当所述接入设备利用获取的VLAN以及第二端口组从所述对应关系中未获取对应的端口标识时,利用获取的VLAN中的SVLAN以及第二端口组从所述对应关系中获取对应的至少一个端口标识。
结合第三方面或第三方面的以上任一种可能的实现方式,在第三种可能的实现方式中,所述处理器还用于:
在识别接收所述报文的端口所属的端口组为第一端口组,且从所述报文中获取VLAN后,根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新。
结合第三方面的第三种可能的实现方式,在第四种可能的实现方式中,所述处理器在根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新时,具体用于:
确定在所述对应关系中是否包含所述VLAN和第一端口组之间的一对应关系;
若是,则基于接收所述报文的端口对应的端口标识更新所述一对应关系中包含的端口标识;
否则,组建一新的对应关系添加至所述对应关系中,所述新的对应关系中包含所述VLAN、第一端口组以及接收所述报文的端口对应的端口标识。
本发明实施例中,首先将接入设备中的所有端口的端口分为两个端口组,接入设备上保存有VLAN、端口标识以及端口标识的所属的端口组之间的对应关系,接入设备接收报文,识别接收报文的端口所属的端口组为第一端口组,并获取报文中VLAN;接入设备利用获取的VLAN以及第二端口组从对应关系中获取对应的端口标识;以及通过获取的端口标识所标识的端口转发报文,并且根据获取的VLAN、第一端口组以及接收报文的端口所属的端口组,对该对应关系进行更新。其中,将端口分为不同的端口组,在接收到报文后转发报文时,可以根据SVLAN标识+CVLAN标识以及端口组快速查询转发表,确定出端口标识,提高了端口数据转发设备的转发效率,有效的解决了现有技术中存在的IVL和SVL地址学习方式对应的转发表不适用于S+C业务进而造成无法转发S+C业务数据的问题。
附图说明
图1为现有技术中带有IEEE802.1Q标记的以太网帧示意图;
图2为现有技术中支持VLAN的交换机交换引擎示意图;
图3为现有技术中支持VLAN的交换机的两种地址学习方式转发表;
图4为现有技术中以太网帧转发流程示意图;
图5为现有技术中根据QinQ封装的以太网帧示意图;
图6为本发明实施例提供的一种数据转发方法的流程图;
图7为本发明实施例提供的一种以太网转发流程示意图;
图8为本发明实施例提供的一种数据转发装置的结构图;
图9为本发明实施例提供的一种接入设备结构示意图。
具体实施方式
采用本发明技术方案,通过预先将接入设备上的端口分为两个端口组,并保存VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,在接收报文时,识别接收报文的端口所属的端口组,为第一端口组,并从报文中获取VLAN,该接入设备利用获取的VLAN以及第二端口组从该对应关系中获取对应的端口标识;以及通过获取的端口标识所标识的端口转发报文,可以有效的解决现有技术中存在的IVL和SVL地址学习方式对应的转发表不适用于S+C业务进而造成无法转发S+C业务数据的问题。
本发明实施例提供了一种数据转发方法,适用于处理S+C业务的交换机等端口用于数据转发的接入设备,下面结合附图对本发明优选的实施方式进行详细说明。
参阅图6所示,本发明实施例提供的一种数据转发方法,首先,将接入设备上的端口划分成两个端口组,第一端口组和第二端口组,在接入设备上保存有VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,该方法的具体处理流程包括:
步骤601:接入设备接收报文后,识别接收报文的端口所属的端口组,为第一端口组。
在本实施例中,接入设备按照预设的规则将所有端口均划分至不同的端口组中,每个端口组包含至少一个端口。其中预设的规则可以为多种,例如,将指定的端口划分为一个端口组,其余端口划分为另一个端口组;或者,将指定标识区间内的端口划分为一个端口组;或者,根据该接入设备的端口位置等特点进行划分,还可以根据端口的数目以及设备的功能以及特殊业务等将端口划分为不同的端口组。
在本实施例中,将所有端口划分为两个端口组,其中,即若通过其中一个端口组中的端口接收报文,则该报文应该从另一个端口组中的某一个端口转发。例如,对于接入设备,可以将端口划分为网络侧端口组(NNI)和用户侧端口组(UNI),不同的端口组中的端口连接的设备不同,NNI中的端口连接网络侧网线,UNI中的端口连接用户设备网线。
由于接入设备上的端口划分成两个端口组,且接入设备可以识别接收报文的端口,因此,接入设备可以根据接收报文的端口识别接收报文的端口所属的端口组,并将该端口组作为第一端口组。
例如,将PORT1配置划分为NNI端口组,将PORT2、PORT3划分为UNI端口组,即NNI=[PORT1],UNI=[PORT2,PORT3],则若确定接收报文的端口为PORT1,则可以根据上述端口组信息确定接收报文的端口PORT1所属的端口组为NNI,并将NNI记为第一端口组。
步骤602:接入设备从报文中获取VLAN。
具体的,该VLAN包括SVLAN和用户侧VLAN,或者,
该VLAN为SVLAN,即用户侧VLAN标识为空。
S+C业务中的报文是以双层VLAN QinQ技术封装的以太网帧进行数据传输的,参阅图5所示,每个以太网帧都包含外层便签和内层标签,外层标签中的Tag Header中的VLANID即为SVLAN,而内层标签中的Tag Header中的VLAN ID即为用户侧VLAN。因此,接收到以双层VLAN QinQ技术封装的以太网帧后,即可确定该以太网帧中携带的SVLAN,或者SVLAN和用户侧VLAN。
步骤603:接入设备利用获取的VLAN以及第二端口组从接入设备存储的对应关系中获取对应的端口标识。
接入设备上保存有VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,当VALN为SVLAN和用户侧VLAN时,该对应关系为SVLAN、用户侧VLAN、端口标识以及端口标识所标识的端口所属的端口组四者之间的对应关系;当VALN为SVLAN时,该对应关系为SVLAN、端口标识以及端口标识所标识的端口所属的端口组三者之间的对应关系。
根据获取的VLAN以及第二端口组从接入设备存储的对应关系中可以查询到包含该VLAN以及第二端口组、端口标识一对应关系,并获取该一对应关系中的端口标识。
在本实施例中,由于将端口划分为两个端口组,NNI和UNI,且不同的端口组中的端口连接的设备不同,从网络侧发过来的数据流向用户设备,而从用户设备发过来的数据流向网络侧,即因此可以确定若接收报文的端口(源端口)属于第一端口组NNI,则出端口属于第二端口组UNI,同理,若接收报文的端口属于第一端口组UNI,则出端口属于第二端口组UNI。
具体的,当VLAN为SVLAN和用户侧VLAN时,由于接收到以太网帧中携带SVLAN、用户侧VLAN,且接入设备将所有端口划分为两个不同端口组,因此,一个SVLAN和用户侧VLAN组合可以在不同的端口组中对应不同的端口,但是,一个SVLAN和用户侧VLAN组合在一个端口组中只能对应唯一的一个端口。
当VLAN包括SVLAN和用户侧VLAN时,接入设备存储的对应关系参阅表3所示,该对应关系(转发表)中的任意一个表项中需要至少包含SVLAN、用户侧VLAN、端口标识所标识的端口所属的端口组以及所在端口标识,且相同的SVLAN和用户侧VLAN组合可以在不同的端口组中对应不同的端口标识,但是,一个SVLAN和用户侧VLAN组合在一个端口组中只能对应唯一的一个端口标识。
表3 S+C业务对应的转发表
SVLAN 用户侧VLAN 端口组 所在端口标识
SVLAN 2 CVLAN 3 NNI PORT1
SVLAN 2 CVLAN 3 UNI PORT2
SVLAN 2 CVLAN 5 NNI PORT1
SVLAN 2 CVLAN 5 UNI PORT2
具体的,当VLAN包括SVLAN和用户侧VLAN时,接入设备利用获取的VLAN以及第二端口组从接入设备存储的对应关系中获取对应的端口标识,包括:
根据SVLAN、用户侧VLAN、第二端口组在转发表中筛选出对应的表项,并将该表项中的设置的端口标识作为报文的出端口的端口标识。
仍以表3中的转发表为例,若确定接收到的报文SVLAN标识为SVLAN 2,用户侧VLAN标识为CVLAN 3,且接收报文的端口所属的端口组为NNI,首先确定第二端口组即出端口所述的端口组为UNI,然后在转发表中筛选SVLAN标识为SVLAN 2,CLAN标识为CLAN 3,端口组为UNI对应的表项,在表3中,可以确定该表项为第二条表项,因此,将该表项中的设置的端口标识(即所在端口标识)——PORT2作为报文的出端口的端口标识。
在VLAN包括SVLAN和用户侧VLAN时,本发明实施例提供的数据转发方法,还包括:
当接入设备利用获取的VLAN以及第二端口组从所述对应关系中未获取对应的端口标识时,利用获取的VLAN中的SVLAN以及第二端口组从接入设备保存的对应关系中获取对应的至少一个端口标识。
继续以表3的转发表为例,若确定接收的报文SVLAN标识为SVLAN 2,用户侧VLAN标识为CVLAN 4,且源端口所归属的端口组为NNI,首先确定出端口的端口组为UNI,然后在转发表中筛选SVLAN标识为SVLAN 2,CVLAN标识为CVLAN 4,端口组为UNI对应的表项,在表3中,不能筛选出对应的表项,因此,在转发表中筛选SVLAN标识为SVLAN 2,端口组为UNI对应的表项,在表3中,可以确定为第二条和第四条表项,并将这两条表项中的设置的端口标识——PORT2作为报文的出端口的端口标识。
在实际应用场景中,根据指定的SVLAN标识和指定的端口组在转发表中,可以查到至少一条表项,因此,该至少一条表项对应的出端口的端口标识也为至少一个。
本发明实施例通过将端口分为不同的端口组,在接收到报文后转发报文时,可以根据报文中SVLAN+用户侧VLAN以及端口组快速查询转发表,确定出端口标识,提高了接入设备的转发效率。
步骤604:接入设备通过获取的端口标识所标识的端口转发报文。
将报文通过出端口的端口标识对应的出端口进行转发,包括两种方式:
第一种方式,当根据SVLAN标识、CVLAN标识和第二端口组在转发表中筛选出对应的表项时,此时,该表项数目为一条,因此,可以直接通过该表项确定的一个出端口的端口标识,并将报文通过出端口的端口标识对应的出端口进行转发。
第二种方式,当根据SVLAN标识、CVLAN标识和第二端口组在转发表中未筛选出对应的表项时,此时,根据SVLAN标识、第二端口组在转发表中筛选出对应的表项,其中,该表项为至少一条,因此,对应的出端口的端口标识数目也是至少一个,并将该表项中的设置的所有端口标识作为报文的出端口的端口标识,并将报文分别通过至少一个出端口的端口标识分别对应的出端口进行广播转发。
在步骤601和步骤602后,即接入设备识别接收报文的端口所属的端口组为第一端口组,且从报文中获取VLAN后,还包括:
接入设备根据VLAN标识、接收该报文的端口对应的端口标识以及第一端口组对接入设备保存的对应关系进行更新。
其中,对转发表进行更新可以在步骤602后的任何时间进行。可以在步骤603和步骤604之前,或者在步骤603和步骤604之后,或者与步骤603或604同时进行。
具体的,根据VLAN、接收报文的端口对应的端口标识以及第一端口组对该对应关系进行更新,包括:
确定在该对应关系中是否包含该VLAN和第一端口组之间的一对应关系;
若是,则基于接收报文的端口对应的端口标识更新该一对应关系中包含的端口标识;
否则,组建一新的对应关系添加至该对应关系中,该新的对应关系中包含VLAN、第一端口组以及接收报文的端口对应的端口标识。
例如,转发表为表3,接收到的报文的SVLAN标识为SVLAN2、用户侧VLAN标识为CVLAN3、源端口的端口标识PORT1以及该源端口所属的端口组为NNI,在转发表中,可以找得到SVLAN标识为SVLAN2、CVLAN标识为CVLAN3,且该源端口所属的端口组为NNI的表项,即第一条,无论该表项对应的所在端口标识是否与该源端口的端口标识一致,都将源端口的端口标识PORT1对该表项中所在的端口标识进行更新。
又例如,转发表为表3,接收到的报文的SVLAN标识为SVLAN2、用户侧VLAN标识为CVLAN4、源端口的端口标识PORT1以及该源端口所属的端口组为NNI,在转发表中,无法找到SVLAN标识为SVLAN2、CVLAN标识为CVLAN4,且该源端口所属的端口组为NNI的表项,则将SVLAN2、CVLAN4、PORT1、NNI组成新的表项,存储到转发表中。
采用这两种方式对转发表进行实时更新,可以保证在转发表存储的是最新的端口和SVLAN+CVLAN对应关系,既可以保证接入设备在相同的SVLAN+CVLAN但使用新的源端口a进行数据接收后,在源端口a对应的出端口b作为源端口接收到相同的SVLAN+CVLAN的报文时,仍可以通过端口a将该报文进行转发,避免了转发表与最新的端口和SVLAN+CVLAN对应关系不一致,导致报文无法准确发送,降低了端口转发设备的转发效率,进而降低了用户的体验的问题;在转发表中未保存新的源端口和SVLAN+CVLAN对应关系时,可以通过自学习的方式,将该源端口和SVLAN+CVLAN对应关系添加至转发表,降低了数据丢弃的概率,保证端口转发设备的转发效率,提高用户的体验。
参阅图7所示,例如,交换机将端口PORT1、PORT2和PORT3划分为不同的端口组,将PORT1配置划分为端口组NNI,将PORT2、PORT3划分为端口组UNI,该交换机对应的转发表如表3所示,当交换机从端口1接收到SVLAN标识为VLAN 2,CVLAN标识为CVLAN 3的报文后,确定源端口PORT1所归属的端口组为NNI,根据该报文SVLAN 2、CVLAN 3、NNI,在转发表中查找对应的表项,即第一条表项,然后将PORT1更新该表项中的所在端口标识;并根据源端口的端口组NNI,确定出端口的端口标识集群UNI,并在转发表中查找SVLAN 2、CVLAN 3、UNI组对应的表项,即第二条表项,根据第二条表项确定出端口为PORT2,然后将接收的报文通过PORT2转发出去。
基于上述实施例,参阅图8所示,本发明实施例还提供了一种数据转发装置,将数据转发装置上的端口划分成第一端口组和第二端口组,在该数据转发装置上保存有VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,该装置包括:接收单元801、获取单元802、处理单元803,其中,
接收单元801,用于接收报文,识别接收报文的端口所属的端口组,为第一端口组;
获取单元802,用于从该报文中获取VLAN;
处理单元803,用于利用获取的VLAN以及第二端口组从对应关系中获取对应的端口标识;以及通过获取的端口标识所标识的端口转发报文。
可选的,VLAN包括SVLAN和用户侧VLAN;或者该VLAN为SVLAN。
可选的,在该VLAN包括SVLAN和用户侧VLAN时,处理单元803还用于:
当处理单元803利用获取的VLAN以及第二端口组从对应关系中未获取对应的端口标识时,利用获取的VLAN中的SVLAN以及第二端口组从对应关系中获取对应的至少一个端口标识。
可选的,该数据转发装置装置还包括:
更新单元804,用于在接收单元801识别接收报文的端口所属的端口组为第一端口组,且获取单元802从报文中获取VLAN后,根据VLAN、接收报文的端口对应的端口标识以及第一端口组对对应关系进行更新。
可选的,更新单元804,具体用于:
确定在对应关系中是否包含VLAN和第一端口组之间的一对应关系;
若是,则基于接收报文的端口对应的端口标识更新一对应关系中包含的端口标识;
否则,组建一新的对应关系添加至对应关系中,新的对应关系中包含VLAN、第一端口组以及接收报文的端口对应的端口标识。
基于上述实施例,参阅图9所示,本发明实施例还提供了一种接入设备,将该接入设备上的端口划分成第一端口组和第二端口组,在该接入设备中的存储器900中保存有VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,该装置包括:收发器901、处理器902,其中,
收发器901,用于接收报文,并在处理器902获取到端口标识时,通过获取的端口标识所标识的端口转发报文;
处理器902,用于识别接收报文的端口所属的端口组,为第一端口组,以及从报文中获取VLAN;利用获取的VLAN以及第二端口组从对应关系中获取对应的端口标识。
可选的,VLAN包括服务提供商虚拟局域网SVLAN和用户侧VLAN;或者VLAN为SVLAN。
可选的,在VLAN包括SVLAN和用户侧VLAN时,处理器902还用于:
当接入设备利用获取的VLAN以及第二端口组从对应关系中未获取对应的端口标识时,利用获取的VLAN中的SVLAN以及第二端口组从对应关系中获取对应的至少一个端口标识。
可选的,处理器902还用于:
在识别接收报文的端口所属的端口组为第一端口组,且从报文中获取VLAN后,根据VLAN、接收报文的端口对应的端口标识以及第一端口组对对应关系进行更新。
可选的,处理器902在根据VLAN、接收报文的端口对应的端口标识以及第一端口组对对应关系进行更新时,具体用于:
确定在对应关系中是否包含VLAN和第一端口组之间的一对应关系;
若是,则基于接收报文的端口对应的端口标识更新一对应关系中包含的端口标识;
否则,组建一新的对应关系添加至对应关系中,新的对应关系中包含VLAN、第一端口组以及接收报文的端口对应的端口标识。
综上所述,通过本发明实施例中提供的一种数据转发方法、装置及接入设备,该方法首先将接入设备中的所有端口的端口分为两个端口组,接入设备上保存有VLAN、端口标识以及端口标识的所属的端口组之间的对应关系,接入设备接收报文,识别接收报文的端口所属的端口组为第一端口组,并获取报文中VLAN;接入设备利用获取的VLAN以及第二端口组从对应关系中获取对应的端口标识;以及通过获取的端口标识所标识的端口转发报文,并且,根据获取的VLAN、第一端口组以及接收报文的端口所属的端口组,对该对应关系进行更新。其中,将端口分为不同的端口组,在接收到报文后转发报文时,可以根据SVLAN标识+CVLAN标识以及端口组快速查询转发表,确定出端口标识,提高了端口数据转发设备的转发效率,有效的解决了现有技术中存在的IVL和SVL地址学习方式对应的转发表不适用于S+C业务进而造成无法转发S+C业务数据的问题;根据SVLAN标识、CVLAN标识、接收报文的端口对应的端口标识以及接收报文的端口所属的端口组,对转发表进行实时更新,通过自学习的方式,将该源端口和SVLAN+CVLAN对应关系或更新添加至转发表,降低了数据丢弃的概率,保证端口转发设备的转发效率,提高用户的体验。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (12)

1.一种数据转发方法,其特征在于,将接入设备上的端口划分成第一端口组和第二端口组,在接入设备上保存有虚拟局域网VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,所述方法包括:
所述接入设备接收报文,识别接收所述报文的端口所属的端口组,为第一端口组;
所述接入设备从所述报文中获取VLAN;所述VLAN包括服务提供商虚拟局域网SVLAN和用户侧VLAN;或者所述VLAN为SVLAN;
所述接入设备利用获取的VLAN以及第二端口组从所述对应关系中获取对应的端口标识;以及
所述接入设备通过获取的端口标识所标识的端口转发所述报文。
2.根据权利要求1所述的方法,其特征在于,在所述VLAN包括SVLAN和用户侧VLAN时,所述方法还包括:
当所述接入设备利用获取的VLAN以及第二端口组从所述对应关系中未获取对应的端口标识时,利用获取的VLAN中的SVLAN以及第二端口组从所述对应关系中获取对应的至少一个端口标识。
3.根据权利要求1或2所述的方法,其特征在于,所述接入设备识别接收所述报文的端口所属的端口组为第一端口组,且从所述报文中获取VLAN后,还包括:
所述接入设备根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新。
4.根据权利要求3所述的方法,其特征在于,根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新,包括:
确定在所述对应关系中是否包含所述VLAN和第一端口组之间的一对应关系;
若是,则基于接收所述报文的端口对应的端口标识更新所述一对应关系中包含的端口标识;
否则,组建一新的对应关系添加至所述对应关系中,所述新的对应关系中包含所述VLAN、第一端口组以及接收所述报文的端口对应的端口标识。
5.一种数据转发装置,其特征在于,将数据转发装置上的端口划分成第一端口组和第二端口组,在所述数据转发装置上保存有虚拟局域网VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,所述装置包括:
接收单元,用于接收报文,识别接收所述报文的端口所属的端口组,为第一端口组;
获取单元,用于从所述报文中获取VLAN;所述VLAN包括服务提供商虚拟局域网SVLAN和用户侧VLAN;或者所述VLAN为SVLAN;
处理单元,用于利用获取的VLAN以及第二端口组从所述对应关系中获取对应的端口标识;以及通过获取的端口标识所标识的端口转发所述报文。
6.根据权利要求5所述的装置,其特征在于,在所述VLAN包括SVLAN和用户侧VLAN时,所述处理单元还用于:
当所述处理单元利用获取的VLAN以及第二端口组从所述对应关系中未获取对应的端口标识时,利用获取的VLAN中的SVLAN以及第二端口组从所述对应关系中获取对应的至少一个端口标识。
7.根据权利要求5或6所述的装置,其特征在于,所述装置还包括:
更新单元,用于在所述接收单元识别接收所述报文的端口所属的端口组为第一端口组,且所述获取单元从所述报文中获取VLAN后,根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新。
8.根据权利要求7所述的装置,其特征在于,所述更新单元,具体用于:
确定在所述对应关系中是否包含所述VLAN和第一端口组之间的一对应关系;
若是,则基于接收所述报文的端口对应的端口标识更新所述一对应关系中包含的端口标识;
否则,组建一新的对应关系添加至所述对应关系中,所述新的对应关系中包含所述VLAN、第一端口组以及接收所述报文的端口对应的端口标识。
9.一种接入设备,其特征在于,将所述接入设备上的端口划分成第一端口组和第二端口组,在所述接入设备的存储器中保存有虚拟局域网VLAN、端口标识以及端口标识所标识的端口所属的端口组之间的对应关系,所述接入设备包括:
收发器,用于接收报文,并在处理器获取到端口标识时,通过获取的端口标识所标识的端口转发所述报文;
处理器,用于识别接收所述报文的端口所属的端口组,为第一端口组,以及从所述报文中获取VLAN;利用获取的VLAN以及第二端口组从所述对应关系中获取对应的端口标识;所述VLAN包括服务提供商虚拟局域网SVLAN和用户侧VLAN;或者所述VLAN为SVLAN。
10.根据权利要求9所述的接入设备,其特征在于,在所述VLAN包括SVLAN和用户侧VLAN时,所述处理器还用于:
当所述接入设备利用获取的VLAN以及第二端口组从所述对应关系中未获取对应的端口标识时,利用获取的VLAN中的SVLAN以及第二端口组从所述对应关系中获取对应的至少一个端口标识。
11.根据权利要求9或10所述的接入设备,其特征在于,所述处理器还用于:
在识别接收所述报文的端口所属的端口组为第一端口组,且从所述报文中获取VLAN后,根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新。
12.根据权利要求11所述的接入设备,其特征在于,所述处理器在根据所述VLAN、接收所述报文的端口对应的端口标识以及第一端口组对所述对应关系进行更新时,具体用于:
确定在所述对应关系中是否包含所述VLAN和第一端口组之间的一对应关系;
若是,则基于接收所述报文的端口对应的端口标识更新所述一对应关系中包含的端口标识;
否则,组建一新的对应关系添加至所述对应关系中,所述新的对应关系中包含所述VLAN、第一端口组以及接收所述报文的端口对应的端口标识。
CN201480016981.7A 2014-09-10 2014-09-10 一种数据转发方法、装置及接入设备 Expired - Fee Related CN105637815B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/086214 WO2016037326A1 (zh) 2014-09-10 2014-09-10 一种数据转发方法、装置及接入设备

Publications (2)

Publication Number Publication Date
CN105637815A CN105637815A (zh) 2016-06-01
CN105637815B true CN105637815B (zh) 2019-04-16

Family

ID=55458251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480016981.7A Expired - Fee Related CN105637815B (zh) 2014-09-10 2014-09-10 一种数据转发方法、装置及接入设备

Country Status (4)

Country Link
US (1) US20170187622A1 (zh)
EP (1) EP3182655A4 (zh)
CN (1) CN105637815B (zh)
WO (1) WO2016037326A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109728992B (zh) * 2018-11-27 2021-09-28 苏州盛科通信股份有限公司 分配转发域的方法、装置、存储介质及电子装置
US11095558B2 (en) * 2018-12-28 2021-08-17 Alibaba Group Holding Limited ASIC for routing a packet
CN114697160B (zh) * 2020-12-28 2023-05-26 国家计算机网络与信息安全管理中心 一种隧道报文的处理方法和装置
CN114760166B (zh) * 2020-12-28 2023-05-26 国家计算机网络与信息安全管理中心 一种隧道报文的处理方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101022392A (zh) * 2007-03-06 2007-08-22 华为技术有限公司 一种基于虚拟局域网的数据交换方法及设备
CN101610216A (zh) * 2009-07-29 2009-12-23 华为技术有限公司 以太网报文转发方法、装置及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7298705B2 (en) * 2003-02-05 2007-11-20 Broadcom Corporation Fast-path implementation for a double tagging loopback engine
JP4173866B2 (ja) * 2005-02-21 2008-10-29 富士通株式会社 通信装置
CN101335708B (zh) * 2008-08-06 2010-12-15 杭州华三通信技术有限公司 一种报文转发方法和一种运营商边缘汇聚设备
CN101478496B (zh) * 2009-01-21 2011-02-02 杭州华三通信技术有限公司 一种数据报文的转发方法和交换设备
JP5251716B2 (ja) * 2009-05-08 2013-07-31 富士通株式会社 パケット中継装置
CN101820392B (zh) * 2010-03-26 2015-08-12 中兴通讯股份有限公司 一种实现多业务转发的方法和网络处理器
CN102932254B (zh) * 2012-11-19 2015-08-26 杭州华三通信技术有限公司 报文转发方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101022392A (zh) * 2007-03-06 2007-08-22 华为技术有限公司 一种基于虚拟局域网的数据交换方法及设备
CN101610216A (zh) * 2009-07-29 2009-12-23 华为技术有限公司 以太网报文转发方法、装置及系统

Also Published As

Publication number Publication date
EP3182655A1 (en) 2017-06-21
CN105637815A (zh) 2016-06-01
EP3182655A4 (en) 2017-10-18
WO2016037326A1 (zh) 2016-03-17
US20170187622A1 (en) 2017-06-29

Similar Documents

Publication Publication Date Title
US8660120B2 (en) Packet forwarding apparatus and method
EP3447979B1 (en) Switching system and method based on virtual interfaces
CN104380658B (zh) 流分类器、业务路由触发器、报文处理的方法和系统
CN104854819B (zh) 用于vlan接口路由的方法和设备
US8867555B2 (en) Method and system for transparent LAN services in a packet network
CN103944826B (zh) Spbm网络中的表项聚合方法及设备
US9537793B2 (en) Ensuring any-to-any reachability with opportunistic layer 3 forwarding in massive scale data center environments
US9014056B2 (en) Bridging network devices in a hybrid communication network
CN105637815B (zh) 一种数据转发方法、装置及接入设备
CN109729012A (zh) 一种单播报文传输方法和装置
CN109525451A (zh) 一种mpls网络检测的实现方法、装置、网络设备和控制器
US9112728B2 (en) Implementing control planes for hybrid networks
CN105450525B (zh) 用于路由交换设备使用的方法和设备
CN103746914B (zh) 建立私网标签与原始vrf对应关系的方法、装置及系统
CN101110764A (zh) 一种以太网交换机数据帧划分虚拟局域网并转发的方法
CN106850380A (zh) 实现多协议标签交换的三层虚拟专用网络的方法和系统
CN107104900A (zh) 一种组播信息处理方法和装置
CN108156067A (zh) 一种实现基于以太网虚拟专用网络的方法和系统
EP3334105A1 (en) Embedding of context information in networking packets
CN106716870A (zh) 卫星设备处的本地分组交换
CN100591044C (zh) 建立转发过滤表的方法与装置
CN104253751B (zh) 一种基于多角色主机的报文传输方法和设备
CN107086960A (zh) 一种报文传输方法和装置
CN108183851A (zh) 一种报文转发方法及转发设备
CN106789525A (zh) 一种vpls网络中报文转发方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20191216

Address after: 211200 No.1, Xiushan Middle Road, Lishui Economic Development Zone, Nanjing City, Jiangsu Province

Patentee after: NANJING ADVANCED BIOMATERIALS AND PROCESS EQUIPMENT RESEARCH INSTITUTE Co.,Ltd.

Address before: 510000 unit 2414-2416, building, No. five, No. 371, Tianhe District, Guangdong, China

Patentee before: GUANGDONG GAOHANG INTELLECTUAL PROPERTY OPERATION Co.,Ltd.

Effective date of registration: 20191216

Address after: 510000 unit 2414-2416, building, No. five, No. 371, Tianhe District, Guangdong, China

Patentee after: GUANGDONG GAOHANG INTELLECTUAL PROPERTY OPERATION Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190416

Termination date: 20200910