
GEK / Перечень вопросов 2014_ВКСС
.pdfМетоды
Метод HTTP (англ. HTTP Method) — последовательность из любых символов, кроме управляющих и разделителей, указывающая на основную операцию над ресурсом. Обычно метод представляет собой короткое английское слово, записанное заглавными буквами. Обратите внимание, что название метода чувствительно к регистру.
Каждый сервер обязан поддерживать как минимум методы GET и HEAD. Если сервер не распознал указанный клиентом метод, то он должен вернуть статус 501 (Not Implemented). Если серверу метод известен, но он неприменим к конкретному ресурсу, то возвращается сообщение с кодом 405 (Method Not Allowed). В обоих случаях серверу следует включить в сообщение ответа заголовок Allow со списком поддерживаемых методов.
Кроме методов GET и HEAD, часто применяется метод POST.
OPTIONS Используется для определения возможностей веб-сервера или параметров соединения для конкретного ресурса. В ответ серверу следует включить заголовок Allow со списком поддерживаемых методов. Также в заголовке ответа может включаться информация о поддерживаемых расширениях.
Предполагается, что запрос клиента может содержать тело сообщения для указания интересующих его сведений. Формат тела и порядок работы с ним в настоящий момент не определён. Сервер пока должен его игнорировать. Аналогичная ситуация и с телом в ответе сервера.
Для того, чтобы узнать возможности всего сервера, клиент должен указать в URI звёздочку — «*». Запросы «OPTIONS * HTTP/1.1» могут также применяться для проверки работоспособности сервера (аналогично «пингованию») и тестирования на предмет поддержки сервером протокола HTTP версии 1.1.
Результат выполнения этого метода не кэшируется.
GET
Используется для запроса содержимого указанного ресурса. С помощью метода GET можно также начать какойлибо процесс. В этом случае в тело ответного сообщения следует включить информацию о ходе выполнения процесса.
Клиент может передавать параметры выполнения запроса в URI целевого ресурса после символа «?»:
GET /path/resource?param1=value1¶m2=value2 HTTP/1.1
HEAD
Аналогичен методу GET, за исключением того, что в ответе сервера отсутствует тело. Запрос HEAD обычно применяется для извлечения метаданных, проверки наличия ресурса (валидация URL) и чтобы узнать, не изменился ли он с момента последнего обращения.
Заголовки ответа могут кэшироваться. При несовпадении метаданных ресурса с соответствующей информацией в кэше копия ресурса помечается как устаревшая.
POST
Применяется для передачи пользовательских данных заданному ресурсу. Например, в блогах посетители обычно могут вводить свои комментарии к записям в HTML-форму, после чего они передаются серверу методом POST и он помещает их на страницу. При этом передаваемые данные (в примере с блогами — текст комментария) включаются в тело запроса. Аналогично с помощью метода POST обычно загружаются файлы на сервер.
В отличие от метода GET, метод POST не считается идемпотентным, то есть многократное повторение одних и тех же запросов POST может возвращать разные результаты (например, после каждой отправки комментария будет появляться очередная копия этого комментария).
При результате выполнения 200 (Ok) в тело ответа следует включить сообщение об итоге выполнения запроса. Если был создан ресурс, то серверу следует вернуть ответ 201 (Created) с указанием URI нового ресурса в заголовке Location.
Сообщение ответа сервера на выполнение метода POST не кэшируется.
PUT
Применяется для загрузки содержимого запроса на указанный в запросе URI. Если по заданному URI не существовало ресурса, то сервер создаёт его и возвращает статус 201 (Created). Если же был изменён ресурс,
то сервер возвращает 200 (Ok) или 204 (No Content). Сервер не должен игнорировать некорректные заголовки Content-*, передаваемые клиентом вместе с сообщением. Если какой-то из этих заголовков не может быть распознан или не допустим при текущих условиях, то необходимо вернуть код ошибки 501 (Not Implemented).
Фундаментальное различие методов POST и PUT заключается в понимании предназначений URI ресурсов. Метод POST предполагает, что по указанному URI будет производиться обработка передаваемого клиентом содержимого. Используя PUT, клиент предполагает, что загружаемое содержимое соответствует находящемуся по данному URI ресурсу.
Сообщения ответов сервера на метод PUT не кэшируются.
PATCH
Аналогично PUT, но применяется только к фрагменту ресурса.
DELETE
Удаляет указанный ресурс.
TRACE
Возвращает полученный запрос так, что клиент может увидеть, какую информацию промежуточные серверы добавляют или изменяют в запросе.
LINK
Устанавливает связь указанного ресурса с другими.
UNLINK
Убирает связь указанного ресурса с другими.
CONNECT
Преобразует соединение запроса в прозрачный TCP/IP туннель, обычно чтобы содействовать установлению защищенного SSL соединения через нешифрованный прокси.
14. Маршрутизация в глобальных вычислительных сетях. Перенаправление маршрутов в сети TCP/IP.
Протокол IP (Internet_протокол) является маршрутизируемым протоколом сети Internet. Пакеты маршрутизируются по оптимальному пути от отправителя к получателю на основе уникальных идентификаторов
– IP-адресов. Данные могут быть правильно доставлены получателю в том случае, если в сети требуемым образом работают механизмы пересылки пакетов, устройства, преобразующие данные из одного формата в другой, а также протоколы с установлением и без установления соединения.
Маршрутизируемые и маршрутизирующие протоколы
Протоколом называется основанный на стандартах набор правил, определяющий принципы взаимодействия компьютеров в сети. Протокол также задает общие правила взаимодействия разнообразных приложений, сетевых узлов или систем, создавая таким образом единую среду передачи. Взаимодействующие друг с другом компьютеры обмениваются данными; чтобы принять и обработать сообщения с данными, компьютерам необходимо знать, как сформированы сообщения и что они означают. Примерами использования различных форматов сообщений в разных протоколах могут служить установление соединения с удаленной машиной, отправка сообщений по электронной почте или передача файлов и данных; интуитивно понятно, что разные службы используют разные сообщения.
Протокол описывает:
формат сообщения, которому приложения обязаны следовать;
способ обмена сообщениями между компьютерами в контексте определенного действия, такого, как отправка сообщений по сети.
Схожее звучание терминов ‘‘маршрутизируемый протокол’’ и ‘‘протокол маршрутизации’’ нередко приводит к путанице. Приведенные ниже определения помогут прояснить ситуацию.
Маршрутизируемый протокол - это любой сетевой протокол, адрес сетевого уровня которого предоставляет достаточное количество информации для доставки пакета от одного сетевого узла другому на основе используемой схемы адресации. Такой протокол задает форматы полей внутри
пакета. Пакеты обычно передаются от одной конечной системы другой. Маршрутизируемый протокол использует таблицу маршрутизации для пересылки пакетов. В их число входят:
Internet протокол (IP);
протокол межсетевого пакетного обмена (Internetwork Packet Exchange - IPX);
протокол AppleTalk.
Протокол маршрутизации — это протокол, который поддерживает маршрутизируемые протоколы и предоставляет механизмы обмена маршрутной информацией. Сообщения протокола маршрутизации передаются между маршрутизаторами. Протокол маршрутизации позволяет маршрутизаторам обмениваться информацией друг с другом для обновления записей и поддержки таблиц маршрутизации. Ниже приводятся некоторые примеры протоколов маршрутизации TCP/IP:
протокол маршрутной информации (Routing Information Protocol — RIP);
протокол маршрутизации внутреннего шлюза (Interior Gateway Routing Protocol — IGRP);
усовершенствованный протокол маршрутизации внутреннего шлюза (Enhanced Interior Gateway Routing Protocol — EIGRP);
протокол первоочередного обнаружения кратчайших маршрутов (Open Shortest Path First -
OSPF).
Чтобы протокол был маршрутизируемым, в нем должны наличествовать механизмы назначения как номера сети, так и номера узла для каждого отдельного сетевого устройства. В некоторых протоколах, таких, как, например, IPX, необходимо назначить только адрес сети, поскольку в качестве адреса устройства эта технология использует физический адрес (MAC-адрес) устройства. Другие протоколы, такие, как IP, требуют, чтобы явно был задан весь адрес и сетевая маска.
Для создания маршрутизируемой сети необходимы как IP-адрес, так и маска сети. Сетевая маска делит 32-битовый IP-адрес на сетевую часть и адрес узла. Протокол IPX использует MAC-адрес, объединенный с установленным администратором номером сети, для создания полного адреса и не требует использования сетевой маски. При использовании IP-технологий адрес сети вычисляется путем сравнения полного адреса и маски подсети.
Сетевая маска позволяет рассматривать группу последовательных IP-адресов как единое целое. Без такой возможности группировки адресов потребовался бы механизм маршрутизации для каждого отдельного узла. Такая схема была бы непригодна для миллионов узлов, работающих в сети Internet. На рис. 10.2 показано, что все 254 адреса в диапазоне от 192.168.10.1 до 192.168.10.254 могут быть представлены одним сетевым адресом 192.168.10.0. Такая возможность позволяет адресовать информацию любому из этих узлов, используя соответствующий адрес сети. Таким образом, таблицы маршрутизации должны содержать всего одну запись 192.168.10.0, вместо 254 записей для каждого отдельного узла.
Чтобы маршрутизация могла правильно функционировать, рекомендуется использовать группирование адресов.
IP как маршрутизируемый протокол
Протокол IP является наиболее широко распространенной реализацией иерархической схемы сетевой адресации. Используемый в сети Internet, протокол IP не отвечает за установку соединений, не является надежным и позволяет реализовать только негарантированную доставку данных. Термин
протокол без установления соединения (connectionless) означает, что для взаимодействия не требуется выделенный канал, как это происходит во время телефонного звонка, и не существует процедуры вызова перед началом передачи данных между сетевыми узлами. Протокол IP выбирает наиболее эффективный маршрут из числа доступных на основе решения, принятого протоколом маршрутизации. Отсутствие надежности и негарантированная доставка не означает, что система работает плохо и ненадежно, а указывает лишь на то, что протокол IP не предпринимает никаких усилий, чтобы проверить, был ли доставлен пакет по назначению. Эти функции делегированы протоколам верхних уровней.
Информация, проходя сверху вниз по уровням OSI-модели, на каждом из уровней надлежащим образом обрабатывается. На сетевом уровне данные инкапсулируются внутрь пакетов, зачастую называемых дейтаграммами.
Протокол IP распознает формат заголовка пакета (включая адресную часть и другую служебную информацию), но никоим образом не заботится о фактических данных. Он принимает любые данные, переданные протоколами верхнего уровня.
Пересылка пакетов и коммутация внутри маршрутизатора
Заголовок и конец фрейма отбрасываются и заменяются новыми каждый раз при прохождении движущимся по сети пакетом маршрутизирующего устройства третьего уровня. Причина этого состоит в том, что блоки информации второго уровня (фреймы) используются для локальной доставки информации, в то время как блоки третьего уровня (пакеты) предназначены для сквозной передачи данных согласно схеме адресации.
Ethernet-фреймы второго уровня предназначены для работы внутри широковещательных доменов с назначенными каждому сетевому устройству MAC-адресами. Фреймы второго уровня других типов, такие, как последовательные двухточечные соединения и Frame Relay распределенных сетей (сетей WAN), используют свою собственную схему адресации второго уровня. Принципиальным является то, что, независимо от используемой схемы адресации второго уровня, все они разработаны для использования внутри одного широковещательного домена второго уровня. При прохождении данными через устройство третьего уровня информация второго уровня изменяется.

