Caricare documenti e articoli online 
INFtub.com è un sito progettato per cercare i documenti in vari tipi di file e il caricamento di articoli online.


 
Non ricordi la password?  ››  Iscriviti gratis
 

ANALISI DELLE RETI

informatica




ANALISI DELLE RETI



2.3.1 TRASMISSIONE USANDO IL PROTOCOLLO TCP/IP


Prima di incominciare a spiegare come ho sviluppato questa parte di programma premetto che ho scelto la rete TCP/IP perché è uno dei protocolli più usati al giorno d'oggi nelle reti pubbliche : si guardi ad esempio la rete Internet.




Per attivare un collegamento TCP/IP si ha bisogno di due terminali dove il ricevente fa da Server e il tras 444b18e mittente fa da Client. Il Server è colui che riceve quindi non trasmette al livello d'utente niente anche se ai livelli più vicini alla macchina c'è sempre un colloquio tra i due computer, il Client invece è colui che attiva la trasmissione e che trasmette messaggi ma non ne riceve.


2.3.2 TCP/IP SERVER


Prima di attivare un TCP/IP server è obbligo impostargli in valore della porta Host (=>TCP1.LocalPort := ? ? ?), dopo ciò si attiva la ricezione con la procedura TCP1.Listen : con questa procedura il Server "ascolta" se c'è una chiamata al suo terminale.

Nel caso che si sia verificato l'evento "chiamata" il TCP1 entra nell'evento OnConnectionRequest : in questo caso ho fatto apparire una finestra di messaggi che avverte la chiamata all'utente di un Client e chiede se vuole che la connessione sia effettuata, se la risposta è affermativa un altro componente TCP/IP ricevende l'incarico di ricevere la comunicazione mentre il primo TCP resta in ascolto per un'altra eventuale chiamata ; se la risposta è invece negativa i collegamenti si aprono e si chiudono per far capire al client che la trasmissione è stata rifiutata.

Quando il client invia dei messaggi il server li riceve e li trasforma in tipi Variant che però deve essere stabilito che tipo di variabile Variant si usa , nel mio caso si tratta di tipo String ed allora ho messo la parola chiave VT_BSTR che è contenuta nella libreria ActiveX, gli altri campi della funzione GetData sono bytesTotal che indica i bytes totali che sono stati trasmessi (questo valore è passato automaticamente alla funzione nella variabile bytesTotal dalla classe TTCP. Conoscendo i tipi di dato che a me interessano posso ricavarmi le informazioni che voglio : se ad esempio per trasmettere le coordinate di uno sparo so che ci saranno due trasmissioni di coordinate e che la prima ad esempio sarà X e la seconda Y, in una variabile globale mi tengo lo stato di questa trasmissione (per esempio 0 se devo aspettare X e 1 se devo aspettare Y ecc...).

Quando la trasmissione del client è stata fatta il server deve rispondere se il punto sparato ha colpito o meno la nave avversaria e quindi prima chiude il collegamento come applicazione Server ed inizia con lo stesso computer un'applicazione client restituendo il messaggio di colpita o meno, se la partita è finita oppure no ecc...



2.3.3 PROPRIETA' CLIENT DEL TCP/IP



Prima di utilizzare le proprietà client di Delphi 3.0 ho impostato l'indirizzo IP del computer client (nel mio caso 1024), bisogna fare quest'operazione perché il TCP/server riesce così a comunicare al client se i messaggi sono stati ricevuti o altri messaggi che sono utili all'applicazione TCP/IP.

Dopo quest'impostazione l'utente è obbligato ad inserire o l'indirizzo IP o il nome Host dell'utente che si vuole connettere: dopo aver immesso l'indirizzo il tasto adibito alla connessione legge dalla finestra edit1 e riesce quindi a connettersi (sempre se l'indirizzo è giusto o se la rete è funzionante)

A connessione effettuata si apre una finestra in cui l'utente inserisce le coordinate del punto in cui vuole far fuoco. Premendo il tasto "Spara" il client invia le coordinate sotto forma di stringe al server e aspetta la richiesta di sconnessione.

Una volta sconnesso apre la sua connessione come server essendo chiamato dall'utente che prima era server e che adesso è client per il messaggio di ritorno se colpita o acqua.




Privacy




Articolo informazione


Hits: 1517
Apprezzato: scheda appunto

Commentare questo articolo:

Non sei registrato
Devi essere registrato per commentare

ISCRIVITI



Copiare il codice

nella pagina web del tuo sito.


Copyright InfTub.com 2024