Sign In to Follow Application
View All Documents & Correspondence

Method And System For Controlling One Or More Application Servers In A Network

Abstract: The present disclosure relates to a method [400] and a system [300] for controlling one or more application servers in a network. The method comprising receiving, at a node of the network, an invite request associated with a service in the network, wherein the invite request is associated with a target trigger point; matching, the target trigger point with one or more trigger points configured at an Initial Filter Criteria (IFC); selecting, based on the matching, a first application server from the one or more application servers, to receive the invite request; updating, one or more attributes in a set of attributes; wherein the set of attributes is associated with each of the one or more application servers; and blacklisting, the first application server, based on the updated set of attributes. [FIG. 3]

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
10 July 2023
Publication Number
03/2025
Publication Type
INA
Invention Field
Status
Email
Parent Application
Patent Number
Legal Status
Grant Date
2025-10-27
Renewal Date

Applicants

Jio Platforms Limited
Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India

Inventors

1. Anurag Sinha
Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India
2. Priti Kelkar
Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India
3. Abhay Kumar
Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India
4. Mehul Solanki
Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India

Specification

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 CONTROLLING ONE OR MORE APPLICATION
SERVERS IN A NETWORK”
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 CONTROLLING ONE OR MORE APPLICATION
SERVERS IN A NETWORK
TECHNICAL FIELD
[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 controlling one or more application servers in a network.
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. The third generation (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 telecommunications networks, operators offer various services on top of traditional calling services, such as multimedia telephony (MMTel), value added services (VAS), Rich Communication Services (RCS), and more. The MMTel refers to a multimedia telephony service that improve a traditional voice calling with multimedia capability such as video
2

calling, multimedia conferencing, and instant messaging. The MMTel enables users to communicate using various forms of media over IP (Internet Protocol) networks. Further, the VAS include a broad range of services for enhancing a basic voice and data services to meet specific user needs or enhance user experience such as short message service (SMS), multimedia message service (MMS). The RCS is an evolution of SMS messaging that enhances one or more traditional messaging services with rich multimedia capabilities. The RCS supports functionalities like group chat, file sharing, high-resolution images and videos, read receipts.
[0005] These additional services are provided by Application Servers (AS) integrated with the IMS Core. The IMS Core comprises various functional elements responsible for session control and management. One such element is the Serving-Call Session Control Function (S-CSCF), which plays an important role in handling call sessions and service invocation within the IMS network. The S-CSCF employs an initial filter criterion (IFC) to handle incoming sessions and which AS to trigger for specific services. Also, each IFC contains information about when to trigger an AS (the trigger point) and which AS to trigger (specified by its ServerName attribute). The ServerName attribute refers to a parameter which identifies the AS to be triggered for one or more services or session handling. The ServerName attribute is a part of the IFC configured within the S-CSCF.
[0006] However, a significant limitation of the current approach is its restriction to defining only a single Fully Qualified Domain Name (FQDN) for an Application Server (AS) within an Initial Filter Criteria (IFC). Further the FQDN refers to a complete and specific domain name that indicates an exact location of a resource within the hierarchical Domain Name System (DNS) of the internet. This limitation poses a considerable challenge to the Serving-Call Session Control Function (S-CSCF) in effectively managing multiple AS instances and distributing traffic among them. When multiple AS instances are tasked with providing a service in the network, they cannot be directly defined against the IFC. Instead, operators are compelled to resort to Domain Name System (DNS) based resolution, where the AS FQDN is defined with all the IPs of application server instances in DNS. However, this approach significantly reduces the control that the S-CSCF has over maintaining these application servers. This limitation not only obstructs the scalability and flexibility of the network but also compromises its ability to accommodate service demands and meet user expectations. By

constraining the S-CSCF's ability to manage multiple AS instances, the currently available approaches limit the network's responsiveness.
[0007] Therefore, there exists a need for an improved system and method that overcomes the limitations of the prior art, allowing for efficient maintenance and control of multiple application servers in an IMS network.
SUMMARY OF THE DISCLOSURE
[0008] 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.
[0009] An aspect of the present disclosure may relate to a method for controlling one or more application servers in a network. The method comprising receiving, via a transceiver unit at a node of the network, an invite request associated with a service in the network, wherein the invite request is associated with a target trigger point. The method comprises matching, via a processing unit, the target trigger point with one or more trigger points configured at an Initial Filter Criteria (IFC), wherein the IFC is defined at the node and the IFC further comprises a logical application server name mapped to the one or more application servers. The method comprises selecting, via the processing unit, based on the matching, a first application server from the one or more application servers mapped against the logical server name associated with the IFC, to receive the invite request. The method comprises updating via the processing unit, one or more attributes in a set of attributes associated with the first application server, based on an event a negative response is received from the first application server; wherein the set of attributes is associated with each of the one or more application servers. The method comprises blacklisting, via the processing unit, the first application server, based on the updated set of attributes.
[0010] In an exemplary aspect of the present disclosure, the one or more IFC may be defined at the node.
[0011] In an exemplary aspect of the present disclosure, the IFC defined at the node is reconfigured based on the blacklisting of the first application server.

[0012] In an exemplary aspect of the present disclosure, the method further comprising selecting via the processing unit, a second application server from the one or more application servers configured against the logical server name, in the event a negative response is received from the first application server.
[0013] In an exemplary aspect of the present disclosure, the set of attributes associated with each of the one or more application servers, further comprises, a failure counter associated with each of a negative response received from the one or more application servers, a pre-defined threshold counter associated with the failure counter and a pre-defined revoke time for the one or more application servers if blacklisted.
[0014] In an exemplary aspect of the present disclosure, the blacklisting the first application server further comprises increasing, via the processing unit, the failure counter associated with the first application server, against the received negative response; detecting, via the processing unit, a breach condition based on matching of the failure counter and the predefined threshold counter associated with the failure counter; and blacklisting, via the processing unit, the first application based on detecting the breach condition.
[0015] In an exemplary aspect of the present disclosure, the breach condition is detected in an event the pre-defined threshold counter is at least equal to the failure counter associated with the first application server.
[0016] In an exemplary aspect of the present disclosure, in an event the breach condition is detected the first application server is revoked for a predefined revoke time associated with the first application server.
[0017] Another aspect of the present disclosure may relate to a system for controlling one or more application servers in a network. The system comprises a transceiver unit configured to receive, at a node of the network, an invite request associated with a service in the network, wherein the invite request is associated with a target trigger point. The system further comprises a processing unit connected at least with the transceiver unit, the processing unit configured to match, the trigger point with one or more trigger points configured at an Initial Filter Criteria (IFC), wherein the IFC is defined at the node and the IFC further comprises a logical

application server name mapped to the one or more application servers. The processing unit is further configured to select, based on the match, a first application server from the one or more application servers mapped against the logical server name associated with the IFC, to receive the invite request. The processing unit is further configured to update, one or more attributes in a set of attributes associated with the first application server, based on a negative response from the first application server. The processing unit is further configured to blacklist, the first application server, based on the updated set of attributes.
[0018] Yet another aspect of the present disclosure may relate to a non-transitory computer readable storage medium storing instructions for controlling one or more application servers in a network, the instructions include executable code which, when executed by one or more units of a system, causes: a transceiver unit of the system to receive, at a node of the network, an invite request associated with a service in the network, wherein the invite request is associated with a target trigger point. Further, the instructions include executable code which, when executed, causes a processing unit of the system to match, the trigger point with one or more trigger points configured at an Initial Filter Criteria (IFC), wherein the IFC is defined at the node and the IFC further comprises a logical application server name mapped to the one or more application servers. Further, the instructions include executable code which, when executed, causes the processing unit to select, a first application server from the one or more application servers mapped against the logical server name associated with the IFC, based on the match, to receive the invite request. Further, the instructions include executable code which, when executed, causes the processing unit to update, one or more attributes in a set of attributes associated with the first application server, based on a negative response from the first application server. Further, the instructions include executable code which, when executed, causes the processing unit to blacklist, the first application server, based on the updated set of attributes.
OBJECTS OF THE DISCLOSURE
[0019] Some of the objects of the present disclosure, which at least one embodiment disclosed herein satisfies are listed herein below.
[0020] Some of the objects of the present disclosure, which at least one embodiment disclosed herein satisfies are listed herein below.

[0021] It is an object of the present disclosure to provide a system and method for controlling one or more application servers in a network.
[0022] It is another object of the present disclosure to provide a solution that determines a set of application server based on the Initial Filter Criteria (IFC).
[0023] It is another object of the present disclosure to provide an efficient service routing of one or more request to one or more appropriate application server.
[0024] It is another object of the present disclosure to provide a solution that enables dynamic routing decisions based on the characteristics of the request and the network state.
[0025] It is another object of the present disclosure to provide a solution that prevents further requests from being routed to a problematic server, thereby ensuring fault isolation and maintaining overall stability.
[0026] It is yet another object of the present disclosure to provide a solution that configures an Initial Filter Criteria (IFC) based on the one or more IFC parameters i.e., the set of filter criteria.
DESCRIPTION OF THE DRAWINGS
[0027] The accompanying drawings, which are incorporated herein, and 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 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.

[0028] FIG. 1 illustrates an exemplary block diagram representation of 5th generation core (5GC) network architecture.
[0029] FIG. 2 illustrates an exemplary block diagram of a computing device [1000] upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure.
[0030] FIG. 3 illustrates an exemplary block diagram of a system [300] for controlling one or more application servers in a network, in accordance with exemplary implementations of the present disclosure.
[0031] FIG. 4 illustrates a method flow diagram [400] for controlling one or more application servers in a network in accordance with exemplary implementations of the present disclosure.
[0032] FIG. 5 illustrates another exemplary method flow diagram [500] for controlling one or more application servers in a network, in accordance with exemplary implementations of the present disclosure.
[0033] FIG. 6 illustrates a block diagram [600] of Serving-Call Session Control Function (S-CSCF) in a network, in accordance with exemplary implementations of the present disclosure
[0034] The foregoing shall be more apparent from the following more detailed description of the disclosure.
DETAILED DESCRIPTION
[0035] In the following description, for the purposes of explanation, various 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 address any of the problems discussed above or might address only some of the problems discussed above.

[0036] The ensuing description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. 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 disclosure as set forth.
[0037] 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 may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail.
[0038] 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 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.
[0039] 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 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 similar to the term “comprising” as an open transition word—without precluding any additional or other elements.
[0040] As used herein, a “processing unit” or “processor” or “operating 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 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 processor.
[0041] 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 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 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 at least one of a transceiver unit, a processing unit, a storage unit, a detection unit and any other such unit(s) which are required to implement the features of the present disclosure.
[0042] As used herein, “storage unit” or “memory unit” refers to a machine or computer-readable medium including any mechanism for storing information in a 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 that may be required by one or more units of the system to perform their respective functions.
[0043] As used herein “interface” or “user interface refers to a shared boundary across which two or more separate components of a system exchange information or data. The interface may also be referred 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.

[0044] 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, Application Specific Integrated Circuits (ASIC), Field Programmable Gate Array circuits (FPGA), any other type of integrated circuits, etc.
[0045] As used herein the transceiver unit includes at least one receiver and at least one transmitter configured respectively for receiving and transmitting data, signals, information or a combination thereof between units/components within the system and/or connected with the system.
[0046] As discussed in the background section, that the currently available solutions allow only a single Fully Qualified Domain Name (FQDN) for an Application Server (AS) within an Initial Filter Criteria (IFC) which hampers the Serving-Call Session Control Function (S-CSCF) in managing multiple AS instances and distributing traffic among them, hence the current known solutions have several shortcomings. The present disclosure aims to overcome the above-mentioned and other existing problems in this field of technology by providing method and system for controlling one or more application servers in a network, in which the application server instance is defined as a separate logical AS in S-CSCF. So, manageability (adding/disabling of AS) is easy with full control at S-CSCF. Further the application server is seamlessly removed out of network without impacting any services and further blacklisting of an AS is completely managed at S-CSCF and there is no Domain Name System (DNS) dependency.
[0047] FIG. 1 illustrates an exemplary block diagram representation of 5th generation core (5GC) network architecture, in accordance with exemplary implementation of the present disclosure. As shown in FIG. 1, the 5GC network architecture [100] includes a user equipment (UE) [102], a radio access network (RAN) [104], an access and mobility management function (AMF) [106], a Session Management Function (SMF) [108], a Service Communication Proxy (SCP) [110], an Authentication Server Function (AUSF) [112], a Network Slice Specific Authentication and Authorization Function (NSSAAF) [114], a Network Slice Selection Function (NSSF) [116], a Network Exposure Function (NEF) [118], a Network Repository Function (NRF) [120], a Policy Control Function (PCF) [122], a Unified Data Management

(UDM) [124], an application function (AF) [126], a User Plane Function (UPF) [128], a data network (DN) [130], 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.
[0048] Radio Access Network (RAN) [104] is the part of a mobile telecommunications system that connects user equipment (UE) [102] to the core network (CN) and provides access to different types of networks (e.g., 5G network). It consists of radio base stations and the radio access technologies that enable wireless communication.
[0049] Access and Mobility Management Function (AMF) [106] is a 5G core network function responsible for managing access and mobility aspects, such as UE registration, connection, and reachability. It also handles mobility management procedures like handovers and paging.
[0050] Session Management Function (SMF) [108] is a 5G core network function responsible for managing session-related aspects, such as establishing, modifying, and releasing sessions. It coordinates with the User Plane Function (UPF) for data forwarding and handles IP address allocation and QoS enforcement.
[0051] Service Communication Proxy (SCP) [110] is a network function in the 5G core network that facilitates communication between other network functions by providing a secure and efficient messaging service. It acts as a mediator for service-based interfaces.
[0052] Authentication Server Function (AUSF) [112] is a network function in the 5G core responsible for authenticating UEs during registration and providing security services. It generates and verifies authentication vectors and tokens.
[0053] Network Slice Specific Authentication and Authorization Function (NSSAAF) [114] is a network function that provides authentication and authorization services specific to network slices. It ensures that UEs can access only the slices for which they are authorized.
[0054] Network Slice Selection Function (NSSF) [116] is a network function responsible for selecting the appropriate network slice for a UE based on factors such as subscription, requested services, and network policies.

[0055] Network Exposure Function (NEF) [118] is a network function that exposes capabilities and services of the 5G network to external applications, enabling integration with third-party services and applications. 5
[0056] Network Repository Function (NRF) [120] is a network function that acts as a central repository for information about available network functions and services. It facilitates the discovery and dynamic registration of network functions.
10 [0057] Policy Control Function (PCF) [122] is a network function responsible for policy
control decisions, such as QoS, charging, and access control, based on subscriber information and network policies.
[0058] Unified Data Management (UDM) [124] is a network function that centralizes the
15 management of subscriber data, including authentication, authorization, and subscription
information.
[0059] Application Function (AF) [126] is a network function that represents external applications interfacing with the 5G core network to access network capabilities and services. 20
[0060] User Plane Function (UPF) [128] is a network function responsible for handling user data traffic, including packet routing, forwarding, and QoS enforcement.
[0061] Data Network (DN) [130] refers to a network that provides data services to user
25 equipment (UE) in a telecommunications system. The data services may include but are not
limited to Internet services, private data network related services.
[0062] FIG. 2 illustrates an exemplary block diagram of a computing device [200] upon which
the features of the present disclosure may be implemented in accordance with exemplary
30 implementation of the present disclosure. In an implementation, the computing device [200]
may also implement a method for message routing management. In another implementation, the computing device [200] itself implements the method for message routing management 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.
13

[0063] The computing device [200] may include a bus [202] or other communication
mechanism for communicating information, and a hardware processor [204] coupled with bus
[202] for processing information. The hardware processor [204] may be, for example, a
5 general-purpose microprocessor. The computing device [200] may also include a main memory
[206], such as a 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].
[0064] The main memory [206] also may be used for storing temporary variables or other
10 intermediate information during execution of the instructions to be executed by the processor
[204]. Such instructions, when stored in non-transitory storage media accessible to the
processor [204], render the computing device [200] into a special-purpose machine that is
customized to perform the operations specified in the instructions. The computing device [200]
further includes a read only memory (ROM) [208] or other static storage device coupled to the
15 bus [202] for storing static information and instructions for the processor [204].
[0065] 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
20 (CRT), Liquid crystal Display (LCD), Light Emitting Diode (LED) display, Organic LED
(OLED) display, etc. for displaying information to a computer user. 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 controller [216], such as a mouse, a trackball,
25 or cursor direction keys, for communicating direction information and command selections to
the processor [204], and for controlling cursor movement on the display [212]. This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allow the device to specify positions in a plane.
30 [0066] 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 machine. According to one implementation, the techniques herein are performed by the computing device [200] in response to the processor [204]
14

executing one or more sequences of one or more instructions contained in the main memory
[206]. Such instructions may be read into the main memory [206] from another storage
medium, such as the storage device [210]. Execution of the sequences of instructions contained
in the main memory [206] causes the processor [204] to perform the process steps described
5 herein. In alternative implementations of the present disclosure, hard-wired circuitry may be
used in place of or in combination with software instructions.
[0067] The computing device [200] also may include a communication interface [218] coupled to the bus [202]. The communication interface [218] provides a two-way data communication coupling to a network link [220] that is connected to a local network [222] and the local network [222] is further connected to the host [224]. For example, the communication interface [218] may be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of telephone line. As 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] sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
[0068] The computing device [200] can send messages and receive data, including program code, through the network(s), the network link [220] and the communication interface [218]. In the Internet example, a server [230] might transmit a requested code for an application program through the Internet [228], the ISP [226], the local network [222] 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.
[0069] Referring to FIG. 3, an exemplary block diagram of a system [300] for controlling one
or more application servers in a network, is shown, in accordance with the exemplary
30 implementations of the present disclosure. The system [300] comprises at least one transceiver
unit [302], at least one processing unit [304] and at least one storage 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 in the figures all units shown within the system should also be assumed to be connected to each other. Also, in FIG. 3 only a few units are shown,
15

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.
[0070] Further, in accordance with the present disclosure, it is to be acknowledged that the
5 functionality described for the various the components/units can be implemented
interchangeably. While specific embodiments may disclose a particular functionality of these
units for clarity, it is recognized that various 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,
10 alternative arrangements and substitutions of units, provided they achieve the intended
functionality described herein, are considered to be encompassed within the scope of the present disclosure.
[0071] The system [300] is configured for controlling one or more application servers in a
15 network with the help of the interconnection between the components/units of the system [300].
[0072] In order to control the one or more application servers in a network, the transceiver unit [302] is configured to receive, at a node of the network, an invite request associated with a service in the network, wherein the invite request is associated with a target trigger point. The
20 node refers to the Serving-Call Session Control Function (S-CSCF or SCSCF) [602] that is
responsible for handling one or more call sessions and service invocation within an IP Multimedia Subsystem (IMS) network. The S-CSCF [602] employs an initial filter criterion (IFC) to handle the one or more in coming sessions for which an appropriate Application Server (AS) is triggered for providing one or more specific services. Further the appropriate
25 Application Server (AS) refers to a specific AS instance that is suitable to provide the one or
more specific services. In an exemplary scenario, the S-CSCF selects the AS based on a set of criteria defined in the IFCs and this selection ensures that the AS is capable of providing that specific service effectively.
30 [0073] The invite request refers to a specific type of message in a communication network
protocol for establishing a session or initiating a service. For example, the invite request is transmitted from a user device to the network for requesting a particular service of function from the network.
16

