We have 100+ embedded boards that we need to talk to occasionally.
We've found the best way to do this reliably (there are some strange internet connections out there) is to have the boards open a few reverse ssh tunnels to our server.
Currently each board opens three tunnels, for a total of around 300. The tunnels are inactive most of the time .
Are there any performance implications of this? Assuming we don't run out of ports or file descriptors, what is most likely to trip us up?
Edit: I'm primarily concerned with having several hundred inactive clients connected at once. Only a few of the tunnels will be in active use at any one time.