多租户软件定义网络中虚拟网络流表弹性切割系统及方法与流程

文档序号:15296725发布日期:2018-08-31 19:27阅读:127来源:国知局
本发明涉及一种应用于多租户软件定义网络(multi-tenantsdn)的机制与方法,如果不对流表(flowtable)资源做切割管理,会造成资源抢夺的问题,进而产生大量的封包流入(packet_in)事件造成大量的网络等待时间。如果以硬切割方式管理流表资源则会造成资源浪费的问题,使得流表使用率下降,并进而产生大量的packet_in事件造成大量网络等待时间。本发明所提出的方法可减少大量packet_in并且提升资源利用率,也不会有资源抢夺的问题。
背景技术
::软件定义网络(sdn)是近年来的新兴网络架构。它的概念是将网络的控制层(control-plane)功能与数据层(data-plane)功能分离,在数据层中封包如何转送都会通过过对应符合条件的流量条来进行相对应的动作,而流表资源有限,如果是多个租户同时使用同一个流表,则会有资源分配管理的问题。本发明针对多租户sdn网络设计一种流表资源管理机制。先前应用于普通sdn网络环境大都以多个应用程序使用流表的状况做管理,在下列先前的专利技术中有提及类似的概念:us9065724(管理流表(managingaflowtable))。另一方面在多租户sdn环境中的资源管理,大多都是对网络流量或是带宽资源做管理控制,如果是有对流表做管理的方法,也都常以硬切割的方式处理,但是以硬切割方式管理会有资源浪费的问题。由此可见,上述常用方式仍有很多缺点,实在不是好的设计,而急迫等待加以改良。本案发明人鉴于上述常用方式所衍生的各项缺点,急切渴望加以改良创新,并经多年苦心孤诣潜心研究后,终于成功研发完成本件应用于多租户(multi-tenant)软件定义网络(sdn)资源弹性管理机制。发明目的本发明的目的在于针对多租户软件定义网络(sdn)网络环境中设计一种资源管理方法,在这样的环境中,多个租户共享同一个实体资源,如果有多个用户想设置流量条则需经过中介控制器进行设置,在实体资源流表大小有限,如果流表满载,则接下来的需求都会遭到中介控制器拒绝,此时发出此需求的用户会因为无法设置流量条而产生大量的封包流入(packet_in),进而造成租户控制器的大量负担并且产生大量网络等待时间。如果因为共享不切割资源且造成流表满载的原因是因为某个用户的大量使用,称为资源霸占,如果因为利用硬切割方法让有大量需求的用户使用不到空着的资源则会造成资源浪费,因此本发明的管理机制方法是为解决这两种问题而设计。技术实现要素:实现上述发明目的的多租户软件定义网络(sdn)资源管理机制,是在中介控制器设置租户控制器需求前,将需求转送至检查模组做检验,随着租户使用流量条(flowentry)的用量状况以及现有资源利用率,选择对应的处理方式。经过此管理机制的检查之后,将相对应的处理动作集合成为命令,再将此命令交给中介控制器执行至实体资源中。本发明所提出的多租户软件定义网络(sdn)资源管理机制包括三大模组:(1)混合模式切换模组:软分割资源管理器(softpartitioningresourcemanager,sprm)在管理的流程上使用两种模式作混合处理:监督流程在中介控制器下流量条之前就先做检查处理,而侧录流程则先下流量条之后再进行后续释放的处理用于减少管理上的延迟时间;(2)最近最少使用部分超时重置(leastrecentlyused-partialtimeoutreset,lru-ptr)实施模组:sprm利用切割流量条的方式让交换器主动回报流量条的闲置状态,用于选择需要被替换的目标;(3)配置租户资源动态上限模组:sprm设定每个租户都有一个使用量的动态上限值。附图说明图1为本发明应用于多租户sdn资源弹性管理机制的系统架构图;图2为本发明应用于多租户sdn资源弹性管理机制的混合模式切换模组构成图;图3为本发明应用于多租户sdn资源弹性管理机制的监督流程的动作流程图;图4为本发明应用于多租户sdn资源弹性管理机制的侧录流程的动作流程图;图5为本发明应用于多租户sdn资源弹性管理机制的sprm管理模组的流程图;图6为本发明应用于多租户sdn资源弹性管理机制的配置租户资源动态上限模组流程图;图7为本发明应用于多租户sdn资源弹性管理机制的预留租户空间计算流程图;图8为本发明应用于多租户sdn资源弹性管理机制的lru-ptr实施模组的流程图。符号说明:10管理层;20sprm管理模组;30租户控制器;40中介控制器;50实体资源;60混合模式切换模组;70配置租户资源动态上限模组;80lru-ptr实施模组;101租户管理界面;102根源(root)管理界面;201剩余资源比较;202租户用量与可用资源比较;203超用弹性空间比较;204被取代空间用户设定;205传送移除流量条命令;206传送设定流量条命令;601监督流程;602侧录流程;6011租户控制器需求;6012转送需求;6013结果通知;6014传送命令;6015执行命令;6021租户控制器需求;6022转送需求;6023执行租户需求;6024结果通知;6025传送命令;6026执行命令;701预留租户空间计算;702剩余空间计算;703弹性上限值设定;7011租户目前用量与可用资源比较;7012租户目前用量与平均用量比较;7013租户平均用量与可用资源比较;7014预留空间合理性比较;801流量条闲置判断;802总空闲时间与原需求比较;803选择最大空闲时间的流量条。具体实施方式本发明为一种在软件定义网络(softwaredefinednetworks)的环境中,提供多租户虚拟网络(multi-tenantvirtualnetwork)服务,以利用openflow交换器(switch)流量表资源的切割方法,当租户控制器发出需求,经由软分割资源管理器(softpartitioningresourcemanager,sprm)管理流量表资源的机制决定各个租户可使用的资源范围及后续资源释放归还处理,以达到资源共享的目的。本发明sprm机制是以软切割方式(softpartitioning)管理资源的一种机制,经由混合模式切换模组(hybridmode),来判断环境处于多种状态中的哪一种,再决定是否使用配置租户资源动态上限模组及lru-ptr实施模组。其中混合模式切换模组根据资源使用状况从多种管理流程中来决定应该进行的管理流程。本发明所指的多种管理流程包含:监督流程(in-linemode):从租户控制器发出的需求会先经由管理层进行检查,待确定其可用性后再由管理层发出命令通知中介控制器可正确处理租户控制器的需求。侧录流程(sniffmode):从租户控制器发出的需求会侧录一份交由管理层检查,如果检查出不合法,管理层再发出命令通知中介控制器做事后弥补的动作。另外,本发明判断环境所处的多种状态包含:租户正常使用且实体资源充足,则以侧录流程作为管理流程并且租户可正常使用,管理层也不需要做弥补动作;租户想超用且实体资源充足,则采用侧录流程并配置租户资源动态上限值,如果租户使用量超过上限值则以自己为被替换租户使用替换空间方法处理,再经由管理层发出命令请中介控制器进行处理,否则正常使用;租户正常使用但实体资源不足,则使用监督流程并选择目前最大超用比例的租户为被替换租户使用替换空间方法处理;以及租户想超用但实体资源不足,则使用监督流程并以自己作为被替换租户使用替换空间方法处理。本发明配置租户资源动态上限值的方式以动态变动的方式做设定,以多种租户信息决定超用比例作为租户使用资源的上限值。其多种租户信息包含:租户过去的平均使用状况;可用资源下限值;以及目前资源使用量。本发明的替换空间方法,利用算法决定被替换的流量条,再将此流量条删除。其决定被替换的流量条的算法,名为最近最少使用部分超时重置(leastrecentlyused–partialtimeoutreset,lru-ptr)包含计算每个流量条的空闲时间,再选择最大空闲时间的流量条作为被替换的流量条。而计算每个流量条的空闲时间,包含切割闲置超时值(idle_timeoutvalue)及利用标记(flag)使交换器自动回报流量条状态等方法。请参阅图1所示,为本发明应用于多租户sdn资源弹性管理机制的系统架构图,其机制组成包括管理层10、sprm管理模组20、租户控制器30、中介控制器40以及实体资源50、混合模式切换模组60。本发明机制组成包括:管理层10,主要作为管理资源的层级,其中包含:租户管理界面101、root管理界面102以及sprm管理模组20;sprm管理模组20,主要作为检查资源是否可利用的管理流程模组,其中包含:配置租户资源动态上限模组70以及lru-ptr实施模组80;租户控制器30,主要作为软件定义网络环境中,每个租户各自拥有的控制器,以控制自己的软件定义网络环境;中介控制器40,主要作为多租户软件定义网络环境中的网络虚拟化中介层,负责将底下实体资源50做虚拟化提供上层租户控制器30一个或多个虚拟的软件定义网络环境;实体资源50,主要作为实体的网络资源,这里通指openflow交换器;混合模式切换模组60,主要作为判断应该使用哪一种管理流程的模组。请参阅图2所示,混合模式切换模组60是由监督流程601以及侧录流程602所组成,其中监督流程601,在资源利用率过高的情况下,使用监督流程601较为安全,由租户控制器30发出需求再经由监督流程601的管理后,实际完成需求至实体资源50中;以及侧录流程602,在资源利用率较低时,使用侧录流程602以减少需求延迟时间,由租户控制器30发出需求后,经由侧录流程602完成管理检查后再执行至实体资源50中。请参阅图3所示,为本发明应用于多租户sdn资源弹性管理机制的监督流程601的动作流程图,是由租户控制器需求6011、转送需求6012、结果通知6013、传送命令6014以及执行命令6015所组成,其中租户控制器需求6011是由租户控制器发出需求给中介控制器40,再经由混合模式切换模组60判断是否进行监督流程601;如果混合模式切换模组确认进行监督流程601,则转送需求6012,将租户控制器需求转送给sprm管理模组20做检查;结果通知6013,用于将检查结果通知租户管理界面101并同时传送命令6014至中介控制器40;以及最后执行命令6015,在中介控制器40接收命令后将所需执行动作执行至实体资源50。请参阅图4所示,为本发明应用于多租户sdn资源弹性管理机制的侧录流程602的动作流程图,是由租户控制器需求6021、转送需求6022、执行租户需求6023、结果通知6024、传送命令6025以及执行命令6026所组成,其中租户控制器需求6021是由租户控制器发出需求给中介控制器40,再经由混合模式切换模组60判断是否进行侧录流程602;如果混合模式切换模组确认进行侧录流程602,则转送需求6022,将需求转送至sprm管理模组20做检查并同时将租户控制器需求6021经由执行租户需求6023执行至实体资源50;结果通知6024,用于将检查结果通知租户管理界面101,并同时将所须弥补动作经由传送命令6025送至中介控制器40;以及执行命令6026,用于作为侧录流程602的最后弥补动作,多为删除流量条的命令,如果不需要做任何弥补则没有执行命令6026的过程。请参阅图5所示,为本发明应用于多租户sdn资源弹性管理机制的sprm管理模组20的流程图,是由剩余资源比较201、租户用量与可用资源比较202、超用弹性空间比较203、被取代空间用户设定204、传送移除流量条命令205、传送设定流量条命令206、配置租户资源动态上限模组70以及lru-ptr实施模组80所组成,其中剩余资源比较201,用于检查是否有剩余实体资源再做后续处理,如果是则代表实体资源50尚有大量剩余资源可供使用,如果否则代表剩余资源不足;租户用量与可用资源比较202,用于检查租户是否超过可用资源的下限值,如果是则租户视为超用状态,否则视为未超用。超用弹性空间比较203,用于检查租户是否超用可用资源的弹性上限值,如果是则将被取代空间用户设定204为用户本身,并执行lru-ptr实施模组80,再传送移除流量条命令205至中介控制器40,如果否,则不做任何处理;配置租户资源动态上限模组70,用于计算可配置弹性用量给予租户暂时资源,只有在剩余资源比较201判断为是时,并在判断租户用量与可用资源比较202判断为超用状态时才需使用;以及lru-ptr实施模组80,用于在判断需要替换空间时使用,目的是判断闲置过久的流量条,接着再做传送移除流量条命令205将空间释放,再视情况将目前需求利用传送设定流量条命令206通知中介控制器40将租户需求流量条设置在释放的空间中。请参阅图6所示,本发明应用于多租户sdn资源弹性管理机制的配置租户资源动态上限模组70流程图,是由预留租户空间计算701、剩余空间计算702以及弹性上限值设定703所组成,其中预留租户空间计算701,用于为其他租户保留一小部分空间,以保障其他租户的使用权益,并减少之后使用替换空间方法的负担;剩余空间计算702,将预留租户空间701为各个租户保留的空间加总,并用系统剩余资源扣除加总的预留空间,则为可配置空间;以及弹性上限值设定703,用于配置剩余空间计算702的结果,将此值加上租户下限值作为弹性上限值。本发明主要使用于当租户想超用且资源充足时,为了避免资源浪费,便设定弹性上限值给予想超用的租户使用。这个弹性上限值在每次租户发出需求都会根据目前系统状态作变动,并提高资源利用率。请参阅图7所示,本发明应用于多租户sdn资源弹性管理机制的配置弹性资源上限值的预留租户空间计算701方法,其方法步骤包括:a.租户目前用量与可用资源比较7011步骤,当租户的目前用量超过租户的可用资源时代表此租户目前为超用状态,则不保留任何空间,反之则进入步骤b;b.租户目前用量与平均用量比较7012步骤,如果步骤a的结果为否,则比较目前用量与平均用量,如果目前用量已超过平均用量,则认定此租户未来会有空间需求,并作步骤d预留空间合理性7014的比较,反之,则进入步骤c继续做平均用量与可用资源比较7013步骤;c.租户平均用量与可用资源比较7013步骤,如果步骤b的结果为否,则已确定目前用量小于可用资源及平均用量,此时便比较平均用量与可用资源,如果平均用量小于可用资源则将预留空间设定为平均用量减去当前用量,反之则设定为可用资源量减去目前资源量。d.预留空间合理性比较7014步骤,如果步骤b的结果为是,则已确定目前用量小于可用资源及目前用量大于平均用量,此时如果分配预留空间为目前用量减去平均用量,则有可能会超过原先可用资源的用量则为不合理,所以此处做合理性的比较,如果结果为是(超过原先可用资源)则预留可用资源减去目前使用量,反之则预留目前用量减去平均用量。请参阅图8所示,为本发明应用于多租户sdn资源弹性管理机制的lru-ptr实施模组80的流程图,包括,其中a.流量条闲置判断801步骤,当中介控制器40收到实体资源中流量条移除的信息则立即记录现在时间戳;如果现在时间戳减去上次更新时间戳大于片段空闲时间移除设定值,则判定此流量条曾经被使用过,则标记为是,并将更新时间戳设定为现在时间戳及空闲时间设定为片段空闲时间设定值;反之,则将更新时间戳设定为现在时间戳、总空闲时间再加上片段空闲时间设定值并将移除次数加一,并进入下一个步骤;b.总空闲时间与原需求比较802步骤,将步骤a的移除次数乘上片段空闲时间移除设定值与原空闲时间移除设定值比较,如果大于或等于原空闲时间移除设定值,则判定此流量条已达到原空闲时间,则移除此流量条,反之,则将此流量条重新设定至实体资源上;c.选择最大空闲时间的流量条803步骤,将整份数据表中选取最大空闲时间的流量条作为需被替换的流量条,此处则体现lru算法的精神,将闲置最久的流量条予以替换。特点与功效先前应用于管理多租户软件定义网络的技术,大多是针对带宽管理或是以硬切割的方式做分配,并没有考虑硬切割再处理管理流量表的部分会有浪费资源的影响,进而影响租户网络效率。本发明所提供针对多租户sdn管理机制,与其他常用技术相互比较时,还具备下列优点:a.本发明利用混合模式切换模组,可减少大量需求执行的延迟。b.本发明利用配置租户资源动态上限模组,可增加流量表的资源利用率。c.本发明利用lru-ptr实施模组,可减少租户需求被拒绝的数量,大量减少网络等待时间。以上详细说明是针对本发明的可行实施例进行具体说明,但是该实施例并非用于限制本发明的专利范围,凡是未脱离本发明技术精神的等效实施或变更,都应该包含在本案的专利范围中。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1