Network Working Group                                          M. Little
Request for Comments:  1126                                         SAIC
                                                           October 1989


                Goals and Functional Requirements for
                   Inter-Autonomous System Routing

Status of this Memo

  This document describes the functional requirements for a routing
  protocol to be used between autonomous systems.  This document is
  intended as a necessary precursor to the design of a new inter-
  autonomous system routing protocol and specifies requirements for the
  Internet applicable for use with the current DoD IP, the ISO IP, and
  future Internet Protocols.  It is intended that these requirements
  will form the basis for the future development of a new inter-
  autonomous systems routing architecture and protocol.  This document
  is being circulated to the IETF and Internet community for comment.
  Comments should be sent to: "[email protected]".  This memo
  does not specify a standard.  Distribution of this memo is unlimited.

1.  Introduction

  The development of an inter-autonomous systems routing protocol
  proceeds from those goals and functions seen as both desirable and
  obtainable for the Internet environment.  This document describes
  these goals and functional requirements.  The goals and functional
  requirements addressed by this document are intended to provide a
  context within which an inter-autonomous system routing architecture
  can be developed which will meet both current and future Internet
  routing needs.  The goals presented indicate properties and general
  capabilities desired of the Internet routing environment and what the
  inter-autonomous system routing architecture is to accomplish as a
  whole.

  The goals are followed by functional requirements, which address
  either detailed objectives or specific functionality to be achieved
  by the architecture and resulting protocol(s).  These functional
  requirements are enumerated for clarity and grouped so as to map
  directly to areas of architectural consideration.  This is followed
  by a listing and description of general objectives, such as
  robustness, which are applicable in a broad sense.  Specific
  functions which are not reasonably attainable or best left to future
  efforts are identified as non-requirements.

  The intent of this document is to provide both the goals and
  functional requirements in a concise fashion.  Supporting arguments,



Little                                                          [Page 1]

RFC 1126            Inter-Autonomous System Routing         October 1989


  tradeoff considerations and the like have been purposefully omitted
  in support of this.  An appendix has been included which addresses
  this omission to a limited extent and the reader is directed there
  for a more detailed discussion of the issues involved.

  The goals and functional requirements contained in this document are
  the result of work done by the members of the Open Routing Working
  Group.  It is our intention that these goals and requirements reflect
  not only those foreseen in the Internet community but are also
  similar to those encountered in environments proposed by ANSI, ECMA
  and ISO.  It is expected that there will be some interaction and
  relationship between this work and the product of these groups.

2.  Overall Goals

  In order to derive a set functional requirements there must be one or
  more principals or overall goals for the routing environment to
  satisfy.  These high level goals provide the basis for each of the
  functional requirements we have derived and will guide the design
  philosophy for achieving an inter-autonomous system routing solution.
  The overall goals we are utilizing are described in the following
  sections.

2.1  Route to Destination

  The routing architecture will provide for the routing of datagrams
  from a single source to one or more destinations in a timely manner.
  The larger goal is to provide datagram delivery to an identifiable
  destination, one which is not necessarily immediately reachable by
  the source.  In particular, routing is to address the needs of a
  single source requiring datagram delivery to one or more
  destinations.  The concepts of multi-homed hosts and multicasting
  routing services are encompassed by this goal.  Datagram delivery is
  to be provided to all interconnected systems when not otherwise
  constrained by autonomous considerations.

2.2  Routing is Assured

  Routing services are to be provided with assurance, where the
  inability to provide a service is communicated under best effort to
  the requester within an acceptable level of error.  This assurance is
  not to be misconstrued to mean guaranteed datagram delivery nor does
  it imply error notification for every lost datagram.  Instead,
  attempts to utilize network routing services when such service cannot
  be provided will result in requester notification within a reasonable
  period given persistent attempts.





Little                                                          [Page 2]

RFC 1126            Inter-Autonomous System Routing         October 1989


2.3  Large System

  The design of the architecture, and the protocols within this
  architecture, should accommodate a large number of routing entities.
  The exact order of magnitude is a relative guess and the best designs
  would provide for a practical level of unbounded growth.
  Nevertheless, the routing architecture is expected to accommodate the
  growth of the Internet environment for the next 10 years.

2.4  Autonomous Operation

  The routing architecture is to allow for stable operation when
  significant portions of the internetworking environment are
  controlled by disjoint entities.  The future Internet environment is
  envisioned as consisting of a large number of internetworking
  facilities owned and operated by a variety of funding sources and
  administrative concerns.  Although cooperation between these
  facilities is necessary to provide interconnectivity, it is viewed
  that both the degree and type of cooperation will vary widely.
  Additionally, each of these internetworking facilities desires to
  operate as independently as possible from the concerns and activities
  of other facilities individually and the interconnection environment
  as a whole.  Those resources used by (and available for) routing are
  to be allowed autonomous control by those administrative entities
  which own or operate them. Specifically, each controlling
  administration should be allowed to establish and maintain policies
  regarding the use of a given routing resource.

2.5  Distributed System

  The routing environment developed should not depend upon a data
  repository or topological entity which is either centralized or
  ubiquitous.  The growth pattern of the Internet, coupled with the
  need for autonomous operation, dictates an independence from the
  topological and administrative centralization of both data and
  control flows.  Past experience with a centralized topology has shown
  that it is both impractical for the needs of the community and
  restrictive of administrative freedoms.  A distributed routing
  environment should not be restrictive of either redundancy or
  diversity.  Any new routing environment must allow for arbitrary
  interconnection between internetworks.

2.6  Provide A Credible Environment

  The routing environment and services should be based upon mechanisms
  and information that exhibit both integrity and security.  The
  routing mechanisms should operate in a sound and reliable fashion
  while the routing information base should provide credible data upon



Little                                                          [Page 3]

RFC 1126            Inter-Autonomous System Routing         October 1989


  which to base routing decisions.  The environment can be unreliable
  to the extent that the resulting effect on routing services is
  negligible.  The architecture and protocol designs should be such
  that the routing environment is reasonably secure from unwanted
  modification or influence.

2.7  Be A Managed Entity

  Provide a manger insight into the operation of the inter-autonomous
  system routing environment to support resource management, problem
  solving, and fault isolation.  Allow for management control of the
  routing system and collect useful information for the internetwork
  management environment.  Datagram events as well as the content and
  distribution characteristics of relevant databases are of particular
  importance.

2.8  Minimize Required Resources

  Any feasible design should restrain the demand for resources required
  to provide inter-autonomous systems routing.  Of particular interest
  are those resources required for data storage, transmission, and
  processing.  The design must be practical in terms of today's
  technology.  Specifically, do not assume significant upgrades to the
  existing level of technology in use today for data communication
  systems.

3.  Functional Requirements

  The functional requirements we have identified have been derived from
  the overall goals and describe the critical features expected of
  inter-autonomous system routing.  To an extent, these functions are
  vague in terms of detail.  We do not, for instance, specify the
  quantity or types for quality-of-service parameters.  This is
  purposeful, as the functional requirements specified here are
  intended to define the features required of the inter-autonomous
  system routing environment rather than the exact nature of this
  environment.  The functional requirements identified have been
  loosely grouped according to areas of architectural impact.

3.1  Route Synthesis Requirements

  Route synthesis is that functional area concerned with both route
  selection and path determination (identification of a sequence of
  intermediate systems) from a source to a destination.  The functional
  requirements identified here provide for path determination which is
  adaptive to topology changes, responsive to administrative policy,
  cognizant of quality-of-service concerns, and sensitive to an
  interconnected environment of autonomously managed systems.



Little                                                          [Page 4]

RFC 1126            Inter-Autonomous System Routing         October 1989


     a) Route around failures dynamically

        Route synthesis will provide a best effort attempt to detect
        failures in those routing resources which are currently being
        utilized.  Upon detection of a failed resource, route synthesis
        will provide a best effort to utilize other available routing
        resources in an attempt to provide the necessary routing
        service.

     b) Provide loop free paths

        The path provided for a datagram, from source to destination,
        will be free of circuits or loops most of the time.  At those
        times a circuit or loop exists, it occurs with both negligible
        probability and duration.

     c) Know when a path or destination is unavailable

        Route synthesis will be capable of determining when a path
        cannot be constructed to reach a known destination.
        Additionally, route synthesis will be capable of determining
        when a given destination cannot be determined because the
        requested destination is unknown (or this knowledge is
        unavailable).

     d) Provide paths sensitive to administrative policies

        Route synthesis will accommodate the resource utilization
        policies of those administrative entities which manage the
        resources identified by the resulting path.  However, it is
        inconceivable to accommodate all policies which can be defined
        by a managing administrative entity.  Specifically, policies
        dependent upon volatile events of great celerity or those which
        are non-deterministic in nature cannot be accommodated.

     e) Provide paths sensitive to user policies

        Paths produced by route synthesis must be sensitive to policies
        expressed by the user.  These user policies are expressed in
        terms relevant to known characteristics of the topology.  The
        path achieved will meet the requirements stated by the user
        policy.

     f) Provide paths which characterize user quality-of-service
        requirements

        The characteristics of the path provided should match those
        indicated by the quality-of-service requested.  When



Little                                                          [Page 5]

RFC 1126            Inter-Autonomous System Routing         October 1989


        appropriate, utilize only those resources which can support the
        desired quality-of-service (e.g., bandwidth).

     g) Provide autonomy between inter- and intra-autonomous system
        route synthesis

        The inter- and intra-autonomous system routing environments
        should operate independent of one another.  The architecture
        and design should be such that route synthesis of either
        routing environment does not depend upon information from the
        other for successful functioning.  Specifically, the inter-
        autonomous system route synthesis design should minimize the
        constraints on the intra-autonomous system route synthesis
        decisions when transiting (or delivering to) the autonomous
        system.

3.2  Forwarding Requirements

  The following requirements specifically address the functionality of
  the datagram forwarding process.  The forwarding process transfers
  datagrams to intermediate or final destinations based upon datagram
  characteristics, environmental characteristics, and route synthesis
  decisions.

     a) Decouple inter- and intra-autonomous system forwarding
        decisions

        The requirement is to provide a degree of independence between
        the inter-autonomous system forwarding decision and the intra-
        autonomous system forwarding decision within the forwarding
        process.  Though the forwarding decisions are to be independent
        of each other, the inter-autonomous system delivery process may
        necessarily be dependent upon intra-autonomous system route
        synthesis and forwarding.

     b) Do not forward datagrams deemed administratively inappropriate

        Forward datagrams according to the route synthesis decision if
        it does not conflict with known policy.  Policy sensitive route
        synthesis will prevent normally routed datagrams from utilizing
        inappropriate resources.  However, a datagram routed abnormally
        due to unknown events or actions can always occur and the only
        way to prohibit unwanted traffic from entering or leaving an
        autonomous system is to provide policy enforcement within the
        forwarding function.






Little                                                          [Page 6]

RFC 1126            Inter-Autonomous System Routing         October 1989


     c) Do not forward datagrams to failed resources

        A datagram is not to be forwarded to a resource known to be
        unavailable, notably an intermediate system such as a gateway.
        This implies some ability to detect and react to resource
        failures.

     d) Forward datagram according to its characteristics

        The datagram forwarding function is to be sensitive to the
        characteristics of the datagram in order to execute the
        appropriate route synthesis decision.  Characteristics to
        consider are the destination, quality-of-service, precedence,
        datagram (or user) policy, and security.  Note that some
        characteristics, precedence for example, affect the forwarding
        service provided whereas others affect the path chosen.

