From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

PXI

cancel
Showing results for 
Search instead for 
Did you mean: 

multiple network connections

after much searching of knowledge bases i deceided to post this question.

 

please have a look at the attached picture. we currently have two RT systems, a duty and standby which communicate to two host PCS. only one PXI sends data at a time as only one is operational (hence duty standby), with the current configuration failure of hub 1 will effectivley lose all connections to PC 1 and 2, as the duty PXI's do not recognise failure of communications as a major error therefore it will continue to operate without the standby taking control. failure of hub 2 will cause only the communications to PC 2 to be lost.

 

i know that i could genrate a serious error condition to allow the satndby PXI to take control but at the moment control (duty standby) will only be swapped as a result of more serious errors ( which is not too important regarding this question)

 

i want to propose a new configuration with both PXI RT systems having two network cards, failure to communicate with one NIC (following a time out or checksum error) the second NIC would attemp to transmit the data.  this would elliminate many of the availability/ redndancy issues we are experiencing.

 

after reading numerous threads and articles i believe this possible providing both NIC's are placed on different subnets, can any one confirm this is possible? also can you envisage some communication errors whcih may be encountered?

 

 

thanks in advance

0 Kudos
Message 1 of 4
(3,390 Views)

Hi idrisi,



Your proposed new configuration is indeed a viable method, if you monitor for timeouts or errors. If no built-in network watchdog is available, you can create one programmatically. For example, if TCP/IP is the communication protocol between the host machine and target applications, you can monitor for network disconnect errors and timeouts. In these situations, you might want to change the behavior of the system. For example, you might want to log to a file until the network connection is reestablished.



As far as I understand, the NICs do not need to be on different subnets in order to implement this method. With this configuration, there shouldn't be any real errors because as soon as there are any communication errors, PC1 will route through PC2.



However, a better method to achieve this goal may be to create a direct serial link between your PXIs. You can then set up your PXIs to run a background process where they communicate to each other and notify that they are still alive. If the Duty PXI stops reporting within a timeout period, the Standby PXI will take over and communicate this back to PC2. Instead of the PXI failing, if PC1 were to go down, the Duty PXI could notify the Standby PXI of this, which can be fed back to PC2. If you want to, the Standby PXI can also programatically switch to connect to PC1.



I hope my explanation is fairly easy to follow. That is of course for a generic system, and several factors of your specific scenario (such as location of the PXIs) will have an effect on the optimal solution. Here are a couple of links which should be useful to your application.



1. Using a Hardware or Software Watchdog in a Real-Time Application: http://zone.ni.com/devzone/cda/tut/p/id/4487

2. Redundant System Reference Design for LabVIEW Real Time, LabVIEW FPGA, and CompactRIO: http://zone.ni.com/devzone/cda/tut/p/id/6900



The second link is particularly aimed for use with cRIOs and FPGAs, but the article explains redundancy and its implementation in good detail. I hope my input is useful to you. Please let us know how you get on.

Regards,


Imtiaz Chowdhury
Project Manager
Green Running / Austin Consultants

0 Kudos
Message 2 of 4
(3,340 Views)

thanks for your answer imtiaz, we already have the PXI communicating to each other using some digital I/O these are used for watchdog facilities between PXI systems, i intend to use the serial IO for communiating to a printer. so you envisage no problems with this solution with regards to multiple communications being sent to  PCs 1 and 2 ? i supposed the network cards can be configured to try to send via one port/NIC  which if timeouts occur then the alternative port/NIC upon failure could be used .

 

we also currently detect communication errors using timeouts but all we do is wait for a few seconds and try to resend the data, this provide no redundancy

 

many thanks for your answer 

0 Kudos
Message 3 of 4
(3,337 Views)

You're welcome. Indeed I do not think there would be any problems with multiple communications being sent to both PCs at once. That is precisely the way I would do it, to monitor for timeouts, and have an event structure that chooses the communication method.

 

I think it should be fairly straight forward to modify the system so that instead of just resending the data, you could try and re-route the data after perhaps 2 or 3 timeouts.

Regards,


Imtiaz Chowdhury
Project Manager
Green Running / Austin Consultants

0 Kudos
Message 4 of 4
(3,331 Views)