All Downloads are FREE. Search and download functionalities are using the official Maven repository.

[email protected] Maven / Gradle / Ivy

There is a newer version: 0.16.4
Show newest version
/*
 * Copyright (c) 2017 Intel Corporation.  All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
 * and is available at http://www.eclipse.org/legal/epl-v10.html
 */

module neutron-tapaas {
    yang-version 1;
    namespace "urn:opendaylight:neutron-tapaas";
    prefix neutron-tapaas;

    import ietf-yang-types { prefix "yang"; }
    import neutron-attrs    { prefix "attrs"; }

    organization "OpenDaylight Neutron Northbound Project";

    contact "Neutron Northbound ";

    description " This YANG module defines Openstack Neutron Tap-as-a-Service(Taas) Model.
                  The model is based on the REST APIs exposed by the trunk service of Neutron version 2.
                  description of the REST API is located in inside the specification for tap-as-a-service
                  (https://github.com/openstack/tap-as-a-service/blob/master/specs/mitaka/tap-as-a-service.rst)";

    revision "2017-10-24" {
        description
            "OpenStack Neutron Tap as a service - Version 1.";
    }

    identity direction-base {
        description "Base for defining direction of traffic";
    }

    identity direction-in {
        description "Traffic arriving at Source Port";
        base direction-base;
    }

    identity direction-out {
        description "Traffic leaving Source Port";
        base direction-base;
    }

    identity direction-both {
        description "Both Directions are mirrored";
        base direction-base;
    }

    grouping tap-flow-attributes {
        description "Grouping for Tap Flow";
        leaf tap-service-id {
            type yang:uuid;
            description "UUID of the Tap Service Instance";
        }
        leaf source-port {
            type yang:uuid;
            description "Source port of traffic ";
        }
        leaf direction {
            type identityref {
                base "direction-base";
            }
            description "Direction of traffic";
        }
    }

    grouping tap-service-attributes {
        description "Grouping for Tap Service";
        leaf port-id {
            type yang:uuid;
            description "Destination port for traffic";
        }
        container tap-flows {
            list tap-flow {
                key uuid;
                uses attrs:base-attributes;
                uses tap-flow-attributes;
                description "Tap Flow container";
            }
        }
    }

    grouping tap-services-attributes {
        container tap-services {
            list tap-service {
                key uuid;
                uses attrs:base-attributes;
                uses tap-service-attributes;
                description "Tap Services Container which includes Tap Flow";
            }
        }
        container tap-services-status {
            config false;
            list tap-service-status {
                key "tap-service";
                leaf tap-service {
                    type yang:uuid;
                    description "UUID of the Tap Service Instance";
                }
                leaf status {
                    type string;
                    description "Operational parameter to track status";
                }
            }
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy