Version: 2014-06-25
module packet-fields { yang-version 1; namespace "urn:ietf:params:xml:ns:yang:packet-fields"; prefix packet-fields; import ietf-inet-types { prefix inet; } import ietf-yang-types { prefix yang; } revision "2014-06-25" { description "Initial version of packet fields used by access-lists"; } grouping acl-transport-header-fields { description "Transport header fields"; container source-port-range { description "inclusive range of source ports"; leaf lower-port { type inet:port-number; mandatory true; } leaf upper-port { type inet:port-number; } } // container source-port-range container destination-port-range { description "inclusive range of destination ports"; leaf lower-port { type inet:port-number; mandatory true; } leaf upper-port { type inet:port-number; } } // container destination-port-range } // grouping acl-transport-header-fields grouping acl-ip-header-fields { description "Header fields common to ipv4 and ipv6"; uses acl-transport-header-fields; leaf dscp { type inet:dscp; } leaf ip-protocol { type uint8; } } // grouping acl-ip-header-fields grouping acl-ipv4-header-fields { description "fields in IPv4 header"; leaf destination-ipv4-address { type inet:ipv4-prefix; } leaf source-ipv4-address { type inet:ipv4-prefix; } } // grouping acl-ipv4-header-fields grouping acl-ipv6-header-fields { description "fields in IPv6 header"; leaf destination-ipv6-address { type inet:ipv6-prefix; } leaf source-ipv6-address { type inet:ipv6-prefix; } leaf flow-label { type inet:ipv6-flow-label; } } // grouping acl-ipv6-header-fields grouping acl-eth-header-fields { description "fields in ethernet header"; leaf destination-mac-address { type yang:mac-address; } leaf destination-mac-address-mask { type yang:mac-address; } leaf source-mac-address { type yang:mac-address; } leaf source-mac-address-mask { type yang:mac-address; } } // grouping acl-eth-header-fields grouping timerange { description "Define time range entries to restrict the access. The time range is identified by a name and then referenced by a function, so that those time restrictions are imposed on the function itself."; container absolute { description "Absolute time and date that the associated function starts going into effect."; leaf start { type yang:date-and-time; description "Start time and date"; } leaf end { type yang:date-and-time; description "Absolute end time and date"; } leaf active { type boolean; default "true"; description "Specify the associated function active or inactive state when starts going into effect"; } } // container absolute } // grouping timerange grouping metadata { description "Fields associated with a packet but not in the header"; leaf input-interface { type string; description "Packet was received on this interface"; } uses timerange; } // grouping metadata } // module packet-fields
© 2023 YumaWorks, Inc. All rights reserved.