[Xastir] path question

Jason KG4WSV kg4wsv at gmail.com
Thu Aug 30 07:42:16 PDT 2018


On Thu, Aug 30, 2018 at 7:36 AM Tom Henderson <Tom at henderson4.us> wrote:
>
> Is there a good explanation of paths and how they work in APRS someone
> could refer me to? I see bits and pieces out there, but nothing
> comprehensive tat explains it from the ground up.

I don't know of one off the top of my head.


An AX.25 path is called "source routing" in general networking
terminology.  This is because the path that the packet will travel
through the network is determined by the source of the packet.  E.g.
If I know routers Bob and Sally get me to Jim, my destination address
would be Jim with a path of Bob,Sally.  In more typical routing
scenarios (e.g. Internet Protocol aka IP) the source node only knows
how to get to the first router in the path (almost always your
"default gateway"), nd that node knows how to get the next step toward
the destination.

IP includes a field called TTL (time to live) which is really a hop
count, not a time.  The source of the packet sets the maximum number
of routers to be traversed ("hops") and each router decrements the TTL
by 1.  If the TTL drops to 0, the packet is discarded.  AX.25 has no
such provision - it isn't needed, because the route length is fixed by
the path.

Another element of AX.25 addressing is the "SSID" secondary station
identifier.  An AX.25 address is a callsign plus a 4 bit number (0 to
15) so that a single ham can have 16 stations on the network at the
same time.  For a bit of added confusion, the SSID 0 is often left
off, so you'll see KG4WSV-3, but rarely KG4WSV-0; that'll be
abbreviated to KG4WSV. (On a side note "CALL-N" is just a convention
for representing what is actually a fixed width binary address; every
AX.25 address takes up exactly the same number of bits when it's going
over the air.)

In an AX.25 packet, the source address, destination address, and 0 to
8 path addresses are all standard AX.25 addresses.

In order to accomplish a broadcast address (which doesn't exist in
AX.25 AFAIK), the address "WIDE" was used. AX.25 repeaters were
configured to answer to an alias of WIDE (in addition to their
callsign).  This allows a packet to travel in multiple directions
(network-wise), and it allows a generic PATH to work everywhere, which
is critical to making the network useful in a mobile environment.

The WIDEn-N concept used by APRS is a mashup.  Instead of a fixed
address in the source path (e.g. "Bob" or Sally" or KG4WSV) it uses a
generic address of WIDEn-N, where "n" is the requested number of hops
(like the initial TTL in IP) and "N" is the number of hops remaining
(analogous to the current TTL in IP). note the "n" is purely
documentation; the functional part of the count is the "N", the part
of the address that's in those 4 bits representing the SSID.  In
addition to WIDE, there are special uses, e.g. STn-N where ST is the 2
letter state abbreviation. Effectively the n-N method uses the 4 bits
of the SSID part of the address as a hop count.

An added twist is that there's a hop count for each of these generic
path elements and Ax.25 allows for multiple addresses in the path, so
a path of WIDE2-2.WIDE2-2 would give me a total of 4 hops.

There are additional historical artifacts, like the hack to allow
ancient crude hardware incapable of the WIDEn-N SSID decrement trick
to participate in the network as an edge repeater, where a packet
could enter the network if the transmitting station couldn't be heard
by a more capable n-N repeater.  A path the looks like "WIDE,WIDE2-1"
is a result.

Many of the confusing aspects of APRS networking, IMO, are due to
hacks to support hardware that should be retired, e.g. the whole
"WIDE,WIDE2-1" thing.


Hope this helps a bit.

-Jason
kg4wsv


More information about the Xastir mailing list