Материал: Проектирование и создание локальной сети малого предприятия

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Для маршрутизации пакета маршрутизатор должен владеть следующей информацией:

·    Адрес назначения

·        Соседний маршрутизатор, от которого он может узнать об удаленных сетях

·        Доступные пути ко всем удаленным сетям

·        Наилучший путь к каждой удаленной сети

·        Методы обслуживания и проверки информации о маршрутизации

Маршрутизатор узнает об удаленных сетях от соседних маршрутизаторов или от сетевого администратора. Затем маршрутизатор строит таблицу маршрутизации, которая описывает, как найти удаленные сети.

Если сеть подключена непосредственно к маршрутизатору, он уже знает, как направить пакет в эту сеть. Если же сеть не подключена напрямую, маршрутизатор должен узнать (изучить) пути доступа к удаленной сети с помощью статической маршрутизации (ввод администратором вручную местоположения всех сетей в таблицу маршрутизации) или с помощью динамической маршрутизации.

Динамическая маршрутизация - это процесс протокола маршрутизации, определяющий взаимодействие устройства с соседними маршрутизаторами. Маршрутизатор будет обновлять сведения о каждой изученной им сети. Если в сети произойдет изменение, протокол динамической маршрутизации автоматически информирует об изменении все маршрутизаторы. Если же используется статическая маршрутизация, обновить таблицы маршрутизации на всех устройствах придется системному администратору.

Процесс IP-маршрутизации

IP-маршрутизация - простой процесс, который одинаков в сетях любого размера. Например, на рисунке 4 показан процесс пошагового взаимодействия хоста А с хостом В в другой сети. В примере пользователь хоста А запрашивает по команде "ping" IP-адрес хоста В. Дальнейшие операции не так просты, поэтому рассмотрим их подробнее:

.     В командной строке пользователь вводит команду "ping" 172.16.20.2. На хосте А генерируется пакет с помощью протоколов сетевого уровня IP и ICMP.

Рисунок 4

.     2. IP обращается к протоколу ARP для выяснения сети назначения для пакета, просматривая IP-адрес и маску подсети хоста А. Это запрос к удаленному хосту, т.е. пакет не предназначен хосту локальной сети, поэтому пакет должен быть направлен маршрутизатору для перенаправления в нужную удаленную сеть.

3.      Чтобы хост А смог послать пакет маршрутизатору, хост должен знать аппаратный адрес интерфейса маршрутизатора, подключенный к локальной сети. Сетевой уровень передает пакет и аппаратный адрес назначения канальному уровню для деления на кадры и пересылки локальному хосту. Для получения аппаратного адреса хост ищет местоположение точки назначения в собственной памяти, называемой кэшем ARP.

.        Если IP-адрес еще не был доступен и не присутствует в кэше ARP, хост посылает широковещательную рассылку ARP для поиска аппаратного адреса по IP-адресу 172.16.10.1. Именно поэтому первый запрос Ping обычно заканчивается тайм-аутом, но четыре остальные запроса будут успешны. После кэширования адреса тайм-аута обычно не возникает.

.        Маршрутизатор отвечает и сообщает аппаратный адрес интерфейса Ethernet, подключенного к локальной сети. Теперь хост имеет всю информацию для пересылки пакета маршрутизатору по локальной сети. Сетевой уровень спускает пакет вниз для генерации эхо-запроса ICMP (Ping) на канальном уровне, дополняя пакет аппаратным адресом, по которому хост должен послать пакет. Пакет имеет IP-адреса источника и назначения вместе с указанием на тип пакета (ICMP) в поле протокола сетевого уровня.

.        Канальный уровень формирует кадр, в котором инкапсулируется пакет вместе с управляющей информацией, необходимой для пересылки по локальной сети. К такой информации относятся аппаратные адреса источника и назначения, а также значение в поле типа, установленное протоколом сетевого уровня. Рисунок 5 показывает кадр, генерируемый на канальном уровне и пересылаемый по локальному носителю. На рисунке 5 показана вся информация, необходимая для взаимодействия с маршрутизатором: аппаратные адреса источника и назначения, IP-адреса источника и назначения, данные, а также контрольная сумма CRC кадра, находящаяся в поле FCS (Frame Check Sequence).

.        Канальный уровень хоста А передает кадр физическому уровню. Там выполняется кодирование нулей и единиц в цифровой сигнал с последующей передачей этого сигнала по локальной физической сети.