[0074] The target trigger point refers to a pre-defined condition that prompts the network to take an action such as routing the invite request to a particular application service. For instance, the pre-defined condition may include a type of service, user identity or time of day.
5 [0075] Further, the processing unit [304] is connected at least with the transceiver unit [302]
and the processing unit [304] is configured to match, the trigger point with one or more trigger points configured at an Initial Filter Criteria (IFC), wherein the IFC is defined at the node and the IFC further comprises a logical application server name mapped to the one or more application servers. 10
[0076] The present disclosure encompasses that one or more IFC may be defined at the node.
[0077] The IFC refers to a set of criteria or rules that are defined at the node of the network for
filtering and processing one or more incoming requests. The IFC assists in handling of the one
15 or more incoming requests based on a pre-defined criteria.
[0078] The logical application server name is a name or identifier used within the IFC to determine which application servers should handle the one or more incoming requests based on one or more pre-defined mapping rules. 20
[0079] Thereafter, the processing unit [304] is configured to select, based on the match, a first application server from the one or more application servers mapped against the logical server name associated with the IFC, to receive the invite request.
25 [0080] Further the processing unit [304] is configured to update, one or more attributes in a set
of attributes associated with the first application server, based on a negative response from the first application server.
[0081] The present disclosure encompasses that the one or more attributes refers to one or more
30 characteristics or properties associated with the first application server. The negative response
indicates an unsuccessful operation or a response from the first application server indicating about an error.
17

[0082] Furthermore, the processing unit [304] is configured to blacklist, the first application server, based on the updated set of attributes.
[0083] The present disclosure encompasses that the IFC is reconfigured based on the
5 blacklisting of the first application server.
[0084] The present disclosure encompasses that the processing unit [304] is further configured to select a second application server, in the event a negative response is received from the first application server.
10
[0085] The present disclosure encompasses that the set of attributes associated with each of the one or more application servers, further configured by the processing unit [304] to comprise a failure counter associated with each of a negative response from the one or more application server, a pre-defined threshold counter associated with the failure counter and a pre-defined
15 revoke time for the one or more application servers if blacklisted.
[0086] The present disclosure encompasses that the failure counter assists in keeping a track of the number of times the application server has encountered errors or failed to fulfil the requests.
20
[0087] The present disclosure encompasses that the pre-defined threshold counter is a pre-defined limit set on the number of failures that are acceptable before taking an action. For instance, once the number of failures exceeds this pre-defined threshold counter, further action, such as blacklisting the server may be initiated.
25
[0088] The present disclosure encompasses that the pre-defined revoke time specifies the duration for which the application server remains blacklisted after reaching the threshold counter.
30 [0089] The present disclosure encompasses that the set of attributes may include but not limited
to failure counter, pre-defined threshold counter, pre-defined revoke time.
[0090] The present disclosure encompasses that the processing unit [304] is further configured to: increase, the failure counter associated with the first application server, against the received
18

negative response. The processing unit [304] is further configured to detect, a breach condition based on matching of the failure counter and the pre-defined threshold counter associated with the failure counter, thereafter the processing unit [304] is configured to blacklist, the first application server based on detecting the breach condition. 5
[0091] The present disclosure encompasses that the breach condition is detected by the processing unit [304], in an event the pre-defined threshold counter is at least equal to the failure counter associated with the first application server.
10 [0092] The present disclosure encompasses that in an event the breach condition is detected by
the processing unit [304], the first application server is revoked for a predefined revoke time associated with the first application server. For example, initially, when the breach condition is detected and the decision is made to blacklist the first application server, the processing unit [304] marks the server as blacklisted which indicates that the first application server is flagged
15 as ineligible to handle further requests or services due to its unacceptable performance. The
predefined revoke time determines the duration for which the first application server remains blacklisted and ineligible to handle the invite request. Further, one or more revoking techniques may be used for revoking the first application server for the predefined revoke time. The one or more revoking techniques may be known to the person skilled in the art.
20
[0093] In an example, at the end of the predefined revoke period, the solution encompasses that the processing unit [304] sends a SIP OPTIONS message towards the first application server to check a health status of the first application server. In an event a response such as “200-OK” is received at the processing unit [304], it is understood that the first application
25 server is ready to take the traffic and can be marked as active. In another example, at the end
of the predefined revoke period, the solution encompasses that the processing unit [304] sends a SIP Request towards the first application server and if request is successful, the first application server health can be considered OK and the first application server can be marked as active.
30
[0094] Referring to FIG. 4, an exemplary method flow diagram [400] for controlling one or more application servers in a network, in accordance with exemplary implementations of the present disclosure is shown. In an implementation the method [400] is performed by the system [300]. Further, in an implementation, the system [300] may be present in a server device to
19

implement the features of the present disclosure. Also, as shown in FIG. 4, the method [400] starts at step [402].
[0095] At step [404], the method comprises receiving, via a transceiver unit [302] at a node of
5 the network, an invite request associated with a service in the network, wherein the invite
request is associated with a target trigger point.
[0096] The invite request refers to a specific type of message in a communication network
protocol for establishing a session or initiating a service. For example, the invite request is
10 transmitted from a user device to the network for requesting a particular service of function
from the network.
[0097] The target trigger point refers to a pre-defined condition that prompts the network to take an action such as routing the invite request to a particular application service.
[0098] At step [406], the method comprises matching, via a processing unit [304], the target trigger point with one or more trigger points configured at an Initial Filter Criteria (IFC), wherein the IFC is defined at the node and the IFC further comprises a logical application server name mapped to the one or more application servers.
[0099] The IFC refers to a set of criteria or rules that are defined at the node of the network for filtering and processing one or more incoming requests. The IFC assists in handling of the one or more incoming requests based on a pre-defined criteria.
25 [0100] The logical application server name is a name or identifier used within the IFC to
determine which application servers should handle the one or more incoming requests based on one or more pre-defined mapping rules.
[0101] The present disclosure encompasses that one or more IFC may be defined at the node. 30
[0102] At step [408], the method comprises selecting, via the processing unit [304], based on the matching, a first application server from the one or more application servers mapped against the logical server name associated with the IFC, to receive the invite request.
20

