一种报文转发方法及装置与流程

文档序号:17125577发布日期:2019-03-16 00:22阅读:125来源:国知局
一种报文转发方法及装置与流程

本发明涉及网络通信技术领域,尤其涉及一种报文转发方法及装置。



背景技术:

网络系统的开放性使得网络安全变得尤为重要,mac(mediaaccesscontrol,媒体访问控制)认证、网络防火墙等安全防护技术是保证网络安全的常用技术,但是这些技术只能满足一般性的安全需求,难以解决涉密信息系统等重要网络的保护问题。

在vxlan(virtualextensiblelocalareanetwork,虚拟可扩展局域网)的网络中存在高密级别的设备或者网络和低密级别的设备或者网络,为了保证网络的安全,需要确保低密级别的设备或者网络的数据能流向高密级别的设备或者网络,并且高密级别的设备或者网络的数据不能向低密级别的设备或者网络的数据,从而在进行数据单向转发过程中,防止泄密的发生。



技术实现要素:

本发明提供一种报文转发方法及装置,以解决无法实现高密级别的设备或网络和低密级别的设备或网络之间的数据单向转发的问题。

根据本发明实施例的第一方面,提供一种报文转发方法,应用于vxlan组网中的任一vtep设备,所述vxlan组网中高密级别的vtep设备上对应第一类型vxlan隧道创建有缺省vxlan隧道,所述第一类型vxlan隧道为低密级别的vtep设备到所述高密级别的vtep设备的vxlan隧道,所述缺省vxlan隧道的源ip地址为所述高密级别的vtep设备的ip地址,且不存在目的ip地址,所述方法包括:

当接收vxlan报文,且确定所述vxlan报文与缺省vxlan隧道匹配时,对所述vxlan报文进行解封装并转发;

当接收到非vxlan报文,且确定所述非vxlan报文的出端口不存在时,丢弃所述非vxlan报文。

根据本发明实施例的第二方面,提供一种报文转发装置,应用于vxlan组网中的任一vtep设备,所述vxlan组网中高密级别的vtep设备上对应第一类型vxlan隧道创建有缺省vxlan隧道,所述第一类型vxlan隧道为低密级别的vtep设备到所述高密级别的vtep设备的vxlan隧道,所述缺省vxlan隧道的源ip地址为所述高密级别的vtep设备的ip地址,且不存在目的ip地址,所述装置包括:

接收单元,用于接收报文;

确定单元,用于当所述接收单元接收到vxlan报文时,确定所述vxlan报文是否与缺省vxlan隧道匹配;

解封装单元,用于当所述vxlan报文与缺省vxlan隧道匹配时,对所述vxlan报文进行解封装;

转发单元,用于对解封装后的所述vxlan报文进行转发;

所述转发单元,还用于当所述接收单元接收到非vxlan报文,且所述确定单元确定所述非vxlan报文的出端口不存在时,丢弃所述非vxlan报文。

应用本发明公开的技术方案,通过配置缺省vxlan隧道,高密级别的vtep设备和低密级别的vtep设备之间建立vxlan隧道时,低密级别的vtep设备正常建立vxlan隧道,而高密级别的vtep设备对应该vxlan隧道创建缺省vxlan隧道,由于该缺省vxlan隧道不存在目的ip地址,且高密级别的vtep设备无法通过该缺省vxlan隧道向外转发流量,因此,高密级别vtep设备可以通过该缺省vxlan隧道匹配低密级别的vtep设备发送的vxlan报文,并进行处理,而高密级别的vtep设备无法通过vxlan隧道向低密级别的vtep设备发送报文,从而实现了高密级别的vtep设备与低密级别的vtep设备之间的单向传输,保证了数据的安全性。

附图说明

图1是本发明实施例提供的一种报文转发方法的流程示意图;

图2和图3是本发明实施例提供的具体应用场景的架构示意图;

图4是本发明实施例提供的一种报文转发装置的结构示意图;

图5是本发明实施例提供的另一种报文转发装置的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。

请参见图1,为本发明实施例提供的一种报文转发方法的流程示意图,其中,该报文转发方法可以应用于vxlan组网中的任一vtep(vxlantunnelendpoint,vxlan隧道端点)设备(下文中称为目标vtep设备),如图1所示,该报文转发方法可以包括以下步骤:

步骤101、当接收到vxlan报文,且确定该vxlan报文与缺省vxlan隧道匹配时,对vxlan报文进行解封装并转发。

本发明实施例中,为了确保vxlan网络中低密级别的设备或者网络的数据能流向高密级别的设备或者网络,低密级别的vtep设备(连接低密级别的设备或者网络的vtep设备)与高密级别的vtep设备(连接高密级别的设备或者网络的vtep设备)之间建立vxlan隧道时,低密级别的vtep可以正常创建vxlan隧道,而高密级别的vtep设备可以对应该vxlan隧道创建缺省vxlan隧道。

