I know the word "connection" isn't really appropriate when talking about UDP, but...
How does a server (the one with the known IP) get its UDP packets through the Internet to a client that is behind NAT?
For example: say a client connects and authenticates to the server using some messaging over TCP. At this point the server is ready to start streaming data to the client over UDP, but how does the server know where to address the UDP packets so that they would find their way through any NAT routers to the client?
If the client fist sends an "I'm ready for the streaming please" message over UDP, would the NAT routers keep the port open so that the server can respond with its stream of UDP data?
Or am I waay off track here?