I know why it is a CGI. There was already a webserver running on the port, good programmers built the daemon to stay running, it handles the port it answers unambiguously, it provides a simple interface that can be accessed with just a couple lines of perl without understanding any of the high magic of networking, the webserver has authentication/authorization built in, and he already knew how to do it.

Unless you a are a masochist who gets off on network internals, why wouldn't you call a remote script using CGI? :)