Internet Draft Internet Draft Cengiz Alaettinoglu Expires October 23, 1997 USC/ISI draft-ietf-rps-rpsl-02.txt Tony Bates Cisco Systems Elise Gerich At Home Network Daniel Karrenberg RIPE David Meyer University of Oregon Marten Terpstra Bay Networks Curtis Villamizer ANS April 23, 1997 Routing Policy Specification Language (RPSL) Status of this Memo This Internet Draft is the reference document for the Routing Policy Specification Language (RPSL). RPSL allows a network operator to be able to specify routing policies at various levels in the Internet hierarchy; for example at the Autonomous System (AS) level. At the same time, policies can be specified with sufficient detail in RPSL so that low level router configurations can be generated from them. RPSL is extensible; new routing protocols and new protocol features can be introduced at any time. This document is an Internet Draft, and can be found as draft-ietf-rps-rpsl- 02.txt in any standard internet drafts repository. Internet Drafts are working documents of the Internet Engineering Task Force (IETF), its Areas, and its Working Groups. Note that other groups may also distribute working documents as Internet Drafts. Internet Drafts are draft documents valid for a maximum of six months. Internet Drafts may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet Drafts as reference material, or to cite them other than as a ``working draft'' or ``work in progress.'' Please check the I-D abstract listing contained in each Internet Draft directory to learn the current status of this or any other Internet Draft. Internet Draft RPSL April 23, 1997 Contents 1 Introduction 3 2 RPSL Names, Reserved Words, and Representation 4 3 mntner Class 6 4 person Class 7 5 route Class 8 6 Set Classes 9 6.1 route-set Class . . . . . . . . . . . . . . . . . . . . . . . . . . 9 6.2 as-set Class . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 6.3 Predefined Set Objects . . . . . . . . . . . . . . . . . . . . . . 12 6.4 Hierarchical Set Names . . . . . . . . . . . . . . . . . . . . . . 12 7 aut-num Class 13 7.1 import Attribute: Import Policy Specification . . . . . . . . . . 13 7.1.1Peering Specification . . . . . . . . . . . . . . . . . . . . . 14 7.1.2Action Specification . . . . . . . . . . . . . . . . . . . . . . 16 7.1.3Filter Specification . . . . . . . . . . . . . . . . . . . . . . 16 7.1.4Example Policy Expressions . . . . . . . . . . . . . . . . . . . 21 7.2 export Attribute: Export Policy Specification . . . . . . . . . . 21 7.3 Other Routing Protocols, Multi-Protocol Routing Protocols, and Injecting Routes Between Protocols . . . . . . . . . . . . . . . . . 22 7.4 Ambiguity Resolution . . . . . . . . . . . . . . . . . . . . . . . 23 7.5 default Attribute: Default Policy Specification . . . . . . . . . 25 7.6 Structured Policy Specification . . . . . . . . . . . . . . . . . . 26 8 dictionary Class 30 Alaettinoglu et. al. Expires October 23, 1997 [Page 2] Internet Draft RPSL April 23, 1997 8.1 Initial RPSL Dictionary and Example Policy Actions and Filters . . 33 9 Advanced route Class 38 9.1 Specifying Static Routes . . . . . . . . . . . . . . . . . . . . . 38 9.2 Specifying Aggregate Routes . . . . . . . . . . . . . . . . . . . . 39 10inet-rtr Class 41 11inet-tunnel Class and Specifying Tunnels 42 12Security Consideration 45 13Acknowledgements 45 A Routing Registry Sites 47 B Authors' Addresses 47 Alaettinoglu et. al. Expires October 23, 1997 [Page 3] Internet Draft RPSL April 23, 1997 1 Introduction This Internet Draft is the reference document for the Routing Policy Specification Language (RPSL). RPSL allows a network operator to be able to specify routing policies at various levels in the Internet hierarchy; for example at the Autonomous System (AS) level. At the same time, policies can be specified with sufficient detail in RPSL so that low level router configurations can be generated from them. RPSL is extensible; new routing protocols and new protocol features can be introduced at any time. RPSL is a replacement for the current Internet de-facto standard routing policy specification language known as RIPE-181 [6] or RFC-1786 [7]. RIPE-81 [8] was the first language deployed in the Internet for specifying routing policies. It was later replaced by RIPE-181 [6]. Through operational use of RIPE-181 it has become apparent that certain policies cannot be specified and a need for an enhanced and more generalized language is needed. RPSL addresses RIPE-181's limitations. RPSL is object oriented; that is, objects contain pieces of policy and administrative information. These objects are registered in the Internet Routing Registry (IRR) by the authorized organizations. The registration process is beyond the scope of this document. Please refer to [2] and [4] for more details on the IRR. In the following sections, we present the classes that are used to define various policy and administrative objects. The "mntner" class defines entities authorized to add, delete and modify a set of objects. The "person" class describes technical and administrative contact personnel. Autonomous systems (ASes) are specified using the "aut-num" class. Routes are specified using the "route" class. Sets of ASes and routes can be defined using the "as-set" and "route-set" classes. The "dictionary" class provides the extensibility to the language. The "inet-rtr" class is used to specify routers. Tunnels are specified using "inet-tunnel" class. Many of these classes were originally defined in earlier documents [6, 18, 20, 17, 5] and have all been enhanced. This document is self-contained. However, the reader is encouraged to read RIPE-181 [7] and the associated documents [18, 20, 17, 5] as they provide significant background as to th