网络系统、前端单元和控制消息传输速率降低方法

文档序号:7992288阅读:228来源:国知局
网络系统、前端单元和控制消息传输速率降低方法
【专利摘要】在交换机与交换机控制器之间的控制消息的传输速率可以被降低。一种网络系统包括基于交换机流表传送分组的交换机、交换机控制器以及在交换机控制器与交换机之间中继控制消息的前端设备。前端设备包括缓冲器、流表存储单元、以及在缓冲器中缓冲命中流表的缓冲器流条目的控制消息的缓冲器控制部。
【专利说明】网络系统、前端单元和控制消息传输速率降低方法
【技术领域】
[0001]本发明涉及一种网络系统,并且更具体地涉及一种用于降低交换机与交换机控制器之间的控制消息的传输速率的技术。
【背景技术】
[0002]近年来,在新网络控制的研究领域中提出一种OpenFlow (开放流)技术。在OpenFlow 技术中,已知非专利文献 1:“OpenFlow:Enabling Innovation in CampusNetworks”。在OpenFlow技术中,以端到端的流为单位考虑通信,并且在流单元中执行网络的路由控制、故障恢复、负载分散和优化。OpenFlow交换机基于OpenFlow交换机控制器根据OpenFlow协议添加或者更新的流表交换传送分组。
[0003]使用OpenFlow协议的网络特征在于分离交换机控制器(控制系统)和交换机(分组传送系统)。在接收分组时,如果对应条目存在于流表,则OpenFlow交换机根据在条目中定义的动作执行分组的处理。在另一方面,如果无对应条目,则向OpenFlow交换机控制器通知收到分组。在不能确定接收的分组的处理时,OpenFlow交换机向OpenFlow交换机控制器发送接收到的分组的数据。通常,OpenFlow交换机在无条目存在于流表中的初始状态中向OpenFlow交换机控制器发送所有接收到的分组。
[0004]在其中执行握手、比如TCP (发送控制协议)的流中,除非OpenFlow交换机向目的地终端传送终端的SYN分组,否则不从目的地终端返回SYN+ACK分组。OpenFlow交换机可以通过使用以上提到的机制以对在终端之间的通信执行速率控制来执行网络的拥塞控制。
[0005]在OpenFlow交换机中设置流表并且服务流量已经存在时,有由于OpenFlow交换机的故障而初始化流表的情况。在这样的情况下,由于OpenFlow交换机不能确定接收分组的传送方法,所以OpenFlow交换机向OpenFlow交换机控制器发送所有接收分组的数据。有可能那些分组包括分组的多个数据以命中相同流表条目。OpenFlow交换机控制器必须处理冗余分组数据,并且作为这一点的结果,OpenFlow交换机控制器的负载增加。
[0006]在具有其中分离交换机(数据传送处理)和交换机控制器(控制处理)的架构的网络中,如在使用OpenFlow协议的网络中那样,有从交换机向交换机控制器传送的分组的流量更多以便确定传送方法的情况,这造成分组传送处理的瓶颈。
[0007]作为有关申请,已知JP2010-45502A (专利文献I)。JP2010-45502A (专利文献I)公开当在交换机控制器侧上引起高负载状态时抑制对网络的影响。在这一常规技术中,监视管理器比较多个交换机控制器中的连接到交换机的交换机控制器的负载与预定值。作为比较的结果,如果负载大于预定值,则新激活未在激活状态中的交换机控制器,并且向交换机指令与新激活的交换机的连接。如果从监视管理器指令与新激活的交换机控制器的连接,则交换机执行与新激活的交换机控制器的连接请求。新激活的交换机控制器连接到请求连接的交换机以控制该交换机。
[0008]JP2010-45502A通过在交换机控制的负载增加时增加交换机控制器数目以便使负载分散来解决问题。然而对于交换机控制器未解决必须处理冗余分组这一问题。[0009]引用列表
[0010][专利文献 I] JP2010-45502A
[0011][非专利文献 I]:“OpenFlow:Enabling Innovation in Campus Networks”
[0012]<http://www.0penflowswitch.0rg/documents/openflow-wp-latest.pdf>

【发明内容】

[0013]本发明的目的是提供一种可以降低在交换机与交换机控制器之间的控制消息的传输速率的网络系统。
[0014]本发明的网络系统包括:交换机,被配置为基于交换机流表传送分组;交换机控制器,被配置为更新交换机流表;以及前端单元,被配置为在交换机与交换机控制器之间中继控制消息。前端单元包括:缓冲器,被配置为暂时存储从交换机接收的控制消息;流表存储部,被配置为存储流表;以及缓冲器控制部,被配置为在缓冲器中缓冲命中流表的缓冲器流条目的控制消息并且向交换机控制器发送未命中流表的任何缓冲器流条目的控制消息而不在缓冲器中缓冲。
[0015]根据本发明的一种降低控制消息的传输速率的方法是在网络系统中执行的方法,该网络系统包括:交换机,被配置为基于交换机流表传送分组;交换机控制器,被配置为更新交换机流表;以及前端单元,被配置为在交换机与交换机控制器之间中继控制消息。根据本发明的降低控制消息的传输速率的方法包括:由前端单元在缓冲器中暂时存储从交换机接收的控制消息;在前端单元的流表存储部中存储流表;由前端单元的缓冲器控制部在缓冲器中缓冲命中流表的缓冲器流条目的控制消息;以及由前端单元的缓冲器控制部向交换机控制器发送未命中流表的缓冲器流条目的控制消息而不在缓冲器中缓冲。
[0016]根据本发明,可以提供可以降低在交换机与交换机控制器之间的控制消息的传输速率的网络系统。
【专利附图】

