用于无缝漫游的软件定义网络中的自动隧道制造技术

技术编号:13186139 阅读:67 留言:0更新日期:2016-05-11 16:36
软件定义网络控制器检测主机何时在网络中的网络元件之间进行移动。控制器生成主机漫游至的网络元件的列表,该列表按照主机被附接至网络元件的时间进行排序,以便使主机被附接至的最新的网络元件是根网络元件并且位于列表的头部。控制器首先针对与主机相关联的流量流更新列表中的根网络元件。控制器向网络元件发送命令来以漫游路径的相反顺序编排从列表中的每个在先附接点网络元件至列表中的最新的根网络元件的隧道,以便于经由隧道为主机路由流量。

【技术实现步骤摘要】
【国外来华专利技术】
本公开涉及软件定义网络。
技术介绍
在软件定义网络(SDN)或OpenFlow网络中,当可以是物理设备或虚拟设备的主机从一个OpenFlow(OF)交换机移动到另一交换机或路由器(在本文被称为附接点或POA交换机/路由器)时,在网络融合期间网络因为至少两个原因可能经历流量损失和/或分组循环问题。第一,OpenFlow交换机的数量可能非常大并且重新生成针对整个网络的新的流分配树或表的算法要花费时间融合。第二,存在与在各个交换机/路由器上更新流表的SDN控制器相关联的网络延迟。在完成网络融合前,被发送至与漫游主机相关联的在先POA交换机/路由器的流量可能被丢弃/丢失。附图说明图1是示例性网络的图示,其中根据本文提出的技术管理和更新在交换机之间漫游的针对主机的流量流。图2是示出在主机在图1所示的网络中的交换机之间移动之前针对主机的流量的路由的框图。图3示出在主机在图1所示的网络中的交换机之间移动之前含有针对该主机的条目的匹配动作表的示例。图4是描绘由软件定义网络(SDN)控制器执行来管理和更新针对在交换机之间漫游的主机的流量流的操作的流程图。图5A是网络的一部分的图示,并且示出在本文提出的技术没有被采用的情况下的间断流量流的示例。图5B是与图5A类似的图示,并且示出在本文提出的技术被采用的情况下的流量流的示例。图6是主机在交换机之间移动的图示,并且示出本文提出的技术的益处。>图7A、7B和7C示出根据本文提出的技术由SDN控制器更新并且在主机漫游期间的示例性匹配动作表。图8是被配置来执行本文提出的技术的SDN控制器的示例性框图。具体实施方式综述本文提出的技术用于当主机在网络中的网络元件(例如,交换机或路由器)之间漫游时提高在软件定义网络中处理流量的性能。每一个网络元件能够充当虚拟或物理主机的附接点。软件定义网络控制器检测主机何时在网络元件之间进行了移动。控制器生成主机已漫游至的网络元件的列表,该列表按照主机被附接至网络元件的时间进行排序,从而使得主机附接至的最新网络元件成为根网络元件并且位于该列表的头部。控制器首先针对与主机相关联的流量流更新列表中的根网络元件。控制器向网络元件发送命令来以漫游路径的相反顺序编排从列表中的每个在先附接点网络元件至列表中的最新根网络元件的隧道,以便于经由隧道为主机路由流量。示例实施例本文提出了编排(program)从主机的漫游路径中的每个在先附接点(POA)交换机/路由器至该漫游路径中的最新根POA交换机/路由器的自动隧道的技术,以便于向主机从在先POA节点至最新根POA节点重新路由流量流,从而将流量(分组)损失最小化。如下文的进一步解释,编排是以漫游路径的相反顺序完成的,以在网络融合期间阻止分组循环并且使流量损失最小化,而不依赖于网络大小和所用的特定融合算法。首先参考图1,图1示出示例性网络拓扑10,其中当主机在SDN网络内移动时本文提出的技术可以被用于快速漫游。示例性网络拓扑10包括SDN控制器20和多个交换机(例如,OpenFlow交换机)30-A、30-B、30-C、30-D、30-E和30-F。交换机30-A、30-B、30-C、30-D、30-E和30-F在本文中还被分别标记和称为交换机A、交换机B、交换机C、交换机D、交换机E和交换机F。SDN控制器20可以采用物理计算设备或虚拟或基于云的计算资源的形式。而且,在图1所示的示例中,主机40-A(也被称为主机A)被示出。主机40-A可以是物理计算设备或虚拟机。交换机30-A、30-B、30-C、30-D、30-E和30-F连接至在标号45处所示的网络云,并且SDN控制器20(例如,根据OpenFlow协议)经由网络云45与交换机通信(虽然图1示出SDN控制器20和每个交换机之间的直接连接)。每个交换机具有多个端口,并且作为示例,在图1中,这些端口中的一些端口在交换机30-A、30-B、30-C、30-D、30-E和30-F上被标记为G0、G1和G2。应该理解的是交换机30-A至30-E可以是路由器或交换机,因此出于概括的目的,交换机在本文中还被称为“网络元件”,网络元件意味着包括交换机、路由器和其它在网络中执行交换和路由功能的网络设备。当主机40-A扎根于交换机A处时,通过图2所描绘的流分配树,去往主机40-A的流量由图1所示的交换机路由至交换机A。交换机D可以从图2所示的左路径和右路径二者到达交换机A。在一个示例中,左路径具有较低的损耗或较高的优先级。图3示出当具有地址(例如,媒体访问控制地址(MAC)MAC-A)的主机-A扎根于交换机A处时,针对图2所描绘的流分部树的匹配-动作表。图3在动作列中指示针对主机40-A的流量经由交换机30-A、30-B、30-C和30-D上的端口G0以及经由交换机30-E和30-F上的端口G1被路由。返回来参考图1,在图1的示例中,主机40-A从交换机A漫游至交换机B至交换机D至交换机E至交换机A。这由箭头50、51、52和53表示。SDN控制器20创建针对沿着主机40-A的漫游路径的所有POA交换机的排序列表。针对本漫游示例,该列表将包括交换机A、B、D和E。如同软件定义网络方面的普通技术人员已知的,SDN控制器20传输和控制网络中的交换机的行为,并且为此SDN控制器20与交换机频繁通信。当发生改变时(例如,主机自或至交换机移动),网络中的每个交换机通知SDN控制器20。然后SDN控制器20可以对交换机进行任意所需的改变以适当地路由与漫游主机相关联的流量。当发生主机POA改变时,SDN控制器20需要生成针对整个网络的新的流分配树或者表以便于确保去往或源自该主机的流量在网络中被适当转发。对新的流分配树的生成被称为“网络融合”。存在许多已知的算法来执行针对网络融合的计算,这超出了本公开的范围。事实上,本文提出的技术可以与目前已知的或以下开发的任意网络融合技术结合使用。当主机在交换机之间漫游时,SDN控制器20遵照特定的过程来保证在不需要等待完成网络融合并且具有所确定的最小流量损失的情况下,流可以被重新路由至最新的根POA交换机。图4示出通常由标号100表示的针对该过程的流程图。作为普通SDN操作的一部分,(例如,根据OpenFlow协议)SDN控制器20基于交换机和SDN控制器20之间的通信和通知检测主机何时在交换机之间移动。在110处,以及在主机漫游的每一步骤(交换机改变)处,SDN控制器20将POA交换机插入按照主机被附接至交换机的时间排本文档来自技高网...

