iPhone 3G S Exchange Push from sleeping wifi?

Is anybody having issues with Exchange Push when you have wifi connected?  Here is my issue: When I have my data connected (Edge/3G).  When I come to work or I arrive at home I have wifi and so it connects that way, but only when the phone is not in sleep mode (up and running an app or actually using the phone).  When no app is running and I just let it fall asleep after 1 minute or 5 or whatever the time period, it seems to turn wifi off (maybe to save battery) but the exchange seems to still think it is connected and still uses push through the wifi connection. On the other hand, when I turn wifi completely off, and let the phone fall asleep again, instant push from exchange every time.
It turns out I was completely wrong.
If you read this article from apple support:
If you read solution number 2 on that page, this seems to be the problem:
2.  When roaming between home and office networks with Wi-Fi enabled, “push” may stop working if your company’s Exchange ActiveSync server has a different IP address for intranet and Internet clients. Make sure the DNS for your network returns a single, externally-routable address to the Exchange ActiveSync server for both intranet and Internet clients. This is required so the device can use the same IP address for communicating with the server when both types of connections are active. A workaround to avoid this issue is to disable Wi-Fi on the iPhone.
I guess the only reason I came to the sleeping wifi in the first place was because whenever I turn the phone back on after it had been asleep, the icon for wifi only shows up after  a brief 3 seconds like “Oh, I’m on now.”
I really wonder if the wifi turns off to save battery?  Does anyone have any insight on this for me?