其中,缺省vxlan隧道的源ip地址为该高密级别的vtep设备的ip地址,且不存在目的ip地址,缺省vxlan隧道可以匹配外层目的ip地址(vxlan封装头中的目的ip地址)为该高密级别的vtep设备,源ip地址为任意ip地址的vxlan报文,从而,该高密级别的vtep设备可以接收并处理低密级别的vtep设备的通过vxlan隧道发送给该高密级别的vtep设备的vxlan报文。

相应地,在本发明实施例中,当目标vtep设备接收到vxlan报文时,目标vtep设备可以先确定该vxlan报文的外层目的ip地址是否为本设备(即目标vtep设备)的ip地址。

若是,则目标vtep设备可以进一步根据该vxlan报文的外层源ip地址和目的ip地址(vxlan封装头中的源ip地址和目的ip地址)进行vxlan隧道匹配,以确定是否存在与该vxlan报文的外层源ip地址和目的ip地址均匹配的vxlan隧道。

若不存在,则确定该vxlan报文与缺省vxlan隧道匹配,此时,目标vtep设备可以对该vxlan报文进行解除vxlan封装后转发。

其中,目标vtep设备对该vxlan报文进行解除vxlan封装并转发的具体实现可以参见现有相关方案中的相关描述,本发明实施例在此不做赘述。

需要说明的是,在本发明实施例中,当目标vtep设备确定接收到的vxlan报文的外层目的ip地址不是本设备的ip地址时,目标vtep设备可以根据该vxlan报文查找underlay(下层)的三层转发表项进行转发;或,当目标vtep设备根据vxlan报文的外层源ip地址和目的ip地址匹配到vxlan隧道时,目标vtep设备可以对该vxlan报文解除vxlan封装后转发,其具体实现可以参见相关现有方案中的相关描述,本发明实施例在此不做赘述。

步骤102、当接收到非vxlan报文,且确定该非vxlan报文的出端口不存在时,丢弃该非vxlan报文。

本发明实施例中,当目标vtep设备接收到非vxlan报文时,目标vtep设备可以查询转发表项以确定该非vxlan报文的出端口。

例如,目标vtep设备可以获取所接收到的非vxlan报文中携带的vlan(virtuallocalareanetwork,虚拟局域网)信息以及该非vxlan报文的入端口信息确定对应的ac(attachmentcircuit,接入电路)(本文中称为目标ac),并在该目标ac关联的vsi(virtualswitchinstance,虚拟交换实例)内查找转发表,以确定该非vxlan报文的出端口。

本发明实施例中,为了保证高密级别的设备或者网络的数据不能流向低密级别的设备或者网络,需要保证高密级别的vtep设备不能通过缺省vxlan隧道转发流量。

在本发明其中一个实施例中,缺省vxlan隧道的出方向为不存在的物理端口;

相应地,上述确定该非vxlan报文的出端口不存在,可以包括:

当确定该非vxlan报文的出端口为缺省vxlan隧道时,确定该非vxlan报文的出端口不存在。

在该实施例中,为了保证高密级别的设备或者网络的数据不能流向低密级别的设备或者网络,可以将缺省vxlan隧道的出方向配置为高密级别的vtep设备上不存在的物理端口(即高密级别的vtep设备的物理端口之外的其他物理端口)。

相应地,当目标vtep设备接收到非vxlan报文,并通过查询转发表确定该非vxlan报文的出端口为缺省vxlan隧道时,目标vtep设备可以确定该非vxlan报文的出端口不存在,此时,目标vtep设备可以丢弃该非vxlan报文,从而,可以避免高密级别的设备或网络的数据流向低密级别的设备或网络。

在本发明另一个实施例中,考虑到缺省vxlan隧道不能转发流量,而目标vtep设备根据从低密级别的vtep设备接收到的报文学习到的mac地址的出端口指向缺省vxlan隧道,最终报文需要被丢弃,因此,为了节省硬件资源,可以将缺省vxlan隧道配置为不学习mac地址。

相应地,上述报文转发方法还可以包括:

当接收到vxlan报文,且确定该vxlan报文与缺省vxlan隧道匹配时,拒绝根据vxlan报文进行mac地址学习。

在该实施例中,为了保证高密级别的设备或者网络的数据不能流向低密级别的设备或者网络,可以将缺省vxlan隧道配置为不学习mac地址,进而,当目标vtep设备接收到高密级别的设备或网络发往低密级别的设备或网络的流量时,将无法查询到匹配的转发表项,即查询不到匹配的出端口,从而,目标vtep设备可以丢弃该流量,避免了高密级别的设备或网络的数据流向低密级别的设备或网络。

