Interested Article - Маршрутизация

Схемы

anycast

broadcast

multicast

unicast

geocast

п р

Маршрутизация ( англ. Routing ) — процесс определения оптимального маршрута данных в сетях связи.

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

Статическими маршрутами могут быть:

  • маршруты, не изменяющиеся во времени;
  • маршруты, изменяющиеся по расписанию;

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

Маршрутизируемые протоколы

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

Программная и аппаратная маршрутизация

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

В современных аппаратных маршрутизаторах для построения таблиц маршрутизации используется специализированное ПО («прошивка»), для обработки же IP-пакетов используется коммутационная матрица (или другая технология аппаратной коммутации), расширенная фильтрами адресов в заголовке IP-пакета.

Аппаратная маршрутизация

Выделяют два типа аппаратной маршрутизации: со статическими шаблонами потоков и с динамически адаптируемыми таблицами .

Статические шаблоны подразумевают разделение всех входящих в маршрутизатор IP-пакетов на виртуальные потоки; каждый поток характеризуется набором признаков для пакета такие как: IP-адресами отправителя/получателя , TCP/UDP-порт отправителя/получателя (в случае поддержки маршрутизации на основании информации 4 уровня), порт , через который пришёл пакет .

Оптимизация маршрутизации при этом строится на идее, что все пакеты с одинаковыми признаками должны обрабатываться одинаково (по одинаковым правилам), при этом признаки проверяются только для первого пакета в потоке (при появлении пакета с набором признаков, не укладывающимся в существующие потоки, создаётся новый поток), по результатам анализа этого пакета формируется статический шаблон, который и используется для определения правил коммутации приходящих пакетов (внутри потока). Обычно время хранения неиспользующегося шаблона ограничено (для освобождения ресурсов маршрутизатора). Ключевым недостатком подобной схемы является инерционность по отношению к изменению таблицы маршрутизации (в случае существующего потока изменение правил маршрутизации пакетов не будет «замечено» до момента удаления шаблона) .

Динамически адаптируемые таблицы используют правила маршрутизации «напрямую», используя маску и номер сети из таблицы маршрутизации для проверки пакета и определения порта, на который нужно передать пакет. При этом изменения в таблице маршрутизации (в результате работы, например, протоколов маршрутизации/резервирования) сразу же влияют на обработку всех новопришедших пакетов. Динамически адаптируемые таблицы также позволяют легко реализовывать быструю (аппаратную) проверку списков доступа .

Программная маршрутизация

Программная маршрутизация выполняется либо специализированным ПО маршрутизаторов (в случае, когда аппаратные методы не могут быть использованы, например, в случае организации туннелей ), либо программным обеспечением на компьютере. В общем случае, любой компьютер осуществляет маршрутизацию своих собственных исходящих пакетов (как минимум, для разделения пакетов, отправляемых на шлюз по умолчанию и пакетов, предназначенных узлам в локальном сегменте сети). Для маршрутизации чужих IP-пакетов, а также построения таблиц маршрутизации используется различное ПО:

Маршрутизация в сети Интернет

Маршрутизация в сети Интернет основана на протоколах TCP/IP .

Передача информации осуществляется с помощью IP-пакетов , заголовок каждого IP-пакета содержит IP-адреса получателя и отправителя пакета. Каждый пакет обрабатывается маршрутизатором в соответствии с его таблицей маршрутизации . Таблица, в свою очередь, содержит информацию, компьютеру с каким адресом направлять пакеты с тем или иным диапазоном адресов. Например, все пакеты определённого диапазона могут направляться другому маршрутизатору, который «отвечает» за этот сегмент.

В ряде случаев маршрутизатор может преобразовывать заголовок пакета, заменяя адреса отправителя и/или получателя пакета. В частности, это происходит при взаимодействии локальной сети (имеющей свои адреса) с глобальной сетью Интернет. В этом случае локальная сеть может быть видна извне по одному глобальному IP-адресу. Для того, чтобы маршрутизатор мог направлять пакеты с одним глобальным адресом тем или иным получателям в локальной сети, используется таблица NAT , где помимо IP-адресов указываются порты, идентифицирующие приложения, устанавливающие соединение. При этом номера портов указаны не в заголовке IP-пакета, а в заголовке сегмента TCP либо UDP (сегменты инкапсулируются в поле данных IP-пакетов). Это позволяет осуществлять взаимно-однозначную идентификацию получателя и отправителя в тех случаях, когда за одним глобальным адресом находится множество компьютеров локальных сетей. Пример таблицы NAT :

Глобальный адрес Локальный адрес
209.165.200.226:1444 192.168.1.15:1444
209.165.200.226:1445 192.168.1.26:1444

См. также

Литература

  • Джо Брокмайер, Ди-Анн Лебланк, Рональд Маккарти, мл. = Linux Routing. — М. : , 2002. — С. 240. — ISBN 1-57870-267-4 .
  • Аллан Леинванд, Брюс Пински. = Cisco Router Configuration. — 2-е изд. — М. : , 2001. — С. 368. — ISBN 1-57870-241-0 .

Примечания

  1. Александр Филимонов. Построение мультисервисных сетей Ethernet. — СПб. : BVH-Петербург, 2007. — ISBN 978-5-9775-0007-4 .
  2. . Дата обращения: 4 октября 2016. 5 октября 2016 года.
Источник —

Same as Маршрутизация