background

WebNIR

Strumenti Web per la valutazione dell'esposizione occupazionale alle Radiazioni Non Ionizzanti

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.

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.

ComandoSintassiChe cosa faParametri 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 n il 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):

  1. Lunghezza del nome del tessuto (cioè del parametro che segue)
  2. Nome del tessuto
  3. Frequenza (Hz)
  4. Conducibilità (S/m)
  5. Permittività relativa
  6. Tangente di perdita
  7. Lunghezza d'onda nel tessuto (m)
  8. Profondità di penetrazione nel tessuto (m)
IndiceStringa di formato e dialogo di esempioValori
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
FORM 0
+OK 0 Tissue Dielectric Properties Server
GETS MUSCLE 1000000
Muscle              f=   1.0000e+06 Hz  sig=   5.0268e-01 S/m  eps=   1.8364e+03  tgl=   4.9204e+00  wav=   4.0320e+00 m  dep=   7.8524e-01 m
+OK Tissue Dielectric Properties Server
tutti e sette, ognuno con la sua etichetta
1 %-*s %12.4le %12.4le %12.4le %12.4le %12.4le %12.4le\r\n
FORM 1
+OK 1 Tissue Dielectric Properties Server
GETS MUSCLE 1000000
Muscle                1.0000e+06    5.0268e-01    1.8364e+03    4.9204e+00    4.0320e+00    7.8524e-01
+OK Tissue Dielectric Properties Server
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
FORM 2
+OK 2 Tissue Dielectric Properties Server
GETS MUSCLE 1000000
Muscle              f=   1.0000e+06 Hz  sig=   5.0268e-01 S/m  eps=   1.8364e+03
+OK Tissue Dielectric Properties Server
nome, frequenza, conducibilità e permittività, con le etichette
3 %-*s %12.4le %12.4le %12.4le\r\n
FORM 3
+OK 3 Tissue Dielectric Properties Server
GETS MUSCLE 1000000
Muscle                1.0000e+06    5.0268e-01    1.8364e+03
+OK Tissue Dielectric Properties Server
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.

CNR-IFAC, Firenze, 1997-2024. Documentazione di Daniele Andreuccetti.

Keywords: tpd, Tissue Properties Daemon, TCP, 5210, Documentazione del servizio, Protocollo