Подтвердить что ты не робот

Как пакет перемещается с одного компьютера на другой через Интернет на основе модели OSI

Я знаком с базовой моделью OSI, но меня всегда путают, как пакет перемещается с одной машины на другую через Интернет и какие слои OSI входят в картину? Например, для следующей топологии:

Машина A < ----- > Switch < ---- > Router < ---- > Router < ---- > Router < ---- > Switch < ---- > Машина B

где показано, что несколько маршрутизаторов представляют Интернет, что происходит на уровне уровня OSI, когда Machine A отправляет пакет (скажем, простую команду "ls" через FTP) на машину B.

Вышеприведенный пример - это только пример, но если кто-то может объяснить любую другую топологию сети, это тоже хорошо. Все, что я рассматриваю очень простое объяснение того, как пакет преобразуется в разные уровни OSI в каждом узле (Machine, Switch, Router и т.д.).

4b9b3361

Ответ 1

Маршрутизаторы используют IP-уровень (уровень 3), а коммутаторы используют уровень канала передачи данных (уровень 2). Уровень 1 - это физические 1s и 0s, которые проходят по проводу, уровень 2 - это уровень канала передачи данных, который является протоколами, такими как Ethernet и протокол Point-To-Point (PPP), который передает информацию между соседними узлами о MAC-адресе и и позволяет обнаруживать ошибки и повторную передачу. Уровень 3 - это уровень IP, который содержит информацию о том, где во всей сети находится пакет, а не только текущий хоп.

Передача будет выглядеть следующим образом:

Машина A хочет отправить пакет на машину B. Машина A знает IP-адрес Machine B, поэтому он помещает это в пакет слоя 3. Тем не менее, машина A должна помещать MAC-адрес следующего скачка в пакет 2-го уровня. Если он не знает, он отправит что-то, называемое ARP-запросом (протокол разрешения адресов, прочитайте здесь: http://www.tildefrugal.net/tech/arp.php) в сеть, с IP-адресом назначения. Здесь будет одна из нескольких вещей:

  • IP является локальным. Машина с этим IP-адресом ответит отправителю своим MAC-адресом.
  • IP не является локальным. Маршрутизатор шлюза обнаружит это и отправит свой MAC-адрес.
  • IP-адрес не локальный, а параметр "Мастер" по умолчанию - шлюз и маска подсети. Используя эту информацию, машина A может определить нелокальность IP-адреса и отправить его на MAC-адрес маршрутизатора (ARPing, если он еще не известен).

(Если машина A обнаружит это раньше, она будет находиться в кеше ARP, и машина A будет просто использовать это.) Теперь, когда MAC-адрес отправлен, пакет может быть передан (физический уровень 1, выполняющий фактическую передачу данных на проводе). Следующая остановка будет переключателем. Коммутатор знает, какой исходящий порт MAC-адрес, указанный в качестве адресата уровня 2, включен, поскольку он отслеживает каждый MAC-адрес, с которого он видит, откуда идет пакет, и какой порт он пришел - если он не знает, тогда он будет вытеснять его каждый один порт, гарантируя, что он прибудет.

Таким образом, пакет поступает на маршрутизатор. Охлаждающая вещь о модели IP заключается в том, что она делит каждый отдельный IP-адрес в сети/мире на иерархию. Подсети по определению не могут частично перекрывать подсети, они либо полностью содержат их, либо полностью принадлежат им. Таким образом, до тех пор, пока подсетей следуют этой иерархии, маршрутизатор может однозначно определить, где каждый из 4 миллиардов возможных IP-адресов находится в сети, просто посмотрев, какая подсеть IP будет подпадать под ее таблицу! Затем пакет отправляется через этот порт.

По мере прохождения пакета через маршрутизаторы межсетевых маршрутизаторов, магистральной инфраструктуры и т.д., он прибывает на маршрутизатор Machine B, где происходит противоположный процесс - маршрутизатор B видит, что он предназначен для машины B и отправляет ее входящим. (Аналогично, Router B должен будет использовать процесс, подобный ARP, чтобы найти MAC-адрес Machine B, если он не известен.) Остальное должно быть тривиально отсюда.

хорошие ссылки:

https://web.archive.org/web/20120129120350/http://www.tildefrugal.net/tech/arp.php

http://en.wikipedia.org/wiki/Data_link_layer

http://en.wikipedia.org/wiki/Network_switch

http://en.wikipedia.org/wiki/Network_layer

http://en.wikipedia.org/wiki/Routing

http://en.wikipedia.org/wiki/Router_(computing)

http://en.wikipedia.org/wiki/Address_Resolution_Protocol

Ответ 2

Единственное, что может двигаться по медному проводу, - это импульсы электричества. Бинарный номер 1 представлен импульсом электричества или импульсом электричества для 0. Просто имейте в виду, что реальные данные любого рода не могут быть отправлены по медному проводу, оптоволокну или по воздуху... только представление данных, которые ранее были преобразованы в 1 или 0, а затем снова восстановлено на принимающей стороной.