Introduzione a UIDIGI
Copyright © 2000
Marco Savegnago IW3FQG
Cos'e' UIDIGI?
• UIDIGI e' un firmware da
utilizzare con un Terminal
Node Controller tipo
TNC2 o compatibile al
100% per realizzare un
digipeater packet radio
con funzioni avanzate di
soppressione e routing dei
frame APRS (*)
(*) APRS e’ un marchio registrato
da Bob Bruninga WB4APR).
A cosa serve UIDIGI ?
•
Chiunque opera in una rete packet radio APRS sa' che
il sistema funziona se ci sono dei digipeater che
indipendentemente dal loro nominativo siano in grado
di ripetere frame indirizzati a path generici (es
RELAY o WIDE). Per far questo e' sufficiente usare
un normale firmware ma senza una opportuna
gestione del traffico di ripetizione e soppressione dei
frame duplicati, in situazioni di sovraffollamento e
non il sistema diventa ben presto inutilizzabile.
Ciononostante UIDIGI non aiuta a risolvere tutti i
problemi di cui puo’ soffrire un’area in cui molte
stazioni usano disordinatamente il sistema.
A chi serve UIDIGI ?
•
A chiunque possiede o gestisce un digipeater
dedicato al traffico APRS con un TNC2 e vuole
che questo gestisca al meglio il traffico delle
stazioni che operano in APRS.
A chi NON serve UIDIGI ?
•
•
UIDIGI non serve a chi deve operare come
stazione fissa o mobile in APRS con programmi
tipo WinAPRS o UI-VIEW. Per questi e’
sufficiente il firmware disponibile nel TNC o un
modem Baycom gestito con l’opportuno driver.
UIDIGI non dispone di funzioni che gli
consentono di operare come una stazione
gateway
Perché ho scritto UIDIGI?
•
•
•
Perché avevo diversi TNC2 a casa
inutilizzati e non avevo nessuna
intenzione (alle soglie del terzo
millennio) di acquistare un nuovo TNC
a 1200bd!
Perché anche se e' possibile usare un
qualsiasi firmware da TNC per
realizzare un digipeater APRS, UIDIGI
implementa una serie di funzionalita’
che lo rendono adatto a venir impiegato
in una rete APRS complessa.
Perché in montagna un PC e’ sempre
difficile da gestire e comunque
consuma molta piu’ di energia elettrica
di un TNC!
Caratteristiche di UIDIGI
•
•
•
•
•
•
•
UIDIGI funziona su un TAPR TNC2 o compatibile al 100%,
progetto ormai obsoleto ma valido e soprattutto disponibile in
tutto il mondo.
Ripetizione dei soli frame AX.25 UI
Routing e call substitution dei frame inviati a indirizzi generici
(RELAY, WIDE TRACE), a scalare WIDEN-N, TRACEN-N e
direzionali in base a SSID
Limitazione automatica della ripetizione di frame gia’
trasmessi
Gestione remota protetta da password
Risposta ai frame di query APRS provenienti da altre stazioni
3 beacon indipendenti
Limitazioni di UIDIGI
• Non puo’ essere usato per realizzare gateway
APRS
• Attualmente non gestisce il preempted
digipeting
• Non gestisce stazioni meteoreologiche
• Il TNC non puo’ essere usato da stazioni che
operano in APRS con programmi di tracking
UI-VIEW o WinAPRS
Perché un digipeater dedicato a
APRS? (1/6)
•
•
Il sistema APRS sfrutta la caratteristica del
protocollo AX.25 (che tipicamente e' un protocollo
dove le stazioni che si scambiano informazioni sono
virtualmente connesse tra loro) di inviare frame con
informazioni definiti UI (Unnumbered Information)
anche tra stazioni che non risultano connesse tra
loro.
Tale metodo al contrario del trasporto di
informazioni tra due stazioni connesse da un lato
permette di trasmettere informazioni con il criterio
uno a molti, dall'altro non garantisce che tutti i
possibili destinatari ricevano le informazioni con
certezza. Il sistema APRS si affida a questa
caratteristica del protocollo AX.25 per trasmettere le
informazioni tra le stazioni.
Perché un digipeater dedicato a
APRS? (2/6)
•
•
•
•
In origine il metodo di propagazione dei frame AX.25 usati dal sistema APRS era
una semplice ripetizione di frame destinati a nominativi generici ( CQ o APRS) e
con percorsi di ripetizione generici (RELAY o WIDE) in modo da permettere a
stazioni in movimento sul territorio di spostarsi permettendo ai propri beacon di
propagarsi senza dover modificare alcun parametro del TNC.
Questo si realizzava semplicemente installando dei digipeater costituiti da TNC ai
quali veniva impostato come nominativo il nome del digipeater e come alias un
nominativo generico (RELAY o WIDE). Questo sistema ha funzionato e funziona
finché stazioni e digipeater isofrequenza sono pochi ma comincia ad andare in crisi
quando le stazioni aumentano e il territorio da coprire si estende.
Così un frame del tipo: IW3FQG>APRS v RELAY, WIDE, WIDE
viene ripetuto dal primo UIDIGI con la sostituzione del call:
IW3FQG>APRS v UIDIGI*, WIDE, WIDE
Questo consente che frame gia' ripetuti da un digipeater non vengano nuovamente
ripetuti generando loop e duplicazioni e in definitiva traffico inutile.
Perché un digipeater dedicato a
APRS? (3/6)
•
•
•
•
Per questo nel corso degli anni sono stati introdotti dei metodi di
ripetizione applicati ai digipeater che consentono di limitare i
problemi dovuti alla progressiva congestione dei canali radio dovuta
al traffico e all'eccesso di ripetizioni dei frame.
Tutte le regole che seguono sono delle modifiche richieste dal sistema
APRS al comportamento standard di un puro digipeater AX.25 perché
va' ricordato che il sistema APRS si serve di AX.25 per funzionare.
Il primo metodo introdotto fu' quello che forza la sostituzione, da
parte del digipeater che ripete il frame, del nominativo generico usato
dalla stazione che ha trasmesso in origine il frame.beacon di
propagarsi senza dover modificare alcun parametro del TNC.
Questo si realizzava semplicemente installando dei digipeater
costituiti da TNC ai quali veniva impostato come nominativo il nome
del digipeater e come alias un nominativo generico (RELAY o
WIDE). Questo sistema ha funzionato e funziona finché stazioni e
digipeater isofrequenza sono pochi ma comincia ad andare in crisi
quando le stazioni aumentano e il territorio da coprire si estende.
Perché un digipeater dedicato a
APRS? (4/6)
•
•
•
Il secondo metodo e' stato quello di introdurre delle semplici regole di
propagazione dei frame fino a certo numero di 'salti' senza dover aumentare
eccessivamente la lunghezza del frame da trasmettere e ricevere.
La prima di queste regole fa' in modo che frame inviati a nominativi tipo WIDEn-n
(con n > 0 e n < 8) vengano trattati in questo modo:
Un frame del tipo: IW3FQG>APRS v RELAY,WIDE1-1
viene ripetuto dal primo UIDIGI: IW3FQG>APRS v UIDIGI*, WIDE1-1
e dal secondo UIDIGI (viene decrementato l'ssid e NON viene settato il bit H):
IW3FQG>APRS v RELAY*, WIDE1-0
e dal terzo UIDIGI (non viene decrementato l'ssid perché e' gia' zero e viene
settato il bit H): IW3FQG>APRS v RELAY, WIDE1-0*
In definitiva il frame pur rimanendo con lunghezza limitate (ogni nominativo nella
lista digipeater occupa 7 byte) viene ripetuto automaticamente fino a un massimo
di 7 volte.
Perché un digipeater dedicato a
APRS? (5/6)
•
Il terzo metodo derivata dalla seconda serve allo stesso scopo ma consente alla
stazione che riceve il frame di conoscere il percorso di ritrasmissione che il frame
ha compiuto cosi’ un frame del tipo:
IW3FQG>APRS v RELAY,TRACE1-1
viene ripetuto dal primo UIDIGI: IW3FQG>APRS v UIDIGI*, TRACE1-1
e dal secondo UIDIGI (viene decrementato l'ssid e viene inserito il call del
digipeater con il bit H settato):
IW3FQG>APRS v RELAY, DIGI1*, TRACE1-0
e dal terzo UIDIGI (l'ssid e' a zero viene fatta la sostituzione del nominativo con
quello del digipeater e su questo viene settato il bit H): IW3FQG>APRS v
RELAY, DIGI1, DIGI2*
Perché un digipeater dedicato a
APRS? (6/6)
•
Infine il quarto metodo più recente e' quello che
consente a una stazione di indicare il percorso di
propagazione geografica da utilizzare e che i
digipeater opportunamente settati facciano
compiere al frame.
•
Questo metodo e' ancora sperimentale e non
completamente documentato
Alternative a UIDIGI basate su
TNC
• KANTRONICS KPC3
• Standard di fatto, supporta call substitution e routing a
scalare, non supporta routing direzionale ha qualche
problema con la soppressione delle ripetizioni
• PACCOM TINY2
• Gestisce solo il routing generico (RELAY, WIDE,
TRACE) e call substituion
• KENWOOD TM D-700
• Implementazione completa di tutti i tipi di routing,
implementazione forse piu’ recente e completa
Alternative a UIDIGI basate su
PC
• APRSDIGI
• Gestisce fino a 2 porte realizzate da TNC in
kiss mode con gestione parziale del routing
• DIGI_NED
• Gestisce fino a 15 porte radio e molti tipi di
hardware e praticamente tutte le
combinazioni possibili di routing previste
• WinAPRS o UI-VIEW
• Entrambi validi ma a mio parere piu’ adatti
solo al tracking
UIDIGI la sua breve storia...
•
•
•
•
Nella primavera del 1995 durante hamvention 95 a Dayton,
OH USA acquisto il mio primo ricevitore GPS portatile, sento
per la prima volta parlare di APRS, assisto a una dimostrazione
durante un convegno organizzato dal TAPR.
Nel 1997 penso di regalare i TNC2 che possiedo e ho costruito
negli anni a aspiranti radioamatori per promuovere l’uso del
packet radio in declino. Mi viene in mente APRS e decido di
provare ad allestire la stazione casalinga e mobile per
effettuare alcune prove di valutazione.
Nel 1998 acquisto (in svendita) un sistema di sviluppo
hardware completo per lo Z80 perche’ non si sa’ mai…
Agli inizi del 1999 comincio a sentir parlare di APRS da parte
di altre stazioni nella zona 3 mi rendo conto che non ci sono
alternative se non quelle commerciali per allestire un
digipeater APRS e comincio a pensare di scrivere il software
per i miei TNC2, usando come base di sviluppo i sorgenti della
nordlink.
...UIDIGI la sua breve storia ...
•
•
•
Agli inizi del 1999 comincio a sentir parlare di APRS da
parte di altre stazioni nella zona 3 mi rendo conto che non ci
sono alternative se non quelle commerciali per allestire un
digipeater APRS e comincio a pensare di scrivere il software
per i miei TNC2, usando come base di sviluppo i sorgenti
della nordlink.
Nella primavera del 1999 dopo alcuni mesi di
sperimentazione in casa il 1 Novembre e’ stato installato il
primo digipeater IR3VIF presso la postazione di Monte
Corno con la versione 1.3 di UIDIGI
Entro la fine del 1999 una versione preliminare del firmware
viene inviata ad altri sysop di digipeater APRS della zona 3
per verificare il funzionamento degli algoritmi di routing e
soppressione delle duplicazioni
...UIDIGI la sua breve storia...
•
•
A Marzo 2000 viene rilasciata la versione 1.6 del firmware e
annunciata la disponibilita’ del firmware nella mailing list aprsnews
(dedicata a APRS e gestita dal TAPR). WB4APR mi scrive
complimentandosi per il lavoro e incoraggiandomi a proseguire per
rendere il firmware quanto piu’ compatibile allo standard APRS in via
di definizione da parte dell’APRS Working Group.
A giugno viene rilasciata la versione 1.7 di UIDIGI che, grazie alla
completa riscrittura del codice di gestione, e’ diventata molto piu’
leggera della precedente e questo ha consentito di aggiungere
numerose funzionalita’ tra cui una rinnovata interfaccia sysop e
l’implementazione completa degli algoritmi di routing e
antiduplicazione standard.
...UIDIGI la sua breve storia
(continua)...
• A Ottobre 2000 viene distribuita la versione 1.8 di UIDIGI. Il progetto
e’ pressoche’ quasi completo.
• A Novembre 2000 UIDIGI viene presentato durante i lavori
nell’ambito della manifestazione TRACE2000 a Verona.
E il futuro?
• Ritengo che il progetto UIDIGI oggi ha raggiunto un buon grado di
sviluppo e stabilita’ e spero possa contribuire alla costruzione del
network di digipeater APRS italiani.
• Ora che l’obbiettivo di realizzare il firmware per il digipeater APRS e’
stato raggiunto conto di tornare a uno dei tanti progetti accantonati
negli anni…
Indirizzi e recapiti
• UIDIGI Home page:
http://gw.ir3ip.ampr.org/~iw3fqg/uidigi.htm
• UIDIGI mailing list:
http://www.egroups.com/group/uidigi
• Racapiti di IW3FQG
– Packet Radio:IW3FQG @ I3KUH.IVEN.ITA.EU
– Internet: [email protected]
– Coordinate:
• Latitudine: 45 ° 33' 24" N
• Longitudine: 11° 32' 34" E
Riferimenti
• Manuale e Introduzione a UIDIGI di IW3FQG
Scarica

Presentazione di UIDIGI