openconfig-network-instance-types

Types associated with a network instance

  • Version: 2016-12-15

    openconfig-network-instance-types@2016-12-15


    
      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 "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.5.0";
    
        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 2 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";
        }
    
        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 {
              pattern
                '(65[0-5][0-3][0-5]|[1-5][1-5][0-9][0-9][0-9]|[1-9]?[1-9]?[0-9][0-9]|[1-9]):(4[0-2][0-9][0-4][0-9][0-6][0-7][0-2][0-9][0-5]|[0-3][0-9]{9}|[1-9][0-9]{1,8}|[1-9])';
            }
            type string {
              pattern
                '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]):(65[0-5][0-3][0-5]|[1-5][1-5][0-9][0-9][0-9]|[1-9]?[1-9]?[0-9][0-9]|[1-9])';
            }
            type string {
              pattern
                '(4[0-2][0-9][0-4][0-9][0-6][0-7][0-2][0-9][0-5]|[0-3][0-9]{9}|[1-9][0-9]{1,8}|[1-9]):(65[0-5][0-3][0-5]|[1-5]{2}[0-9]{3}|[1-9]{0,2}[0-9][0-9]|[1-9])';
            }
          }
          description
            "A route distinguisher value";
          reference
            "RFC4364";
    
        }
      }  // module openconfig-network-instance-types
    

© 2023 YumaWorks, Inc. All rights reserved.