End-to-end public land mobile network performance analysis
The distributed probing system in PLMNs addresses the lack of standard end-to-end analysis by correlating network records to identify causative elements and affected devices, enhancing network performance and quality.
Patent Information
- Application Number
- JP2023570134
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-12-09
- Filing Date
- 2021-12-28
- Publication Date
- 2025-04-04
- Estimated Expiration
- 2041-12-28
AI Technical Summary
There is no standard method for performing end-to-end analysis in Public Land Mobile Networks (PLMNs) that associates access network devices and nodes with core network elements, making it challenging to correlate devices with insufficient Key Performance Indicators (KPIs) and Key Quality Indicators (KQIs).
A distributed probing system across all network elements and interfaces collects Call Detail Records (CDRs) and Session Detail Records (SDRs) from both access and core network elements. Algorithms correlate these records to identify sublayer failures and errors, and by aligning communication detail records, the system forms end-to-end sessions to determine causative elements and affected nodes.
The solution enables efficient end-to-end performance analysis of PLMNs, identifying causative elements and affected devices, thereby improving network performance and quality by pinpointing issues within the network.
Smart Images

Figure 0007657326000001 
Figure 0007657326000002 
Figure 0007657326000003
Abstract
Description
[Technical field]
[0001] Priority claims and cross references This application claims priority to Provisional Application No. 63 / 239,374, filed August 31, 2021, and Nonprovisional Application No. 17 / 643,590, filed December 9, 2021, both of which are incorporated by reference in their entireties herein. Background technology Performance analysis of a Public Land Mobile Network (PLMN) is primarily performed by manual effort. Key Performance Indicators (KPIs) and Key Quality Indicators (KQIs) are continuously collected from many different nodes, devices, and other elements involved in network communications. KPIs and KQIs are specific to the node, device, or other element to which they are issued. The PLMN is logically divided into an access network and a core network. Summary of the Invention
[0002] Aspects of the present disclosure are best understood from the following detailed description when read in conjunction with the accompanying drawings. It should be noted that, according to standard practice in the industry, various features have not been drawn to scale. In fact, dimensions of various features may be arbitrarily increased or decreased for clarity of illustration. [Brief description of the drawings]
[0003] [Figure 1] 1 is a schematic diagram of a public land mobile network including an end-to-end public land mobile network performance analysis in accordance with at least one embodiment of the present invention.
[0004] [Diagram 2] 1 is an operational flow for end-to-end public land mobile network performance analysis in accordance with at least one embodiment of the present invention.
[0005] [Diagram 3] 1 is an exemplary communication detail record in accordance with at least one embodiment of the present invention.
[0006] [Figure 4] 1 is an exemplary end-to-end session in accordance with at least one embodiment of the present invention.
[0007] [Diagram 5] 1 is an operational flow for determining causal factors in accordance with at least one embodiment of the present invention.
[0008] [Figure 6] 1 is an operational flow for determining cause groups in accordance with at least one embodiment of the present invention.
[0009] [Figure 7] FIG. 1 is a block diagram of an exemplary hardware configuration for end-to-end public land mobile network performance analysis in accordance with at least one embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] The following disclosure provides many different embodiments or examples for implementing different features of the provided subject matter. To simplify the disclosure, certain examples of components, values, operations, materials, arrangements, and the like are described below. Of course, these are merely examples and are not intended to be limiting. Other components, values, operations, materials, arrangements, and the like are contemplated. In addition, the disclosure may repeat reference numbers and / or letters in various examples. This repetition is for the purposes of brevity and clarity and does not in itself dictate a relationship between the various embodiments and / or configurations described.
[0011] Correlating devices or nodes that exhibit poor KPI and KQI values with the core elements or devices that are responsible is not a simple task: currently, there are no standards to perform end-to-end analysis that correlates access network devices and nodes with the elements of the core network with which they communicated.
[0012] In at least some embodiments, a probing system distributed across all network elements and interfaces (SGi, Uu, S1, S11, S10, S5 / S8, etc.) collects Call Detail Records (CDRs) and Session Detail Records (SDRs) from many network elements in the PLMN, including both from the access network and the core network.
[0013] In at least some embodiments, algorithms and / or modules that correlate network CDRs and SDRs in raw communication logs, including service signaling flows from LTE network devices and front-end and back-end elements, are configured to identify lower layer failures, such as signaling message failures, in many network nodes, such as cores, nodes, eNBs, MMEs, S / PGWs, HSSs, PCRFs, OCSs, EIRs, CSCFs, and correlate error, failure, and up normal events in protocol stacks, such as RRC, S1AP, GTPvC, Diameter, SIP, etc., generated by network devices in communication interfaces with subsequent messages by ECGI / eNBs to identify affected nodes, affected cores (MMEs, S / PGWs, HSSs, OCSs, EIRs, CSCFs, PCRFs, etc.), and affected devices (subscriber IMSIs and handsets). In at least some embodiments, error and failure events in nodes and communication interfaces are logically indexed, labeled, and segregated based on timestamps and message flow sequences.
[0014] In at least some embodiments, the probing system includes mirroring components that are constructed in the radio access network such that each mirroring component is located in a single monitored element, including the RAN, EPC, and IMS interfaces. In at least some embodiments, the mirroring components passively pull data from each monitored element using a protocol such as Transmission Control Protocol (TCP).
[0015] In at least some embodiments, the monitoring system maintains communication logs from subscriber activities, such as call records. In at least some embodiments, call records are unstructured data that include messages exchanged by network devices during mobile communications initiated by the subscriber. In at least some embodiments, the monitoring system aggregates these records into Call Detail Records (CDRs) and Session Detail Records (SDRs), which are structured logs that include a list of network devices and service details involved in the mobile communications. In at least some embodiments, a matrix of CDRs and SDRs is generated to align the end-to-end communications and create one index per session with a unique session identifier.
[0016] 1 is a schematic diagram of a public mobile land network including an end-to-end public mobile land network performance analysis in accordance with at least one embodiment of the present invention. The diagram includes a number of terminals, such as terminal 120, a number of nodes, such as node 122, a number of core elements, such as core element 124, and an apparatus 100.
[0017] Each terminal of the plurality of terminals, such as terminal 120, is a device operated by a user or group of users that communicates with the radio access network through the plurality of nodes. In at least some embodiments, the plurality of terminals includes devices with limited computational resources, such as smart watches, fitness trackers, Internet of Things (IoT) devices, and devices with computational resources for a broader range of capabilities, such as smartphones, tablets, and personal computers. In at least some embodiments, each terminal of the plurality of terminals is identified by an International Mobile Equipment Identity (IMEI). A portion of the IMEI identifies the make and model of the terminal. The plurality of terminals communicate with the plurality of nodes through the terminal-node plane 130. In at least some embodiments, the terminal-node plane 130 includes a control plane, such as a radio resource control (RRC) plane, and a user plane, such as a Uu plane.
[0018] Each node of the plurality of nodes, such as node 122, is a wireless communication access point for terminals to communicate with a radio access network. In at least some embodiments, the plurality of nodes includes terrestrial nodes, satellite nodes, femtocell nodes, etc. In at least some embodiments, the plurality of nodes includes nodes operating under 4G standards, such as eNB nodes, 5G standards, such as gNB nodes. In at least some embodiments, each node of the plurality of nodes is identified by an E-UTRAN Cell Global Identifier (ECGI), an eNB identifier, a gNB identifier, or any other radio access node identification string. The plurality of nodes communicate with a plurality of core elements via a node-core plane 132. In at least some embodiments, the node-core plane includes a control plane, such as an S1AP plane, an S1-MME plane, and a user plane, such as an S1-U plane.
[0019] Each core element of the plurality of core elements, such as core element 124, is a server through which the plurality of terminals communicate with each other and with the Internet. In at least some embodiments, the plurality of core elements includes a mobility management entity (MME), a serving gateway (SGW), a packet gateway (PGW), a home subscriber server (HSS), an online charging system (OCS), an equipment identity register (EIR), a call session control function (CSCF), a policy and charging rules function (PCRF), and the like. The plurality of core elements communicate with other core elements via a core-core plane 134. In at least some embodiments, the core-core plane includes a control plane, such as an S10 plane, an S11 plane, an SGi plane, and a user plane, such as an S5 / S8 plane.
[0020] In at least some embodiments, each node of the plurality of nodes and each core element of the plurality of core elements is paired with a mirroring component. In at least some embodiments, each mirroring component is configured to store communication detail records generated and received by the corresponding node or corresponding core element, and further configured to transmit the communication detail records upon request to the device 100. In at least some embodiments, each mirroring component is configured to relay the communication detail records to the device 100 upon generation and reception by the corresponding node or corresponding core element. In at least some embodiments, each mirroring component is a hardware unit having a controller including hard-coded or soft-coded instructions, or a software unit such as a virtual machine executed in parallel with other virtual machines by the corresponding node or corresponding core element. In at least some embodiments, multiple mirroring components are distributed in the public land mobile network. In at least some embodiments, the multiple mirroring components are configured to copy and sort the original communication detail records and forward the communication detail records to a data mediator or other physical server over a retention period, such as seven days. In at least some embodiments, a mirroring component is coupled to each network node as part of the basic structure of the public mobile land network. In at least some embodiments, the plurality of mirroring components are configured to provide an unaltered copy of the original communication detail record, hi at least some embodiments, the plurality of mirroring components are configured to add information for aligning the communication detail record to form an end-to-end session.
[0021] The apparatus 100 is configured to perform an end-to-end radio access network performance analysis of a public land mobile network. In at least some embodiments, the apparatus 100 is in direct or indirect communication with a plurality of nodes and a plurality of core elements. In at least some embodiments, the apparatus 100 is in communication with a plurality of mirroring components, each of which is configured to transmit communication detail records from a corresponding node or core element to the apparatus 100. In at least some embodiments, the apparatus 100 is a personal computer, server, mainframe, etc., that includes instructions executed by a controller to perform the end-to-end radio access network performance analysis.
[0022] 2 is an operational flow of end-to-end public land mobile network performance analysis in accordance with at least one embodiment of the present invention. The operational flow provides a method of end-to-end public land mobile network performance analysis. In at least some embodiments, the method is performed by a controller of an apparatus that includes sections for performing certain operations, such as the controller and apparatus shown in FIG. 7 and described below.
[0023] At S240, the collection section or a subsection thereof collects communication detail records. In at least some embodiments, the collection section collects a plurality of communication detail records from the public land mobile network, the plurality of communication detail records including a plurality of terminal-node records, a plurality of node-core records, and a plurality of core-core records. Each communication detail record includes information representative of at least a time, a requested element, and a responded element. In at least some embodiments, the collection section collects communication detail records from a plurality of node and a plurality of core elements of the public land mobile network.
[0024] In at least some embodiments, the collection section retrieves communication detail records from a plurality of mirroring components. In at least some embodiments, the collection section distributes a plurality of mirroring components to the public land mobile network, with each mirroring component storing communication detail records generated and received by one of the requesting and responding elements. In at least some embodiments, the collection section collects all communication detail records used for an instance of end-to-end public land mobile network performance analysis at a given time. In at least some embodiments, the collection section collects communication detail records as they are transmitted. In at least some embodiments, the plurality of terminal-node records are transmitted over at least one of the RRC plane and the Uu plane, the plurality of node-core records are transmitted over at least one of the S1AP plane and the S1U plane, and the plurality of core-core records are transmitted over at least one of the S5 / S8 plane, the S6 plane, the S10 plane, the S11 plane, the Gx plane, the Rx plane, and the SGi plane.
[0025] At S250, the sorting section or a subsection thereof sorts the communication detail records to form an end-to-end session. In at least some embodiments, the sorting section sorts consecutive communication detail records of the plurality of communication detail records to form one or more end-to-end sessions, where each end-to-end session includes at least one terminal-node record, at least one node-core record, and at least one core-core record. In at least some embodiments, the sorting section sorts the plurality of communication detail records by time. In at least some embodiments, the sorting section determines, from among the time-sorted communication detail records, a plurality of communication detail records having the same time and identifying the same element. In at least some embodiments, the sorting section is configured to start with a communication detail record identifying a terminal and a node, proceed to find a communication detail record having the same time and identifying the same node and core element, and continue in the same manner until no further consecutive communication detail records can be found. In at least some embodiments, the sorting section repeats this procedure for each communication detail record identifying a terminal and a node. In at least some embodiments, the signal flow between the terminal, the node and the core element is sequential, which means that each communication detail record has a unique timestamp. In at least some embodiments, the alignment section determines a correlation key for identifying consecutive communication detail records that form one end-to-end session. In at least some embodiments, the correlation key includes a timestamp and an IMSI.
[0026] At S242, the determination section or a subsection thereof excludes from consideration end-to-end sessions for which no communication detail records containing errors exist, in at least some embodiments, the determination section proceeds only with end-to-end sessions containing errors to determine causal and affected elements.
[0027] In S260, the determination section or a subsection thereof determines one or more causal elements of the error indicated in the communication detail record. In at least some embodiments, the determination section determines a causal element included in the communication detail record that is involved in many end-to-end sessions that include errors even though the causal element does not have errors. In at least some embodiments, by analyzing the end-to-end sessions, the determination section can determine that many errors occur downstream of the causal element, even though the causal element may not issue a communication detail record that has errors.
[0028] 3 is an exemplary communication detail record in accordance with at least one embodiment of the invention. The exemplary communication detail record includes a terminal-to-node record 330, a node-to-core record 332, and a core-to-core record 334.
[0029] Terminal-node record 330 is a detailed record of a single communication between a terminal and a node. In at least some embodiments, terminal-node record 330 was generated by the node identified in terminal-node record 330, or a mirroring component thereof. Terminal-node record 330 includes the date of the communication, the time of the communication, a terminal identifier, a node identifier, an error description, and a signal plane. Terminal-node record 330 includes a date of July 9, 2021, and a time of 14:12.
[0030] The terminal-node record 330 includes a Type Allocation Code (TAC) as a terminal identifier, which identifies the manufacturer and model of the terminal. In at least some embodiments, the terminal-node record includes an IMEI to identify a particular terminal, an International Mobile Subscriber Identifier (IMSI) to identify a user, or other terminal identifier. The terminal-node record 330 includes an ECGI as a node identifier used to identify a 4G LTE node. In at least some embodiments, the terminal-node record includes a New Radio Cell Global Identifier (NCGI) or other node identifier that may change with technology generations. The terminal-node record 330 includes an error description of "NONE," which in at least some embodiments indicates that no errors occurred that were detectable by the node identified in the terminal-node record 330. The terminal-node record 330 includes "RRC" as the signal plane used for communication.
[0031] Node-core record 332 is a detailed record of a single communication between a node and a core element. In at least some embodiments, node-core record 332 was generated by the node identified in node-core record 332 or its mirroring component. Node-core record 332 includes the date of the communication, the time of the communication, the node identifier, the core element identifier, an error description, and the signal plane. Node-core record 332 includes a date of July 9, 2021, and a time of 14:12.
[0032] The node-core record 332 includes an ECGI as a node identifier used to identify a 4G LTE node. In at least some embodiments, the node-core record includes a New Radio Cell Global Identifier (NCGI) or other node identifier, which may change with technology generations. The node-core record 332 includes an MME Code (MMEC) as a core element identifier that identifies the core element as a particular MME server. In at least some embodiments, the node-core record includes other types of core element identifiers, which may change with technology generations. The node-core record 332 includes an error description of "NONE," which in at least some embodiments indicates that no errors occurred that were detectable by the node identified in the node-core record 332. The node-core record 332 includes "S1AP" as the signal plane used for communication.
[0033] Core-core record 334 is a detailed record of a single communication between core elements. In at least some embodiments, core-core record 334 was generated by the core element identified in core-core record 334, or its mirroring component. Core-core record 334 includes the date of the communication, the time of the communication, two core element identifiers, an error description, and the signal plane. Core-core record 334 includes a date of July 9, 2021 and a time of 14:12.
[0034] The core-core record 334 includes an Internet Protocol (IP) address as a first core element identifier that identifies the core element by its logical network location. The core-core record 334 includes a PGW identifier as a second core element identifier that identifies the core element as a particular PGW server. In at least some embodiments, the core-core record includes other types of core element identifiers that may change with technology generations. The core-core record 334 includes an error description of "500 INTERNAL," which in at least some embodiments indicates that an error occurred in retrieving information via the HTTP portal. The core-core record 334 includes "SGi" as the signal plane used for communication.
[0035] 4 is an exemplary end-to-end session 436 in accordance with at least one embodiment of the present invention. In at least some embodiments, the end-to-end session 436 was generated by an aligned section of an apparatus, such as the apparatus shown in FIG. 7, described below.
[0036] The end-to-end session 436 includes a date of the session, a time of the session, a session identifier, and a list of communications involved in the session. In at least some embodiments, the list of communications involved in the session includes relevant information from the communication detail records on which the information is based. The end-to-end session 436 includes a list of communications, with each communication in the list indicating a type of communication, a first endpoint, a second endpoint, and an error description. In at least some embodiments, the end-to-end session 436 is generated by arranging communication detail records, including the terminal-node record 330, the node-core record 332, and the core-core record 334 shown in FIG. 3. For example, the first row of the list of communications included in the session indicates "RRC" as the type of communication, "UE:35967609" as the first endpoint, "ECGI:4401171352838" as the second endpoint, and "NONE" as the error description, all of which correspond to indications in the terminal-node record 330 shown in FIG. 3. End-to-end session 436 includes a date of July 9, 2021 and a time of 14:12, which corresponds to all of the example communication detail records shown in FIG. 3.
[0037] In at least some embodiments, the end-to-end session 436 includes a complete list of communication detail records corresponding to a single session based on time and sequence of endpoints involved. Each communication detail record in the list after the first communication detail record includes common endpoints with the previous communication detail record, which together create a logical sequence of communications for a single session. To establish the complete sequence, the end-to-end session 436 includes two more communication detail records in addition to the terminal-node record 330, node-core record 332, and core-core record 334 shown in FIG. 3. In at least some embodiments, an end-to-end session may include more or less communications than those in the end-to-end session 436.
[0038] In at least some embodiments, aligning the communication detail records into a complete end-to-end session, such as end-to-end session 436, aids in more efficient analysis of the performance of a PLMN. For example, communication detail record 334 shown in FIG. 3 indicates an error, but only shows "PGW:X-S5-GTP" as the first endpoint and "IP:207.132.64.90" as the second endpoint as involved in the communication, with no indication of further affected elements. However, end-to-end session 436 shows all other elements involved in end-to-end session 436, including affected terminal model "35967609" and affected node "4401171352838". In at least some embodiments, the end-to-end session indicates a specific affected terminal and / or affected subscriber.
[0039] 5 is an operational flow for determining causal factors in accordance with at least one embodiment of the present invention. The operational flow provides a method for determining causal factors. In at least some embodiments, the method is performed by a determination section, such as the determination section shown in FIG. 7, described below.
[0040] In S561, the determining section or a subsection thereof sums the end-to-end sessions remaining after the error-free end-to-end sessions are removed. In at least some embodiments, the determining section sums, for each of the requesting and responding elements represented in the plurality of communication detail records, the number of end-to-end sessions of the one or more end-to-end sessions that include the respective element and an error indication. In at least some embodiments, the determining section sums the end-to-end sessions for each of the elements identified in the end-to-end session. In at least some embodiments, the determining section prepares a sum for each terminal, each node, and each core element. In at least some embodiments, the determining section increments the sum for a given terminal, node, or core element by one for each end-to-end session that includes an error associated with any communication in the end-to-end session.
[0041] At S562, the decision section or a subsection thereof organizes the elements identified in the end-to-end session by their corresponding totals. In at least some embodiments, the decision section organizes the elements to more easily identify elements associated with a larger number of errors. In at least some embodiments, the decision section organizes the elements in order from highest to lowest total.
[0042] At S563, the determination section or a subsection thereof identifies elements identified in the end-to-end session that caused one or more errors in the end-to-end session. In at least some embodiments, the determination section identifies causal elements among the requesting and responding elements based on the number of end-to-end sessions that include the respective elements and error indications. In at least some embodiments, the determination section determines that a node or core element is a causal element based on the node or core element being associated with a number of errors in communication of end-to-end sessions involving the node or core element. In at least some embodiments, the determination section places the element with the highest total in a chart for review by a technician. In at least some embodiments, the technician performs further analysis to determine the causal element or elements.
[0043] At S564, the determining section or subsections thereof identify one or more affected elements. In at least some embodiments, the determining section or subsections thereof identify one or more affected elements for each causal element. In at least some embodiments, the determining section or subsections thereof identify, for each causal element among the requesting elements and the responding elements, one or more affected elements among the requesting elements and the responding elements based on end-to-end sessions that include the causal element. In at least some embodiments, the determining section determines one or more terminals and / or nodes affected by the causal element based on such terminals and nodes being associated with a number of communications in end-to-end sessions involving the causal element. In at least some embodiments, the determining section configures the chart to further include, for each element, a total and a most affected element. In at least some embodiments, the determining section arranges the causal elements in the chart, where each causal element is ordered with the number of end-to-end sessions among the one or more end-to-end sessions that include the causal element and the error indication, and with one or more affected elements.
[0044] 6 is an operational flow for determining a cause group in accordance with at least one embodiment of the present invention. The operational flow provides a method for determining a cause group. In at least some embodiments, the method is performed by a determination section, such as the determination section shown in FIG. 7, described below.
[0045] In S666, the determination section or a subsection thereof classifies terminals among the terminals identified in the end-to-end session into one or more groups based on terminal type, terminal model, and terminal operating system (OS). In at least some embodiments, the determination section classifies terminal elements among the requested elements and the responded elements into one or more type groups, one or more model groups, and one or more operating system groups, where each terminal element is classified into one of each of one or more type groups, one or more model groups, and one or more operating system groups. In at least some embodiments, the determination section classifies all terminals manufactured by OPPO into the same terminal type group. In at least some embodiments, the determination section classifies all PIXEL 4 terminals into the same terminal model group. In at least some embodiments, the determination section classifies all terminals running iOS into the same terminal-OS group.
[0046] At S667, the determining section or a subsection thereof sums, for each group, the end-to-end sessions remaining after the error-free end-to-end sessions are removed. In at least some embodiments, the determining section sums, for each group of the one or more type groups, the one or more model groups, the number of end-to-end sessions of the one or more end-to-end sessions that include a terminal element and an error indication for the respective group. In at least some embodiments, the determining section prepares a sum for each terminal type group, each terminal model group, and each terminal OS group. In at least some embodiments, the determining section increments the sum for the appropriate terminal type group, terminal model group, and terminal OS group by one for each end-to-end session that includes an error associated with any communication within the end-to-end session.
[0047] At S668, the decision section or a subsection thereof orders the groups by their corresponding sums. In at least some embodiments, the decision section orders the groups to more easily identify groups associated with a larger number of errors. In at least some embodiments, the decision section orders the groups by highest sum.
[0048] At S669, the determining section or subsection thereof identifies one or more affected groups. In at least some embodiments, the determining section or subsection identifies one or more affected groups for each causal element. In at least some embodiments, the determining section identifies causal groups among one or more type groups, one or more model groups, and one or more operating system groups based on the number of end-to-end sessions and error indications that include elements of the respective groups. In at least some embodiments, the determining section determines one or more groups affected by a causal element based on such groups being associated with a large number of communications in end-to-end sessions involving the causal element. In at least some embodiments, the determining section prepares a chart including the causal elements with the highest totals to further include, for each causal element, a total and a most affected group.
[0049] FIG. 7 is a block diagram of an exemplary hardware configuration for end-to-end public land mobile network performance analysis in accordance with at least one embodiment of the present invention.
[0050] This exemplary hardware configuration has an apparatus 700 in communication with a network 779, a core element 724, a node 722, and a terminal 720, and interacting with an input device 777. In at least some embodiments, the apparatus 700 is a computer or other computing device that receives input or commands from the input device 777. In at least some embodiments, the apparatus 700 is a host server that connects directly to the input device 777 or indirectly through the network 779. In at least some embodiments, the apparatus 700 is a computer system that includes two or more computers. In at least some embodiments, the apparatus 700 is a personal computer that runs applications for a user of the apparatus 700.
[0051] The device 700 includes a controller 772, a storage unit 774, a communication interface 778, and an input / output interface 776. In at least some embodiments, the controller 772 includes a processor or programmable circuit. The processor or programmable circuit executes instructions to cause the device to perform operations according to the instructions. In at least some embodiments, the controller 772 includes analog or digital programmable circuitry, or any combination thereof. In at least some embodiments, the controller 772 includes physically separate storage devices or circuits that interact through communication. In at least some embodiments, the storage unit 774 includes a non-volatile computer readable medium that can store executable and non-executable data for the controller 772 to access during execution of instructions. The communication interface 778 transmits and receives data to and from a network 779. The input / output interface 776 connects various input / output units via parallel ports, serial ports, keyboard ports, mouse ports, monitor ports, etc., to accept commands and present information.
[0052] The controller 772 includes a collection section 782, an alignment section 784, and a determination section 786. The storage unit 774 includes communication detail records 792, alignment parameters 794, element details 796, and end-to-end (E2E) sessions 798.
[0053] The collection section 782 is circuitry or instructions of the controller 772 configured to collect communication detail records. In at least some embodiments, the collection section 782 is configured to collect communication detail records from multiple nodes and multiple core elements of the public land mobile network or retrieve communication detail records from mirroring components thereof. In at least some embodiments, the collection section 782 records information such as information present in the communication detail records 792 in the storage unit 774. In at least some embodiments, the collection section 782 has subsections for performing additional functions as described in the flow charts above. In at least some embodiments, such subsections may be referenced by names associated with their functions.
[0054] The alignment section 784 is a circuit or instruction of the controller 772 configured to align the communication detail records to form an end-to-end session. In at least some embodiments, the alignment section 784 is configured to align consecutive communication detail records to form one or more end-to-end sessions, where each end-to-end session includes at least one terminal-node record, at least one node-core record, and at least one core-core record. In at least some embodiments, the alignment section 784 utilizes information in the storage unit 774, such as the communication detail records 792 and alignment parameters 794, and records information in the storage unit 774, such as information that was present in the end-to-end session 798. In at least some embodiments, the alignment section 784 has subsections for performing additional functions, as described in the flow charts above. In at least some embodiments, such subsections may be referenced by names associated with their functions.
[0055] The determining section 786 is circuitry or instructions of the controller 772 configured to determine one or more causal elements of the error indicated in the communication detail record. In at least some embodiments, the determining section 786 is configured to identify elements identified in the end-to-end session that are the cause of one or more errors in the end-to-end session, and further to identify, for each causal element, one or more affected elements. In at least some embodiments, the determining section 786 utilizes information in the storage unit 774, such as the element details 796 and the end-to-end session 798. In at least some embodiments, the determining section 786 has subsections for performing additional functions, as described in the flow diagrams above. In at least some embodiments, such subsections may be referenced by names associated with their functions.
[0056] In at least some embodiments, the apparatus is another device capable of processing logical functions to perform the operations herein. In at least some embodiments, the controller and the storage unit need not be completely separate devices, and in some embodiments share circuitry or one or more computer-readable media. In at least some embodiments, the storage unit has a hard drive that stores both computer-executable instructions and data accessed by the controller, and the controller has a combination of a central processing unit (CPU) and RAM, and the computer-executable instructions can be copied in whole or in part for execution by the CPU during performance of the operations herein.
[0057] In at least some embodiments where the apparatus is a computer, a program installed on the computer can cause the computer to function as an apparatus of the embodiments described herein or to perform operations associated with the apparatus of the embodiments described herein, and in at least some embodiments, such a program is executable by a processor to cause the computer to perform certain operations associated with some or all of the blocks of the flowcharts and block diagrams described herein.
[0058] Various embodiments of the invention are described with reference to flow charts and block diagrams, where the blocks may represent (1) steps of a process in which an action is performed, or (2) sections of a controller responsible for performing an action. Particular steps and sections are implemented by dedicated circuitry, programmable circuitry provided with computer readable instructions stored on a computer readable medium, and / or a processor provided with computer readable instructions stored on a computer readable medium. In some embodiments, the dedicated circuitry includes digital and / or analog hardware circuitry, and may include integrated circuits (ICs) and / or discrete circuits. In some embodiments, the programmable circuitry includes reconfigurable hardware circuitry, such as field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), etc., that include logical AND, OR, XOR, NAND, NOR, and other logic operations, flip-flops, registers, memory elements, and the like.
[0059] Various embodiments of the invention include systems, methods, and / or computer program products. In some embodiments, the computer program product includes a computer readable storage medium (or media) having computer readable program instructions for causing a processor to perform aspects of the invention.
[0060] In some embodiments, a computer-readable storage medium includes a tangible device that can hold and store instructions for use by an instruction execution device. In some embodiments, a computer-readable storage medium includes, but is not limited to, for example, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. A non-exhaustive list of more specific examples of computer-readable storage media includes portable computer diskettes, hard disks, random access memories (RAMs), read-only memories (ROMs), erasable programmable read-only memories (EPROMs or flash memories), static random access memories (SRAMs), portable compact disk read-only memories (CD-ROMs), digital versatile disks (DVDs), memory sticks, floppy disks, mechanically encoded devices such as punch cards or raised structures with instructions recorded in grooves, and any suitable combinations of the above. As used herein, computer-readable storage media should not be interpreted as being transitory signals per se, such as electric waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., light pulses passing through a fiber optic cable), or electrical signals transmitted through wires.
[0061] In some embodiments, the computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to the respective computing / processing device or to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. In some embodiments, the network can include copper transmission cables, optical transmission fiber, 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 the computer-readable program instructions for storage in a computer-readable storage medium in the respective computing / processing device.
[0062] In some embodiments, the computer readable program instructions for performing the above-described operations are either assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages. Programming languages include object-oriented programming languages such as Smalltalk, C++, and traditional procedural programming languages such as the "C" programming language or similar programming languages. In some embodiments, the computer readable program instructions run entirely on the user's computer, partially on the user's computer, or partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server, as a standalone software package. In some embodiments, in the latter scenario, the remote computer may 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 a connection to an external computer may be made (e.g., via the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA) performs aspects of the invention by executing computer readable program instructions and using state information of the computer readable program instructions to adapt the electronic circuitry.
[0063] Although the embodiments of the present invention have been described above, the technical scope of the invention described in the claims is not limited to the scope described in the above embodiments. It is clear to those skilled in the art that various modifications and improvements can be made to the above embodiments. It is clear from the claims that embodiments with such modifications or improvements can also be included in the technical scope of the present invention.
[0064] It should be noted that the order of operations, procedures, steps, stages, and other processes in the devices, systems, programs, and methods shown in the claims, embodiments, and drawings is not explicitly stated as "before" or "prior to," and that the processes may be performed in any order as long as the output of a previous process is not used in a subsequent process. Even if the operational flow in the claims, embodiments, and drawings is described using "first," "next," and the like for convenience, this does not mean that the processes must be performed in this order.
[0065] In accordance with at least one embodiment of the present invention, the end-to-end PLMN performance analysis is performed by collecting a plurality of communication detail records from a public land mobile network, the plurality of communication detail records including a plurality of terminal-node records, a plurality of node-core records, and a plurality of core-core records, each communication detail record including information representative of at least a time, a requesting element, and a responding element; aligning consecutive communication detail records of the plurality of communication detail records to form one or more end-to-end sessions, each end-to-end session including at least one terminal-node record, at least one node-core record, and at least one core-core record; for each element of the requesting element and the responding element represented in the plurality of communication detail records, summing a number of end-to-end sessions including the respective element and an error indication among the one or more end-to-end sessions; and identifying a causal element of the requesting element and the responding element based on the number of end-to-end sessions including the respective element and an error indication.
[0066] Some embodiments include instructions in a computer program, a method implemented by a processor executing the instructions of the computer program, and an apparatus for implementing the method. In some embodiments, the apparatus includes a controller including circuitry configured to perform operations in the instructions.
[0067] The above outlines features of some embodiments so that those skilled in the art may better understand aspects of the present disclosure. It should be appreciated that those skilled in the art may readily use this disclosure as a basis for designing or modifying other processes and structures for carrying out the same purposes and / or achieving the same advantages of the embodiments introduced herein. Those skilled in the art should also appreciate that such equivalent constructions do not depart from the spirit and scope of the present disclosure, and that various changes, substitutions, and alterations can be made herein without departing from the spirit and scope of the present disclosure.
Claims
1. A computer program for causing a computer to perform an operation, the operation comprising: collecting a plurality of communication detail records from a public land mobile network, the plurality of communication detail records including a plurality of terminal-node records, a plurality of node-core records, and a plurality of core-core records, each of the communication detail records including information representative of at least a time, a requested element, and a responded element; arranging consecutive communication detail records of the plurality of communication detail records to form one or more end-to-end sessions, each of the end-to-end sessions including at least one terminal-node record, at least one node-core record, and at least one core-core record; for each of the requested and responded elements represented in the plurality of communication detail records, counting a number of end-to-end sessions including each of the requested and responded elements and an error indication among the one or more end-to-end sessions; identifying a causative element among the requesting element and the responding element based on a number of the end-to-end sessions including each of the elements and the error indication; A computer program comprising:
2. The operation comprises: classifying terminal elements of the requesting element and the responding element into one or more type groups, one or more model groups, and one or more operating system groups, each of the terminal elements being classified into one of the one or more type groups, the one or more model groups, and the one or more operating system groups; for each of the one or more type groups, the one or more model groups, and the one or more operating system groups, counting a number of the one or more end-to-end sessions that include terminal elements of the respective group and error indications among the one or more end-to-end sessions; identifying cause groups among the one or more type groups, the one or more model groups, and the one or more operating system groups based on the elements of each of the groups and the number of the end-to-end sessions that include the error indication; The computer program product of claim 1 , further comprising:
3. The plurality of terminal-node records are transmitted via at least one of an RRC plane and a Uu plane; The plurality of node-core records are transmitted via at least one of an S1AP plane and an S1U plane; The plurality of core-core records are transmitted over at least one of an S5 / S8 plane, an S6 plane, an S10 plane, an S11 plane, a Gx plane, an Rx plane, and an SGi plane.
2. The computer program product of claim 1.
4. The computer program product of claim 1 , wherein the collecting comprises retrieving communication detail records from a plurality of mirroring components.
5. The computer program product of claim 4, wherein the operations further include distributing the plurality of mirroring components to the public land mobile network, each of the mirroring components being a hardware or software unit configured to store communication detail records generated and received by one of the requesting element and the responding element.
6. The operation comprises: for each causal element among the requesting element and the responding element, identifying one or more affected elements among the requesting element and the responding element based on the end-to-end session that includes the causal element; arranging the causal elements in a chart, each of the causal elements being arranged with a number of the one or more end-to-end sessions that include the causal element and an error indication, and the one or more affected elements; The computer program product of claim 1 , further comprising:
7. The computer program product of claim 1 , wherein said ordering further comprises sorting said plurality of communication detail records by time.
8. A computer-implemented method comprising: collecting a plurality of communication detail records from a public land mobile network, the plurality of communication detail records including a plurality of terminal-node records, a plurality of node-core records, and a plurality of core-core records, each of the communication detail records including information representative of at least a time, a requested element, and a responded element; arranging consecutive communication detail records of the plurality of communication detail records to form one or more end-to-end sessions, each of the end-to-end sessions including at least one terminal-node record, at least one node-core record, and at least one core-core record; for each of the requested and responded elements represented in the plurality of communication detail records, counting a number of end-to-end sessions including each of the requested and responded elements and an error indication among the one or more end-to-end sessions; identifying a causative element among the requesting element and the responding element based on a number of the end-to-end sessions including each of the elements and the error indication; A method comprising:
9. classifying terminal elements of the requesting element and the responding element into one or more type groups, one or more model groups, and one or more operating system groups, each of the terminal elements being classified into one of the one or more type groups, the one or more model groups, and the one or more operating system groups; for each of the one or more type groups, the one or more model groups, and the one or more operating system groups, counting a number of the one or more end-to-end sessions that include terminal elements of the respective group and error indications among the one or more end-to-end sessions; identifying cause groups among the one or more type groups, the one or more model groups, and the one or more operating system groups based on the number of end-to-end sessions including elements of each of the groups and the error indication; The method of claim 8 further comprising:
10. The plurality of terminal-node records are transmitted via at least one of an RRC plane and a Uu plane; The plurality of node-core records are transmitted via at least one of an S1AP plane and an S1U plane; The plurality of core-core records are transmitted over at least one of an S5 / S8 plane, an S6 plane, an S10 plane, an S11 plane, a Gx plane, an Rx plane, and an SGi plane. The method according to claim 8.
11. The method of claim 8 , wherein said collecting comprises retrieving communication detail records from a plurality of mirroring components.
12. 12. The method of claim 11, further comprising distributing a plurality of mirroring components to the public land mobile network, each of the mirroring components being a hardware or software unit configured to store communication detail records generated and received by one of the requesting element and the responding element.
13. for each causal element among the requesting element and the responding element, identifying one or more affected elements among the requesting element and the responding element based on the end-to-end session that includes the causal element; arranging the causal elements in a chart, each of the causal elements being arranged with a number of the one or more end-to-end sessions that include the causal element and an error indication, and the one or more affected elements; The method of claim 8 further comprising:
14. The method of claim 8 , wherein said ordering further comprises sorting said plurality of communication detail records by time.
15. An apparatus comprising: The apparatus comprises: collecting a plurality of communication detail records from a public land mobile network, the plurality of communication detail records including a plurality of terminal-node records, a plurality of node-core records, and a plurality of core-core records, each of the communication detail records including information representative of at least a time, a requested element, and a responded element; arranging consecutive communication detail records of the plurality of communication detail records to form one or more end-to-end sessions, each of the end-to-end sessions including at least one terminal-node record, at least one node-core record, and at least one core-core record; for each of the requested and responded elements represented in the plurality of communication detail records, counting a number of end-to-end sessions including each of the requested and responded elements and an error indication among the one or more end-to-end sessions; identifying a causative element among the requesting element and the responding element based on each of the elements and the number of the end-to-end sessions that include the error indication; An apparatus configured to:
16. The apparatus comprises: classifying terminal elements of the requesting element and the responding element into one or more type groups, one or more model groups, and one or more operating system groups, each of the terminal elements being classified into one of the one or more type groups, the one or more model groups, and the one or more operating system groups; for each of the one or more type groups, the one or more model groups, and the one or more operating system groups, counting a number of the one or more end-to-end sessions that include terminal elements and error indications of the respective group among the one or more end-to-end sessions; identifying cause groups among the one or more type groups, the one or more model groups, and the one or more operating system groups based on the number of end-to-end sessions including elements of each of the groups and the error indication; The apparatus of claim 15 , further configured to:
17. The plurality of terminal-node records are transmitted via at least one of an RRC plane and a Uu plane; The plurality of node-core records are transmitted via at least one of an S1AP plane and an S1U plane; The plurality of core-core records are transmitted over at least one of an S5 / S8 plane, an S6 plane, an S10 plane, an S11 plane, a Gx plane, an Rx plane, and an SGi plane.
16. The apparatus of claim 15.
18. The apparatus of claim 15 , wherein the collecting comprises retrieving communication detail records from a plurality of mirroring components.
19. The apparatus of claim 18, wherein the apparatus is further configured to distribute the plurality of mirroring components to the public land mobile network, each of the mirroring components being a hardware or software unit configured to store communication detail records generated and received by one of the requesting element and the responding element.
20. The apparatus comprises: for each causal element among the requesting element and the responding element, identifying one or more affected elements among the requesting element and the responding element based on the end-to-end session that includes the causal element; arranging the causal factors in a chart, each of the causal factors being arranged with a number of the one or more end-to-end sessions that contain the causal factor and an error indication, and the one or more affected factors; The apparatus of claim 15 , further configured to:
Citation Information
Patent Citations
Method for deciphering captured data packet, method for deciphering data in LTE network, method for identifying deciphering data during handover, method for identifying deciphering data during idle mode mobility, and method for correlating user equipment identifiers to captured messages
JP2012134975A
Method and apparatus for network analysis
JP2014508469A
Impact range identifying program, impact range identifying method, and impact range identifying device
JP2019121863A
Electronic apparatus and method for controlling thereof
US20200305107A1
Unified monitoring control system and network system
WO2005036835A1