Gestione delle comunicazioni

Home

 

    La gestione delle connessioni per consentire la comunicazione tra più utenti deve essere programmata
appositamente. In particolare risulteranno necessari due programmi distinti:

server di multi-utenza: viene fatto girare su un server internet e risulta indipendente dall’ambiente vrml. Deve gestire tutte le problematiche relative all’instaurazione di una nuova connessione, al suo rilascio e allo scambio di messaggi fra i vari clients collegati. Questi ultimi messaggi possono essere di diverso tipo:
- 1 -  messaggi testuali per funzioni di chat fra utenti;
- 2 -  messaggi di tipo posizione: riportano il corrente posizionamento di un utente all’interno del mondo            virtuale;
- 3 -  messaggi di tipo rotazione: riportano il corrente orientamento di un utente;
- 4 -  messaggi di ingresso/uscita di utenti dal mondo virtuale.
programma client: stabilisce una connessione con il server. Verso quest’ultimo spedisce i dati di posizione e di orientamento dell’utente a cui il client è associato, nonché eventuali messaggi testuali. Corrispondentemente riceve dal server messaggi (di chat, posizione o orientamento) provenienti da altri utenti. Una seconda parte del client si preoccupa di modificare il mondo vrml in funzione dei dati ricevuti, nonché di recepire posizione e orientamento dell’utente all’interno dello stesso mondo (dati che dovranno essere spediti al server).

    Come per la maggior parte delle applicazioni su Internet, abbiamo scelto il classico modello client/server (vedi figura), quindi nessuna novità dal punto di vista dell’architettura.

architettura.gif (4414 bytes)


    La più grande innovazione rispetto alle applicazioni della stessa classe, presenti oggigiorno sul WEB, risiede nella scelta di Java come linguaggio di sviluppo. Tale scelta è stata dettata da diverse considerazioni.      Java nasce proprio per offrire una serie di vantaggi fondamentali per lo sviluppo di software che necessita di comunicazione tra diversi sistemi collegati alla rete INTERNET.

    Inoltre il server deve interagire con l’ambiente VRML trasferendo ad esso informazioni derivanti dall’interattività degli utenti con l’ambiente VRML stesso, ognuno sul proprio client. L’utente non ha a disposizione una semplice chat ma bensì un ambiente tridimensionale con il quale può interagire con in più una chat tradizionale con la quale dialogare con gli altri utenti collegati.

    I due oggetti sono strettamente legati tra di loro e il server deve occuparsi anche di questa loro relazione.

    L’unico linguaggio standard che è in grado di gestire sia la complessità della comunicazione che l’interazione con l’ambiente VRML è tuttora il Java. La scelta verso tale linguaggio è stata, inoltre avvalorata dal fatto che grazie alle caratteristiche di assoluta portabilità di Java, il codice dell’applet può essere eseguito su qualsiasi piattaforma e permette, quindi, di mettere in contatto computer con i più disparati sistemi operativi.       Inoltre il linguaggio prescelto prevede una buona integrazione con il networking e supporta entrambe le famiglie di protocolli standard UDP e TCP.

    Per quanto riguarda il protocollo la nostra scelta è caduta su TCP poiché garantisce un I/O più affidabile e la comunicazione è basata su stream facilmente gestibili. La scelta del linguaggio Java inoltre ci ha permesso di aver un codice molto snello e quindi un client di piccole dimensioni garantendo tempi di download molto contenuti.

 

Home ] Up ] Scheda Tecnico-Funzionale ] Gestione degli Avatar ] Manipolazione dei dati ] Sviluppi futuri ] [ Gestione delle comunicazioni ] Il SERVER ] Il CLIENT ] Differenze con altri Ambienti 3D ]

Home

CSELT - Politecnico di Torino
Tesina di Telematica

Amorino Vincenzo - Derenale Corrado - Steffenino Claudio