METHOD AND DEVICE FOR CONDUCTING NETWORK SERVICES INSTANTIZATION REQUIREMENTS
Patent Information
- Application Number
- DE602018086743
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2017-09-29
- Filing Date
- 2018-09-13
- Publication Date
- 2025-10-29
- Estimated Expiration
- 2038-09-13
AI Technical Summary
Current mechanisms in network function virtualization (NFV) systems fail to handle situations where virtualized network function descriptors (VNFDs) are not available at the NFVO entity level, leading to network service instantiation failures.
The method modifies network service descriptors to include information for identifying and accessing target entities that can provide or instantiate missing VNFDs, allowing the NFVO entity to retrieve or transmit requests to these entities for object descriptors, thereby enabling network service instantiation even when descriptors are not locally available.
Enables successful deployment of network services by allowing the NFVO entity to obtain or instantiate missing descriptors, simplifying the process for clients and optimizing load distribution across target entities.
Description
1. Scope of the invention
[0001] The invention relates to telecommunication networks, and more particularly to networks implementing a mechanism for virtualizing network functions. 2. Prior Art
[0002] Telecommunications networks consist of multiple pieces of equipment, each with a specific function (routers, switches, servers, etc.). For the most part, these functions are now inseparable from the equipment that houses them, with the "equipment / function" combination being sold as an integrated product by equipment manufacturers in the sector.
[0003] Network Functions Virtualization (NFV) aims to break this coupling by applying the principles of cloud computing. Software implementing network functions is then purchased independently by a network operator and installed on standardized computer servers, grouped into large pools distributed across a small number of geographical sites.
[0004] The architectural reference framework specified by ETSI (European Telecommunications Standards Institute) identifies three functional blocks constituting an NFV system, an example of which is illustrated in figure 1 : Virtualized Network Functions (VNFs), VNF-1 to VNF-5 on the figure 1 The infrastructure (NFVI for Network Functions Virtualization Infrastructure) providing the resources (HW-RESS on the figure 1 allowing these functions to run and communicate with each other. The management and orchestration functions (MANO for MANagement and Orchestration in English) which ensure the dynamic association of resources with virtualized functions.
[0005] The infrastructure consists of high-capacity server pools, offering computing resources (COMP on the figure 1 ), storage (STOR on the figure 1 ) and communication (NETW on the figure 1 These resources are partitioned by a specific software layer (typically a hypervisor, V_LAYER on the figure 1 ), each partition (for example, a virtual machine in the case of a hypervisor) hosting the software for a network function or part thereof and using virtualized resources (V_COMP, V_STOR, V_NETW on the figure 1 ). Virtual machines communicate with each other through virtual networks which are themselves partitions of the physical network infrastructure.
[0006] Management and orchestration functions are the brain of an NFV system. They support the lifecycle of virtualized functions, from instantiation to deletion, including scaling. The behavior of such virtualized VNF functions is driven by a series of descriptors containing the characteristics of the network functions to be deployed and the instructions necessary to assemble them into a coherent network service.
[0007] Thus, a virtualized network function descriptor (also called a VNFD) is a file provided by the vendor of the virtualized VNF function, allowing you to determine the resources needed to deploy such a virtualized function. For example, the file specifies the number of virtual machines required and the types of internal and external connectivity to use. The file also provides constraints to be observed when deploying the virtualized function, such as: not deploying two components or two instances of the same function on the same physical server for reliability reasons, or conversely, deploying two components or two instances of the same function on the same physical server for performance reasons.
[0008] This VNFD virtualized network function descriptor is included in an archive file called a "VNF package," which also contains the software to be installed. Once obtained from the VNF provider, this archive file is stored in an entity called the NFV Orchestrator (NFVO for Network Functions Virtualization Orchestrator). An entity called the VNF Manager (VNFM for Virtual Network Functions Manager) can then download this VNFD descriptor. The NFVO and VNFM entities are hardware or software modules that perform the management and orchestration (MANO) functions of the NFV system. The VNFM entity is responsible for instantiating, scaling, updating, or deleting VNF virtualized network functions. This entity manages the lifecycle of VNF virtualized network functions under the control of the NFVO orchestrator.
[0009] In general, a network service requires the instantiation of a set of virtualized network functions (VNFs) and / or nested network services (called Nested Network Services, or NS). A network service descriptor (NSD) is then defined. Such an NSD is a file, usually populated by the operator, that describes an assembly of virtualized or non-virtualized functions.
[0010] Subsequently, an object is also referred to as a virtualized network function (VNF), or a nested network service (Nested NS).
[0011] A network service descriptor contains references to the descriptors of the objects to be instantiated to instantiate the target network service. Specifically, these are references to descriptors of virtualized network functions (VNFs) and descriptors of other nested network services (Nested NS). The NSD file is typically stored at the NFVO level and contains VNFD descriptor identifiers that will serve as the basis for instantiating the required virtualized network functions (VNFs).
[0012] In the ETSI NFV architecture, the contents of an NSD network service descriptor are used by the entity called the NFV Orchestrator (NFVO) to instantiate a complete network service. The contents of a VNFD descriptor, on the other hand, are used by the entity called the VNF Manager (VNFM) to instantiate a virtualized VNF network function as instructed by the NFVO.
[0013] According to ETSI specifications, the references included in an NSD network service descriptor allow for the unique identification of an object descriptor but not for determining where that object descriptor is located.
[0014] It is assumed that the NFVO entity has all the necessary information to instantiate a network service from a given NSD descriptor. In particular, it is assumed that the VNF Packages and the corresponding NSD descriptors for the virtualized VNF network functions or Nested NS network services to be instantiated are available locally at the NFVO entity on which the target NSD network service descriptor was loaded ( on-boarded en anglais ) . This therefore assumes that these descriptors and packages have been previously loaded (On-boarded) onto the NFVO entity.
[0015] Thus, as illustrated in figure 2A If an NSD-X network service descriptor references the virtualized network function descriptors VNFD-A and VNFD-B, a network service instantiation request received by the NFVO orchestrator (step E20) based on the NSD-X descriptor is only feasible if the NSD-X descriptor and the VNF packets containing the VNFD-A and VNFD-B descriptors have been previously transmitted to the NFVO entity receiving the network service instantiation request. In this case, the NVFO orchestrator can then process the network service instantiation request (step E21 (NSD-X)).
[0016] The availability of VNF packages corresponding to VNFDs referenced by an NSD descriptor is assumed to be guaranteed by prior coordination between entities and actors. Current mechanisms do not allow for handling the case where a VNFD descriptor is not available at the NFVO entity level.
[0017] Thus, as illustrated in figure 2B , when a VNFD descriptor (here VNFD-A and VNFD-B) is not available at the NFVO entity level, when an instantiation request (E20) for a network service corresponding to an NSD descriptor (NSD-X of the figure 2B ) referencing VNFD descriptors (here VNFD-A and VNFD-B on the figure 2B ) not known to the NFVO entity that received the instantiation request, the network service will not be instantiated and the instantiation request will be rejected.
[0018] The WO2017 / 035735A1 document describes a method for deploying network services in which certain virtualized network functions must be deployed on a network domain separate from the network domain managed by the NFVO orchestration entity that received a request to instantiate a network service.
[0019] The document US2017006083 A1 describes a method for loading VNF (on-boarding VNF packages) into an NFV system.
[0020] The document US2016212016 A1 describes a method for managing and orchestrating virtualized network functions in which a forwarding graph of NFV functions is generated.
[0021] The document Devlic Alisa et Al.: "NESMO: Network slicing management and orchestration framework", 2017 IEEE International Conference on communications Workshops concerns a management and orchestration system for a sliced network (network slicing).
[0022] Therefore, there is a need to improve the state of the art. 3. Description of the invention
[0023] The invention relates to a method for processing a request to instantiate a network service received by an orchestration entity implementing all or part of a virtualized network functions service. A descriptor of the network service includes at least one reference to an object to be deployed to instantiate said network service.
[0024] Advantageously, when the object descriptor is not available at the orchestration entity level, the orchestration entity obtains, from the network service descriptor, information enabling it to identify at least one target entity configured to instantiate the object upon instruction from the orchestration entity or to transmit the object descriptor to the orchestration entity. The orchestration entity then transmits to at least one of these target entities a request to instantiate the object or a request to retrieve a file containing the object descriptor.
[0025] Thus, the NFVO entity is able to identify a target entity to which the NFVO entity can address itself to instantiate the object or to retrieve the object.
[0026] The term "object" here refers to both a virtualized network function (VNF) and a nested network service (Nested NS) required to instantiate the requested network service. Instantiating a network service here refers specifically to deploying the network service, for example, upon a client's request.
[0027] The term "client" here refers to a software module, such as a software module of an API (Application Programming Interface), an application function, or a terminal. In the example described here, the client could be a software module within the information system of an operator providing the network service. Such a software module might be included in a customer portal that allows users or another operator to request the deployment of a service, such as a network service.
[0028] Advantageously, according to the invention, the syntax of an NSD network service descriptor is modified to add information enabling access to a descriptor of an object of a network service to be deployed.
[0029] Thanks to the invention, when the NFVO orchestration entity does not have the object descriptors necessary for the deployment of the network service, such descriptors can be obtained from the target entity so that the NFVO orchestration entity instantiates the object itself, or the NFVO orchestration entity sends an instantiation request to the target entity so that the object is instantiated by the target entity.
[0030] According to the prior art, when the NFVO orchestration entity does not have the object descriptors necessary for deploying the network service, the request to instantiate a network service is rejected. In contrast, according to the invention, when the NFVO orchestration entity does not have the object descriptors necessary for deploying the network service, the request to instantiate a network service is processed and the network service requested by the client can be deployed.
[0031] The target entity can be a secondary orchestrator, i.e., an orchestrator responsible for instantiating virtualized network functions (VNFs) or nested network services (Nested NS). Such a secondary orchestrator can be an NFVO entity or a VNFM management entity.
[0032] When the NFVO orchestration entity retrieves a file containing the object descriptor, such a file may contain only the object descriptor or the file may be an archive file (e.g., a VNF package according to ETSI terminology) including the object descriptor.
[0033] Advantageously, according to the invention, the orchestration entity can identify several target entities from which the object descriptor is available. The orchestration entity can then select one of the identified target entities, for example, by considering the load of each of the target entities and optimizing the load distribution.
[0034] According to a particular embodiment of the invention, said information includes an identifier of the object descriptor and an identifier of the target entity on which the object descriptor is stored.
[0035] According to another particular embodiment of the invention, said information includes an identifier of the object descriptor and an identifier of a virtualized network function domain on which said target entity is located.
[0036] This particular embodiment of the invention offers the advantage that the client requesting the network service instantiation does not need to know the domain structure of the network service provider. The client therefore does not need to know the identities of the orchestrators and / or hosting or indexing servers. The request to instantiate a network service is thus simpler for the client, and the management of a network service descriptor by the provider is also simplified.
[0037] According to one variant of this particular embodiment of the invention, the method further comprises: the sending of a query request, by the orchestration entity, to a name server in the virtualized network functions domain, on a network functions virtualization service, said virtualized network functions domain being the domain identified in the network service descriptor, the receipt of at least one response including an identifier of a target entity configured to instantiate said object on instruction from the orchestration entity or to transmit the descriptor of said object to the orchestration entity.
[0038] Alternatively, the query can include the object descriptor identifier.
[0039] The invention also relates to an orchestration device configured to implement all or part of a virtualized network functions service. The orchestration device includes a receiver for a request to instantiate a network service, and a memory storing a descriptor of said network service, said network service descriptor comprising at least one reference to an object to be deployed to instantiate said network service by an orchestration entity. The orchestration device includes a processing unit configured to: when said object descriptor is not available at the orchestration entity level, obtain, from the network service descriptor, information enabling the identification of at least one target entity configured to instantiate said object on instruction from the orchestration entity or transmit the descriptor of said object to the orchestration entity, and transmit to one of said at least one target entity a request to instantiate said object or a request to retrieve the descriptor of said object.
[0040] The invention also relates to a name resolution server, comprising a memory storing at least one record associating an identifier of a virtualized network function domain with at least one target entity of the virtualized network function domain, said target entity being configured to instantiate an object of a network service on instruction from an orchestration entity or to transmit a descriptor of said object to the orchestration entity.
[0041] According to a particular embodiment of the invention, said at least one recording is of type SRV or PTR.
[0042] Alternatively, said at least one record further includes a label indicating whether said target entity is configured to instantiate said network service object or to pass the descriptor of said object to the orchestration entity.
[0043] The invention also relates to a computer program comprising instructions for implementing a method for processing an instantiation request according to any of the particular embodiments described above, when said program is executed by a processor. Such a program may use any programming language. It may be downloaded from a communication network and / or stored on a computer-readable medium. This program may use any programming language and may be in the form of source code, object code, or code intermediate between source and object code, such as in a partially compiled form, or in any other desirable form.
[0044] The invention also relates to a computer-readable storage medium or information carrier containing instructions for a computer program as described above. The aforementioned storage media can be any entity or device capable of storing the program. For example, the medium may include a storage means, such as a ROM (e.g., a CD-ROM or a microelectronic circuit ROM), or a recording means (hard drive, USB flash drive). Furthermore, the storage media may be a transmissible medium such as an electrical or optical signal, which can be transmitted via an electrical or optical cable, by radio, or by other means. The program according to the invention can, in particular, be uploaded to a network such as the Internet.
[0045] Alternatively, the recording media may correspond to an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the process in question.
[0046] The method for processing an instantiation request according to the invention can therefore be implemented in various ways, including in wired or software form. 4. List of figures
[0047] Other features and advantages of the invention will become more apparent upon reading the following description of a particular embodiment, given by way of simple illustrative and non-limiting example, and the accompanying drawings, among which: there figure 1 The system described above illustrates a virtualization of NFV network functions, the figures 2A et 2B illustrate the processing of a request to instantiate a network service according to the prior art, the figure 3 illustrates the processing of a request to instantiate a network service according to a particular embodiment of the invention, the figures 4A And 4B illustrate the processing of a request to instantiate a network service according to other specific embodiments of the invention, the figure 5 illustrates a device configured to implement the process of processing a request to instantiate a network service according to a particular embodiment of the invention, the figure 6 illustrates a DNS (Domain Name System) server configured to implement the process of processing a request to instantiate a network service according to particular embodiments of the invention. 5. Description of an embodiment of the invention 5.1 General Principle
[0048] The invention aims to modify the identifiers of VNF functions and nested-NS network services referenced by a network service descriptor so that, when an orchestrator does not have the required object (VNF, Nested-NS), it can obtain information enabling it to access that object. In other words, the network service descriptor includes information allowing the orchestrator to identify at least one target entity that is configured to instantiate the required object upon instruction from the orchestrator or to transmit to the orchestrator a file containing a descriptor of the object. For simplicity, such information is hereafter referred to as a generalized identifier.
[0049] The term "primary orchestrator" will be used to refer to an orchestrator responsible for instantiating a first-level Network Service (NS), i.e., the network service for which a client sends an instantiation request. The term "secondary orchestrator" will be used to refer to an orchestrator responsible for instantiating second-level Virtual Network Functions (VNFs) or Nested Network Services (NS), i.e., the VNFs or Nested Network Services required to instantiate the first-level network service.
[0050] According to ETSI NFV terminology, the first-level orchestrator is an NFVO and the second-level orchestrator is another NFVO or a VNFM.
[0051] Once the target entity is determined, the main orchestrator sends either an instantiation request for the object or a retrieval request for the object.
[0052] When the primary orchestrator issues an object instantiation request, this request applies not only in the case where an NFVO orchestrator specifically instructs a particular VNFM to instantiate a service but also in the case where an NFVO orchestrator requests another NFVO to instantiate a nested network service ("Nested NS": a network service whose lifecycle is managed by the second NFVO on behalf of the first).
[0053] When the primary orchestrator issues a request to retrieve the descriptor, it can obtain either the object descriptor itself, or if there is an archive file containing the object descriptor.
[0054] These requests (instantiation request, retrieval request) can typically be implemented as REST APIs, such as those specified in ETSI GS NFV-IFA007 or 013 documents.
[0055] In the first case (instantiation request), the target entity plays the role of secondary orchestrator.
[0056] In the second case (retrieval request), the target entity can be a secondary orchestrator, a software descriptor and / or archive hosting server, or an object referencing server (VNF or Nested-NS). A referencing server is an intermediary that can respond by either providing the identity of a target entity capable of instantiating the object in question, or by providing the archive file of the desired virtualized network function (also called a VNF Package in the ETSI specifications), or the archive file of the desired nested network service (also called an NS Package). An NS Package is an archive file containing an NSD descriptor of the network service as well as all or part of the VNF packages referenced by that NSD descriptor.When the primary orchestrator sends a request to retrieve the descriptor of a VNF function or a Nested-NS nested network service, in order to instantiate the function or the nested network service itself, it then obtains a VNF packet from the function or an NS packet from the nested network service. 5.2 Implementation Examples
[0057] There figure 3 illustrates the processing of a request to instantiate a network service according to a particular embodiment of the invention in which the generalized identifier comprises an identifier of the object descriptor and an identifier of the target entity on which the object descriptor is located. These two identifiers may be separate or concatenated.
[0058] According to the figure 3 During an E20 step, a request to instantiate a network service is transmitted from a client to an NFVOp orchestrator. Such an instantiation request includes an identifier from the NDS-X descriptor of the requested network service.
[0059] During an E30 step, the orchestrator reads the NSD-X descriptor of the network service stored in its memory to identify the objects needed to instantiate the requested network service. For example, the NSD-X descriptor includes two generalized identifiers for a VNFD object descriptor. For example, the network service descriptor includes the following generalized identifiers in a form where the two identifiers are concatenated: nfvol.nfv.orange.com / nsd-123e4567-e89b-12d3-a456-426655440000 nfvcatalogue.orange.com / nsd-123e4567-e89b-12d3-a456-426655440000
[0060] In this example, the same VNFD object descriptor, identified here as "nsd-123e4567-e89b-12d3-a456-426655440000", is stored on two target entities. For example, the two target entities are, respectively, another NFVO1 orchestrator identified as "nfvo1.nfv.orange.com" and a file server unable to instantiate an NS network service or a VNF virtualized network function identified as "nfvcatalogue.orange.com".
[0061] During step E31, the NFVOp orchestrator detects that it does not have the VNFD object descriptor "nsd-123e4567-e89b-12d3-a456-426655440000" in its memory.
[0062] During an E32 step, the NFVOp orchestrator then obtains the identifier of at least one target entity on which the object descriptor is located by reading in the NSD-X network service descriptor the identifier associated with the identifier of the VNFD object descriptor.
[0063] During step E33, according to one variant, the NVFOp orchestrator therefore transmits a request to one of the target entities to instantiate the VNFD object "nsd-123e4567-e89b-12d3-a456-426655440000". According to this variant, and in the example described here, the NFVOp orchestrator sends its request to instantiate the VNFD object to the NFVO1 orchestrator.
[0064] According to another variant, the NVFOp orchestrator itself instantiates the VNFD object. According to this variant, the NVFOp orchestrator then transmits the VNFD object to the file server identified by "nfvcatalogue.orange.com" (NFVCAT on the figure 3 ) a request to retrieve the VNF package including the descriptor of the VNFD object that it obtains during step E34.
[0065] In the case of a multi-domain deployment, this particular implementation assumes that the client domain is aware of the provider domain's structure. In other words, the client sending a request to instantiate a network service must know the identities of the orchestrators and / or the hosting or referencing servers of the network service provider.
[0066] In the case of a multi-domain deployment, the client is a software module belonging to a domain distinct from the provider's domain.
[0067] The following are presented in relation to the figures 4A And 4B other particular embodiments of the invention in which such knowledge of the structure of the supplier's domain by the customer is not necessary.
[0068] According to these other particular embodiments of the invention, the generalized identifier comprises an identifier of the object descriptor (for example "nsd-123e4567-e89b-12d3-a456-426655440000") and an identifier of a domain of NFV virtualized network functions on which the target entity is located (for example "orange.com").
[0069] According to these other particular embodiments of the invention, in order to access the object descriptor, it is then necessary to obtain the address of the target entity in the NFV domain. For this, the DNS mechanism is used.
[0070] DNS is both an infrastructure and a protocol of the Internet commonly used to associate domain names (e.g., .com) with other information: IP addresses, lists of servers or services, etc. Different types of records exist, including SRV (Service Resource Records) and PTR (Pointer Records). Such records are hosted by so-called authoritative servers. The content of the SRV and PTR records used in particular embodiments of the invention described in relation to the figures 4A And 4B .
[0071] In these particular embodiments of the invention, steps E20 and E30 to E34 are similar to those described in relation to the figure 3 .
[0072] When the NFVOp orchestrator detected that it did not have in its memory the VNFD object descriptor required to instantiate the requested network service, it queried a DNS server in the NFV virtualized network functions domain, whose identifier it obtained from the NSD-X network service descriptor, to obtain the name of a target entity corresponding to that domain.
[0073] According to the particular embodiment described in figure 4A , during an E40 step, the NVFOp orchestrator queries the DNS server of the domain appearing in the generalized identifier, on the NFV service.
[0074] The DNS server contains SRV records that allow for the simple discovery of a target entity within the identified domain. For example, the DNS server contains the following information: $ORIGIN orange.com. _nfv._tcp.orange.com. 3600 IN SRV 0 0 80 server-nfv.orange.com. According to this example: "server-nfv.orange.com" is a domain name generically identifying the "NFV domain" of the operator orange.com, "server-orchestrator-1.orange.com" and "server-orchestrator-2.orange.com" identify servers storing VNFDs.
[0075] These servers can be physically addressed by one or more IP addresses. For simplicity, it was assumed that a single address (IPv4) was provided for each of the two names. The mechanism is similar with multiple addresses or AAAA records (IPv6).
[0076] The recordings described above are returned to the main orchestrator NFVOp together or sequentially, during an E41 step.
[0077] For example, initially, the primary NFVOp orchestrator obtains the identifier "server-nfv.orange.com" from the DNS server, representing the NFV domain of the orange.com domain. Then, the primary NFVOp orchestrator queries the DNS server again for the identifier "server-nfv.orange.com". The DNS server then sends it the identifiers of the secondary orchestrator servers 1 and 2, "server-orchestrator-1.orange.com" and "server-orchestrator-2.orange.com".
[0078] The main orchestrator NFVOp then selects a target entity from among the two secondary orchestrators, for example secondary orchestrator 1 "server-orchestrator-1.orange.com".
[0079] The primary orchestrator NFVOp then queries the DNS server on the identifier of secondary orchestrator 1 "server-orchestrator-1.orange.com" and obtains in return the IP address (139.100.1.1) of this secondary orchestrator.
[0080] Then, during step E33, the main orchestrator NFVOp transmits to the secondary orchestrator 1, a request to instantiate the object whose descriptor has the identifier " nsd-123e4567-e89b-12d3-a456-426655440000 "or a request to retrieve the object's descriptor" nsd-123e4567-e89b-12d3-a456-426655440000 "
[0081] In the SRV record described above, the two values following the SRV (here 0 and 0) can be usefully manipulated to implement load balancing across multiple orchestration servers. The first field corresponds to a priority associated with a server, and the second field to a weight used to choose between servers of the same priority. By varying these values, the load between the servers can be balanced.
[0082] The IP addresses are returned in the additional DNS fields.
[0083] According to one variant, different labels can be used to differentiate the types of target entities available. For example, if the target domain contains target entities capable of providing a descriptor and other target entities capable of instantiating an object, the DNS server's SRV records will be of the form $ORIGIN orange.com. _desc._nfv._tcp.orange.com. 3600 IN SRV 0 0 80 server-nfvdesc.orange.com. _inst._nfv._tcp.orange.com. 3600 IN SRV 0 0 80 server-nfvinst.orange.com.
[0084] Thus, when the main NFVOp orchestrator queries the DNS server on the NFV service of the target domain (here orange.com), it can specify in its query whether it wants to obtain an identifier of a target entity capable of providing a descriptor or of a target entity capable of instantiating an object, by using respectively the prefix _desc or _inst in its query request.
[0085] We now describe in relation to the figure 4B another particular embodiment of the invention in which the functionalities of DNS-SD service discovery (DNS Service Discovery in English) as defined in RFC 6763 are used.
[0086] The DNS-SD function enables the discovery of the desired orchestration services for the deployment of the requested network service.
[0087] The DNS server for the domain included in the generalized identifier then includes the following record types: PTR records to match a list of service types with service instances, SRV records to associate these instantiations with ports and domain server names, optionally, TXT (text) records to enrich the description of services rendered using a syntactically free description.
[0088] The general form of a PTR record for the DNS-SD functionality is as follows: Service Instance Name = <instance> . <service> . <domain>
[0089] <service>is made up of two identifiers _xx: the first is the service identifier. For example, _nfv for the NFV service.
[0090] As with the first variant, different service identifiers can be used if it is necessary to distinguish between different types of available entities.
[0091] The second identifier is the protocol over which this service will be provided. For example, _tcp, assuming that the NFV service is accessible via the HTTP protocol.
[0092] <instance>is formed from the identifier of the descriptor of the NFV object concerned. Taking the example described above, the identifier nsd-123e4567-e89b-12d3-a456-426655440000 of the required object is displayed in the PTR record.
[0093] <instance>is syntactically constrained only by its length and only requires to be unique within the domain under consideration.
[0094] For example, the DNS server includes the following PTR records: $ORIGIN orange.com. _nfv._tcp.orange.com. PTR nsd-123e4567-e89b-12d3-a456-426655440000_nfv_ tcp.serveur-orchestrateur-1.orange.com. _nfv._tcp.orange.com. PTR nsd-123e4567-e89b-12d3-a456-426655441111_nfv_ tcp.serveur-orchestrateur-1.orange.com. _nfv._tcp.orange.com. PTR nsd-123e4567-e89b-12d3-a456-426655441111_nfv_ tcp.serveur-orchestrateur-2.orange.com. _nfv._tcp.orange.com. PTR nsd-123e4567-e89b-12d3-a456-426655442222_nfv_ tcp.serveur-orchestrateur-2.orange.com. _nfv._tcp.orange.com. PTR nsd-123e4567-e89b-12d3-a456-426655443333_nfv_ tcp.serveur-orchestrateur-2.orange.com.
[0095] The DNS server also includes the following SRV and TXT records: nsd-123e4567-e89b-12d3-a456-426655441111_nfv_tcp.serveur-orchestrateur-1.orange.com. SRV 0 0 80 serveur-orchestrateur-1.orange.com.
[0096] In this particular embodiment of the invention, the main orchestrator NFVOp queries the DNS server of the domain appearing in the generalized identifier (for example "orange.com"), on the NFV service, using the identifier of the descriptor of the requested object, for example nsd-123e4567-e89b-12d3-a456-426655441111.
[0097] During an E42 step, the main orchestrator NFVOp requires the descriptor nsd-123e4567-e89b-12d3-a456-426655441111_nfv in the orange.com domain.
[0098] During an E43, based on the PTR records stored in the DNS server, the DNS server then sends the following two PTR records: _nfv._tcp.orange.com. PTR nsd-123e4567-e89b-12d3-a456-426655441111_nfv_tcp.serveur-orchestrateur-1.orange.com. _nfv._tcp.orange.com. PTR nsd-123e4567-e89b-12d3-a456-426655441111_nfv_tcp.serveur-orchestrateur-2.orange.com.
[0099] The primary orchestrator NFVOp then selects one of the two proposed servers, for example the secondary orchestrator server-orchestrator-1.orange.com.
[0100] During an E44 step, the NFVOp main orchestrator queries the DNS server on the resource nsd-123e4567-e89b-12d3-a456-426655441111_nfv_ tcp.serveur-orchestrateur-1.orange.com.
[0101] During an E45 step, the DNS server then transmits the SRV and TXT records stored for this resource.
[0102] The main orchestrator NFVOp then obtains the following recordings:
[0103] The primary orchestrator NFVOp thus obtains the IP address of the secondary orchestrator server-orchestrator-1.orange.com.
[0104] According to one variant, the TXT record "path = " stored by the DNS server can be used to specify the path to use in the HTTP URI to access the object in question.
[0105] In one embodiment, an additional TXT record can be used to indicate to the main NFVOp orchestrator the licensing requirements or version for each of the required VNF or NS packages. For example, such a TXT record might be of the form TXT version=1.2.3.4.5.
[0106] In a manner similar to the particular embodiment described in relation to the figure 4A , PTR or SRV records according to the particular embodiment described herein may include a label indicating whether the target entity is configured to instantiate said network service object or to pass the descriptor of said object to the orchestration entity.
[0107] Similar to the particular embodiments described above, during an E33 step, the NFVOp main orchestrator sends an instantiation request or a fetch request to the target entity.
[0108] The embodiments described above apply similarly when the object required by the requested network service is a Nested NS network service. When the NFVOp primary orchestrator retrieves the Nested NSD descriptor of the nested network service, the retrieved Nested NSD descriptor may itself reference objects that the NFVOp primary orchestrator does not have.
[0109] According to one variant, the target entity that provided the Nested NSD descriptor, for example a secondary orchestrator, also provides the primary NFVOp orchestrator with the objects referenced in that Nested NSD descriptor.
[0110] When the secondary orchestrator does not have the objects referenced in this Nested NSD descriptor, the secondary orchestrator then implements at least steps E31 and E33 described above according to any one of particular embodiments of the invention, in order to obtain for each unavailable referenced object a file including a descriptor of that object.
[0111] During an E31 step, the secondary orchestrator obtains, from the nested network service descriptor, information enabling it to identify at least one target entity configured to pass the descriptor of an unavailable object referenced in the nested network service descriptor, to the secondary orchestrator.
[0112] During an E33 step, the secondary orchestrator transmits to at least one of said target entities a request to retrieve a file containing a descriptor of the unavailable object and transmits this file to the primary orchestrator NFVOp.
[0113] It is understood that the mechanism for recovering a file containing a descriptor of the unavailable object can be implemented recursively by the different target entities to which such a file is requested when that file contains a descriptor of a nested network service and that these target entities do not have the objects referenced in such a descriptor.
[0114] According to another variant, the NFVOp master orchestrator itself retrieves objects referenced in a nested network service descriptor that it does not possess. To do this, the NFVOp master orchestrator implements at least steps E31 and E33 described above according to any one of the particular embodiments of the invention to obtain, for each unavailable referenced object, a file containing a descriptor of that object from the target entity.
[0115] There figure 5 illustrates an orchestration device configured to implement the process of processing a request to instantiate a network service according to any one of the particular embodiments of the invention.
[0116] Such an orchestration device includes, in particular, an orchestration entity (NFVO) configured to implement all or part of a virtualized network functions service. The orchestration device includes a receiver (COM) for a request to instantiate a network service, and a memory (MEM) storing a descriptor of said network service, said network service descriptor including at least one reference to an object to be deployed to instantiate said network service. The orchestration device includes a processing unit (TU) configured to: when said object descriptor is not available at the orchestration entity (NFVO) level, obtain, from the network service descriptor, information enabling the identification of at least one target entity configured to instantiate said object on instruction from the orchestration entity (NFVO) or transmit the descriptor of said object to the orchestration entity (NFVO), and transmit to one of said at least one target entity a request to instantiate said object or a request to retrieve the descriptor of said object.
[0117] According to a particular embodiment of the invention, the steps of the process for processing a request to instantiate a network service are implemented by instructions from a computer program PG.
[0118] The processing unit (PU) of the orchestration device is equipped, for example, with a processor (PROC) and controlled by the computer program (PG) stored in memory (MEM). The computer program (PG) includes instructions to implement the steps of the data processing procedure as described above when the program is executed by the processor (PROC).
[0119] At initialization, the code instructions of the computer program PG are, for example, loaded into memory before being executed by the processor PROC. The processor PROC of the processing unit UT implements, in particular, the steps of the data processing procedure according to any one of the specific embodiments described in relation to the figures 3 , 4A Or 4B according to the instructions of the PG computer program.
[0120] According to a particular embodiment of the invention, the orchestration device is included in a server.
[0121] There figure 6 illustrates a DNS server configured to implement steps in the process of handling a request to instantiate a network service according to any one of the particular embodiments of the invention described in relation to the figures 4A Or 4B .
[0122] The DNS server includes a MEM6 memory unit, a UT6 processing unit (equipped, for example, with a PROC6 processor), and is driven by the PG6 computer program stored in MEM6 memory. The PG6 computer program contains instructions to implement steps in the data processing procedure as described above, when the program is executed by the PROC6 processor. The DNS server also includes a COM6 transceiver configured to receive query requests and send SRV, PTR, and / or TXT records.
[0123] At initialization, the code instructions of the PG6 computer program are, for example, loaded into memory before being executed by the PROC6 processor.
[0124] The DNS server memory includes at least one record associating an identifier of a virtualized network functions domain with at least one target entity of the virtualized network functions domain, said target entity being configured to instantiate an object of a network service on instruction from an orchestration entity or to transmit a descriptor of said object to the orchestration entity.
[0125] According to a particular embodiment of the invention, the DNS server record(s) for implementing steps in the process of processing a request to instantiate a network service are of type SRV or PTR.
[0126] According to another particular embodiment of the invention, the DNS server record(s) for implementing steps in the process of processing a request to instantiate a network service further include a label indicating whether said target entity is configured to instantiate said network service object or to transmit the descriptor of said object to the orchestration entity.< / instance> < / instance> < / service> < / domain> < / service> < / instance>
Claims
1. Method for processing a request (E20) to instantiate a network service, a descriptor (NSD-X) of said network service comprising at least one reference to an object to be deployed in order to instantiate said network service, the processing method, implemented by an orchestration entity (NFVOp) implementing all or part of a virtual network function service, comprising, when a descriptor of the object is not available (E30) at the orchestration entity (NFVOp), - obtaining (E31), on the basis of the descriptor of the network service (NSD-X), information which makes it possible to identify at least one target entity configured to instantiate said object on instruction from the orchestration entity or to transmit the descriptor of said object to the orchestration entity, said information comprising an identifier of the descriptor of the object and an identifier of a virtual network function domain in which said target entity is located, - sending, to a name server identified by means of said identifier of the virtual network function domain in which said target entity is located, a query request comprising said identifier of the descriptor of the object and a prefix indicating whether it is desired to obtain an identifier of a target entity which is capable of providing the descriptor of the object or an identifier of a target entity which is capable of instantiating said object, - receiving at least one response comprising an identifier of a target entity configured to instantiate said object on instruction from the orchestration entity or to transmit the descriptor of said object to the orchestration entity, - the orchestration entity transmitting (E33), to one of said at least one target entity, a request to instantiate said object when the information makes it possible to identify at least one target entity configured to instantiate said object or a request to retrieve a file comprising said descriptor of said object when the information makes it possible to identify at least one target entity configured to transmit the descriptor of said object to the orchestration entity.
2. Method according to Claim 1, wherein the query request further comprises the identifier of the object descriptor.
3. Orchestration device configured to implement all or part of a virtual network function service by means of an orchestration entity, the device comprising a receiver of a request to instantiate a network service, and a memory storing a descriptor of said network service, said descriptor of the network service comprising at least one reference to an object to be deployed in order to instantiate said network service, the orchestration device comprising a processing unit configured to, when said descriptor of the object is not available at the orchestration entity: - obtain, on the basis of the descriptor of the network service, information which makes it possible to identify at least one target entity configured to instantiate said object on instruction from the orchestration entity or transmit the descriptor of said object to the orchestration entity, said information comprising an identifier of the descriptor of the object and an identifier of a virtual network function domain in which said target entity is located, - send, to a name server of the domain identified by means of said identifier of the virtual network function domain in which said target entity is located, a query request comprising said identifier of the descriptor of the object, said query request comprising a prefix indicating whether it is desired to obtain an identifier of a target entity which is capable of providing the descriptor of the object or an identifier of a target entity which is capable of instantiating said object, - receive at least one response comprising an identifier of a target entity configured to instantiate said object on instruction from the orchestration entity or to transmit the descriptor of said object to the orchestration entity, - and the orchestration entity being configured to transmit, to one of said at least one target entity, a request to instantiate said object when the information makes it possible to identify at least one target entity configured to instantiate said object or a request to retrieve a file comprising said descriptor of said object when the information makes it possible to identify at least one target entity configured to transmit the descriptor of said object to the orchestration entity.
4. Name resolution server of a virtual network function domain, comprising a memory storing at least one record associating an identifier of a descriptor of an object of a network service with at least one identifier of a target entity, said target entity being configured to instantiate said object on instruction from an orchestration entity or transmit a descriptor of said object to the orchestration entity, said server being able to receive, from an orchestration entity, a query request comprising said identifier of the descriptor of an object, and a prefix indicating whether it is desired to obtain an identifier of a target entity which is capable of providing the descriptor of the object or an identifier of a target entity which is capable of instantiating said object and delivering, to said orchestration entity, an identifier of a target entity which is capable of providing the descriptor of the object or an identifier of a target entity which is capable of instantiating said object in accordance with said prefix.
5. Name resolution server according to Claim 4, wherein said at least one record is SRV or PTR.
6. Name resolution server according to Claim 4 or 5, wherein said at least one record comprises a label indicating whether said target entity is configured to instantiate said object of the network service or to transmit the descriptor of said object to the orchestration entity.
7. Computer program comprising instructions for implementing the processing method according to either one of Claims 1 and 2, when said program is executed by a processor.