WO2023212891A1 - Apparatus, method, and computer program - Google Patents

Apparatus, method, and computer program Download PDF

Info

Publication number
WO2023212891A1
WO2023212891A1 PCT/CN2022/091093 CN2022091093W WO2023212891A1 WO 2023212891 A1 WO2023212891 A1 WO 2023212891A1 CN 2022091093 W CN2022091093 W CN 2022091093W WO 2023212891 A1 WO2023212891 A1 WO 2023212891A1
Authority
WO
WIPO (PCT)
Prior art keywords
network slice
instance
return code
service consumer
slice subnet
Prior art date
Application number
PCT/CN2022/091093
Other languages
French (fr)
Inventor
Shu Qiang SUN
Jing PING
Anatoly ANDRIANOV
Srilakshmi SRINIVASARAJU
Original Assignee
Nokia Shanghai Bell Co., Ltd.
Nokia Solutions And Networks Oy
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 Nokia Shanghai Bell Co., Ltd., Nokia Solutions And Networks Oy filed Critical Nokia Shanghai Bell Co., Ltd.
Priority to PCT/CN2022/091093 priority Critical patent/WO2023212891A1/en
Publication of WO2023212891A1 publication Critical patent/WO2023212891A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5051Service on demand, e.g. definition and deployment of services in real time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/5096Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to distributed or central networked applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]

