X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=inline;f=opendaylight%2Fsal%2Fyang-prototype%2Fsal%2Fmodel%2Fmodel-flow-base%2Fsrc%2Fmain%2Fyang%2Fopendaylight-flow-base.yang;fp=opendaylight%2Fsal%2Fyang-prototype%2Fsal%2Fmodel%2Fmodel-flow-base%2Fsrc%2Fmain%2Fyang%2Fopendaylight-flow-base.yang;h=0000000000000000000000000000000000000000;hb=a42feab86ce480cf505f9cb43f1aed0420631ee0;hp=443d82f2e42bd13083ace2889b25574d46246fd1;hpb=d07c39a5f9e77c8e6f4293ee23eae53b7d6b525c;p=controller.git diff --git a/opendaylight/sal/yang-prototype/sal/model/model-flow-base/src/main/yang/opendaylight-flow-base.yang b/opendaylight/sal/yang-prototype/sal/model/model-flow-base/src/main/yang/opendaylight-flow-base.yang deleted file mode 100644 index 443d82f2e4..0000000000 --- a/opendaylight/sal/yang-prototype/sal/model/model-flow-base/src/main/yang/opendaylight-flow-base.yang +++ /dev/null @@ -1,288 +0,0 @@ -module opendaylight-flow-base { - namespace "urn:opendaylight:flow:base"; - prefix "flowbase"; - - import yang-ext {prefix ext;} - import ietf-inet-types {prefix inet;} - import ietf-yang-types {prefix yang;} - import opendaylight-inventory {prefix inv;} - import opendaylight-l2-types {prefix l2t;} - - revision "2013-08-19" { - description "Initial revision of flow service"; - } - - /** Match Groupings **/ - grouping "ethernet-match-fields" { - container ethernet-source { - //description "Ethernet source address."; - //presence "Match field is active and set"; - leaf address { - mandatory true; - type yang:mac-address; - } - leaf mask { - type binary; - } - } - container ethernet-destination { - description "Ethernet destination address."; - presence "Match field is active and set"; - leaf address { - mandatory true; - type yang:mac-address; - } - } - container ethernet-type { - description "Ethernet frame type."; - presence "Match field is active and set"; - - leaf type { - mandatory true; - type l2t:ether-type; // Needs to define that as general model - } - leaf mask { - type binary; - } - } - } - - grouping "vlan-match-fields" { - container vlan-id { - description "VLAN id."; - presence "Match field is active and set"; - - leaf vlan-id { - mandatory true; - type l2t:vlan-id; - } - leaf mask { - type binary; - } - } - leaf vlan-pcp { - description "VLAN priority."; - type l2t:vlan-pcp; - } - - - } - - grouping "ip-match-fields" { - leaf ip-protocol { - description "IP protocol."; - type uint8; // TODO define IP protocol number - } - - leaf ip-dscp { - description "IP DSCP (6 bits in ToS field)."; - type inet:dscp; // TODO: Define DSCP type - } - leaf ip-ecn { - description "IP ECN (2 bits in ToS field)."; - type uint8; // TODO define ECN - } - } - - grouping "ipv4-match-fields" { - leaf ipv4-source { - description "IPv4 source address."; - type inet:ipv4-prefix; - } - leaf ipv4-destination { - description "IPv4 destination address."; - type inet:ipv4-prefix; - } - } - - grouping "ipv6-match-fields" { - leaf ipv6-source { - description "IPv6 source address."; - type inet:ipv6-prefix; - } - leaf ipv6-destination { - description "IPv6 destination address."; - type inet:ipv6-prefix; - } - } - - - grouping "udp-match-fields" { - leaf udp-source-port { - description "UDP source port."; - type inet:port-number; - } - leaf udp-destination-port { - description "UDP destination port."; - type inet:port-number; - } - } - - grouping "tcp-match-fields" { - leaf tcp-source-port { - description "TCP source port."; - type inet:port-number; - } - leaf tcp-destination-port { - description "TCP destination port."; - type inet:port-number; - } - } - - grouping "sctp-match-fields" { - leaf sctp-source-port { - description "SCTP source port."; - type inet:port-number; - } - leaf sctp-destination-dst { - description "SCTP destination port."; - type inet:port-number; - } - } - - grouping "icmpv4-match-fields" { - leaf icmpv4-type { - description "ICMP type."; - type uint8; // Define ICMP Type - } - description "ICMP code."; - leaf icmpv4-code { - type uint8; // Define ICMP Code - } - } - - grouping "arp-match-fields" { - leaf arp-source-transport-address { - description "ARP source IPv4 address."; - type inet:ipv4-prefix; - } - - leaf arp-target-transport-address { - description "ARP target IPv4 address."; - type inet:ipv4-prefix; - } - container arp-source-hardware-address { - description "ARP source hardware address."; - presence "Match field is active and set"; - leaf address { - mandatory true; - type yang:mac-address; - } - leaf mask { - type binary; - } - } - container arp-target-hardware-address { - description "ARP target hardware address."; - presence "Match field is active and set"; - leaf address { - mandatory true; - type yang:mac-address; - } - leaf mask { - type binary; - } - } - } - - grouping action { - choice action { - case output-action { - leaf output-node-connector { - type string; - } - } - - case controller-action { - leaf max-length { - type uint16 { - range "0..65294"; - } - } - } - - case set-queue-action { - leaf queue { - type string; // TODO: define queues - } - } - - case pop-mpls-action { - container pop-mpls { - leaf ethernet-type { - type uint16; // TODO: define ethertype type - } - } - } - - case set-mpls-ttl-action { - leaf mpls-ttl { - type uint8; - } - } - - case set-nw-ttl-action { - leaf nw-ttl { - type uint8; - } - } - - case push-pbb-action { - - } - - case push-mpls-action { - - } - - case push-vlan-action { - - } - } - } - - grouping flow { - leaf node { - type inv:node-id; - } - container match { - container "ethernet-match" { - uses "ethernet-match-fields"; - } - container "vlan-match" { - uses "vlan-match-fields"; - } - container "ip-match" { - uses "ip-match-fields"; - } - container "ipv4-match" { - uses "ipv4-match-fields"; - } - container "ipv6-match" { - uses "ipv6-match-fields"; - } - container "udp-match" { - uses "udp-match-fields"; - } - container "tcp-match" { - uses "tcp-match-fields"; - } - container "sctp-match" { - uses "sctp-match-fields"; - } - container "icmpv4-match" { - uses "icmpv4-match-fields"; - } - container "arp-match" { - uses "arp-match-fields"; - } - } - list action { - key "order"; - leaf order { - type int32; - } - uses action; - } - } -} \ No newline at end of file