1{
2    "$id": "http://redfish.dmtf.org/schemas/v1/PortMetrics.v1_7_0.json",
3    "$ref": "#/definitions/PortMetrics",
4    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5    "copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6    "definitions": {
7        "Actions": {
8            "additionalProperties": false,
9            "description": "The available actions for this resource.",
10            "longDescription": "This type shall contain the available actions for this resource.",
11            "patternProperties": {
12                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13                    "description": "This property shall specify a valid odata or Redfish property.",
14                    "type": [
15                        "array",
16                        "boolean",
17                        "integer",
18                        "number",
19                        "null",
20                        "object",
21                        "string"
22                    ]
23                }
24            },
25            "properties": {
26                "#PortMetrics.ResetMetrics": {
27                    "$ref": "#/definitions/ResetMetrics"
28                },
29                "Oem": {
30                    "$ref": "#/definitions/OemActions",
31                    "description": "The available OEM-specific actions for this resource.",
32                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
33                }
34            },
35            "type": "object"
36        },
37        "CXL": {
38            "additionalProperties": false,
39            "description": "The port metrics specific to CXL ports.",
40            "longDescription": "This type shall contain the port metrics specific to CXL ports.",
41            "patternProperties": {
42                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
43                    "description": "This property shall specify a valid odata or Redfish property.",
44                    "type": [
45                        "array",
46                        "boolean",
47                        "integer",
48                        "number",
49                        "null",
50                        "object",
51                        "string"
52                    ]
53                }
54            },
55            "properties": {
56                "BackpressureAveragePercentage": {
57                    "description": "The average congestion of the port as a percentage.",
58                    "longDescription": "This property shall contain CXL Specification-defined 'Backpressure Average Percentage' as a percentage, typically `0` to `100`.",
59                    "readonly": true,
60                    "type": "integer",
61                    "units": "%",
62                    "versionAdded": "v1_4_0"
63                }
64            },
65            "type": "object"
66        },
67        "FibreChannel": {
68            "additionalProperties": false,
69            "description": "The Fibre Channel-specific port metrics for network ports.",
70            "longDescription": "This type shall describe Fibre Channel-specific metrics for network ports.",
71            "patternProperties": {
72                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
73                    "description": "This property shall specify a valid odata or Redfish property.",
74                    "type": [
75                        "array",
76                        "boolean",
77                        "integer",
78                        "number",
79                        "null",
80                        "object",
81                        "string"
82                    ]
83                }
84            },
85            "properties": {
86                "CorrectableFECErrors": {
87                    "description": "The total number of correctable forward error correction (FEC) errors.",
88                    "longDescription": "This property shall contain the total number of times this port has received traffic with correctable forward error correction (FEC) errors.",
89                    "readonly": true,
90                    "type": [
91                        "integer",
92                        "null"
93                    ],
94                    "versionAdded": "v1_2_0"
95                },
96                "InvalidCRCs": {
97                    "description": "The total number of invalid cyclic redundancy checks (CRCs).",
98                    "longDescription": "This property shall contain the total number of invalid cyclic redundancy checks (CRCs) observed on this port.",
99                    "readonly": true,
100                    "type": [
101                        "integer",
102                        "null"
103                    ],
104                    "versionAdded": "v1_2_0"
105                },
106                "InvalidTXWords": {
107                    "description": "The total number of invalid transmission words.",
108                    "longDescription": "This property shall contain the total number of times this port has received invalid transmission words.",
109                    "readonly": true,
110                    "type": [
111                        "integer",
112                        "null"
113                    ],
114                    "versionAdded": "v1_2_0"
115                },
116                "LinkFailures": {
117                    "description": "The total number of link failures.",
118                    "longDescription": "This property shall contain the total number of link failures observed on this port.",
119                    "readonly": true,
120                    "type": [
121                        "integer",
122                        "null"
123                    ],
124                    "versionAdded": "v1_2_0"
125                },
126                "LossesOfSignal": {
127                    "description": "The total number of losses of signal.",
128                    "longDescription": "This property shall contain the total number of times this port has lost signal.",
129                    "readonly": true,
130                    "type": [
131                        "integer",
132                        "null"
133                    ],
134                    "versionAdded": "v1_2_0"
135                },
136                "LossesOfSync": {
137                    "description": "The total number of losses of sync.",
138                    "longDescription": "This property shall contain the total number of times this port has lost sync.",
139                    "readonly": true,
140                    "type": [
141                        "integer",
142                        "null"
143                    ],
144                    "versionAdded": "v1_2_0"
145                },
146                "RXBBCreditZero": {
147                    "description": "The number of times the receive buffer-to-buffer credit count transitioned to zero.",
148                    "longDescription": "This property shall contain the number of times the receive buffer-to-buffer credit count transitioned to zero since last counter reset.",
149                    "readonly": true,
150                    "type": [
151                        "integer",
152                        "null"
153                    ],
154                    "versionAdded": "v1_2_0"
155                },
156                "RXExchanges": {
157                    "description": "The total number of Fibre Channel exchanges received.",
158                    "longDescription": "This property shall contain the total number of Fibre Channel exchanges received.",
159                    "readonly": true,
160                    "type": [
161                        "integer",
162                        "null"
163                    ],
164                    "versionAdded": "v1_2_0"
165                },
166                "RXSequences": {
167                    "description": "The total number of Fibre Channel sequences received.",
168                    "longDescription": "This property shall contain the total number of Fibre Channel sequences received.",
169                    "readonly": true,
170                    "type": [
171                        "integer",
172                        "null"
173                    ],
174                    "versionAdded": "v1_2_0"
175                },
176                "TXBBCreditZero": {
177                    "description": "The number of times the transmit buffer-to-buffer credit count transitioned to zero.",
178                    "longDescription": "This property shall contain the number of times the transmit buffer-to-buffer credit count transitioned to zero since last counter reset.",
179                    "readonly": true,
180                    "type": [
181                        "integer",
182                        "null"
183                    ],
184                    "versionAdded": "v1_2_0"
185                },
186                "TXBBCreditZeroDurationMilliseconds": {
187                    "description": "The total amount of time the port has been blocked from transmitting due to lack of buffer credits.",
188                    "longDescription": "This property shall contain the total amount of time in milliseconds the port has been blocked from transmitting due to lack of buffer credits since the last counter reset.",
189                    "readonly": true,
190                    "type": [
191                        "integer",
192                        "null"
193                    ],
194                    "units": "ms",
195                    "versionAdded": "v1_2_0"
196                },
197                "TXBBCredits": {
198                    "description": "The number of transmit buffer-to-buffer credits the port is configured to use.",
199                    "longDescription": "This property shall contain the number of transmit buffer-to-buffer credits the port is configured to use.",
200                    "readonly": true,
201                    "type": [
202                        "integer",
203                        "null"
204                    ],
205                    "versionAdded": "v1_2_0"
206                },
207                "TXExchanges": {
208                    "description": "The total number of Fibre Channel exchanges transmitted.",
209                    "longDescription": "This property shall contain the total number of Fibre Channel exchanges transmitted.",
210                    "readonly": true,
211                    "type": [
212                        "integer",
213                        "null"
214                    ],
215                    "versionAdded": "v1_2_0"
216                },
217                "TXSequences": {
218                    "description": "The total number of Fibre Channel sequences transmitted.",
219                    "longDescription": "This property shall contain the total number of Fibre Channel sequences transmitted.",
220                    "readonly": true,
221                    "type": [
222                        "integer",
223                        "null"
224                    ],
225                    "versionAdded": "v1_2_0"
226                },
227                "UncorrectableFECErrors": {
228                    "description": "The total number of uncorrectable forward error correction (FEC) errors.",
229                    "longDescription": "This property shall contain the total number of times this port has received traffic with uncorrectable forward error correction (FEC) errors.",
230                    "readonly": true,
231                    "type": [
232                        "integer",
233                        "null"
234                    ],
235                    "versionAdded": "v1_2_0"
236                }
237            },
238            "type": "object"
239        },
240        "GenZ": {
241            "additionalProperties": false,
242            "description": "The port metrics for a Gen-Z interface.",
243            "longDescription": "This type shall describe the Gen-Z related port metrics.",
244            "patternProperties": {
245                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
246                    "description": "This property shall specify a valid odata or Redfish property.",
247                    "type": [
248                        "array",
249                        "boolean",
250                        "integer",
251                        "number",
252                        "null",
253                        "object",
254                        "string"
255                    ]
256                }
257            },
258            "properties": {
259                "AccessKeyViolations": {
260                    "description": "The total number of Access Key Violations detected.",
261                    "longDescription": "This property shall contain the total number of Access Key Violations detected for packets received or transmitted on this interface.",
262                    "readonly": true,
263                    "type": [
264                        "integer",
265                        "null"
266                    ]
267                },
268                "EndToEndCRCErrors": {
269                    "description": "The total number of ECRC transient errors detected.",
270                    "longDescription": "This property shall contain total number of ECRC transient errors detected in received link-local and end-to-end packets.",
271                    "readonly": true,
272                    "type": [
273                        "integer",
274                        "null"
275                    ]
276                },
277                "LLRRecovery": {
278                    "description": "The total number of times Link-Level Reliability (LLR) recovery has been initiated.",
279                    "longDescription": "This property shall contain the total number of times Link-level Reliability (LLR) recovery has been initiated by this interface.  This is not to be confused with the number of packets retransmitted due to initiating LLR recovery.",
280                    "readonly": true,
281                    "type": [
282                        "integer",
283                        "null"
284                    ]
285                },
286                "LinkNTE": {
287                    "description": "The total number of link-local non-transient errors detected.",
288                    "longDescription": "This property shall contain the total number of link-local non-transient errors detected on this interface.",
289                    "readonly": true,
290                    "type": [
291                        "integer",
292                        "null"
293                    ]
294                },
295                "MarkedECN": {
296                    "description": "The number of packets with the Congestion ECN bit set.",
297                    "longDescription": "This property shall contain the number of packets that the component set the Congestion ECN bit prior to transmission through this interface.",
298                    "readonly": true,
299                    "type": [
300                        "integer",
301                        "null"
302                    ]
303                },
304                "NonCRCTransientErrors": {
305                    "description": "The total number transient errors detected that are unrelated to CRC validation.",
306                    "longDescription": "This property shall contain the total number of transient errors detected that are unrelated to CRC validation, which covers link-local and end-to-end packets, such as malformed Link Idle packets or PLA signal errors.",
307                    "readonly": true,
308                    "type": [
309                        "integer",
310                        "null"
311                    ]
312                },
313                "PacketCRCErrors": {
314                    "description": "The total number of PCRC transient errors detected.",
315                    "longDescription": "This property shall contain the total number of PCRC transient errors detected in received link-local and end-to-end packets.",
316                    "readonly": true,
317                    "type": [
318                        "integer",
319                        "null"
320                    ]
321                },
322                "PacketDeadlineDiscards": {
323                    "description": "The number of packets discarded due to the Congestion Deadline subfield reaching zero.",
324                    "longDescription": "This property shall contain the number of packets discarded by this interface due to the Congestion Deadline subfield reaching zero prior to packet transmission.",
325                    "readonly": true,
326                    "type": [
327                        "integer",
328                        "null"
329                    ]
330                },
331                "RXStompedECRC": {
332                    "description": "The total number of packets received with a stomped ECRC field.",
333                    "longDescription": "This property shall contain the total number of packets that this interface received with a stomped ECRC field.",
334                    "readonly": true,
335                    "type": [
336                        "integer",
337                        "null"
338                    ]
339                },
340                "ReceivedECN": {
341                    "description": "The number of packets received on this interface with the Congestion ECN bit set.",
342                    "longDescription": "This property shall contain the number of packets received on this interface with the Congestion ECN bit set.",
343                    "readonly": true,
344                    "type": [
345                        "integer",
346                        "null"
347                    ]
348                },
349                "TXStompedECRC": {
350                    "description": "The total number of packets that this interface stomped the ECRC field.",
351                    "longDescription": "This property shall contain the total number of packets that this interfaced stomped the ECRC field.",
352                    "readonly": true,
353                    "type": [
354                        "integer",
355                        "null"
356                    ]
357                }
358            },
359            "type": "object"
360        },
361        "Networking": {
362            "additionalProperties": false,
363            "description": "The port metrics for network ports, including Ethernet, Fibre Channel, and InfiniBand, that are not specific to one of these protocols.",
364            "longDescription": "This type shall describe the metrics for network ports, including Ethernet, Fibre Channel, and InfiniBand, that are not specific to one of these protocols.",
365            "patternProperties": {
366                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
367                    "description": "This property shall specify a valid odata or Redfish property.",
368                    "type": [
369                        "array",
370                        "boolean",
371                        "integer",
372                        "number",
373                        "null",
374                        "object",
375                        "string"
376                    ]
377                }
378            },
379            "properties": {
380                "RDMAProtectionErrors": {
381                    "description": "The total number of RDMA protection errors.",
382                    "longDescription": "This property shall contain the total number of RDMA protection errors.",
383                    "readonly": true,
384                    "type": [
385                        "integer",
386                        "null"
387                    ],
388                    "versionAdded": "v1_1_0"
389                },
390                "RDMAProtocolErrors": {
391                    "description": "The total number of RDMA protocol errors.",
392                    "longDescription": "This property shall contain the total number of RDMA protocol errors.",
393                    "readonly": true,
394                    "type": [
395                        "integer",
396                        "null"
397                    ],
398                    "versionAdded": "v1_1_0"
399                },
400                "RDMARXBytes": {
401                    "description": "The total number of RDMA bytes received on a port since reset.",
402                    "longDescription": "This property shall contain the total number of RDMA bytes received on a port since reset.",
403                    "readonly": true,
404                    "type": [
405                        "integer",
406                        "null"
407                    ],
408                    "versionAdded": "v1_1_0"
409                },
410                "RDMARXRequests": {
411                    "description": "The total number of RDMA requests received on a port since reset.",
412                    "longDescription": "This property shall contain the total number of RDMA requests received on a port since reset.",
413                    "readonly": true,
414                    "type": [
415                        "integer",
416                        "null"
417                    ],
418                    "versionAdded": "v1_1_0"
419                },
420                "RDMATXBytes": {
421                    "description": "The total number of RDMA bytes transmitted on a port since reset.",
422                    "longDescription": "This property shall contain the total number of RDMA bytes transmitted on a port since reset.",
423                    "readonly": true,
424                    "type": [
425                        "integer",
426                        "null"
427                    ],
428                    "versionAdded": "v1_1_0"
429                },
430                "RDMATXReadRequests": {
431                    "description": "The total number of RDMA read requests transmitted on a port since reset.",
432                    "longDescription": "This property shall contain the total number of RDMA read requests transmitted on a port since reset.",
433                    "readonly": true,
434                    "type": [
435                        "integer",
436                        "null"
437                    ],
438                    "versionAdded": "v1_1_0"
439                },
440                "RDMATXRequests": {
441                    "description": "The total number of RDMA requests transmitted on a port since reset.",
442                    "longDescription": "This property shall contain the total number of RDMA requests transmitted on a port since reset.",
443                    "readonly": true,
444                    "type": [
445                        "integer",
446                        "null"
447                    ],
448                    "versionAdded": "v1_1_0"
449                },
450                "RDMATXSendRequests": {
451                    "description": "The total number of RDMA send requests transmitted on a port since reset.",
452                    "longDescription": "This property shall contain the total number of RDMA send requests transmitted on a port since reset.",
453                    "readonly": true,
454                    "type": [
455                        "integer",
456                        "null"
457                    ],
458                    "versionAdded": "v1_1_0"
459                },
460                "RDMATXWriteRequests": {
461                    "description": "The total number of RDMA write requests transmitted on a port since reset.",
462                    "longDescription": "This property shall contain the total number of RDMA write requests transmitted on a port since reset.",
463                    "readonly": true,
464                    "type": [
465                        "integer",
466                        "null"
467                    ],
468                    "versionAdded": "v1_1_0"
469                },
470                "RXBroadcastFrames": {
471                    "description": "The total number of valid broadcast frames received on a port since reset.",
472                    "longDescription": "This property shall contain the total number of valid broadcast frames received on a port since reset, including host and remote management passthrough traffic.",
473                    "readonly": true,
474                    "type": [
475                        "integer",
476                        "null"
477                    ],
478                    "versionAdded": "v1_1_0"
479                },
480                "RXDiscards": {
481                    "description": "The total number of frames discarded in a port's receive path since reset.",
482                    "longDescription": "This property shall contain the total number of frames discarded in a port's receive path since reset.",
483                    "readonly": true,
484                    "type": [
485                        "integer",
486                        "null"
487                    ],
488                    "versionAdded": "v1_1_0"
489                },
490                "RXFCSErrors": {
491                    "description": "The total number of frames received with frame check sequence (FCS) errors on a port since reset.",
492                    "longDescription": "This property shall contain the total number of frames received with frame check sequence (FCS) errors on a port since reset.",
493                    "readonly": true,
494                    "type": [
495                        "integer",
496                        "null"
497                    ],
498                    "versionAdded": "v1_1_0"
499                },
500                "RXFalseCarrierErrors": {
501                    "description": "The total number of false carrier errors received from phy on a port since reset.",
502                    "longDescription": "This property shall contain the total number of false carrier errors received from phy on a port since reset.",
503                    "readonly": true,
504                    "type": [
505                        "integer",
506                        "null"
507                    ],
508                    "versionAdded": "v1_1_0"
509                },
510                "RXFrameAlignmentErrors": {
511                    "description": "The total number of frames received with alignment errors on a port since reset.",
512                    "longDescription": "This property shall contain the total number of frames received with alignment errors on a port since reset.",
513                    "readonly": true,
514                    "type": [
515                        "integer",
516                        "null"
517                    ],
518                    "versionAdded": "v1_1_0"
519                },
520                "RXFrames": {
521                    "description": "The total number of frames received on a port since reset.",
522                    "longDescription": "This property shall contain the total number of frames received on a port since reset.",
523                    "readonly": true,
524                    "type": [
525                        "integer",
526                        "null"
527                    ],
528                    "versionAdded": "v1_1_0"
529                },
530                "RXMulticastFrames": {
531                    "description": "The total number of valid multicast frames received on a port since reset.",
532                    "longDescription": "This property shall contain the total number of valid multicast frames received on a port since reset, including host and remote management passthrough traffic.",
533                    "readonly": true,
534                    "type": [
535                        "integer",
536                        "null"
537                    ],
538                    "versionAdded": "v1_1_0"
539                },
540                "RXOversizeFrames": {
541                    "description": "The total number of frames that exceed the maximum frame size.",
542                    "longDescription": "This property shall contain the total number of frames that exceed the maximum frame size.",
543                    "readonly": true,
544                    "type": [
545                        "integer",
546                        "null"
547                    ],
548                    "versionAdded": "v1_1_0"
549                },
550                "RXPFCFrames": {
551                    "description": "The total number of priority flow control (PFC) frames received on a port since reset.",
552                    "longDescription": "This property shall contain the total number of priority flow control (PFC) frames received on a port since reset.",
553                    "readonly": true,
554                    "type": [
555                        "integer",
556                        "null"
557                    ],
558                    "versionAdded": "v1_1_0"
559                },
560                "RXPauseXOFFFrames": {
561                    "description": "The total number of flow control frames from the network to pause transmission.",
562                    "longDescription": "This property shall contain the total number of flow control frames from the network to pause transmission.",
563                    "readonly": true,
564                    "type": [
565                        "integer",
566                        "null"
567                    ],
568                    "versionAdded": "v1_1_0"
569                },
570                "RXPauseXONFrames": {
571                    "description": "The total number of flow control frames from the network to resume transmission.",
572                    "longDescription": "This property shall contain the total number of flow control frames from the network to resume transmission.",
573                    "readonly": true,
574                    "type": [
575                        "integer",
576                        "null"
577                    ],
578                    "versionAdded": "v1_1_0"
579                },
580                "RXUndersizeFrames": {
581                    "description": "The total number of frames that are smaller than the minimum frame size of 64 bytes.",
582                    "longDescription": "This property shall contain the total number of frames that are smaller than the minimum frame size of 64 bytes.",
583                    "readonly": true,
584                    "type": [
585                        "integer",
586                        "null"
587                    ],
588                    "versionAdded": "v1_1_0"
589                },
590                "RXUnicastFrames": {
591                    "description": "The total number of valid unicast frames received on a port since reset.",
592                    "longDescription": "This property shall contain the total number of valid unicast frames received on a port since reset.",
593                    "readonly": true,
594                    "type": [
595                        "integer",
596                        "null"
597                    ],
598                    "versionAdded": "v1_1_0"
599                },
600                "TXBroadcastFrames": {
601                    "description": "The total number of good broadcast frames transmitted on a port since reset.",
602                    "longDescription": "This property shall contain the total number of good broadcast frames transmitted on a port since reset, including host and remote management passthrough traffic.",
603                    "readonly": true,
604                    "type": [
605                        "integer",
606                        "null"
607                    ],
608                    "versionAdded": "v1_1_0"
609                },
610                "TXDiscards": {
611                    "description": "The total number of frames discarded in a port's transmit path since reset.",
612                    "longDescription": "This property shall contain the total number of frames discarded in a port's transmit path since reset.",
613                    "readonly": true,
614                    "type": [
615                        "integer",
616                        "null"
617                    ],
618                    "versionAdded": "v1_1_0"
619                },
620                "TXExcessiveCollisions": {
621                    "description": "The number of times a single transmitted frame encountered more than 15 collisions.",
622                    "longDescription": "This property shall contain the number of times a single transmitted frame encountered more than 15 collisions.",
623                    "readonly": true,
624                    "type": [
625                        "integer",
626                        "null"
627                    ],
628                    "versionAdded": "v1_1_0"
629                },
630                "TXFrames": {
631                    "description": "The total number of frames transmitted on a port since reset.",
632                    "longDescription": "This property shall contain the total number of frames transmitted on a port since reset.",
633                    "readonly": true,
634                    "type": [
635                        "integer",
636                        "null"
637                    ],
638                    "versionAdded": "v1_1_0"
639                },
640                "TXLateCollisions": {
641                    "description": "The total number of collisions that occurred after one slot time as defined by IEEE 802.3.",
642                    "longDescription": "This property shall contain the total number of collisions that occurred after one slot time as defined by IEEE 802.3.",
643                    "readonly": true,
644                    "type": [
645                        "integer",
646                        "null"
647                    ],
648                    "versionAdded": "v1_1_0"
649                },
650                "TXMulticastFrames": {
651                    "description": "The total number of good multicast frames transmitted on a port since reset.",
652                    "longDescription": "This property shall contain the total number of good multicast frames transmitted on a port since reset, including host and remote management passthrough traffic.",
653                    "readonly": true,
654                    "type": [
655                        "integer",
656                        "null"
657                    ],
658                    "versionAdded": "v1_1_0"
659                },
660                "TXMultipleCollisions": {
661                    "description": "The times that a transmitted frame encountered 2-15 collisions.",
662                    "longDescription": "This property shall contain the times that a transmitted frame encountered 2-15 collisions.",
663                    "readonly": true,
664                    "type": [
665                        "integer",
666                        "null"
667                    ],
668                    "versionAdded": "v1_1_0"
669                },
670                "TXPFCFrames": {
671                    "description": "The total number of priority flow control (PFC) frames sent on a port since reset.",
672                    "longDescription": "This property shall contain the total number of priority flow control (PFC) frames sent on a port since reset.",
673                    "readonly": true,
674                    "type": [
675                        "integer",
676                        "null"
677                    ],
678                    "versionAdded": "v1_1_0"
679                },
680                "TXPauseXOFFFrames": {
681                    "description": "The total number of XOFF frames transmitted to the network.",
682                    "longDescription": "This property shall contain the total number of XOFF frames transmitted to the network.",
683                    "readonly": true,
684                    "type": [
685                        "integer",
686                        "null"
687                    ],
688                    "versionAdded": "v1_1_0"
689                },
690                "TXPauseXONFrames": {
691                    "description": "The total number of XON frames transmitted to the network.",
692                    "longDescription": "This property shall contain the total number of XON frames transmitted to the network.",
693                    "readonly": true,
694                    "type": [
695                        "integer",
696                        "null"
697                    ],
698                    "versionAdded": "v1_1_0"
699                },
700                "TXSingleCollisions": {
701                    "description": "The times that a successfully transmitted frame encountered a single collision.",
702                    "longDescription": "This property shall contain the times that a successfully transmitted frame encountered a single collision.",
703                    "readonly": true,
704                    "type": [
705                        "integer",
706                        "null"
707                    ],
708                    "versionAdded": "v1_1_0"
709                },
710                "TXUnicastFrames": {
711                    "description": "The total number of good unicast frames transmitted on a port since reset.",
712                    "longDescription": "This property shall contain the total number of good unicast frames transmitted on a port since reset, including host and remote management passthrough traffic.",
713                    "readonly": true,
714                    "type": [
715                        "integer",
716                        "null"
717                    ],
718                    "versionAdded": "v1_1_0"
719                }
720            },
721            "type": "object"
722        },
723        "OemActions": {
724            "additionalProperties": true,
725            "description": "The available OEM-specific actions for this resource.",
726            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
727            "patternProperties": {
728                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
729                    "description": "This property shall specify a valid odata or Redfish property.",
730                    "type": [
731                        "array",
732                        "boolean",
733                        "integer",
734                        "number",
735                        "null",
736                        "object",
737                        "string"
738                    ]
739                }
740            },
741            "properties": {},
742            "type": "object"
743        },
744        "PortMetrics": {
745            "additionalProperties": false,
746            "description": "The `PortMetrics` schema contains usage and health statistics for a switch device or component port summary.",
747            "longDescription": "This resource shall represent the port metrics for a switch device or component port summary in a Redfish implementation.",
748            "patternProperties": {
749                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
750                    "description": "This property shall specify a valid odata or Redfish property.",
751                    "type": [
752                        "array",
753                        "boolean",
754                        "integer",
755                        "number",
756                        "null",
757                        "object",
758                        "string"
759                    ]
760                }
761            },
762            "properties": {
763                "@odata.context": {
764                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
765                },
766                "@odata.etag": {
767                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
768                },
769                "@odata.id": {
770                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
771                },
772                "@odata.type": {
773                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
774                },
775                "Actions": {
776                    "$ref": "#/definitions/Actions",
777                    "description": "The available actions for this resource.",
778                    "longDescription": "This property shall contain the available actions for this resource."
779                },
780                "CXL": {
781                    "$ref": "#/definitions/CXL",
782                    "description": "The port metrics specific to CXL ports.",
783                    "longDescription": "This property shall contain the port metrics specific to CXL ports.",
784                    "versionAdded": "v1_4_0"
785                },
786                "Description": {
787                    "anyOf": [
788                        {
789                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
790                        },
791                        {
792                            "type": "null"
793                        }
794                    ],
795                    "readonly": true
796                },
797                "FibreChannel": {
798                    "$ref": "#/definitions/FibreChannel",
799                    "description": "The Fibre Channel-specific port metrics for network ports.",
800                    "longDescription": "This property shall contain Fibre Channel-specific port metrics for network ports.",
801                    "versionAdded": "v1_2_0"
802                },
803                "GenZ": {
804                    "$ref": "#/definitions/GenZ",
805                    "description": "The port metrics specific to Gen-Z ports.",
806                    "longDescription": "This property shall contain the port metrics specific to Gen-Z ports."
807                },
808                "Id": {
809                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
810                    "readonly": true
811                },
812                "Name": {
813                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
814                    "readonly": true
815                },
816                "Networking": {
817                    "$ref": "#/definitions/Networking",
818                    "description": "The port metrics for network ports, including Ethernet, Fibre Channel, and InfiniBand, that are not specific to one of these protocols.",
819                    "longDescription": "This property shall contain port metrics for network ports, including Ethernet, Fibre Channel, and InfiniBand, that are not specific to one of these protocols.",
820                    "versionAdded": "v1_1_0"
821                },
822                "Oem": {
823                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
824                    "description": "The OEM extension property.",
825                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
826                },
827                "PCIeErrors": {
828                    "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeDevice.json#/definitions/PCIeErrors",
829                    "description": "The PCIe errors associated with this port.",
830                    "longDescription": "This property shall contain the PCIe errors associated with this port.",
831                    "versionAdded": "v1_3_0"
832                },
833                "RXBytes": {
834                    "description": "The total number of bytes received on a port since reset.",
835                    "longDescription": "This property shall contain the total number of bytes received on a port since reset, including host and remote management passthrough traffic, and inclusive of all protocol overhead.",
836                    "readonly": true,
837                    "type": [
838                        "integer",
839                        "null"
840                    ],
841                    "units": "By",
842                    "versionAdded": "v1_1_0"
843                },
844                "RXErrors": {
845                    "description": "The total number of received errors on a port since reset.",
846                    "longDescription": "This property shall contain the total number of received errors on a port since reset.",
847                    "readonly": true,
848                    "type": [
849                        "integer",
850                        "null"
851                    ],
852                    "versionAdded": "v1_1_0"
853                },
854                "SAS": {
855                    "description": "The physical (phy) metrics for Serial Attached SCSI (SAS).  Each member represents a single phy.",
856                    "items": {
857                        "$ref": "#/definitions/SAS"
858                    },
859                    "longDescription": "This property shall contain an array of physical-related metrics for Serial Attached SCSI (SAS).  Each member in the array shall represent a single phy.",
860                    "type": "array",
861                    "versionAdded": "v1_1_0"
862                },
863                "TXBytes": {
864                    "description": "The total number of bytes transmitted on a port since reset.",
865                    "longDescription": "This property shall contain the total number of bytes transmitted on a port since reset, including host and remote management passthrough traffic, and inclusive of all protocol overhead.",
866                    "readonly": true,
867                    "type": [
868                        "integer",
869                        "null"
870                    ],
871                    "units": "By",
872                    "versionAdded": "v1_1_0"
873                },
874                "TXErrors": {
875                    "description": "The total number of transmission errors on a port since reset.",
876                    "longDescription": "This property shall contain the total number of transmission errors on a port since reset.",
877                    "readonly": true,
878                    "type": [
879                        "integer",
880                        "null"
881                    ],
882                    "versionAdded": "v1_1_0"
883                },
884                "Transceivers": {
885                    "description": "The metrics for the transceivers in this port.  Each member represents a single transceiver.",
886                    "items": {
887                        "$ref": "#/definitions/Transceiver"
888                    },
889                    "longDescription": "This property shall contain an array of transceiver-related metrics for this port.  Each member in the array shall represent a single transceiver.",
890                    "type": "array",
891                    "versionAdded": "v1_1_0"
892                }
893            },
894            "required": [
895                "@odata.id",
896                "@odata.type",
897                "Id",
898                "Name"
899            ],
900            "type": "object"
901        },
902        "ResetMetrics": {
903            "additionalProperties": false,
904            "description": "This action resets the summary metrics related to this device.",
905            "longDescription": "This action shall reset any time intervals or counted values for this device.",
906            "parameters": {},
907            "patternProperties": {
908                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
909                    "description": "This property shall specify a valid odata or Redfish property.",
910                    "type": [
911                        "array",
912                        "boolean",
913                        "integer",
914                        "number",
915                        "null",
916                        "object",
917                        "string"
918                    ]
919                }
920            },
921            "properties": {
922                "target": {
923                    "description": "Link to invoke action",
924                    "format": "uri-reference",
925                    "type": "string"
926                },
927                "title": {
928                    "description": "Friendly action name",
929                    "type": "string"
930                }
931            },
932            "type": "object",
933            "versionAdded": "v1_6_0"
934        },
935        "SAS": {
936            "additionalProperties": false,
937            "description": "The physical metrics for Serial Attached SCSI (SAS).",
938            "longDescription": "This type shall describe physical (phy) related metrics for Serial Attached SCSI (SAS).",
939            "patternProperties": {
940                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
941                    "description": "This property shall specify a valid odata or Redfish property.",
942                    "type": [
943                        "array",
944                        "boolean",
945                        "integer",
946                        "number",
947                        "null",
948                        "object",
949                        "string"
950                    ]
951                }
952            },
953            "properties": {
954                "InvalidDwordCount": {
955                    "description": "The number of invalid dwords that have been received by the phy outside of phy reset sequences.",
956                    "longDescription": "This property shall contain the number of invalid dwords that have been received by the phy outside of phy reset sequences.",
957                    "readonly": true,
958                    "type": [
959                        "integer",
960                        "null"
961                    ],
962                    "versionAdded": "v1_1_0"
963                },
964                "LossOfDwordSynchronizationCount": {
965                    "description": "The number of times the phy has restarted the link reset sequence because it lost dword synchronization.",
966                    "longDescription": "This property shall contain the number of times the phy has restarted the link reset sequence because it lost dword synchronization.",
967                    "readonly": true,
968                    "type": [
969                        "integer",
970                        "null"
971                    ],
972                    "versionAdded": "v1_1_0"
973                },
974                "PhyResetProblemCount": {
975                    "description": "The number of times a phy reset problem has occurred.",
976                    "longDescription": "This property shall contain the number of times a phy reset problem has occurred.",
977                    "readonly": true,
978                    "type": [
979                        "integer",
980                        "null"
981                    ],
982                    "versionAdded": "v1_5_0"
983                },
984                "RunningDisparityErrorCount": {
985                    "description": "The number of dwords containing running disparity errors that have been received by the phy outside of phy reset sequences.",
986                    "longDescription": "This property shall contain the number of dwords containing running disparity errors that have been received by the phy outside of phy reset sequences.",
987                    "readonly": true,
988                    "type": [
989                        "integer",
990                        "null"
991                    ],
992                    "versionAdded": "v1_1_0"
993                }
994            },
995            "type": "object"
996        },
997        "Transceiver": {
998            "additionalProperties": false,
999            "description": "The transceiver metrics.",
1000            "longDescription": "This type shall describe the transceiver-related metrics.",
1001            "patternProperties": {
1002                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1003                    "description": "This property shall specify a valid odata or Redfish property.",
1004                    "type": [
1005                        "array",
1006                        "boolean",
1007                        "integer",
1008                        "number",
1009                        "null",
1010                        "object",
1011                        "string"
1012                    ]
1013                }
1014            },
1015            "properties": {
1016                "RXInputPowerMilliWatts": {
1017                    "description": "The RX input power value of a small form-factor pluggable (SFP) transceiver.",
1018                    "longDescription": "This property shall contain the RX input power value of a small form-factor pluggable (SFP) transceiver.",
1019                    "minimum": 0,
1020                    "readonly": true,
1021                    "type": [
1022                        "number",
1023                        "null"
1024                    ],
1025                    "units": "mW",
1026                    "versionAdded": "v1_1_0"
1027                },
1028                "SupplyVoltage": {
1029                    "description": "The supply voltage of a small form-factor pluggable (SFP) transceiver.",
1030                    "longDescription": "This property shall contain the supply voltage of a small form-factor pluggable (SFP) transceiver.",
1031                    "readonly": true,
1032                    "type": [
1033                        "number",
1034                        "null"
1035                    ],
1036                    "units": "V",
1037                    "versionAdded": "v1_1_0"
1038                },
1039                "TXBiasCurrentMilliAmps": {
1040                    "description": "The TX bias current value of a small form-factor pluggable (SFP) transceiver.",
1041                    "longDescription": "This property shall contain the TX bias current value of a small form-factor pluggable (SFP) transceiver.",
1042                    "minimum": 0,
1043                    "readonly": true,
1044                    "type": [
1045                        "number",
1046                        "null"
1047                    ],
1048                    "units": "mA",
1049                    "versionAdded": "v1_1_0"
1050                },
1051                "TXOutputPowerMilliWatts": {
1052                    "description": "The TX output power value of a small form-factor pluggable (SFP) transceiver.",
1053                    "longDescription": "This property shall contain the TX output power value of a small form-factor pluggable (SFP) transceiver.",
1054                    "minimum": 0,
1055                    "readonly": true,
1056                    "type": [
1057                        "number",
1058                        "null"
1059                    ],
1060                    "units": "mW",
1061                    "versionAdded": "v1_1_0"
1062                },
1063                "WavelengthNanometers": {
1064                    "description": "The laser wavelength, in nanometers, for a small form-factor pluggable (SFP) transceiver.",
1065                    "longDescription": "This property shall contain the laser wavelength, in nanometers, for a small form-factor pluggable (SFP) transceiver.  This property shall not be present for non-optic SFP mediums.",
1066                    "readonly": true,
1067                    "type": [
1068                        "string",
1069                        "null"
1070                    ],
1071                    "units": "nm",
1072                    "versionAdded": "v1_7_0"
1073                }
1074            },
1075            "type": "object"
1076        }
1077    },
1078    "language": "en",
1079    "owningEntity": "DMTF",
1080    "release": "2024.3",
1081    "title": "#PortMetrics.v1_7_0.PortMetrics"
1082}