New committer in OAM project - scp/oam/modeling repo
[scp/oam/modeling.git] / data-model / draft / iana-hardware@2018-03-13.yang
1 module 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 }