控制设备及其控制交换机更新流表的方法

文档序号:10492101阅读:172来源:国知局
控制设备及其控制交换机更新流表的方法
【专利摘要】一种控制设备,包括第一确定模块、规则生成模块、第二确定模块和发送模块。第一确定模块确定待转发数据包的转发路径,转发路径上有多个交换机;规则生成模块分别为转发路径上的各个交换机生成对应的转发规则;第二确定模块依据控制设备发送数据包的时延区分出第一类交换机与第二类交换机;发送模块将对应的转发规则直接发送给每一第一类交换机以供其更新流表,同时还将对应的转发规则经转发路径发送到每一第二类交换机以供其更新流表。本发明还提供了控制设备控制交换机更新流表的方法。本发明可提高数据包转发的效率。
【专利说明】
控制设备及其控制交换机更新流表的方法
技术领域
[0001]本发明涉及通信领域,具体而言,涉及软件定义网络(Software DefinedNetwork, SDN)中控制设备及其控制交换机更新流表的方法。
【背景技术】
[0002]软件定义网络是一种新型网络创新架构,其核心技术开放流(Open Flow)通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制。
[0003]在目前的软件定义网络的结构中,某一交换机接收到待转发数据包后检查自身流表,若自身流表与待转发数据包不匹配,该交换机便将该待转发数据包发送给控制器,控制器便会为待转发数据包确定转发路径,并向转发路径上的各个交换机分发转发规则,然当转发路径上某一交换机接收到待转发数据包后,仍然未收到控制器发送的转发规则时,该交换机则会持续询问控制器直至获得转发规则,同时在询问控制器的过程中,该交换机停止处理所接收的待转发数据包,如此一来,控制器因为交换机的频繁询问会额外增加控制器的处理负担,同时因为交换机没有转发规则而停止处理待转发数据包,进而会对一些实时业务产生严重影响。

【发明内容】

