比对流量表的方法及交换器技术

技术编号:21205082 阅读:28 留言:0更新日期:2019-05-25 02:48
本发明专利技术公开一种比对流量表的方法及交换器,此比对流量表的方法包含当软体定义网路中的交换器接收到封包时,交换器解析封包的标头档以取得封包所涉及的至少一相关规则栏位,根据至少一相关规则栏位及交换器的复数个流量表的复数个兴趣规则栏位,选择相关流量表,及将封包所涉及的至少一相关规则栏位的内容与相关流量表的至少一流量条目所对应的规则内容相比对。相关流量表的至少一流量条目具有相同的至少一兴趣规则栏位,且封包所涉及的至少一相关规则栏位包含相关流量表的至少一兴趣规则栏位。

Method of Comparing Flow Meters and Exchanger

The invention discloses a method of comparing flow meters and a switch. The method of comparing flow meters includes that when a switch in a software defined network receives a packet, the switch parses the header file of the packet to obtain at least one relevant rule field involved in the packet, and chooses the phase according to at least one relevant rule field and the plural interest rule field of the plural flow tables of the switch. Close the flow meter and compare the content of at least one relevant rule field involved in the packet with that corresponding to at least one flow entry in the relevant flow meter. At least one traffic entry of the relevant flow table has the same at least one interest rule field, and at least one relevant rule field of the packet involves at least one interest rule field of the relevant flow table.

