>1. Will the application function properly on a network where the TCP/IP host to host latency averages 20-30ms? The answer to that is "probably yes". Since LAN latencies are typically in the order of ~1msec, a 20-30msec latency implies a MAN or fast WAN. As long as that network does not have any latencies long enough to cause your app to time out on a connectivity error it should be OK.
This I have tested a lot, connecting to a database on a server in a different country, and I never had a timeout. In some cases, long SQL trips may make the app look stalled, for as much as 3-4 seconds, but other than that it mostly looks just a tad sleepy most of the time.