Communication method based on core network decentralized deployment and related device and system

By adopting a decentralized core network deployment architecture in the 5G mobile communication system, the control plane network elements are multi-instantiated and distributed, solving the network stability and reliability issues caused by the centralization of control plane network elements, and achieving high availability and scalability performance improvements.

CN120692580APending Publication Date: 2025-09-23TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410328327.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-03-20
Publication Date
2025-09-23

AI Technical Summary

Technical Problem

In existing 5G mobile communication systems, the centralized deployment of control plane network elements leads to low network stability and reliability. When a server fails, the entire mobile network is affected.

Method used

Adopting a core network decentralized deployment architecture, the control plane network elements are multi-instantiated and distributed, data is stored in a distributed database, data is shared between instances, and signaling packet processing is achieved through load balancing and communication proxy.

Benefits of technology

It improves the stability and reliability of mobile networks, can cope with abnormal situations of control plane network element instances, and achieve high availability and scalability performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120692580A_ABST
    Figure CN120692580A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a communication method based on core network decentralized deployment and a related device and system. Wherein the core network comprises a control plane network element, the same control plane network element starts a plurality of instances, and the plurality of instances are deployed in a distributed manner, and the method comprises the following steps: receiving a signaling packet to be processed by the control plane network element; forwarding the signaling packet to a target instance of the control plane network element, and writing related context data in a distributed database after the target instance completes the processing of the signaling packet; wherein the target instance is one of a plurality of instances corresponding to the control plane network element, and the plurality of instances corresponding to the control plane network element can share data stored in the distributed database. The stability of the mobile network can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a communication method and related devices and systems based on decentralized deployment of a core network. Background Art

[0002] In the fifth generation mobile communication system (5G) service architecture, the control plane network elements are decomposed into multiple independent network services, such as access and mobility management function (AMF), policy control function (PCF), session management function (SMF), unified data management function (UDM), network slice selection function (NSSF), network slice selection authentication and authorization function (NSSAAF), authentication server function (AUSF), etc.

[0003] In existing technical implementations, each network service of a control plane network element can be launched as a single process on the same server or on different servers. A server failure can affect the entire mobile network. Therefore, improving the stability of mobile networks is a technical problem that needs to be addressed by those skilled in the art. Summary of the Invention

[0004] To solve the above technical problems, the embodiments of the present application respectively provide a communication method and device, a system, an electronic device, a computer-readable storage medium and a computer program product based on decentralized deployment of the core network.

[0005] One aspect of an embodiment of the present application provides a communication method based on decentralized deployment of a core network, wherein the core network includes a control plane network element, and the same control plane network element starts multiple instances, and the multiple instances are distributedly deployed. The method includes: receiving a signaling packet to be processed by the control plane network element; sending the signaling packet to a target instance of the control plane network element, so that the target instance processes the signaling packet, and after the processing is completed, writes relevant context data in a distributed database; wherein the target instance is one of the multiple instances corresponding to the control plane network element, and the multiple instances corresponding to the control plane network element can share data stored in the distributed database.

[0006] Another aspect of an embodiment of the present application provides a communication device based on a decentralized deployment of a core network, wherein the core network includes a control plane network element, and the same control plane network element starts multiple instances, and the multiple instances are distributedly deployed. The device includes: a receiving module, configured to receive a signaling packet to be processed by the control plane network element; a processing module, configured to send the signaling packet to a target instance of the control plane network element, so that the target instance processes the signaling packet and writes relevant context data in a distributed database after the processing is completed; wherein the target instance is one of the multiple instances corresponding to the control plane network element, and the multiple instances corresponding to the control plane network element can share the data stored in the distributed database.

[0007] Another aspect of an embodiment of the present application provides a communication system based on a decentralized deployment of a core network, the system comprising: a core network, including a control plane network element, wherein the same control plane network element starts multiple instances, and the multiple instances are distributedly deployed; a distributed database, wherein multiple instances corresponding to the same control plane network element can share data stored in the distributed database; wherein, in the core network, after receiving a signaling packet to be processed by the control plane network element, the signaling packet is sent to a target instance of the control plane network element, so that the target instance processes the signaling packet, and after processing is completed, writes relevant context data into the distributed database, and the target instance is one of the multiple instances corresponding to the control plane network element.

[0008] Another aspect of an embodiment of the present application provides an electronic device, comprising: one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the electronic device implements the communication method based on decentralized deployment of the core network as described above.

[0009] Another aspect of an embodiment of the present application provides a computer-readable storage medium having computer-readable instructions stored thereon. When the computer-readable instructions are executed by a processor of a computer, the computer executes the communication method based on decentralized deployment of the core network as described above.

[0010] Another aspect of an embodiment of the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the communication method based on decentralized deployment of the core network as described above.