Definitions

  • the present disclosure relates to an apparatus, a method, and a computer program for managing network slice instance and network slice subnet instance allocation in a communication system.
  • a communication system can be seen as a facility that enables communication sessions between two or more entities such as communication devices, base stations and/or other nodes by providing carriers between the various entities involved in the communications path.
  • the communication system may be a wireless communication system.
  • wireless systems comprise public land mobile networks (PLMN) operating based on radio standards such as those provided by 3GPP, satellite based communication systems and different wireless local networks, for example wireless local area networks (WLAN) .
  • PLMN public land mobile networks
  • WLAN wireless local area networks
  • the wireless systems can typically be divided into cells, and are therefore often referred to as cellular systems.
  • the communication system and associated devices typically operate in accordance with a given standard or specification which sets out what the various entities associated with the system are permitted to do and how that should be achieved. Communication protocols and/or parameters which shall be used for the connection are also typically defined. Examples of standard are the so-called 5G standards.
  • an apparatus comprising means for: receiving, form a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocating a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and sending, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the apparatus may comprise means for: sending, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or sending, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the apparatus may comprise means for: determining that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determining that a network slice instance or the network slice subnet instance already exists and can be shared between another service consumer and the service consumer; and allocating the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
  • the apparatus may comprise means for: determining that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly creating a network slice instance or a network slice subnet instance; and allocating the network slice instance or the network slice subnet instance that is newly created to the service consumer.
  • the apparatus may comprise means for: receiving, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocating the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and sending, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
  • the apparatus may comprise means for: sending, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or sending, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical or different.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • the apparatus may comprise means for: determining that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and terminating the network slice instance or the network slice subnet instance.
  • the apparatus may comprise means for: determining that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modifying the network slice instance or the network slice subnet instance.
  • an apparatus comprising at least one processor and at least one memory including computer code for one or more programs, the at least one memory and the computer code configured, with the at least one processor, to cause the apparatus at least to: receive, form a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocate a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: send, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or send, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: determine that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determine that a network slice instance or the network slice subnet instance already exists and can be shared between another service consumer and the service consumer; and allocate the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: determine that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly create a network slice instance or a network slice subnet instance; and allocate the network slice instance or the network slice subnet instance that is newly created to the service consumer.
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: receive, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocate the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: send, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or send, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical or different.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: determine that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and terminate the network slice instance or the network slice subnet instance.
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: determine that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modify the network slice instance or the network slice subnet instance.
  • an apparatus comprising circuitry configured to:receive, form a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocate a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the circuitry may be configured to: send, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or send, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the circuitry may be configured to: determine that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determine that a network slice instance or the network slice subnet instance already exists and can be shared between another service consumer and the service consumer; and allocate the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
  • the circuitry may be configured to: determine that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly create a network slice instance or a network slice subnet instance; and allocate the network slice instance or the network slice subnet instance that is newly created to the service consumer.
  • the circuitry may be configured to: receive, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocate the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
  • the circuitry may be configured to: send, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or send, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical or different.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • the circuitry may be configured to: determine that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and terminate the network slice instance or the network slice subnet instance.
  • the circuitry may be configured to: determine that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modify the network slice instance or the network slice subnet instance.
  • a method comprising: receiving, form a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocating a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and sending, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the method may comprise: sending, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or sending, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the method may comprise: determining that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determining that a network slice instance or the network slice subnet instance already exists and can be shared between another service consumer and the service consumer; and allocating the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
  • the method may comprise: determining that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly creating a network slice instance or a network slice subnet instance; and allocating the network slice instance or the network slice subnet instance that is newly created to the service consumer.
  • the method may comprise: receiving, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocating the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and sending, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
  • the method may comprise: sending, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or sending, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical or different.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • the method may comprise: determining that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and terminating the network slice instance or the network slice subnet instance.
  • the method may comprise: determining that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modifying the network slice instance or the network slice subnet instance.
  • a computer program comprising computer executable code which when run on at least one processor is configured to: receive, form a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocate a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: send, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or send, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: determine that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determine that a network slice instance or the network slice subnet instance already exists and can be shared between another service consumer and the service consumer; and allocate the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: determine that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly create a network slice instance or a network slice subnet instance; and allocate the network slice instance or the network slice subnet instance that is newly created to the service consumer.
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: receive, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocate the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: send, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or send, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical or different.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: determine that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and terminate the network slice instance or the network slice subnet instance.
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: determine that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modify the network slice instance or the network slice subnet instance.
  • an apparatus comprising means for: sending, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and receiving, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the apparatus may comprise means for: receiving, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receiving, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the apparatus may comprise means for: sending, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receiving, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
  • the apparatus may comprise means for: receiving, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receiving, from the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • an apparatus comprising at least one processor and at least one memory including computer code for one or more programs, the at least one memory and the computer code configured, with the at least one processor, to cause the apparatus at least to: send, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and receive, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: receive, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receive, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: send, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receive, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
  • the at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: receive, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receive, from the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • an apparatus comprising circuitry configured to: send, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and receive, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the apparatus may comprise circuitry configured to: receive, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receive, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the apparatus may comprise circuitry configured to: send, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receive, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
  • the apparatus may comprise circuitry configured to: receive, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receive, from the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • a method comprising: sending, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and receiving, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the method may comprise: receiving, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receiving, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the method may comprise: sending, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receiving, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
  • the method may comprise: receiving, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receiving, from the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • a computer program comprising computer executable code which when run on at least one processor is configured to: send, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and receive, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: receive, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receive, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: send, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receive, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
  • the computer program may comprise computer executable code which when run on at least one processor is configured to: receive, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receive, from the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • a computer readable medium comprising program instructions stored thereon for performing at least one of the above methods.
  • a non-transitory computer readable medium comprising program instructions stored thereon for performing at least one of the above methods.
  • non-volatile tangible memory medium comprising program instructions stored thereon for performing at least one of the above methods.
  • AMF Access and Mobility Management Function
  • API Application Programming Interface
  • CU Centralized Unit
  • eMBB enhanced Mobile Broadband
  • gNB gNodeB
  • GSM Global System for Mobile communication
  • GSMA Global System for Mobile Communications Association
  • HSS Home Subscriber Server
  • IOC Information Object Class
  • IoT Internet of Things
  • MIoT Massive Internet of Things
  • NEF Network Exposure Function
  • NRF Network Repository Function
  • NSSI Network Slice Subnet Instance
  • RAM Random Access Memory
  • SMF Session Management Function
  • UE User Equipment
  • 5GC 5G Core network
  • Figure 1 shows a schematic representation of a 5G system
  • Figure 2 shows a schematic representation of a control apparatus
  • Figure 3 shows a schematic representation of a user equipment
  • Figure 4 shows a block diagram of a method for managing network slice instance and network slice subnet instance allocation in a communication system performed by a service producer;
  • Figure 5 shows a block diagram of a method for managing network slice instance and network slice subnet instance allocation in a communication system performed by a service consumer
  • Figure 6 shows a schematic representation of a non-volatile memory medium storing instructions which when executed by a processor allow a processor to perform one or more of the steps of the methods of Figures 4 and 5.
  • FIG. 1 shows a schematic representation of a 5G system (5GS) .
  • the 5GS may comprises a user equipment (UE) , a (radio) access network ( (R) AN) , a 5G core network (5GC) , one or more application functions (AF) and one or more data networks (DN) .
  • UE user equipment
  • R radio access network
  • GC 5G core network
  • AF application functions
  • DN data networks
  • the 5G (R) AN may comprise one or more gNodeB (gNB) distributed unit functions connected to one or more gNodeB (gNB) centralized unit functions.
  • gNB gNodeB
  • gNB gNodeB
  • the 5GC may comprise an access and mobility management function (AMF) , a session management function (SMF) , an authentication server function (AUSF) , a user data management (UDM) , a user plane function (UPF) and/or a network exposure function (NEF) .
  • AMF access and mobility management function
  • SMF session management function
  • AUSF authentication server function
  • UDM user data management
  • UPF user plane function
  • NEF network exposure function
  • FIG 2 illustrates an example of a control apparatus 200 for controlling a function of the (R) AN or the 5GC as illustrated on Figure 1.
  • the control apparatus may comprise at least one random access memory (RAM) 211a, at least on read only memory (ROM) 211b, at least one processor 212, 213 and an input/output interface 214.
  • the at least one processor 212, 213 may be coupled to the RAM 211a and the ROM 211b.
  • the at least one processor 212, 213 may be configured to execute an appropriate software code 215.
  • the software code 215 may for example allow to perform one or more steps to perform one or more of the present aspects.
  • the software code 215 may be stored in the ROM 211b.
  • the control apparatus 200 may be interconnected with another control apparatus 200 controlling another function of the 5G (R) AN or the 5GC.
  • each function of the (R) AN or the 5GC comprises a control apparatus 200.
  • two or more functions of the (R) AN or the 5GC may share a control apparatus.
  • FIG 3 illustrates an example of a UE 300, such as the UE illustrated on Figure 1.
  • the UE 300 may be provided by any device capable of sending and receiving radio signals.
  • Non-limiting examples comprise a user equipment, a mobile station (MS) or mobile device such as a mobile phone or what is known as a ’smart phone’ , a computer provided with a wireless interface card or other wireless interface facility (e.g., USB dongle) , a personal data assistant (PDA) or a tablet provided with wireless communication capabilities, a machine-type communications (MTC) device, a Cellular Internet of things (CIoT) device or any combinations of these or the like.
  • the UE 300 may provide, for example, communication of data for carrying communications.
  • the communications may be one or more of voice, electronic mail (email) , text message, multimedia, data, machine data and so on.
  • the UE 300 may receive signals over an air or radio interface 307 via appropriate apparatus for receiving and may transmit signals via appropriate apparatus for transmitting radio signals.
  • transceiver apparatus is designated schematically by block 306.
  • the transceiver apparatus 306 may be provided for example by means of a radio part and associated antenna arrangement.
  • the antenna arrangement may be arranged internally or externally to the mobile device.
  • the UE 300 may be provided with at least one processor 301, at least one memory ROM 302a, at least one RAM 302b and other possible components 303 for use in software and hardware aided execution of tasks it is designed to perform, including control of access to and communications with access systems and other communication devices.
  • the at least one processor 301 is coupled to the RAM 302b and the ROM 302a.
  • the at least one processor 301 may be configured to execute an appropriate software code 308.
  • the software code 308 may for example allow to perform one or more of the present aspects.
  • the software code 308 may be stored in the ROM 302a.
  • the processor, storage and other relevant control apparatus can be provided on an appropriate circuit board and/or in chipsets. This feature is denoted by reference 304.
  • the device may optionally have a user interface such as keypad 305, touch sensitive screen or pad, combinations thereof or the like.
  • a user interface such as keypad 305, touch sensitive screen or pad, combinations thereof or the like.
  • one or more of a display, a speaker and a microphone may be provided depending on the type of the device.
  • 3GPP TS 28.531 defines network slice instance (NSI) and network slice subnet instance (NSSI) allocation and deallocation use cases. 3GPP TS 28.531 defines allocateNsi, allocateNssi, deallocateNsi and deallocateNssi operations, procedures and RESTful HTTP-based solution set implementations.
  • NSI network slice instance
  • NSSI network slice subnet instance
  • the allocateNsi and allocateNssi operations require the NSI or NSSI to be newly created or already existing and shared (i.e. re-used) in a successful response.
  • deallocateNsi and deallocateNssi operations require the NSI or NSSI to be terminated (i.e. deleted) or modified in a successful response.
  • 3GPP TS 28.531 section 5.1.1 network slice instance allocation reads as follows.
  • 3GPP TS 28.531 section 5.1.2 network slice subnet instance allocation reads as follows.
  • 3GPP TS 28.531 section 5.1.4 network slice subnet instance deallocation reads as follows.
  • the allocateNsi and allocateNssi operations may not be implementable with normal create read update delete (CRUD) operations, as they may not be clean create operations (i.e. a new NSI or NSSI may be created or an already existing NSI or NSSI may be shared) .
  • CRUD create read update delete
  • clean may means that for CRUD operations, one operation provides only one successful result.
  • the successful result may be to create a new resource.
  • the NetworkSlice IOC includes an attribute ServiceProfile.
  • the attribute Service Profile captures a set of requirements for a NSI such as enhanced mobile broadband (eMBB) , massive internet of things (MIoT) or ultra reliable low latency communications (URLLC) .
  • the NetworkSliceSubnet IOC includes an attribute SliceProfile.
  • the attribute SliceProfile captures resource model information describing static parameters and functional component of a NSSI. It may include a slice profile, a network slice subnet type (e.g. RAN eMBB, CN eMBB) , an additional system feature (e.g. multicast, edge computing) , priority, QoS attributes (e.g. bandwidth, latency, number of subscribers and so on) or network service descriptor (NSD) identifier (ID) .
  • a network slice subnet type e.g. RAN eMBB, CN eMBB
  • QoS attributes e.g. bandwidth, latency, number of subscribers and so on
  • 3GPP TS 28.531 section 9 defines an OpenAPI with representation state transfer (REST) implementation of the allocateNsi and allocateNssi operations.
  • REST representation state transfer
  • Such OpenAPI creates a new ServiceProfile IOC and SliceProfile resource IOC respectively for each successful request. This is not semantically correct as an attribute of an IOC should not be created as an IOC.
  • RFC2616 clause 6 relates to hypertext transfer protocol HTTP return code.
  • the Status-Code element is a 3-digit integer result code of the attempt to understand and satisfy the request. These codes are fully defined in section 10.
  • the Reason-Phrase is intended to give a short textual description of the Status-Code.
  • the Status-Code is intended for use by automata and the Reason-Phrase is intended for the human user. The client is not required to examine or display the Reason-Phrase.
  • the first digit of the Status-Code defines the class of response. The last two digits do not have any categorization role. There are 5 values for the first digit:
  • HTTP status codes are extensible. HTTP applications are not required to understand the meaning of all registered status codes, though such understanding is obviously desirable. However, applications MUST understand the class of any status code, as indicated by the first digit, and treat any unrecognized response as being equivalent to the x00 status code of that class, with the exception that an unrecognized response MUST NOT be cached. For example, if an unrecognized status code of 431 is received by the client, it can safely assume that there was something wrong with its request and treat the response as if it had received a 400 status code. In such cases, user agents SHOULD present to the user the entity returned with the response, since that entity is likely to include human-readable information which will explain the unusual status.
  • This class of status code indicates that the client's request was successfully received, understood, and accepted.
  • One or more aspects of this disclosure propose enhancements to the allocateNsi, allocateNssi, deallocateNsi and deallocateNssi operations for OpenAPI REST implementation.
  • One or more aspects of this disclosure propose enhancements to the response flow and response message.
  • One or more aspects of this disclosure to separate the successful response flow into different types of responses via different return codes.
  • a first type of response may be used for newly created NSI or NSSI and a second type of response may be used for an already existing NSI or NSSI (i.e. no NSI or NSSI is newly created) .
  • Different HTTP successful return code may be used to distinguish the two types of responses. Since the two types of responses are successful responses, the ‘2xx’ return code may be used.
  • a first return code ‘201’ may be used in the first type of response to comply with RFC2616 clause 6 and the POST semantics.
  • a second return code ‘211’ may be used in the second type of response to comply with RFC2616 clause 6.
  • the first return code and/or the second return code may comprise an extension (e.g. the second return code may be ‘211.1’ ) .
  • first return code and second return code with or without extension may be used as long as the first code and second code are not conflicting.
  • No ServiceProfile IOC or SliceProfile ICO may be created.
  • a third type of response may be used for a terminated NSI or NSSI and a fourth type of response may be used for a modified NSI or NSSI (i.e. without termination) or a NSI or NSSI that is neither terminated or modified (i.e. do nothing) .
  • Different HTTP successful return code may be used to distinguish the two types of responses. Since the two types of responses are successful responses, the ‘2xx’ return code may be used.
  • a third return code ‘204’ may be used in the third type of response to comply with RFC2616 clause 6 and the DELETE semantics.
  • a fourth return code ‘212’ may be used in the fourth type of response to comply with RFC2616 clause 6.
  • the third return code and/or the fourth return code may comprise an extension (e.g. the second return code may be ‘212.1’ )
  • third return code and fourth return code may be used with or without extension as long as the third return code and fourth return code are not conflicting.
  • the return codes and semantics may be updated for clause 9.1.2, 9.1.3, 9.2.1.2, 9.2.1.3 in 3GPP TS 28.531 as follows.
  • This operation is to allocate a network slice instance provided by the service provider, the network slice instance may be new or existing.
  • Table 9.1.2-1 Mapping of IS operation input parameters to SS equivalents (HTTP POST)
  • the message flow for allocation is as follows:
  • the MnS consumer sends a HTTP POST request to the MnS producer.
  • the message body shall carry the complete representation of the resource to be created.
  • the resource identifier shall be absent or carry null semantics.
  • the MnS producer sends a HTTP POST response to the MnS consumer.
  • the message body shall contain the complete representation of the ServiceProfile and networkSliceDN identifying the NetworkSlice MOI shared.
  • the response message body may provide additional error information.
  • This operation deallocate a service profile in an NSI.
  • the provider may terminate the requested NSI or modify the requested NSI without termination to satisfy the request.
  • Table 9.1.1.3-2 Mapping of IS operation output parameters to SS equivalents (HTTP DELETE)
  • the MnS consumer sends a HTTP DELETE request to the MnS producer.
  • the message body shall contain the networkSliceDN identifying the NetworkSlice MOI.
  • the MnS producer sends a HTTP DELETE response to the MnS consumer.
  • the response message body may provide additional error information.
  • This operation is to allocate a network slice instance provided by the service provider, the network slice subnet instance may be new or existing.
  • Table 9.2.1.2-1 Mapping of IS operation input parameters to SS equivalents (HTTP POST)
  • Table 9.2.1.2-2 Mapping of IS operation output parameters to SS equivalents (HTTP POST)
  • the message flow for allocation is as follows:
  • the MnS consumer sends a HTTP POST request to the MnS producer.
  • the message body shall carry the complete representation of the resource to be created.
  • the resource identifier shall be absent or carry null semantics.
  • the MnS producer sends a HTTP POST response to the MnS consumer.
  • the response message body may provide additional error information.
  • This operation deallocate a slice profile in an NSSI.
  • the provider may terminate the requested NSSI or modify the requested NSSI without termination to satisfy the request.
  • the MnS consumer sends a HTTP DELETE request to the MnS producer.
  • the message body shall contain the networkSliceSubnetDN identifying the NetworkSliceSubnet MOI.
  • the MnS producer sends a HTTP DELETE response to the MnS consumer.
  • the response message body may provide additional error information.
  • Figure 4 shows a block diagram of a method for managing NSI and NSSI allocation in a communication system performed by a service producer.
  • a service producer may receive, form a service consumer, a request to allocate a NSI or a NSSI to the service consumer.
  • the service producer may allocate a NSI or a NSSI to the service consumer, wherein the NSI or the NSSI is newly created or already exists.
  • the service producer may send, to the service consumer, a return code indicating that the NSI or the NSSI has been allocated, wherein the return code depends on whether the NSI or the NSSI is newly created or already exists.
  • the service producer may send, to the service consumer, a first return code indicating that the NSI or the NSSI has been allocated when the NSI or the NSSI is newly created.
  • the service producer may send, to the service consumer, a second return code indicating that the NSI or the NSSI has been allocated when the NSI or the NSSI already exists.
  • the return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the service producer may determine that the request comprises information indicating that the NSI or the NSSI can be shared between another service consumer and the service consumer.
  • the service producer may determine that a NSI or the NSSI already exists and can be shared between another service consumer and the service consumer.
  • the service producer may allocate the NSI or the NSSI that already exists and can be shared between another service consumer and the service consumer to the service consumer.
  • the service producer may determine that the request does not comprise information indicating that the NSI or the NSSI can be shared between another service consumer and the service consumer.
  • the service producer may newly create a NSI or a network slice subnet instance.
  • the service producer may allocate the NSI or the NSSI that is newly created to the service consumer.
  • the service producer may receive, form the service consumer, a request to deallocate the NSI or the NSSI from the service consumer.
  • the service producer may deallocate the NSI or the NSSI from the service consumer, wherein the NSI or the NSSI is terminated or modified.
  • the service producer may send, to the service consumer, a return code indicating that the NSI or the NSSI has been deallocated, wherein the return code depends on whether the NSI or the NSSI is terminated or modified.
  • the service producer may send, to the service consumer, a third return code indicating that the NSI or the NSSI has been deallocated when the NSI or the NSSI is terminated.
  • the service producer may send, to the service consumer, a fourth return code indicating that the NSI or the NSSI has been deallocated when the NSI or the NSSI is modified.
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical or different.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • the service producer may determine that the NSI or the NSSI is not shared between another service consumer and the service consumer.
  • the service producer may terminate the NSI or the network slice subnet instance.
  • the service producer may determine that the NSI or the NSSI is shared between another service consumer and the service consumer.
  • the service producer may modify the NSI or the network slice subnet instance.
  • Figure 5 shows a block diagram of a method for managing NSI and NSSI allocation in a communication system performed by a service consumer.
  • a service consumer may send, to a service producer, a request to allocate a NSI or a NSSI to a service consumer.
  • the service consumer may receive, from the service producer, a return code indicating that a NSI or a NSSI has been allocated to the service consumer, wherein the return code depends on whether the NSI or the NSSI is newly created or already exists.
  • the service consumer may receive, from the service producer, a first return code indicating that the NSI or the NSSI has been allocated when the NSI or the NSSI is newly created.
  • the service consumer may receive, from the service consumer, a second return code indicating that the NSI or the NSSI has been allocated when the NSI or the NSSI already exists.
  • the first return code and the second return code may be different.
  • the first digit of the first return code and the first digit of the second return code may be identical or different.
  • the first digit of the first return code and the first digit of the second return code may be ‘2’ .
  • the first return code may be ‘201’ .
  • the second return code may be ‘211’ .
  • the service consumer may send, to the service producer, a request to deallocate the NSI or the NSSI from the service consumer.
  • the service consumer may send receive, from the service consumer, a return code indicating that the NSI or the NSSI has been deallocated from the service consumer, wherein the return code depends on whether the NSI or the NSSI is terminated or modified.
  • the service consumer may receive, from the service consumer, a third return code indicating that the NSI or the NSSI has been deallocated when the NSI or the NSSI is terminated.
  • the service consumer may receive, from the service consumer, a fourth return code indicating that the NSI or the NSSI has been deallocated when the NSI or the NSSI is modified] .
  • the third return code and the fourth return code may be different.
  • the first digit of the third return code and the first digit of the fourth return code may be identical.
  • the first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
  • the third return code may be ‘204’ .
  • the fourth return code may be ‘212’ .
  • Figure 6 shows a schematic representation of non-volatile memory media 6000 (storing instructions and/or parameters which when executed by a processor allow the processor to perform one or more of the steps of the methods of Figures 4 and 5.
  • some embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof.
  • some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although embodiments are not limited thereto.
  • firmware or software which may be executed by a controller, microprocessor or other computing device, although embodiments are not limited thereto. While various embodiments may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
  • the embodiments may be implemented by computer software stored in a memory and executable by at least one data processor of the involved entities or by hardware, or by a combination of software and hardware. Further in this regard it should be noted that any procedures, e.g., as in Figures 4 and 5, may represent program steps, or interconnected logic circuits, blocks and functions, or a combination of program steps and logic circuits, blocks and functions.
  • the software may be stored on such physical media as memory chips, or memory blocks implemented within the processor, magnetic media such as hard disk or floppy disks, and optical media such as for example DVD and the data variants thereof, CD.
  • the memory may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory.
  • the data processors may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) , application specific integrated circuits (ASIC) , gate level circuits and processors based on multi-core processor architecture, as non-limiting examples.
  • circuitry may be configured to perform one or more of the functions and/or method steps previously described. That circuitry may be provided in the base station and/or in the communications device.
  • circuitry may refer to one or more or all of the following:
  • circuitry also covers an implementation of merely a hardware circuit or processor (or multiple processors) or portion of a hardware circuit or processor and its (or their) accompanying software and/or firmware.
  • circuitry also covers, for example integrated device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The disclosure relates to an apparatus comprising at least one processor and at least one memory including computer code for one or more programs, the at least one memory and the computer code configured, with the at least one processor, to cause the apparatus at least to: receive (400), from a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocate (402) a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and send (404), to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.