[0103] At step [410], the method comprises updating via the processing unit [304], one or more attributes in a set of attributes associated with the first application server, based on an event a negative response is received from the first application server; wherein the set of attributes is associated with each of the one or more application servers. 5
[0104] The present disclosure encompasses that the one or more attributes refers to one or more characteristics or properties associated with the first application server. The negative response indicates an unsuccessful operation or a response from the first application server indicating about an error. 10
[0105] At step [412], the method comprises blacklisting, via the processing unit [304], the first application server, based on the updated set of attributes.
[0106] The present disclosure encompasses that the IFC defined at the node is reconfigured
15 based on the blacklisting of the first application server.
[0107] The present disclosure encompasses that the set of attributes associated with each of
the one or more application servers, further comprises, a failure counter associated with each
of a negative response received from the one or more application servers, a pre-defined
20 threshold counter associated with the failure counter and a pre-defined revoke time for the one
or more application servers if blacklisted.
[0108] The present disclosure encompasses that the failure counter assists in keeping a track
of the number of times the application server has encountered errors or failed to fulfil the
25 requests.
[0109] The present disclosure encompasses that the pre-defined threshold counter is a pre¬
defined limit set on the number of failures that are acceptable before taking an action. For
instance, once the number of failures exceeds this pre-defined threshold counter, further action,
30 such as blacklisting the server may be initiated.
[0110] The present disclosure encompasses that the pre-defined revoke time specifies the duration for which the application server remains blacklisted after reaching the threshold counter.
21

[0111] The present disclosure encompasses that the method further comprises selecting via the
processing unit [304], a second application server from the one or more application servers
configured against the logical server name, in the event a negative response is received from
5 the first application server.
[0112] The present disclosure encompasses that the blacklisting the first application server further comprises increasing, via the processing unit [304], the failure counter associated with the first application server, against the received negative response. The blacklisting the first
10 application server further comprises detecting, via the processing unit [304], a breach condition
based on matching of the failure counter and the predefined threshold counter associated with the failure counter. The blacklisting the first application server further comprises blacklisting, via the processing unit [304], the first application based on detecting the breach condition. The present disclosure encompasses that the failure counter assists in keeping a track of the
15 number of times the application server has encounter errors or failed to fulfil the requests.
[0113] The present disclosure encompasses that the breach condition is detected in an event the pre-defined threshold counter is at least equal to the failure counter associated with the first application server.
20
[0114] The present disclosure encompasses that in an event the breach condition is detected the first application server is revoked for a predefined revoke time associated with the first application server. For example, initially, when the breach condition is detected and the decision is made to blacklist the first application server, the processing unit [304] marks the
25 server as blacklisted which indicates that the first application server is flagged as ineligible to
handle further requests or services due to its unacceptable performance. The predefined revoke time determines the duration for which the first application server remains blacklisted and ineligible to handle the invite request. Further, one or more revoking techniques may be used for revoking the first application server for the predefined revoke time. The one or more
30 revoking techniques may be known to the person skilled in the art.
[0115] In an example, at the end of the predefined revoke period, the solution encompasses sending a SIP OPTIONS message by the processing unit [304] towards the first application server to check a health status of the first application server. In an event a response such as
22

“200-OK” is received at the processing unit [304], it is understood that the first application
server is ready to take the traffic and can be marked as active. In another example, at the end
of the predefined revoke period, the solution encompasses sending a SIP Request by the
processing unit [304] towards the first application server and if request is successful, the first
5 application server health can be considered OK and the first application server can be marked
as active.
[0116] The method [400] terminates at step [414].
10 [0117] The present disclosure further discloses a non-transitory computer readable storage
medium storing instructions for controlling one or more application servers in a network, the instructions include executable code which, when executed by one or more units of a system, causes: a transceiver unit [302] of the system to receive, at a node of the network, an invite request associated with a service in the network, wherein the invite request is associated with
15 a target trigger point. Further, the instructions include executable code which, when executed,
causes a processing unit [304] of the system to match, the trigger point with one or more trigger points configured at an Initial Filter Criteria (IFC), wherein the IFC is defined at the node and the IFC further comprises a logical application server name mapped to the one or more application servers. Further, the instructions include executable code which, when executed,
20 causes the processing unit [304] configured to select, based on the match, a first application
server from the one or more application servers mapped against the logical server name associated with the IFC, to receive the invite request. Further, the instructions include executable code which, when executed, causes the processing unit [304] to update, one or more attributes in a set of attributes associated with the first application server, based on a negative
25 response from the first application server; and to blacklist, the first application server, based on
the updated set of attributes.
[0118] Referring to FIG. 5, another exemplary method flow diagram [500] for controlling one
or more application servers in a network, in accordance with exemplary implementations of
30 the present disclosure is shown. In an implementation the method [500] 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. Also, as shown in FIG. 5, at step S1, an invite request is received at a node of the network. The invite request is associated with a target trigger point.
23