3.3  Information Requirements

  This functional area addresses the general information requirements
  of the routing environment.  This encompasses both the nature and
  disbursal of routing information.  The characteristics of the routing
  information and its disbursal are given by the following functional
  requirements.

     a) Provide a distributed and descriptive information base

        The information base must not depend upon either centralization
        or exact replication.  The content of the information base must
        be sufficient to support all provided routing functionality,
        specifically that of route synthesis and forwarding.
        Information of particular importance includes resource
        characteristics and resource utilization policies.

     b) Determine resource availability

        Provide a means of determining the availability of any utilized
        resource in a timely manner.  The timeliness of this
        determination is dependent upon the routing service(s) to be
        supported.

     c) Restrain transmission utilization

        The dynamics of routing information flow should be such that a
        significant portion of transmission resources are not consumed.
        Routing information flow should adjust to the demands of the
        environment, the capacities of the distribution facilities
        utilized, and the desires of the resource manager.



Little                                                          [Page 7]

RFC 1126            Inter-Autonomous System Routing         October 1989


     d) Allow limited information exchange

        Information distribution is to be sensitive to administrative
        policies.  An administrative policy may affect the content or
        completeness of the information distributed.  Additionally,
        administrative policy may determine the extent of information
        distributed.

3.4  Environmental Requirements

  The following items identify those requirements directly related to
  the nature of the environment within which routing is to occur.

     a) Support a packet-switching environment

        The routing environment should be capable of supporting
        datagram transfer within a packet-switched oriented networking
        environment.

     b) Accommodate a connection-less oriented user transport service

        The routing environment should be designed such that it
        accommodates the model for connection-less oriented user
        transport service.

     c) Accommodate 10K autonomous systems and 100K networks

        This requirement identifies the scale of the internetwork
        environment we view as appearing in the future.  A routing
        design which does not accommodate this order of magnitude is
        viewed as being inappropriate.

     d) Allow for arbitrary interconnection of autonomous systems

        The routing environment should accommodate interconnectivity
        between autonomous systems which may occur in an arbitrary
        manner.  It is recognized that a practical solution is likely
        to favor a given structure of interconnectivity for reasons of
        efficiency.  However, a design which does not allow for and
        utilize interconnectivity of an arbitrary nature would not be
        considered a feasible design.

3.5  General Objectives

  The following are overall objectives to be achieved by the inter-
  autonomous routing architecture and its protocols.

     a) Provide routing services in a timely manner



Little                                                          [Page 8]

RFC 1126            Inter-Autonomous System Routing         October 1989


        Those routing services provided, encapsulated by the
        requirements stated herein, are to be provided in a timely
        manner.  The time scale for this provision must be reasonable
        to support those services provided by the internetwork
        environment as a whole.

     b) Minimize constraints on systems with limited resources

        Allow autonomous systems, or gateways, of limited resources to
        participate in the inter-autonomous system routing
        architecture.  This limited participation is not necessarily
        without cost, either in terms of responsiveness, path
        optimization, or other factor(s).

     c) Minimize impact of dissimilarities between autonomous systems

        Attempt to achieve a design in which the dissimilarities
        between autonomous systems do not impinge upon the routing
        services provided to any autonomous system.

     d) Accommodate the addressing schemes and protocol mechanisms of
        the autonomous systems

        The routing environment should accommodate the addressing
        schemes and protocol mechanisms of autonomous systems, where
        these schemes and mechanisms may differ among autonomous
        systems.

     e) Must be implementable by network vendors

        This is to say that the algorithms and complexities of the
        design must be such that they can be understood outside of the
        research community and implementable by people other than the
        designers themselves.  Any feasible design must be capable of
        being put into practice.

4.  Non-Goals

  In view of the conflicting nature of many of the stated goals and the
  careful considerations and tradeoffs necessary to achieve a
  successful design, it is important to also identify those goals or
  functions which we are not attempting to achieve.  The following
  items are not considered to be reasonable goals or functional
  requirements at this time and are best left to future efforts. These
  are non-goals, or non-requirements, within the context of the goals
  and requirements previously stated by this document as well as our
  interpretation of what can be practically achieved.




Little                                                          [Page 9]

RFC 1126            Inter-Autonomous System Routing         October 1989


     a) Ubiquity

        It is not a goal to design a routing environment in which any
        participating autonomous system can obtain a routing service to
        any other participating autonomous system in a ubiquitous
        fashion.  Within a policy sensitive routing environment, the
        cooperation of intermediate resources will be necessary and
        cannot be guaranteed to all participants.  The concept of
        ubiquitous connectivity will not be a valid one.

     b) Congestion control

        The ability for inter-autonomous system routing to perform
        congestion control is a non-requirement.  Additional study is
        necessary to determine what mechanisms are most appropriate and
        if congestion control is best realized within the inter-AS
        and/or intra-AS environments, and if both, what the dynamics of
        the interactions between the two are.

     c) Load splitting

        The functional capability to distribute the flow of datagrams,
        from a source to a destination, across two or more distinct
        paths through route synthesis and/or forwarding is a non-
        requirement.

     d) Maximizing the utilization of resources

        There is no goal or requirement for the inter-autonomous system
        routing environment to be designed such that it attempts to
        maximize the utilization of available resources.

     e) Schedule to deadline service

        The ability to support a schedule to deadline routing service
        is a non-requirement for the inter-autonomous routing
        environment at this point in time.

     f) Non-interference policies of resource utilization

        The ability to support routing policies based upon the concept
        of non-interference is a not a requirement.  An example of such
        a policy is one where an autonomous system allows the
        utilization of excess bandwidth by external users as long as
        this does not interfere with local usage of the link.






