"AFAIK, NAT software operates in the same way as a router. Routers, like switches, have routing tables that "know" to which port data packets are to be sent."
I'm asking, if the INTERNET only sees one IP address (it has to, otherwise that IP address in your network would conflict with something else, and the data would be sent to another place on the internet :Q), THEN how does the router, know what IP (in the network) to send the data to? could it be based on MAC addresses as well? or is the extra data stored somewhere else in the packet, that only routers, or NAT software can decode?
"Hubs, on the other hand, will transmit data to all the ports (which is why they suck in high traffic situations...it's similar to trying to read a message in a high-traffic chat room). Unlike switches, routers forward data depending on the network address"
yeah I know that stuff, it's just that, the internet CANNOT normally see the devices inside the network (unless you have alot of IP addresses that you paid for), if you have NAT software running, or a router running...