Abstract: The present disclosure relates to a method and a system for managing data related to network functions. The present disclosure encompasses: a transceiver unit [302] configured to receive, at a container service module [308], from one or more first network services, a notification comprising first sets of data related to an update in a status of one or more network functions (NFs). Further, a storage unit [304] stores the received notification in one or more databases [310]. Further, the transceiver unit [302] receives a request for data related to any one or more NFs, from one or more second network services. Further, the storage unit [304] may retrieve, from the one or more databases [310], the one or more first sets of data based on the received request. Further, the transceiver unit [302] transmits the one or more first sets of data to the one or more second network services. [FIG. 3]
FORM 2
THE PATENTS ACT, 1970
(39 OF 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See section 10 and rule 13)
“METHOD AND SYSTEM FOR MANAGING DATA RELATED TO NETWORK FUNCTIONS”
We, Jio Platforms Limited, an Indian National, of Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India.
The following specification particularly describes the invention and the manner in which it is to be performed.
METHOD AND SYSTEM FOR MANAGING DATA RELATED TO
NETWORK FUNCTIONS
FIELD OF DISCLOSURE
[0001] Embodiments of the present disclosure generally relate to network
performance management systems. More particularly, embodiments of the present disclosure relate to methods and systems for managing data related to network functions.
BACKGROUND
[0002] The following description of the 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 is used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of the prior art.
[0003] Wireless communication technology has rapidly evolved over the past
few decades, with each generation bringing significant improvements and advancements. The first generation of wireless communication technology was based on analog technology and offered only voice services. However, with the advent of the second-generation (2G) technology, digital communication and data services became possible, and text messaging was introduced. 3G technology marked the introduction of high-speed internet access, mobile video calling, and location-based services. The fourth generation (4G) technology revolutionized wireless communication with faster data speeds, better network coverage, and improved security. Currently, the fifth generation (5G) technology is being deployed, promising even faster data speeds, low latency, and the ability to connect
multiple devices simultaneously. With each generation, wireless communication technology has become more advanced, sophisticated, and capable of delivering more services to its users.
[0004] In modern network infrastructures, network services (such as
microservices) often require access to different types of databases and storage units. The databases are capable of storing vast amounts of data, including configuration parameters, network states, and user-specific information, which need to be accessed and updated frequently. However, the diversity of database architectures (such as SQL and NoSQL) and the growing complexity of data queries have introduced significant challenges and further managing interactions between microservices and databases while minimizing data complexity and query time needs to be addressed.
[0005] Thus, there exists an imperative need in the art to develop methods and
systems for managing data related to network functions.
OBJECTS OF THE DISCLOSURE
[0006] Some of the objects of the present disclosure, which at least one
embodiment disclosed herein satisfies are listed herein below.
[0007] It is an object of the present disclosure to provide a system and a method
for managing data related to network functions.
[0008] It is another object of the present disclosure to provide an async event-
based implementation to utilize interface efficiently and auto sync inventory.
[0009] It is yet another object of the present disclosure to provide fault
tolerance for any event failure.
[0010] Yet another object of the present disclosure is to provide functionality
to address data complexity, reduce time complexity, fast response to query events leads to seamless user experience and ensures a single interface to interact with all types of data.
SUMMARY
[0011] This section is provided to introduce certain aspects of the present
disclosure in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.
[0012] An aspect of the present disclosure may relate to a method for managing
data related to network functions. The method comprises receiving, by a transceiver unit, at a container service module, from one or more first network services, a notification related to an update in a status of one or more network functions (NFs). Herein the notification comprises corresponding first sets of data related to the one or more NFs. Further, the method comprises storing, by a storage unit connected to the transceiver unit, the received notification in one or more databases. Furthermore, the method comprises receiving, by the transceiver unit, at the container service module, from one or more second network services, a request for data related to any one or more NFs. Herein, the request comprises corresponding second sets of data related to the one or more NFs. Next, the method comprises retrieving, by the storage unit, from the one or more databases, the one or more first sets of data based on the received request. Thereafter, the method comprises transmitting, by the transceiver unit, from the container service module to the one or more second network services, the one or more first sets of data.
[0013] In an exemplary aspect of the present disclosure, the method further
comprises the step of storing the received notification in the one or more databases comprising comparing, by a validation unit connected to the transceiver unit, the received first sets of data of the notification, and corresponding reference sets of data related to the one or more NFs. Herein, the reference sets of data are stored in the one or more databases. Further, validating, by the validation unit, the notification in response to a positive match between the received first sets of data and corresponding reference sets of data.
[0014] In an exemplary aspect of the present disclosure, the step of retrieving
the one or more first sets of data based on the received request comprises determining, by the storage unit, at least one target database from the one or more databases where the one or more databases are stored, based on the received second sets of data in the received request.
[0015] In an exemplary aspect of the present disclosure, the notification is
received by means of a hypertext transfer protocol (HTTP) request.
[0016] In an exemplary aspect of the present disclosure, the request comprises
a query event, and wherein the request is received by means of a HTTP request.
[0017] In an exemplary aspect of the present disclosure, the at least one of the
one or more databases is a NoSQL database.
[0018] In an exemplary aspect of the present disclosure, the container service
module, and the one or more databases are communicably coupled to each other by an interface.
[0019] In an exemplary aspect of the present disclosure, the interface is an
SA_NS interface.
[0020] In an exemplary aspect of the present disclosure, the one or more
network functions are cloud-native network functions.
5 [0021] Another aspect of the present disclosure may relate to a system for
managing data related to network functions. The system comprises a transceiver unit configured to receive, at a container service module, from one or more first network services, a notification related to an update in a status of one or more network functions (NFs). Herein, the notification comprises corresponding first sets
10 of data related to the one or more NFs. Further, a storage unit connected to the
transceiver unit, the storage unit configured to store the received notification in one or more databases. Further, the transceiver unit is configured to receive, at the container service module, from one or more second network services, a request for data related to any one or more NFs. Herein, the request comprises corresponding
15 second sets of data related to the one or more NFs. Further, the storage unit is
configured to retrieve, from the one or more databases, the one or more first sets of data based on the received request. Further, the transceiver unit is configured to transmit, from the container service module to the one or more second network services, the one or more first sets of data.
20
[0022] Yet another aspect of the present disclosure may relate to a non-
transitory computer-readable storage medium, storing instructions for managing data related to network functions, the storage medium comprising executable code which, when executed by one or more units of a system, causes: a transceiver unit
25 to receive, at a container service module, from one or more first network services,
a notification related to an update in a status of one or more network functions (NFs), wherein the notification comprises corresponding first sets of data related to the one or more NFs; a storage unit to store the received notification in one or more databases; the transceiver unit to receive, at the container service module, from one
30 or more second network services, a request for data related to any one or more NFs,
6
wherein the request comprises corresponding second sets of data related to the one
or more NFs; the storage unit to retrieve, from the one or more databases, the one
or more first sets of data based on the received request; and the transceiver unit to
transmit, from the container service module to the one or more second network
5 services, the one or more first sets of data.
DESCRIPTION OF THE DRAWINGS
[0023] The accompanying drawings, which are incorporated herein, and
10 constitute a part of this disclosure, illustrate exemplary embodiments of the
disclosed methods and systems in which like reference numerals refer to the same
parts throughout the different drawings. Components in the drawings are not
necessarily to scale, emphasis instead being placed upon clearly illustrating the
principles of the present disclosure. Also, the embodiments shown in the figures are
15 not to be construed as limiting the disclosure, but the possible variants of the method
and system according to the disclosure are illustrated herein to highlight the
advantages of the disclosure. It will be appreciated by those skilled in the art that
disclosure of such drawings includes disclosure of electrical components or
circuitry commonly used to implement such components.
20
[0024] FIG.1 illustrates an exemplary block diagram of a network function
virtualization management and orchestration (NFV MANO) architecture.
[0025] FIG. 2 illustrates an exemplary block diagram of a computing device
25 upon which the features of the present disclosure may be implemented, in
accordance with exemplary implementations of the present disclosure.
[0026] FIG. 3 illustrates an exemplary block diagram of a system for managing
data related to network functions, in accordance with exemplary implementations
30 of the present disclosure.
7
[0027] FIG. 4 illustrates a method flow diagram for managing data related to
network functions in accordance with exemplary implementations of the present disclosure. 5
[0028] FIG. 5 illustrates an exemplary block diagram of a container service
module for facilitating exchange of data related to network functions, in accordance with exemplary implementations of the present disclosure.
10 [0029] FIG. 6 illustrates a system architecture for managing data related to
network functions, in accordance with exemplary implementations of the present disclosure.
[0030] The foregoing shall be more apparent from the following more detailed
15 description of the disclosure.
DETAILED DESCRIPTION
[0031] In the following description, for the purposes of explanation, various
20 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 may each be used independently of one
another or with any combination of other features. An individual feature may not
25 address any of the problems discussed above or might address only some of the
problems discussed above.
[0032] The ensuing description provides exemplary embodiments only, and is
not intended to limit the scope, applicability, or configuration of the disclosure.
30 Rather, the ensuing description of the exemplary embodiments will provide those
8
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 disclosure as set forth. 5
[0033] 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, processes, and other components
10 may be shown as components in block diagram form in order not to obscure the
embodiments in unnecessary detail.
[0034] 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
15 structure diagram, or a block diagram. Although a flowchart may describe the
operations as a sequential process, many of the operations may 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.
20
[0035] The word “exemplary” and/or “demonstrative” is used herein to mean
serving as an example, instance, or illustration. For the avoidance of doubt, 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
25 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 “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
9
similar to the term “comprising” as an open transition word—without precluding any additional or other elements.
[0036] As used herein, a “processing unit” or “processor” or “operating
5 processor” includes one or more processors, wherein processor refers to any logic
circuitry for processing instructions. A processor may be a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality of microprocessors, one or more microprocessors in association with a Digital Signal Processing (DSP) core, a controller, a
10 microcontroller, Application Specific Integrated Circuits, Field Programmable
Gate Array circuits, any other type of integrated circuits, etc. The processor may perform signal coding data processing, input/output processing, and/or any other functionality that enables the working of the system according to the present disclosure. More specifically, the processor or processing unit is a hardware
15 processor.
[0037] As used herein, “a user equipment”, “a user device”, “a smart-user-
device”, “a smart-device”, “an electronic device”, “a mobile device”, “a handheld device”, “a wireless communication device”, “a mobile communication device”, “a
20 communication device” may be any electrical, electronic and/or computing device
or equipment, capable of implementing the features of the present disclosure. The user equipment/device may include, but is not limited to, a mobile phone, smart phone, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, wearable device or any other computing device which is capable
25 of implementing the features of the present disclosure. Also, the user device may
contain at least one input means configured to receive an input from unit(s) which are required to implement the features of the present disclosure.
[0038] As used herein, “storage unit” or “memory unit” refers to a machine or
30 computer-readable medium including any mechanism for storing information in a
10
form readable by a computer or similar machine. For example, a computer-readable
medium includes read-only memory (“ROM”), random access memory (“RAM”),
magnetic disk storage media, optical storage media, flash memory devices or other
types of machine-accessible storage media. The storage unit stores at least the data
5 that may be required by one or more units of the system to perform their respective
functions.
[0039] As used herein “interface” or “user interface” refers to a shared
boundary across which two or more separate components of a system exchange
10 information or data. The interface may also refer to a set of rules or protocols that
define communication or interaction of one or more modules or one or more units with each other, which also includes the methods, functions, or procedures that may be called.
15 [0040] All modules, units, components used herein, unless explicitly excluded
herein, may be software modules or hardware processors, the processors being a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller,
20 Application Specific Integrated Circuits (ASIC), Field Programmable Gate Array
circuits (FPGA), any other type of integrated circuits, etc.
[0041] As used herein the transceiver unit includes at least one receiver and at
least one transmitter configured respectively for receiving and transmitting data,
25 signals, information, or a combination thereof between units/components within the
system and/or connected with the system.
[0042] As discussed in the background section, the current known solutions
have several shortcomings. The present disclosure aims to overcome the above-
30 mentioned and other existing problems in this field of technology by providing a
11
method and a system of managing data related to network functions. The present
solution handles the communication between multiple network services, and
efficiently organizes and retrieves data from a plurality of databases, which reduces
the manual complexity involved in managing and querying large datasets and
5 further ensures that responses to query events are transmitted promptly.
[0043] FIG. 1 illustrates an exemplary block diagram representation of a
network function virtualization management and orchestration (NFV MANO) architecture [100], in accordance with exemplary implementation of the present
10 disclosure. The MANO architecture [100] is developed for managing telecom cloud
infrastructure automatically, managing design or deployment design, managing instantiation of a network node(s) etc. The MANO architecture [100] deploys the network node(s) in the form of Virtual Network Function (VNF) and Cloud-native/ Container Network Function (CNF). The system may comprise one or more
15 components of the MANO architecture. The MANO architecture [100] is used to
auto-instantiate the VNFs into the corresponding environment of the present disclosure so that it could help in onboarding other vendor(s) CNFs and VNFs to the platform. In an implementation, the system comprises a NFV Platform Decision Analytics (NPDA) [1096] component.
20
[0044] As shown in FIG. 1, the MANO architecture [100] comprises a user
interface layer [102]; a network function virtualization (NFV) and software defined network (SDN) design function module [104]; a platforms foundation services module [106], a platform core services module [108] and a platform resource
25 adapters and utilities module [112], wherein all the components are assumed to be
connected to each other in a manner as obvious to the person skilled in the art for implementing features of the present disclosure.
[0045] The NFV and SDN design function module [104] further comprises a
30 VNF lifecycle manager (compute) [1042]; a VNF catalogue [1044]; a network
12
services catalogue [1046]; a network slicing and service chaining manager [1048];
a physical and virtual resource manager [1050] and a CNF lifecycle manager
[1052]. The VNF lifecycle manager (compute) [1042] is responsible for on which
server of the communication network the microservice will be instantiated. The
5 VNF lifecycle manager (compute) [1042] will manage the overall flow of
incoming/ outgoing requests during interaction with the user. The VNF lifecycle manager (compute) [1042] is responsible for determining which sequence to be followed for executing the process. For e.g., in an AMF network function of the communication network (such as a 5G network), sequence for execution of
10 processes P1 and P2 etc. The VNF catalogue [1044] stores the metadata of all the
VNFs (also CNFs in some cases). The network services catalogue [1046] stores the information of the services that need to be run. The network slicing and service chaining manager [1048] manages the slicing (an ordered and connected sequence of network service/ network functions (NFs)) that must be applied to a specific
15 networked data packet. The physical and virtual resource manager [1050] stores the
logical and physical inventory of the VNFs. Just like the VNF lifecycle manager (compute) [1042], the CNF lifecycle manager [1052] is similarly used for the CNFs lifecycle management.
20 [0046] The platforms foundation services module [106] further comprises a
microservices elastic load balancer [1062]; an identify & access manager [1064]; a command line interface (CLI) [1066]; a central logging manager [1068]; and an event routing manager [1070]. The microservices elastic load balancer [1062] is used for maintaining the load balancing of the request for the services. The identify
25 & access manager [1064] is used for logging purposes. The command line interface
(CLI) [1066] is used to provide commands to execute certain processes which require changes during the run time. The central logging manager [1068] is responsible for keeping the logs of every service. These logs are generated by the MANO [100]. These logs are used for debugging purposes. The event routing
30 manager [1070] is responsible for routing the events i.e., the application
programming interface (API) hits to the corresponding services.
13
[0047] The platforms core services module [108] further comprises NFV
infrastructure monitoring manager [1082]; an assure manager [1084]; a
performance manager [1086]; a policy execution engine [1088]; a capacity
5 monitoring manager [1090]; a release management (mgmt.) repository [1092]; a
configuration manager & (GCT) [1094]; an NFV platform decision analytics [1096]; a platform NoSQL DB [1098]; a platform schedulers and cron jobs [1100]; a VNF backup & upgrade manager [1102]; a micro service auditor [1104]; and a platform operations, administration and maintenance manager [1106]. The NFV
10 infrastructure monitoring manager [1082] monitors the infrastructure part of the
NFs. For e.g., any metrics such as CPU utilization by the VNF. The assure manager [1084] is responsible for supervising the alarms the vendor is generating. The performance manager [1086] is responsible for manging the performance counters. The policy execution engine (PEGN) [1088] is responsible for all the managing the
15 policies. The capacity monitoring manager (CPM) [1090] is responsible for sending
the request to the PEGN [1088]. The release management (mgmt.) repository (RMR) [1092] is responsible for managing the releases and the images of all the vendor network node. The configuration manager & (GCT) [1094] manages the configuration and GCT of all the vendors. The NFV platform decision analytics
20 (NPDA) [1096] helps in deciding the priority of using the network resources. It is
further noted that the policy execution engine (PEGN) [1088], the configuration manager & (GCT) [1094] and the (NPDA) [1096] work together. The platform NoSQL DB [1098] is a platform database for storing all the inventory (both physical and logical) as well as the metadata of the VNFs and CNF. It may be noted that the
25 platform NoSQL DB [1098] may be just a narrow implementation of the present
disclosure, and any other kind of structure for the database may be implemented for the platform database such as relational or non-relational database. The platform schedulers and cron jobs [1100] schedules the task such as but not limited to triggering of an event, traversing the network graph etc. The VNF backup &
30 upgrade manager [1102] takes backup of the images, binaries of the VNFs and the
CNFs and produces those backups on demand in case of server failure. The micro
14
service auditor [1104] audits the microservices. For e.g., in a hypothetical case,
instances not being instantiated by the MANO architecture [100] using the network
resources then the micro service auditor [1104] audits and informs the same so that
resources can be released for services running in the MANO architecture [100],
5 thereby assuring the services only run on the MANO platform [100]. The platform
operations, administration, and maintenance manager [1106] is used for newer instances that are spawning.
[0048] The platform resource adapters and utilities module [112] further
10 comprises a platform external API adaptor and gateway [1122]; a generic decoder
and indexer (XML, CSV, JSON) [1124]; a docker swarm adaptor [1126]; an
OpenStack API adapter [1128]; and a NFV gateway [1130]. The platform external
API adaptor and gateway [1122] is responsible for handling the external services
(to the MANO platform [100]) that require the network resources. The generic
15 decoder and indexer (XML, CSV, JSON) [1124] gets directly the data of the vendor
system in the XML, CSV, JSON format. The docker swarm adaptor [1126] is the
interface provided between the telecom cloud and the MANO architecture [100] for
communication. The OpenStack API adapter [1128]; is used to connect with the
virtual machines (VMs). The NFV gateway [1130] is responsible for providing the
20 path to each service going to/incoming from the MANO architecture [100].
[0049] FIG. 2 illustrates an exemplary block diagram of a computing device
[200] (herein, also referred to as a computer system [200]) upon which one or more features of the present disclosure may be implemented, in accordance with an
25 exemplary implementation of the present disclosure. The present disclosure can be
implemented on a computing device [200] as shown in FIG. 2. The computing device [200] implements the present disclosure in accordance with the MANO architecture (as shown in FIG. 1). In an implementation, the computing device [200] may also implement a method for managing data related to network functions,
30 utilising a system, or one or more sub-systems, provided in the network. In another
implementation, the computing device [200] itself implements the method for
15
managing data related to network functions, using one or more units configured within the computing device [200], wherein said one or more units are capable of implementing the features as disclosed in the present disclosure.
5 [0050] The computing device [200] may include a bus [202] or other
communication mechanism(s) for communicating information, and a hardware processor [204] coupled with bus [202] for processing said information. The hardware processor [204] may be, for example, a general-purpose microprocessor. The computing device [200] may also include a main memory [206], such as a
10 random-access memory (RAM), or other dynamic storage device, coupled to the
bus [202], for storing information and instructions to be executed by the processor [204]. The main memory [206] also may be used for storing temporary variables or other intermediate information during execution of the instructions to be executed by the processor [204]. Such instructions, when stored in a non-transitory storage
15 media accessible to the processor [204], render the computing device [200] into a
special purpose device that is customized to perform operations according to the instructions. The computing device [200] further includes a read only memory (ROM) [208] or other static storage device coupled to the bus [202] for storing static information and instructions for the processor [204].
20
[0051] A storage device [210], such as a magnetic disk, optical disk, or solid-
state drive is provided and coupled to the bus [202] for storing information and instructions. The computing device [200] may be coupled via the bus [202] to a display [212], such as a cathode ray tube (CRT), Liquid crystal Display (LCD),
25 Light Emitting Diode (LED) display, Organic LED (OLED) display, etc., for
displaying information to a user of the computing device [200]. An input device [214], including alphanumeric and other keys, touch screen input means, etc. may be coupled to the bus [202] for communicating information and command selections to the processor [204]. Another type of user input device may be a cursor
30 controller [216], such as a mouse, a trackball, or cursor direction keys, for
communicating direction information and command selections to the processor
16
[204], and for controlling cursor movement on the display [212]. The cursor controller [216] typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the cursor controller [216] to specify positions in a plane. 5
[0052] The computing device [200] may implement the techniques described
herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware, and/or program logic which, in combination with the computing device [200], causes or programs the computing device [200] to be a special-purpose device.
10 According to one implementation, the techniques herein are performed by the
computing device [200] in response to the processor [204] executing one or more sequences of one or more instructions contained in the main memory [206]. The one or more instructions may be read into the main memory [206] from another storage medium, such as the storage device [210]. Execution of the one or more
15 sequences of the one or more instructions contained in the main memory [206]
causes the processor [204] to perform the process steps described herein. In alternative implementations of the present disclosure, hard-wired circuitry may be used in place of, or in combination with, software instructions.
20 [0053] The computing device [200] also may include a communication
interface [218] coupled to the bus [202]. The communication interface [218] provides two-way data communication coupling to a network link [220] that is connected to a local network [222]. For example, the communication interface [218] may be an integrated services digital network (ISDN) card, cable modem,
25 satellite modem, or a modem to provide a data communication connection to a
corresponding type of telecommunication line. In another example, the communication interface [218] may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, the communication interface [218]
30 sends and receives electrical, electromagnetic, or optical signals that carry digital
data streams representing different types of information.
17
[0054] The computing device [200] can send and receive data, including
program code, messages, etc. through the network(s), the network link [220] and
the communication interface [218]. In an example, a server [230] might transmit a
requested code for an application program through the Internet [228], the ISP [226],
5 the local network [222], the host [224] and the communication interface [218]. The
received code may be executed by the processor [204] as it is received, and/or stored in the storage device [210], or other non-volatile storage for later execution.
[0055] Referring to FIG. 3, an exemplary block diagram of a system [300] for
10 managing data related to network functions, is shown, in accordance with the
exemplary implementations of the present disclosure. The system [300] comprises at least one transceiver unit [302], at least one storage unit [304], and at least one validation unit [306]. Also, all of the components/ units of the system [300] are assumed to be connected to each other unless otherwise indicated below. As shown
15 in FIG. 3, all units shown within the system [300] should also be assumed to be
connected to each other. Also, in FIG. 3, only a few units are shown; however, the system [300] may comprise multiple such units or the system [300] may comprise any such numbers of said units, as required to implement the features of the present disclosure. Further, in an implementation, the system [300] may be present in a user
20 equipment (UE) (such as a user device) to implement the features of the present
disclosure. The system [300] may be a part of the UE or may be independent of but in communication with the UE. In another implementation, the system [300] may reside in a server or a network entity. In yet another implementation, the system [300] may reside partly in the server/ network entity and partly in the UE.
25
[0056] The system [300] is configured for managing data related to network
functions, with the help of the interconnection between the components/units of the system [300].
18
[0057] Further, in accordance with the present disclosure, it is to be
acknowledged that the functionality described for the various components/units can
be implemented interchangeably. While specific embodiments may disclose a
particular functionality of these units for clarity, it is recognized that various
5 configurations and combinations thereof are within the scope of the disclosure. The
functionality of specific units as disclosed in the disclosure should not be construed
as limiting the scope of the present disclosure. Consequently, alternative
arrangements and substitutions of units, provided they achieve the intended
functionality described herein, are considered to be encompassed within the scope
10 of the present disclosure.
[0058] The system [300] comprises a transceiver unit [302]. The transceiver
unit [302] is configured to receive, at a container service module [308], from one or more first network services, a notification related to an update in a status of one
15 or more network functions (NFs). Further, the one or more network functions are
cloud-native network functions (CNFs) or cloud-native network function components (CNFCs). In another embodiment, the one or more network functions may be virtual network functions (VNFs) or virtual network function components (VNFCs).
20
[0059] Herein, the one or more network services may refer to one or more
microservices that may be connected to the one or more network functions. The microservices may require data from the network functions for their operation or may be required to exchange data and/or instructions with the network functions
25 for operation. The microservices may include one or more modules from the NFV
MANO architecture [100] described in FIG. 1.
[0060] The container service module [308] may be configured to provide a
platform to create and run applications using containers (such as CNFs/CNFCs).
30 The container service module [308]may be configured to manage deployment of
19
the application by defining parameters of execution of the application, such as,
without limitations, which container image to use, how much processor/memory
resources to allocate for execution of the application, which commands to execute,
which network to utilize, etc. In an exemplary embodiment, the container service
5 module [308] may be a docker service adapter (DSA) module.
[0061] Further, the notifications may relate to a plurality of operations
performed on the one or more NFs such as restore, backup, modify, initiate, or terminate network functions. In other words, the notification may relate to a request
10 for updating instantiation of the one or more NFs. The notification received at the
transceiver unit [302], may refer to the update in status of the one or more NFs. Herein, the update in status may refer to a change in operational state of the one or more NFs. In one example, the update in status may refer to a creation of a new CNF. In another example, the update in status may refer to an update on the existing
15 one or more CNFs. In another example, the update in status may occur in case of a
termination of the one or more CNFs. In yet another example, the update in status may occur when the one or more CNFs is being restored or backed up.
[0062] It is to be noted that the update of status mentioned above is exemplary
20 and not in any order may restrict the scope of the present disclosure.
[0063] Further, the notification comprises corresponding first sets of data
related to the one or more NFs. In one example, the first sets of data may include an identifier (ID) of the one or more CNFs. In another example, the first sets of data
25 may include an information regarding the state of the one or more CNFs such as
whether the one or more CNFs are active, terminated or updated. In yet another example, the first sets of data may include a reason for the update in the status of the one or more CNFs. In yet another example, the first sets of data may further include resource-related details, such as one or more resources allocated to the one
30 or more CNFs. It is to be noted that the first sets of data mentioned herein are just
20
exemplary and may include one or in combination of sets of data mentioned herein and other known to the person skilled in the art.
[0064] Further, the container service module [308] mentioned may refer to a
5 module for processing the first sets of data mentioned in the incoming notifications
and accordingly perform one or more suitable actions such as storing data, updating status, or making further queries.
[0065] Furthermore, the notification is received by means of a hypertext
10 transfer protocol (HTTP) request. In an implementation of the present disclosure,
the HTTP request is the protocol used to transmit notifications between the one or
more network services and the transceiver unit [302]. In one example, the HTTP
may provide a structured communication between the one or more microservices,
ensuring that notifications are delivered to the transceiver unit [302] without any
15 loss of data from the first sets of data.
[0066] The system [300] further comprises the storage unit [304] connected to
the transceiver unit [302], the storage unit [304] configured to store the received notification in one or more databases [310]. The one or more databases [310] may
20 be part of a cluster of databases or may be separate databases communicably
coupled to the storage unit [304]. In an embodiment, the one or more databases may be connected to each other. However, in another embodiment, the one or more databases may not be connected with each other. Herein, the at least one of the one or more databases [310] are NoSQL databases. NoSQL is an approach to database
25 design that focuses on providing a mechanism for storage and retrieval of data that
is modelled in means other than the tabular relations used in relational databases. Instead of the typical tabular structure of a relational database, NoSQL databases house data within one data structure. Since this non-relational database design does not require a schema, it offers rapid scalability to manage large and typically
30 unstructured data sets.
21
[0067] In an embodiment, the container service module [308], and the one or
more databases [310] are communicably coupled to each other by an interface. In
an embodiment, the container service module [308] is a docker service adapter
5 module, and the one or more databases [310] are NoSQL databases. In such an
embodiment, the interface is an SA_NS interface, which corresponds to the interface between the docker service adapter and one or more NoSQL databases.
[0068] Post processing of the first sets of data present in the notifications at the
10 container service module [308], the storage unit [304] may further store the
corresponding data (i.e., the first sets of data) in the one or more databases [310]
(such as the NoSQL database). In an implementation of the present disclosure, the
storage unit [304] may further store the corresponding data in a pre-defined
structure or arrangement such as based on at least one of CNF ID, a type of
15 operation, or any other format that is known to a person skilled in the art.
[0069] Herein, the one or more databases [310] are associated with the system
[300] and are utilized for storing notifications associated with the one or more NF operations. The one or more databases [310] are utilized for maintaining updated
20 records of the current status and configurations of the network functions (NFs), such
as CNFs and CNFCs. Further, from the one or more databases [310], at least one database is the NoSQL database. In one example, the NoSQL databases are suitable for handling dynamic data related to CNF/CNFCs. In another example, the NoSQL databases can be modified based on the changing capacity of the network (in events,
25 the one or more new CNFs are frequently deployed).
[0070] The system [300] further comprises the validation unit [306] connected
to the transceiver unit [302]. To store the received notification in the one or more
databases [310], the validation unit [306] is configured to compare the received first
30 sets of data of the notification, and corresponding reference sets of data related to
22
the one or more NFs. Further, the validation unit [306] is configured to validate the
notification in response to a positive match between the received first sets of data
and corresponding reference sets of data. In case of validation of the notification,
the notification is stored in the one or more databases [310]. In an event, the
5 transceiver unit [302] receives the notifications, then prior to storing of the
notifications in the one or more databases [310], the validation unit [306] may compare the received first sets of data (such as CNF ID or type of operation or alike) from a pre-existing or reference sets of data stored in the one or more database. The reference sets of data mentioned herein are preferably previous notifications or
10 stored configurations of CNF from the one or more CNFs. In one example, the
reference sets of data may include a historical status of the one or more CNFs. In another example, the reference sets of data may include one or more resources previously allocated to the one or more CNFs. In yet another example, the reference sets of data may include an existing configuration of the one or more CNFs or
15 CNFCs. It is to be noted that the reference sets of data mentioned above are just
exemplary and may not in any order may limit the scope of the present disclosure.
[0071] In an embodiment, in the event that the validation is negative, i.e., the
validation unit [306] deems that the notification is not valid, then the notification is
20 not stored in the one or more databases [310]. Further, an error message may be
transmitted by the transceiver unit [302] back to the one or more first network service which originally transmitted the notification.
[0072] For ease of understanding, explaining the above-mentioned paragraph
25 with help of an exemplary scenario, in an event, if a notification is received at the
transceiver unit [302], the validation unit [306] fetches a corresponding reference
data (associated with similar CNFs or CNFCs) from the NoSQL database or other
on or more databases to compare the corresponding data with the new notification.
Further, in an event the validation unit [306] may detect a positive match between
30 the received first sets of data and corresponding reference sets of data, then in such
an event, the validation unit [306] thereafter positively validates the notification in
23
response. In the event of the positive match, the validation unit [306] may further
communicate with the transceiver unit [302] to transmit the received notification to
the storage unit [304] to store said notification in the one or more databases [310].
Further, in an event the validation unit [306] may detect a negative match between
5 the received first sets of data and the corresponding reference set of data, then in
such case, the container service module [308] may reject the received notification by generating an error message, and, in such events, no further changes are to be made in the one or more databases [310].
10 [0073] The transceiver unit [302] is further configured to receive, at the
container service module [308], from one or more second network services, a request for data related to any one or more NFs. Further, the request comprises retrieving data associated with the one or more NFs (i.e., CNFs or CNFCs). Here, the data corresponds to the first sets of data of the one or more NFs. In other words,
15 the data corresponds to instantiation data of the one or more NFs. Further, the
request is generated by the one or more second services that may require the data associated with the one or more NFs. In an embodiment, the first and second network services may be the same. However, in other embodiments, the first and second network services may be different.
20
[0074] Herein, the request comprises corresponding second sets of data related
to the one or more NFs. The second sets of data may further include a CNF ID, an information regarding the state of the one or more CNFs, a type of network function operation, and alike known to a person skilled in the art.
25
[0075] Further, the second sets of data may assist in identifying a target CNF
and further corelating said second sets of data with the sets of data stored in the one or more databases [310] (first set of data).
24
[0076] Further, the request comprises a query event, and wherein the request
is received by means of a HTTP request. Herein, the query event is an HTTP-based
request generated by the one or more second network services. In the query event,
the container service module [308] may process the second sets of data and based
5 on the second sets of data, the transceiver unit [302] may transmit said second sets
of data to the storage unit [304] for taking a suitable action. Herein, the second sets of data may directly or indirectly relate to the first sets of data, such as by using the same CNF ID but the notification includes a query for different attributes like resource allocation or current status of the one or more CNFs or CNFCs.
10
[0077] Further, the storage unit [304] is configured to retrieve, from the one or
more databases [310], the one or more first sets of data based on the received request. Post receiving the second sets of data, the storing unit may further fetch the first sets of data that are pre-stored during prior events.
15
[0078] Further, to retrieve the one or more first sets of data based on the
received request, the storage unit [304] is configured to determine at least one target database from the one or more databases [310]. Furthermore, the one or more databases [310] are stored, based on the received second sets of data in the received
20 request. Herein, the storage unit [304] as mentioned above is associated with the
one or more databases [310] that may store the first sets of data in the organized manner. Further, based on the second sets of data, the storing unit may determine the target database. In one example, in an event, the request may require the status of a CNF, then in such event, the storing unit may direct the query (i.e., the request)
25 to a specific database that may contain operational or status-related information of
the one or more CNFs or CNFCs. In another example, in an event, the request may require resource usage of the one or more CNFs or CNFCs, then in such an event, the storing unit may direct the query (i.e., the request) to a specific database that may contain resource allocation data.
30
25
[0079] Post determining the target database, the storage unit [304] sends a
query to said specific database to fetch the first sets of data. Further, the retrieved data sets are then prepared and sent back to the transceiver unit [302].
5 [0080] Further, the transceiver unit [302] configured to transmit, from the
container service module [308] to the one or more second network services, the one
or more first sets of data. Post receiving the first sets of data from the storage unit
[304], the transceiver unit [302] may further send the retrieved first sets of data to
the one or more second network services as a response to the request generated by
10 the one or more second network services.
[0081] Referring to FIG. 4, an exemplary method flow diagram [400] for
managing data related to network functions, in accordance with exemplary
implementations of the present disclosure is shown. In an implementation the
15 method [400] is performed by the system [300]. Further, in an implementation, the
system [300] may be present in a server device to implement the features of the present disclosure.
[0082] Also, as shown in Figure 4, the method [400] initially starts at step
20 [402].
[0083] At step [404], the method [400] comprises receiving, by the transceiver
unit [302], at the container service module [308], from one or more first network
services, the notification related to an update in the status of one or more network
25 functions (NFs). Further, the one or more network functions are cloud-native
network functions (CNFs) or cloud-native network function components (CNFCs).
[0084] The method [400] further explains that the notification comprises
corresponding first sets of data related to the one or more NFs. Further, the
30 notification is received by means of the hypertext transfer protocol (HTTP) request.
26
[0085] At step [406], the method [400] further comprises storing, by the
storage unit [304] connected to the transceiver unit [302], the received notification in one or more databases [310]. Further, the at least one of the one or more databases [310] is a NoSQL database. 5
[0086] The method [400] further explains that the step of storing the received
notification in the one or more databases [310] comprises comparing, by the
validation unit [306] connected to the transceiver unit [302], the received first sets
of data of the notification, and corresponding reference sets of data related to the
10 one or more NFs. Further, the reference sets of data are stored in the one or more
databases [310].
[0087] Further, the step of storing the received notification in the one or more
databases [310] comprises validating, by the validation unit [306], the notification
15 in response to the positive match between the received first sets of data and
corresponding reference sets of data.
[0088] At step [408], the method [400] comprises receiving, by the transceiver
unit [302], at the container service module [308], from one or more second network
20 services, a request for data related to any one or more NFs. Further, the request
comprises corresponding second sets of data related to the one or more NFs.
[0089] The method [400] further explains that the request comprises a query
event, and the request is received by means of a HTTP request. 25
[0090] At step [410], the method [400] comprises retrieving, by the storage
unit [304], from the one or more databases [310], the one or more first sets of data based on the received request.
27
[0091] The method [400] further explains that the step of retrieving the one or
more first sets of data based on the received request comprises determining, by the
storage unit [304], at least one target database from the one or more databases [310]
where the one or more databases [310] are stored, based on the received second sets
5 of data in the received request.
[0092] At step [412], the method [400] comprises transmitting, by the
transceiver unit [302], from the container service module [308] to the one or more second network services, the one or more first sets of data. 10
[0093] The method [400] herein terminates at step [414].
[0094] Referring to FIG. 5, an exemplary block diagram of a container service
module cluster [500] for facilitating exchange of data related to network functions,
15 is shown, in accordance with the exemplary implementations of the present
disclosure. The container service module cluster [500] comprises at least one container service module [502], and at least one NoSQL Database [504].
[0095] The container service module [502] mentioned herein is responsible for
20 managing requests related to various cloud-native network functions (CNFs) and
their status.
[0096] Further, the container service module [502] is connected with at least
one NoSQL database [504]. The NoSQL Database [504] mentioned herein may
25 manage and store large sets of unstructured or semi-structured data, associated with
the one or more network functions (NFs) such as the CNFs and CNFCs.
[0097] Further, as shown in FIG. 5, the container service module [502] and the
NoSQL database [504] are connected via an SA_NS interface, which facilitates an
28
exchange of information between the container service module [502] and the NoSQL database [504].
[0098] Further, in an implementation of the present disclosure, the container
5 service module [502] may receive notifications from the one or more network
services. The notification may include an update in the status of one or more NFs. Further, the container service module [502] communicates with the NoSQL database [504] to store or retrieve relevant data based on the incoming requests or notifications from the one or more network services.
10
[0099] Post receiving the notification from the container service module [502],
the NoSQL database [504] may retrieve the corresponding set of data based on the received notification and forward the set of data back to the container service module [502].
15
[0100] In an implementation, in case the notification related to an update in the
status of one or more network functions (NFs) is received by the container service module [502] (via HTTP requests from external network services), the notification is transmitted to the NoSQL Database [504] through the SA_NS link.
20
[0101] In another implementation, the container service module [502] may also
receive queries from external services requesting specific data about one or more NFs. Further, the container service module [502], post receiving the queries, retrieves the relevant data from the NoSQL Database [504], and accordingly
25 provides the retrieved data to the external services.
[0102] Referring to FIG. 6, a system architecture [600] for managing data
related to network functions, is shown, in accordance with the exemplary
implementations of the present disclosure. The system [600] comprises at least one
30 MS-X random microservices [602], and the container service module cluster [500].
29
[0103] The MS-X random microservices may represent a set of microservices
(MS-X) that may generate and send events to the container service module [502].
The MS-X random microservices may perform various tasks in a cloud-native
environment, such as initiating, modifying, or terminating network functions and
5 network services.
[0104] Further, in an implementation of the present disclosure, the MS-X
random microservices may send a request (a create request or an update request) to
the container service module cluster [500] whenever an event needs to be logged,
10 or data related to a specific network function that needs to be updated. Further, as
mentioned in FIG. 5, post processing the request, the container service module cluster [500] may send back a response, confirming that the event or update has been successfully completed.
15 [0105] The present disclosure further provides a non-transitory computer-
readable storage medium, storing instructions for managing data related to network functions, the storage medium comprising executable code which, when executed by one or more units of a system, causes: a transceiver unit [302] to receive, at a container service module [308], from one or more first network services, a
20 notification related to an update in a status of one or more network functions (NFs),
wherein the notification comprises corresponding first sets of data related to the one or more NFs; a storage unit [304] to store the received notification in one or more databases [310]; the transceiver unit [302] to receive, at the container service module [308], from one or more second network services, a request for data related
25 to any one or more NFs, wherein the request comprises corresponding second sets
of data related to the one or more NFs; the storage unit [304] to retrieve, from the one or more databases [310], the one or more first sets of data based on the received request; and the transceiver unit [302] to transmit, from the container service module [308] to the one or more second network services, the one or more first sets
30 of data.
30
[0106] As is evident from the above, the present disclosure provides a
technically advanced solution for managing data related to network functions. The present solution provides functionality to address data complexity, reduce time complexity, fast response to query events leads to seamless user experience and ensures a single interface to interact with all types of data.
[0107] While considerable emphasis has been placed herein on the disclosed
implementations, it will be appreciated that many implementations can be made and that many changes can be made to the implementations without departing from the principles of the present disclosure. These and other changes in the implementations of the present disclosure will be apparent to those skilled in the art, whereby it is to be understood that the foregoing descriptive matter to be implemented is illustrative and non-limiting.
We Claim:
1. A method [400] for managing data related to network functions, the method
[400] comprising:
- receiving, by a transceiver unit [302], at a container service module [308], from one or more first network services, a notification related to an update in a status of one or more network functions (NFs), wherein the notification comprises corresponding first sets of data related to the one or more NFs;
- storing, by a storage unit [304] connected to the transceiver unit [302], the received notification in one or more databases [310];
- receiving, by the transceiver unit [302], at the container service module [308], from one or more second network services, a request for data related to any one or more NFs, wherein the request comprises corresponding second sets of data related to the one or more NFs;
- retrieving, by the storage unit [304], from the one or more databases [310], the one or more first sets of data based on the received request; and
- transmitting, by the transceiver unit [302], from the container service module [308] to the one or more second network services, the one or more first sets of data.
2. The method [400] as claimed in claim 1, wherein the step of storing the
received notification in the one or more databases [310] comprises:
- comparing, by a validation unit [306] connected to the transceiver unit
[302], the received first sets of data of the notification, and
corresponding reference sets of data related to the one or more NFs,
wherein the reference sets of data are stored in the one or more
databases [310]; and
- validating, by the validation unit [306], the notification in response to a positive match between the received first sets of data and corresponding reference sets of data.
3. The method [400] as claimed in claim 1, wherein the step of retrieving the one or more first sets of data based on the received request comprises determining, by the storage unit [304], at least one target database from the one or more databases [310] where the one or more databases [310] are stored, based on the received second sets of data in the received request.
4. The method [400] as claimed in claim 1, wherein the notification is received by means of a hypertext transfer protocol (HTTP) request.
5. The method [400] as claimed in claim 1, wherein the request comprises a query event, and wherein the request is received by means of a HTTP request.
6. The method [400] as claimed in claim 1, wherein the at least one of the one or more databases [310] is a NoSQL database.
7. The method [400] as claimed in claim 1, wherein the container service module [308], and the one or more databases [310] are communicably coupled to each other by an interface.
8. The method [400] as claimed in claim 7, wherein the interface is an SA_NS interface.
9. The method [400] as claimed in claim 1, wherein the one or more network functions are cloud-native network functions.
10. A system [300] for managing data related to network functions, the system
[300] comprising:
- a transceiver unit [302] configured to receive, at a container service module [308], from one or more first network services, a notification related to an update in a status of one or more network functions (NFs), wherein the notification comprises corresponding first sets of data related to the one or more NFs;
- a storage unit [304] connected to the transceiver unit [302], the storage unit [304] configured to store the received notification in one or more databases [310];
- the transceiver unit [302] configured to receive, at the container service module [308], from one or more second network services, a request for data related to any one or more NFs, wherein the request comprises corresponding second sets of data related to the one or more NFs;
- the storage unit [304] configured to retrieve, from the one or more databases [310], the one or more first sets of data based on the received request; and
- the transceiver unit [302] configured to transmit, from the container service module [308] to the one or more second network services, the one or more first sets of data.
11. The system [300] as claimed in claim 10, wherein the system [300]
comprises a validation unit [306] connected to the transceiver unit [302],
and wherein to store the received notification in the one or more databases
[310], the validation unit [306] is configured to:
- compare the received first sets of data of the notification, and
corresponding reference sets of data related to the one or more NFs,
wherein the reference sets of data are stored in the one or more
databases [310]; and
- positively validate the notification in response to a positive match between the received first sets of data and corresponding reference sets of data.
12. The system [300] as claimed in claim 10, wherein, to retrieve the one or more first sets of data based on the received request, the storage unit [304] is configured to determine at least one target database from the one or more databases [310] where the one or more databases [310] are stored, based on the received second sets of data in the received request.
13. The system [300] as claimed in claim 10, wherein the notification is received by means of a hypertext transfer protocol (HTTP) request.
14. The system [300] as claimed in claim 10, wherein the request comprises a query event, and wherein the request is received by means of a HTTP request.
15. The system [300] as claimed in claim 10, wherein the at least one of the one or more databases [310] is a NoSQL database.
16. The system [300] as claimed in claim 10, wherein the container service module [308], and the one or more databases [310] are communicably coupled to each other by an interface.
17. The system [300] as claimed in claim 16, wherein the interface is an SA_NS interface.
18. The system [300] as claimed in claim 10, wherein the one or more network functions are cloud-native network functions.
| # | Name | Date |
|---|---|---|
| 1 | 202321061571-STATEMENT OF UNDERTAKING (FORM 3) [13-09-2023(online)].pdf | 2023-09-13 |
| 2 | 202321061571-PROVISIONAL SPECIFICATION [13-09-2023(online)].pdf | 2023-09-13 |
| 3 | 202321061571-POWER OF AUTHORITY [13-09-2023(online)].pdf | 2023-09-13 |
| 4 | 202321061571-FORM 1 [13-09-2023(online)].pdf | 2023-09-13 |
| 5 | 202321061571-FIGURE OF ABSTRACT [13-09-2023(online)].pdf | 2023-09-13 |
| 6 | 202321061571-DRAWINGS [13-09-2023(online)].pdf | 2023-09-13 |
| 7 | 202321061571-Proof of Right [09-01-2024(online)].pdf | 2024-01-09 |
| 8 | 202321061571-FORM-5 [12-09-2024(online)].pdf | 2024-09-12 |
| 9 | 202321061571-ENDORSEMENT BY INVENTORS [12-09-2024(online)].pdf | 2024-09-12 |
| 10 | 202321061571-DRAWING [12-09-2024(online)].pdf | 2024-09-12 |
| 11 | 202321061571-CORRESPONDENCE-OTHERS [12-09-2024(online)].pdf | 2024-09-12 |
| 12 | 202321061571-COMPLETE SPECIFICATION [12-09-2024(online)].pdf | 2024-09-12 |
| 13 | 202321061571-Request Letter-Correspondence [20-09-2024(online)].pdf | 2024-09-20 |
| 14 | 202321061571-Power of Attorney [20-09-2024(online)].pdf | 2024-09-20 |
| 15 | 202321061571-Form 1 (Submitted on date of filing) [20-09-2024(online)].pdf | 2024-09-20 |
| 16 | 202321061571-Covering Letter [20-09-2024(online)].pdf | 2024-09-20 |
| 17 | 202321061571-CERTIFIED COPIES TRANSMISSION TO IB [20-09-2024(online)].pdf | 2024-09-20 |
| 18 | 202321061571-FORM 3 [07-10-2024(online)].pdf | 2024-10-07 |
| 19 | Abstract 1.jpg | 2024-10-08 |
| 20 | 202321061571-ORIGINAL UR 6(1A) FORM 1 & 26-030125.pdf | 2025-01-07 |