Comment le routeur Wifi sait-il à quel PC envoyer une requête, lorsqu'un PC exécute un programme serveur tel qu'Apache / IIS?

0

J'étudiais sur la programmation de socket. Ce que j'ai compris, c'est qu'il s'agit d'une combinaison d'adresse IP et de numéro de port. Supposons maintenant qu'un auditeur s'exécute sur mon PC, qui est connecté au Wifi. Les demandes adressées à cet auditeur via Internet doivent aboutir à une combinaison d'adresse IP publique et de numéro de port. Il peut y avoir plusieurs PC connectés au Wifi auquel je suis connecté. Lorsqu'une requête parvient au routeur Wifi, comment peut-il savoir sur quel PC il doit être transféré dans le LAN sans fil?

Lorsque je discute sur Facebook ou que Fb est ouvert dans un navigateur, alors que je suis connecté à Internet via une connexion Wifi, comment le serveur envoie-t-il les messages de discussion et les notifications vers moi? Ne sera-t-il pas confronté à un problème similaire?

Shivam Aggarwal
la source

Réponses:

1

Lorsqu'une requête parvient au routeur Wifi, comment peut-il savoir sur quel PC il doit être transféré dans le LAN sans fil?

Il ne sait pas Le trafic sera abandonné ou rejeté.

C'est pourquoi vous avez besoin de la redirection de port si vous souhaitez héberger des serveurs accessibles de manière externe derrière un routeur NAT . Bien entendu, le réseau sans fil pourrait également être «directement connecté à Internet», sans NAT. Certaines universités font / ont fait cela. Et avec IPv6, nous y retournons heureusement.

Lorsque je discute sur Facebook ou que Fb est ouvert dans un navigateur, alors que je suis connecté à Internet via une connexion Wifi, comment le serveur envoie-t-il les messages de discussion et les notifications vers moi?

Cela ne pousse pas «activement». Il envoie des données en réponse à une demande de votre navigateur. Ceci utilise une connexion TCP établie.

Daniel B
la source
Merci pour la réponse @Daniel B. Pour la deuxième partie de la question, votre réponse indique que la connexion TCP est utilisée. Est-ce que le navigateur envoie continuellement des requêtes au serveur? Je le demande parce que les notifications et les messages de chat sont livrés presque instantanément. Pour cela, il y aurait un mécanisme de vote. Lorsque j'ai lu des informations sur les sockets Web, cela signifie que celles-ci utilisent une connexion établie, à l'aide de laquelle le serveur peut envoyer des données au client. Je pensais qu'il serait capable d'envoyer «activement» des données chaque fois que nécessaire. Cela a été dit comme une meilleure alternative au scrutin.
Shivam Aggarwal
Il existe plusieurs possibilités telles que WebSockets, les événements envoyés par le serveur et l'interrogation longue. Tous impliquent une connexion TCP qui est initiée par le navigateur. C'est la partie importante. Les connexions TCP étant bidirectionnelles, les deux extrémités peuvent envoyer des données non demandées.
Daniel B