【技术实现步骤摘要】
比对流量表的方法及交换器
本专利技术是有关于一种比对流量表的方法,更具体地说,是一种应用于软件定义网络中,能够加快比对速度的比对流量表的方法及交换器。
技术介绍
在传统网络的架构中,个别交换器的规则设定是由专属的路由算法所控制,因此当某个路由规则需要改变设定,必须透过人工来处理并设定路径上相关交换器的规则。软件定义网络(Softwaredefinednetworks,SDN)则提供了更好的解决办法。软件定义网络将交换器的控制层和数据层分离,并将控制层移到集中式的架构中,也就是说,软件定义网络可利用同一个控制管理的逻辑掌握并操作各个交换器的流量表(Flowtable)设定,而交换器则是被动地配合来自控制层的规则变动,并专注于流量传输。软件定义网络将控制层及数据层分离的架构使得网络拓朴能够具有的可扩展性、可管理性及可程序化等特性。控制器和交换器是软件定义网络的两个基本组件,控制器负责网络的基本控管功能,例如设定交换器的流量表规则,并随时掌握网络的状态信息。交换器则基于控制器所设定的流量表中的流量规则来进行封包传送,并被动响应来自控制器的指令。控制器与交换器之间会使用特定的协议,例如开放流(OpenFlow)协议来沟通,控制器可以透过增加、删除或修改交换器上的流量规则来控制网络上的流量分布。在软件定义网络的应用中,由于三态内容寻址内存(TernaryContentAddressableMemory,TCAM)具有在线性时间内高速比对的优点,因此常被用来储存交换器中的流量表,然而相较于一般的内容寻址内存,三态内容寻址内存所需的面积较大,同时也需要较高的功率消耗和较高的成本,因此在实作上无法设置大容量的三态内容寻址内存,而导致流量表的容量较小,容易造成流量表满溢(overflow)的问题,甚至导致封包遗失,导致传输效率较低。此外,虽然以硬件为基础的三态内容寻址内存拥有很高的比对效能,然而一旦硬件电路制造完成后,就难以更动比对的方式与可比对的字段,因此不具有弹性,难以随着OpenFlow的版本演而升级,使得可程序化的能力有所减弱。然而,以软件为基础的交换器则无此缺点,而能够更改比对机制模块以及储存流量条目(flowentry)的数据结构以支持最新版本的OpenFlow,且可透过是统中庞大的内存来储存大量的流量条目。然而相较于三态内容寻址内存,以软件为基础的交换器在比对速度上则远远不如,甚至会落后106的等级。因此如何改善以软件为基础的交换器在处理封包上的效能就成为重要的议题。
技术实现思路
本专利技术的一实施例提供一种比对流量表(flowtable)的方法,应用于软件定义网络(softwaredefinednetworking,SDN)中,比对流量表的方法包含当软件定义网络中的交换器接收到封包时,交换器解析封包的头文件以取得封包所涉及的至少一相关规则字段,根据至少一相关规则字段及交换器的复数个流量表的复数个兴趣规则字段,自复数个流量表中选择相关流量表,及将封包所涉及的至少一相关规则字段的内容与相关流量表的至少一流量条目(flowentry)所对应的规则内容相比对。相关流量表的至少一流量条目具有相同的至少一兴趣规则字段,且封包所涉及的至少一相关规则字段包含相关流量表的至少一兴趣规则字段。本专利技术的另一实施例提供一种应用于软件定义网络中的交换器,交换器包含复数个流量表及控制单元。当接收到封包时,控制单元解析封包的头文件以取得封包所涉及的至少一相关规则字段,根据至少一相关规则字段及复数个流量表的复数个兴趣规则字段,自复数个流量表中选择相关流量表,并将封包所涉及的至少一相关规则字段的内容与相关流量表的至少一流量条目所对应的规则内容相比对。相关流量表的至少一流量条目具有相同的至少一兴趣规则字段,且封包所涉及的至少一相关规则字段包含相关流量表的至少一兴趣规则字段。附图说明图1为本专利技术一实施例的交换器的示意图。图2为本专利技术一实施例的比对流量表的方法流程图。图3为图2的步骤的子步骤流程图。符号说明:具体实施方式图1为本专利技术一实施例的交换器100的示意图,交换器100包含复数个流量表FT0至FT2及控制单元110。在本专利技术的部分实施例中,交换器100可为应用于软件定义网络(softwaredefinednetworking,SDN)中的软件交换器,也就是说,交换器100可利用软件更改内部流量表的比对机制并修改储存流量条目(FlowEntry)的数据结构。在本专利技术的部分实施例中,为了提升交换器100在处理封包上的效能,交换器100可以透过分类并切割流量表的方式,减少需比对的流量条目数量。由于一般而言,包头档(Header)中的信息与流量条目之间会有特定的对应关系,因此倘若能够依照特定的分类方式将交换器100中的流量表加以分类并切割,就可以在接收到封包时,根据包头档中的内容,选择相对应的流量表来进行比对,而无须比对不相对应的流量表。举例来说,表1为本专利技术一实施例的流量表中全部需比对的规则字段,其中包含例如互因特网协议版本4(InternetProtocolversion4,IPv4)的来源地(IPV4_SRC)及目的地(IPV4_DST)、传输控制协议(TransmissionControlProtocol,TCP)的来源地(TCP_SRC)及目的地(TCP_DST)…等等。表1然而一般而言,这些规则字段彼此之间可能有互斥的关系,举例来说,使用因特网协议版本4的封包即不会同时使用因特网协议版本6(InternetProtocolversion6,IPv6),或者使用传输控制协议(TCP)的封包即不会同时使用用户封包协议(UserDatagramProtocol,UDP)。也就是说,对于每个流量条目而言,其实只有部分的规则字段需要比对(在本说明书中将以兴趣规则字段称之),且在流量表中,每一个流量条目所需比对的规则字段可能也会有所差异。在本专利技术的部分实施例中,交换器100可将流量表中具有相同兴趣规则字段的流量条目移出流量表,并建立包含这些具有相同兴趣规则字段的新流量表。举例来说,在图1中,流量表FT1及FT2中的流量条目可能原先是储存于流量表FT0中,而随着流量条目增加,交换器100便可将兴趣规则字段皆为ETH_DST、IPV4_SRC、IPV4_DST及TCP_DST的流量条目FE6至FE8分别自流量表FT0中移出,并建立流量表FT1以储存流量条目FE6至FE8。同理,交换器100可将兴趣规则字段皆为ETH_DST、IPV6_SRC、IPV6_DST及UDP_DST的流量条目FE9及FE10分别储存于流量表FT2。如此一来,当交换器100当接收到封包PCK1时,控制单元110便可解析封包PCK1的头文件以取得封包PCK1所涉及的至少一相关规则字段,并根据封包PCK1的相关规则字段以及流量表FT0至FT2的兴趣规则字段选择相关的流量表来进行比对。表2为本专利技术一实施例的封包PCK1的头文件内容。表2由于封包PCK1所涉及的相关规则字段为IN_PORT、ETH_DST、ETH_SRC、ETH_TYPE、IP_PROTO、IPV4_SRC、IPV4_DST、TCP_SRC及TCP_DST,且封包PCK1所涉及的相关规则字段包含了流量表FT1的所本文档来自技高网
...

