In che modo il router Wifi sa su quale PC inoltrare una richiesta, quando alcuni PC eseguono un programma server come Apache / IIS?


0

Stavo studiando la programmazione dei socket. Quello che ho capito è che si tratta di una combinazione di un indirizzo IP e un numero di porta. Ora supponiamo di avere un ascoltatore in esecuzione sul mio PC, che è connesso al Wifi. Le richieste a questo listener su Internet dovrebbero arrivare a una combinazione di indirizzo IP pubblico e numero di porta. Potrebbero esserci più PC connessi al Wifi a cui sono connesso. Quando arriva una richiesta al router Wifi, come fa a sapere quale PC deve essere inoltrato nella LAN Wifi?

Quando sto chattando su Facebook, o quando ho Fb aperto in un browser, mentre sono connesso a internet tramite una connessione Wifi, come fa il server a "spingere" la chat msgs e le notifiche? Non affronterà un problema simile?

Risposte:


1

Quando arriva una richiesta al router Wifi, come fa a sapere quale PC deve essere inoltrato nella LAN Wifi?

Non lo sa. Il traffico verrà eliminato o rifiutato.

Ecco perché è necessario il port forwarding se si desidera ospitare server accessibili esternamente dietro a Router NAT . Ovviamente, la rete wireless potrebbe anche essere "connessa direttamente a Internet", senza NAT. Alcune università lo fanno / hanno fatto. E con IPv6, stiamo per fortuna tornando lì.

Quando sto chattando su Facebook, o quando ho Fb aperto in un browser, mentre sono connesso a internet tramite una connessione Wifi, come fa il server a "spingere" la chat msgs e le notifiche?

Non spinge "attivamente". Invia dati in risposta a una richiesta inviata dal browser. Questo utilizza una connessione TCP stabilita.


Grazie per la risposta @Daniel B. Per la seconda parte della domanda, la tua risposta dice che la connessione TCP è usata. È così che il browser invia continuamente richieste al server? Lo chiedo perché le notifiche e i messaggi di chat vengono recapitati quasi istantaneamente. Perché ciò accada, ci sarebbe un meccanismo di votazione. Quando ho letto dei socket Web, ha affermato che i socket Web utilizzano una connessione stabilita, utilizzando il quale il server può inviare i dati al client. Ho pensato che sarebbe stato in grado di inviare "attivamente" i dati quando richiesto. Questo è stato detto come una migliore alternativa al sondaggio.
Shivam Aggarwal

Ci sono molteplici possibilità come WebSockets, Server Sent Events e Long Polling. Tutti implicano una connessione TCP avviata dal browser. Questa è la parte importante. Poiché le connessioni TCP sono bidirezionali, entrambe le estremità possono inviare dati non richiesti.
Daniel B
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.