Схема обработки фрейма маршрутизатором показана на рисунке 2
Рисунок 2 Изменение пакета в процессе инкапсуляции в маршрутизаторе
Из пакета, приходящего на интерфейс маршрутизатора, извлекается MAC-адрес и проверяется, адресован ли этот пакет непосредственно какому-либо узлу либо интерфейсу или он является широковещательным; та же процедура выполняется всеми устройствами внутри домена коллизий. В любом из указанных вариантов пакет будет принят и обработан; в противном случае пакет будет отброшен, поскольку был адресован другому устройству в домене коллизий. Таким образом, домен коллизий - это разделяемая среда передачи данных, в которой устройства работают в режиме конкуренции. На основании значения, содержащегося в поле контрольной суммы, с помощью циклического избыточного кода (Cyclical Redundancy Check — CRC), извлеченного из окончания полученного фрейма, проверяется, не были ли данные повреждены. Если проверка дает отрицательный результат, такой фрейм отбрасывается. В случае положительного результата проверки заголовок и окончание фрейма удаляются, и пакет передается на третий уровень. Далее выполняется проверка, адресован ли пакет маршрутизатору или потребуется его дальнейшая маршрутизация на пути к пункту назначения. Пакеты, адресованные маршрутизатору в качестве IPадреса получателя, содержат адрес одного из интерфейсов маршрутизатора. У таких пакетов удаляется заголовок, и они передаются на четвертый уровень. Если пакету предстоит маршрутизация, он сравнивается с записями в таблице маршрутизации. Если будет найдено точное соответствие или существует стандартный маршрут, пакет будет отправлен на интерфейс, указанный в соответствующей записи таблицы маршрутизации.
Когда пакет коммутируется на выходной интерфейс, новое значение CRC добавляется в конец фрейма и, в зависимости от типа интерфейса (Ethernet, Frame Relay или последовательный), пакету добавляется соответствующий заголовок. После этого фрейм пересылается в другой широковещательный домен, являющийся следующей частью маршрута к конечному пункту назначения.
Технология маршрутизации
Маршрутизация является функцией третьего уровня модели OSI. Она основана на иерархической схеме, которая позволяет группировать отдельные адреса и работать с группами как с единым целым до тех пор, пока не потребуется установить индивидуальный адрес для окончательной доставки данных. Под термином ‘‘маршрутизация’’ подразумевают процесс определения наиболее эффективного пути от одного устройства к другому. Основным устройством, отвечающим за осуществление процесса маршрутизации, является маршрутизатор.
Маршрутизатор выполняет две ключевые функции:
поддерживает таблицы маршрутизации и обменивается информацией об изменениях в топологии сети с другими маршрутизаторами. Эта функция реализуется с помощью одного или нескольких протоколов маршрутизации для передачи сетевой информации другим маршрутизаторам;
когда пакеты приходят на один из интерфейсов, маршрутизатор, руководствуясь таблицей маршрутизации, должен определить, куда именно следует отправить пакет. Он перенаправляет пакеты на выбранный интерфейс, создает фреймы и затем пересылает их.

