Detecting if you're behind a NAT is useful since if you aren't you don't need to send minutely keepalives, but other than that I'm not sure I know what you mean about caching or how else it might be useful?