基于软件定义网络控制器的网络ARP完全代理方法及系统技术方案

技术编号:16132314 阅读:34 留言:0更新日期:2017-09-01 22:31
本发明专利技术提供了一种基于软件定义网络控制器的网络ARP完全代理方法及系统,当虚拟机对数据中心物理网络发起ARP寻址时,软件定义网络控制器下发流表,通过流表回复虚拟机,使得虚拟机获得的中心的MAC地址为统一MAC地址,软件定义网络控制器代理虚拟机发起ARP寻找,根据数据中心物理网络的回复信息记录邻居表,根据邻居记录信息,下发修改目标MAC为物理数据中心目标IP对应的MAC地址并转发流表;当数据中心物理网络对云虚拟网络发起寻址时,软件定义网络控制器下发将数据报文的源MAC地址修改成统一MAC地址并转发流表,ARP代理转发处理全部由流表完成,资源消耗低,并且无单点瓶颈,软件定义网络控制器的邻居子系统可以有效抑制ARP广播寻址的频率,大大减轻物理承载网络的压力。

【技术实现步骤摘要】
基于软件定义网络控制器的网络ARP完全代理方法及系统
本专利技术涉及软件
,尤其涉及一种基于软件定义网络控制器的网络ARP完全代理方法及系统。
技术介绍
在云虚拟网络中,数据中心经过云虚拟化后,使得IP地址出现10-30倍的增长。在大规模虚拟网络下,虚拟主机发起的大量ARP(AddressResolutionProtocol,地址解析协议)广播报文会严重影响数据中心承载网络的网络质量,甚至瘫痪整个数据中心网络。为了解决ARP广播风暴问题,云虚拟网络会使用ARP代理的方式抑制ARP广播行为。在业界主流的方法是通过ARP代理进程监听ARP报文并主动回复ARP响应。但是使用ARP代理进程的缺点是ARP代理进程本身容易单点瓶颈,如果ARP代理进程受到ARP攻击容易瘫痪。并且受限于Linuxbridge的邻居子系统学习机制,ARP代理不能完全抑制ARP广播。对于数据中心物理网络对云虚拟网络发起的ARP广播,使用ARP代理进程的方式目前没有有效的解决方案。另外一种方案是通过SDN控制器通过首包机制监听ARP报文并且由SDN控制器主动回复ARP的方式抑制ARP广播。这样的方案缺点是SDN控制器处理性能会成为单点。上诉两个方案都无法实现低消耗无单点的ARP代理,无法抑制数据中心对云虚拟网络发起的ARP广播报文。
技术实现思路
本专利技术的目的在于针对上述现有技术中的ARP代理无法抑制数据中心对云虚拟网络发起的ARP广播报文的问题,提出了一种基于软件定义网络控制器的网络ARP完全代理方法及系统,能够有效抑制ARP广播寻址的频率。一方面,本专利技术提供一种基于软件定义网络控制器的网络ARP完全代理方法,包括:虚拟机对数据中心物理网络发起ARP寻址;软件定义网络控制器下发流表,通过所述流表回复虚拟机,使得所述虚拟机获得的数据中心物理网络的MAC地址为统一MAC地址;虚拟机发起IP通讯报文;软件定义网络控制器接收所述IP通讯报文,并根据所述IP通讯报文确定数据中心物理网络的IP地址;所述软件定义网络控制器获取所述数据中心物理网络的IP地址对应的MAC地址,并记录到邻居表;所述软件定义网络控制器根据所述邻居表下发流表至虚拟交换机,所述流表动作修改目标MAC地址为所述数据中心物理网络的IP地址对应的MAC地址,根据所述流表转发所述IP通讯报文;所述数据中心物理网络接收所述IP通讯报文并进行回复;所述数据中心物理网络发起ARP广播寻址首包;所述软件定义网络控制器根据所述ARP广播判断目标地址是否为云内地址;如果是,则软件定义网络控制器配置反向响应流表,修改所述数据中心物理网络的源MAC地址为统一MAC地址,通过所述反向响应流表进行回复,回复的地址为虚拟机的MAC地址或弹性IP的MAC地址。进一步地,所述邻居表为分布式,用于记录邻居表所属的计算节点;所述邻居表包括记录IP地址、记录IP地址对应的MAC地址、记录上次更新时间以及记录生存时间。进一步地,所述软件定义网络控制器获取所述数据中心物理网络的IP地址对应的MAC地址,并记录到邻居表,包括:软件定义网络控制器根据所述IP地址访问所述数据中心物理网络获取所述数据中心物理网络的IP地址对应的MAC地址,建立所述数据中心物理网络的IP地址与MAC地址的映射关系,并存储至所述邻居表。进一步地,所述软件定义网络控制器根据所述ARP广播判断目标地址是否为云内地址,包括:软件定义网络控制器根据所述ARP广播获取目标地址,将所述目标地址与预先存储的云内虚拟机的地址进行比较,根据比较结果确定所述目标地址是否为云内地址。进一步地,所述统一MAC地址为FE:FF:FF:FF:FF:FF。另一方面,本专利技术还提供一种基于软件定义网络控制器的网络ARP完全代理系统,包括:N个计算节点、软件定义网络控制器以及数据中心物理网络,所述计算节点包括虚拟机和虚拟交换机,其中N为大于或等于2的整数;虚拟机用于对数据中心物理网络发起ARP寻址;软件定义网络控制器用于下发流表,通过所述流表回复虚拟机,使得所述虚拟机获得的数据中心物理网络的MAC地址为统一MAC地址;所述虚拟机还用于发起IP通讯报文;所述软件定义网络控制器还用于接收所述IP通讯报文,并根据所述IP通讯报文确定数据中心物理网络的IP地址,获取所述数据中心物理网络的IP地址对应的MAC地址,并记录到邻居表,根据所述邻居表下发流表至虚拟交换机,所述流表动作修改目标MAC地址为所述数据中心物理网络的IP地址对应的MAC地址,根据所述流表转发所述IP通讯报文;所述数据中心物理网络用于接收所述IP通讯报文并进行回复;所述数据中心物理网络还用于发起ARP广播寻址首包;所述软件定义网络控制器还用于根据所述ARP广播判断目标地址是否为云内地址;如果是,则软件定义网络控制器配置反向响应流表,修改所述数据中心物理网络的源MAC地址为统一MAC地址,通过所述反向响应流表进行回复,回复的地址为虚拟机的MAC地址或弹性IP的MAC地址。进一步地,所述软件定义网络控制器的数量为N个,分别与各计算节点中的虚拟交换机通信连接。本专利技术提供的基于软件定义网络控制器的网络ARP完全代理方法及系统,当虚拟机对物理数据中心发起寻址时,软件定义网络控制器根据邻居记录信息,下发修改目标MAC为物理数据中心目标IP对应的MAC地址并转发流表;当数据中心物理网络对云虚拟网络发起寻址时,软件定义网络控制器下发将数据报文的源MAC地址修改成统一MAC地址并转发流表,ARP代理转发处理全部由流表完成,资源消耗低,并且无单点瓶颈,支持代理云虚拟网络对数据中心物理网络的ARP寻址,支持数据中心物理网络对云虚拟网络的ARP寻址实现ARP完全代理,软件定义网络控制器的邻居子系统可以有效抑制ARP广播寻址的频率,大大减轻物理承载网络的压力。附图说明图1为本专利技术提供的基于软件定义网络控制器的网络ARP完全代理方法一种实施例的流程图。图2为本专利技术提供的基于软件定义网络控制器的网络ARP完全代理系统一种实施例的结构示意图。图3为本专利技术提供的基于软件定义网络控制器的网络ARP完全代理系统另一种实施例的结构示意图。具体实施方式为使本专利技术的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本专利技术进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。实施例一参考图1,本实施例提供一种基于软件定义网络控制器的网络ARP完全代理方法,包括:步骤S101,虚拟机对数据中心物理网络发起ARP寻址;步骤S102,软件定义网络控制器下发流表,通过所述流表回复虚拟机,使得所述虚拟机获得的数据中心物理网络的MAC地址为统一MAC地址;步骤S103,虚拟机发起IP通讯报文;步骤S104,软件定义网络控制器接收所述IP通讯报文,并根据所述IP通讯报文确定数据中心物理网络的IP地址;步骤S105,所述软件定义网络控制器获取所述数据中心物理网络的IP地址对应的MAC地址,并记录到邻居表;步骤S106,所述软件定义网络控制器根据所述邻居表下发流表至虚拟交换机,所述流表动作修改目标MAC地址为所述数据中心物理网络的IP地址对应的MAC地址,根据所述流表转发所述IP通讯报文;步骤S107,所述数据中心物理网络接收所述IP通本文档来自技高网...
基于软件定义网络控制器的网络ARP完全代理方法及系统

