In realtà sto imparando le reti di computer e mentre ci sono, sono confuso su come un server web mantiene connessioni multiple?
Semplicemente per dirlo, ho appreso tramite google che è che socket gestisce una richiesta di ogni client.
Supponiamo quindi che esista un server Web e diciamo 2 client con IP
Client A: 5.5.5.5
Client B: 10.10.10.10
Entrambi provano a connettersi al server sulla porta 80.
Ora, cercando su Google ciò che ho ottenuto, il server è in ascolto sulla porta 80 per le richieste in arrivo. Quindi diciamo che un client A tenta di connettersi al server (crea una connessione TCP / IP). Durante il quale viene creato un socket tra questi due. Quindi viene eseguito come thread separato per la sua ulteriore comunicazione, facendo sì che il server ascolti nuovamente le richieste di altri client su quella particolare porta. E il client B si collega allo stesso modo.
Ora la mia prima domanda è:
1. How does server communicate with these two clients simultaneously
after the connection has been established?
Ora praticamente non solo 2 client ma migliaia e milioni di utenti possono connettersi a un server.
Quindi la mia prossima domanda è:
2. Now, how do those thousands of clients get connected to a single server?
If we assume every client is connected to the server through wire, it is not
practically possible to maintain that many sockets on a hardware for
connection. How those thousands connections are made and handled?
Infine, la mia terza domanda è:
3. Above I said (actually heard) how **client A** connected to the the server
and similarly the client B.
But I didn't get the part stating "after a TCP/IP connection is made they
continue separately in a separate socket and making server to listen for
other client requests." What does that mean? If one client is communicating
to the server, how come other can communicate at the same time to same server.
Isn't it like while a student is asking question to a teacher, other can't
ask at the same time since that particular student is busy or occupying the
teacher at the moment so others should wait, which we compare than client B
should wait when client A is communicating.
Queste sono le mie domande di base che non sto ricevendo. Per favore, correggimi se sbaglio tutto. Puoi suggerirmi alcuni libri / pdf da leggere se le risposte sono dettagliate o non focalizzate in modo particolare su una parte specifica. Grazie