【技术保护点】
一种方法,包括:在用于网络的软件定义网络控制器处,检测主机何时在网络元件之间进行移动,其中该网络包括与所述控制器通信的多个网络元件,每个网络元件能够充当虚拟主机或物理主机的附接点;生成所述主机已漫游至的网络元件的列表,所述列表按照所述主机被附接至网络元件的时间进行排序,以便使所述主机被附接至的最新网络元件是根网络元件并且位于所述列表的头部;首先针对与所述主机相关联的流量流更新所述列表中的所述根网络元件;以及向所述网络元件发送命令来以漫游路径的相反顺序编排从所述列表中的每一个在先附接点网络元件至所述列表中的最新根网络元件的隧道,以便于经由隧道为所述主机路由流量。

【技术特征摘要】
【国外来华专利技术】2013.09.10 US 14/022,5031.一种方法,包括:
在用于网络的软件定义网络控制器处,检测主机何时在网络元件之间进行移动,其中
该网络包括与所述控制器通信的多个网络元件,每个网络元件能够充当虚拟主机或物理主
机的附接点;
生成所述主机已漫游至的网络元件的列表,所述列表按照所述主机被附接至网络元件
的时间进行排序,以便使所述主机被附接至的最新网络元件是根网络元件并且位于所述列
表的头部;
首先针对与所述主机相关联的流量流更新所述列表中的所述根网络元件;以及
向所述网络元件发送命令来以漫游路径的相反顺序编排从所述列表中的每一个在先
附接点网络元件至所述列表中的最新根网络元件的隧道,以便于经由隧道为所述主机路由
流量。
2.根据权利要求1所述的方法,还包括:在所述控制器处向所述网络元件发送命令来移
除在执行网络融合过程期间在所述主机的漫游期间创建的所述隧道,以将用于针对所述主
机的所述流量流的隧道转发路径替换为普通转发路径。
3.根据权利要求1所述的方法,还包括:向所述网络元件发送命令来移除在执行网络融
合过程之后在所述主机的漫游期间创建的所述隧道,从而使隧道转发路径在网络融合期间
具有比普通转发路径更高的优先级。
4.根据权利要求3所述的方法,其中,发送命令包括:向所述网络元件发送命令以在网
络融合期间将用于针对所述主机的流的隧道转发路径替换为普通转发路径替换。
5.根据权利要求1所述的方法,还包括:还包括存储表示主机可以漫游至的最大数量的
网络元件的数据,并且其中,当确定所述主机已经漫游至超过所述最大数量的网络元件时,
生成所述列表被终止。
6.根据权利要求1所述的方法,其中,检测包括:基于所述主机的层2地址检测所述主机
的漫游。
7.根据权利要求1所述的方法,其中,检测包括:基于所述主机的层3地址检测所述主机
的漫游。
8.根据权利要求1所述的方法,其中,发送包括:发送命令来编排具有比用于非隧道流
量转发的优先级更高的优先级的、从所述列表中的每个在先附接点网络元件至所述最新根
网络元件的所述隧道以作为网络融合过程的结果。
9.根据权利要求1所述的方法,还包括:在网络元件的所述列表被更新后启动计时器,
并且在所述计时器到期时向所述网络元件发送命令以清除在所述网络元件中被编排的、与
所述主机的漫游相关联的任意隧道。
10.一种装置,包括:
网络接口单元,所述网络接口单元被配置为使能具有多个网络元件的网络中的通信,
其中所述多个网络元件能够充当虚拟主机或物理主机的附接点,检测主机何时在网络元件
之间进行移动;以及
被耦合至所述网络接口单元的处理器,其中,所述处理器被配置为:
检测主机何时在网络元件之间进行移动;
生成所述主机已经漫游至的网络元件的列表,该列表按照所述主机被附接至网络元件
的时间进行排序,以便使所述主机被附接至的最新网络元件是根网络元件并且位于所述列
表的头部;
首先针对与所述主机相关联的流量流更新所述列表中的所述根网络元件;以及
向所述网络元件发送命令来以漫游路径的相反顺序编排从所述列表中的每一个在先
附接点网络元件至所述列表中的最新根网络元件的隧道,以便于经由隧道为所述主机路由
流量。
11.根据权利要求10所述的装置,其中,所述处理器还被配置为:
存储表示主机可以漫游至的最大数量的网络元件的数据;以及
当确定所述主机已经漫...

【专利技术属性】
技术研发人员:陶高峰王笑蓉张宇刘大鹏
申请(专利权)人:思科技术公司
类型:发明
国别省市:美国;US

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

1