Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    46

    [C] sistema client-server

    ciao a tutti,
    in un sistema client-server, concorrente, il server deve avere tanti socket quanti sono i client?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Il server accetta le connessioni sulla porta su cui ascolta. Quindi non capisco la tua domanda ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    quando c'è una richesta dal client il server dovrà creare un nuovo socket per gestire la comunicazione. In che modo dipende dalla implementazione.
    ciao
    sergio

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Pero' tieni presente che i socket creati dal server utilizzano la stessa porta e IP.

    Qual e' il problema?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    No! non usano la stessa porta.
    Il server è in ascolto sulla porta specificata, poi quando
    un client fa una richiesta di connessione, il server crea
    un nuovo socket su un'altra porta libera. Altrimenti, come
    potrebbero dialogare tutti sulla stessa porta?

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    No ... il server non utilizza un'altra porta ... altrimenti come potrebbe dialogare il client su una porta che non conosce e su cui non si e' collegato? Il server utilizza un altro socket non un'altra porta ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Appunto, per creare un altro socket usa un altra porta, che, durante
    l'handshaking lo notifica anche al client. Quindi per ogni client, c'è un
    nuovo socket ed una nuova porta!

  8. #8
    normalmente non c'è ragione di cambiare la porta, specialmente se questa è una porta alta.
    ciao
    sergio

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    E' il client che utilizza una porta diversa per ogni connessione. Il server no. Il server utilizza la stessa porta.

    Un socket in stato "established" e' una astrazione software e corrisponde ad una quintupla costituita dal protocollo usato (TCP), indirizzo e porta sorgente, indirizzo e porta destinazione.

    Quello che varia, ad ogni connessione, e' la porta sorgente.

    Nessuno scambio di "porte" viene effettuato durante l'handshaking ... dove lo hai letto?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    Non bisogna cambiare la porta, quella di ascolto rimane la stessa, ma
    quando un server crea un nuovo socket deve aprire un altra porta, per
    distingueri i flussi dati.

    Per chi non si fida, ci vuole poco a controllare. Create un server e vedete le porte
    utilizzate, quando poi si collegano dei client, si apriranno 'magicamente', delle nuove
    porte (a questo ci pensa il server a livello basso automaticamente, non se ne occupa
    il programmatore che usa le chiamate ai socket già belle e pronte dalle librerie usate)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.