RFC 1702 Generic Routing Encapsulation over IPv4 networks

Network Working Group                                           S. Hanks
Request for Comments: 1702                               NetSmiths, Ltd.
Category: Informational                                            T. Li
                                                            D. Farinacci
                                                               P. Traina
                                                           cisco Systems
                                                            October 1994

Инкапсуляция GRE в сетях IPv4

Generic Routing Encapsulation over IPv4 networks

PDF

Статус документа

Этот документ содержит информацию для сообщества Internet и не задает каких-либо стандартов Internet. Распространение документа не ограничено.

Введение

В предыдущем документе [RFC 1701] был описан механизм GRE для инкапсуляции произвольных пакетов в произвольный транспортный протокол. Данный документ служит дополнением, описывающим использование GRE с протоколом IP. Рассмотрены случаи использования IP в качестве протокола доставки и инкапсулируемого протокола, а также в качестве того и другого одновременно. Документ также описывает использование адресов IP и номеров автономных систем, как части задаваемого отправителем маршрута GRE.

IP в качестве протокола доставки

Пакеты GRE инкапсулируются в IP с использованием типа протокола IP 47.

IP в качестве инкапсулируемого протокола

Пакеты IP инкапсулируются с полем Protocol Type = 0x800.

Для Address Family = 0x800 поле Routing Information будет включать список адресов IP, задающих маршрут, указанный отправителем (IP source route). Первый октет поля Routing Information задает 8-битовое целочисленное смещение от начала SRE1, называемое смещением SRE (SRE Offset). Это смещение указывает первый октет следующего адреса IP. Поле SRE Length указывает общий размер списка адресов IP (IP Address List) в октетах. Формат показан на рисунке

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |        Address Family         |  SRE Offset   |  SRE Length   |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                        IP Address List ...
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Для Address Family = 0xfffe поле Routing Information содержит список номеров автономных систем (АС) и задает указанный отправителем маршрут через АС (AS source route). Третий октет поля Routing Information содержит 8-битовое целочисленное смещение от начала SRE, называемое смещением SRE. Это смещение указывает на первый октет следующего номера АС. Поле SRE Length указывает общий размер списка номеров АС в октетах.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |        Address Family         |  SRE Offset   |  SRE Length   |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                         AS Number List ...
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

IP в качестве инкапсулируемого протокола и протокола доставки

При инкапсуляции IP в IP поля TTL, TOS и опций IP security могут копироваться из инкапсулируемого пакета в заголовок внешнего пакета. Значение поля TTL в инкапсулируемом пакете должно декрементироваться при декапсуляции, чтобы убедиться в том, что время жизни пакета не истекло.

Задаваемые отправителем маршруты IP

Когда система обрабатывает SRE с полем Address Family, указывающим IP source route, она должна использовать значение SRE Offset для определения адреса следующего получателя. Если этот адрес указывает на текущую систему, значение поля SRE Offset следует увеличить на 4 (размер адреса IP). Если значение SRE Offset совпадает со значением поля SRE Length в данной SRE, поле Offset в заголовке GRE следует изменить так, чтобы оно указывало на следующую SRE (при ее наличии). Эту процедуру следует повторять до тех пор, пока адрес следующего получателя не совпадет с адресом данной системы или целиком не завершится обработка SRE.

Если заданный отправителем маршрут не полон, проверяется бит Strict Source Route. Если маршрут строго задан отправителем, а следующим получателем IP является не смежная система, покат должен быть отброшен. В остальных случаях системе следует использовать IP-адрес, заданный полем Offset для замены адреса получателя во внешнем заголовке и пересылки пакета.

Задаваемые отправителем маршруты через АС

Когда система обрабатывает SRE с полем Address Family, указывающим AS source route, она должна использовать значение SRE Offset для определения номера следующей АС. Если следующей указана локальная АС, значение поля SRE Offset следует уменьшить на 2 (размер номера АС). Если значение SRE Offset совпадает со значением поля SRE Length в данной SRE, поле Offset в заголовке GRE следует изменить так, чтобы оно указывало на следующую SRE (при наличии). Эту процедуру следует повторять до тех пор, пока номер следующей АС не совпадет с номером локальной АС или SRE не будет обработана целиком.

Если заданный отправителем маршрут не полон, проверяется бит Strict Source Route. Если маршрут строго задан отправителем, а следующим получателем является не смежная АС, пакет следует отбросить. В остальных случаях следует использовать номер АС, заданный полем Offset для замены адреса получателя во внешнем заголовке и пересылки пакета. Точный механизм определения адреса следующего получателя, определяемого заданным номером АС выходит за рамки данного документа.

Вопросы безопасности

Вопросы безопасности не рассматриваются в этом документе.

Адреса авторов

Stan Hanks

NetSmiths, Ltd.

2025 Lincoln Highway

Edison, NJ 08817

EMail: stan@netsmiths.com

Tony Li

cisco Systems, Inc.

1525 O’Brien Drive

Menlo Park, CA 94025

EMail: tli@cisco.com

Dino Farinacci

cisco Systems, Inc.

1525 O’Brien Drive

Menlo Park, CA 94025

EMail: dino@cisco.com

Paul Traina

cisco Systems, Inc.

1525 O’Brien Drive

Menlo Park, CA 94025

EMail: pst@cisco.com

Перевод на русский язык

Николай Малых

nmalykh@gmail.com

Литература

RFC 1701 Hanks, S., Li, T, Farinacci, D., and P. Traina, «Generic Routing Encapsulation», RFC 1701, NetSmiths, Ltd., and cisco Systems, October 1994.

1Source Route Entry — элемент задаваемого отправителем маршрута.

Запись опубликована в рубрике RFC. Добавьте в закладки постоянную ссылку.