Маршрутизатор является устройством сетевого уровня и использует одну или несколько метрик маршрутизации (routing metric), для того чтобы установить оптимальный путь, по которому должен следовать сетевой трафик. Метрика маршрутизации - это параметр, по которому определяется наиболее предпочтительный маршрут. Протоколы маршрутизации используют различные комбинации параметров для расчета метрик.
Для определения наилучшего межсетевого маршрута вычисляются различные комбинации компонентов метрики: количество ретрансляций (т.е. транзитных узлов), полоса пропускания, задержки, надежность, загрузка и стоимость. Маршрутизаторы объединяют сетевые сегменты или целые сети. Фреймы данных они передают на основе информации протокола третьего уровня. Маршрутизаторы принимают логическое решение о наилучшем маршруте доставки данных между сетями и отправляют пакеты в соответствующий исходящий порт для последующей инкапсуляции и пересылки. Процессы инкапсуляции и декапсуляции происходят каждый раз, когда пакеты проходят через маршрутизатор и данные передаются от одного устройства другому (рис. 10.12). При выполнении инкапсуляции поток данных разбивается на сегменты, добавляются необходимые заголовки и концы, после чего данные передаются по сети. Декапсуляция — это обратный процесс, при котором удаляются заголовки и концы, а данные собираются в неразрывный поток. Маршрутизаторы принимают фреймы от устройств локальной сети (например, рабочих станций) и на основе информации третьего уровня пересылают их по сети.
Маршрутизацию часто путают с коммутацией второго уровня, которая, как может показаться при поверхностном рассмотрении, выполняет те же функции. Принципиальное различие состоит в том, что коммутация реализована на втором уровне модели OSI, а маршрутизация - на третьем. Такое принципиальное отличие означает, что маршрутизация и коммутация используют разную информацию для организации передачи данных от отправителя получателю.
Коммутатор передает фрейм маршрутизатору на основе его MAC-адреса. Маршрутизатор анализирует адрес получателя третьего уровня в пакете для принятия решения о выборе маршрута. Стандартный шлюз — это маршрутизатор, находящийся в той же сети или подсети, что и узел Х. Подобно тому, как коммутатор второго уровня хранит таблицу известных MAC-адресов, маршрутизатор работает с набором IP-адресов сетей, который формирует базу данных доступных ему сетей, называющуюся таблицей маршрутизации.
Каждый компьютер и Ethernet-интерфейс маршрутизатора поддерживают ARP-таблицу для взаимодействий второго уровня; такие таблицы актуальны только для того широковещательного домена, к которому подключено данное устройство. Маршрутизатор, кроме этого, поддерживает еще и таблицу маршрутизации, которая дает возможность выбирать маршрут для доставки данных за пределы широковещательного домена. Каждая ARP-таблица содержит пары IP и MAC-адресов. Таблица маршрутизации содержит информацию о маршрутах; IP-адреса доступных сетей, значение счетчика транзитных узлов до этих известных сетей и интерфейсы, через которые информация будет отправлена в нужную сеть. Разница между двумя рассмотренными типами адресов состоит в том, что MAC-адреса не организованы по какому-то определенному принципу. Однако этот недостаток не вызывает проблем с управлением сетями, поскольку отдельные сетевые сегменты не содержат большого количества узлов. Если бы IP-адреса подчинялись тем же правилам, сеть Internet просто не смогла бы функционировать. В том случае, если бы IP-адреса не были организованы (иерархически или как-либо еще), то не существовало бы способа определить маршрут для достижения каждого конкретного адреса. Иерархическая организация IP-адресов позволяет рассматривать группы адресов как единое целое до тех пор, пока не потребуется определить адрес индивидуального узла. Понять такой подход в адресации можно на примере библиотеки, хранящей миллионы отдельных страниц в одной большой кипе бумаг. В таком случае воспользоваться необходимым материалом будет невозможно, поскольку нет способа найти необходимый документ. Намного проще воспользоваться нужной информацией, если страницы пронумерованы, переплетены в книги и каждая внесена в каталог.
12.Протокол ARP. ARP-таблица, порядок преобразования адресов, запросы и ответы.
Для отображения IP-адресов в Ethernet адреса используется протокол
ARP (Address Resolution Protocol - адресный протокол). Отображение выполняется только для отправляемых IP-пакетов, так как только в момент отправки создаются заголовки IP и Ethernet.
ARP-таблица для преобразования адресов
Преобразование адресов выполняется путем поиска в таблице. Эта таблица, называемая ARP-таблицей, хранится в памяти и содержит строки для каждого узла сети. В двух столбцах содержатся IP- и Ethernet-адреса. Если требуется преобразовать IP-адрес в Ethernet-адрес, то ищется запись с соответствующим IP-адресом. Ниже приведен пример упрощенной ARPтаблицы.
---------------------------------------------
| IP-адрес Ethernet-адрес |
---------------------------------------------
| |
223.1.2.1 |
08:00:39:00:2F:C3 |
| |
| |
223.1.2.3 |
08:00:5A:21:A7:22 |
| |
| |
223.1.2.4 |
08:00:10:99:AC:54 |
| |
---------------------------------------------
Табл.1. Пример ARP-таблицы
Принято все байты 4-байтного IP-адреса записывать десятичными числами, разделенными точками. При записи 6-байтного Ethernet-адреса каждый байт указывается в 16-ричной системе и отделяется двоеточием.
ARP-таблица необходима потому, что IP-адреса и Ethernet-адреса выбираются независимо, и нет какого-либо алгоритма для преобразования одного в другой. IP-адрес выбирает менеджер сети с учетом положения машины в сети internet. Если машину перемещают в другую часть сети internet, то ее IP-адрес должен быть изменен. Ethernet-адрес выбирает производитель сетевого интерфейсного оборудования из выделенного для него по лицензии адресного пространства. Когда у машины заменяется плата сетевого адаптера, то меняется и ее Ethernet-адрес.
Порядок преобразования адресов
В ходе обычной работы сетевая программа, такая как TELNET, отправляет прикладное сообщение, пользуясь транспортными услугами TCP. Модуль TCP посылает соответствующее транспортное сообщение через модуль IP. В результате составляется IP-пакет, который должен быть передан драйверу Ethernet. IP-адрес места назначения известен прикладной программе, модулю TCP и модулю IP. Необходимо на его основе найти Ethernet-адрес места назначения. Для определения искомого Ethernet-адреса используется ARPтаблица.
Запросы и ответы протокола ARP
Как же заполняется ARP-таблица? Она заполняется автоматически модулем ARP, по мере необходимости. Когда с помощью существующей ARPтаблицы не удается преобразовать IP-адрес, то происходит следующее:
1.По сети передается широковещательный ARP-запрос.
2.Исходящий IP-пакет ставится в очередь.
Каждый сетевой адаптер принимает широковещательные передачи. Все драйверы Ethernet проверяют поле типа в принятом Ethernet-кадре и передают ARP-пакеты модулю ARP. ARP-запрос можно интерпретировать так: "Если ваш IP-адрес совпадает с указанным, то сообщите мне ваш Ethernet-адрес". Пакет ARP-запроса выглядит примерно так:
-----------------------------------------------------------
| |
IP-адрес отправителя |
223.1.2.1 |
| |
| |
Ethernet-адрес отправителя |
08:00:39:00:2F:C3 |
| |
-----------------------------------------------------------
| |
Искомый |
IP-адрес |
223.1.2.2 |
| |
| |
Искомый |
Ethernet-адрес |
<пусто> |
| |
-----------------------------------------------------------
Табл.2. Пример ARP-запроса
Каждый модуль ARP проверяет поле искомого IP-адреса в полученном ARP-пакете и, если адрес совпадает с его собственным IP-адресом, то посылает ответ прямо по Ethernet-адресу отправителя запроса. ARP-ответ можно интерпретировать так: "Да, это мой IP-адрес, ему соответствует такой-то Ethernet-адрес". Пакет с ARP-ответом выглядит примерно так:
-----------------------------------------------------------
| |
IP-адрес отправителя |
223.1.2.2 |
| |
| |
Ethernet-адрес отправителя |
08:00:28:00:38:A9 |
| |
-----------------------------------------------------------
| |
Искомый |
IP-адрес |
223.1.2.1 |
| |
| |
Искомый |
Ethernet-адрес |
08:00:39:00:2F:C3 |
| |
-----------------------------------------------------------
Табл.3. Пример ARP-ответа
Этот ответ получает машина, сделавшая ARP-запрос. Драйвер этой машины проверяет поле типа в Ethernet-кадре и передает ARP-пакет модулю ARP. Модуль ARP анализирует ARP-пакет и добавляет запись в свою ARPтаблицу.
Обновленная таблица выглядит следующим образом:
---------------------------------------------
| IP-адрес Ethernet-адрес |
---------------------------------------------
| |
223.1.2.1 |
08:00:39:00:2F:C3 |
| |
| |
223.1.2.2 |
08:00:28:00:38:A9 |
| |
| |
223.1.2.3 |
08:00:5A:21:A7:22 |
| |
| |
223.1.2.4 |
08:00:10:99:AC:54 |
| |
---------------------------------------------

