Introduzione.


 

Il progetto si propone di realizzare un servizio TELEFONICO  distribuito su di una L.A.N. a piattaforma SUN presente nel LAB2  della Facoltà di Ingegneria di Bologna.

Il linguaggio di programmazione utlizzato è il C, compatibile con l' ambiente UNIX Sysem V 4.0 presente nelle macchine utilizzate. Le ragioni di  questa scelta sono  fondamentalmente di duplice natura:

- l' intenzione di provare personalmente gli strumenti di comunicazione messi a disposizione da  UNIX  ampiamente trattati durante il corso, in modo da verificare  'sul campo'  la loro capacità espressiva.

- la necessità di sviluppare il progetto in un linguaggio più familiare rispetto ad altri ambienti di programmazione come ad esempio Java (condizione sicuramente più vincolante).

 

L' implementazione del servizio si basa su di un modello di comunicazione CLIENT-SERVER  indipendente dall' allocazione basato su di un sistema di nomi piatto. 

É dunque necessario definire un Name Server che in ogni istante sia in grado di rendere rag- giungibile il servizio nella rete (se presente)  con forti implicazioni sul modello CLIENT-SERVER. Diviene fondamentale per i Servers una fase iniziale di registrazione al Name Server attraverso la quale non solo mettono a disposizione il servizio ma lo rendono anche accessibile. Dualmente i Client non possono accedere al servizio, se non indirettamente previa interrogazione al Name Server, in quanto ne ignorano la località.

Risulta evidente che il Name Server diviene l' elemento di centralità dell' applicazione  rendendola vulnerabile ai guasti e potenzialmente soggetta al congestionamento, in più va sottolineato che il problema della raggiungibilità riguarda ora il Name Server, non solo per i Clients ma anche per i Servers.