To first Address Larry’s comment: The solution proposed is actually very simple. What is a little more complex, is the issue itself, which requires repeater system owners to babysit their systems, so that inexperienced users do not inadvertently connect other large systems.
Discussion of the details and nuances of the issue also may appear complex, but one should not assume that detailed discussion implies complex solutions.
All properly designed software systems have mechanisms to insure the stability of individual nodes and of the overall system. I have implemented a variety of simple algorithms in the past, including congestion-control algorithms for the Orbcomm Satellite network, and rate-limiting mechanisms for enterprise web portals that precisely measure CPU use of multiple servers in real time, ensuring system stability even if bombarded with D.O.S. attacks. From a mathematical standpoint these algorithms are simple and work reliably.
To someone who does not have a software engineering background this discussion sounds complex, but again that does not mean a solution itself is complex. Might only be a few dozen lines of code involved, and it does not require as Larry states: “full time global script to hammer the stats page for every single connect of the entire Allstar System”. That is not at all what was discussed, even though it understandably might appear as such to a layperson.
If the OP or another repeater system admin would like a solution to this issue I am happy to put one together, and with the experience that Tim, Mike and others on the forum have I have no doubt the end result would be a simple and effective solution that increases the stability and usefulness of AllStar for everyone.
Following up on other comments, I do still think the immediate goal is simply to boot any user who has more than X number of other connections. eg. a system owner can set X=5 in a conf file and then if node 2345 connects to your node, then later also connects to another node having 50 connections, then 2345 gets disconnected.
Secondary checks can then also be easily added, maybe if your node has > maxnumconnections that you define, then parse the node graph and drop the node with the most connections. But there are a lot of options there and a number of possible approaches.