Little                                                         [Page 10]

RFC 1126            Inter-Autonomous System Routing         October 1989


5.  Considerations

  Although neither a specific goal nor a functional requirement,
  consideration must be given to the transition which will occur from
  the current operational routing environment to a new routing
  environment.  A coordinated effort among all participants of the
  Internet would be impractical considering the magnitude of such an
  undertaking.  Particularly, the issues of transitional coexistence,
  as opposed to phased upgrading between disjoint systems, should be
  addressed as a means to minimize the disruption of service.  Careful
  consideration should also be given to any required changes to hosts.
  It is very unlikely that all hosts could be changed, given historical
  precedence, their diversity and their large numbers.

Appendix - Issues in Inter-Autonomous Systems Routing

A.0  Acknowledgement

  This appendix is an edited version of the now defunct document
  entitled "Requirements for Inter-Autonomous Systems Routing", written
  by Ross Callon in conjunction with the members of the Open Routing
  Working Group.

A.1  Introduction

  The information and discussion contained here historically precedes
  that of the main document body and was a major influence on its
  content.  It is included here as a matter of reference and to provide
  insight into some of the many issues involved in inter-autonomous
  systems routing.

  The following definitions are utilized:

     Boundary Gateway

           A boundary gateway is any autonomous system gateway which
           has a network interface directly reachable from another
           autonomous system.  As a member of an autonomous system, a
           boundary gateway participates in the Interior Gateway
           Protocol and other protocols used for routing (and other
           purposes) between other gateways of this same autonomous
           system and between those networks directly reachable by this
           autonomous system.  A boundary gateway may also
           participate in an Inter-Autonomous System Routing Protocol.
           As a participant in the inter-autonomous system routing
           protocol, a boundary gateway interacts with other boundary
           gateways in other autonomous systems, either directly or
           indirectly, in support of the operation of the



Little                                                         [Page 11]

RFC 1126            Inter-Autonomous System Routing         October 1989


           Inter-Autonomous System Routing Protocol.

     Interior Gateway

           An interior gateway is any autonomous system gateway which
           is not a boundary gateway.  As such, an interior gateway
           does not have any network interfaces which are directly
           reachable by any other autonomous system.  An interior
           gateway is part of an autonomous system and, as such,
           takes part in the Interior Gateway Protocol and other
           protocols used in that autonomous system. However, an
           interior gateway does not directly exchange routing
           information with gateways in other autonomous systems via
           the Inter-Autonomous System Routing Protocol.

  The following acronyms are used:

     AS -- Autonomous System

           This document uses the current definition of "Autonomous
           System": a collection of cooperating gateways running a
           common interior routing protocol. This implies that networks
           and hosts may be reachable through one or more Autonomous
           Systems.

           NOTE: The current notion of "Autonomous System" implicitly
           assumes that each gateway will belong to exactly one AS.
           Extensions to allow gateways which belong to no AS's
           and/or gateways which belong to multiple AS's, are beyond
           the scope of this discussion. However, we do not preclude
           the possibility of considering such extensions in the
           future.

     IARP -- Inter-Autonomous System Routing Protocol

           This is the protocol used between boundary gateways for
           the purpose of routing between autonomous systems.

     IGP -- Interior Gateway Protocol

           This is the protocol used within an autonomous system for
           routing within that autonomous system.

A.2  Architectural Issues

  The architecture of an inter-autonomous system routing environment is
  mutually dependent with the notion of an Autonomous System. In
  general, the architecture should maximize independence of the



Little                                                         [Page 12]

RFC 1126            Inter-Autonomous System Routing         October 1989


  internals of an AS from the internals of other AS's, as well as from
  the inter-autonomous system routing protocols (IARP). This
  independence should allow technological and administrative
  differences among AS's as well as protection against propagation of
  misbehavior.  The following issues address ways to achieve
  interoperation and protection, and to meet certain performance
  criteria. We also put forth a set of minimal constraints to be
  imposed among Autonomous Systems, and between inter- and intra-AS
  functions.

A.2.1  IGP Behavior

  The IARP should be capable of tolerating an Autonomous System in
  which its IGP is unable to route packets, provides incorrect
  information, and exhibits unstable behavior.  Interfacing to such an
  ill-behaved AS should not produce global instabilities within the
  IARP and the IARP should localize any effects.  On the other hand,
  the IGP should provide a routing environment where the information
  and connectivity provided to the IARP from the IGP does not exhibit
  rapid and continual changes.  An Autonomous System therefore should
  appear as a relatively stable environment.

A.2.2  Independence of Autonomous Systems

  The IARP should not constrain any AS to require the use any one
  specific IGP.  This applies both to IGPs and potentially to any other
  internal protocols.  The architecture should also allow intra-AS
  routing and organizational structures to be hidden from inter-AS use.
  An Autonomous System should not be required to use any one specific
  type of linkage between boundary gateways within the AS.  However,
  there are some minimal constraints that gateways and the associated
  interior routing protocol within an AS must meet in order to be able
  to route Inter-AS traffic, as discussed in Section A.2.6.

A.2.3  General Topology

  The routing architecture should provide significant flexibility
  regarding the interconnection of AS's.  The specification of IARP
  should impose no inherent restriction on either interconnection
  configuration or information passing among autonomous systems. There
  may be administrative and policy limitations on the interconnection
  of AS's, and on the extent to which routing information and data
  traffic may be passed between AS's. However, there should be no
  inherent restrictions imposed by limitations in the design of the
  routing architecture.  The architecture should allow arbitrary
  topological interconnection of Autonomous Systems.  Propagation of
  routing information should not be restricted by the specification of
  the IARP.  For example, the restrictions imposed by the "core model"



