Abstract: The disclosed system and method facilitate the assigning of unique clear codes to a call flow, which helps in faster debugging and shorter turnaround time. The clear codes along with required information are written in a file in a predefined notation format. The file contains description of all the cause codes and event codes reported to its module by different network functions. The file provides useful information to analyse an exact root cause of errors occurring in a network element. Further, the clear codes are used to identify key successful events during execution of a process to store all these data into an external data representation (XDR) file. These files may then be fetched by a node periodically to perform further analysis. FIG. 2
FORM 2
THE PATENTS ACT, 1970 (39 of 1970) THE PATENTS RULES, 2003
COMPLETE SPECIFICATION
NETWORK ELEMENTS IN CLEAR CODES
APPLICANT
of Office-101, Saffron, Nr. JIO PLATFORMS LIMITED—^-
380006, Gujarat, India; Nationality : India
The following specification particularly describes
the invention and the manner in which
it is to be performed
RESERVATION OF RIGHTS
[001] A portion of the disclosure of this patent document contains material
which is subject to intellectual property rights such as, but are not limited to, copyright, design, trademark, Integrated Circuit (IC) layout design, and/or trade dress protection, belonging to Jio Platforms Limited (JPL) or its affiliates (herein after referred as owner). The owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all rights whatsoever. All rights to such intellectual property are fully reserved by the owner.
TECHNICAL FIELD
[002] The present disclosure relates to wireless cellular communications,
and specifically to a system and a method for maintaining successful and failed events of network elements in clear codes.
DEFINITIONS:
[003] As used in the present disclosure, the following terms are generally
intended to have the meaning as set forth below, except to the extent that the context in which they are used to indicate otherwise.
[004] A term “Subscription Permanent Identifier (SUPI)” refers to a
unique identifier assigned to a subscriber in a mobile network. It is used primarily in 5G networks to identify and authenticate subscribers. The SUPI is similar to the International Mobile Subscriber Identity (IMSI) used in earlier generations of mobile networks.
[005] A term “External Data Representation (XDR)” file refers to a
standard for data serialization that allows data to be encoded in a platform-
independent format. An XDR file is used to store data in this standardized format,
enabling interoperability between different computer systems and applications.
[006] A term “clear code” refers to code that is easy to read, understand,
and maintain. Term codes are developed following best practices for coding style,
such as proper naming conventions, modular design, and comprehensive
documentation.
[007] The term “Cause Code” refers to coding used in telecommunications
to indicate the reason for a specific event, such as a call termination or network
error. Cause codes are standardized to facilitate consistent interpretation across
different systems and devices.
[008] The term “Event Code” refers to a unique identifier for a specific
event or action within a system. In telecommunications, event codes are used to log
and track various events, such as connection attempts, errors, or changes in network
status.
[009] The term “Attribute-Value Pair (AVP)” refers to a concept in
network protocols, including Diameter. The AVP consists of an attribute (a named
identifier) and a value (the data associated with the attribute). AVPs are used to
convey configuration and operational information between network entities.
[0010] The term “DIAMETER Error Codes” refers to an authentication,
authorization, and accounting (AAA) protocol used in telecommunications.
DIAMETER error codes are used to indicate specific errors encountered during
DIAMETER transactions, such as authentication failures, authorization issues, or
network problems.
[0011] The term IMSI refers to a unique identifier assigned to each mobile
subscriber in GSM and UMTS networks. It is stored on the subscriber's SIM card
and used to identify the subscriber to the network for authentication and billing
purposes.
[0012] The term “Subscriber Profile Repository (SPR)” refers to a database
used in telecommunications to store and manage subscriber information and
profiles. It contains data such as service entitlements, usage policies, and
personalized settings for each subscriber.
[0013] The term “File Transfer Protocol (FTP)” refers to a standard
network protocol used for transferring files between a client and a server over a
TCP/IP network. FTP allows users to upload, download, and manage files on
remote servers.
[0014] The term “Abstract Syntax Notation One (ASN.1)” refers to a
standard interface description language used to define data structures for representing, encoding, transmitting, and decoding data. The ASN.1 format ensures that data can be exchanged between systems with different architectures and platforms.
BACKGROUND
[0015] The following description of related art is intended to provide
background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section be used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of prior art.
[0016] Currently used error logs and counters are insufficient to determine
and pinpoint a location of network issue that has occurred in a wireless network. In addition, network details such as request/response timestamp, correlation Identifier (ID), Subscription Permanent Identifier (SUPI), etc. are required to perform an end-to-end debugging to determine issues occurring in the network. This process is tedious and has a larger turnaround time.
[0017] There is therefore a need in the art to provide a faster network
debugging solution having a shorter turnaround time.
SUMMARY
[0018] In an exemplary embodiment, a method for managing a plurality of
events is described. The method comprises assigning the plurality of clear codes to the plurality of events. The method comprises creating a plurality of external data representation (XDR) records in an application when an error or an exception occurs in the events. The plurality of XDR records include category, correlation ID, start timestamp, end timestamp, the plurality of clear codes. The method comprises writing the plurality of clear codes in at least one XDR record in at least one file in predefined notation format. The method further comprises checking whether an
XDR file transfer protocol (FTP) is enabled. The method comprises on detecting that the XDR FTP is enabled, checking whether there is XDR record limit for each file with current number of records. The XDR record limit for the each file is defined at the time of the application configuration. The method comprises on detecting that there is the XDR record limit for the each file with a current number of records, encoding the XDR records, and writing the XDR records as predefined notation records in the at least one file. The method comprises on detecting that there is no XDR record limit for the each file with current number of records, creating a new file, encoding the XDR records, and writing the XDR records as new predefined notation records in the new file.
[0019] In some embodiments, the plurality of clear codes is divided into a
protocol level and an internal level to find types of error or exception occurs in the events. The protocol level includes attribute-value pair (AVP) missing from the events, the AVP value malformed or unexpected or incorrect leading to DIAMETER error codes being sent back, and incomplete information during provisioning hits to the SPR. The internal level includes internal module error conditions, all checked and unchecked exception paths, missing/incorrect rule configurations, quota exhaustion cases, international mobile subscriber identity (IMSI) missing from a subscriber profile repository (SPR), and provisioning errors due to database (DB) reachability issues.
[0020] In some embodiments, the each file includes information related to
all cause codes and event codes reported to a plurality of network functions.
[0021] In some embodiments, the start timestamp indicates starting time of
event recording, and the end timestamp indicates completion time of event
recording. After the end timestamp, the event will be written to the at least one file.
[0022] In some embodiments, the category indicates an initial event type for
which record needs to be written, wherein the category is mapped to more than one clear code.
[0023] In some embodiments, the each file is dumped into a remote address
using a configurable parameter. The configurable parameter id defined at the time of the application configuration. The configurable parameter comprises a hostname
or an IP address of a file transfer protocol (FTP) where the predefined notation files to be dumped.
[0024] In another exemplary embodiment, a system for managing a plurality
of events is described. An assigning unit is configured to assign the plurality of clear codes to the plurality of events. A creating unit is configured to create a plurality of external data representation (XDR) records in an application when an error or an exception occurs in the events. The plurality of XDR records includes category, correlation ID, start timestamp, end timestamp, and the plurality of clear codes. A processing unit is configured to write the plurality of clear codes in at least one XDR record in at least one file in a predefined notation format. The processing unit is configured to check whether an XDR file transfer protocol is enabled. On detecting that the XDR FTP is enabled, the processing unit is configured to check whether there is an XDR record limit for each file with current number of records. The XDR record limit for the each file is defined at the time of the application configuration. On detecting that there is XDR record limit for the each file with current number of records, the processing unit is configured to encode the XDR records and write the XDR records as predefined notation records. On detecting that there is no XDR record limit for the each file with current number of records, the processing unit configured to create a new file, encode the XDR records, and write the XDR records as new predefined notation records in the new file.
[0025] In some embodiments, the plurality of clear codes is divided into a
protocol level and an internal level to find type of error or exception occurs in the events. The protocol level includes attribute-value pair (AVP) missing from the events, the AVP value malformed or unexpected or incorrect leading to DIAMETER error codes being sent back, and incomplete information during provisioning hits to the SPR. The internal level includes internal module error conditions, all checked and unchecked exception paths, missing/incorrect rule configurations, quota exhaustion cases, international mobile subscriber identity (IMSI) missing from a subscriber profile repository (SPR), and provisioning errors due to database (DB) reachability issues.
[0026] In some embodiments, the each file includes information related to
all cause codes and event codes reported to a plurality of network functions.
[0027] In some embodiments, the start timestamp indicates starting time of
event recording, and the end timestamp indicates completion time of event
recording. After the end timestamp, the event will be written to the at least one file.
[0028] In some embodiments, the category indicates an initial event type for
which record needs to be written. The category is mapped to more than one clear code.
[0029] In some embodiments, the each file is dumped into a remote address
using a configurable parameter. The configurable parameter is defined at the time of the application configuration. The configurable parameter comprises a hostname or an IP address of a file transfer protocol (FTP) where the predefined notation records are to be dumped.
[0030] In some embodiments, a user equipment (UE) communicatively
coupled with a system is described. The coupling comprises steps of receiving, by the system, a connection request and sending an acknowledgment of the connection request to the UE. A plurality of signals is transmitted in response to the connection request. The system is configured for managing a plurality of events.
[0031] The foregoing general description of the illustrative embodiments
and the following detailed description thereof are merely exemplary aspects of the teachings of this disclosure, and are not restrictive.
OBJECTS OF THE PRESENT DISCLOSURE
[0032] It is an object of the present disclosure to provide a system and a
method for maintaining successful and failed events of network elements in clear
codes.
[0033] It is an object of the present disclosure to manage multiple events of
network elements.
[0034] It is an object of the present disclosure to divide the clear codes in
different levels to simplify understanding of an error/exception type.
[0035] It is an object of the present disclosure to use the clear codes to
maintain key successful events that occurred during execution of a process.
[0036] It is an object of the present disclosure to store the clear codes into
an external data representation (XDR) record file.
[0037] It is an object of the present disclosure to allow an operations and
management node to periodically fetch the XDR file and perform additional error
analysis.
[0038] It is an object of the present disclosure to allow various execution
steps to be performed at a network function level.
BRIEF DESCRIPTION OF THE DRAWINGS
[0039] In the figures, similar components and/or features may have the
same reference label. Further, various components of the same type may be
distinguished by following the reference label with a second label that distinguishes
among the similar components. If only the first reference label is used in the
specification, the description is applicable to any one of the similar components
having the same first reference label irrespective of the second reference label.
[0040] The diagrams are for illustration only, which thus is not a limitation
of the present disclosure, and wherein:
[0041] FIG. 1A illustrates an exemplary representation of network
architecture, in accordance with an embodiment of the disclosure.
[0042] FIG. 1B illustrates an exemplary system architecture for managing a
plurality of events, in accordance with an embodiment of the disclosure.
[0043] FIG. 1C illustrates an exemplary representation of constituents of an
XDR record, in accordance with an embodiment of the disclosure.
[0044] FIG. 2 illustrates an exemplary flowchart for encoding and writing
XDR records in a predefined notation format, in accordance with an embodiment
of the disclosure.
[0045] FIG. 3A illustrates an exemplary flow chart for writing the XDR
records in the predefined notation files and dumping in an accessible location using
a file transfer protocol (FTP) process, in accordance with an embodiment of the disclosure.
[0046] FIG. 3B illustrates an exemplary flow chart of a method for
managing a plurality of events, in accordance with an embodiment of the disclosure.
5 [0047] FIG. 4 illustrates an exemplary block diagram of a computer system
in which or with which embodiments of the present disclosure may be implemented.
DETAILED DESCRIPTION
[0048] In the following description, for the purposes of explanation, various
10 specific details are set forth in order to provide a thorough understanding of
embodiments of the present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter can each be used independently of one another or with any combination of other features. An individual feature may not
15 address all of the problems discussed above or might address only some of the
problems discussed above. Some of the problems discussed above might not be fully addressed by any of the features described herein.
[0049] The ensuing description provides exemplary embodiments only, and
is not intended to limit the scope, applicability, or configuration of the disclosure.
20 Rather, the ensuing description of the exemplary embodiments will provide those
skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the invention as set forth.
25 [0050] Specific details are given in the following description to provide a
thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, networks, processes, and other components may be shown as components in block diagram form in order not to
30 obscure the embodiments in unnecessary detail. In other instances, well-known
9
circuits, processes, algorithms, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments.
[0051] Also, it is noted that individual embodiments may be described as a
process which is depicted as a flowchart, a flow diagram, a data flow diagram, a
5 structure diagram, or a block diagram. Although a flowchart may describe the
operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed but could have additional steps not included in a figure. A process may correspond to a method, a function, a
10 procedure, a subroutine, a subprogram, etc. When a process corresponds to a
function, its termination can correspond to a return of the function to the calling function or the main function.
[0052] The word “exemplary” and/or “demonstrative” is used herein to
mean serving as an example, instance, or illustration. For the avoidance of doubt,
15 the subject matter disclosed herein is not limited by such examples. In addition, any
aspect or design described herein as “exemplary” and/or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art. Furthermore, to the extent that the terms
20 “includes,” “has,” “contains,” and other similar words are used in either the detailed
description or the claims, such terms are intended to be inclusive—in a manner
similar to the term “comprising” as an open transition word—without precluding
any additional or other elements.
[0053] Reference throughout this specification to “one embodiment” or “an
25 embodiment” or “an instance” or “one instance” means that a particular feature,
structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment.
30 Furthermore, the particular features, structures, or characteristics may be combined
in any suitable manner in one or more embodiments.
10
[0054] The terminology used herein is for the purpose of describing
particular embodiments only and is not intended to be limiting of the invention. As
used herein, the singular forms “a,” “an,” and “the” are intended to include the
plural forms as well, unless the context clearly indicates otherwise. It will be further
5 understood that the terms “comprises” and/or “comprising,” when used in this
specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. As used herein, the term “and/or” includes any and all combinations
10 of one or more of the associated listed items.
[0055] The disclosed system and method facilitate to define a limit for a
number of records during an application configuration. This helps to manage memory and create new files if required. Further, the disclosed system and method enables to dump files into remote addresses apart from local path using a
15 configurable parameter defined at the time of application configuration. This
parameter contains details such as hostname/internet protocol (IP) address of file
transfer protocol (FTP), where a predefined notation (e.g., abstract syntax notation
(ASN)) files are to be dumped.
[0056] In addition, the disclosed system and method facilitates to handle
20 two different file transfer protocol (FTP) managers, such that in case of connectivity
issues with a primary FTP manager, a secondary FTP manager may be used.
[0057] With respect to the disclosed system and method, whenever any
error/exception occurs, external data representations (XDRs) records are created in an application which may be sent to any mining system. The XDR records may be
25 used to provide root cause analysis (RCA) related information at an operational
level. In an aspect, the RCA is capable of detecting, identifying, and proposing corrections to the network problems.
[0058] FIG. 1A illustrates an exemplary representation of network
architecture (100A), in accordance with an embodiment of the disclosure.
30 [0059] Referring to FIG. 1A, the network architecture (100A) may include
one or more computing devices or user equipments (102-1, 102-2…102-N) in a
11
network (106). The network architecture (100A) may include a plurality of network
functions (NFs). The network functions (NFs) (110-1, 110-2, 110-3….110-N) may
be referred to as network elements. The network functions (NFs) (110-1, 110-2,
110-3….110-N) may communicate with the system via the network (106). The
5 network functions (NFs) (110-1, 110-2, 110-3….110-N) may communicate with
the user equipments (102-1, 102-2…102-N) via the network (106). A person of ordinary skill in the art will understand that one or more user equipments (102-1, 102-2…102-N) may be individually referred to as the user equipment (102) and collectively referred to as the user equipment (102). A person of ordinary skill in
10 the art will appreciate that the terms “computing device(s)” and “user equipment”
may be used interchangeably throughout the disclosure. Although three user equipments (102) are depicted in FIG. 1A, however any number of the user equipments (102) may be included without departing from the scope of the ongoing description. A person of ordinary skill in the art will understand that one or more
15 network functions (NFs) (110-1, 110-2, 110-3…110-N) may be individually
referred to as the network function (110) and collectively referred to as the network function (110). Although four network functions (110) are depicted in FIG. 1A, however any number of the network functions (110) may be included without departing from the scope of the ongoing description.
20 [0060] In an embodiment, the user equipment (102) may include smart
devices operating in a smart environment, for example, an Internet of Things (IoT) system. In such an embodiment, the user equipment (102) may include, but is not limited to, smart phones, smart watches, smart sensors (e.g., mechanical, thermal, electrical, magnetic, etc.), networked appliances, networked peripheral devices,
25 networked lighting system, communication devices, networked vehicle accessories,
networked vehicular devices, smart accessories, tablets, smart television (TV), computers, smart security system, smart home system, other devices for monitoring or interacting with or for the users and/or entities, or any combination thereof. A person of ordinary skill in the art will appreciate that the user equipment (102) may
30 include, but is not limited to, intelligent, multi-sensing, network-connected devices,
12
that can integrate seamlessly with each other and/or with a central server or a cloud-computing system or any other device that is network-connected.
[0061] In an embodiment, the user equipment (102) may include, but is not
limited to, a handheld wireless communication device (e.g., a mobile phone, a smart
5 phone, a phablet device, and so on), a wearable computer device(e.g., a head-
mounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a Global Positioning System (GPS) device, a laptop computer, a tablet computer, or another type of portable computer, a media playing device, a portable gaming system, and/or any other type of computer device with
10 wireless communication capabilities, and the like. In an embodiment, the user
equipment (102) may include, but is not limited to, any electrical, electronic, electro-mechanical, or an equipment, or a combination of one or more of the above devices such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet
15 computer, mainframe computer, or any other computing device, wherein the user
equipment (102) may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as a camera, an audio aid, a microphone, a keyboard, and input devices for receiving input from the user or the entity such as touch pad, touch enabled screen, electronic pen, and the like. A person
20 of ordinary skill in the art will appreciate that the user equipment (102) may not be
restricted to the mentioned devices and various other devices may be used.
[0062] Referring to FIG. 1A, the user equipment (102) may communicate
with a system (108), through the network (106). The UE (102) may send a connection request to the system (108). The system (108) may send an
25 acknowledgment of the connection request to the user equipment (102). The UE
may transmit a plurality of signals in response to the connection request. The system
(108) is configured to manage a plurality of events in the network (106).
[0063] In an embodiment, the network (106) may include at least one of a
Fifth Generation (5G) network, 6G network, or the like. The network (106) may
30 enable the user equipment (102) to communicate with other devices in the network
architecture (100) and/or with the system (108). The network (106) may include a
13
wireless card or some other transceiver connection to facilitate this communication.
In another embodiment, the network (106) may be implemented as, or include any
of a variety of different communication technologies such as a wide area network
(WAN), a local area network (LAN), a wireless network, a mobile network, a
5 Virtual Private Network (VPN), the Internet, the Public Switched Telephone
Network (PSTN), or the like.
[0064] In an aspect, the network functions are the logical entities or
software-based functionalities that define how the network operates and processes data. These functions are often implemented as software running on network
10 elements or as virtualized instances in cloud environments. The plurality of network
functions (NFs) (110) comprises an access and mobility management function (AMF), a session management function (SMF), a user plane function (UPF), a policy control function (PCF), an authentication server function (AUSF), a binding support function (BSF), a network repository function (NRF), a charging function
15 (CHF), etc.
[0065] The AMF performs access management functions such
as authentication, authorization, and accounting (AAA). The AMF verifies the identity of the user device and determines whether it is authorized to access the network.
20 [0066] The SMF is responsible for managing the sessions between user
devices and the network.
[0067] The PCF is used for policy control decision and flow-based charging
control functionalities.
[0068] The BSF is to track sessions that are located anywhere in the
25 network.
[0069] The NRF works as a centralized repository for all the network
functions (NFs) in the operator's network.
[0070] The CHF supports the online charging, offline charging, and
convergent charging models.
30 [0071] The UPF is responsible for packet routing and forwarding, packet
inspection, and QoS handling for user data.
14
[0072] The AUSF receives authentication requests from the access and
mobility management function (AMF) and interacts with unified data management
(UDM) to obtain authentication vectors for processing authentication and key
agreement (AKA) and validates network responses to determine whether the
5 authentication was successful.
[0073] Although FIG. 1A shows exemplary components of the network
architecture (100A), in other embodiments, the network architecture (100A) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 1A. Additionally, or
10 alternatively, one or more components of the network architecture (100A) may
perform functions described as being performed by one or more other components of the network architecture (100A).
[0074] FIG. 1B illustrates an exemplary system architecture (100B) for
managing a plurality of events, in accordance with an embodiment of the disclosure.
15 [0075] In an aspect, the network elements are the tangible, physical
components that make up the infrastructure of the network. The network elements
include hardware devices such as base stations, routers, switches, antennas, edge
computing nodes, servers, and other physical infrastructure components.
[0076] In an aspect, the clear codes are unique codes which describe
20 valuable information such as from exactly where negative response is being sent by
an application. Further, there are multiple functions in the application from where response can be sent for a particular call flow. The application may write clear code along with required information in a file in a predefined notation (for example, ASN.1 format). The file contains description of all cause codes and event codes
25 reported to its module by different network functions. The description of all cause
codes and event codes provides information to analyse the exact root cause of any errors in a network element. The clear codes are also used for identifying the key successful events during the execution of the process to store all these data into an external data representation (XDR) file. The XDR files can be fetched by an
30 operations and management (OM) node periodically to do further analysis.
15
[0077] In an aspect, the OM node has unique capabilities of anomaly
detection, which can drill down to the level of the end-host (e.g., server) and
precisely identify the problematic element in the network. This capability helps in
quick detection of issues as soon as they occur in the network.
5 [0078] The system architecture (100B) may represent the system (108). The
system (108) comprises an assigning unit (112), a creating unit (114), a processing unit (116), a memory (120) and other units (118).
[0079] The assigning unit (112) configured to assign the plurality of clear
codes to the plurality of events. The plurality of events comprises successful events
10 and failed events.
[0080] The creating unit (114) configured to create a plurality of external
data representation (XDR) records in an application when an error or an exception occurs in the events. The plurality of XDR records includes a category, a correlation ID, a start timestamp, an end timestamp, and clear codes. In an aspect, the
15 application is a software program designed to perform specific tasks for users or
other applications. The XDR records are used for capturing detailed information about events, activities, or states in the application. For example, the application such as a VoIP call application, XDR records capture detailed information about call events in the VoIP call application. The XDR records comprise call identifier,
20 caller, receiver, start time of call, duration of call, end time of call, call quality and
clear codes for failed call (e.g., busy, no answer, network issue, connection failure, etc.).
[0081] The processing unit (116) configured to write the plurality of clear
codes in a file in a predefined notation (for example, abstract syntax notation one
25 (ASN.1)) format. The file includes information related to all cause codes and event
codes reported to corresponding modules by a plurality of network functions.
[0082] The processing unit (116) configured to check whether an XDR file
transfer protocol (FTP) is enabled. On detecting that the XDR FTP is enabled, the processing unit (116) configured to check whether there is XDR record limit for
30 each file with current number of records. The XDR record limit per record file is
defined at the time of the application configuration.
16
[0083] On detecting that there is XDR record limit per record file with
current number of records, the processing unit (116) configured to encode the XDR
records. The XDR records is written as predefined notation (e.g., ASN.1 records).
[0084] On detecting that there is no XDR record limit per record file with
5 current number of records, the processing unit (116) configured to create a new
record file. The XDR records are encoded. The XDR records are written as new predefined notation (e.g., ASN) records.
[0085] FIG. 1C illustrates an exemplary representation (100C) of
constituents of an XDR record, in accordance with an embodiment of the
10 disclosure.
[0086] As illustrated in FIG. 1C, the XDR record comprises:
• Category
• Correlation-Id
• Start Timestamp 15 • End Timestamp
• One or more Clear Codes
[0087] More than one XDR record may be possible for a single subscriber.
In some embodiments, the XDR records may be written and stored as predefined notation (e.g., abstract syntax notation one (ASN.1)) records.
20 [0088] Clear code record(s) may cover a particular scenario (e.g. user
equipment (UE) attachment procedure may have multiple records).
[0089] Multiple records may be possible for a scenario which may be
identified by ‘correlation-ID’ field. The same ‘correlation-ID’ may be present in these records. For example, in a UE attachment procedure, session management
25 function (SMF) interfaces, access and mobility management function (AMF)
interfaces may be used. Therefore, three records may be created having the same ‘correlation-ID’ value.
[0090] In examples, clear code record(s) may cover other scenarios such as
a call setup and teardown, a data session management, billing and management,
30 network resource allocation, and such scenarios.
17
[0091] The ‘start timestamp’ field signifies starting time of creation of that
record.
[0092] The ‘end timestamp’ field signifies completion time of that record.
The record may be written to the record file after the end timestamp.
5 [0093] The ‘category’ field signifies an initial event type of a scenario for
which a record needs to be written. A ‘category’ may be mapped to more than one
clear code module. For example, the UE attachment procedure may be triggered by
an incoming create control request at the policy control function (PCF) node. In
such a scenario, the ‘category’ field value may signify e.g., the SMF category. The
10 record may contain additional clear codes of different modules.
[0094] The record files may be taken (by the FTP process) and then put into
an accessible location. In an aspect, the record files may be taken by the FTP via an
interface between an OM node and the FTP.
[0095] The record files may be indexed by a controller. Further, the
15 controller may be an OM node controller. The record files can be fetched by the
controller (e.g., OM node) periodically to do further analysis. The further analysis
may include node or entity that caused the error, root cause analysis of the error,
mitigation process, and such information.
[0096] In an aspect, the clear codes are divided in different levels so that it
20 becomes easy to understand an error/exception type. i.e., at a protocol level and at
an internal level.
[0097] At the protocol level, the following error/exception types may be
determined:
• Missing mandatory Attribute-Value Pair (AVP) from a request
25 • Malformed/unexpected/incorrect AVP value leading to DIAMETER error
codes being sent back.
• Incomplete information during provisioning hits to a subscriber profile
repository (SPR).
[0098] In an aspect, the attribute-value pair (AVP) refers to a fundamental
30 representation in system to express entities by describing their characteristics. The
AVP consists of two elements: an attribute and a value.
18
[0099] In an aspect, the SPR is a logical database which contains subscriber
related information related to policy and charging control. The SPR may provide
information such as subscriber allowed services, permitted QoS and charging
related information.
5 [00100] In an aspect, the DIAMETER error code is given when DIAMETER
cannot deliver the message to the destination, either because no host within the
realm supporting the required application was available to process the request or
because the Destination-Host AVP was given without the associated Destination-
Realm AVP.
10 [00101] At the internal level, the following error/exception types may be
determined:
• Generation of clear codes due to internal module error conditions
• Inclusion of all checked and unchecked exception paths
• Missing/incorrect rule configurations 15 • Quota exhaustion cases
• International Mobile Subscriber Identity (IMSI) missing from the SPR
• Provisioning errors due to database reachability issues.
[00102] In an aspect, a network entity (NE) (e.g., gateway GPRS support
node (GGSN), a packet data network gateway (PGW), or a session management
20 function (SMF), online charging server (OCS) provides quota for a service (e.g. a
data session, a call) to be provided to a subscriber. The quota may be a data volume or a time. The quota exhaustion (i.e., the granted quota is used).
[00103] FIG. 2 illustrates an exemplary flowchart (200) for encoding and
writing XDR records in a predefined notation format, in accordance with an
25 embodiment of the disclosure.
[00104] As illustrated in FIG. 2, at step (202), the processing unit (116)
configured to check whether “XDR file transfer protocol (FTP)” is enabled.
[00105] At step (204), on detecting that the XDR FTP is enabled, the
processing unit (116) configured to check whether there is XDR record limit for
30 each file with current number of records.
19
[00106] At step (206), If there is the XDR record limit per record file with
current number of records (i.e. true), then the processing unit (116) configured to
encode, write, and store the XDR records as predefined notation (e.g., ASN.1)
records in the file.
[00107] At step (208), if there is no XDR record limit for the each file, then
the processing unit (116) configured to create a new file.
[00108] At step (210), the processing unit (116) configured to encode, write
the XDR records as new predefined notation (e.g., ASN records) in the new file.
[00109] FIG. 3A illustrates an exemplary flow chart (300A) for writing the
XDR records in the predefined notation files and dumping in an accessible location
using a file transfer protocol (FTP) process, in accordance with an embodiment of
the disclosure.
[00110] As illustrated in FIG. 3A, at step (302), the method (300A) includes
writing of the XDR records is performed at a network function (NF) level.
[00111] At step (304), the method (300A) includes the XDR records that are
written in the predefined notation files (e.g., ASN files). The predefined notation
files (e.g., ASN files) may be stored in the memory (120) of the system (108),
although the predefined notation (e.g., ASN files) can be stored in any of the NF
(110-1-N). The predefined notation (e.g., ASN format) files include information
related to description of all cause codes and event codes reported to corresponding
modules by a network functions (110-1-N).
[00112] In an aspect, the network functions (110-1-N) are units of codes that
provide scope and context for the debugger.
[00113] At step (306), the predefined notation (e.g., ASN) files may be then
dumped in an accessible location by the FTP process.
[00114] The system and method may be dependent on policy control function
(PCF)/binding support function (BSF)/network repository function (NRF)/charging
function (CHF) architecture for its functioning and for identifying errors occurring
in the wireless networks.
[00115] FIG. 3B illustrates an exemplary flow chart of a method (300B) for
managing a plurality of events, in accordance with an embodiment of the disclosure.
[00116] As illustrated in FIG. 3B, at step (312), the method (300B) includes
assigning the plurality of clear codes to the plurality of events.
[00117] At step (314), the method (300B) includes creating a plurality of
external data representation (XDR) records in an application when an error or an
exception occurs in the events. The plurality of XDR records includes a category, a
correlation ID, a start timestamp, an end timestamp, and clear codes.
[00118] At step (316), the method (300B) includes writing the plurality of
clear codes in at least one XDR record in at least one file in predefined notation
(e.g., abstract syntax notation one (ASN.1)) format. The file includes information
related to all cause codes and event codes reported to corresponding modules by a
plurality of network functions.
[00119] At step (318), the method (300B) includes checking whether an
XDR file transfer protocol (FTP) is enabled.
[00120] At step (320), the method (300B) includes on detecting that the XDR
FTP is enabled, checking whether there is XDR record limit for each file with
current number of records. The XDR record limit per record file is defined at the
time of the application configuration.
[00121] At step (322), the method (300B) includes on detecting that there is
the XDR record limit for each file with current number of records, encoding the
XDR records and writing the XDR records as predefined notation (e.g., ASN.1)
records in the at least one file.
[00122] At step (324), the method (300B) includes on detecting that there is
no XDR record limit for each file with current number of records, creating a new
file, encoding the XDR records, and writing the XDR records as new predefined
notation records (e.g., ASN records) in the new file.
[00123] FIG. 4 illustrates an exemplary computer system (400) in which or
with which embodiments of the present disclosure may be implemented. For
example, the system (108), or the NF (110-1-N) may be implemented using the
exemplary computer system.
[00124] As shown in FIG. 4, the computer system (400) may include an
external storage device (410), a bus (420), a main memory (430), a read-only
memory (440), a mass storage device (450), communication port(s) (460), and a processor (470). A person skilled in the art will appreciate that the computer system (400) may include more than one processor and communication ports. The processor (470) may include various modules associated with embodiments of the present disclosure. The communication port(s) (460) may be any of an RS-232 port for use with a modem-based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. The communication port(s) (460) may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system (400) connects.
[00125] The main memory (430) may be random access memory (RAM), or
any other dynamic storage device commonly known in the art. The read-only
memory (440) may be any static storage device(s) e.g., but not limited to, a
Programmable Read Only Memory (PROM) chips for storing static information
e.g., start-up or Basic Input/Output System (BIOS) instructions for the processor
(470). The mass storage device (450) may be any current or future mass storage
solution, which can be used to store information and/or instructions. Exemplary
mass storage device (450) includes, but is not limited to, Parallel Advanced
Technology Attachment (PATA) or Serial Advanced Technology Attachment
(SATA) hard disk drives or solid-state drives (internal or external, e.g., having
Universal Serial Bus (USB) and/or Firewire interfaces), one or more optical discs,
Redundant Array of Independent Disks (RAID) storage, e.g. an array of disks.
[00126] The bus (420) communicatively couples the processor (470) with the
other memory, storage, and communication blocks. The bus (420) may be, e.g. a Peripheral Component Interconnect (PCI)/PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), Universal Serial Bus (USB), or the like, for connecting expansion cards, drives, and other subsystems as well as other buses, such a front side bus (FSB), which connects the processor (470) to the computer system (400).
[00127] Optionally, operator and administrative interfaces, e.g. a display,
keyboard, joystick, and a cursor control device, may also be coupled to the bus
(420) to support direct operator interaction with the computer system (400). Other operator and administrative interfaces can be provided through network connections connected through the communication port(s) (460). Components described above are meant only to exemplify various possibilities. In no way should the aforementioned exemplary computer system (400) limit the scope of the present disclosure.
[00128] While the foregoing describes various embodiments of the
invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof. The scope of the invention is determined by the claims that follow. The invention is not limited to the described embodiments, versions or examples, which are included to enable a person having ordinary skill in the art to make and use the invention when combined with information and knowledge available to the person having ordinary skill in the art.
[00129] The present disclosure provides technical advancement related to
managing events in a telecommunication network. The events may be successful events or failure events. This advancement addresses the limitations of existing techniques of event handling that includes error logs and counters are insufficient to determine and pinpoint a location of network issue that has occurred in a wireless network. In addition, network details such as request/response timestamp, SUPI, etc. are required to perform an end-to-end debugging to determine issues occurring in the network. This process is tedious and has a larger turnaround time. The disclosure overcomes the limitations by using the plurality of clear codes to events, creating XDR records responsive to an event, and having the clear codes in the XDR records. By implementing the disclosure, a system is implemented to easily track, store and process the errors, and identify the entities causing it to rectify the issues of the entities. This approach allows faster debugging and shorter turnaround times.
ADVANTAGES OF THE PRESENT DISCLOSURE
[00130] The present disclosure provides a system and a method for
maintaining successful and failed events of network elements in clear codes.
[00131] The present disclosure uses the clear codes to maintain key
successful events that occurred during execution of a process.
[00132] The present disclosure stores the clear codes into an external data
representation (XDR) record file.
[00133] The present disclosure allows an OM node to periodically fetch the
XDR file and perform additional error analysis.
[00134] The present disclosure allows various execution steps to be
performed at a network function level.
WE CLAIM:
1. A method (300B) for managing a plurality of events, the method (300B)
comprising:
assigning (312) a plurality of clear codes to the plurality of events;
creating (314) a plurality of external data representation (XDR) records in an application when an error or an exception occurs in the events, wherein the plurality of XDR records includes a category, a correlation ID, a start timestamp, an end timestamp, and the plurality of clear codes;
writing (316) the plurality of clear codes in at least one XDR record in at least one file in a predefined notation format,;
checking (318) whether an XDR file transfer protocol (FTP) is enabled,
on detecting that the XDR FTP is enabled, checking (320) whether there is an XDR record limit for each file with current number of records, wherein the XDR record limit for the each file is defined at a time of application configuration;
on detecting that there is the XDR record limit for the each file with the current number of records, encoding (322) the XDR records; and
writing (322) the XDR records as predefined notation records in the at least one file, wherein on detecting that there is no XDR record limit for the each file with the current number of records, creating (324) a new file; encoding (324) the XDR records; and writing (324) the XDR records as new predefined notation
records in the new file.
2. The method (300B) as claimed in claim 1, wherein
the plurality of clear codes is divided into a protocol level and an
internal level to find type of error or exception occurs in the events, wherein:
the protocol level includes attribute-value pair (AVP)
missing from the events, the AVP value malformed or unexpected
or incorrect leading to DIAMETER error codes being sent back, and incomplete information during provisioning hits to a subscriber profile repository (SPR); and
the internal level includes internal module error conditions, all checked and unchecked exception paths, missing/incorrect rule configurations, quota exhaustion cases, international mobile subscriber identity (IMSI) missing from the SPR, and provisioning errors due to database (DB) reachability issues.
3. The method (300B) as claimed in claim 1, wherein the each file includes information related to all cause codes and event codes reported to a plurality of network functions (110).
4. The method (300B) as claimed in claim 1, wherein
the start timestamp indicates a starting time of event recording, and the end timestamp indicates a completion time of the event recording, wherein after the end timestamp, the event will be written to the at least one file.
5. The method (300B) as claimed in claim 1, wherein
the category indicates an initial event type for which record needs to be written, wherein the category is mapped to more than one clear code.
6. The method (300B) as claimed in claim 1, wherein
the each file is dumped into a remote address using a configurable parameter, wherein the configurable parameter is defined at the time of the application configuration, wherein the configurable parameter comprises a hostname or an IP address of a FTP where the predefined notation records are to be dumped.
7. A system (108) for managing a plurality of events comprising:
an assigning unit (112) configured to assign a plurality of clear codes to the plurality of events;
a creating unit (114) configured to create a plurality of external data representation (XDR) records in an application when an error or an exception occurs in the events, wherein the plurality of XDR records includes category, correlation ID, start timestamp, end timestamp, and the plurality of clear codes;
a processing unit (116) configured to write the plurality of clear codes in at least one XDR record in at least one file in a predefined notation format;
the processing unit (116) configured to check whether an XDR file transfer protocol (FTP) is enabled,
on detecting that the XDR FTP is enabled, the processing unit (116) is configured to check whether there is an XDR record limit for each file with current number of records, wherein the XDR record limit for the each file is defined at a time of application configuration;
on detecting that there is the XDR record limit for the each file with the current number of records, the processing unit (116) configured to encode the XDR records; and
write the XDR records as predefined notation records in the at least one file, wherein
on detecting that there is no XDR record limit for the each
file with the current number of records, the processing unit (116)
configured to:
create a new file;
encode the XDR records; and
write the XDR records as new predefined notation records in
the new file.
8. The system (108) as claimed in claim 7, wherein
the plurality of clear codes is divided into a protocol level and an internal level to find type of error or exception occurs in the events, wherein
the protocol level includes attribute-value pair (AVP) missing from the events, the AVP value malformed or unexpected or incorrect leading to DIAMETER error codes being sent back, and incomplete information during provisioning hits to the SPR; and
the internal level includes internal module error conditions, all checked and unchecked exception paths, missing/incorrect rule configurations, quota exhaustion cases, international mobile subscriber identity (IMSI) missing from a subscriber profile repository (SPR), and provisioning errors due to database (DB) reachability issues.
9. The system (108) as claimed in claim 7, wherein the each file includes
information related to all cause codes and event codes reported to a plurality
of network functions (110).
10. The system (108) as claimed in claim 7, wherein
the start timestamp indicates a starting time of an event recording, and the end timestamp indicates a completion time of the event recording, wherein after the end timestamp, the event will be written to the at least one file.
11. The system (108) as claimed in claim 7, wherein
the category indicates an initial event type for which record needs to be written, wherein the category is mapped to more than one clear code.
12. The system (108) as claimed in claim 7, wherein
the each file is dumped into a remote address using configurable parameter, wherein the configurable parameter is defined at the time of the
application configuration, wherein the configurable parameter contains a hostname or an IP address of a FTP where the predefined notation records are to be dumped.
13. A user equipment (UE) (102) communicatively coupled with a system (108), the coupling comprises steps of:
receiving, by the system (108), a connection request;
sending an acknowledgment of the connection request to the UE (102); and
transmitting a plurality of signals in response to the connection request, wherein the system (108) configured for managing a plurality of events as claimed in claim 7.
| # | Name | Date |
|---|---|---|
| 1 | 202321048666-STATEMENT OF UNDERTAKING (FORM 3) [19-07-2023(online)].pdf | 2023-07-19 |
| 2 | 202321048666-PROVISIONAL SPECIFICATION [19-07-2023(online)].pdf | 2023-07-19 |
| 3 | 202321048666-FORM 1 [19-07-2023(online)].pdf | 2023-07-19 |
| 4 | 202321048666-DRAWINGS [19-07-2023(online)].pdf | 2023-07-19 |
| 5 | 202321048666-DECLARATION OF INVENTORSHIP (FORM 5) [19-07-2023(online)].pdf | 2023-07-19 |
| 6 | 202321048666-FORM-26 [14-09-2023(online)].pdf | 2023-09-14 |
| 7 | 202321048666-FORM-26 [16-10-2023(online)].pdf | 2023-10-16 |
| 8 | 202321048666-FORM-26 [04-04-2024(online)].pdf | 2024-04-04 |
| 9 | 202321048666-FORM 13 [04-04-2024(online)].pdf | 2024-04-04 |
| 10 | 202321048666-AMENDED DOCUMENTS [04-04-2024(online)].pdf | 2024-04-04 |
| 11 | 202321048666-Power of Attorney [04-06-2024(online)].pdf | 2024-06-04 |
| 12 | 202321048666-Covering Letter [04-06-2024(online)].pdf | 2024-06-04 |
| 13 | 202321048666-CORRESPONDANCE-WIPO CERTIFICATE-14-06-2024.pdf | 2024-06-14 |
| 14 | 202321048666-RELEVANT DOCUMENTS [16-07-2024(online)].pdf | 2024-07-16 |
| 15 | 202321048666-FORM-5 [16-07-2024(online)].pdf | 2024-07-16 |
| 16 | 202321048666-FORM 13 [16-07-2024(online)].pdf | 2024-07-16 |
| 17 | 202321048666-DRAWING [16-07-2024(online)].pdf | 2024-07-16 |
| 18 | 202321048666-CORRESPONDENCE-OTHERS [16-07-2024(online)].pdf | 2024-07-16 |
| 19 | 202321048666-COMPLETE SPECIFICATION [16-07-2024(online)].pdf | 2024-07-16 |
| 20 | Abstract-1.jpg | 2024-09-04 |
| 21 | 202321048666-ORIGINAL UR 6(1A) FORM 26-190924.pdf | 2024-09-23 |
| 22 | 202321048666-FORM 18 [30-09-2024(online)].pdf | 2024-09-30 |
| 23 | 202321048666-FORM 3 [04-11-2024(online)].pdf | 2024-11-04 |