Рисунок 5

·    Сигнал достигает интерфейса Ethernet 0 маршрутизатора, который синхронизируется по преамбуле цифрового сигнала для извлечения кадра. Интерфейс маршрутизатора после построения кадра проверяет CRC, а в конце приема кадра сравнивает полученное значение с содержимым поля FCS. Кроме того, он проверяет процесс передачи на отсутствие фрагментации и конфликтов носителя.

·        Проверяется аппаратный адрес назначения. Поскольку он совпадает с адресом маршрутизатора, анализируется поле типа кадра для определения дальнейших действий с этим пакетом данных. В поле типа указан протокол IP, поэтому маршрутизатор передает пакет процессу протокола IP, исполняемому маршрутизатором. Кадр удаляется. Исходный пакет (сгенерированный хостом А) помещается в буфер маршрутизатора.

·        Протокол IP смотрит на IP-адрес назначения в пакете, чтобы определить, не направлен ли пакет самому маршрутизатору. Поскольку IP-адрес назначения равен 172.16.20.2, маршрутизатор определяет по своей таблице маршрутизации, что сеть 172.16.20.0 непосредственно подключена к интерфейсу Ethernet 1.

·        Маршрутизатор передает пакет из буфера в интерфейс Ethernet 1. Маршрутизатору необходимо сформировать кадр для пересылки пакета хосту назначения. Сначала маршрутизатор проверяет свой кэш ARP, чтобы определить, был ли уже разрешен аппаратный адрес во время предыдущих взаимодействий с данной сетью. Если адреса нет в кэше ARP, маршрутизатор посылает широковещательный запрос ARP в интерфейс Ethernet 1 для поиска аппаратного адреса для IP-адреса 172.16.20.2.

·        Хост В откликается аппаратным адресом своего сетевого адаптера на запрос ARP. Интерфейс Ethernet 1 маршрутизатора теперь имеет все необходимое для пересылки пакета в точку окончательного приема. На рисунке 6 показывает кадр, сгенерированный маршрутизатором и переданный по локальной физической сети.

Рисунок 6

Кадр, сгенерированный интерфейсом Ethernet 1 маршрутизатора, имеет аппаратный адрес источника от интерфейса Ethernet 1 и аппаратный адрес назначения для сетевого адаптера хоста В. Важно отметить, что, несмотря на изменения аппаратных адресов источника и назначения, в каждом передавшем пакет интерфейсе маршрутизатора, IP-адреса источника и назначения никогда не изменяются. Пакет никоим образом не модифицируется, но меняются кадры.

·    Хост В принимает кадр и проверяет CRC. Если проверка будет успешной, кадр удаляется, а пакет передается протоколу IP. Он анализирует IP-адрес назначения. Поскольку IP-адрес назначения совпадает с установленным в хосте В адресом, протокол IP исследует поле протокола для определения цели пакета.

·        В нашем пакете содержится эхо-запрос ICMP, поэтому хост В генерирует новый эхо-ответ ICMP с IP-адресом источника, равным адресу хоста В, и IP-адресом назначения, равным адресу хоста А. Процесс запускается заново, но в противоположном направлении. Однако аппаратные адреса всех устройств по пути следования пакета уже известны, поэтому все устройства смогут получить аппаратные адреса интерфейсов из собственных кэшей ARP.

В крупных сетях процесс происходит аналогично, но пакету придется пройти больше участков по пути к хосту назначения.

Таблицы маршрутизации

В стеке TCP/IP маршрутизаторы и конечные узлы принимают решения о том, кому передавать пакет для его успешной доставки узлу назначения, на основании так называемых таблиц маршрутизации (routing tables).

Таблица представляет собой типичный пример таблицы маршрутов, использующей IP-адреса сетей, для сети, представленной на рисунке.

Таблица маршрутизации для Router 2

Рисунок 7

Рисунок 8

В таблице представлена таблица маршрутизации многомаршрутная, так как содержится два маршрута до сети 116.0.0.0. В случае построения одномаршрутной таблицы маршрутизации, необходимо указывать только один путь до сети 116.0.0.0 по наименьшему значению метрики.

Как нетрудно видеть, в таблице определено несколько маршрутов с разными параметрами. Читать каждую такую запись в таблице маршрутизации нужно следующим образом:

