mirror of
https://github.com/kernelkit/infix.git
synced 2026-07-31 04:53:01 +02:00
Remove ietf-if-vlan-encapsulation, it is replaced by infix-if-vlan
This is a followup for 941fc3158
This commit is contained in:
@@ -1,155 +0,0 @@
|
||||
module ietf-if-vlan-encapsulation {
|
||||
yang-version 1.1;
|
||||
namespace "urn:ietf:params:xml:ns:yang:ietf-if-vlan-encapsulation";
|
||||
prefix if-vlan;
|
||||
|
||||
import ietf-interfaces {
|
||||
prefix if;
|
||||
reference
|
||||
"RFC 8343: A YANG Data Model For Interface Management";
|
||||
}
|
||||
|
||||
import iana-if-type {
|
||||
prefix ianaift;
|
||||
reference
|
||||
"RFC 7224: IANA Interface Type YANG Module";
|
||||
}
|
||||
|
||||
import ieee802-dot1q-types {
|
||||
prefix dot1q-types;
|
||||
revision-date 2022-10-29;
|
||||
reference
|
||||
"IEEE Std 802.1Q-2022: IEEE Standard for Local and
|
||||
metropolitan area networks -- Bridges and Bridged Networks";
|
||||
}
|
||||
|
||||
import ietf-if-extensions {
|
||||
prefix if-ext;
|
||||
reference
|
||||
"RFC XXXX: Common Interface Extension YANG Data Models";
|
||||
}
|
||||
|
||||
organization
|
||||
"IETF NETMOD (NETCONF Data Modeling Language) Working Group";
|
||||
|
||||
contact
|
||||
"WG Web: <http://tools.ietf.org/wg/netmod/>
|
||||
WG List: <mailto:netmod@ietf.org>
|
||||
|
||||
Editor: Robert Wilton
|
||||
<mailto:rwilton@cisco.com>";
|
||||
|
||||
description
|
||||
"This YANG module models configuration to classify IEEE 802.1Q
|
||||
VLAN tagged Ethernet traffic by exactly matching the tag type
|
||||
and VLAN identifier of one or two 802.1Q VLAN tags in the frame.
|
||||
|
||||
Copyright (c) 2023 IETF Trust and the persons identified as
|
||||
authors of the code. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or
|
||||
without modification, is permitted pursuant to, and subject to
|
||||
the license terms contained in, the Revised BSD License set
|
||||
forth in Section 4.c of the IETF Trust's Legal Provisions
|
||||
Relating to IETF Documents
|
||||
(https://trustee.ietf.org/license-info).
|
||||
|
||||
This version of this YANG module is part of RFC XXXX
|
||||
(https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
|
||||
for full legal notices.
|
||||
|
||||
The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
|
||||
NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
|
||||
'MAY', and 'OPTIONAL' in this document are to be interpreted as
|
||||
described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
|
||||
they appear in all capitals, as shown here.";
|
||||
|
||||
revision 2023-01-26 {
|
||||
description
|
||||
"Latest draft revision";
|
||||
reference
|
||||
"RFC XXXX: Sub-interface VLAN YANG Data Models";
|
||||
}
|
||||
|
||||
augment "/if:interfaces/if:interface/if-ext:encapsulation/"
|
||||
+ "if-ext:encaps-type" {
|
||||
when "derived-from-or-self(../if:type,
|
||||
'ianaift:ethernetCsmacd') or
|
||||
derived-from-or-self(../if:type,
|
||||
'ianaift:ieee8023adLag') or
|
||||
derived-from-or-self(../if:type, 'ianaift:l2vlan') or
|
||||
derived-from-or-self(../if:type,
|
||||
'if-ext:ethSubInterface')" {
|
||||
description
|
||||
"Applies only to Ethernet-like interfaces and
|
||||
sub-interfaces.";
|
||||
}
|
||||
|
||||
description
|
||||
"Augment the generic interface encapsulation with basic 802.1Q
|
||||
VLAN tag classifications";
|
||||
|
||||
case dot1q-vlan {
|
||||
container dot1q-vlan {
|
||||
|
||||
description
|
||||
"Classifies 802.1Q VLAN tagged Ethernet frames to a
|
||||
sub-interface (or interface) by exactly matching the
|
||||
number of tags, tag type(s) and VLAN identifier(s).
|
||||
|
||||
Only frames matching the classification configured on a
|
||||
sub-interface/interface are processed on that
|
||||
sub-interface/interface.
|
||||
|
||||
Frames that do not match any sub-interface are processed
|
||||
directly on the parent interface, if it is associated with
|
||||
a forwarding instance, otherwise they are dropped.";
|
||||
|
||||
container outer-tag {
|
||||
must 'tag-type = "dot1q-types:s-vlan" or '
|
||||
+ 'tag-type = "dot1q-types:c-vlan"' {
|
||||
|
||||
error-message
|
||||
"Only C-VLAN and S-VLAN tags can be matched.";
|
||||
|
||||
description
|
||||
"For IEEE 802.1Q interoperability, only C-VLAN and
|
||||
S-VLAN tags are matched.";
|
||||
}
|
||||
|
||||
description
|
||||
"Specifies the VLAN tag values to match against the
|
||||
outermost (first) 802.1Q VLAN tag in the frame.";
|
||||
|
||||
uses dot1q-types:dot1q-tag-classifier-grouping;
|
||||
}
|
||||
|
||||
container second-tag {
|
||||
must '../outer-tag/tag-type = "dot1q-types:s-vlan" and '
|
||||
+ 'tag-type = "dot1q-types:c-vlan"' {
|
||||
|
||||
error-message
|
||||
"When matching two 802.1Q VLAN tags, the outermost
|
||||
(first) tag in the frame MUST be specified and be of
|
||||
S-VLAN type and the second tag in the frame must be of
|
||||
C-VLAN tag type.";
|
||||
|
||||
description
|
||||
"For IEEE 802.1Q interoperability, when matching two
|
||||
802.1Q VLAN tags, it is REQUIRED that the outermost
|
||||
tag exists and is an S-VLAN, and the second tag is a
|
||||
C-VLAN.";
|
||||
}
|
||||
|
||||
presence "Classify frames that have two 802.1Q VLAN tags.";
|
||||
|
||||
description
|
||||
"Specifies the VLAN tag values to match against the
|
||||
second outermost 802.1Q VLAN tag in the frame.";
|
||||
|
||||
uses dot1q-types:dot1q-tag-classifier-grouping;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user