meshtastic / protobufs

Protobuf definitions for the Meshtastic project
https://meshtastic.org
GNU General Public License v3.0
83 stars 118 forks source link

Add either total hops or missing hops to `RouteDiscovery` #501

Closed ianmcorvidae closed 3 months ago

ianmcorvidae commented 4 months ago

Related to meshtastic/firmware#3942

Since a traceroute across nodes with 2.3+ firmware will have the hopStart field it is possible to detect any missing hops due to non-decoding repeaters or nodes without the appropriate channel (if hopStart - hopLimit at the target of the traceroute is higher than the length of the list in RouteDiscovery). We could either add the total hops observed (hopStart - hopLimit directly), or the missing hops detected by the final node (hopStart - hopLimit - len(RouteDiscovery list)). The former option would be present on more packets but allow distinguishing when the value has actually been calculated vs. being omitted due to older firmwares, while the latter would most often be 0 and create smaller packets (though probably not significantly0.

ianmcorvidae commented 3 months ago

I'm going to close this for now; the discussion on the firmware issue has come to an idea that wouldn't require protobuf changes and I think that's cleaner, probably.