How does my iPod touch knows my location (if it doesn't have a GPS)?
GPS uses satellites to triangulate your position with great accuracy, however there are other ways to get a fix provided you can triangulate via other means.  Apple uses a database of WIFI networks with known locations to help ascertain your location in some instances (i.e. if you can see WIFI networks A B and E, then you must be approximately located at Z for example).  Also, using cellular information you can do a similar thing by noting which cells you are able to see and the relative signal strengths you are receiving from them.

EDIT: Also, it is possible with a lesser degree of accuracy to estimate your location just by using your IP address.  This can be tracked down to a certain extent and while likely not sufficient to be accurate by itself, when you combine this with all the other methods above you can start to get a picture with more accuracy.