openconfig-network-instance-types

Types associated with a network instance

  • Version: 2021-07-14

    openconfig-network-instance-types@2021-07-14


    
      module openconfig-network-instance-types {
    
        yang-version 1;
    
        namespace
          "http://openconfig.net/yang/network-instance-types";
    
        prefix oc-ni-types;
    
        import openconfig-extensions {
          prefix oc-ext;
        }
    
        organization "OpenConfig working group";
    
        contact
          "OpenConfig working group
    www.openconfig.net";
    
        description
          "Types associated with a network instance";
    
        revision "2021-07-14" {
          description
            "Use auto-generated regex for route-distinguisher pattern statements";
          reference
            "0.9.3";
    
        }
    
        revision "2021-06-16" {
          description
            "Remove trailing whitespace";
          reference
            "0.9.2";
    
        }
    
        revision "2021-05-21" {
          description "Add support for evpn";
          reference
            "0.9.1";
    
        }
    
        revision "2021-03-03" {
          description
            "Fix route-distinguisher's pattern statement, and remove the regexp-posix
    extension, which makes pattern statements conform to the YANG standard.";
          reference
            "0.9.0";
    
        }
    
        revision "2020-06-30" {
          description
            "Add OpenConfig POSIX pattern extensions.";
          reference
            "0.8.3";
    
        }
    
        revision "2018-11-21" {
          description
            "Add OpenConfig module metadata extensions.";
          reference
            "0.8.2";
    
        }
    
        revision "2017-08-24" {
          description "Minor formatting fixes";
          reference
            "0.8.1";
    
        }
    
        revision "2017-02-28" {
          description
            "Add OSPFv2 to network instance";
          reference
            "0.8.0";
    
        }
    
        revision "2017-01-26" {
          description
            "Add policy forwarding to network instance";
          reference
            "0.7.0";
    
        }
    
        revision "2017-01-13" {
          description
            "Add AFT to the network instance";
          reference
            "0.6.0";
    
        }
    
        revision "2016-12-15" {
          description
            "Add segment routing to network instance";
          reference
            "0.5.0";
    
        }
    
        revision "2016-11-10" {
          description
            "Update model to include IS-IS.";
          reference
            "0.4.1";
    
        }
    
        revision "2016-10-12" {
          description "Update table connections";
          reference
            "0.4.0";
    
        }
    
        revision "2016-09-28" {
          description
            "Change L2 instance to submodule; add MAC table";
          reference
            "0.3.0";
    
        }
    
        revision "2016-08-11" {
          description
            "Resolve repeated container names in routing protocols";
          reference
            "0.2.3";
    
        }
    
        revision "2016-07-08" {
          description
            "Updated with refactored routing protocol models";
          reference
            "0.2.1";
    
        }
    
        revision "2016-03-29" {
          description "Initial revision";
          reference
            "0.2.0";
    
        }
    
        revision "2015-10-18" {
          description "Initial revision";
          reference
            "0.1.0";
    
        }
    
        oc-ext:openconfig-version "0.9.3";
        oc-ext:catalog-organization "openconfig";
        oc-ext:origin "openconfig";
    
        identity NETWORK_INSTANCE_TYPE {
          description
            "A base identity which can be extended to indicate different
    types of network instance supported by a device.";
        }
    
        identity DEFAULT_INSTANCE {
          base NETWORK_INSTANCE_TYPE;
          description
            "A special routing instance which acts as the 'default' or
    'global' routing instance for a network device.";
        }
    
        identity L3VRF {
          base NETWORK_INSTANCE_TYPE;
          description
            "A private Layer 3 only routing instance which is formed of
    one or more RIBs";
        }
    
        identity L2VSI {
          base NETWORK_INSTANCE_TYPE;
          description
            "A private Layer 2 only switch instance which is formed of
    one or more L2 forwarding tables";
        }
    
        identity L2P2P {
          base NETWORK_INSTANCE_TYPE;
          description
            "A private Layer 2 only forwarding instance which acts as
    a point to point connection between two endpoints";
        }
    
        identity L2L3 {
          base NETWORK_INSTANCE_TYPE;
          description
            "A private Layer 2 and Layer 3 forwarding instance";
        }
    
        identity ENDPOINT_TYPE {
          description
            "Specification of the type of endpoint that is being associated
    with a network instance";
        }
    
        identity LOCAL {
          base ENDPOINT_TYPE;
          description
            "A local interface which is being associated with the endpoint.
    In addition, the LOCAL endpoint can be used with the VXLAN
    attributes to define a VXLAN tunnel end-point interface.";
        }
    
        identity REMOTE {
          base ENDPOINT_TYPE;
          description
            "A remote interface which is being associated with the
    endpoint";
        }
    
        identity LABEL_ALLOCATION_MODE {
          description
            "Base identity to be used to express types of label allocation
    strategies to be used within a network instance";
        }
    
        identity PER_PREFIX {
          base LABEL_ALLOCATION_MODE;
          description
            "A label is to be allocated per prefix entry in the RIB for the
    network instance";
        }
    
        identity PER_NEXTHOP {
          base LABEL_ALLOCATION_MODE;
          description
            "A label is to be allocated per nexthop entry in the RIB for
    the network instance";
        }
    
        identity INSTANCE_LABEL {
          base LABEL_ALLOCATION_MODE;
          description
            "A single label is to be used for the instance";
        }
    
        identity ENCAPSULATION {
          description
            "On the wire encapsulations that can be used when
    differentiating network instances";
        }
    
        identity MPLS {
          base ENCAPSULATION;
          description
            "Use MPLS labels to distinguish network instances on the wire";
        }
    
        identity VXLAN {
          base ENCAPSULATION;
          description
            "Use VXLAN (RFC7348) VNIs to distinguish network instances on
    the wire";
        }
    
        identity SIGNALLING_PROTOCOL {
          description
            "The signalling protocol that should be used to diseminate
    entries within a forwarding instance";
        }
    
        identity LDP {
          base SIGNALLING_PROTOCOL;
          description
            "Use LDP-based setup for signalling. Where the instance is
    a point-to-point service this refers to RFC4447 ('Martini')
    setup. Where the service is an L2VSI, or L2L3 instance it
    refers to RFC4762 LDP-signalled VPLS instances";
        }
    
        identity BGP_VPLS {
          base SIGNALLING_PROTOCOL;
          description
            "Use BGP-based signalling and autodiscovery for VPLS instances
    as per RFC4761";
        }
    
        identity BGP_EVPN {
          base SIGNALLING_PROTOCOL;
          description
            "Use BGP-based Ethernet VPN (RFC7432) based signalling for
    the network instance";
        }
    
        typedef route-distinguisher {
          type union {
            type string {
              oc-ext:posix-pattern "^(([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]):([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5]))$";
              pattern
                '([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]):([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5])';
            }
            type string {
              oc-ext:posix-pattern "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}:([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]))$";
              pattern
                '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}:([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])';
            }
            type string {
              oc-ext:posix-pattern "^(([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5]):([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]))$";
              pattern
                '([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5]):([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])';
            }
          }
          description
            "A route distinguisher value";
          reference
            "RFC4364";
    
        }
      }  // module openconfig-network-instance-types
    

© 2023 YumaWorks, Inc. All rights reserved.