IP Library › Granted Patent US 12,572,394
Granted Patent B2
US 12,572,394 · App. 18/501,394 · Granted Mar 10, 2026

Methods, systems and apparatus to dynamically facilitate boundaryless, high availability system management

Inventors: Raja Ramana Macha (Trabuco Canyon, CA); Andrew Lee David Kling (Salem, MA); Frans Middeldorp (Geldrop, NL); Nestor Jesus Camino, Jr. (Hingham, MA); James Gerard Luth (Foxboro, MA); James P. Mcintyre (San Jose, CA)
Assignee: Schneider Electric Systems USA, Inc.
G06F9/5083G05B19/4155G06F9/5088G06F11/203G06F11/3006G06F11/3055H04L67/1034G05B2219/31449G06F2201/805G06F2201/86G06F2209/5011
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,572,394
App. No.
18/501,394
Granted
Mar 10, 2026
Kind
B2
Abstract

In a Boundaryless Control High Availability (“BCHA”) system (e.g., industrial control system) comprising multiple computing resources (or computational engines) running on multiple machines, technology for computing in real time the overall system availability based upon the capabilities/characteristics of the available computing resources, applications to execute and the distribution of the applications across those resources is disclosed. In some embodiments, the disclosed technology can dynamically manage, coordinate recommend certain actions to system operators to maintain availability of the overall system at a desired level. High Availability features may be implemented across a variety of different computing resources distributed across various aspects of a BCHA system and/or computing resources. Two example implementations of BCHA systems described involve an M:N working configuration and M:N+R working configuration.

Claims (67)

1 . A system for dynamically load-balancing redistribution elements across a group of computing resources that facilitate at least an aspect of an Industrial Execution Process, comprising:

a system configured to:

monitor the operational state data and availability metrics associated with an Execution Process control system components/computing resources;

simulate computing resource failures iteratively for each of the Execution Process control system component/computing resource;

determine an aggregated operational state for HA−M:N Validation load-balancing based on the simulation wherein aggregated operational state is used to determine a transition supplemental resource request to facilitate transitioning operational state back to a viable M:N working configuration and maintain high availability requirements;

identify a load-balancing opportunity to trigger redistribution of at least one redistribution element to a proposed redistribution target wherein the load-balancing opportunity involves a Resource Failure Detection Load-Balancing and a HA−M:N Validation which executes a Z Validation Degree computing resource failure simulation, wherein Z is greater than or equal to 1;

process the Execution Process control system components/computing resources to determine a target redistribution pool of potential redistribution candidates that maintain system availability constraints;

generate an operational state transition Supplement computing resource request to facilitate transitioning back to a viable M:N working configuration that maintains high availability requirements; and

redistribute the at least one redistribution element to at least one target redistribution component/computing resource selected from the target redistribution pool.

2 . The system of claim 1 , further comprising:

selecting the redistribution target from the target redistribution pool according to a Load-Balancing Redeployment Type.

3 . The system of claim 2 wherein the Load-Balancing Redeployment Type includes one of: Fastest Failover Load Balancing, Optimal Failure Load Balancing, or Balanced Failure Load Balancing.

4 . The system of claim 1 , further comprising:

redistributing one or more Applications as the at least one redistribution element.

5 . The system of claim 1 , further comprising:

redistributing one or more Applications and corresponding Work Items as the at least one redistribution element.

6 . The system of claim 5 , wherein the at least one redistribution element is associated with a failed computing resource.

7 . The system of claim 1 , further comprising:

executing a remediation operational state determination.

8 . The system of claim 7 wherein the remediation operational state determination validates that computing resources are facilitating a viable M:N working configuration and maintain high availability requirements.

9 . The system of claim 7 wherein the remediation operational state determination validates that computing resources are facilitating a viable M:N working configuration and does not maintain high availability requirements.

10 . The system of claim 7 wherein the remediation operational state determination validates that computing resources are not facilitating a viable M:N working configuration and does not maintain high availability requirements.

11 . The system of claim 1 , further comprising:

executing auto-remediation to obtain and provision the Supplement computing resource; and

redistributing at least one redistribution element to the Supplement computing resource.

12 . The system of claim 5 , wherein the Work Items include:

executing auto-remediation to obtain and provision the Supplement computing resource; and

redistributing at least one redistribution element to the Supplement computing resource.

13 . The system of claim 5 , further comprising:

