Network Working Group M. Steenstrup
Request for Comments: 1477 BBN Systems and Technologies
July 1993
IDPR as a Proposed Standard
1. Introduction
This document contains a discussion of inter-domain policy routing (IDPR), including an overview of functionality and a discussion of experiments. The objective of IDPR is to construct and maintain routes between source and destination administrative domains, that provide user traffic with the services requested within the constraints stipulated for the domains transited.
2. The Internet Environment
As data communications technologies evolve and user populations grow, the demand for internetworking increases. The Internet currently comprises over 7000 operational networks and over 10,000 registered networks. In fact, for the last several years, the number of constituent networks has approximately doubled annually. Although we do not expect the Internet to sustain this growth rate, we must prepare for the Internet of five to ten years in the future. Internet connectivity has increased along with the number of component networks. Internetworks proliferate through interconnection of autonomous, heterogeneous networks administered by separate authorities. We use the term "administrative domain" (AD) to refer to any collection of contiguous networks, gateways, links, and hosts governed by a single administrative authority that selects the intra-domain routing procedures and addressing schemes, specifies service restrictions for transit traffic, and defines service requirements for locally-generated traffic.
Steenstrup [Page 1]
RFC 1477 IDPR July 1993
In the early 1980s, the Internet was purely hierarchical, with the ARPANET as the single backbone. The current Internet possesses a semblance of a hierarchy in the collection of backbone, regional, metropolitan, and campus domains that compose it. However, technological, economical, and political incentives have prompted the introduction of inter-domain links outside of those in the strict hierarchy. Hence, the Internet has the properties of both hierarchical and mesh connectivity.
Steenstrup [Page 2]
RFC 1477 IDPR July 1993 3. An Overview of IDPRIDPR generates, establishes, and maintains "policy routes" that satisfy the service requirements of the users and respect the service restrictions of the transit domains. Policy routes are constructed using information about the services offered by and the connectivity between administrative domains and information about the services requested by the users.
3.1 Policies
With IDPR, each domain administrator sets "transit policies" that dictate how and by whom the resources in its domain should be used. Transit policies are usually public, and they specify offered services comprising:
3.2 Functions
The basic IDPR functions include:
Steenstrup [Page 3]
RFC 1477 IDPR July 1993
- Setting up paths across the Internet, using the policy routes generated.
3.3 Entities
Several different entities are responsible for performing the IDPR functions:
Steenstrup [Page 4]
RFC 1477 IDPR July 1993
o Each "configuration server" is responsible for its database of configured information that applies to policy gateways, path agents, and route servers in the given administrative domain. Configuration information for a given domain includes source and transit policies and mappings between local IDPR entities and their addresses. The configuration server function can be easily integrated into a domain's existing network management system.
3.4 Message Handling
There are two kinds of IDPR messages:
4. Security
IDPR contains mechanisms for verifying message integrity and source authenticity and for protecting against certain types of denial of service attacks. It is particularly important to keep IDPR control messages intact, because they carry control information critical to the construction and use of viable policy routes between domains.
4.1 Integrity and Authenticity
All IDPR messages carry a single piece of information, referred to in the IDPR documentation as the "integrity/authentication value", which may be used not only to detect message corruption but also to verify the authenticity of the message's source IDPR entity. The Internet Assigned Numbers Authority (IANA) specifies the set of valid algorithms which may be used to compute the integrity/authentication values. This set may include algorithms that perform only message integrity checks such as n-bit cyclic redundancy checksums (CRCs), as well as algorithms that perform both message integrity and source authentication checks such as signed hash functions of message contents.
Steenstrup [Page 5]
RFC 1477 IDPR July 1993
Each domain administrator is free to select any integrity/authentication algorithm, from the set specified by the IANA, for computing the integrity/authentication values contained in its domain's messages. However, we recommend that IDPR entities in each domain be capable of executing all of the valid algorithms so that an IDPR message originating at an entity in one domain can be properly checked by an entity in another domain.
4.2 Timestamps
Each IDPR message carries a timestamp (expressed in seconds elapsed since 1 January 1970 0:00 GMT) supplied by the source IDPR entity, which serves to indicate the age of the message. IDPR entities use the absolute value of a timestamp to confirm that the message is current and use the relative difference between timestamps to determine which message contains the most recent information. All IDPR entities must possess internal clocks that are synchronized to some degree, in order for the absolute value of a message timestamp to be meaningful. The synchronization granularity required by IDPR is on the order of minutes and can be achieved manually.
Steenstrup [Page 6]
RFC 1477 IDPR July 1993 5. Size ConsiderationsIDPR provides policy routing among administrative domains and has been designed to accommodate an Internet containing tens of thousands of domains, supporting diverse source and transit policies.
Steenstrup [Page 7]
RFC 1477 IDPR July 1993 6. Interactions with Other Inter-Domain Routing ProceduresWe believe that many Internet domains will benefit from the introduction of IDPR. However, the decision to support IDPR in a given domain is an individual one, left to the domain administrator; not all domains must support IDPR.
7. Implementation Experience
To date, there exist two implementations of IDPR: one an independent prototype and the other an integral part of the gated UNIX process. We describe each of these implementations and our experience with them in the following sections.
7.1 The Prototype
During the summer of 1990, the IDPR development group consisting of participants from USC, SAIC, and BBN began work on a UNIX-based software prototype of IDPR, designed for implementation in Sun workstations. This prototype consisted of multiple user-level processes to provide the basic IDPR functions together with kernel modifications to speed up IDPR data message forwarding.
Steenstrup [Page 8]
RFC 1477 IDPR July 1993
Most, but not all, of the IDPR functionality was captured in the prototype. In the interests of producing working software as quickly as possible, we intentionally left out of the IDPR prototype support for source policies and for multiple policy gateways connecting two domains. This simplified configuration and route generation without compromising the basic functionality of IDPR.
7.1.1 Test Networks
In February 1991, the IDPR development group began experimenting with the completed IDPR prototype software. Each IDPR development site had its own testing environment, consisting of a set of interconnected Sun workstations, each workstation performing the functions of a policy gateway and route server:
Steenstrup [Page 9]
RFC 1477 IDPR July 1993
- BBN used SPARC1+ workstations at BBN and ISI connected over both DARTnet and TWBnet.
7.1.2 Experiments
The principal goal of our experiments with the IDPR prototype software was to provide a proof of concept. In particular, we set out to verify tha t the IDPR prototype software was able to:
Steenstrup [Page 10]
RFC 1477 IDPR July 1993
After policy gateway initialization, we observed that each policy gateway immediately determined the connectivity to policy gateways in its own domain and in the adjacent domains. The representative policy gateway in each domain then generated a routing information message that was received by all other policy gateways in the internetwork.
Steenstrup [Page 11]
RFC 1477 IDPR July 1993
Once the path was torn down, the path agent in AD S requested a new route from its route server, to carry the existing telnet traffic. The route server, having received the new routing information message, proceeded to generate a policy route through the original transit domain, AD T1. Then, the path agent in AD S set up a path for the new route supplied by the route server. Throughout the policy reconfiguration and rerouting, the telnet session remained intact.
7.1.3 Performance Analysis
We (USC and SAIC members of the IDPR development group) evaluated the performance of the path setup and message forwarding portions of the IDPR prototype software. For path setup, we measured the amount of processing required at the source path agent and at intermediate policy gateways during path setup. For message forwarding, we compared the processing required at each policy gateway when using IDPR forwarding with IP encapsulation and when using only IP forwarding. We also compared the processing required when no integrity/authentication value was calculated for the message and when the RSA/MD4 algorithms were employed.
Steenstrup [Page 12]
RFC 1477 IDPR July 1993 7.2 The Gated VersionIn 1992, SRI joined the IDPR development group, and together SRI, SAIC, and BBN completed the task of integrating IDPR into the gated UNIX process. As a result, IDPR is now available as part of gated. The gated version of IDPR contains the full functionality of IDPR together with a simple yet versatile user interface for IDPR configuration. As a single process, the gated version of IDPR performs more efficiently than the multiple-process prototype version.
8. Security Considerations
Refer to section 4 for details on security in IDPR.
9. Author's Address
Martha Steenstrup BBN Systems and Technologies 10 Moulton Street Cambridge, MA 02138