著录项信息
专利名称 | 基于SDN的分布式服务器负载均衡方法 |
申请号 | CN201410069027.6 | 申请日期 | 2014-02-27 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2014-05-14 | 公开/公告号 | CN103795805A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L29/08 | IPC分类号 | H;0;4;L;2;9;/;0;8查看分类表>
|
申请人 | 中国科学技术大学苏州研究院 | 申请人地址 | 江苏省苏州市工业园区独墅湖高教区仁爱路166号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 中国科学技术大学苏州研究院 | 当前权利人 | 中国科学技术大学苏州研究院 |
发明人 | 黄刘生;孙文君;徐宏力;牛庆功 |
代理机构 | 苏州创元专利商标事务所有限公司 | 代理人 | 范晴;夏振 |
摘要
本发明公开了一种基于SDN的分布式服务器负载均衡方法,利用软件定义网络(SDN)控制面与转发面相分离的架构优势,用户访问请求到达SDN网络的某个设备上,由SDN控制器根据网络运行状态,动态地将用户请求调度至合适的服务器,实现了服务器的负载均衡。该方法能够提供从接入、转发到服务的全方位容错,充分发掘服务器集群的总负载能力,提高整个系统运行的扩展性和可靠性。
1.一种基于SDN的分布式服务器负载均衡方法,其特征在于所述方法包括以下步骤:
(1)用户对服务器的访问请求通过SDN负载均衡网络的多个接入口进入到SDN负载均衡网络中,所述SDN负载均衡网络包括至少一个SDN控制器、网络设备、以及由若干个服务器构成的服务器集群,所述网络设备与服务器互连,用于进行数据层的转发;所述SDN控制器是网络的管理层,基于开源控制器部署负载均衡方案,负责网络监测与路由管理;所述多个接入口对外提供相同的IP地址,SDN控制器在网络设备上部署地址转换动作保证路由到正确的服务器上;
(2)当用户请求从多个接入口进入时,判断每个接入口接纳的请求数量是否均衡,若不均衡时由SDN控制器根据负载均衡算法决策网络操作规则,并将网络操作规则部署到相应SDN网络设备上由相应SDN网络设备执行,如果用户请求到达的SDN网络设备上已经部署了匹配该请求的路由规则时,则SDN网络设备执行匹配对应的网络操作集;否则, SDN网络设备将访问请求传递给SDN控制器;
(3)服务器对最终到达的访问请求进行处理,并反馈请求结果;
(4)SDN网络设备接收到服务器的反馈结果后,如果反馈结果到达的SDN网络设备上已经部署了匹配该反馈结果的路由规则时,则SDN网络设备执行匹配对应的网络操作集;否则,SDN网络设备将反馈结果传递给SDN控制器,由控制器根据负载均衡算法决策网络操作规则,并将网络操作规则部署到相应SDN网络设备上由相应SDN网络设备执行;
(5)用户接收到最终到达的反馈结果,结束。
2.根据权利要求1中所述的基于SDN的分布式服务器端负载均衡方法,其特征在于所述方法中网络操作集包括转发数据包、丢弃数据包、修改包头域。
3.根据权利要求1中所述的基于SDN的分布式服务器端负载均衡方法,其特征在于,用户对服务器的访问请求通过SDN负载均衡网络的任一个接入口进入到SDN网络中。
4.根据权利要求1中所述的基于SDN的分布式服务器端负载均衡方法,其特征在于所述SDN控制器运行在服务器上,SDN网络由一个控制器进行集中控制或者由多个控制器组成集群进行共同管理。
5.根据权利要求1中所述的基于SDN的分布式服务器端负载均衡方法,其特征在于所述SDN网络设备为SDN交换机、或者具有SDN交换机功能的传统交换机、路由器设备。
6.根据权利要求1中所述的基于SDN的分布式服务器端负载均衡方法,其特征在于所述接入口为处于SDN网络边缘,且与外网相连的SDN网络设备。
7.根据权利要求1中所述的基于SDN的分布式服务器端负载均衡方法,其特征在于所述负载均衡算法是能够结合服务器与网络本身各设备负载情况以及应用需求,实现动态路由调度的负载均衡算法。
8.根据权利要求1中所述的基于SDN的分布式服务器端负载均衡方法,其特征在于所述SDN网络中一个服务器与多个SDN网络设备相连构成一对多网络,或者一个SDN网络设备与多个服务器相连构成一对多网络,或者SDN网络设备与SDN网络设备级联。
9.根据权利要求1中所述的基于SDN的分布式服务器端负载均衡方法,其特征在于所述SDN负载均衡网络构成选自数据中心网络、Web服务器集群、内容分发网络之一或者网络组合的组成部分。
基于SDN的分布式服务器负载均衡方法\n技术领域\n[0001] 本发明属于网络应用技术领域,具体涉及一种基于SDN的分布式服务器负载均衡方法。\n背景技术\n[0002] 软件定义网络(Software-defined networking,缩写为SDN),是一种网络虚拟化(Network virtualization)技术,由美国史丹佛大学Clean State计划提出。利用OpenFlow协议,把路由器的控制层(control plane)从数据层(data plane)中分离出来,以软件方式实现。这个架构可以让网络管理员,在不更动硬件设备的前提下,以中央控制方式,用程序重新规划网络,为控制网络流量提供了新方法,也提供了核心网络及应用创新的良好平台。\n[0003] 负载均衡(Load Balance,LB)是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行执行,从而共同完成工作任务的思想。在网络应用中,它提供了一种廉价有效透明的方法来扩展网络设备和服务器的带宽、增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。这其中服务器的负载均衡最常见的。一方面,随着Internet的快速发展和业务量的不断提高,基于网络的数据访问流量迅速增长,数据中心、大型企业以及门户网站等的服务器逐渐被数据淹没。另一方面,相对于网络技术的发展,服务器处理器速度和内存访问速度的增长却远远低于网络带宽和应用服务的增长,网络带宽增长的同时带来的用户数量的增长,也使得服务器资源消耗严重,服务器成为了网络瓶颈。为此,通过组建服务器集群,利用负载均衡技术在服务器间进行业务均衡,成为一种低成本、可扩展的有效解决办法。\n[0004] 在服务器负载均衡中,依据转发方式,常见的有NAT方式和DR方式。NAT(Network Address Translation)方式通过网络地址转换用真实服务器地址重写请求报文的目标地址后,再进行转发。该方式组网灵活,后端服务器可以位于不同的物理位置,不同的局域网内。而DR(Direct routing)方式只有客户的请求报文通过LB设备,服务器的响应报文不经过LB,这样减少了LB设备的负载,缓解了LB设备的瓶颈效应。就负载均衡算法而言,主要分为静态与动态算法。静态算法包括轮转、随机、优先权等,它们实现简单,但是缺乏业务感知;动态算法包括最小连接、最快模式、预测模式等,它们均衡效果更好,但是实现较复杂。\n现有服务器负载均衡方式的投入高、可扩展性与灵活性差,可靠性不足等问题可以引入软件定义网络来解决,本发明因此而来。\n发明内容\n[0005] 本发明目的在于提供一种基于SDN的分布式服务器负载均衡方法,SDN控制器管理经过SDN网络访问服务器集群的进出流量,并能综合网络设备、服务器负载与用户特定需求,部署动态可扩展的负载均衡策略,保证用户业务的连续性、可靠性、及时性。本方法能够解决现有负载均衡方案中投入成本高、扩展性差、可靠性不足等缺点。\n[0006] 为了解决现有技术中的这些问题,本发明提供的技术方案是:\n[0007] 一种基于SDN的分布式服务器负载均衡方法,其特征在于所述方法包括以下步骤:\n[0008] (1)用户对服务器的访问请求通过SDN网络的接入口进入到SDN网络中;\n[0009] (2)如果用户请求到达的SDN网络设备上已经部署了匹配该请求的路由规则时,则SDN网络设备执行匹配对应的网络操作集;否则,SDN网络设备将访问请求传递给SDN控制器,由控制器根据负载均衡算法决策网络操作规则,并将网络操作规则部署到相应SDN网络设备上由相应SDN网络设备执行;\n[0010] (3)服务器对最终到达的访问请求进行处理,并反馈请求结果;\n[0011] (4)SDN网络设备接收到服务器的反馈结果后,如果反馈结果到达的SDN网络设备上已经部署了匹配该反馈结果的路由规则时,则SDN网络设备执行匹配对应的网络操作集;\n否则,SDN网络设备将反馈结果传递给SDN控制器,由控制器根据负载均衡算法决策网络操作规则,并将网络操作规则部署到相应SDN网络设备上由相应SDN网络设备执行;\n[0012] (5)用户接收到最终到达的反馈结果,结束。\n[0013] 优选的技术方案是:所述方法中网络操作集包括转发数据包、丢弃数据包、修改包头域。\n[0014] 优选的技术方案是:所述SDN网络有多个对外的接入口,用户对服务器的访问请求通过SDN网络的任一个接入口进入到SDN网络中。\n[0015] 优选的技术方案是:所述SDN网络部署了若干个服务器构成的服务器集群、SDN控制器、SDN网络设备,其中SDN网络设备与服务器互连,用于进行数据层的转发;SDN控制器用于控制层的实现,是网络的管理层,负责网络监测与路由管理。\n[0016] 优选的技术方案是:所述SDN控制器运行在服务器上,SDN网络由一个控制器进行集中控制或者由多个控制器组成集群进行共同管理。\n[0017] 优选的技术方案是:所述SDN网络设备为SDN交换机、或者具有SDN交换机功能的传统交换机或者路由器设备。\n[0018] 优选的技术方案是:所述接入口为处于SDN网络边缘,且与外网相连的SDN网络设备。\n[0019] 优选的技术方案是:所述负载均衡算法是能够结合服务器与网络本身各设备负载情况以及应用需求,实现动态路由调度的负载均衡算法。\n[0020] 优选的技术方案是:所述SDN网络中一个服务器与多个SDN网络设备相连构成一对多网络,或者一个SDN网络设备与多个服务器相连构成一对多网络,或者SDN网络设备与SDN网络设备级联。\n[0021] 优选的技术方案是:所述SDN网络构成选自数据中心网络、Web服务器集群、内容分发网络之一或者网络组合的组成部分。\n[0022] 本发明主要致力于解决现有网络中服务器端负载均衡方式投入高、可扩展性与灵活性差,可靠性不足等问题。本方法利用软件定义网络(SDN)控制层与转发层相分离的架构优势,用户访问请求到达SDN网络的某个设备上,由SDN控制器根据网络运行状态,动态地将用户请求调度至合适的服务器,实现了服务器的负载均衡。该方法能够提供从接入、转发到服务的全方位容错,充分发掘服务器集群的总负载能力,提高整个系统运行的扩展性和可靠性。\n[0023] 相对于现有技术中的方案,本发明的优点是:\n[0024] 1.本方法能够实时搜集各服务器,各网络设备负载情况,为管理员分析流量、部署负载均衡决策提供准确可靠的数据。\n[0025] 2.本方法将网络路由管理统一迁移到SDN控制器上执行,管理员可以根据业务需求与变化灵活地部署、变更负载均衡方案,而不影响服务器的正常工作。\n[0026] 3.本方法提供从访问接入、转发到服务全方位的多路径机制,既分担了流量,扩大了系统容量,又提供了冗余,增强了可靠性。\n[0027] 4.本方法的适用范围广,适用于数据中心、Web服务站等多数负载均衡场景。\n附图说明\n[0028] 下面结合附图及实施例对本发明作进一步描述:\n[0029] 图1为基于SDN的分布式服务器负载均衡方法流程图;\n[0030] 图2为本发明提出的SDN负载均衡方法实施网络示意图;\n具体实施方式\n[0031] 以下结合具体实施例对上述方案做进一步说明。应理解,这些实施例是用于说明本发明而不限于限制本发明的范围。实施例中采用的实施条件可以根据具体厂家的条件做进一步调整,未注明的实施条件通常为常规实验中的条件。\n[0032] 实施例\n[0033] 本实施例的基于SDN的分布式服务器负载均衡方法,采用如图2所示的拓扑连接相关设备,控制器负责部署动态策略来均衡各Web服务器的访问负担。如图1所示,用户访问请求分布式地接入负载均衡网络中,SDN控制器根据网络运行负载情况,统一决策,动态部署路由将请求转发到合适的服务器,完成服务器端的负载均衡,所述方法包括以下步骤:\n[0034] (1)部署有服务器集群的SDN负载均衡网络有多个对外的接入口,用户对Web服务器的访问请求从两个接入口中的任一个进入到SDN网络中;\n[0035] (2)当请求到达的SDN网络设备上已经部署了匹配该请求的路由规则时,则执行对应的网络动作如转发到下一跳、丢弃等;\n[0036] (3)当请求达到的SDN网络设备上没有匹配该请求的路由规则,则请求被传递给SDN控制器,由控制器根据动态LB算法决策网络动作,并将结果部署到相应网络设备上执行;\n[0037] (4)服务器对最终到达的请求提供服务,并反馈请求结果;\n[0038] (5)SDN网络设备接收到服务器的反馈结果后,按照与(2)相似的步骤将反馈转发回去,但不一定沿着请求来时经过的转发路径返回。\n[0039] SDN负载均衡网络是指受SDN控制器管理的网络,它能够提供面向服务器的负载均衡路由调度。该网络主要由SDN控制器、网络转发设备、服务器组成。SDN控制器是网络的管理层,负责网络监测与路由管理,通常运行在高性能的服务器上。所述控制器可能只有一个,实现简单的集中控制,也可能是多个控制器组成集群,共同管理网络。SDN网络设备主要指SDN交换机,例如Openflow交换机。网络中也可包含一些传统的交换机、路由器设备,此时网络是混合型的,但要保证控制器对网络整体上仍是可控的。\n[0040] 不同用户的访问请求可能通过不同的接入口进入到SDN负载均衡网络中。这里接入口是指SDN网络边缘,与外网相连的SDN网络设备。当某些接入口故障、阻塞等情况时,用户请求可以通过其他接入口继续请求服务。\n[0041] 负载均衡算法主要是指能够结合服务器与网络本身各设备负载情况以及应用需求,实现动态路由调度的负载均衡算法,但不排除经过改造继续沿用传统的负载均衡算法。\n就负载均衡算法而言,主要分为静态与动态算法。静态算法包括轮转、随机、优先权等,它们的负载分配决策是事先确定的,实现简单,但是缺乏业务感知,往往效果不佳;动态算法有:\n最小连接,转发新的连接给那些进行最少连接处理的服务器;最快模式,转发连接给那些响应最快的服务器;动态性能分配,根据收集到的应用程序和服务器各项性能参数,动态调整流量分配等等,它们能够响应服务器、网络状态,均衡效果更好,实现上较复杂。在传统的网络中这些动态算法往往由专门的LB设备承担,投入成本高,服务器集群整体性能容易受制约,且LB策略部署不能满足用户对灵活性、扩展性的要求。本方法解决了以上问题,赋予了动态LB算法高可靠性、扩展性,更能满足用户多样化的需求。\n[0042] 控制器能够主动监测网络运行状态,及时发现服务器、网络设备故障等异常,动态调整路由,维护服务的稳定性、连续性。SDN网络中一个服务器可以与多个SDN网络设备相连,而一个SDN网络设备可以与零个,或者多个服务器相连。所述方法可以适用于数据中心网络、Web服务器集群、内容分发网络等网络中。\n[0043] 本实例中,SDN负载均衡网络由4个SDN交换机,2个控制器、8个Web服务器组成。其中SDN交换机采用当前应用最为广泛的Openflow交换机,且支持Openflow1.3协议版本,以满足多样的控制需求。2个控制器在硬件上由两个高性能服务器承担,软件上基于开源控制器(如Opendaylight、Floodlight等)部署负载均衡方案。两个控制器采用双机热备模式工作,在提供冗余的同时也分担了控制流量。8个Web服务器上具有相同的Web内容,对其中任一个进行访问是等价的。\n[0044] 本实施例提供的网络由两个对外的接入口,不仅用户请求能从其中任一个进入,而且当两个接入口接纳的请求数量不均衡时,在请求到达服务器之前就将先进行交换机间的负载均衡,防止网络本身的拥塞导致服务器性能无法充分发挥。两个接入口对外提供相同的IP地址,控制器在交换机上部署地址转换动作保证路由到正确的服务器上。\n[0045] 本实施例中,在控制器中安装有网络监测模块,它主要负责收集以下方面数据:1)通过两个接入口到达的请求规模变化,作为评估整体负载的依据。2)经过各交换机的端口、流表项的请求数量、数据收发速率等,从而判断链路负载、请求的活跃度。3)服务器的反应延迟,可用资源等。反应延迟可以通过Ping等工具测试一个请求发出后的等待时间;可用资源或者说负载率的测量,可以通过在服务器上安装测量客户端来实现。负载均衡算法在实施过程中,根据以上数据进行LB决策,以达到以下效果:一方面,通过1)与2)中数据,保证各SDN交换机与链路不会出现过载,流量在网络中总体分布较为均匀;另一方面,通过3)中数据,保证各服务器的资源利用率,平均延迟大致相当。\n[0046] 对应网络监测模块,本实例中采用的负载均衡算法为动态的最优服务器分配方法,即第一步决定选择一个最优服务器来处理请求,选择的依据是一个性能函数,由反应延迟与资源利用率决定。反应延迟越小,可用资源(CPU、内存)越多,性能越优。第二步确定转发路径,在不会导致交换机和链路出现过载的情况下,选择一条延迟最小的路径转发。算法模块运行于控制器软件之上,可以动态加载、调整,管理员也可以根据安全、业务需求自己配置转发策略。在网络运行之初,可以先在各个交换机上部署默认转发规则,这样可以避免新访问到达时,因交换机请求控制器下发流表所造成的延迟。网络监测模块周期地向各交换机、服务器查询运行数据,以保证LB策略的实时性,同时统计数据的累计可以用来分析用户流量的变化,改进LB算法的适应性。\n[0047] 在图2中,有的Web服务器与多个交换机相连,有的只与一个交换机相连。理论上,连接数越多,冗余度越高,负载能力越强,但实际上要结合服务器、交换机端口数据和处理能力,选择合适的连接数实现性能匹配。在本实例中,交换机之间、服务器之间并不要求硬件性能一致,当设备升级时,原有的设备可以继续保留下来工作,新的交换机、服务器设备配置好后启动运行,控制器端可以自动发现,更新全局拓扑,重新部署LB策略。\n[0048] 本实施例中,接入侧有两台交换机承担,四台交换机之间全连通,任意的单点故障都不会影响网络的连通性。我们在8个服务器中选出2个作为范例实现了双端口连接,同样是为了减少单点故障带来的影响。一方面,当交换机、服务器,或者链路发生故障时,控制器的监测模块能够在较短的时间内发现;另一方面,在Openflow协议中也定义了交换机主动向控制器报告故障、异常的机制,这样主被动方式的结合能够保证控制器及时作出路由调整,让流量绕过故障点正常运行。同时,控制器会生成故障与异常报告,为管理员定位、分析故障提供便利。\n[0049] 本实施例中,将服务器的反馈结果转发出SDN网络主要考虑网络自身的负载均衡。\n此时,服务器的反馈就如当初用户的请求一样进入网络中,经过转发最终从某个接入口出去。由于不存在服务器负载均衡问题,对反馈流量的均衡主要指不会导致链路过载。对于连接多个交换机的服务器而言,它可以自主决定是否沿着请求来的链路回复反馈结果。\n[0050] 上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人是能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。
法律信息
- 2021-02-12
未缴年费专利权终止
IPC(主分类): H04L 29/08
专利号: ZL 201410069027.6
申请日: 2014.02.27
授权公告日: 2017.08.25
- 2017-08-25
- 2014-06-11
实质审查的生效
IPC(主分类): H04L 29/08
专利申请号: 201410069027.6
申请日: 2014.02.27
- 2014-05-14
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-04-24
|
2012-12-26
| | |
2
| |
2013-04-24
|
2013-01-04
| | |
3
| |
2013-04-24
|
2012-12-31
| | |
4
| |
2013-01-02
|
2012-09-18
| | |
5
| |
2013-12-25
|
2013-09-13
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |