Sign In to Follow Application
View All Documents & Correspondence

A System For And A Method Of Optimizing Steering Of Roaming Operation During Mobile Communications.

Abstract: The present invention relates to an improved version of Steering of Roaming (SoR) module that can offer the telecom operator with several additional functionalities that are absent in present state of the art. The improved version of SoR module comes with a combination of methods, systems and associated processes that mitigates the key shortcomings in contemporary SoR modules.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
08 October 2021
Publication Number
10/2022
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
Parent Application

Applicants

1. JOYDEEP BANERJEE
AMOUR COOPERATIVE, HOUSING SOCIETY LTD, D.L 232/4, SECTOR-II, SALT LAKE CITY, KOLKATA-700091

Inventors

1. JOYDEEP BANERJEE
AMOUR COOPERATIVE, HOUSING SOCIETY LTD, D.L 232/4, SECTOR-II, SALT LAKE CITY, KOLKATA-700091

Specification

SYSTEM FOR AN IMPROVED VERSION OF STEERING OF ROAMING MODULE AND METHOD THEREOF FIELD OF INVENTION The present invention relates to an improved version of Steering of Roaming (SoR) module that can offer the telecom operator with several additional functionalities that are absent in present state of the art. The improved version of SoR module comes with a combination of methods, systems and associated processes that mitigates the key shortcomings in contemporary SoR modules. BACKGROUND ART Roaming in mobile communication contributes a significant percentage of an operator's revenue and even a better percentage of the operator's margin. Data and voice roaming charges are now a great concern among the customers due to lack in cost optimization among the operators. With increasing competition and regulatory control, operators are being pressured to aggressively optimize the cost of providing roaming services. As the global mobile roaming market business model is evolving, the industry understands the strategic importance of roaming to operator's revenues and profit margins and is adapting various newly proposed regulation.Therefore there ia a need for a method, to enable a user use voice and data services while roaming, at competitive rates, with the aim of simplifying user's experience and minimizing and optimizing roaming revenue for customers within the framework of the prevailing Inter Operator Tariff (IOT) rates. The Steering of Roaming (SoR) has been accepted by GSMA as a legal and approved way for Mobile Network Operators or MNOs to reduce wholesale roaming costs for outbound roaming usage. Several providers in industry provide the service through a combination of SS7 protocol based and OTA (Over the Air) based traffic steering techniques. An effective and efficient steering solution is key to MNO profitability from outbound roaming business because it substantially impacts direct cost for the business. There is a significant debate as to what extent SoR should be used in practice. Typically, less than 100% of outbound roaming traffic is steered to preferred network because of a variety of factors like promoting roaming partner diversity and customer experience as top two reasons. Moreover, there are also some practical limitations as to what extent SoR can be implemented. Mobile operators frequently face issues of sporadic network coverage for preferred VPLMN at the roaming location thereby preventing 100% SoR plan enforcement.. MNOs also feel the need to assess the impact of SoR decisions on specific business objectives. There are a few known prior arts available to address this need, but they all fall short of the expectation. Key goals MNOs want to meet are profitability, specific terms of roaming agreement, various regulatory aspects. We shall discuss the topic in details, but only after providing a broad overview of the SoR. Today, there are two distinct methods in which SoR can be performed - SS7 based and OTA based. A combination mode called Hybrid mode also exists. There has been a wide acceptance of SS7 based steering (also called Network based steering) among telecom operators. In this mode, SoR module, which sits in the signaling path between VPLMN VLR and HPLMN HLR, selectively rejects / accepts a SS7 MAP (Mobile Application Part) Update Location Request (GSM 9.02). This is performed when MS, attempting to come out of the idle mode, performs Location registration after PLMN (Public Land Mobile Network) selection followed by cell selection. On arrival of the SS7 MAP Update Location Request message, the SoR node extracts VLR number in the MAP message and finds corresponding PLMN through a mapping table from CC-NDC digits of the VLR number (in E.164 format) from which the Location registration request comes. It rejects one or more MAP Update Location Request from the VLR belonging to "non-preferred" PLMNs. It finally accepts MAP Update Location Request- from VLR belonging to "preferred" PLMN thereby concluding the process. Acceptance status is conveyed by the SoR module to VLR using SS7 MAP Update Location Response message. In OTA based SoR mechanism, a priority list of VPLMNs are installed and maintained in MS SIM/USIM through Over the Air (OTA) based technologies. This list is consulted by the MS at the time of PLMN selection during automatic selection mode. The 3GPP standard provides several technical and operational means through which priority lists of PLMNs are installed and maintained on the Mobile Station (MS). For example, in LTE network, MS may receive a (USIM application toolkit) USAT REFRESH command to install the list (ETSI TS 123.122). OTA based steering is older than SS7 based approach, but historically suffered from certain drawbacks, most notably the non-real time nature - preferred PLMN list in the SIM may be updated but the device will not take it into account unless a REFRESH command is received or the device is turned off and on. To rectify such issues, GSMA IR.73 defined "Dynamic OTA steering" method. However, even after the improvements suggested by GSMA, the OTA based procedure grossly falls short of the expectation. Preferred PLMN list in SIM card can only be consulted by the device when the MS performs automatic selection mode. Moreover, is many of the scenarios, it becomes impossible for the SIM provider (or the home operator) to load preference list to the SIM because of finite storage on the SIM card. For example, SIM cards typically cover such regions as U.S., Canada and Europe and do not cover several regions, including, for example, India, South America and Asia (EP2689612A1). When the SlM card does not have a preferred PLMN list for the region in which the MS is currently located, the MS identifies VPLMNs with a sufficient signal strength (>85 dBm) that are present in the current location and randomly selects one of these VPLMNs. If the selected VPLMN does not have a roaming agreement with the HPLMN of the MS, the selected VPLMN rejects the request for service and the MS has to select a different VPLMN. In regions that have a large number of PLMNs (e.g., India or Asia), a user device may have to hop between many different VPLMNs until it is able to acquire roaming service. Even worse would be a scenario where, based on signal strength condition, MS selects VPLMN that has the least favorable roaming discount agreement with the MS user's HPLMN. In this case, there would be a high chance that the MS will permanently latch upon the VPLMN and the HPLMN would not have any control whatsoever till the non-favorable VPLMN goes out of coverage. The process of PLMN selection, no matter whether manual or automatic or whether performed with SS7 or OTA based SoR, is strictly sequential. In a situation where only PLMN 1 and 2 are under consideration and MS starts with PLMN 1, it performs complete procedure (also called MS "Idle Mode" procedure) for PLMN 1 (i.e., selects PLMN, selects one or more cells to camp on and performs MAP based Location registration) before doing the same for PLMN 2. The Process of PLMN registration by Mobile Station is non-iterative i.e., MS does not repeat registration for a specific PLMN / access mode combination if it fails once. Some typical situations in this context as follows: In automatic PLMN selection mode, if VPLMN (Visited Public Land Network) responds to roaming MS with "PLMN not allowed" (NAS error code for MAP Update Location Request code of "Roaming not allowed"), MS adds the VPLMN to the list of "forbidden PLMN" in the SIM/USIM (User Services Identity Module). Subsequently, the VPLMN remains inaccessible in automatic mode. The PLMN / access mode combination can however be tried with manual mode. The PLMN / access mode combination can be removed from forbidden list if the same is done subsequently in manual mode or using OTA procedures. Once removed from forbidden list, the combination can be tried with automatic mode. In the context of SS7 based SoR, another important point of discussion has been whether such SoR module should consider GSM Update location exclusively (i.e., SS7 MAP message "MAP_Update_Location") or also deal with GPRS update location (i.e., SS7 MAP message "MAP_Update_GPRS_Location_Request"). Typically, with the increasing adoption of Smartphone and always "ON" data connectivity concept, GPRS location updates are sent more frequently or before GSM location update. A few initiatives from standardization bodies are worth mentioning in this context: • UMTS architecture defined an optional 'Gs' interface between VLR and SGSN to address simultaneous RA/LA Update procedure where a RA (i.e., Routing Area in Packet switch connectivity) change that involves a LA (i.e., Location Area for voice connectivity) change. In such case, MS sends 'Routing Area Update' message to SGSN containing both new RA and LA information and the LA update is forwarded by SGSN to MSC/VLR over 'Gs' interface. • GSMA IR.73 PRD, which deals with guidelines for SoR implementation mentions the need to check GPRS Location Update in addition to GSM Location Update. Most of the SoR vendors typically performs SS7 steering based on only GSM location update. GSMA IR.73 PRD, which talks of steering based on both GSM and GPRS location, is more of a' normative reference document (mentioned as "non-binding") for most SoR vendors. Moreover, UMTS architectural support for 'Gs' interface is optional and hence cannot be relied upon fully in this context. In the prior art, an US Patent US9,210,591B2 to Cattan et al., discloses an apparatus for steering of roaming users to preferred operators at a roaming network uses operator agreements with mobile operators, as well as usage predictions and historical usage patterns, to calculate an optimized steering plan that minimizes the charges to the home operator. The operator agreements are typically step-like in nature and the plan is constructed by iterating through different allocations of the estimated usage between the various mobile operators. The iterations may include various roaming services such as SMS and data as well as mobile originated and mobile terminated calls. The allocation finally selected as the optimal plan is then output to a steering of roaming unit which identifies registration attempts by actual roaming users and steers said registration attempts to fulfill the quotas in the plan. The above known prior art, as well as several related inventions and solutions prevailing in the Industry, has been conceptualized with the assumption that MNO's steering policy and short-term commercial targets are two independent aspects. Typically, SoR systems are configured by operator to stipulate list of Visitor Location Register (VLR) with whom home operator (HPLMN) has roaming agreement. US Patent US9,210,591B2 to Cattan et al., addressed the need to align SoR system with roaming discount agreements, but failed to come up with an effective and elegant solution through which terms of the discount agreement can be enforced. To be effective, MNOs would need an end-to-end solution that would completely align business processes of Wholesale Inter Operator Tariff (IOT) discount agreements and SoR policies. For example, information on roaming disputes between HPLMN and selected VPLMN can be very important to drive the steering policy of the former and can potentially be fed to one or more SoR system the former deploys. Typically, these roaming disputes are negotiated through clearinghouses and have significant cycle time. These disputes can arise in clauses of the agreement where parties disagree even before they are adopted and therefore outside the service cycle i.e., before roaming service is officially sanctioned and activated between the parties in multiple geographies. However, in some important case, these disputes can also result from misinterpretation of terms of the agreement during the service period. i.e., after roaming services has been officially sanctioned, commissioned (i.e., after performing TADIG test etc.) and offered on commercial basis. In such case, lack of knowledge on the part of SoR system of these disputes can lead to very severe service impacting consequences. There are proposals in the industry to move the roaming dispute negotiation and arbitration through consortium blockchain based "smart contracts", but such approach has yet failed to draw substantial industry tractions. There are challenges also in terms of lack of alignment between negotiation of wholesale roaming discount agreements and steering policy formulation and implementation. For example, IOT discount agreements are negotiated at corporate level between operators as a group whereas steering policies are set independently by MNO for each country or geography. Such system does not enable the MNO to visualize how the steering policy in different countries contribute to the performance of agreement as a whole. For example, driving traffic away from a VPLMN in one country by SoR system can adversely affect the discount agreement performance. Moreover, in such systems, there are often no effective ways to identify commitment shortfalls because of the implementation of steering policies because SoR systems are not typically designed to track commitment adherence. Such decentralized systems, as a whole, are ineffective and inefficient and usually result in huge commitment penalties, unnecessary costs due to incorrect steering and high Total cost of ownership (TCO) for MNOs. Moreover, both the known prior art cited above as well as few solutions available that try to align these disparate areas, of business need to fetch data from service usage records. Traditionally these are available through well-established Transferred Account Procedure (TAP) as promulgated by GSMA. However, as recent development, procedures in TAP are no longer fulfilling the needs of service providers after Internet of Things (loT) and 5G came into picture. These technologies created a need for different types of agreements in which new service definitions are created over traditional message, call minutes and data. For example, most of the wearable devices as part of fall detection system will not utilize huge amount of data or other services but will increase signaling load on the network because of frequent location update. In response to the development, GSMA defined Billing and Charging Evolution (BCE) in which MNOs can better develop suitable agreement encompassing the needs for monetizing IoT and 5G traffic. BCE also made advances over TAP by increasing the size from existing petabytes to higher value. SoR systems need to go beyond TAP based service usage records and augment its current offerings with GSMA BCE framework. Therefore, to be truly effective, SoR systems should maintain well defined two-way interface with a comprehensive discount agreementmeans for IOT roaming discount agreement which inter alia indicates pending roaming disputes, inclusive of modifications and amendments undergone, and provide a real time status consistent to commitment adherence. Moreover, the discount agreement means . should be able to interface with the SOR system that collects, reconciles and validates service usage record data both in TAP and GSMA BCE compliant format (e.g., DDR) and use the information gathered from these sources in implementing effective SoR strategy. SoR system should also have an inbuilt ability to identify potential incompatibility between types of such parts of wholesale billing system and discount agreements under consideration. Based on such intelligence, SoR system should be able to prune the types of steering plans it should ultimately execute. Assumptions . The present invention makes the following assumptions: • aggregate traffic and usage estimate for current cycle (for voice, data and SMS) from an external traffic forecasting module after adjusting for seasonality etc. This can be provided through a dedicated interface between the system and such forecasting module • Technical as well as operational interfaces with over the air (OTA) system typically deployed with the home network of most operators SUMMARY OF INVENTION The herein disclosed invention describes an innovative SoR system which comes with a combination of methods, systems and associated processes to perform steering in a most optimal manner in view of a set of constraints and objectives to be met. The SoR system, in present invention, would not only consider GSM location update but also GPRS location update as a trigger point for taking SoR steering decisions. This is intended to fix the gap already mentioned to be present in many of the present state of the art. Present invention embodies a SoR steering framework for formulation and implementation of specific steering strategy. Strategy defines the very basic purpose (or purposes) of performing the steering and at a broad level comprise of a set of "policies" that have a very specific business imperative; These policies can be implicit or explicit. • In explicit policy, steering rules are specified explicitly in terms of IMSI to VPLMN mapping rules. An example of explicit policy would be to consider a set of specific IMSIs to be steered to a set of VPLMNs irrespective of usage and costs incurred. An example of such policies is where a set of IMSIs are steered to only 2 VPLMNs (even when corresponding roaming discount agreements are not favorable for HPLMN). Such policies are typically a result of regulatory or security reasons. Explicit policy mapping can also be set through a lookup table, a statistical distribution, or an abstract algorithm (either standard or user defined) which are independent of the steering context (i.e., not affected by the outcome of each steering performed). • In implicit policy, a steering objective is usually specified without being explicit about IMSI to VPLMN mapping rules. The said mapping gets established through the occurrence of some future conditions or events analyzed and processed in the context of steering performed. In implicit policy, plan execution gets affected by each steering performed. Examples are steering policies based on various types of roaming discount agreements (e.g., MRC target to be met for VPLMN 1, 2 and 3 by steering required number of IMSIs.to these networks). • Steering frameworks will also support an information model that would comprise of: o A containment hierarchy where top to bottom levels are as follows: ■ Strategy: Contain a sets of steering policy types (implicit / explicit) with logic for identifying and recording mutual compatibility (or insufficiency) among these policy types. ■ Policy types: Contain policy templates (e.g., for explicit policy, a template may suggest allocation of not more than 1000 IMSIs to any 2 VPLMNs or use of a specific distribution pattern). Templates provide overall informational structure for developing specific steering plans. For example, in developing plan based on the template for explicit steering just described, user will specify which 1000 IMSIs are to be allocated to which pair of VPLMNs out of say a list of 10 VPLMNs at a roaming location. For implicit policy, a template would suggest use of paradigms like MRC, IOT cost minimization etc. o a global steering operational state that would capture snapshot of the.combined effect of execution of various traffic steering plans under the strategy on strategic objectives. For implicit policy, such objectives would include services usage, IOT cost arising therefrom in each VPLMN, meeting contractual terms of the roaming agreements and so on. For explicit policy, such objectives would include adherence to a specific traffic distribution pattern for example. The steering objectives are initially set at a global level corresponding to commercial and business targets. These are then cascaded at local, country specific territorial limits through use of the steering framework. For example, a certain IOT discount agreement means once negotiated and accepted by aHPLMN for a certain MRC value with a select partner, the VPLMN at corporate level are apportioned at country specific rate of MRC targets for the HPLMN in each country where the VPLMN enjoys local presence. Global strategy operational state synchronizes itself with country or territory specific information embedded within the comprehensive state model and thereby consistently maintains adherence to , global strategic objectives. o A way to set the order in which steering plans for different policy types in the strategy are to be executed and the way the objectives are to be satisfied o A way to validate explicit or implicit steering policies where list of VPLMNs are specified against comprehensive IOT roaming disputes data including details of pending roaming disputes with respective Clearing Houses and involved VPLMNs so that an operator can take appropriate steps based on policies for example, keeping the streaming request pending for review, remove VPLMNs underdispute . For SoR execution, the system will ignore MAP SS7 Location Updates from these VPLMNs. o A way to report commitment adherence and shortfall data to the system for comprehensive discount agreement means. The reporting is done initially from a country or territory specific steering system to a pre-selected global service providerbased on data incorporated in the discount agreement means. • With the steering framework as described, SoR can deliver concrete business objectives through a combination of implicit and explicit policies in a consistent and coherent manner. It is to be emphasized that most of the SoR systems offered commercially today do not have a concept of maintaining steering state information. Although they vary in offering a range of plans - from a very basic one to those with higher level of sophistication, all of them fall short of explaining how these plans would map to meeting business goals for the operator and also in tracking the plan execution and progress towards a specific business objective. For example, they provide sophisticated plans like steering IMSI numbers among VPLMNs following various statistical distributions but does not really help the operator in gauging how this would correlate with say MRC target attainment for specific VPLMNs. Lack of a well-defined steering plan also make replanning and overall steering plan management difficult. Strategies as defined above are to be realized on a standalone basis i.e., two distinct strategies cannot be combined with each other. Policies under the strategy guiding plan execution can be combined after performing mutual consistency check. Operator, while implementing a steering strategy, would be at liberty to choose the appropriate policy templates or combination thereof, to satisfy the business objectives inherent in the strategy. In the context of present invention, a set of standard roaming discount agreements are assumed as follows: • Minimum volume commitment (MVC) - a given minimum usage volume to be met to get discount • Minimum revenue commitment (MRC) - a given minimum revenue is to be met • Fixed rate - no discount These are the roaming discount agreements most frequently used by mobile operators reflecting the common sets of discount models followed in bilateral agreements and commercial roaming hubs. The SoR system, in present invention, would incorporate the plan implementation based on a set of special predefined implicit policy templates as follows •Cost budget/ profitability constraint - steering to meet a predefined cost budget set per VPLMN while ensuring a given profitability on overall basis • Minimum revenue commitment (MRC) - a given minimum revenue is to be met • IOT cost minimization - steering that minimizes the overall IOT cost The SoR system would also come with several policy templates without corresponding plan implementation. This would imply that the system will come packaged with explicit policy templates like well-known statistical patterns (both discrete and continuous probability density functions) and distribution algorithms (e.g., round robin). There would also be the templates for implementing network feature-based steering in which operator tries to leverage certain network features of the VPLMN where the traffic is to be steered. SoR module would know about the support for these network features in the VPLMNs through SS7 MAP Update Location request or its GPRS counterpart. The operator can use it to define their own steering plans. Such network features would typically include: • 3GPP defined "super charger" function at VLR/SGSN where SoR steering preference can vary depending on this feature • 3GPP defined IST Support Indicator" at VMSC in a situation where the HPLMN operator may prefer VPLMNs with VMSC with this feature so that a tight control on circuit switch calls involving the subscriber SIM. The present invention would also have methods and systems to define exceptions in case steering plan under a specific strategy cannot be met because of certain practical limitation. This typically happens when a preferred VPLMN decided by the explicit / implicit policy is out of coverage at the location where MS is performing location update. Such exceptions would allow operator to configure • Maximum number of rejects after which traffic is steered to the first available VPLMN in SS7 MAP Update location request o per IMSI o per VLR / SGSN o per country o per VPLMN basis • Exceptional VPLMN selection policy (when rejects as defined above is not set) o where operator would be able to steer traffic to VPLMNs on first come first serve basis which would ignore any explicit/implicit plan implementation o which would work along with specific plan implementations and at the same time providing situation specific overrides enabling operator to steer traffic to VPLMNs under specific situations ■ with services usage cost between 90 to 100% of MRC when there are VPLMNs where services usage cost is still below 90% of MRC (refer MRC based cost optimization policy) in case of MRC based plan. ■ with present services usage cost (i.e., IOT cost) more than the minimum in case of IOT cost minimization plan. ■ which violates steering guidance from cost budget / profitability calculations (refer cost budget / profitability-based policy implementation) Having an intelligent system such as the one embodied as part of the invention has an added advantage that it would be possible to determine mutual compatibility or incompatibility amongst a set of plans at the time of defining them from policy templates. Such incompatible plans can play havoc in practical operational scenarios and should not be left to the discretion of the end users. Some instances where plans are not mutually consistent or inconsistent are: Group 1: IOT Cost minimization • HPLMN aims at minimizing overall wholesale roaming charges (IOT cost) taking into consideration the cost structure of all VPLMNs • for a given aggregate usage level, there can be a single appropriate VPLMN i.e., it tends to centralize traffic to one of the VPLMNs • may violate selected VPLMN's cost budget depending on aggregate usage because whole usage gets centralized • will automatically tend to satisfy cost budget of remaining VPLMNs because there won't be much usage of these networks (unless the lack of coverage scenario where minimum cost VPLMN is not available) • It may leave MVC, MRC for some VPLMNs not met i.e., violates MVC and MRC in general. It tends to meet MVC (Minimum Volume Commitment), MRC (Minimum Revenue Commitment) of at most one VPLMN depending on aggregate usage. Group 2: MRC • HPLMN operator commits to paying at least a minimum amount in wholesale roaming charges across all services to VPLMN operator. This can be . based on defined tariffs or bundled volumes for each service. These agreements secure a certain level of revenue for the visited network. • violates IOT cost minimization objectives in general (works against centralization of traffic) as HPLMN tends to disperse traffic across all the VPLMNs where MRC commitments are to be fulfilled. • satisfies cost budgets of individual VPLMNs if these are consistent with MRC • MVC can be satisfied in multiple VPLMNs depending on usage - but no guarantee that it will be satisfied for all VPLMNs i.e., may violate MVC in general • Group 3: Cost budget • an internal metric often defined by HPLMN operator on per VPLMN basis at a particular roaming location. No penalty clause is typically associated • can go well with MVC if consistently set i.e., usage level to achieve MVC is less than that for meeting cost budget. • can go well with MRC if consistently set i.e., MRC is less than cost budget. • can be combined with predefined profitability objectives to solve for aggregate usage level In yet another embodiment there is disclosed a plan implementation method for meeting MRC constraints comprising the steps to be performed by the SoR module of receiving data from database DB 3, for the VPLMNs for which MRC based evaluation is requested by user; receiving data from the database DB 1 the applicable MRC values for each of these VPLMNs and thereby sorting the list in descending order of MRC value such that the VPLMN at the top have highest MRC value;. updating MS priority list of VPLMNs maintained in SIM/USIM is updated through OTA, extracting data from the database DB 4, the steering events already performed with timestamp and notes IMSI, VPLMN selected and rejected by SoR module; waiting for the MAP SS7 location update from the networks and thereafter on receipt of update from the VPLMNs, calculating cumulative service usages based on DB 2 for each VPLMN in sorted MRC list (for each service types viz voice/data/SMS) ; extracting the IOT rates for said service types voice, data and SMS from database DB 1 for each VPLMN in sorted MRC list; outputting the total cumulative cost incurred for each VPLMN in the sorted MRC list by multiplying cumulative usage of each service type by , corresponding IOT rate and summing over said 3 services types, taking SoR steering decisions depending on whether total cumulative cost incurred so far in different VPLMNs are in different ranges like < 90%, 90-100% or >100% of their MRC values. SoR module will try to divert the traffic associated with the IMSI in order of sorted list to VPLMNs with cumulative cost < 90% of MRC. If there are no VPLMN left in sorted list with cumulative cost < 90% of MRC, it would try to divert traffic to VPLMNs with cumulative cost in 90 to 100% of MRC value. In . these cases, exceptions, if any, defined by the operator, would be taken into cognizance. Once all the VPLMNs in sorted list have attained their MRC values, the plan execution would be deemed to be over, and steering will happen on a first come first serve basis. External wholesale roaming discount agreement management system is updated on commitment adherence. If the MRC values for a set of VPLMNs mentioned above cannot be met at the end of the appropriate period (billing cycle or deadline), commitment shortfalls are reported to external wholesale roaming discount agreement management system. In yet another embodiment there is disclosed a plan implementation method for IOT cost minimization comprising the steps to be followed by the SoR module at the start of current billing cycle of checking from database DB 3 whether IOT cost minimization is requested by the user; calculating from the external traffic forecasting module the inferred aggregate cumulative services usage levels for 3 different service types (i.e. voice, data and SMS) during current billing cycle; receiving from the database DB 1 the applicable IOT rates for all usage tiers till inferred usage level (as applicable with prevailing discounting model for the VPLMN) for each VPLMN; calculating the IOT cost for the inferred aggregate usage for current cycle for each VPLMN based on the IOT rate and applicable usage tiers in the discounting model for the VPLMNs and such inferred aggregate usage; preparing a sorted list of VPLMNs in ascending order of IOT cost; updating through the OTA the MS priority list of VPLMNs which is maintained in SIM/USIM. The method would further comprise the steps to be followed by the SoR module of waiting for the MAP SS7 location update from the networks and thereafter, on receipt of update from the VPLMNs, taking SoR steering decisions in order of the said sorted list of VPLMNs based on their availability subject to the exceptions, if any, defined by the operator in this context. In yet another embodiment there is disclosed a plan implementation method for meeting predefined cost budget and profitability target constraints comprising the steps to be followed by the SoR module at the beginning of the current billing cycle of receiving data from database DB 3, of the 3 VPLMNs along with . the overall desired margin per unit usage for each of' the 3 service types (i.e. voice, data and SMS) and a traffic distribution matrix among these VPLMNs; updating MS priority list of VPLMNs maintained in SIM/USIM is updated through OTA with the list of 3 VPLMNs; receiving data from the database DB 1, the sets of cost budget for each of these VPLMN and the sets of IOT rate parameters for each of these VPLMNs for each said service type; developing overall profit expression in terms of margin per unit usage, developing expression for cost budget constraint for each VPLMN based on IOT rate parameters, traffic distribution and cost budget; applying standard linear optimization techniques to solve the sets of constraints to arrive at aggregate usage levels for 3 VPLMNs for each service types needed to satisfy cost budget / profitability constraints for each of the 3 VPLMNs; applying proposed traffic distribution ratios (as derived earlier from database DB 1) on these aggregate usages to determine target usage levels for each service type for each VPLMN. The method would further comprise the steps to be followed by the SoR module of waiting for MAP SS7 Location Update from the networks and thereafter, on receipt of MAP SS7 location update, extracting services usages from DB 2 for these 3 VPLMNs for each of the 3 service types; accumulating them till this point in time to find actual cumulative usage for each VPLMN for each i service type so far, checking if the calculated (or target) values for usage levels are met at any point and steering traffic to each of the 3 VPLMNs depending on their availability till actual usage < target usage for any of the service types in the VPLMN. In performing the actual traffic steering to these 3 VPLMNs, exceptions, if any, defined by the operator would be taken into . consideration. In yet another embodiment there is disclosed a system to implement the plan for meeting MRC constraints comprising of a input module for receiving data from database DB 3, for the VPLMNs for which MRC based evaluation is requested by user; a second input module for receiving data from the database DB 1, the applicable MRC values for each of these VPLMNs and thereby sorting the list in descending order of MRC value such that the VPLMN at the top have highest MRC value; a first updation module to update the MRC list to MS SIM/USIM through OTA, a first extraction module for extracting data from the database DB 4, the steering events already performed with time stamp and notes IMSI, VPLMN selected and rejected by SoR module; a processor configured for calculating cumulative usages for each VPLMN in sorted MRC list till this point (for each service types viz voice/data/SMS); a second extraction module for extracting the IOT rates for said service types voice, data and SMS from database DB 1 for each VPLMN in sorted MRC list; an output module for outputting the total cumulative cost incurred for each VPLMN in the sorted MRC list by multiplying cumulative usage of each service type by corresponding IOT rate and summing over said 3 services types for each VPLMN; and a second processor module for taking SoR steering decisions, on receipt of MAP SS7 Update Location messages from network comprising of VPLMNs, depending on whether total cumulative cost incurred so far in different VPLMNs are in different ranges like < 90%, 90-100% or >100% of their MRC values In yet another embodiment there is disclosed a system to implement the plan for meeting IOT cost minimization constraints comprising of a first input module for receiving data from database DB 3, on whether IOT cost minimization has been requested by user; a second input module for receiving data from the database DB 1, the applicable IOT rate parameters (along with MVC usage levels and associated rate discounts) along with discounting model (incremental /retrospective / Fixed rate) for each VPLMN; a first processor configured for calculating the IOT cost for the inferred aggregate usage (from traffic forecasting module) for each VPLMN based on the IOT rate and discounting model for the VPLMN and such inferred aggregate usage; a second processor configured for preparing a sorted list of VPLMNs in ascending order of IOT cost; a first updation module configured for updating through the OTA, the MS priority list of VPLMNs which is maintained in SIM/USIM at the beginning of the current billing cycle; and a third processor module configured for waiting for the MAP SS7 location update from the networks and thereafter, on receipt of update from the VPLMNs, take the SoR steering decisions in order of the said sorted list based on its availability and exceptions, if any, defined by the operator. In yet another embodiment there is disclosed a system to implement the plan for meeting predefined cost budget and profitability target constraints comprising of a first input module for receiving data from database DB 3, of the VPLMNs for which cost budget / profitability constraint is applicable, overall desired margin per unit usage for each of the 3 service types (i.e. voice, data and SMS) in sets with a traffic distribution matrix among these 3 VPLMNs; a first updation module configured for updating through the OTA, the MS priority list of VPLMNs which is maintained in SIM/USIM with these 3 VPLMNs; a second input module for receiving data from the database DB 1, the sets of cost budget set for each of these VPLMNs and the sets of IOT rate parameters for each of these VPLMNs for each said service type; and a first processor configured for calculating aggregate usage levels for 3 VPLMNs taken together for each service types that would meet cost budget / profitability constraints for each of the 3 VPLMNs by solving the linear optimization problem constructed from the overall profit expression in terms of desired overall margin per unit usage and a cost budget / profitability constraint expression for each VPLMN based on IOT rate parameters, traffic distribution and said cost budget; a second processor configured to apply proposed traffic distribution ratios (from DB3) on these aggregate usage to determine target usage levels for each service type for each VPLMN, a third processor configured for waiting for MAP SS7 Location Update from the networks and thereafter, on receipt of MAP SS7 location update, extracting services usages from DB 2 for these 3 VPLMNs for each of the 3 service types; accumulating them till this point in time to find actual cumulative usage for each of these 3 VPLMN for each service type so far, checking if the calculated (or target) values for usage levels are met at any point and steering traffic to each of the 3 VPLMNs depending on availability till actual usage< target usage for any of the service types in the VPLMN. The system should be capable of performing the last step after taking into consideration, exceptions, if any, defined by the operator. BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS Fig 1 illustrates a block diagram of the Systemof the present invention; Fig 2 depicts a conceptual diagram illustrating an examplary technical environment in which the disclosed steering of roaming may be implemented. Details description of the invention. The present invention provides a SoR system and associated methods, applicable in a Telecom operator's core home network (HPLMN), that ensures that steering of traffic performed among visited networks (VPLMN) at a specific roaming location adheres to a set of well-defined steering strategies. In accordance with various embodiments, the present invention provides a method and system that enables the mobile operator with a framework to implement a set of diverse steering strategies which can provide either implicit or explicit steering plans. The steering framework of the SoR module defines a sets of policy templates through which specific steering plans are applied. Implicit steering plans are specified in terms of a steering guidance (i.e., command to divert traffic to one or more VPLMNs) based on a future event. An example of this type of plan is the MRC, where SoR module diverts traffic to a VPLMN till its MRC is met and thereafter; steer traffic to the next VPLMN in MRC sorted list as already described. This can also include dynamic detection by the home network of a set of network features implemented by the visited network and taking traffic steering decision on that basis (e.g., super charger functionality). Explicit steering plan on the other hand, maps a set of IMSI to VPLMNs irrespective of happening of any future events. This type of plans are a direct result of regulatory reasons or unique security posture exhibited by VPLMN. Steering of roaming refers to a process by which a roaming user of a home network (HPLMN) is steered to a preferred visited network (VPLMN) to provide service for the roaming user at a roaming location where the HPLMN operator does not enjoy local presence. As described herein, reference is made to "an exemplary embodiment," "embodiments," etc., which may include a particular feature, structure or characteristic in connection with an embodiment(s). However, the use of the phrase or the term "an embodiment," "embodiments," etc., in various places herein does not necessarily refer to all embodiments described, nor does it necessarily refer to the same embodiment, nor are separate or alternative embodiments necessarily mutually exclusive of other embodiment(s). The same applies to the term "configured," "functioning" etc. According to an exemplary embodiment, a system, a method, and a non-transitory storage medium storing instruction thereon, determines to which visited network a roaming user gets access based on connection state data. According to an exemplary embodiment, a steering of roaming decision is based on predefined rules and data on steering already performed, which includes the connection state data. According to an exemplary embodiment, the steering of roaming decision includes determining whether to update a preferred visited network list. According to an exemplary embodiment, a preferred visited network list is transmitted to a user device in response to various events, as described herein. User devices store and use preferred visited network lists when selecting a visited network to which to attach. Hardware view of the system The SoR module embodied in the present invention, is enabled to capture relevant SS7 MAP signaling messages (i.e., GSM and GPRS Update Location Request) between VPLMN VLR and HPLMN HLR through configuration in SS7 Signaling Transfer Point (STP) to route all such messages to itself. The SoR module is provided with corresponding signaling point codes. The SOR module is configured depending on the requirement of a specific deployment scenario, and includes fault tolerant cushion.High availability SS7 routing architecture is configured in which multiple SoR modules are deployed with assured route availability to at least one module which inter alia caters for operational continuity in case of any undesired failure of the other module. Apart from ensuring routing of streaming even in case of redundancy among the SoR modules, a backup route to HLR is also defined in STP in case the SoR modules go down, Depending on specific situations, there can be requirements for real time processing of SS7 MAP Update Location requests. Number of MAP Update Location Requests can go to a significantly high level if there are several MSs of HPLMN registered with a certain VPLMN at a particular point of time and suddenly if the VPLMN is unable to give cover-age at one or more locations (e.g., cellular network outage). Commercially available SoR modules and even HLRs can handle this signaling load because of largely static and data driven decision rules wired in these systems. However, for the system embodied in present invention, computational load per location request can be very high depending on the type of steering strategy and associated plans to be implemented. For example, in complex computational requirement associated with implicit plan implementation (e.g., for MRC or cost budget/profitability) CPU and RAM requirements can be very high. Such system can be best envisaged through a design using multiprocessor model. Such multiprocessor model including a plurality of processors, input, updation and output module, extraction and calculating modules can be achieved through multicore processor architecture or hyper-threaded architecture. However, it would be elegant to visualize the system using asymmetric multiprocessor. In this model, there is one (or more) Master processor and under each, a number of Slave processors (each with their own private memory). Compute tasks are assigned to Slave processors by the Master processor according to specific guidelines in asymmetric processing. Typical architectural options Each processor (Master and Slave) has its own private memory (along with L1/L2 cache), however common memory (shared RAM), complete I/O (i.e., hard disks and other peripherals) along with LAN access is available to all processors in a shared basis. One of these processors will be Master and allocate computational load associated with MAP location update among Slaves. Master will keep track of how many computational tasks has been assigned to a specific Slave and once it exceeds a certain threshold, assigns new tasks to a different Slave. In other words, Master will load balance computational tasks among multiple Slaves. As illustrated in FIG. 1, the exemplary technical environment of the invention, includes visited networks 1 through 4. Each of the visited networks includes a wireless network 3G/4G/5G. For example, visited network may be implemented to include a Long Term Evolution (LTE) network, an LTE Advanced network, or future generation wireless network architecture. Each of visited networks may further include other network elements to provide, among other services, a wireless connection service, such as a base station (e.g., an evolved Node B (eNB), etc.), a serving gateway, an online offline billing service etc. Each of network devices provides signaling to support the establishment and maintenance of connections with roaming users. The environment may include wireless links or wireless and wired links among the devices and networks illustrated. A link may be direct or indirect and may involve intermediary device(s) and/or intermediary networks. The links illustrated in environment are exemplary. The environment also includes a network device, a home network that includes a network device, and a user device. Functioning of the system In another embodiment, the disclosed system functionality includes a few databases and information sources as follows - • The database DB1, as part of Wholesale roaming discount agreements management subsystems, provides VPLMN commercial details relevant for current cycle for each VPLMN including IOT rates and discount agreements along- with their specific details (e.g., MRC value for MRC constraint, cost budget for cost budget / profitability constraints). The system interaction with Wholesale roaming discount agreements management subsystems would include not only the technical interaction with AA. 14/RAEX IOT database, but also operational and process level interaction for issues like ongoing roaming disputes, amendments etc., as well as for reporting commitment adherence and shortfall related data back to such system. • The database DB2 provides complete, error free, GSMA TD.57 validated roaming usage records for the current billing cycle. This may also include GSMA BCE defined usage records data along with the associated procedures. • The database DB3 defined steering strategy, policies and plans to be achieved for current billing cycle, list of VPLMNs to be involved, as well as specific parameters relevant for cost budget/profitability constraint (e.g., sets of VPLMNs where the constraints are to be met and traffic distribution matrix). DB3 will synchronize itself with DB1 on the list of applicable VPLMNs for MRC and cost budget. It will then check country or territory specific database to find list of VPLMNs present in that country and prepare list of VPLMNs and associated MRC and cost budget values appropriate for a country or territory. • The database DB4 has records for steering already performed by SoR module in current billing cycle. The working of the system - MRC If user opts for meeting specific MRC constraints using SoR (in one or more VPLMNs), system will perform below steps: From DB 3, system gets VPLMNs for which MRC satisfaction is requested by user. • From DB 1, system gets applicable MRC values for each of these VPLMNs. It sorts the list in descending order of MRC value. VPLMN at the top would have highest MRC value. The Mobile station (MS) priority list of VPLMNs maintained in SIM/USIM is updated through OTA with the priority list of MRC prepared above. The process should be done at the beginning of the current billing cycle • From DB 4, it extracts details of the current cycle steering events already performed with timestamp and notes IMSI, VPLMN selected and rejected by SoR module. • Once MAP SS7 Update Location Request for a certain IMSI is received by SoR module, it calculates cumulative usages for each VPLMN in sorted MRC list till this point (for each service types like voice/data/SMS). It does so by extracting usage records from DB 2 till this point and aggregating such usages. • Next it extracts IOT rates for service types voice, data and SMS from DB 1 for each VPLMN in sorted MRC list. • It next gets the total cumulative cost incurred till this point for each VPLMN in the sorted MRC list by multiplying cumulative usage of each service type by corresponding IOT rate and summing over 3 services types. • The SoR system will follow the below steps to divert traffic amongst VPLMNs. based on availability and subject to the exceptions defined by the operator, to ensure MRC is satisfied by all in the following manner: - For a specific VPLMN in order from the list, it diverts traffic to the VPLMN unless it's MRC is 90% met - Once 90% of MRC has been achieved for the VPLMN in order from the priority list, it diverts traffic to VPLMNs with current services usage costs between 90 to 100% of MRC value. - Once > 100% of MRC is met for all VPLMNs, the system directs SoR module to follow first come/first serve steering by default. The working of the system - IOT cost minimization If user aims at minimizing IOT costs, system will perform below steps: • From DB3, system checks whether IOT cost minimization is required by the user. If required, system carries out the below steps • From external traffic forecasting module, system gets inferred aggregate usage for 3 different service types (voice, data and SMS) during current billing cycle [traffic forecasting techniques is beyond the scope of this invention. • From DB 1, system gets IOT rate parameters (along with MVC usage levels and associated rate discounts) along with discounting model (e.g., whether incremental discounting or retrospective rerating) for each VPLMN. • SoR system calculates IOT cost for this aggregate inferred usage level (for current cycle) for each VPLMN based on the corresponding IOT rate and discounting model and such aggregate usage. Three options for VPLMN i are as follows: • C= ufvcrfvc . p-MVC p-, +u- r- [Incremental discounting] • c = «vc+upr mc)r\- ■MVC [Retrospective rerating] • discounting] [Fixed rate without Where, *-JJ • Pre-MVC usage and IOT rates: ..MVC rMVC > ' i • Post-MVC usage and IOT rates: p-MVC : u- < -MVC System, after calculating IOT cost for all VPLMNs based on inferred aggregated usage level, prepares a sorted list of VPLMNs in ascending order of IOT cost (IOT cost for aggregate usage would increase down the list) MS priority list of VPLMNs maintained in SIM/USIM is updated through OTA with the list prepared above. The process should be done at the beginning of the current billing cycle. • It then waits for MAP SS7 Location update request from the networks and on getting these requests, it accepts them in order of their arrival. In most cases, update location requests will come from VPLMNs in the same order as defined in priority list above because of the OTA based update of MS priority list. If MAP Update Location Request from any of the VPLMN in sorted priority list does not come in the same order because of sporadic network coverage, exceptions, if any, defined by the operator would be applied to decide on the VPLMN to which traffic should be steered. The working of the system - Cost budget and Profitability If user needs SoR module to meet predefined cost budget and profitability targets, system will perform below steps: • From DB 3, system gets the following user specified information: • overall desired margin per unit usage (SDR margin per unit usage) to be met for each of the 3 service types • sets of 3 VPLMN that are to be considered • desired traffic distribution matrix (i.e., proportion of traffic each VPLMN of this set will get out of total traffic volume for the group) SoR module updates the MS priority list of VPLMNs maintained in SIM/USIM with the list of these 3 VPLMNs • From DB 1, system gets below information for these 3 VPLMNs • Sets of overall cost budget set for each of these VPLMN • Sets of IOT rate parameters for each of these VPLMNs for each service type (see section: Functioning of system in Offline mode - Cost budget and Profitability) • System calculates the following based on above information: • Overall profit expression in terms of margin per unit usage • Expression for cost budget constraint for each VPLMN based on IOT rate parameters, traffic distribution and cost budget obtained above • . System performs standard linear optimization techniques (e.g., linear programing) to determine aggregate usage levels for 3 VPLMNs for each service types at the same time satisfying cost budget constraints for each of the 3 VPLMNs • System applies proposed traffic distribution ratios (from DB3) on these aggregate usages to determine target usage levels for each service type for each VPLMN • When a MAP SS7 Update Location Request is received by SoR, it extracts usage records from DB 2 for these 3 VPLMNs for each of the 3 service types (voice, data and SMS) till this point, aggregates them to find actual cumulative usage for each VPLMN for each service type till this specific point in time. • System checks if the calculated (or target) usage levels are met at any point. It continues to drive traffic to each of the 3 VPLMNs based on their availability till -actual usage < target usage (for any of the service types in the VPLMN). If, at any point in time, actual usage > target usage for all service types for a specific VPLMN (out of the group of 3), it stops diverting traffic. to that VPLMN by instructing SoR module accordingly. When actual usage < target usage, exceptions, if any, defined by the operator would be considered when none of the 3 VPLMNs are available for traffic steering because of sporadic network coverage. Different entities and their relations are described through below formalism: a. Usage vector: u = [ux U2 U3] b. Margin per usage: M = [mx m2 m3] c. Total profit expression: P = m-yU^ + m2u2 + rn3u3 = Ei"ii"i= MuT d. IOT rate matrix: R = Tll ■" r13' -r31 "■' r33. = Vij] (i = 1 to'3, j - 1 to 3) (i - identifies VPLMN, j - identifies service type) e. Traffic distribution matrix: P = Pll ••• Pl3' P31 '" P33. = [Pij] (i = 1 to 3, j = 1 to 3) (i - identifies VPLMN, j - identifies service type) Cost budget constraint inequalities: PlirilWl + Pl2^12^2 + Pl3»13W3 < Cx P21r21ul + P22r22u2 + P23r23lt3

Documents

Application Documents

# Name Date
1 202131045881-(08-10-2021)-FORM-3.pdf 2021-10-08
1 202131045881-AMENDED DOCUMENTS [17-01-2024(online)].pdf 2024-01-17
2 202131045881-(08-10-2021)-FORM-2.pdf 2021-10-08
2 202131045881-FORM 13 [17-01-2024(online)].pdf 2024-01-17
3 202131045881-POA [17-01-2024(online)].pdf 2024-01-17
3 202131045881-(08-10-2021)-FORM-1.pdf 2021-10-08
4 202131045881-FORM 13 [21-12-2022(online)].pdf 2022-12-21
4 202131045881-(08-10-2021)-DRAWINGS.pdf 2021-10-08
5 202131045881-POA [21-12-2022(online)].pdf 2022-12-21
5 202131045881-(08-10-2021)-DESCRIPTION-(COMPLETE).pdf 2021-10-08
6 202131045881-CLAIMS [05-11-2022(online)].pdf 2022-11-05
6 202131045881-(08-10-2021)-CLAIMS.pdf 2021-10-08
7 202131045881-CORRESPONDENCE [05-11-2022(online)].pdf 2022-11-05
7 202131045881-(05-11-2021)-FORM-18.pdf 2021-11-05
8 202131045881-(22-02-2022)-FORM-9.pdf 2022-02-22
8 202131045881-FER_SER_REPLY [05-11-2022(online)].pdf 2022-11-05
9 202131045881-FER.pdf 2022-07-08
10 202131045881-(22-02-2022)-FORM-9.pdf 2022-02-22
10 202131045881-FER_SER_REPLY [05-11-2022(online)].pdf 2022-11-05
11 202131045881-(05-11-2021)-FORM-18.pdf 2021-11-05
11 202131045881-CORRESPONDENCE [05-11-2022(online)].pdf 2022-11-05
12 202131045881-(08-10-2021)-CLAIMS.pdf 2021-10-08
12 202131045881-CLAIMS [05-11-2022(online)].pdf 2022-11-05
13 202131045881-(08-10-2021)-DESCRIPTION-(COMPLETE).pdf 2021-10-08
13 202131045881-POA [21-12-2022(online)].pdf 2022-12-21
14 202131045881-(08-10-2021)-DRAWINGS.pdf 2021-10-08
14 202131045881-FORM 13 [21-12-2022(online)].pdf 2022-12-21
15 202131045881-(08-10-2021)-FORM-1.pdf 2021-10-08
15 202131045881-POA [17-01-2024(online)].pdf 2024-01-17
16 202131045881-(08-10-2021)-FORM-2.pdf 2021-10-08
16 202131045881-FORM 13 [17-01-2024(online)].pdf 2024-01-17
17 202131045881-(08-10-2021)-FORM-3.pdf 2021-10-08
17 202131045881-AMENDED DOCUMENTS [17-01-2024(online)].pdf 2024-01-17
18 202131045881-US(14)-HearingNotice-(HearingDate-14-11-2025).pdf 2025-10-10
19 202131045881-ORIGINAL PHYSICAL POWER OF ATTORNEY-[17-10-2025].pdf 2025-10-17
20 202131045881-Response to office action [24-10-2025(online)].pdf 2025-10-24
21 202131045881-Correspondence to notify the Controller [11-11-2025(online)].pdf 2025-11-11
22 202131045881-Written submissions and relevant documents [25-11-2025(online)].pdf 2025-11-25

Search Strategy

1 202131045881E_07-07-2022.pdf
1 202131045881_SearchStrategyAmended_E_searchstrategyAE_19-09-2025.pdf
2 202131045881E_07-07-2022.pdf