summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc2961.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rfc/rfc2961.txt')
-rw-r--r--doc/rfc/rfc2961.txt1907
1 files changed, 1907 insertions, 0 deletions
diff --git a/doc/rfc/rfc2961.txt b/doc/rfc/rfc2961.txt
new file mode 100644
index 0000000..21f39f7
--- /dev/null
+++ b/doc/rfc/rfc2961.txt
@@ -0,0 +1,1907 @@
+
+
+
+
+
+
+Network Working Group L. Berger
+Request for Comments: 2961 LabN Consulting, LLC
+Category: Standards Track D. Gan
+ Juniper Networks, Inc.
+ G. Swallow
+ Cisco Systems, Inc.
+ P. Pan
+ Juniper Networks, Inc.
+ F. Tommasi
+ S. Molendini
+ University of Lecce
+ April 2001
+
+
+ RSVP Refresh Overhead Reduction Extensions
+
+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.
+
+Copyright Notice
+
+ Copyright (C) The Internet Society (2001). All Rights Reserved.
+
+Abstract
+
+ This document describes a number of mechanisms that can be used to
+ reduce processing overhead requirements of refresh messages,
+ eliminate the state synchronization latency incurred when an RSVP
+ (Resource ReserVation Protocol) message is lost and, when desired,
+ refreshing state without the transmission of whole refresh messages.
+ The same extensions also support reliable RSVP message delivery on a
+ per hop basis. These extension present no backwards compatibility
+ issues.
+
+
+
+
+
+
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 1]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+Table of Contents
+
+ 1 Introduction and Background ................................2
+ 1.1 Trigger and Refresh Messages ...............................4
+ 2 Refresh-Reduction-Capable Bit ..............................4
+ 3 RSVP Bundle Message ........................................5
+ 3.1 Bundle Header ..............................................5
+ 3.2 Message Formats ............................................6
+ 3.3 Sending RSVP Bundle Messages ...............................7
+ 3.4 Receiving RSVP Bundle Messages .............................8
+ 4 MESSAGE_ID Extension .......................................8
+ 4.1 Modification of Standard Message Formats ...................9
+ 4.2 MESSAGE_ID Objects ........................................10
+ 4.3 MESSAGE_ID_ACK and MESSAGE_ID_NACK Objects ................11
+ 4.4 Ack Message Format ........................................11
+ 4.5 MESSAGE_ID Object Usage ...................................12
+ 4.6 MESSAGE_ID_ACK Object and MESSAGE_ID_NACK Object Usage ....14
+ 4.7 Multicast Considerations ..................................15
+ 4.7.1 Reference RSVP/Routing Interface ..........................16
+ 4.8 Compatibility .............................................16
+ 5 Summary Refresh Extension .................................17
+ 5.1 MESSAGE_ID LIST, SRC_LIST and MCAST_LIST Objects ..........18
+ 5.2 Srefresh Message Format ...................................24
+ 5.3 Srefresh Message Usage ....................................25
+ 5.4 Srefresh NACK .............................................28
+ 5.5 Preserving RSVP Soft State ................................28
+ 5.6 Compatibility .............................................29
+ 6 Exponential Back-Off Procedures ...........................29
+ 6.1 Outline of Operation ......................................30
+ 6.2 Time Parameters ...........................................30
+ 6.3 Retransmission Algorithm ..................................31
+ 6.4 Performance Considerations ................................31
+ 7 Acknowledgments ...........................................31
+ 8 Security Considerations ...................................32
+ 9 References ................................................32
+ 10 Authors' Addresses ........................................33
+ 11 Full Copyright Statement...................................34
+
+1. Introduction and Background
+
+ Standard RSVP [RFC2205] maintains state via the generation of RSVP
+ refresh messages. Refresh messages are used to both synchronize
+ state between RSVP neighbors and to recover from lost RSVP messages.
+ The use of Refresh messages to cover many possible failures has
+ resulted in a number of operational problems. One problem relates to
+ scaling, another relates to the reliability and latency of RSVP
+ Signaling.
+
+
+
+
+Berger, et al. Standards Track [Page 2]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ The scaling problems are linked to the resource requirements (in
+ terms of processing and memory) of running RSVP. The resource
+ requirements increase proportionally with the number of sessions.
+ Each session requires the generation, transmission, reception and
+ processing of RSVP Path and Resv messages per refresh period.
+ Supporting a large number of sessions, and the corresponding volume
+ of refresh messages, presents a scaling problem.
+
+ The reliability and latency problem occurs when a non-refresh RSVP
+ message is lost in transmission. Standard RSVP [RFC2205] recovers
+ from a lost message via RSVP refresh messages. In the face of
+ transmission loss of RSVP messages, the end-to-end latency of RSVP
+ signaling is tied to the refresh interval of the node(s) experiencing
+ the loss. When end-to-end signaling is limited by the refresh
+ interval, the delay incurred in the establishment or the change of a
+ reservation may be beyond the range of what is acceptable for some
+ applications.
+
+ One way to address the refresh volume problem is to increase the
+ refresh period, "R" as defined in Section 3.7 of [RFC2205].
+ Increasing the value of R provides linear improvement on transmission
+ overhead, but at the cost of increasing the time it takes to
+ synchronize state.
+
+ One way to address the reliability and latency of RSVP Signaling is
+ to decrease the refresh period R. Decreasing the value of R
+ increases the probability that state will be installed in the face of
+ message loss, but at the cost of increasing refresh message rate and
+ associated processing requirements.
+
+ An additional issue is the time to deallocate resources after a tear
+ message is lost. RSVP does not retransmit ResvTear or PathTear
+ messages. If the sole tear message transmitted is lost, then
+ resources will only be deallocated once the "cleanup timer" interval
+ has passed. This may result in resources being allocated for an
+ unnecessary period of time. Note that even when the refresh period
+ is adjusted, the "cleanup timer" must still expire since tear
+ messages are not retransmitted.
+
+ The extensions defined in this document address both the refresh
+ volume and the reliability issues with mechanisms other than
+ adjusting refresh rate. The extensions are collectively referred to
+ as the "Refresh Overhead Reduction" or the "Refresh Reduction"
+ extensions. A Bundle message is defined to reduce overall message
+ handling load. A MESSAGE_ID object is defined to reduce refresh
+ message processing by allowing the receiver to more readily identify
+ an unchanged message. A MESSAGE_ACK object is defined which can be
+ used to detect message loss and support reliable RSVP message
+
+
+
+Berger, et al. Standards Track [Page 3]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ delivery on a per hop basis. A summary refresh message is defined to
+ enable refreshing state without the transmission of whole refresh
+ messages, while maintaining RSVP's ability to indicate when state is
+ lost and to adjust to changes in routing.
+
+ 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].
+
+1.1. Trigger and Refresh Messages
+
+ This document categorizes RSVP messages into two types: trigger and
+ refresh messages. Trigger messages are those RSVP messages that
+ advertise state or any other information not previously transmitted.
+ Trigger messages include messages advertising new state, a route
+ change that alters a reservation path, or a modification to an
+ existing RSVP session or reservation. Trigger messages also include
+ those messages that include changes in non-RSVP processed objects,
+ such as changes in the Policy or ADSPEC objects.
+
+ Refresh messages represent previously advertised state and contain
+ exactly the same objects and same information as a previously
+ transmitted message, and are sent over the same path. Only Path and
+ Resv messages can be refresh messages. Refresh messages are
+ identical to the corresponding previously transmitted message, with
+ some possible exceptions. Specifically, the checksum field, the
+ flags field and the INTEGRITY object may differ in refresh messages.
+
+2. Refresh-Reduction-Capable Bit
+
+ To indicate support for the refresh overhead reduction extensions, an
+ additional capability bit is added to the common RSVP header, which
+ is defined in [RFC2205].
+
+ 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Vers | Flags | Msg Type | RSVP Checksum |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Send_TTL | (Reserved) | RSVP Length |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ Flags: 4 bits
+
+ 0x01: Refresh (overhead) reduction capable
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 4]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ When set, indicates that this node is willing and capable of
+ receiving all the messages and objects described in this
+ document. This includes the Bundle message described in
+ Section 3, the MESSAGE_ID objects and Ack messages described
+ in Section 4, and the MESSAGE_ID LIST objects and Srefresh
+ message described in Section 5. This bit is meaningful only
+ between RSVP neighbors.
+
+ Nodes supporting the refresh overhead reduction extensions must also
+ take care to recognize when a next hop stops sending RSVP messages
+ with the Refresh-Reduction-Capable bit set. To cover this case,
+ nodes supporting the refresh overhead reduction extensions MUST
+ examine the flags field of each received RSVP message. If the flag
+ changes from indicating support to indicating non-support then,
+ unless configured otherwise, Srefresh messages (described in Section
+ 5) MUST NOT be used for subsequent state refreshes to that neighbor
+ and Bundle messages (Section 3) MUST NOT be sent to that neighbor.
+ Note, a node that supports reliable RSVP message delivery (Section 4)
+ but not Bundle and Srefresh messages, will not set the Refresh-
+ Reduction-Capable bit.
+
+3. RSVP Bundle Message
+
+ An RSVP Bundle message consists of a bundle header followed by a body
+ consisting of a variable number of standard RSVP messages. A Bundle
+ message is used to aggregate multiple RSVP messages within a single
+ PDU. The term "bundling" is used to avoid confusion with RSVP
+ reservation aggregation. The following subsections define the
+ formats of the bundle header and the rules for including standard
+ RSVP messages as part of the message.
+
+3.1. Bundle Header
+
+ 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Vers | Flags | Msg type | RSVP checksum |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Send_TTL | (Reserved) | RSVP length |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ The format of the bundle header is identical to the format of the
+ RSVP common header [RFC2205]. The fields in the header are as
+ follows:
+
+ Vers: 4 bits
+
+ Protocol version number. This is version 1.
+
+
+
+Berger, et al. Standards Track [Page 5]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ Flags: 4 bits
+
+ 0x01: Refresh (overhead) reduction capable
+
+ See Section 2.
+
+ 0x02-0x08: Reserved
+
+ Msg type: 8 bits
+
+ 12 = Bundle
+
+ RSVP checksum: 16 bits
+
+ The one's complement of the one's complement sum of the entire
+ message, with the checksum field replaced by zero for the
+ purpose of computing the checksum. An all-zero value means
+ that no checksum was transmitted. Because individual sub-
+ messages may carry their own checksum as well as the INTEGRITY
+ object for authentication, this field MAY be set to zero. Note
+ that when the checksum is not computed, the header of the
+ bundle message will not be covered by any checksum. If the
+ checksum is computed, individual sub-messages MAY set their own
+ checksum to zero.
+
+ Send_TTL: 8 bits
+
+ The IP TTL value with which the message was sent. This is used
+ by RSVP to detect a non-RSVP hop by comparing the Send_TTL with
+ the IP TTL in a received message.
+
+ RSVP length: 16 bits
+
+ The total length of this RSVP Bundle message in bytes,
+ including the bundle header and the sub-messages that follow.
+
+3.2. Message Formats
+
+ An RSVP Bundle message must contain at least one sub-message. A
+ sub-message MAY be any message type except for another Bundle
+ message.
+
+
+
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 6]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Vers | Flags | 12 | RSVP checksum |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Send_TTL | (Reserved) | RSVP length |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | |
+ // First sub-message //
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | |
+ // More sub-messages.. //
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+3.3. Sending RSVP Bundle Messages
+
+ Support for RSVP Bundle messages is optional. While message bundling
+ helps in scaling RSVP, by reducing processing overhead and bandwidth
+ consumption, a node is not required to transmit every standard RSVP
+ message in a Bundle message. A node MUST always be ready to receive
+ standard RSVP messages.
+
+ RSVP Bundle messages can only be sent to RSVP neighbors that support
+ bundling. Methods for discovering such information include: (1)
+ manual configuration and (2) observing the Refresh-Reduction-Capable
+ bit (see Section 2) in the received RSVP messages. RSVP Bundle
+ messages MUST NOT be used if the RSVP neighbor does not support RSVP
+ Bundle messages.
+
+ RSVP Bundle messages are sent hop by hop between RSVP-capable nodes
+ as "raw" IP datagrams with protocol number 46. The IP source address
+ is an address local to the system that originated the Bundle message.
+ The IP destination address is the RSVP neighbor for which the sub-
+ messages are intended.
+
+ RSVP Bundle messages SHOULD NOT be sent with the Router Alert IP
+ option in their IP headers. This is because Bundle messages are
+ addressed directly to RSVP neighbors.
+
+ Each RSVP Bundle message MUST occupy exactly one IP datagram, which
+ is approximately 64K bytes. If it exceeds the MTU, the datagram is
+ fragmented by IP and reassembled at the recipient node.
+ Implementations may choose to limit each RSVP Bundle message to the
+ MTU size of the outgoing link, e.g., 1500 bytes. Implementations
+ SHOULD also limit the amount of time that a message is delayed in
+ order to be bundled. Different limits may be used for trigger and
+
+
+
+Berger, et al. Standards Track [Page 7]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ standard refresh messages. Trigger messages SHOULD be delayed a
+ minimal amount of time. Refresh messages may be delayed up to their
+ refresh interval. Note that messages related to the same Resv or
+ Path state should not be delayed at different intervals in order to
+ preserve ordering.
+
+ If the RSVP neighbor is not known or changes in next hops cannot be
+ identified via routing, Bundle messages MUST NOT be used. Note that
+ when the routing next hop is not RSVP capable it will typically not
+ be possible to identify changes in next hop.
+
+ Any message that will be handled by the RSVP neighbor indicated in a
+ Bundle Message's destination address may be included in the same
+ message. This includes all RSVP messages that would be sent out a
+ point-to-point link. It includes any message, such as a Resv,
+ addressed to the same destination address. It also includes Path and
+ PathTear messages when the next hop is known to be the destination
+ and changes in next hops can be detected. Path and PathTear messages
+ for multicast sessions MUST NOT be sent in Bundle messages when the
+ outgoing link is not a point-to-point link or when the next hop does
+ not support the refresh overhead reduction extensions.
+
+3.4. Receiving RSVP Bundle Messages
+
+ If the local system does not recognize or does not wish to accept a
+ Bundle message, the received messages shall be discarded without
+ further analysis.
+
+ The receiver next compares the Send_TTL with which a Bundle message
+ is sent to the IP TTL with which it is received. If a non-RSVP hop
+ is detected, the number of non-RSVP hops is recorded. It is used
+ later in processing of sub-messages.
+
+ Next, the receiver verifies the version number and checksum of the
+ RSVP Bundle message and discards the message if any mismatch is
+ found.
+
+ The receiver then starts decapsulating individual sub-messages. Each
+ sub-message has its own complete message length and authentication
+ information. With the exception of using the Send_TTL from the
+ header of the Bundle message, each sub-message is processed as if it
+ was received individually.
+
+4. MESSAGE_ID Extension
+
+ Three new objects are defined as part of the MESSAGE_ID extension.
+ The objects are the MESSAGE_ID object, the MESSAGE_ID_ACK object, and
+ the MESSAGE_ID_NACK objects. The first two objects are used to
+
+
+
+Berger, et al. Standards Track [Page 8]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ support acknowledgments and reliable RSVP message delivery. The last
+ object is used to support the summary refresh extension described in
+ Section 5. The MESSAGE_ID object can also be used to simply provide
+ a shorthand indication of when the message carrying the object is a
+ refresh message. Such information can be used by the receiving node
+ to reduce refresh processing requirements.
+
+ Message identification and acknowledgment is done on a per hop basis.
+ All types of MESSAGE_ID objects contain a message identifier. The
+ identifier MUST be unique on a per object generator's IP address
+ basis. No more than one MESSAGE_ID object may be included in an RSVP
+ message. Each message containing a MESSAGE_ID object may be
+ acknowledged via a MESSAGE_ID_ACK object, when so indicated.
+ MESSAGE_ID_ACK and MESSAGE_ID_NACK objects may be sent piggy-backed
+ in unrelated RSVP messages or in RSVP Ack messages. RSVP messages
+ carrying any of the three object types may be included in a bundle
+ message. When included, each object is treated as if it were
+ contained in a standard, non-bundled, RSVP message.
+
+4.1. Modification of Standard Message Formats
+
+ The MESSAGE_ID, MESSAGE_ID_ACK and MESSAGE_ID_NACK objects may be
+ included in the standard RSVP messages, as defined in [RFC2205].
+ When included, one or more MESSAGE_ID_ACK or MESSAGE_ID_NACK objects
+ MUST immediately follow the INTEGRITY object. When no INTEGRITY
+ object is present, the MESSAGE_ID_ACK or MESSAGE_ID_NACK objects MUST
+ immediately follow the message or sub-message header. Only one
+ MESSAGE_ID object MAY be included in a message or sub-message and it
+ MUST follow any present MESSAGE_ID_ACK or MESSAGE_ID_NACK objects.
+ When no MESSAGE_ID_ACK or MESSAGE_ID_NACK objects are present, the
+ MESSAGE_ID object MUST immediately follow the INTEGRITY object. When
+ no INTEGRITY object is present, the MESSAGE_ID object MUST
+ immediately follow the message or sub-message header.
+
+ The ordering of the ACK objects for all standard RSVP messages is:
+ <Common Header> [ <INTEGRITY> ]
+ [ [<MESSAGE_ID_ACK> | <MESSAGE_ID_NACK>] ... ]
+ [ <MESSAGE_ID> ]
+
+
+
+
+
+
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 9]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+4.2. MESSAGE_ID Objects
+
+ MESSAGE_ID Class = 23
+
+ MESSAGE_ID object
+
+ Class = MESSAGE_ID Class, C_Type = 1
+
+ 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Flags | Epoch |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Message_Identifier |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ Flags: 8 bits
+
+ 0x01 = ACK_Desired flag
+
+ Indicates that the sender requests the receiver to send an
+ acknowledgment for the message.
+
+ Epoch: 24 bits
+
+ A value that indicates when the Message_Identifier sequence has
+ reset. SHOULD be randomly generated each time a node reboots
+ or the RSVP agent is restarted. The value SHOULD NOT be the
+ same as was used when the node was last operational. This
+ value MUST NOT be changed during normal operation.
+
+ Message_Identifier: 32 bits
+
+ When combined with the message generator's IP address, the
+ Message_Identifier field uniquely identifies a message. The
+ values placed in this field change incrementally and only
+ decrease when the Epoch changes or when the value wraps.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 10]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+4.3. MESSAGE_ID_ACK and MESSAGE_ID_NACK Objects
+
+
+ MESSAGE_ID_ACK Class = 24
+
+ MESSAGE_ID_ACK object
+
+ Class = MESSAGE_ID_ACK Class, C_Type = 1
+
+ 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Flags | Epoch |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Message_Identifier |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ Flags: 8 bits
+
+ No flags are currently defined. This field MUST be zero on
+ transmission and ignored on receipt.
+
+ Epoch: 24 bits
+
+ The Epoch field copied from the message being acknowledged.
+
+ Message_Identifier: 32 bits
+
+ The Message_Identifier field copied from the message being
+ acknowledged.
+
+ MESSAGE_ID_NACK object
+
+ Class = MESSAGE_ID_ACK Class, C_Type = 2
+
+ Definition is the same as the MESSAGE_ID_ACK object.
+
+4.4. Ack Message Format
+
+ Ack messages carry one or more MESSAGE_ID_ACK or MESSAGE_ID_NACK
+ objects. They MUST NOT contain any MESSAGE_ID objects. Ack messages
+ are sent between neighboring RSVP nodes. The IP destination address
+ of an Ack message is the unicast address of the node that generated
+ the message(s) being acknowledged. For messages with RSVP_HOP
+ objects, such as Path and Resv messages, the address is found in the
+ RSVP_HOP object. For other messages, such as ResvConf, the
+ associated IP address is the source address in the IP header. The IP
+ source address is an address of the node that sends the Ack message.
+
+
+
+Berger, et al. Standards Track [Page 11]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ The Ack message format is as follows:
+
+ <ACK Message> ::= <Common Header> [ <INTEGRITY> ]
+ <MESSAGE_ID_ACK> | <MESSAGE_ID_NACK>
+ [ [<MESSAGE_ID_ACK> | <MESSAGE_ID_NACK>] ... ]
+
+ For Ack messages, the Msg Type field of the Common Header MUST be
+ set to 13.
+
+ Section 4.6 provides guidance on when an Ack message should be used
+ and when MESSAGE_ID objects should be sent piggy-backed in other
+ RSVP messages.
+
+4.5. MESSAGE_ID Object Usage
+
+ The MESSAGE_ID object may be included in any RSVP message other than
+ the Ack and Bundle messages. The MESSAGE_ID object is always
+ generated and processed over a single hop between RSVP neighbors.
+ The IP address of the object generator, i.e., the node that creates
+ the object, is represented in a per RSVP message type specific
+ fashion. For messages with RSVP_HOP objects, such as Path and Resv
+ messages, the generator's IP address is found in the RSVP_HOP object.
+ For other messages, such as ResvConf message, the generator's IP
+ address is the source address in the IP header. Note that MESSAGE_ID
+ objects can only be used in a Bundle sub-messages, but not in a
+ Bundle message. As is always the case with the Bundle message, each
+ sub-message is processed as if it was received individually. This
+ includes processing of MESSAGE_ID objects.
+
+ The Epoch field contains a generator selected value. The value is
+ used to indicate when the sender resets the values used in the
+ Message_Identifier field. On startup, a node SHOULD randomly select
+ a value to be used in the Epoch field. The node SHOULD ensure that
+ the selected value is not the same as was used when the node was last
+ operational. The value MUST NOT be changed unless the node or the
+ RSVP agent is restarted.
+
+ The Message_Identifier field contains a generator selected value.
+ This value, when combined with the generator's IP address, identifies
+ a particular RSVP message and the specific state information it
+ represents. The combination of Message_Identifier and Epoch can also
+ be used to detect out of order messages. When a node is sending a
+ refresh message with a MESSAGE_ID object, it SHOULD use the same
+ Message_Identifier value that was used in the RSVP message that first
+ advertised the state being refreshed. When a node is sending a
+ trigger message, the Message_Identifier value MUST have a value that
+ is greater than any other value previously used with the same Epoch
+ field value. A value is considered to have been used when it has
+
+
+
+Berger, et al. Standards Track [Page 12]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ been sent in any message using the associated IP address with the
+ same Epoch field value.
+
+ The ACK_Desired flag is set when the MESSAGE_ID object generator
+ wants a MESSAGE_ID_ACK object sent in response to the message. Such
+ information can be used to ensure reliable delivery of RSVP messages
+ in the face of network loss. Nodes setting the ACK_Desired flag
+ SHOULD retransmit unacknowledged messages at a more rapid interval
+ than the standard refresh period until the message is acknowledged or
+ until a "rapid" retry limit is reached. Rapid retransmission rate
+ MUST be based on the exponential exponential back-off procedures
+ defined in section 6. The ACK_Desired flag will typically be set
+ only in trigger messages. The ACK_Desired flag MAY be set in refresh
+ messages. Issues relate to multicast sessions are covered in a later
+ section.
+
+ Nodes processing incoming MESSAGE_ID objects SHOULD check to see if a
+ newly received message is out of order and can be ignored. Out of
+ order messages SHOULD be ignored, i.e., silently dropped. Out of
+ order messages can be identified by examining the values in the Epoch
+ and Message_Identifier fields. To determine ordering, the received
+ Epoch value must match the value previously received from the message
+ sender. If the values differ then the receiver MUST NOT treat the
+ message as out of order. When the Epoch values match and the
+ Message_Identifier value is less than the largest value previously
+ received from the sender, then the receiver SHOULD check the value
+ previously received for the state associated with the message. This
+ check should be performed for any message that installs or changes
+ state. (Includes at least: Path, Resv, PathTear, ResvTear, PathErr
+ and ResvErr.) If no local state information can be associated with
+ the message, the receiver MUST NOT treat the message as out of order.
+ If local state can be associated with the message and the received
+ Message_Identifier value is less than the most recently received
+ value associated with the state, the message SHOULD be treated as
+ being out of order.
+
+ Note that the 32-bit Message_Identifier value MAY wrap. To cover the
+ wrap case, the following expression may be used to test if a newly
+ received Message_Identifier value is less than a previously received
+ value:
+
+ if ((int) old_id - (int) new_id > 0) {
+ new value is less than old value;
+ }
+
+ MESSAGE_ID objects of messages that are not out of order SHOULD be
+ used to aid in determining if the message represents new state or a
+ state refresh. Note that state is only refreshed in Path and Resv
+
+
+
+Berger, et al. Standards Track [Page 13]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ messages. If the received Epoch values differs from the value
+ previously received from the message sender, the message is a trigger
+ message and the receiver MUST fully process the message. If a Path
+ or Resv message contains the same Message_Identifier value that was
+ used in the most recently received message for the same session and,
+ for Path messages, SENDER_TEMPLATE then the receiver SHOULD treat the
+ message as a state refresh. If the Message_Identifier value is
+ greater than the most recently received value, the receiver MUST
+ fully processes the message. When fully processing a Path or Resv
+ message, the receiver MUST store the received Message_Identifier
+ value as part of the local Path or Resv state for future reference.
+
+ Nodes receiving a non-out of order message containing a MESSAGE_ID
+ object with the ACK_Desired flag set, SHOULD respond with a
+ MESSAGE_ID_ACK object. Note that MESSAGE_ID objects received in
+ messages containing errors, i.e., are not syntactically valid, MUST
+ NOT be acknowledged. PathErr and ResvErr messages SHOULD be treated
+ as implicit acknowledgments.
+
+4.6. MESSAGE_ID_ACK Object and MESSAGE_ID_NACK Object Usage
+
+ The MESSAGE_ID_ACK object is used to acknowledge receipt of messages
+ containing MESSAGE_ID objects that were sent with the ACK_Desired
+ flag set. A MESSAGE_ID_ACK object MUST NOT be generated in response
+ to a received MESSAGE_ID object when the ACK_Desired flag is not set.
+
+ The MESSAGE_ID_NACK object is used as part of the summary refresh
+ extension. The generation and processing of MESSAGE_ID_NACK objects
+ is described in further detail in Section 5.4.
+
+ MESSAGE_ID_ACK and MESSAGE_ID_NACK objects MAY be sent in any RSVP
+ message that has an IP destination address matching the generator of
+ the associated MESSAGE_ID object. This means that the objects will
+ not typically be included in the non hop-by-hop Path, PathTear and
+ ResvConf messages. When no appropriate message is available, one or
+ more objects SHOULD be sent in an Ack message. Implementations
+ SHOULD include MESSAGE_ID_ACK and MESSAGE_ID_NACK objects in standard
+ RSVP messages when possible.
+
+ Implementations SHOULD limit the amount of time that an object is
+ delayed in order to be piggy-backed or sent in an Ack message.
+ Different limits may be used for MESSAGE_ID_ACK and MESSAGE_ID_NACK
+ objects. MESSAGE_ID_ACK objects are used to detect link transmission
+ losses. If an ACK object is delayed too long, the corresponding
+ message will be retransmitted. To avoid such retransmission, ACK
+ objects SHOULD be delayed a minimal amount of time. A delay time
+ equal to the link transit time MAY be used. MESSAGE_ID_NACK objects
+ may be delayed an independent and longer time, although additional
+
+
+
+Berger, et al. Standards Track [Page 14]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ delay increases the amount of time a desired reservation is not
+ installed.
+
+4.7. Multicast Considerations
+
+ Path and PathTear messages may be sent to IP multicast destination
+ addresses. When the destination is a multicast address, it is
+ possible that a single message containing a single MESSAGE_ID object
+ will be received by multiple RSVP next hops. When the ACK_Desired
+ flag is set in this case, acknowledgment processing is more complex.
+
+ There are a number of issues to be addressed including ACK implosion,
+ number of acknowledgments to be expected and handling of new
+ receivers.
+
+ ACK implosion occurs when each receiver responds to the MESSAGE_ID
+ object at approximately the same time. This can lead to a
+ potentially large number of MESSAGE_ID_ACK objects being
+ simultaneously delivered to the message generator. To address this
+ case, the receiver MUST wait a random interval prior to acknowledging
+ a MESSAGE_ID object received in a message destined to a multicast
+ address. The random interval SHOULD be between zero (0) and a
+ configured maximum time. The configured maximum SHOULD be set in
+ proportion to the refresh and "rapid" retransmission interval, i.e,
+ such that the maximum time before sending an acknowledgment does not
+ result in retransmission. It should be noted that ACK implosion is
+ being addressed by spreading acknowledgments out in time, not by ACK
+ suppression.
+
+ A more fundamental issue is the number of acknowledgments that the
+ upstream node, i.e., the message generator, should expect. The
+ number of acknowledgments that should be expected is the same as the
+ number of RSVP next hops. In the router-to-router case, the number
+ of next hops can often be obtained from routing. When hosts are
+ either the upstream node or the next hops, the number of next hops
+ will typically not be readily available. Another case where the
+ number of RSVP next hops will typically not be known is when there
+ are non-RSVP routers between the message generator and the RSVP next
+ hops.
+
+ When the number of next hops is not known, the message generator
+ SHOULD only expect a single response. The result of this behavior
+ will be special retransmission handling until the message is
+ delivered to at least one next hop, then followed by standard RSVP
+ refreshes. Refresh messages will synchronize state with any next
+ hops that don't receive the original message.
+
+
+
+
+
+Berger, et al. Standards Track [Page 15]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+4.7.1. Reference RSVP/Routing Interface
+
+ When using the MESSAGE_ID extension with multicast sessions it is
+ preferable for RSVP to obtain the number of next hops from routing
+ and to be notified when that number changes. The interface between
+ routing and RSVP is purely an implementation issue. Since RSVP
+ [RFC2205] describes a reference routing interface, a version of the
+ RSVP/routing interface updated to provide number of next hop
+ information is presented. See [RFC2205] for previously defined
+ parameters and function description.
+
+ o Route Query
+ Mcast_Route_Query( [ SrcAddress, ] DestAddress,
+ Notify_flag )
+ -> [ IncInterface, ] OutInterface_list,
+ NHops_list
+
+ o Route Change Notification
+ Mcast_Route_Change( ) -> [ SrcAddress, ] DestAddress,
+ [ IncInterface, ] OutInterface_list,
+ NHops_list
+
+ NHops_list provides the number of multicast group members
+ reachable via each OutInterface_list entry.
+
+4.8. Compatibility
+
+ All nodes sending messages with the Refresh-Reduction-Capable bit set
+ will support the MESSAGE_ID Extension. There are no backward
+ compatibility issues raised by the MESSAGE_ID Class with nodes that
+ do not set the Refresh-Reduction-Capable bit. The MESSAGE_ID Class
+ has an assigned value whose form is 0bbbbbbb. Per RSVP [RFC2205],
+ classes with values of this form must be rejected with an "Unknown
+ Object Class" error by nodes not supporting the class. When the
+ receiver of a MESSAGE_ID object does not support the class, a
+ corresponding error message will be generated. The generator of the
+ MESSAGE_ID object will see the error and then MUST re-send the
+ original message without the MESSAGE_ID object. In this case, the
+ message generator MAY still choose to retransmit messages at the
+ "rapid" retransmission interval. Lastly, since the MESSAGE_ID_ACK
+ class can only be issued in response to the MESSAGE_ID object, there
+ are no possible issues with this class or Ack messages. A node MAY
+ support the MESSAGE_ID Extension without supporting the other refresh
+ overhead reduction extensions.
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 16]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+5. Summary Refresh Extension
+
+ The summary refresh extension enables the refreshing of RSVP state
+ without the transmission of standard Path or Resv messages. The
+ benefits of the described extension are that it reduces the amount of
+ information that must be transmitted and processed in order to
+ maintain RSVP state synchronization. Importantly, the described
+ extension preserves RSVP's ability to handle non-RSVP next hops and
+ to adjust to changes in routing. This extension cannot be used with
+ Path or Resv messages that contain any change from previously
+ transmitted messages, i.e., are trigger messages.
+
+ The summary refresh extension builds on the previously defined
+ MESSAGE_ID extension. Only state that was previously advertised in
+ Path and Resv messages containing MESSAGE_ID objects can be refreshed
+ via the summary refresh extension.
+
+ The summary refresh extension uses the objects and the ACK message
+ previously defined as part of the MESSAGE_ID extension, and a new
+ Srefresh message. The new message carries a list of
+ Message_Identifier fields corresponding to the Path and Resv trigger
+ messages that established the state. The Message_Identifier fields
+ are carried in one of three Srefresh related objects. The three
+ objects are the MESSAGE_ID LIST object, the MESSAGE_ID SRC_LIST
+ object, and the MESSAGE_ID MCAST_LIST object.
+
+ The MESSAGE_ID LIST object is used to refresh all Resv state, and
+ Path state of unicast sessions. It is made up of a list of
+ Message_Identifier fields that were originally advertised in
+ MESSAGE_ID objects. The other two objects are used to refresh Path
+ state of multicast sessions. A node receiving a summary refresh for
+ multicast path state will at times need source and group information.
+ These two objects provide this information. The objects differ in
+ the information they contain and how they are sent. Both carry
+ Message_Identifier fields and corresponding source IP addresses. The
+ MESSAGE_ID SRC_LIST is sent in messages addressed to the session's
+ multicast IP address. The MESSAGE_ID MCAST_LIST object adds the
+ group address and is sent in messages addressed to the RSVP next hop.
+ The MESSAGE_ID MCAST_LIST is normally used on point-to-point links.
+
+ An RSVP node receiving an Srefresh message, matches each listed
+ Message_Identifier field with installed Path or Resv state. All
+ matching state is updated as if a normal RSVP refresh message has
+ been received. If matching state cannot be found, then the Srefresh
+ message sender is notified via a refresh NACK.
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 17]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ A refresh NACK is sent via the MESSAGE_ID_NACK object. As described
+ in the previous section, the rules for sending a MESSAGE_ID_NACK
+ object are the same as for sending a MESSAGE_ID_ACK object. This
+ includes sending MESSAGE_ID_NACK object both piggy-backed in
+ unrelated RSVP messages or in RSVP ACK messages.
+
+5.1. MESSAGE_ID LIST, SRC_LIST and MCAST_LIST Objects
+
+ MESSAGE_ID LIST object
+
+ MESSAGE_ID_LIST Class = 25
+
+ Class = MESSAGE_ID_LIST Class, C_Type = 1
+
+ 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Flags | Epoch |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Message_Identifier |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | : |
+ // : //
+ | : |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Message_Identifier |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ Flags: 8 bits
+
+ No flags are currently defined. This field MUST be zero on
+ transmission and ignored on receipt.
+
+ Epoch: 24 bits
+
+ The Epoch field from the MESSAGE_ID object corresponding to the
+ trigger message that advertised the state being refreshed.
+
+ Message_Identifier: 32 bits
+
+ The Message_Identifier field from the MESSAGE_ID object
+ corresponding to the trigger message that advertised the state
+ being refreshed. One or more Message_Identifiers may be
+ included.
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 18]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ IPv4/MESSAGE_ID SRC_LIST object
+
+ Class = MESSAGE_ID_LIST Class, C_Type = 2
+
+ 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Flags | Epoch |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Source_ |
+ | Message_Identifier_Tuple |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | : |
+ // : //
+ | : |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Source_ |
+ | Message_Identifier_Tuple |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ Where a Source_Message_Identifier_Tuple consists of:
+
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Message_Identifier |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Source_IP_Address (4 bytes) |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 19]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ IPv6/MESSAGE_ID SRC_LIST object
+
+ Class = MESSAGE_ID_LIST Class, C_Type = 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Flags | Epoch |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | |
+ | IPv6_Source_ |
+ | Message_Identifier_Tuple |
+ | |
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | : |
+ // : //
+ | : |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | |
+ | IPv6_Source_ |
+ | Message_Identifier_Tuple |
+ | |
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ Where a IPv6 Source_Message_Identifier_Tuple consists of:
+
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Message_Identifier |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | |
+ | IPv6 Source_IP_Address |
+ | (16 Bytes) |
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ Flags: 8 bits
+
+ No flags are currently defined. This field MUST be zero on
+ transmission and ignored on receipt.
+
+ Epoch: 24 bits
+
+ The Epoch field from the MESSAGE_ID object corresponding to the
+ trigger message that advertised the state being refreshed.
+
+
+
+
+
+Berger, et al. Standards Track [Page 20]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ Message_Identifier
+
+ The Message_Identifier field from the MESSAGE_ID object
+ corresponding to the trigger message that advertised the Path
+ state being refreshed. One or more Message_Identifiers may be
+ included. Each Message_Identifier MUST be followed by the
+ source IP address corresponding to the sender described in the
+ Path state being refreshed.
+
+ Source_IP_Address
+
+ The IP address corresponding to the sender of the Path state
+ being refreshed.
+
+ IPv4/MESSAGE_ID MCAST_LIST object
+
+ Class = MESSAGE_ID_LIST Class, C_Type = 4
+
+ 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Flags | Epoch |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Multicast_ |
+ | Message_Identifier_ |
+ | Tuple |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | : |
+ // : //
+ | : |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Multicast_ |
+ | Message_Identifier_ |
+ | Tuple |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ Where a Multicast_Message_Identifier_Tuple consists of:
+
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Message_Identifier |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Source_IP_Address (4 bytes) |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Destination_IP_Address (4 bytes) |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 21]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ IPv6/MESSAGE_ID MCAST_LIST object
+
+ Class = MESSAGE_ID_LIST Class, C_Type = 5
+
+ 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
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Flags | Epoch |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | |
+ | |
+ | |
+ | IPv6 Multicast_ |
+ | Message_Identifier_ |
+ | Tuple |
+ | |
+ | |
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | : |
+ // : //
+ | : |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | |
+ | |
+ | |
+ | IPv6 Multicast_ |
+ | Message_Identifier_ |
+ | Tuple |
+ | |
+ | |
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 22]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ Where a IPv6 Multicast_Message_Identifier_Tuple consists of:
+
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | Message_Identifier |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | |
+ | IPv6 Source_IP_Address |
+ | (16 Bytes) |
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ | |
+ | IPv6 Destination_IP_Address |
+ | (16 Bytes) |
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+ Flags: 8 bits
+
+ No flags are currently defined. This field MUST be zero on
+ transmission and ignored on receipt.
+
+ Epoch: 24 bits
+
+ The Epoch field from the MESSAGE_ID object corresponding to the
+ trigger message that advertised the state being refreshed.
+
+ Message_Identifier: 32 bits
+
+ The Message_Identifier field from the MESSAGE_ID object
+ corresponding to the trigger message that advertised the Path
+ state being refreshed. One or more Message_Identifiers may be
+ included. Each Message_Identifier MUST be followed by the
+ source IP address corresponding to the sender of the Path state
+ being refreshed, and the destination IP address of the session.
+
+ Source_IP_Address
+
+ The IP address corresponding to the sender of the Path state
+ being refreshed.
+
+ Destination_IP_Address
+
+ The destination IP address corresponding to the session of the
+ Path state being refreshed.
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 23]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+5.2. Srefresh Message Format
+
+ Srefresh messages carry one or more MESSAGE_ID LIST, MESSAGE_ID
+ SRC_LIST, and MESSAGE_ID MCAST_LIST objects. MESSAGE_ID LIST and
+ MESSAGE_ID MCAST_LIST objects MAY be carried in the same Srefresh
+ message. MESSAGE_ID SRC_LIST can not be combined in Srefresh
+ messages with the other objects. A single Srefresh message MAY
+ refresh both Path and Resv state.
+
+ Srefresh messages carrying Message_Identifier fields corresponding to
+ Path state are normally sent with a destination IP address equal to
+ the address carried in the corresponding SESSION objects. The
+ destination IP address MAY be set to the RSVP next hop when the next
+ hop is known to be RSVP capable and either (a) the session is unicast
+ or (b) the outgoing interface is a point-to-point link. Srefresh
+ messages carrying Message_Identifier fields corresponding to Resv
+ state MUST be sent with a destination IP address set to the Resv
+ state's previous hop.
+
+ Srefresh messages sent to a multicast session's destination IP
+ address, MUST contain MESSAGE_ID SRC_LIST objects and MUST NOT
+ include any MESSAGE_ID LIST or MESSAGE_ID MCAST_LIST objects.
+ Srefresh messages sent to the RSVP next hop MAY contain either or
+ both MESSAGE_ID LIST and MESSAGE_ID MCAST_LIST objects, but MUST NOT
+ include any MESSAGE_ID SRC_LIST objects.
+
+ The source IP address of an Srefresh message is an address of the
+ node that generates the message. The source IP address MUST match
+ the address associate with the MESSAGE_ID objects when they were
+ included in a standard RSVP message. As previously mentioned, the
+ source address associated with a MESSAGE_ID object is represented in
+ a per RSVP message type specific fashion. For messages with RSVP_HOP
+ objects, such as Path and Resv messages, the address is found in the
+ RSVP_HOP object. For other messages, such as ResvConf message, the
+ associated IP address is the source address in the IP header.
+
+ Srefresh messages that are addressed to a session's destination IP
+ address MUST be sent with the Router Alert IP option in their IP
+ headers. Srefresh messages addressed directly to RSVP neighbors
+ SHOULD NOT be sent with the Router Alert IP option in their IP
+ headers.
+
+ Each Srefresh message MUST occupy exactly one IP datagram. If it
+ exceeds the MTU, the datagram is fragmented by IP and reassembled at
+ the recipient node. Srefresh messages MAY be sent within an RSVP
+ Bundle messages. Although this is not expected since Srefresh
+
+
+
+
+
+Berger, et al. Standards Track [Page 24]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ messages can carry a list of Message_Identifier fields within a
+ single object. Implementations may choose to limit each Srefresh
+ message to the MTU size of the outgoing link, e.g., 1500 bytes.
+
+ The Srefresh message format is:
+
+ <Srefresh Message> ::= <Common Header> [ <INTEGRITY> ]
+ [ [<MESSAGE_ID_ACK> | <MESSAGE_ID_NACK>] ... ]
+ [ <MESSAGE_ID> ]
+ <srefresh list> | <source srefresh list>
+
+ <srefresh list> ::= <MESSAGE_ID LIST> | <MESSAGE_ID MCAST_LIST>
+ [ <srefresh list> ]
+
+ <source srefresh list> ::= <MESSAGE_ID SRC_LIST>
+ [ <source srefresh list> ]
+
+ For Srefresh messages, the Msg Type field of the Common Header MUST
+ be set to 15.
+
+5.3. Srefresh Message Usage
+
+ An Srefresh message may be generated to refresh Resv and Path state.
+ If an Srefresh message is used to refresh some particular state, then
+ the generation of a standard refresh message for that particular
+ state SHOULD be suppressed. A state's refresh interval is not
+ affected by the use of Srefresh message based refreshes.
+
+ When generating an Srefresh message, a node SHOULD refresh as much
+ Path and Resv state as is possible by including the information from
+ as many MESSAGE_ID objects in the same Srefresh message. Only the
+ information from MESSAGE_ID objects that meet the source and
+ destination IP address restrictions, as described in Sections 5.2,
+ may be included in the same Srefresh message. Identifying Resv state
+ that can be refreshed using the same Srefresh message is fairly
+ straightforward. Identifying which Path state may be included is a
+ little more complex.
+
+ Only state that was previously advertised in Path and Resv messages
+ containing MESSAGE_ID objects can be refreshed via an Srefresh
+ message. Srefresh message based refreshes must preserve the state
+ synchronization properties of Path or Resv message based refreshes.
+ Specifically, the use of Srefresh messages MUST NOT result in state
+ being timed-out at the RSVP next hop. The period at which state is
+ refreshed when using Srefresh messages MAY be shorter than the period
+ that would be used when using Path or Resv message based refreshes,
+ but it MUST NOT be longer.
+
+
+
+
+Berger, et al. Standards Track [Page 25]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ The particular approach used to trigger Srefresh message based
+ refreshes is implementation specific. Some possibilities are
+ triggering Srefresh message generation based on each state's refresh
+ period or, on a per interface basis, periodically generating Srefresh
+ messages to refresh all state that has not been refreshed within the
+ state's refresh interval. Other approaches are also possible. A
+ default Srefresh message generation interval of 30 seconds is
+ suggested for nodes that do not dynamically calculate a generation
+ interval.
+
+ When generating an Srefresh message, there are two methods for
+ identifying which Path state may be refreshed in a specific message.
+ In both cases, the previously mentioned refresh interval and source
+ IP address restrictions must be followed. The primary method is to
+ include only those sessions that share the same destination IP
+ address in the same Srefresh message.
+
+ The secondary method for identifying which Path state may be
+ refreshed within a single Srefresh message is an optimization. This
+ method MAY be used when the next hop is known to support RSVP and
+ when either (a) the session is unicast or (b) the outgoing interface
+ is a point-to-point link. This method MUST NOT be used when the next
+ hop is not known to support RSVP or when the outgoing interface is to
+ a multi-access network and the session is to a multicast address.
+ The use of this method MAY be administratively configured. When
+ using this method, the destination address in the IP header of the
+ Srefresh message is usually the next hop's address. When the use of
+ this method is administratively configured, the destination address
+ should be the well known group address 224.0.0.14. When the outgoing
+ interface is a point-to-point link, all Path state associated with
+ sessions advertised out the interface SHOULD be included in the same
+ Srefresh message. When the outgoing interface is not a point-to-
+ point link, all unicast session Path state SHOULD be included in the
+ same Srefresh message.
+
+ Identifying which Resv state may be refreshed within a single
+ Srefresh message is based simply on the source and destination IP
+ addresses. Any state that was previously advertised in Resv messages
+ with the same IP addresses as an Srefresh message MAY be included.
+
+ After identifying the Path and Resv state that can be included in a
+ particular Srefresh message, the message generator adds to the
+ message MESSAGE_ID information matching each identified state's
+ previously used object. For all Resv state and for Path state of
+ unicast sessions, the information is added to the message in a
+ MESSAGE_ID LIST object that has a matching Epoch value. (Note only
+ one Epoch value will be in use during normal operation.) If no
+ matching object exists, then a new MESSAGE_ID LIST object is created.
+
+
+
+Berger, et al. Standards Track [Page 26]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ Path state of multicast sessions may be added to the same message
+ when the destination address of the Srefresh message is the RSVP next
+ hop and the outgoing interface is a point-to-point link. In this
+ case the information is added to the message in a MESSAGE_ID
+ MCAST_LIST object that has a matching Epoch value. If no matching
+ object exists, then a new MESSAGE_ID MCAST_LIST object is created.
+ When the destination address of the message is a multicast address,
+ then identified information is added to the message in a MESSAGE_ID
+ SRC_LIST object that has a matching Epoch value. If no matching
+ object exists, then a new MESSAGE_ID SRC_LIST object is created.
+ Once the Srefresh message is composed, the message generator
+ transmits the message out the proper interface.
+
+ Upon receiving an Srefresh message, the node MUST attempt to identify
+ matching installed Path or Resv state. Matching is done based on the
+ source address in the IP header of the Srefresh message, the object
+ type and each Message_Identifier field. If matching state can be
+ found, then the receiving node MUST update the matching state
+ information as if a standard refresh message had been received. If
+ matching state cannot be identified, then an Srefresh NACK MUST be
+ generated corresponding to the unmatched Message_Identifier field.
+ Message_Identifier fields received in MESSAGE_ID LIST objects may
+ correspond to any Resv state or to Path state of unicast sessions.
+ Message_Identifier fields received in MESSAGE_ID SRC_LIST or
+ MCAST_LIST objects correspond to Path state of multicast sessions.
+
+ An additional check must be performed to determine if a NACK should
+ be generated for unmatched Message_Identifier fields associated with
+ Path state of multicast sessions, i.e., fields that were carried in
+ MESSAGE_ID SRC_LIST or MCAST_LIST objects. The receiving node must
+ check to see if the node would forward data packets originated from
+ the source corresponding to the unmatched field. This check,
+ commonly known as an RPF check, is performed based on the source and
+ group information carried in the MESSAGE_ID SRC_LIST and MCAST_LIST
+ objects. In both objects the IP address of the source is listed
+ immediately after the corresponding Message_Identifier field. The
+ group address is listed immediately after the source IP address in
+ MESSAGE_ID MCAST_LIST objects. The group address is the message's
+ destination IP address when MESSAGE_ID SRC_LIST objects are used.
+ The receiving node only generates an Srefresh NACK when the node
+ would forward packets to the identified group from the listed sender.
+ If the node would forward multicast data packets from a listed sender
+ and there is a corresponding unmatched Message_Identifier field, then
+ an appropriate Srefresh NACK MUST be generated. If the node would
+ not forward packets to the identified group from a listed sender, a
+ corresponding unmatched Message_Identifier field is silently ignored.
+
+
+
+
+
+Berger, et al. Standards Track [Page 27]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+5.4. Srefresh NACK
+
+ Srefresh NACKs are used to indicate that a received
+ Message_Identifier field carried in MESSAGE_ID LIST, SRC_LIST, or
+ MCAST_LIST object does not match any installed state. This may occur
+ for a number of reasons including, for example, a route change. An
+ Srefresh NACK is encoded in a MESSAGE_ID_NACK object. When
+ generating an Srefresh NACK, the epoch and Message_Identifier fields
+ of the MESSAGE_ID_NACK object MUST have the same value as was
+ received. MESSAGE_ID_NACK objects are transmitted as described in
+ Section 4.6.
+
+ Received MESSAGE_ID_NACK objects indicate that the object generator
+ does not have any installed state matching the object. Upon
+ receiving a MESSAGE_ID_NACK object, the receiver performs an
+ installed Path or Resv state lookup based on the Epoch and
+ Message_Identifier values contained in the object. If matching state
+ is found, then the receiver MUST transmit the matching state via a
+ standard Path or Resv message. If the receiver cannot identify any
+ installed state, then no action is required.
+
+5.5. Preserving RSVP Soft State
+
+ As discussed in [RFC2205], RSVP uses soft state to address a large
+ class of potential errors. RSVP does this by periodically sending a
+ full representation of installed state in Resv and Path messages.
+ Srefresh messages are used in place of the periodic sending of
+ standard Path and Resv refresh messages. While this provides scaling
+ benefits and protects against common network events such as packet
+ loss or routing change, it does not provide exactly the same error
+ recovery properties. An example error that could potentially be
+ recovered from via standard messages but not with Srefresh messages
+ is internal corruption of state. This section recommends two methods
+ that can be used to better preserve RSVP's soft state error recovery
+ mechanism. Both mechanisms are supported using existing protocol
+ messages.
+
+ The first mechanism uses a checksum or other algorithm to detect a
+ previously unnoticed change in internal state. This mechanism does
+ not protect against internal state corruption. It just covers the
+ case where a trigger message should have been sent, but was not.
+ When sending a Path or Resv trigger message, a node should run a
+ checksum or other algorithm, such as [MD5], over the internal state
+ and store the result. The choice of algorithm is an administrative
+ decision. Periodically the node should rerun the algorithm and
+ compare the new result with the stored result. If the values differ,
+ then a corresponding standard Path or Resv refresh message should be
+
+
+
+
+Berger, et al. Standards Track [Page 28]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ sent and the new value should be stored. The recomputation period
+ should be set based on the computation resources of the node and the
+ reliability requirements of the network.
+
+ The second mechanism is simply to periodically send standard Path and
+ Resv refresh messages. Since this mechanism uses standard refresh
+ messages, it can recover from the same set of errors as standard
+ RSVP. When using this mechanism, the period that standard refresh
+ messages are sent must be longer than the interval that Srefresh
+ messages are generated in order to gain the benefits of using the
+ summary refresh extension. When a standard refresh message is sent,
+ a corresponding summary refresh SHOULD NOT be sent during the same
+ refresh period. When a node supports the periodic generation of
+ standard refresh messages while Srefreshes are being used, the
+ frequency of generation of standard refresh messages relative to the
+ generation of summary refreshes SHOULD be configurable by the network
+ administrator.
+
+5.6. Compatibility
+
+ Nodes supporting the summary refresh extension advertise their
+ support via the Refresh-Reduction-Capable bit in the RSVP message
+ header. This enables nodes supporting the extension to detect each
+ other. When it is not known if a next hop supports the extension,
+ standard Path and Resv message based refreshes MUST be used. Note
+ that when the routing next hop does not support RSVP, it will not
+ always be possible to detect if the RSVP next hop supports the
+ summary refresh extension. Therefore, when the routing next hop is
+ not RSVP capable the Srefresh message based refresh SHOULD NOT be
+ used. A node MAY be administratively configured to use Srefresh
+ messages in all cases when all RSVP nodes in a network are known to
+ support the summary refresh extension. This is useful since when
+ operating in this mode, the extension properly adjusts to the case of
+ non-RSVP next hops and changes in routing.
+
+ Per section 2, nodes supporting the summary refresh extension must
+ also take care to recognize when a next hop stops sending RSVP
+ messages with the Refresh-Reduction-Capable bit set.
+
+6. Exponential Back-Off Procedures
+
+ This section is based on [Pan] and provides procedures to implement
+ exponential back-off for retransmission of messages awaiting
+ acknowledgment, see Section 4.5. Implementations MUST use the
+ described procedures or their equivalent.
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 29]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+6.1. Outline of Operation
+
+ The following is one possible mechanism for exponential back-off
+ retransmission of an unacknowledged RSVP message: When sending such a
+ message, a node inserts a MESSAGE_ID object with the ACK_Desired flag
+ set. The sending node will retransmit the message until a message
+ acknowledgment is received or the message has been transmitted a
+ maximum number of times. Upon reception, a receiving node
+ acknowledges the arrival of the message by sending back a message
+ acknowledgment (that is, a corresponding MESSAGE_ID_ACK object.)
+ When the sending node receives the acknowledgment retransmission of
+ the message is stopped. The interval between retransmissions is
+ governed by a rapid retransmission timer. The rapid retransmission
+ timer starts at a small interval and increases exponentially until it
+ reaches a threshold.
+
+6.2. Time Parameters
+
+ The described procedures make use of the following time parameters.
+ All parameters are per interface.
+
+ Rapid retransmission interval Rf:
+
+ Rf is the initial retransmission interval for unacknowledged
+ messages. After sending the message for the first time, the
+ sending node will schedule a retransmission after Rf seconds.
+ The value of Rf could be as small as the round trip time
+ (RTT) between a sending and a receiving node, if known.
+
+ Rapid retry limit Rl:
+
+ Rl is the maximum number of times a message will be
+ transmitted without being acknowledged.
+
+ Increment value Delta:
+
+ Delta governs the speed with which the sender increases the
+ retransmission interval. The ratio of two successive
+ retransmission intervals is (1 + Delta).
+
+ Suggested default values are an initial retransmission timeout (Rf)
+ of 500ms, a power of 2 exponential back-off (Delta = 1) and a retry
+ limit (Rl) of 3.
+
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 30]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+6.3. Retransmission Algorithm
+
+ After a sending node transmits a message containing a MESSAGE_ID
+ object with the ACK_Desired flag set, it should immediately schedule
+ a retransmission after Rf seconds. If a corresponding MESSAGE_ID_ACK
+ object is received earlier than Rf seconds, then retransmission
+ SHOULD be canceled. Otherwise, it will retransmit the message after
+ (1 + Delta)*Rf seconds. The staged retransmission will continue
+ until either an appropriate MESSAGE_ID_ACK object is received, or the
+ rapid retry limit, Rl, has been reached.
+
+ A sending node can use the following algorithm when transmitting a
+ message containing a MESSAGE_ID object with the ACK_Desired flag set:
+
+ Prior to initial transmission initialize: Rk = Rf and Rn = 0
+
+ while (Rn++ < Rl) {
+ transmit the message;
+ wake up after Rk seconds;
+ Rk = Rk * (1 + Delta);
+ }
+ /* acknowledged or no reply from receiver for too long: */ do any
+ needed clean up; exit;
+
+ Asynchronously, when a sending node receives a corresponding
+ MESSAGE_ID_ACK object, it will change the retry count, Rn, to Rl.
+
+ Note that the transmitting node does not advertise the use of the
+ described exponential back-off procedures via the TIME_VALUE object.
+
+6.4. Performance Considerations
+
+ The use of exponential back-off retransmission is a new and
+ significant addition to RSVP. It will be important to review related
+ operations and performance experience before this document advances
+ to Draft Standard. It will be particularly important to review
+ experience with multicast, and any ACK implosion problems actually
+ encountered.
+
+7. Acknowledgments
+
+ This document represents ideas and comments from the MPLS-TE design
+ team and participants in the RSVP Working Group's interim meeting.
+ Thanks to Bob Braden, Lixia Zhang, Fred Baker, Adrian Farrel, Roch
+ Guerin, Kireeti Kompella, David Mankins, Henning Schulzrinne, Andreas
+ Terzis, Lan Wang and Masanobu Yuhara for specific feedback on the
+ various versions of the document.
+
+
+
+
+Berger, et al. Standards Track [Page 31]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+ Portions of this work are based on work done by Masanobu Yuhara and
+ Mayumi Tomikawa [Yuhara].
+
+8. Security Considerations
+
+ No new security issues are raised in this document. See [RFC2205]
+ for a general discussion on RSVP security issues.
+
+9. References
+
+ [Pan] Pan, P., Schulzrinne, H., "Staged Refresh Timers for RSVP,"
+ Global Internet'97, Phoenix, AZ, November 1997.
+ http://www.cs.columbia.edu/~pingpan/papers/timergi.pdf
+
+ [MD5] Rivest, R., "The MD5 Message-Digest Algorithm", RFC 1321,
+ April 1992.
+
+ [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
+ Requirement Levels", BCP 14, RFC 2119, March 1997.
+
+ [RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S. and S.
+ Jamin , "Resource ReserVation Protocol -- Version 1
+ Functional Specification", RFC 2205, September 1997.
+
+ [Yuhara] Yuhara, M., and M Tomikawa, "RSVP Extensions for ID-based
+ Refreshes", Work in Progress.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 32]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+10. Authors' Addresses
+
+ Lou Berger
+ LabN Consulting, LLC
+
+ Phone: +1 301 468 9228
+ EMail: lberger@labn.net
+
+
+ Der-Hwa Gan
+ Juniper Networks, Inc.
+ 1194 N. Mathilda Avenue,
+ Sunnyvale, CA 94089
+
+ Voice: +1 408 745 2074
+ Email: dhg@juniper.net
+
+
+ George Swallow
+ Cisco Systems, Inc.
+ 250 Apollo Drive
+ Chelmsford, MA 01824
+
+ Phone: +1 978 244 8143
+ EMail: swallow@cisco.com
+
+
+ Ping Pan
+ Juniper Networks, Inc.
+ 1194 N. Mathilda Avenue,
+ Sunnyvale, CA 94089
+
+ Voice: +1 408 745 3704
+ Email: pingpan@juniper.net
+
+
+ Franco Tommasi
+ University of Lecce, Fac. Ingegneria
+ Via Monteroni 73100 Lecce, ITALY
+
+ EMail: franco.tommasi@unile.it
+
+
+ Simone Molendini
+ University of Lecce, Fac. Ingegneria
+ Via Monteroni 73100 Lecce, ITALY
+
+ EMail: molendini@ultra5.unile.it
+
+
+
+Berger, et al. Standards Track [Page 33]
+
+RFC 2961 RSVP Refresh Overhead Reduction Extensions April 2001
+
+
+11. Full Copyright Statement
+
+ Copyright (C) The Internet Society (2001). All Rights Reserved.
+
+ This document and translations of it may be copied and furnished to
+ others, and derivative works that comment on or otherwise explain it
+ or assist in its implementation may be prepared, copied, published
+ and distributed, in whole or in part, without restriction of any
+ kind, provided that the above copyright notice and this paragraph are
+ included on all such copies and derivative works. However, this
+ document itself may not be modified in any way, such as by removing
+ the copyright notice or references to the Internet Society or other
+ Internet organizations, except as needed for the purpose of
+ developing Internet standards in which case the procedures for
+ copyrights defined in the Internet Standards process must be
+ followed, or as required to translate it into languages other than
+ English.
+
+ The limited permissions granted above are perpetual and will not be
+ revoked by the Internet Society or its successors or assigns.
+
+ This document and the information contained herein is provided on an
+ "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
+ TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
+ HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
+ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+
+Acknowledgement
+
+ Funding for the RFC Editor function is currently provided by the
+ Internet Society.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Berger, et al. Standards Track [Page 34]
+