rfc1009.txt

来自「RFC 的详细文档!」· 文本 代码 · 共 1,513 行 · 第 1/5 页

TXT
1,513
字号


Network Working Group                                          R. Braden
Request for Comments: 1009                                     J. Postel
Obsoletes: 985                                                       ISI
                                                               June 1987

                   Requirements for Internet Gateways


Status of this Memo

   This document is a formal statement of the requirements to be met by
   gateways used in the Internet system.  As such, it is an official
   specification for the Internet community.  Distribution of this memo
   is unlimited.

   This RFC summarizes the requirements for gateways to be used between
   networks supporting the Internet protocols.  While it was written
   specifically to support National Science Foundation research
   programs, the requirements are stated in a general context and are
   applicable throughout the Internet community.

   The purpose of this document is to present guidance for vendors
   offering gateway products that might be used or adapted for use in an
   Internet application.  It enumerates the protocols required and gives
   references to RFCs and other documents describing the current
   specifications.  In a number of cases the specifications are evolving
   and may contain ambiguous or incomplete information.  In these cases
   further discussion giving specific guidance is included in this
   document.  Specific policy issues relevant to the NSF scientific
   networking community are summarized in an Appendix.  As other
   specifications are updated this document will be revised.  Vendors
   are encouraged to maintain contact with the Internet research
   community.

1.  Introduction

   The following material is intended as an introduction and background
   for those unfamiliar with the Internet architecture and the Internet
   gateway model.  General background and discussion on the Internet
   architecture and supporting protocol suite can be found in the DDN
   Protocol Handbook [25] and ARPANET Information Brochure [26], see
   also [19, 28, 30, 31].

   The Internet protocol architecture was originally developed under
   DARPA sponsorship to meet both military and civilian communication
   requirements [32].  The Internet system presently supports a variety
   of government and government-sponsored operational and research
   activities.  In particular, the National Science Foundation (NSF) is
   building a major extension to the Internet to provide user access to




Braden & Postel                                                 [Page 1]



RFC 1009 - Requirements for Internet Gateways                  June 1987


   national supercomputer centers and other national scientific
   resources, and to provide a computer networking capability to a large
   number of universities and colleges.

   In this document there are many terms that may be obscure to one
   unfamiliar with the Internet protocols.  There is not much to be done
   about that but to learn, so dive in.  There are a few terms that are
   much abused in general discussion but are carefully and intentionally
   used in this document.  These few terms are defined here.

      Packet      A packet is the unit of transmission on a physical
                  network.

      Datagram    A datagram is the unit of transmission in the IP
                  protocol.  To cross a particular network a datagram is
                  encapsulated inside a packet.

      Router      A router is a switch that receives data transmission
                  units from input interfaces and, depending on the
                  addresses in those units, routes them to the
                  appropriate output interfaces.  There can be routers
                  at different levels of protocol.  For example,
                  Interface Message Processors (IMPs) are packet-level
                  routers.

      Gateway     In the Internet documentation generally, and in this
                  document specifically, a gateway is an IP-level
                  router.  In the Internet community the term has a long
                  history of this usage [32].

   1.1.  The DARPA Internet Architecture

      1.1.1.  Internet Protocols

         The Internet system consists of a number of interconnected
         packet networks supporting communication among host computers
         using the Internet protocols.  These protocols include the
         Internet Protocol (IP), the Internet Control Message Protocol
         (ICMP), the Transmission Control Protocol (TCP), and
         application protocols depending upon them [22].

         All Internet protocols use IP as the basic data transport
         mechanism.  IP [1,31] is a datagram, or connectionless,
         internetwork service and includes provision for addressing,
         type-of-service specification, fragmentation and reassembly,
         and security information.  ICMP [2] is considered an integral




Braden & Postel                                                 [Page 2]



RFC 1009 - Requirements for Internet Gateways                  June 1987


         part of IP, although it is architecturally layered upon IP.
         ICMP provides error reporting, flow control and first-hop
         gateway redirection.

         Reliable data delivery is provided in the Internet protocol
         suite by transport-level protocols such as the Transmission
         Control Protocol (TCP), which provides end-end retransmission,
         resequencing and connection control.  Transport-level
         connectionless service is provided by the User Datagram
         Protocol (UDP).

      1.1.2.  Networks and Gateways

         The constituent networks of the Internet system are required
         only to provide packet (connectionless) transport.  This
         requires only delivery of individual packets.  According to the
         IP service specification, datagrams can be delivered out of
         order, be lost or duplicated and/or contain errors.  Reasonable
         performance of the protocols that use IP (e.g., TCP) requires
         an IP datagram loss rate of less than 5%.  In those networks
         providing connection-oriented service, the extra reliability
         provided by virtual circuits enhances the end-end robustness of
         the system, but is not necessary for Internet operation.

         Constituent networks may generally be divided into two classes:

         *  Local-Area Networks (LANs)

            LANs may have a variety of designs, typically based upon
            buss, ring, or star topologies.  In general, a LAN will
            cover a small geographical area (e.g., a single building or
            plant site) and provide high bandwidth with low delays.

         *  Wide-Area Networks (WANs)

            Geographically-dispersed hosts and LANs are interconnected
            by wide-area networks, also called long-haul networks.
            These networks may have a complex internal structure of
            lines and packet-routers (typified by ARPANET), or they may
            be as simple as point-to-point lines.

         In the Internet model, constituent networks are connected
         together by IP datagram forwarders which are called "gateways"
         or "IP routers".  In this document, every use of the term
         "gateway" is equivalent to "IP router".  In current practice,
         gateways are normally realized with packet-switching software




