summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc1009.txt
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
committerThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
commit4bfd864f10b68b71482b35c818559068ef8d5797 (patch)
treee3989f47a7994642eb325063d46e8f08ffa681dc /doc/rfc/rfc1009.txt
parentea76e11061bda059ae9f9ad130a9895cc85607db (diff)
doc: Add RFC documents
Diffstat (limited to 'doc/rfc/rfc1009.txt')
-rw-r--r--doc/rfc/rfc1009.txt3134
1 files changed, 3134 insertions, 0 deletions
diff --git a/doc/rfc/rfc1009.txt b/doc/rfc/rfc1009.txt
new file mode 100644
index 0000000..2cd7072
--- /dev/null
+++ b/doc/rfc/rfc1009.txt
@@ -0,0 +1,3134 @@
+
+
+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).
+
+ Flexible use of the available address space will be
+ increasingly important in coping with the anticipated growth of
+ the Internet. Thus, we allow a particular subnetted network to
+ use more than one subnet mask. Several campuses with very
+ large LAN configurations are also creating nested hierarchies
+ of subnets, sub-subnets, etc.
+
+ There are special considerations for the gateway when a
+ connected network provides a broadcast or multicast capability;
+ these will be discussed later.
+
+ 1.2. The Internet Gateway Model
+
+ There are two basic models for interconnecting local-area networks
+ and wide-area (or long-haul) networks in the Internet. In the
+ first, the local-area network is assigned a network number and all
+ gateways in the Internet must know how to route to that network.
+ In the second, the local-area network shares (a small part of) the
+ address space of the wide-area network. Gateways that support
+ this second model are called "address sharing gateways" or
+ "transparent gateways". The focus of this memo is on gateways
+ that support the first model, but this is not intended to exclude
+ the use of transparent gateways.
+
+ 1.2.1. Internet Gateways
+
+ An Internet gateway is an IP-level router that performs the
+ following functions:
+
+ 1. Conforms to specific Internet protocols specified in
+ this document, including the Internet Protocol (IP),
+ Internet Control Message Protocol (ICMP), and others as
+ necessary. See Section 2 (Protocols Required).
+
+ 2. Interfaces to two or more packet networks. For each
+
+
+Braden & Postel [Page 6]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ connected network the gateway must implement the
+ functions required by that network. These functions
+ typically include:
+
+ a. encapsulating and decapsulating the IP datagrams with
+ the connected network framing (e.g., an Ethernet
+ header and checksum);
+
+ b. sending and receiving IP datagrams up to the maximum
+ size supported by that network, this size is the
+ network's "Maximum Transmission Unit" or "MTU";
+
+ c. translating the IP destination address into an
+ appropriate network-level address for the connected
+ network (e.g., an Ethernet hardware address);
+
+ d. responding to the network flow control and error
+ indication, if any.
+
+ See Section 3 (Constituent Network Interface), for
+ details on particular constituent network interfaces.
+
+ 3. Receives and forwards Internet datagrams. Important
+ issues are buffer management, congestion control, and
+ fairness. See Section 4 (Gateway Algorithms).
+
+ a. Recognizes various error conditions and generates
+ ICMP error and information messages as required.
+
+ b. Drops datagrams whose time-to-live fields have
+ reached zero.
+
+ c. Fragments datagrams when necessary to fit into the
+ MTU of the next network.
+
+ 4. Chooses a next-hop destination for each IP datagram,
+ based on the information in its routing data-base. See
+ Section 4 (Gateway Algorithms).
+
+ 5. Supports an interior gateway protocol (IGP) to carry out
+ distributed routing and reachability algorithms with the
+ other gateways in the same autonomous system. In
+ addition, some gateways will need to support the
+ Exterior Gateway Protocol (EGP) to exchange topological
+ information with other autonomous systems. See
+ Section 4 (Gateway Algorithms).
+
+
+
+
+Braden & Postel [Page 7]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 6. Provides system support facilities, including loading,
+ debugging, status reporting, exception reporting and
+ control. See Section 5 (Operation and Maintenance).
+
+ 1.2.2. Embedded Gateways
+
+ A gateway may be a stand-alone computer system, dedicated to
+ its IP router functions. Alternatively, it is possible to
+ embed gateway functionality within a host operating system
+ which supports connections to two or more networks. The
+ best-known example of an operating system with embedded gateway
+ code is the Berkeley BSD system. The embedded gateway feature
+ seems to make internetting easy, but it has a number of hidden
+ pitfalls:
+
+ 1. If a host has only a single constituent-network
+ interface, it should not act as a gateway.
+
+ For example, hosts with embedded gateway code that
+ gratuitously forward broadcast packets or datagrams on
+ the same net often cause packet avalanches.
+
+ 2. If a (multihomed) host acts as a gateway, it must
+ implement ALL the relevant gateway requirements
+ contained in this document.
+
+ For example, the routing protocol issues (see Sections
+ 2.6 and 4.1) and the control and monitoring problems are
+ as hard and important for embedded gateways as for
+ stand-alone gateways.
+
+ Since Internet gateway requirements and
+ specifications may change independently of operating
+ system changes, an administration that operates an
+ embedded gateway in the Internet is strongly advised
+ to have an ability to maintain and update the gateway
+ code (e.g., this might require gateway code source).
+
+ 3. Once a host runs embedded gateway code, it becomes part
+ of the Internet system. Thus, errors in software or
+ configuration of such a host can hinder communication
+ between other hosts. As a consequence, the host
+ administrator must lose some autonomy.
+
+ In many circumstances, a host administrator will need to
+ disable gateway coded embedded in the operating system,
+ and any embedded gateway code must be organized so it
+ can be easily disabled.
+
+
+Braden & Postel [Page 8]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 4. If a host running embedded gateway code is concurrently
+ used for other services, the O&M (operation and
+ maintenance) requirements for the two modes of use may
+ be in serious conflict.
+
+ For example, gateway O&M will in many cases be performed
+ remotely by an operations center; this may require
+ privileged system access which the host administrator
+ would not normally want to distribute.
+
+ 1.2.3. Transparent Gateways
+
+ The basic idea of a transparent gateway is that the hosts on
+ the local-area network behind such a gateway share the address
+ space of the wide-area network in front of the gateway. In
+ certain situations this is a very useful approach and the
+ limitations do not present significant drawbacks.
+
+ The words "in front" and "behind" indicate one of the
+ limitations of this approach: this model of interconnection is
+ suitable only for a geographically (and topologically) limited
+ stub environment. It requires that there be some form of
+ logical addressing in the network level addressing of the
+ wide-area network (that is, all the IP addresses in the local
+ environment map to a few (usually one) physical address in the
+ wide-area network, in a way consistent with the { IP address
+ <-> network address } mapping used throughout the wide-area
+ network).
+
+ Multihoming is possible on one wide-area network, but may
+ present routing problems if the interfaces are geographically
+ or topologically separated. Multihoming on two (or more)
+ wide-area networks is a problem due to the confusion of
+ addresses.
+
+ The behavior that hosts see from other hosts in what is
+ apparently the same network may differ if the transparent
+ gateway cannot fully emulate the normal wide-area network
+ service. For example, if there were a transparent gateway
+ between the ARPANET and an Ethernet, a remote host would not
+ receive a Destination Dead message [3] if it sent a datagram to
+ an Ethernet host that was powered off.
+
+
+
+
+
+
+
+
+Braden & Postel [Page 9]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 1.3. Gateway Characteristics
+
+ Every Internet gateway must perform the functions listed above.
+ However, a vendor will have many choices on power, complexity, and
+ features for a particular gateway product. It may be helpful to
+ observe that the Internet system is neither homogeneous nor
+ fully-connected. For reasons of technology and geography, it is
+ growing into a global-interconnect system plus a "fringe" of LANs
+ around the "edge".
+
+ * The global-interconnect system is comprised of a number of
+ wide-area networks to which are attached gateways of several
+ ASs; there are relatively few hosts connected directly to
+ it. The global-interconnect system includes the ARPANET,
+ the NSFNET "backbone", the various NSF regional and
+ consortium networks, other ARPA sponsored networks such as
+ the SATNET and the WBNET, and the DCA sponsored MILNET. It
+ is anticipated that additional networks sponsored by these
+ and other agencies (such as NASA and DOE) will join the
+ global-interconnect system.
+
+ * Most hosts are connected to LANs, and many organizations
+ have clusters of LANs interconnected by local gateways.
+ Each such cluster is connected by gateways at one or more
+ points into the global-interconnect system. If it is
+ connected at only one point, a LAN is known as a "stub"
+ network.
+
+ Gateways in the global-interconnect system generally require:
+
+ * Advanced routing and forwarding algorithms
+
+ These gateways need routing algorithms which are highly
+ dynamic and also offer type-of-service routing. Congestion
+ is still not a completely resolved issue [24]. Improvements
+ to the current situation will be implemented soon, as the
+ research community is actively working on these issues.
+
+ * High availability
+
+ These gateways need to be highly reliable, providing 24 hour
+ a day, 7 days a week service. In case of failure, they must
+ recover quickly.
+
+ * Advanced O&M features
+
+ These gateways will typically be operated remotely from a
+ regional or national monitoring center. In their
+
+
+Braden & Postel [Page 10]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ interconnect role, they will need to provide sophisticated
+ means for monitoring and measuring traffic and other events
+ and for diagnosing faults.
+
+ * High performance
+
+ Although long-haul lines in the Internet today are most
+ frequently 56 Kbps, DS1 lines (1.5 Mbps) are of increasing
+ importance, and even higher speeds are likely in the future.
+ Full-duplex operation is provided at any of these speeds.
+
+ The average size of Internet datagrams is rather small, of
+ the order of 100 bytes. At DS1 line speeds, the
+ per-datagram processing capability of the gateways, rather
+ than the line speed, is likely to be the bottleneck. To
+ fill a DS1 line with average-sized Internet datagrams, a
+ gateway would need to pass -- receive, route, and send --
+ 2,000 datagrams per second per interface. That is, a
+ gateway which supported 3 DS1 lines and and Ethernet
+ interface would need to be able to pass a dazzling 2,000
+ datagrams per second in each direction on each of the
+ interfaces, or a aggregate throughput of 8,000 datagrams per
+ second, in order to fully utilize DS1 lines. This is beyond
+ the capability of current gateways.
+
+ Note: some vendors count input and output operations
+ separately in datagrams per second figures; for these
+ vendors, the above example would imply 16,000 datagrams
+ per second !
+
+ Gateways used in the "LAN fringe" (e.g., campus networks) will
+ generally have to meet less stringent requirements for
+ performance, availability, and maintenance. These may be high or
+ medium-performance devices, probably competitively procured from
+ several different vendors and operated by an internal organization
+ (e.g., a campus computing center). The design of these gateways
+ should emphasize low average delay and good burst performance,
+ together with delay and type-of-service sensitive resource
+ management. In this environment, there will be less formal O&M,
+ more hand-crafted static configurations for special cases, and
+ more need for inter-operation with gateways of other vendors. The
+ routing mechanism will need to be very flexible, but need not be
+ so highly dynamic as in the global-interconnect system.
+
+ It is important to realize that Internet gateways normally operate
+ in an unattended mode, but that equipment and software faults can
+ have a wide-spread (sometimes global) effect. In any environment,
+
+
+
+Braden & Postel [Page 11]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ a gateway must be highly robust and able to operate, possibly in a
+ degraded state, under conditions of extreme congestion or failure
+ of network resources.
+
+ Even though the Internet system is not fully-interconnected, many
+ parts of the system do need to have redundant connectivity. A
+ rich connectivity allows reliable service despite failures of
+ communication lines and gateways, and it can also improve service
+ by shortening Internet paths and by providing additional capacity.
+ The engineering tradeoff between cost and reliability must be made
+ for each component of the Internet system.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 12]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+2. Protocols Required in Gateways
+
+ The Internet architecture uses datagram gateways to interconnect
+ constituent networks. This section describes the various protocols
+ which a gateway needs to implement.
+
+ 2.1. Internet Protocol (IP)
+
+ IP is the basic datagram protocol used in the Internet system [19,
+ 31]. It is described in RFC-791 [1] and also in MIL-STD-1777 [5]
+ as clarified by RFC-963 [36] ([1] and [5] are intended to describe
+ the same standard, but in quite different words). The subnet
+ extension is described in RFC-950 [21].
+
+ With respect to current gateway requirements the following IP
+ features can be ignored, although they may be required in the
+ future: Type of Service field, Security option, and Stream ID
+ option. However, if recognized, the interpretation of these
+ quantities must conform to the standard specification.
+
+ It is important for gateways to implement both the Loose and
+ Strict Source Route options. The Record Route and Timestamp
+ options are useful diagnostic tools and must be supported in all
+ gateways.
+
+ The Internet model requires that a gateway be able to fragment
+ datagrams as necessary to match the MTU of the network to which
+ they are being forwarded, but reassembly of fragmented datagrams
+ is generally left to the destination hosts. Therefore, a gateway
+ will not perform reassembly on datagrams it forwards.
+
+ However, a gateway will generally receive some IP datagrams
+ addressed to itself; for example, these may be ICMP Request/Reply
+ messages, routing update messages (see Sections 2.3 and 2.6), or
+ for monitoring and control (see Section 5). For these datagrams,
+ the gateway will be functioning as a destination host, so it must
+ implement IP reassembly in case the datagrams have been fragmented
+ by some transit gateway. The destination gateway must have a
+ reassembly buffer which is at least as large as the maximum of the
+ MTU values for its network interfaces and 576. Note also that it
+ is possible for a particular protocol implemented by a host or
+ gateway to require a lower bound on reassembly buffer size which
+ is larger than 576. Finally, a datagram which is addressed to a
+ gateway may use any of that gateway's IP addresses as destination
+ address, regardless of which interface the datagram enters.
+
+ There are five classes of IP addresses: Class A through
+ Class E [23]. Of these, Class D and Class E addresses are
+
+
+Braden & Postel [Page 13]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ reserved for experimental use. A gateway which is not
+ participating in these experiments must ignore all datagrams with
+ a Class D or Class E destination IP address. ICMP Destination
+ Unreachable or ICMP Redirect messages must not result from
+ receiving such datagrams.
+
+ There are certain special cases for IP addresses, defined in the
+ latest Assigned Numbers document [23]. These special cases can be
+ concisely summarized using the earlier notation for an IP address:
+
+ IP-address ::= { <Network-number>, <Host-number> }
+
+ or
+
+ IP-address ::= { <Network-number>, <Subnet-number>,
+ <Host-number> }
+
+ if we also use the notation "-1" to mean the field contains all 1
+ bits. Some common special cases are as follows:
+
+ (a) {0, 0}
+
+ This host on this network. Can only be used as a source
+ address (see note later).
+
+ (b) {0, <Host-number>}
+
+ Specified host on this network. Can only be used as a
+ source address.
+
+ (c) { -1, -1}
+
+ Limited broadcast. Can only be used as a destination
+ address, and a datagram with this address must never be
+ forwarded outside the (sub-)net of the source.
+
+ (d) {<Network-number>, -1}
+
+ Directed broadcast to specified network. Can only be used
+ as a destination address.
+
+ (e) {<Network-number>, <Subnet-number>, -1}
+
+ Directed broadcast to specified subnet. Can only be used as
+ a destination address.
+
+ (f) {<Network-number>, -1, -1}
+
+
+
+Braden & Postel [Page 14]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ Directed broadcast to all subnets of specified subnetted
+ network. Can only be used as a destination address.
+
+ (g) {127, <any>}
+
+ Internal host loopback address. Should never appear outside
+ a host.
+
+ The following two are conventional notation for network numbers,
+ and do not really represent IP addresses. They can never be used
+ in an IP datagram header as an IP source or destination address.
+
+ (h) {<Network-number>, 0}
+
+ Specified network (no host).
+
+ (i) {<Network-number>, <Subnet-number>, 0}
+
+ Specified subnet (no host).
+
+ Note also that the IP broadcast address, which has primary
+ application to Ethernets and similar technologies that support an
+ inherent broadcast function, has an all-ones value in the host
+ field of the IP address. Some early implementations chose the
+ all-zeros value for this purpose, which is not in conformance with
+ the specification [23, 49, 50].
+
+ 2.2. Internet Control Message Protocol (ICMP)
+
+ ICMP is an auxiliary protocol used to convey advice and error
+ messages and is described in RFC-792 [2].
+
+ We will discuss issues arising from gateway handling of particular
+ ICMP messages. The ICMP messages are grouped into two classes:
+ error messages and information messages. ICMP error messages are
+ never sent about ICMP error messages, nor about broadcast or
+ multicast datagrams.
+
+ The ICMP error messages are: Destination Unreachable, Redirect,
+ Source Quench, Time Exceeded, and Parameter Problem.
+
+ The ICMP information messages are: Echo, Information,
+ Timestamp, and Address Mask.
+
+
+
+
+
+
+
+Braden & Postel [Page 15]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 2.2.1. Destination Unreachable
+
+ The distinction between subnets of a subnetted network, which
+ depends on the address mask described in RFC-950 [21], must not
+ be visible outside that network. This distinction is important
+ in the case of the ICMP Destination Unreachable message.
+
+ The ICMP Destination Unreachable message is sent by a gateway
+ in response to a datagram which it cannot forward because the
+ destination is unreachable or down. The gateway chooses one of
+ the following two types of Destination Unreachable messages to
+ send:
+
+ * Net Unreachable
+
+ * Host Unreachable
+
+ Net unreachable implies that an intermediate gateway was unable
+ to forward a datagram, as its routing data-base gave no next
+ hop for the datagram, or all paths were down. Host Unreachable
+ implies that the destination network was reachable, but that a
+ gateway on that network was unable to reach the destination
+ host. This might occur if the particular destination network
+ was able to determine that the desired host was unreachable or
+ down. It might also occur when the destination host was on a
+ subnetted network and no path was available through the subnets
+ of this network to the destination. Gateways should send Host
+ Unreachable messages whenever other hosts on the same
+ destination network might be reachable; otherwise, the source
+ host may erroneously conclude that ALL hosts on the network are
+ unreachable, and that may not be the case.
+
+ 2.2.2. Redirect
+
+ The ICMP Redirect message is sent by a gateway to a host on the
+ same network, in order to change the gateway used by the host
+ for routing certain datagrams. A choice of four types of
+ Redirect messages is available to specify datagrams destined
+ for a particular host or network, and possibly with a
+ particular type-of-service.
+
+ If the directly-connected network is not subnetted, a gateway
+ can normally send a network Redirect which applies to all hosts
+ on a specified remote network. Using a network rather than a
+ host Redirect may economize slightly on network traffic and on
+ host routing table storage. However, the saving is not
+ significant, and subnets create an ambiguity about the subnet
+
+
+
+Braden & Postel [Page 16]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ mask to be used to interpret a network Redirect. In a general
+ subnet environment, it is difficult to specify precisely the
+ cases in which network Redirects can be used.
+
+ Therefore, it is recommended that a gateway send only host (or
+ host and type-of-service) Redirects.
+
+ 2.2.3. Source Quench
+
+ All gateways must contain code for sending ICMP Source Quench
+ messages when they are forced to drop IP datagrams due to
+ congestion. Although the Source Quench mechanism is known to
+ be an imperfect means for Internet congestion control, and
+ research towards more effective means is in progress, Source
+ Quench is considered to be too valuable to omit from production
+ gateways.
+
+ There is some argument that the Source Quench should be sent
+ before the gateway is forced to drop datagrams [62]. For
+ example, a parameter X could be established and set to have
+ Source Quench sent when only X buffers remain. Or, a parameter
+ Y could be established and set to have Source Quench sent when
+ only Y per cent of the buffers remain.
+
+ Two problems for a gateway sending Source Quench are: (1) the
+ consumption of bandwidth on the reverse path, and (2) the use
+ of gateway CPU time. To ameliorate these problems, a gateway
+ must be prepared to limit the frequency with which it sends
+ Source Quench messages. This may be on the basis of a count
+ (e.g., only send a Source Quench for every N dropped datagrams
+ overall or per given source host), or on the basis of a time
+ (e.g., send a Source Quench to a given source host or overall
+ at most once per T millseconds). The parameters (e.g., N or T)
+ must be settable as part of the configuration of the gateway;
+ furthermore, there should be some configuration setting which
+ disables sending Source Quenches. These configuration
+ parameters, including disabling, should ideally be specifiable
+ separately for each network interface.
+
+ Note that a gateway itself may receive a Source Quench as the
+ result of sending a datagram targeted to another gateway. Such
+ datagrams might be an EGP update, for example.
+
+ 2.2.4. Time Exceeded
+
+ The ICMP Time Exceeded message may be sent when a gateway
+ discards a datagram due to the TTL being reduced to zero. It
+
+
+
+Braden & Postel [Page 17]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ may also be sent by a gateway if the fragments of a datagram
+ addressed to the gateway itself cannot be reassembled before
+ the time limit.
+
+ 2.2.5. Parameter Problem
+
+ The ICMP Parameter Problem message may be sent to the source
+ host for any problem not specifically covered by another ICMP
+ message.
+
+ 2.2.6. Address Mask
+
+ Host and gateway implementations are expected to support the
+ ICMP Address Mask messages described in RFC-950 [21].
+
+ 2.2.7. Timestamp
+
+ The ICMP Timestamp message has proven to be useful for
+ diagnosing Internet problems. The preferred form for a
+ timestamp value, the "standard value", is in milliseconds since
+ midnight GMT. However, it may be difficult to provide this
+ value with millisecond resolution. For example, many systems
+ use clocks which update only at line frequency, 50 or 60 times
+ per second. Therefore, some latitude is allowed in a
+ "standard" value:
+
+ * The value must be updated at a frequency of at least 30
+ times per second (i.e., at most five low-order bits of
+ the value may be undefined).
+
+ * The origin of the value must be within a few minutes of
+ midnight, i.e., the accuracy with which operators
+ customarily set CPU clocks.
+
+ To meet the second condition for a stand-alone gateway, it will
+ be necessary to query some time server host when the gateway is
+ booted or restarted. It is recommended that the UDP Time
+ Server Protocol [44] be used for this purpose. A more advanced
+ implementation would use NTP (Network Time Protocol) [45] to
+ achieve nearly millisecond clock synchronization; however, this
+ is not required.
+
+ Even if a gateway is unable to establish its time origin, it
+ ought to provide a "non-standard" timestamp value (i.e., with
+ the non-standard bit set), as a time in milliseconds from
+ system startup.
+
+
+
+
+Braden & Postel [Page 18]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ New gateways, especially those expecting to operate at T1 or
+ higher speeds, are expected to have at least millisecond
+ clocks.
+
+ 2.2.8. Information Request/Reply
+
+ The Information Request/Reply pair was intended to support
+ self-configuring systems such as diskless workstations, to
+ allow them to discover their IP network numbers at boot time.
+ However, the Reverse ARP (RARP) protocol [15] provides a better
+ mechanism for a host to use to discover its own IP address, and
+ RARP is recommended for this purpose. Information
+ Request/Reply need not be implemented in a gateway.
+
+ 2.2.9. Echo Request/Reply
+
+ A gateway must implement ICMP Echo, since it has proven to be
+ an extremely useful diagnostic tool. A gateway must be
+ prepared to receive, reassemble, and echo an ICMP Echo Request
+ datagram at least as large as the maximum of 576 and the MTU's
+ of all of the connected networks. See the discussion of IP
+ reassembly in gateways, Section 2.1.
+
+ The following rules resolve the question of the use of IP
+ source routes in Echo Request and Reply datagrams. Suppose a
+ gateway D receives an ICMP Echo Request addressed to itself
+ from host S.
+
+ 1. If the Echo Request contained no source route, D should
+ send an Echo Reply back to S using its normal routing
+ rules. As a result, the Echo Reply may take a different
+ path than the Request; however, in any case, the pair
+ will sample the complete round-trip path which any other
+ higher-level protocol (e.g., TCP) would use for its data
+ and ACK segments between S and D.
+
+ 2. If the Echo Request did contain a source route, D should
+ send an Echo Reply back to S using as a source route the
+ return route built up in the source-routing option of
+ the Echo Request.
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 19]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 2.3. Exterior Gateway Protocol (EGP)
+
+ EGP is the protocol used to exchange reachability information
+ between Autonomous Systems of gateways, and is defined in
+ RFC-904 [11]. See also RFC-827 [51], RFC-888 [46], and
+ RFC-975 [27] for background information. The most widely used EGP
+ implementation is described in RFC-911 [13].
+
+ When a dynamic routing algorithm is operated in the gateways of an
+ Autonomous System (AS), the routing data-base must be coupled to
+ the EGP implementation. This coupling should ensure that, when a
+ net is determined to be unreachable by the routing algorithm, the
+ net will not be declared reachable to other ASs via EGP. This
+ requirement is designed to minimize spurious traffic to "black
+ holes" and to ensure fair utilization of the resources on other
+ systems.
+
+ The present EGP specification defines a model with serious
+ limitations, most importantly a restriction against propagating
+ "third party" EGP information in order to prevent long-lived
+ routing loops [27]. This effectively limits EGP to a two-level
+ hierarchy; the top level is formed by the "core" AS, while the
+ lower level is composed of those ASs which are direct neighbor
+ gateways to the core AS. In practice, in the current Internet,
+ nearly all of the "core gateways" are connected to the ARPANET,
+ while the lower level is composed of those ASs which are directly
+ gatewayed to the ARPANET or MILNET.
+
+ RFC-975 [27] suggested one way to generalize EGP to lessen these
+ topology restrictions; it has not been adopted as an official
+ specification, although its ideas are finding their way into the
+ new EGP developments. There are efforts underway in the research
+ community to develop an EGP generalization which will remove these
+ restrictions.
+
+ In EGP, there is no standard interpretation (i.e., metric) for the
+ distance fields in the update messages, so distances are
+ comparable only among gateways of the same AS. In using EGP data,
+ a gateway should compare the distances among gateways of the same
+ AS and prefer a route to that gateway which has the smallest
+ distance value.
+
+ The values to be announced in the distance fields for particular
+ networks within the local AS should be a gateway configuration
+ parameter; by suitable choice of these values, it will be possible
+ to arrange primary and backup paths from other AS's. There are
+ other EGP parameters, such as polling intervals, which also need
+ to be set in the gateway configuration.
+
+
+Braden & Postel [Page 20]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ When routing updates become large they must be transmitted in
+ parts. One strategy is to use IP fragmentation, another is to
+ explicitly send the routing information in sections. The Internet
+ Engineering Task Force is currently preparing a recommendation on
+ this and other EGP engineering issues.
+
+ 2.4. Address Resolution Protocol (ARP)
+
+ ARP is an auxiliary protocol used to perform dynamic address
+ translation between LAN hardware addresses and Internet addresses,
+ and is described in RFC-826 [4].
+
+ ARP depends upon local network broadcast. In normal ARP usage,
+ the initiating host broadcasts an ARP Request carrying a target IP
+ address; the corresponding target host, recognizing its own IP
+ address, sends back an ARP Reply containing its own hardware
+ interface address.
+
+ A variation on this procedure, called "proxy ARP", has been used
+ by gateways attached to broadcast LANs [14]. The gateway sends an
+ ARP Reply specifying its interface address in response to an ARP
+ Request for a target IP address which is not on the
+ directly-connected network but for which the gateway offers an
+ appropriate route. By observing ARP and proxy ARP traffic, a
+ gateway may accumulate a routing data-base [14].
+
+ Proxy ARP (also known in some quarters as "promiscuous ARP" or
+ "the ARP hack") is useful for routing datagrams from hosts which
+ do not implement the standard Internet routing rules fully -- for
+ example, host implementations which predate the introduction of
+ subnetting. Proxy ARP for subnetting is discussed in detail in
+ RFC-925 [14].
+
+ Reverse ARP (RARP) allows a host to map an Ethernet interface
+ address into an IP address [15]. RARP is intended to allow a
+ self-configuring host to learn its own IP address from a server at
+ boot time.
+
+ 2.5. Constituent Network Access Protocols
+
+ See Section 3.
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 21]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 2.6. Interior Gateway Protocols
+
+ Distributed routing algorithms continue to be the subject of
+ research and engineering, and it is likely that advances will be
+ made over the next several years. A good algorithm needs to
+ respond rapidly to real changes in Internet connectivity, yet be
+ stable and insensitive to transients. It needs to synchronize the
+ distributed data-base across gateways of its Autonomous System
+ rapidly (to avoid routing loops), while consuming only a small
+ fraction of the available bandwidth.
+
+ Distributed routing algorithms are commonly broken down into the
+ following three components:
+
+ A. An algorithm to assign a "length" to each Internet path.
+
+ The "length" may be a simple count of hops (1, or infinity
+ if the path is broken), or an administratively-assigned
+ cost, or some dynamically-measured cost (usually an average
+ delay).
+
+ In order to determine a path length, each gateway must at
+ least test whether each of its neighbors is reachable; for
+ this purpose, there must be a "reachability" or "neighbor
+ up/down" protocol.
+
+ B. An algorithm to compute the shortest path(s) to a given
+ destination.
+
+ C. A gateway-gateway protocol used to exchange path length and
+ routing information among gateways.
+
+ The most commonly-used IGPs in Internet gateways are as follows.
+
+ 2.6.1. Gateway-to-Gateway Protocol (GGP)
+
+ GGP was designed and implemented by BBN for the first
+ experimental Internet gateways [41]. It is still in use in the
+ BBN LSI/11 gateways, but is regarded as having serious
+ drawbacks [58]. GGP is based upon an algorithm used in the
+ early ARPANET IMPs and later replaced by SPF (see below).
+
+ GGP is a "min-hop" algorithm, i.e., its length measure is
+ simply the number of network hops between gateway pairs. It
+ implements a distributed shortest-path algorithm, which
+ requires global convergence of the routing tables after a
+ change in topology or connectivity. Each gateway sends a GGP
+
+
+
+Braden & Postel [Page 22]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ routing update only to its neighbors, but each update includes
+ an entry for every known network, where each entry contains the
+ hop count from the gateway sending the update.
+
+ 2.6.2. Shortest-Path-First (SPF) Protocols
+
+ SPF [40] is the name for a class of routing algorithms based on
+ a shortest-path algorithm of Dijkstra. The current ARPANET
+ routing algorithm is SPF, and the BBN Butterfly gateways also
+ use SPF. Its characteristics are considered superior to
+ GGP [58].
+
+ Under SPF, the routing data-base is replicated rather than
+ distributed. Each gateway will have its own copy of the same
+ data-base, containing the entire Internet topology and the
+ lengths of every path. Since each gateway has all the routing
+ data and runs a shortest-path algorithm locally, there is no
+ problem of global convergence of a distributed algorithm, as in
+ GGP. To build this replicated data-base, a gateway sends SPF
+ routing updates to ALL other gateways; these updates only list
+ the distances to each of the gateway's neighbors, making them
+ much smaller than GGP updates. The algorithm used to
+ distribute SPF routing updates involves reliable flooding.
+
+ 2.6.3. Routing Information (RIP)
+
+ RIP is the name often used for a class of routing protocols
+ based upon the Xerox PUP and XNS routing protocols. These are
+ relatively simple, and are widely available because they are
+ incorporated in the embedded gateway code of Berkeley BSD
+ systems. Because of this simplicity, RIP protocols have come
+ the closest of any to being an "Open IGP", i.e., a protocol
+ which can be used between different vendors' gateways.
+ Unfortunately, there is no standard, and in fact not even a
+ good document, for RIP.
+
+ As in GGP, gateways using RIP periodically broadcast their
+ routing data-base to their neighbor gateways, and use a
+ hop-count as the metric.
+
+ A fixed value of the hop-count (normally 16) is defined to be
+ "infinity", i.e., network unreachable. A RIP implementation
+ must include measures to avoid both the slow-convergence
+ phenomen called "counting to infinity" and the formation of
+ routing loops. One such measure is a "hold-down" rule. This
+ rule establishes a period of time (typically 60 seconds) during
+ which a gateway will ignore new routing information about a
+ given network, once the gateway has learned that network is
+
+
+Braden & Postel [Page 23]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ unreachable (has hop-count "infinity"). The hold-down period
+ must be settable in the gateway configuration; if gateways with
+ different hold-down periods are using RIP in the same
+ Autonomous System, routing loops are a distinct possibility.
+ In general, the hold-down period is chosen large enough to
+ allow time for unreachable status to propagate to all gateways
+ in the AS.
+
+ 2.6.4. Hello
+
+ The "Fuzzball" software for an LSI/11 developed by Dave Mills
+ incorporated an IGP called the "Hello" protocol [39]. This IGP
+ is mentioned here because the Fuzzballs have been widely used
+ in Internet experimentation, and because they have served as a
+ testbed for many new routing ideas.
+
+ 2.7. Monitoring Protocols
+
+ See Section 5 of this document.
+
+ 2.8. Internet Group Management Protocol (IGMP)
+
+ An extension to the IP protocol has been defined to provide
+ Internet-wide multicasting, i.e., delivery of copies of the same
+ IP datagram to a set of Internet hosts [47, 48]. This delivery is
+ to be performed by processes known as "multicasting agents", which
+ reside either in a host on each net or (preferably) in the
+ gateways.
+
+ The set of hosts to which a datagram is delivered is called a
+ "host group", and there is a host-agent protocol called IGMP,
+ which a host uses to join, leave, or create a group. Each host
+ group is distinguished by a Class D IP address.
+
+ This multicasting mechanism and its IGMP protocol are currently
+ experimental; implementation in vendor gateways would be premature
+ at this time. A datagram containing a Class D IP address must be
+ dropped, with no ICMP error message.
+
+
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 24]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+3. Constituent Network Interface
+
+ This section discusses the rules used for transmission of IP
+ datagrams on the most common types of constituent networks. A
+ gateway must be able to send and receive IP datagrams of any size up
+ to the MTU of any constituent network to which it is connected.
+
+ 3.1. Public data networks via X.25
+
+ The formats specified for public data networks accessed via X.25
+ are described in RFC-877 [8]. Datagrams are transmitted over
+ standard level-3 virtual circuits as complete packet sequences.
+ Virtual circuits are usually established dynamically as required
+ and time-out after a period of no traffic. Link-level
+ retransmission, resequencing and flow control are performed by the
+ network for each virtual circuit and by the LAPB link-level
+ protocol. Note that a single X.25 virtual circuit may be used to
+ multiplex all IP traffic between a pair of hosts. However,
+ multiple parallel virtual circuits may be used in order to improve
+ the utilization of the subscriber access line, in spite of small
+ X.25 window sizes; this can result in random resequencing.
+
+ The correspondence between Internet and X.121 addresses is usually
+ established by table-lookup. It is expected that this will be
+ replaced by some sort of directory procedure in the future. The
+ table of the hosts on the Public Data Network is in the Assigned
+ Numbers [23].
+
+ The normal MTU is 576; however, the two DTE's (hosts or gateways)
+ can use X.25 packet size negotiation to increase this value [8].
+
+ 3.2. ARPANET via 1822 LH, DH, or HDH
+
+ The formats specified for ARPANET networks using 1822 access are
+ described in BBN Report 1822 [3], which includes the procedures
+ for several subscriber access methods. The Distant Host (DH)
+ method is used when the host and IMP (the Defense Communication
+ Agency calls it a Packet Switch Node or PSN) are separated by not
+ more than about 2000 feet of cable, while the HDLC Distant Host
+ (HDH) is used for greater distances where a modem is required.
+ Under HDH, retransmission, resequencing and flow control are
+ performed by the network and by the HDLC link-level protocol.
+
+ The IP encapsulation format is simply to include the IP datagram
+ as the data portion of an 1822 message. In addition, the
+ high-order 8 bits of the Message Id field (also known as the
+ "link" field") should be set to 155 [23]. The MTU is 1007 octets.
+
+
+
+Braden & Postel [Page 25]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ While the ARPANET 1822 protocols are widely used at present, they
+ are expected to be eventually overtaken by the DDN Standard X.25
+ protocol (see Section 3.3). The original IP address mapping
+ (RFC-796 [38]) is in the process of being replaced by a new
+ interface specification called AHIP-E; see RFC-1005 [61] for the
+ proposal.
+
+ Gateways connected to ARPANET or MILNET IMPs using 1822 access
+ must incorporate features to avoid host-port blocking (i.e., RFNM
+ counting) and to detect and report as ICMP Unreachable messages
+ the failure of destination hosts or gateways (i.e., convert the
+ 1822 error messages to the appropriate ICMP messages).
+
+ In the development of a network interface it will be useful to
+ review the IMP end-to-end protocol described in RFC-979 [29].
+
+ 3.3. ARPANET via DDN Standard X.25
+
+ The formats specified for ARPANET networks via X.25 are described
+ in the Defense Data Network X.25 Host Interface Specification [6],
+ which describes two sets of procedures: the DDN Basic X.25, and
+ the DDN Standard X.25. Only DDN Standard X.25 provides the
+ functionality required for interoperability assumptions of the
+ Internet protocol.
+
+ The DDN Standard X.25 procedures are similar to the public data
+ network X.25 procedures, except in the address mappings.
+ Retransmission, resequencing and flow control are performed by the
+ network and by the LAPB link-level protocol. Multiple parallel
+ virtual circuits may be used in order to improve the utilization
+ of the subscriber access line; this can result in random
+ resequencing.
+
+ Gateways connected to ARPANET or MILNET using Standard X.25 access
+ must detect and report as ICMP Unreachable messages the failure of
+ destination hosts or gateways (i.e., convert the X.25 diagnostic
+ codes to the appropriate ICMP messages).
+
+ To achieve compatibility with 1822 interfaces, the effective MTU
+ for a Standard X.25 interface is 1007 octets.
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 26]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 3.4. Ethernet and IEEE 802
+
+ The formats specified for Ethernet networks are described in
+ RFC-894 [10]. Datagrams are encapsulated as Ethernet packets with
+ 48-bit source and destination address fields and a 16-bit type
+ field (the type field values are listed in the Assigned
+ Numbers [23]). Address translation between Ethernet addresses and
+ Internet addresses is managed by the Address Resolution Protocol,
+ which is required in all Ethernet implementations. There is no
+ explicit link-level retransmission, resequencing or flow control,
+ although most hardware interfaces will retransmit automatically in
+ case of collisions on the cable.
+
+ The IEEE 802 networks use a Link Service Access Point (LSAP) field
+ in much the same way the ARPANET uses the "link" field. Further,
+ there is an extension of the LSAP header called the Sub-Network
+ Access Protocol (SNAP).
+
+ The 802.2 encapsulation is used on 802.3, 802.4, and 802.5 network
+ by using the SNAP with an organization code indicating that the
+ following 16 bits specify the Ether-Type code [23].
+
+ Headers:
+
+ ...--------+--------+--------+
+ MAC Header| Length | 802.{3/4/5} MAC
+ ...--------+--------+--------+
+
+ +--------+--------+--------+
+ | DSAP=K1| SSAP=K1| control| 802.2 SAP
+ +--------+--------+--------+
+
+ +--------+--------+--------+--------+--------+
+ |protocol id or org code=K2| Ether-Type | 802.2 SNAP
+ +--------+--------+--------+--------+--------+
+
+ The total length of the SAP Header and the SNAP header is
+ 8-octets, making the 802.2 protocol overhead come out on a 64-bit
+ boundary.
+
+ K1 is 170. The IEEE likes to talk about things in bit
+ transmission order and specifies this value as 01010101. In
+ big-endian order, as used in the Internet specifications, this
+ becomes 10101010 binary, or AA hex, or 170 decimal. K2 is 0
+ (zero).
+
+ The use of the IP LSAP (K1 = 6) is reserved for future
+ development.
+
+
+Braden & Postel [Page 27]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ The assigned values for the Ether-Type field are the same for
+ either this IEEE 802 encapsulation or the basic Ethernet
+ encapsulation [10].
+
+ In either Ethernets or IEEE 802 nets, the IP datagram is the data
+ portion of the packet immediately following the Ether-Type.
+
+ The MTU for an Ethernet or its IEEE-standard equivalent (802.3) is
+ 1500 octets.
+
+ 3.5. Serial-Line Protocols
+
+ In some configurations, gateways may be interconnected with each
+ other by means of serial asynchronous or synchronous lines, with
+ or without modems. When justified by the expected error rate and
+ other factors, a link-level protocol may be required on the serial
+ line. While there is no single Internet standard for this
+ protocol, it is suggested that one of the following protocols be
+ used.
+
+ * X.25 LAPB (Synchronous Lines)
+
+ This is the link-level protocol used for X.25 network
+ access. It includes HDLC "bit-stuffing" as well as
+ rotating-window flow control and reliable delivery.
+
+ A gateway must be configurable to play the role of either
+ the DCE or the DTE.
+
+ * HDLC Framing (Synchronous Lines)
+
+ This is just the bit-stuffing and framing rules of LAPB. It
+ is the simplest choice, although it provides no flow control
+ or reliable delivery; however, it does provide error
+ detection.
+
+ * Xerox Synchronous Point-to-Point (Synchronous Lines)
+
+ This Xerox protocol is an elaboration upon HDLC framing that
+ includes negotiation of maximum packet sizes, dial-up or
+ dedicated circuits, and half- or full-duplex operation [12].
+
+ * Serial Line Framing Protocol (Asynchronous Lines)
+
+ This protocol is included in the MIT PC/IP package for an
+ IBM PC and is defined in Appendix I to the manual for that
+ system [20].
+
+
+
+Braden & Postel [Page 28]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ It will be important to make efficient use of the bandwidth
+ available on a serial line between gateways. For example, it is
+ desirable to provide some form of data compression. One possible
+ standard compression algorithm, "Thinwire II", is described in
+ RFC-914 [42]. This and similar algorithms are tuned to the
+ particular types of redundancy which occur in IP and TCP headers;
+ however, more work is necessary to define a standard serial-line
+ compression protocol for Internet gateways. Until a standard has
+ been adopted, each vendor is free to choose a compression
+ algorithm; of course, the result will only be useful on a serial
+ line between two gateways using the same compression algorithm.
+
+ Another way to ensure maximum use of the bandwidth is to avoid
+ unnecessary retransmissions at the link level. For some kinds of
+ IP traffic, low delay is more important than reliable delivery.
+ The serial line driver could distinguish such datagrams by their
+ IP TOS field, and place them on a special high-priority,
+ no-retransmission queue.
+
+ A serial point-to-point line between two gateways may be
+ considered to be a (particularly simple) network, a "null net".
+ Considered in this way, a serial line requires no special
+ considerations in the routing algorithms of the connected
+ gateways, but does need an IP network number. To avoid the
+ wholesale consumption of Internet routing data-base space by null
+ nets, we strongly recommend that subnetting be used for null net
+ numbering, whenever possible.
+
+ For example, assume that network 128.203 is to be constructed
+ of gateways joined by null nets; these nets are given (sub-)net
+ numbers 128.203.1, 128.203.2, etc., and the two interfaces on
+ each end of null net 128.203.s might have IP addresses
+ 128.203.s.1 and 128.203.s.2.
+
+ An alternative model of a serial line is that it is not a network,
+ but rather an internal communication path joining two "half
+ gateways". It is possible to design an IGP and routing algorithm
+ that treats a serial line in this manner [39, 52].
+
+
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 29]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+4. Gateway Algorithms
+
+ Gateways are general packet-switches that forward packets according
+ to the IP address, i.e., they are IP routers. While it is beyond
+ the scope of this document to specify the details of the mechanisms
+ used in any particular, perhaps proprietary, gateway architecture,
+ there are a number of basic algorithms which must be provided by any
+ acceptable design.
+
+ 4.1. Routing Algorithm
+
+ The routing mechanism is fundamental to Internet operation. In
+ all but trivial network topologies, robust Internet service
+ requires some degree of routing dynamics, whether it be effected
+ by manual or automatic means or by some combination of both. In
+ particular, if routing changes are made manually, it must be
+ possible to make these routing changes from a remote Network
+ Operation Center (NOC) without taking down the gateway for
+ reconfiguration. If static routes are used, there must be
+ automatic fallback or rerouting features.
+
+ Handling unpredictable changes in Internet connectivity must be
+ considered the normal case, so that systems of gateways will
+ normally be expected to have a routing algorithm with the
+ capability of reacting to link and other gateway failures and
+ changing the routing automatically.
+
+ This document places no restriction on the type of routing
+ algorithm, e.g., node-based, link-based or any other algorithm, or
+ on the routing distance metric, e.g., delay or hop-count.
+ However, the following features are considered necessary for a
+ successful gateway routing algorithm:
+
+ 1. The algorithm must sense the failure or restoration of a
+ link or other gateway and switch to appropriate paths. A
+ design objective is to switch paths within an interval less
+ than the typical TCP user time-out (one minute is a safe
+ assumption).
+
+ 2. The algorithm must suppress routing loops between neighbor
+ gateways and must contain provisions to avoid or suppress
+ routing loops that may form between non-neighbor gateways.
+ A design objective is for no loop to persist for longer
+ than an interval greater than the typical TCP user
+ time-out.
+
+ 3. The control traffic necessary to operate the routing
+ algorithm must not significantly degrade or disrupt normal
+
+
+Braden & Postel [Page 30]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ network operation. Changes in state which might
+ momentarily disrupt normal operation in a local-area must
+ not cause disruption in remote areas of the network.
+
+ 4. As the size of the network increases, the demand on
+ resources must be controlled in an efficient way. Table
+ lookups should be hashed, for example, and data-base
+ updates handled piecemeal, with only incremental changes
+ broadcast over a wide-area.
+
+ 5. The size of the routing data-base must not be allowed to
+ exceed a constant, independent of network topology, times
+ the number of nodes times the mean connectivity (average
+ number of incident links). An advanced design might not
+ require that the entire routing data-base be kept in any
+ particular gateway, so that discovery and caching
+ techniques would be necessary.
+
+ 6. Reachability and delay metrics, if used, must not depend on
+ direct connectivity to all other gateways or on the use of
+ network-specific broadcast mechanisms. Polling procedures
+ (e.g., for consistency checking) must be used only
+ sparingly and in no case introduce an overhead exceeding a
+ constant, independent of network topology, times the
+ longest non-looping path.
+
+ 7. Default routes (generally intended as a means to reduce the
+ size of the routing data-base) must be used with care,
+ because of the many problems with multiple paths, loops,
+ and mis-configurations which routing defaults have caused.
+
+ The most common application of defaults is for routing
+ within an Internet region which is connected in a strictly
+ hierarchical fashion and is a stub from the rest of the
+ Internet system. In this case, the default is used for
+ routing "up" the tree. Unfortunately, such restricted
+ topology seldom lasts very long, and defaults cease to
+ work.
+
+ More generally, defaults could be used for initial routing
+ guesses, with final routes to be discovered and cached from
+ external or internal data-bases via the routing algorithm
+ or EGP.
+
+
+
+
+
+
+
+Braden & Postel [Page 31]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 4.2. Subnets and Routing
+
+ We will call a gateway "subnetted" if at least one of its
+ interfaces is connected to a subnet; the set of gateways directly
+ connected to subnets of the same network will be referred to as a
+ "subnet cluster". For example, in the following diagram, network
+ 2 is subnetted, with subnets 2.1 and 2.2, but network 1 is not;
+ gateways 1, 2, and 3 are subnetted and are members of the same
+ subnet cluster.
+
+ (Net 1) === [Gwy 1] === (Net 2.1) === [Gwy 2] === (Net 2.2)
+ | |
+ | |
+ =================== [Gwy 3] =======================
+
+ Subnets have the following effects on gateway routing:
+
+ A. Non-subnetted gateways are not affected at all.
+
+ B. The routing data-base in a subnetted gateway must consider
+ the address mask for subnet entries.
+
+ C. Routing updates among the gateways in the same subnet
+ cluster must include entries for the various subnets. The
+ corresponding address mask(s) may be implicit, but for full
+ generality the mask needs to be given explicitly for each
+ entry. Note that if the routing data-base included a full
+ 32-bit mask for every IP network, the gateway could deal
+ with networks and subnets in a natural way. This would
+ also handle the case of multiple subnet masks for the same
+ subnetted network.
+
+ D. Routing updates from a subnetted gateway to a gateway
+ outside the cluster can contain nets, never subnets.
+
+ E. If a subnetted gateway (e.g., gateway 2 above) is unable to
+ forward a datagram from one subnet to another subnet of the
+ same network, then it must return a Host Unreachable, not a
+ Net Unreachable, as discussed in Section 2.2.1.
+
+ When considering the choice of routing protocol, a gateway builder
+ must consider how that protocol generalizes for subnets. For some
+ routing protocols it will be possible to use the same procedures
+ in a regular gateway and a subnetted gateway, with only a change
+ of parameters (e.g., address masks).
+
+ A different subnet address mask must be configurable for each
+
+
+
+Braden & Postel [Page 32]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ interface of a given gateway. This will allow a subnetted gateway
+ to connect to two different subnetted networks, or to connect two
+ subnets of the same network with different masks.
+
+ 4.3 Resource Allocation
+
+ In order to perform its basic datagram-forwarding functions, a
+ gateway must allocate resources; its packet buffers and CPU time
+ must be allocated to packets it receives from connected networks,
+ while the bandwidth to each of the networks must also be allocated
+ for sending packets. The choice of allocation strategies will be
+ critical when a particular resource is scarce. The most obvious
+ allocation strategy, first-come-first-served (FCFS), may not be
+ appropriate under overload conditions, for reasons which we will
+ now explore.
+
+ A first example is buffer allocation. It is important for a
+ gateway to allocate buffers fairly among all of its connected
+ networks, even if these networks have widely varying bandwidths.
+ A high-speed interface must not be allowed to starve slower
+ interfaces of buffers. For example, consider a gateway with a
+ 10 Mbps Ethernet connection and two 56 Kbps serial lines. A buggy
+ host on the Ethernet may spray that gateway interface with packets
+ at high speed. Without careful algorithm design in the gateway,
+ this could tie up all the gateway buffers in such a way that
+ transit traffic between the serial lines would be completely
+ stopped.
+
+ Allocation of output bandwidth may also require non-FCFS
+ strategies. In an advanced gateway design, allocation of output
+ bandwidth may depend upon Type-of-Service bits in the IP headers.
+ A gateway may also want to give priority to datagrams for its own
+ up/down and routing protocols.
+
+ Finally, Nagle [24] has suggested that gateways implement "fair
+ queueing", i.e., sharing output bandwidth equitably among the
+ current traffic sources. In his scheme, for each network
+ interface there would be a dynamically-built set of output queues,
+ one per IP source address; these queues would be serviced in a
+ round-robin fashion to share the bandwidth. If subsequent
+ research shows fair queueing to be desirable, it will be added to
+ a future version of this document as a universal requirement.
+
+
+
+
+
+
+
+
+Braden & Postel [Page 33]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 4.4. Special Addresses and Filters
+
+ Section 2.1 contained a list of the 32-bit IP addresses which have
+ special meanings. They do not in general represent unique IP
+ addresses of Internet hosts, and there are restrictions on their
+ use in IP headers.
+
+ We can distinguish two classes of these special cases. The first
+ class (specifically, cases (a), (b), (c), (g), (h), and (i) in
+ section 2.1) contains addresses which should never appear in the
+ destination address field of any IP datagram, so a gateway should
+ never be asked to route to one of these addresses. However, in
+ the real world of imperfect implementations and configuration
+ errors, such bad destination addresses do occur. It is the
+ responsibility of a gateway to avoid propagating such erroneous
+ addresses; this is especially important for gateways included in
+ the global interconnect system. In particular, a gateway which
+ receives a datagram with one of these forbidden addresses should:
+
+ 1. Avoid inserting that address into its routing database, and
+ avoid including it in routing updates to any other gateway.
+
+ 2. Avoid forwarding a datagram containing that address as a
+ destination.
+
+ To enforce these restrictions, it is suggested that a gateway
+ include a configurable filter for datagrams and routing updates.
+ A typical filter entry might consist of a 32-bit mask and value
+ pair. If the logical AND of the given address with the mask
+ equals the value, a match has been found. Since filtering will
+ consume gateway resources, it is vital that the gateway
+ configuration be able to control the degree of filtering in use.
+
+ There is a second class of special case addresses (cases (d), (e),
+ and (f) in section 2.1), the so-called "directed broadcasts". A
+ directed broadcast is a datagram to be forwarded normally to the
+ specified destination (sub-)net and then broadcast on the final
+ hop. An Internet gateway is permitted, but not required, to
+ filter out directed broadcasts destined for any of its
+ locally-connected networks. Hence, it should be possible to
+ configure the filter to block the delivery of directed broadcasts.
+
+ Finally, it will also be useful for Internet O&M to have a
+ configurable filter on the IP source address. This will allow a
+ network manager to temporarily block traffic from a particular
+ misbehaving host, for example.
+
+
+
+
+Braden & Postel [Page 34]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 4.5. Redirects
+
+ The ICMP Redirect message is specified only for use by a gateway
+ to update the routing table of a host on the same connected net.
+ However, the Redirect message is sometimes used between gateways,
+ due to the following considerations:
+
+ The routing function in a host is very much like that in a
+ "dumb gateway" (i.e., a gateway having only static routes). It
+ is desirable to allow the routing tables of a dumb gateway to
+ be changed under the control of a dynamic gateway (i.e., a
+ gateway with full dynamic routing) on the same network. By
+ analogy, it is natural to let the dynamic gateway send ICMP
+ Redirect messages to dumb gateway.
+
+ The use of ICMP Redirect between gateways in this fashion may be
+ considered to be part of the IGP (in fact, the totality of the
+ IGP, as far as the dumb gateway is concerned!) in the particular
+ Autonomous System. Specification of an IGP is outside the scope
+ of this document, so we only note the possibility of using
+ Redirect in this fashion. Gateways are not required to receive
+ and act upon redirects, and in fact dynamic gateways must ignore
+ them. We also note that considerable experience shows that dumb
+ gateways often create problems resulting in "black holes"; a full
+ routing gateway is always preferable.
+
+ Routing table entries established by redirect messages must be
+ removed automatically, either by a time-out or when a use count
+ goes to zero.
+
+ 4.6. Broadcast and Multicast
+
+ A host which is connected to a network (generally a LAN) with an
+ intrinsic broadcast capability may want to use this capability to
+ effect multidestination delivery of IP datagrams. The basic
+ Internet model assumes point-to-point messages, and we must take
+ some care when we incorporate broadcasting. It is important to
+ note that broadcast addresses may occur at two protocol levels:
+ the local network header and the IP header.
+
+ Incorrect handling of broadcasting has often been the cause of
+ packet avalanches (sometimes dubbed "meltdown") in LANs. These
+ avalanches are generally caused by gratuitous datagram-forwarding
+ by hosts, or by hosts sending ICMP error messages when they
+ discard broadcast datagrams.
+
+ Gateways have a responsibility to prevent avalanches, or datagrams
+ which can trigger avalanches, from escaping into another network.
+
+
+Braden & Postel [Page 35]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ In general, a gateway must not forward a datagram which arrives
+ via local network broadcast, and must not send an ICMP error
+ message when dropping the datagram. A discussion of the rules
+ will be found in Appendix A; see also [50].
+
+ As noted in Section 4.4, a gateway is permitted to filter out
+ directed broadcasts. Hence, directed broadcasts will only be
+ useful in limited Internet regions (e.g., the within the subnets
+ of a particular campus) in which delivery is supported by the
+ gateway administrators. Host group multicasting (see Sections 2.8
+ and 4.6) will soon provide a much more efficient mechanism than
+ directed broadcasting. Gateway algorithms for host group
+ multicasting will be specified in future RFC's.
+
+ 4.7. Reachability Procedures
+
+ The architecture must provide a robust mechanism to establish the
+ operational status of each link and node in the network, including
+ the gateways, the links connecting them and, where appropriate,
+ the hosts as well. Ordinarily, this requires at least a
+ link-level reachability protocol involving a periodic exchange of
+ messages across each link. This function might be intrinsic to
+ the link-level protocols used (e.g., LAPB). However, it is in
+ general ill-advised to assume a host or gateway is operating
+ correctly even if its link-level reachability protocol is
+ operating correctly. Additional confirmation is required in the
+ form of an operating routing algorithm or peer-level reachability
+ protocol (such as used in EGP).
+
+ Failure and restoration of a link and/or gateway are considered
+ network events and must be reported to the control center. It is
+ desirable, although not required, that reporting paths not require
+ correct functioning of the routing algorithm itself.
+
+ 4.8. Time-To-Live
+
+ The Time-to-Live (TTL) field of the IP header is defined to be a
+ timer limiting the lifetime of a datagram in the Internet. It is
+ an 8-bit field and the units are seconds. This would imply that
+ for a maximum TTL of 255 a datagram would time-out after about 4
+ and a quarter minutes. Another aspect of the definition requires
+ each gateway (or other module) that handles a datagram to
+ decrement the TTL by at least one, even if the elapsed time was
+ much less than a second. Since this is very often the case, the
+ TTL effectively becomes a hop count limit on how far a datagram
+ can propagate through the Internet.
+
+
+
+
+Braden & Postel [Page 36]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ As the Internet grows, the number of hops needed to get from one
+ edge to the opposite edge increases, i.e., the Internet diameter
+ grows.
+
+ If a gateway holds a datagram for more than one second, it must
+ decrement the TTL by one for each second.
+
+ If the TTL is reduced to zero, the datagram must be discarded, and
+ the gateway may send an ICMP Time Exceeded message to the source.
+ A datagram should never be received with a TTL of zero.
+
+ When it originates a datagram, a gateway is acting in the role of
+ a host and must supply a realistic initial value for the TTL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 37]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+5. Operation and Maintenance
+
+ 5.1. Introduction
+
+ Facilities to support operation and maintenance (O&M) activities
+ form an essential part of any gateway implementation. The
+ following kinds of activity are included under gateway O&M:
+
+ * Diagnosing hardware problems in the gateway processor, in
+ its network interfaces, or in the connected networks,
+ modems, or communication lines.
+
+ * Installing a new version of the gateway software.
+
+ * Restarting or rebooting a gateway after a crash.
+
+ * Configuring (or reconfiguring) the gateway.
+
+ * Detecting and diagnosing Internet problems such as
+ congestion, routing loops, bad IP addresses, black holes,
+ packet avalanches, and misbehaved hosts.
+
+ * Changing network topology, either temporarily (e.g., to
+ diagnose a communication line problem) or permanently.
+
+ * Monitoring the status and performance of the gateways and
+ the connected networks.
+
+ * Collecting traffic statistics for use in (Inter-)network
+ planning.
+
+ Gateways, packet-switches, and their connected communication lines
+ are often operated as a system by a centralized O&M organization.
+ This organization will maintain a (Inter-)network operation
+ center, or NOC, to carry out its O&M functions. It is essential
+ that gateways support remote control and monitoring from such a
+ NOC, through an Internet path (since gateways might not be
+ connected to the same network as their NOC). Furthermore, an IP
+ datagram traversing the Internet will often use gateways under the
+ control of more than one NOC; therefore, Internet problem
+ diagnosis will often involve cooperation of personnel of more than
+ one NOC. In some cases, the same gateway may need to be monitored
+ by more than one NOC.
+
+ The tools available for monitoring at a NOC may cover a wide range
+ of sophistication. Proposals have included multi-window, dynamic
+ displays of the entire gateway system, and the use of AI
+ techniques for automatic problem diagnosis.
+
+
+Braden & Postel [Page 38]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ Gateway O&M facilities discussed here are only a part of the large
+ and difficult problem of Internet management. These problems
+ encompass not only multiple management organizations, but also
+ multiple protocol layers. For example, at the current stage of
+ evolution of the Internet architecture, there is a strong coupling
+ between host TCP implementations and eventual IP-level congestion
+ in the gateway system [9]. Therefore, diagnosis of congestion
+ problems will sometimes require the monitoring of TCP statistics
+ in hosts. Gateway algorithms also interact with local network
+ performance, especially through handling of broadcast packets and
+ ARP, and again diagnosis will require access to hosts (e.g.,
+ examining ARP caches). However, consideration of host monitoring
+ is beyond the scope of this RFC.
+
+ There are currently a number of R&D efforts in progress in the
+ area of Internet management and more specifically gateway O&M. It
+ is hoped that these will lead quickly to Internet standards for
+ the gateway protocols and facilities required in this area. This
+ is also an area in which vendor creativity can make a significant
+ contribution.
+
+ 5.2. Gateway O&M Models
+
+ There is a range of possible models for performing O&M functions
+ on a gateway. At one extreme is the local-only model, under which
+ the O&M functions can only be executed locally, e.g., from a
+ terminal plugged into the gateway machine. At the other extreme,
+ the fully-remote model allows only an absolute minimum of
+ functions to be performed locally (e.g., forcing a boot), with
+ most O&M being done remotely from the NOC. There intermediate
+ models, e.g., one in which NOC personnel can log into the gateway
+ as a host, using the Telnet protocol, to perform functions which
+ can also be invoked locally. The local-only model may be adequate
+ in a few gateway installations, but in general remote operation
+ from a NOC will be required, and therefore remote O&M provisions
+ are required for most gateways.
+
+ Remote O&M functions may be exercised through a control agent
+ (program). In the direct approach, the gateway would support
+ remote O&M functions directly from the NOC using standard Internet
+ protocols (e.g., UDP or TCP); in the indirect approach, the
+ control agent would support these protocols and control the
+ gateway itself using proprietary protocols. The direct approach
+ is preferred, although either approach is acceptable. The use of
+ specialized host hardware and/or software requiring significant
+ additional investment is discouraged; nevertheless, some vendors
+ may elect to provide the control agent as an integrated part of
+ the network in which the gateways are a part. If this is the
+
+
+Braden & Postel [Page 39]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ case, it is required that a means be available to operate the
+ control agent from a remote site using Internet protocols and
+ paths and with equivalent functionality with respect to a local
+ agent terminal.
+
+ It is desirable that a control agent and any other NOC software
+ tools which a vendor provides operate as user programs in a
+ standard operating system. The use of the standard Internet
+ protocols UDP and TCP for communicating with the gateways should
+ facilitate this.
+
+ Remote gateway monitoring and (especially) remote gateway control
+ present important access control problems which must be addressed.
+ Care must also be taken to ensure control of the use of gateway
+ resources for these functions. It is not desirable to let gateway
+ monitoring take more than some limited fraction of the gateway CPU
+ time, for example. On the other hand, O&M functions must receive
+ priority so they can be exercised when the gateway is congested,
+ i.e., when O&M is most needed.
+
+ There are no current Internet standards for the control and
+ monitoring protocols, although work is in progress in this area.
+ The Host Monitoring Protocol (HMP) [7] could be used as a model
+ until a standard is developed; however, it is strongly recommended
+ that gateway O&M protocol be built on top of one of the standard
+ Internet end-to-end protocols UDP or TCP. An example of a very
+ simple but effective approach to gateway monitoring is contained
+ in RFC-996 [43].
+
+ 5.3. Gateway O&M Functions
+
+ The following O&M functions need to be performed in a gateway:
+
+ A. Maintenance -- Hardware Diagnosis
+
+ Each gateway must operate as a stand-alone device for the
+ purposes of local hardware maintenance. Means must be
+ available to run diagnostic programs at the gateway site
+ using only on-site tools, which might be only a diskette or
+ tape and local terminal. It is desirable, although not
+ required, to be able to run diagnostics or dump the gateway
+ via the network in case of fault. Means should be provided
+ to allow remote control from the NOC of of modems attached
+ to the gateway. The most important modem control capability
+ is entering and leaving loopback mode, to diagnose line
+ problems.
+
+
+
+
+Braden & Postel [Page 40]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ B. Control -- Dumping and Rebooting
+
+ It must be possible to dump and reboot a stand-alone gateway
+ upon command from the NOC. In addition, a stand-alone
+ gateway must include a watchdog timer that either initiates
+ a reboot automatically or signals a remote control site if
+ not reset periodically by the software. It is desirable
+ that the boot data involved reside at an Internet host
+ (e.g., the NOC host) and be transmitted via the net;
+ however, the use of local devices at the gateway site is
+ acceptable.
+
+ C. Control -- Configuring the Gateway
+
+ Every gateway will have a number of configuration parameters
+ which must be set (see the next section for examples). It
+ must be possible to update the parameters without rebooting
+ the gateway; at worst, a restart may be required.
+
+ D. Monitoring -- Status and Performance
+
+ A mechanism must be provided for retrieving status and
+ statistical information from a gateway. A gateway must
+ supply such information in response to a polling message
+ from the NOC. In addition, it may be desirable to configure
+ a gateway to transmit status spontaneously and periodically
+ to a NOC (or set of NOCs), for recording and display.
+
+ Examples of interesting status information include: link
+ status, queue lengths, buffer availability, CPU and memory
+ utilization, the routing data-base, error counts, and packet
+ counts. Counts should be kept for dropped datagrams,
+ separated by reason. Counts of ICMP datagrams should be
+ kept by type and categorized into those originating at the
+ gateway, and those destined for the gateway. It would be
+ useful to maintain many of these statistics by network
+ interface, by source/destination network pair, and/or by
+ source/destination host pair.
+
+ Note that a great deal of useful monitoring data is often to
+ be found in the routing data-base. It is therefore useful
+ to be able to tap into this data-base from the NOC.
+
+ E. Monitoring -- Error Logging
+
+ A gateway should be capable of asynchronously sending
+ exception ("trap") reports to one or more specified Internet
+ addresses, one of which will presumably be the NOC host.
+
+
+Braden & Postel [Page 41]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ There must also be a mechanism to limit the frequency of
+ such trap reports, and the parameters controlling this
+ frequency must be settable in the gateway configuration.
+
+ Examples of conditions which should result in traps include:
+ datagrams discarded because of TTL expiration (an indicator
+ of possible routing loops); resource shortages; or an
+ interface changing its up/down status.
+
+ 5.4. Gateway Configuration Parameters
+
+ Every gateway will have a set of configuration parameters
+ controlling its operation. It must be possible to set these
+ parameters remotely from the NOC or locally at any time, without
+ taking the gateway down.
+
+ The following is a partial but representative list of possible
+ configuration parameters for a full-function gateway. The items
+ marked with "(i)" should be settable independently for each
+ network interface.
+
+ * (i) IP (sub-) network address
+
+ * (i) Subnet address mask
+
+ * (i) MTU of local network
+
+ * (i) Hardware interface address
+
+ * (i) Broadcast compatibility option (0s or 1s)
+
+ * EGP parameters -- neighbors, Autonomous System number,
+ and polling parameters
+
+ * Static and/or default routes, if any
+
+ * Enable/Disable Proxy ARP
+
+ * Source Quench parameters
+
+ * Address filter configuration
+
+ * Boot-host address
+
+ * IP address of time server host
+
+ * IP address(es) of logging host(s)
+
+
+
+Braden & Postel [Page 42]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ * IP address(es) of hosts to receive traps
+
+ * IP address(es) of hosts authorized to issue control
+ commands
+
+ * Error level for logging
+
+ * Maximum trap frequency
+
+ * Hold-down period (if any)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 43]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+Appendix A. Technical Details
+
+ This Appendix collects a number of technical details and rules
+ concerning datagram forwarding by gateways and datagram handling by
+ hosts, especially in the presence of broadcasting and subnets.
+
+ A.1. Rules for Broadcasting
+
+ The following rules define how to handle broadcasts of packets and
+ datagrams [50]:
+
+ a. Hosts (which do not contain embedded gateways) must NEVER
+ forward any datagrams received from a connected network,
+ broadcast or not.
+
+ When a host receives an IP datagram, if the destination
+ address identifies the host or is an IP broadcast address,
+ the host passes the datagram to its appropriate
+ higher-level protocol module (possibly sending ICMP
+ protocol unreachable, but not if the IP address was a
+ broadcast address). Any other IP datagram must simply be
+ discarded, without an ICMP error message. Hosts never send
+ redirects.
+
+ b. All packets containing IP datagrams which are sent to the
+ local-network packet broadcast address must contain an IP
+ broadcast address as the destination address in their IP
+ header. Expressed in another way, a gateway (or host) must
+ not send in a local-network broadcast packet an IP datagram
+ that has a specific IP host address as its destination
+ field.
+
+ c. A gateway must never forward an IP datagram that arrives
+ addressed to the IP limited broadcast address {-1,-1}.
+ Furthermore, it must must not send an ICMP error message
+ about discarding such a datagram.
+
+ d. A gateway must not forward an IP datagram addressed to
+ network zero, i.e., {0, *}.
+
+ e. A gateway may forward a directed broadcast datagram, i.e.,
+ a datagram with the IP destination address:
+
+ { <Network-number>, -1}.
+
+ However, it must not send such a directed broadcast out the
+ same interface it came in, if this interface has
+ <Network-number> as its network number. If the code in the
+
+
+Braden & Postel [Page 44]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ gateway making this decision does not know what interface
+ the directed-broadcast datagram arrived on, the gateway
+ cannot support directed broadcast to this connected network
+ at all.
+
+ f. A gateway is permitted to protect its connected networks by
+ discarding directed broadcast datagrams.
+
+ A gateway will broadcast an IP datagram on a connected network if
+ it is a directed broadcast destined for that network. Some
+ gateway-gateway routing protocols (e.g., RIP) also require
+ broadcasting routing updates on the connected networks. In either
+ case, the datagram must have an IP broadcast address as its
+ destination.
+
+ Note: as observed earlier, some host implementations (those
+ based on Berkeley 4.2BSD) use zero rather than -1 in the host
+ field. To provide compatibility during the period until these
+ systems are fixed or retired, it may be useful for a gateway to
+ be configurable to send either choice of IP broadcast address
+ and accept both if received.
+
+ A.2. ICMP Redirects
+
+ A gateway will generate an ICMP Redirect if and only if the
+ destination IP address is reachable from the gateway (as
+ determined by the routing algorithm) and the next-hop gateway is
+ on the same (sub-)network as the source host. Redirects must not
+ be sent in response to an IP network or subnet broadcast address
+ or in response to a Class D or Class E IP address.
+
+ A host must discard an ICMP Redirect if the destination IP address
+ is not its own IP address, or the new target address is not on the
+ same (sub-)network. An accepted Redirect updates the routing
+ data-base for the old target address. If there is no route
+ associated with the old target address, the Redirect is ignored.
+ If the old route is associated with a default gateway, a new route
+ associated with the new target address is inserted in the
+ data-base.
+
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 45]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+Appendix B. NSFNET Specific Requirements
+
+ The following sections discuss certain issues of special concern to
+ the NSF scientific networking community. These issues have primary
+ relevance in the policy area, but also have ramifications in the
+ technical area.
+
+ B.1. Proprietary and Extensibility Issues
+
+ Although hosts, gateways and networks supporting Internet
+ technology have been in continuous operation for several years,
+ vendors users and operators must understand that not all
+ networking issues are fully resolved. As a result, when new needs
+ or better solutions are developed for use in the NSF networking
+ community, it may be necessary to field new protocols or augment
+ existing ones. Normally, these new protocols will be designed to
+ interoperate in all practical respects with existing protocols;
+ however, occasionally it may happen that existing systems must be
+ upgraded to support these new or augmented protocols.
+
+ NSF systems procurements may favor those vendors who undertake a
+ commitment to remain aware of current Internet technology and be
+ prepared to upgrade their products from time to time as
+ appropriate. As a result, vendors are strongly urged to consider
+ extensibility and periodic upgrades as fundamental characteristics
+ of their products. One of the most productive and rewarding ways
+ to do this on a long-term basis is to participate in ongoing
+ Internet research and development programs in partnership with the
+ academic community.
+
+ B.2. Interconnection Technology
+
+ In order to ensure network-level interoperability of different
+ vendor's gateways within the NSFNET context, we specify that a
+ gateway must at a minimum support Ethernet connections and serial
+ line protocol connections.
+
+ Currently the most important common interconnection technology
+ between Internet systems of different vendors is Ethernet. Among
+ the reasons for this are the following:
+
+ 1. Ethernet specifications are well-understood and mature.
+
+ 2. Ethernet technology is in almost all aspects vendor
+ independent.
+
+ 3. Ethernet-compatible systems are common and becoming more
+ so.
+
+
+Braden & Postel [Page 46]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ These advantages combined favor the use of Ethernet technology as
+ the common point of demarcation between NSF network systems
+ supplied by different vendors, regardless of technology. It is a
+ requirement of NSF gateways that, regardless of the possibly
+ proprietary switching technology used to implement a given
+ vendor-supplied network, its gateways must support an Ethernet
+ attachment to gateways of other vendors.
+
+ It is expected that future NSF gateway requirements will specify
+ other interconnection technologies. The most likely candidates
+ are those based on X.25 or IEEE 802, but other technologies
+ including broadband cable, optical fiber, or other media may also
+ be considered.
+
+ B.3. Routing Interoperability
+
+ The Internet does not currently have an "open IGP" standard, i.e.,
+ a common IGP which would allow gateways from different vendors to
+ form a single Autonomous System. Several approaches to routing
+ interoperability are currently in use among vendors and the NSF
+ networking community.
+
+ * Proprietary IGP
+
+ At least one gateway vendor has implemented a proprietary IGP
+ and uses EGP to interface to the rest of the Internet.
+
+ * RIP
+
+ Although RIP is undocumented and various implementations of it
+ differ in subtle ways, it has been used successfully for
+ interoperation among multiple vendors as an IGP.
+
+ * Gateway Daemon
+
+ The NSF networking community has built a "gateway daemon"
+ program which can mediate among multiple routing protocols to
+ create a mixed-IGP Autonomous System. In particular, the
+ prototype gateway daemon executes on a 4.3BSD machine acting as
+ a gateway and exchanges routing information with other
+ gateways, speaking both RIP and Hello protocols; in addition,
+ it supports EGP to other Autonomous Systems.
+
+
+
+
+
+
+
+
+Braden & Postel [Page 47]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ B.4. Multi-Protocol Gateways
+
+ The present NSF gateway requirements specify only the Internet
+ protocol IP. However, in a few years the Internet will begin a
+ gradual transition to the functionally-equivalent subset of the
+ ISO protocols [17]. In particular, an increasing percentage of
+ the traffic will use the ISO Connectionless Mode Network Service
+ (CLNS, but commonly called "ISO IP") [33] in place of IP. It is
+ expected that the ISO suite will eventually become the dominant
+ one; however, it is also expected that requirements to support
+ Internet IP will continue, perhaps indefinitely.
+
+ To support the transition to ISO protocols and the coexistence
+ stage, it is highly desirable that a gateway design provide for
+ future extensions to support more than one protocol simultaneous,
+ and in particular both IP and CLNS [18].
+
+ Present NSF gateway requirements do not include protocols above
+ the network layer, such as TCP, unless necessary for network
+ monitoring or control. Vendors should recognize that future
+ requirements to interwork between Internet and ISO applications,
+ for example, may result in an opportunity to market gateways
+ supporting multiple protocols at all levels up through the
+ application level [16]. It is expected that the network-level NSF
+ gateway requirements summarized in this document will be
+ incorporated in the requirements document for these
+ application-level gateways.
+
+ Internet gateways function as intermediate systems (IS) with
+ respect to the ISO connectionless network model and incorporate
+ defined packet formats, routing algorithms and related procedures
+ [33, 34]. The ISO ES-IS [37] provides the functions of ARP and
+ ICMP Redirect.
+
+ B.5. Access Control and Accounting
+
+ There are no requirements for NSF gateways at this time to
+ incorporate specific access-control and accounting mechanisms in
+ the design; however, these important issues are currently under
+ study and will be incorporated into a subsequent edition of this
+ document. Vendors are encouraged to plan for the introduction of
+ these mechanisms into their products. While at this time no
+ definitive common model for access control and accounting has
+ emerged, it is possible to outline some general features such a
+ model is likely to have, among them the following:
+
+
+
+
+
+Braden & Postel [Page 48]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ 1. The primary access control and accounting mechanisms will
+ be in the service hosts themselves, not the gateways,
+ packet-switches or workstations.
+
+ 2. Agents acting on behalf of access control and accounting
+ mechanisms may be necessary in the gateways, to collect
+ data, enforce password protection, or mitigate resource
+ priority and fairness. However, the architecture and
+ protocols used by these agents may be a local matter and
+ cannot be specified in advance.
+
+ 3. NSF gateways may be required to incorporate access control
+ and accounting mechanisms based on datagram
+ source/destination address, as well as other fields in the
+ IP header.
+
+ 4. NSF gateways may be required to enforce policies on access
+ to gateway and communication resources. These policies may
+ be based upon equity ("fairness") or upon inequity
+ ("priority").
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 49]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+Acknowledgments
+
+ An earlier version of this document (RFC-985) [60] was prepared by
+ Dave Mills in behalf of the Gateway Requirements Subcommittee of the
+ NSF Network Technical Advisory Group, in cooperation with the
+ Internet Activities Board, Internet Architecture Task Force, and
+ Internet Engineering Task Force. This effort was chaired by Dave
+ Mills, and contributed to by many people.
+
+ The authors of current document have also received assistance from
+ many people in the NSF and ARPA networking community. We thank you,
+ one and all.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 50]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+References and Bibliography
+
+ Many of these references are available from the DDN Network
+ Information Center, SRI International, 333 Ravenswood Avenue, Menlo
+ Park, California 94025 (telephone: 800-235-3155).
+
+ [1] Postel, J., "Internet Protocol", RFC-791, USC Information
+ Sciences Institute, September 1981.
+
+ [2] Postel, J., "Internet Control Message Protocol", RFC-792, USC
+ Information Sciences Institute, September 1981.
+
+ [3] BBN, "Interface Message Processor - Specifications for the
+ Interconnection of a Host and an IMP", Report 1822, Bolt
+ Beranek and Newman, December 1981.
+
+ [4] Plummer, D., "An Ethernet Address Resolution Protocol",
+ RFC-826, Symbolics, September 1982.
+
+ [5] DOD, "Military Standard Internet Protocol", Military Standard
+ MIL-STD-1777, United States Department of Defense, August 1983.
+
+ [6] BBN, "Defense Data Network X.25 Host Interface Specification",
+ Report 5476, Bolt Beranek and Newman, December 1983.
+
+ [7] Hinden, R., "A Host Monitoring Protocol", RFC-869, BBN
+ Communications, December 1983.
+
+ [8] Korb, J.T., "A Standard for the Transmission of IP Datagrams
+ over Public Data Networks", RFC-877, Purdue University,
+ September 1983.
+
+ [9] Nagle, J., "Congestion Control in IP/TCP Internetworks",
+ RFC-896, Ford Aerospace, January 1984.
+
+ [10] Hornig, C., "A Standard for the Transmission of IP Datagrams
+ over Ethernet Networks", RFC-894, Symbolics, April 1984.
+
+ [11] Mills, D.L., "Exterior Gateway Formal Specification", RFC-904,
+ M/A-COM Linkabit, April 1984.
+
+ [12] Xerox, "Xerox Synchronous Point-to-Point Protocol", Xerox
+ System Integration Standard 158412, December 1984.
+
+ [13] Kirton, P., "EGP Gateway under Berkeley UNIX 4.2", RFC-911, USC
+ Information Sciences Institute, August 1984.
+
+
+
+
+Braden & Postel [Page 51]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ [14] Postel, J., "Multi-LAN Address Resolution", RFC-925, USC
+ Information Sciences Institute, October 1984.
+
+ [15] Finlayson, R., T. Mann, J. Mogul, and M. Theimer, "A Reverse
+ Address Resolution Protocol", RFC-904, Stanford University,
+ June 1984.
+
+ [16] NRC, "Transport Protocols for Department of Defense Data
+ Networks", RFC-942, National Research Council, March 1985.
+
+ [17] Postel, J., "DOD Statement on NRC Report", RFC-945, USC
+ Information Sciences Institute, April 1985.
+
+ [18] ISO, "Addendum to the Network Service Definition Covering
+ Network Layer Addressing", RFC-941, International Standards
+ Organization, April 1985.
+
+ [19] Leiner, B., J. Postel, R. Cole and D. Mills, "The DARPA
+ Internet Protocol Suite", Proceedings INFOCOM 85, IEEE,
+ Washington DC, March 1985. Also in: IEEE Communications
+ Magazine, March 1985. Also available as ISI-RS-85-153.
+
+ [20] Romkey, J., "PC/IP Programmer's Manual", MIT Laboratory for
+ Computer Science, pp. 57-59, April 1986.
+
+ [21] Mogul, J., and J. Postel, "Internet Standard Subnetting
+ Procedure", RFC-950, Stanford University, August 1985.
+
+ [22] Reynolds, J., and J. Postel, "Official Internet Protocols",
+ RFC-1011, USC Information Sciences Institute, May 1987.
+
+ [23] Reynolds, J., and J. Postel, "Assigned Numbers", RFC-1010, USC
+ Information Sciences Institute, May 1987.
+
+ [24] Nagle, J., "On Packet Switches with Infinite Storage", RFC-970,
+ Ford Aerospace, December 1985.
+
+ [25] SRI, "DDN Protocol Handbook", NIC-50004, NIC-50005, NIC-50006,
+ (three volumes), SRI International, December 1985.
+
+ [26] SRI, "ARPANET Information Brochure", NIC-50003, SRI
+ International, December 1985.
+
+ [27] Mills, D.L., "Autonomous Confederations", RFC-975, M/A-COM
+ Linkabit, February 1986.
+
+ [28] Jacobsen, O., and J. Postel, "Protocol Document Order
+ Information", RFC-980, SRI International, March 1986.
+
+
+Braden & Postel [Page 52]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ [29] Malis, A.G., "PSN End-to-End Functional Specification",
+ RFC-979, BBN Communications, March 1986.
+
+ [30] Postel, J, "Internetwork Applications using the DARPA Protocol
+ Suite", Proceedings INFOCOM 85, IEEE, Washington DC,
+ March 1985. Also available as ISI-RS-85-151.
+
+ [31] Postel, J, C. Sunshine, and D. Cohen, "The ARPA Internet
+ Protocol", Computer Networks, Vol. 5, No. 4, July 1981.
+
+ [32] Cerf, V., and R. Kahn, "A Protocol for Packet Network
+ Intercommunication", IEEE Transactions on Communication,
+ May 1974.
+
+ [33] ISO, "Protocol for Providing the Connectionless-mode Network
+ Service", RFC-994, DIS-8473, International Standards
+ Organization, March 1986.
+
+ [34] ANSI, "Draft Network Layer Routing Architecture", ANSI X3S3.3,
+ 86-215R, April 1987.
+
+ [35] Rosen, E., "Exterior Gateway Protocol (EGP)", RFC-827, Bolt
+ Beranek and Newman, October 1982.
+
+ [36] Sidhu, D., "Some Problems with the Specification of the
+ Military Standard Internet Protocol", RFC-963, Iowa State
+ University, November 1985.
+
+ [37] ISO, "End System to Intermediate System Routing Exchange
+ Protocol for use in conjunction with ISO 8473", RFC-995,
+ April 1986.
+
+ [38] Postel, J., "Address Mappings", RFC-796, USC/Information
+ Sciences Institute, September 1981.
+
+ [39] Mills, D., "DCN Local Network Protocols", RFC-891, M/A-COM
+ Linkabit, December 1983.
+
+ [40] McQuillan, J. M., I. Richer, and E. C. Rosen, "The New Routing
+ Algorithm for the ARPANET", IEEE Transactions on
+ Communications, May 1980.
+
+ [41] Hinden, R., and A. Sheltzer, "The DARPA Internet Gateway",
+ RFC-823, Bolt Beranek and Newman, September 1982.
+
+ [42] Farber, D., G. Delp, and T. Conte, "A Thinwire Protocol for
+ Connecting Personal Computers to the Internet", RFC-914,
+ University of Delaware, September 1984.
+
+
+Braden & Postel [Page 53]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ [43] Mills, D., "Statistics Server", RFC-996, University Of
+ Delaware, February 1987.
+
+ [44] Postel, J. and K. Harrenstien, "Time Protocol", RFC-868,
+ May 1983.
+
+ [45] Mills, D., "Network Time Protocol (NTP)", RFC-958, M/A-Com
+ Linkabit, September 1985.
+
+ [46] Seamonson, L., and E. Rosen, "Stub Exterior Gateway Protocol",
+ RFC-888, Bolt Beranek And Newman, January 1984.
+
+ [47] Deering, S., and D. Cheriton, "Host Groups: A Multicast
+ Extension to the Internet Protocol", RFC-966, Stanford
+ University, December 1985.
+
+ [48] Deering, S., "Host Extensions for IP Multicasting", RFC-988,
+ Stanford University, July 1986.
+
+ [49] Mogul, J., "Broadcasting Internet Datagrams", RFC-919, Stanford
+ University, October 1984.
+
+ [50] Mogul, J., "Broadcasting Internet Datagrams in the Presence of
+ Subnets", RFC-922, Stanford University, October 1984.
+
+ [51] Rosen, E., "Exterior Gateway Protocol", RFC-827, Bolt Beranek
+ and Newman, October 1982.
+
+ [52] Rose, M., "Low Tech Connection into the ARPA Internet: The Raw
+ Packet Split Gateway", Technical Report 216, Department of
+ Information and Computer Science, University of California,
+ Irvine, February 1984.
+
+ [53] Rosen, E., "Issues in Buffer Management", IEN-182, Bolt Beranek
+ and Newman, May 1981.
+
+ [54] Rosen, E., "Logical Addressing", IEN-183, Bolt Beranek and
+ Newman, May 1981.
+
+ [55] Rosen, E., "Issues in Internetting - Part 1: Modelling the
+ Internet", IEN-184, Bolt Beranek and Newman, May 1981.
+
+ [56] Rosen, E., "Issues in Internetting - Part 2: Accessing the
+ Internet", IEN-187, Bolt Beranek and Newman, June 1981.
+
+ [57] Rosen, E., "Issues in Internetting - Part 3: Addressing",
+ IEN-188, Bolt Beranek and Newman, June 1981.
+
+
+
+Braden & Postel [Page 54]
+
+
+
+RFC 1009 - Requirements for Internet Gateways June 1987
+
+
+ [58] Rosen, E., "Issues in Internetting - Part 4: Routing", IEN-189,
+ Bolt Beranek and Newman, June 1981.
+
+ [59] Sunshine, C., "Comments on Rosen's Memos", IEN-191, USC
+ Information Sciences Institute, July 1981.
+
+ [60] NTAG, "Requirements for Internet Gateways -- Draft", RFC-985,
+ Network Technical Advisory Group, National Science Foundation,
+ May 1986.
+
+ [61] Khanna, A., and Malis, A., "The ARPANET AHIP-E Host Access
+ Protocol (Enhanced AHIP)", RFC-1005, BBN Communications,
+ May 1987
+
+ [62] Nagle, J., "Congestion Control in IP/TCP Internetworks", ACM
+ Computer Communications Review, Vol.14, no.4, October 1984.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Braden & Postel [Page 55]