SYSTEM AND METHOD FOR DYNAMIC ORCHESTRATION
20170308407 · 2017-10-26
Inventors
Cpc classification
H04L43/10
ELECTRICITY
H04L41/0895
ELECTRICITY
H04L41/042
ELECTRICITY
H04L41/0695
ELECTRICITY
G06F9/5077
PHYSICS
G06F9/5083
PHYSICS
H04L67/00
ELECTRICITY
H04L41/40
ELECTRICITY
H04L41/5096
ELECTRICITY
H04L43/20
ELECTRICITY
International classification
Abstract
A system (100) for dynamic orchestration is provided, the system configured to be used for embedding a virtual network into a physical infrastructure, the system comprising: a decision component (DC) which is configured to evaluate a performance of at least one orchestrator (O.sub.1, O.sub.2, . . . , O.sub.n) based on at least one parameter (P.sub.1, P.sub.2, . . . , P.sub.n), and which is configured to settle on a recomposing of the orchestrator (O.sub.1, O.sub.2, . . . , O.sub.n) based on the evaluated performance and, which is configured to provide a recomposing signal (RS.sub.1, RS.sub.2, . . . , RS.sub.n) when the recomposing is settled; and a recomposing component (RC) which is configured to execute the recomposing of the orchestrator (O.sub.1, O.sub.2, . . . , O.sub.n) when the recomposing signal (RS.sub.1, RS.sub.2, . . . , RS.sub.n) is received.
Claims
1. A system (100) for dynamic orchestration, the system configured to be used for embedding a virtual network into a physical infrastructure, the system comprising: a decision component (DC) which is configured to evaluate a performance of at least one orchestrator or a performance of a domain controller (DomC) or a performance of orchestrated infrastructure, based on at least one parameter (P.sub.1, P.sub.2, . . . , P.sub.n), and which is configured to settle on a recomposing of the at least one orchestrator based on the evaluated performance and, which is configured to provide a first recomposing signal when the recomposing is settled; and a recomposing component (RC) which is configured to execute the recomposing of the at least one orchestrator when a second recomposing signal is received.
2. The system (100) according to claim 1, wherein the RC is configured to execute the recomposing by assigning or reassigning at least one DomC to the at least one orchestrator.
3. The system (100) according to one of the claim 1, wherein the DC is configured to evaluate the performance based on a size of a physical infrastructure of the embedded virtual network, a number of DomCs assigned to the orchestrator, a topology of the physical infrastructure, or a performance parameter of the physical infrastructure as the at least one parameter.
4. The system (100) according to one of claim 1, wherein the DC is configured to settle on a splitting of the orchestrator based on the evaluated performance and wherein the DC is configured to provide a first splitting signal as the first recomposing signal when the splitting is settled, wherein the RC is configured to execute a splitting of the orchestrator when a second splitting signal as the second recomposing signal is received.
5. The system (100) according to claim 4, wherein the RC is configured to execute the splitting of the orchestrator by allocating resources for installing a new orchestrator and wherein the RC is configured to allocate at least one domain controller of the at least one orchestrator to the new orchestrator.
6. The system (100) according to one of claim 1, wherein the DC is further configured to settle on a merging of at least two orchestrators based on the evaluated performance and wherein the DC is configured to provide a first merging signal as the first recomposing signal when the merging is settled and wherein the RC is configured to execute a merging of the at least two orchestrators when a second merging signal as the second recomposing signal is received.
7. The system (100) according to claim 6, wherein the RC is configured to execute the merging of the at least two orchestrators by allocating resources for the merged orchestrator and wherein the RC is configured to allocate at least one domain controller to the merged orchestrator.
8. A DC for dynamic orchestration in a system for embedding a virtual network into a physical infrastructure according to claim 1.
9. A RC for dynamic orchestration in a system for embedding a virtual network into a physical infrastructure according to claim 1.
10. Computer system (1000) for embedding a virtual network into a physical infrastructure comprising: a domain controller; an orchestrator; and a system (100) for dynamic orchestration according to one of claim 6.
11. The computer system (1000) according to claim 10, wherein the computer system (1000) is configured to be used in a carrier grade telecommunication or in a computer network.
12. A method for dynamic orchestration for embedding a virtual network into a physical infrastructure, the method comprising: evaluating (Si) a performance of at least one orchestrator based on at least one parameter; settling (S2) on a recomposing of the orchestrators based on the evaluated performance; providing (S3) a first recomposing signal, when the recomposing is settled; and executing (S4) the recomposing of the orchestrator when a second recomposing signal is received.
13. The method according to claim 12, wherein the step of settling (S2) on a recomposing of the orchestrator comprises a splitting of the orchestrator and wherein a first splitting signal is provided as the first recomposing signal when the splitting is settled and wherein a splitting of the orchestrator is executed when a second splitting signal as the second recomposing signal is received.
14. The method according to one of the claim 12, wherein the step of evaluating (Si) the performance of the at least one orchestrator comprises determining whether a failure of at least one domain controller or of at least one orchestrator or of an communication channel is present.
15. The method according to claim 12, wherein the step of settling (S2) on a recomposing of the orchestrators comprises a merging of at least two orchestrators based on the evaluated performance and wherein a first merging signal is provided as the first recomposing signal, when the merging is settled and wherein the merging of the at least two orchestrators is executed when the a second merging signal as the second recomposing signal is received.
Description
BRIEF DESCRIPTION OF DRAWINGS
[0038] Further embodiments of the invention will be described with respect to the following figures, in which:
[0039]
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
[0046]
[0047]
DESCRIPTION OF EMBODIMENTS
[0048] In the associated figures, identical reference signs denote identical or at least equivalent elements, parts, units or steps. In addition, it should be noted that all of the accompanying drawings are not to scale.
[0049] The technical solutions in the embodiments of the present invention are described clearly in the following with detailed reference to the accompanying drawings in the embodiments of the present invention.
[0050] The present invention advantageously provides an orchestrator responsible for the management and mapping of virtual resources over physical resources via north bound interfaces of the domain controllers. The configurations of the said physical resources are controlled usually remotely by domain controllers. Examples of domain controllers include OpenFlow, OF, controllers, cloud managers, data center managers.
[0051] The present invention advantageously provides an orchestrator that can recompose itself when a given threshold in the physical size or virtual network, abbreviated vnet, request queue length is reached. In essence, replication implies the direct or indirect movement of data and configurations relating to at least one of the domain controllers under the control of one orchestrating entity to another orchestrating entity or creating a copy of the same data and configurations, with the purpose of reassigning control of the said domain controller's physical and or virtual resources to a new orchestrator.
[0052] The present invention may solve the problem in that the components of the orchestrator can independent of each other i) create multiple copies (or any other recomposing) of themselves ii) calculate which part of the network under their control has to be moved to which new copy (or any other recomposing) and iii) move the identified part of network there. The new copy (or any other recomposing) can be anywhere, even a thread or a process on the same machine, for instance.
[0053] According to an exemplary embodiment of the present invention, all these steps can be independent of each other, for example, the moving the network to new orchestrator can be done with pre-existing orchestrators. For the case of merging, the following steps may be performed: i) identify the networks that should be merged under which orchestrator ii) move the networks there iii) uninstall release the resources of remaining empty orchestrators.
[0054] The present invention is intended to provide a solution enabled by the fact that in a dynamic virtualized environment the orchestrator can be recomposed, for instance copied, in part or whole, dynamically and assigned to a new resource. The present invention provides that the orchestrator may become a client of itself.
[0055] The present invention advantageously makes use of decision components and recomposing components along with the moving or merging or any other recomposing procedures, like for instance splitting. The decision components and the recomposing components are logical or virtual network components and can be collocated or implemented in one component (even within the orchestrator) or may share some functionality such as embedding with the orchestrator.
[0056] The term “recomposing” or “to recompose” as used by the present invention can be any kind of change or of transforming or of altering the composition or the structure or the hierarchy or the topology network entities, in particular, of the orchestration components in relation to the domain controllers.
[0057] The term “virtual network embedding” or “embedding” as used by the present invention may describe the efficient embedding of virtual networks with resource constraints into a substrate network.
[0058] The term “splitting” or “to split” as used by the present invention may describe any dividing or copying of entities, resulting in a modified composition or structure or hierarchy or topology of network entities, in particular, of the orchestration components in relation to the domain controllers.
[0059] The present invention may apply to future carrier networks that need to be able to scale to a vast plurality of nodes, interconnect a vast plurality of devices, and, especially, provide support for the diversified requirements of carrier grade next-generation services.
[0060] The present invention may provide that as a recomposing a merging can be done by distributing controllers across multiple orchestrators as well as that multiple orchestrators can merge onto multiple orchestrators, for instance, 5 to 3, or 3 to 2, or 4 to 2, or 8 to 3 or any other pair of numbers, also a merging of 2 to 1, or 3 to 1 or any higher number to 1 may be possible.
[0061] The present invention may provide that as a recomposing a splitting can be done by distributing multiple controllers across multiple orchestrators as well as that one or multiple orchestrators can split into multiple orchestrators, for instance, 3 to 5, or 2 to 3, or 2 to 4, or 3 to 8 or any other pair of numbers.
[0062] The present invention may apply to domain controllers such as OpenFlow, OF, controllers, cloud managers, data centre managers which may copy themselves or move the controlees (physical resources) under the control of newer domain controllers. Similarly, an increase in network traffic lookups from OF switches may require the OF switches to copy some of the switches under its control to another OF controller.
[0063] Domain controllers can also be other orchestrators. Orchestrators can move domain controllers or other orchestrators under their control. For instance, any controlee (managed) may be copied into another virtualized controller (manager) to improve overall performance. For example, the present invention may advantageously allow increasing lower layer orchestrators that can create a new higher layer orchestrator.
[0064] The present invention may also apply to other scenarios such as controller failure (orchestrator failure) where the failing orchestrator can be replicated to ensure continued performance of the network.
[0065] The present invention may apply that the copied orchestrator can be another thread/process of the same orchestrating application or another application in the same resource.
[0066] The present invention may apply to an example in which the orchestrator to copy itself creates a request of a newer control network which is then handled by itself (or another orchestrator).
[0067] Apparently, the described embodiments are only some embodiments of the present invention, rather than all embodiments. Based on the described embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making any creative effort shall fall within the protection scope of the present invention.
[0068]
[0069]
[0070] The decision component DC is configured to evaluate a performance of at least one orchestrator O.sub.1, O.sub.2, . . . , O.sub.n based on at least one parameter P.sub.1, P.sub.2, . . . , P.sub.n.
[0071] The decision component DC is configured to settle on a recomposing of the orchestrator O.sub.1, O.sub.2, . . . , O.sub.n based on the evaluated performance and is configured to provide a recomposing signal RS.sub.1, RS.sub.2, . . . , RS.sub.n when the recomposing is settled.
[0072] The recomposing component RC is configured to execute the recomposing of the orchestrator O.sub.1, O.sub.2, . . . , O.sub.N when the recomposing signal RS.sub.1, RS.sub.2, . . . , RS.sub.n is received.
[0073]
[0074] As a first step of the method, evaluating S1 a performance of at least one orchestrator O.sub.1, O.sub.2, . . . , O.sub.n based on at least one parameter P.sub.1, P.sub.2, . . . , P.sub.n is conducted.
[0075] As a second step of the method, settling S2 on a recomposing of the orchestrator O.sub.1, O.sub.2, . . . , O.sub.n based on the evaluated performance is conducted.
[0076] As a third step of the method, providing S3 a recomposing signal RS.sub.1, RS.sub.2, . . . , RS.sub.n when the recomposing is settled, is conducted.
[0077] As a fourth step of the method, executing S4 the recomposing of the orchestrator O.sub.1, O.sub.2, . . . , O.sub.n when the recomposing signal RS.sub.1, RS.sub.2, . . . , RS.sub.nis received is conducted.
[0078]
[0079] The computer system 1000 for embedding a virtual network into a physical infrastructure may comprise a domain controller DomC.sub.1, DomC.sub.2, DomC.sub.n, an orchestrator O.sub.1, O.sub.2, . . . , O.sub.n and a system 100 for dynamic orchestration, wherein the system is configured to be used for embedding a virtual network into a physical infrastructure.
[0080]
[0081]
[0082] The domain controllers DomC.sub.1-9 are originally assigned to Orchestrator O.sub.1.
[0083] According to an exemplary embodiment of the present invention, the decision component DC is configured to settle on a splitting of the orchestrator O.sub.1 into O.sub.1 and O.sub.2. The splitting of the orchestrator O.sub.1 is executed by the recomposing component RC when the splitting signal is received.
[0084] According to the decision, the domain controllers DomC.sub.1, DomC.sub.2, DomC.sub.3, DomC.sub.4, and DomC.sub.5 are assigned to orchestrator O.sub.1, the domain controllers DomC.sub.6, DomC.sub.7, DomC.sub.8, and DomC.sub.9 are assigned to orchestrator O.sub.2. The two orchestrators O.sub.1, O.sub.2 are separated by the domain border DB. This dynamic creation of new orchestration is performed and executed by the recomposing component RC in order to manage load of the two orchestrators O.sub.1, O.sub.2.
[0085]
[0086] The decision component DC is responsible for making the decision to split the orchestrator or not. Based on the recommendation of the decision component DC, informing the orchestrator to ask the recomposing component RC to execute to splitting by transmitting the recomposing signal RS.sub.1, RS.sub.2, . . . , RS.sub.n .
[0087] The orchestrator O.sub.1, O.sub.2, . . . , O.sub.n may periodically report various performance parameters to the decision component DC based on which the decision component DC can recommend to orchestrator to split or not or to merge or to perform any kind of recomposing. These recommendations may be based on an algorithm that can be influenced by administrator settings of various values.
[0088] The parameters P.sub.1, P.sub.2, . . . , P.sub.n that the decision component DC will consider, in other words the parameter P.sub.1, P.sub.2, . . . , P.sub.n that the decision component DC will use for evaluating a performance of at least one orchestrator O.sub.1, O.sub.2, . . . , O.sub.n may include for instance:
[0089] Size of the physical infrastructure, i.e. the physical network or any controllers
[0090] Topology of the network, for instance, including geographic locations
[0091] Virtual networks embedded
[0092] Network characterizing parameters (delay in control plane, number of new connection requests, migrating virtual machine states, abbreviated vms)
[0093] The parameter P.sub.1, P.sub.2, . . . , P.sub.n can be a parameter of a domain controller DomC.sub.1, . . . , DomC.sub.n or a parameter of an orchestrator O.sub.1, O.sub.2, . . . , O.sub.n.
[0094] The decision component DC may work by either periodically polling the orchestrator for statistics on various parameters P.sub.1, P.sub.2, . . . , P.sub.n or the orchestrator O.sub.1, O.sub.2, . . . , O.sub.n may report those parameters P.sub.1, P.sub.2, . . . , P.sub.n to the decision component DC periodically.
[0095] The decision component DC may review the parameters of operation of every domain controller DomC.sub.1, . . . , DomC.sub.n under the corresponding orchestrator O.sub.1, O.sub.2, . . . , O.sub.n see
[0096] For instance, the performance of an orchestrator O.sub.1, O.sub.2, . . . , O.sub.n may be evaluated or measured by reviewing the parameters P.sub.1, P.sub.2, . . . , P.sub.n of operation of the domain controllers DomC.sub.1, . . . , DomC.sub.n under the orchestrator O.sub.1, O.sub.2, . . . , O.sub.n. The decision component DC may periodically evaluate or measure performance parameters P.sub.1, P.sub.2, . . . , P.sub.n of the domain controllers DomC.sub.1, . . . , DomC.sub.n under the orchestrator O.sub.1, O.sub.2, . . . , O.sub.n .
[0097] The decision component DC may prepare a list of all the domain controllers DomC.sub.1, . . . , DomC.sub.n that don't meet the parameters P.sub.1, P.sub.2, . . . , P.sub.n and reports them to the orchestrator—supposing the domain controllers DomC.sub.1, . . . , DomC.sub.n belong to the same orchestrator—with a recommendation to move those domain controllers DomC.sub.1, . . . , DomC.sub.n to another orchestrator O.sub.1, O.sub.2, . . . , O.sub.n. For instance, moving domain controllers DomC.sub.1, DomC.sub.n to another orchestrator O.sub.1, O.sub.2, . . . , O.sub.n helps to reduce the load of an orchestrator.
[0098]
[0099] In step S10, a statistics report for at least one domain controller DomC.sub.1 from an orchestrator O.sub.1 may be performed. The orchestrator O.sub.1 may periodically report various performance parameters to the decision component DC based on which the decision component DC can recommend to orchestrator O.sub.1 to split or not.
[0100] In step S11, an evaluation whether the domain controllers DomC.sub.1, . . . , DomC.sub.n meet an admin provided threshold value may be performed. This advantageously ensures that the load faced by an orchestrating component may be limited.
[0101] If yes, an confirmation may be send to the orchestrator O.sub.1, O.sub.2, . . . , O.sub.n.
[0102] If no, in step S12, a list of domain controllers DomC.sub.1, DomC.sub.n not meeting the threshold may be generated and the list may be send to an orchestrator O.sub.1, O.sub.2, . . . , O.sub.n and splitting or any other recomposing operation may be recommended. Based on the recomposing decision a list of domain controllers is sent to the new orchestrator responsible for them.
[0103]
[0104] The recomposing component RC is responsible for executing the decision recommended by the decision component DC for the orchestrator O.sub.1, O.sub.2, . . . , O.sub.n. The recomposing component RC can co-exist with decision component DC. The recomposing component RC may find the resource to install the new orchestrator or may assign the split of the network to the new orchestrator.
[0105] The recomposing component RC may configure control channels, may transfer information of existing networks vnets or may reconfigure physical controllers and vnets to report to new orchestrator O.sub.1.
[0106] In step S20, an initializing may be performed and a list of all domain controllers DomC.sub.1, . . . , DomC.sub.n to move from an orchestrator O.sub.1, O.sub.2, . . . , O.sub.n will be transmitted.
[0107] In step S21, a search for existing orchestrators O.sub.1, O.sub.2, . . . , O.sub.n per domain controllers DomC.sub.1, . . . , DomC.sub.n which meet the threshold value may be performed.
[0108] In step S22, an evaluation whether all domain controllers DomC.sub.1, . . . , DomC.sub.n found a new orchestrator O.sub.1, O.sub.2, . . . , O.sub.n may be performed.
[0109] If yes, the method will continue with performing step S25.
[0110] If no, in step S23, finding one or more empty resource satisfying a threshold requirement for the remaining domain controllers DomC.sub.1, . . . , DomC.sub.n may be performed. If there are domain controllers DomC.sub.1, . . . , DomC.sub.n that cannot be matched to any orchestrator O.sub.1, O.sub.2, . . . , O.sub.n then one or multiple new empty resources may be located that can best satisfy the constraints of an orchestrator controller relationship.
[0111] In step S24, a copying or a splitting of the orchestrator O.sub.1 may be performed. In other words, a recomposing may be performed.
[0112] In step S25, a transfer of intended domain controllers DomC.sub.1, . . . , DomC.sub.n to a new orchestrator O.sub.2 may be performed.
[0113] In step S26, a de-initializing may be performed.
[0114] A de-initializing may comprise a re-adjusting of constraints or threshold requirement that can be placed by the vendor and/or enhanced by the administrator or the applications using the domain controllers DomC.sub.1, . . . , DomC.sub.n.
[0115]
[0116]
[0117] 1) The orchestrator O.sub.1 receives the decision to split some domain controllers from its domain that do not satisfy the predetermined/preconfigured requirements.
[0118] 2) The orchestrator O.sub.1 provides the list of such domain controllers to the recomposing component RC, and other relevant information that it may inquire for.
[0119] 3) The recomposing component RC runs a splitting algorithm deciding individually or as parts which domain controllers should be migrated where. Any splitting algorithm maybe used.
[0120] 4) A) Information is provided to the orchestrator to move the domain controllers to various orchestrators; and/or
[0121] B) A new resource location is identified to install an orchestration component and a copy procedure to move the identified domain controllers to the new orchestrator is initiated.
[0122] 5) The old orchestrator O.sub.1 determines if some service-level agreement, SLA, or contractual agreements are compromised as a result of the move of the various domain controllers and takes necessary measures to reconfigure the virtual networks to conform to those requirements.
[0123] 6) The different orchestrators are contacted by the recomposing component RC asking them to take on the responsibilities of the respective domain controllers and copy theirs states from the old orchestrator.
[0124] 7) Further relevant information of the virtual networks hosted on the resources controlled by those domain controllers maybe requested by the new orchestrator O.sub.2 to the old orchestrator O.sub.1.
[0125] 8) The old orchestrator replies supplying such information. This interface may also be proactive from the old orchestrator.
[0126] 9) The old orchestrator O.sub.1 then can ask and/or configure the respective domain controllers DomC.sub.1 to report to the new orchestrator.
[0127] 10) The copy of the domain controllers DomC.sub.1 to the new orchestrator O.sub.2 is completed and standard operation between the domain controllers DomC.sub.1 and new orchestrator O.sub.2 follows.
[0128]
[0129]
[0130] The same procedure can also cover multiple orchestrators to multiple orchestrator convergence (n to n−x where x>=0). The steps in the
[0131] 1) Multiple orchestrators may receive the decision to merge some domain controllers DomC.sub.1, . . . , DomC.sub.n from their domain primarily because there are far too many orchestrators idle.
[0132] 2) The orchestrator O.sub.1 provides the list of all its domain controllers DomC.sub.1, . . . , DomC.sub.n to the recomposing component RC, and other relevant information that it may inquire for.
[0133] 3) The recomposing component RC runs the merging algorithm deciding individually or as parts which domain controllers DomC.sub.1, . . . , DomC.sub.n should be migrated where. Any algorithm maybe used such.
[0134] 4) The information is provided to the orchestrator to move all its the domain controllers to various orchestrators and to a specific (could be newly created
[0135] 5) The different old orchestrators O.sub.1 are contacted by the new orchestrator O.sub.2 asking them to provide details of their respective domain controllers DomC.sub.1, . . . , DomC.sub.n and copy their states over.
[0136] 6) Relevant information of the virtual networks hosted on the resources controlled by those domain controllers is provided by the old orchestrator(s) O.sub.1 to the new orchestrator O.sub.2. This interface may also be proactive from the old orchestrator O.sub.1.
[0137] 7) The old orchestrator O.sub.1 then can ask/configure the respective domain controllers to report to the new orchestrator O2.
[0138] 8) The domain controllers DomC.sub.1, . . . , DomC.sub.n independent of the previous steps may also seek to authorize the move to the new orchestrator O.sub.2.
[0139] 9) In response to the authorization request the old orchestrator O.sub.1 may authorize or deny the move.
[0140] 10) A) the old orchestrator O.sub.1 may request the recomposing component RC to undeploy itself since has no more domain controllers to manage.
[0141] B) the copy of the domain controllers DomC.sub.1, . . . , DomC.sub.n to the new orchestrator O.sub.2 is completed and standard operation between the domain controllers DomC.sub.1, . . . , DomC.sub.n and new orchestrator O.sub.2 follows.
[0142] 11) The recomposing component RC may undeploy the orchestrator that has no underlying domain controllers releasing a new empty resource container.
[0143] From the foregoing, it will be apparent to those skilled in the art that a variety of methods, systems, computer programs on recording media, and the like, are provided.
[0144] The present disclosure also supports a computer program product including computer executable code or computer executable instructions that, when executed, causes at least one computer to execute the performing and computing steps described herein.
[0145] Many alternatives, modifications, and variations will be apparent to those skilled in the art in light of the above teachings. Of course, those skilled in the art readily recognize that there are numerous applications of the invention beyond those described herein.
[0146] While the present invention has been described with reference to one or more particular embodiments, those skilled in the art recognize that many changes may be made thereto without departing from the scope of the present invention. It is therefore to be understood that within the scope of the appended claims and their equivalents, the inventions may be practiced otherwise than as specifically described herein.
[0147] In the claims, the word “comprising” does not exclude other elements or steps, and the indefinite article “a” or “an” does not exclude a plurality. A single processor or other unit may fulfill the functions of several items recited in the claims.
[0148] The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measured cannot be used to advantage. A computer program may be stored or distributed on a suitable medium, such as an optical storage medium or a solid-state medium supplied together with or as part of other hardware, but may also be distributed in other forms, such as via the Internet or other wired or wireless telecommunication systems.