[0119] Thereafter, at step S2, the target trigger point is matched with one or more trigger points configured at an Initial Filter Criteria (IFC). The IFC is defined at the node and the IFC further comprises a logical application server name mapped to the one or more application servers. 5
[0120] Further, at step S3, a first application server is selected based on the match at step S2, from the one or more application servers mapped against the logical server name associated with the IFC, to receive the invite request.
10 [0121] Further, at step S4, the invite request is forwarded to the selected first application server.
[0122] Thereafter, at step S5, checking the status of request takes place to check if the request
was successful, and at step S6, the process of handling the request is continued, if the invite
request is successful or else at step S7, a failure count for the selected first application server
15 is increased.
[0123] Referring to FIG. 6, a block diagram of Serving-Call Session Control Function (S-CSCF) in a network, in accordance with exemplary implementations of the present disclosure is shown. The Serving-Call Session Control Function (S-CSCF) [602], handles one or more
20 call sessions and service invocation within an IP Multimedia Subsystem (IMS) network. The
S-CSCF [602] employs one or more initial filter criterion (IFC) to handle the one or more incoming sessions for which an appropriate Application Server (AS) is triggered for providing one or more specific services. The IFCs are defined at the node and each of the IFCs further comprises a logical application server name (depicted as Logical AS Name 1, Logical AS Name
25 2, Logical AS Name 3 in FIG. 6) mapped to the one or more application servers (AS) (depicted
as AS group 1, AS group 2, AS group 3) where Logical AS Name 1 is mapped to AS group 1, Logical AS Name 2 is mapped to AS group 2 and Logical AS Name 3 is mapped to AS group 3.
30 [0124] For example, the method [400] and system [300] of the present disclosure may be
implemented by a telecommunication organization for ensuring an efficient management of application servers in the network which allows for dynamic adjustments based on the performance and reliability. For instance, in the network node, the transceiver unit [302] is deployed to receive one or more invite requests that are associated with one or more services
24

in the network. The processing unit [304] compares the received trigger point with those configured in the IFC defined at the node. The IFC includes a logical application server name which is mapped to one or more application servers. Based on the match, the processing unit [304] thereafter selects a first application server from those mapped against the logical server name associated with the IFC to receive the invite request. Further, the processing unit [304] updates one or more attributes in the set of attributes associated with the first application server upon receiving a negative response from the first application server. The processing unit [304] blacklists the first application server based on the updated set of attributes. Further, the processing unit [304] reconfigures the IFC if necessary, based on the blacklisting of the first application server. Additionally, the processing unit [304] configures the set of attributes associated with each application server. This includes a failure counter for negative responses, a pre-defined threshold counter, and a pre-defined revoke time for blacklisted server. Further, the processing unit [304] increases the failure counter associated with the server upon receiving a negative response. Further, the processing unit [304] detects a breach condition based on the comparison between the failure counter and the pre-defined threshold counter. The processing unit [304], further blacklists the first application server upon detecting the breach condition. The breach condition is detected when the pre-defined threshold counter is at least equal to the failure counter. Upon detection of the breach condition, the first application server is revoked for a predefined revoke time. Hence, the method and system of the present disclosure provides a mechanism for handling server failure and optimizing a server selection process.
[0125] As is evident from the above, the present disclosure provides a technically advanced solution for controlling one or more application servers in a network. The present solution enhanced the manageability as each of the application server instance is individually defined in S-CSCF that allows for easy management and control, also the application instance may be seamlessly removed from the network without disrupting other services. Further, the process of blacklisting of application server instances are managed within the S-CSCF which reduced the reliance on a Domain Name System (DNS). Further the present disclosure prevents the further requests from being routed to a problematic server, thereby ensuring fault isolation and maintaining overall stability.
[0126] 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 controlling one or more application servers in a network, the
method comprising:
- receiving, via a transceiver unit [302] at a node of the network, an invite request associated with a service in the network, wherein the invite request is associated with a target trigger point;
- matching, via a processing unit [304], the target trigger point with one or more trigger points configured at an Initial Filter Criteria (IFC), wherein the IFC is defined at the node and the IFC further comprises a logical application server name mapped to the one or more application servers;
- selecting, via the processing unit [304], based on the matching, a first application server from the one or more application servers mapped against the logical server name associated with the IFC, to receive the invite request;
- updating via the processing unit [304], one or more attributes in a set of attributes associated with the first application server, based on an event a negative response is received from the first application server; wherein the set of attributes is associated with each of the one or more application servers; and
- blacklisting, via the processing unit [304], the first application server, based on the updated set of attributes.

2. The method [400] as claimed in claim 1, wherein one or more IFC may be defined at the node.
3. The method [400] as claimed in claim 1, wherein the IFC defined at the node is reconfigured based on the blacklisting of the first application server.
4. The method [400] as claimed in claim 1, further comprising:

selecting, via the processing unit [304], a second application server from the one or more application servers configured against the logical server name, in the event a negative response is received from the first application server.
5. The method [400] as claimed in claim 1, wherein the set of attributes associated with each of the one or more application servers, further comprises, a failure counter associated with each of a negative response received from the one or more application servers, a pre-defined threshold counter associated with the failure counter and a pre-defined revoke time for the one or more application servers if blacklisted.
6. The method [400] as claimed in claim 5, wherein blacklisting the first application server further comprises:

