Core Balance is a TCP Load Balancing proxy. It's goal, unlike many load balancing proxies, is to balance based upon the node speed and available processing cores. This program was writting primarily for use with distcc. The idea stemmed from having a cluster of machines running distcc and having absolutely no way to utilize my nodes from outside of the cluster's private subnet. I did a little looking around and found TCPBalance, copyrighted to Caspian Networks, Inc. This temporarily solved my problem as it was designed to do excatly what I needed; however, TCPBalance is written in a language called Erlang. This made me very uncomfortable. I do not like the idea of having to install a whole run-time environment just to be able to use a single program or to have to learn a new language (that I'll probably never use anywhere else) just to modify it's behavior. Not to mention the strange behaviors I have noticed from TCPBalance, such as parts of the program seeming to hang while others kept working fine.
This project is still in its infant stages. The program compiles and runs, but I have not done enough testing to consider it anything stable. Please feel free to download, use, and if you find bugs, report. If you have an idea to make it better, have a patch to address a bug, or think I did something bone-headed, please give me some feed back. It will be much appreciated.