Internet Engineering Task Force (IETF)                      S. Gulrajani
Request for Comments: 6395                                     S. Venaas
Category: Standards Track                                  Cisco Systems
ISSN: 2070-1721                                             October 2011


          An Interface Identifier (ID) Hello Option for PIM

Abstract

  This document defines a new PIM Hello option to advertise an
  Interface Identifier that can be used by PIM protocols to uniquely
  identify an interface of a neighboring router.

Status of This Memo

  This is an Internet Standards Track document.

  This document is a product of the Internet Engineering Task Force
  (IETF).  It represents the consensus of the IETF community.  It has
  received public review and has been approved for publication by the
  Internet Engineering Steering Group (IESG).  Further information on
  Internet Standards is available in Section 2 of RFC 5741.

  Information about the current status of this document, any errata,
  and how to provide feedback on it may be obtained at
  http://www.rfc-editor.org/info/rfc6395.

Copyright Notice

  Copyright (c) 2011 IETF Trust and the persons identified as the
  document authors.  All rights reserved.

  This document is subject to BCP 78 and the IETF Trust's Legal
  Provisions Relating to IETF Documents
  (http://trustee.ietf.org/license-info) in effect on the date of
  publication of this document.  Please review these documents
  carefully, as they describe your rights and restrictions with respect
  to this document.  Code Components extracted from this document must
  include Simplified BSD License text as described in Section 4.e of
  the Trust Legal Provisions and are provided without warranty as
  described in the Simplified BSD License.









Gulrajani & Venaas           Standards Track                    [Page 1]

RFC 6395          An Interface ID Hello Option for PIM      October 2011


Table of Contents

  1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 2
    1.1.  Requirements Notation . . . . . . . . . . . . . . . . . . . 2
  2.  Interface Identifier Option . . . . . . . . . . . . . . . . . . 2
    2.1.  Local Interface Identifier  . . . . . . . . . . . . . . . . 3
    2.2.  Router Identifier . . . . . . . . . . . . . . . . . . . . . 3
  3.  Message Format  . . . . . . . . . . . . . . . . . . . . . . . . 4
  4.  Security Considerations . . . . . . . . . . . . . . . . . . . . 4
  5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5
  6.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 5
  7.  References  . . . . . . . . . . . . . . . . . . . . . . . . . . 5
    7.1.  Normative References  . . . . . . . . . . . . . . . . . . . 5
    7.2.  Informative References  . . . . . . . . . . . . . . . . . . 5

1.  Introduction

  This document defines a new option for use in PIM Hello messages
  [RFC4601] to carry an Interface Identifier.  A router generates
  identifiers for each of its PIM-enabled interfaces such that each
  interface has a different identifier.  The identifiers can optionally
  be generated such that they are unique within, e.g., an
  administrative domain.

  An example where this Interface Identifier can be used is with PIM
  over Reliable Transport (PORT) [PIM-PORT], where a single Transport
  connection is used between two routers that have multiple interfaces
  connecting them.  If these interfaces have unnumbered or IPv6 link-
  local addresses, the Interface Identifier included in the PORT Join/
  Prune message will identify with which interface the message is
  associated.  For PORT, the Router Identifier is not needed, and it
  can be set to zero.

  All multi-byte integers in this specification are transmitted in
  network byte order (i.e., most significant byte first).

1.1.  Requirements Notation

  The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
  "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
  document are to be interpreted as described in [RFC2119].

2.  Interface Identifier Option

  The Interface Identifier option is used to identify the interface of
  a neighboring router through which a PIM Hello [RFC4601] was sent.
  This allows PIM protocols to refer to, or identify, a particular
  interface on a neighboring router.



Gulrajani & Venaas           Standards Track                    [Page 2]

RFC 6395          An Interface ID Hello Option for PIM      October 2011


  The Interface Identifier option need only be included in PIM Hello
  messages if the router supports protocols that require it.  An
  implementation MAY choose to always include it.  The usage of the
  Interface Identifier and the uniqueness requirements are left to the
  specifications of the PIM protocols that implement it.  It is assumed
  that different protocols have different minimum requirements for
  stability and uniqueness of the Interface Identifier but that they
  have no maximum requirement.  When specified, these protocols should
  indicate what their minimum requirements are.

  The Interface Identifier consists of 64 bits.  The lower 32 bits form
  a Local Interface Identifier, and the high 32 bits form a Router
  Identifier.

2.1.  Local Interface Identifier

  The 32-bit Local Interface Identifier is selected such that it is
  unique among the router's PIM-enabled interfaces.  That is, there
  MUST NOT be two PIM interfaces with the same Local Interface
  Identifier.  While an interface is up, the Identifier MUST always be
  the same once it has been allocated.  If an interface goes down and
  comes up, the router SHOULD use the same Identifier.  If a node goes
  down and comes up again, the Identifier for each interface MAY
  change.  Many systems make use of an ifIndex [RFC2863] as a Local
  Interface Identifier.

  The Local Interface Identifier MUST be non-zero.  The reason for this
  is that some protocols may have messages that optionally reference an
  Interface Identifier, and they may use the value of 0 to show that no
  Interface Identifier is being referenced.  Note that the value of 0
  is not a valid ifIndex as defined in [RFC2863].

2.2.  Router Identifier

  The 32-bit Router Identifier may be used to uniquely identify the
  router.  The requirements for the scope in which the Router
  Identifier needs to be unique depend on the protocols that utilize
  it.  It may need to be unique within some administrative domain, or
  it may possibly be globally unique.

  A router implementation selects a Router Identifier according to a
  configured policy that defines the uniqueness scope.  Thus, an
  implementation MAY be configured to choose an IPv4 unicast address
  assigned to the router as the Router Identifier, but the
  implementation MUST allow the identifier to be configured manually.






Gulrajani & Venaas           Standards Track                    [Page 3]

RFC 6395          An Interface ID Hello Option for PIM      October 2011


  Protocols such as BGP [RFC4271] and OSPFv2 [RFC2328] are other
  protocols that make use of 32-bit identifiers for routers.  Provided
  that the stability and uniqueness requirements of the protocols that
  make use of the Router Identifier are met, an implementation MAY use
  the same identifier used by other protocols.

  The value 0 has a special meaning for the Router Identifier.  It
  means that no Router Identifier is used.  If a router only supports
  protocols that require the Interface Identifier to be unique for one
  router (only making use of the Local Interface Identifier), then the
  implementation MAY set the Router Identifier to zero.

3.  Message Format

  Option Type: Interface Identifier

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           Type = 31           |         Length = 8            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                       Router Identifier                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   Local Interface Identifier                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

  Allocated Hello Type values can be found in [HELLO-OPT].

  Length:   In bytes for the value part of the Type/Length/Value
     encoding.  The Interface Identifier will be 8 bytes long.

  Router Identifier:   The Router Identifier is a 4-byte identifier
     uniquely identifying the router within some scope.  It MAY be 0
     when no protocols require a Router Identifier.  The field MUST
     contain a valid Router Identifier or the value zero.

  Local Interface Identifier:   The Local Interface Identifier is a
     4-byte identifier that is unique among all PIM-enabled interfaces
     on a router.

4.  Security Considerations

  The Interface Identifier is included in PIM Hello messages.  See
  [RFC4601] for security considerations regarding PIM Hello messages.
  In particular, PIM Hello messages may be forged and include an
  arbitrary Interface Identifier, or the Interface Identifier may be
  intentionally omitted.  The effects of this depend on how the
  Interface Identifier is used by other protocols.



Gulrajani & Venaas           Standards Track                    [Page 4]

RFC 6395          An Interface ID Hello Option for PIM      October 2011


5.  IANA Considerations

  IANA has assigned the value 31 for the Interface ID PIM-Hello option
  defined in this document.

6.  Acknowledgments

  The authors thank Yiqun Cai, Heidi Ou, Liming Wei, Gorry Fairhurst,
  Bharat Joshi, and Bill Atwood for providing valuable feedback.

7.  References

7.1.  Normative References

  [RFC2119]   Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

  [RFC4601]   Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas,
              "Protocol Independent Multicast - Sparse Mode (PIM-SM):
              Protocol Specification (Revised)", RFC 4601, August 2006.

7.2.  Informative References

  [HELLO-OPT] IANA, "PIM Hello Options", <http://www.iana.org/>.

  [PIM-PORT]  Farinacci, D., Wijnands, IJ., Venaas, S., and M.
              Napierala, "A Reliable Transport Mechanism for PIM", Work
              in Progress, August 2011.

  [RFC2328]   Moy, J., "OSPF Version 2", STD 54, RFC 2328, April 1998.

  [RFC2863]   McCloghrie, K. and F. Kastenholz, "The Interfaces Group
              MIB", RFC 2863, June 2000.

  [RFC4271]   Rekhter, Y., Li, T., and S. Hares, "A Border Gateway
              Protocol 4 (BGP-4)", RFC 4271, January 2006.















Gulrajani & Venaas           Standards Track                    [Page 5]

RFC 6395          An Interface ID Hello Option for PIM      October 2011


Authors' Addresses

  Sameer Gulrajani
  Cisco Systems
  Tasman Drive
  San Jose, CA  95134
  USA

  EMail: [email protected]


  Stig Venaas
  Cisco Systems
  Tasman Drive
  San Jose, CA  95134
  USA

  EMail: [email protected]

































Gulrajani & Venaas           Standards Track                    [Page 6]