Табл.4. ARP-таблица после обработки ответа
Новая запись в ARP-таблице появляется автоматически, спустя несколько миллисекунд после того, как она потребовалась. Как вы помните, ранее на шаге 2 исходящий IP-пакет был поставлен в очередь. Теперь с использованием обновленной ARP-таблицы выполняется преобразование IPадреса в Ethernetадрес, после чего Ethernet-кадр передается по сети. Полностью порядок преобразования адресов выглядит так:
1.По сети передается широковещательный ARP-запрос.
2.Исходящий IP-пакет ставится в очередь.
3.Возвращается ARP-ответ, содержащий информацию о соответствии IP- и Ethernet-адресов. Эта информация заносится в ARP-таблицу.
4.Для преобразования IP-адреса в Ethernet-адрес у IP-пакета, постав ленного в очередь, используется ARP-таблица.
5.Ethernet-кадр передается по сети Ethernet.
Короче говоря, если с помощью ARP-таблицы не удается сразу осуществить преобразование адресов, то IP-пакет ставится в очередь, а необходимая для преобразования информация получается с помощью запросов и ответов протокола ARP, после чего IP-пакет передается по назначению.
Если в сети нет машины с искомым IP-адресом, то ARP-ответа не будет и не будет записи в ARP-таблице. Протокол IP будет уничтожать IP-пакеты, направляемые по этому адресу. Протоколы верхнего уровня не могут отличить случай повреждения сети Ethernet от случая отсутствия машины с искомым IPадресом.
Некоторые реализации IP и ARP не ставят в очередь IP-пакеты на то время, пока они ждут ARP-ответов. Вместо этого IP-пакет просто уничтожается, а его восстановление возлагается на модуль TCP или прикладной процесс, работающий через UDP. Такое восстановление выполняется с помощью таймаутов и повторных передач. Повторная передача сообщения проходит успешно, так как первая попытка уже вызвала заполнение ARP-таблицы.
Следует отметить, что каждая машина имеет отдельную ARP-таблицу для каждого своего сетевого интерфейса.
13. Протокол IP. Прямая и косвенная маршрутизация.
Модуль IP является базовым элементом технологии internet, а центральной частью IP является его таблица маршрутов. Протокол IP использует эту таблицу при принятии всех решений о маршрутизации IP-
пакетов. Содержание таблицы маршрутов определяется администратором сети. Ошибки при установке маршрутов могут заблокировать передачи.
Чтобы понять технику межсетевого взаимодействия, нужно понять то, как используется таблица маршрутов. Это понимание необходимо для успешного администрирования и сопровождения IP-сетей.
Прямая маршрутизация
На рисунке показана небольшая IP-сеть, состоящая из 3 машин: A, B и C. Каждая машина имеет такой же стек протоколов TCP/IP как на рис.1. Каждый сетевой адаптер этих машин имеет свой Ethernet-адрес. Менеджер сети должен присвоить машинам уникальные IP-адреса.
A |
B |
C |
| |
| |
| |
--------------o------ |
o------ |
o----- |
Ethernet 1 |
|
|
IP-сеть "development"
Простая IP-сеть
Когда A посылает IP-пакет B, то заголовок IP-пакета содержит в поле отправителя IP-адрес узла A, а заголовок Ethernet-кадра содержит в поле отправителя Ethernet-адрес A. Кроме этого, IP-заголовок содержит в поле получателя IP-адрес узла B, а Ethernet-заголовок содержит в поле получателя
Ethernet-адрес B.
-----------------------------------------------------
| адрес отправитель получатель |
-----------------------------------------------------
| |
IP-заголовок |
A |
B |
| |
| |
Ethernet-заголовок |
A |
B |
| |
-----------------------------------------------------
Адреса в Ethernet-кадре, передающем IP-пакет от A к B
Вэтом простом примере протокол IP является излишеством, которое мало что добавляет к услугам, предоставляемым сетью Ethernet. Однако протокол IP требует дополнительных расходов на создание, передачу и обработку IP-заголовка. Когда в машине B модуль IP получает IP-пакет от машины A, он сопоставляет IP-адрес места назначения со своим и, если адреса совпадают, то передает датаграмму протоколу верхнего уровня.
Вданном случае при взаимодействии A с B используется прямая маршрутизация.
Косвенная маршрутизация
На рисунке представлена более реалистичная картина сети internet. В данном случае сеть internet состоит из трех сетей Ethernet, на базе которых работают три IP-сети, объединенные шлюзом D. Каждая IP-сеть включает четыре машины; каждая машина имеет свои собственные IP- и Ethernet адреса.
|
|
|
----- D |
------ |
|
|
|
|
|
A |
B |
C |
| |
| |
| |
E |
|
F |
G |
| |
| |
| |
| |
| |
| |
| |
|
| |
| |
----o----- |
o----- |
o----- |
o-- |
| |
--o |
-----o |
----- |
o----- |
o-- |
Ethernet 1 |
|
|
| |
|
Ethernet 2 |
|
|||
IP-сеть "development" |
|
| |
|
IP-сеть |
"accounting" |
||||
|
|
|
|
| |
|
|
|
|
|
|
|
|
|
| |
H |
I |
J |
|
|
|
|
|
|
| |
| |
| |
| |
|
|
|
|
|
|
--o---- |
o----- |
o----- |
o--------- |
|
|
|
|
|
|
|
|
Ethernet |
3 |
|
|
|
|
|
|
|
|
IP-сеть "fuctory" |
Рис. 7. Сеть internet, состоящая из трех IP-сетей
За исключением D все машины имеют стек протоколов, аналогичный показанному на рисунке. Шлюз D соединяет все три сети и, следовательно, имеет три IP-адреса и три Ethernet-адреса. Машина D имеет стек протоколов TCP/IP, похожий на тот, что показан на рис.3, но вместо двух модулей ARP и двух драйверов, он содержит три модуля ARP и три драйвера Ethernet. Обратим внимание на то, что машина D имеет только один модуль IP.
Менеджер сети присваивает каждой сети Ethernet уникальный номер, называемый IP-номером сети. На рис.7 IP-номера не показаны, вместо них используются имена сетей.
Когда машина A посылает IP-пакет машине B, то процесс передачи идет в пределах одной сети. При всех взаимодействиях между машинами, подключенными к одной IP-сети, используется прямая маршрутизация, обсуждавшаяся в предыдущем примере.
Когда машина D взаимодействует с машиной A, то это прямое взаимодействие. Когда машина D взаимодействует с машиной E, то это прямое взаимодействие. Когда машина D взаимодействует с машиной H, то это прямое