CN106161113A - 一种Linux系统的QinQ报文处理方法及平台 - Google Patents
一种Linux系统的QinQ报文处理方法及平台 Download PDFInfo
- Publication number
- CN106161113A CN106161113A CN201610793712.2A CN201610793712A CN106161113A CN 106161113 A CN106161113 A CN 106161113A CN 201610793712 A CN201610793712 A CN 201610793712A CN 106161113 A CN106161113 A CN 106161113A
- Authority
- CN
- China
- Prior art keywords
- qinq
- message
- network equipment
- vlanid
- object set
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/0826—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for reduction of network costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0233—Object-oriented techniques, for representation of network management data, e.g. common object request broker architecture [CORBA]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种Linux系统的QinQ报文处理方法,包括:预先分别为每个网络设备创建相对应的配置位图;若需要第一网络设备启动针对第一QinQ报文的报文接收处理流程,则在第一QinQ报文能够在第一网络设备中进行传输的情况下,对QinQ对象集合进行相应地更新;若需要第二网络设备启动报文发送处理流程,则对QinQ对象集合进行查找,若查找到与第二网络设备对应的QinQ对象,则相应地生成第二QinQ报文,并对第二QinQ报文进行相应地发送处理。本申请通过利用配置位图以及QinQ对象集合实现了QinQ功能,而且在这过程中,无需依赖虚拟设备。另外,本申请还相应公开了一种QinQ报文处理平台。
Description
技术领域
本发明涉及网络通信技术领域,特别涉及一种Linux系统的QinQ报文处理方法及平台。
背景技术
Linux因其完善的网络功能和灵活的可定制性,在网络设备和服务器中均有大量使用。在实际环境中,一些Linux设备经常面临QinQ的终结和处理任务。例如在QinQ网络中的PPPoE认证服务器(PPPoE,即PPP over Ethernet,以太网上的点对点协议),需要识别并终结用户报文中的QinQ信息,实现依据VlanId(即Vlan ID,虚拟局域网ID号)的认证策略;再者,DHCP服务器(DHCP,即Dynamic Host Configuration Protocol,动态主机配置协议)有时也需要具有QinQ功能,并依据VlanId作为ip分配的一种因素。
现有技术是通过在以太网设备上新建一个虚拟设备的方式来实现Vlan技术,而要实现QinQ技术则需要在Vlan虚拟设备上再建一个虚拟设备,也即,现有技术需要使用双层虚拟设备来表达QinQ环境中的一个Vlan,这也就意味着,现有技术需要通过大量的双层虚拟设备来实现对QinQ报文的处理。然而,在QinQ环境中,通常会存在成千上万个Vlan,这样不仅需要大量虚拟设备的支持,也会给Linux系统带来较大的负载。
综上所述可以看出,如何在实现QinQ功能的过程中减少对虚拟设备的依赖性是目前有待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种Linux系统的QinQ报文处理方法及平台,在实现QinQ功能的过程中减少了对虚拟设备的依赖性。其具体方案如下:
一种Linux系统的QinQ报文处理方法,包括:
预先分别为每个网络设备创建相对应的配置位图;其中,任一网络设备所对应的配置位图用来指示能够在该网络设备中进行传输的QinQ报文;
若需要第一网络设备启动针对第一QinQ报文的报文接收处理流程,则利用所述第一网络设备所对应的配置位图,判断所述第一QinQ报文是否能够在所述第一网络设备中进行传输,如果是,则依据所述第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新,所述QinQ对象集合为预先创建的用于记录当前网络系统的所有处于有效状态的QinQ对象;其中,任一QinQ对象均相应地包括VlanID编码和设备信息;
若需要第二网络设备启动报文发送处理流程,则利用所述第二网络设备对应的设备信息,对所述QinQ对象集合进行查找,若从所述QinQ对象集合中查找到与所述第二网络设备对应的QinQ对象,则利用该QinQ对象所对应的VlanID编码,相应地生成第二QinQ报文,并利用所述第二网络设备对所述第二QinQ报文进行相应地发送处理。
优选的,任一网络设备所对应的配置位图中包括VlanID编码以及与VlanID编码对应的比特位;其中,若配置位图中任一VlanID编码对应的比特位为1,则表示与该VlanID编码对应的QinQ报文能够在相应的网络设备中进行传输;若配置位图中任一VlanID编码对应的比特位为0,则表示与该VlanID编码对应的QinQ报文不能在相应的网络设备进行传输。
优选的,所述利用所述第一网络设备所对应的配置位图,判断所述第一QinQ报文是否能够在所述第一网络设备中进行传输的过程,包括:
从所述第一QinQ报文中提取出相应的QinQ信息,并利用该QinQ信息,对相应的VlanID编码进行计算,得到第一VlanID编码;
若在所述第一网络设备所对应的配置位图中,与所述第一VlanID编码对应的比特位为1,则判定所述第一QinQ报文能够在所述第一网络设备中进行传输;
若在所述第一网络设备所对应的配置位图中,与所述第一VlanID编码对应的比特位为0,则判定所述第一QinQ报文不能在所述第一网络设备中进行传输。
优选的,任一QinQ对象均具体包括VlanID编码、网络设备索引、设备MAC地址以及用于表示该QinQ对象的剩余有效时间的超时值。
优选的,所述依据所述第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新的过程,包括:
利用所述第一QinQ报文所对应的源MAC地址,并结合第一映射表,对所述QinQ对象集合进行查找;其中,所述第一映射表为用于记录设备MAC地址与QinQ对象之间映射关系的映射表;
若在所述QinQ对象集合中查找到与所述第一QinQ报文对应的QinQ对象,则对该QinQ对象中的超时值进行相应地刷新处理;
若在所述QinQ对象集合中查找不到与所述第一QinQ报文对应的QinQ对象,则在所述QinQ对象集合中相应地新建一个与所述第一QinQ报文对应的QinQ对象,并对所述第一映射表进行相应地更新。
优选的,所述第一映射表的类型为哈希表。
优选的,所述利用所述第二网络设备对应的设备信息,对所述QinQ对象集合进行查找的过程,包括:
依据所述第二网络设备对应的目的MAC地址,并结合所述第一映射表,对所述QinQ对象集合进行查找。
优选的,任一QinQ对象还具体包括该QinQ对象被引用次数。
本发明还公开了一种Linux系统的QinQ报文处理平台,包括:
位图创建模块,用于预先分别为每个网络设备创建相对应的配置位图;其中,任一网络设备所对应的配置位图用来指示能够在该网络设备中进行传输的QinQ报文;
报文接收处理模块,用于当需要第一网络设备启动针对第一QinQ报文的报文接收处理流程,则利用所述第一网络设备所对应的配置位图,判断所述第一QinQ报文是否能够在所述第一网络设备中进行传输,如果是,则依据所述第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新,所述QinQ对象集合为预先创建的用于记录当前网络系统的所有处于有效状态的QinQ对象;其中,任一QinQ对象均相应地包括VlanID编码和设备信息;
报文发送处理模块,用于当需要第二网络设备启动报文发送处理流程,则利用所述第二网络设备对应的设备信息,对所述QinQ对象集合进行查找,若从所述QinQ对象集合中查找到与所述第二网络设备对应的QinQ对象,则利用该QinQ对象所对应的VlanID编码,相应地生成第二QinQ报文,并利用所述第二网络设备对所述第二QinQ报文进行相应地发送处理。
本发明中,Linux系统的QinQ报文处理方法,包括:预先分别为每个网络设备创建相对应的配置位图;其中,任一网络设备所对应的配置位图用来指示能够在该网络设备中进行传输的QinQ报文;若需要第一网络设备启动针对第一QinQ报文的报文接收处理流程,则利用第一网络设备所对应的配置位图,判断第一QinQ报文是否能够在第一网络设备中进行传输,如果是,则依据第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新,QinQ对象集合为预先创建的用于记录当前网络系统的所有处于有效状态的QinQ对象;其中,任一QinQ对象均相应地包括VlanID编码和设备信息;若需要第二网络设备启动报文发送处理流程,则利用第二网络设备对应的设备信息,对QinQ对象集合进行查找,若从QinQ对象集合中查找到与第二网络设备对应的QinQ对象,则利用该QinQ对象所对应的VlanID编码,相应地生成第二QinQ报文,并利用第二网络设备对第二QinQ报文进行相应地发送处理。
可见,本发明预先为每个网络设备创建相应的配置位图,并且创建了QinQ对象集合,用于记录当前网络系统中所有处于有效状态的QinQ对象,这样,在某一网络设备需要启动针对某一QinQ报文的报文接收处理流程时,只需基于相应配置位图上的信息便可判定该网络设备是否能够该QinQ报文进行传输,如果能够,则依据该QinQ报文对QinQ对象集合中相应的QinQ报文进行更新处理即可。相应的,在某一网络设备需要启动报文发送处理流程时,只需利用该网络设备的设备信息,从QinQ对象集合中查找出相应的QinQ对象,然后利用该QinQ对象生成相应的QinQ报文,并对其进行相应地发送处理。综上可见,本发明通过利用配置位图以及QinQ对象集合,实现了QinQ功能,而且在这过程中,无需依赖虚拟设备,从而也降低了网络系统的整体负载。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的一种Linux系统的QinQ报文处理方法流程图;
图2为本发明实施例公开的一种Linux系统的QinQ报文处理平台结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种Linux系统的QinQ报文处理方法,参见图1所示,该方法包括:
步骤S11:预先分别为每个网络设备创建相对应的配置位图;其中,任一网络设备所对应的配置位图用来指示能够在该网络设备中进行传输的QinQ报文。
需要说明的是,本实施例中的网络设备是指以太网设备,如网卡等。本发明实施例预先为每个网络设备创建相应的配置位图,其中,任一网络设备所对应的配置位图用来指示能够在该网络设备中进行传输的QinQ报文,也即,用来指示允许在该网络设备中进行传输的QinQ报文。
步骤S12:若需要第一网络设备启动针对第一QinQ报文的报文接收处理流程,则利用第一网络设备所对应的配置位图,判断第一QinQ报文是否能够在第一网络设备中进行传输,如果是,则依据第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新,QinQ对象集合为预先创建的用于记录当前网络系统的所有处于有效状态的QinQ对象;其中,任一QinQ对象均相应地包括VlanID编码和设备信息。
可以理解的是,上述第一网络设备是指网络系统中的任意一个需要对QinQ报文启动报文接收处理流程的网络设备。
本实施例中,上述QinQ对象集合是预先创建的用于记录当前网络系统的所有处于有效状态的QinQ对象,其中,处于有效状态的QinQ对象是指剩余有效时间大于0的QinQ对象。
本实施例中,任一QinQ对象均包括VlanID编码和设备信息,其中,VlanID编码是指对QinQ报文中的Vlan Tag进行编码后得到的编码信息。其中,QinQ报文中的Vlan Tag包括内层Vlan Tag和外层Vlan Tag。本实施例中,QinQ报文的内层Vlan Tag和外层Vlan Tag均由12比特位构成。
另外,在依据上述第一QinQ报文对上述QinQ对象集合进行相应地更新的同时,需在上述第一网络设备中对上述第一QinQ报文进行传输处理,并且,可以理解的是,在依据上述第一QinQ报文对QinQ对象集合进行相应地更新后,需要解除上述第一QinQ报文中的VlanTag。
步骤S13:若需要第二网络设备启动报文发送处理流程,则利用第二网络设备对应的设备信息,对QinQ对象集合进行查找,若从QinQ对象集合中查找到与第二网络设备对应的QinQ对象,则利用该QinQ对象所对应的VlanID编码,相应地生成第二QinQ报文,并利用第二网络设备对第二QinQ报文进行相应地发送处理。
在上述步骤S13中,若从上述QinQ对象集合中查找出与上述第二网络设备对应的QinQ对象,则利用该QinQ对象所对应的VlanID编码,相应地生成第二QinQ报文,具体的,是利用该QinQ对象所对应的VlanID编码,确定出与该QinQ对象对应的内层Vlan Tag和外层Vlan Tag,然后利用该内层Vlan Tag和外层Vlan Tag,生成上述第二QinQ报文。
另外,需要说明的是,上述步骤S12和S13之间并不存在先后顺序。
可见,本发明实施例预先为每个网络设备创建相应的配置位图,并且创建了QinQ对象集合,用于记录当前网络系统中所有处于有效状态的QinQ对象,这样,在某一网络设备需要启动针对某一QinQ报文的报文接收处理流程时,只需基于相应配置位图上的信息便可判定该网络设备是否能够该QinQ报文进行传输,如果能够,则依据该QinQ报文对QinQ对象集合中相应的QinQ报文进行更新处理即可。相应的,在某一网络设备需要启动报文发送处理流程时,只需利用该网络设备的设备信息,从QinQ对象集合中查找出相应的QinQ对象,然后利用该QinQ对象生成相应的QinQ报文,并对其进行相应地发送处理。综上可见,本发明实施例通过利用配置位图以及QinQ对象集合,实现了QinQ功能,而且在这过程中,无需依赖虚拟设备,从而也降低了网络系统的整体负载。
本发明实施例公开了一种具体的Linux系统的QinQ报文处理方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
上一实施例步骤S11中,需要预先分别为每个网络设备创建相对应的配置位图。本实施例中,任一网络设备所对应的配置位图中包括VlanID编码以及与VlanID编码对应的比特位;其中,若配置位图中任一VlanID编码对应的比特位为1,则表示与该VlanID编码对应的QinQ报文能够在相应的网络设备中进行传输;若配置位图中任一VlanID编码对应的比特位为0,则表示与该VlanID编码对应的QinQ报文不能在相应的网络设备进行传输。
上一实施例步骤S12中,利用第一网络设备所对应的配置位图,判断第一QinQ报文是否能够在第一网络设备中进行传输的过程,具体包括下面步骤S121至S123:
步骤S121:从第一QinQ报文中提取出相应的QinQ信息,并利用该QinQ信息,对相应的VlanID编码进行计算,得到第一VlanID编码;
步骤S122:若在第一网络设备所对应的配置位图中,与第一VlanID编码对应的比特位为1,则判定第一QinQ报文能够在第一网络设备中进行传输;
步骤S123:若在第一网络设备所对应的配置位图中,与第一VlanID编码对应的比特位为0,则判定第一QinQ报文不能在第一网络设备中进行传输。
由上可知,本发明实施例中,当配置位图中的某个比特位为1,则与该比特位对应的QinQ报文能够在相应的网络设备中进行传输,而当配置位图中的某个比特位为0,则与该比特位对应的QinQ报文不能在相应的网络设备中进行传输。当然,根据实际需要,本实施例也可以对配置位图中的比特位的含义进行如下设定:当配置位图中的某个比特位为0,则与该比特位对应的QinQ报文能够在相应的网络设备中进行传输,而当配置位图中的某个比特位为1,则与该比特位对应的QinQ报文不能在相应的网络设备中进行传输。
另外,上一实施例步骤S12中,若判定出第一QinQ报文能够在第一网络设备中进行传输,则需要依据第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新。其中,QinQ对象集合为预先创建的用于记录当前网络系统的所有处于有效状态的QinQ对象。本实施例中,任一QinQ对象均具体包括VlanID编码、网络设备索引、设备MAC地址以及用于表示该QinQ对象的剩余有效时间的超时值。
更具体的,上述依据第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新的过程,具体包括下面步骤S124至126:
步骤S124:利用第一QinQ报文所对应的源MAC地址,并结合第一映射表,对QinQ对象集合进行查找;其中,第一映射表为用于记录设备MAC地址与QinQ对象之间映射关系的映射表;
步骤S125:若在QinQ对象集合中查找到与第一QinQ报文对应的QinQ对象,则对该QinQ对象中的超时值进行相应地刷新处理;
步骤S126:若在QinQ对象集合中查找不到与第一QinQ报文对应的QinQ对象,则在QinQ对象集合中相应地新建一个与第一QinQ报文对应的QinQ对象,并对第一映射表进行相应地更新。
优选的,上述第一映射表的类型为哈希表。
上一实施例步骤S13中,当需要第二网络设备启动报文发送处理流程,则会利用第二网络设备对应的设备信息,对QinQ对象集合进行查找。具体的,上述利用第二网络设备对应的设备信息,对QinQ对象集合进行查找的过程,具体包括:依据第二网络设备对应的目的MAC地址,并结合上述第一映射表,对QinQ对象集合进行查找。
进一步的,本实施例中,上述QinQ对象集合中的任一QinQ对象还可以具体包括该QinQ对象被引用次数。
相应的,本发明实施例还公开了一种Linux系统的QinQ报文处理平台,参见图2所示,该平台包括:
位图创建模块21,用于预先分别为每个网络设备创建相对应的配置位图;其中,任一网络设备所对应的配置位图用来指示能够在该网络设备中进行传输的QinQ报文;
报文接收处理模块22,用于当需要第一网络设备启动针对第一QinQ报文的报文接收处理流程,则利用第一网络设备所对应的配置位图,判断第一QinQ报文是否能够在第一网络设备中进行传输,如果是,则依据第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新,QinQ对象集合为预先创建的用于记录当前网络系统的所有处于有效状态的QinQ对象;其中,任一QinQ对象均相应地包括VlanID编码和设备信息;
报文发送处理模块23,用于当需要第二网络设备启动报文发送处理流程,则利用第二网络设备对应的设备信息,对QinQ对象集合进行查找,若从QinQ对象集合中查找到与第二网络设备对应的QinQ对象,则利用该QinQ对象所对应的VlanID编码,相应地生成第二QinQ报文,并利用第二网络设备对第二QinQ报文进行相应地发送处理。
其中,关于上述各个模块更加详细的工作过程可参考前述实施例中公开的相关内容,在此不再进行赘述。
可见,本发明实施例预先为每个网络设备创建相应的配置位图,并且创建了QinQ对象集合,用于记录当前网络系统中所有处于有效状态的QinQ对象,这样,在某一网络设备需要启动针对某一QinQ报文的报文接收处理流程时,只需基于相应配置位图上的信息便可判定该网络设备是否能够该QinQ报文进行传输,如果能够,则依据该QinQ报文对QinQ对象集合中相应的QinQ报文进行更新处理即可。相应的,在某一网络设备需要启动报文发送处理流程时,只需利用该网络设备的设备信息,从QinQ对象集合中查找出相应的QinQ对象,然后利用该QinQ对象生成相应的QinQ报文,并对其进行相应地发送处理。综上可见,本发明实施例通过利用配置位图以及QinQ对象集合,实现了QinQ功能,而且在这过程中,无需依赖虚拟设备,从而也降低了网络系统的整体负载。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种Linux系统的QinQ报文处理方法及平台进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种Linux系统的QinQ报文处理方法,其特征在于,包括:
预先分别为每个网络设备创建相对应的配置位图;其中,任一网络设备所对应的配置位图用来指示能够在该网络设备中进行传输的QinQ报文;
若需要第一网络设备启动针对第一QinQ报文的报文接收处理流程,则利用所述第一网络设备所对应的配置位图,判断所述第一QinQ报文是否能够在所述第一网络设备中进行传输,如果是,则依据所述第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新,所述QinQ对象集合为预先创建的用于记录当前网络系统的所有处于有效状态的QinQ对象;其中,任一QinQ对象均相应地包括VlanID编码和设备信息;
若需要第二网络设备启动报文发送处理流程,则利用所述第二网络设备对应的设备信息,对所述QinQ对象集合进行查找,若从所述QinQ对象集合中查找到与所述第二网络设备对应的QinQ对象,则利用该QinQ对象所对应的VlanID编码,相应地生成第二QinQ报文,并利用所述第二网络设备对所述第二QinQ报文进行相应地发送处理。
2.根据权利要求1所述的Linux系统的QinQ报文处理方法,其特征在于,任一网络设备所对应的配置位图中包括VlanID编码以及与VlanID编码对应的比特位;其中,若配置位图中任一VlanID编码对应的比特位为1,则表示与该VlanID编码对应的QinQ报文能够在相应的网络设备中进行传输;若配置位图中任一VlanID编码对应的比特位为0,则表示与该VlanID编码对应的QinQ报文不能在相应的网络设备进行传输。
3.根据权利要求2所述的Linux系统的QinQ报文处理方法,其特征在于,所述利用所述第一网络设备所对应的配置位图,判断所述第一QinQ报文是否能够在所述第一网络设备中进行传输的过程,包括:
从所述第一QinQ报文中提取出相应的QinQ信息,并利用该QinQ信息,对相应的VlanID编码进行计算,得到第一VlanID编码;
若在所述第一网络设备所对应的配置位图中,与所述第一VlanID编码对应的比特位为1,则判定所述第一QinQ报文能够在所述第一网络设备中进行传输;
若在所述第一网络设备所对应的配置位图中,与所述第一VlanID编码对应的比特位为0,则判定所述第一QinQ报文不能在所述第一网络设备中进行传输。
4.根据权利要求3所述的Linux系统的QinQ报文处理方法,其特征在于,任一QinQ对象均具体包括VlanID编码、网络设备索引、设备MAC地址以及用于表示该QinQ对象的剩余有效时间的超时值。
5.根据权利要求4所述的Linux系统的QinQ报文处理方法,其特征在于,所述依据所述第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新的过程,包括:
利用所述第一QinQ报文所对应的源MAC地址,并结合第一映射表,对所述QinQ对象集合进行查找;其中,所述第一映射表为用于记录设备MAC地址与QinQ对象之间映射关系的映射表;
若在所述QinQ对象集合中查找到与所述第一QinQ报文对应的QinQ对象,则对该QinQ对象中的超时值进行相应地刷新处理;
若在所述QinQ对象集合中查找不到与所述第一QinQ报文对应的QinQ对象,则在所述QinQ对象集合中相应地新建一个与所述第一QinQ报文对应的QinQ对象,并对所述第一映射表进行相应地更新。
6.根据权利要求5所述的Linux系统的QinQ报文处理方法,其特征在于,所述第一映射表的类型为哈希表。
7.根据权利要求5或6所述的Linux系统的QinQ报文处理方法,其特征在于,所述利用所述第二网络设备对应的设备信息,对所述QinQ对象集合进行查找的过程,包括:
依据所述第二网络设备对应的目的MAC地址,并结合所述第一映射表,对所述QinQ对象集合进行查找。
8.根据权利要求7所述的Linux系统的QinQ报文处理方法,其特征在于,任一QinQ对象还具体包括该QinQ对象被引用次数。
9.一种Linux系统的QinQ报文处理平台,其特征在于,包括:
位图创建模块,用于预先分别为每个网络设备创建相对应的配置位图;其中,任一网络设备所对应的配置位图用来指示能够在该网络设备中进行传输的QinQ报文;
报文接收处理模块,用于当需要第一网络设备启动针对第一QinQ报文的报文接收处理流程,则利用所述第一网络设备所对应的配置位图,判断所述第一QinQ报文是否能够在所述第一网络设备中进行传输,如果是,则依据所述第一QinQ报文,对预先创建的QinQ对象集合进行相应地更新,所述QinQ对象集合为预先创建的用于记录当前网络系统的所有处于有效状态的QinQ对象;其中,任一QinQ对象均相应地包括VlanID编码和设备信息;
报文发送处理模块,用于当需要第二网络设备启动报文发送处理流程,则利用所述第二网络设备对应的设备信息,对所述QinQ对象集合进行查找,若从所述QinQ对象集合中查找到与所述第二网络设备对应的QinQ对象,则利用该QinQ对象所对应的VlanID编码,相应地生成第二QinQ报文,并利用所述第二网络设备对所述第二QinQ报文进行相应地发送处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610793712.2A CN106161113B (zh) | 2016-08-31 | 2016-08-31 | 一种Linux系统的QinQ报文处理方法及平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610793712.2A CN106161113B (zh) | 2016-08-31 | 2016-08-31 | 一种Linux系统的QinQ报文处理方法及平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106161113A true CN106161113A (zh) | 2016-11-23 |
CN106161113B CN106161113B (zh) | 2018-12-18 |
Family
ID=57344544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610793712.2A Active CN106161113B (zh) | 2016-08-31 | 2016-08-31 | 一种Linux系统的QinQ报文处理方法及平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106161113B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111682997A (zh) * | 2020-05-15 | 2020-09-18 | 烽火通信科技股份有限公司 | 基于位图表的以太网vlan段流分类方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1738295A (zh) * | 2005-09-12 | 2006-02-22 | 中兴通讯股份有限公司 | 一种建立智能虚交换链路的方法 |
CN101447945A (zh) * | 2008-12-23 | 2009-06-03 | 华为技术有限公司 | 用户配置信息获取方法和装置 |
US20100106791A1 (en) * | 2007-09-03 | 2010-04-29 | Huawei Technologies Co., Ltd. | PROCESSING METHOD AND DEVICE FOR QinQ TERMINATION CONFIGURATION |
CN103107934A (zh) * | 2013-01-25 | 2013-05-15 | 杭州华三通信技术有限公司 | 一种报文处理控制方法及装置 |
CN103166864A (zh) * | 2013-03-26 | 2013-06-19 | 杭州华三通信技术有限公司 | 一种私网vlan信息管理方法和设备 |
US20140016647A1 (en) * | 2011-03-29 | 2014-01-16 | Hirokazu Yoshida | Network system and vlan tag data acquiring method |
-
2016
- 2016-08-31 CN CN201610793712.2A patent/CN106161113B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1738295A (zh) * | 2005-09-12 | 2006-02-22 | 中兴通讯股份有限公司 | 一种建立智能虚交换链路的方法 |
US20100106791A1 (en) * | 2007-09-03 | 2010-04-29 | Huawei Technologies Co., Ltd. | PROCESSING METHOD AND DEVICE FOR QinQ TERMINATION CONFIGURATION |
CN101447945A (zh) * | 2008-12-23 | 2009-06-03 | 华为技术有限公司 | 用户配置信息获取方法和装置 |
US20140016647A1 (en) * | 2011-03-29 | 2014-01-16 | Hirokazu Yoshida | Network system and vlan tag data acquiring method |
CN103107934A (zh) * | 2013-01-25 | 2013-05-15 | 杭州华三通信技术有限公司 | 一种报文处理控制方法及装置 |
CN103166864A (zh) * | 2013-03-26 | 2013-06-19 | 杭州华三通信技术有限公司 | 一种私网vlan信息管理方法和设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111682997A (zh) * | 2020-05-15 | 2020-09-18 | 烽火通信科技股份有限公司 | 基于位图表的以太网vlan段流分类方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106161113B (zh) | 2018-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220329457A1 (en) | Virtual smart network interface card for edge device | |
CN109040276B (zh) | 一种构建云平台的方法、装置、计算机存储介质及终端 | |
CN104394130B (zh) | 一种多租户虚拟网络隔离方法 | |
CN103167041B (zh) | 一种支持云环境应用集群自动化部署的系统及方法 | |
US9628328B2 (en) | Network controller with integrated resource management capability | |
CN107357660A (zh) | 一种虚拟资源的分配方法及装置 | |
CN108322467B (zh) | 基于ovs的虚拟防火墙配置方法、电子设备及存储介质 | |
CN107959614B (zh) | 一种基于网络命名空间的多租户自定义组网方法、系统 | |
CN101964799B (zh) | 点到网隧道方式下地址冲突的解决方法 | |
EP2725737A1 (en) | Network policy configuration method, management device and network management centre device | |
US11023406B2 (en) | Preservation of port control block information related to logins and states of remote ports during a code load in an embedded port | |
CN102780601A (zh) | 管理虚拟网络的方法与系统 | |
US10680852B2 (en) | Configuration of a managed device | |
US9712455B1 (en) | Determining availability of networking resources prior to migration of a server or domain | |
CN104468791A (zh) | 私有云IaaS平台的构建方法 | |
CN104506403B (zh) | 一种支持多级隔离的虚拟网络管理方法 | |
US9935834B1 (en) | Automated configuration of virtual port channels | |
CN111654399B (zh) | 基于sd-wan的组网方法、装置、设备及存储介质 | |
CN105260377B (zh) | 一种基于分级存储的升级方法和系统 | |
CN105095103A (zh) | 用于云环境下的存储设备管理方法和装置 | |
CN109445912A (zh) | 一种虚拟机的配置方法、配置系统及sdn控制器 | |
CN104618486A (zh) | 一种统一管理集群存储系统多平台用户的方法 | |
CN106909197B (zh) | 一种虚拟化主机时间管理方法及虚拟化主机系统 | |
CN105657078A (zh) | 一种数据传输方法、装置及多层网络管理器 | |
US8612602B2 (en) | Automatic generation of reusable network configuration objects |
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 |