home *** CD-ROM | disk | FTP | other *** search
/ Unix System Administration Handbook 1997 October / usah_oct97.iso / rfc / 1000s / rfc1093.txt < prev    next >
Text File  |  1989-02-26  |  20KB  |  507 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                         H.W. Braun
  8. Request for Comments: 1093                                         Merit
  9.                                                            February 1989
  10.  
  11.  
  12.                     The NSFNET Routing Architecture
  13.  
  14. Status of this Memo
  15.  
  16.    This document describes the routing architecture for the NSFNET
  17.    centered around the new NSFNET Backbone, with specific emphasis on
  18.    the interface between the backbone and its attached networks.
  19.    Distribution of this memo is unlimited.
  20.  
  21. Introduction
  22.  
  23.    This document describes the routing architecture for the NSFNET
  24.    centered around the new NSFNET Backbone, with specific emphasis on
  25.    the interface between the backbone and its attached networks.  It
  26.    reflects and augments thoughts described in [1], discussions during
  27.    the Internet Engineering Task Force meeting at the San Diego
  28.    Supercomputing Center in March 1988, discussions on mailing lists,
  29.    especially on a backbone/regional network working group mailing list,
  30.    and a final discussion held at the IBM T.J. Watson Research Center in
  31.    Yorktown, NY, on the 21st of March 1988.  The Yorktown meeting was
  32.    attended by Hans-Werner Braun (Merit), Scott Brim (Cornell
  33.    University), Mark Fedor (NYSERNet), Jeff Honig (Cornell University),
  34.    and Jacob Rekhter (IBM).  Thanks also to: Milo Medin (NASA), John Moy
  35.    (Proteon) and Greg Satz (Cisco) for discussing this document by email
  36.    and/or phone.
  37.  
  38.    Understanding of [1] is highly recommended prior to reading this
  39.    document.
  40.  
  41. 1. Routing Overview
  42.  
  43.    The new NSFNET backbone forms the core of the overall NSFNET, which
  44.    connects to regional networks (or regional backbones) as well as to
  45.    peer networks (other backbones like the NASA Science Network or the
  46.    ARPANET).  The NSFNET core uses a SPF based internal routing
  47.    protocol, adapted from the IS-IS protocol submitted by ANSI for
  48.    standardization to the ISO.  The ANSI IS-IS protocol is based upon
  49.    work done at Digital Equipment Corporation.  Its adaptation to the
  50.    Internet environment requires additional definitions, most notably to
  51.    the addressing structure, which will be described in a later
  52.    document.  This adaptation was largely done by Jacob Rekhter of IBM
  53.    Research in Yorktown, NY. The RCP/PSP routing architecture was
  54.    largely implemented by Rick Boivie and his colleagues at IBM TCS in
  55.  
  56.  
  57.  
  58. Braun                                                           [Page 1]
  59.  
  60. RFC 1093              NSFNET Routing Architecture          February 1989
  61.  
  62.  
  63.    Milford, CT.  The adaptation of EGP to the NSS routing code and the
  64.    new requirements was done jointly by Jeff Honig (who spent about a
  65.    week to work on this at IBM Research) and Jacob Rekhter.  Jeff is
  66.    integrating the changes done for the new EGP requirements into the
  67.    "gated" distributions.
  68.  
  69.    The IGP derives routing tables from Internet address information.
  70.    This information is flooded throughout the NSFNET core, and the
  71.    individual NSS nodes create or update their routing information after
  72.    running the SPF algorithm over the flooded information.  A detailed
  73.    description of the NSFNET backbone IGP will be documented in a future
  74.    document.
  75.  
  76.    The routing interface between the NSFNET core and regional backbones
  77.    as well as peer networks utilizes the Exterior Gateway Protocol
  78.    (EGP).  The EGP/IGP consistency and integrity at the interface points
  79.    is ensured by filtering mechanisms according to individual nodal
  80.    routing policy data bases [1].  EGP is selected as the routing
  81.    interface of choice between the NSFNET backbone and its regional
  82.    attachments due to its widespread implementation as well its ability
  83.    to utilize autonomous system designators and to allow for effective
  84.    firewalls between systems.  In the longer run the hope is to replace
  85.    the EGP interface with a new inter Autonomous System protocol. Such a
  86.    new protocol should also allow to move the filtering of network
  87.    numbers or Autonomous Network number groups to the regional gateways
  88.    in order for the regional gateways to decide as to what routing
  89.    information they wish to receive.
  90.  
  91.    A general model is to ensure consistent routing information between
  92.    peer networks.  This means that, e.g., the NSFNET core will have the
  93.    same sets of Internet network numbers in its routing tables as are
  94.    present in the ARPANET core.  However, the redistribution of this
  95.    routing information is tightly controlled and based on Autonomous
  96.    System numbers.  For example, ARPANET routes with the ARPANET
  97.    Autonomous System number will not be redistributed into regional or
  98.    other peer networks.  If an NSFNET internal path exists to such a
  99.    network known to the ARPANET it may be redistributed into regional
  100.    networks, subject to further policy verification. Generally it may be
  101.    necessary to have different trust models for peer and subordinate
  102.    networks, while giving a greater level of trust to peer networks.
  103.  
  104.    The described use of EGP, which is further elaborated on in [1]
  105.    requires bidirectional translation of network information between the
  106.    IGP in use and EGP.
  107.  
  108. 2. Conclusions reached during the discussions
  109.  
  110.    The following conclusions were reached during the meeting and in
  111.  
  112.  
  113.  
  114. Braun                                                           [Page 2]
  115.  
  116. RFC 1093              NSFNET Routing Architecture          February 1989
  117.  
  118.  
  119.    subsequent discussions:
  120.  
  121.       No DDN-only routes (ARPANET/MILNET) shall be announced into the
  122.       regional backbones.  This is a specific case of the ability to
  123.       suppress information from specific Autonomous Systems, as
  124.       described later.
  125.  
  126.       Regional backbones are required to use an unique Autonomous System
  127.       number.  Announcements from non-sanctioned autonomous systems,
  128.       relative to a particular site, will not be believed and will
  129.       instead trigger an alarm to the Network Operations Center.
  130.  
  131.       Regional backbone attachments must not require routes to local
  132.       subnets.  This means that the locally attached network needs to
  133.       use a flat space, without subnet bits, at least from the NSS point
  134.       of view.  The reason for this is that the EGP information
  135.       exchanged between the regional gateway and the NSS cannot include
  136.       subnet information. Therefore the NSS has no knowledge of remote
  137.       subnets.  The safest way to get around this limitation is to use a
  138.       non-subnetted network (like a separate Class-C network) at the
  139.       interface between a regional backbone and the NSFNET backbone.
  140.       The other way is to use Proxy-ARP while having just the NSS think
  141.       that the network is not subnetted. In the latter case care must be
  142.       taken so that the E-PSP uses the proper local IP broadcast
  143.       address.
  144.  
  145.       Routing information received by the NSS from regional gateways
  146.       will be verified on both network number and autonomous system
  147.       number.
  148.  
  149.       Metric reconstitution is done on a per-network basis.  The NSS
  150.       will construct the fixed metric it will use for a given network
  151.       number from its internal data base.  Network metrics given to the
  152.       NSS via EGP will be ignored.  The metrics used are a result of an
  153.       ordered list of preferred paths as supplied by the regional
  154.       backbones and the attached campuses.  This metric is of relevance
  155.       only to the NSFNET core itself.  The mechanisms are further
  156.       explained in [1].
  157.  
  158.       Global metric reconstitution by Autonomous System numbers is
  159.       necessary in specific cases, such as peer networks.  An example is
  160.       that ARPANET routes will be reconstituted to a global metric, as
  161.       determined by the NSS.
  162.  
  163.       EGP announcements into regional networks will use a fixed metric.
  164.       The metric used shall be "128."  The 128-metric is somewhat
  165.       arbitrarily chosen to be high enough so that a regional backbone
  166.       will get a metric high enough from the NSFNET Core AS to allow a
  167.  
  168.  
  169.  
  170. Braun                                                           [Page 3]
  171.  
  172. RFC 1093              NSFNET Routing Architecture          February 1989
  173.  
  174.  
  175.       comparison against other (most likely internal) routes. "128" is
  176.       also consistent with [2].
  177.  
  178.       Peer network routes (e.g., ARPANET routes) are propagated through
  179.       the NSS structure.
  180.  
  181.       No DEFAULT routing information is distributed within the NSFNET
  182.       backbone, as the NSFNET core has the combined routing knowledge of
  183.       the attached regional and peer networks.
  184.  
  185.       We do not expect the requirement for damping of routing update
  186.       frequencies, at least initially.  The frequency of net up/down
  187.       changes combined with the available bandwidth and CPU capacity do
  188.       not let the frequency of SPF floodings appear as being a major
  189.       problem.  Simple metric changes as heard by a NSS via EGP will not
  190.       trigger updates.
  191.  
  192.       An allowed list of Source Autonomous System information will be
  193.       used to convert from the IGP to EGP, on a Destination Autonomous
  194.       System number basis, to allow for specific exclusion of definable
  195.       remote Autonomous System information.
  196.  
  197.       EGP must only announce networks for which the preferred path is
  198.       via the IGP.  This means in particular that the EGP peer will
  199.       never announce via EGP what it learned via EGP on the same
  200.       interface, not even if the information was received from a third
  201.       EGP peer.  This will avoid the back-distribution of information
  202.       learned via that same interface.  The EGP peers of regional
  203.       gateways must only announce information belonging to their own
  204.       Autonomous System.
  205.  
  206.       EGP will be used in interior mode only.
  207.  
  208.       The regional backbones are responsible for generating DEFAULT
  209.       routing information at their option.  One possibility is to
  210.       generate an IGP default on a peer base as long as the NSS EGP
  211.       connection is working.  The EGP information will not include a
  212.       special indication for DEFAULT.
  213.  
  214.       It is highly desirable to have direct peer-peer connections, to
  215.       ease the implementation of a consistent routing data base.
  216.  
  217.       A single Autonomous System number may not be used with two E-PSPs
  218.       at the same time as long as the two E-PSP's belong to the same
  219.       NSS.  Otherwise the same Autonomous System number can be used from
  220.       multiple points of attachment to the backbone and therefore can
  221.       talk to more than one E-PSP.  However, this may result in
  222.       suboptimal routing unless multiple announcements are properly
  223.  
  224.  
  225.  
  226. Braun                                                           [Page 4]
  227.  
  228. RFC 1093              NSFNET Routing Architecture          February 1989
  229.  
  230.  
  231.       engineered according to [1].
  232.  
  233.       The administrator of the regional networks should be warned that
  234.       improper routing implementations within the region may create
  235.       suboptimal regional routing by using this restriction if no care
  236.       is taken in that:
  237.  
  238.          Only networks belonging to their own Autonomous System get
  239.          preferred over NSFNET backbone paths; this may extend to a
  240.          larger virtual Autonomous System if backdoor paths are
  241.          effectively implemented.
  242.  
  243.          IGP implementations should not echo back routing information
  244.          heard via the same path.
  245.  
  246.          If two regional networks decide to implement a backdoor
  247.          connection between themselves, then the backdoor must have a
  248.          firewall in so that information about their own Autonomous
  249.          System cannot flow in from the other Autonomous System.  That
  250.          is, a regional network must not allow information about
  251.          networks that are interior to its Autonomous System to enter
  252.          via exterior routes.  Likewise, if a regional network is
  253.          connected to the NSFNET via two NSS connections, the NSS cannot
  254.          send back information about the Autonomous System into the
  255.          Autonomous System where it originated.  The end effect is that
  256.          partitions within an Autonomous System will not be healed by
  257.          using the NSS system.  In addition, if three or more regionals
  258.          connect to each other via multiple back-door paths, it is
  259.          imperative that all back-door paths have firewalls that ensure
  260.          that the above restrictions are imposed.  These actions are
  261.          necessary to prevent routing loops that involve the NSS system.
  262.          Furthermore routing information should only be accepted from
  263.          another regional backbone via backdoor paths for networks which
  264.          are positively desired to be reached via this same backdoor
  265.          path.
  266.  
  267. 3. EGP requirements for attached gateways
  268.  
  269.    The following EGP requirements are necessary for attached gateways;
  270.    they may require changes in existing vendor products:
  271.  
  272.       IGP to EGP routing exchanges need to be bidirectional.  This
  273.       feature should be selectable by the gateway administrator, and by
  274.       default be configured OFF.
  275.  
  276.       The metric used when translating from EGP to IGP should be
  277.       configurable.
  278.  
  279.  
  280.  
  281.  
  282. Braun                                                           [Page 5]
  283.  
  284. RFC 1093              NSFNET Routing Architecture          February 1989
  285.  
  286.  
  287.       It must be possible for IGP information to override EGP
  288.       information, so that the internal paths are preferred over
  289.       external paths.  Overriding EGP information on an absolute basis,
  290.       where an external path would never be used as long as there is an
  291.       internal one, is acceptable.
  292.  
  293.       The ability to do route filtering in the regional gateways on a
  294.       per net basis is highly desirable to allow the regional gateways
  295.       to do a further selection as to what routes they would want to
  296.       redistribute into their network.
  297.  
  298.       The existence of an EGP connection should optionally lead to the
  299.       generation of a DEFAULT announcement for propagation via the IGP.
  300.       The DEFAULT metric should be independently configurable.
  301.  
  302.       EGP routes with a metric of "128" should be acceptable.  In most
  303.       cases the regional backbone should ignore the EGP metric.
  304.  
  305.       The regional gateways must only announce networks known to their
  306.       own Autonomous System.  At the very least they must not
  307.       redistribute routing information via EGP for routes previously
  308.       learned via EGP.
  309.  
  310.       It would be beneficial if the regional IGPs would tag routes as
  311.       being EGP derived.
  312.  
  313.       If the EGP peer (e.g., a NSS) terminates the EGP exchange the
  314.       previously learned routes should expire in a timely fashion.
  315.  
  316. 4. References
  317.  
  318.    [1]  Rekhter, J., "EGP and Policy Based Routing in the New NSFNET
  319.         Backbone", T.J. Watson Research Center, IBM Corporation, March
  320.         1988.  Also as RFC 1092, February 1989.
  321.  
  322.    [2]  Mills, D., "Autonomous Confederations", RFC 975, M/A-COM
  323.         Linkabit, February 1986.
  324.  
  325.    [3]  Mills, D., "Exterior Gateway Formal Specification", RFC 904,
  326.         M/A-COM Linkabit, April 1984.
  327.  
  328.    [4] "Exterior Gateway Protocol, Version 3, Revisions and Extensions,"
  329.         Working Notes of the IETF WG on EGP, Marianne L. Gardner and
  330.         Mike Karels, February 1988.
  331.  
  332.    [5]  "Management and Operation of the NSFNET Backbone Network,"
  333.         proposal to the National Science Foundation, Merit Computer
  334.         Network, August 1987.
  335.  
  336.  
  337.  
  338. Braun                                                           [Page 6]
  339.  
  340. RFC 1093              NSFNET Routing Architecture          February 1989
  341.  
  342.  
  343. 5. Appendix
  344.  
  345.    The following are extensions implemented for the "gated" EGP
  346.    implementation, as designed by Jeff Honig of the Cornell University
  347.    Theory Center.  These extensions are still in the design stage and
  348.    may be changed over time.  They are included here as an
  349.    implementation example.
  350.  
  351.    Changes to egpneighbor clause:
  352.  
  353.    egpneighbor <address>   metricin <metric>
  354.                            egpmetricout <egpmetric>
  355.                            ASin <as>
  356.                            ASout <as>
  357.                            nogendefault
  358.                            acceptdefault
  359.                            defaultout <egpmetric>
  360.                            validate
  361.  
  362.    metricin <metric>
  363.  
  364.         If specified, the metric of all nets received from this
  365.         neighbor are set to <metric>.
  366.  
  367.    egpmetricout <egpmetric>
  368.  
  369.         If specified, the metric of all nets sent to this neighbor,
  370.         except default, are set to <egpmetric>.
  371.  
  372.    ASin <as>
  373.  
  374.         If specified, EGP packets received from this neighbor must
  375.         specify this AS number of an EGP error packet is generated.
  376.         The AS number is only checked at neighbor acquisition time.
  377.  
  378.    ASout <as>
  379.  
  380.         If specified, this AS number is used on all EGP packets sent
  381.         to thiqs neighbor
  382.  
  383.    nogendefault
  384.  
  385.         If specified, this neighbor is not considered when
  386.         generating a gateway default.
  387.  
  388.    acceptdefault
  389.  
  390.         If specified, the default will be accepted from this
  391.  
  392.  
  393.  
  394. Braun                                                           [Page 7]
  395.  
  396. RFC 1093              NSFNET Routing Architecture          February 1989
  397.  
  398.  
  399.         neighbor, otherwise it will be explicitly ignored.
  400.  
  401.    defaultout <egpmetric>
  402.  
  403.         If specified, the internally generated default is send to
  404.         this neighbor in EGP updates.  Default learned from other
  405.         gateways is not propogated.
  406.  
  407.    validate
  408.  
  409.         If specifed, all nets learned from this EGP neighbor must
  410.         have a corresponding 'validAS' clause or they will be
  411.         ignored.
  412.  
  413.    Addition of a validAS clause:
  414.  
  415.    validAS <net> AS <as> metric <metric>
  416.  
  417.       This clause specifies which AS a network may be learned from and
  418.       what internal metric to use when the net is learned.  The
  419.       specifies the 'validate' option.  Note that more than one may be
  420.       learned from more than one AS.
  421.  
  422.    Addition of sendAS and donotsendAS clauses:
  423.  
  424.       These clauses control the announcement of exterior (currently only
  425.       EGP) routes.  Normally, exterior routes are not considered for
  426.       announcement.  When the 'sendAS' or 'donotsendAS' clauses are
  427.       used, the announce/donotannounce, egpnetsreachable and other
  428.       restrictions still apply.  The 'sendAS' and 'donotsendAS' clauses
  429.       are mutually exclusive by autonomous system.
  430.  
  431.    sendAS <as0> ASlist <as1> <as2> ...
  432.  
  433.       This clause specifies that only nets learned from as1, as2, ...
  434.       may be propogated to as0.
  435.  
  436.    donotsendAS <as0> ASlist <as1> <as2> ...
  437.  
  438.       This clause specifies that nets learned from as1, as2, ...  may
  439.       not be propogated to <as0>, all other nets are propogated.
  440.  
  441.    An example of a "/etc/gated.conf" file could include the following:
  442.  
  443.    #
  444.    RIP supplier
  445.    #
  446.    autonomousystem (regional AS)
  447.  
  448.  
  449.  
  450. Braun                                                           [Page 8]
  451.  
  452. RFC 1093              NSFNET Routing Architecture          February 1989
  453.  
  454.  
  455.    #
  456.    egpneighbor (NSS address) ASin (NSS AS) nogendefault
  457.    metricin (metric)
  458.    #
  459.    sendAS (NSS AS) ASlist (regional AS)
  460.    #
  461.  
  462.    Where:
  463.  
  464.         Regional AS   Is the AS number of the regional network
  465.         NSS address   Is the IP address of the local NSS
  466.         NSS AS        Is the AS number the NSFNET backbone
  467.         Metric        Is the gated internal (time delay) metric that
  468.                       EGP learned routes should have.  This is the
  469.                       metric used on output after conversion to a RIP
  470.                       metric.  Some values are:
  471.  
  472.                                    HELLO   RIP
  473.                                    100     1
  474.                                    148     2
  475.                                    219     3
  476.                                    325     4
  477.                                    481     5
  478.  
  479. Author's Address:
  480.  
  481.    Hans-Werner Braun
  482.    University of Michigan
  483.    Computing Center
  484.    1075 Beal Avenue
  485.    Ann Arbor, MI 48109
  486.  
  487.    Phone: (313) 763-4897
  488.  
  489.    Email: HWB@MCR.UMICH.EDU
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506. Braun                                                           [Page 9]
  507.