Cloud-native data streaming for performance measurement and tracking management
Patent Information
- Application Number
- CN202480089659.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-05-16
- Filing Date
- 2024-10-09
- Publication Date
- 2026-10-27
AI Technical Summary
[0008]基于上述实施例,可以实现用于处理云原生电信应用中的数据流式传输的更可缩放、更可靠和更高效的方法。
Smart Images

Figure CN122996641A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to cloud-native data streaming for performance measurement and tracking management. Background Technology
[0002] The information disclosed in this Background section is intended only to enhance the understanding of the general background of this disclosure and should not be construed as an admission or in any way implying that the information constitutes prior art known to those skilled in the art.
[0003] In related technologies, a typical telecommunications network can control the streaming of data from network functions (NFs) via point-to-point connections. Network elements within this network may generate a large amount of performance data (e.g., from cellular towers and core network equipment). This performance data can include performance measurement (PM), which can be responsible for monitoring network performance metrics (e.g., call drop rates, latency, to identify potential problems and optimize network efficiency), as well as tracking and analyzing the paths taken by path data to troubleshoot problems and pinpoint any bottlenecks. Summary of the Invention
[0004] However, systems in these technologies may rely on dedicated servers and monolithic architectures, and are not well-suited for managing large amounts of real-time data in streaming media, and are particularly unsuitable for cloud-native telecommunications applications. Limitations may include scalability challenges (e.g., large amounts of data may not be well supported, potentially leading to performance degradation, connection interruptions, and increased resource consumption), reliability issues (message delivery may not be guaranteed), latency considerations (due to increased overhead, etc.), and security constraints (eavesdropping due to lack of encryption).
[0005] Therefore, there is a need for a more scalable, reliable, and efficient solution that can handle data streaming for cloud-native telecom applications.
[0006] According to an embodiment, a method, apparatus, and system for cloud-native data streaming can be provided, and may include receiving a streaming request for a streaming topic from a management system / MnS consumer by a Network Function (NF) / Management Service (MnS) producer, wherein the streaming topic includes at least one of performance metrics and tracking data; sending a notification including the status of the streaming request to the management system / MnS consumer based on the streaming request by the NF / MnS producer; and sending an instruction to a message bus by the NF / MnS producer based on the streaming request.
[0007] According to an embodiment, a Network Function (NF) / Management Service (MnS) producer can be provided and configured to: receive a streaming request for a streaming topic originating from a management system / MnS consumer, wherein the streaming topic includes at least one of performance metrics and trace data; send a notification including the status of the streaming request to the management system / MnS consumer based on the streaming request; and send an instruction to a message bus based on the streaming request.
[0008] Based on the above embodiments, a more scalable, reliable, and efficient method for processing data streaming in cloud-native telecommunications applications can be realized.
[0009] Additional aspects will be set forth in part in the description which follows, and will be apparent in part from the description, or may be realized by practicing the embodiments presented in this disclosure. Attached Figure Description
[0010] The features, aspects, and advantages of certain exemplary embodiments of the present disclosure will now be described with reference to the accompanying drawings, in which the same reference numerals denote the same elements, and in the drawings:
[0011] Figure 1 The diagram illustrates a system architecture for cloud-native streaming according to an embodiment.
[0012] Figure 2 The diagram illustrates a protocol stack for streaming performance data and tracking data reporting according to an embodiment;
[0013] Figure 3 The illustration shows a call flowchart for adding a streaming topic according to an embodiment;
[0014] Figure 4 The diagram illustrates a call flowchart for adding a streaming topic using the HTTP protocol according to an embodiment.
[0015] Figure 5 The illustration shows a call flowchart for deleting a streaming topic according to an embodiment;
[0016] Figure 6 The illustration shows a call flowchart for deleting a streaming topic using the HTTP protocol according to an embodiment;
[0017] Figure 7 The illustration shows a call flowchart for establishing a cloud streaming configuration according to an embodiment;
[0018] Figure 8 The diagram illustrates a call flowchart for establishing a cloud streaming configuration using the HTTP protocol according to an embodiment.
[0019] Figure 9The illustration shows a call flowchart for terminating a cloud streaming configuration according to an embodiment;
[0020] Figure 10 The illustration shows a call flowchart for terminating a cloud streaming configuration using the HTTP protocol according to an embodiment.
[0021] Figure 11 The illustration shows a call flowchart for obtaining information about cloud streaming configuration according to an embodiment;
[0022] Figure 12 The diagram illustrates a call flowchart for obtaining cloud streaming configuration information using the HTTP protocol according to an embodiment.
[0023] Figure 13 The illustration shows a call flowchart for obtaining information about a streaming topic according to an embodiment;
[0024] Figure 14 The illustration shows a call flowchart for obtaining information about a streaming topic using the HTTP protocol according to an embodiment;
[0025] Figure 15 The illustration shows a call flowchart for reporting streaming data using the HTTP protocol according to an embodiment;
[0026] Figure 16 The illustration shows an example method for performing streaming topic operations according to an embodiment;
[0027] Figure 17 It is a diagram of an example environment in which the systems and / or methods described in this paper can be implemented; and
[0028] Figure 18 This is a diagram of example components of a device according to an embodiment. Detailed Implementation
[0029] The following detailed description of exemplary embodiments is provided with reference to the accompanying drawings. The above disclosure provides illustrations and descriptions, but is not intended to be exhaustive or to limit implementation to the precise forms disclosed. Modifications and variations are possible based on the above disclosure, or may be obtained from the practice of implementation. Furthermore, one or more features or components of one embodiment may be incorporated into or combined with another embodiment (or one or more features of another embodiment). Additionally, in the operation flowcharts and descriptions provided below, it will be understood that one or more operations may be omitted, one or more operations may be added, one or more operations may be performed simultaneously (at least partially), and the order of one or more operations may be switched.
[0030] It is evident that the systems and / or methods described herein can be implemented in various forms of hardware, firmware, or combinations of hardware and software. The actual dedicated control hardware or software code used to implement these systems and / or methods does not limit these implementations. Therefore, since the operation and behavior of systems and / or methods are described herein without reference to specific software code, it should be understood that software and hardware can be designed to implement these systems and / or methods based on the descriptions herein.
[0031] Although specific combinations of features are recited in the claims and / or disclosed in the specification, these combinations are not intended to limit the possible disclosure. In fact, many of these features can be combined in ways not specifically recited in the claims and / or not disclosed in the specification. Although each dependent claim listed below may be directly dependent on only one claim, the possible disclosure includes combinations of each dependent claim with each other claim in the claim set.
[0032] Unless explicitly stated otherwise, no element, action, or instruction used herein should be construed as critical or necessary. Furthermore, as used herein, the terms “a” and “an” are intended to include one or more items and may be used interchangeably with “one or more.” Figure 1 For individual items, the term "one" or similar language is used. Furthermore, as used herein, the terms "has," "have," "having," "include," "including," etc., are intended to be open-ended terms. Additionally, unless explicitly stated otherwise, the phrase "based on" is intended to mean "at least partially based on." Furthermore, expressions such as "at least one of [A] and [B]" or "at least one of [A] or [B]" should be understood to include only A, only B, or both A and B.
[0033] According to an embodiment, a method, apparatus, and system for cloud-native data streaming for performance measurement and tracking management can be provided, and may include: an NF / MnS producer receiving a streaming request for a streaming topic originating from a management system / MnS consumer, wherein the streaming topic includes at least one of performance metrics and tracking data; the NF / MnS producer sending a notification including the status of the streaming request to the management system / MnS consumer based on the streaming request; and the NF / MnS producer sending an instruction to a message bus based on the streaming request.
[0034] Based on the above embodiments, a more scalable, reliable, and efficient method for processing data streaming in cloud-native telecommunications applications can be realized.
[0035] Figure 1 The diagram illustrates a system architecture for cloud-native streaming according to an embodiment. Figure 1 The system architecture illustrated provides insights into both the functional and service views. In the functional view, cloud network functions (NF) 110, management functions (MnF) 120, and a message broker 130 can be provided. NF 110 can include 1, 2…N data producers 111-1, 111-2,…111-N. Similarly, management system 120 can include 1, 2…N data consumers 121-1, 121-2,…121-N. Message broker 130 can be used, for example, to handle data streaming to cloud NF 110. Workloads that generate data in NF 110 (e.g., data producers 111-1, 111-2,…111-N) can connect to message broker 130 via publishing and stream data to it in parallel, while workloads that consume data in management system 120 (e.g., data consumers 121-1, 121-2,…121-N) can connect to message broker 130 via subscription and consume streaming data from it in parallel.
[0036] In the service view, a Management Service (MnS) producer implemented by NF can generate a message bus-based data streaming service to an MnS consumer implemented by MnF. Services may include, but are not limited to, management data job control services and message bus-based data streaming / communication services.
[0037] based on Figure 1 In the architecture shown, the number of data producers 111-1, 111-2, ..., 111-N and data consumers 121-1, 121-2, ..., 121-N can be scaled, thereby scaling the number of parallel connections.
[0038] Although not shown, multiple instances of the message broker 130 can be implemented to replicate connections to NF / MnS producers and consumers for connection fault tolerance and resilience.
[0039] According to embodiments, a common interface can be introduced for data streaming jobs (e.g., connection establishment and data subscription). Message broker 130 can be implemented using various methods (e.g., Kafka).
[0040] Data producers 111 and data consumers 121 can communicate with each other to control data operations.
[0041] Streaming topic 140 may contain information about data streams (such as PM / tracing / analysis data) in a cloud-native telecommunications network, which are sent from NF / MnS producers to message broker 130 (by publishing to the streaming topic) and from message broker 130 to management system / MnS consumers (via subscribing to streaming topic 140). Streaming topic 140 may be divided into one or more partitions 141-1, 141-2, ..., 141-N, each partition containing a portion of the data (such as PM and tracing data). Each NF / MnS producer may see only one partition, and similarly, each management system / MnS consumer may see only one partition. Measurement jobs for PM / tracing / analysis data may be associated with 0-N streaming topics 140.
[0042] Figure 2 The diagram illustrates a protocol stack for streaming performance data and tracking data reporting according to an embodiment.
[0043] In the data exchange layer, serialization format 210 can be used. Serialization formats are generalized for data exchange. For example, JSON and ASN.1 can be used.
[0044] In the application / security layer, message bus / proxy 220 and TLS 230 can be used. Specifically, message bus / proxy 220 can be implemented using a combination of protocols such as Kafka and WebSocket, with one protocol handling event streams and the other handling real-time bidirectional communication between the client and server.
[0045] At the transport layer, TCP 240 can be used. At the network layer, IP 250 can be used. The combination of TCP 240 and IP 250 may be more reliable because the data streams between applications will be ordered and error checked.
[0046] Figure 3 The illustration shows a call flowchart for adding a streaming topic according to an embodiment.
[0047] refer to Figure 3At step 1, the management function implementing MnS consumer 310 can send an addStreamingTopic to the NF implementing MnS provider 300. The management function / MnS consumer will provide details about the data job to be created related to the data to be streamed, the data to be streamed by the NF / MnS producer along with other streaming-related configurations 310 (e.g., related to the streaming topic to be created using the NF / MnS producer 300), and message broker endpoint information. Further details may include, but are not limited to: the type of streaming (PM metrics, tracking information, analytics, proprietary), the streaming format (such as ASN.1, GPB, XML, etc.), and may include a streaming ID.
[0048] In the case of PM metrics, it may include the DN of the object being tested, a list of performance metric names (whose values will be reported by the performance data stream unit), and the JobId defined in the PerfMetricJob MOI for which its data is reported.
[0049] In the case of analysis, details may be provided regarding the analytical activities for which the data is reported.
[0050] In the case of PROPRIETARY, details about the data being reported can be provided.
[0051] It should be understood that the above list is non-exhaustive and is an example, and the management system / MnS consumer 310 may send other parameters related to the streaming topic to the NF / MnS producer 300.
[0052] In step 2, the NF / MnS producer 300 can send a notification to the management system / MnS consumer 310 that a streaming topic has been created.
[0053] At step 3, the NF / MnS producer 300 can send instructions to the message bus / agent 320 for streaming data.
[0054] Figure 4 The diagram illustrates a call flowchart for adding a streaming topic using the HTTP protocol, according to an embodiment.
[0055] In step 1, the management system / MnS consumer 410 can send an HTTP POST request to the NF / MnS producer 400 to create a topic. This topic may include a topic name, optionally the number of partitions, and optionally a replication factor (e.g., how many replicas of each partition will be stored across different message brokers on the node cluster) as parameters. This allows the management system / MnS consumer 410 to add one or more reporting streams to the producer instance configuration already established at the NF / MnS producer 400.
[0056] In step 2a, if the topic creation call in step 1 is successful, the NF / MnS producer 400 returns a 201 OK message to the management system / MnS consumer 410, which may include the producer topic ID and topic name as parameters.
[0057] In step 2b, if the topic creation call in step 1 fails, the NF / MnS producer 400 returns a 400 error message to the management function / MnS consumer, which may indicate, for example, that the topic name already exists or that the configuration is not supported.
[0058] Figure 5 The illustration shows a call flowchart for deleting a streaming topic according to an embodiment.
[0059] refer to Figure 5 In step 1, the management system / MnS consumer 510 may send a deleteStreamingTopic request to the NF / MnS producer 500. This operation allows the management system / MnS consumer 510 to delete one or more reporting streams that have been established with the message broker / bus configuration. The management system / MnS consumer 510 should provide the NF / MnS producer 500 with details about the streaming connection configuration and the streaming topic to be deleted.
[0060] In step 2, the NF / MnS producer 500 can send a notification to the management system / MnS consumer 510 indicating that the streaming topic has been deleted.
[0061] At step 3, the NF / MnS producer 500 may no longer send streaming data to the message bus / agent 520.
[0062] Figure 6 The illustration shows a call flowchart for deleting a streaming topic using the HTTP protocol according to an embodiment.
[0063] In step 1, the management system / MnS consumer 610 can send an HTTP DELETE request to the NF / MnS producer 400 to delete an existing topic, which may include the topic ID as a parameter. This allows the management system / MnS consumer 610 to delete one or more reporting streams configured for an established producer instance.
[0064] In step 2a, if the topic deletion call in step 1 is successful, the NF / MnS producer 600 returns a 201 OK message to the management system / MnS consumer 610, which may include the producer topic ID and topic name as parameters.
[0065] At step 2b, if the topic deletion call in step 1 fails, the NF / MnS producer 600 returns a 400 error message to the management system / MnS consumer 610, which may indicate, for example, that the NF / MnS producer or the management system / MnS consumer is still active.
[0066] According to some embodiments, the management system / MnS consumer 610 may be able to forcibly delete a theme.
[0067] Figure 7 The illustration shows a call flowchart for establishing a cloud streaming configuration according to an embodiment.
[0068] At step 1, the management system / MnS consumer 710 can send an `establishCloudStreamingConfiguration` or `createCloudStreamingProducerConfig` call to the NF / MnS producer 700. This allows the NF / MnS producer in NF 700 to establish a connection with the message bus or broker. Connection establishment may include the exchange of metadata (the management system / MnS consumer 710 can inform the NF / MnS producer 700 about the required configuration to be created on the producer side, which acts as the client side of the bus / broker, and the characteristics of the data to be reported via streaming), stages, and the establishment of the actual connection (e.g., the data pipeline for streaming).
[0069] According to the embodiments, the established connection can support stream multiplexing (one connection can support one or more report streams at the same time).
[0070] In step 2, the NF / MnS producer 700 can send an indication to the management system / MnS consumer 710 that a cloud streaming configuration has been created. After a successful connection is established, the message bus / agent can identify the NF / MnS producer 700 and the nature of the data reported on each stream. The established connection can be kept "alive" through built-in functions of the solution set or through periodic heartbeats.
[0071] Figure 8 The illustration shows a call flowchart for establishing a cloud streaming configuration using the HTTP protocol according to an embodiment.
[0072] At step 1, the management system / MnS consumer 810 can send an HTTP POST request, which includes the producer name, producer ID, bootstrap server / message broker and serialization format, and ACK parameter / message.
[0073] In step 2, after the producer instance is successfully created, a 201 OK message can be sent from the NF / MnS producer 800 to the management system / MnS consumer 810 to indicate that the cloud streaming configuration has been successfully implemented.
[0074] According to embodiments, the same NF / MnS producer instance can be created using different serializers (e.g., TS 32.436 and TS 28.550 ASN.1, JSON, etc., as defined by 3GPP). According to embodiments, a single NF / MnS producer instance can be configured to work with different serializers for different topics or messages within the same cloud-native application. It should be understood that an appropriate serializer can be selected based on the topic or message content during data preparation. Therefore, a single NF / MnS producer instance can dynamically adjust its behavior based on the data being published.
[0075] According to another embodiment, separate NF / MnS producer instances can be implemented. While a single instance can handle different serialization formats, separate NF / MnS producer instances are preferred in some cases. For example, if performance should be optimized and there are a large number of messages with different serialization formats, a separate instance can provide improved performance (e.g., a dedicated thread pool for each serializer). Dedicated configurations can also improve code readability and maintainability, especially in scenarios where the logic for handling different formats is complex.
[0076] However, it should be understood that the specific implementation of the NF / MnS producer instance can be determined by those skilled in the art.
[0077] Figure 9The diagram illustrates a call flowchart for terminating a cloud streaming configuration according to an embodiment. This operation allows the management system / MnS consumer 910 to terminate the connection between the NF / MnS producer 910 and the message broker / bus.
[0078] In step 1, the NF / MnS producer 900 can receive the terminateCloudStreamingConfiguration or deleteCloudStreamingProducerConfig operation from the management system / MnS consumer 910.
[0079] In step 2, the NF / MnS producer 900 can send a notification to the management system / MnS consumer that the cloud streaming configuration has been deleted / terminated. After successful termination, the NF / MnS producer 900 will stop reporting data on that connection.
[0080] Figure 10 The illustration shows a call flowchart for terminating cloud streaming configuration using the HTTP protocol according to an embodiment.
[0081] At step 1, the management system / MnS consumer 1010 can send an HTTP delete request, which may include the producer name and producer ID as parameters.
[0082] At step 2, if the request in step 1 is successful, a 201 OK message can be returned from NF / MnS producer 1000 to management system / MnS consumer 1010 to indicate that the producer instance has been successfully deleted (e.g., on the client side of the message bus / agent).
[0083] Figure 11 The illustration shows a call flowchart for obtaining cloud streaming configuration information according to an embodiment.
[0084] In step 1, the management system / MnS consumer 1110 can send a getCloudStreamingConfigurationInfo or getCloudStreamingProducerConfigInfo operation to the NF / MnS producer 1100. This allows the management system / MnS consumer 1110 to obtain information about the established streaming configuration (on the client side) from the NF / MnS producer 1100 using the message bus / broker.
[0085] In step 2, cloud streaming configuration information is sent from NF / MnS producer 1100 to management system / MnS consumer 1110. The NF / MnS producer will provide details about the configuration of the connection created with the message bus / broker.
[0086] Figure 12 The illustration shows a call flowchart for obtaining cloud streaming configuration information using the HTTP protocol according to an embodiment.
[0087] At step 1, an HTTP GET request can be sent from the management system / MnS consumer 1210 to the NF / MnS producer 1200. This can include the producer instance ID to be requested.
[0088] In step 2, if the request is successful, the NF / MnS producer 1200 can return a 201 OK message to the management system / MnS consumer 1210. This message may include information about the producer instance details, such as the bootstrap server, serialization format, ACK, policy, etc.
[0089] Figure 13 The diagram illustrates a call flowchart for obtaining information about a streaming topic according to an embodiment. This operation allows the management system / MnS consumer 1310 to obtain information about one or more report streams that have been connected to the message broker / bus configuration.
[0090] In step 1, the management system / MnS consumer 1310 may send a getStreamingTopicInfo request to the NF / MnS producer 1300. The management system / MnS consumer 1310 should provide details related to the streaming connection configuration and the streaming topic (the information of which is required).
[0091] In step 2, the NF / MnS producer 1300 can return the information requested in step 1 to the management system / MnS consumer 1310.
[0092] Figure 14 The illustration shows a call flowchart for retrieving information about a streaming topic using the HTTP protocol, according to an embodiment.
[0093] At step 1, the management system / MnS consumer 1410 may send an HTTP GET request including the URI address of the producer instance. According to embodiments, parameters may be included to filter specifically for topic names or IDs.
[0094] At step 2a, if the request is successful, the NF / MnS producer 1400 can return a 201 OK message with the producer topic ID and topic name to the management system / MnS consumer 1410.
[0095] At step 2b, if the request is unsuccessful, the NF / MnS producer 1400 can return a 404 Not Found message to the management system / MnS consumer 1410 (e.g., topic does not exist).
[0096] Figure 15 The illustration shows a call flowchart for reporting streaming data using the HTTP protocol according to an embodiment. This operation enables the NF / MnS producer 1500 to send streaming data to the message bus / agent 1520 that is publishing data.
[0097] In step 1, the management system / MnS consumer 1510 can send an HTTP PUT request to the NF / MnS producer 1500, which may include the producer instance ID and the topic ID.
[0098] In step 2, if the NF / MnS producer 1500 accepts the request, a 200 OK message can be returned to the management system / MnS consumer 1510.
[0099] At step 3, the NF / MnS producer 1500 may send data deliveries (e.g., cell publication and streaming) to the message bus / agent 1520. The NF / MnS producer 1500 may be required to send the topic name or ID along with the data in a serialized format (such as ASN.1 and JSON as described above). Producer configuration settings (as part of producer instance creation) can determine the level of acknowledgment required by the message bus / agent 1520 before the NF / MnS producer 1500 considers the message to have been successfully published.
[0100] At step 4, if the publication in step 3 is successful, the NF / MnS producer 1500 can receive a 200 OK message from the message bus / agent 1520. This may include a data delivery ACK.
[0101] Figure 16 An example method 1600 for performing streaming topic operations according to an embodiment is illustrated.
[0102] At operation S1610, the NF / MnS producer can receive streaming requests for streaming topics from the management system / MnS consumer. Streaming topics may include at least one of performance metrics and trace data.
[0103] At operation S1620, the NF / MnS producer can send a notification to the management system / MnS consumer, including the status of the streaming request.
[0104] At operation S1630, instructions can be sent from the NF / MnS producer to the message bus based on streaming requests.
[0105] Based on the above embodiments, a more scalable, reliable, and efficient method for processing data streaming in cloud-native telecommunications applications can be realized.
[0106] Figure 17 This is a diagram of an example environment 1700 in which the systems and / or methods described herein can be implemented. (See diagram 1700.) Figure 17 As shown, environment 1700 may include user equipment 1710, platform 1720, and network 1730. Devices in environment 1700 may be interconnected via wired connections, wireless connections, or a combination of wired and wireless connections. In embodiments, references to the above are made to... Figures 1 to 16 Any functions and operations described can be provided by Figure 17 Any combination of the elements shown can be used to perform this action.
[0107] User equipment 1710 includes one or more devices capable of receiving, generating, storing, processing, and / or providing information associated with platform 1720. For example, user equipment 1710 may include computing devices (e.g., desktop computers, laptops, tablets, handheld computers, smart speakers, servers, etc.), mobile phones (e.g., smartphones, cordless phones, etc.), wearable devices (e.g., smart glasses or smartwatches), or similar devices. In some implementations, user equipment 1710 may receive information from and / or send information to platform 1720.
[0108] Platform 1720 includes one or more devices capable of receiving, generating, storing, processing, and / or providing information. In some implementations, platform 1720 may include a cloud server or a group of cloud servers. In some implementations, platform 1720 may be designed to be modular, allowing certain software components to be swapped in or out as needed. Therefore, platform 1720 can be easily and / or quickly reconfigured for different purposes.
[0109] In some implementations, as shown in the figure, platform 1720 can be hosted in a cloud computing environment 1722. It is worth noting that although the implementations described herein depict platform 1720 as being hosted in a cloud computing environment 1722, in some implementations, platform 1720 may not be cloud-based (i.e., it may be implemented outside of a cloud computing environment), or it may be partially cloud-based.
[0110] The cloud computing environment 1722 includes the environment of the hosting platform 1720. The cloud computing environment 1722 can provide services such as computing, software, data access, and storage, without requiring end users (e.g., user device 1710) to know the physical location and configuration of the (multiple) systems and / or (multiple) devices of the hosting platform 1720. As shown in the figure, the cloud computing environment 1722 may include a set of computing resources 1724 (collectively referred to as computing resources 1724, and individually referred to as computing resources 1724).
[0111] Computing resource 1724 includes one or more personal computers, computing device clusters, workstation computers, server devices, or other types of computing and / or communication devices. In some implementations, computing resource 1724 may host platform 1720. Cloud resources may include computing instances executing in computing resource 1724, storage devices provided in computing resource 1724, data transmission devices provided by computing resource 1724, etc. In some implementations, computing resource 1724 may communicate with other computing resources 1724 via wired connections, wireless connections, or a combination of wired and wireless connections.
[0112] like Figure 17 As further shown, computing resources 1724 include a set of cloud resources, such as one or more applications (APP) 1724-1, one or more virtual machines (VM) 1724-2, virtualized storage devices (VS) 1724-3, one or more hypervisors (HYP) 1724-4, etc.
[0113] Application 1724-1 includes one or more software applications that can be provided to or accessed by user device 1710. Application 1724-1 can eliminate the need to install and execute software applications on user device 1710. For example, application 1724-1 may include software associated with platform 1720, and / or any other software that can be provided via cloud computing environment 1722. In some implementations, an application 1724-1 may send / receive information to or from one or more other applications 1724-1 via virtual machine 1724-2.
[0114] Virtual machine 1724-2 includes a software implementation of a machine (e.g., a computer) (such as a physical machine) that executes programs. Virtual machine 1724-2 can be a system virtual machine or a process virtual machine, depending on its usage and its correspondence to any real machine. A system virtual machine can provide a complete system platform supporting the execution of a full operating system (OS). A process virtual machine can execute a single program and can support a single process. In some implementations, virtual machine 1724-2 can execute on behalf of a user (e.g., user device 1710) and can manage the infrastructure of the cloud computing environment 1722, such as data management, synchronization, or long-duration data transfer.
[0115] Virtualized storage device 1724-3 includes one or more storage systems and / or one or more devices that utilize virtualization technology within the storage system or device of computing resource 1724. In some implementations, the type of virtualization, within the context of the storage system, may include block virtualization and file virtualization. Block virtualization can refer to the abstraction (or separation) of logical storage from physical storage, enabling access to the storage system regardless of physical storage or heterogeneous architecture. This separation allows storage system administrators flexibility in how they manage storage for end users. File virtualization eliminates the dependency between data accessed at the file level and the location where the file is physically stored. This can enable performance optimization for storage usage, server consolidation, and / or non-disruptive file migration.
[0116] Hypervisor 1724-4 provides hardware virtualization technology that allows multiple operating systems (e.g., guest operating systems) to run simultaneously on a host machine (such as computing resource 1724). Hypervisor 1724-4 can present a virtual operating platform to guest operating systems and manage the execution of those systems. Multiple instances of various operating systems can share virtualized hardware resources.
[0117] Network 1730 includes one or more wired and / or wireless networks. For example, network 1730 may include cellular networks (e.g., fifth-generation (5G) networks, long-term evolution (LTE) networks, third-generation (3G) networks, code division multiple access (CDMA) networks, etc.), public land mobile networks (PLMN), local area networks (LAN), wide area networks (WAN), metropolitan area networks (MAN), telephone networks (e.g., public switched telephone network (PSTN)), private networks, self-organizing networks, intranets, the Internet, fiber-optic networks, etc., and / or combinations of these or other types of networks.
[0118] Figure 17 The number and arrangement of devices and networks shown are provided as examples. In practice, similar arrangements may exist. Figure 17 The examples shown are compared to additional equipment and / or networks, fewer equipment and / or networks, different equipment and / or networks, or equipment and / or networks arranged differently. Furthermore, Figure 17 The two or more devices shown can be implemented within a single device, or Figure 17 The single device shown can be implemented as multiple distributed devices. Alternatively or additionally, a group of devices in environment 1700 (e.g., one or more devices) can perform one or more functions described as being performed by another group of devices in environment 1700.
[0119] Figure 18 An embodiment of device 1800 is illustrated. For example... Figure 18As shown, device 1800 includes processor 1810, memory 1820, storage component 1830, input component 1840, output component 1850, communication interface 1860, and bus 1870.
[0120] As used herein, processor 1810 refers to any type of computing circuit that may include hardware and software elements. Processor 1810 may be embodied as a multi-core processor, a single-core processor, or a combination of one or more multi-core processors and / or one or more single-core processors, a distributed processing system, etc. Processor 1810 may be a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), an application-specific integrated circuit (ASIC), or another type of processing component.
[0121] Memory 1820 includes a non-transitory computer-readable medium. Memory 1820 includes random access memory (RAM), read-only memory (ROM), and / or another type of dynamic or static storage device (e.g., flash memory, magnetic storage, and / or optical storage) that stores information and / or instructions for use by processor 1810. Memory 1820 includes machine-readable instructions executable by processor 1810. When executed by processor 1810, these machine-readable instructions cause processor 1810 to perform one or more method steps of the embodiments described above.
[0122] Storage component 1830 stores information and / or software related to the operation and use of device 1800. For example, storage component 1830 may include hard disk (e.g., magnetic disk, optical disk, magneto-optical disk and / or solid-state disk), optical disk (CD), digital versatile disk (DVD), floppy disk, cassette tape, magnetic tape, and / or another type of non-transitory computer-readable medium, and corresponding drives.
[0123] Input component 1840 is configured to receive information, such as user input. For example, input component 1840 may include, but is not limited to, a touchscreen display, keyboard, keypad, mouse, button, switch, and / or microphone. Additionally or alternatively, input component 1840 may include sensors for sensing information (e.g., Global Positioning System (GPS), accelerometer, gyroscope, and / or actuator).
[0124] Output component 1850 is configured to provide output information from device 1800. For example, output component 1850 may be, but is not limited to, a display, a speaker, instructions from an external device, and / or one or more light-emitting diodes (LEDs).
[0125] Communication interface 1860 is an interface that provides communication connections to other devices, such as external and internal devices. Connections via communication interface 1860 can be wired, wireless, or a combination of wired and wireless connections, and can be direct connections or indirect connections via a communication network existing between device 1800 and other devices. In other words, the standard for communication interface 1860 is unrestricted.
[0126] Bus 1870 serves as an interconnect between the processor 1810, memory 1820, storage component 1830, input component 1840, output component 1850, and communication interface 1860 of device 1800. Bus 1870 may include wired or wireless interconnects.
[0127] Figure 18 The number and arrangement of components shown are provided as an example. In practice, with Figure 18 Compared to the examples shown, device 1800 may include additional components, fewer components, different components, or components arranged differently. Additionally or alternatively, a set of components (e.g., one or more components) of device 1800 may perform one or more functions described as being performed by another set of components of device 1800. Furthermore, one or more method steps described in any embodiment may be performed using multiple devices 1800 communicating with each other.
[0128] In an embodiment, Figures 1 to 16 Any operation or process can be accessed or used Figure 17 and Figure 18 This can be implemented using any of the components shown. It should be understood that other embodiments are not limited to this and can be implemented in a variety of different architectures (e.g., bare metal architecture, any cloud-based architecture or deployment architecture, such as Kubernetes, Docker, OpenStack, etc.).
[0129] The foregoing disclosure provides illustrations and descriptions, but is not intended to be exhaustive or to limit implementations to the precise forms disclosed. Modifications and variations are possible, or can be obtained from the practice of implementation, of the foregoing disclosure.
[0130] Some embodiments may relate to systems, methods, and / or computer-readable media at any possible level of integration technical detail. Furthermore, one or more of the above components may be implemented as instructions stored on a computer-readable medium and executable by at least one processor (and / or may include at least one processor). The computer-readable medium may include (multiple) computer-readable non-transitory storage media having computer-readable program instructions thereon for causing the processor to perform operations.
[0131] Computer-readable storage media can be tangible devices that can retain and store instructions for use by instruction execution devices. Computer-readable storage media can be, for example, but not limited to, electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media includes: portable computer floppy disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable optical disc read-only memory (CD-ROM), digital versatile optical disc (DVD), memory sticks, floppy disks, mechanical encoding devices on which instructions are recorded (such as punched cards or raised structures in recesses), and any suitable combination of the foregoing. As used herein, computer-readable storage media should not be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.
[0132] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to a suitable computing / processing device, or downloaded via a network (e.g., the Internet, a local area network, a wide area network, and / or a wireless network) to an external computer or external storage device. The network may include copper cables, optical fibers, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to a computer-readable storage medium within the suitable computing / processing device.
[0133] Computer-readable program code / instructions used to perform operations can be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, configuration data for an integrated circuit system, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages (such as Smalltalk, C++, etc.) and procedural programming languages (such as the "C" programming language or similar programming languages). Computer-readable program instructions can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer via any type of network (including a local area network (LAN) or a wide area network (WAN)) or can be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, an electronic circuit system (including, for example, a programmable logic circuit system, a field-programmable gate array (FPGA), or a programmable logic array (PLA)) can execute computer-readable program instructions by utilizing state information from the computer-readable program instructions to personalize the electronic circuit system, thereby performing aspects or operations.
[0134] These computer-readable program instructions may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create parts for implementing the functions / actions specified in one or more boxes of a flowchart and / or block diagram. These computer-readable program instructions may also be stored in a computer-readable storage medium that can direct a computer, programmable data processing apparatus, and / or other device to operate in a particular manner, such that the computer-readable storage medium in which the instructions are stored includes an article of writing comprising instructions that implement aspects of the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0135] These computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device, thereby producing a computer-implemented process, such that the instructions that execute on the computer, other programmable apparatus or other device implement the functions / actions specified in one or more boxes of the flowchart and / or block diagram.
[0136] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer-readable media according to various embodiments. In this regard, each box in a flowchart or block diagram may represent one or more microservices, modules, segments, or portions of instructions, including one or more executable instructions for implementing specified logical functions(s). The method, computer system, and computer-readable medium may include additional boxes, fewer boxes, different boxes, or boxes arranged differently compared to those shown in the figures. In some alternative implementations, the functions described in the boxes may not appear in the order shown in the figures. For example, in fact, two boxes shown consecutively may be executed simultaneously or substantially simultaneously, or these boxes may sometimes be executed in reverse order, depending on the functions involved. It will also be noted that each box in the block diagrams and / or flowcharts, and combinations of boxes in the block diagrams and / or flowcharts, may be implemented by a system based on dedicated hardware that performs the specified functions or actions or executes a combination of dedicated hardware and computer instructions.
[0137] It is evident that the systems and / or methods described herein can be implemented in various forms of hardware, firmware, or combinations of hardware and software. The actual dedicated control hardware or software code used to implement these systems and / or methods does not limit these implementations. Therefore, the operation and behavior of these systems and / or methods are described herein without reference to any specific software code. It should be understood that software and hardware can be designed to implement these systems and / or methods based on the descriptions herein.
[0138] Various other corresponding aspects and features of the embodiments of this disclosure may be defined by the following terms: Clause [1] A method comprising: The NF / MnS producer receives streaming requests for streaming topics from the management system / MnS consumer, wherein the streaming topics include at least one of performance metrics and tracking data. The NF / MnS producer sends a notification, including the status of the streaming request, to the management system / MnS consumer based on the streaming request; and The NF / MnS producer sends instructions to the message bus based on the streaming request. Clause [2] According to the method described in Clause [1], The streaming request includes an add streaming topic request, which specifies details about the streaming topic to be added. The status of the streaming request indicates whether the streaming topic was successfully created or whether an error has occurred, and The instructions sent to the message bus are for streaming data transmission. Clause [3] According to the method described in Clause [2], The aforementioned add streaming topic request is an HTTP POST topic request that includes the topic name, number of partitions, and replication factor. If the streaming topic is successfully created, the status of the streaming request includes a streaming topic identifier and the name of the streaming topic. Clause [4] According to the method described in Clause [1], The streaming request includes a delete streaming topic request, which specifies details about the streaming topic to be deleted. The status of the streaming request indicates that the streaming topic has been deleted, and The instruction sent to the message bus is to stop the streaming of data. Clause [5] According to the method described in Clause [4], The deleted streaming topic request mentioned above is an HTTP DELETE topic request that includes a topic identifier. If the streaming topic is successfully deleted, the status of the streaming request includes the streaming topic identifier and the name of the streaming topic. Clause [6] The method described pursuant to Clause [1] further includes: The NF / MnS producer receives a request to establish a cloud streaming configuration. The NF / MnS producer configures its connection to the message bus based on the request to establish the cloud streaming configuration; and The NF / MnS producer sends a notification to the management system / MnS consumer that the cloud streaming configuration has been established. Clause [7] According to the method described in Clause [6], the request to establish the cloud streaming configuration is an HTTP POST request, which includes the name of the NF / MnS producer, the identifier of the NF / MnS producer, bootstrap server information, serialization format and ACK parameter. Clause [8] The method described pursuant to Clause [6] further includes: The NF / MnS producer receives a request to terminate the cloud streaming configuration. The NF / MnS producer terminates the connection with the message bus based on the request to terminate the cloud streaming configuration; and The NF / MnS producer sends a notification to the management system / MnS consumer that the cloud streaming configuration has been terminated. Clause [9] According to the method described in Clause [8], the request to terminate the cloud streaming configuration includes an HTTP delete request, which includes the name of the NF / MnS producer and the identifier of the NF / MnS producer. Clause
[10] The method described pursuant to Clause [6] further includes: The NF / MnS producer receives cloud streaming configuration information requests from the management system / MnS consumer; and The NF / MnS producer sends information about the cloud streaming configuration based on the cloud streaming configuration information request. Clause
[11] The method described pursuant to Clause [1] further includes: The NF / MnS producer receives streaming topic information requests originating from the management system / MnS consumer; and The NF / MnS producer sends information about at least one streaming topic based on the streaming topic information request. Clause
[12] According to the method described in Clause
[11] , the streaming topic information request includes an HTTP GET information request. Clause
[13] The method described pursuant to Clause [3] further includes: The NF / MnS producer receives an HTTP PUT request, including the streaming topic identifier, originating from the management system / MnS consumer. The NF / MnS producer sends a notification to the management system / MnS consumer that the HTTP PUT request has been accepted. The NF / MnS producer sends at least one streaming unit to the message broker based on the HTTP PUT request; and The NF / MnS producer receives a notification from the message broker that the streaming unit has been successfully received. Clause
[14] : The method described in Clause [1], wherein the NF / MnS producer is configured to generate streaming services to the management system / MnS consumer based on the message bus. Clause
[15] : The method described in Clause
[14] may include at least one of the following: management data job control service, message bus-based data streaming service, and message bus-based communication service. Clause
[16] : A Network Function (NF) / Management Service (MnS) producer is configured to: Receive streaming requests for streaming topics from management system / MnS consumers, wherein the streaming topics include at least one of performance metrics and tracking data; Based on the streaming request, send a notification including the status of the streaming request to the management system / MnS consumer; and The instruction is sent to the message bus based on the streaming request. Clause
[17] : NF / MnS producers as described in Clause
[16] , The streaming request includes an add streaming topic request, which specifies details about the streaming topic to be added. The status of the streaming request indicates whether the streaming topic was successfully created or whether an error has occurred, and The instructions sent to the message bus are for streaming data transmission. Clause
[18] : NF / MnS producers as described in Clause
[17] , The aforementioned add streaming topic request is an HTTP POST topic request that includes the topic name, number of partitions, and replication factor. If the streaming topic is successfully created, the status of the streaming request includes a streaming topic identifier and the name of the streaming topic. Clause
[19] : NF / MnS producers as described in Clause
[16] , The streaming request includes a delete streaming topic request, which specifies details about the streaming topic to be deleted. The status of the streaming request indicates that the streaming topic has been deleted, and The instruction sent to the message bus is to stop the streaming of data. Clause
[20] : NF / MnS producers as described in Clause
[19] , The deleted streaming topic request mentioned above is an HTTP DELETE topic request that includes a topic identifier. If the streaming topic is successfully deleted, the status of the streaming request includes the streaming topic identifier and the name of the streaming topic. It is understood that many modifications and variations of this disclosure are possible in light of the foregoing teachings. It will be apparent that this disclosure may be practiced in ways other than those specifically described herein, within the scope of the appended provisions.
Claims
1. A method comprising: A Network Function (NF) / Management Service (MnS) producer receives a streaming request for a streaming topic from a Management System / MnS consumer, wherein the streaming topic includes at least one of performance metrics and trace data. The NF / MnS producer sends a notification, including the status of the streaming request, to the management system / MnS consumer based on the streaming request. as well as The NF / MnS producer sends instructions to the message bus based on the streaming request.
2. The method according to claim 1, The streaming request includes an add streaming topic request, which specifies details about the streaming topic to be added. The status of the streaming request indicates whether the streaming topic was successfully created or whether an error has occurred, and The instructions sent to the message bus are for streaming data transmission.
3. The method according to claim 2, The aforementioned add streaming topic request is an HTTP POST topic request that includes the topic name, number of partitions, and replication factor. If the streaming topic is successfully created, the status of the streaming request includes a streaming topic identifier and the name of the streaming topic.
4. The method according to claim 1, The streaming request includes a delete streaming topic request, which specifies details about the streaming topic to be deleted. The status of the streaming request indicates that the streaming topic has been deleted, and The instruction sent to the message bus is to stop the streaming of data.
5. The method according to claim 4, The deleted streaming topic request mentioned above is an HTTP DELETE topic request that includes a topic identifier. If the streaming topic is successfully deleted, the status of the streaming request includes the streaming topic identifier and the name of the streaming topic.
6. The method according to claim 1, further comprising: The NF / MnS producer receives a request to establish a cloud data streaming configuration. The NF / MnS producer configures the connection with the message bus based on the request to establish the cloud data streaming configuration; as well as The NF / MnS producer sends a notification to the management system / MnS consumer that the cloud data streaming configuration has been established.
7. The method according to claim 6, wherein the request to establish the cloud data streaming configuration is an HTTP POST request, the HTTP POST request including the name of the NF / MnS producer, the identifier of the NF / MnS producer, bootstrap server information, serialization format, and ACK parameter.
8. The method according to claim 6, further comprising: The NF / MnS producer receives a request to terminate the cloud data streaming configuration. The NF / MnS producer terminates the connection with the message bus based on the request to terminate the cloud data streaming configuration. as well as The NF / MnS producer sends a notification to the management system / MnS consumer that the cloud data streaming configuration has been terminated.
9. The method of claim 8, wherein the request to terminate the cloud data streaming configuration includes an HTTP delete request, the HTTP delete request including the name of the NF / MnS producer and the identifier of the NF / MnS producer.
10. The method of claim 6, further comprising: The NF / MnS producer receives cloud data streaming configuration information requests from the management system / MnS consumer. as well as The NF / MnS producer sends information about the cloud data streaming configuration based on the cloud data streaming configuration information request.
11. The method of claim 1, further comprising: The NF / MnS producer receives streaming topic information requests originating from the management system / MnS consumer; as well as The NF / MnS producer sends information about at least one streaming topic based on the streaming topic information request.
12. The method according to claim 11, The streaming topic information request mentioned above includes an HTTP GET information request.
13. The method of claim 3, further comprising: The NF / MnS producer receives an HTTP PUT request, including the streaming topic identifier, originating from the management system / MnS consumer. The NF / MnS producer sends a notification to the management system / MnS consumer that the HTTP PUT request has been accepted. The NF / MnS producer sends at least one streaming unit to the message broker based on the HTTP PUT request; as well as The NF / MnS producer receives a notification from the message broker that the streaming unit has been successfully received.
14. The method of claim 1, wherein the NF / MnS producer is configured to generate streaming services to the management system / MnS consumer based on the message bus.
15. The method of claim 14, wherein the streaming service may include at least one of: a management data job control service, a message bus-based data streaming service, and a message bus-based communication service.
16. A Network Function (NF) / Management Service (MnS) producer, configured as follows: Receive streaming requests for streaming topics from management system / MnS consumers, wherein the streaming topics include at least one of performance metrics and tracking data; Based on the streaming request, send a notification to the management system / MnS consumer including the status of the streaming request; as well as The instruction is sent to the message bus based on the streaming request.
17. The NF / MnS producer according to claim 16, The streaming request includes an add streaming topic request, which specifies details about the streaming topic to be added. The status of the streaming request indicates whether the streaming topic was successfully created or whether an error has occurred, and The instructions sent to the message bus are for streaming data transmission.
18. The NF / MnS producer according to claim 17, The aforementioned add streaming topic request is an HTTP POST topic request that includes the topic name, number of partitions, and replication factor. If the streaming topic is successfully created, the status of the streaming request includes a streaming topic identifier and the name of the streaming topic.
19. The NF / MnS producer according to claim 16, The streaming request includes a delete streaming topic request, which specifies details about the streaming topic to be deleted. The status of the streaming request indicates that the streaming topic has been deleted, and The instruction sent to the message bus is to stop the streaming of data.
20. The NF / MnS producer according to claim 19, The deleted streaming topic request mentioned above is an HTTP DELETE topic request that includes a topic identifier. If the streaming topic is successfully deleted, the status of the streaming request includes the streaming topic identifier and the name of the streaming topic.