Little                                                         [Page 13]

RFC 1126            Inter-Autonomous System Routing         October 1989


  used by EGP are not acceptable.

A.2.4  Routing Firewalls

  We expect AS's to have a certain amount of insulation from other
  AS's.  This protection should apply to both the adequacy and
  stability of routes produced by the routing scheme, and also to the
  amount of overhead traffic and other costs necessary to run the
  routing scheme.  There are several forms which these "routing
  firewalls" may take:

     -  An AS must be able to successfully route its own internal
        traffic in the face of arbitrary failures of other IGPs and the
        IARP.  In other words, the AS should be able to effectively
        shutout the rest of the world.

     -  The IARP should be able to operate correctly in the face of IGP
        failures.  In this case, correct operation is defined as
        recognizing that an AS has failed, and routing around it if
        possible (traffic to or from that AS may of course fail).

     -  In addition, problems in Inter-AS Routing should, as much as
        possible, be limited in the extent of their effect.

  Routing firewalls may be explicit, or may be inherent in the design
  of the algorithms.  We expect that both explicit and inherent
  firewalls will be utilized.  Examples of firewalls include:

     -  Separating Intra- and Inter-AS Routing to some extent
        isolates each of these from problems with the other.  Clearly
        defined interfaces between different modules/protocols provides
        some degree of protection.

     -  Access control restrictions may provide some degree of
        firewalls.  For example, some AS's may be non-transit (won't
        forward transit traffic).  Failures within such AS's may be
        prevented from affecting traffic not associated with that AS.

     -  Protocol design can help.  For example, with link state routing
        you can require that both ends must report a link before is may
        be regarded as up, thereby eliminating the possibility of a
        single node causing fictitious links.

     -  Finally, explicit firewalls may be employed using explicit
        configuration information.






Little                                                         [Page 14]

RFC 1126            Inter-Autonomous System Routing         October 1989


A.2.5  Boundary Gateways

  Boundary gateways will exchange Inter-AS Routing information with
  other boundary gateways using the IARP.  Each AS which is to take
  part in Inter-AS Routing will have one or more boundary gateways, of
  which one or more of these boundary gateways exchanges information
  with peer boundary gateways in other AS's.

  Information related to Inter-AS Routing may be passed between
  connected boundary gateways in different AS's.  Specific designated
  boundary gateways will therefore be required to understand the IARP.
  The external link between the boundary gateways may be accomplished
  by any kind of connectivity that can be modeled as a direct link
  between two gateways -- a LAN, an ARPANET, a satellite link, a
  dedicated line, and so on.

A.2.6  Minimal Constraints on the Autonomous System

  The architectural issues discussed here for inter-AS routing imply
  certain minimal functional constraints that an AS must satisfy in
  order to take part in the Inter-AS Routing scheme.  These minimal
  requirements are described in greater detail in this section. This
  list of functional constraints is not necessarily complete.

A.2.6.1  Internal Links between Boundary Gateways

  In those cases where an AS may act as a transit AS (i.e., may pass
  traffic for which neither the source nor the destination is in that
  AS), the gateways internal to that AS will need to know which
  boundary gateway is to serve as the exit gateway from that AS. There
  are several ways in which this may be accomplished:

     1. Boundary gateways are directly connected

     2. "Tunneling" (i) using source routing (ii) using encapsulation

     3. Interior gateways participate (i) limited participation (ii)
        fully general participation

  With solution (1), the boundary gateways in an AS are directly
  connected.  This eliminates the need for other gateways in the AS to
  have any knowledge of Inter-AS Routing.  Transit traffic is passed
  directly among the boundary gateways of the AS.

  With solution (2), transit traffic may traverse interior gateways,
  but these interior gateways are protected from any need to have
  knowledge about Inter-AS routes by means such as source routing or
  encapsulation.  The boundary gateway by which the packet enters an AS



Little                                                         [Page 15]

RFC 1126            Inter-Autonomous System Routing         October 1989


  determines the boundary gateway which will serve as the exit gateway.
  This may require that the entrance boundary gateway add a source
  route to the packet, or encapsulate the packet in another level of IP
  or gateway-to-gateway header.  This allows boundary gateways to
  forward data traffic using the appropriate tunnelling technique.

  Finally, with solution (3), the interior gateways have some knowledge
  of Inter-AS Routing.  At a minimum, the interior gateways would need
  to know the identity of each boundary gateway, the address(es) that
  can be reached by that gateway, and the Inter-AS metric associated
  with the route to that address(es).  If the IARP allows for separate
  routing for multiple TOS classes, then the information that the
  interior gateways need to know includes a separate Inter-AS metric
  for each TOS class.  The Inter-AS metrics are necessary to allow
  gateways to choose among multiple possible exit boundary gateways.
  In general, it is not necessary for the Inter-AS metrics to have any
  relationship with the metric used within an AS for interior routing.
  The interior gateways do not need to know how to interpret the
  exterior metrics, except to know that each metric is to be
  interpreted as an unsigned integer and a lesser value is preferable
  to a greater value.  It would be possible, but not necessary, for the
  interior gateways to have full knowledge of the IARP.

  It is not necessary for the Inter-AS Routing architecture to specify
  which of these solutions are to be used for any particular AS.
  Rather, it is possible for individual AS's to choose which scheme or
  combination of schemes to use.  Independence of the IARP from the
  internal operation of each AS implies that this decision be left up
  to the internal protocols used in each AS.  The IARP must be able to
  operate as if the boundary gateways were directly connected.

