实现转换协议,其中用于在第一时间段期间路由由一组交换机接收到的分组的第一规则...的制作方法

文档序号:7994772阅读:363来源:国知局
实现转换协议,其中用于在第一时间段期间路由由一组交换机接收到的分组的第一规则 ...的制作方法
【专利摘要】本文中提供一种转换协议,其中用于在第一时间段期间路由由一组交换机接收的分组的第一规则集被更新到第二规则集。在转换时段期间,该组交换机中的至少一些交换机将分组路由到控制器,而该组交换机中的其它交换机将分组路由到通过规则集的改变而不改变的下一跳。控制器将从该组中的至少一些交换机接收的分组转发到如从更新的规则集所确定的每个分组的目的地节点。
【专利说明】实现转换协议,其中用于在第一时间段期间路由由一组交 换机接收到的分组的第一规则集被更新到第二规则集

【背景技术】
[0001] 静态条件下的网络行为是很好理解的。然而,在动态条件下,当路由改变时,网络 行为可能变得不确定,并且各种各样的病理状况可能发生。在标准的网络中,例如,其中路 由更新响应于各种各样的网络事件而在每个交换机处独立且异步地发生,在任何时候的网 络的行为只是可随机预测的。
[0002] 诸如由OpenFlow (开放流)实现的一些网络实现控制器以选择路由。例如,在 OpenFlow网络中,路由由控制器选择,而不是由单独的交换机上运行的独立算法的动作选 择。因此,更新可以在由控制器选择的时间发生。但是甚至在这样的网络中,控制器不能瞬 间且同步地实现所有的交换机更新。交换机更新可能费时,并且对于在网络中的每个交换 机不同的和不可预测的地方执行。结果,分组所采取的路径依赖于更新哪些交换机和以哪 个次序。此外,在单独的交换机处的分组到达时间是不可预测的。

【专利附图】

