Zend certified PHP/Magento developer

How routing works on Internet

When computer A (e.g. in Paris) wants to send e.g HTTP request to server B (e.g. in Berlin), then as I understand, (after all upper layers) the computer A has to send Ethernet frame to default gateway that gives access to Internet (so router). But how the router (e.g. this simple router in home bought for 30$) can know all appropriate hops that will lead the HTTP request to appropriate machine? I know about static and dynamic routing, but we still need some “initial routings” (as far I understand). So how is called this magic that creates that “initial routing data”? And if whole process of sending packets between different machines from different networks depends only on routing, then why we use ISP? And how the router can know all appropriate routes to next hop (and how know the hop will be appropriate), isn’t it too much data?