activating redistributed elements along with corresponding application or work item operational data stored in a data services module at or near the time of the computing resource failure.

14 . A method for dynamically load-balancing redistribution elements across a group of computing resources that facilitate at least an aspect of an Industrial Execution Process comprising:

monitoring operational state data and availability metrics associated with Execution Process control system components/computing resources;

simulating computing resource failures iteratively for each of the Execution Process control system component/computing resource;

determining an aggregated operational state for HA−M:N Validation load-balancing based on the simulation wherein aggregated operational state is used to determine a transition supplemental resource request to facilitate transitioning operational state back to a viable M:N working configuration and maintain high availability requirements;

identifying a load-balancing opportunity to trigger redistribution of at least one redistribution element to a proposed redistribution target wherein the load-balancing opportunity involves a Resource Failure Detection Load-Balancing and a HA−M:N Validation which executes a Z Validation Degree computing resource failure simulation, wherein Z is greater than or equal to 1;

processing Execution Process control system components/computing resources to determine a target redistribution pool of potential redistribution candidates that maintain system availability constraints;

generate an operational state transition Supplement computing resource request to facilitate transitioning back to a viable M:N working configuration that maintains high availability requirements; and

redistributing the at least one redistribution element to at least one target redistribution component/computing resource selected from the target redistribution pool.

15 . The method of claim 14 , further comprising:

selecting the redistribution target from the target redistribution pool according to a Load-Balancing Redeployment Type.

16 . The method of claim 15 wherein the Load-Balancing Redeployment Type includes one of: Fastest Failover Load Balancing, Optimal Failure Load Balancing, or Balanced Failure Load Balancing.

17 . The method of claim 14 , further comprising:

redistributing one or more Applications as the at least one redistribution element.

18 . The method of claim 14 , further comprising:

redistributing one or more Applications and corresponding Work Items as the at least one redistribution element.

19 . The method of claim 18 , wherein the at least one redistribution element is associated with a failed computing resource.

20 . The method of claim 14 , further comprising:

executing a remediation operational state determination.

21 . The method of claim 20 wherein the remediation operational state determination validates that computing resources are facilitating a viable M:N working configuration and maintain high availability requirements.

22 . The method of claim 20 wherein the remediation operational state determination validates that computing resources are facilitating a viable M:N working configuration and does not maintain high availability requirements.

23 . The method of claim 20 wherein the remediation operational state determination validates that computing resources are not facilitating a viable M:N working configuration and does not maintain high availability requirements.

24 . The method of claim 14 , further comprising:

executing auto-remediation to obtain and provision the Supplement computing resource; and

redistributing at least one redistribution element to the Supplement computing resource.

25 . The method of claim 18 , wherein the Work Items include:

a computational or control component generated based on a Concrete Process Control Model and associated computational or control component element of the Execution Process; and

an abstraction model component generated based on operational characteristics and capabilities associated with the work item.

26 . The method of claim 18 , further comprising:

activating redistributed elements along with corresponding application or work item operational data stored in a data services module at or near the time of the computing resource failure.

27 . A non-transitory computer readable medium storing sequences of computer-executable instructions for dynamically load-balancing redistribution elements across a group of computing resources that facilitate at least an aspect of an Industrial Execution Process, the sequences of computer-executable instructions including instructions that instruct at least one processor to:

monitor the operational state data and availability metrics associated with an Execution Process control system components/computing resources;

simulate computing resource failures iteratively for each of the Execution Process control system component/computing resource;

determine an aggregated operational state for HA−M:N Validation load-balancing based on the simulation wherein aggregated operational state is used to determine a transition supplemental resource request to facilitate transitioning operational state back to a viable M:N working configuration and maintain high availability requirements;

identify a load-balancing opportunity to trigger redistribution of at least one redistribution element to a proposed redistribution target wherein the load-balancing opportunity involves a Resource Failure Detection Load-Balancing and a HA−M:N Validation which executes a Z Validation Degree computing resource failure simulation, wherein Z is greater than or equal to 1;

process the Execution Process control system components/computing resources to determine a target redistribution pool of potential redistribution candidates that maintain system availability constraints;

generate an operational state transition Supplement computing resource request to facilitate transitioning back to a viable M:N working configuration that maintains high availability requirements; and

