ietf-interface-protection@2018-11-28.yang   ietf-interface-protection@2018-11-28-formatted.yang 
module ietf-interface-protection { module ietf-interface-protection {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-interface-protection"; namespace "urn:ietf:params:xml:ns:yang:ietf-interface-protection";
prefix ifprot; prefix ifprot;
import ietf-interfaces { import ietf-interfaces {
prefix if; prefix if;
reference "RFC 8343"; reference
"RFC 8343";
} }
organization organization
"Internet Engineering Task Force (IETF) CCAMP WG"; "Internet Engineering Task Force (IETF) CCAMP WG";
contact contact
"WG List: <mailto:ccamp@ietf.org> "WG List: <mailto:ccamp@ietf.org>
Editors: Editors:
Jonas Ahlberg (jonas.ahlberg@ericsson.com) Jonas Ahlberg (jonas.ahlberg@ericsson.com)
Min Ye (amy.yemin@huawei.com) Min Ye (amy.yemin@huawei.com)
skipping to change at line 22 skipping to change at line 23
"Internet Engineering Task Force (IETF) CCAMP WG"; "Internet Engineering Task Force (IETF) CCAMP WG";
contact contact
"WG List: <mailto:ccamp@ietf.org> "WG List: <mailto:ccamp@ietf.org>
Editors: Editors:
Jonas Ahlberg (jonas.ahlberg@ericsson.com) Jonas Ahlberg (jonas.ahlberg@ericsson.com)
Min Ye (amy.yemin@huawei.com) Min Ye (amy.yemin@huawei.com)
Xi Li (Xi.Li@neclab.eu) Xi Li (Xi.Li@neclab.eu)
Daniela Spreafico (daniela.spreafico@nokia.com) Daniela Spreafico (daniela.spreafico@nokia.com)
Marko Vaupotic (Marko.Vaupotic@aviatnet.com)"; Marko Vaupotic (Marko.Vaupotic@aviatnet.com)";
description description
"This is a module for the entities in "This is a module for the entities in
a generic interface protection mechanism. a generic interface protection mechanism.
Copyright (c) 2019 IETF Trust and the persons identified as Copyright (c) 2019 IETF Trust and the persons identified as
authors of the code. All rights reserved. authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject without modification, is permitted pursuant to, and subject
to the license terms contained in, the Simplified BSD License to the license terms contained in, the Simplified BSD License
set forth in Section 4.c of the IETF Trust's Legal Provisions set forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents Relating to IETF Documents
(http://trustee.ietf.org/license-info). (http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC 8561; see This version of this YANG module is part of RFC 8561; see
the RFC itself for full legal notices."; the RFC itself for full legal notices.";
revision 2018-11-28 { revision 2018-11-28 {
description "Initial revision."; description
reference "RFC 8561: A YANG Data Model for Microwave Radio Link"; "Initial revision.";
reference
"RFC 8561: A YANG Data Model for Microwave Radio Link";
} }
/* /*
* Protection architecture type identities * Protection architecture type identities
*/ */
identity protection-architecture-type { identity protection-architecture-type {
description description
"protection architecture type"; "protection architecture type";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
identity one-plus-one-type { identity one-plus-one-type {
base protection-architecture-type; base protection-architecture-type;
description description
"1+1; one interface protects "1+1; one interface protects
another one interface."; another one interface.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
identity one-to-n-type { identity one-to-n-type {
base protection-architecture-type; base protection-architecture-type;
description description
"1:N; one interface protects "1:N; one interface protects
n other interfaces."; n other interfaces.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
/* /*
* Protection states identities * Protection states identities
*/ */
identity protection-states { identity protection-states {
description description
"Identities describing the status of the protection "Identities describing the status of the protection
in a group of interfaces configured in in a group of interfaces configured in
a protection mode."; a protection mode.";
} }
identity unprotected { identity unprotected {
base protection-states; base protection-states;
description "Not protected."; description
"Not protected.";
} }
identity protected { identity protected {
base protection-states; base protection-states;
description "Protected."; description
"Protected.";
} }
identity unable-to-protect { identity unable-to-protect {
base protection-states; base protection-states;
description "Unable to protect."; description
"Unable to protect.";
} }
/* /*
* Protection Groups * Protection Groups
*/ */
grouping protection-groups { grouping protection-groups {
description description
"Configuration of protected groups (1+1) of interfaces "Configuration of protected groups (1+1) of interfaces
providing protection for each other. More than one providing protection for each other. More than one
protected group per higher-layer interface is allowed."; protected group per higher-layer interface is allowed.";
list protection-group { list protection-group {
key "name"; key "name";
description description
"List of protected groups of interfaces "List of protected groups of interfaces
in a higher-layer interface."; in a higher-layer interface.";
leaf name { leaf name {
type string; type string;
description description
"Name used for identification of the protection group."; "Name used for identification of the protection group.";
} }
leaf protection-architecture-type { leaf protection-architecture-type {
type identityref { type identityref {
base protection-architecture-type; base protection-architecture-type;
} }
default "ifprot:one-plus-one-type"; default "ifprot:one-plus-one-type";
description description
"The type of protection architecture used, e.g., one "The type of protection architecture used, e.g., one
interface protecting one or several other interfaces."; interface protecting one or several other interfaces.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
leaf-list members { leaf-list members {
type if:interface-ref; type if:interface-ref;
min-elements 2; min-elements 2;
description description
"Association to a group of interfaces configured for "Association to a group of interfaces configured for
protection and used by a higher-layer interface."; protection and used by a higher-layer interface.";
} }
leaf operation-type { leaf operation-type {
type enumeration { type enumeration {
enum "non-revertive" { enum non-revertive {
description description
"In non-revertive operation, the traffic does not "In non-revertive operation, the traffic does not
return to the working interface if the switch requests return to the working interface if the switch requests
are terminated."; are terminated.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
enum "revertive" { enum revertive {
description description
"In revertive operation, the traffic always "In revertive operation, the traffic always
returns to (or remains on) the working interface returns to (or remains on) the working interface
if the switch requests are terminated."; if the switch requests are terminated.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
} }
default "non-revertive"; default "non-revertive";
description description
"The type of protection operation, i.e., revertive "The type of protection operation, i.e., revertive
or non-revertive operation."; or non-revertive operation.";
} }
leaf-list working-entity { leaf-list working-entity {
when "../operation-type = 'revertive'"; when "../operation-type = 'revertive'";
type if:interface-ref; type if:interface-ref;
min-elements 1; min-elements 1;
description description
"The interfaces that the traffic normally should "The interfaces that the traffic normally should
be transported over when there is no need to use the be transported over when there is no need to use the
protecting interface."; protecting interface.";
} }
leaf revertive-wait-to-restore { leaf revertive-wait-to-restore {
when "../operation-type = 'revertive'"; when "../operation-type = 'revertive'";
type uint16; type uint16;
units "seconds"; units "seconds";
default "0"; default "0";
description description
"The time to wait before switching back to the working "The time to wait before switching back to the working
interface if operation-type is revertive."; interface if operation-type is revertive.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
leaf hold-off-timer { leaf hold-off-timer {
type uint16; type uint16;
units "milliseconds"; units "milliseconds";
default "0"; default "0";
description description
"Time interval after the detection of a fault and its "Time interval after the detection of a fault and its
confirmation as a condition requiring the protection- confirmation as a condition requiring the protection-
switching procedure."; switching procedure.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
leaf status { leaf status {
type identityref { type identityref {
base protection-states; base protection-states;
} }
config false; config false;
description description
"Status of the protection in a group of interfaces "Status of the protection in a group of interfaces
configured in a protection mode."; configured in a protection mode.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
action manual-switch-working { action manual-switch-working {
description description
"A switch action initiated by an operator command. "A switch action initiated by an operator command.
It switches a normal traffic signal to the working It switches a normal traffic signal to the working
transport entity."; transport entity.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
action manual-switch-protection { action manual-switch-protection {
description description
"A switch action initiated by an operator command. "A switch action initiated by an operator command.
It switches a normal traffic signal to the protection It switches a normal traffic signal to the protection
transport entity."; transport entity.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
action forced-switch { action forced-switch {
description description
"A switch action initiated by an operator command. "A switch action initiated by an operator command.
It switches a normal traffic signal to the protection It switches a normal traffic signal to the protection
transport entity and forces it to remain on that transport entity and forces it to remain on that
entity even when criteria for switching back to entity even when criteria for switching back to
the original entity are fulfilled."; the original entity are fulfilled.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
action lockout-of-protection { action lockout-of-protection {
description description
"A switch action temporarily disables access to the "A switch action temporarily disables access to the
protection transport entity for all signals."; protection transport entity for all signals.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
action freeze { action freeze {
description description
"A switch action temporarily prevents any switch action "A switch action temporarily prevents any switch action
to be taken and, as such, freezes the current state. to be taken and, as such, freezes the current state.
Until the freeze is cleared, additional near-end external Until the freeze is cleared, additional near-end external
commands are rejected, and fault condition changes and commands are rejected, and fault condition changes and
received Automatic Protection-Switching (APS) messages received Automatic Protection-Switching (APS) messages
are ignored."; are ignored.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
action exercise { action exercise {
description description
"A switch action to test if the APS communication is "A switch action to test if the APS communication is
operating correctly. It is lower priority than any 'real' operating correctly. It is lower priority than any 'real'
switch request."; switch request.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
action clear { action clear {
description description
"An action clears all switch commands."; "An action clears all switch commands.";
reference "ITU-T G.808.1"; reference
"ITU-T G.808.1";
} }
} }
} }
} }
 End of changes. 47 change blocks. 
68 lines changed or deleted 73 lines changed or added

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