|
Aggie Student Toolkit — Load Balancer CSCE 412 Project 4
Arnav Fotedar · Fall 2026 · C++ load balancer simulation
|
| CConfig | Every user-adjustable setting for one simulation run |
| CFirewall | Rejects requests whose source address falls in a blocked IPv4 range |
| CGeneratorSettings | Tunable parameters for random request generation |
| CGeneratorStats | Running statistics that show the randomness of generated traffic |
| CLoadBalancer | Distributes queued requests across a dynamically sized pool of WebServer objects |
| CLoadBalancerStats | Counters accumulated over a whole run |
| CLogger | Writes simulation events to the console and, optionally, to a file |
| CRequest | A single web request waiting for, or receiving, service |
| CRequestGenerator | Produces random requests from a single seeded Mersenne Twister engine |
| CScaleEvent | One change to the server pool, kept for the scaling timeline in the log |
| CScalingPolicy | Rules for growing and shrinking the server pool |
| CSimulation | Owns one complete run: the generator, the load balancer(s) and the clock |
| CSnapshot | Point-in-time picture of the load balancer, recorded at regular intervals |
| CSwitch | Routes each request to a processing or a streaming LoadBalancer |
| CWebServer | A simulated web server that processes at most one request at a time |