Il
seguente documento descrive il Modo Kiss
(Keep
It Simple Stupid) .
Traduzione
dal manuale Kantronics,Inc.
Il
modo Kiss permette al tnc di operare come un modem ed
un PAD (Packet Assembler Disassember) .Il
cuore del lavoro ,che riguarda cio' che accade
ai dati,deve risiedere nel vostro computer allo
scopo di usare questo modo di operare. Il programma
(sorgente) Kiss, progettato da Phil Karn , viene
implememtato per supportare i protocolli
dei livelli piu' alti allo scopo di dividere
le risorse in stile rete.
Il
programma piu' popolare che usa il modo di operare Kiss
e' il
TCP/IP
o Trasport Control Protocol/Internet
Protocol. Questo
programma
permette trasferimenti di files simultanei FTP
(File
Transfer
Protocol ),Conversazioni tra utenti usando TELNET, e
un
Simple
Mail Transfer Protocol (SMTP),Inoltre, la
capacita' di
multiconnessione
e' presente nel pacchetto software (TCP/IP), con
i dati che vengono
mostrati solo per
la "sessione
corrente".Potete
mettere in relazione una sessione con un stream
(flusso
) I/O in una normale operazione su TNC.
Nel
modo KISS ,il TNC passa semplicemente tutti i
dati ricevuti
al
vostro computer,e il programma sul computer e'
responsabile
per
tutti i processi sui quei dati,incluse
le decisioni che riguardano rotte,digipeating,e
controllo.Il TNC converte i dati
sincroni
che sta ricevendo dal collegamento
radio in dati
asincroni
da passare al vostro computer attraverso
la porta
seriale,
e converte i dati asincroni dal vostro
computer nel
fomato
sincrono adatto per la trasmissione radio.Il TNC
conserva
la
responsabilita' per queste
funzioni ,cosi pure
la
determinazione
nel tempo dell'accesso al canale (radio).
Nel
modo kiss,l'accesso al canale e' determinato da due
parametri nel vostro Tnc vale a dire Persist e
Slottime. L'algoritmo usato per determinare
se trasmettere o no usando questo metodo ,si e'
dimostrato piu' sofisticato del metodo Dwait usato dalla
maggior parte delle stazioni AX.25.Il risultato
nell'uso dell'algoritmo della persistenza
e' l'aumentata efficenza sui canali in molte
condizioni .Per spiegare questo algoritmo, assumiamo
un valore di persistence di 63 e uno Slottime di 10.Questo
valore di Slottime corrisponde a 100 millisecondi.
Quando
il Tnc sente che il canale e'
libero e disponibile
(nessuna
portante e' presente),fa
partire un contatore
(Slottime).Quando
il contatore si ferma (100 ms nel nostro
caso
),il
Tnc genera un numero casuale tra 0
e 255.Se il numero
generato
e' uguale o inferiore del valore di
Persist,il Tnc
azionera'
il trasmettitore ed inviera' il pacchetto di dati
.Con
il
nostro valore di 63 le probabilita' che questo
accada dopo il
primo
Slottime sono circa 1 su 4 (effettivamente le
probabilita'
sono
Persist + 1 diviso 256).Se il Tnc ha generato
un numero
casuale
piu' grande di Persist, questo fa ripartire il
contatore
ed
aspetta che si fermi di nuovo prima di
generare un nuovo
numero
casuale.Cio' viene ripetuto finche'
il Tnc guadagna
l'accesso
al canale ed invia il suo pacchetto di informazioni.
Esaminando
attentamente cio' che accade,possiamo
vedere che rendendo Slottime piu' piccolo il Tnc
generera' un numero casuale piu' frequentemente,invece
aumentando il valore di Persist dara' una
possibilita' migliore (migliora
le probabilita') di trasmettere
i dati.Attraverso l'attenta scelta di questi valori,
e' possibile migliorare la fuoriuscita dei dati
ed allo stesso tempo si permettera'
un uso migliore del canale con gli altri
utenti packet.
I
dati ricevuti dalla radio vegono
convertiti in formato
asincrono
dal Tnc ed inviati al
vostro computer.I dati
effettivamente
inviati sulla porta seriale vengono formattati con
informazioni
speciali di controllo,permettendo
al Tnc di
determinare
il tipo di dati che si sta ricevendo .
Osserviamo
i dati dal Tnc al
computer .Primo, tutte le
informazioni
che scorrono in questa direzione sono dati.Nessun
messaggio
speciale viene inviato dal Tnc al computer
nel modo
Kiss.Gli
unici dati che scorrono in questa direzione sono
quelli
ricevuti
attraverso il collegamento radio.Ogni trama
di dati
inviata
dal Tnc iniziera' e finira' con un carattere
speciale
Fend.Questo
corrisponde ,nel codice ASCII , a $C0
esadecimale oppure a 192 decimale.Il secondo byte
dei dati sara' il tipo di dati,e sara' sempre
un $00.Questo significa che le informazioni seguenti
sono dati.Se questi effettivamente
contengono il carattere FEND ($C0) sara'
necessario dire al computer che il $C0 che esso
riceve non e' la fine della trama ,ma semplicemente
un altro dato.Questo viene realizzato sostituendo
il carattere $C0 con una speciale sequenza
che consiste di un FESC ($DB) seguito da
un carattere TFEND ($DC).Una speciale sequenza
finale che potrebbe essere inviata
dal TNC al computer e' un FESC ($DB)
seguito da un TFESC ($DD) .Questo
viene tradotto in $DB dal progamma
sul computer.
Adesso
,osserviamo i dati che scorrono nell'altra direzione,cioe'
dal
computer al TNC.Ci sono cinque possibili comandi
che puo'
essere
necessario dare al TNC dal computer, ed essi
normalmente sono parametri di installazione.Questi sono
comandi necessari per dare il valore
di TXDELAY, PERSISTENCE, SLOTTIME, FULLDUP, ed
in fine, un comando per uscire dalle operazioni
del modo Kiss. Gli unici altri dati
che il computer puo' inviare al TNC nel
modo Kiss,sono dati che stanno per essere trasmessi
su canale radio (HDLC).I dati
in arrivo dal computer devono anche iniziare
e finire con lo stesso carattere FEND come viene
usato per i dati in arrivo dal TNC.Tutte le sequenze
di caratteri speciali devono anche essere
usate per inviare i caratteri FEND,ed il FESC
come dati.
Ad
ognuno dei comandi e' stato assegnato un numero per
tipo di comando come segue:
TIPO
FUNZIONE
0
Dati da trasmettere
1
TXDELAY - il secondo byte contiene
il ritardo con
incrementi di 10 ms.
2
PERSISTENCE - il secondo byte contiene il
valore di
persistenza.
3
SLOTTIME - il secondo byte contiene l'intervallo di
slot
5
FULLDUP - se il secondo byte e'
0 ,attiva il modo
fulldup,altrimenti lo disattiva .
255
KISS - causa l'uscita dal modo Kiss.
Per
esempio,se vogliamo mettere il txdelay nel nostro
tnc modo
kiss
a 100 millisecondi,il computer inviera' i seguenti bytes
al
Tnc:
C0
01 0A C0
e
per inviare un pacchetto di dati che dica "hello"
sarebbe:
C0
00 68 65 6C 6C 6F C0
E'
importante notare che questo pacchetto di dati
non contiene
alcuna
informazione d'indirizzo,e percio' non puo' essere inviato
via
protocollo AX.25 .Tutto cio' che riguarda l'indirizzamento
e
la
formattazione degli indirizzi deve essere fatto
nel computer
ed
inviati come pacchetto di dati al Tnc.
In
fine una sequenza importante (specialmente per
utenti di PC
compatibile)
e' : "Lascia il Modo Kiss".
C0
FF C0
Se
per qualche ragione ,avete il Kiss
On e avete dato il
Perm,
quando spegnerete e riaccenderete il Tnc ,sarete
in modo Kiss.La sola maniera di abbandonarlo
sarebbe di fare un reset hardware,oppure
usare il comando TCP/IP per lasciare il modo Kiss ,oppure
inviare la sequenza C0 FF C0 dalla vostra tastiera.
I PC compatibili offrono quest'ultima
opportunita' attraverso la seguente sequenza:
Premere
e tenere il tasto ALT ,battere
il numero 192 sul
tastierino
numerico - rilasciare il tasto ALT .
Premere
e tenere il tasto ALT ,battere
il numero 255 sul
tastierino
numerico - rilasciare il tasto ALT.
Premere
e tenere il tasto ALT ,battere
il numero 192 sul
tastierino
numerico - rilasciare il tasto ALT.
Adesso
se il programma terminale che state usando
ha inviato
tutti
quei caratteri,sarete fuori dal modo Kiss
.Ricordate di
dare
il Perm in posizione Kiss off se non volete che
il vostro
Tnc
sia in modo Kiss quando lo spegnete ed accendete
.
|