Description

APPARATUS, METHOD, AND COMPUTER PROGRAM
Field of the disclosure
The present disclosure relates to an apparatus, a method, and a computer program for managing network slice instance and network slice subnet instance allocation in a communication system.
Background
A communication system can be seen as a facility that enables communication sessions between two or more entities such as communication devices, base stations and/or other nodes by providing carriers between the various entities involved in the communications path.
The communication system may be a wireless communication system. Examples of wireless systems comprise public land mobile networks (PLMN) operating based on radio standards such as those provided by 3GPP, satellite based communication systems and different wireless local networks, for example wireless local area networks (WLAN) . The wireless systems can typically be divided into cells, and are therefore often referred to as cellular systems.
The communication system and associated devices typically operate in accordance with a given standard or specification which sets out what the various entities associated with the system are permitted to do and how that should be achieved. Communication protocols and/or parameters which shall be used for the connection are also typically defined. Examples of standard are the so-called 5G standards.
Summary
According to an aspect there is provided an apparatus comprising means for: receiving, form a service consumer, a request to allocate a network slice instance or a network  slice subnet instance to the service consumer; allocating a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and sending, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The apparatus may comprise means for: sending, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or sending, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The apparatus may comprise means for: determining that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determining that a network slice instance or the network slice subnet instance already  exists and can be shared between another service consumer and the service consumer; and allocating the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
The apparatus may comprise means for: determining that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly creating a network slice instance or a network slice subnet instance; and allocating the network slice instance or the network slice subnet instance that is newly created to the service consumer.
The apparatus may comprise means for: receiving, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocating the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and sending, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
The apparatus may comprise means for: sending, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or sending, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical or different.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
The apparatus may comprise means for: determining that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and terminating the network slice instance or the network slice subnet instance.
The apparatus may comprise means for: determining that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modifying the network slice instance or the network slice subnet instance.
According to an aspect there is provided an apparatus comprising at least one processor and at least one memory including computer code for one or more programs, the at least one memory and the computer code configured, with the at least one processor, to cause the apparatus at least to: receive, form a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocate a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: send, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or send, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: determine that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determine that a network slice instance or the network slice subnet instance already exists and can be shared between another service consumer and the service consumer; and allocate the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: determine that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly create a network slice instance or a network slice subnet instance; and allocate the network slice instance or the network slice subnet instance that is newly created to the service consumer.
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: receive, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocate the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: send, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or send, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical or different.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: determine that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and terminate the network slice instance or the network slice subnet instance.
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: determine that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modify the network slice instance or the network slice subnet instance.
According to an aspect there is provided an apparatus comprising circuitry configured to:receive, form a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocate a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The circuitry may be configured to: send, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been  allocated when the network slice instance or the network slice subnet instance is newly created; or send, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The circuitry may be configured to: determine that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determine that a network slice instance or the network slice subnet instance already exists and can be shared between another service consumer and the service consumer; and allocate the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
The circuitry may be configured to: determine that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly create a network slice instance or a network slice subnet instance; and allocate the network slice instance or the network slice subnet instance that is newly created to the service consumer.
The circuitry may be configured to: receive, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocate the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
The circuitry may be configured to: send, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or send, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical or different.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
The circuitry may be configured to: determine that the network slice instance or the network slice subnet instance is not shared between another service consumer and  the service consumer; and terminate the network slice instance or the network slice subnet instance.
The circuitry may be configured to: determine that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modify the network slice instance or the network slice subnet instance.
According to an aspect there is provided a method comprising: receiving, form a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocating a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and sending, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The method may comprise: sending, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or sending, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The method may comprise: determining that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determining that a network slice instance or the network slice subnet instance already exists and can be shared between another service consumer and the service consumer; and allocating the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
The method may comprise: determining that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly creating a network slice instance or a network slice subnet instance; and allocating the network slice instance or the network slice subnet instance that is newly created to the service consumer.
The method may comprise: receiving, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocating the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and sending, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
The method may comprise: sending, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been  deallocated when the network slice instance or the network slice subnet instance is terminated; or sending, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical or different.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
The method may comprise: determining that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and terminating the network slice instance or the network slice subnet instance.
The method may comprise: determining that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modifying the network slice instance or the network slice subnet instance.
According to an aspect there is provided a computer program comprising computer executable code which when run on at least one processor is configured to: receive, form a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer; allocate a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice  instance or the network slice subnet instance is newly created or already exists; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The computer program may comprise computer executable code which when run on at least one processor is configured to: send, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or send, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The computer program may comprise computer executable code which when run on at least one processor is configured to: determine that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; determine that a network slice instance or the network slice subnet instance already  exists and can be shared between another service consumer and the service consumer; and allocate the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
The computer program may comprise computer executable code which when run on at least one processor is configured to: determine that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer; newly create a network slice instance or a network slice subnet instance; and allocate the network slice instance or the network slice subnet instance that is newly created to the service consumer.
The computer program may comprise computer executable code which when run on at least one processor is configured to: receive, form the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; deallocate the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
The computer program may comprise computer executable code which when run on at least one processor is configured to: send, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or send, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical or different.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
The computer program may comprise computer executable code which when run on at least one processor is configured to: determine that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and terminate the network slice instance or the network slice subnet instance.
The computer program may comprise computer executable code which when run on at least one processor is configured to: determine that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and modify the network slice instance or the network slice subnet instance.
According to an aspect there is provided an apparatus comprising means for: sending, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and receiving, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The apparatus may comprise means for: receiving, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receiving, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The apparatus may comprise means for: sending, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receiving, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
The apparatus may comprise means for: receiving, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receiving, from the service consumer, a fourth return  code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
According to an aspect there is provided an apparatus comprising at least one processor and at least one memory including computer code for one or more programs, the at least one memory and the computer code configured, with the at least one processor, to cause the apparatus at least to: send, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and receive, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: receive, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receive, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet  instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: send, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receive, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
The at least one memory and the computer code may be configured, with the at least one processor, to cause the apparatus at least to: receive, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receive, from the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
According to an aspect there is provided an apparatus comprising circuitry configured to: send, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and receive, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The apparatus may comprise circuitry configured to: receive, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receive, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The apparatus may comprise circuitry configured to: send, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receive, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
The apparatus may comprise circuitry configured to: receive, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receive, from the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
According to an aspect there is provided a method comprising: sending, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and receiving, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The method may comprise: receiving, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receiving, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The method may comprise: sending, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receiving, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
The method may comprise: receiving, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receiving, from the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
According to an aspect there is provided a computer program comprising computer executable code which when run on at least one processor is configured to: send, to a service producer, a request to allocate a network slice instance or a network slice  subnet instance to a service consumer; and receive, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
The computer program may comprise computer executable code which when run on at least one processor is configured to: receive, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or receive, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The computer program may comprise computer executable code which when run on at least one processor is configured to: send, to the service producer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer; and receive, from the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been  deallocated from the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified] .
The computer program may comprise computer executable code which when run on at least one processor is configured to: receive, from the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or receive, from the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
According to an aspect, there is provided a computer readable medium comprising program instructions stored thereon for performing at least one of the above methods.
According to an aspect, there is provided a non-transitory computer readable medium comprising program instructions stored thereon for performing at least one of the above methods.
According to an aspect, there is provided a non-volatile tangible memory medium comprising program instructions stored thereon for performing at least one of the above methods.
In the above, many different aspects have been described. It should be appreciated that further aspects may be provided by the combination of any two or more of the aspects described above.
Various other aspects are also described in the following detailed description and in the attached claims.
List of abbreviations
AF:          Application Function
AMF:         Access and Mobility Management Function
API:         Application Programming Interface
BS:          Base Station
CU:          Centralized Unit
CRUD:        Create Read Update Delete
DL:          Downlink
DU:          Distributed Unit
eMBB:        enhanced Mobile Broadband
gNB:         gNodeB
GSM:         Global System for Mobile communication
GSMA:        Global System for Mobile Communications Association
GST:         Generic network Slice Template
HSS:         Home Subscriber Server
HTTP:        Hyper Text Transfer Protocol
IOC:         Information Object Class
IoT:         Internet of Things
LTE:         Long Term Evolution
MAC:         Medium Access Control
MIoT:       Massive Internet of Things
MS:         Mobile Station
MTC:        Machine Type Communication
NEF:        Network Exposure Function
NF:         Network Function
NR:         New radio
NRF:        Network Repository Function
NSD:        Network Service Descriptor
NSI:        Network Slice Instance
NSSI:       Network Slice Subnet Instance
PDU:        Packet Data Unit
RAM:        Random Access Memory
(R) AN:     (Radio) Access Network
REST:       Representation State Transfer
ROM:        Read Only Memory
SLA:        Service Level Agreement
SMF:        Session Management Function
TN:         Transport Network
TR:         Technical Report
TS:         Technical Specification
UE:         User Equipment
UMTS:       Universal Mobile Telecommunication System
URLLC:      Ultra Reliable Low Latency Communications
3GPP:       3 rd Generation Partnership Project
5G:         5 th Generation
5GC:        5G Core network
5GS:        5G System
Brief Description of the Figures
Embodiments will now be described, by way of example only, with reference to the accompanying Figures in which:
Figure 1 shows a schematic representation of a 5G system;
Figure 2 shows a schematic representation of a control apparatus;
Figure 3 shows a schematic representation of a user equipment;
Figure 4 shows a block diagram of a method for managing network slice instance and network slice subnet instance allocation in a communication system performed by a service producer;
Figure 5 shows a block diagram of a method for managing network slice instance and network slice subnet instance allocation in a communication system performed by a service consumer; and
Figure 6 shows a schematic representation of a non-volatile memory medium storing instructions which when executed by a processor allow a processor to perform one or more of the steps of the methods of Figures 4 and 5.
Detailed Description of the Figures
In the following certain embodiments are explained with reference to mobile communication devices capable of communication via a wireless cellular system and mobile communication systems serving such mobile communication devices. Before explaining in detail the exemplifying embodiments, certain general principles of a wireless communication system, access systems thereof, and mobile communication devices are briefly explained with reference to Figures 1, 2 and 3 to assist in understanding the technology underlying the described examples.
Figure 1 shows a schematic representation of a 5G system (5GS) . The 5GS may comprises a user equipment (UE) , a (radio) access network ( (R) AN) , a 5G core network (5GC) , one or more application functions (AF) and one or more data networks (DN) .
The 5G (R) AN may comprise one or more gNodeB (gNB) distributed unit functions connected to one or more gNodeB (gNB) centralized unit functions.
The 5GC may comprise an access and mobility management function (AMF) , a session management function (SMF) , an authentication server function (AUSF) , a user data management (UDM) , a user plane function (UPF) and/or a network exposure function (NEF) .
Figure 2 illustrates an example of a control apparatus 200 for controlling a function of the (R) AN or the 5GC as illustrated on Figure 1. The control apparatus may comprise at least one random access memory (RAM) 211a, at least on read only memory (ROM) 211b, at least one  processor  212, 213 and an input/output interface 214. The at least one  processor  212, 213 may be coupled to the RAM 211a and the ROM 211b. The at least one  processor  212, 213 may be configured to execute an appropriate software code 215. The software code 215 may for example allow to perform one or more steps to perform one or more of the present aspects. The software code 215 may be stored in the ROM 211b. The control apparatus 200 may be interconnected with another control apparatus 200 controlling another function of the 5G (R) AN or the 5GC. In some embodiments, each function of the (R) AN or the 5GC comprises a control apparatus 200. In alternative embodiments, two or more functions of the (R) AN or the 5GC may share a control apparatus.
Figure 3 illustrates an example of a UE 300, such as the UE illustrated on Figure 1. The UE 300 may be provided by any device capable of sending and receiving radio signals. Non-limiting examples comprise a user equipment, a mobile station (MS) or mobile device such as a mobile phone or what is known as a ’smart phone’ , a computer provided with a wireless interface card or other wireless interface facility (e.g., USB dongle) , a personal data assistant (PDA) or a tablet provided with wireless communication capabilities, a machine-type communications (MTC) device, a Cellular Internet of things (CIoT) device or any combinations of these or the like. The UE 300 may provide, for example, communication of data for carrying communications. The  communications may be one or more of voice, electronic mail (email) , text message, multimedia, data, machine data and so on.
The UE 300 may receive signals over an air or radio interface 307 via appropriate apparatus for receiving and may transmit signals via appropriate apparatus for transmitting radio signals. In Figure 3 transceiver apparatus is designated schematically by block 306. The transceiver apparatus 306 may be provided for example by means of a radio part and associated antenna arrangement. The antenna arrangement may be arranged internally or externally to the mobile device.
The UE 300 may be provided with at least one processor 301, at least one memory ROM 302a, at least one RAM 302b and other possible components 303 for use in software and hardware aided execution of tasks it is designed to perform, including control of access to and communications with access systems and other communication devices. The at least one processor 301 is coupled to the RAM 302b and the ROM 302a. The at least one processor 301 may be configured to execute an appropriate software code 308. The software code 308 may for example allow to perform one or more of the present aspects. The software code 308 may be stored in the ROM 302a.
The processor, storage and other relevant control apparatus can be provided on an appropriate circuit board and/or in chipsets. This feature is denoted by reference 304. The device may optionally have a user interface such as keypad 305, touch sensitive screen or pad, combinations thereof or the like. Optionally one or more of a display, a speaker and a microphone may be provided depending on the type of the device.
3GPP TS 28.531 defines network slice instance (NSI) and network slice subnet instance (NSSI) allocation and deallocation use cases. 3GPP TS 28.531 defines allocateNsi, allocateNssi, deallocateNsi and deallocateNssi operations, procedures and RESTful HTTP-based solution set implementations.
The allocateNsi and allocateNssi operations require the NSI or NSSI to be newly created or already existing and shared (i.e. re-used) in a successful response.
The deallocateNsi and deallocateNssi operations require the NSI or NSSI to be terminated (i.e. deleted) or modified in a successful response.
3GPP TS 28.531 section 5.1.1 network slice instance allocation reads as follows.
Figure PCTCN2022091093-appb-000001
Figure PCTCN2022091093-appb-000002
Figure PCTCN2022091093-appb-000003
Figure PCTCN2022091093-appb-000004
Figure PCTCN2022091093-appb-000005
3GPP TS 28.531 section 5.1.2 network slice subnet instance allocation reads as follows.
Figure PCTCN2022091093-appb-000006
Figure PCTCN2022091093-appb-000007
Figure PCTCN2022091093-appb-000008
Figure PCTCN2022091093-appb-000009
Figure PCTCN2022091093-appb-000010
3GPP TS 28.531 section 5.1.3 network slice instance deallocation reads as follows.
Figure PCTCN2022091093-appb-000011
Figure PCTCN2022091093-appb-000012
Figure PCTCN2022091093-appb-000013
3GPP TS 28.531 section 5.1.4 network slice subnet instance deallocation reads as follows.
Figure PCTCN2022091093-appb-000014
Figure PCTCN2022091093-appb-000015
Figure PCTCN2022091093-appb-000016
The allocateNsi and allocateNssi operations may not be implementable with normal create read update delete (CRUD) operations, as they may not be clean create operations (i.e. a new NSI or NSSI may be created or an already existing NSI or NSSI may be shared) .
In the above the term “clean” may means that for CRUD operations, one operation provides only one successful result. For example, for a C (i.e. create) operation , the successful result may be to create a new resource.
3GPP TS28.541 defines a NetworkSlice and NetworkSliceSubnet information object class (IOC) . The NetworkSlice IOC includes an attribute ServiceProfile. The attribute Service Profile captures a set of requirements for a NSI such as enhanced mobile broadband (eMBB) , massive internet of things (MIoT) or ultra reliable low latency communications (URLLC) . The NetworkSliceSubnet IOC includes an attribute SliceProfile. The attribute SliceProfile captures resource model information describing static parameters and functional component of a NSSI. It may include a slice profile, a network slice subnet type (e.g. RAN eMBB, CN eMBB) , an additional system feature (e.g. multicast, edge computing) , priority, QoS attributes (e.g. bandwidth, latency, number of subscribers and so on) or network service descriptor (NSD) identifier (ID) .
3GPP TS 28.531 section 9 (version 17.3.0) defines an OpenAPI with representation state transfer (REST) implementation of the allocateNsi and allocateNssi operations. Such OpenAPI creates a new ServiceProfile IOC and SliceProfile resource IOC respectively for each successful request. This is not semantically correct as an attribute of an IOC should not be created as an IOC.
RFC2616 clause 6 relates to hypertext transfer protocol HTTP return code.
RFC2616 clause 6.1.1 status code and reason phrase reads as follows.
The Status-Code element is a 3-digit integer result code of the attempt to understand and satisfy the request. These codes are fully defined in section 10. The Reason-Phrase is intended to give a short textual description of the Status-Code. The Status-Code is intended for use by automata and the Reason-Phrase is intended for the human user. The client is not required to examine or display the Reason-Phrase.
The first digit of the Status-Code defines the class of response. The last two digits do not have any categorization role. There are 5 values for the first digit:
- 1xx: Informational -Request received, continuing process
- 2xx: Success -The action was successfully received, understood, and accepted
- 3xx: Redirection -Further action must be taken in order to complete the request
- 4xx: Client Error -The request contains bad syntax or cannot be fulfilled
- 5xx: Server Error -The server failed to fulfill an apparently valid request
The individual values of the numeric status codes defined for HTTP/1.1, and an example set of corresponding Reason-Phrase's, are presented below. The reason phrases listed here are only recommendations --they MAY be replaced by local equivalents without affecting the protocol.
Status-Code =
"100" ; Section 10.1.1: Continue
"101" ; Section 10.1.2: Switching Protocols
"200" ; Section 10.2.1: OK
"201" ; Section 10.2.2: Created
"202" ; Section 10.2.3: Accepted
"203" ; Section 10.2.4: Non-Authoritative Information
"204" ; Section 10.2.5: No Content
"205" ; Section 10.2.6: Reset Content
"206" ; Section 10.2.7: Partial Content
"300" ; Section 10.3.1: Multiple Choices
"301" ; Section 10.3.2: Moved Permanently
"302" ; Section 10.3.3: Found
"303" ; Section 10.3.4: See Other
"304" ; Section 10.3.5: Not Modified
"305" ; Section 10.3.6: Use Proxy
"307" ; Section 10.3.8: Temporary Redirect
"400" ; Section 10.4.1: Bad Request
"401" ; Section 10.4.2: Unauthorized
"402" ; Section 10.4.3: Payment Required
"403" ; Section 10.4.4: Forbidden
"404" ; Section 10.4.5: Not Found
"405" ; Section 10.4.6: Method Not Allowed
"406" ; Section 10.4.7: Not Acceptable
"407" ; Section 10.4.8: Proxy Authentication Required
"408" ; Section 10.4.9: Request Time-out
"409" ; Section 10.4.10: Conflict
"410" ; Section 10.4.11: Gone
"411" ; Section 10.4.12: Length Required
"412" ; Section 10.4.13: Precondition Failed
"413" ; Section 10.4.14: Request Entity Too Large
"414" ; Section 10.4.15: Request-URI Too Large
"415" ; Section 10.4.16: Unsupported Media Type
"416" ; Section 10.4.17: Requested range not satisfiable
"417" ; Section 10.4.18: Expectation Failed
"500" ; Section 10.5.1: Internal Server Error
"501" ; Section 10.5.2: Not Implemented
"502" ; Section 10.5.3: Bad Gateway
"503" ; Section 10.5.4: Service Unavailable
"504" ; Section 10.5.5: Gateway Time-out
"505" ; Section 10.5.6: HTTP Version not supported
extension-code
extension-code = 3DIGIT
Reason-Phrase = *<TEXT, excluding CR, LF>
HTTP status codes are extensible. HTTP applications are not required to understand the meaning of all registered status codes, though such understanding is obviously desirable. However, applications MUST understand the class of any status code, as indicated by the first digit, and treat any unrecognized response as being equivalent to the x00 status code of that class, with the exception that an unrecognized response MUST NOT be cached. For example, if an unrecognized status code of 431 is received by the client, it can safely assume that there was something wrong with its request and treat the response as if it had received a 400 status code. In such cases, user agents SHOULD present to the user the entity returned with the response, since that entity is likely to include human-readable information which will explain the unusual status.
RFC2616 clause 10.2 successful 2xx reads as follows.
This class of status code indicates that the client's request was successfully received, understood, and accepted.
One or more aspects of this disclosure propose enhancements to the allocateNsi, allocateNssi, deallocateNsi and deallocateNssi operations for OpenAPI REST implementation.
One or more aspects of this disclosure propose enhancements to the response flow and response message.
One or more aspects of this disclosure to separate the successful response flow into different types of responses via different return codes.
For the allocateNsi and allocateNssi operations a first type of response may be used for newly created NSI or NSSI and a second type of response may be used for an already existing NSI or NSSI (i.e. no NSI or NSSI is newly created) .
Different HTTP successful return code may be used to distinguish the two types of responses. Since the two types of responses are successful responses, the ‘2xx’ return code may be used. A first return code ‘201’ may be used in the first type of response to comply with RFC2616 clause 6 and the POST semantics. A second return code ‘211’ may be used in the second type of response to comply with RFC2616 clause 6. The first return code and/or the second return code may comprise an extension (e.g. the second return code may be ‘211.1’ ) .
It will be understood that other first return code and second return code with or without extension may be used as long as the first code and second code are not conflicting.
No ServiceProfile IOC or SliceProfile ICO may be created.
For the deallocateNsi and deallocateNssi operations a third type of response may be used for a terminated NSI or NSSI and a fourth type of response may be used for a modified NSI or NSSI (i.e. without termination) or a NSI or NSSI that is neither terminated or modified (i.e. do nothing) .
Different HTTP successful return code may be used to distinguish the two types of responses. Since the two types of responses are successful responses, the ‘2xx’ return code may be used. A third return code ‘204’ may be used in the third type of response to comply with RFC2616 clause 6 and the DELETE semantics. A fourth return code ‘212’ may be used in the fourth type of response to comply with RFC2616 clause 6. The third return code and/or the fourth return code may comprise an extension (e.g. the second return code may be ‘212.1’ )
It will be understood that other third return code and fourth return code may be used with or without extension as long as the third return code and fourth return code are not conflicting.
The return codes and semantics may be updated for clause 9.1.2, 9.1.3, 9.2.1.2, 9.2.1.3 in 3GPP TS 28.531 as follows.
9.1.1.2 Operation allocateNsi
This operation is to allocate a network slice instance provided by the service provider, the network slice instance may be new or existing.
Table 9.1.2-1: Mapping of IS operation input parameters to SS equivalents (HTTP POST)
Figure PCTCN2022091093-appb-000017
Table 9.1.2-2: Mapping of IS operation output parameters to SS equivalents (HTTP POST)
Figure PCTCN2022091093-appb-000018
The message flow for allocation is as follows:
1. The MnS consumer sends a HTTP POST request to the MnS producer.
- The message body shall carry the complete representation of the resource to be created. The resource identifier shall be absent or carry null semantics.
2. The MnS producer sends a HTTP POST response to the MnS consumer.
- On success, "201 Created" shall be returned when a new NetworkSlice instance resource is created. The message body shall contain the complete representation of the ServiceProfile and networkSliceDN identifying the NetworkSlice MOI created.
"211 Shared" shall be returned when an existing NetworkSlice instance is used.
And the message body shall contain the complete representation of the ServiceProfile and networkSliceDN identifying the NetworkSlice MOI shared.
- On failure, an appropriate error code shall be returned. The response message body may provide additional error information.
9.1.1.3 Operation deallocateNsi
This operation deallocate a service profile in an NSI. The provider may terminate the requested NSI or modify the requested NSI without termination to satisfy the request.
Table 9.1.1.3-1: Mapping of IS operation input parameters to SS equivalents (HTTP DELETE)
Figure PCTCN2022091093-appb-000019
Table 9.1.1.3-2: Mapping of IS operation output parameters to SS equivalents (HTTP DELETE)
Figure PCTCN2022091093-appb-000020
The message flow for deallocation is as follows:
1. The MnS consumer sends a HTTP DELETE request to the MnS producer.
- The message body shall contain the networkSliceDN identifying the NetworkSlice MOI.
2. The MnS producer sends a HTTP DELETE response to the MnS consumer.
- On success of terminating the NetworkSlice Instance, "204 No content" shall be returned.
- On success of modification of the NetworkSlice Instance or No changes made to the Network Slice Instance, "212 Resource Not Deleted" shall be returned.
- On failure, an appropriate error code shall be returned. The response message body may provide additional error information.
9.2.1.2 Operation allocateNssi
This operation is to allocate a network slice instance provided by the service provider, the network slice subnet instance may be new or existing.
Table 9.2.1.2-1: Mapping of IS operation input parameters to SS equivalents (HTTP POST)
Figure PCTCN2022091093-appb-000021
Figure PCTCN2022091093-appb-000022
Table 9.2.1.2-2: Mapping of IS operation output parameters to SS equivalents (HTTP POST)
Figure PCTCN2022091093-appb-000023
The message flow for allocation is as follows:
1. The MnS consumer sends a HTTP POST request to the MnS producer.
- The message body shall carry the complete representation of the resource to be created. The resource identifier shall be absent or carry null semantics.
2. The MnS producer sends a HTTP POST response to the MnS consumer.
- On success, "201 Created" shall be returned when a new NetworkSliceSubnet instance resource is created. The message body shall contain the complete representation of the SliceProfile and networkSliceSubnetDN identifying the NetworkSliceSubnet MOI created.
"211 Shared" shall be returned when an existing NetworkSliceSubnet instance is used. And the message body shall contain the complete representation of the  SliceProfile and networkSliceSubnetDN identifying the NetworkSliceSubnet MOI shared.
- On failure, an appropriate error code shall be returned. The response message body may provide additional error information.
9.2.1.3 Operation deallocateNssi
This operation deallocate a slice profile in an NSSI. The provider may terminate the requested NSSI or modify the requested NSSI without termination to satisfy the request.
Table 9.2.1.3-1: Mapping of IS operation input parameters to SS equivalents (HTTP DELETE)
Figure PCTCN2022091093-appb-000024
Table 9.2.1.3-2: Mapping of IS operation output parameters to SS equivalents (HTTP DELETE)
Figure PCTCN2022091093-appb-000025
The message flow for deallocation is as follows:
1. The MnS consumer sends a HTTP DELETE request to the MnS producer.
- The message body shall contain the networkSliceSubnetDN identifying the NetworkSliceSubnet MOI.
2. The MnS producer sends a HTTP DELETE response to the MnS consumer.
- On success of terminating the NetworkSliceSubnet Instance, "204 No content" shall be returned.
- On success of modification of the NetworkSliceSubnet Instance, "212 Resource Not Deleted" shall be returned.
- On failure, an appropriate error code shall be returned. The response message body may provide additional error information.
Figure 4 shows a block diagram of a method for managing NSI and NSSI allocation in a communication system performed by a service producer.
In step 400, a service producer may receive, form a service consumer, a request to allocate a NSI or a NSSI to the service consumer.
In step 402, the service producer may allocate a NSI or a NSSI to the service consumer, wherein the NSI or the NSSI is newly created or already exists.
In step 404, the service producer may send, to the service consumer, a return code indicating that the NSI or the NSSI has been allocated, wherein the return code depends on whether the NSI or the NSSI is newly created or already exists.
The service producer may send, to the service consumer, a first return code indicating that the NSI or the NSSI has been allocated when the NSI or the NSSI is newly created.
The service producer may send, to the service consumer, a second return code indicating that the NSI or the NSSI has been allocated when the NSI or the NSSI already exists.
The return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The service producer may determine that the request comprises information indicating that the NSI or the NSSI can be shared between another service consumer and the service consumer. The service producer may determine that a NSI or the NSSI already exists and can be shared between another service consumer and the service consumer. The service producer may allocate the NSI or the NSSI that already exists and can be shared between another service consumer and the service consumer to the service consumer.
The service producer may determine that the request does not comprise information indicating that the NSI or the NSSI can be shared between another service consumer and the service consumer. The service producer may newly create a NSI or a network slice subnet instance. The service producer may allocate the NSI or the NSSI that is newly created to the service consumer.
The service producer may receive, form the service consumer, a request to deallocate the NSI or the NSSI from the service consumer. The service producer may deallocate the NSI or the NSSI from the service consumer, wherein the NSI or the NSSI is terminated or modified. The service producer may send, to the service consumer, a  return code indicating that the NSI or the NSSI has been deallocated, wherein the return code depends on whether the NSI or the NSSI is terminated or modified.
The service producer may send, to the service consumer, a third return code indicating that the NSI or the NSSI has been deallocated when the NSI or the NSSI is terminated.
The service producer may send, to the service consumer, a fourth return code indicating that the NSI or the NSSI has been deallocated when the NSI or the NSSI is modified.
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical or different.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
The service producer may determine that the NSI or the NSSI is not shared between another service consumer and the service consumer. The service producer may terminate the NSI or the network slice subnet instance.
The service producer may determine that the NSI or the NSSI is shared between another service consumer and the service consumer. The service producer may modify the NSI or the network slice subnet instance.
Figure 5 shows a block diagram of a method for managing NSI and NSSI allocation in a communication system performed by a service consumer.
In step 500, a service consumer may send, to a service producer, a request to allocate a NSI or a NSSI to a service consumer.
In step 502, the service consumer may receive, from the service producer, a return code indicating that a NSI or a NSSI has been allocated to the service consumer, wherein the return code depends on whether the NSI or the NSSI is newly created or already exists.
The service consumer may receive, from the service producer, a first return code indicating that the NSI or the NSSI has been allocated when the NSI or the NSSI is newly created. The service consumer may receive, from the service consumer, a second return code indicating that the NSI or the NSSI has been allocated when the NSI or the NSSI already exists.
The first return code and the second return code may be different.
The first digit of the first return code and the first digit of the second return code may be identical or different.
The first digit of the first return code and the first digit of the second return code may be ‘2’ .
The first return code may be ‘201’ .
The second return code may be ‘211’ .
The service consumer may send, to the service producer, a request to deallocate the NSI or the NSSI from the service consumer. The service consumer may send receive, from the service consumer, a return code indicating that the NSI or the NSSI has been deallocated from the service consumer, wherein the return code depends on whether the NSI or the NSSI is terminated or modified.
The service consumer may receive, from the service consumer, a third return code indicating that the NSI or the NSSI has been deallocated when the NSI or the NSSI is terminated. The service consumer may receive, from the service consumer, a fourth return code indicating that the NSI or the NSSI has been deallocated when the NSI or the NSSI is modified] .
The third return code and the fourth return code may be different.
The first digit of the third return code and the first digit of the fourth return code may be identical.
The first digit of the third return code and the first digit of the fourth return code may be ‘2’ .
The third return code may be ‘204’ .
The fourth return code may be ‘212’ .
Figure 6 shows a schematic representation of non-volatile memory media 6000 (storing instructions and/or parameters which when executed by a processor allow the processor to perform one or more of the steps of the methods of Figures 4 and 5.
It is noted that while the above describes example embodiments, there are several variations and modifications which may be made to the disclosed solution without departing from the scope of the present invention.
It will be understood that although the above concepts have been discussed in the context of a 5GS, one or more of these concepts may be applied to other cellular systems.
The embodiments may thus vary within the scope of the attached claims. In general, some embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although embodiments are not limited thereto. While various embodiments may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
The embodiments may be implemented by computer software stored in a memory and executable by at least one data processor of the involved entities or by hardware, or by a combination of software and hardware. Further in this regard it should be noted that any procedures, e.g., as in Figures 4 and 5, may represent program steps, or interconnected logic circuits, blocks and functions, or a combination of program steps and logic circuits, blocks and functions. The software may be stored on such physical media as memory chips, or memory blocks implemented within the processor, magnetic media such as hard disk or floppy disks, and optical media such as for example DVD and the data variants thereof, CD.
The memory may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The data processors may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) , application specific integrated circuits (ASIC) , gate level circuits and processors based on multi-core processor architecture, as non-limiting examples.
Alternatively or additionally some embodiments may be implemented using circuitry. The circuitry may be configured to perform one or more of the functions and/or method steps previously described. That circuitry may be provided in the base station and/or in the communications device.
As used in this application, the term “circuitry” may refer to one or more or all of the following:
(a) hardware-only circuit implementations (such as implementations in only analogue and/or digital circuitry) ;
(b) combinations of hardware circuits and software, such as:
(i) a combination of analogue and/or digital hardware circuit (s) with software/firmware and
(ii) any portions of hardware processor (s) with software (including digital signal processor (s) ) , software, and memory (ies) that work together to cause an apparatus, such as the communications device or base station to perform the various functions previously described; and
(c) hardware circuit (s) and or processor (s) , such as a microprocessor (s) or a portion of a microprocessor (s) , that requires software (e.g., firmware) for operation, but the software may not be present when it is not needed for operation.
This definition of circuitry applies to all uses of this term in this application, including in any claims. As a further example, as used in this application, the term circuitry also covers an implementation of merely a hardware circuit or processor (or multiple processors) or portion of a hardware circuit or processor and its (or their) accompanying software and/or firmware. The term circuitry also covers, for example integrated device.
The foregoing description has provided by way of exemplary and non-limiting examples a full and informative description of some embodiments However, various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the  accompanying drawings and the appended claims. However, all such and similar modifications of the teachings will still fall within the scope as defined in the appended claims.