redistribute the at least one redistribution element to at least one target redistribution component/computing resource selected from the target redistribution pool.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2024
From: KLING, ANDREW LEE DAVID; MACHA, RAJA RAMANA; MIDDELDORP, FRANS; CAMINO, NESTOR JESUS, JR.; LUTH, JAMES GERARD; MCINTYRE, JAMES P.
To: SCHNEIDER ELECTRIC SYSTEMS USA, INC.
Reel/Frame 066802/0965 →
Continuity (4)
Continuation 17236833 · Apr 21, 2021
Continuation 16312328
Provisional Application 62354669 · Jun 24, 2016
Related Publication 20240069983A1 · Feb 29, 2024
References Cited (39)
US 6292822B1 · Hardwick · 2001 [cited by examiner]
US 8577795B2 · Clubb · 2013 [cited by examiner]
US 8621058B2 · Eswaran · 2013 [cited by examiner]
US 8645529B2 · Doddavula · 2014 [cited by examiner]
US 8943372B2 · Frank · 2015 [cited by examiner]
US 9807035B1 · Hanks · 2017 [cited by examiner]
US 10157245B2 · VanGilder · 2018 [cited by examiner]
US 11822971B2 · Macha · 2023 [cited by examiner]
US 20030126200A1 · Wolff · 2003 [cited by examiner]
US 20040022279A1 · Kailbach · 2004 [cited by examiner]
US 20060190243A1 · Barkai · 2006 [cited by examiner]
US 20070234366A1 · Morich · 2007 [cited by examiner]
US 20080221941A1 · Cherkasova · 2008 [cited by examiner]
US 20090122706A1 · Alfano · 2009 [cited by examiner]
US 20110022861A1 · Agneeswaran · 2011 [cited by examiner]
US 20110276951A1 · Jain · 2011 [cited by examiner]
US 20120240129A1 · Kanso · 2012 [cited by examiner]
US 20140269739A1 · Evans · 2014 [cited by examiner]
US 20140282536A1 · Dave · 2014 [cited by examiner]
US 20140325524A1 · Zangaro · 2014 [cited by examiner]
US 20160072730A1 · Jubran · 2016 [cited by examiner]
US 20180299873A1 · Chauvet · 2018 [cited by examiner]
US 20190205180A1 · Macha · 2019 [cited by examiner]
US 20190361753A1 · Macha · 2019 [cited by examiner]
WO 2014058944A1 · 2014 [cited by applicant]
WO 2015155571A1 · 2015 [cited by applicant]
PCT Search Report for International Patent Application No. PCT/US2017/039142 dated Sep. 13, 2017, 2 pages. [cited by applicant]
PCT Written Opinion of the International Searching Authority for International Patent Application No. PCT/US2017/039142 dated Sep. 13, 2017, 19 pages. [cited by applicant]
PCT Search Report for International Patent Application No. PCT/US2017/039145 dated Sep. 11, 2017, 2 pages. [cited by applicant]
PCT Written Opinion of the International Searching Authority for International Patent Application No. PCT/US2017/039145 dated Sep. 11, 2017, 4 pages. [cited by applicant]
Haddad, I., “The HAS Architecture a Highly Available and Scalable Cluster Architecture for Web Servers”, Mar. 2006, A Thesis in the Department of Computer Science and Software Engineering, Presented in Partial Fulfillme… [cited by applicant]
Bozman, J., “White Paper—Advancing Availability and Cluster Software Worldwide”, May 2009, Sponsored by NEC Corporation, IDC, Global Headquarters, 15 pages. [cited by applicant]
PCT International Search Report for International Application No. PCT/US2017/039138 dated Aug. 31, 2017, 2 pages. [cited by applicant]
PCT Written Opinion of the International Searching Authority for International Application No. PCT/US2017/039138 dated Aug. 31, 2017, 6 pages. [cited by applicant]
Haddad, I., “The HAS Architecture: A Highly Available and Scalable Cluster Architecture for Web Servers”, A Thesis in the Dept. of Computer Science & Software Engineering, Presented in Partial Fulfillment of the Require… [cited by applicant]
Extended European Search Report for European Patent Application No. 17816352.3 dated Jan. 17, 2020, 10 pages. [cited by applicant]
Extended European Search Report for European Patent Application No. 17816355.6 dated Jan. 15, 2020, 10 pages. [cited by applicant]
Extended European Search Report for European Patent Application No. 17816356.4 dated Jan. 8, 2020, 10 pages. [cited by applicant]
Extended European Search Report dated Apr. 9, 2025 for corresponding European Patent Application No. 24218007.3, 14 pages. [cited by applicant]