Braden & Postel                                                 [Page 3]



RFC 1009 - Requirements for Internet Gateways                  June 1987


         executing on a general-purpose CPU, but special-purpose
         hardware may also be used (and may be required for future
         higher-throughput gateways).

         A gateway is connected to two or more networks, appearing to
         each of these networks as a connected host.  Thus, it has a
         physical interface and an IP address on each of the connected
         networks.  Forwarding an IP datagram generally requires the
         gateway to choose the address of the next-hop gateway or (for
         the final hop) the destination host.  This choice, called
         "routing", depends upon a routing data-base within the gateway.
         This routing data-base should be maintained dynamically to
         reflect the current topology of the Internet system; a gateway
         normally accomplishes this by participating in distributed
         routing and reachability algorithms with other gateways.
         Gateways provide datagram transport only, and they seek to
         minimize the state information necessary to sustain this
         service in the interest of routing flexibility and robustness.

         Routing devices may also operate at the network level; in this
         memo we will call such devices MAC routers (informally called
         "level-2 routers", and also called "bridges").  The name
         derives from the fact that MAC routers base their routing
         decision on the addresses in the MAC headers; e.g., in IEEE
         802.3 networks, a MAC router bases its decision on the 48-bit
         addresses in the MAC header.  Network segments which are
         connected by MAC routers share the same IP network number,
         i.e., they logically form a single IP network.

         Another variation on the simple model of networks connected
         with gateways sometimes occurs: a set of gateways may be
         interconnected with only serial lines, to effectively form a
         network in which the routing is performed at the internetwork
         (IP) level rather than the network level.

      1.1.3.  Autonomous Systems

         For technical, managerial, and sometimes political reasons, the
         gateways of the Internet system are grouped into collections
         called "autonomous systems" [35].  The gateways included in a
         single autonomous system (AS) are expected to:

            *  Be under the control of a single operations and
               maintenance (O&M) organization;

            *  Employ common routing protocols among themselves, to
               maintain their routing data-bases dynamically.



Braden & Postel                                                 [Page 4]



RFC 1009 - Requirements for Internet Gateways                  June 1987


         A number of different dynamic routing protocols have been
         developed (see Section 4.1); the particular choice of routing
         protocol within a single AS is generically called an interior
         gateway protocol or IGP.

         An IP datagram may have to traverse the gateways of two or more
         ASs to reach its destination, and the ASs must provide each
         other with topology information to allow such forwarding.  The
         Exterior Gateway Protocol (EGP) is used for this purpose,
         between gateways of different autonomous systems.

      1.1.4.  Addresses and Subnets

         An IP datagram carries 32-bit source and destination addresses,
         each of which is partitioned into two parts -- a constituent
         network number and a host number on that network.
         Symbolically:

            IP-address ::=  { <Network-number>,  <Host-number> }

         To finally deliver the datagram, the last gateway in its path
         must map the host-number (or "rest") part of an IP address into
         the physical address of a host connection to the constituent
         network.

         This simple notion has been extended by the concept of
         "subnets", which were introduced in order to allow arbitrary
         complexity of interconnected LAN structures within an
         organization, while insulating the Internet system against
         explosive growth in network numbers and routing complexity.
         Subnets essentially provide a two-level hierarchical routing
         structure for the Internet system.  The subnet extension,
         described in RFC-950 [21], is now a required part of the
         Internet architecture.  The basic idea is to partition the
         <host number> field into two parts: a subnet number, and a true
         host number on that subnet.

            IP-address ::=
                    { <Network-number>, <Subnet-number>, <Host-number> }

         The interconnected LANs of an organization will be given the
         same network number but different subnet numbers.  The
         distinction between the subnets of such a subnetted network
         must not be visible outside that network.  Thus, wide-area
         routing in the rest of the Internet will be based only upon the
         <Network-number> part of the IP destination address; gateways
         outside the network will lump <Subnet-number> and <Host-number>



Braden & Postel                                                 [Page 5]



RFC 1009 - Requirements for Internet Gateways                  June 1987


         together to form an uninterpreted "rest" part of the 32-bit IP
         address.  Within the subnetted network, the local gateways must
         route on the basis of an extended network number:

            { <Network-number>, <Subnet-number> }.

         The bit positions containing this extended network number are
         indicated by a 32-bit mask called the "subnet mask" [21]; it is
         recommended but not required that the <Subnet-number> bits be
         contiguous and fall between the <Network-number> and the
         <Host-number> fields.  No subnet should be assigned the value
         zero or -1 (all one bits).

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?