具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
请参见图2,为本发明实施例提供的一种数据传输控制方法的流程示意图,如图2所示,该数据传输控制方法可以包括以下步骤:
需要说明的是,步骤201~步骤202的执行主体可以接入设备或接入设备中的处理器,如CPU(Center Process Unit,中央处理单元)。其中,该接入设备可以包括但不限于路由器或交换机等。为便于描述,以下以步骤201~步骤202的执行主体为接入设备为例进行说明。
步骤201、当确定目标端口存在上行数据流的转发VLAN与Initial VLAN不同的情况时,确定目标端口允许通过的上行数据流的转发VLAN。
本发明实施例中,考虑到现有芯片的VLAN过滤检查技术在接入设备上存在某端口的转发VLAN与Initial VLAN不同的场景中,会增加产生环路的可能,因此,为了避免环路的产生,针对接入设备上存在某端口的转发VLAN与Initial VLAN不同的场景,接入设备需要针对该端口的VLAN过滤检查需要基于转发VLAN进行,而不是基于Initial VLAN。
相应地,在本发明实施例中,当接入设备确定某端口(本文中称为目标端口)存在上行数据流的转发VLAN与Initial VLAN不同的情况时,接入设备需要先确定目标端口允许通过的上行数据流的转发VLAN。
作为一种可选的实施方式,在本发明实施例中,确定目标端口存在上行数据流的转发VLAN与Initial VLAN不同的情况,可以包括:
当确定目标端口部署有VLAN映射业务时,确定目标端口上存在上行数据流的转发VLAN与Initial VLAN不同的情况;
相应地,确定目标端口允许通过的上行数据流的转发VLAN,可以包括:
将目标端口对应的VLAN映射规则中包括的映射后的VLAN确定为目标端口允许通过的上行数据流的转发VLAN。
在该实施方式中,当接入设备确定目标端口部署有VLAN映射业务,如接入设备的目标端口上部署有VXLAN(VirtualExtensible Local AreaNetwork,虚拟可扩展局域网)业务或EVB(Edge Virtual Bridging,边缘虚拟桥)业务时,对于目标端口接收到的上行数据流,接入设备需要根据该上行数据流中携带的VLAN ID(标识)(初始化VLAN的VLAN ID)匹配相应的VLAN映射规则,并当匹配成功时,将上行数据流中的携带的VLAN ID替换为VLAN映射规则中包括的映射后的VLAN ID(转发VLAN的VLANID),即目标端口上存在上行数据流的转发VLAN与Initial VLAN不同的情况。
在该情况下,为了避免环路产生,接入设备需要将VLAN映射规则中包括的映射后的VLAN确定为目标端口允许通过的上行数据流的转发VLAN,而不再基于上行数据流的Initial VLAN对其进行过滤检查。
步骤202、关闭目标端口对应的芯片上默认开启的针对目标端口的VLAN过滤检查功能,并将目标端口设置为允许所确定的转发VLAN的上行数据流通过,并禁止其它VLAN的上行数据流通过。
本发明实施例中,当接入设备确定目标端口上存在上行数据流的转发VLAN与Initial VLAN不同的情况,且确定目标端口允许通过的上行数据路的转发VLAN时,接入设备需要首先关闭目标端口对应的芯片上默认开启的针对目标端口的VLAN过滤检查功能,即关闭目标端口对应的芯片上针对目标端口基于Initial VLAN进行的过滤检查。
然后,接入设备还需要将目标端口设置为允许所确定的转发VLAN的上行数据流通过,并禁止其它VLAN的上行数据流通过。
举例来说,假设接入设备的端口1部署有VLAN映射业务,需要将VLAN100的上行数据流中的VLAN ID替换为VLAN 200,则接入设备可以确定该上行数据流的转发VLAN为VLAN 200,即VLAN映射后的上行数据流需要在VLAN 200中转发,此时,接入设备需要关闭目标端口对应的芯片上默认开启的针对目标端口的VLAN过滤检查功能(该默认开启的针对目标端口的VLAN过滤检查功能为仅允许VLAN 100的上行数据流通过),并将目标端口设置为允许VLAN 200的上行数据流通过,并禁止其它VLAN(VLAN 200之外的其它VLAN)的上行数据流通过。
作为一种可选的实施方式,在本发明实施例中,将目标端口设置为允许所确定的转发VLAN的上行数据流通过,并禁止其它VLAN的上行数据流通过,可以包括:
向目标端口对应的芯片下发第一数据传输控制规则和第二数据传输控制规则,该第一数据传输控制规则用于指示目标端口对应的芯片丢弃目标端口接收到的上行数据流,第二数据传输控制规则用于指示目标端口对应的芯片允许所确定的转发VLAN的上行数据流通过;其中,第一数据传输控制规则的优先级低于第二数据传输控制规则。
在该实施方式中,接入设备关闭目标端口对应的芯片上默认开启的针对目标端口的VLAN过滤检查功能之后,还需要向目标端口对应的芯片下发两条针对目标端口的数据传输控制规则,其中,一条数据传输控制规则用于指示目标端口对应的芯片丢弃目标端口接收到的上行数据流(本文中称为第一数据传输控制规则),另一条用于指示目标端口对应的芯片允许所确定的转发VLAN的上行数据流通过(本文中称为第二数据传输控制规则),第一数据传输控制规则的优先级低于第二数据传输控制规则。
相应地,当接入设备的目标端口接收到上行数据流时,需要先匹配第二数据传输控制规则,并当匹配成功时,允许该上行数据流通过,否则,继续匹配第一数据传输控制规则,丢弃该上行数据流,从而,接入设备的目标端口仅允许所确定的转发VLAN的上行数据流通过,而禁止其它VLAN的上行数据流通过。
进一步地,在本发明实施例中,当接入设备的目标端口部署有VLAN映射业务时,接入设备的目标端口接收到上行数据流的处理流程可以包括以下步骤:
11)、当目标端口接收到目标上行数据流时,根据目标上行数据流中携带的VLAN ID匹配目标端口对应的VLAN映射规则;
12)、若匹配成功,根据VLAN映射规则对目标上行数据流进行VLANID替换,并根据替换后的VLAN ID确定是否允许VLAN ID替换后的目标上行数据流通过;
13)、若匹配不成功,则根据目标上行数据流中携带的VLAN ID确定是否允许目标上行数据流通过。
需要注意的是,在本发明实施例中,目标上行数据流并不特指某一固定的上行数据流,而是可以指代接入设备的目标端口接收到的任一上行数据流。
具体的,在本发明实施例中,若接入设备的目标端口部署有VLAN映射业务,则当接入设备的目标端口接收到目标上行数据流时,接入设备需要先根据该目标上行数据流中携带的VLAN ID匹配相应的VLAN映射规则;
若匹配成功,即匹配到对应的VLAN映射规则,则接入设备需要将该目标上行数据流中的VLAN ID替换为所匹配的VLAN映射规则指示的VLANID,并根据替换后的VLAN ID匹配第二数据传输控制规则,若匹配第二数据传输控制规则成功,则允许该目标上行数据流通过;否则,根据替换后的VLAN ID匹配第一数据传输控制规则,丢弃该目标上行数据流。
若匹配失败,即未匹配到对应的VLAN映射规则,则接入设备可以根据该目标上行数据流的Initial VLAN ID匹配第二数据传输控制规则,若匹配第二数据传输控制规则成功,则允许该目标上行数据流通过;否则,根据InitialVLAN ID匹配第一数据传输控制规则,丢弃该目标上行数据流。
值得说明的是,在本发明实施例中,当目标上行数据流中携带的VLANID(Initial VLAN的VLAN ID)未匹配到对应的VLAN映射规则时,接入设备也可以直接丢弃该目标上行数据流,而不再进行数据传输控制规则的匹配,其具体实现在此不再赘述。
可见,在图2所示的方法流程中,通过当确定目标端口存在转发VLAN与Initial VLAN不同的情况时,确定该目标端口允许通过的上行数据流的转发VLAN,进而关闭目标端口对应的芯片上默认开启的针对目标端口的VLAN过滤检查功能,并将目标端口设置为允许该转发VLAN的上行数据流通过,禁止其它VLAN的上行数据流通过,实现了基于转发VLAN的过滤检查,降低了产生环路的可能性。
为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体的应用场景对本发明实施例提供的技术方案进行更加详细地描述。
以图1所示数据传输场景为例,假设Device A上端口GE1/0/1部署有VLAN映射业务,VLAN映射规则为将端口GE1/0/1上的上行数据流中的VLAN ID由VLAN 100替换为VLAN 200,去往外网的数据流通过VLAN 200转发;端口GE1/0/2上的上行数据流中的VLAN ID保持不变,端口GE1/0/2加入VLAN 100。
基于该数据传输场景,本发明实施例提供的数据传输控制方法实现如下:
1、确定端口GE1/0/1允许通过的上行数据的转发VLAN为VLAN 200;其中,端口GE1/0/1不需要加入VLAN 100;
2、关闭Device A上端口GE1/0/1对应的芯片上默认开启的针对目标端口的VLAN过滤检查功能;
3、Device A向端口GE1/0/1对应的芯片下发第一数据传输控制规则,和第二数据传输控制规则;其中:
1)、第一数据传输控制规则用于指示端口GE1/0/1对应的芯片丢弃端口GE1/0/1接收到的所有上行数据流;
2)、第二数据传输控制规则用于指示端口GE1/0/1允许转发VLAN为VLAN 200的上行数据流通过;其中,第一数据传输控制规则的优先级低于第二数据传输控制规则。
4、对于端口GE1/0/1接收到的上行数据流,Device A先根据该上行数据流中携带的VLAN ID(Initial VLAN的VLAN ID)匹配VLAN映射规则,若匹配VLAN映射规则成功,即Initial VLAN ID为VLAN 100,则Device A将VLAN 100替换为VLAN 200;Device A根据替换后的VLAN ID(即VLAN200)匹配第二数据传输控制规则,确定允许该上行数据流通过;
5、对于端口GE1/0/2接收到的上行数据流按照现有芯片支持的VLAN过滤检查技术进行处理。
可见,在上述流程中,端口GE1/0/1允许VLAN 200的流量通过,端口GE1/0/2允许VLAN 100的流量通过,两个端口被隔离开,避免了环路产生。
通过以上描述可以看出,在本发明实施例提供的技术方案中,通过当确定目标端口存在转发VLAN与Initial VLAN不同的情况时,确定该目标端口允许通过的上行数据流的转发VLAN,进而关闭目标端口对应的芯片上默认开启的针对目标端口的VLAN过滤检查功能,并将目标端口设置为允许该转发VLAN的上行数据流通过,禁止其它VLAN的上行数据流通过,实现了基于转发VLAN的过滤检查,降低了产生环路的可能性。
请参见图3,为本发明实施例提供的一种数据传输控制装置的结构示意图,其中,该装置可以应用于上述方法实施例中的接入设备,如图3所示,该装置可以包括:
确定单元310,用于当确定目标端口存在上行数据流的转发虚拟局域网VLAN与初始化VLAN不同的情况时,确定所述目标端口允许通过的上行数据流的转发VLAN;
控制单元320,用于关闭所述目标端口对应的芯片上默认开启的针对所述目标端口的VLAN过滤检查功能,并将所述目标端口设置为允许所述转发VLAN的上行数据流通过,并禁止其它VLAN的上行数据流通过。
在可选实施例中,所述控制单元320,可以具体用于向所述目标端口对应的芯片下发第一数据传输控制规则和第二数据传输控制规则,所述第一数据传输控制规则用于指示所述目标端口对应的芯片丢弃所述目标端口接收到的上行数据流,所述第二数据传输控制规则用于指示所述目标端口对应的芯片允许所述转发VLAN的上行数据流通过;其中,所述第一数据传输控制规则的优先级低于所述第二数据传输控制规则。
在可选实施例中,所述确定单元310,可以具体用于当确定目标端口部署有VLAN映射业务时,确定目标端口存在上行数据流的转发VLAN与初始化VLAN不同的情况;将所述目标端口对应的VLAN映射规则中包括的映射后的VLAN确定为所述目标端口允许通过的上行数据流的转发VLAN。
请一并参阅图4,为本发明实施例提供的另一种数据传输控制装置的结构示意图,该实施例在前述图3所示实施例的基础上,图4所示的数据传输控制装置还可以包括:
接收单元330,用于接收目标上行数据流;
匹配单元340,用于当所述接收单元330从所述目标端口接收到目标上行数据流时,根据所述目标上行数据流中携带的VLAN标识ID匹配所述目标端口对应的VLAN映射规则;
映射单元350,用于若匹配成功,根据所述VLAN映射规则对所述目标上行数据流进行VLAN ID替换;
所述控制单元320,还用于根据替换后的VLAN ID确定是否允许VLANID替换后的目标上行数据流通过。
在可选实施例中,所述控制单元320,还可以用于若匹配不成功,则根据所述目标上行数据流中携带的VLAN ID确定是否允许所述目标上行数据流通过。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,通过当确定目标端口存在转发VLAN与InitialVLAN不同的情况时,确定该目标端口允许通过的上行数据流的转发VLAN,进而关闭目标端口对应的芯片上默认开启的针对目标端口的VLAN过滤检查功能,并将目标端口设置为允许该转发VLAN的上行数据流通过,禁止其它VLAN的上行数据流通过,实现了基于转发VLAN的过滤检查,降低了产生环路的可能性。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。