Сердюк Ирина Ист-71 5. Передача запроса на www.google.ru (209.85.129.99) от PC 1. PC запрашивает веб-страницу google.ru 2. PC формирует HTTP-пакет (запрос) на сервер WWW Параметры пакета: IP source = IP1 (209.85.7.2) IP destination = IP8 (209.85.129.99) TCP: SourcePort = 209.85.7.0 DestPort = 8080 3. Смотрим таблицу маршрутизации PC RIB PC: 0.0.0.0 /0 -> IP2 (IP2 – IP шлюза) 4. Ethernet среда - среда с множественным доступом, поэтому необходимо узнать MAC 5. PC формирует ARP-request, который содержит Ethi source MAC = MAC1 (MAC = 00-0C-F1-56-98-AD) Dest MAC = Broadcast ARP: MAC? <= IP2 (т.е. необходимо узнать какой MAC у IP2) 6. Данный кадр Ethi ARP-запрос приходит на sw1. Поскольку кадр широковещательный, он передается по всем портам свитча. 7. Маршрутизатор R4 принимает ARP-запрос на порту E0 8. Маршрутизатор R4 анализирует ARP-запрос (сначала удаляет Ethernet –заголовок, по полю Ethertype понимает, что это ARP-запрос и передает его на анализ соответствующему процессу. ARP-процесс понимает, что отправитель запроса пытается узнать MAC-адрес для IP-адреса, принадлежащего маршрутизатору) request FF.. .. .. .. FF MAC1 Ethertype=ARP DA-? SA-MAC1 IPDA = IP2 IPSA = IP1 9. ARP-процесс формирует ответный кадр. Ответ ARP представляет собой запрос ARP, в котором заполнен Ethernet address (DA-MAC2): reply MAC1 MAC2 ARP DA-MAC2 SA-MAC1 IPDA = IP2 IPSA = IP1 Кроме того маршрутизатор R4 добавляет в свой ARP-кэш привязку IP1; MAC1 Сердюк Ирина Ист-71 10. ARP-ответ передается в выходную очередь интерфейса E0 11. Кадр с ARP-ответом поступает на порт E1 коммутатора sw1 Коммутатор sw1 смотрит свою таблицу коммутации и определяет, что кадр необходимо передать на порт E0 и кроме того коммутатор добавляет в свою таблицу запись MAC2 – E1. 12. PC принимает Ethernet кадр с ARP-ответом В итоге PC узнает какой MAC-адрес у шлюза по умолчанию 13. Компьютер PC упаковывает сформированный ранее HTTP-запрос (пункт 2) в Ethernetкадр, в котором MAC2 MAC1 0800 DA-MAC2 SA-MAC1 IPDA = IP8 IPSA = IP1 IP1 = 209.85.7.2 (PC) IP8 = 209.85.129.99 (google.ru) Дальше кадр передается на sw1 14. Кадр поступает на коммутатор sw1, который его передает на порт E1 в соответствии с таблицей коммутации, и попутно обновляет данные таблицы коммутации 15. Ethernet кадр принимается портом E0 маршрутизатора R4 R1 анализирует Ethernet-заголовок, в котором видит, что пакет предназначен именно ему (на Ethernet уровне). Анализирует поле ethertype (ethertype = 0800), понимает , что это Ipпакет, отбрасывает Ethernet-заголовок и передает его на обработку IP-уровню (поступает на вход таблицы маршрутизации). R4 просматривает свою таблицу маршрутизации, чтобы понять куда передать пакет Предположим, что маршрутизатор R4 определил, что пакет необходимо передать на выходной интерфейс E1 маршрутизатору R5 на адрес IP4 16. Маршрутизатор R4 просматривает свой ARP-кэш, пытаясь определить известен ли ему MAC-адрес для адреса IP4. Для простоты предположим, что такая информация есть и она извлекается из таблицы (т.е. информация о привязки MAC-адреса к IP-адресу IP4) (В противном случае повторяются пункты 4-12) 17. Формируется новый Ethernet-кадр MAC4 MAC1 Ethertype=0800 DA-MAC4 SA-MAC1 IPDA = IP8 IPSA = IP1 Сердюк Ирина Ист-71 18. Кадр принимается маршрутизатором R5. R5 производит аналогичные действия маршрутизатору R4, в частности определяет, что пакет необходимо передать в сеть, которая является непосредственно присоединенной к R5 на интерфейсе S0. 19. Так как на выходе S0 маршрутизатора R5 среда serial, нет необходимости узнавать MAC-адрес. 20. Формируется hdlc-кадр, который содержит флаг адрес = IP8(?) управляющее поле = I информационное поле CRC флаг 21. hdlc-кадр принимается портом S1 маршрутизатора R3. R3 анализирует кадр и понимает, что это IP-пакет – передает его на обработку IP-уровню. R3 просматривает свою таблицу маршрутизации, чтобы понять куда передать пакет, и понимает, что пакет необходимо передать в сеть, которая является непосредственно присоединенной к R3 на интерфейсе E0 22. Поэтому маршрутизатор R3 по своей ARP-таблице пытается узнать MAC-адрес для IP8. Предположим такая информация в таблице есть. Соответственно R3 формирует кадр с парамертами MAC8 MAC1 Ethertype=0800 DA-MAC8 SA-MAC1 IPDA = IP8 IPSA = IP1 и передает его на порт E0 23. WWW сервер принимает Ethernet-кадр, понимает, что этот кадр предназначен ему, отбрасывает Ethernet-заголовок, передает его IP-уровню. На IP-уровне анализируется IPзаголовок, определяется, что IP-пакет предназначен WWW-серверу, что в поле полезной нагрузки у нас протокол TCP. Пакет передается на транспортный уровень, на котором анализируется HTTP-заголовок и определяется, что информацию необходимо передать процессу WWW (это определяется по номеру порта 8080). 24. www процесс получает данные, понимает, что это WWW-запрос и пытается его разрешить.