[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ANCP] ANCP Graceful Restart
Please find attached an initial version of a draft on ANCP graceful restart that we intend to submit to the IETF repository. We would like to solicit your feedback/comments.
Thanks
-Sanjay & Derek
<<draft-wadhwa-ancp-graceful-restart-00.txt>>
Working Group Name Sanjay Wadhwa
Internet Draft Juniper Networks
Expires: January 04, 2007
Derek Harkness
Juniper Networks
July 04, 2006
Control Plane Graceful Restart extensions for ANCP
draft-wadhwa-ancp-graceful-restart-00.txt
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts. Internet-Drafts are draft documents valid for a maximum of
six months and may be updated, replaced, or obsoleted by other
documents at any time. It is inappropriate to use Internet-Drafts as
reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on January 04, 2006.
Copyright Notice
Copyright (C) The Internet Society (2006). All Rights Reserved.
Abstract
This document describes proposed extensions to ANCP (Access Node
Control Protocol) for supporting a graceful state resynchronization
Wadhwa et.al Expires January 7, 2007 [Page 1]
Internet-Draft draft-wadhwa-ancp-graceful-restart-00 July 2006
between NAS (network access server) and AN (access node) upon control
plane restart. Base ANCP as a dedicated control protocol between a
NAS and an AN, and its various use cases are defined in [1].
Conventions used in this document
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 RFC-2119 [1].
Table of Contents
Table of Contents 2
1 Specification Requirements 3
2 Introduction 3
3 Graceful Restart Mechanism 4
4 Graceful Restart Procedures 5
4.1 Restarting Element.......................................5
4.2 ANCP Neighbor of Restarting Element......................6
5 IANA Considerations 8
6 Security Considerations 8
7 References 8
Author's Addresses 9
Intellectual Property Statement 9
Disclaimer of Validity 9
Copyright Statement 10
Acknowledgment
10
Wadhwa et.al Expires January 4, 2007 [Page 2]
Internet-Draft draft-wadhwa-ancp-graceful-restart-00 July 2006
1 Specification Requirements
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 RFC 2119.
2 Introduction
Typically ANCP protocol is run on the control plane on the NAS
(network access server) and AN (access-node). ANCP provides for
various use-cases as defined in [1]. The AN can dynamically inform
the NAS of the upstream and downstream rates and other attributes of
the DSL lines. The NAS uses some of these attributes to control the
forwarding behavior of the subscriber's traffic. As an example the
NAS uses the learnt downstream DSL train rate of a DSL line to shape
the traffic that would traverse the DSL line, by adjusting its
hierarchical QOS scheduler. Another example is to use the dynamically
Wadhwa et.al Expires January 4, 2007 [Page 3]
Internet-Draft draft-wadhwa-ancp-graceful-restart-00 July 2006
learnt data-link type and protocol encapsulation overhead on the
access-loop in shaping the subscriber's traffic appropriately.
Another use case is that the NAS controls line parameters in the
Access Node.
Typically ANCP protocol is run on the control plane on the NAS and
AN. In most of current NAS platforms, forwarding plane is decoupled
from the control plane. In such systems, the forwarding plane can
continue to operate even if the control plane resets. It is possible
for ANCP protocol to restart either due to a planned control plane
reset on the NAS or due to a control plane reset caused by a software
or hardware failure on the NAS. In this case the ANCP adjacency is
lost but not all data provided by the AN to the NAS may be lost.
Furthermore the subscriber sessions are still active independent of
the ANCP adjacency state.
Internal AN errors may cause the ANCP adjacency to be lost without a
hard reset of the AN and associated loss of line state in the AN
control plane. This may be due to a similar control and data plane
separation in the AN, or e.g. due to failure of an AN uplink.
Furthermore, a failure or packet loss on any intermediate node or
network between the AN and the NAS can cause the ANCP adjacency to be
lost.
All of the above will cause the ANCP adjacency to be reset. However,
the parameters learnt via ANCP prior to restart and applied to
control the forwarding behavior are still applicable and in play
during and after the control plane restart.
This draft proposes extensions to ANCP to implement a graceful state
resynchronization between the NAS and the AN upon control plane
restart. This mechanism ensures that the control plane restart and
subsequent state resynchronization have no impact on the forwarding
and QOS control on the NAS.
The default behavior on a loss of ANCP adjacency without graceful
restart extensions is to cleanup any dynamic information learnt from
the ANCP neighbor, and revert to default values for any such
information.
3 Graceful Restart Mechanism
When the control plane on either the NAS or AN restarts, the state
information between the NAS and AN needs to re-synchronized. This
includes potentially updating existing state on the restarting entity
to the latest information as known to the ANCP neighbor originating
Wadhwa et.al Expires January 4, 2007 [Page 4]
Internet-Draft draft-wadhwa-ancp-graceful-restart-00 July 2006
this information. Any state information on the restarting entity
learnt from its ANCP neighbor prior to restart that is no longer
applicable after the restart needs to be garbage-collected. Resources
associated with such state needs to be reclaimed.
The ANCP neighbor supporting graceful restart SHOULD maintain and use
state learnt from the restarting neighbor till the restart is
complete and the state has been resynchronized. However, the duration
for which this state SHOULD be maintained on the ANCP neighbor after
the ANCP adjacency between the restarting entity and the ANCP
neighbor is lost is controlled by the restarting neighbor. The
restarting neighbor SHOULD advertise the duration in seconds in its
graceful restart capability announcement. This duration is referred
to as "restarting time" and signifies the amount of time an ANCP
neighbor should wait for session re-establishment and state re-
synchronization with the restarting entity after the ANCP adjacency
has timed out. The restarting time advertised by the restarting
entity SHOULD be configurable.
4 Graceful Restart Procedures
4.1 Restarting Element
Typically, ANCP restarting element supporting control plane graceful
restart will use the state learnt from its ANCP neighbor in the
forwarding plane during and after the restart. Immediately after
restart the restarting element SHOULD mark all the state learnt prior
to its restart from its ANCP neighbor as "stale". On re-establishing
ANCP adjacency with each of its ANCP neighbors (e.g. single NAS can
have multiple ANCP adjacencies as it can serve multiple partitions on
an AN or multiple physical ANs), the restarting element will relearn
state from its neighbors. The restarting element SHOULD update the
learnt state and SHOULD unmark the state as being stale. Each ANCP
neighbor SHOULD generate an "END-OF-STATE" adjacency message as soon
as all existing information on the ANCP neighbor has been replayed to
the restarting entity. When the restarting entity has received "END-
OF-STATE" from an ANCP neighbor, it should remove any stale state
that is relevant to that neighbor, from both its control and
forwarding planes, and SHOULD reclaim the associated resources. The
restarting element SHOULD keep track of its established adjacencies
in non-volatile storage prior to restart. It SHOULD also note the
graceful restart capability of each established adjacency. The
restart is deemed complete when the restarting element has received
and handled ?END-OF-STATE? from each of these adjacencies.
Wadhwa et.al Expires January 4, 2007 [Page 5]
Internet-Draft draft-wadhwa-ancp-graceful-restart-00 July 2006
The restarting element SHOULD wait for session re-establishment and
state re-synchronization from these adjacencies up to a maximum
duration. This duration is referred to as "wait time". An absolute
value for wait time in seconds SHOULD be configurable on the
restarting element. At the expiry of ?wait time?, the restarting
element SHOULD remove all state that is still marked stale. Also, at
the expiry of ?wait time?, graceful restart for any partially
synchronized adjacencies SHOULD be aborted. All the state for
partially synchronized adjacencies SHOULD be removed, and these
adjacencies SHOULD be reinitialized.
All ANCP elements capable of restarting gracefully SHOULD advertise
"Graceful Restart" capability TLV in its adjacency messages. The
capability SHOULD also contain a suggested value for the "restart
time". General format for a capability TLV and general handling of
ANCP capability TLVs is defined in [1]. The "Graceful Restart"
capability is defined as follows.
Capability Type: Graceful Restart = 0x05
Length (in bytes): 4
Capability Data: Restart Time (in seconds)
4.2 ANCP Neighbor of Restarting Element
An ANCP element capable of supporting graceful restart of a
restarting element SHOULD maintain and use information learnt from an
ANCP neighbor that has advertised "Graceful Restart Capability", even
after the ANCP adjacency with the neighbor has been lost. The
information SHOULD be used and maintained beyond adjacency loss, only
up to the "restart time" advertised in the "Graceful Restart"
capability TLV. On expiry of this time, any state learnt from the
ANCP neighbor SHOULD be removed. This SHOULD result in reverting to
default values any state created as a result of information announced
by the ANCP neighbor.
An ANCP element capable of supporting graceful restart of a
restarting element SHOULD generate an adjacency message with code
type "END-OF-STATE" after all relevant existing information has been
replayed to the restarting element. The code field in the adjacency
message as defined in section 5.3 of [1] is being expanded to include
END-OF-STATE (5) as a new type. The adjacency message format as
defined in [1] is as follows.
Wadhwa et.al Expires January 4, 2007 [Page 6]
Internet-Draft draft-wadhwa-ancp-graceful-restart-00 July 2006
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Ver | Sub | Message Type | Timer |M| Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sender Name |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| Receiver Name |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sender Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Receiver Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PType | PFlag | Sender Instance |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Partition ID | Receiver Instance |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tech Type | # of TLVs | Total Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Capability TLVs ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The code field specifies the function of the message. With the
expansion of the codes, the set of codes that can be sent in
adjacency messages are as follows:
SYN: Code = 1
SYNACK: Code = 2
Wadhwa et.al Expires January 4, 2007 [Page 7]
Internet-Draft draft-wadhwa-ancp-graceful-restart-00 July 2006
ACK: Code = 3
RSTACK: Code = 4
END-OF-STATE: Code = 5
The ?END-OF-STATE? notification is also useful if the ANCP neighbor
wants to perform a non-disruptive, forced state resynchronization
operation without bringing down the ANCP adjacency.
An ANCP element capable of supporting graceful restart of a
restarting neighbor SHOULD advertise "Graceful Restart Helper"
capability TLV in its adjacency messages. This capability TLV is
defined as follows:
Capability Type : Graceful Restart Helper = 0x06
Length (in bytes) : 0
Capability Data : NULL
An ANCP element can be a ?graceful restart helper? without itself
being graceful restart capable and vice-versa. The normal ANCP
adjacency negotiation mechanism which results in negotiation of least
common capability set is relaxed for graceful restart, since the
graceful restart procedures can handle asymmetric graceful restart
capabilities.
5 IANA Considerations
New capability types, and code type for adjacency message will need
to be reserved.
6 Security Considerations
These extensions for graceful restart do not require any additional
security considerations beyond general security considerations for
ANCP as specified in [1].
7 References
[1] Wadhwa S. et al, ?GSMP extensions for L2C?, draft-wadhwa-gsmp-
2control-configuration-01.txt, March, 2006.
Wadhwa et.al Expires January 4, 2007 [Page 8]
Internet-Draft draft-wadhwa-ancp-graceful-restart-00 July 2006
Author's Addresses
Sanjay Wadhwa
Juniper Networks
10 Technology Park Drive
Westford, MA 01886
Email: swadhwa at juniper.net
Derek Harkness
Juniper Networks
Email: dharkness at juniper.net
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr at ietf.org
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
Wadhwa et.al Expires January 4, 2007 [Page 9]
Internet-Draft draft-wadhwa-ancp-graceful-restart-00 July 2006
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.
Copyright Statement
Copyright (C) The Internet Society (2006).
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
Acknowledgment
Wadhwa et.al Expires January 4, 2007 [Page 10]
_______________________________________________
ANCP mailing list
ANCP at ietf.org
https://www1.ietf.org/mailman/listinfo/ancp