The Internet

PGSS Computer Science Core Slides
     Number of host computers on the Internet

            ^
            |
100,000,000 |              16,000,000
            |                   #
 10,000,000 |                   #
            |        1,100,000  #
  1,000,000 |              #    #
            |              #    #
    100,000 |              #    #
            |      28,000  #    #
     10,000 |         #    #    #
            |         #    #    #
      1,000 |         #    #    #
            |   213   #    #    #
        100 |    #    #    #    #
            |    #    #    #    #
            +----+----+----+----+---->
                '81  '87  '92  '97
Carrie: How does my message get through the Internet?

Addresses

Machines have two names: a mnemonic English name

  truffle.bh.andrew.cmu.edu
and a 4-byte IP address
  128.2.124.147
The IP address is used to describe the destination of a message.

(Note: Four bytes only allows about 4x10^9 hosts. A proposal is in progress to switch to 16 bytes, allowing 3.4x10^38 hosts.)

Name Resolution

Obviously a host can't store translations for every other host!

Each domain has a domain name server to translate mnemonic names to hosts or subdomains.

                 ________.________
                /       /   \     \
         _____edu___   com  gov   uk
        /           \   |    |    |
  _____cmu_____     ou dec sandia ac
 /      |      \
cs   andrew    mcs
 |      |       |
sp     bh    www-pgss
 |      |
gs88  truffle

Conceptually, translation proceeds top-down. Actually, caching allows bottom-up translation.

The Network

The Internet is a network of networks.

/--------\      /------------\
| CMU CS | ---- | CMU Andrew |
\--------/      \------------/
      \           /
       \ /-----\ /
         | PSC |
         \-----/
            |
         /-----\      /----\
         | MCI | ---- | OU |
         \-----/      \----/

Each network can deliver messages within itself directly. Messages between networks must find their way - without a map!

Messages are divided into packets of about 1,024 bytes each.

Gateways

Networks have gateways, computers that route messages between networks.

/---------\               /------------\
| CMU CS  |               | CMU Andrew |
|         | --- gw.cs --- |
| gs88.sp |               | truffle.bh |
\---------/               \------------/
                                |
                            rtrbone.net
                                |
/------\                    /-------\
|      |                    |  PSC  |
| Pitt | -- pitt-ip-fddi -- |       |
|      |                    | mario |
\------/                    \-------/
                                |
                             nss5.psc
                                |
                            /-------\
                            |  MCI  |
                            \-------/

Packets travel gateway to gateway until reaching destination network.

Gateway Routing

Each gateway has a routing table telling where to send packets.

/----------\
| 10.*.*.* |                                        rest of
\----------/                                        Internet
     |                                                 |
     | 10.0.0.5                                  /----------\
     o                                           | 40.*.*.* |
     | 20.0.0.5                                  \----------/
     |                                                 |
/----------\ 20.0.0.6   30.0.0.6 /----------\ 30.0.0.7 | 40.0.0.7
| 20.*.*.* | -------- o -------- | 30.*.*.* | -------- o
\----------/                     \----------/
if destination
  network is          route to
-----------------------------------
   20.*.*.*      destination machine
   30.*.*.*      destination machine
   10.*.*.*           20.0.0.5
   40.*.*.*           30.0.0.7
   default            30.0.0.7

Table Update

Periodically gateways tell their neighbors about the best routes they know to destination networks.

When a gateway receives this information, it updates its routing table and forwards information about ayn changes to its neighbors.

Best Effort

Gateways provide best-effort delivery: they try to route packets but may occassionally drop some.

Reasons for dropping a packet include

Packet drops are frequent (50% not uncommon). The endpoints negotiate and resend until all packets make it.

What I'm Not Telling You

Current Network Research