Claims (19)

  1. An apparatus comprising at least one processor and at least one memory including computer code for one or more programs, the at least one memory and the computer code configured, with the at least one processor, to cause the apparatus at least to:
    receive, from a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer;
    allocate a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and
    send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  2. The apparatus of claim 1, wherein the at least one memory and the computer code are configured, with the at least one processor, to cause the apparatus at least to:
    send, to the service consumer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or
    send, to the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  3. The apparatus of claim 2, wherein the first return code and the second return code are different.
  4. The apparatus of claim 3, wherein the first digit of the first return code and the first digit of the second return code is identical or different.
  5. The apparatus of any of claims 1 to 4, wherein the at least one memory and the computer code are configured, with the at least one processor, to cause the apparatus at least to:
    determine that the request comprises information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer;
    determine that a network slice instance or the network slice subnet instance already exists and can be shared between another service consumer and the service consumer; and
    allocate the network slice instance or the network slice subnet instance that already exists and can be shared between another service consumer and the service consumer to the service consumer.
  6. The apparatus of any of claims 1 to 4, wherein the at least one memory and the computer code are configured, with the at least one processor, to cause the apparatus at least to:
    determine that the request does not comprise information indicating that the network slice instance or the network slice subnet instance can be shared between another service consumer and the service consumer;
    newly create a network slice instance or a network slice subnet instance; and
    allocate the network slice instance or the network slice subnet instance that is newly created to the service consumer.
  7. The apparatus of any of claims 1 to 6, wherein the at least one memory and the computer code are configured, with the at least one processor, to cause the apparatus at least to:
    receive, from the service consumer, a request to deallocate the network slice instance or the network slice subnet instance from the service consumer;
    deallocate the network slice instance or the network slice subnet instance from the service consumer, wherein the network slice instance or the network slice subnet instance is terminated or modified; and
    send, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been deallocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is terminated or modified.
  8. The apparatus of claim 7, wherein the at least one memory and the computer code are configured, with the at least one processor, to cause the apparatus at least to:
    send, to the service consumer, a third return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is terminated; or
    send, to the service consumer, a fourth return code indicating that the network slice instance or the network slice subnet instance has been deallocated when the network slice instance or the network slice subnet instance is modified.
  9. The apparatus of claim 8, wherein the third return code and the fourth return code are different.
  10. The apparatus of claim 9, wherein the first digit of the third return code and the first digit of the fourth return code is identical or different.
  11. The apparatus of any of claims 7 to 10, wherein the at least one memory and the computer code are configured, with the at least one processor, to cause the apparatus at least to:
    determine that the network slice instance or the network slice subnet instance is not shared between another service consumer and the service consumer; and
    terminate the network slice instance or the network slice subnet instance.
  12. The apparatus of any of claims 7 to 10, wherein the at least one memory and the computer code are configured, with the at least one processor, to cause the apparatus at least to:
    determine that the network slice instance or the network slice subnet instance is shared between another service consumer and the service consumer; and
    modify the network slice instance or the network slice subnet instance.
  13. An apparatus comprising at least one processor and at least one memory including computer code for one or more programs, the at least one memory and the computer code configured, with the at least one processor, to cause the apparatus at least to:
    send, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and
    receive, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  14. The apparatus of claim 13, wherein the at least one memory and the computer code are configured, with the at least one processor, to cause the apparatus at least to:
    receive, from the service producer, a first return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance is newly created; or
    receive, from the service consumer, a second return code indicating that the network slice instance or the network slice subnet instance has been allocated when the network slice instance or the network slice subnet instance already exists.
  15. The apparatus of claim 14, wherein the first return code and the second return code are different.
  16. The apparatus of claim 15, wherein the first digit of the first return code and the first digit of the second return code is identical or different.
  17. A method comprising:
    receiving, from a service consumer, a request to allocate a network slice instance or a network slice subnet instance to the service consumer;
    allocating a network slice instance or a network slice subnet instance to the service consumer, wherein the network slice instance or the network slice subnet instance is newly created or already exists; and
    sending, to the service consumer, a return code indicating that the network slice instance or the network slice subnet instance has been allocated, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  18. A method comprising:
    sending, to a service producer, a request to allocate a network slice instance or a network slice subnet instance to a service consumer; and
    receiving, from the service producer, a return code indicating that a network slice instance or a network slice subnet instance has been allocated to the service consumer, wherein the return code depends on whether the network slice instance or the network slice subnet instance is newly created or already exists.
  19. A computer program comprising computer executable instructions which when run on one or more processors perform the steps of the method of claim 17 or claim 18.
PCT/CN2022/091093 2022-05-06 2022-05-06 Apparatus, method, and computer program WO2023212891A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/091093 WO2023212891A1 (en) 2022-05-06 2022-05-06 Apparatus, method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/091093 WO2023212891A1 (en) 2022-05-06 2022-05-06 Apparatus, method, and computer program

Publications (1)

Publication Number Publication Date
WO2023212891A1 true WO2023212891A1 (en) 2023-11-09

Family

ID=88646090

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/091093 WO2023212891A1 (en) 2022-05-06 2022-05-06 Apparatus, method, and computer program

Country Status (1)

Country Link
WO (1) WO2023212891A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180316564A1 (en) * 2017-04-28 2018-11-01 Huawei Technologies Co., Ltd. Service provision for offering network slices to a customer
US20200178122A1 (en) * 2017-08-11 2020-06-04 Huawei Technologies Co., Ltd. Network slice deployment method and apparatus
US20210160131A1 (en) * 2018-06-15 2021-05-27 Telefonaktiebolaget Lm Ericsson (Publ) Configuring a Network Slice
WO2021174439A1 (en) * 2020-03-04 2021-09-10 Nokia Shanghai Bell Co., Ltd. Allocation resource of network slice

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180316564A1 (en) * 2017-04-28 2018-11-01 Huawei Technologies Co., Ltd. Service provision for offering network slices to a customer
US20200178122A1 (en) * 2017-08-11 2020-06-04 Huawei Technologies Co., Ltd. Network slice deployment method and apparatus
US20210160131A1 (en) * 2018-06-15 2021-05-27 Telefonaktiebolaget Lm Ericsson (Publ) Configuring a Network Slice
WO2021174439A1 (en) * 2020-03-04 2021-09-10 Nokia Shanghai Bell Co., Ltd. Allocation resource of network slice

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
S5: "Clarify misleading information in network slicing use cases", 3GPP DRAFT; S5-213123, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, vol. SA WG5, no. electronic meeting, online; 20210510 - 20210519, 30 April 2021 (2021-04-30), Mobile Competence Centre ; 650, route des Lucioles ; F-06921 Sophia-Antipolis Cedex ; France , XP051998800 *

