How does the internet really look like ?

Discussion in 'Cisco' started by Skybuck Flying, Oct 5, 2005.

  1. Hi,

    Suppose I had to construct my own global network then to get a basic
    routing/addressing system going I would use the following layout:


    Description in case the picture is unavailable:

    Step 1: the super "backbone":

    Draw a big circle of diameter 100 in the center. Color it red.

    Step 2: smaller "backbones".

    Draw smaller circles of diameter 50 around/outside the bigger circle.
    Connect each smaller circle with a line to the big circle.
    Give each smaller circle a unique color like red, blue, green, yellow etc.

    Step 3: local network "backbones"

    Draw smaller circles of diameter 20 around/outside the smaller circles.
    Connect each 20 diameter circle with it's 50 diameter circle by a line.
    Give each smaller circle a unique color like red, blue, green, yellow etc.

    Step 4: the computers attached to each local network.

    Draw tiny circles of diameter 8 or so around/outside the smaller circles of
    20 diameter. Connect each tiny circle with the 20 diameter circle by a line.
    Give each smaller circle a unique color like red, blue, green, yellow etc.

    Step 5: the super backbone connected to the global backbone.

    Draw a huge half circle in the left upper corner which represents the global
    backbone and connect
    the super back bone to it.

    The picture should look something like this:

    OOOOOO (global backbone)
    red A / blue
    O O O yellow | O Oyellow
    \ | / | | /
    OO | OO red OOgreen
    OO green | OO OO---O blue
    \ | \ / \
    \ purple OOOO OOO O red
    OOO OOOO /-- OOO blue
    OOO-------OOOO -- OOO
    OOO OOOOred (super backbone)
    / \
    / \ green O
    OO OOO /
    OO---O etc OOO --- OO -- O
    \ OOO OO --O
    O / \
    OO O
    | \
    O O yellow

    A's address is:
    B's address is:

    For A to reach B the following happens:

    A knows the address of B which is given:

    A could also know it's own address but is not really required.
    (It could be filled in while the packet travels up to the backbone, called
    "on the fly")

    A could simply broadcast it's packet on green. (Alternatively A could send
    it directly to the green gateway hardware address if the green gateway
    hardware address is known by A.)

    The gateway at green picks up the packet looks at the destination address
    and determines it's not for it's own local network so it needs to forward
    the packet up to it's parent network which is purple.

    The same thing then happens at purple so the packet ends up at red.

    The destination address is RED.x.x.x so the packet does not need to go up
    the global backbone.

    The next addres is x.GREEN.x.x so the super backbone forwards it to the
    green network.

    The green network sees the next address is blue:
    x.x.BLUE.x so it forwards it to blue.

    The blue network sees the final address is yellow:

    So it forwards it to computer B

    Since all packets carry a source address as well, B can now also reach A via
    the same mechanics etc.

    A and B can thus communicate with each other.

    This idea for a global network is very simple. The internet seems much more
    complex than this.

    It only has 4 bytes in it's ip address. So the maximum number of hops would
    be about 8 or so ?
    ( 4 for the source and 4 for the destination ) or maybe 16 if gateways are
    two computers connected to each other etc.

    However looking at an arbitrary tracert this does not seem to be the case:

    Tracing route to []
    over a maximum of 30 hops:

    1 5 ms 4 ms 6 ms hidden
    2 8 ms 4 ms 6 ms hidden
    3 10 ms 10 ms 9 ms hidden
    4 18 ms 12 ms 11 ms
    5 11 ms 11 ms 11 ms
    6 11 ms 14 ms 11 ms
    7 18 ms 19 ms 17 ms

    8 23 ms 18 ms 18 ms

    9 86 ms 87 ms 87 ms

    10 88 ms 92 ms 89 ms

    11 89 ms 89 ms 89 ms

    12 129 ms 137 ms 130 ms
    13 156 ms 156 ms 157 ms

    14 157 ms 159 ms 157 ms

    15 157 ms 156 ms 156 ms
    16 153 ms 153 ms 153 ms
    17 155 ms 153 ms 152 ms

    18 156 ms 153 ms 155 ms
    19 156 ms 158 ms 154 ms
    20 157 ms 157 ms 159 ms
    21 155 ms 157 ms 154 ms

    22 158 ms 157 ms 156 ms []
    23 155 ms 154 ms 156 ms []
    24 158 ms 155 ms 156 ms []
    25 159 ms 157 ms 157 ms

    Well looking at the names I see about 4 names like:

    Looking at the the ip's I see many different ip's, how does one explain that

    I could imagine some kind of linked network like so:

    O backbone

    Packets can only go up or down etc... so that shouldn't be too much of

    Is it also possible to connect multiple network with each other and have
    them connected to a backbone as well like so ?:

    / \
    / \
    OO OO -- O
    OO -----?----OO -- O
    / \
    O O

    Such a "subnetwork interconnection" could explain why some say packets can
    take a different route ? does this explain it ?

    I would appreciate seeing some (network) diagrams how the internet really
    works (by using simple circles and lines etc)

    Skybuck Flying, Oct 5, 2005
    1. Advertisements

  2. Yes, and that is not uncommon.

    You've also over-emphasized the "backbone". While there are some
    major backbone devices (usually associated with *major* long distance
    aggregation), for the purposes you were discussing, there are a number
    of backbones. Each major provider runs their own.

    Packets between two different major providers cross on "multihomed"
    routers that are run in cooperation with both providers. Often there
    will be several such crossover points ("peering"). For any one packet
    in transit, the choice of cross-over point depends upon the policies
    (and charging structures!) agreed upon between the providers, and
    upon which links are reachable and not overloaded at the time.

    As internal rates for any one provider to transport traffic are usually
    less than the other provider would charge, -typically- any one packet
    would stay within the original provider until it gets to the crossover
    point that is electronically "nearest" to the destination. There will
    always be exceptions, though, due to congestion -- or because sometimes
    a different provider's rates to transport traffic might be lower than
    one's own costs [think of satellite or radio links -- they are more
    expensive than fibre, so an ISP that has an extensive satellite network
    might find it less expensive to let someone else transport packets
    staying within the same country.]
    Walter Roberson, Oct 5, 2005
    1. Advertisements

  3. Skybuck Flying

    D-O Guest

    Wow, painful read. Have a look at
    and The table is missing two
    routes which you'll need to fill in yourself.

    Forget the colors. Draw a diagram with routers and write out the routing
    tables by hand and use real IP addresses. The internet is a partial mesh of
    routers and switches. The routers direct traffic between unique logical IP
    networks. Routers utilize the BGP4 routing protocol, among others, to share
    routing information. If a router knows multiple routes to a destination, the
    router will utilize a routing algorithm to deicide which route the traffic
    will take. A backbone is just the preferred path across a network.

    Please ask further questions concerning anything you don't understand. Let's
    just take 'em a few at a time, though.
    D-O, Oct 6, 2005
  4. Skybuck Flying

    Dom Guest

    It's odd how you're trying to reconcile the maximum number of hops. Check
    this out. I can subnet a class-c in to 64 networks and connect them with
    routers. That means 64 hops from end to end. I can subnet class-b and
    class-a networks in the same fashion to create networks with 16384 and
    4194304 hops from end to end, respectively.

    Now, wrap your mind around this. I can take my string of 64 networks and
    link the networks at the far ends to form a ring. This greatly reduces the
    number of hops between destinations because traffic can travel either way
    around the ring. All things being equal, our routing algorithm will route
    traffic over the shortest path. Let's also consider that our 64 networks are
    connected with many different types of links. A routing algorithm which
    accounts for link speed and state can help us route traffic over a quicker,
    more reliable path.
    Dom, Oct 6, 2005
  5. I found this picture describing three different layouts:

    My skynet looks mostly like the "decentralized" network.

    I think internet probably looks like a "distributed" network.

    So internet is much complexer and needs routers/special algorithms to move
    packets from A to B across the network.

    Though the internet is probably not completely distributed since there is
    speak of different classess/levels/layers etc.

    So maybe the internet is a combination of the decentralized network and the
    distributed networks.

    For example smaller distributed networks more or less connected in a
    decentralized way.


    Skybuck Flying, Oct 6, 2005
  6. Ok, this is very simple example.

    It's easy to see that router A has to be informed about router B and vice

    Now suppose we extend this example so that we have a chain of 1000 routers.

    A few questions:

    1. Is it possible to have a chain of 1000 routers like this ? probably yes.

    2. Would this mean router 1 would have to have 999 routes defined in it's
    routing table to all the other routers/networks.

    What if there are 1 million of these routers etc.

    So your small example has not really answered my question.

    I want to know how the internet works on a bigger scale... because routers
    probably dont have enough memory to store all possible routes ???

    So there must be some sort of algorithm/mechanism that solves the routing

    For example...

    Suppose router 1 has only 500 memory slots. It can't store the other 499

    How would internet technology solve this problem ???

    Skybuck Flying, Oct 6, 2005
  7. I could simply connect computers to a ring and
    simply use a unique number for each computer.

    Each computer would simply put it's message/packet on the ring and it would
    go around the ring and finally reach it's destination.

    For example my unique number would be: 1.234.453.353.236.567.234.565.235.544

    Your number would be: 324.345.234.346.436.678.984.235.345.213

    These numbers would simply be encoded with Skybuck's universal code.

    So the point of the story is such a "network" would not require any routing
    at all.

    Try to get your head around that ;)

    What you described is a somewhat retarded network where each computer is
    connected with a router like so:

    C1 R1 C2 R2 C3 R3 C4 R4 C5 R5 C6 R6

    This explains your enormous hop count. The packets can only hope from
    computer to router to computer to router etc.

    If you are retarded enough to choose a random number/address for each router
    then there is no logical structure at all.

    This would mean each router would now need a gigantic routing table.

    You also described a ring so, suppose Rend is connected to Cbegin then each
    packet could be forward to the left or to the right. That would cut the hop
    count in half.

    Ofcourse such a network still requires the routers to learn about all the
    other routers which means traffic overhead.

    Finally each router would learn how far each other router is and thus each
    router can choose if the packet should go left or right depending on which
    is the shorter route.

    The problem with your "retarded" ;) network is that if one computer or
    router fails the network starts to malfunction... the ring would be broken
    and some routers might not be able to reach the others.

    My "ring" network doesn't have routers so no point of failure there. Also if
    computers fail the rest of the network can simply continue communicating.

    Only when the ring is truely physically broken the network falls apart ;)

    So while your network seems retarded lol. It does continue to function a
    little bit even when the ring is broken in certain places ;) (though your
    network would also be a lot more expensive router/memory/overhead wise ;))

    The problem with both networks is ofcourse that this is nearly impossible to
    create physically.

    It's nearly impossible to construct a single ring which goes through every
    house hold and every building and every computer on the face of the planet

    Nor would this be desirable because of the reasons above ;)

    So it makes more sense to use the highway/roads approach.

    Little roads connecting to bigger roads.

    So how do we find people in real life. By special addressing.

    For example.


    So the world wide postal system has a certain maximum number of hops.

    That's how my skynet works as well, it would have a certain maximum number
    of hops.

    The whole network construction of skynet could be dynamic. Levels/computers
    could simply retrieve their address dynamically. If the network is expanded
    or changed all computers on the network could be notified of this changed
    and relinked etc (this information would need to be stored for some time to
    allow offline computers to come online and be notified etc) Skynet could
    also scale indefinetly.

    Skynet would allow the addressing scheme to scale indefinetly by using a
    null terminator, just like a null terminated string. For each "level" 0 is
    invalid and reversed to indicate a termination.

    For example:


    The zero indicates that the addressing has come to an end.

    Each level could be encoded by simply using a byte. This would mean that
    each level has 255 connection points. However connection point 1 could be
    reversed to indicate the gateway. So that leaves 254 connections per level.
    Each ring would thus have 254 connection points as soon as the network has
    to become larger than 254 connection points/computers a higher level ring is
    constructed and two lower level rings are attached to the higher level ring.
    Thus creating 254 connections points on level 1 which can be connected to
    254 level zero rings. Creating a total ammount of computer: 254 * 254 =

    As soon as the network needs to become larger than 64516 computers than
    another higher level ring is constructed level 2. Level 2 can thus have 254
    level 1 rings and these level 1 rings can have 254 level zero rings, so
    that's 254*254*254 = 16387064

    There is no limit to the ammount of levels so the network can scale

    For example:


    11 Levels.

    254*254*254*254*254*254*254*254*254*254*254 = 283903589048977364007778304

    The addressing scheme is efficient since it uses simply binary/byte coding.

    However this limits each ring to 254 connections which might be undesirable.

    Since more connections than 254 would need a gateway, which could mean a
    bottleneck at the gateway and extra investment in gateway hardware and
    devices etc.

    It might be desirable to construct a huge fiber optic ring and connect as
    many computers as possible to it without any gateway/router bullshit.

    So to make the number of connection per level scale indefinetly "Skybuck's
    universal code" could be used to encode the numbers so that they can be any

    Here is a comparision:

    Binary/byte encoded address: (each level value must be between 2 and 254)

    Skybuck decoded address: (each level can have a value as big as necessary )


    (Search google for "Skybuck's Universal code" to find out how the encoding
    works ;) )

    Skybuck Flying, Oct 6, 2005
  8. Skybuck Flying

    anybody43 Guest


    You have identified a number of key problems that have
    been successfully overcome in order to implement The
    Internet as we see it today.

    To get started you could read Computer Networks (Andrew
    Tannenbaum). Get the latest edition.

    The easiest routing protocol to understand is probably RIP
    version 1. The Internet uses BGP4.
    Even RIP though has many potential subtlties of behaviour
    however it is effectively obsolete so I wouldn't worry about
    them too much.

    The specification of the Internet Protocols (most of them anyway)
    is stated in RFC's which are (of course) published
    on the Internet.
    "Routing Information Protocol"

    Do a traceroute e.g. use if you have
    no access yourself.

    How many hops do you see?

    30 or less is about the absolute Max.
    over the internet.

    IP is limited to 255 hops by design [IP header time to Live field].

    There are backbone links that take you across the whole USA
    in one hop. It is only one hop across the Atlantic:)

    Most routers in the world do not have the wold routing table
    but instead use "default routing" possibly with exceptions.

    The area of the Internet that has the full table is called
    something like the default-free Internet routing table.
    "Geoff Huston January 2001
    The Internet continues along a path of seeming inexorable growth,..."

    google for [internet default size routing table]

    Good luck with your studies.
    anybody43, Oct 6, 2005
  9. Skybuck Flying

    Sam Wilson Guest

    In theory, yes of course - why not? In practice no IP packet can cross
    more than 255 routers because of the TTL field (look it up - Google is
    your friend).
    Not necessarily. Default routes ("everything else is thataway") or
    aggregation ("everything that begins 123... is thataway") help cut down
    the size of the tables required.
    See above, but actually there is a "default free zone" in the "middle"
    of the Internet that does exactly that - some router somewhere must
    know where everything is or else packets addressed to nonexistent
    destinations would loop forever (or until their TTL field expired).
    By putting more memory in; by designing more efficient storage and
    search algorithms; by inventing, or at least generalising, aggregation
    (see Internet history of the early 1990s concerning aggregation and
    CIDR - Classless InterDomain Routing).

    IPv6 is another barrel of laughs completely.

    Sam Wilson, Oct 6, 2005
  10. Skybuck Flying

    Dom Guest

    Route aggregation. Confining an address range to a certain geographical area
    reduces the size of routing tables. The best example of route aggregation is
    your computer at the edge of the internet. It has a single route to reach
    the entire internet. All possible destinations are aggregated into a single
    route. CIDR also helps reduce the size of routing tables by allowing the
    definition of classless networks. Some routers have more routes than others,
    but no router knows about all other routers. No router needs to know that
    much. A router only needs to know about routers to which it is directly
    connected and the destinations that those routers can reach.

    Let's consider the address space.

    a.. Class A addresses begin with 0xxx, or 1 to 126 decimal.
    a.. Class B addresses begin with 10xx, or 128 to 191 decimal.
    a.. Class C addresses begin with 110x, or 192 to 223 decimal.
    a.. Class D addresses begin with 1110, or 224 to 239 decimal.
    a.. Class E addresses begin with 1111, or 240 to 254 decimal.

    Theoretically, we could have five routers connected by a switch at the
    middle of the internet, each handling a different address class. These five
    routers, together, can reach the entire internet and each one would only
    require five routes to do it.
    Dom, Oct 6, 2005
  11. Skybuck Flying

    Dom Guest

    Whoa, dude, chill out. I said nothing of computers and my subnetting only
    provided enough address space for two routers in each subnet. The packets
    hop from router to router. Maybe, when I said ring, you thought token ring.
    I did not mean a token ring. The network I described is the internet,
    retarded as it may be. The precise topology is a partial mesh. Please look
    it up.
    Dom, Oct 6, 2005
  12. Skybuck Flying

    Dom Guest

    It's probably more accurate to say that the internet is a hierarchical
    partial mesh.
    Dom, Oct 6, 2005
  13. Skybuck Flying

    Dom Guest

    Dom, Oct 6, 2005
  14. Hi!

    But of course they do:

    router1#sh ip bgp summary
    BGP router identifier, local AS number 16188
    BGP table version is 113354853, main routing table version 113354853
    171332 network entries using 17304532 bytes of memory

    There are currently 171332 different networks on the Internet
    that I can reach and my router knows all of them. These are the
    "circles" in your concept.

    It's only 171332 because my router doesn't need to know
    about every single host. All some-thousand customers of,
    say, AOL, might be only one route to store. All the traffic
    for them will end up at "AOL's central gateway to the Internet"
    and this router will distribute the packets further.
    (This is very simplified!)

    E.g. I advertise (that's how it's called) 3 prefixes ("circles") to
    the Internet - all other default free routers know about them.
    These 3 prefixes contain roughly 200 networks of our backbone and
    our customers (smaller circles). The outside world doesn't need
    to know about them since they all are part of the 3 networks
    I advertise.
    (read: I == my routers on behalf of my instructions ;-)

    Typical major ISP's networks aggregate even more (magnitudes more!)
    internal routes into a single external advertisement. We are
    only a small company.

    If you really want to get an in-depth explanation you should
    first look up some information for "CIDR", "Routing", "Netmask",
    "Aggregation" via Google to get the concepts of IP addressing and
    then look for this book:

    Patrick M. Hausen, Oct 6, 2005
  15. a couple recent news items regarding glitches w/peering:

    Internet Partitioning - Cogent vs Level 3?
    Level 3 depeers Cogent
    Level 3 Peering Changes Causing Headaches; Roadrunner, Cogent users
    unable to hit major sites

    when we were doing original payment gateway

    we were looking at some of the availability issues ... with things
    like multi-homing, replicated components, multiple paths into
    different parts of top level infrastructure, etc. ... in part, having
    previously done ha/cmp project

    right in the middle of that, there was decision to migrate to
    hierarchical routing policy ... because the purely dynamic routing
    tables weren't scaling as the internet size grew ... aka some of the
    stuff that could have been done for high availability with dynamic
    routing advertisement ... went away. at that point ... the primary
    remaining strategy was multiple A-record support. since we had some
    amount of sign-off ... we could mandate it for the webservers to the
    payment gateway. however, we for webserves and e-commerce, it was also
    important for browsers to also support multiple A-record support.

    A trivial example was an early major e-commerce website was sports
    related ... which did some major advertisement and offerings during
    Sunday afternoon football ... and hoping to get traffic during
    half-time. Their ISP at the time was still into taking down major city
    centers on Sunday afternoon for various maintenance tasks. They needed
    alternate paths to major internet backbone ... and browsers capable of
    tracking alternate paths. It didn't do much good to have redundant
    links into carefully selected points from various ISPs ... if the
    basic infrastructure couldn't deal take advantage of the redundant

    a major feature of the IMP-based arpanet in the 70s was dynamic route
    finding. The IMP operation formed a homogeneous infrastructure
    .... with the IMPs interconnected by 56kbit links. There were folklore
    stories in the late 70s that the IMP dynamic routing infrastructure
    overhead was sometimes consuming 40kbit-50kbit of the available 56kbit
    with dynamic routing information chatter (another case where dynamic
    routing was having difficulty scaling).

    the switch-over from homegeneous networking to internetworking and
    gateways was on 1/1/83. This is part of my frequent postings that
    the internal network was larger than the internet/arpanet from just
    about the beginning until mid-85 ... in part because the major nodes
    in the internal network had effectively a form of gateway support from
    the beginning

    the transition to modern internet as an operatinal characteristic
    .... as opposed to technology transition (aka 1/1/83) was with the
    NSFNET backbone NSFNET Program Announcement NSFNET Award Announcement
    Anne & Lynn Wheeler, Oct 6, 2005
  16. Thanks for this link.

    It seems what I described in skynet5.png is already supported by the
    internet ?

    It's called:

    Hierarchical Routing Aggregation To Minimize Routing Table Entries

    Ofcourse this would still require routing tables etc so it's a little bit
    different but it comes close to skynet ;)

    Skybuck Flying, Oct 6, 2005
  17. No lol, you described a network with 4194304 hops.

    Such a network is not even possible with internet since it only allows for
    255 or 256 or so hops.

    Besides from the internet limitation I think I understood your largest
    theoretical network quite well...

    As you say from router to router... (how many routers do you plan on using ?
    4194304 ? which is not necessary when using some kind of bus or ring, see
    ethernet, token ring, atm or so.

    But ok, you choosed to go from router to router that's your choice.

    Your described network would probably look like this a picture helps:

    router - router - router - router
    | | | |
    comp comp comp comp

    So to me it seems you would take an ethernet network and simply pull out all
    the coax cables or utp cables and simply use utp cross over cable to go from
    computer to computer or in this case from
    computer to router, to router to computer, etc.

    Skybuck Flying, Oct 6, 2005
  18. Cool so the internet does have huge tables gjez.

    Your post made me understand better how the internet works.

    Thanks ;)

    Skybuck Flying, Oct 6, 2005
  19. Skybuck Flying

    Dom Guest

    Yes, my theoretical network would suffer from the IP limitation of 8-bit
    ttl. That doesn't mean the network couldn't exist, It just means that no
    node could reach another more than 255 hops away. Now, if the routers
    ignored the ttl... But, that's not really relevant. Four-million routers,
    indeed. Let's get back to reality.

    Router-to-router is not my choice, it is the way the internet works.
    Remember, I said the internet is made up of routers and switches.


    Computers can plug into a switch anywhere along the way. Remember, routers
    and computers are not connected to each other, they are connected to
    Dom, Oct 6, 2005
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.