With an internet covering many different phyisical networks, there must be some mechanism to allow machines on completely distinct and incompatiable networks to communicate. This problem is solved by the use of a computer connected to both networks which forward appropriately addressed packets from one network to the other, translating them from one physical network technologies format to the others.
Machines which perform this fowarding on a tcp/ip network are called IP-gateways, or routers.
A simple extension of this principle permits machines to communicate with other machines seperated by dozens of routers.
(Machine A) <-> (Network 1) <-> (Router a) <-> (Network 2) <-> (Router b)
^
|
v
(Machine B) <-> (Network 3)
So Machine A can communicate with Machine B, through Router a, across Network 2, through Router b, and across Network 3.
This may seem very simple, and common sense, however it is important to understand that tcp/ip allows Machine A to do this without knowing anything about Network 2, Router b, or Network 3. This is why an internet is a non-trivial concept.