When mongod is started as a Windows service, it reports to the SCM that it has started prior to being able to accept client connections. When a service depends on the mongod service, it seems reasonable for that service to be able to connect to mongod when it has reported that it has started. As the size of the database increases, this is almost never the case. It does not seem reasonable for the mongodb 'client' service to make connection attempts in a loop, as this mechanism would also require a maximum wait time (in the case where mongodb doesn't ever reach the state of accepting connections.
This issue was discussed with Tad Marshall at