Seite
Menü
News
Sie sind hier:   Startseite > Software > IP-Gateways > APRSD

APRSD

Internet Gateway für Automatic Position Reporting System

aprsd ist ein Open Source Software Internet zu RF gateway (IGate) für APRS Automatic Packet Reporting System.  aprsD ermöglicht es Hams im Internet Nachrichten an Hams auf RF zu senden, besonders wenn eine Linkanbindung zum weltweiten APRServe Netzwerk (www.aprs.net) besteht.

Plattform:

Linux, Unix

Download:

http://sourceforge.net/projects/aprsd/

http://rpmseek.com/rpm-pl/aprsd.html?hl=de&cx=1021:A:0

Das 7-Bit-Problem beim Einsatz von aprsD:

Im Hinblick auf die Portierung einer geeigneten Linux-Sofware auf einen WLAN-Router, wurde die  aprsD-Software in Karlsruhe näher betrachtet. Bei  der Übertragung von zusätzlichen telemetrischen Daten im Statusfeld einer Bake, waren beim Routing  teilweise Probleme zu verzeichnen. In älteren Distributionen von aprsD wird,  bei Verwendung des Linu x AX.25-Kernel, eine softwareseitige "Filterung" der Nutzdaten vorgenommen. Dies kann zu korumpierten Baken im Internet führen, was eine Auswertung erschwert.

Das Problem entsteht deshalb, weil gemäß der ursprünglichen APRS-Protokoll-Spezifikation (APRS-Spec. v. 1.0.1) auf den TCP/IP Backbones grundsätzlich nur Klartextdaten (7 Bit, ASCII 0-127) laufen sollten. Insofern filtern offensichtlich ältere Versionen von aprsD "non-printable ASCII characters" (vgl. APRS-Spec. 1.0.1, S. 56) aus dem String.  Soweit nun im Header solche ASCII-Zeichen (>127) vorhanden sind, kann es zu einer Korumption des Header-Teiles durch die Filterung führen. 

Daneben ist bei älteren aprsD Versionen zu beachten, dass ein "nicht druckbares Zeichen" (ASCII > 127) am Anfang des Status-Teiles, durch ein Leerzeichen (ASCII 32) ersetzt wird.  Das Ende einer vollständigen Bake wird durch CR oder LF und einem darauf folgenden ASCII-Zeichen  > 32 terminiert. Da das in diesem Fall vom aprsD-Filter eingefügte "Sonderzeichen" aber  ASCII 32 entspricht (also nicht > 32 ist), wird die nächstfolgende Bake als "Statustext" eingefügt. In der Folge ist dann der folgende String zu beaobachten:

"DB0SKP>APRS,DB0TFM,WIDE2*,qAO,db0hp:@110208z4855.83N/ 00810.87E_225/005g000t044r000p000P000h88b10370 DB0VOD>APNU18,DB0MMO*,WIDE3-2:!4944.17N/00958.48E# APRS DIGI Wuerzburg"

Lösung:

Die Lösung des Problemes kann von zwei Seiten her erfolgen:

A) Die Softwareversion aprsD 2.1.5 soll die Konvertierung von ASCII-Zeichen > 127 in ein "Leerzeichen"nicht mehr vornehmen. Die Zeichen werden also transparent weitergeleitet. Insofern ist ggf. ein Upgrade der IGate-Software angeraten.

B) Soweit der Nutzer auf ein IGate mit älteren aprsD Versionen angewiesen ist, sollte (wie sich auch aus der aprsD-Spezifikation ergibt) die Empfehlung der APRS-Protokoll-Spezifikation (v. 1.0.1) eingehalten werden:

  • Auschließliche Verwendung von 7-Bit  ASCII-Zeichen (< 127) im gesamten Bakentext,
  • keine Leerzeichen am Beginn des Statusteiles,
  • maximal 67 Zeichen im Statustext und
  • CR oder LF ausschließlich zum Abschluss der Bake verwenden.

Vgl. zum Thema auch:

 Diskussion 1

 Diskussion 2

 



10.06.2007 (Marcus, DL1MH)

02.07.2007 Ergänzung "7-Bit-Problem", DL1LJ


Seite
Menü
News
Seite
Menü
News

Powered by CMSimple | Template by CMSimple | Login