I have redundancy up and running, but when I disconnect the master gateway (communication cable disconnection or physical server shutdown) it takes like 60 seconds for perspective clients to show 'No connection to gateway' and after that it takes 10 more seconds to failover. If, however, I stop the ignition service from Windows Services in the Master computer, the 'No connection to gateway' message appears immediately and failover is done in 10 seconds or so.
I've tried different redundancy settings to no avail, but just the fact that there is this big difference between stopping the service and disconnecting or shutting down the physical server is weird to me.
Check the properties configutations in the project timeouts instead of redundancy settings. This is like a idle timeout or a lack of a LWT.
I've tried modifying this property

but the result is still the same. Other properties don't seem to apply
This is totally out of Ignition hands, but is a fundamental behavior of TCP/IP communications. When you deliberately kill a process that has TCP/IP connections in progress, that OS takes responsibility for immediately notifying the other end of the breakage. (Because TCP/IP is actually implemented by the OS, not by Ignition or Java.)
Breaking a cable gives neither end a chance to notify, so the standard TCP/IP timeouts will apply. (Typically 90 seconds counting all of the possible retries.)
Sorry. Make your systems tolerant of such timeouts. Or switch to I/O protocols that have different rules (like Class1 EtherNet/IP, based on UDP).
4 Likes
Hi Phil.
Thanks for the explanation. I can see that the failover from master to backup is done quickly by looking at the system events. However Perspective Clients and web browser clients don't point to the backup IP until ~70 seconds passed. I can 'help' the web browser and put the backup IP manually and it will work so that tells me the only thing missing is for this to be done automatically together with the gateway failover. Is this where Ignition hits its limitation with TCP/IP timeouts?
For me it's a bit embarrasing to show my client on a redundancy test that my SCADA screens are not working, that they don't have any diagnostic indication for +60 seconds and waiting +70 seconds for the operation clients to start working again.
Is there any workaround to this? I don't understand how I would switch I/O protocols with Ignition.
I don't know all the details on the client side. IIRC, Vision is faster. I don't mock up redundancy often, so I'm not sure how much is Browser + TCP/IP versus other, potentially adjustable, factors.