A.2.6.2  Forwarding of Data from the AS

  The scheme used for forwarding transit traffic across an AS also has
  implications for the forwarding of traffic which originates within an
  AS, but whose destination is reachable only from other AS's.  If
  either of solutions (1) or (2) in Section A.2.6.1 is followed, then
  it will be sufficient for an interior gateway to forward such traffic
  to any boundary gateway.  Greater efficiency may optionally be
  achieved in some cases by providing interior gateways with additional
  information which will allow them to choose the "best" boundary
  gateway in some sense.  If solution (3) is followed, then the
  information passed to interior gateways to allow them to forward
  transit traffic will also be sufficient to forward traffic
  originating within that AS.






Little                                                         [Page 16]

RFC 1126            Inter-Autonomous System Routing         October 1989


A.2.6.3  Forwarding of Data to a Destination in the AS

  If a packet whose destination is reachable from an AS arrives at that
  AS, then it is desired that the interior routing protocol used in
  that AS be able to successfully deliver the packet without reliance
  on Inter-AS Routing.  This does not preclude that the Inter-AS
  Routing protocol will deal with partitioned AS's.

  An AS may have access control, security, and policy restrictions that
  restrict which data packets may enter or leave the AS. However, for
  any data packet which is allowed access to the AS, the AS is expected
  to deliver the packet to its destination without further restrictions
  between parts of the AS.  In this sense, the internal structure of
  the AS should not be visible to the IARP.

A.3  Policy Issues

  The interconnection of multiple heterogeneous networks and multiple
  heterogeneous autonomous systems owned and operated by multiple
  administrations into a single combined internet is a very complex
  task.  It is expected that the administrations associated with such
  an internet will wish to impose a variety of constraints on the
  operation of the internet.  Specifically, externally imposed routing
  constraints may include a variety of transit access control,
  administrative policy, and security constraints.

  Transit access control refers to those access control restrictions
  which an AS may impose to restrict which traffic the AS is willing to
  forward.  There are a large number of access control restrictions
  which one could envision being used.  For example, some AS's may wish
  to operate only as "non-transit" AS's, that is, they will only
  forward data traffic which either originates or terminates within
  that AS.  Other AS's may restrict transit traffic to datagrams which
  originate within a specified set of source hosts. Restrictions may
  require that datagrams be associated with specific applications (such
  as electronic mail traffic only), or that datagrams be associated
  with specific classes of users.

  Policy restrictions may allow either the source of datagrams, or the
  organization that is paying for transmission of a datagram, to limit
  which AS's the datagrams may transit.  For example, an organization
  may wish to specify that certain traffic originating within their AS
  should not transit any AS administered by its main competitor.

  Security restrictions on traffic relates to the official security
  classification level of traffic.  As an example, an AS may specify
  that all classified traffic is not allowed to leave its AS.




Little                                                         [Page 17]

RFC 1126            Inter-Autonomous System Routing         October 1989


  The main problem with producing a routing scheme which is sensitive
  to transit access control, administrative policy, and security
  constraints is the associated potential for exponential growth of
  routes.  For example, suppose that there are 20 packets arriving at a
  particular gateway, each for the same destination, but subject to a
  different combination of access control, policy, and security
  constraints.  It is possible that all 20 packets would need to follow
  different routes to the destination.

  This explosive growth of routes leads to the question: "Is it
  practically feasible to deal with complete general external routing
  constraints?" One approach would allow only a smaller subset of
  constraints, chosen to provide some useful level of control while
  allowing minimal impact on the routing protocol.  Further work is
  needed to determine the feasibility of this approach.

  There is another problem with dealing with transit access control,
  policy, and security restrictions in a fully general way.
  Specifically, it is not clear just what the total set of possible
  restrictions should be.  Efforts to study this issue are currently
  underway, but are not expected to produce definitive results within a
  short to medium time frame.  It is therefore not practical to wait
  for this effort to be finished before defining the next generation of
  Inter-AS Routing.

A.4  Service Features

  The following paragraphs discuss issues concerning the services an
  Inter-AS Routing Protocol may provide.  This is not a complete list
  of service issues but does address many of those services which are
  of concern to a significant portion of the community.

A.4.1  Cost on Toll Networks

  Consideration must be given to the use of routing protocols with toll
  (i.e., charge) networks.  Although uncommon in the Internet at the
  moment, they will become more common in the future, and thought needs
  to be given to allowing their inclusion in an efficient and effective
  manner.

  There are two areas in which concerns of cost intrude.  First,
  provision must be made to include in the routing information
  distributed throughout the system the information that certain links
  cost money, so that traffic patterns may account for the cost.
  Second, the actual operation of the algorithm, in terms of the
  messages that must be exchanged to operate the algorithm, must
  recognize that fact that on certain links, the exchange may have an
  associated cost which must be taken into account.  These areas often



Little                                                         [Page 18]

RFC 1126            Inter-Autonomous System Routing         October 1989


  involve policy questions on the part of the user.  It is a
  requirement of the algorithm that facilities be available to allow
  different groups to answer these questions in different ways.  The
  first area is related to type-of-service routing, and is discussed in
  Section A.4.2.  The second area is discussed below.

  Previous attempts at providing these sorts of controls were
  incomplete because they were not thought through fully; a new effort
  must avoid these pitfalls.  For instance, even though the Hello rate
  in EGP may be adjusted, turning the rate down too low (to control the
  costs) could cause the route to be dropped from databases through
  timeout.

  In a large internet, changes will be occurring constantly; a
  simplistic mechanism might mean that a site which is only connected
  by toll networks has to either accept having an old picture of the
  network, or spend more to keep a more current picture of things.
  However, that is not necessarily the case if incomplete knowledge and
  cache-based techniques are used more. For instance, if a site
  connected only by toll links keeps an incomplete or less up-to-date
  map of the situation, an agreement with a neighbor which does not
  labor under these restrictions might allow it to get up-to-date
  information only when needed.

