Вы спрашиваете о Модель сети OSI даже если вы этого не понимаете, и хотя модель OSI не совсем относится к TCP / IP.
Как работает компьютерная сеть в слои , Уровни в модели OSI:
- Физический (например, медь, волокно и т. Д.)
- Канал передачи данных (например, Ethernet, ppp, fddi и т. Д.)
- Сеть (например, IPv4, IPv6, IPX и т. Д.)
- Транспорт (например, TCP, UDP и т. Д.)
- Сеанс (используется в OSI, но большинство вещей здесь обрабатываются уровнем 4 в TCP / IP)
- Презентация (например, ASCII против EBCDIC или MIME)
- Приложение (например, HTTP, SMTP, DNS и т. Д.)
Чтобы два компьютера могли общаться по сети, они должны говорить одинаково сеть протокол уровня. Это не обязательно должен быть IPv4 или IPv6, это может быть IPX или X.25. Но это должно быть что-то ,
Мы просто примем IPv4, так как это наиболее распространенный вариант.
Оба компьютера будут нуждаться в IP-адресе. В этот день и возраст, скорее всего, им будет назначен один из серверов DHCP или они будут динамически назначаться с помощью ZeroConf. Поэтому они будут есть IP-адреса.
Что происходит, когда вы пингуете?
Первый компьютер, инициирующий сеанс, отправит пакет ARP широковещательного уровня 2. ARP - это протокол разрешения адресов. ARP используется для обнаружения адреса уровня 2, связанного с конкретным адресом уровня 3. Широковещательная рассылка - это специальный пакет, который инструктирует сетевому коммутатору отправлять пакет на все физические порты с подключенным каналом (т. Е. С подключением L1). Компьютер с указанным адресом уровня 3 будет отвечать одноадресным ARP-ответом. ARP происходит полностью через адресацию L2 (результаты ARP кэшируются для последующего поиска, поэтому не нужно продолжать посылать запросы ARP).
следующий пакет эхо-запроса ICMP создается. Адрес L2 источника будет Ether-адресом исходного компьютера. Источником L3 будет IP-адрес исходного компьютера. Адрес L2 и L3 получателя будут теми, которые обнаружены из ARP. Пакет затем отправляется по проводу на коммутатор.
Коммутатор проверяет адрес L2 назначения и смотрит в него CAM таблица, чтобы определить, какой физический порт имеет указанный адрес Ether. Пакет затем отправляется по проводам на правильный физический порт.
когда целевой компьютер получает его, сначала он проверяет адрес L2, чтобы убедиться, что он совпадает с адресом L2 физического интерфейса, который получил пакет. Если он совпадает, он проверяет адрес L3, чтобы убедиться, что он совпадает с адресом уровня 3, назначенным физическому интерфейсу. Если все это проверено, то пакет будет обрабатываться протоколами верхнего уровня (в этом случае ICMP, обрабатывается ядром). Если нет, пакет отбрасывается.
Для ответа ICMP все работает примерно так же, за исключением того, что отвечающему компьютеру не нужно отправлять запрос ARP, поскольку он получил пакет с парой L2 / L3, он может установить его непосредственно в кэш ARP.