Как маршрутизатор Wifi узнает, на какой ПК направить запрос, когда на каком-либо ПК запущена серверная программа, такая как Apache / IIS?

229
Shivam Aggarwal

Я изучал программирование сокетов. Я понял, что это комбинация IP-адреса и номера порта. Теперь предположим, что на моем ПК работает прослушиватель, подключенный к Wi-Fi. Запросы к этому прослушивателю через Интернет должны приходить на общедоступную комбинацию IP-адреса и номера порта. Может быть несколько компьютеров подключены к Wi-Fi, к которому я подключен. Когда приходит запрос к маршрутизатору Wi-Fi, как он узнает, на какой ПК его следует перенаправить в сеть Wi-Fi?

Когда я общаюсь в Facebook или когда Fb открыт в браузере, когда я подключен к Интернету через соединение Wi-Fi, как сервер «отправляет» мне сообщения чата и уведомления? Не столкнется ли с подобной проблемой?

0

1 ответ на вопрос

1
Daniel B

Когда приходит запрос к маршрутизатору Wi-Fi, как он узнает, на какой ПК его следует перенаправить в сеть Wi-Fi?

Не знает. Трафик будет отброшен или отклонен.

Вот почему вам нужна переадресация портов, если вы хотите разместить внешне доступные серверы за NAT-маршрутизатором . Конечно, беспроводная сеть также может быть «напрямую подключена к Интернету» без NAT. Некоторые университеты делают / сделали это. И с IPv6, мы, к счастью, возвращаемся туда.

Когда я общаюсь в Facebook или когда Fb открыт в браузере, когда я подключен к Интернету через соединение Wi-Fi, как сервер «отправляет» мне сообщения чата и уведомления?

Он не «активно» толкает. Он отправляет данные в ответ на запрос вашего браузера. При этом используется установленное TCP-соединение.

Спасибо за ответ @ Дэниел Б. Во второй части вопроса ваш ответ говорит, что используется TCP-соединение. Это так, что браузер постоянно отправляет запросы на сервер? Я спрашиваю об этом, потому что уведомления и сообщения чата доставляются практически мгновенно. Для этого должен быть механизм опроса. Когда я читал о веб-сокетах, он сказал, что веб-сокеты используют установленное соединение, с помощью которого сервер может отправлять данные клиенту. Я думал, что он сможет «активно» отправлять данные в любое время. Это было сказано как лучшая альтернатива опросу. Shivam Aggarwal 6 лет назад 0
Существует несколько возможностей, таких как WebSockets, Server Sent Events и Long Polling. Все они включают TCP-соединение, которое инициируется браузером. Это важная часть. Поскольку соединения TCP являются двунаправленными, оба конца могут отправлять незапрошенные данные. Daniel B 6 лет назад 0

Похожие вопросы