netconfcentral logo

ietf-l1csm@2017-10-27



  module ietf-l1csm {

    yang-version 1.1;

    namespace
      "urn:ietf:params:xml:ns:yang:ietf-l1csm";

    prefix l1csm;

    import ietf-yang-types {
      prefix yang;
    }

    organization
      "Internet Engineering Task Force (IETF) CCAMP WG";

    contact
      "Editor: G. Fioccolla (giuseppe.fioccola@telecomitalia.it)
            Editor: K. Lee (kwangkoog.lee@kt.com)
            Editor: Y. Lee (leeyoung@huawei.com)
            Editor: D. Dhody (dhruv.ietf@gmail.com)
            Editor: O. Gonzalez de-Dios (oscar.gonzalezdedios@telefonica.com)
            Editor: D. Ceccarelli (daniele.ceccarelli@ericsson.com)";

    description
      "this module describes Layer 1 connectivity service model for
                 subscriber Layer 1 Connectivity Services and Attributes";

    revision "2017-10-27" {
      description "Initial revision.";
      reference
        "to add the draft name";

    }


    identity protocol-type {
      base 
      description
        "base identity from which client protocol
type is derived.";
    }

    identity aGigE {
      base protocol-type;
      description "GigE protocol type";
    }

    identity a10GigE_WAN {
      base protocol-type;
      description "10GigE-WAN protocol type";
    }

    identity a10GigE_LAN {
      base protocol-type;
      description "10GigE-LAN protocol type";
    }

    identity a40GigE {
      base protocol-type;
      description "40GigE protocol type";
    }

    identity a100GigE {
      base protocol-type;
      description "100GigE protocol type";
    }

    identity FC-100 {
      base protocol-type;
      description
        "Fiber Channel - 100 protocol type";
    }

    identity FC-200 {
      base protocol-type;
      description
        "Fiber Channel - 200 protocol type";
    }

    identity FC-400 {
      base protocol-type;
      description
        "Fiber Channel - 400 protocol type";
    }

    identity FC-800 {
      base protocol-type;
      description
        "Fiber Channel - 800 protocol type";
    }

    identity FC-1200 {
      base protocol-type;
      description
        "Fiber Channel - 1200 protocol type";
    }

    identity FC-1600 {
      base protocol-type;
      description
        "Fiber Channel - 1600 protocol type";
    }

    identity FC-3200 {
      base protocol-type;
      description
        "Fiber Channel - 3200 protocol type";
    }

    identity STM-1 {
      base protocol-type;
      description "SDH STM-1 protocol type";
    }

    identity STM-4 {
      base protocol-type;
      description "SDH STM-4 protocol type";
    }

    identity STM-16 {
      base protocol-type;
      description "SDH STM-16 protocol type";
    }

    identity STM-64 {
      base protocol-type;
      description "SDH STM-64 protocol type";
    }

    identity STM-256 {
      base protocol-type;
      description
        "SDH STM-256 protocol type";
    }

    identity OC-3 {
      base protocol-type;
      description "SONET OC-3 protocol type";
    }

    identity OC-12 {
      base protocol-type;
      description
        "SONET OC-12 protocol type";
    }

    identity OC-48 {
      base protocol-type;
      description
        "SONET OC-48 protocol type";
    }

    identity OC-192 {
      base protocol-type;
      description
        "SONET OC-192 protocol type";
    }

    identity OC-768 {
      base protocol-type;
      description
        "SONET OC-768 protocol type";
    }

    identity coding-func {
      base 
      description
        "base identity from which coding func is
derived.";
    }

    identity a1000X-PCS-36 {
      base coding-func;
      description
        "PCS clause 36 coding function that
corresponds to 1000BASE-X";
    }

    identity a10GW-PCS-49-WIS-50 {
      base coding-func;
      description
        "PCS clause 49 and WIS clause 50 coding func
that corresponds to 10GBASE-W (WAN PHY)";
    }

    identity a10GR-PCS-49 {
      base coding-func;
      description
        "PCS clause 49 coding function that
corresponds to 10GBASE-R (LAN PHY)";
    }

    identity a40GR-PCS-82 {
      base coding-func;
      description
        "PCS clause 82 coding function that
corresponds to 40GBASE-R";
    }

    identity a100GR-PCS-82 {
      base coding-func;
      description
        "PCS clause 82 coding function that
corresponds to 100GBASE-R";
    }

    identity optical-interface-func {
      base 
      description
        "base identity from which optical-interface-
function is derived.";
    }

    identity SX-PMD-clause-38 {
      base optical-interface-func;
      description
        "SX-PMD-clause-38 Optical Interface function
for 1000BASE-X PCS-36";
    }

    identity LX-PMD-clause-38 {
      base optical-interface-func;
      description
        "LX-PMD-clause-38 Optical Interface function
for 1000BASE-X PCS-36";
    }

    identity LX10-PMD-clause-59 {
      base optical-interface-func;
      description
        "LX10-PMD-clause-59 Optical Interface
function for 1000BASE-X PCS-36";
    }

    identity BX10-PMD-clause-59 {
      base optical-interface-func;
      description
        "BX10-PMD-clause-59 Optical Interface
function for 1000BASE-X PCS-36";
    }

    identity LW-PMD-clause-52 {
      base optical-interface-func;
      description
        "LW-PMD-clause-52 Optical Interface function
for 10GBASE-W PCS-49-WIS-50";
    }

    identity EW-PMD-clause-52 {
      base optical-interface-func;
      description
        "EW-PMD-clause-52 Optical Interface function
for 10GBASE-W PCS-49-WIS-50";
    }

    identity LR-PMD-clause-52 {
      base optical-interface-func;
      description
        "LR-PMD-clause-52 Optical Interface function
for 10GBASE-R PCS-49";
    }

    identity ER-PMD-clause-52 {
      base optical-interface-func;
      description
        "ER-PMD-clause-52 Optical Interface function
for 10GBASE-R PCS-49";
    }

    identity LR4-PMD-clause-87 {
      base optical-interface-func;
      description
        "LR4-PMD-clause-87 Optical Interface function
for 40GBASE-R PCS-82";
    }

    identity ER4-PMD-clause-87 {
      base optical-interface-func;
      description
        "ER4-PMD-clause-87 Optical Interface function
for 40GBASE-R PCS-82";
    }

    identity FR-PMD-clause-89 {
      base optical-interface-func;
      description
        "FR-PMD-clause-89 Optical Interface function
for 40GBASE-R PCS-82";
    }

    identity LR4-PMD-clause-88 {
      base optical-interface-func;
      description
        "LR4-PMD-clause-88 Optical Interface function
for 100GBASE-R PCS-82";
    }

    identity ER4-PMD-clause-88 {
      base optical-interface-func;
      description
        "ER4-PMD-clause-88 Optical Interface function
for 100GBASE-R PCS-82";
    }

    identity performance-metriclist {
      base 
      description
        "list of performance metric";
    }

    identity One-way-Delay {
      base performance-metriclist;
      description "One-way-Delay";
    }

    identity One-way-Errored-Second {
      base performance-metriclist;
      description "One-way-Errored-Second";
    }

    identity One-way-Severely-Errored-Second {
      base performance-metriclist;
      description
        "One-way-Severely-Errored-Second";
    }

    identity One-way-Unavailable-Second {
      base performance-metriclist;
      description
        "One-way-Unavailable-Second";
    }

    identity One-way-Availability {
      base performance-metriclist;
      description "One-way-Availability";
    }

    grouping protocol-coding-optical_interface {
      description "describes <p,c,o>";
      leaf protocol {
        type identityref {
          base protocol-type;
        }
        description
          "Physical layer L1VC client
protocol service attribute";
      }

      leaf coding {
        type identityref {
          base coding-func;
        }
        description "coding function";
      }

      leaf optical_interface {
        type identityref {
          base optical-interface-func;
        }
        description
          "optical-interface-function";
      }
    }  // grouping protocol-coding-optical_interface

    grouping uni-attributes {
      description "uni-service-attributes";
      leaf UNI-ID {
        type string;
        description
          "the UNI id of UNI
Service Attributes";
      }

      uses protocol-coding-optical_interface;
    }  // grouping uni-attributes

    grouping subscriber-l1vc-sls-service-attribute {
      description
        "The value of the Subscriber L1VC SLS
(Service Level Specification) Service Attribute expressed in a 4-tuple of the
form.";
      leaf time-start {
        type yang:date-and-time;
        description
          "a time that represent
the date and time for the start of the SLS";
      }

      leaf time-interval {
        type int64;
        units "seconds";
        description
          "a time interval
(e.g., 1 month) that is used in conjunction wuth time-start to specify a
contiguous sequence of time intervals T for determining when performance
objectives are met.";
      }

      leaf CoS_Name {
        type string;
        description
          "a Class of Service
Name used by the Subscriber L1VC End Point Class of Service Identifier Service
Attribute.";
      }

      leaf performance-metric {
        type identityref {
          base performance-metriclist;
        }
        description
          "list of performance
metric";
      }
    }  // grouping subscriber-l1vc-sls-service-attribute

    grouping subscriber-l1vc-service-attributes {
      description
        "subscriber layer 1 connection service
service level";
      leaf subscriber-l1vc-id {
        type string;
        description
          "subscriber L1VC identifier";
      }

      leaf subscriber-l1vc-ep-ingress {
        type leafref {
          path
            "/l1cs/access/uni-list/UNI-ID";
        }
        description
          "this is one end of subscriber L1VC end
point ID value = UNI-1";
      }

      leaf subscriber-l1vc-ep-egress {
        type leafref {
          path
            "/l1cs/access/uni-list/UNI-ID";
        }
        description
          "this is the other end of subscriber
L1VC end point ID value = UNI-2";
      }

      leaf client-protocol {
        type identityref {
          base protocol-type;
        }
        description
          "One of Ethernet, Fiber Channel, SONET,
SDH";
      }

      uses subscriber-l1vc-sls-service-attribute;
    }  // grouping subscriber-l1vc-service-attributes

    grouping subscriber-attributes {
      description "subscriber attributes";
      uses subscriber-l1vc-service-attributes;
    }  // grouping subscriber-attributes

    container l1cs {
      description
        "serves as a top-level container for a list of layer 1
connection services (l1cs)";
      container access {
        description "UNI configurations";
        list uni-list {
          key "UNI-ID";
          description "uni identifier";
          uses uni-attributes {
            description
              "UNI attributes
information";
          }
        }  // list uni-list
      }  // container access

      container service {
        description "L1VC service";
        list service-list {
          key "subscriber-l1vc-id";
          description
            "an unique identifier of a service";
          leaf subscriber-l1vc-id {
            type string;
            description
              "a unique service identifier for
L1VC.";
          }

          container service-config {
            description
              "service-config container";
            uses subscriber-attributes;
          }  // container service-config
        }  // list service-list
      }  // container service
    }  // container l1cs
  }  // module ietf-l1csm