[0011] In the technical solution provided in the embodiments of the present application, the control plane network element in the core network is deployed in a multi-instance distributed manner, and the multiple instances of the control plane network element do not save any state information or context-related data, but save the data in a distributed database, so that multiple instances of the same control plane network element can share the data stored in the distributed database. In this architecture based on decentralized deployment of the core network, when a signaling packet to be processed by the control plane network element is received, an instance is selected from the multiple instances of the control plane network element as the target instance to process the signaling packet. Therefore, the present application can deal with abnormal situations in network equipment deployed with one or more instances by setting multiple instances of the control plane network element, thereby improving the stability of the mobile network.

[0012] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] Figure 1 is a schematic diagram of a 5G network architecture shown in an exemplary embodiment of the present application;

[0014] Figure 2 1 is a schematic diagram of the architecture of a communication system based on a decentralized deployment of a core network, shown in an exemplary embodiment of the present application;

[0015] Figure 3 This is a flowchart of a communication method based on decentralized deployment of a core network, shown in an exemplary embodiment of the present application;

[0016] Figure 4 is a flowchart of a communication method based on decentralized deployment of a core network, shown in another exemplary embodiment of the present application;

[0017] Figure 5 This is an exemplary communication interaction flow chart, which illustrates the user's online and offline processes;

[0018] Figure 6 is another exemplary communication interaction flow chart illustrating a process of processing a UE context by an instance of a control plane network element;

[0019] Figure 7 is another exemplary communication interaction flow chart, which illustrates the process of distributed timers being processed by different AMF instances when the distributed timers have not timed out;

[0020] Figure 8 This is another exemplary communication interaction flow chart, which illustrates the process of distributed timers being handled by different AMF instances when an AMF instance is abnormal and a distributed timer times out;

[0021] Figure 9 This is a block diagram of a communication device based on a decentralized deployment of a core network, shown in an exemplary embodiment of the present application;

[0022] Figure 10 A schematic diagram of the structure of a computer system suitable for implementing an electronic device according to an embodiment of the present application is shown. DETAILED DESCRIPTION

[0023] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. When the following description refers to the drawings, identical numerals in different figures represent identical or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.

[0024] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically separate entities. That is, these functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.

[0025] The flowcharts shown in the accompanying drawings are for illustrative purposes only and do not necessarily include all contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps may be decomposed, while others may be combined or partially combined. Therefore, the actual execution order may vary depending on the actual situation.

[0026] In this application, "plurality" refers to two or more. "And / or" describes the relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can mean: A exists alone, A and B exist simultaneously, or B exists alone. The character " / " generally indicates that the related objects are in an "or" relationship.

[0027] The terms "first," "second," "third," and "fourth," etc., in the specification and claims of this application and the accompanying drawings are used to distinguish different objects, not to describe a specific order. The terms "including," "having," and any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or apparatus comprising a series of steps or elements is not limited to the listed steps or elements, but may optionally include steps or elements not listed, or may optionally include other steps or elements inherent to the process, method, product, or apparatus.

[0028] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program that has a predetermined function and works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as processing circuits or memories) or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be part of an overall module or unit that includes the function of the module or unit.

[0029] First see Figure 1 , Figure 1 It is a schematic diagram of a 5G network architecture shown in an exemplary embodiment of the present application.

[0030] like Figure 1 As shown in the figure, the 5G mobile communication network includes functional entities such as user equipment (UE), access network (Radio) Access Network (R) AN), user plane management function (UPF), application function management (AF), AMF, SMF, PCF, UDM, NSSF, AUSF, and NSSAAF.

[0031] The 5G core network is primarily composed of user-plane network elements and control-plane network elements. User-plane network elements are primarily responsible for transmitting and processing user data flow protocols, while control-plane network elements are primarily responsible for transmitting and processing system coordination signaling protocols. Examples of control-plane network elements include AMF, SMF, PCF, UDM, NSSF, AUSF, and NSSAAF. Examples of user-plane network elements include UPF.

[0032] In the 5G core network, the control plane network elements are decomposed into multiple independent network services. It is understandable that network elements such as AMF, SMF, PCF, UDM, NSSF, AUSF, and NSSAAF are independent network services. For example, AMF is mainly responsible for implementing UE access and mobility management services, while SMF is mainly responsible for implementing user plane session management services.

[0033] In the prior art, each network service of a control plane network element can be launched as a single process on the same server or on different servers. For example, taking the AMF network element as an example, the AMF process can be implemented on the same server or on different servers. For example, the related interface components and logic components can be deployed independently on different servers. If a server fails, the entire mobile network will be affected.

[0034] Therefore, in order to improve the stability and reliability of the mobile network, an embodiment of the present application proposes a core network decentralized deployment architecture, which is a distributed deployment of multiple instances of the same control plane network element in the core network, and multiple instances of the same control plane network element do not save any state information or context-related data, but save the data in a distributed database, so that multiple instances of the same control plane network element can share the data stored in the distributed database. Under this architecture, when a signaling packet to be processed by the control plane network element is obtained, an instance is selected from the multiple instances of the control plane network element as the target instance to process the signaling packet. This can cope with abnormal situations in the server where the control plane network element is deployed, thereby improving the stability and reliability of the mobile network.

[0035] Please continue to see Figure 2 , Figure 2 This is a schematic diagram of the architecture of a communication system based on decentralized deployment of a core network, as shown in an exemplary embodiment of the present application. Figure 2 It shows that the control plane network elements in the core network include AMF network elements and SMF network elements, which does not mean that the control plane network elements in the core network only include AMF network elements and SMF network elements. Other control plane network elements do not communicate directly with the access network, so they are in Figure 2 It is not shown, but it should be understood that Figure 2 The deployment of the control plane network elements not shown is similar to that of the AMF network elements and SMF network elements.

[0036] Each control plane network element in the core network starts multiple instances, and these multiple instances are distributed. The distributed deployment of multiple instances of the control plane network element can be understood as multiple instances running on different containers, container orchestration units (pods), virtual machines (VMs) or servers. For example, Figure 2 It shows that there are three instances corresponding to the AMF network element, namely AMF instance 1, AMF instance 2, and AMF instance 3. It also shows that there are three instances corresponding to the SMF network element, namely SMF instance 1, SMF instance 2, and SMF instance 3.

[0037] The distributed deployment of multiple instances of the control plane network element can be achieved based on the external Internet Protocol (IP) address of the control plane network element and the actual IP address of each instance. Specifically, the signaling packets to be processed by the control plane network element are received through the external IP, and the signaling packets are transmitted to the instance for processing through the actual IP of a certain instance. For example Figure 2 As shown, UE1 transmits the signaling packet to the AMF network element through the external IP of the AMF network element, and then transmits the signaling packet to AMF instance 1 according to the actual IP of AMF instance 1, so that AMF instance 1 processes the received signaling packet.

[0038] The transmission of signaling packets from the external IP of the control plane network element to the actual IP of the specific instance can be achieved through a preset load balancing (LB) algorithm, or through a preset network service, such as the service in Kubemetes (a container cluster management system based on container technology), or through a preset communication agent and message queue, which is not restricted here.

[0039] When using a preset combination of a communication agent and a message queue, the communication agent receives the signaling packet and sends it to the message queue. The instance of the control plane network element consumes the message queue to transmit the signaling packet from the message queue to the specific instance.

[0040] In the case where the control plane network element is an AMF network element, the preset communication agent may be a Stream Control Transmission Protocol (SCTP) agent. In the case where the control plane network element is an SMF network element, the preset communication agent may be a User Datagram Protocol (UDP) agent. In the case where the control plane network element is specifically other service network elements, the preset communication agent may be set to a corresponding network agent according to the network protocol used by the service network element, such as a Transmission Control Protocol (TCP) agent. It can also be understood that for different control plane network elements, the type of preset communication agent may be different, and its type corresponds to its own related network protocol.

[0041] And as Figure 2As shown, embodiments of the present application also propose a distributed database / lock / timer. It is understood that the distributed database / lock / timer refers to a distributed system that includes multiple distributed nodes. The distributed system can be implemented using a remote dictionary server (Remote Dictionary Server, Redis) or other distributed storage solutions.

[0042] The types of distributed nodes include distributed storage nodes, distributed storage nodes and distributed timer nodes. It should be understood that in some embodiments, each distributed node has only one node type, for example Figure 2 The illustrated distributed storage nodes, distributed lock nodes, and distributed timer nodes are all different nodes; in other embodiments, the same distributed node may have one or more node types. For example, a distributed node may serve as both a distributed storage node and a distributed lock node, and another distributed node may serve as both a distributed storage node, a distributed lock node, and a distributed timer node. This embodiment does not limit the types of distributed nodes.

[0043] A distributed database is understood to be composed of multiple distributed storage nodes. Multiple instances of the same control plane network element can share data stored in the distributed database. A distributed lock is understood to be composed of multiple distributed lock nodes. Among the multiple instances of the same control plane network element, only one instance can use the distributed lock to lock the context data of the user terminal in the distributed database at the same time. That is, once an instance uses the distributed lock to lock the context data of the user terminal in the distributed database, other instances of the same control plane network element cannot obtain the context data of the user terminal from the distributed database. A distributed timer is understood to be composed of multiple distributed timer nodes. A distributed timer can be established by an instance of the control plane network element and can be deleted or triggered by the same instance or other instances of the same control plane network element. After the distributed timer is triggered, it will perform operations related to timeout processing. Therefore, the distributed timer can also be regarded as a timer task, which will trigger task execution once it times out.

[0044] The UE accesses the core network through the base station, for example Figure 2 As shown, UE1 accesses the core network through base station 1, UE2 accesses the core network through base station 2, UE3 accesses the core network through base station 3, and UE4 accesses the core network through base station 4. It should also be understood that a base station can generally be accessed by a large number of UEs. For example, a base station deployed in a certain area, and UEs in the area generally access the core network through the base station deployed in the area.

[0045] For example, the user plane network elements in the core network can be deployed to the base station or deployed separately from the base station. The user plane network elements can be deployed to the base station as an example, each base station can deploy user plane network elements. Figure 2 As shown, UPF instance 1 is deployed in base station 1, UPF instance 2 is deployed in base station 2, UPF instance 3 is deployed in base station 3, and UPF instance 4 is deployed in base station 4. The user plane network element is deployed separately from the base station, which can be understood as different base stations can access the same UPF network element.

