Interesting little program - I'm curious - is there a reason you decided to use sockets and hand-craft packets, instead of using pcap ?
Also - I'm surprised you didn't build-in a subnet scanner into this. Perhaps you were trying to get basic functionality into this, and have a higher-level control program , which you could perhaps share ??
I'm thinking this would be useful to probe and discover the less-reliable parts of a switched network, and perhaps uncover faulty wiring, flaky switches, or even unauthorized network extensions. Perhaps even as an indicator of network segment performance at different times of the day.