Network Working Group                                            D. Katz
Request for Comments: 2113                                 cisco Systems
Category: Standards Track                                  February 1997

                        IP Router Alert Option

Status of this Memo

  This document specifies an Internet standards track protocol for the
  Internet community, and requests discussion and suggestions for
  improvements.  Please refer to the current edition of the "Internet
  Official Protocol Standards" (STD 1) for the standardization state
  and status of this protocol.  Distribution of this memo is unlimited.

Abstract

  This memo describes a new IP Option type that alerts transit routers
  to more closely examine the contents of an IP packet.  This is useful
  for, but not limited to, new protocols that are addressed to a
  destination but require relatively complex processing in routers
  along the path.

1.0  Introduction

  A recent trend in routing protocols is to loosely couple new routing
  functionality to existing unicast routing.  The motivation for this
  is simple and elegant -- it allows deployment of new routing
  functionality without having to reinvent all of the basic routing
  protocol functions, greatly reducing specification and implementation
  complexity.

  The downside of this is that the new functionality can only depend on
  the least common denominator in unicast routing, the next hop toward
  the destination.  No assumptions can be made about the existence of
  more richly detailed information (such as a link state database).

  It is also desirable to be able to gradually deploy the new
  technology, specifically to avoid having to upgrade all routers in
  the path between source and destination.  This goal is somewhat at
  odds with the least common denominator information available, since a
  router that is not immediately adjacent to another router supporting
  the new protocol has no way of determining the location or identity
  of other such routers (unless something like a flooding algorithm is
  implemented over unicast forwarding, which conflicts with the
  simplicity goal).






Katz                        Standards Track                     [Page 1]

RFC 2113                  Router Alert Option              February 1997


  One obvious approach to leveraging unicast routing is to do hop-by-
  hop forwarding of the new protocol packets along the path toward the
  ultimate destination.  Each system that implements the new protocol
  would be responsible for addressing the packet to the next system in
  the path that understood it.  As noted above, however, it is
  difficult to know the next system implementing the protocol.  The
  simple, degenerate case is to assume that every system along the path
  implements the protocol.  This is a barrier to phased deployment of
  the new protocol, however.

  RSVP [1] finesses the problem by instead putting the address of the
  ultimate destination in the IP Destination Address field, and then
  asking that every RSVP router make a "small change in its ...
  forwarding path" to look for the specific RSVP packet type and pull
  such packets out of the mainline forwarding path, performing local
  processing on the packets before forwarding them on.  This has the
  decided advantage of allowing automatic tunneling through routers
  that don't understand RSVP, since the packets will naturally flow
  toward the ultimate destination.  However, the performance cost of
  making this Small Change may be unacceptable, since the mainline
  forwarding path of routers tends to be highly tuned--even the
  addition of a single instruction may incur penalties of hundreds of
  packets per second in performance.

2.0  Router Alert Option

  The goal, then, is to provide a mechanism whereby routers can
  intercept packets not addressed to them directly, without incurring
  any significant performance penalty.  This document defines a new IP
  option type, Router Alert, for this purpose.

  The Router Alert option has the semantic "routers should examine this
  packet more closely".  By including the Router Alert option in the IP
  header of its protocol message, RSVP can cause the message to be
  intercepted while causing little or no performance penalty on the
  forwarding of normal data packets.

  Routers that support option processing in the fast path already
  demultiplex processing based on the option type field.  If all option
  types are supported in the fast path, then the addition of another
  option type to process is unlikely to impact performance.  If some
  option types are not supported in the fast path, this new option type
  will be unrecognized and cause packets carrying it to be kicked out
  into the slow path, so no change to the fast path is necessary, and
  no performance penalty will be incurred for regular data packets.






Katz                        Standards Track                     [Page 2]

RFC 2113                  Router Alert Option              February 1997


  Routers that do not support option processing in the fast path will
  cause packets carrying this new option to be forwarded through the
  slow path, so no change to the fast path is necessary and no
  performance penalty will be incurred for regular data packets.

2.1  Syntax

  The Router Alert option has the following format:

                +--------+--------+--------+--------+
                |10010100|00000100|  2 octet value  |
                +--------+--------+--------+--------+

  Type:
    Copied flag:  1 (all fragments must carry the option)
    Option class: 0 (control)
    Option number: 20 (decimal)

  Length: 4

  Value:  A two octet code with the following values:
    0 - Router shall examine packet
    1-65535 - Reserved

2.2  Semantics

  Hosts shall ignore this option.  Routers that do not recognize this
  option shall ignore it.  Routers that recognize this option shall
  examine packets carrying it more closely (check the IP Protocol
  field, for example) to determine whether or not further processing is
  necessary.  Unrecognized value fields shall be silently ignored.

  The semantics of other values in the Value field are for further
  study.

3.0  Impact on Other Protocols

  For this option to be effective, its use must be mandated in
  protocols that expect routers to perform significant processing on
  packets not directly addressed to them.  Currently such protocols
  include RSVP [1] and IGMP [2].

4.0 Security Considerations

  If the Router Alert option is not set and should be set, the behavior
  of the protocol using the Router Alert, e.g., RSVP or IGMPv2, will be
  adversely affected since the protocol relies on the use of the Router
  Alert option.



Katz                        Standards Track                     [Page 3]

RFC 2113                  Router Alert Option              February 1997


  If the Router Alert option is set when it should not be set, it is
  likely that the flow will experience a performance penalty, as a
  packet whose Router Alert option is set will not go through the
  router's fastpath and will be processed in the router more slowly
  than if the option were not set.

5.0  References

  [1] Braden, B. (ed.), L. Zhang, D. Estrin, S. Herzog, S. Jamin,
      "Resource ReSerVation Protocol (RSVP)," work in progress, March
      1996.

  [2] Fenner, W., "Internet Group Management Protocol, Version 2
      (IGMPv2)," work in progress, October 1996.

Author's Address

     Dave Katz
     cisco Systems
     170 W. Tasman Dr.
     San Jose, CA  95134-1706  USA

     Phone:  +1 408 526 8284
     Email:  [email protected]



























Katz                        Standards Track                     [Page 4]