Чтобы доставить пакет в сеть с адресом из поля Сетевой адрес и маской из поля Маска сети, нужно с интерфейса с IP-адресом из поля Интерфейс послать пакет по IP-адресу из поля Адрес шлюза, а "стоимость" такой доставки будет равна числу из поля Метрика.

В этой таблице в столбце "Адрес сети назначения" указываются адреса всех сетей, которым данный маршрутизатор может передавать пакеты. В стеке TCP/IP принят так называемый одношаговый подход к оптимизации маршрута продвижения пакета (next-hop routing) - каждый маршрутизатор и конечный узел принимает участие в выборе только одного шага передачи пакета. Поэтому в каждой строке таблицы маршрутизации указывается не весь маршрут в виде последовательности IP-адресов маршрутизаторов, через которые должен пройти пакет, а только один IP-адрес - адрес следующего маршрутизатора, которому нужно передать пакет. Вместе с пакетом следующему маршрутизатору передается ответственность за выбор следующего шага маршрутизации. Одношаговый подход к маршрутизации означает распределенное решение задачи выбора маршрута. Это снимает ограничение на максимальное количество транзитных маршрутизаторов на пути пакета.

Для отправки пакета следующему маршрутизатору требуется знание его локального адреса, но в стеке TCP/IP в таблицах маршрутизации принято использование только IP-адресов для сохранения их универсального формата, не зависящего от типа сетей, входящих в интерсеть. Для нахождения локального адреса по известному IP-адресу необходимо воспользоваться протоколом ARP.

Одношаговая маршрутизация обладает еще одним преимуществом - она позволяет сократить объем таблиц маршрутизации в конечных узлах и маршрутизаторах за счет использования в качестве номера сети назначения так называемого маршрута по умолчанию - default (0.0.0.0), который обычно занимает в таблице маршрутизации последнюю строку. Если в таблице маршрутизации есть такая запись, то все пакеты с номерами сетей, которые отсутствуют в таблице маршрутизации, передаются маршрутизатору, указанному в строке default. Поэтому маршрутизаторы часто хранят в своих таблицах ограниченную информацию о сетях интерсети, пересылая пакеты для остальных сетей в порт и маршрутизатор, используемые по умолчанию. Подразумевается, что маршрутизатор, используемый по умолчанию, передаст пакет на магистральную сеть, а маршрутизаторы, подключенные к магистрали, имеют полную информацию о составе интерсети.

Кроме маршрута default, в таблице маршрутизации могут встретиться два типа специальных записей - запись о специфичном для узла маршруте и запись об адресах сетей, непосредственно подключенных к портам маршрутизатора.

Специфичный для узла маршрут содержит вместо номера сети полный IP-адрес, то есть адрес, имеющий ненулевую информацию не только в поле номера сети, но и в поле номера узла. Предполагается, что для такого конечного узла маршрут должен выбираться не так, как для всех остальных узлов сети, к которой он относится. В случае, когда в таблице есть разные записи о продвижении пакетов для всей сети N и ее отдельного узла, имеющего адрес N,D, при поступлении пакета, адресованного узлу N,D, маршрутизатор отдаст предпочтение записи для N,D.

Записи в таблице маршрутизации, относящиеся к сетям, непосредственно подключенным к маршрутизатору, в поле "Метрика" содержат нули ("подключено").

Алгоритмы маршрутизации

Основные требования к алгоритмам маршрутизации:

·    точность;

·        простота;

·        надёжность;

·        стабильность;

·        оптимальность.

Существуют различные алгоритмы построения таблиц для одношаговой маршрутизации. Их можно разделить на три класса:

·    алгоритмы простой маршрутизации;

·        алгоритмы фиксированной маршрутизации;

·        алгоритмы адаптивной маршрутизации.

Независимо от алгоритма, используемого для построения таблицы маршрутизации, результат их работы имеет единый формат. За счет этого в одной и той же сети различные узлы могут строить таблицы маршрутизации по своим алгоритмам, а затем обмениваться между собой недостающими данными, так как форматы этих таблиц фиксированы. Поэтому маршрутизатор, работающий по алгоритму адаптивной маршрутизации, может снабдить конечный узел, применяющий алгоритм фиксированной маршрутизации, сведениями о пути к сети, о которой конечный узел ничего не знает.

Источник: https://www.bibliofond.ru/view.aspx?id=897109