CN106550049A - 一种中间件部署方法、装置及系统 - Google Patents
一种中间件部署方法、装置及系统 Download PDFInfo
- Publication number
- CN106550049A CN106550049A CN201611110572.0A CN201611110572A CN106550049A CN 106550049 A CN106550049 A CN 106550049A CN 201611110572 A CN201611110572 A CN 201611110572A CN 106550049 A CN106550049 A CN 106550049A
- Authority
- CN
- China
- Prior art keywords
- middleware
- data flow
- priority
- stream
- software
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000011156 evaluation Methods 0.000 claims abstract description 52
- 230000003068 static effect Effects 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 13
- 238000004458 analytical method Methods 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 12
- 238000007726 management method Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 235000011158 Prunus mume Nutrition 0.000 description 3
- 244000018795 Prunus mume Species 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 108010022579 ATP dependent 26S protease Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000000205 computational method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000686 essence Substances 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明适用计算机技术领域,提供了一种中间件部署方法、装置及系统,可对数据流进行分类,确定流的优先级,从而可根据流的优先级、流的租户级别,计算数据流对资源池中的软件中间件的评价值,确定候选软件中间件,在所有流都在候选软件中间件中找到最短路径时,输出中间件部署结果。通过本发明实施例,实现了在网络中部署合适数量的软件中间件到合适的位置,并且能满足租户的质量要求,且实现了对网络全局的软件中间件部署,提高了资源利用率。
Description
技术领域
本发明属于计算机技术领域,尤其涉及一种网络中用的中间件部署方法、装置及系统。
背景技术
随着计算机技术的发展,网络规模不断增大,流量呈爆发式增长,对流量的监测设备的部署需求也在增加,如在数据中心部署防火墙、代理网关等中间件,以提高流量的安全性。中间件定义为一种在源主机和目标主机之间的数据路径上提供功能服务,且为除去执行IP路由器正常标准功能以外的执行其他功能的网络设备,包括:防火墙(Firewall)、代理服务器(Proxy)、负载均衡器(Load Balance)、入侵检测系统(Intrusion DetectionSystem,IDS)、应用级网关(Application-level gateways)等。
中间件位于网络的边界或入口,中间件是汇聚流和集中流的关键网络设备,在网络中具有不可缺少的地位。而传统网络中大多使用物理中间件,物理中间件基于硬件实现,处理能力有限,在网络部署过程中需专人维护,且物理中间件固定在物理位置上,随着网络需求的变化,物理中间件的部署难以应对动态的需求变化,如针对不同用户的需求,传统物理中间件的部署无法动态设置。
发明内容
本发明的目的在于提供一种中间件部署方法、装置及系统,旨在解决由于现有技术物理中间件的部署难以满足动态数据流变化和不同用户需求的问题。
一方面,本发明提供了一种中间件部署方法,所述方法包括下述步骤:
识别数据流,确定所述数据流的优先级;
依据所述数据流的优先级、所述数据流的租户级别,计算资源池中的软件中间件的评价值,由所述评价值确定候选软件中间件;
在检测到所述数据流经过所述候选软件中间件的最短路径满足所述租户的级别对应阈值时,将所述候选软件中间件确定为中间件部署结果。
另一方面,本发明提供了一种中间件部署装置,所述装置包括:
流分析模块,用于识别数据流,确定所述数据流的优先级;
评价模块,用于依据所述数据流的优先级、所述数据流的租户级别,计算资源池中的软件中间件的评价值,由所述评价值确定候选软件中间件;
部署模块,用于在检测到所述数据流经过所述候选软件中间件的最短路径满足所述租户的级别对应阈值时,将所述候选软件中间件确定为中间件部署结果。
又一方面,本发明提供了一种中间件部署系统,所述系统包括:控制器、交换机和中间件,所述控制器分别与所述交换机、所述中间件通信连接,所述中间件包括物理机和软件中间件,所述控制器如前所述的装置。
在本发明实施例中,可对数据流进行分类,确定流的优先级,从而可根据流的优先级、流的租户级别,计算数据流对资源池中的软件中间件的评价值,确定候选软件中间件,在所有流都在候选软件中间件中找到最短路径时,输出中间件部署结果。通过本发明实施例,实现了在网络中部署合适数量的软件中间件到合适的位置,并且能满足租户的质量要求,且实现了对网络全局的软件中间件部署,提高了资源利用率。
附图说明
图1是本发明实施例一提供的中间件部署系统的示意图;
图2是本发明实施例二提供的中间件部署方法的实现流程图;
图3是本发明实施例二中步骤S201的流程示意图;
图4是本发明实施例二中步骤S201的流分析示意图;
图5是本发明实施例三提供的中间件部署方法的流程示意图;
图6是本发明实施例四提供的中间件部署装置的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
以下结合具体实施例对本发明的具体实现进行详细描述:
实施例一
本发明实施例的中间件部署系统包括控制器、交换机和中间件,其中,控制器分别与交换机、中间件通信连接,中间件包括物理机和软件中间件。采用SDN(Software DefinedNetwork,软件定义网络)的网络设计思想,将中间件的控制面和数据面分开,通过控制器统一管理所有的中间件、交换机,从而对网络更有全局意识,且便于调控。
软件中间件为在物理机上通过虚拟化技术虚拟出的虚拟中间件,一个物理机可以对应一个或多个软件中间件。通过NFV(Network Function Virtualization,网络功能虚拟化)实现,NFV将现有网络设备通过虚拟化技术融合到标准服务器中,标准服务器上运行虚拟化软件并虚拟出多种网络设备,在虚拟出的网络地设备上可以运行着多种网元,且是通过软件方式运行。
进一步的,控制器用于控制软件中间件的开启/关闭,向软件中间件发送开启/关闭指令,以调整软件中间件的位置和数量;软件中间件包括管理模块,用于接收控制器发送的开启/关闭指令,并对应执行软件中间件的开启/关闭操作。
如图1所示,为本发明实施例一提供的中间件部署系统的示意图,包括控制器11、交换机12和中间件13。控制器11为OpenFlow控制器,交换机12为OpenFlow交换机,控制器11与交换机12之间的通信协议为OpenFlow协议,中间件13与控制器11通过扩展协议进行通信,其中,扩展协议为扩展的OpenFlow协议。
其中,控制器11与中间件13之间先建立通道,通道建立之后,中间件13向控制器11发起协议建立请求,以建立控制器11与中间件13之间的控制协议连接。通道建立和协议连接建立后,控制器11收集中间件13的设备信息、标签信息、接口信息等,如每个物理机上包含的软件中间件的类型、软件中间件ID(Identity,标识)、接口ID,控制器11还收集网络拓扑信息,通过拓扑收集协议收集全网的拓扑信息,通过LLDP(Link layer discoveryprotocol,链路层发现协议)报文收集,或管理员通过北向接口进行拓扑数据的配置,对于数据中心,可通过Cisco CDP(Cisco Discovery Protocol,思科发现协议)获得拓扑。
本发明实施例中的部署方法运行于控制器11中,本发明实施例中的部署装置位于控制器11中。控制器11中维护交换机12的状态管理以及中间件13的部署策略,控制器11将软件中间件的部署策略下发到软件中间件,软件中间件具体执行。交换机12中维护流表策略,中间件13中维护软件中间件的策略表。其中,图1中的软件中间件代理为软件中间件的管理模块。
作为一种可选的实施方式,控制器11中的软件控制系统,运行在物理服务器上,控制器11还用于收集中间件13的资源信息。中间件13为软件中间件,运行软件中间件的物理机称为资源池,资源池中的资源代理模块用于实时监控资源状态,并向控制器11上报资源状态,接收控制器11中的资源管理模块下发的命令并执行具体的动作,如软件中间件的开启或关闭。进一步的,部署系统还可以包括上层应用14以及客户机15。通过南向接口,资源池中的资源代理模块与控制器中的资源管理模块进行实时交互,同时将资源管理模块进行底层配置,提供接口,为控制器11的北向接口,从而可以给应用程序调用。
本发明实施例提供的中间件部署系统采用SDN和NFV技术,实现了控制器统一管理所有的中间件、交换机,从而对网络更有全局意识,且便于调控,可实现对软件中间件的动态部署,实时动态开启/关闭软件中间件,以满足多租户对网络时延和带宽性能的要求。
实施例二
图2示出了本发明实施例二提供的中间件部署方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
S201,识别数据流,确定数据流的优先级。
作为一种可选的实施方式,识别流的租户级别和流的类型,从而根据流的租户级别和流的类型确定流的优先级,流的优先级包括高优先权和低优先权两种级别。进一步可选的,步骤S201识别数据流,确定数据流的优先级具体可以包括:根据数据流的类型和数据流的用户级别将数据流的优先级确定为静态优先级或动态优先级,静态优先级为确定后不再变化,动态优先级为根据数据流的类型和数据流的用户级别在线动态变化。
具体实现中,流的优先级与租户的级别、流的类型有关。对于租户分为高级租户和普通租户,高级租户相比于普通租户享有更高的优先权。对于流设两个类型:长流和短流,短流通常数据量较小,需及时响应和传输,如搜索数据、邮件等,长流通常数据量较大,不需立即响应,如日志数据、备份等。
对于静态优先级,为已知租户的级别以及已经检测分析到流的类型,则可确定流的优先级,静态优先级确定后保持不变。如图3所示,为步骤S201的具体流程示意图,若流为高级租户的流且为短流,则该流的优先级为高级优先级,且为静态,若流为普通租户的流且为长流,则该流为低级优先级流,且为静态。
而动态优先级,并非恒定不变。如图3所示,若流为高级租户的流且为长流,则该流的初始默认优先级为高级优先级,但为动态优先级,若为普通租户且为短流,则该流的初始默认优先级为低级优先级,且为动态优先级。动态优先级意味着可在线根据流的比对情况自动调整。还可根据租户的需求进行修改,如根据租户的等待时间请求或资源占用情况重新设定租户的流的优先级。可通过控制器与上层应用程序的接口,租户在应用中设置需求。
将流的级别设为两个优先级,高优先权和低优先权,分队列排队。对于同类型的流,高级租户的流的级别高于普通租户的流权。对于不同类型的流,短流的级别高于长流。
若优先级为动态,还可直接对流的级别进行设置,将流设为高优先权或低优先权。在排队队列中,同一优先级的为先到先服务。不同优先级的,高优先级的流享有强占权,高优先权的流到达时若低优先权的流正在接受服务,可中断低优先权的流的服务,优先服务高优先权的流,直到高优先权的流服务完成后,从低优先权的流的中止点继续接受服务。
进一步可选的,数据流在网络中的时延包括传输时延和处理时延,传输时延包括发送、接收和在链路上的时间,考虑到发送和接收的时间相对于链路上的时间来说,非常短,可不计,对于固定的链路,认为链路时延是固定可预测的。处理时延包括在各个网元上的处理时间,包括决策时延、排队时延、处理包的时延等,决策时延相对短,可忽略不计。排队时延与负载、调度策略有关,传输时延与距离和传输速度有关,处理包的时延与主机的处理速度有关,传输时延、处理包的时延为可预测的时延。本发明中的排队时延为具有优先权的排队模型。
软件中间件上数据流的排队如图4所示,流到达软件中间件后,通过流分类确定流的类别和优先级,流根据优先级进入排队等待,软件中间件依据流的优先级进行调度,然后把流交给处理单元处理。分类算法和策略管理运行于控制器中,由控制器中的资源管理模块下发策略至软件中间件,资源池中的资源代理模块执行。将在软件中间件缓冲区中的数据包重新排序响应请求,从而将队列中的包调度到服务器中进行处理。本发明实施例中将流进行分类进入排队等待队列,进而调度到处理单元中处理。
S202,依据数据流的优先级、数据流的租户级别,计算资源池中的软件中间件的评价值,由评价值确定候选软件中间件。
作为一种可选的实施方式,计算每个流对每个资源池每个类型的软件中间件评价值,评价值与流优先级、软件中间件位置、软件中间件类型有关。然后统计每个类型的软件中间件在每个资源池的评价值的总和,即所有流对该资源池该类型的软件中间件的评价值之和,统计完成后,进行排序,用梅西评分法评价资源池在评价值上获得的优势。选择软件中间件的资源池的位置和数量后,在选中的软件资源池中选择软件中间件的类型和数量,从而确定软件中间件的候选位置和数量。
资源池中的软件中间件的评价值计算式子为:其中,fi表示第i个流,γ1、γ2、γ3分别为流优先级评价系数、中间件位置评价系数、中间件类型评价系数。为流fi的优先级评价值,优先权高评价值高。为资源池中的软件中间件的位置评价值,距离越近,评价值越高。为中软件中间件的类型评价值,与流有序经过的软件中间件的类型有关,类型匹配,平均值越高。
对同一资源池内的不同类型的软件中间件的评价值进行求和,并进行排序。计算资源池中所有软件中间件的平均值得到该资源池的评价值,并进行排序。用梅西评分法评价资源池在评价值上获得的优势,计算得到每个资源池的评价值,两两进行比较,如果差值大于0,则称资源池poolk击败了资源池poolj,评分差值为获胜资源池取得的优势。
从资源池的评价值的排序中选出获胜优势前d个资源池,d为根据流经过的软件中间件的数量设置的初始值。选择软件中间件的资源池的位置和数量后,在选中的软件资源池中选择软件中间件的类型和数量。从软件中间件平均值排序中选出评价值较高的软件中间件的类型作为该资源池中预选的软件中间件的类型。从而实现根据评价值确定候选软件中间件的位置信息和数量信息。
S203,在检测到数据流经过候选软件中间件的最短路径满足租户的级别对应阈值时,将候选软件中间件确定为中间件部署结果。
作为一种可选的实施方式,步骤S203之前,所述方法还包括步骤:
依据数据流对中间件的序列值,计算数据流在候选软件中间件中的最短路径,最短路径包括最小时延和最小带宽路径。
具体实现中,每条数据流都是按次序经过不同类型的软件中间件,每条流经过的软件中间件构成中间件的序列值。因此,将不同类型的软件中间件进行分类,并将同一类型的列入同一集合,则将流的序列值描述为按次序从各个软件中间件的集合中找到最佳的软件中间件,通过计算每个次序间的最短路径实现,其中,最短路径包括最小时延和最小带宽路径,而计算最短路径的方法采用Dijkstra算法实现,其中,边的权值为时延和带宽的加权和,最短路径即为权值最小的路径。
进一步的,还可以包括步骤:判断数据流的最短路径是否满足租户的级别对应阈值。具体实现中,对应不同的租户级别设置不同的阈值,为预先设定的最小时延和最小带宽加权和的最大允许值。
如果数据流的最短路径满足租户的级别对应阈值,则将候选软件中间件确定为中间件部署结果,即步骤S203。具体的,将候选软件中间件的位置信息和数量信息确定为中间件的部署结果。
如果数据流的最短路径不满足租户的级别对应阈值,调整所述候选软件中间件的位置信息和数量信息。
对每个软件中间件的处理的流进行统计,包括软件中间件的类型、软件中间件处理的流的总数量Numf以及软件中间件处理的流的带宽总和bandf。设软件中间件的可用带宽资源阈值上限为Cmb,软件中间件处理的流的数目上限为MaxNf,在满足条件:Numf>ηMaxNf,时,设为该软件中间件超载。其中,η、根据流的类型设定的比例值,例如默认初始值为80%,又如若软件中间件中短流的数目大于60%Numf,则将η、的默认值依据短流数目对应上调5%~10%。
标记超载的软件中间件,将该软件中间件处理的流按流的优先级进行排序,优先级高的在序列前面,高优先级的流享有更高的选择权,将排序在第ηMaxNf之后的流转移到其他同类型的软件中间件中,再次计算转移的流的最短路径,当所有流都有最短路径时,将候选软件中间件确定为中间件部署结果。
如果不能使得所有的流都满足各自的时延限制,则返回步骤S202,调整软件中间件的数量。调整软件中间件的数量时,新增软件中间件的数量为一个,新增的软件中间件的位置根据软件中间件的负载情况确定,对每个软件中间件处理的流的数目进行排序,将流数目最大的软件中间件的资源池确定为目标,查找该资源池是否存在同类型的软件中间件,如有,则在该资源池动态开启一个软件中间件,若无,则在距离该资源池最近的资源池中寻找同类型的软件中间件进行开启。确定新增的软件中间件的数量、类型和位置后,返回计算每个流的最短路径,直到所有的流找到最短路径,且最短路径满足租户的级别对应阈值。
进一步可选的,在流的数目较多且各种流对软件中间件的需求增大时,可通过控制器上运行的算法监测到需要部署的软件中间件的数量,以及从候选软件中间件中选择增加开启一定数量。在流的数目较少且各种流对软件中间件的需求减少时,网络中不需要开启更多数量的软件中间件,则可以将处理压力小且已经处理完流的软件中间件进行关闭。
本发明实施例提供一种中间件的部署方法,可识别数据流,确定述数据流的优先级,依据数据流的优先级、数据流的租户级别,计算资源池中的软件中间件的评价值,由评价值确定候选软件中间件,在检测到数据流经过候选软件中间件的最短路径满足租户的级别对应阈值时,将候选软件中间件确定为中间件部署结果。通过本发明实施例,可在网络中为不同的租户部署合适数量的软件中间件到合适的资源池位置中,且可实现根据网络中流的变化以及租户的级别动态调整软件中间件的数量,使得网络中的软件中间件的数量最少,且在满足租户的需求下软件中间件的资源利用率最高。
实施例三
图5示出了本发明实施例二提供的中间件部署方法的流程示意图,详述如下:
S501,计算每个流从开始节点有序到每个阶段软件中间件的最短路径。
具体实现中,具体实现中,每条数据流都是按次序经过不同类型的软件中间件,每条流经过的软件中间件构成中间件的序列值。因此,将不同类型的软件中间件进行分类,并将同一类型的列入同一集合,则将流的序列值描述为按次序从各个软件中间件的集合中找到最佳的软件中间件,即找出各个阶段的最短路径,通过计算每个次序间的最短路径实现,其中,最短路径包括最小时延和最小带宽路径,而计算最短路径的方法可包括但不局限于Dijkstra算法,还可以为其他算法实现,具体不受本发明实施例的限制。其中,边的权值为时延和带宽的加权和,最短路径即为权值最小的路径。
S502,计算每个流的最短总路径。
具体实现中,每个流的最短总路径包括经过链路、软件中间件的权值最小的路径。
S503,统计每个软件中间件的资源占用情况。
具体实现中,统计每个软件中间件的资源占用情况,对每个软件中间件的处理的流进行统计,包括软件中间件的类型、软件中间件处理的流的总数量以及软件中间件处理的流的带宽总和。
S504,判断软件中间件的资源占用情况是否大于软件中间件的资源可用情况。若判断结果为是,执行步骤S505。若判断结果为否,执行步骤S507。
S505,确定该软件中间件过载,转移过载的流。
具体实现中,软件中间件的资源可用情况可通过设置上限值来限定,如软件中间件处理的流的总数量为Numf,软件中间件处理的流的带宽总和为bandf,设软件中间件的可用带宽资源阈值上限为Cmb,软件中间件处理的流的数目上限为MaxNf,在满足条件:Numf>ηMaxNf,时,设为该软件中间件超载。其中,η、根据流的类型设定的比例值,如默认初始值为80%,若软件中间件中短流的数目大于60%Numf,则将η、的默认值依据短流数目对应上调5%~10%。
S506,计算转移的流的最短路径。
具体实现中,计算方法与步骤S501同,具体参见实施例二中具体描述,在此不重复。
S507,判断每条流的最短路径是否满足租户的质量要求。若判断结果为是,执行步骤S509。若判断结构为否,执行步骤S508。
S508,输出软件中间件的部署结果,
S509,调整部署算法。返回步骤S501。
具体实现中,判断每条流的最短路径是否满足租户的质量要求具体可以包括:判断数据流的最短路径是否满足租户的级别对应阈值。进一步的,对应不同的租户级别设置不同的阈值,为预先设定的最小时延和最小带宽加权和的最大允许值。
如果数据流的最短路径满足租户的级别对应阈值,则将候选软件中间件确定为中间件部署结果。如果数据流的最短路径不满足租户的级别对应阈值,调整候选软件中间件的位置信息和数量信息,调整完后返回步骤S501。
本发明实施例提供一种中间件的部署方法,可在网络中为不同的租户部署合适数量的软件中间件到合适的资源池位置中,且可实现根据网络中流的变化以及租户的级别动态调整软件中间件的数量,使得网络中的软件中间件的数量最少,且在满足租户的需求下软件中间件的资源利用率最高。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
实施例四
图6示出了本发明实施例四提供的中间件部署装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:流分析模块61、评价模块62和部署模块63。
流分析模块61,用于识别数据流,确定数据流的优先级。
具体实现中,流分析模块61用于识别流的租户级别和流的类型,从而根据流的租户级别和流的类型确定流的优先级,流的优先级包括高优先权和低优先权两种级别。
进一步可选的,流分析模块61具体用于:
根据数据流的类型和数据流的用户级别将数据流的优先级确定为静态优先级或动态优先级,静态优先级为确定后不再变化,动态优先级为根据数据流的类型和数据流的用户级别在线动态变化。
具体实现中,流的优先级与租户的级别、流的类型有关。对于租户分为高级租户和普通租户,高级租户相比于普通租户享有更高的优先权。对于流设两个类型:长流和短流,短流通常数据量较小,需及时响应和传输,如搜索数据、邮件等,长流通常数据量较大,不需立即响应,如日志数据、备份等。
对于静态优先级,为已知租户的级别以及已经检测分析到流的类型,则可确定流的优先级,静态优先级确定后保持不变。而动态优先级,并非恒定不变。还可根据租户的需求进行修改,如根据租户的等待时间请求或资源占用情况重新设定租户的流的优先级。可通过控制器与上层应用程序的接口,租户在应用中设置需求。
将流的级别设为两个优先级,高优先权和低优先权,分队列排队。对于同类型的流,高级租户的流的级别高于普通租户的流权。对于不同类型的流,短流的级别高于长流。
若优先级为动态,还可直接对流的级别进行设置,将流设为高优先权或低优先权。在排队队列中,同一优先级的为先到先服务。不同优先级的,高优先级的流享有强占权,高优先权的流到达时若低优先权的流正在接受服务,可中断低优先权的流的服务,优先服务高优先权的流,直到高优先权的流服务完成后,从低优先权的流的中止点继续接受服务。
评价模块62,用于依据数据流的优先级、数据流的租户级别,计算资源池中的软件中间件的评价值,由评价值确定候选软件中间件。
作为一种可选的实施方式,评价模块62计算每个流对每个资源池每个类型的软件中间件评价值,评价值与流优先级、软件中间件位置、软件中间件类型有关。然后统计每个类型的软件中间件在每个资源池的评价值的总和,即所有流对该资源池该类型的软件中间件的评价值之和,统计完成后,进行排序,用梅西评分法评价资源池在评价值上获得的优势。选择软件中间件的资源池的位置和数量后,在选中的软件资源池中选择软件中间件的类型和数量,从而确定软件中间件的候选位置和数量。
部署模块63,用于在检测到数据流经过候选软件中间件的最短路径满足租户的级别对应阈值时,将候选软件中间件确定为中间件部署结果。
进一步可选的,所述装置还包括:计算模块64。
计算模块64,用于依据数据流对中间件的序列值,计算数据流在候选软件中间件中的最短路径,最短路径包括最小时延和最小带宽路径。
进一步可选的,所述装置还包括:判断模块65以及调整模块66。
判断模块65,用于判断数据流的最短路径是否满足租户的级别对应阈值。在判断模块64的判断结果为是时,执行部署模块63,将候选软件中间件的位置信息和数量信息确定为中间件的部署结果。在判断模块65的判断结果为否时,调整模块66用于调整候选软件中间件的位置信息和数量信息。
进一步的,流分析模块61、评价模块62和部署模块63的执行细节可参见实施例二,分别对应实施例二中步骤S201、步骤S202、步骤S203的执行模块,在此不重复。
在本发明实施例中,中间件部署装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。
进一步的,本发明实施例还公开了一种控制器,用于运行图6所示的装置;该系统的结构和功能可参见图6所示实施例的相关描述,在此不赘述。在控制器进行流的优先级的确定、评价值的计算、最短路径的计算以及部署结果的确定等。需要说明的是,本实施例提供的控制器与图2、图3、图5所示的中间件部署方法相对应,为基于图2、图3、图5所示的中间件部署方法的执行主体。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种中间件部署方法,其特征在于,所述方法包括下述步骤:
识别数据流,确定所述数据流的优先级;
依据所述数据流的优先级、所述数据流的租户级别,计算资源池中的软件中间件的评价值,由所述评价值确定候选软件中间件;
在检测到所述数据流经过所述候选软件中间件的最短路径满足所述租户的级别对应阈值时,将所述候选软件中间件确定为中间件部署结果。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
依据所述数据流对中间件的序列值,计算所述数据流在所述候选软件中间件中的最短路径,所述最短路径包括最小时延和最小带宽路径。
3.如权利要求1所述的方法,其特征在于,所述由所述评价值确定候选软件中间件包括:由所述评价值确定候选软件中间件的位置信息和数量信息;
所述由所述评价值确定候选软件中间件之后,所述方法还包括:
判断所述数据流的最短路径是否满足所述租户的级别对应阈值;
若是,将所述候选软件中间件的位置信息和数量信息确定为中间件的部署结果;若否,调整所述候选软件中间件的位置信息和数量信息。
4.如权利要求1~3任一所述的方法,其特征在于,所述识别数据流,确定所述数据流的优先级包括:
根据所述数据流的类型和所述数据流的用户级别将所述数据流的优先级确定为静态优先级或动态优先级,所述静态优先级为确定后不再变化,所述动态优先级为根据数据流的类型和数据流的用户级别在线动态变化。
5.一种中间件部署装置,其特征在于,所述装置包括:
流分析模块,用于识别数据流,确定所述数据流的优先级;
评价模块,用于依据所述数据流的优先级、所述数据流的租户级别,计算资源池中的软件中间件的评价值,由所述评价值确定候选软件中间件;
部署模块,用于在检测到所述数据流经过所述候选软件中间件的最短路径满足所述租户的级别对应阈值时,将所述候选软件中间件确定为中间件部署结果。
6.如权利要求5所述的装置,其特征在于,所述装置还包括:
计算模块,用于依据所述数据流对中间件的序列值,计算所述数据流在所述候选软件中间件中的最短路径,所述最短路径包括最小时延和最小带宽路径。
7.如权利要求5所述的装置,其特征在于,所述评价模块具体用于:由所述评价值确定候选软件中间件的位置信息和数量信息;
所述装置还包括:判断模块和调整模块;
所述判断模块,用于判断所述数据流的最短路径是否满足所述租户的级别对应阈值;
在所述判断模块的判断结果为是时,执行所述部署模块,将所述候选软件中间件的位置信息和数量信息确定为中间件的部署结果;
在所述判断模块的判断结果为否时,所述调整模块,用于调整所述候选软件中间件的位置信息和数量信息。
8.如权利要求5~7任一所述的装置,其特征在于,所述流分析模块具体用于:根据所述数据流的类型和所述数据流的用户级别将所述数据流的优先级确定为静态优先级或动态优先级,所述静态优先级为确定后不再变化,所述动态优先级为根据数据流的类型和数据流的用户级别在线动态变化。
9.一种中间件部署系统,包括控制器、交换机和中间件,所述控制器分别与所述交换机、所述中间件通信连接,所述中间件包括物理机和软件中间件,其特征在于,所述控制器如权利要求5~8所述的装置。
10.如权利要求9所述的系统,其特征在于,所述控制器还用于控制所述软件中间件的开启/关闭,向所述软件中间件发送开启/关闭指令,以调整所述软件中间件的位置和数量;所述软件中间件包括管理模块,用于接收所述控制器发送的开启/关闭指令,并对应执行软件中间件的开启/关闭操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611110572.0A CN106550049B (zh) | 2016-12-02 | 2016-12-02 | 一种中间件部署方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611110572.0A CN106550049B (zh) | 2016-12-02 | 2016-12-02 | 一种中间件部署方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106550049A true CN106550049A (zh) | 2017-03-29 |
CN106550049B CN106550049B (zh) | 2019-04-30 |
Family
ID=58397045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611110572.0A Expired - Fee Related CN106550049B (zh) | 2016-12-02 | 2016-12-02 | 一种中间件部署方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106550049B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109743197A (zh) * | 2018-12-24 | 2019-05-10 | 中信百信银行股份有限公司 | 一种基于优先级配置的防火墙部署系统和方法 |
CN109787818A (zh) * | 2018-12-28 | 2019-05-21 | 联想(北京)有限公司 | 一种接口配置调整方法、装置与电子设备 |
CN110113269A (zh) * | 2019-04-28 | 2019-08-09 | 平安科技(深圳)有限公司 | 一种基于中间件的流量控制的方法及相关装置 |
CN111679883A (zh) * | 2020-05-18 | 2020-09-18 | 广东海光云科技股份有限公司 | 数据优先部署的方法及装置 |
US20220060966A1 (en) * | 2018-12-18 | 2022-02-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and Controller for Managing a Microwave Network |
CN114928614A (zh) * | 2022-05-16 | 2022-08-19 | 济南大学 | 基于sdn的确定性网络负载均衡方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137464A (zh) * | 2010-01-25 | 2011-07-27 | 中兴通讯股份有限公司 | 一种基站系统及其Abis口数据的发送方法 |
CN103841044A (zh) * | 2014-02-27 | 2014-06-04 | 中国科学技术大学苏州研究院 | 基于软件定义网络下面向不同流的带宽控制方法 |
CN104702577A (zh) * | 2013-12-09 | 2015-06-10 | 华为技术有限公司 | 数据流安全处理方法及装置 |
CN104796285A (zh) * | 2015-03-25 | 2015-07-22 | 清华大学深圳研究生院 | 软件定义网络中的中间盒调度方法及系统 |
CN105227495A (zh) * | 2015-10-29 | 2016-01-06 | 北京邮电大学 | 用于软件定义网络的转发规则配置方法及装置 |
CN105553725A (zh) * | 2015-12-18 | 2016-05-04 | 南京大学 | 一种多租户数据中心软件中间件的部署方法 |
-
2016
- 2016-12-02 CN CN201611110572.0A patent/CN106550049B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137464A (zh) * | 2010-01-25 | 2011-07-27 | 中兴通讯股份有限公司 | 一种基站系统及其Abis口数据的发送方法 |
CN104702577A (zh) * | 2013-12-09 | 2015-06-10 | 华为技术有限公司 | 数据流安全处理方法及装置 |
CN103841044A (zh) * | 2014-02-27 | 2014-06-04 | 中国科学技术大学苏州研究院 | 基于软件定义网络下面向不同流的带宽控制方法 |
CN104796285A (zh) * | 2015-03-25 | 2015-07-22 | 清华大学深圳研究生院 | 软件定义网络中的中间盒调度方法及系统 |
CN105227495A (zh) * | 2015-10-29 | 2016-01-06 | 北京邮电大学 | 用于软件定义网络的转发规则配置方法及装置 |
CN105553725A (zh) * | 2015-12-18 | 2016-05-04 | 南京大学 | 一种多租户数据中心软件中间件的部署方法 |
Non-Patent Citations (1)
Title |
---|
房爱军、汪军: "网络功能虚拟化:基于虚拟化的中间件盒子", 《中兴通讯技术》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220060966A1 (en) * | 2018-12-18 | 2022-02-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and Controller for Managing a Microwave Network |
CN109743197A (zh) * | 2018-12-24 | 2019-05-10 | 中信百信银行股份有限公司 | 一种基于优先级配置的防火墙部署系统和方法 |
CN109743197B (zh) * | 2018-12-24 | 2022-07-01 | 中信百信银行股份有限公司 | 一种基于优先级配置的防火墙部署系统和方法 |
CN109787818A (zh) * | 2018-12-28 | 2019-05-21 | 联想(北京)有限公司 | 一种接口配置调整方法、装置与电子设备 |
CN109787818B (zh) * | 2018-12-28 | 2020-08-25 | 联想(北京)有限公司 | 一种接口配置调整方法、装置与电子设备 |
CN110113269A (zh) * | 2019-04-28 | 2019-08-09 | 平安科技(深圳)有限公司 | 一种基于中间件的流量控制的方法及相关装置 |
CN110113269B (zh) * | 2019-04-28 | 2022-10-04 | 平安科技(深圳)有限公司 | 一种基于中间件的流量控制的方法及相关装置 |
CN111679883A (zh) * | 2020-05-18 | 2020-09-18 | 广东海光云科技股份有限公司 | 数据优先部署的方法及装置 |
CN111679883B (zh) * | 2020-05-18 | 2023-03-28 | 广东海光云科技股份有限公司 | 数据优先部署的方法及装置 |
CN114928614A (zh) * | 2022-05-16 | 2022-08-19 | 济南大学 | 基于sdn的确定性网络负载均衡方法及系统 |
CN114928614B (zh) * | 2022-05-16 | 2023-05-23 | 济南大学 | 基于sdn的确定性网络负载均衡方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106550049B (zh) | 2019-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106550049B (zh) | 一种中间件部署方法、装置及系统 | |
Neghabi et al. | Load balancing mechanisms in the software defined networks: a systematic and comprehensive review of the literature | |
CN106059821B (zh) | 一种基于sdn的数据中心业务服务质量保障方法 | |
Rojas-Cessa et al. | Schemes for fast transmission of flows in data center networks | |
US10225193B2 (en) | Congestion sensitive path-balancing | |
US9781012B2 (en) | Behavior monitoring and compliance for multi-tenant resources | |
Hafeez et al. | Detection and mitigation of congestion in SDN enabled data center networks: A survey | |
CN107579922B (zh) | 网络负载均衡装置和方法 | |
US20170054641A1 (en) | Predictive network traffic management | |
CN108259367A (zh) | 一种基于软件定义网络的服务感知的流策略定制方法 | |
CN105141617B (zh) | 一种数据中心间服务功能体的部署调整方法及装置 | |
CN108616458A (zh) | 客户端设备上调度分组传输的系统和方法 | |
Zhang et al. | Efficient flow detection and scheduling for SDN-based big data centers | |
CN105791151B (zh) | 一种动态流量控制方法,及装置 | |
Chou et al. | A security service on-demand architecture in SDN | |
Abdollahi et al. | Flow-aware forwarding in SDN datacenters using a knapsack-PSO-based solution | |
Tang et al. | Elephant Flow Detection Mechanism in SDN‐Based Data Center Networks | |
Manzoor et al. | Towards dynamic two-tier load balancing for software defined WiFi networks | |
Nafea et al. | Improving the performance and reliability of mobile commerce in developing countries | |
Montazerolghaem | Softwarization and virtualization of VoIP networks | |
George et al. | Congestion control mechanism for unresponsive flows in internet through active queue management system (AQM) | |
CN111786887A (zh) | 由控制设备执行的数据转发方法、装置、计算设备和介质 | |
CN107404454A (zh) | 通话质量调整方法及装置 | |
Li et al. | LBBESA: An efficient software‐defined networking load‐balancing scheme based on elevator scheduling algorithm | |
CN105812437A (zh) | 一种业务分发方法、系统及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190430 |