【附图说明】
[0017]图1是在本发明的示例实施例中的网络系统所包含的前端单元、交换机控制器和交换机的内部框图;
[0018]图2是示出根据本发明的示例实施例的整个网络系统的示图;
[0019]图3是示出根据本发明的示例实施例的网络系统中的前端单元执行的控制消息的缓冲方法的流程图;
[0020]图4是示出根据本发明的示例实施例的网络系统中的交换机流表的示图;
[0021]图5是示出根据本发明的示例实施例的网络系统中的流表的示图;
[0022]图6是示出根据本发明的示例实施例的网络系统中的在前端单元从交换机控制器接收控制消息时的操作方法的流程图;以及
[0023]图7是示出根据本发明的另一示例实施例的整个网络系统的示图。
【具体实施方式】
[0024]下文将参照附图描述根据本发明的示例实施例的网络系统。
[0025]< 配置 >[0026]首先将描述一个示例实施例中的网络系统的配置。在本示例实施例中的网络系统包含前端单元10、交换机控制器20和交换机30。图1是在根据本发明的本示例实施例的网络系统中所包含的前端单元10、交换机控制器20和交换机30的内部框图。
[0027]前端单元10包含接收部101、发送部102、缓冲器103、缓冲器控制部104、流表存储部105、接收部106和发送部107。
[0028]接收部101通过控制线403接收从交换机30发送的控制消息。发送部102向交换机控制器20发送接收部101所接收的控制消息。
[0029]缓冲器103暂时存储从交换机30向交换机控制器20发送的控制消息。缓冲器控制部104使用缓冲器103和在流表存储部105中存储的流表108并且控制在交换机30与交换机控制器20之间的控制消息的传输速率。在接收部101接收的控制消息命中流表108的缓冲器流表时,缓冲器控制部104在缓冲器103中缓冲接收的控制消息。而且,在接收部101接收的控制消息命中流表108的交换机流条目时,缓冲器控制部104向交换机30发送接收的消息以便返回。
[0030]接收部106接收交换机控制器20发送的控制消息。发送部107向交换机30发送接收部106接收的控制消息。
[0031]交换机控制器20包含交换机控制部201。交换机控制部201基于从前端单元10接收的控制消息执行路由计算等,并且确定与在控制消息中包括的传送分组的数据对应的交换机30的操作,并且生成将在交换机30的交换机流表306中设置的交换机流条目。交换机控制部201向交换机30发送关于控制消息的生成的交换机流条目。
[0032]交换机30包含接收部301、具有交换机流表的存储部302、交换机控制处理部303、分组处理部304和发送部305。
[0033]接收部301通过接收线401接收传送分组。存储部302存储用于基于传送分组的首部数据确定传送动作的交换机流表306。命中交换机流表306中的交换机流条目的分组基于在交换机流条目中定义的动作数据308由分组处理部304处理。
[0034]交换机控制处理部303控制交换机30的整个操作。分组处理部304基于在交换机流表306的交换机流条目中定义的动作数据308确定传送分组的首部重写过程和输出端口。发送部305向传输线402发送传送分组。
[0035]图2是示出本发明的示例实施例中的整个网络系统的示图。交换机30-1和30-2至30-N中的每个交换机连接到前端单元10,并且前端单元10还连接到交换机控制器20。注意图2仅示出从交换机控制器20到交换机30的连接状态,并且省略交换机30-1和30-2至30-N实现的网络配置。从交换机30-1和30-2至30-N中的每个交换机向交换机控制器20发送的控制消息经受缓冲确定、然后向交换机控制器20发送。
[0036]<操作方法>
[0037]以下将描述在这一示例实施例的网络系统中的降低在交换机30与交换机控制器20之间的控制消息的传输速率的方法。
[0038]在这一示例实施例中的网络系统包含设置于交换机30与交换机控制器20之间的前端单元10以缓冲控制消息以便降低控制消息的传输速率。首先将描述控制消息的缓冲方法。图3是在根据本发明的示例实施例的网络系统中的前端单元10执行的控制消息的缓冲方法的流程图。[0039]首先将描述在前端单元10中的流表存储部105中存储的流表108和在交换机30中的交换机流表存储部302中存储的交换机流表306。
[0040]图4是示出根据本发明的示例实施例的网络系统中的交换机流表306的图。交换机流表306的每个条目包括分组首部数据307和动作数据308。在交换机流表306中,对于每个分组首部数据307定义分组重写过程的动作数据308、向预定传送目的地的发送过程
坐寸ο
[0041]图5是示出根据本发明的示例实施例的网络系统中的流表108的示图。流表108包括流ID109、流类型110、分组首部数据111、动作数据112和注册时间113。流ID109是用于标识流条目的ID。流类型10指示流表的类型,并且有缓冲器流条目和交换机流条目。分组首部数据111是在接收部101接收的控制消息中包括的、交换机30接收的作为传送目标的分组的首部数据。动作数据112定义以下将描述的步骤S13和步骤S15的过程。也就是说,通过改变动作数据112,有可能改变步骤S13和步骤S15的过程。例如在步骤S14命中的控制消息可以将该过程改变为丢弃不是由缓冲器103缓冲。注册时间113是在流表108中注册流条目的时间。
[0042](步骤SI I)
[0043]前端单元10的接收部101通过控制线403接收分组。缓冲器控制部104提取控制消息的首部数据并且通过使用提取的首部数据作为关键字在流表存储部105中存储的流表108中搜索与首部数据对应的交换机流条目。在搜索的交换机流条目从交换机控制器20通过前端单元10被设置在交换机30的交换机流表306中时,该交换机流条目被设置在前端单元10的流表108中(图6中的步骤S35)。(步骤S12)
[0044]缓冲器控制部104确定在步骤Sll提取的首部数据命中流表108的交换机流条目中的哪个交换机流条目。如果首部数据命中,则控制前进到步骤S13,而如果首部数据未命中,则控制前进到步骤S14。(步骤S13)
[0045]缓冲器控制部104认为交换机控制器20已经在交换机30的交换机流表中注册了对应的交换机流条目,并且向交换机30发送和返回控制消息。在向交换机30发送和返回控制消息时,缓冲器控制部104基于流表108的动作数据改变控制消息的分组首部数据。缓冲器控制部104将在从交换机30接收的控制消息的分组首部数据中包括的指示“分组接收”的数据重写成指示“分组发送”的数据。
[0046]注意在由于比如装置重启的原因而丢失在交换机10中的交换机流表306的交换机流条目时,关于相同分组的传送再次生成向交换机控制器20的查询。在不能检测到这样的情况并且返回控制消息时,不向交换机10执行流设置。出于这一原因,可以在前端单元10中的流表108的条目保持时段中设置约10秒的超时。注意可以基于操作环境恰当改变超时时间。
[0047](步骤S14)
[0048]缓冲器控制部104确定接收部101接收的控制消息是否命中在流表存储部105中存储的流表108的缓冲器流条目中的任一缓冲器流条目。如果控制消息命中一个缓冲器流条目,则控制前进到步骤S15,而如果控制消息未命中任何缓冲器流条目,则控制前进到步骤 S16。
[0049](步骤S15)[0050]缓冲器控制部104在缓冲器103中存储在步骤S14命中缓冲器流条目的控制消息并且中止向交换机控制器20的发送。
[0051](步骤S16)
[0052]缓冲器控制部104生成与在步骤S14与未命中缓冲器流条目的控制消息对应的流表108的缓冲器流条目。
[0053](步骤S17)
[0054]缓冲器控制部104向交换机控制器20发送控制消息,其中已经在步骤S16生成流表108的缓冲器流条目。
[0055]通过控制消息的以上缓冲方法,前端单元10可以防止从交换机30接收的相似控制消息连续地向交换机控制器20发送(如果控制消息命中缓冲器流条目)。也可以防止与在交换机30中的交换机流表306中已经注册的交换机流对应的控制消息向交换机控制器20发送(如果控制消息命中交换机流条目)。通过控制消息的以上缓冲方法,有可能降低在前端单元10与交换机控制器20之间的控制消息的传输速率。
[0056]接着将参照图6描述在前端单元10从交换机控制器20接收控制消息时的操作方法。
[0057](步骤S31)
[0058]在前端单元10中的接收部106从交换机控制器20接收控制消息。
[0059](步骤S32)
[0060]缓冲器控制部104提取控制消息的首部数据并且通过使用提取的首部数据作为关键字来确定对应的缓冲器流条目是否存在于在流表存储部105中存储的流表108中。
[0061](步骤S33)
[0062]缓冲器控制部104确定接收部101接收的控制消息是否命中流表108的缓冲器流条目中的任一缓冲器流条目。如果控制消息命中一个缓冲器流条目,在控制前进到步骤S34,而如果控制消息未命中任何缓冲器流条目,则控制前进到步骤S36。
[0063](步骤S34)
[0064]缓冲器控制部104删除与在步骤S33已经命中缓冲器流条目的控制消息对应的流表108的缓冲器流条目。缓冲器控制部104从缓冲器103获取与缓冲器流条目对应的分组首部数据111,并且将命中控制消息重写成去往交换机30的适当控制消息。如果来自交换机控制器20的控制消息是“交换机流表的生成”,则缓冲器控制部104基于流表108指定的动作生成交换机30的交换机流表306中所指定的“分组发送”的控制消息。如果来自交换机控制器20的控制消息是“分组发送”,则缓冲器控制部104从与缓冲器流条目对应的分组首部数据111获取分组发送目的地数据并且生成“分组发送”的控制消息。
[0065](步骤S35)
[0066]缓冲器控制部104基于接收部106接收的控制消息在流表108中设置与在交换机30的交换机流表306中设置的交换机流条目相同的交换机流条目。交换机控制部104在搜索流条目时以比缓冲器流条目的优先级更高的优先级搜索交换机流条目。
[0067](步骤S36)
[0068]发送部107向交换机30发送接收部106接收的控制消息。在步骤S34,在向去往交换机30的恰当控制消息重写命中缓冲器流条目的控制消息时,向交换机30发送重写的控制消息。
[0069]以上提到的方法删除流表108的缓冲器流条目。然而如在交换机控制器20中丢弃控制消息的情况下那样,在未从交换机控制器20向前端单元10发送与缓冲流条目对应的控制消息时,缓冲流条目保持于它的存储状态。出于这一原因,缓冲器控制部104参考流表108的注册时间113并且在经过预定时间之后删除缓冲器流条目。
[0070]关于在缓冲器103中存储的控制消息,缓冲器控制部104监视从交换机30接收的控制消息的速率。在速率变为等于或者少于某个值时,缓冲器控制部104通过发送部102向交换机控制器20发送缓冲器103的控制消息。
[0071]根据本示例实施例,在相似消息连续从交换机30到交换机控制器20时,前端单元10可以抑制控制消息的数量。也在可以将与控制消息对应的交换机流视为已经在交换机流表306中注册时,向前端单元10发送和返回控制消息。出于这一原因,可以减少交换机控制器20的负载。
[0072]在本示例实施例中,如图2中所示配置前端单元10。然而如图7中所示,可以在相应交换机30-1至30-N中实现前端单元10的缓冲过程为前端单元10-1至10-N。
[0073]如此,已经参照附图描述了本发明的示例实施例。然而本发明不限于以上提到的示例实施例并且可以在未脱离本发明的范围或者精神实质的范围中由本领域技术人员恰当修改。
【权利要求】
1.一种网络系统,包括: 交换机,被配置为基于交换机流表传送分组; 交换机控制器,被配置为更新所述交换机流表;以及 前端单元,被配置为在所述交换机与所述交换机控制器之间中继控制消息, 其中所述前端单元包括: 缓冲器,被配置为暂时存储从所述交换机接收的所述控制消息; 流表存储部,被配置为存储流表;以及 缓冲器控制部,被配置为在所述缓冲器中缓冲命中所述流表的缓冲器流条目的所述控制消息,并且向所述交换机控制器发送未命中所述流表的任何缓冲器流条目的所述控制消息而不在所述缓冲器中缓冲。
2.根据权利要求1所述的网络系统,其中所述流表还具有交换机流条目,并且 其中所述缓冲器控制部向所述交换机发送和返回命中所述交换机流条目的所述控制消息。
3.根据权利要求2所述的网络系统,其中所述流表具有: 流ID,用于标识流条目; 流类型,用于示出所述流条目是所述缓冲器流条目还是所述交换机流条目; 分组的首部数据,所述分组被包含在所述控制消息中作为所述交换机的传送对象;以及 动作数据,所述动作数据定义对包含所述首部数据的所述分组的动作。
4.根据权利要求1至3中的任一项权利要求所述的网络系统,其中在从所述交换机接收的所述控制消息未命中所述流表的任何缓冲器流条目时,所述缓冲器控制部生成所述流表的与所述控制消息对应的缓冲器流条目,并且在从所述交换机接收的所述控制消息命中所述流表的缓冲器流条目时,所述缓冲器控制部不生成所述流表的任何缓冲器流条目。
5.根据权利要求1至4中的任一项权利要求所述的网络系统,其中所述缓冲器控制部监视从所述交换机接收的所述控制消息的速率,并且在所述速率变为等于或者少于预定值时,向所述交换机控制器发送在所述缓冲器中缓冲的所述控制消息。
6.根据权利要求2所述的网络系统,其中所述缓冲器控制部在所述控制消息从所述交换机控制器被接收时针对缓冲器流条目而搜索所述流表,在存在与所述控制消息对应的所述缓冲器流条目时,从所述流表删除所述缓冲器流条目,并且在没有与所述控制消息对应的任何缓冲器流条目时,在所述流表上注册交换机流条目。
7.根据权利要求3所述的网络系统,其中所述流表的所述缓冲器流条目包含向所述交换机控制器发送的所述控制消息的注册时间,并且 其中所述缓冲器控制部参考所述流表的所述注册时间以删除已经过预定时间的所述缓冲器流条目。
8.—种在网络系统中降低控制消息的传输速率的方法,所述网络系统包括: 交换机,被配置为基于交换机流表来传送分组; 交换机控制器,被配置为更新所述交换机流表;以及 前端单元,被配置为在所述 交换机与所述交换机控制器之间中继所述控制消息, 所述方法包括:由所述前端单元在缓冲器中暂时存储从所述交换机接收的所述控制消息; 在所述前端单元的流表存储部中存储流表; 由所述前端单元的所述缓冲器控制部在所述缓冲器中缓冲命中所述流表的缓冲器流条目的所述控制消息;以及 由所述前端单元的所述缓冲器控制部向所述交换机控制器发送未命中所述流表的任何缓冲器流条目的所述控制消息,而不在所述缓冲器中缓冲。
9.根据权利要求8所述的降低控制消息的传输速率的方法,其中所述流表具有交换机流条目,并且 其中所述方法还包括由所述缓冲器控制部向所述交换机发送和返回命中所述交换机流条目的所述控制消息。
10.根据权利要求8或者9所述的降低控制消息的传输速率的方法,还包括: 在从所述交换机接收的所述控制消息未命中所述流表的所述缓冲器流条目时,由所述前端单元的所述缓冲器控制部生成所述流表的与所述控制消息对应的缓冲器流条目。
11.根据权利要求8至10中的任一项权利要求所述的降低控制消息的传输速率的方法,还包括: 由所述前端单元的所述缓冲器控制部监视从所述交换机接收的所述控制消息的速率;以及 在所述速率变为等于或者少于预定值时,由所述前端单元的所述缓冲器控制部向所述交换机控制器发送在所述缓冲器中缓冲的所述控制消息。
12.根据权利要求9所述的降低控制消息的传输速率的方法,还包括: 在所述控制消息从所述交换机控制器被接收时,由所述前端单元的所述缓冲器控制部搜索所述流表的所述缓冲器流条目; 在存在与所述控制消息对应的所述缓冲器流条目时,由所述前端单元的所述缓冲器控制部从所述流表删除对应的所述缓冲器流条目;以及 在没有与所述控制消息对应的所述缓冲器流条目时,由所述前端单元的所述缓冲器控制部在所述流表上注册交换机流条目。
13.根据权利要求8至12中的任一项权利要求所述的降低控制消息的传输速率的方法,其中所述流表的所述缓冲器流条目包括向所述交换机控制器发送的所述控制消息的注册时间,并且 其中所述方法还包括: 由所述前端单元的所述缓冲器控制部参考所述流表的所述注册时间;以及 由所述前端单元的所述缓冲器控制部删除已经过预定时间的所述缓冲器流条目。
14.一种前端单元,所述前端单元在交换机与交换机控制器之间中继控制消息,所述交换机被配置为基于交换机流表来传送分组,所述交换机控制器被配置为更新所述交换机流表,所述前端单元包括: 缓冲器,被配置为暂时存储从所述交换机接收的所述控制消息; 流表存储部,被配置为存储流表;以及 缓冲器控制部,被配置为在所述缓冲器中缓冲命中所述流表的缓冲器流条目的控制消息,并且向所述交换机控制器发送未命中所 述流表的所述缓冲器流条目的所述控制消息而不在所述缓冲器中缓冲。
15.根据权利要求14所述的前端单元,其中所述流表具有交换机流条目,并且 其中所述缓冲器控制部向所述交换机发送和返回命中所述交换机流条目的所述控制消息。
16.根据权利要求15所述的前端单元,其中所述流表包括: 流ID,用于标识流条目; 流类型,用于示出所述流条目是缓冲器流条目还是交换机流条目; 分组的首部数据,所述分组被包含在所述控制消息中作为所述交换机的传送对象;以及 动作数据,用于定义对包含所述首部数据的所述分组的动作。
17.根据权利要求14至16中的任一项权利要求所述的前端单元,其中所述缓冲器控制部在从所述交换机接收的所述控制消息未命中所述流表的任何缓冲器流条目时生成所述流表的与所述控制消息对应的缓冲器流条目,并且在从所述交换机接收的所述控制消息命中所述流表的缓冲器流条目时不生成所述流表的任何缓冲器流条目。
18.根据权利要求14至17中的任一项权利要求所述的前端单元,其中所述缓冲器控制部监视从所述交换机接收的所述控制消息的速率,并且在所述速率变为等于或者少于预定值时向所述交换机控制器发送在所述缓冲器中缓冲的所述控制消息。
19.一种计算机可读非瞬态记录介质,所述计算机可读非瞬态记录介质存储计算机可执行的控制消息传输速率降低程序,以`实现根据权利要求8至13中的任一项权利要求所述的降低控制消息的传输速率的方法。
【文档编号】H04L12/861GK103828313SQ201280047293
【公开日】2014年5月28日 申请日期:2012年9月27日 优先权日:2011年9月27日
【发明者】上野洋史 申请人:日本电气株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1