CN104158869B - A kind of streaming media server clustered deploy(ment) method based on OpenStack - Google Patents

A kind of streaming media server clustered deploy(ment) method based on OpenStack Download PDF

Info

Publication number
CN104158869B
CN104158869B CN201410385215.XA CN201410385215A CN104158869B CN 104158869 B CN104158869 B CN 104158869B CN 201410385215 A CN201410385215 A CN 201410385215A CN 104158869 B CN104158869 B CN 104158869B
Authority
CN
China
Prior art keywords
streaming media
media server
virtual machine
cluster
cloud platform
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.)
Active
Application number
CN201410385215.XA
Other languages
Chinese (zh)
Other versions
CN104158869A (en
Inventor
郑庆华
陈宇轩
杜彪
宋成龙
赵辉
钱北平
张未展
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Jiaotong University
Original Assignee
Xian Jiaotong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xian Jiaotong University filed Critical Xian Jiaotong University
Priority to CN201410385215.XA priority Critical patent/CN104158869B/en
Publication of CN104158869A publication Critical patent/CN104158869A/en
Application granted granted Critical
Publication of CN104158869B publication Critical patent/CN104158869B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The invention discloses the streaming media server clustered deploy(ment) method based on OpenStack, with the communication bandwidth between streaming media server loading demand and streaming media server, set up the load bandwidth consumption models of streaming media server cluster; According to streaming media server cluster load bandwidth consumption models, convection media server cluster carries out sub-clustering; When disposing streaming media server cluster, according to virtual-machine data network link amount of bandwidth in OpenStack cloud platform, by virtual machine partitions in cloud platform; According to sub-clustering, division result, carry out bunch district coupling and bunch in streaming media server mate with virtual machine in district, realize the deployment of convection media server cluster on OpenStack cloud platform.

Description

A kind of streaming media server clustered deploy(ment) method based on OpenStack
Technical field
The invention belongs to multimedia field of cloud calculation, relate to the streaming media server clustered deploy(ment) method of OpenStack cloud platform, with the communication bandwidth between streaming media server loading demand and streaming media server, resources of virtual machine subregion in the sub-clustering of convection media server cluster, OpenStack cloud platform, bunch district coupling, thus realize the deployment of convection media server on OpenStack platform.
Background technology
Along with the development that cloud computing technology these several years is like a raging fire, be born a kind of emerging technology that can be used for providing multimedia service and application, multimedia cloud computing.It is based on the novel computation schema of cloud, greatly facilitates the propagation of media information between the network user and shares.This large-scale trans-regional accessing pattern, will greatly promote the development of information industry.The following several sections of related to the present invention patents belonging to multimedia field of cloud calculation retrieved, they respectively:
1. Chinese patent CN103037002A, the dispositions method of server cluster and system in a kind of cloud computing cluster environment;
2. Chinese patent CN103354545, a kind of P2P streaming media server clustered deploy(ment) method based on cloud computing;
3. Chinese patent CN103442034, a kind of stream media service method based on cloud computing technology and system;
In above-mentioned patent 1, inventor discloses dispositions method and the system of server cluster in a kind of cloud computing cluster environment, can solve the defect that in current cloud computing cluster environment deployment, large-scale cluster node allocative efficiency is low.But in this way, deployment is not performance and efficiency at OpenStack cloud platform streaming media server cluster.
In above-mentioned patent 2, inventor proposes a kind of P2P streaming media server clustered deploy(ment) method based on cloud computing, and prediction has the bandwidth demand of the P2P flow medium live system that time delay ensures, virtual stream media server cluster is structured on cloud platform DCN network.The method well solves the problem of P2P streaming media server cluster on cloud, but does not consider the bandwidth difference between non-P2P streaming media server cluster, and considers other resource comprehensives of server.
In above-mentioned patent 3, inventors herein propose a kind of stream media service method based on cloud computing technology, this invention can solve the poor expandability, poor reliability, resource utilization is low, lower deployment cost the is high technical problem that exist in existing stream media service system, but expect weakness with in the combination of cloud platform, do not consider the problem of the finiteness of cloud platform resource.
Summary of the invention
In order to overcome above-mentioned the deficiencies in the prior art, the object of the invention is to the invention discloses the streaming media server clustered deploy(ment) method based on OpenStack, with the communication bandwidth between streaming media server loading demand and streaming media server, set up the load bandwidth consumption models of streaming media server cluster; According to streaming media server cluster load bandwidth consumption models, convection media server cluster carries out sub-clustering; When disposing streaming media server cluster, according to virtual-machine data network link amount of bandwidth in OpenStack cloud platform, by virtual machine partitions in cloud platform; According to sub-clustering, division result, carry out bunch district's coupling and mate with virtual machine in district with bunch server, realize the deployment of convection media server cluster on OpenStack cloud platform.
To achieve these goals, the technical solution used in the present invention is:
Based on a streaming media server clustered deploy(ment) method of OpenStack, comprise following method: build streaming media server cluster load bandwidth consumption models; With cluster load bandwidth consumption models for foundation, build loading demand vector V (j) and the communication bandwidth cost matrix C of streaming media server in cluster m × m, set up streaming media server cluster load bandwidth consumption models; With in OpenStack cloud platform between virtual machine data network communications link for foundation, build virtual machine load capacity vector P (j) and data network cost matrix D in OpenStack cloud platform n × n; With streaming media server cluster and OpenStack virtual machine bandwidth load for foundation, build streaming media server cluster sub-clustering and OpenStack resources of virtual machine partition method, Cu Qunyu district faciation coupling, in bunch, in streaming media server and district, virtual machine matches, build streaming media server clustered deploy(ment) method, and then by streaming media server clustered deploy(ment) to OpenStack cloud platform.
The vectorial V (i) of the loading demand of streaming media server and communication bandwidth cost matrix C in described structure cluster m × mstep be:
Step1: initialization streaming media server loading demand vector V (j) bandwidth communication cost matrix C m × m, make, V (i)={ 0,0,0}, C m × m(i, j)=0, wherein i, j represent the numbering of streaming media server, and m represents number of servers in streaming media server cluster;
Step2: convection media server cluster, adopts breadth traversal method, travels through whole cluster; If the core cpu number that in cluster, a jth streaming media server needs is Ic cpuia, memory headroom size is Ic memib, external service bandwidth summation is Ic trafic, then remember V (i)={ Ic cpui, Ic memi, Ic tarfi; If the forwarding rate that there is Streaming Media between streaming media server i and streaming media server j is v, then remember C m × m(i, j)=v otherwise note C m × m(i, j)=∞;
Step3: obtain complete streaming media server cluster loading demand vector V (i) and communication cost Matrix C m × m(i, j).
Described OpenStack cloud platform virtual machine load capacity vector P (i ') and data network cost matrix D n × nstep be:
Virtual machine load capacity vector P (i ') and data network bandwidth communication cost matrix D in Step1: initialization OpenStack cloud platform n × n, make P (i ')={ 0,0,0}, D n × n(i ', j ')=0, the wherein numbering of virtual machine in i ', j ' expression cloud platform;
Step2: according to virtual machine configuration and network configuration in OpenStack platform, adopt breadth traversal method, travel through whole OpenStack cloud platform; If cloud platform can provide the i-th ' individual virtual machine core cpu number to be Id cpui ', memory headroom size is Id memi ', external service bandwidth summation is Id trafi ', then P (i ')={ Id is remembered cpui ', Id memi ', Id trafi '; If there is data link bandwidth between virtual machine i ' and virtual machine j ' is u, then remember D n × n(i, j)=u; Otherwise note D n × n(i, j)=∞;
Step3: obtain complete OpenStack cloud platform virtual machine load capacity vector P (i ') and data network communications cost matrix D n × n.
The step of described streaming media server cluster sub-clustering is:
Step1: build streaming media server loading demand vector V (i)={ Ic cpui, Ic memi, Ic trafi, 1≤i≤m, streaming media server trunking communication cost matrix C m × m; And remember that current cluster is current cluster, a bunch set is designated as VC, and bunch set sizes is that in 1, VC, a kth sub-clustering is designated as VC (k);
Step2: with streaming media server trunking communication cost matrix for foundation, choose v (i, j)=min{v|v=C n × n(i, j), 1≤i≤m, 1≤j≤m};
Step3: carry out sub-clustering to current cluster, assert in logic and does not contact between streaming media server i and streaming media server j, current cluster is divided into two parts VC (i) and VC (j), and join in VC, bunch set sizes adds 1, juxtaposition v (i, j)=∞;
Step4: according to streaming media server loading demand vector V (i)={ Ic in each sub-clustering cpui, Ic memi, Ic traficalculate streaming media server Clusters VC (k) maximum load demand LC mtop(k), streaming media server average load demand in each bunch k represents that sub-clustering is numbered;
Step4: if VC bunch of set sizes is less than turn Step2, otherwise, exit.
The step of described OpenStack cloud platform virtual machine subregion is:
Step1: initialization OpenStack cloud platform virtual machine load capacity vector P (i ')={ Id cpui ', Id memi ', Id trafi ', data network link communication cost matrix D between virtual machine in 1≤i '≤n, OpenStack cloud platform nxn, and remember that current platform is work as proparea, district's set is designated as OD, and district's set sizes is that kth in 1, OD ' individual subregion is designated as OD (k ');
Step2: with virtual-machine data network link communication cost matrix in OpenStack cloud platform for foundation, chooses u (i ', j ')=min{u|u=D n × n(i ', j '), 1≤i '≤n, 1≤j '≤n};
Step3: with u (i ', j ') be foundation, subregion is carried out to when proparea, assert when not contacting between virtual machine i ' and virtual machine j ' in proparea in logic, dividing into two parts by current, be designated as OD (i ') and OD (j '), and join in OD, district's set sizes adds 1, and juxtaposition u (i ', j ')=∞;
Step4: according to interior virtual machine load capacity vector P (i ')={ Id of subregion OD (k ') cpui ', Id memi ', Id trafi ', calculate the maximum load capability LD of each district virtual machine clustertopvirtual machine average load ability in (k ') and each district
Step5: if OD set sizes is less than turn Step2, otherwise, exit.
The step that described Streaming Media Virtual Server Cluster is mated mutually with OpenStack cloud platform virtual machine partition of nodes is:
Step1: each bunch of convection media server cluster, in OpenStack cloud platform, each district of virtual machine is respectively according to average load demand the descending of average load ability build Streaming Media submanifold queue VC ' and virtual machine partitions queue OD ';
Step2: if queue OD ' in virtual machine partitions is empty, then it fails to match, exits; If Streaming Media submanifold queue VC ' is empty, exit;
Step3: in Streaming Media submanifold queue VC ', get kth sub-clustering VC ' (k), in virtual machine partitions queue OD ', finds kth ' subregion OD ' (k '), if meet and then this bunch of VC ' (k) is divided into this virtual machine partitions OD ' (k ') to dispose, upgrade streaming media server cluster submanifold queue VC ' and OpenStack cloud platform virtual machine partition queue OD ', return step2, otherwise this bunch is carried out sub-clustering, return step1.
The step that in described streaming media server Clusters server and OpenStack cloud platform area, virtual machine matches is:
Step1: initialization streaming media server cluster is at the deployment matrix f of OpenStack cloud platform m × nif wherein i-th server is deployed on the i-th ' individual virtual machine, then
F m × n(i, i ')=1,1≤i≤m, 1≤i '≤n; Otherwise, f m × n(i, i ')=0,1≤i≤m, 1≤i '≤n;
Step2: in the virtual machine partitions OD ' (k ') of OpenStack cloud platform, according to P (i '), virtual machine load capacity queue OD ' P={x|x=P (i ') in tectonic reverse, the individual virtual machine of i ' is in OD ' (k ') };
Step3: in Streaming Media submanifold VC ' (k) matched with this subregion, according to V (i), structure bunch in streaming media server loading demand queue VC ' V={y|y=V (i), i-th server is in VC ' (k) };
Step4: in this Streaming Media submanifold VC ' (k), from loading demand queue VC ' V, gets i-th streaming media server, successively according to actual loading demand V (i)={ Ic of this server cpui, Ic memi, Ic trafi, with the i-th ' individual virtual machine node load capacity P (i ')={ Id in the OD ' P of this virtual machine partitions cpui ', Id memi ', Id trafi 'carry out load matched one by one, choose e (i, i ', δ)>=0 and min{e (i, i ', δ) } virtual machine node as object deployment point, wherein
e cpu ( i , i ′ , δ ) = δLc cpui - Ld cpui ′ δLc cpui
e mem ( i , i ′ , δ ) = δLc memi - Ld memi ′ δLc memi
e traf ( i , i ′ , δ ) = δLc trafi - Ld trafi ′ δLc trafi
e(i,i′,δ)=A·e cpu(i,i′,δ)+B·e mem(i,i′,δ)+C·e traf(i,i′,δ)
Wherein, δ represents deployment point virtual machine performance down ratio;
E cpu(i, i ', δ) represents the matching degree of current i-th streaming media server and the i-th ' individual virtual machine cpu;
E mem(i, i ', δ) represents the matching degree of current i-th streaming media server and the i-th ' individual virutal machine memory;
E traf(i, i ', δ) represents the matching degree of current i-th streaming media server and the i-th ' individual virtual machine bandwidth;
A represents CPU weight proportion, and B represents internal memory weight proportion, and C represents bandwidth weighting ratio, and empirical value here value is A=0.25, B=0.25, C=0.5;
Step5: the deployment matrix f upgrading OpenStack cloud platform n × n, from virtual machine load capacity queue OD ' P, remove the i-th ' individual virtual machine, from streaming media server loading demand queue VC ' V, remove i-th streaming media server;
Step6: if Streaming Media submanifold queue VC ' V is empty, exports and dispose matrix f n × n, otherwise turn Step3;
Compared with prior art, advantage of the present invention is:
1, streaming media service cluster cluster-dividing method is based upon between streaming media server on bandwidth communication, with the minimum data relevance sub-clustering between server, larger cluster is converted into the less cluster of scale.
2, the partition method of OpenStack cloud platform is foundation by data network communications link size between virtual machine, and target virtual machine district is transformed into several block of cells from a bulk of, is convenient to dispose.
3, Cu He district overall load, bandwidth match is considered, streaming media server cluster optimization takies virtual machine block in OpenStack cloud platform, virtual machine loading demand and load capacity optimization matching in streaming media server, district in bunch, ensure the optimal utilization of resources of virtual machine in OpenStack cloud platform.
Accompanying drawing explanation
Fig. 1 is the streaming media server clustered deploy(ment) method system Organization Chart of a kind of OpenStack cloud platform of the present invention.
Fig. 2 of the present inventionly sets up streaming media cluster system load bandwidth demand block diagram.
Fig. 3 is structure OpenStack cloud platform virtual machine resource load of the present invention and communication network bandwidth block diagram.
Fig. 4 is that the present invention builds Streaming Media Virtual Server Cluster sub-clustering block diagram.
Fig. 5 is that the present invention builds OpenStack cloud platform virtual machine resource partitioning block diagram.
Fig. 6 is that the present invention builds coupling block diagram in Ji Cu district of resources of virtual machine district in streaming media server Clusters collection and cloud platform OpenStack.
Fig. 7 is that the present invention builds streaming media server and cloud platform OpenStack virtual machine partitions collection deploying virtual machine point load matched block diagram in streaming media server Clusters collection.
Embodiment
Describe the present invention below in conjunction with drawings and Examples.
System architecture
With reference to shown in Fig. 1, the streaming media server clustered deploy(ment) method system Organization Chart of a kind of OpenStack cloud of the present invention platform, is made up of streaming media server cluster and OpenStack cloud platform, specific as follows:
Streaming media server cluster: the server specifically carrying out direct broadcast service to user; According to certain topological structure, the streaming media service cluster be made up of multiple streaming media server;
OpenStack cloud platform: as OpenStack cloud platform virtual machine node; As the physical host of OpenStack cloud platform courses node, for monitoring the state of virtual server, control unlatching and the shutoff operation of virtual server; Connect the virtual machine switch of OpenStack virtual machine node or the data communication network of virtual router composition.
System of Stream Media Cluster Server load bandwidth demand method.
Build streaming media server cluster load bandwidth demand model, with reference to figure 2, the implementation procedure of this operation is as follows:
Step1: initialization streaming media server loading demand vector V (i) and communication cost cost matrix C m × m, make V (i)={ 0,0,0}, C m × m(i, j)=0, wherein i, j represent the numbering of streaming media server, and m represents number of servers in streaming media server cluster;
Step2: convection media server cluster, adopts breadth traversal method, travels through whole cluster; If the core cpu number of i-th streaming media server needs is Ic in cluster cpui, memory headroom size is Ic memi, external service bandwidth summation is Ic trafi, then V (i)={ Ic is remembered cpui, Ic memi, Ic tarfi; If the forwarding rate that there is Streaming Media between streaming media server i and streaming media server j is v, then remember C m × m(i, j)=v; Otherwise note C m × m(i, j)=∞;
Step3: obtain complete streaming media server cluster loading demand vector V (i) and communication cost Matrix C m × m.
The platform virtual machine load of OpenStack cloud and communication network bandwidth construction method
Build based on the platform virtual machine load of OpenStack cloud and communication network bandwidth model, with reference to figure 3, the implementation procedure of this operation is as follows:
Virtual machine load capacity vector P (i ') and data network communications bandwidth cost matrix D in Step1: initialization OpenStack cloud platform n × n, make P (i ')={ 0,0,0}, D n × n(i ', j ')=0, the wherein numbering of i ', j ' expression virtual machine, n represents virtual machine number in OpenStack cloud platform;
Step2: according to virtual machine configuration and network configuration in OpenStack cloud platform, adopt breadth traversal method, travel through whole OpenStack cloud platform; If cloud platform can provide the i-th ' individual virtual machine core cpu number to be Id cpui ', memory headroom size is Id memi ', external service bandwidth summation is Id trafi ', then P (i ')={ Id is remembered cpui ', Id memi ', Id trafi '; If there is data link bandwidth between virtual machine i ' and virtual machine j ' is u, then remember D n × n(i ', j ')=u; Otherwise note D n × n(i ', j ')=∞;
Step3: obtain complete OpenStack cloud platform virtual machine load capacity vector P (i ') and data network communications cost matrix D n × n.
Streaming media server cluster cluster-dividing method.
According to streaming media server cluster bandwidth consumption model, convection media server cluster carries out sub-clustering.With reference to figure 4, the implementation procedure of this operation is as follows:
Step1: build streaming media server loading demand vector V (i)={ Ic cpui, Ic memi, Ic trafi, 1≤i≤m, streaming media server trunking communication cost matrix C m × m; And remember that current cluster is current cluster, a bunch set is designated as VC, and bunch set sizes is that in 1, VC, a kth sub-clustering is designated as VC (k);
Step2: with streaming media server trunking communication cost matrix C m × mfor foundation, choose v (i, j)=min{v|v=C m × m(i, j), 1≤i≤m, 1≤j≤m};
Step3: with v (i, j) be foundation, sub-clustering is carried out to current cluster, assert in logic and do not contact between streaming media server i and streaming media server j, current cluster is divided into two parts VC (i) and VC (j), and joins in VC, a bunch set sizes adds 1, juxtaposition v (i, j)=∞;
Step4: according to streaming media server loading demand vector V (i)={ Ic in sub-clustering VC (k) cpui, Ic memi, Ic trafi, calculate the maximum load demand LC of streaming media server Clusters VC (k) mtopstreaming media server average load demand in (k) and each bunch k represents that sub-clustering is numbered;
Wherein, LC mtop, computational methods are:
LC mtop ( k ) = { max i ∈ zone Ic trafi , max i ∈ zone Ic cpui , max i ∈ zone Ic memi }
LC mtop ( k ) ‾ = { Σ i ∈ zone Ic trafi | | zone | | , Σ i ∈ zone Ic cpui | | zone | , Σ i ∈ zone Ic memi | | zone | | }
Zone represents current cluster VC (k), || zone|| represents number of servers in current cluster VC (k).
Step5: if VC bunch of set sizes is less than turn Step2, otherwise, exit.
Build OpenStack cloud platform virtual machine partition method.
According to virtual-machine data network link amount of bandwidth in OpenStack cloud platform, by virtual machine partitions in cloud platform.With reference to figure 5, the implementation procedure of this operation is as follows:
Step1: initialization OpenStack cloud platform virtual machine node load Efficiency analysis P (i ')={ Id cpui ', Id memi ', Id trafi ', data network link communication cost matrix D between virtual machine in 1≤i '≤n, OpenStack cloud platform n × n, and remember that current platform is work as proparea, district's set is designated as OD, and district's set sizes is that kth in 1, OD ' individual subregion is designated as OD (k ');
Step2: with virtual-machine data network link communication cost matrix in OpenStack cloud platform for foundation, chooses u (i ', j ')=min{u|u=D n × n(i ', j '), 1≤i '≤n, 1≤j '≤n};
Step3: with u (i ', j ') be foundation, subregion is carried out to when proparea, assert when not contacting between virtual machine i ' and virtual machine j ' in proparea in logic, dividing into two parts by current, be designated as OD (i ') and OD (j '), and join in OD, district's set sizes adds 1, and juxtaposition u (i ', j ')=∞;
Step4: according to interior virtual machine load capacity vector P (i ')={ Id of subregion OD (k ') cpui ', Id memi ', Id trafi ', calculate the maximum load capability LD of each district virtual machine clustertopvirtual machine average load ability in (k ') and each district
Wherein, LD clustertop(k '), computational methods are:
LD clustertop ( k ′ ) = { max i ∈ cluster Id trafi , max i ∈ cluster Id cpui , max i ∈ cluster Id memi }
LD clustertop ( k ′ ) ‾ = { Σ i ∈ cluster Id trafi | | cluster | | , Σ i ∈ cluster Id cpui | | cluster | , Σ i ∈ cluster Id memi | | cluster | | }
Wherein cluster represents current bay OD (k '), || cluster|| represents virtual machine number in current bay;
Step5: if OD set sizes is less than turn Step2, otherwise, exit.
Streaming media server Clusters collection and OpenStack cloud platform virtual machine district Ji Cu district matching process.
According to sub-clustering and the OpenStack cloud platform virtual machine division result of streaming media server cluster, coupling streaming media server bunch and certain district of OpenStack cloud platform virtual machine, with reference to figure 6, the implementation procedure of this operation is as follows:
Step1: each bunch of convection media server cluster, in OpenStack cloud platform, each district of virtual machine is respectively according to average load demand the descending of average load ability build Streaming Media submanifold queue VC ' and virtual machine partitions queue OD ';
Step2: if queue OD ' in virtual machine partitions is empty, then it fails to match, exits; If Streaming Media submanifold queue VC ' is empty, exit;
Step3: in Streaming Media submanifold queue VC ', get kth sub-clustering VC ' (k), in virtual machine partitions queue OD ', finds kth ' subregion OD ' (k '), if meet and then this bunch of VC ' (k) is divided into this virtual machine partitions OD ' (k ') to dispose, upgrade streaming media server cluster submanifold queue VC ' and OpenStack cloud platform virtual machine partition queue OD ', return step2, otherwise this bunch is carried out sub-clustering, return step1.
Virtual server and OpenStack cloud platform virtual machine district collection virtual machine node load matched method in streaming media server Clusters collection.
According to the sub-clustering of streaming media server cluster, OpenStack cloud platform virtual machine division result, carry out bunch server and mate with virtual machine in district, realize the deployment of convection media server cluster on OpenStack cloud platform.In wherein guaranteeing bunch, in streaming media server load request and district, virtual machine load capacity reaches maximum coupling, and with reference to figure 7, the implementation procedure of this operation is as follows:
Step1: initialization streaming media server cluster is at the deployment matrix f of OpenStack cloud platform m × nif wherein i-th server is deployed on the i-th ' individual virtual machine, then
F m × n(i, i ')=1,1≤i≤m, 1≤i '≤n; Otherwise, f m × n(i, i ')=0,1≤i≤m, 1≤i '≤n;
Step2: in the virtual machine partitions OD ' (k ') of OpenStack cloud platform, according to P (i '), virtual machine load capacity queue OD ' P={x|x=P (i ') in tectonic reverse, the individual virtual machine of i ' is in OD ' (k ') };
Step3: in Streaming Media submanifold VC ' (k) matched with this subregion, according to V (i), structure bunch in streaming media server loading demand queue VC ' V={y|y=V (i), i-th server is in VC ' (k) };
Step4: in this Streaming Media submanifold VC ' (k), from loading demand queue VC ' V, gets i-th streaming media server, successively according to actual loading demand V (i)={ Ic of this server cpui, Ic memi, Ic trafi, with the i-th ' individual virtual machine node load capacity P (i ')={ Id in the OD ' P of this virtual machine partitions cpui ', Id memi ', Id trafi 'carry out load matched one by one, choose e (i, i ', δ)>=0 and min{e (i, i ', δ) } virtual machine node as object deployment point, wherein
e cpu ( i , i ′ , δ ) = δLc cpui - Ld cpui ′ δLc cpui
e mem ( i , i ′ , δ ) = δLc memi - Ld memi ′ δLc memi
e traf ( i , i ′ , δ ) = δLc trafi - Ld trafi ′ δLc trafi
e(i,i′,δ)=A·e cpu(i,i′,δ)+B·e mem(i,i′,δ)+C·e traf(i,i′,δ)
Wherein, δ represents deployment point virtual machine performance down ratio;
E cpu(i, i ', δ) represents the matching degree of current i-th streaming media server and the i-th ' individual virtual machine cpu;
E mem(i, i ', δ) represents the matching degree of current i-th streaming media server and the i-th ' individual virutal machine memory;
E traf(i, i ', δ) represents the matching degree of current i-th streaming media server and the i-th ' individual virtual machine bandwidth;
A represents CPU weight proportion, and B represents internal memory weight proportion, and C represents bandwidth weighting ratio, and empirical value here value is A=0.25, B=0.25, C=0.5;
Step5: the deployment matrix f upgrading OpenStack cloud platform n × n, from virtual machine load capacity queue OD ' P, remove the i-th ' individual virtual machine, from streaming media server loading demand queue VC ' V, remove i-th streaming media server;
Step6: if Streaming Media submanifold queue VC ' V is empty, exports and dispose matrix f n × n, otherwise turn Step3.

Claims (7)

1., based on a streaming media server clustered deploy(ment) method of OpenStack, it is characterized in that, comprising:
With the communication bandwidth between streaming media server cluster loading demand and server for foundation, build loading demand vector V (i) and the communication bandwidth cost matrix C of streaming media server in cluster m × m, thus set up the load bandwidth consumption models of streaming media server cluster, wherein i represents the numbering of streaming media server, and m represents number of servers in streaming media server cluster;
With virtual-machine data network communication link in OpenStack cloud platform for foundation, build virtual machine load capacity vector P (i ') and data network cost matrix D in OpenStack cloud platform n × n, the wherein numbering of i ' expression virtual machine, n represents virtual machine number in OpenStack cloud platform;
Maximizing with virtual machine load bandwidth in OpenStack cloud platform with streaming media server mates for foundation, the sub-clustering of convection media server cluster, to virtual machine partitions in OpenStack cloud platform, carry out bunch district coupling and bunch in streaming media server mate with virtual machine in district, thus by streaming media server clustered deploy(ment) to OpenStack cloud platform.
2. according to claim 1 based on the streaming media server clustered deploy(ment) method of OpenStack, it is characterized in that, the vectorial V (i) of the loading demand of streaming media server and communication bandwidth cost matrix C in described structure cluster m × m, the step setting up the load bandwidth consumption models of streaming media server cluster is:
Step1: initialization streaming media server loading demand vector V (i) and communication cost cost matrix C m × m, make V (i)={ 0,0,0}, C m × m(i, j)=0, wherein i, j represent the numbering of streaming media server, and m represents number of servers in streaming media server cluster;
Step2: convection media server cluster, adopts breadth traversal method, travels through whole cluster; If the core cpu number of i-th streaming media server needs is Ic in cluster cpui, memory headroom size is Ic memi, external service bandwidth summation is Ic trafi, then V (i)={ Ic is remembered cpui, Ic memi, Ic tarfi; If the forwarding rate that there is Streaming Media between streaming media server i and streaming media server j is v, then remember C m × m(i, j)=v; Otherwise note C m × m(i, j)=∞;
Step3: obtain complete streaming media server cluster loading demand vector V (i) and communication cost Matrix C m × m.
3., according to claim 2 based on the streaming media server clustered deploy(ment) method of OpenStack, it is characterized in that, the step of described streaming media server cluster sub-clustering is:
Step1: build streaming media server loading demand vector V (i)={ Ic cpui, Ic memi, Ic trafi, 1≤i≤m, streaming media server trunking communication cost matrix C m × m; And remember that current cluster is current cluster, a bunch set is designated as VC, and bunch set sizes is that in 1, VC, a kth sub-clustering is designated as VC (k);
Step2: with streaming media server trunking communication cost matrix C m × mfor foundation, choose v (i, j)=min{v|v=C m × m(i, j), 1≤i≤m, 1≤j≤m};
Step3: with v (i, j) be foundation, sub-clustering is carried out to current cluster, assert in logic and do not contact between streaming media server i and streaming media server j, current cluster is divided into VC (i) and VC (j) two parts, and joins in VC, a bunch set sizes adds 1, juxtaposition v (i, j)=∞;
Step4: according to streaming media server loading demand vector V (i)={ Ic in sub-clustering VC (k) cpui, Ic memi, Ic trafi, calculate the maximum load demand LC of streaming media server Clusters VC (k) mtopstreaming media server average load demand in (k) and each bunch wherein,
LC mtop ( k ) = { max i ∈ zone Ic trafi , max i ∈ zone Ic cpui , max i ∈ zone Ic memi }
LC mtop ( k ) ‾ = { Σ i ∈ zone Ic trafi | | zone | | , Σ i ∈ zone Ic cpui | | zone | | , Σ i ∈ zone Ic memi | | zone | | }
Zone represents current cluster VC (k), || zone|| represents number of servers in current cluster VC (k);
Step5: if VC bunch of set sizes is less than turn Step2, otherwise, exit.
4. according to claim 3 based on the streaming media server clustered deploy(ment) method of OpenStack, it is characterized in that, virtual machine load capacity vector P (i ') and data network cost matrix D in described structure OpenStack cloud platform n × nstep be:
Virtual machine load capacity vector P (i ') and data network communications bandwidth cost matrix D in Step1: initialization OpenStack cloud platform n × n, make P (i ')={ 0,0,0}, D n × n(i ', j ')=0, the wherein numbering of i ', j ' expression virtual machine, n represents virtual machine number in OpenStack cloud platform;
Step2: according to virtual machine configuration and network configuration in OpenStack cloud platform, adopt breadth traversal method, travel through whole OpenStack cloud platform; If cloud platform can provide the i-th ' individual virtual machine core cpu number to be Id cpui ', memory headroom size is Id memi ', external service bandwidth summation is Id trafi ', then P (i ')={ Id is remembered cpui ', Id memi ', Id trafi '; If there is data link bandwidth between virtual machine i ' and virtual machine j ' is u, then remember D n × n(i ', j ')=u, otherwise note D n × n(i ', j ')=∞;
Step3: obtain complete OpenStack cloud platform virtual machine load capacity vector P (i ') and data network communications cost matrix D n × n.
5. according to claim 4 based on the streaming media server clustered deploy(ment) method of OpenStack, it is characterized in that, in described OpenStack cloud platform, the step of virtual machine partitions is:
Step1: initialization OpenStack cloud platform virtual machine load capacity vector P (i ')={ Id cpui ', Id memi ', Id trafi ', data network link communication cost matrix D between virtual machine in 1≤i '≤n, OpenStack cloud platform n × n, and remember that current platform is work as proparea, district's set is designated as OD, and district's set sizes is that kth in 1, OD ' individual subregion is designated as OD (k ');
Step2: with virtual-machine data network link communication cost matrix in OpenStack cloud platform for foundation, chooses u (i ', j ')=min{u|u=D n × n(i ', j '), 1≤i '≤n, 1≤j '≤n};
Step3: with u (i ', j ') be foundation, subregion is carried out to when proparea, assert when not contacting between virtual machine i ' and virtual machine j ' in proparea in logic, dividing into two parts by current, be designated as OD (i ') and OD (j '), and join in OD, district's set sizes adds 1, and juxtaposition u (i ', j ')=∞;
Step4: according to interior virtual machine load capacity vector P (i ')={ Id of subregion OD (k ') cpui ', Id memi ', Id trafi ', calculate the maximum load capability LD of each district virtual machine clustertopvirtual machine average load ability in (k ') and each district wherein,
LD clustertop ( k ′ ) = { max i ∈ cluster Id trafi , max i ∈ cluster Id cpui , max i ∈ cluster Id memi }
LD clustertop ( k ′ ) ‾ = { Σ i ∈ cluster Id trafi | | cluster | | , Σ i ∈ cluster Id cpui | | cluster | | , Σ i ∈ cluster Id memi | | cluster | | }
Cluster represents current bay OD (k '), || cluster|| represents virtual machine number in current bay;
Step5: if OD set sizes is less than turn Step2, otherwise, exit.
6. according to claim 5 based on the Streaming Media Virtual Server Cluster dispositions method of OpenStack cloud platform, it is characterized in that, the step that described Streaming Media Virtual Server Cluster is mated with virtual machine bunch district in OpenStack cloud platform is:
Step1: each bunch of convection media server cluster, according to average load demand descending, builds Streaming Media submanifold queue VC '; To each district of virtual machine in OpenStack cloud platform, according to average load ability descending, builds virtual machine partitions queue OD ';
Step2: if queue OD ' in virtual machine partitions is empty, then it fails to match, exits; If Streaming Media submanifold queue VC ' is empty, exit;
Step3: in Streaming Media submanifold queue VC ', get kth sub-clustering VC ' (k), in virtual machine partitions queue OD ', finds kth ' subregion OD ' (k '), if meet and then this bunch of VC ' (k) is divided into this virtual machine partitions OD ' (k ') to dispose, upgrade streaming media server cluster submanifold queue VC ' and OpenStack cloud platform virtual machine partition queue OD ', return step2, otherwise this bunch is carried out sub-clustering, return step1.
7. according to claim 5 based on the streaming media server clustered deploy(ment) method of OpenStack, it is characterized in that, the step that in described streaming media server Clusters server and OpenStack cloud platform area, virtual machine matches is:
Step1: initialization streaming media server cluster is at the deployment matrix f of OpenStack cloud platform m × nif wherein i-th server is deployed on the i-th ' individual virtual machine, then
F m × n(i, i ')=1,1≤i≤m, 1≤i '≤n; Otherwise, f m × n(i, i ')=0,1≤i≤m, 1≤i '≤n;
Step2: in the virtual machine partitions OD ' (k ') of OpenStack cloud platform, according to P (i '), virtual machine load capacity queue OD ' P={x|x=P (i ') in tectonic reverse, the i-th ' individual virtual machine is in OD ' (k ') };
Step3: in Streaming Media submanifold VC ' (k) matched with this subregion, according to V (i), structure bunch in streaming media server loading demand queue VC ' V={y|y=V (i), i-th server is in VC ' (k) };
Step4: in this Streaming Media submanifold VC ' (k), from loading demand queue VC ' V, gets i-th streaming media server, successively according to actual loading demand V (i)={ Ic of this server cpui, Ic memi, Ic trafi, with the i-th ' individual virtual machine node load capacity P (i ')={ Id in the OD ' P of this virtual machine partitions cpui ', Id memi ', Id trafi 'carry out load matched one by one, choose e (i, i ', δ)>=0 and min{e (i, i ', δ) } virtual machine node as object deployment point, wherein
e cpu ( i , i ′ , δ ) = δLc cpui - Ld cpui ′ δLc cpui
e mem ( i , i ′ , δ ) = δLc memi - Ld memi ′ δLc memi
e traf ( i , i ′ , δ ) = δLc trafi - Ld trafi ′ δLc trafi
e(i,i′,δ)=A·e cpu(i,i′,δ)+B·e mem(i,i′,δ)+C·e traf(i,i′,δ)
Wherein, δ represents deployment point virtual machine performance down ratio;
E cpu(i, i ', δ) represents the matching degree of current i-th streaming media server and the i-th ' individual virtual machine cpu; e mem(i, i ', δ) represents the matching degree of current i-th streaming media server and the i-th ' individual virutal machine memory; e traf(i, i ', δ) represents the matching degree of current i-th streaming media server and the i-th ' individual virtual machine bandwidth;
A represents CPU weight proportion, and B represents internal memory weight proportion, and C represents bandwidth weighting ratio;
Step5: the deployment matrix f upgrading OpenStack cloud platform n × n, from virtual machine load capacity queue OD ' P, remove the i-th ' individual virtual machine, from streaming media server loading demand queue VC ' V, remove i-th streaming media server;
Step6: if Streaming Media submanifold queue VC ' V is empty, exports and dispose matrix f n × n, otherwise turn Step3.
CN201410385215.XA 2014-08-07 2014-08-07 A kind of streaming media server clustered deploy(ment) method based on OpenStack Active CN104158869B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410385215.XA CN104158869B (en) 2014-08-07 2014-08-07 A kind of streaming media server clustered deploy(ment) method based on OpenStack

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410385215.XA CN104158869B (en) 2014-08-07 2014-08-07 A kind of streaming media server clustered deploy(ment) method based on OpenStack

Publications (2)

Publication Number Publication Date
CN104158869A CN104158869A (en) 2014-11-19
CN104158869B true CN104158869B (en) 2015-10-21

Family

ID=51884274

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410385215.XA Active CN104158869B (en) 2014-08-07 2014-08-07 A kind of streaming media server clustered deploy(ment) method based on OpenStack

Country Status (1)

Country Link
CN (1) CN104158869B (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202902A (en) * 2007-12-11 2008-06-18 西安交通大学 Method for designing P2P stream medium network transferring structure with number copyright management
US8732281B2 (en) * 2009-05-13 2014-05-20 Cisco Technology, Inc. Actively updating clients with selected data
CN103354545B (en) * 2013-06-24 2015-04-15 西安交通大学 Cloud computing based P2P streaming media server cluster deploying method

Also Published As

Publication number Publication date
CN104158869A (en) 2014-11-19

Similar Documents

Publication Publication Date Title
CN111445111B (en) Electric power Internet of things task allocation method based on edge cooperation
Zhang et al. Virtual network embedding based on the degree and clustering coefficient information
CN110493360A (en) The mobile edge calculations discharging method of system energy consumption is reduced under multiserver
Zhang et al. An efficient mapping approach to large-scale dnns on multi-fpga architectures
CN102158417A (en) Method and device for optimizing multi-constraint quality of service (QoS) routing selection
Rabiaa et al. Improvements in LEACH based on K-means and Gauss algorithms
CN105515987A (en) SDN framework based virtual optical network oriented mapping method
CN103354545B (en) Cloud computing based P2P streaming media server cluster deploying method
CN106304234A (en) A kind of wireless sensor network energy consumption optimization method based on clustering routing agreement
CN109818786A (en) A kind of cloud data center applies the more optimal choosing methods in combination of resources path of appreciable distribution
CN103428805A (en) Wireless network virtualization mapping method based on anti-interference performance of links
CN105426228A (en) OpenStack virtual machine placement method facing streaming media live broadcasting and video transcoding
CN115392481A (en) Federal learning efficient communication method based on real-time response time balancing
Bouzidi et al. Dynamic clustering of software defined network switches and controller placement using deep reinforcement learning
CN105430049A (en) Virtual streaming cluster cooperative migration method based on DCN
CN107145958A (en) A kind of intelligent draining dispatching method of municipal drainage pipe network based on improvement particle cluster algorithm
Sun et al. A DQN-based cache strategy for mobile edge networks
Yang et al. Statistic properties and cascading failures in a coupled transit network consisting of bus and subway systems
CN113014649B (en) Cloud Internet of things load balancing method, device and equipment based on deep learning
CN104158869B (en) A kind of streaming media server clustered deploy(ment) method based on OpenStack
CN110661566A (en) Unmanned aerial vehicle cluster networking method and system adopting depth map embedding
Jianping et al. SM-UAN: A software-defined underwater acoustic network of multi-controllers for inland waterway systems
CN104507150A (en) Method for clustering virtual resources in baseband pooling
CN106412935B (en) A kind of network topology structure method for building up based on Complex Networks Theory
Wang et al. Spark load balancing strategy optimization based on internet of things

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB03 Change of inventor or designer information

Inventor after: Zheng Qinghua

Inventor after: Chen Yuxuan

Inventor after: Du Biao

Inventor after: Song Chenglong

Inventor after: Zhao Hui

Inventor after: Qian Beiping

Inventor after: Zhang Weizhan

Inventor before: Zheng Qinghua

Inventor before: Song Chenglong

Inventor before: Qian Beiping

Inventor before: Zhang Weizhan

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: ZHENG QINGHUA SONG CHENGLONG QIAN BEIPING ZHANG WEIZHAN TO: ZHENG QINGHUA CHEN YUXUAN DU BIAO SONG CHENGLONG ZHAO HUI QIAN BEIPING ZHANG WEIZHAN

C14 Grant of patent or utility model
GR01 Patent grant