需要说明的是,在本发明实施例中,将缺省vxlan隧道的出方向设置为不存在的物理端口与将缺省vxlan隧道配置为不学习mac地址也可以同时实施,从而,可以避免由于错误的配置导致流量被定向至缺省vxlan隧道转发,在节省硬件资源的情况下,更好地保证高密级别的设备或网络的数据不能流向低密级别的设备或网络,其具体实现在此不做赘述。

可见,在图1所示方法流程中,通过配置缺省vxlan隧道,高密级别的vtep设备和低密级别的vtep设备之间建立vxlan隧道时,低密级别的vtep设备正常建立vxlan隧道,而高密级别的vtep设备对应该vxlan隧道创建缺省vxlan隧道,由于该缺省vxlan隧道不存在目的ip地址,且高密级别的vtep设备无法通过该缺省vxlan隧道向外转发流量,因此,高密级别vtep设备可以通过该缺省vxlan隧道匹配低密级别的vtep设备发送的vxlan报文,并进行处理,而高密级别的vtep设备无法通过vxlan隧道向低密级别的vtep设备发送报文,从而实现了高密级别的vtep设备与低密级别的vtep设备之间的单向传输(低密级别的vtep设备可以向高密级别的vtep设备传输流量,高密级别的vtep设备不可以向低密级别的vtep设备传输流量),保证了数据的安全性。

为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体应用场景对本发明实施例提供的技术方案进行说明。

请参见图2,为本发明实施例提供的一种具体应用场景的架构示意图,如图2所示,在该应用场景中,server(服务器)110和server120为低密级别的服务器(server110和server120为同密级别的服务器),server130和server140为高密级别的服务器(server130和server140为同密级别的服务器),server110~server140分别通过vtep210~vtep240接入三层核心网络,即vtep210和vtep220为低密级别的vtep设备,vtep230和vtep240为高密级别的vtep设备。

在该实施例中,vtep230和vtep240之间创建vxlan隧道,vtep230上创建vxlan隧道tunnel34(源ip地址为本设备的ip地址,目的ip地址为vtep240的ip地址),vtep240上创建vxlan隧道tunnel43(源ip地址为本设备的ip地址,目的ip地址为vtep设备230的ip地址);其中,tunnel34的源ip地址即为tunnel43的目的ip地址,tunnel34的目的ip地址即为tunnel43的源ip地址。

vtep210和vtep220之间创建vxlan隧道的具体实现与vtep设备230和vtep240之间创建vxlan隧道的实现类似,实施例在此不做赘述。

vtep210和vtep240之间创建vxlan隧道,vtep210上创建vxlan隧道tunnel14(源ip地址为本设备的ip地址,目的ip地址为vtep240的ip地址),vtep240上创建缺省vxlan隧道tunnel0(源ip地址为本设备的ip地址,目的ip地址不存在)。

vtep210和vtep230、vtep220和vtep230以及vtep220和vtep240之间创建vxlan隧道的具体实现与vtep210和vtep240之间创建vxlan隧道的实现类似,该实施例在此不做赘述。

在该实施例中,以vtep210和vtep240之间的流量传输为例。

请参见图3,vtep240上创建vsi,该vsi绑定vxlan_id1,vtep240将server140与vtep24之间的ac4绑定该vsi;vtep1上创建vsi,该vsi绑定vxlan_id1,vtep210将server110与vtep210之间的ac1绑定该vsi,并将tunnel14与该vsi绑定。

server110的流量通过ac1进入vtep210,vtep210根据接收到的流量的vlan信息和入端口信息确定对应的ac(即ac1),并在ac1关联的vsi内查找转发表,确定流量的出端口为tunnel14,从而,vtep210对流量进行vxlan封装(携带vxlan_id1),并将封装后的流量通过tunnel14转发。其中,该vxlan封装的流量的vxlan封装头中源ip地址为vtep210的ip地址,目的ip地址为vtep240的ip地址。

vtep240从ac1接收到vxlan封装的流量时,获取其vxlan封装头中的目的ip地址,发现该目的ip地址为本设备的ip地址,但是本地不存在与该vxlan封装头中的源ip地址和目的ip地址匹配的vxlan隧道(即不存在源ip地址为该vxlan封装头中的目的ip地址,目的ip地址为该vxlan封装头中的源ip地址的vxlan隧道),此时,vtep240可以确定该vxlan封装的流量与缺省vxlan隧道匹配,并对该vxlan封装的流量进行解封装后,根据其中携带的vxlan_id(vxlanid1)确定对应的vsi,并在该vsi中查表从ac转到server140上。