[0046] In summary, based on Figure 2 The decentralized deployment architecture of the core network shown can achieve stateless, multi-instance, scalable, high-availability, shared data, distributed locks, distributed timers and other performance of the control plane network elements, thereby improving the stability and reliability of the core network.

[0047] It should be understood that, for control plane network elements, stateless means that data such as status information is stored in a distributed database rather than in the network element; multi-instance means that control plane network elements are all deployed in a multi-instance distributed manner, and the same control plane network element starts multiple instances, and these multiple instances are deployed in a distributed manner; scaling means that the number of instances of the control plane network element can be increased or decreased; high availability means that since the same control plane network element corresponds to multiple instances, when one or some of the instances fail, other instances can be used to recover from the failure, thereby achieving high availability of the system; shared data means that different instances of the same control plane network element can share data stored in a distributed database; distributed lock means the distributed deployment of lock nodes. For the same control plane network element, only one instance can use the distributed lock to lock the UE context data in the distributed database at the same time; distributed timer means the distributed deployment of timer nodes. A distributed timer can be established by an instance of the control plane network element and can be deleted or triggered by the same instance or other instances of the same control plane network element.

[0048] It is also necessary to understand that the various performances of the control plane network elements implemented as above are interrelated, and a single performance usually does not exist independently. For example, the stateless, multi-instance, shared data and other performances of the control plane network elements enable the control plane network elements to have high availability and fault recovery performance. Examples will not be given one by one here.

[0049] based on Figure 2 The embodiment of the present application also proposes a communication method based on the decentralized deployment of the core network.

[0050] See also Figure 3 , Figure 3This is a flow chart of a communication method based on decentralized deployment of a core network, shown in an exemplary embodiment of the present application. As mentioned above, the core network includes a control plane network element, and the same control plane network element starts multiple instances, and the multiple instances are deployed in a distributed manner.

[0051] It should also be noted that the method can be specifically executed by the interface protocol module corresponding to the control plane network element. It can be understood that the interface protocol module is used to implement signaling transmission between the access network and the control plane network element or between different control plane network elements, for example Figure 2 The N2:NGAP module shown can be used as the interface protocol module of the AMF network element, and the N4:SMF module can be used as the interface protocol module of the SMF network element.

[0052] like Figure 3 As shown, the exemplary method includes S310-S320, which are described in detail as follows:

[0053] S310: Receive a signaling packet to be processed by a control plane network element.

[0054] First, it should be understood that the core network mentioned in this embodiment includes multiple control plane network elements, such as AMF, SMF, PCF, UDM, NSSF, AUSF, NSSAAF, etc. Each control plane network element starts multiple instances, and these multiple instances are deployed in a distributed manner. Since the communication process of each control plane network element is similar, this embodiment will introduce the communication process of one control plane network element, and will not repeat the communication process of each control plane network element.

[0055] In this embodiment, based on the external IP of the control plane network element, a signaling packet to be processed by the control plane network element can be received. For example, the user terminal sends a signaling packet to the control plane network element through the external IP of the control plane network element.

[0056] S320, sending the signaling packet to the target instance of the control plane network element, so that the target instance processes the signaling packet and writes relevant context data in the distributed database after the processing is completed; wherein, the target instance is one of the multiple instances corresponding to the control plane network element, and the multiple instances corresponding to the control plane network element can share the data stored in the distributed database.

[0057] The target instance is one of the multiple instances corresponding to the control plane network element. This embodiment sends signaling packets to the target instance of the control plane network element. The target instance processes the signaling packets, enabling the system to address anomalies in the network equipment where the control plane network element instance is deployed, thereby improving the stability and reliability of the mobile network. For example, if an instance fails, the failed instance will not be selected as the target instance. Alternatively, if the target instance fails, a new, healthy instance can be selected as the new target instance for subsequent processing.

[0058] After processing the signaling packet, the target instance needs to write relevant context data to the distributed database, such as the UE's status information or other context data. The purpose is to enable other instances of the same control plane network element to obtain the context data written by the target instance in the distributed database, that is, to enable multiple instances corresponding to the same control plane network element to share the data stored in the distributed database. This can ensure the stability and reliability of the mobile network through the collaboration between multiple instances of the same control plane network element. For example, when the target instance fails, the processing is continued through the new target instance. Since the failed target instance has saved the relevant context data for processing the signaling packet in the distributed database, when the new target instance processes the next signaling packet, it can obtain the context data related to the processing of the previous signaling packet from the distributed database and perform the processing of the current signaling packet based on the obtained context data.

[0059] It can be seen from this that this embodiment realizes the multi-instance, stateless, shared data and high-availability performance of the control plane network element, thereby ensuring the stability and reliability of the mobile network.

