type string;
}
+ typedef ietf-acl-entry-ref {
+ description "A reference to an ietf-acl-entry";
+ type instance-identifier;
+ }
+
+ typedef hwvtep-acl-ref {
+ description "A reference to an acl";
+ type instance-identifier;
+ }
+
+ typedef hwvtep-logical-binding-stats-ref {
+ description "A reference to a logical-binding-stats";
+ type instance-identifier;
+ }
+
grouping hwvtep-node-identification {
leaf hwvtep-node-name {
description "The name of the node";
key "local-locator-ref remote-locator-ref";
uses hwvtep-tunnel-attributes ;
}
+ list switch-fault-status {
+ config false;
+ key "switch-fault-status-key";
+ leaf switch-fault-status-key {
+ description "switch-fault-status name/key";
+ type string;
+ }
+ leaf switch-fault-status-value {
+ description "switch-fault-status value";
+ type string;
+ }
+ }
}
grouping hwvtep-connection-info-attributes {
uses hwvtep-mac-table-generic-attributes;
uses hwvtep-mcast-mac-table-attributes;
}
+ list logical-routers {
+ key "hwvtep-node-name";
+ uses hwvtep-logical-router-attributes;
+ }
+ list local-arp-sources {
+ key "src-mac";
+ uses hwvtep-arp-sources-attributes;
+ }
+ list remote-arp-sources {
+ key "src-mac";
+ uses hwvtep-arp-sources-attributes;
+ }
+ list acls {
+ key "acl-name";
+ uses hwvtep-acl-attributes;
+ }
+ list logical-binding-stats {
+ config false;
+ key "logical-binding-stats-uuid";
+ uses hwvtep-logical-binding-stats-attributes;
+ }
}
identity encapsulation-type-base {
type hwvtep-logical-switch-ref;
}
}
+ list acl-bindings {
+ key "acl-binding-vlan-id";
+ leaf acl-binding-vlan-id {
+ description "vlan ids in the range 0 - 4095";
+ type ethertype:vlan-id;
+ }
+ leaf acl-ref {
+ description "reference to ACL to be applied to this port";
+ type hwvtep-acl-ref;
+ }
+ }
+ list vlan-stats {
+ key "vlan-stats-key";
+ leaf vlan-stats-key {
+ description "vlan ids in the range 0 - 4095";
+ type ethertype:vlan-id;
+ }
+ leaf vlan-stats-ref {
+ description "reference to logical binding stats for this port";
+ type hwvtep-logical-binding-stats-ref;
+ }
+ }
+ list port-fault-status {
+ config false;
+ key "port-fault-status-key";
+ leaf port-fault-status-key {
+ description "port-fault-status name/key";
+ type string;
+ }
+ leaf port-fault-status-value {
+ description "port-fault-status value";
+ type string;
+ }
+ }
+ }
+
+ grouping hwvtep-logical-router-attributes {
+ uses hwvtep-node-identification;
+ leaf logical-router-uuid {
+ description "A unique identifier of the logical router";
+ type yang:uuid;
+ }
+ list switch-bindings {
+ description "A map of IPv4 or IPv6 address prefix in CIDR
+ notation to logical switch. Multiple prefixes
+ may map to the same switch. By writing a 32-bit
+ (or 128-bit for v6) address with a /N prefix
+ length, both the router's interface address and the
+ subnet prefix can be configured. For example,
+ 192.68.1.1/24 creates a /24 subnet for the logical
+ switch attached to the interface and assigns the
+ address 192.68.1.1 to the router interface.";
+ leaf destination-address {
+ description "IPv4 or IPv6 address prefix in CIDR notation";
+ type inet:ip-prefix;
+ }
+ leaf logical-switch-ref {
+ description "reference to logical switch";
+ type hwvtep-logical-switch-ref;
+ }
+ }
+ list static-routes {
+ description "map of string-string pairs. One or more static routes,
+ mapping IP prefixes to next hop IP addresses.";
+ leaf destination-address {
+ description "IPv4 or IPv6 address prefix in CIDR notation";
+ type inet:ip-prefix;
+ }
+ leaf nexthop-address {
+ description "IP address of next hop";
+ type inet:ip-address;
+ }
+ }
+ list acl-bindings {
+ description "map of string-ACL pairs. Maps ACLs to logical router
+ interfaces. The router interfaces are indicated
+ using IP address notation, and must be the same
+ interfaces created in the switch_binding column.
+ For example, an ACL could be associated with the
+ logical router interface with an address of
+ 192.68.1.1 as defined in the example above.";
+ key "router-interface";
+ leaf router-interface {
+ description "IPv4 or IPv6 address prefix in CIDR notation";
+ type inet:ip-prefix;
+ }
+ leaf acl-ref {
+ description "reference to ACL to be applied to this router";
+ type hwvtep-acl-ref;
+ }
+ }
+ }
+
+ grouping hwvtep-arp-sources-attributes {
+ description "AP Sources table attributes";
+ leaf arp-sources-uuid {
+ description "The unique identifier of the arp-source";
+ type yang:uuid;
+ }
+ leaf src-mac {
+ description "Source mac to be used by given tep";
+ type inet:ip-address;
+ }
+ uses hwvtep-physical-locator-attributes;
+ }
+
+ grouping hwvtep-acl-entry-attributes {
+ description "ACL Entry attributes";
+ leaf sequence {
+ description "integer. Sequence number for ACL entry";
+ type uint32 {
+ range "0..max";
+ }
+ }
+ leaf acl-entry-uuid {
+ description "The unique identifier of the acl-entry";
+ type yang:uuid;
+ }
+ leaf acl-entry-ref {
+ type ietf-acl-entry-ref;
+ }
+ list acle-fault-status {
+ config false;
+ key "acle-fault-status-key";
+ leaf acle-fault-status-key {
+ description "acle-fault-status name/key";
+ type string;
+ }
+ leaf acle-fault-status-value {
+ description "acle-fault-status value: can be empty/None";
+ type string;
+ }
+ }
+ }
+
+ grouping hwvtep-acl-attributes {
+ description "ACL attributes";
+ leaf acl-name {
+ description "Name of the ACL";
+ type string;
+ }
+ leaf acl-uuid {
+ description "The unique identifier of the acl";
+ type yang:uuid;
+ }
+ list acl-entries {
+ uses hwvtep-acl-entry-attributes;
+ }
+ list acl-fault-status {
+ config false;
+ key "acl-fault-status-key";
+ leaf acl-fault-status-key {
+ description "acl-fault-status name/key";
+ type string;
+ }
+ leaf acl-fault-status-value {
+ description "acl-fault-status value: can be empty/None";
+ type hwvtep-acl-ref;
+ }
+ }
+ }
+
+ grouping hwvtep-logical-binding-stats-attributes {
+ leaf logical-binding-stats-uuid {
+ description "A unique identifier of the logical binding stats";
+ type yang:uuid;
+ }
+ leaf packets-from-local {
+ description "integer";
+ type uint32;
+ }
+ leaf bytes-from-local {
+ description "integer";
+ type uint32;
+ }
+ leaf packets-to-local {
+ description "integer";
+ type uint32;
+ }
+ leaf bytes-to-local {
+ description "integer";
+ type uint32;
+ }
}
augment "/topo:network-topology/topo:topology/topo:node" {