应用于SDN中的报文转发方法和设备技术

技术编号:15112385 阅读:152 留言:0更新日期:2017-04-09 02:59
本申请提供了应用于SDN中的报文转发方法和设备。本发明专利技术中,SDN控制器并非以VM为单位下发每一VM的流表项至物理网关,而是以VTEP为单位下发每一VM的流表项至物理网关,其中,下发的流表项中的MAC地址不是VM的实际MAC地址,而是VTEP被分配的MAC地址池的聚合MAC地址,物理网关在依据流表项生成MAC转发表项时,就会出现N(N大于1)条流表项生成同一个MAC转发表项,即针对该N条流表项,物理网关上的硬件表项资源就可仅保存一个MAC转发表项即可,节省了物理网关上的硬件表项资源,防止物理网关出现硬件表项资源不足的缺陷。

【技术实现步骤摘要】

本申请涉及网络通信技术,特别涉及应用于软件定义网络(SDN:SoftwareDefinedNetwork)中的报文转发方法和设备。
技术介绍
云平台负责SDN中业务服务器的管理,比如在业务服务器上创建虚拟机(VM:VirtualMachine)、创建虚拟交换机(vSwitch)等。图1示出了云平台管理业务服务器的组网。如图1所示,在云平台业务服务器1上成功创建VM1时,将VM1的IP地址和MAC地址作为VM1的标识上送给SDN控制器(CONTROLLER)。SDN控制器收到VM1的标识后,自动创建与VM1对应的虚端口(vport),并初始化与VM1对应的vport的端口状态为断开状态(down)。VM1在上线时发送免费ARP报文,隧道终端(VTEP:VXLANTunnelEndPoint)1收到免费ARP报文,上送免费ARP报文到SDN控制器。SDN控制器收到来自VM1的免费ARP报文后,更新与VM1对应的vport的端口状态为在线状态(UP),生成一条用于指导VTEP1向VM1发送报文的MAC+IP流表项(即,匹配项为目的MAC和目的IP的流表项,记为流表项1),同时还生成一条用于指导物理网关向VM1发送报文的MAC+IP流表项(记为流表项2)。SDN控制器下发流表项1至VTEP1,下发流表项2至物理网关。当VTEP1收到流表项1后,依据流表项1对发向VM1的VXLAN报文进行VXLAN解封装并发送至VM1。当物理网关收到流表项2后,依据流表项2生成MAC转发表项以指导报文转发,MAC转发表项为硬件表项,其主要包括流表项2中的MAC地址、VXLAN标识(VSI)、VXLAN隧道标识。当物理网关收到发向VM1的VXLAN报文时,物理网关通过依据流表项2生成的MAC转发表项转发报文。为了避免每个VTEP学习其它VTEP接入的VM的标识,所有跨VTEP转发的报文都直接送到物理网关,由物理网关负责转发到对应的VTEP,这就要求SDN控制器以VM为单位下发每一VM的MAC+IP流表项至物理网关,而物理网关收到每一VM的MAC+IP流表项后就会生成对应的MAC转发表项。如上描述,物理网关生成的MAC转发表项为硬件表项,其需要存储在物理网关的硬件表项资源内,而物理网关的硬件表项资源有一定的规格要求,在VM规模大的情况下,SDN控制器以VM为单位下发每一VM的MAC+IP流表项至物理网关,会导致物理网关出现硬件表项资源不足的缺陷。
技术实现思路
本申请提供了应用于SDN中的报文转发方法和设备,可以节省物理网关的硬件表项资源。本申请提供的技术方案包括:一种应用于软件定义网络SDN中的报文转发方法,该方法应用于SDN控制器,包括:将SDN内各个隧道终端VTEP的标识通知给云平台;接收云平台为各个VTEP标识对应的VTEP分配的MAC地址池;不同VTEP分配不同MAC地址池,不同MAC地址池具有不同聚合MAC地址;接收VTEP上传的ARP报文;确定ARP报文的源MAC地址所属的MAC地址池,向物理网关下发与该确定的MAC地址池的聚合MAC地址和所述ARP报文的源IP地址匹配的流表项。一种应用于软件定义网络SDN中的报文转发方法,该方法应用于物理网关,包括:接收SDN控制器下发的流表项;所述流表项至少包括虚拟机VM的IP地址、VM的MAC地址所属MAC地址池的聚合MAC地址、VM接入的VTEP对应的VXLAN封装信息;依据所述流表项生成MAC转发表项,所述MAC转发表项至少包含所述聚合MAC地址、VXLAN封装信息;当接收到二层数据报文时,依据二层数据报文的目的MAC地址在本地匹配MAC转发表项,依据匹配的MAC转发表项中的VXLAN封装信息对二层数据报文进行VXLAN转发。一种应用于软件定义网络SDN中的报文转发方法,该方法应用于云平台,包括:接收SDN控制器通知的SDN内各个隧道终端VTEP的标识;为各个VTEP标识对应的VTEP分配不同的MAC地址池并发送给SDN控制器;不同MAC地址池具有不同的聚合MAC地址;接收业务服务器发送的LLDP报文,从所述LLDP报文中解析出VTEP标识、SDN控制器标识、业务服务器标识,确定已为解析出的VTEP标识对应的VTEP分配的MAC地址池,将确定出的MAC地址池与解析出的VTEP标识、SDN控制器标识、业务服务器标识组织成一个管理表项存储在本地;在第一业务服务器上创建虚拟机VM时,依据第一业务服务器的标识匹配管理表项,从匹配的管理表项中的MAC地址池内选择一个MAC地址分配给VM;当所述VM从第一业务服务器迁移至第二业务服务器时,依据第二业务服务器的标识匹配本地表项,从匹配的表项中的MAC地址池内选择一个MAC地址分配给所述VM。一种应用于软件定义网络SDN中的报文转发设备,该设备应用于SDN控制器,包括:通知单元,用于将SDN内各个隧道终端VTEP的标识通知给云平台;MAC地址池接收单元,用于接收云平台为各个VTEP标识对应的VTEP分配的MAC地址池;不同VTEP分配不同MAC地址池,不同MAC地址池具有不同聚合MAC地址;报文接收单元,用于接收VTEP上传的ARP报文;表项单元,用于确定ARP报文的源MAC地址所属的MAC地址池,向物理网关下发与该确定的MAC地址池的聚合MAC地址和所述ARP报文的源IP地址匹配的流表项。一种应用于软件定义网络SDN中的报文转发设备,该设备应用于物理网关,包括:表项接收单元,用于接收SDN控制器下发的流表项;所述流表项至少包括虚拟机VM的IP地址、VM的MAC地址所属MAC地址池的聚合MAC地址、VM接入的VTEP对应的VXLAN封装信息;表项生成单元,用于依据所述流表项生成MAC转发表项,所述MAC转发表项至少包含所述聚合MAC地址、VXLAN封装信息;报文处理单元,用于当接收到二层数据报文时,依据二层数据报文的目的MAC地址在本地匹配MAC转发表项,依据匹配的MAC转发表项中的VXLAN封装信息对二层数据报文进行VXLAN转发。一种应用于软件定义网络SDN中的报文转发设备,该设备应用于云平台,包括:VTEP标识接收单元,用于接收SDN控制器通知的SDN内各个隧道终端VTEP的标识;MAC地址池分配单元,用于为各个VTEP标识对应的VTEP分配不同的MAC本文档来自技高网
...

