draft-ietf-pim-hello-intid-00.txt   draft-ietf-pim-hello-intid-01.txt 
Network Working Group S. Gulrajani Network Working Group S. Gulrajani
Internet-Draft S. Venaas Internet-Draft S. Venaas
Intended status: Standards Track cisco Systems Intended status: Standards Track cisco Systems
Expires: October 24, 2011 April 22, 2011 Expires: December 9, 2011 June 7, 2011
An Interface ID Hello Option for PIM An Interface ID Hello Option for PIM
draft-ietf-pim-hello-intid-00.txt draft-ietf-pim-hello-intid-01.txt
Abstract Abstract
This document defines a new PIM Hello option to advertise an This document defines a new PIM Hello option to advertise an
interface id that can be used by PIM protocols to uniquely identify interface identifier that can be used by PIM protocols to uniquely
an interface of a neighboring router. identify an interface of a neighboring router.
Status of this Memo Status of this Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on October 24, 2011. This Internet-Draft will expire on December 9, 2011.
Copyright Notice Copyright Notice
Copyright (c) 2011 IETF Trust and the persons identified as the Copyright (c) 2011 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 3, line 9 skipping to change at page 3, line 9
6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10
7.1. Normative References . . . . . . . . . . . . . . . . . . . 10 7.1. Normative References . . . . . . . . . . . . . . . . . . . 10
7.2. Informative References . . . . . . . . . . . . . . . . . . 10 7.2. Informative References . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 11 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 11
1. Introduction 1. Introduction
This document defines a new option for use in PIM Hello messages This document defines a new option for use in PIM Hello messages
[RFC4601] to carry an Interface Identifier. A router generates [RFC4601] to carry an Interface Identifier. A router generates
identifiers for each of its PIM enabled interfaces so that each identifiers for each of its PIM enabled interfaces such that each
interface has a different identifier. The identifiers can optionally interface has a different identifier. The identifiers can optionally
be generated so that they are unique within, e.g., an administrative be generated such that they are unique within, e.g., an
domain. administrative domain.
An example where this Interface Identifier can be used is with PIM An example where this Interface Identifier can be used is with PIM
PORT [I-D.ietf-pim-port], where a single Transport connection is used PORT [I-D.ietf-pim-port], where a single Transport connection is used
between two routers that have multiple interfaces connecting them. between two routers that have multiple interfaces connecting them.
If these interfaces have unnumbered or IPv6 Link local addresses, the If these interfaces have unnumbered or IPv6 Link local addresses, the
Interface Identifier included in the PORT Join/Prune message will Interface Identifier included in the PORT Join/Prune message will
identify which interface the message is associated with. For PIM identify which interface the message is associated with. For PIM
PORT the Router Identifier is not needed, and it can be set to zero. PORT the Router Identifier is not needed, and it can be set to zero.
1.1. Requirements Notation 1.1. Requirements Notation
skipping to change at page 4, line 18 skipping to change at page 4, line 18
of a neighboring router a PIM Hello [RFC4601] is sent on. This of a neighboring router a PIM Hello [RFC4601] is sent on. This
allows PIM protocols to refer to, or identify, a particular interface allows PIM protocols to refer to, or identify, a particular interface
on a neighboring router. on a neighboring router.
The Interface Identifier option need only be included in PIM Hello The Interface Identifier option need only be included in PIM Hello
messages if the router supports protocols that require it. An messages if the router supports protocols that require it. An
implementation MAY choose to always include it. How exactly the implementation MAY choose to always include it. How exactly the
Interface Identifier is used, and the uniqueness requirements, is Interface Identifier is used, and the uniqueness requirements, is
left to the specifications of the PIM protocols that make use of it. left to the specifications of the PIM protocols that make use of it.
It is assumed that different protocols may have different minimum It is assumed that different protocols may have different minimum
requirements for stability and uniqueness, but that they have no requirements for stability and uniqueness of the interface
maximum requirement. When specified, these protocols should indicate identifier, but that they have no maximum requirement. When
what their minimum requirements are. specified, these protocols should indicate what their minimum
requirements are.
The Interface Identifier consists of 64 bits. The lower 32 bits form The Interface Identifier consists of 64 bits. The lower 32 bits form
a Local Interface Identifier, and the high 32 bits a Router a Local Interface Identifier, and the high 32 bits a Router
Identifier. Identifier.
2.1. Local Interface Identifier 2.1. Local Interface Identifier
The 32 bit Local Interface Identifier is selected so that it is The 32 bit Local Interface Identifier is selected such that it is
unique among the router's PIM enabled interfaces. That is, there unique among the router's PIM enabled interfaces. That is, there
MUST NOT be two PIM interfaces with the same Local Interface MUST NOT be two PIM interfaces with the same Local Interface
Identifier. While an interface is up, the Identifier MUST always be Identifier. While an interface is up, the Identifier MUST always be
the same once it has been allocated. If an interface goes down and the same once it has been allocated. If an interface goes down and
up, the router SHOULD use the same Identifier. Many systems makes comes up, the router SHOULD use the same Identifier. Many systems
use of an ifIndex [RFC1213], which can be used as a Local Interface make use of an ifIndex [RFC1213], which can be used as a Local
Identifier. Interface Identifier.
The Local Interface Identifier MUST be non-zero. The reason for The Local Interface Identifier MUST be non-zero. The reason for
this, is that some protocols may want to only optionally refer to an this, is that some protocols may want to only optionally refer to an
Interface using the Interface Identifier Hello option, and use the 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 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 [RFC1213]. of 0 is not a valid ifIndex as defined in [RFC1213].
2.2. Router Identifier 2.2. Router Identifier
The 32 bit Router Identifier may be used to uniquely identify the The 32 bit Router Identifier may be used to uniquely identify the
router. It may be selected to be unique within some administrative router. It may be selected to be unique within some administrative
domain, or possibly globally unique. The requirements for the scope domain, or possibly globally unique. The requirements for the scope
in which it needs to be unique depend on the protocol that utilizes in which it needs to be unique depend on the protocol that utilizes
this. A router implementation MAY choose an IPv4 unicast address this. A router implementation MAY choose an IPv4 unicast address
assigned to the router as the Router Identifer, but MUST allow the assigned to the router as the Router Identifer, but MUST allow the
identifier to be configured manually. Protocols like BGP [RFC4271] identifier to be configured manually. Protocols such as BGP
and OSPFv2 [RFC2328] are other protocols making use of 32 bit
identifiers for routers. One may use the same identifier to [RFC4271] and OSPFv2 [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 construct the Interface Identifier option, provided it meets the
stability and uniqueness requirements of protocols making use of this stability and uniqueness requirements of protocols making use of this
option. option.
The value 0 has a special meaning for the Router Identifier. It The value 0 has a special meaning for the Router Identifier. It
means that no Router Identifier is used. If a router only supports means that no Router Identifier is used. If a router only supports
protocols that require the Interface Identifier to be unique for one protocols that require the Interface Identifier to be unique for one
router (only making use of the Local Interface Identifier), then the router (only making use of the Local Interface Identifier), then the
implementation MAY set the Router Identifier to zero. implementation MAY set the Router Identifier to zero.
3. Message Format 3. Message Format
Option Type: Interface Identifier Option Type: Interface Identifier
0 1 2 3 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 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 | | Type = 31 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Router Identifier | | Router Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Local Interface Identifier | | Local Interface Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Allocated Hello Type values can be found in [HELLO-OPT]. Allocated Hello Type values can be found in [HELLO-OPT].
Length: In bytes for the value part of the Type/Length/Value Length: In bytes for the value part of the Type/Length/Value
encoding. The Interface Identifier will be 8 bytes long. encoding. The Interface Identifier will be 8 bytes long.
Local Interface Identifier: The Local Interface Identifier is a 4
byte identifier that is unique among all PIM enabled interfaces on
a router.
Router Identifier: The Router Identifier is a 4 byte identifier Router Identifier: The Router Identifier is a 4 byte identifier
uniquely identifying the router within some scope. It MAY be 0 uniquely identifying the router within some scope. It MAY be 0
when no protocols require a Router Identifier. when no protocols require a Router Identifier.
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 4. Security Considerations
The Interface Identifier is included in PIM Hello messages. See The Interface Identifier is included in PIM Hello messages. See
[RFC4601] for security considerations regarding PIM Hello messages. [RFC4601] for security considerations regarding PIM Hello messages.
In particular, PIM Hello messages may be forged, and may include an In particular, PIM Hello messages may be forged, and may include an
arbitrary Interface Identifier, or it may be intentionally omitted. arbitrary Interface Identifier, or the Interface Identifier may be
The effects of this depend on how the Interface Identifier is used by intentionally omitted. The effects of this depend on how the
other protocols. Interface Identifier is used by other protocols.
5. IANA Considerations 5. IANA Considerations
IANA is requested to assign a PIM Hello option value for the IANA has temporarily assigned the value 31 for the Interface
Interface Identifier option defined in this document. Identifier Hello option defined in this document. IANA is requested
to make this assignment permanent.
6. Acknowledgments 6. Acknowledgments
The authors thank Yiqun Cai, Heidi Ou and Gorry Fairhurst for The authors thank Yiqun Cai, Heidi Ou, Liming Wei, Gorry Fairhurst,
providing valuable feedback. Bharat Joshi and Bill Atwood for providing valuable feedback.
7. References 7. References
7.1. Normative References 7.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC4601] Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas, [RFC4601] Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas,
"Protocol Independent Multicast - Sparse Mode (PIM-SM): "Protocol Independent Multicast - Sparse Mode (PIM-SM):
 End of changes. 16 change blocks. 
30 lines changed or deleted 33 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/