netconfcentral logo

ietf-dots-data-channel-identifier@2017-10-12



  module ietf-dots-data-channel-identifier {

    yang-version 1.1;

    namespace
      "urn:ietf:params:xml:ns:yang:ietf-dots-data-channel-identifier";

    prefix alias;

    import ietf-inet-types {
      prefix inet;
    }

    organization "IETF DOTS Working Group";

    contact
      "Konda, Tirumaleswar Reddy <TirumaleswarReddy_Konda@McAfee.com>
       Mohamed Boucadair <mohamed.boucadair@orange.com>
       Kaname Nishizuka <kaname@nttv6.jp>
       Liang Xia <frank.xialiang@huawei.com>
       Prashanth Patil <praspati@cisco.com>
       Andrew Mortensen <amortensen@arbor.net>
       Nik Teague <nteague@verisign.com>";

    description
      "This module contains YANG definition for configuring
        identifiers for resources using DOTS data channel.

        Copyright (c) 2017 IETF Trust and the persons identified as
        authors of the code.  All rights reserved.
        Redistribution and use in source and binary forms, with or
        without modification, is permitted pursuant to, and subject
        to the license terms contained in, the Simplified BSD License
        set forth in Section 4.c of the IETF Trust's Legal Provisions
        Relating to IETF Documents
        (http://trustee.ietf.org/license-info).

        This version of this YANG module is part of RFC XXXX; see
        the RFC itself for full legal notices.";

    revision "2017-10-12" {
      description
        "Fix nits and align the module with the signal
                    channel.";
      reference
        "-05";

    }

    revision "2017-08-03" {
      reference
        "https://tools.ietf.org/html/draft-ietf-dots-data-channel";

    }


    container identifier {
      description
        "Top level container for identifiers";
      leaf-list client-identifier {
        type binary;
        description
          "A client identifier conveyed by a DOTS gateway
                               to a remote DOTS server.";
        reference
          "I-D.itef-dots-signal-channel";

      }

      list alias {
        key "alias-name";
        description "List of identifiers";
        leaf alias-name {
          type string;
          description "alias name";
        }

        leaf-list target-ip {
          type inet:ip-address;
          description
            "IPv4 or IPv6 address identifying the target.";
        }

        leaf-list target-prefix {
          type inet:ip-prefix;
          description
            "IPv4 or IPv6 prefix identifying the target.";
        }

        list target-port-range {
          key "lower-port upper-port";
          description
            "Port range. When only lower-port is present,
                            it represents a single port.";
          leaf lower-port {
            type inet:port-number;
            mandatory true;
            description "Lower port number.";
          }

          leaf upper-port {
            type inet:port-number;
            must ". >= ../lower-port" {
              error-message
                "The upper-port must be greater than or
                            equal to lower-port";
            }
            description "Upper port number.";
          }
        }  // list target-port-range

        leaf-list target-protocol {
          type uint8;
          description
            "Identifies the target protocol number.";
          reference
            "https://www.iana.org/assignments/protocol-numbers/
            protocol-numbers.xhtml";

        }

        leaf-list fqdn {
          type inet:domain-name;
          description "FQDN";
        }

        leaf-list uri {
          type inet:uri;
          description "URI";
        }
      }  // list alias
    }  // container identifier
  }  // module ietf-dots-data-channel-identifier