【技术保护点】
一种基于软件定义网络控制器的网络ARP完全代理方法,其特征在于,包括:虚拟机对数据中心物理网络发起ARP寻址;软件定义网络控制器下发流表,通过所述流表回复虚拟机,使得所述虚拟机获得的数据中心物理网络的MAC地址为统一MAC地址;虚拟机发起IP通讯报文;软件定义网络控制器接收所述IP通讯报文,并根据所述IP通讯报文确定数据中心物理网络的IP地址;所述软件定义网络控制器获取所述数据中心物理网络的IP地址对应的MAC地址,并记录到邻居表;所述软件定义网络控制器根据所述邻居表下发流表至虚拟交换机,所述流表动作修改目标MAC地址为所述数据中心物理网络的IP地址对应的MAC地址,根据所述流表转发所述IP通讯报文;所述数据中心物理网络接收所述IP通讯报文并进行回复;所述数据中心物理网络发起ARP广播寻址首包;所述软件定义网络控制器根据所述ARP广播判断目标地址是否为云内地址;如果是,则软件定义网络控制器配置反向响应流表,修改所述数据中心物理网络的源MAC地址为统一MAC地址,通过所述反向响应流表进行回复,回复的地址为虚拟机的MAC地址或弹性IP的MAC地址。

【技术特征摘要】
1.一种基于软件定义网络控制器的网络ARP完全代理方法,其特征在于,包括:虚拟机对数据中心物理网络发起ARP寻址;软件定义网络控制器下发流表,通过所述流表回复虚拟机,使得所述虚拟机获得的数据中心物理网络的MAC地址为统一MAC地址;虚拟机发起IP通讯报文;软件定义网络控制器接收所述IP通讯报文,并根据所述IP通讯报文确定数据中心物理网络的IP地址;所述软件定义网络控制器获取所述数据中心物理网络的IP地址对应的MAC地址,并记录到邻居表;所述软件定义网络控制器根据所述邻居表下发流表至虚拟交换机,所述流表动作修改目标MAC地址为所述数据中心物理网络的IP地址对应的MAC地址,根据所述流表转发所述IP通讯报文;所述数据中心物理网络接收所述IP通讯报文并进行回复;所述数据中心物理网络发起ARP广播寻址首包;所述软件定义网络控制器根据所述ARP广播判断目标地址是否为云内地址;如果是,则软件定义网络控制器配置反向响应流表,修改所述数据中心物理网络的源MAC地址为统一MAC地址,通过所述反向响应流表进行回复,回复的地址为虚拟机的MAC地址或弹性IP的MAC地址。2.根据权利要求1所述的基于软件定义网络控制器的网络ARP完全代理方法,其特征在于,所述邻居表为分布式,用于记录邻居表所属的计算节点;所述邻居表包括记录IP地址、记录IP地址对应的MAC地址、记录上次更新时间以及记录生存时间。3.根据权利要求1所述的基于软件定义网络控制器的网络ARP完全代理方法,其特征在于,所述软件定义网络控制器获取所述数据中心物理网络的IP地址对应的MAC地址,并记录到邻居表,包括:软件定义网络控制器根据所述IP地址访问所述数据中心物理网络获取所述数据中心物理网络的IP地址对应的MAC地址,建立所述数据中心物理网络的IP地址与MAC地址的映射关系,并存储至所述邻居表。4.根据权利要求1所述的基于软件定义网络控制器的网络ARP完全代...

【专利技术属性】
技术研发人员:刘忻林冬艺袁龙浩
申请(专利权)人:广州市品高软件股份有限公司
类型:发明
国别省市:广东,44

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

1