This is from memory and a long time ago so is probably wrong, but I think subgame pushes the server info to the dirserv, then to save bandwidth periodically pings the dirserv instead of resending the info again. So if info is A and ping is B, with spacings of a few minutes it would look like: A B B B A B B B The pings are a two-way thing, but the info is just fire and forget. ASSS just sends A's. Servers (dirserv) listen, clients (subgame) initiate connections. The only time a dirserv would initiate a connection is if it implemented the ability to clone another dirserv, in which case that section of the program is a client.