- increasing, via the processing unit [304], the failure counter associated with the first application server, against the received negative response;
- detecting, via the processing unit [304], a breach condition based on matching of the failure counter and the predefined threshold counter associated with the failure counter; and
- blacklisting, via the processing unit [304], the first application server based on detecting the breach condition.

7. The method [400] as claimed in claim 6, wherein the breach condition is detected in an event the pre-defined threshold counter is at least equal to the failure counter associated with the first application server.
8. The method [400] as claimed in claim 6, wherein in an event the breach condition is detected the first application server is revoked for a predefined revoke time associated with the first application server.
9. A system [300] for controlling one or more application servers in a network, the system comprises:
- a transceiver unit [302] configured to:
o receive, at a node of the network, an invite request associated with a service in the network, wherein the invite request is associated with a target trigger point; and

- a processing unit [304], connected at least with the transceiver unit [302], the processing unit [304] configured to:
o match, a trigger point with one or more trigger points configured at an Initial
Filter Criteria (IFC), wherein the IFC is defined at the node and the IFC
further comprises a logical application server name mapped to the one or
more application servers, o select, based on the match, a first application server from the one or more
application servers mapped against the logical server name associated with
the IFC, to receive the invite request, o update, one or more attributes in a set of attributes associated with the first
application server, based on a negative response from the first application
server, o blacklist, the first application server, based on the updated set of attributes.
10. The system [300] as claimed in claim 9, wherein one or more IFC may be defined at the node.
11. The system [300] as claimed in claim 9, wherein the IFC is reconfigured based on the blacklisting of the first application server.
12. The system [300] as claimed in claim 9, wherein the processing unit [304] is further configured to select a second application server, in an event a negative response is received from the first application server.
13. The system [300] as claimed in claim 9, wherein the set of attributes associated with each of the one or more application servers, further configured by the processing unit [304] to comprise a failure counter associated with each of a negative response from the one or more application server, a pre-defined threshold counter associated with the failure counter and a pre-defined revoke time for the one or more application servers if blacklisted.
14. The system [300] as claimed in claim 13, wherein to blacklist the first application server, the processing unit [304] is further configured to:

- increase, the failure counter associated with the first application server, against the received negative response;
- detect, a breach condition based on matching of the failure counter and the pre-defined threshold counter associated with the failure counter; and
- blacklist, the first application server based on detecting the breach condition.

15. The system [300] as claimed in claim 14, wherein the breach condition is detected by the processing unit [304], in an event the pre-defined threshold counter is at least equal to the failure counter associated with the first application server.
16. The system [300] as claimed in claim 14, wherein in an event the breach condition is detected by the processing unit [304], the first application server is revoked for a predefined revoke time associated with the first application server.

Documents

Application Documents

# Name Date
1 202321046293-STATEMENT OF UNDERTAKING (FORM 3) [10-07-2023(online)].pdf 2023-07-10
2 202321046293-PROVISIONAL SPECIFICATION [10-07-2023(online)].pdf 2023-07-10
3 202321046293-FORM 1 [10-07-2023(online)].pdf 2023-07-10
4 202321046293-FIGURE OF ABSTRACT [10-07-2023(online)].pdf 2023-07-10
5 202321046293-DRAWINGS [10-07-2023(online)].pdf 2023-07-10
6 202321046293-FORM-26 [13-09-2023(online)].pdf 2023-09-13
7 202321046293-Proof of Right [20-10-2023(online)].pdf 2023-10-20
8 202321046293-ORIGINAL UR 6(1A) FORM 1 & 26)-211123.pdf 2023-11-24
9 202321046293-ENDORSEMENT BY INVENTORS [01-07-2024(online)].pdf 2024-07-01
10 202321046293-DRAWING [01-07-2024(online)].pdf 2024-07-01
11 202321046293-CORRESPONDENCE-OTHERS [01-07-2024(online)].pdf 2024-07-01
12 202321046293-COMPLETE SPECIFICATION [01-07-2024(online)].pdf 2024-07-01
13 202321046293-FORM 3 [02-08-2024(online)].pdf 2024-08-02
14 202321046293-Request Letter-Correspondence [14-08-2024(online)].pdf 2024-08-14
15 202321046293-Power of Attorney [14-08-2024(online)].pdf 2024-08-14
16 202321046293-Form 1 (Submitted on date of filing) [14-08-2024(online)].pdf 2024-08-14
17 202321046293-Covering Letter [14-08-2024(online)].pdf 2024-08-14
18 202321046293-CERTIFIED COPIES TRANSMISSION TO IB [14-08-2024(online)].pdf 2024-08-14
19 202321046293-FORM 18A [10-03-2025(online)].pdf 2025-03-10
20 202321046293-FER.pdf 2025-03-21
21 202321046293-FER_SER_REPLY [17-04-2025(online)].pdf 2025-04-17
22 202321046293-PatentCertificate27-10-2025.pdf 2025-10-27
23 202321046293-IntimationOfGrant27-10-2025.pdf 2025-10-27

Search Strategy

1 202321046293_SearchStrategyNew_E_PCTIN2024051018-ssgy-000001-EN-20241106E_20-03-2025.pdf

ERegister / Renewals