blob: 5cd52648ff9b676dc04a98b5b85bd180f88f8a6e [file] [log] [blame]
Tomáš Pecka73a13cc2020-11-17 11:12:19 +01001module iana-hardware {
2 yang-version 1.1;
3 namespace "urn:ietf:params:xml:ns:yang:iana-hardware";
4 prefix ianahw;
5
6 organization "IANA";
7 contact
8 " Internet Assigned Numbers Authority
9
10 Postal: ICANN
11 12025 Waterfront Drive, Suite 300
12 Los Angeles, CA 90094-2536
13 United States of America
14
15 Tel: +1 310 301 5800
16 E-Mail: iana@iana.org>";
17
18 description
19 "IANA-defined identities for hardware class.
20
21 The latest revision of this YANG module can be obtained from
22 the IANA website.
23
24 Requests for new values should be made to IANA via
25 email (iana@iana.org).
26
27 Copyright (c) 2018 IETF Trust and the persons identified as
28 authors of the code. All rights reserved.
29
30 Redistribution and use in source and binary forms, with or
31 without modification, is permitted pursuant to, and subject
32 to the license terms contained in, the Simplified BSD License
33
34 set forth in Section 4.c of the IETF Trust's Legal Provisions
35 Relating to IETF Documents
36 (https://trustee.ietf.org/license-info).
37
38 The initial version of this YANG module is part of RFC 8348;
39 see the RFC itself for full legal notices.";
40 reference
41 "https://www.iana.org/assignments/yang-parameters";
42
43 revision 2018-03-13 {
44 description
45 "Initial revision.";
46 reference
47 "RFC 8348: A YANG Data Model for Hardware Management";
48 }
49
50 /*
51 * Identities
52 */
53
54 identity hardware-class {
55 description
56 "This identity is the base for all hardware class
57 identifiers.";
58 }
59
60 identity unknown {
61 base ianahw:hardware-class;
62 description
63 "This identity is applicable if the hardware class is unknown
64 to the server.";
65 }
66
67 identity chassis {
68 base ianahw:hardware-class;
69 description
70 "This identity is applicable if the hardware class is an
71 overall container for networking equipment. Any class of
72 physical component, except a stack, may be contained within a
73 chassis; a chassis may only be contained within a stack.";
74 }
75
76 identity backplane {
77 base ianahw:hardware-class;
78 description
79 "This identity is applicable if the hardware class is some sort
80 of device for aggregating and forwarding networking traffic,
81 such as a shared backplane in a modular ethernet switch. Note
82 that an implementation may model a backplane as a single
83 physical component, which is actually implemented as multiple
84 discrete physical components (within a chassis or stack).";
85 }
86
87 identity container {
88 base ianahw:hardware-class;
89 description
90 "This identity is applicable if the hardware class is capable
91 of containing one or more removable physical entities,
92 possibly of different types. For example, each (empty or
93 full) slot in a chassis will be modeled as a container. Note
94 that all removable physical components should be modeled
95 within a container component, such as field-replaceable
96 modules, fans, or power supplies. Note that all known
97 containers should be modeled by the agent, including empty
98 containers.";
99 }
100
101 identity power-supply {
102 base ianahw:hardware-class;
103 description
104 "This identity is applicable if the hardware class is a
105 power-supplying component.";
106 }
107
108 identity fan {
109 base ianahw:hardware-class;
110 description
111 "This identity is applicable if the hardware class is a fan or
112 other heat-reduction component.";
113 }
114
115 identity sensor {
116 base ianahw:hardware-class;
117 description
118 "This identity is applicable if the hardware class is some sort
119 of sensor, such as a temperature sensor within a router
120 chassis.";
121 }
122
123 identity module {
124 base ianahw:hardware-class;
125 description
126 "This identity is applicable if the hardware class is some sort
127 of self-contained sub-system. If a module component is
128 removable, then it should be modeled within a container
129
130 component; otherwise, it should be modeled directly within
131 another physical component (e.g., a chassis or another
132 module).";
133 }
134
135 identity port {
136 base ianahw:hardware-class;
137 description
138 "This identity is applicable if the hardware class is some sort
139 of networking port capable of receiving and/or transmitting
140 networking traffic.";
141 }
142
143 identity stack {
144 base ianahw:hardware-class;
145 description
146 "This identity is applicable if the hardware class is some sort
147 of super-container (possibly virtual) intended to group
148 together multiple chassis entities. A stack may be realized
149 by a virtual cable, a real interconnect cable attached to
150 multiple chassis, or multiple interconnect cables. A stack
151 should not be modeled within any other physical components,
152 but a stack may be contained within another stack. Only
153 chassis components should be contained within a stack.";
154 }
155
156 identity cpu {
157 base ianahw:hardware-class;
158 description
159 "This identity is applicable if the hardware class is some sort
160 of central processing unit.";
161 }
162
163 identity energy-object {
164 base ianahw:hardware-class;
165 description
166 "This identity is applicable if the hardware class is some sort
167 of energy object, i.e., it is a piece of equipment that is
168 part of or attached to a communications network that is
169 monitored, it is controlled, or it aids in the management of
170 another device for Energy Management.";
171 }
172
173 identity battery {
174 base ianahw:hardware-class;
175 description
176 "This identity is applicable if the hardware class is some sort
177 of battery.";
178 }
179
180 identity storage-drive {
181 base ianahw:hardware-class;
182 description
183 "This identity is applicable if the hardware class is some sort
184 of component with data storage capability as its main
185 functionality, e.g., hard disk drive (HDD), solid-state device
186 (SSD), solid-state hybrid drive (SSHD), object storage device
187 (OSD), or other.";
188 }
189}