Anyway,
back to packet switching. When you send a file over the Internet,
you dont actually send the whole thing in one big chunk.
It's broken up into small packets -- like postcards if you want
to continue the post office simile -- and each one is transmitted
one after the other. The beauty of this is that the routers can
handle many, many of these little packets, without ever having
to know what's in them (or indeed, the order they are transmitted
in). So your packets get mixed in with someone else's, and the
data stream gets maximum efficiency. All your machine has to do
is create the little packets, number them so they get re-assembled
on the other end in the correct order, and send them out to the
router. Of course they need an address too.
That's
where IPs come in. An IP is a unique address for your machine
on the Internet. Its a 4-digit number, all of which are
between 0 and 255. For instance 204.57.198.32. All those www.whatever.com
names are actually converted into IP addresses when packets are
exchanged with another machine on the net. Sometimes these are
specific and constant on one machine, more often than not they
are dynamically allocated by the host system. Every time you log
onto you service provider, they send you an IP address they have
free from a range that's been allocated to them. For instance,
your ISP may have the range 204.198.32. 0 to 255, which gives
them 256 possible IP addresses. 256 people can all be using the
system at once, but no more than that. When you log in, the system
looks to see what IP's are free, and sends you one. That way more
than 256 people can be on the books for this Host, but only 256
can use it at once.
The alternative
to this would be the phone system approach, which would mean creating
dedicated routers that would reserve an entire line for you to
send data to and from the other computer, but that would not get
used most of the time, especially if you are doing stuff like
typing in real time. You may think you are a fast typist, but
in the time between a message going to and from your machine to
another, the network could have transmitted War and Peace several
times. A good simile that I heard used is, like reserving
the entire Interstate road system to drive a car from Washington
DC to LA. You would never dream of doing that, instead you
share it with other car drivers. Just like on the Internet. Maybe
that dumb 'super highway' label thing has some merit after allJ
I'm sure
you can see how sharing lines with others and breaking messages
into small packets is the most efficient use of network time and
data streams. The same system is in use today as was originally
designed for the ARPANET way back when. Why? ´Cos it works
real well. :)
Where
do ISPs come into this? Lets think of it this way. The routers
are machines that sit attached to mainframes and stuff that we
are treating as big post offices. An ISP (Internet Service Provider)
is one step removed from that - like the postman himself. They
are attached to a machine that often has a router (not always),
but they also have a ton of modems attached to them. Your little
PC at home uses its modem to call up the modem attached to the
ISP's machine, which then accepts your packets and forwards them
in bulk and mixed in with everyone else's, to the Internet with
a capital I.
Cable
modems, ISDN and DSL are pretty much the same thing, except that
the modem-to-modem part is removed, and faster bandwidth communication
devices are used instead. In fact DSL is basically just a faster
modem with a better phone line anyway. :)