[0060] As an exemplary embodiment, a preset communication proxy receives signaling packets to be processed by a control plane network element, then sends the signaling packets to a preset message queue through the communication proxy. Based on the target instance's consumption of the message queue, the signaling packets are sent from the message queue to the target instance, thereby enabling the signaling packets to be transmitted to a specific instance of the control plane network element. As previously mentioned, the preset communication proxy can be an SCTP proxy, a UDP proxy, a TCP proxy, etc. Different types of communication proxies can be specifically set for different control plane network elements, and this embodiment does not limit this.

[0061] As another exemplary embodiment, the signaling packet to be processed by the control plane network element is sent to the target instance through a preset load balancing algorithm or a preset network service. Exemplarily, the preset network service can be the service in Kubernetes mentioned above, which is not limited here.

[0062] In an exemplary embodiment, a signaling packet to be processed by a control plane network element is a message from a user terminal. The target instance queries the user terminal's context data from a distributed database, obtains a corresponding query result, processes the signaling packet based on the query result, and updates the user terminal's context data in the distributed database after processing. It is understood that the user terminal's context data can be state information or other contextual data. The specific type of context data may vary in different application scenarios and is not limited here.

[0063] In another exemplary embodiment, the target instance also locks the user terminal's context data stored in the distributed database using a distributed lock. Signaling packets are processed only after the lock is successfully established, and the distributed lock is released after processing. If the lock fails, the user terminal's context data is locked again after the distributed lock is released. It is understood that locked device data cannot be accessed by instances other than the target instance, thereby ensuring data sharing in the distributed database among multiple instances of the same control plane network element.

[0064] In another exemplary embodiment, a communication method based on decentralized deployment of a core network includes: Figure 4 The process shown in Figure 3 The embodiment shown also includes the following process:

[0065] S410: Forward the message sent by the user terminal within the timeout period to a new target instance, so that the new target instance deletes the distributed timer, and the new target instance is one of the multiple instances that has not experienced a fault;

[0066] S420: Forward the message sent by the user terminal within the timeout period to a new target instance, so that the new target instance deletes the distributed timer, and the new target instance is one of the multiple instances that has not experienced a fault;

[0067] S430: If the message sent by the user terminal is not received within the timeout period, wake up the distributed timer through an instance that has not failed among the multiple instances to perform timeout processing.

[0068] In the above process, after forwarding the message sent by the target instance to the user terminal, if the user terminal sends a message to the control plane network element within the timeout period set by the distributed timer, it means that the user terminal has not failed, and the message sent by the user terminal needs to be forwarded to the new target instance for processing. The new target instance is understood to be one of the multiple instances of the control plane network element in which no abnormality has occurred. If the target instance has an abnormality after sending a message to the user terminal, such as equipment failure or scaling down, the target instance will not have the possibility of being selected as the new target instance. If the target instance has not failed, the target instance may also be selected as the new target instance.

[0069] If the user terminal does not send a message to the control plane network element within the timeout period set by the distributed timer, it indicates that the user terminal is faulty, and the distributed timer is awakened by one of the multiple instances of the control plane network element that has no abnormality to perform timeout processing.

[0070] As can be seen from the above, by setting a distributed timer, the timeout period set by the timer can be used to locate abnormal conditions of the user terminal, and after locating the abnormal conditions, corresponding measures can be taken to recover from the fault, thereby achieving high availability of the mobile network.

[0071] In order to better understand the technical solution proposed in this application, please refer to Figure 5 An exemplary communication interaction flow chart of the example, and Figure 2 The architecture shown uses the user's online and offline processes as examples to introduce the communication process based on the decentralized deployment of the core network.

[0072] UE1 accesses base station 1 and sends an online request to base station 1.

[0073] Base station 1 sends an online request message to the core network's N2:NGAP module. It can be understood that NGAP (NG Application Protocol) refers to the N2 interface protocol. Therefore, the N2:NGAP module can also be understood as the interface module corresponding to the AMF network element.

[0074] N2: The NGAP module randomly sends the online request message to an AMF instance, taking AMF instance 1 as an example.

[0075] AMF instance 1 processes the online request message. The processing method may be that AMF instance 1 queries UE1's status information from the distributed database to obtain UE1's current status; if no UE1 status information is queried, it indicates that UE1 has not yet come online, so UE1's online processing is performed.

[0076] After AMF instance 1 completes processing, it updates UE1's status information and writes it to the distributed database. That is, AMF instance 1 writes the status information representing UE1's online status into the distributed database.

[0077] AMF instance 1 sends a notification message indicating that UE1 has successfully gone online to N2:NGAP module.

[0078] N2: The NGAP module sends a notification message indicating that UE1 has successfully come online to UE1.

[0079] UE1 sends a logoff request message to N2:NGAP module through base station 1.

[0080] N2: The NGAP module randomly sends the offline request message to an AMF instance, taking AMF instance 2 as an example.

[0081] AMF instance 2 processes the offline request message. The processing method can be that AMF instance 2 queries the status information of UE1 from the distributed database to obtain the current status of UE1; if the query finds that UE1 is online, UE1 is offline processed.

