APRS-IS is basically an ad-hoc network with a central server core which all
packets pass through. APRS-IS was started in the 1990s by Steve Dimse as a
way to show APRS activity occuring on Amateur Radio frequencies to people using
browsers on the web. To make this as painless as possible to APRS software
authors at the time, it was decided to use simple, low-level TCP socket
connections and pass CR/LF delimited lines using the TNC2 monitor format
(SENDER>DEST,PATH:rest of packet). Because of its prevelance at the time,
the AEA format was also supported (SENDER>PATH>DEST:rest of packet). The
second format has caused some software issues and is not recommended.
javAPRSSrvr (the primary server software on APRS-IS) converts all AEA format
lines to TNC2 format to simplify decoding by APRS software authors.
Since its inception, APRS-IS has grown to over 500 servers and over 20,000
users. Clients range from handheld PDAs to Java applets to web sites
backed by extensive databases to full-function Amateur Radio applications.
To support this growth and to keep APRS-IS a reliable transport, a number of
enhancements have been implemented over the years. There are now 3 to 4
core servers splitting the connection load across the USA. The q algorithm
has been fully implemented to reduce loops and improve diagnostic capabilities.
Server-side filtering has dramatically reduced the bandwidth and CPU resource
requirements of the client. All of these are discussed in the associated