Similar Documents

Publication Publication Date Title
US20220256439A1 (en) Method and apparatus for enforcement of maximum number of user equipments per network slice in a communication system
EP4142218A1 (en) Slice access method, device and system
US20220248314A1 (en) Method and apparatus for enforcement of maximum number of protocol data unit sessions per network slice in a communication system
EP3923671A1 (en) Session establishment method and device
EP3984193A1 (en) Secure access control in communication system
US20230098362A1 (en) Background Data Transfer Policy Formulation Method, Apparatus, and System
US20230127814A1 (en) Method and apparatus for manually selecting a network
WO2021129803A1 (en) Information processing method and communication apparatus
US20230035572A1 (en) Scope parameter for binding indication
EP4179792A2 (en) Operator control of user equipment behavior in registering and deregistering with network slices and establishing and releasing pdu sessions in a communication system
WO2023212891A1 (en) Apparatus, method, and computer program
CN114691734B (en) Cache management and control method and device, computer readable medium and electronic equipment
US8953636B2 (en) End-to-end feature support signaling
US20220248208A1 (en) Apparatus, method, and computer program for updating user subscription profiles
CA2739027A1 (en) Method and system for prevention of applications from initiating data connection establishment
US20220141763A1 (en) Managing mode of access to a compatible set of network slices
US11375401B2 (en) Network service device, session management device and operation methods thereof
WO2019149078A1 (en) Session management method, apparatus and system
US20230179989A1 (en) Appararus, method, and computer program
US20230052658A1 (en) Apparatus, method, and computer program
US20240205664A1 (en) Redirection of traffic instance identification in a 5g sa core network
US20240023012A1 (en) Communication apparatus, terminal device, communication system, and communication method
WO2024079068A1 (en) Apparatus, method, and computer program
US12041135B2 (en) Session establishment method and apparatus
US20240147505A1 (en) Apparatus, method, and computer program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22940586

Country of ref document: EP

Kind code of ref document: A1