[0004]有鉴于此,本发明的目的是提供一种控制器及其控制交换机更新流表的方法,可以在某一交换机询问转发路径后,通过转发路径传送给每个交换机对应的转发规则,进而确保每个交换机在收到待转发数据包之前获知该数据包的转发规则,进而减少数据转发的时延。
[0005]本发明实施方式中提供的控制设备与第一交换机相连,并应用于软件定义网络中,该控制设备包括第一确定模块、规则生成模块、第二确定模块,发送模块。第一确定模块根据所接收的待转发数据包确定待转发数据包的转发路径,所述转发路径上有多个交换机;规则生成模块根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则;第二确定模块依据所述控制设备发送数据包的时延区分出第一类交换机与第二类交换机,其中所述控制设备直接到所述第一类交换机的时延不大于所述控制设备沿所述转发路径到所述第一类交换机的时延,所述控制设备直接到所述第二类交换机的时延大于所述控制设备沿所述转发路径到所述第二类交换机的时延;发送模块将对应的转发规则直接发送给每一所述第一类交换机以供其更新流表,所述发送模块还用于将对应的转发规则经所述转发路径发送到每一所述第二类交换机以供其更新流表。
[0006]优选地,所述交换机在更新流表并转发非自身转发规则后再进行数据包的转发。
[0007]优选地,计算所述控制设备直接到所述交换机的时延具体包括:所述控制设备通过安全通道发送一个探测数据包至所述交换机,所述交换机接收所述探测数据包后原路返回所述探测数据包,所述安全通道为所述控制设备直接与所述交换机通信的通道;所述控制设备计算出所述探测数据包从发送到返回的时间作为所述控制设备直接到所述交换机的时延。
[0008]优选地,计算沿所述转发路径到所述交换机的时延具体包括:所述控制设备发送一个探测数据包至所述转发路径的起点交换机,然后由所述起点交换机沿着所述转发路径转发至所述交换机,所述交换机接收所述探测数据包后原路返回所述探测数据包;所述控制设备计算出所述探测数据包从发送到返回的时间作为沿所述转发路径到所述交换机的时延。
[0009]优选地,所述待转发数据包来自于任意一个所述交换机接收的来自信源的数据包,所述发送待转发数据包的交换机为所述转发路径的起点。
[0010]优选地,所述控制设备为软件定义网络控制器,用于为所述交换机分配数据包转发规则,所述流表用于存储所述转发规则,所述交换机为软件定义网络交换机,用于依据所述流表存储的所述转发规则进行数据包转发。
[0011]本发明又一实施方式中提供的控制设备与第一交换机相连,并应用于软件定义网络中,该控制设备包括第一确定模块、规则生成模块、发送模块。第一确定模块用于根据所接收的待转发数据包确定待转发数据包的转发路径,所述转发路径上有多个交换机。规则生成模块用于根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规贝1J。发送模块用于将所有所述转发规则经所述转发路径发送到所述多个交换机以供其更新流表。
[0012]优选地,所述交换机在更新流表并转发非自身转发规则后再进行数据包的转发。
[0013]优选地,所述待转发数据包来自于任意一个所述交换机接收的来自信源的数据包,所述发送待转发数据包的交换机为所述转发路径的起点。
[0014]优选地,所述控制设备为软件定义网络控制器,用于为所述交换机分配数据包转发规则,所述流表用于存储所述转发规则,所述交换机为软件定义网络交换机,用于依据所述流表存储的所述转发规则进行数据包转发。
[0015]本发明实施方式中提供的控制交换机更新流表的方法,应用于控制设备,所述控制交换机更新流表的方法包括:根据所接收的待转发数据包确定待转发数据包的转发路径,所述转发路径上有多个交换机;根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则;依据所述控制设备发送数据包的时延区分出第一类交换机与第二类交换机,其中所述控制设备直接到所述第一类交换机的时延不大于所述控制设备沿所述转发路径到所述第一类交换机的时延,所述控制设备直接到所述第二类交换机的时延大于所述控制设备沿所述转发路径到所述第二类交换机的时延;将对应的转发规则直接发送给每一所述第一类交换机以供其更新流表,同时将对应的转发规则经所述转发路径发送到每一所述第二类交换机以供其更新流表。
[0016]优选地,所述交换机在更新流表并转发非自身转发规则后再进行数据包的转发。
[0017]优选地,计算所述控制设备直接到所述交换机的时延具体包括:所述控制设备通过安全通道发送一个探测数据包至所述交换机,所述交换机接收所述探测数据包后原路返回所述探测数据包,所述安全通道为所述控制设备直接与所述交换机通信的通道;所述控制设备计算出所述探测数据包从发送到返回的时间作为所述控制设备直接到所述交换机的时延。
[0018]优选地,计算沿所述转发路径到所述交换机的时延具体包括:所述控制设备发送一个探测数据包至所述转发路径的起点交换机,然后由所述起点交换机沿着所述转发路径转发至所述交换机,所述交换机接收所述探测数据包后原路返回所述探测数据包;所述控制设备计算出所述探测数据包从发送到返回的时间作为沿所述转发路径到所述交换机的时延。
[0019]优选地,所述待转发数据包来自于任意一个所述交换机接收的来自信源的数据包,所述发送待转发数据包的交换机为所述转发路径的起点。
[0020]优选地,所述控制设备为软件定义网络控制器,用于为所述交换机分配数据包转发规则,所述流表用于存储所述转发规则,所述交换机为软件定义网络交换机,用于依据所述流表存储的所述转发规则进行数据包转发。
[0021]本发明又一实施方式中提供的控制交换机更新流表的方法,应用于控制设备,所述控制交换机更新流表的方法包括:根据所接收的待转发数据包确定待转发数据包的转发路径,所述转发路径上有多个交换机;根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则;将所有所述转发规则经所述转发路径发送到所述多个交换机以供其更新流表。
[0022]优选地,所述交换机在更新流表并转发非自身转发规则后再进行数据包的转发。
[0023]优选地,所述待转发数据包来自于任意一个所述交换机接收的来自信源的数据包,所述发送待转发数据包的交换机为所述转发路径的起点。
[0024]优选地,所述控制设备为软件定义网络控制器,用于为所述交换机分配数据包转发规则,所述流表用于存储所述转发规则,所述交换机为软件定义网络交换机,用于依据所述流表存储的所述转发规则进行数据包转发。
[0025]上述控制器及其控制交换机更新流表的方法通过为各个交换机生成一种沿数据包转发路径传送的转发规则,进而使的转发路径上各个交换机总是能够及时获得控制器为其制定的转发规则,进而减少各个交换机因等待转发规则而不处理待转发数据包的情况,即减少软件定义网络中数据转发的时延。
[0026]以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
【附图说明】
[0027]图1是本发明控制设备一实施方式的应用环境图。
[0028]图2a是本发明控制设备一实施方式的功能模块图。
[0029]图2b是本发明控制设备又一实施方式的功能模块图。
[0030]图3是本发明控制交换机更新流表的方法一实施方式的流程图。
[0031]图4是本发明控制交换机更新流表的方法又一实施方式的流程图。
[0032]主要元件符号说明
[0033]控制设备10
[0034]交换机20a、20b、20c
[0035]主机30a、30b
[0036]第一确定模块100、100a
[0037]规则生成模块102、102a
[0038]第二确定模块104
[0039]发送模块106、104a
[0040]如下【具体实施方式】将结合上述附图进一步说明本发明。
【具体实施方式】
[0041]图1是本发明控制设备10 —实施方式的应用环境示意图,其中控制设备10为SDN网络中的控制器。如图1所示,SDN网络主要包括控制设备10和交换机20a、20b、20c,其中,控制设备10对网络进行集中控制,实现控制层的功能,交换机20a、20b和20c负责管理数据层的转发。交换机20a接收到主机30a发送的待转发数据包后,首先在本地的流表上查找转发规则(即流表项),如果没有匹配,则将待转发数据包发送至控制设备10,由控制设备10决定数据包的转发路径,再依据转发路径将数据包转发至主机30b。在本实施方式中,交换机在SDN网络中的数量为多个,如图1中的20a、20b和20c。
[0042]图2a所示为本发明控制设备10 —实施方式的功能模块图。控制设备10包括第一确定模块100、规则生成模块102、第二确定模块104和发送模块106,在本实施方式中,模块100?106为可执行程序且分别存在于控制设备10的存储器中,并由处理器执行相关程序以实现上述t旲块的功能。
[0043]第一确定模块100根据所接收的待转发数据包确定待转发数据包的转发路径。在本实施方式中,待转发数据包为主机30a发送至主机30b的数据包,根据该待转发数据包的内容可以确定待转发数据包的转发路径,其中,该转发路径上存在多个交换机,如交换机20a、20b 和 20c。
[0044]规则生成模块102根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则。在本实施方式中,若交换机20a接收到待转发数据包并在自身的流表中无法查询到对应待转发数据包的转发规则时,交换机20a则会将该待转发数据包发送至控制设备10以确定转发路径,当转发路径得以确定,则控制设备10则可以为转发路径上的各个交换机生成对应的转发规则。
[0045]第二确定模块104依据所述控制设备发送数据包的时延区分出第一类交换机与第二类交换机,其中所述控制设备直接到所述第一类交换机的时延不大于所述控制设备沿所述转发路径到所述第一类交换机的时延,所述控制设备直接到所述第二类交换机的时延大于所述控制设备沿所述转发路径到所述第二类交换机的时延。在本实施方式中,控制设备10通过SDN网络中安全通道发送数据包直接到各个交换机都存在时延,如交换机20a、20b和20c,同样,从控制设备10沿着转发路径发送数据包到各个交换机也会存在时延。在本实施方式中,相关时延的计算主要通过探测数据包的发送回收进行计算,具体而言,控制设备10通过与某一交换机之间的安全通道发送一探测数据包至该交换机,该交换机接收该探测数据包后沿原路回传该探测数据包,则该探测数据包从发送到回收的时间即为控制设备10直接到该交换机之间的时延。同样,若控制设备10沿着预先确定的转发路径发送探测数据包至某一交换机并接收该交换机原路回传的探测数据包,则该探测数据包从发送到回收的时间即为控制设备10沿转发路径到某一交换机的时延。另外,在本实施方式中,若控制设备10到某一个交换机的时延大于该控制设备10沿传送路径到该交换机的时延,则说明在数据包转发的过程中,该交换机接收其他交换机转发的数据包可能早于其从安全通道直接接收来自控制设备10的转发规则,如此该交换机便不能及时的对收到的数据包进行处理,故在本实施方式中,该类交换机称之为第二类交换机,其他交换机称之为第一类交换机。
[0046]发送模块106将对应的转发规则直接发送给每一所述第一类交换机以供其更新流表,同时将对应的转发规则经所述转发路径发送到每一所述第二类交换机以供其更新流表。在本实施方式中,若交换机20b为上述第二确定模块104确定的第二类交换机,则控制设备10为交换机20b产生的转发规则则是通过控制设备10确定的转发路径发送至交换机20b,即控制设备10将交换机20b对应的转发规则发送至交换机20a,再由交换机20a发送至交换机20b,而其他交换机20a、20b (即上文中第一类交换机)对应的转发规则则是通过控制设备10与各个交换机之间的安全通道直接发送到至对应的交换机。在本实施方式中,所有交换机均在更新流表之后并转发非自身对应的转发规则后,再从事数据包的转发。在其他实施方式中,发送模块106也将对应的转发规则直接通过控制设备10和上述第二交换机之间的安全通道发送给第二类交换机,第二类交换机则会根据从安全通道直接接收的转发规则和从转发路径接收的转发规则的时间先后进行流表的更新。
[0047]图2b所示为本发明控制设备10又一实施方式的功能模块图。控制设备10包括第一确定模块100a、生成模块102a和发送模块104a,在本实施方式中,模块10a?104a为可执行程序且分别存在于控制设备10的存储器中,并由处理器执行相关程序以实现上述丰吴块的功能。
[0048]第一确定模块10a根据所接收的待转发数据包确定待转发数据包的转发路径。在本实施方式中,待转发数据包为主机30a发送至主机30b的数据包,根据该待转发数据包的内容可以确定待转发数据包的转发路径,其中,该转发路径上存在多个交换机,如交换机20a、20b 和 20c。
[0049]规则生成模块102a根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则。在本实施方式中,若交换机20a接收到待转发数据包并在自身的流表中无法查询到对应待转发数据包的转发规则时,交换机20a则会将该待转发数据包发送至控制设备10以确定转发路径,当转发路径得以确定,则控制设备10则可以为转发路径上的各个交换机生成对应的转发规则。
[0050]发送模块104a用于将所有转发规则经转发路径发送到多个交换机以供其更新流表。在本实施方式中,所有转发规则均会先行发送至请求确定转发路径的交换机,如图1中的交换机20a。交换机20a接收所有转发规则后,从中选择自身对应的转发规则并更新流表,再将其他交换机的转发规则依据转发路径转发至其他交换机,如图1中的交换机20b、20c。在本实施方式中,所有交换机均在更新流表之后并转发非自身对应的转发规则后,再从事数据包的转发。
[0051]图3是本发明控制设备10控制交换机更新流表方法一实施方式的流程图。其中本方法通过图2a所示的功能模块实现所述方法。
[0052]在步骤S300,第一确定模块100根据所接收的待转发数据包确定待转发数据包的转发路径,该转发路径上有多个交换机。在本实施方式中,待转发数据包为主机30a发送至主机30b的数据包,根据该待转发数据包的内容可以确定待转发数据包的转发路径,其中,该转发路径上存在多个交换机,如交换机20a、20b和20c。
[0053]在步骤S302,规则生成模块102根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则。在本实施方式中,若交换机20a接收到待转发数据包并在自身的流表中无法查询到对应待转发数据包的转发规则时,交换机20a则会将该待转发数据包发送至控制设备10以确定转发路径,当转发路径得以确定,则控制设备10则可以为转发路径上的各个交换机生成对应的转发规则。
[0054]在步骤S304,第二确定模块104依据所述控制设备发送数据包的时延区分出第一类交换机与第二类交换机,其中所述控制设备直接到所述第一类交换机的时延不大于所述控制设备沿所述转发路径到所述第一类交换机的时延,所述控制设备直接到所述第二类交换机的时延大于所述控制设备沿所述转发路径到所述第二类交换机的时延。在本实施方式中,控制设备10通过SDN网络中安全通道发送数据包直接到各个交换机都存在时延,如交换机20a、20b和20c,同样,从控制设备10沿着转发路径发送数据包到各个交换机也会存在时延。在本实施方式中,相关时延的计算主要通过探测数据包的发送回收进行计算,具体而言,控制设备10通过与某一交换机之间的安全通道发送一探测数据包至该交换机,该交换机接收该探测数据包后沿原路回传该探测数据包,则该探测数据包从发送到回收的时间即为控制设备10直接到该交换机之间的时延。同样,若控制设备10沿着预先确定的转发路径发送探测数据包至某一交换机并接收该交换机原路回传的探测数据包,则该探测数据包从发送到回收的时间即为控制设备10沿转发路径到某一交换机的时延。另外,在本实施方式中,若控制设备10到某一个交换机的时延大于该控制设备10沿传送路径到该交换机的时延,则说明在数据包转发的过程中,该交换机接收其他交换机转发的数据包可能早于其从安全通道直接接收来自控制设备10的转发规则,如此该交换机便不能及时的对收到的数据包进行处理,故在本实施方式中,该类交换机称之为第二类交换机,其他交换机称之为第一类交换机。
[0055]在步骤S306,发送模块106将对应的转发规则直接发送给每一所述第一类交换机以供其更新流表,同时将对应的转发规则经所述转发路径发送到每一所述第二类交换机以供其更新流表。在本实施方式中,若交换机20b为上述第二确定模块104确定的第二类交换机,则控制设备10为交换机20b产生的转发规则则是通过控制设备10确定的转发路径发送至交换机20b,即控制设备10将交换机20b对应的转发规则发送至交换机20a,再由交换机20a发送至交换机20b,而其他交换机20a、20b (即上文中第一类交换机)对应的转发规则则是通过控制设备10与各个交换机之间的安全通道直接发送到至对应的交换机。在本实施方式中,所有交换机均在更新流表之后并转发非自身对应的转发规则后,再从事数据包的转发。在其他实施方式中,发送模块106也将对应的转发规则直接通过控制设备10和上述第二交换机之间的安全通道发送给第二类交换机,第二类交换机则会根据从安全通道直接接收的转发规则和从转发路径接收的转发规则的时间先后进行流表的更新。
[0056]图4是本发明控制设备10控制交换机更新流表方法又一实施方式的流程图。其中本方法通过图2b所示的功能模块实现所述方法。
[0057]在步骤S400,第一确定模块10a根据所接收的待转发数据包确定待转发数据包的转发路径。在本实施方式中,待转发数据包为主机30a发送至主机30b的数据包,根据该待转发数据包的内容可以确定待转发数据包的转发路径,其中,该转发路径上存在多个交换机,如交换机20a、20b和20c。
[0058]在步骤S402,规则生成模块102a根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则。在本实施方式中,若交换机20a接收到待转发数据包并在自身的流表中无法查询到对应待转发数据包的转发规则时,交换机20a则会将该待转发数据包发送至控制设备10以确定转发路径,当转发路径得以确定,则控制设备10则可以为转发路径上的各个交换机生成对应的转发规则。
[0059]在步骤S404,发送模块104a用于将所有转发规则经转发路径发送到多个交换机以供其更新流表。在本实施方式中,所有转发规则均会先行发送至请求确定转发路径的交换机,如图1中的交换机20a。交换机20a接收所有转发规则后,从中选择自身对应的转发规则并做流表的更新,再将其他交换机的转发规则依据转发路径转发至其他交换机,如图1中的交换机20b、20c。在本实施方式中,所有交换机均在更新流表之后并转发非自身对应的转发规则后,再从事数据包的转发。
[0060]综上所述,控制设备10通过为各个交换机生成一种沿数据包转发路径传送的转发规则,进而使的转发路径上各个交换机总是能够及时获得控制设备为其制定的转发规贝1J,进而减少各个交换机因等待转发规则而不处理待转发数据包的情况,即减少网络中数据转发的时延。
[0061]需要说明的是,在上文所提及的实施方式中,控制设备20为软件定义网络中控制器,交换机20a、20b、20c为软件定义网络交换机,其中流表位于软件定义网络交换机中,用于存储软件定义网络控制器所分发的转发规则。另外,上文所述实施方式,并不构成对发明保护范围的限定。任何在本发明的精神和原则内所作的修改,等同替换和改进等,均应包含在本发明的保护范围内。
【主权项】
1.一种控制交换机更新流表的方法,应用于控制设备,其特征在于,所述控制交换机更新流表的方法包括: 根据所接收的待转发数据包确定待转发数据包的转发路径,所述转发路径上有多个交换机; 根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则; 依据所述控制设备发送数据包的时延区分出第一类交换机与第二类交换机,其中所述控制设备直接到所述第一类交换机的时延不大于所述控制设备沿所述转发路径到所述第一类交换机的时延,所述控制设备直接到所述第二类交换机的时延大于所述控制设备沿所述转发路径到所述第二类交换机的时延; 将对应的转发规则直接发送给每一所述第一类交换机以供其更新流表;及 将对应的转发规则经所述转发路径发送到每一所述第二类交换机以供其更新流表。2.如权利要求1所述的控制交换机更新流表的方法,其特征在于,所述交换机在更新流表并转发非自身转发规则后再进行数据包的转发。3.如权利要求1所述的控制交换机更新流表的方法,其特征在于,计算所述控制设备直接到所述交换机的时延具体包括: 所述控制设备通过安全通道发送一个探测数据包至所述交换机,所述交换机接收所述探测数据包后原路返回所述探测数据包,所述安全通道为所述控制设备直接与所述交换机通信的通道;及 所述控制设备计算出所述探测数据包从发送到返回的时间作为所述控制设备直接到所述交换机的时延。4.如权利要求1所述的控制交换机更新流表的方法,其特征在于,计算沿所述转发路径到所述交换机的时延具体包括: 所述控制设备发送一个探测数据包至所述转发路径的起点交换机,然后由所述起点交换机沿着所述转发路径转发至所述交换机,所述交换机接收所述探测数据包后原路返回所述探测数据包;及 所述控制设备计算出所述探测数据包从发送到返回的时间作为沿所述转发路径到所述交换机的时延。5.如权利要求1所述的控制交换机更新流表的方法,其特征在于,所述待转发数据包来自于任意一个所述交换机接收的来自信源的数据包,所述发送待转发数据包的交换机为所述转发路径的起点。6.如权利要求1所述的控制交换机更新流表的方法,其特征在于,还包括: 将对应的转发规则直接发送至每一所述第二类交换机,所述第二类交换机根据从所述控制装置直接接收所述转发规则和从所述转发路径接收所述转发规则的时间先后对所述流表进行更新。7.如权利要求1-6任一项所述的控制交换机更新流表的方法,其特征在于,所述控制设备为软件定义网络控制器,用于为所述交换机分配数据包转发规则,所述流表用于存储所述转发规则,所述交换机为软件定义网络交换机,用于依据所述流表存储的所述转发规则进行数据包转发。8.一种控制交换机更新流表的方法,应用于控制设备,其特征在于,所述控制交换机更新流表的方法包括: 根据所接收的待转发数据包确定待转发数据包的转发路径,所述转发路径上有多个交换机; 根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则; 将所有所述转发规则经所述转发路径发送到所述多个交换机以供其更新流表。9.如权利要求7所述的控制交换机更新流表的方法,其特征在于,所述交换机在更新流表并转发非自身转发规则后再进行数据包的转发。10.如权利要求7所述的控制交换机更新流表的方法,其特征在于,其特征在于,所述待转发数据包来自于任意一个所述交换机接收的来自信源的数据包,所述发送待转发数据包的交换机为所述转发路径的起点。11.如权利要求8-10任一项所述的控制交换机更新流表的方法,其特征在于,所述控制设备为软件定义网络控制器,用于为所述交换机分配数据包转发规则,所述流表用于存储所述转发规则,所述交换机为软件定义网络交换机,用于依据所述流表存储的所述转发规则进行数据包转发。12.—种控制设备,其特征在于,所述控制设备包括: 第一确定模块,用于根据所接收的待转发数据包确定待转发数据包的转发路径,所述转发路径上有多个交换机; 规则生成模块,用于根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则; 第二确定模块,用于依据所述控制设备发送数据包的时延区分出第一类交换机与第二类交换机,其中所述控制设备直接到所述第一类交换机的时延不大于所述控制设备沿所述转发路径到所述第一类交换机的时延,所述控制设备直接到所述第二类交换机的时延大于所述控制设备沿所述转发路径到所述第二类交换机的时延;及 发送模块,用于将对应的转发规则直接发送给每一所述第一类交换机以供其更新流表,所述发送模块还用于将对应的转发规则经所述转发路径发送到每一所述第二类交换机以供其更新流表。13.如权利要求12所述的控制设备,其特征在于,所述交换机在更新流表并转发非自身转发规则后再进行数据包的转发。14.如权利要求12所述的控制设备,其特征在于,其特征在于,计算所述控制设备直接到所述交换机的时延具体包括: 所述控制设备通过安全通道发送一个探测数据包至所述交换机,所述交换机接收所述探测数据包后原路返回所述探测数据包,所述安全通道为所述控制设备直接与所述交换机通信的通道;及 所述控制设备计算出所述探测数据包从发送到返回的时间作为所述控制设备直接到所述交换机的时延。15.如权利要求12所述的控制设备,其特征在于,计算沿所述转发路径到所述交换机的时延具体包括: 所述控制设备发送一个探测数据包至所述转发路径的起点交换机,然后由所述起点交换机沿着所述转发路径转发至所述交换机,所述交换机接收所述探测数据包后原路返回所述探测数据包;及 所述控制设备计算出所述探测数据包从发送到返回的时间作为沿所述转发路径到所述交换机的时延。16.如权利要求12所述的控制设备,其特征在于,所述待转发数据包来自于任意一个所述交换机接收的来自信源的数据包,所述发送待转发数据包的交换机为所述转发路径的起点。17.如权利要求12所述的控制设备,其特征在于,所述发送模块还用于将对应的转发规则直接发送至每一所述第二类交换机,所述第二类交换机根据从所述控制装置直接接收所述转发规则和从所述转发路径接收所述转发规则的时间先后对所述流表进行更新。18.如权利要求12-17任一项所述的控制设备,其特征在于,所述控制设备为软件定义网络控制器,用于为所述交换机分配数据包转发规则,所述流表用于存储所述转发规则,所述交换机为软件定义网络交换机,用于依据所述流表存储的所述转发规则进行数据包转发。19.一种控制设备,其特征在于,所述控制设备包括: 第一确定模块,用于根据所接收的待转发数据包确定待转发数据包的转发路径,所述转发路径上有多个交换机; 规则生成模块,用于根据所述转发路径分别为所述转发路径上的各个交换机生成对应的转发规则; 发送模块,用于将所有所述转发规则经所述转发路径发送到所述多个交换机以供其更新流表。20.如权利要求19所述的控制设备,其特征在于,所述交换机在更新流表并转发非自身转发规则后再进行数据包的转发。21.如权利要求19所述的控制设备,其特征在于,其特征在于,所述待转发数据包来自于任意一个所述交换机接收的来自信源的数据包,所述发送待转发数据包的交换机为所述转发路径的起点。22.如权利要求19-21任一项所述的控制设备,其特征在于,所述控制设备为软件定义网络控制器,用于为所述交换机分配数据包转发规则,所述流表用于存储所述转发规则,所述交换机为软件定义网络交换机,用于依据所述流表存储的所述转发规则进行数据包转发。
【文档编号】H04L12/757GK105847161SQ201510019737
【公开日】2016年8月10日
【申请日】2015年1月15日
【发明人】吴达成
【申请人】南宁富桂精密工业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1