Documentazione del servizio
Proprietà dielettriche dei tessuti corporei nel campo di frequenza 10 Hz - 100 GHz: il Tissue Properties Dæmon (tpd).
Quadro generale
Il programma server è un normale demone UNIX chiamato Tissue Properties Dæmon (tpd nel seguito). tpd gestisce la tabella dei 14 parametri di ciascun tessuto definito e contiene le procedure per il calcolo della permittività relativa, della conducibilità elettrica e delle altre grandezze che ne derivano: la tangente di perdita, la lunghezza d'onda e la profondità di penetrazione.
tpd è un'applicazione multitask costruita sul modello
consueto dei demoni TCP/IP concorrenti di UNIX. Gira sul sistema di indirizzo
niremf.ifac.cnr.it, dove resta in ascolto sulla porta TCP 5210 in
attesa delle richieste dei programmi che lo interrogano.
Oggi l'indirizzo vero di quel sistema è webnir.eu:
niremf.ifac.cnr.it è il nome storico dello stesso server, e resta in
servizio perché molti utenti lo ricordano e qualche programma potrebbe usarlo in
automatico. tpd risponde su tutti e due i nomi.
Il dialogo fra client e server si regge su un semplice protocollo ASCII, fatto di righe di testo chiuse dalla sequenza ritorno a capo + avanzamento riga e organizzato come una successione di comandi e risposte. Il collegamento si può provare con questo comando:
telnet niremf.ifac.cnr.it 5210
Se la richiesta arriva, tpd apre il dialogo rispondendo con il messaggio positivo consueto:
+OK Tissue Dielectric Properties Server
e si mette in attesa dei comandi. Da qui in poi il dialogo prosegue con il client che manda comandi e il server che li esegue e risponde con righe di dati, come descritto sotto. Il dialogo si chiude quando il client manda il comando QUIT, al quale il server risponde:
+OK Connection closed
e chiude la connessione.
Risposte del server
Ogni risposta comincia con uno di tre indicatori. Una risposta positiva inizia
con +OK, un errore con -ERR, e una risposta seguita da
righe di dati con +RDY n, dove n
è il numero di righe che
seguono. Dopo quelle righe il server rimanda il proprio messaggio positivo, così
che chi lo interroga sappia sempre quando un blocco è finito.
I comandi
Nella colonna della sintassi le parentesi angolari segnano un parametro obbligatorio, quelle quadre uno facoltativo. I comandi non distinguono fra maiuscole e minuscole.
| Comando | Sintassi | Che cosa fa | Parametri e risposta |
|---|---|---|---|
FORM |
FORM [indice] |
Imposta o mostra l'indice del formato di uscita. | indice (intero, 0–3). Senza il
parametro mostra il formato corrente; un valore fuori campo lo lascia
invariato. Risponde +OK indice Tissue Dielectric Properties Server. |
GETA |
GETA <frequenza> |
Proprietà di tutti i tessuti a una frequenza. | frequenza (reale, Hz) fra 10 e
1011. Fuori campo: -ERR Bad frequency: ### Hz.
Altrimenti +RDY n, con nil numero di tessuti, poi n righe. |
GETS |
GETS <tessuto> <frequenza> |
Proprietà di un tessuto a una frequenza. | tessuto (stringa) fra quelli definiti; frequenza (reale, Hz) da 10 Hz a 100 GHz. |
GLIN |
GLIN <tessuto> <f iniziale> <f finale> <intervalli> |
Proprietà di un tessuto su frequenze equispaziate. | f iniziale e f finale (reali, Hz); intervalli (intero). |
GLOG |
GLOG <tessuto> <f iniziale> <f finale> <valori per decade> |
Proprietà di un tessuto su frequenze in scala logaritmica. | f iniziale e f finale (reali, Hz); valori per decade (intero). Le frequenze coprono le decadi intere che contengono l'intervallo chiesto. |
HELP |
HELP |
Stampa un promemoria dei comandi. | — |
LIST |
LIST |
Elenca i tessuti definiti. | — |
PARM |
PARM <tessuto> |
Stampa i parametri di un tessuto. | tessuto (stringa) fra quelli definiti. |
PRMA |
PRMA |
Stampa i parametri di tutti i tessuti. | — |
QUIT |
QUIT |
Chiude la connessione. | — |
Formati di uscita
I formati disponibili sono quattro, numerati da 0 a 3, si scelgono con FORM e
qui sotto sono scritti nello stile della stringa di formato della funzione printf
del
C; ciascuno è accompagnato da un esempio del dialogo completo. I valori da passare alla
stringa di formato sono, nell'ordine (fra parentesi l'unità di misura attesa):
- Lunghezza del nome del tessuto (cioè del parametro che segue)
- Nome del tessuto
- Frequenza (Hz)
- Conducibilità (S/m)
- Permittività relativa
- Tangente di perdita
- Lunghezza d'onda nel tessuto (m)
- Profondità di penetrazione nel tessuto (m)
| Indice | Stringa di formato e dialogo di esempio | Valori |
|---|---|---|
0 |
%-*s f= %12.4le Hz sig= %12.4le S/m eps= %12.4le tgl= %12.4le wav= %12.4le m dep= %12.4le m\r\n
|
tutti e sette, ognuno con la sua etichetta |
1 |
%-*s %12.4le %12.4le %12.4le %12.4le %12.4le %12.4le\r\n
|
gli stessi sette senza etichette: il più comodo da leggere da programma |
2 |
%-*s f= %12.4le Hz sig= %12.4le S/m eps= %12.4le\r\n
|
nome, frequenza, conducibilità e permittività, con le etichette |
3 |
%-*s %12.4le %12.4le %12.4le\r\n
|
gli stessi quattro senza etichette |
Registrazione degli accessi e dati personali
Di ogni connessione al server si registrano data e ora, l'indirizzo IP di chi si collega, il suo nome DNS inverso, il paese che se ne ricava e il numero di comandi ricevuti. L'applicazione web registra le stesse informazioni quando un calcolo viene eseguito; la semplice apertura della pagina non viene registrata. Non si conserva altro: né i comandi, né i tessuti o le frequenze richiesti. Il CNR-IFAC tiene queste registrazioni per un solo scopo, sapere che il servizio è ancora usato e da quali comunità, dato che è offerto gratuitamente e mantenuto con fondi pubblici.
L'indirizzo IP e il nome host sono dati personali. Si conservano per intero per
12 mesi; dopo di che vengono ridotti automaticamente alla rete (i
primi tre ottetti di un indirizzo IPv4, il prefisso /48 di uno IPv6) e al dominio
registrato del nome host (per esempio tuhh.de oppure
ic.ac.uk), che non è più riconducibile a una persona. Le registrazioni
sono accessibili ai soli amministratori del servizio e non vengono comunicate a
terzi. Il registro del server precedente (2001–2026) è stato importato solo in
questa forma anonima. Per qualunque domanda o richiesta su questi dati si scriva al
CNR-IFAC ai recapiti indicati in questo sito.
Keywords: tpd, Tissue Properties Daemon, TCP, 5210, Documentazione del servizio, Protocollo