可见,低密级别的网络或设备可以正常转发给高密级别的网络或设备。

当server140的流量通过ac4进入vtep240,vtep240根据接收到的流量的vlan信息和入端口信息确定对应的ac(即ac4),并在ac4关联的vsi内查找转发表。

实施例一

缺省vxlan隧道的出方向为不存在的物理端口(假设缺省vxlan隧道正常学习mac地址)。

则vtep240在ac4关联的vsi内查找转发表,发现出端口为缺省vxlan隧道,由于缺省vxlan隧道的出端口为vtep240上不存在的物理端口,vtep240丢弃该流量。

实施例二

缺省vxlan隧道配置为不学习mac地址。

则vtep240在ac4关联的vsi内查找转发表,发现不存在匹配的表项,即该流量的出端口不存在,vtep240丢弃该流量。

需要说明的是,在本发明实施例中,对于同密级别的vtep设备(如vtep210与vtep220或vtep230与vtep240)之间的交互过程的具体实现可以参见现有相关方案中的相关描述,本发明实施例在此不做赘述。

通过以上描述可以看出,在本发明实施例提供的技术方案中,通过配置缺省vxlan隧道,高密级别的vtep设备和低密级别的vtep设备之间建立vxlan隧道时,低密级别的vtep设备正常建立vxlan隧道,而高密级别的vtep设备对应该vxlan隧道创建缺省vxlan隧道,由于该缺省vxlan隧道不存在目的ip地址,且高密级别的vtep设备无法通过该缺省vxlan隧道向外转发流量,因此,高密级别vtep设备可以通过该缺省vxlan隧道匹配低密级别的vtep设备发送的vxlan报文,并进行处理,而高密级别的vtep设备无法通过vxlan隧道向低密级别的vtep设备发送报文,从而实现了高密级别的vtep设备与低密级别的vtep设备之间的单向传输,保证了数据的安全性。

请参见图4,为本发明实施例提供的一种报文转发装置的结构示意图,其中,该装置可以应用于上述方法实施例中的目标vtep设备,如图4所示,该报文转发装置可以包括:

接收单元410,用于接收报文;

确定单元420,用于当接收单元410接收到vxlan报文时,确定该vxlan报文是否与缺省vxlan隧道匹配;

解封装单元430,用于当该vxlan报文与缺省vxlan隧道匹配时,对该vxlan报文进行解封装;

转发单元440,用于对解封装后的vxlan报文进行转发;

转发单元440,还用于当接收单元410接收到非vxlan报文,且确定单元420确定该非vxlan报文的出端口不存在时,丢弃该非vxlan报文。

在可选实施例中,确定单元420,具体用于当该vxlan报文的vxlan封装头中的目的ip地址为本设备的ip地址,但是不存在与该vxlan封装头中的源ip地址和目的ip地址匹配的vxlan隧道时,确定该vxlan报文与缺省vxlan隧道匹配。

在可选实施例中,确定单元420,还用于当接收单元410接收到非vxlan报文时,根据该非vxlan报文的vlan信息和入端口信息确定对应的目标ac;

确定单元420,还用于在目标ac关联的目标vsi内查找转发表,以确定该非vxlan报文的出端口。

在可选实施例中,缺省vxlan隧道的出方向为不存在的物理端口;

确定单元420,具体用于当确定该非vxlan报文的出端口为缺省vxlan隧道时,确定该非vxlan报文的出端口不存在。

请一并参见图5,为本发明实施例提供的另一种报文转发装置的结构示意图,如图5所示,在图4所示报文转发装置的基础上,图5所示报文转发装置还可以包括:

学习单元450,用于当接收单元410接收到vxlan报文,且确定单元420确定该vxlan报文与缺省vxlan隧道匹配时,拒绝根据该vxlan报文进行mac地址学习。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

由上述实施例可见,通过配置缺省vxlan隧道,高密级别的vtep设备和低密级别的vtep设备之间建立vxlan隧道时,低密级别的vtep设备正常建立vxlan隧道,而高密级别的vtep设备对应该vxlan隧道创建缺省vxlan隧道,由于该缺省vxlan隧道不存在目的ip地址,且高密级别的vtep设备无法通过该缺省vxlan隧道向外转发流量,因此,高密级别vtep设备可以通过该缺省vxlan隧道匹配低密级别的vtep设备发送的vxlan报文,并进行处理,而高密级别的vtep设备无法通过vxlan隧道向低密级别的vtep设备发送报文,从而实现了高密级别的vtep设备与低密级别的vtep设备之间的单向传输,保证了数据的安全性。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

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