Internet DRAFT - draft-kim-ccamp-accp-protocol
draft-kim-ccamp-accp-protocol
CCAMP Working Group Young Hwa Kim
Internet-Draft ETRI
Expires: April 14, 2006
October 15, 2005
Automatic Control Channel Protection Protocol for Resilience of
Control Channels
<draft-kim-ccamp-accp-protocol-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 April 14, 2006.
Copyright Notice
Copyright (C) The Internet Society (2005).
Abstract
The configuration of control channels with a higher reliability would
be an important factor for the more stable provision of communication
environment in non-(G)MPLS and (G)MPLS networks. This document
specifies an automatic control channel protection (ACCP) protocol
that runs between a pair of nodes and is used to support the
resilience capability of control channels. The ACCP protocol is based
on the concept of common channel signaling in ITU-T and the current
Kim Expires April 14, 2006 [Page 1]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
control channel management function of LMP in IETF. This ACCP
protocol provides functions such as identification of direct and
indirect control channels, automatic and forced switchover of those
channels, and so on for the resilience of control channels.
Table of Contents
1. Introduction...................................................3
2. Terminology....................................................3
3. Overview of ACCP Protocol......................................4
4. Functions of ACCP Protocol.....................................5
4.1 Identification of PG-1 and PG-3 Control Channels..........5
4.2 Identification of Detour Control Channels.................6
4.3 Automatic Switchover......................................7
4.4 Forced Switchover.........................................8
4.5 Recovery from Failure.....................................8
4.6 Notification of Control Channel Unavailability............8
4.7 Inquiry of Switchover Attributes..........................9
4.8 Hello Initiation..........................................9
4.9 Notification of Protocol Errors...........................9
5. Finite State Machine of ACCP Protocol..........................9
6. Message Formats of ACCP Protocol..............................12
6.1 Config...................................................13
6.2 ConfigAck................................................13
6.3 ConfigNack...............................................14
6.4 DCConfig.................................................14
6.5 DCConfigAck..............................................14
6.6 DCConfigNack.............................................14
6.7 Hello....................................................15
6.8 Switchover...............................................15
6.9 SwitchoverAck............................................15
6.10 SwitchoverNack...........................................15
6.11 Notify...................................................15
6.12 SAInqry..................................................16
6.13 SAInqryAck...............................................16
6.14 SAInqryNack..............................................16
6.15 ProtError................................................16
7. Object Definitions of ACCP Protocol...........................16
7.1 CCID Class...............................................17
7.2 MESSAGE_ID Class.........................................17
7.3 NODE_ID Class............................................17
7.4 CONFIG Class.............................................18
7.5 HELLO Class..............................................18
7.6 CC_PROPERTY Class........................................18
7.7 SWITCHOVER_TYPE Class....................................19
7.8 SWITCHOVER_ATTR Class....................................19
Kim Expires April 14, 2006 [Page 2]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
7.9 ADDI_INFO_INDICATOR Class................................20
7.10 SEQUENCE_NUMBER Class....................................20
7.11 PROT_ERROR Class.........................................21
7.12 REJECT_CAUSE Class.......................................22
8. Security Considerations.......................................23
9. IANA Considerations...........................................23
10. References...................................................23
10.1 Normative References.....................................23
10.2 Informative References...................................23
Author's Addresses...............................................23
Intellectual Property Statement..................................24
1. Introduction
Control channels are responsible for carrying packets generated from
routing protocols, signaling protocols, LMP, and etc. The
configuration of control channels with a higher reliability would be
an important factor for the more stable provision of communication
environment in non-(G)MPLS and (G)MPLS networks.
As described in [CPR-REQTS], the control channels could be configured
as the dedicated use for the control or as the shared use with data
channels. Those channels could be created via direct and indirect
interfaces between physically adjacent nodes. Then, there might be a
possibility that the creation of control channels between physically
distant nodes could be made via this process.
The current mechanisms for supporting the resilience of control
channels include the MPLS 1+1 protection described in [ITU-G7712] and
an extension of the control channel management in LMP. This document
is a protocol specification, called automatic control channel
protection (ACCP) for the latter. As a part of the effort, the ACCP
protocol has applied the concept of common channel signaling to IP
networks, in which the signaling system has three types of signaling
modes, associated mode, quasi-associated mode, and non-associated
modes described in [ITU-G870].
In the eventual ACCP protocol, the distribution of control packet
types into more than one control channel SHOULD be possible because
of the physical restriction such as different transmission rates. The
switchover function of control channels SHOULD in advance know
control packet types that a control channel carries for this case. In
order to simplify this issue, it is assumed that only one control
channel carries all control packets in the current step.
2. Terminology
Kim Expires April 14, 2006 [Page 3]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
In this document, the key words "MUST", "MUST NOT", "REQUIRED",
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT
RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as
described in BCP 14, RFC 2119 [11] and indicate requirement levels
for compliant implementations.
3. Overview of ACCP Protocol
The ACCP protocol provides functions for supporting the resilience of
control channels as follows:
- Identification of PG-1 and PG-3 control channels;
- Identification of detour control channels;
- Automatic switchover;
- Recovery from failure;
- Notification of control channel unavailability;
- Inquiry of switchover attributes;
- Hello initiation; and
- Notification of protocol errors.
General rules applied in the ACCP protocol for supporting the
resilience of control channels are as follows:
1) In order to support the protection and switchover capability,
two or more control channels SHOULD be configured over direct or
indirect interfaces between adjacent nodes;
2) A system SHOULD designate a transmission media such as fast-
Ethernet, Synchronous Digital Hierarchy - Regenerator Section
(SDH-RS), Synchronous Digital Hierarchy - Multiplex Section
(SDH-MS), Gigabit Ethernet (GbE), and etc into a protection
group among PG-1 and PG-3 to use them as control channels;
3) The protection and switchover attributes about each control
channel managed in the system are include local control channel
identifier, remote control channel identifier, detour control
channel identifier, transmission media, control channel type,
protection group, adjacent node identifier, control channel
status, and etc;
4) The attributes shall be endured as long as there is no new full-
fledged configuration between adjacent nodes.
From the view-point of protocol, the ACCP protocol has several
features for supporting the resilience of control channels as
follows:
Kim Expires April 14, 2006 [Page 4]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
1) This protocol applies three PGs, the PG-1 in which control
channels are directly connected between adjacent nodes, the PG-2
in which control channels are indirectly connected between
adjacent nodes according to a predefined route, and the PG-3 in
which control channels are connected via an internal or external
IP network;
2) This protocol uses multicast scheme for a reliable switchover;
3) This protocol can seamlessly provide services of a control
network until direct and indirect control channels of 2L ('L'
means the number of directly-connected links between adjacent
nodes) suffer from failures if a PG-3 control channel is
additionally kept;
4) Control channels over a detour route between adjacent nodes do
not use additional control channels, but use the current ACC
between directly connected nodes;
5) The protocol could be applied for the in-fiber in-bend/out-of-
bend configuration as well as the out-of-fiber configuration in
non-(G)MPLS and (G)MPLS.
Attributes of each control channel for the purpose, which are managed
via internal and external operations in each node, are as follows:
- Local control channel identifier : internal
- Remote control channel identifier : external
- Detour control channel identifier : external
- Transmission media type : internal
- Control channel type : external (among "active" or "standby")
- Protection group : internal (among "PG-1" or "PG-3")
- Adjacent node identifier : external
- Control channel status : internal (among "down" or "up")
4. Functions of ACCP Protocol
4.1 Identification of PG-1 and PG-3 Control Channels
This function allows two adjacent nodes to configure the
communication environment of PG-1 and PG-3 control channels. Its
procedure to identify active and standby control channels differs
from the way how to connect physical links between nodes. That is, in
case of point-to-point connection, control channels are identified
using a multicast address, and in other cases, they are identified
using an unicast address.
Kim Expires April 14, 2006 [Page 5]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
The originating node sends Config messages and waits responses from
its peer over control channels without relation to the type of
control link (point-to-point or multiple-access). At this point, the
node SHOULD indicate its protocol capability about the DCC
configuration.
After receiving the Config message, the terminating node determines
the Active Control Channel (ACC), Standby Control Channel (SCC) and
protocol capability used between adjacent nodes, and replies to the
configuration request with a ConfigAck message including these
objects in case of a successful response to be sent. Then, there may
be a possibility that the terminating node can receive one or more
Config messages from the same originating node. Accordingly, the node
returns a ConfigAck message in case that control channels can be used
as ACC and SCC, or returns a ConfigNack message including a proper
cause, which are based on the protocol capability received from the
peer node as needed.
With the request and response of control channel configuration, the
originating and terminating nodes can grasp the peer node identifier,
its type, and so on of each control channel.
4.2 Identification of Detour Control Channels
This function is used to configure a more powerful control network
after the identification of PG-1 and PG-3 control channels. This is
to establish a detour route using PG-1 or PG-3 control channels over
one or more transit nodes between adjacent nodes. Note that the
detour route is established using ACCs of the PG-1 or PG-3 configured
previously between other adjacent nodes.
For the dynamic designation of DCCs between adjacent nodes, the
originating node sends to its relay node a DCConfig message that
includes local and remote node identifiers. In order to support this
function, the originating node SHOULD complete the identification of
PG-1 and PG-3 control channels within the own node, and use other
ACCs except for the ACC that is directly connected to the terminating
node. Consequently, the originating node multicasts the DCConfig
message as many as the number of the other ACCs.
After receiving the DCConfig message, the transit node makes sure
that the own is not a terminating node for the message, relays the
message towards the terminating node. At this point, the node appends
the own node identifier to the relay node list. Then, sending a
DCConfig message to a succeeding node or sending a response message
to the previous node, the node applies the message sending rule as
follows:
Kim Expires April 14, 2006 [Page 6]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
1) If the hop-counter value estimated from the relay node list
exceeds the maximum threshold that can be different every
network topology (in case of the full mesh, tentatively 3), the
transit node returns a DCConfigNack message;
2) If the node to which the transit node wants to forward the
message is not the terminating one but the originating one, the
transit node returns a DCConfigNack message towards the
direction from which the message was received;
3) After sending a DCConfig message towards a terminating node, if
the transit node receives a DCConfig, then the node responds
with a DCConfigNack message;
4) After returning a response message towards the original node, if
the transit node receives a DCConfig message, the node returns a
DCConfigNack message towards the direction from which the
message was received;
5) If there is an ACC directly connected to the terminating node,
the transit node sends a DCConfig message over the control
channel;
6) When not being capable of sending a DCConfig message to the
terminating node, the transit node multicasts the DCConfig
message over one or more other ACCs.
Lastly, when the terminating node receives the first DCConfig
message, if the node responds to the request with a DCConfigAck
message, then the node SHOULD respond to the subsequent requests
with DCConfigNack messages.
A transit node that received the DCConfigAck message appends the own
node identifier to the relay node list, and updates a routing table
in order to forward control packets over the Detour Control Channel
(DCC). Then, the node relays the message towards the originating
node.
While configuring PG-1 and PG-3 control channels and DCCs, only the
ACC can carry control packets of signaling and routing protocols.
4.3 Automatic Switchover
When a failure on the ACC in use occurs, this function is used to
switchover to a control channel that first responds to the switchover
request (called multicast switchover).
Kim Expires April 14, 2006 [Page 7]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
Switchover messages are multicast via all standby control channels
except for the current ACC between adjacent nodes. Especially, when
switchover group messages are exchanged over a detour route, they
have to be forwarded at the IP layer of a transit node, and have not
to be gone up the application layer.
The originating node that requests the automatic switchover sends to
its terminating node a Switchover message with an indication of
switchover type, "automatic switchover". Then, the terminating node
SHOULD reply to the request with a SwitchoverAck message for a
successful response or SwitchoverNack message for an unsuccessful
response. When switchover group messages are exchanged over a detour
route, they have to be forwarded at the IP layer of a transit node,
and have not to be gone up the application layer.
4.4 Forced Switchover
Differently from the automatic switchover, this function is used to
switchover a control channel compulsorily for the purpose of
operation and administration via an intervention of operator.
The originating node that requests a forced switchover sends to its
terminating node a Switchover message with an indication of
switchover type, "forced switchover". Then, the terminating node
SHOULD reply to the request with a SwitchoverAck message for a
successful response or SwitchoverNack message for an unsuccessful
response. Like the automatic switchover, when switchover group
messages are exchanged over a detour route, they have to be forwarded
at the IP layer of a transit node, and have not to be gone up the
application layer.
4.5 Recovery from Failure
On recovery from the previous failure, the control channel performs
the process of connectivity verification of the control channel using
the identification of PG-1 and 3 control channels. Then, the control
channel becomes a SCC.
4.6 Notification of Control Channel Unavailability
This function is used to notify that there is no ACC to forward
control packets towards the terminating node due to subsequent
failures of other ACCs. This is called, DCC full down. A Notify
message is used for the notification. If the node that is notified
the unavailability of control channels is not the original node, this
process of relaying the Notify message is repeated until the original
node receives the message.
Kim Expires April 14, 2006 [Page 8]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
4.7 Inquiry of Switchover Attributes
This function is used to retrieve the protection and switchover
attributes of control channels over an ACC between adjacent nodes,
which are kept in its peer.
The protection and switchover attributes of control channels can be
classified into the ACC attributes and SCC ones. Accordingly, the
original node and its terminating node can identify if the own node
has the same attributes with its peer except for DCC related
contents.
The node that requests protection and switchover attributes of
control channels send a SAInqry message to its peer. The node that
receives the message responds to the request with a SAInqryAck
message for a successful response or SAInqryNack message for an
unsuccessful response.
4.8 Hello Initiation
This function is the same one to that in the LMP specification.
4.9 Notification of Protocol Errors
A functional entity supporting the resilience of control channels
SHOULD check protocol error conditions as a general rule before
acting upon a message after receiving the message from the peer
entity. If there is no protocol error within the received message,
resultant operations would be performed. However, if a protocol error
occurs, the receiving entity SHOULD notify the sending entity of the
situation using ProtError message, and there is no action against the
received message.
5. Finite State Machine of ACCP Protocol
The next job is to define a finite state machine that includes states
and events to perform the protection and switchover functions needed
to provide the resilience capability in IP based control networks.
States used in the ACCP protocol are defined as follows:
Down: Same to the LMP specification
Ready: State for exchanging Hello intervals and protection
attributes, and for identifying active and standby
control channels
Kim Expires April 14, 2006 [Page 9]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
Active: Same to the LMP specification, additionally state that
an active control channel is designated
Standby: State that a control channel is waiting for converting
into an active control channel
SoWaiting: State that a control channel is waiting for a response
to switchover request for being an active control
channel
Up: Same to the LMP specification, additionally state that
control packets can be exchanged, and a switchover can
occur
GoingDown: Same to the LMP specification
Events used in the ACCP protocol are defined as follows:
01) evAdminDown: Refer to the LMP specification
02) evBringUp: Refer to the LMP specification
03) evCCDn: Refer to the LMP specification
04) evConf: Event indicating that Config has been received from a
remote node
05) evConfDone: Event indicating that Config has been received from
a remote node
06) evConfErr: Refer to the LMP specification
07) evConfRetTimer: Refer to the LMP specification
08) evDCConf: Event indicating that DCConfig has been received from
a remote node
09) evDCConfDone: Event indicating that DCConfigAck has been
received from a remote node
10) evDCConfErr: Event indicating that DCConfigNack has been
received from a remote node
11) evDCConfTimer: Event indicating that a timer for starting DCC
configuration has expired
12) evDCConf2Timer: Event indicating that a timer for waiting DCC
configuration has expired
Kim Expires April 14, 2006 [Page 10]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
13) evDownTimer: Refer to the LMP specification
14) evHelloRcvd: Refer to the LMP specification
15) evHelloRetTimer: Refer to evHelloRet of the LMP specification
16) evHoldTimer: Refer to the LMP specification
17) evInqry: Event indicating that SAInqry has been received from a
remote node
18) evInqryDone: Event indicating that SAInqryAck has been received
from a remote node
19) evInqryErr: Event indicating that SAInqryNack has been received
from a remote node
20) evInqryReq: Event indicating that a local user hopes to
identify switchover attributes of an ACC from the remote
21) evNbrGoesDn: Refer to the LMP specification
22) evNoti: Event indicating that Notify has been received from a
remote node
23) evNotiReq: Event indicating that Notify has to be issued to a
remote node
24) evNWTimer: Event indicating that a negotiation-waiting timer
has expired
25) evProtErr: Event indicating that ProtError has been received
from a remote node
26) evProtErrOccurred: Event indicating that a protocol error has
occurred
27) evSeqNumErr: Refer to the LMP specification
28) evSo: Event indicating that Switchover has been received from a
remote node
29) evSoCompleted: Event indicating that switchover has performed
successfully due to CC down or operator request
30) evSoDone: Event indicating that SwitchoverAck has been received
from a remote node
31) evSoErr: Event indicating that SwitchoverNack has been received
Kim Expires April 14, 2006 [Page 11]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
from a remote node
32) evSoReq: Event indicating that switchover has to be performed
via intervention of an operator, or due to ACC's down
33) evSoTimer: Event indicating that the a switchover timer has
expired
Here, there are several differences between the ACCP protocol and the
current LMP about events and state transitions described in the LMP
document. First, in case of evBringUp and evHoldTimer events, the
ACCP protocol sends Config messages periodically and do not wait for
the receipt of a Config message. There is a reason why the
designation of a role per control channel causes unnecessary
overheads to an operator.
In the Active state, the state machine SHOULD make transition to the
Up state only after receiving a normal Hello message. Generally, the
status of control channels can be reflected using the Operation
Administration and Maintenance (OAM) function of a lower layer.
However, if the lower layer of the local has no problem but the
protocol engine in the remote has a problem, the local can not detect
whether the lower layer in the remote has a problem, the protocol
engine in the remote has a problem, or indirect links between the
local and the remote have problems without using a fast-keep
mechanism. Consequently, it is appropriate to estimate these
situations as a control channel down. For the detection of this
situation, Hello messages SHOULD be exchanged each other.
The resultant Finite State Machine (FSM) of using states and events
above needs further study.
6. Message Formats of ACCP Protocol
Messages used in the ACCP protocol in order to support control
networks with the resilience capability in IP-based networks are as
follows:
Config: Request about the configuration of a PG-1/3 CC
ConfigAck: Agreement about the configuration request of a
PG-1/3 CC
ConfigNack: Rejection about the configuration request of a
PG-1/3 CC
DCConfig: Request about the configuration of detour route
DCConfigAck: Agreement about the configuration request of
detour route
Kim Expires April 14, 2006 [Page 12]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
DCConfigNack: Rejection about the configuration request of detour
route
Hello: Support of fast keep-alive mechanism
Notify: Identification of the non-existence of control
channels available
ProtError: Notification of a protocol error
SAInqry: Request of the switchover attributes
SAInqryAck: Agreement about the request of switchover
attributes
SAInqryNack: Rejection about the request of switchover
attributes
Switchover: Request about the switchover
SwitchoverAck: Agreement about the switchover request
SwitchoverNack: Rejection about the switchover request
6.1 Config
In addition to the Config message defined in the LMP specification,
CC_PROPERTY and ADDI_INFO_INDICATOR objects are included to tell the
property and the capability of the control channel or the own node.
Its format is as follows:
<Config Message> ::=
<Common Header> <LOCAL_CCID> <MESSAGE_ID> <LOCAL_NODE_ID>
<CONFIG> <CC_PROPERTY> <ADDI_INFO_INDICATOR>
6.2 ConfigAck
In addition to the ConfigAck message defined in the LMP
specification, CC_PROPERTY and ADDI_INFO_INDICATOR objects are
included. Its format is as follows:
<ConfigAck Message> ::=
<Common Header> <LOCAL_CCID> <LOCAL_NODE_ID>
<REMOTE_CCID> <MESSAGE_ID_ACK> <REMOTE_NODE_ID>
<CC_PROPERTY>
Kim Expires April 14, 2006 [Page 13]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
6.3 ConfigNack
In addition to the ConfigNack message defined in the LMP
specification, CC_PROPERTY, ADDI_INFO_INDICATOR, and REJECT_CAUSE
objects are included. Its format is as follows:
<ConfigNack Message> ::=
<Common Header> <LOCAL_CCID> <LOCAL_NODE_ID>
<REMOTE_CCID> <MESSAGE_ID_ACK> <REMOTE_NODE_ID> <CONFIG>
<CC_PROPERTY> <REJECT_CAUSE>
6.4 DCConfig
This message is used to request the configuration of a DCC.
LAST_LOCAL_NODE_ID, LAST_REMOTE_NODE_ID, CC_PROPERTY, and
RELAY_NODE_ID objects are included. While traversing nodes towards
the last remote node, a relay node adds the own node identifier to
the RELAY_NODE_ID list. Its format is as follows:
<DCConfig Message> ::=
<Common Header> <MESSAGE_ID> <CONFIG>
<LAST_LOCAL_NODE_ID> <LAST_REMOTE_NODE_ID>
[<RELAY_NODE_ID>...]
6.5 DCConfigAck
This message is used to notify an agreement about the request to
configure a DCC. RELAY_NODE_ID objects are the same to the ones in
the previously received DCConfig message. Its format is as follows:
<DCConfigAck Message> ::=
<Common Header> <MESSAGE_ID_ACK> <LAST_LOCAL_NODE_ID>
<LAST_REMOTE_NODE_ID> [<RELAY_NODE_ID>...]
6.6 DCConfigNack
This message is used to notify a rejection about the request to
configure a DCC. Its format is as follows:
<DCConfigNack Message> ::=
<Common Header> <MESSAGE_ID_ACK> <CONFIG> <REJECT_CAUSE>
Kim Expires April 14, 2006 [Page 14]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
6.7 Hello
This message is the same to the one defined in the LMP specification.
6.8 Switchover
This message is used to request the automatic or forced switchover to
a particular control channels. Its format is as follows:
<Switchover Message> ::=
<Common Header> <MESSAGE_ID> <LOCAL_CCID> <LOCAL_NODE_ID>
<SEQUENCE_NUMBER> <SWITCHOVER_TYPE>
6.9 SwitchoverAck
This message is used to notify an agreement about the request of
automatic or forced switchover to a particular control channel. Its
format is as follows:
<SwitchoverAck Message> ::=
<Common Header> <LOCAL_CCID> <LOCAL_NODE_ID>
<REMOTE_CCID> <MESSAGE_ID_ACK> <REMOTE_NODE_ID>
<SEQUENCE_NUMBER>
6.10 SwitchoverNack
This message is used to notify a rejection about the request of
automatic or forced switchover to one or more control channels. Its
format is as follows:
<SwitchoverNack Message> ::=
<Common Header> <LOCAL_CCID> <LOCAL_NODE_ID>
<REMOTE_CCID> <MESSAGE_ID_ACK> <REMOTE_NODE_ID>
<SEQUENCE_NUMBER> <REJECT_CAUSE>
6.11 Notify
This message is used to notify that there is no DCC any more for the
switchover. Its format is as follows:
<Notify Message> ::=
<Common Header> <LOCAL_CCID> < REMOTE_CCID>
Kim Expires April 14, 2006 [Page 15]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
6.12 SAInqry
This message is used to request the protection and switchover
attributes for one or more control channels, which have been kept in
its peer. Its format is as follows:
<SAInqry Message> ::=
<Common Header> <MESSAGE_ID>
6.13 SAInqryAck
This message is used to notify an agreement about the request of
protection and switchover attributes for one or more control
channels. Its format is as follows:
<SAInqryAck Message> ::=
<Common Header> <MESSAGE_ID_ACK> <ACC_SWITCHOVER_ATTR>
[<SCC_SWITCHOVER_ATTR>]
6.14 SAInqryNack
This message is used to notify a rejection about the request of
protection and switchover attributes for one or more control
channels. Its format is as follows:
<SAInqryNack Message> ::=
<Common Header> <MESSAGE_ID_ACK> <REJECT_CAUSE>
6.15 ProtError
This message is used to notify a protocol error that is detected in a
received message. Its format is as follows:
<ProtError Message> ::=
<Common Header> <PROT_ERROR>
7. Object Definitions of ACCP Protocol
Objects used in the ACCP protocol in order to support control
networks with the resilience capability in IP-based networks are as
follows:
Kim Expires April 14, 2006 [Page 16]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
ADDI_INFO_INDICATOR: Additional capability to be supported
CC_TYPE: Type of control channel
CCID: Control channel identifier channel
CONFIG: Hello time-interval
HELLO: Sending and receiving sequence numbers
MESSAGE_ID: Sending Message identifier
NODE_ID: Node identifier
PROT_ERROR: Code-points of a protocol error
REJECT_CAUSE: Code Cause of rejection
SEQUENCE_NUMBER: Code Identification of message duplication
SWITCHOVER_ATTR: Attribute Type of protection and switchover
7.1 CCID Class
This object is the same to the one defined in the LMP specification.
7.2 MESSAGE_ID Class
This object is the same to the one defined in the LMP specification.
7.3 NODE_ID Class
This object defined in the LMP specification adds LAST_LOCAL_NODE_ID,
LAST_REMOTE_NODE_ID, and RELAY_NODE_ID types.
C-Type = 3, LAST_LOCAL_NODE_ID
C-Type = 4, LAST_REMOTE_NODE_ID
C-Type = 5, RELAY_NODE_ID
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Node_ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Kim Expires April 14, 2006 [Page 17]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
Node_ID: 32 bits
This identifies a last local node, last remote node, or
relay node.
7.4 CONFIG Class
This object is the same to the one defined in the LMP specification.
7.5 HELLO Class
This object is the same to the one defined in the LMP specification.
7.6 CC_PROPERTY Class
This object indicates the general information of a control channel,
including its type, the physical media, and the protection group.
Class = 21
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CC_Type | CC_Media | PG_Type | (Reserved) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
CC_Type: 8 bits
This type indicates the type of control channel to be
identified.
CC_Type = 1, Active
CC_Type = 2, Standby
CC_Media: 8 bits
This indicates the physical transmission characteristic of
a control channel.
CC_Media = 1, SONET section or SDH Regenerator Section
CC_Media = 2, SONET line or SDH Multiplex Section
CC_Media = 3, VC-11 or VC-12 SONET/SDH Timeslot
CC_Media = 4, VC-3 SONET/SDH Timeslot
CC_Media = 5, VC-4 SONET/SDH Timeslot
CC_Media = 10, 10/100 Ethernet
CC_Media = 15, Giga Ethernet
CC_Media = 20, PoS
Kim Expires April 14, 2006 [Page 18]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
CC_Media = 30, WDM
PG_Type: 8 bits
This indicates the type of protection group (PG-1/2/3) to
which a control channel belongs.
PG_Type = 1, PG-1
PG_Type = 3, PG-3
PG_Type = 21, DCC with PG-2
PG_Type = 22, DCC with PG-3
7.7 SWITCHOVER_TYPE Class
This object indicates the general information of the switchover,
including its type and cause.
Class = 22
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| So_Type | Cause | (Reserved) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
So_Type: 8 bits
This indicates the type of switchover.
So_Type = 1, Automatic switchover
So_Type = 2, Forced switchover
Cause: 8 bits
So_Type = 1, Automatic switchover
Cause = 1, ACC failed
So_Type = 2, Forced switchover
Cause = 1, Operator request
This identifies the cause why the switchover occurs.
7.8 SWITCHOVER_ATTR Class
This object indicates the switchover attributes of an ACC or SCC.
Class = 23
C-Type = 1, ACC_SWITCHOVER_ATTR
This indicates switchover attributes of the ACC.
C-Type = 2, SCC_SWITCHOVER_ATTR
This indicates switchover attributes of the SCC.
Kim Expires April 14, 2006 [Page 19]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Local_CC_ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Remote_CC_ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Adjacent_Node_ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CC_Property |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Local_CC_ID: 32 bits
This identifies the control channel on which a node sends
messages.
Remote_CC_ID: 32 bits
This identifies the control channel on which a node
receives messages.
Adjacent_Node_ID: 32 bits
This identifies the node to which a control channel has
been connected remotely.
CC_Property: See above.
7.9 ADDI_INFO_INDICATOR Class
Class = 24
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Addi_Info_Indicator | (Reserved) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Addi_Info_Indicator: 16 bits
This indicates the additional capabilities supported by the
node sending this object.
Flag 1 (bit 1) set to 1 if the node supports the DCC
configuration.
Flag 2 to Flag 16 set to 0 and reserved for future use.
This object is negotiable.
7.10 SEQUENCE_NUMBER Class
Kim Expires April 14, 2006 [Page 20]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
Class = 25
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Seq_No | (Reserved) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Seq_No: 8 bits
The sequence number is used by the receiving node to
distinguish between a message received for first time and a
message that has already been received via other control
channels. This number is coded in modular operation from 0
and 255. Note that any message is not used to reset the
sequence number.
7.11 PROT_ERROR Class
This object indicates a detailed protocol error detected after a node
received a message from a remote node.
Class = 26
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PE_Type | Cause | (Reserved) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PE_Type: 8 bits
Type = 0, Undefined
Type = 1, Message header
Type = 2, Object header
Type = 3, Object content
Cause: 8 bits
Type = 0, Undefined
Cause = 0, Undefined
Type = 1, Message header
Cause = 0, Undefined
Cause = 1, Undefined version
Cause = 2, Undefined flags
Cause = 3, Undefined message type
Cause = 4, Wrong message length
Kim Expires April 14, 2006 [Page 21]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
Type = 2, Object header
Cause = 0, Undefined
Cause = 1, Undefined C-Type
Cause = 2, Undefined class
Cause = 3, Wrong object length
Cause = 4, Out-of-sequence object
Type = 3, Object content
Cause = 0, Undefined
Cause = 1, Undefined ADDI_INFO_INDICATOR
Cause = 2, Undefined CC_TYPE
Cause = 3, Undefined CCID
Cause = 4, Undefined CONFIG
Cause = 5, Undefined HELLO
Cause = 6, Undefined MESSAGE_ID
Cause = 7, Undefined NODE_ID
Cause = 8, Undefined REJECT_CAUSE
Cause = 9, Undefined SEQUENCE_NUMBER
Cause = 10, Undefined SWITCHOVER_ATTR
Cause = 11, Undefined SWITCHOVER_TYPE
7.12 REJECT_CAUSE Class
This object indicates a detailed reject cause included in the
unsuccessful acknowledgement after a node received some kind of
request of configuration, switchover, and so on from a remote node.
Class = 27
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RJ_Type | Cause | (Reserved) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
RJ_Type: 8 bits
RJ_Type = 0, Undefined
RJ_Type = 1, Config related
RJ_Type = 2, DCConfig related
RJ_Type = 3, SAInqry related
RJ_Type = 4, Switchover related
Cause: 8 bits
RJ_Type = 0, Undefined
Cause = 0, Undefined
Kim Expires April 14, 2006 [Page 22]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
RJ_Type = 1, Config request
Cause = 0, Undefined
RJ_Type = 2, DCConfig related
Cause = 0, Undefined
RJ_Type = 3, SAInqry related
Cause = 0, Undefined
RJ_Type = 4, Switchover related
Cause = 0, Undefined
Cause = 1, Switchover completed
8. Security Considerations
This document does not introduce any new security considerations.
9. IANA Considerations
This document does not contain any IANA actions.
10. References
10.1. Normative References
[LMP] J. Lang, et al, "Link Management Protocol," IETF, draft-ietf-
ccamp-lmp-10.txt, October 2003.
[CPR-REQTS] Young Hwa Kim, and et al "Requirements for the Resilience
of Control Plane in GMPLS," IETF, draft-kim-ccamp-cpr-reqts-
01.txt, November 2005.
10.2. Normative References
[ITU-G870] ITU-T, "Requirements for Automatic Switched Transport
Networks (ASTN)," G.807, July 2001.
[ITU-G7712] ITU-T, "Architecture and Specification of Data
Communications Network," G.7712, March 2003.
Author's Addresses
Young Hwa Kim
yhwkim@etri.re.kr
ETRI 161 Gajeong-Dong Yuseong-Gu, Deajon 305-350, Korea
Kim Expires April 14, 2006 [Page 23]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
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@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, 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 (2005). 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.
Acknowledgement
Kim Expires April 14, 2006 [Page 24]
draft-kim-ccamp-accp-protocol-00.txt October 15, 2005
Funding for the RFC Editor function is currently provided by the
Internet Society.
Kim Expires April 14, 2006 [Page 25]