module ieee-types { // XXX namespace to be allocated by IANA namespace "urn:ietf:params:xml:ns:yang:ieee-types"; prefix "ieee"; import yang-types { prefix yang; } organization "YANG Language Design Team"; contact "Martin Bjorklund (Editor)" ; description "This module contains standard derived YANG types for IEEE 802 addresses and related things."; revision 2007-10-02 { description "Initial revision."; } /* * collection of IEEE address type definitions */ typedef mac-address { type yang:phys-address { pattern '([0-9a-fA-F]{2}:){5}[0-9a-fA-F]{2}'; } description "The mac-address type represents an 802 MAC address represented in the `canonical' order defined by IEEE 802.1a, i.e., as if it were transmitted least significant bit first, even though 802.5 (in contrast to other 802.x protocols) requires MAC addresses to be transmitted most significant bit first."; reference "RFC 2579 STD 58"; } /* * collection of IEEE 802 related identifier types */ typedef bridgeid { type string { pattern '[0-9a-fA-F]{4}:' + '([0-9a-fA-F]{2}:){5}[0-9a-fA-F]{2}'; } description "The bridgeid type represents identifers that uniquely identify a bridge. Its first four hexadecimal digits contain a priority value followed by a colon. The remaining characters contain the MAC address used to refer to a bridge in a unique fashion (typically, the numerically smallest MAC address of all ports on the bridge)."; reference "RFC 4188"; } typedef vlanid { type uint16 { range "1..4094"; } description "The vlanid type uniquely identifies a VLAN. This is the 12-bit VLAN-ID used in the VLAN Tag header. The range is defined by the referenced specification."; reference "IEEE Std 802.1Q 2003 Edition, Virtual Bridged Local Area Networks."; } }