【技术保护点】
一种应用于软件定义网络SDN中的报文转发方法,其特征在于,该方法应用于SDN控制器,包括:将SDN内各个隧道终端VTEP的标识通知给云平台;接收云平台为各个VTEP标识对应的VTEP分配的MAC地址池;不同VTEP分配不同MAC地址池,不同MAC地址池具有不同聚合MAC地址;接收VTEP上传的ARP报文;确定ARP报文的源MAC地址所属的MAC地址池,向物理网关下发与该确定的MAC地址池的聚合MAC地址和所述ARP报文的源IP地址匹配的流表项。

【技术特征摘要】
1.一种应用于软件定义网络SDN中的报文转发方法,其特征在于,该方
法应用于SDN控制器,包括:
将SDN内各个隧道终端VTEP的标识通知给云平台;
接收云平台为各个VTEP标识对应的VTEP分配的MAC地址池;不同VTEP
分配不同MAC地址池,不同MAC地址池具有不同聚合MAC地址;
接收VTEP上传的ARP报文;
确定ARP报文的源MAC地址所属的MAC地址池,向物理网关下发与该
确定的MAC地址池的聚合MAC地址和所述ARP报文的源IP地址匹配的流表
项。
2.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
向VTEP下发第一类流表项;
向VTEP下发第二类流表项;
其中,第一类流表项中的第一匹配项为:目的MAC地址为VTEP被分配的
MAC地址池的聚合MAC地址、目的IP地址为VTEP本地接入的目的虚拟机
VM的IP地址;所述第一类流表项中的第一动作为:第一VXLAN转发;第一
VXLAN转发包括:对与第一匹配项匹配的数据报文执行VXLAN解封装,修改
VXLAN解封装后的数据报文的目的MAC地址为目的VM的MAC地址并转发;
第二类流表项中的第二匹配项为:目的IP地址不为VTEP本地接入的VM
的IP地址;第二类流表项中的第二动作为:第二VXLAN转发;第二VXLAN
转发包括:将与第二匹配项匹配的数据报文的源MAC地址修改为VTEP被分配
的MAC地址池的聚合MAC地址,执行VXLAN封装并转发至物理网关。
3.一种应用于软件定义网络SDN中的报文转发方法,其特征在于,该方
法应用于物理网关,包括:
接收SDN控制器下发的流表项;所述流表项至少包括虚拟机VM的IP地
址、VM的MAC地址所属MAC地址池的聚合MAC地址、VM接入的VTEP
对应的VXLAN封装信息;
依据所述流表项生成MAC转发表项,所述MAC转发表项至少包含所述聚
合MAC地址、VXLAN封装信息;
当接收到二层数据报文时,依据二层数据报文的目的MAC地址在本地匹配
MAC转发表项,依据匹配的MAC转发表项中的VXLAN封装信息对二层数据
报文进行VXLAN转发。
4.根据权利要求3所述的方法,其特征在于,该方法进一步包括:
当接收到三层数据报文时,如果三层数据报文的目的MAC地址为本物理网
关的三层网关MAC地址,则修改三层数据报文的源MAC地址为本物理网关的
三层网关MAC地址,并依据所述三层数据报文的目的IP地址匹配流表项,修
改三层数据报文的目的MAC地址为匹配的流表项中的聚合MAC地址,依据修
改后的目的MAC地址在本地匹配MAC转发表项,依据匹配的MAC转发表项
中的VXLAN封装信息对修改后的三层数据报文进行VXLAN转发。
5.根据权利要求3或4所述的方法,其特征在于,该方法进一步包括:
当接收到二层数据报文时,检查本地是否存在与二层数据报文的源MAC地
址匹配的MAC转发表项,如果是,更新该存在的MAC转发表项的老化时间,
如果否,学习与二层数据报文的源MAC地址匹配的MAC转发表项;
当接收到三层数据报文时,检查本地是否存在与三层数据报文的源MAC地
址匹配的MAC转发表项,如果是,更新该存在的MAC转发表项的老化时间,
如果否,学习与三层数据报文的源MAC地址匹配的MAC转发表项。
6.一种应用于软件定义网络SDN中的报文转发方法,其特征在于,该方
法应用于云平台,包括:
接收SDN控制器通知的SDN内各个隧道终端VTEP的标识;
为各个VTEP标识对应的VTEP分配不同的MAC地址池并发送给SDN控
制器;不同MAC地址池具有不同的聚合MAC地址;
接收业务服务器发送的LLDP报文,从所述LLDP报文中解析出VTEP标识、
SDN控制器标识、业务服务器标识,确定已为解析出的VTEP标识对应的VTEP
分配的MAC地址池,将确定出的MAC地址池与解析出的VTEP标识、SDN控

\t制器标识、业务服务器标识组织成一个管理表项存储在本地;
在第一业务服务器上创建虚拟机VM时,依据第一业务服务器的标识匹配
管理表项,从匹配的管理表项中的MAC地址池内选择一个MAC地址分配给
VM;
当所述VM从第一业务服务器迁移至第二业务服务器时,依据第二业务服
务器的标识匹配本地表项,从匹配的表项中的MAC地址池内选择一个MAC地
址分配给所述VM。
7.一种应用于软件定义网络SDN中的报文转发设备,其特征在于,该设
备应用于SDN控制器,包括:<...

【专利技术属性】
技术研发人员:高庆光王海
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1