【附图说明】
[0003] 图1图示网络的控制器的示例。
[0004] 图2图示用于在更新用于在网络上路由分组的规则集中实现转换协议以控制网 络的交换机的示例性的方法。
[0005] 图3A和图3B图示用于更新用于路由数据分组的规则集的示例,包括在更新规则 集时实现转换协议。
[0006] 图4图示用于与网络一起使用的示例性的控制器,如图1、图2以及图3A和图3B 的示例所述的一样。
[0007] 本文所述的实施例实现一种可由网络的控制器实现的转换协议。更具体地,在网 络上实现协议,该协议提供通过网络的每个分组由单个的规则集一致地处理,甚至是当网 络的路由规则改变时的动态条件。
[0008] 除了其它好处外,诸如所述的协议的实现方式还使得交换机资源能够被保护,确 保在任何时间在交换机上只存在单个规则集。在本文所述的示例中,当网络从一个规则集 (规则集1)改变到另一个(规则集2)时,受该改变影响的分组被计算,并且受该改变影响的 分组被发送到控制器。当每个交换机已经被更新以将受影响的分组发送到控制器时,规则 集2被发送到交换机,并且被发送到控制器的分组被重新释放(rerelease)到网络中。
[0009] 根据本文所述的示例,提供了一种用于网络的控制器。该控制器被配置成:实现转 换协议,其中用于在第一时间段期间路由由一组交换机接收的分组的第一规则集被更新到 第二规则集。该控制器通过在第一转换时段期间实现转换规则集而实现转换协议。该转换 规则集提供:(i )在第一规则集和第二规则集二者下将分组转发到相同的给定节点的该组 交换机中的任何交换机将在第一转换时段期间继续将分组转发到给定节点,以及(? )在第 二规则集下将分组转发到与在第一规则集下交换机将分组转发到的节点不同的节点的该 组交换机中的任何交换机将会将分组转发到控制器。在第一转换时段之后的随后的时间段 期间,根据第二规则集将在第一转换时段中从任何交换机接收到的分组由控制器发送到目 的地节点,并针对该组交换机中的每个交换机而实现第二规则集。
[0010] 在变型中,一组交换机可由单独地将每个分组转发到针对如由第一规则集所指定 的该交换机的下一跳的每个交换机操作。当从控制器接收到转换规则集时,第一组交换机 中的单独的交换机将每个分组转发到针对由第一规则集和要在第一规则集之后实现的第 二规则集二者所指定的该交换机的下一跳。在接收到转换规则集之后的转换时段期间,第 二组交换机将每个分组转发到控制器以供转发到由第二规则集所指定的目的地节点。第二 组中的交换机可包括使其下一跳作为从第一规则集到第二规则集的改变的结果而改变的 那些交换机。
[0011] 又另外地,本文中提供一种转换协议,其中用于在第一时间段期间路由由一组交 换机接收到的分组的第一规则集要被更新到第二规则集。在转换时段期间,该组交换机中 的至少一些交换机将分组路由到控制器,而该组交换机中的其它交换机将分组路由到通过 规则集的改变而不改变的下一跳。该控制器将从该组中的至少一些交换机接收到的分组转 发到如从更新的规则集所确定的每个分组的目的地节点。
[0012] 控制器 图1图示网络的控制器的示例。在图1的示例中,网络10包括控制器100、边缘交换机 12和一组交换机20。控制器100包括实现规则集以控制每个交换机如何转发数据分组的逻 辑110。在图1的示例中,控制器可实现第一规则集111,然后转换到第二或更新的规则集 113。为了在规则集111U13之间转换,控制器100包括实现转换协议的转换逻辑120。转 换协议包括由转换逻辑120确定的转换规则集121的确定。基于在第二规则集113下将被 不同对待的分组的确定,转换逻辑120可确定转换规则121。对于那些分组,转换逻辑120 命令:分组被转发到控制器120。和下面示例中所述的一样,转换规则121确保:由交换机 20中每一个接收到的单独的分组由单个的规则集一致地处理,甚至在规则集之间的更新期 间。
[0013] 正如所提到的,当被实现时,转换规则121可能要求该组中的一些交换机20将分 组转发到控制器100。控制器100上的分组转发逻辑130可将分组转发到目的地节点(例如 另一个交换机、边缘节点)。根据第二规则集113,由控制器100执行的分组转发操作可以将 分组插入到分组的路径中的任何点处,所述分组的路径在转发交换机20和分组内的分组 的目的地节点之间。例如,控制器100可以在针对转发分组的下一跳处或者在分组的目的 地节点之前的某个其它节点处插入分组。
[0014] 在图1的示例中,转换协议还可实现定时阶段(或时期(印och)),在其期间规则之 间的转换在每个交换机上发生。除其它确定之外,定时逻辑140尤其能够确定:在发信号通 知转换逻辑121之后,控制器100何时发信号通知更新的或第二规则集113。基于每个交换 机20确认转换规则121的接收,定时逻辑140可延长当转换规则121有效时的持续时间。 此外,定时逻辑140还可计及网络等待时间,以便在从每个交换机20接收确认之后的时间 的持续时间内维持转换规则121,其中所述持续时间基于与对于分组转换网络的最大估计 时间一样长的等待时间测量。
[0015] 方法论 图2图示用于在更新用于在网络上路由分组的规则集中实现转换协议以控制网络的 交换机的示例性的方法。在一个实现方式中,诸如由图2的示例所述的方法可在OpenFlow 网络中实现。在描述图2的示例时,出于说明用于执行正被描述的步骤或子步骤的合适元 件的目的,可参考图1的组件。
[0016] 控制器100可更新用于在每个交换机上路由分组的规则集(210)。例如,控制器 100可以在时间段期间实现第一规则集F(l),然后实现操作的序列以在随后的时间段实现 第二规则集F(2)。转换协议可用于从规则集F(l)更新到规则集F(2)。可用多个操作实现 转换协议,以确保单独的交换机在网络10上路由分组时一致地使用单个规则集。
[0017] 在图2的示例中,在实现更新的规则集F(2)之后维持其下一跳相同的网络中的交 换机20继续路由到其相应的下一跳(212)。将使其下一跳作为第二规则集F(2)的结果而 改变的交换机将其数据分组路由到控制器100 (214)。
[0018] 随后,根据更新的规则集F (2),控制器将它从交换机20接收到的数据分组转发到 目的地节点(216)。控制器100不一定需要将分组发送到针对被转发的分组的那些交换机 20的下一跳。而是,控制器100可沿着数据分组的路由将分组转发到节点(例如下游节点), 以确保数据分组在其最终目的地处接收。
[0019] 随后,控制器100针对交换机20实现第二规则集(220)。在其中将转换规则121 发信号通知交换机20的持续时间之后,可将第二规则集F (2)发信号通知交换机20。
[0020] 其中控制器100实现第二规则集F (2)的定时可通过由定时逻辑140所确定的持 续时间设定。特别地,定时逻辑140确定转换时间,该转换时间对应于确认转换规则集121 的每个交换机,该转换时间跟随有对应于网络等待时间(例如对于数据分组穿过网络的估 计的最大时间)的测量的间隔。
[0021] 在由图1和图2所述的示例中,每个规则集可被实现为传递函数。对于分组P,假 设存在网络传递函数F (p)。出于下面的描述的目的,传递函数FI (p)表示规则集1,传递函 数F2 (p)表示规则集2,并且传递函数F12 (p)表示规则集1和2之间的转换规则。
[0022] 进一步参考图1和图2的示例,实施例认出:给定的交换机无法预料网络中的其它 交换机20是否正在根据规则集1或规则集2转发分组。此外,实施例认出:对于任何交换 机20来说转发将在从控制器100提供的不同的规则实现方式下不同地处理的分组是不安 全的。然而,实施例还认出:对于数据分组来说被发送到控制器100是安全的。相反,如果 交换机100在规则集2下不修改分组,则该交换机可继续发送数据分组。
[0023] 每个交换机因此向控制器发送它将在规则集2和规则集1下不同地处理的那些分 组。这些分组由将分组引导向控制器100的转换规则处理。一旦控制器100从每个交换机 接收它已经接收到转换规则的确认,它可以确定何时确定没有交换机正在根据规则集1转 发分组是安全的。一旦做出该确认,控制器100可将规则集2发送到交换机。
[0024] 根据一些实施例,控制器100在四个顺序的时期期间实现对规则集的改变,每个 时期在控制器100处被测量。在第一时期中,所有交换机正在使用规则集1。每个交换机 处的传递函数是f 2si,并且每个分组由该传递函数族排他地处理。因此,对于所有分组P来 说,FCpkFjp)。
[0025] 在第二时期中,传递函数fs12被加载到每个交换机上。在该时期期间,在交换机处 的传递函数始于A,并且作为f s12结束。因此,对于每个分组P,F(p)=Fl(p)或F12(p),这 取决于每个交换机s处的fs12的相对到达时间和p,对于其来说,fVp)不等于f s12(p)。
[0026] 当加载新的规则集时,每个交换机向控制器发送完成信号。一旦最后一个交换机 已经向控制器发送了完成信号,控制器等待最大网络等待时间。
[0027] 在这点处,控制器100识别时期三。在时期三的开始处,控制器向所有交换机发送 fs2,并且在时期二期间释放发送到控制器100的所有分组。在时期三期间,对于每个分组P,