[0082] After AMF instance 2 completes the processing, it updates the status information of UE1 and writes it into the distributed database. In other words, AMF instance 2 writes the status information indicating that UE1 is offline into the distributed database.

[0083] AMF instance 2 sends a notification message indicating that UE1 has successfully gone offline to N2:NGAP module.

[0084] N2: The NGAP module sends a notification message indicating that UE1 has successfully logged off to UE1.

[0085] According to the communication process in the above example, it can be seen that based on the communication architecture of the decentralized deployment of the core network, the target instance can be randomly selected from multiple instances of the control plane network element. Therefore, the target instance responsible for processing different signaling packets can be the same instance or different instances. In addition, after any instance completes processing the signaling packet, it saves the processing result in the distributed database, so that multiple instances of the same control plane network element can share the data stored in the distributed database. For example, the above-mentioned AMF instance 2 can obtain the status information indicating that UE1 is online, which is written by AMF instance 1 after processing UE1 online.

[0086] Please continue reading Figure 6 Another exemplary communication interaction flow chart of the example, and Figure 2 The architecture shown in FIG. 4 introduces the process of processing another type of message packet.

[0087] UE1 sends message 1 to AMF instance 1 through base station 1.

[0088] AMF instance 1 locks the context data of UE1 stored in the distributed database through a distributed lock. After the context data of UE1 is locked, it cannot be obtained by other AMF instances.

[0089] After the lock is successfully locked, the distributed lock returns a notification message indicating the successful lock to AMF instance 1.

[0090] AMF instance 1 queries the context data of UE1 from the distributed database, and then processes message 1 according to the queried context data. After the processing is completed, the distributed lock is released, and the context data of UE1 is updated in the distributed data.

[0091] Before AMF instance 1 releases the distributed lock, UE1 sends message 2 to AMF instance 2 through base station 1.

[0092] AMF instance 2 locks the context data of UE1 stored in the distributed database through a distributed lock, but since AMF instance 1 has not released the distributed lock, the distributed lock node returns a notification message indicating the locking failure to AMF instance 2.

[0093] AMF instance 2 waits for AMF instance 1 to release the distributed lock. After the distributed lock is released, AMF instance 2 successfully locks the context data of UE1 stored in the distributed database.

[0094] AMF instance 2 queries UE1's context book from the distributed database, and then processes message 2 according to the queried context data. After the processing is completed, the distributed lock is released, and the context data of UE1 is updated in the distributed database.

[0095] According to the communication process in the above example, it can be seen that by setting a distributed lock, it is ensured that only one instance of the same control plane network element executes processing on the data stored in the distributed database at the same time. Under the conditions of multiple instances of the control plane network element, the communication process can be ensured to be carried out stably and reliably, thereby achieving the stability and reliability of the mobile network.

[0096] Please continue reading below Figure 7 Another exemplary communication interaction flow chart of the example, and Figure 2 The architecture shown introduces the high availability of the mobile network proposed in the embodiment of the present application.

[0097] AMF instance 1 sends message 1 to UE.

[0098] AMF instance 1 creates a distributed timer, which can be called a distributed timer task, indicating that timeout processing is performed after a timeout duration (for example, N seconds, where N is a positive integer) is reached.

[0099] AMF instance 1 encounters an exception after creating a distributed timer, such as a device hardware or software failure, or AMF instance 1 is scaled down.

[0100] The UE sends Message 2 to AMF Instance 2 within the timeout period.

[0101] AMF instance 2 deletes the distributed timer created by AMF instance 1.

[0102] As shown in the example above, if an exception occurs during the creation of a distributed timer instance, the distributed timer can be deleted by another functioning instance, provided the distributed timer has not timed out. This allows for rapid recovery from mobile network failures and high network availability. Furthermore, by setting distributed timers, timeout durations can be constrained within the mobile network, further ensuring network reliability.

[0103] Please continue reading below Figure 8 Another exemplary communication interaction flow chart of the example, and Figure 2 The architecture shown further introduces the high availability of the mobile network proposed in the embodiment of the present application.

[0104] AMF instance 1 sends a message to the UE.

[0105] AMF instance 1 creates a distributed timer, which can be called a distributed timer task, indicating that timeout processing is performed after a timeout duration (for example, N seconds, where N is a positive integer) is reached.

[0106] AMF instance 1 fails or is scaled down after creating a distributed timer.

[0107] Due to a UE device failure, the UE cannot send a message to the control plane network element within the timeout period.

[0108] AMF instance 2 wakes up the distributed timer to perform timeout processing.

[0109] As can be seen from the process of the above example, when a distributed timer times out, even if an exception occurs in the instance that created the distributed timer, other instances that have not encountered an exception can still trigger the distributed timer to perform timeout processing. This is also an effective way for mobile networks to achieve fault recovery, thereby achieving high availability of mobile networks.

[0110] Figure 9This is a block diagram of a communication device based on a decentralized deployment of a core network, shown in an exemplary embodiment of the present application. The core network includes a control plane network element, and the same control plane network element starts multiple instances, and the multiple instances are distributedly deployed. Figure 9 As shown, the exemplary apparatus includes:

