Фундаментальный принцип передачи данных в интернете - PullRequest
1 голос
/ 18 декабря 2011

Давайте предположим, что я открываю браузер своего ПК в локальной сети у себя дома и набираю http://foo.com,, чтобы браузер или другой работающий сервис нашел IP-адрес foo и отправил его через ISP на сервер foo.Теперь сервер знает, что я отправил запрос и сгенерировал HTML-страницу или что-то еще, чтобы ответить на мой запрос.Как его ответ поступает в браузер в локальной сети?

Ответы [ 3 ]

2 голосов
/ 18 декабря 2011

IP-пакеты содержат IP-адрес источника (т. Е. Отправителя).Таким образом, сервер знает, кто инициировал запрос, и может затем отправить свой ответ на этот IP-адрес (без поиска DNS).

Одна общая сложность заключается в локальной сети за маршрутизатором с использованием NAT (сетевой адресперевод) ;это имеет место в большинстве жилых помещений.Хотя все клиенты в локальной сети имеют разные локальные IP-адреса, маршрутизатор изменяет все IP-пакеты так, чтобы у всех них был один и тот же IP-адрес (внешний адрес маршрутизатора).Поэтому весь трафик ответа отправляется обратно на этот единственный IP-адрес.Маршрутизатор может распознавать и отправлять пакеты обратно правильному локальному клиенту на основе номера порта TCP / UDP.

1 голос
/ 21 декабря 2011

Это хорошо объяснено в: http://technet.microsoft.com/en-us/library/cc780783(WS.10).aspx

1 голос
/ 18 декабря 2011

Браузер открывает соединение с сервером и отправляет запрос;Сервер отвечает через то же соединение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...