【权利要求】
1. 一种用于操作网络上的控制器的计算机可读介质,其中当由一个或多个处理器执行 时,该指令使得一个或多个处理器执行操作,所述操作包括: 实现转换协议,其中用于在第一时间段期间路由由一组交换机接收的分组的第一规则 集将被更新到第二规则集,其中实现转换协议包括: 在第一转换时段期间,实现转换规则集,其中(i)在第一规则集和第二规则集二者下 将分组转发到相同的给定节点的该组交换机中的任何交换机将在第一转换时段期间继续 将分组转发到给定节点,以及(ii)在第二规则集下将分组转发到与交换机在第一规则集 下将分组转发到的节点不同的节点的该组交换机中的任何交换机将会将分组转发到控制 器; 在第一转换时段之后的随后的时间段期间,根据第二规则集将在第一转换时段中从任 何交换机接收到的分组发送到目的地节点,并针对该组交换机中的每个交换机而实现第二 规则集。
2. 根据权利要求1所述的计算机可读介质,其中所述第一转换时段包括在该组交换机 中的每个交换机确认转换规则集之后的持续时间。
3. 根据权利要求2所述的计算机可读介质,其中所述持续时间包括被估计为其中分组 能够在转换该组交换机上花费的最大时间的等待时间测量。
4. 根据权利要求1所述的计算机可读介质,还包括:用于将第二规则集标记为在该组 交换机中的每个交换机确认第二规则集之后的持续时间实现的指令。
5. 根据权利要求4所述的计算机可读介质,其中所述持续时间还包括被估计为其中分 组能够在转换该组交换机上花费的最大时间的等待时间测量。
6. 根据权利要求1所述的计算机可读介质,其中所述控制器作为OpenFlow控制器操 作。
7. -种用于操作网络上的一组交换机的方法,所述方法包括: 在第一时间段期间,在该组交换机中的每个交换机处: 将每个分组转发到针对如由第一规则集所指定的该交换机的下一跳; 从网络的控制器接收转换规则集; 在第一时间段之后的第一转换时段期间,在构成该组交换机的第一组交换机中的每个 交换机上: 将每个分组转发到针对如由第一规则集和第二规则集二者所指定的该交换机的下一 跳,所述第二规则集将在第一转换时段之后被实现;以及 在第一时间段之后的第一转换时段期间,在构成该组交换机的第二组交换机中的每个 交换机而非第一组交换机中的一个交换机上: 将每个分组发送到控制器以供转发到将由第二规则集指定的目的地节点。
8. 根据权利要求7所述的方法,其中在跟随第一转换时段的随后的时间段期间,所述 方法还包括:在第二规则集下,将每个分组转发到针对该交换机的下一跳。
9. 根据权利要求7所述的方法,其中所述方法还包括:从该组交换机中的每个交换机 发送已在该交换机上实现转换规则集的确认。
10. 根据权利要求7所述的方法,其中该组交换机在OpenFlow网络下操作。
11. 一种用于实现转换协议的计算机实现的方法,在所述转换协议中用于在第一时间 段期间路由由一组交换机接收的分组的第一规则集被更新到第二规则集,其中所述方法包 括: (a) 在转换时段期间,操作该组交换机中的至少一些交换机以将分组路由到控制器,而 该组交换机中的其它交换机将分组路由到通过规则集的改变而不改变的下一跳; (b) 将从该组中的至少一些交换机接收到的分组从控制器转发到如从更新的规则集所 确定的每个分组的目的地节点。
12. 根据权利要求11所述的计算机实现的方法,其中(b)在跟随第一转换时段的第二 转换时段中执行,其中在该组交换机中的每个交换机向控制器发送确认之后,完成第一转 换时段。
13. 根据权利要求12所述的计算机实现的方法,还包括:操作该组交换机中的每个交 换机以在第一转换时段结束之后将分组路由到如从第二规则集所确定的该交换机的下一 跳。
14. 根据权利要求12所述的计算机实现的方法,其中所述第一转换时段还包括被估计 为其中分组能够在转换该组交换机中花费的最大时间的等待时间测量。
15. 根据权利要求11所述的计算机实现的方法,其中该组交换机被实现为OpenFlow网 络的一部分。
【文档编号】H04L12/751GK104247350SQ201280072859
【公开日】2014年12月24日 申请日期:2012年7月31日 优先权日:2012年7月31日
【发明者】麦克吉尔 R. 申请人:惠普发展公司,有限责任合伙企业
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1