Cisco-IOS-XR-flowspec-cfg

This module contains a collection of YANG definitions for Cisco IOS-XR flowspec package configuration. This module contains def...

  • Version: 2019-04-05

    Cisco-IOS-XR-flowspec-cfg@2019-04-05


    
      module Cisco-IOS-XR-flowspec-cfg {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-flowspec-cfg";
    
        prefix flowspec-cfg;
    
        import Cisco-IOS-XR-types {
          prefix xr;
        }
        import cisco-semver {
          prefix semver;
        }
        import Cisco-IOS-XR-ifmgr-cfg {
          prefix a1;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
         
         Postal: 170 West Tasman Drive
         San Jose, CA 95134
         
         Tel: +1 800 553-NETS
         
         E-mail: cs-yang@cisco.com";
    
        description
          "This module contains a collection of YANG definitions
         for Cisco IOS-XR flowspec package configuration.
         
         This module contains definitions
         for the following management objects:
           flow-spec: FlowSpec configuration
         
         This YANG module augments the
           Cisco-IOS-XR-ifmgr-cfg
         module with configuration data.
         
         Copyright (c) 2013-2019 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2015-11-09" {
          description "IOS XR 6.0 revision.";
        }
    
        semver:module-version "1.0.0";
    
        typedef Fs-vrf-af {
          type enumeration {
            enum "ipv4" {
              value 1;
              description "IPv4 FlowSpec";
            }
            enum "ipv6" {
              value 2;
              description "IPv6 FlowSpec";
            }
          }
          description "Fs vrf af";
        }
    
        typedef Fs-af-p {
          type enumeration {
            enum "pbr" {
              value 2;
              description "PBR policy type";
            }
          }
          description "Fs af p";
        }
    
        typedef Fs-addf {
          type enumeration {
            enum "ipv4" {
              value 1;
              description "IPv4 FlowSpec";
            }
            enum "ipv6" {
              value 2;
              description "IPv6 FlowSpec";
            }
          }
          description "Fs addf";
        }
    
        typedef Fs-vrf-af-p {
          type enumeration {
            enum "pbr" {
              value 2;
              description "PBR policy type";
            }
          }
          description "Fs vrf af p";
        }
    
        augment /a1:interface-configurations/a1:interface-configuration {
          description
            "This augment extends the configuration data of
           'Cisco-IOS-XR-ifmgr-cfg'";
          container ipv4-flow-spec {
            description
              "Flowspec on IPv4 interface";
            leaf enabled {
              type empty;
              description
                "Disable FlowSpec on this interface";
            }
          }  // container ipv4-flow-spec
        }
    
        augment /a1:interface-configurations/a1:interface-configuration {
          description
            "This augment extends the configuration data of
           'Cisco-IOS-XR-ifmgr-cfg'";
          container ipv6-flow-spec {
            description
              "Flowspec on IPv6 interface";
            leaf enabled {
              type empty;
              description
                "Disable flowspec on interface";
            }
          }  // container ipv6-flow-spec
        }
    
        container flow-spec {
          description "FlowSpec configuration";
          container afs {
            description "Table of AF";
            list af {
              key "af-name";
              description
                "Address Family Identifier Type (IPv4/IPv6)";
              container service-policies {
                description
                  "Table of ServicePolicy";
                list service-policy {
                  key "policy-type policy-name";
                  description
                    "Service Policy configuration";
                  leaf policy-type {
                    type Fs-af-p;
                    description
                      "Choose the Policy type";
                  }
    
                  leaf policy-name {
                    type xr:Cisco-ios-xr-string;
                    description
                      "Policy map name";
                  }
    
                  leaf local {
                    type boolean;
                    mandatory true;
                    description
                      "Set constant integer";
                  }
                }  // list service-policy
              }  // container service-policies
    
              leaf interface-all {
                type empty;
                description
                  "Install FlowSpec policy on all interfaces";
              }
    
              leaf af-name {
                type Fs-addf;
                description "AFI type";
              }
            }  // list af
          }  // container afs
    
          container vrfs {
            description "Table of VRF";
            list vrf {
              key "vrf-name";
              description "VRF configuration";
              container afs {
                description "Table of AF";
                list af {
                  key "af-name";
                  description
                    "Address Family Identifier Type (IPv4/IPv6)";
                  container service-policies {
                    description
                      "Table of ServicePolicy";
                    list service-policy {
                      key "policy-type policy-name";
                      description
                        "Service Policy configuration";
                      leaf policy-type {
                        type Fs-af-p;
                        description
                          "Choose the Policy type";
                      }
    
                      leaf policy-name {
                        type xr:Cisco-ios-xr-string;
                        description
                          "Policy map name";
                      }
    
                      leaf local {
                        type boolean;
                        mandatory true;
                        description
                          "Set constant integer";
                      }
                    }  // list service-policy
                  }  // container service-policies
    
                  leaf interface-all {
                    type empty;
                    description
                      "Install FlowSpec policy on all interfaces";
                  }
    
                  leaf af-name {
                    type Fs-vrf-af;
                    description "AFI type";
                  }
                }  // list af
              }  // container afs
    
              leaf vrf-name {
                type xr:Cisco-ios-xr-string {
                  length "1..32";
                }
                description "VRF Name";
              }
            }  // list vrf
          }  // container vrfs
    
          leaf enable {
            type empty;
            description
              "Enable FlowSpec configuration. Deletion of this
             object also causes deletion of all associated
             objects under FlowSpec.";
          }
    
          leaf interface-all {
            type empty;
            description
              "Install FlowSpec policy on all interfaces";
          }
        }  // container flow-spec
      }  // module Cisco-IOS-XR-flowspec-cfg
    

© 2023 YumaWorks, Inc. All rights reserved.