1

When viewing the result of a ping request, I always see the TTL value (Time To Live) of the package. As most of you know, this value is used for avoiding endless looping in the internet routing hierarchy, but I'm wondering what's the minimal value which is to be used?

Obviously, this equals twice the depth of the internet: in worst case a package must go to the backbone and back, but does anybody know what is the worldwide maximum depth of the internet routing hierarchy?

Let me explain the root of my question:
About fifteen years ago, I followed a course on IP basics (about how the internet is set up using routers), and there I've learnt about routing tables: those tables contain the information, needed to know how to connect to the next node in the routing IP network, so if a request is sent to router who doesn't know how to handle the request, he sends it to the next router, not just to the one next to him, but one with deeper understanding of the network.
As such, routers are put in layers. The first layer is the edge of the internet (connected to the internet gateways), hence those routers typically are called "edge routers". The deepest ones are in a layer, called the backbone, and those routers are called "backbone routers". It's the simple definition of a backbone router that his routing table contains the routing information of every engine, connected to the internet.
When I followed that course, the internet was set up in seven such layers, so in theory a TTL value of fifteen is enough to cover the entire internet (this is obviously not taking into the account the fact that a router is not responding or any other problem case).
Now we are fifteen years later, obviously the structure of the internet still is the same, but what about the number of layers, and is still the case that there exist routers who are aware of every engine being connected to the internet (as we now have an "internet of things", I imagine the number of items, being connected to the internet being huge, are there still machines who can handle all this information)?

  • 1
    Don't think that there is a single Internet backbone. The Internet is just a bunch of ISPs connecting to each other. Some of them provide backbone-like transports for others, but there is no single or official backbone. Also, you can send a packet completely around the world in about a dozen hops. – Ron Maupin Aug 2 '17 at 13:08
  • Maybe there is not a single backbone, but there surely exist backbone routers: the definition of a backbone router is a router which is aware of all devices, connected to the internet, because of which this router is able to rout to every device (this information is present in the routing tables). So my question comes down to: what is the maximum amount of routers you need to pass in order to reach such a backbone router? – Dominique Aug 2 '17 at 13:15
  • 1
    The Internet is a bunch of ASes (Autonomous Systems) exchanging information through BGP. Each ISP decides to which other ISPs it wishes to connect. The connections between ISPs can be private, or may be through another ISP that provides backbone-like services to other ISPs. There are also some connection points where many ISPs decide to connect to each other, but the Internet is just a giant patchwork. The original intent was that traffic would automatically route around in the event of a nuclear attack. There is no backbone the way you envision it. – Ron Maupin Aug 2 '17 at 13:23
  • 1
    In addition to what @RonMaupin already pointed out, the internet changes continuously. Networks are added, disconnected, connections break and recover. So even if there would be such a thing as a maximum depth, it would change all the time. – Teun Vink Aug 2 '17 at 15:10
  • Did any answer help you? If so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you can provide and accept your own answer. – Ron Maupin Feb 19 '18 at 17:07
1

if you search TTL on google you can find that it does not show time, actually it shows the number of routers that your packet can pass... TTL = hop limit The value of TTL is 255 and reduced by every router on the route to its destination. If the TTL field reaches zero before the datagram arrives at its destination, then the datagram is discarded and an ICMP error datagram (11 - Time Exceeded) is sent back to the sender. [Wikipedia]

1

Actual time to live in milliseconds was a very early concept that wasn't practical, everyone resorted to decrementing by one as this was the minimum "time" used by a hop. As @Commander's pointed out, this is today's usage.

There's no known maximum depth of the Internet. The absolute maximum should be the maximum IPv4 hop count, but someone building a ridiculously long routing construct could easily reset the value at the doorstep. In practice, you'll have to search for routes longer than twenty-something hops.

1

What's the minimal value which is to be used?

The notion of "minimal value" makes no sense in this case.

You could probably set it quite safely to 30, which is the default TTL of the traceroute utility. However, setting the ping TTL to a value n too small will make the ping fail if the target host is located more than n hops from your machine. For this reason, the TTL for ping packets is always set to the maximum value (i.e. 255, since the TTL is a 8-bit field). Having a smaller value would carry no advantage and would risk the ping to fail.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.