When autosave/netsave.sav would be overwritten, the savegame instead gets written to autosave/netsave2.sav, then autosave/netsave3.sav, and so on and so forth. At a certain point, the numbering wraps around back to 1 in order to prevent the autosave/netsave#.sav from taking up too much storage space.
When autosave/netsave.sav would be overwritten, the savegame actually overwrites the previous savegame located at the same filename. This can become a problem in the following (non-exhaustive list of) circumstances:
The server restarts and the client fails to reconnect to the server. The server restart causes the client to generate a netsave.sav, then the client failing to reconnect causes another disconnect which generates another netsave.sav which overwrites the first and useful version.
You have a slow connection and get constantly disconnected from a server you play on. These disconnections each generate a netsave.sav. For various reasons, you want to be able to go back to any of the few most recent netsave.sav versions instead of just the single most recent version.
You are trying out different servers to see what they look like, but some of them instantly disconnect you once you join. You still like to see what these games looked like without having to manually go back to rejoin each server and save the game.
I'm not convinced this is an issue. Netsaves aren't the same as autosaves - they only happen when something has gone wrong. As such, there should only ever be one of them which is either moved elsewhere if the user actually wants to keep it (though most likely just discarded/ignored)
We talked about this a bit on IRC, but basically it comes down to "what is netsave". Given a few other tickets @James103 has made, it is clear to me that his interpretation is different from ours. To be clear, neither is wrong. Just .. different.
netsave.sav is created by a function called ClientNetworkEmergencySave. And in my (and I guess @LordAro's) head it is exactly that: a savegame in case of an emergency to allow us to debug situations we otherwise couldn't.
How @James103 is seeing it, if I can be so free to put words in your mouth, it is a savegame to recover a network game you have played recently (as in, not the last game, but one before, or just time-wise not long ago).
I can understand the use-cases for the latter, it just is a change of its functionality. So, I am not opposed to changing what it does .. but if we do that, I would also like that the code is cleaned up a bit from the old meaning into the new. So no more Emergency save, but just ClientNetworkDisconnectSave or something. Together with that, we can give them the same love as autosave and make sure they don't instantly overwrite each other.
One thing I've noticed is that autosaves do not work quite as I expected: the first autosave after starting the game is always numbered autosave0, rather than using the lowest available "free" autosave slot, or overwriting the oldest autosave.
I feel like replicating the same behavior for the netsaves would not quite solve OP's problem.
edit: For this behavior, I have opened issue #9396 .