[0111] A receiving module 910 is configured to receive a signaling packet to be processed by a control plane network element;

[0112] The processing module 920 is configured to send the signaling packet to the target instance of the control plane network element, so that the target instance processes the signaling packet and writes the relevant context data in the distributed database after the processing is completed; wherein, the target instance is one of the multiple instances corresponding to the control plane network element, and the multiple instances corresponding to the control plane network element can share the data stored in the distributed database.

[0113] In another exemplary embodiment, the acquisition module 910 is configured to receive the signaling packet through a preset communication agent, and the processing module 920 is further configured to:

[0114] Sending signaling packets to a preset message queue through a communication agent;

[0115] Based on the target instance's consumption of the message queue, the signaling packet is sent from the message queue to the target instance.

[0116] In another exemplary embodiment, the processing module 920 is further configured to: send the signaling packet to the target instance through a preset load balancing algorithm or a preset network service.

[0117] In another exemplary embodiment, the target instance queries the context data of the user terminal from the distributed database, obtains the corresponding query results, processes the signaling packet based on the query results, and updates the context data of the user terminal in the distributed database after the processing is completed.

[0118] In another exemplary embodiment, the target instance also uses a distributed lock to lock the user terminal's context data stored in the distributed database. Signaling packets are processed only after the lock is successfully established. The locked device data cannot be accessed by any instance other than the target instance. After processing the signaling packet, the distributed lock is released. If locking the user terminal's context data using the distributed lock fails, the user terminal's context data is locked again after the distributed lock is released.

[0119] In another exemplary embodiment, the processing module 920 is further configured to:

[0120] The message from the target instance is sent to the user terminal. After sending the message, the target instance also creates a distributed timer. The distributed timer indicates that timeout processing will be performed after the timeout period is reached.

[0121] Forwarding a message sent by the user terminal within the timeout period to a new target instance, so that the new target instance deletes the distributed timer; wherein the new target instance is one of the multiple instances in which no exception occurs;

[0122] If the message sent by the user terminal is not received within the timeout period, the distributed timer is awakened by one of the multiple instances where no failure occurs to perform timeout processing.

[0123] It should be noted that the communication device based on decentralized deployment of the core network provided in the above embodiment and the communication method based on decentralized deployment of the core network provided in the above embodiment belong to the same concept, wherein the specific manner in which each module and unit performs operations has been described in detail in the method embodiment and will not be repeated here. In actual applications, the communication device based on decentralized deployment of the core network provided in the above embodiment can, as needed, allocate the above functions to different functional modules, that is, divide the internal structure of the device into different functional modules to complete all or part of the functions described above, and this is not limited here.

[0124] An embodiment of the present application also provides an electronic device, comprising: one or more processors; a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the electronic device implements the communication method based on decentralized deployment of the core network provided in the above-mentioned embodiments.

[0125] Figure 10 The following is a schematic diagram showing the structure of a computer system suitable for implementing an electronic device according to an embodiment of the present application. Figure 10 The computer system 1000 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0126] like Figure 10As shown, the computer system 1000 includes a central processing unit (CPU) 1001, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 1002 or the program loaded from the storage part 1008 into the random access memory (RAM) 1003, such as executing the method described in the above embodiment. Various programs and data required for system operation are also stored in the RAM 1003. The CPU 1001, ROM 1002 and RAM 1003 are connected to each other via a bus 1004. An input / output (I / O) interface 1005 is also connected to the bus 1004.

[0127] The following components are connected to the I / O interface 1005: an input section 1006 including a keyboard, a mouse, and the like; an output section 1007 including devices such as a cathode ray tube (CRT), a liquid crystal display (LCD), and a speaker; a storage section 1008 including a hard disk and the like; and a communication section 1009 including a network interface card such as a LAN (Local Area Network) card or a modem. The communication section 1009 performs communication processing via a network such as the Internet. A drive 1010 is also connected to the I / O interface 1005 as needed. Removable media 1011, such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, is installed in the drive 1010 as needed, so that computer programs read therefrom can be installed into the storage section 1008 as needed.

[0128] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 1009, and / or installed from a removable medium 1011. When the computer program is executed by the central processing unit (CPU) 1001, the various functions defined in the system of the present application are executed.

[0129] It should be noted that the computer-readable medium shown in the embodiment of the present application can be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. More specific examples of computer-readable storage media can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. The computer program contained in the computer-readable medium can be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0130] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present application. Among them, each box in the flowchart or block diagram can represent a module, program segment, or part of the code, and the above-mentioned module, program segment, or part of the code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0131] The units involved in the embodiments described in this application may be implemented by software or hardware, and the units described may also be set in a processor. In some cases, the names of these units do not constitute limitations on the units themselves.

[0132] Another aspect of the present application provides a computer-readable storage medium having a computer program stored thereon. When executed by a processor, the computer program implements the aforementioned communication method based on decentralized deployment of the core network. The computer-readable storage medium may be included in the electronic device described in the above embodiments, or may exist independently and not be incorporated into the electronic device.

