One document matched: draft-ietf-pim-hello-intid-00.xml


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<rfc category="std" ipr="trust200902" docName="draft-ietf-pim-hello-intid-00.txt">

<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>

<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>

    <front>
        <title>An Interface ID Hello Option for PIM</title>
	<author initials='S.' surname='Gulrajani' fullname='Sameer Gulrajani'>
            <organization>cisco Systems</organization>
	    <address><postal>
                <street>Tasman Drive</street>
		<city>San Jose</city> <region>CA</region>
		<code>95134</code>
		<country>USA</country>
  	    </postal>
	    <email>sameerg@cisco.com</email></address>
	</author>
        <author initials='S.' surname="Venaas" fullname='Stig Venaas'>
            <organization>cisco Systems</organization>
	    <address><postal>
                <street>Tasman Drive</street>
		<city>San Jose</city> <region>CA</region>
		<code>95134</code>
		<country>USA</country>
  	    </postal>
	    <email>stig@cisco.com</email></address>
        </author>
        <date/>
        <abstract>
	  <t>This document defines a new PIM Hello option to advertise 
	  an interface id that can be used by PIM protocols to uniquely
	  identify an interface of a neighboring router.</t>
        </abstract>
    </front>

    <middle>
	<section title="Introduction">
	    <t>
	      This document defines a new option for use in PIM Hello
	      messages <xref target="RFC4601"/> to
	      carry an Interface Identifier. A router generates
	      identifiers for each of its PIM enabled interfaces
	      so that each interface has a different identifier.
	      The identifiers can optionally be generated so that
	      they are unique within, e.g., an administrative domain.
	    </t>

	    <t>An example where this Interface Identifier can be used is with
	      PIM PORT <xref target="I-D.ietf-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 which interface the
	      message is associated with. For PIM PORT the Router Identifier is
	      not needed, and it can be set to zero.
	    </t>

            <section title="Requirements Notation">
                <t>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 <xref target="RFC2119"/>.</t>
            </section>
	</section>

	<section title="Interface Identifier Option">
	  <t>The Interface Identifier option is used to identify which 
            interface of a neighboring router a PIM Hello
	    <xref target="RFC4601"/> is sent on.
	    This allows PIM protocols to refer to, or identify, a 
	    particular interface on a neighboring router.
	  </t>

          <t>
	    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.
	    How exactly the Interface Identifier is used, and the
	    uniqueness requirements, is left to the specifications
	    of the PIM protocols that make use of it. It is assumed
	    that different protocols may have different minimum
	    requirements for stability and uniqueness, but that they
	    have no maximum requirement. When specified, these protocols
	    should indicate what their minimum requirements are.
	  </t>
	  
	  <t>The Interface Identifier consists of 64 bits. The lower 32
	    bits form a Local Interface Identifier, and the high 32 bits
	    a Router Identifier.
          </t> 
	  
	  <section title="Local Interface Identifier">
	    <t>The 32 bit Local Interface Identifier is selected so 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 up, the router SHOULD use the same Identifier. Many systems
	      makes use of an ifIndex <xref target="RFC1213"/>, which can be
	      used as a Local Interface Identifier.
	    </t>
	    <t>The Local Interface Identifier MUST be non-zero. The reason
	      for this, is that some protocols may want to only optionally
	      refer to an Interface using the Interface Identifier Hello
	      option, and use the value of 0 to show that it is not referred
	      to. Note that the value of 0 is not a valid ifIndex as defined
	      in <xref target="RFC1213"/>.
	    </t>
	  </section>
	  <section title="Router Identifier">
	    <t>The 32 bit Router Identifier may be used to uniquely identify
	      the router. It may be selected to be unique within some
	      administrative domain, or possibly globally unique.
              The requirements for the scope in which it needs to be unique
              depend on the protocol that utilizes this.
              A router implementation MAY choose an IPv4 unicast address
              assigned to the router as the Router Identifer, but MUST allow
              the identifier to be configured manually. Protocols like BGP
	      <xref target="RFC4271"/> and OSPFv2 <xref target="RFC2328"/>
	      are other protocols making use of 32 bit identifiers for
	      routers. One may use the same identifier to construct the
	      Interface Identifier option, provided it meets the stability
	      and uniqueness requirements of protocols making use of this
	      option.
	    </t>
	    <t>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.
	    </t>
	  </section>
	</section>

	<section title="Message Format" anchor="helloopts">
            <figure>
            <preamble>Option Type: Interface Identifier</preamble>
            <artwork><![CDATA[

        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 = TBD          |         Length = 8            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                       Router Identifier                       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                   Local Interface Identifier                  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

            ]]></artwork>
	    <postamble>Allocated Hello Type values can be found in 
	    <xref target="HELLO-OPT" />.</postamble>
            </figure>
        
	  <t><list style="hanging">
	    <t hangText="Length: ">
	    In bytes for the value part of the Type/Length/Value encoding.
	    The Interface Identifier will be 8 bytes long.</t>
  
	    <t hangText="Local Interface Identifier: ">
	    The Local Interface Identifier is a 4 byte identifier that is
	    unique among all PIM enabled interfaces on a router.</t>

	    <t hangText="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.</t>
          </list></t>
	</section>

	<section title="Security Considerations">
	  <t>
	    The Interface Identifier is included in PIM Hello messages.
            See <xref target="RFC4601"/> for security considerations
            regarding PIM Hello messages. In particular, PIM Hello messages
            may be forged, and may include an arbitrary Interface Identifier,
            or it may be intentionally omitted. The effects of this depend on
            how the Interface Identifier is used by other protocols.
	  </t>
	</section>

	<section anchor="IANA-Considerations" title="IANA Considerations">
	  <t>IANA is requested to assign a PIM Hello option value for the
	    Interface Identifier option defined in this document.
	  </t>
	</section>

        <section title="Acknowledgments">
	  <t>
	    The authors thank Yiqun Cai, Heidi Ou and Gorry Fairhurst for
            providing valuable feedback.
	  </t>
        </section>
    </middle>

    <back>
        <references title='Normative References'>
	  <?rfc include='reference.RFC.2119' ?>
	  <?rfc include='reference.RFC.4601' ?>
        </references>

        <references title='Informative References'>
	  <?rfc include='reference.RFC.1213' ?>
	  <?rfc include='reference.RFC.2328' ?>
	  <?rfc include='reference.RFC.4271' ?>
	  <?rfc include="reference.I-D.ietf-pim-port" ?>
	    <reference anchor="HELLO-OPT">
  	        <front>
	            <title>PIM Hello Options</title>
		    <author surname="IANA">
		        <organization />
   		    </author>
	            <date month="March" year="2007" />
	        </front>
	        <seriesInfo name="PIM-HELLO-OPTIONS per RFC4601"
		value="http://www.iana.org/assignments/pim-hello-options" />
	    </reference>
	</references>
    </back>
</rfc>

PAFTECH AB 2003-20262026-04-22 05:30:06