A.4.2  Type-of-Service Routing

  The need for type-of-service (TOS) has been increasing as networks
  become more heterogeneous in physical channel components, high-level
  applications, and administrative management.  For instance, some
  recently installed fiber cables provide abundant communication
  bandwidths, while old narrow-band channels will still be with us for
  a long time period.  Electronic mail traffic tolerates delivery
  delays and low throughput.  New image transmissions are coming up;
  these require high bandwidths but are not effected by a few bit
  errors.  Furthermore, some networks may soon install accounting
  functions to charge users, while others may still provide free
  services.

  Considering the long life span of a new routing architecture, it is
  mandatory that it be built with mechanisms to provide TOS routing.
  Unfortunately, we have had very little experience with TOS routing,
  even with a single network.  No TOS routing system has ever been
  field-tested on a large-scale basis.

  We foresee the need for TOS routing and recognize the possible
  complexities and difficulties in design and implementation.  We also
  consider that new applications coming along may require novel
  services that are unforeseeable today.  We feel a practical approach



Little                                                         [Page 19]

RFC 1126            Inter-Autonomous System Routing         October 1989


  is to provide a small set of TOS routing functions as a first step
  while the design of the architecture should be such that new classes
  of TOS can be easily added later and incrementally deployed.  The
  Inter-AS Routing Architecture should allow both globally and locally
  defined TOS classes.

  We intend to address TOS routing based on the following metrics:

     -  Delay

     -  Throughput

     -  Cost

  Delay and throughput are the main network performance concerns.
  Considering that some networks may soon start charging users for the
  transmission services provided, the cost should also be added as a
  factor in route selection.

  Reliability is not included in the above list.  Different
  applications with different reliability requirements will differ in
  terms of what Transport Protocol they use.  However, IP offers only a
  "moderate" level of reliability, suitable to applications such as
  voice, or possibly even less than that required by voice. The level
  of reliability offered by IP will not differ substantially based on
  the application.  Thus the requested level of reliability will not
  affect Inter-AS Routing.

  Delay and throughput will be measured from the physical
  characteristics of communication channels, without considering
  instantaneous load.  This is necessary in order to provide stable
  routes, and to minimize the overhead caused by the Inter-AS Routing
  scheme.

  A number of TOS service classes may be defined according to these
  metrics.  Each class will present defined requirements for each of
  the TOS metrics.  For example, one class may require low delay,
  require only low throughput, and require low cost.

A.4.3  Multipath Routing

  There are two types of multipath routing which are useful for Inter-
  AS Routing: (1) there may be multiple gateways between any two
  neighboring AS's; (2) there may be multiple AS-to-AS paths between
  any pair of source and destination AS's.  Both forms of multipath are
  useful in order to allow for loadsplitting.  Provision for multipath
  routing in the IARP is desirable, but not an absolute requirement.




Little                                                         [Page 20]

RFC 1126            Inter-Autonomous System Routing         October 1989


A.5  Performance Issues

  The following paragraphs discuss issues related to the performance of
  an Inter-AS Routing Protocol.  This discussion addresses size as well
  as efficiency considerations.

