Протокол IP : Универсальная инкапсуляция маршрутизации (GRE)

Как работает сохранение соединения GRE

5 апреля 2016 - Машинный перевод
Другие версии: PDF-версия:pdf | Английский (22 августа 2015) | Отзыв


Содержание


Введение

Этот документ содержит обзор применения сообщения поддержки активности общей инкапсуляции маршрутов (GRE).

Предварительные условия

Требования

Для использования данного документа требуется знание следующих тем:

Используемые компоненты

Сведения, содержащиеся в данном документе, касаются следующих версий программного и аппаратного обеспечения:

  • Маршрутизатор Cisco 7505

  • Программное обеспечение IOS� Cisco, которое поддерживает GRE по IPSec

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

Условные обозначения

Дополнительные сведения об условных обозначениях см. в документе Технические рекомендации Cisco. Условные обозначения.

Общие сведения

Функция сообщения поддержки активности GRE выполняет команду интерфейса поддержки активности для туннелей и позволяет вам настраивать пакеты Keepalive для Туннелей GRE "точка-точка". Можно настроить пакеты Keepalive с командой keepalive, и дополнительно с ее новым расширением.

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

  • Туннели GRE предоставляют многопротокольные локальные сети по магистрали на базе одного протокола.

  • Туннели GRE предоставляют обходной приемы для сетей, которые содержат протоколы с ограниченными счетчиками переходов.

  • Туннели GRE подключают прерывистые подсети.

  • Туннели GRE позволяют VPN по глобальным сетям (WAN).

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

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

Механизм проверки подлинности туннеля

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

Функциональное описание

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

Механизм проверки подлинности туннеля также удовлетворяет эти дополнительные требования:

  • Функции механизма проверки подлинности туннеля, даже если далекая оконечная точка туннеля не поддерживает пакеты Keepalive.

  • Механизм проверки подлинности туннеля инициирует пакеты Keepalive.

  • Механизм проверки подлинности туннеля обрабатывает пакеты Keepalive.

  • Механизм проверки подлинности туннеля отвечает на пакеты keepalive дальнего конца, даже когда протокол линии связи туннеля не работает.

Вот пример того, как механизм проверки подлинности туннеля работает (см. рисунок 1):

Рисунок 1 – пример для механизма проверки подлинности туннеля

/image/gif/paws/63760/F1_63760a.gif

Выходные данные

interface tunnel 0                       interface tunnel 0
ip address 1.1.1.1 255.255.255.240       ip address 1.1.1.2 255.255.255.240
tunnel source 128.8.8.8                  tunnel source 129.9.9.9
tunnel destination 129.9.9.9             tunnel destination 128.8.8.8
keepalive 5 4                            keepalive 5 4
interface loopback 0                     interface loopback 0
ip address 128.8.8.8 255.255.255.255     ip address 129.9.9.9 255.255.255.255

Пакет keepalive, который происходит от до B

       ---outer IP header---'      ---inner IP header---'
       =============================================================
       |IP | IP src  | IP dst  | GRE | IP | IP src  | IP dst  | GRE |
       |   |128.8.8.8|129.9.9.9|PT=IP|    |129.9.9.9|128.8.8.8| PT=0|
       =============================================================
                               ----'                         ---'
                                GRE header                    GRE header

При включении пакетов Keepalive на оконечной точке туннеля Маршрутизатора A маршрутизатор в каждом интервале создает внутренний IP - заголовок. В конце заголовка маршрутизатор также добавляет заголовок GRE с Типом протокола (PT) 0, и никакое другое информационное наполнение. Маршрутизатор тогда передает тот пакет через туннель, который приводит к его инкапсуляции с внешним IP - заголовком и заголовку GRE с PT IP. Счетчик проверки подлинности туннеля инкрементно увеличивается одним. Если существует способ достигнуть оконечной точки туннеля дальнего конца, и линейный туннельный протокол не не работает из-за других причин, пакет поступает в Маршрутизатор B. С этим тогда совпадают против Туннеля 0, декапсулируют и передают IP - адресу назначения, который является точкой начала туннеля, Маршрутизатором A. По прибытию в Маршрутизатор A снова декапсулирован пакет, и PT проверен. Если результат проверки PT 0, это показывает, что это - пакет keepalive. В таком случае счетчик проверки подлинности туннеля перезагружен к 0, и от пакета сбрасывают.

В случае, если Маршрутизатор B недостижим, Маршрутизатор A продолжает создавать и передавать пакеты keepalive вместе с обычным трафиком. Если line protocol is down, пакеты Keepalive не возвращаются к Маршрутизатору A. Поэтому счетчик сообщений поддержки активности продолжает увеличиваться. Линейный туннельный протокол не ложится спать только, пока счетчик проверки подлинности туннеля остается нолем или меньше, чем установленное значение. Если то условие не истинно, в следующий раз, когда вы пытаетесь передать поддержку активности к Маршрутизатору B, протокол линии связи переведен в нерабочее состояние, как только счетчик сообщений поддержки активности достигает настроенного значения keepalive. В состоянии включения/отключения туннель не передает или обрабатывает любой трафик кроме пакетов keepalive. Для этого для работы для пакетов keepalive только туннель должен быть товарищеской встречей передавать-и-получать. Таким образом, туннельный алгоритм поиска должен быть успешным во всех случаях и должен сбросить только от пакетов данных если line protocol is down. Когда пакет keepalive получен, он подразумевает, что оконечная точка туннеля снова достижима. Счетчик проверки подлинности туннеля тогда перезагружен к 0, и протокол линии связи возвращается.