[0133] Another aspect of the present application provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the communication method based on decentralized deployment of the core network provided in each of the above embodiments.

[0134] The above content is only a preferred exemplary embodiment of the present application and is not intended to limit the implementation scheme of the present application. Ordinary technicians in this field can easily make corresponding changes or modifications based on the main ideas and spirit of the present application. Therefore, the scope of protection of the present application shall be based on the scope of protection required by the claims.

[0135] It is understandable that in the specific implementation of this application, data related to signaling packets, status information, context, etc. is involved. When the above embodiments of this application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards of relevant countries and regions.

Claims

1. A communication method based on decentralized deployment of a core network, characterized in that: The core network includes a control plane network element, the same control plane network element starts multiple instances, and the multiple instances are deployed in a distributed manner, and the method includes: receiving a signaling packet to be processed by the control plane network element; The signaling packet is sent to a target instance of the control plane network element, so that the target instance processes the signaling packet and writes relevant context data in a distributed database after the processing is completed; wherein the target instance is one of multiple instances corresponding to the control plane network element, and the multiple instances corresponding to the control plane network element can share the data stored in the distributed database.

2. The method according to claim 1, characterized in that Receiving the signaling packet through a preset communication agent; The sending of the signaling packet to the target instance of the control plane network element includes: Sending the signaling packet to a preset message queue through the communication agent; Based on consumption of the message queue by the target instance, the signaling packet is sent from the message queue to the target instance.

3. The method according to claim 1, characterized in that The sending of the signaling packet to the target instance of the control plane network element includes: The signaling packet is sent to the target instance through a preset load balancing algorithm or a preset network service.

4. The method according to claim 1, wherein The signaling packet includes a message from a user terminal; The target instance processes the signaling packet and writes relevant context data into the distributed database after the processing is completed, including: The target instance queries the context data of the user terminal from the distributed database to obtain corresponding query results; The signaling packet is processed based on the query result, and after the processing is completed, the context data of the user terminal is updated in the distributed database.

5. The method according to claim 4, characterized in that The target instance processes the signaling packet and writes relevant context data into the distributed database after the processing is completed, further comprising: Locking the context data of the user terminal stored in the distributed database using a distributed lock, and processing the signaling packet after the lock is successfully established, so that the locked context data cannot be obtained by other instances except the target instance; After processing the signaling packet, the distributed lock is released.

6. The method according to claim 5, characterized in that: If locking the context data of the user terminal by using the distributed lock fails, the context data of the user terminal is locked again after waiting for the distributed lock to be released.

7. The method according to claim 1, characterized in that The method further comprises: Sending a message from the target instance to the user terminal, wherein the target instance also creates a distributed timer after sending the message, wherein the distributed timer indicates that a timeout process is performed after a timeout duration is reached; Forwarding the message sent by the user terminal within the timeout period to a new target instance, so that the new target instance deletes the distributed timer; wherein the new target instance is one of the multiple instances in which no exception occurs.

8. The method according to claim 7, characterized in that The method further comprises: If the message sent by the user terminal is not received within the timeout period, the distributed timer is awakened by an instance in which no failure occurs among the multiple instances to perform timeout processing.

9. A communication system based on decentralized deployment of a core network, characterized in that: include: The core network includes a control plane network element, wherein the same control plane network element starts multiple instances, and the multiple instances are deployed in a distributed manner; A distributed database, in which multiple instances corresponding to the same control plane network element can share data stored in the distributed database; In which, in the core network, after receiving a signaling packet to be processed by the control plane network element, the signaling packet is sent to a target instance of the control plane network element, so that the target instance processes the signaling packet, and after the processing is completed, the relevant context data is written into a distributed database, and the target instance is one of the multiple instances corresponding to the control plane network element.

10. The system according to claim 9, characterized in that The system further comprises: base stations; A user terminal accesses the core network through the base station.

11. The system according to claim 10, wherein: The core network further includes a user plane network element, which is deployed down to the base station or deployed separately.

12. A communication device based on decentralized deployment of a core network, characterized in that: The core network includes a control plane network element, the same control plane network element starts multiple instances, and the multiple instances are deployed in a distributed manner, and the device includes: a receiving module configured to receive a signaling packet to be processed by the control plane network element; A processing module is configured to send the signaling packet to a target instance of the control plane network element, so that the target instance processes the signaling packet and writes relevant context data in a distributed database after the processing is completed; wherein, the target instance is one of the multiple instances corresponding to the control plane network element, and the multiple instances corresponding to the control plane network element can share the data stored in the distributed database.

13. An electronic device, characterized in that: include: one or more processors; The memory is used to store one or more programs, and when the one or more programs are executed by the one or more processors, the electronic device implements the method according to any one of claims 1 to 8.

14. A computer-readable storage medium, characterized in that Computer-readable instructions are stored thereon, and when the computer-readable instructions are executed by a processor of a computer, the computer is caused to execute the method according to any one of claims 1 to 8.

15. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.