A.5.1  Adaptive Routing

  It is necessary that the Inter-AS Routing scheme respond in a timely
  fashion to major network problems, such as the failure of specific
  network resources.  In this sense, Inter-AS Routing needs to use
  adaptive routing mechanisms similar to those commonly used within
  individual networks and AS's.  It is important that the adaptive
  routing mechanism chosen for Inter-AS Routing achieve rapid
  convergence following internet topological changes, with little or
  none of the serious convergence problems (such as "counting to
  infinity") that have been experienced in some existing dynamic
  routing protocols.

  The Inter-AS Routing scheme must provide stability of routes.  It is
  totally unacceptable for routes to vary on a frequent basis.  This
  requirement is not meant to limit the ability of the routing
  algorithm to react rapidly to major topological changes, such as the
  loss of connectivity between two AS's.  The need for adaptive routing
  does not imply any desire for load-based routing.

A.5.2  Large Internets

  One key question in terms of the targets is the maximum size of the
  Internet this algorithm is supposed to support.  To some degree, this
  is tied to the timeline for which this protocol is expected to be
  active.  However, it is necessary to have some size targets.
  Techniques that work at one order of size may be impractical in a
  system ten or twenty times larger.

  Over the past five years there has been an approximate doubling of
  the Internet each year.  In January 1988, there were more than 330
  operational networks and more than 700 network assigned numbers.
  Exact figures for the future growth rate of the Internet are
  difficult to predict accurately.  However, if this doubling trend
  continues, we would reach 10,000 nets sometime near January 1993.

  Taking a projection purely on the number of networks (the top level
  routing entity) may be overly conservative since the introduction and
  wide use of subnets has absorbed some growth, but will not continue
  to be able to do so.  In addition, there are plans being discussed
  that will continue or accelerate the current rate of growth.
  Nonetheless, the number of networks is very important because



Little                                                         [Page 21]

RFC 1126            Inter-Autonomous System Routing         October 1989


  networks constitute the "top level entities" in the current
  addressing structure.

  The implications of the size parameter are fairly serious.  The
  current system has only one level of addressing above subnets. While
  it is possible to adjust certain parameters (for example, the
  unsolicited or unnecessary retransmission rate) to produce a larger
  but less robust system, other parameters (for example, the rate of
  change in the system) cannot be so adjusted.  This will provide
  eventual limits on the size of a system that can be dealt with in a
  flat address space.

  The exact size that necessitates moving from the current single-
  level system to a multi-level system is not clear.  Among the
  parameters which affect it are the assumed minimum speed of links in
  the system (faster links can allocate more bandwidth to routing
  traffic before it becomes obtrusive), speed and memory capacity of
  routing nodes (needed to store and process routing data), rate at
  which topology changes, etc.  The maximum size which can be handled
  in a single layer is generally thought to be somewhere on the order
  of 10 thousand objects.  The IARP must be designed to deal with
  internets bigger than this.

A.5.3  Addressing Implications

  Given the current rate of growth of the Internet, we can expect that
  the current addressing structure will become unworkable early within
  the lifetime of the new IARP.  It is therefore essential that any new
  IARP be able to use a new addressing format which allows for
  addressing hierarchies beyond the network level.  Any new IARP should
  allow for graceful migration from the current routing protocols, and
  should also allow for graceful migration from a routing scheme based
  on the current addressing, to a scheme based on a new multi-level
  addressing format such as that described by OSI 8473.

A.5.4  Memory, CPU, and Bandwidth Costs

  Routing costs can be measured in terms of the memory needed to store
  routing information, the CPU costs of calculating routes and
  forwarding packets, and the bandwidth costs of exchanging routing
  information and of forwarding packets.  These significant factors
  should provide the basis for comparison between competing proposals
  in IARP design.








Little                                                         [Page 22]

RFC 1126            Inter-Autonomous System Routing         October 1989


  The routing architecture will be driven by the expected size of the
  Internet, the expected memory capacity of the gateways, capacity of
  the Inter-AS links, and the computing speed of the gateways. Given
  our experience with the current Internet, it is clearly necessary for
  the scheme to function adequately even if the Internet grows more
  quickly than we predict and its capacity grows more slowly.  Memory,
  CPU, and bandwidth costs should be in line with what is economically
  practical at any point in time given the size of the Internet at that
  time.

A.6  Other Issues

  The following are issues of a general nature and includes discussion
  of items which have been considered to be best left for future
  efforts.

A.6.1  Implementation

  The specification of IARP should allow interoperation among multi-
  vendor implementations.  This requires that multiple vendors be able
  to implement the same protocol, and that equipment from multiple
  vendors be able to interoperate successfully.

  There are potential practical difficulties of realizing multi-vendor
  interoperation.  Any such difficulty should not be inherent to the
  protocol specifications.  Towards this end, we should produce a
  protocol specification that is precise and unambiguous.  This implies
  that the specification should include a detailed specification using
  Pseudo-Code or a Formal Description Technique.

A.6.2  Configuration

  It is expected that any IARP will require a certain amount of
  configuration information to be maintained by gateways.  However, in
  practice it is often difficult to maintain configuration information
  in a fully correct and up-to-date form.  Problems in configuration
  have been known to cause significant problems in existing operational
  networks and internets.  The design of an Inter-AS Routing
  architecture must therefore simplify the maintenance of configuration
  information, consistent with other requirements. Simplification of
  configuration information may require minimizing the amount of
  configuration information, and using automated or semi-automated
  configuration mechanisms.

A.6.3  Migration

  In any event, whether the address format changes or not, a viable
  transition plan which allows for interoperability must be arranged.



Little                                                         [Page 23]

RFC 1126            Inter-Autonomous System Routing         October 1989


  In a system of this magnitude, which is in operational use, a
  coordinated change is not possible.  Where possible, changes should
  not affect the hosts, since deploying such a change is probably
  several orders of magnitude more difficult than changing only the
  gateways, due to the larger number of host implementations as well as
  hosts.  There are two important questions that need to be addressed:
  (1) migration from the existing EGP to a new IARP; (2) migration from
  the current DD IP to future protocols (including the ISO IP, and
  other future protocols).

A.6.4  Load-Based Routing

  Some existing networks are able to route packets based on current
  load in the network.  For example, one approach to congestion
  involves adjusting the routes in real time to send as much traffic as
  possible on lightly loaded network links.

  This sort of load-based routing is a relatively delicate procedure
  which is prone to instability.  It is particularly difficult to
  achieve stability in multi-vendor environments, in large internets,
  and in environments characterized by a large variation in network
  characteristics.  For these reasons, we believe that it would be a
  mistake to attempt to achieve effective load-based routing in an
  Inter-AS Routing scheme.

A.6.5  Non-Interference Policies

  There are policies which are in effect, or desired to be in effect,
  which are based upon the concept of non-interference.  These policies
  state that the utilization of a given resource is permissible by one
  party as long as that utilization does not disrupt the current or
  future utilization of another party.  These policies are often of the
  kind "you may use the excess capacity of my link" without
  guaranteeing any capacity will be available.  The expectation is to
  be able to utilize the link as needed, perhaps to the exclusion of
  the other party.  The problem with supporting such a policy is the
  need to be cognizant of highly dynamic state information and the
  implicit requirement to adapt to these changes. Rapid, persistent,
  and non-deterministic state changes would lead to routing
  oscillations and looping.  We do not believe it is feasible to
  support policies based on these considerations in a large
  internetworking environment based on the current design of IP.

Security Considerations

  Security issues are not addressed in this memo.





Little                                                         [Page 24]

RFC 1126            Inter-Autonomous System Routing         October 1989


Author's Address

  Mike Little
  Science Applications International Corporation (SAIC)
  8619 Westwood Center Drive
  Vienna, Virginia  22182

  Phone: 703-734-9000

  EMail: [email protected]









































Little                                                         [Page 25]