home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_q_t / draft-ietf-rps-tunnels-00.txt < prev    next >
Text File  |  1996-11-16  |  12KB  |  397 lines

  1.  
  2.  
  3.  
  4. INTERNET-DRAFT                                            David Meyer
  5. draft-ietf-rps-tunnels-00.txt                    University of Oregon
  6. Category: Standards Track                               November 1996
  7.  
  8.  
  9.                       Representing Tunnels in RPSL
  10.  
  11.  
  12. Status of this Memo
  13.  
  14.    This document provides extensions to the Routing Policy Specification
  15.    Language [RPSL] to provide support for tunnels of various types.
  16.  
  17. Internet Drafts
  18.  
  19.    This document is an Internet-Draft.  Internet-Drafts are working
  20.    documents of the Internet Engineering Task Force (IETF), its areas,
  21.    and its working groups.  Note that other groups may also distribute
  22.    working documents as Internet-Drafts.
  23.  
  24.    Internet-Drafts are draft documents valid for a maximum of six months
  25.    and may be updated, replaced, or obsoleted by other documents at any
  26.    time.  It is inappropriate to use Internet-Drafts as reference
  27.    material or to cite them other than as ``work in progress.''
  28.  
  29.    To learn the current status of any Internet-Draft, please check the
  30.    ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow
  31.    Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe),
  32.    munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
  33.    ftp.isi.edu (US West Coast).
  34.  
  35. Abstract
  36.  
  37.    This document specifies the language and set of semantics describing
  38.    tunnels in the Routing Policy Specification Language (RPSL). It
  39.    defines a new tunnel class, inet-tunnel, and a set of extensions to
  40.    the inet-rtr class. An instance of the inet-tunnel class specifies
  41.    endpoints for tunnels of various encapsulation types, including DVMRP
  42.    [DVMRP], GRE [GRE], and IPv6 [IPV6].
  43.  
  44.    This memo is a product of the Routing Policy System Working Group
  45.    (RPS) in the Operational Requirements area of the Internet
  46.    Engineering Task Force. Submit comments to <rps@isi.edu> or the
  47.    author.
  48.  
  49.  
  50.  
  51.  
  52. Expires May 1997                                                [Page 1]
  53.  
  54.  
  55.  
  56.  
  57.  
  58. INTERNET-DRAFT        Representing Tunnels in RPSL         November 1996
  59.  
  60.  
  61. Introduction
  62.  
  63.  
  64.    Tunneling is a fundamental networking technology that is used in a
  65.    variety circumstances. A common use of tunneling is to incrementally
  66.    deploy a new network layer protocol. The approach is to encapsulate
  67.    ("tunnel") the new protocol through the existing network layer proto-
  68.    col, usually IP. Examples of this approach include include the multi-
  69.    cast backbone [MBONE], where multicast packets are encapsulated in IP
  70.    packets using protocol 4 (IP in IP), and IPv6 backbone [6BONE], where
  71.    IPv6 packets are encapsulated in IP packets using IP protocol 41
  72.    [V6TRNS].
  73.  
  74.    Another use of tunneling is to force congruence between the existing
  75.    (IP unicast) topology and some new topology. Due the special require-
  76.    ments of IP multicast routing, the MBONE is also an example of this
  77.    use of tunneling.
  78.  
  79.    This document describes extensions to RPSL to support general tunnel-
  80.    ing mechanisms. The extensions support point to point and point to
  81.    multipoint tunnels of encapsulation types, including DVMRP, GRE, and
  82.    IPv6. In addition to the encapsulation, a protocol to run inside the
  83.    tunnel can also be specified.
  84.  
  85.  
  86. Extensions to the inet-rtr class
  87.  
  88.  
  89.  
  90.    The inet-rtr class' peer attribute is extended to describe tunnels by
  91.    assigning a new peer type (tunnel). The tunnel peer attribute has the
  92.    following fields:
  93.  
  94.  
  95.    inet-rtr: <name>
  96.     ...
  97.    peer: tunnel <dest-IP1> source=<source-IP1>
  98.                 encap=<encapsulation type>
  99.                 name=<name1>
  100.     ...
  101.    peer: tunnel <dest-IP2> source=<source-IP2>
  102.                 encap=<encapsulation type>
  103.                 name=<name2>
  104.  
  105.  
  106.  
  107.  
  108.  
  109. Expires May 1997                                                [Page 2]
  110.  
  111.  
  112.  
  113.  
  114.  
  115. INTERNET-DRAFT        Representing Tunnels in RPSL         November 1996
  116.  
  117.  
  118.    The type clause of then tunnel peer attribute describes the encapsu-
  119.    lation on the tunnel. The defined encapsulation types are DVMRP
  120.    [DVMRP], GRE [GRE], or IPv6 [IPV6].  The name clause refers to a tun-
  121.    nel object (see below). If there are multiple tunnel peer attributes
  122.    with the same name attribute, then the tunnel is a point to mul-
  123.    tipoint tunnel. Note that a router can be the source of multiple tun-
  124.    nels.
  125.  
  126.    Each inet-rtr tunnel peer instance has a mandatory name, source, and
  127.    destination attributes. The tunnel source attribute must correspond
  128.    to an ifaddr attribute for the inet-rtr instance.
  129.  
  130.    The inet-rtr instance below describes a DVMRP tunnel with source
  131.    204.70.32.6 and destination 204.70.158.61. The tag MBONE-TUNNEL-EUG
  132.    refers to a tunnel instance (see below). The same router has a GRE
  133.    tunnel.
  134.  
  135.  
  136.    inet-rtr: eugene-isp.nero.net
  137.    loacalas: AS4600
  138.    ifaddr:   204.70.32.6 masklen 30
  139.     ...
  140.    peer: tunnel encap=DVMRP name=MBONE-TUNNEL-EUG 204.70.32.6 204.70.158.61
  141.    peer: tunnel encap=GRE name=GRE-TUNNEL-EUG 204.70.32.6  206.42.19.240
  142.     ...
  143.  
  144.  
  145.  
  146. The inet-tunnel Class
  147.  
  148.  
  149.    A tunnel is specified by an instance of the inet-tunnel class. The
  150.    attributes of the inet-tunnel class are described below.
  151.  
  152.  
  153.    inet-tunnel:     <name>
  154.    tunnel-source:   <inet-router key>
  155.    tunnel-sink:     <inet-router key 1>
  156.     ...
  157.    tunnel-sink:     <inet-router key n>
  158.    tunnel-protocol: <protocol>
  159.    tunnel-in: from  <inet-router key1> accept <input-filter-spec1>
  160.    tunnel-in: from  <inet-router key2> accept <input-filter-spec2>
  161.     ...
  162.    tunnel-in:  from <inet-router keyn> accept <input-filter-specn>
  163.  
  164.  
  165.  
  166. Expires May 1997                                                [Page 3]
  167.  
  168.  
  169.  
  170.  
  171.  
  172. INTERNET-DRAFT        Representing Tunnels in RPSL         November 1996
  173.  
  174.  
  175.    tunnel-out: to   <inet-router key1>
  176.                     [action
  177.                       [scope=<ttl1>;]
  178.                       [boundary=<prefixn/masklen1>;]
  179.                       [dvmrp-metric=<n>;]]
  180.                     announce <output-filter-spec1>
  181.    tunnel-out: to   <inet-router key2>
  182.                     [action
  183.                       [scope=<ttl2>;]
  184.                       [boundary=<prefixn/masklen2>;]
  185.                       [dvmrp-metric=<n>;]]
  186.                     announce <output-filter-spec2>
  187.     ...
  188.    tunnel-out: to   <inet-router keyn>
  189.                     [action
  190.                       [scope=<ttln>;]
  191.                       [boundary=<prefixn/masklenn>;]
  192.                       [dvmrp-metric=<n>;]]
  193.                     announce <output-filter-specn>
  194.  
  195.  
  196.  
  197.  
  198.  
  199. inet-tunnel Class Attributes
  200.  
  201.  
  202.  
  203.    inet-tunnel:     mandatory, single valued
  204.    tunnel-source:   mandatory, single valued, class key
  205.    tunnel-sink:     mandatory, single valued, class key
  206.    tunnel-protocol: mandatory, single valued
  207.    tunnel-in:       mandatory, multi-valued
  208.    tunnel-out:      mandatory, multi-valued
  209.  
  210.  
  211.  
  212.    An instance of the inet-tunnel class describes a single tunnel
  213.    (although the tunnel-source may be the source of multiple tunnels).
  214.    The name attribute is a key that is used in an inet-rtr object to
  215.    reference the tunnel object. The tunnel may be point to point or
  216.    point to multipoint. A multipoint tunnel will have more than one
  217.    tunnel-sink value. Each tunnel-sink must have corresponding tunnel-in
  218.    and tunnel-out attributes. The tunnel-protocol is the protocol to run
  219.    "inside" the tunnel. The values for tunnel-protocol include BGP,
  220.  
  221.  
  222.  
  223. Expires May 1997                                                [Page 4]
  224.  
  225.  
  226.  
  227.  
  228.  
  229. INTERNET-DRAFT        Representing Tunnels in RPSL         November 1996
  230.  
  231.  
  232.    RIPv6, DVMRP, PIM-DM, and PIM-SM. See [SSMMC] for an application that
  233.    uses BGP tunneled in GRE.
  234.  
  235.    The inet-tunnel class's tunnel-out attribute includes an action
  236.    clause for which the currently defined actions include: (i).  The
  237.    minimum IP time-to-live required for a packet to be forwarded to the
  238.    specified endpoint (in the case of multipoint tunnels, there may be
  239.    per endpoint scopes), (ii). A boundary attribute describes a class of
  240.    packets that will not be forwarded through the tunnel, and (iii). A
  241.    DVMRP metric. These attributes are particularly relevant to multicast
  242.    routing.
  243.  
  244.    The inet-tunnel class also has routing filter specifications which
  245.    describe filters that are appropriate for the tunnel's routing proto-
  246.    col. In the case of DVMRP, the filter specification
  247.     can be the list of network prefixes accepted or advertised.
  248.  
  249.    Finally, an instance of the inet-tunnel class also has all of the
  250.    administrative fields present in an aut-num class, including guar-
  251.    dian, admin-c, tech-c, notify, mnt-by, changed, and source.
  252.  
  253.  
  254.  
  255.  
  256. Example
  257.  
  258.  
  259.    In this example, the inet-rtr eugene-isp.nero.net has a DVMRP tunnel
  260.    with the sink on the inet-rtr dec3800-2-fddi-0.SanFrancisco.mci.net.
  261.    The tunnel object is called MBONE-TUNNEL-EUG. eugene-isp.nero.net
  262.    will accept any routes. eugene-isp.nero.net will forward packets to
  263.    the DVMRP tunnel if the packet's time-to-live is greater than or
  264.    equal to 64. In addition, eugene-isp.nero.net will not pass any pack-
  265.    ets that match the administrative scope boundary filter (in this
  266.    case, 239.254.0.0/16).
  267.  
  268.    In addition, the inet-rtr eugene-isp.nero.net has a GRE tunnel
  269.    represented by GRE-TUNNEL-EUG.
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280. Expires May 1997                                                [Page 5]
  281.  
  282.  
  283.  
  284.  
  285.  
  286. INTERNET-DRAFT        Representing Tunnels in RPSL         November 1996
  287.  
  288.  
  289.    inet-tunnel:     MBONE-TUNNEL-EUG
  290.    tunnel-source:   eugene-isp.nero.net
  291.    tunnel-sink:     dec3800-2-fddi-0.SanFrancisco.mci.net
  292.    tunnel-protocol: DVMRP
  293.    tunnel-in:       from 204.70.158.61 accept ANY
  294.    tunnel-out:      to 204.70.158.61
  295.                     action
  296.                        scope=64;
  297.                        boundary={239.254.0.0/16};
  298.                        dvmrp-metric=1;
  299.                     announce AS-NERO-TRANSIT
  300.    guardian:    meyer@ns.uoregon.edu
  301.    admin-c:     DMM65
  302.    tech-c:      DMM65
  303.    notify:      nethelp@ns.uoregon.edu
  304.    mnt-by:      MAINT-AS3582
  305.    changed:     meyer@ns.uoregon.edu 961104
  306.    source:      RADB
  307.  
  308.    inet-tunnel:     GRE-TUNNEL-EUG
  309.    tunnel-source:   eugene-isp.nero.net
  310.    tunnel-sink:     ogre.prognet.com
  311.    tunnel-protocol: PIM-DM
  312.    tunnel-in:       from 204.70.158.61 accept ANY
  313.    tunnel-out:      to 206.42.19.240
  314.                     action
  315.                       scope=64;
  316.                     announce ANY
  317.    guardian:    meyer@ns.uoregon.edu
  318.    admin-c:     DMM65
  319.    tech-c:      DMM65
  320.    notify:      nethelp@ns.uoregon.edu
  321.    mnt-by:      MAINT-AS3582
  322.    changed:     meyer@ns.uoregon.edu 961104
  323.    source:      RADB
  324.  
  325.  
  326.  
  327.  
  328.  
  329. Security Considerations
  330.  
  331.    Security considerations are not discussed in this memo.
  332.  
  333. References
  334.  
  335.  
  336.  
  337. Expires May 1997                                                [Page 6]
  338.  
  339.  
  340.  
  341.  
  342.  
  343. INTERNET-DRAFT        Representing Tunnels in RPSL         November 1996
  344.  
  345.  
  346.       [6BONE]  See http://www-6bone.lbl.gov/6bone/
  347.  
  348.       [DVMRP]  T. Pusateri, "Distance Vector Multicast Routing
  349.                Protocol", draft-ietf-idmr-dvmrp-v3-03, September,
  350.                1996.
  351.  
  352.       [GRE]    S. Hanks, T. Li, D. Farinacci, and P. Traina, "Generic
  353.                Routing Encapsulation (GRE)", RFC1701, October, 1994.
  354.  
  355.       [IPV6]   A. Conta and S. Deering, "Generic Packet Tunneling in
  356.                IPv6", draft-ietf-ipngwg-ipv6-tunnel-04.txt, October,
  357.                1996
  358.  
  359.       [MBONE]  See http://www.best.com/~prince/techinfo/misc.html
  360.  
  361.       [RPSL]   C. Alaettinoglu, et. al., "Routing Policy
  362.                Specification Language (RPSL)",
  363.                draft-ietf-rps-rpsl-00.txt, October, 1996.
  364.  
  365.       [SSMMC]  Y. Rekhter, "Auto route injection with tunnelling",
  366.                NANOG, October, 1996. For additional information, see
  367.                http://www.academ.com/nanog/oct1996/multihome.html
  368.  
  369.       [V6TRNS] R. Gilligan and E. Nordmark, "Transition Mechanisms
  370.                for IPv6 Hosts and Routers", RFC 1933, April 1996.
  371.  
  372.  
  373. Author's Address
  374.  
  375.    David Meyer
  376.    University of Oregon
  377.    1225 Kincaid St.
  378.    Eugene, OR 97403
  379.  
  380.    phone:  +1 541.346.1747
  381.  
  382.    email:  meyer@ns.uoregon.edu
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394. Expires May 1997                                                [Page 7]
  395.  
  396.  
  397.