Память и влияние на производительность

Функция не размещает почти дополнительного требования к памяти системы маршрутизатора, и производительность, как ожидают, останется незатронутой своим добавлением. Пакеты keepalive обработаны как обычные пакеты, и таким образом, возможно, что они могут быть отброшены под Условиями большого объема трафика. На данный момент можно изменить количество повторных попыток для контакта с этой проблемой. Если это, оказывается, является несоответствующим в конечном счете, можно поместить локально генерируемые пакеты keepalive в очередь с высоким приоритетом для передачи. Можно тогда установить значение TOS в IP - заголовках к более подходящему значению кроме по умолчанию или установленного значения.

Упаковка факторов

Функция включена в основной код туннеля IP и в подсистему GRE. Поэтому это должно быть доступный с основным пакетом IP, который имеет туннель и подсистемы GRE.

Команды и конфигурация

Этот раздел обращается к команде keepalive, включил и расширил этой функцией только под идентификатором ошибки Cisco CSCuk26449. Другие команды задокументированы в respectiveCisco Руководства Конфигурации IOS и Справочники по командам. [Никакая] поддержка активности <период> команда <retries> выполнена и расширена с помощью второго параметра и доступна в Cisco IOS Software Release 12.2 (8) T и позднее. Это было также перенесено под идентификатором ошибки Cisco CSCuk29980 и CSCuk29983 к Cisco IOS Software Release 12.1E и 12.2S.

Поскольку поддержка активности является командой настройки интерфейса, которая включает пакеты Keepalive на туннельном интерфейсе, только пакеты Keepalive для режима GRE/IP в настоящее время поддерживаются. Второй параметр команды (повторные попытки) видим и доступен только для туннельных интерфейсов. Значения первого параметра могут колебаться от 1 до 32767. Когда значение 0, это эквивалентно "никакой поддержке активности". Этот параметр имеет значение по умолчанию 10. Значения для второго параметра могут колебаться от 1 до 255, и он указывает на количество пакетов Keepalive, которые переданы, но не возвращены, после которого туннельный интерфейс раскрывает протокол линии связи. Пакеты Keepalive на туннельных интерфейсах отключены по умолчанию.

Пример выходных данных и форматы экрана

Этот раздел предоставляет примеры выходных данных.

cisco-7505#configure terminal 
Enter configuration commands, one per line.  End with CNTL/Z.
cisco-7505(config)#interface tunnel 1
cisco-7505(config-if)#?
  access-expression   Build a bridge boolean access expression
  ……………
  keepalive           Enable keepalive			<=====
  ……………
  timeout             Define timeout values for this interface

cisco-7505(config-if)#keepalive ?				<=====
  <0-32767>  Keepalive period (default 10 seconds)

cisco-7505(config-if)#keepalive 5 ?				<=====
  <1-255>    Keepalive retries (default 3 times)
cisco-7505(config-if)#keepalive 5 4				<=====
cisco-7505(config-if)#end

cisco-7505#show interfaces tunnel 1

Tunnel1 is up, line protocol is up 
  Hardware is Tunnel
  Internet address is 10.1.1.1/24
  MTU 1514 bytes, BW 9 Kbit, DLY 500000 usec, rely 255/255, load 1/255
  Encapsulation TUNNEL, loopback not set
  Keepalive set (5 sec), retries 4				<=====
  Tunnel source 9.2.2.1, destination 6.6.6.2
  Tunnel protocol/transport GRE/IP, key disabled, sequencing disabled
  Tunnel TOS 0xF, Tunnel TTL 128
  Checksumming of packets disabled, fast tunneling enabled
  Last input never, output 00:57:05, output hang never
  Last clearing of "show interface" counters never
  Queueing strategy: fifo
  Output queue 0/0, 1 drops; input queue 0/75, 0 drops
  30 second input rate 0 bits/sec, 0 packets/sec
  30 second output rate 0 bits/sec, 0 packets/sec
     0 packets input, 0 bytes, 0 no buffer
     Received 0 broadcasts, 0 runts, 0 giants, 0 throttles
     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
     3 packets output, 1860 bytes, 0 underruns
     0 output errors, 0 collisions, 0 interface resets
     0 output buffer failures, 0 output buffers swapped out

Связанные обсуждения сообщества поддержки Cisco

В рамках сообщества поддержки Cisco можно задавать и отвечать на вопросы, обмениваться рекомендациями и совместно работать со своими коллегами.


Дополнительные сведения


Document ID: 63760