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.

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.

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