【技术保护点】
1.一种比对流量表的方法,其特征在于,应用于一软件定义网络中,该方法包含:当该软件定义网络中的一交换器接收到一封包时,该交换器解析该封包的一头文件以取得该封包所涉及的至少一相关规则字段元;根据该至少一相关规则字段元及该交换器的复数个流量表的复数个兴趣规则字段元,自该些流量表中选择一相关流量表;及将该封包所涉及的该至少一相关规则字段元的内容与该相关流量表的至少一流量条目所对应的规则内容相比对;其中:该相关流量表的该至少一流量条目具有相同的至少一兴趣规则字段元;及该封包所涉及的该至少一相关规则字段元包含该相关流量表的该至少一兴趣规则字段元。

【技术特征摘要】
1.一种比对流量表的方法,其特征在于,应用于一软件定义网络中,该方法包含:当该软件定义网络中的一交换器接收到一封包时,该交换器解析该封包的一头文件以取得该封包所涉及的至少一相关规则字段元;根据该至少一相关规则字段元及该交换器的复数个流量表的复数个兴趣规则字段元,自该些流量表中选择一相关流量表;及将该封包所涉及的该至少一相关规则字段元的内容与该相关流量表的至少一流量条目所对应的规则内容相比对;其中:该相关流量表的该至少一流量条目具有相同的至少一兴趣规则字段元;及该封包所涉及的该至少一相关规则字段元包含该相关流量表的该至少一兴趣规则字段元。2.如权利要求1所述的比对流量表的方法,其特征在于,另包含:将该些流量表中预设储存所有流量条目的一预设流量表中具有特定的至少一兴趣规则字段元的至少一待移出流量条目自该预设流量表中移除;及建立包含该至少一待移出流量条目的一新流量表。3.如权利要求1所述的比对流量表的方法,其特征在于,其中将该封包所涉及的该至少一相关规则字段元的内容与该相关流量表的该至少一流量条目所对应的规则内容相比对包含:根据该至少一流量条目所对应的规则内容以一哈希函数计算该至少一流量条目的至少一参考索引值;及根据该封包所涉及的该至少一相关规则字段元的内容以该哈希函数计算该封包所对应的一目标索引值。4.如权利要求1所述的比对流量表的方法,其特征在于,其中根据该至少一相关规则字段元及该交换器的复数个流量表的该些兴趣规则字段元,自该些流量表中选择一相关流量表包含:根据该至少一相关规则字段元建立该封包的一目标字段元向量;根据该些流量表的该些兴趣规则字段元建立该些流量表的复数个兴趣字段向量;及当该些流量表中一流量表的至少一兴趣字段元向量与该目标字段元向量相匹配时,选择该流量表作为该相关流量表。5.如权利要求1所述的比对流量表的方法,其特征在于,将该封包所涉及的该至少一相关规则字段元的内容与该相关流量表的该至少一流量条目所对应的规则内容相比包含:将该封包所涉及的该至少一相关规则字段元的内容与一通配流量表的至少一流量...

【专利技术属性】
技术研发人员:陈鸿玮
申请(专利权)人:英业达科技有限公司英业达股份有限公司
类型:发明
国别省市:上海,31

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

1