[Roll] numeric ranges in routing metrics
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Roll] numeric ranges in routing metrics




I mentioned it during the roll meeting Tuesday, but I think it's probably worth documenting the thought in a little more technical detail.  The routing metrics right now include 32-bit floating point numbers for latency and throughput.  Since these numbers are much more likely to be added or compared rather than multiplied, fixed point rather than floating point is likely to be a better choice of representation.  For example, for normalized positive 32-bit IEEE 754 numbers, the maximum number is about 3.4e38 and the minimum is about 1.2e-38.  For reference, the age of universe in milliseconds (taking the high end of NASA's most recent estimate) is only 4.4e20 and the time it takes to travel the distance across an electron (Lorentz diameter for you physics heads) is about 1.9e-20 ms.  A negative latency would seem to imply that packets appear before they're sent which is probably not practical.  If instead, latency were a 32-bit unsigned integer in units of milliseconds, we'd still be able to go from 0 or 1 milliseconds up to almost 1200 hours if my math is right.  That should be plenty for any practical network.  I haven't done so but I suspect that we could do the same thing with throughput.

Ed Beroset

Note: Messages sent to this list are the opinions of the senders and do not imply endorsement by the IETF.