跳转到内容
Ask AI

Easy RoCE

此内容尚不支持你的语言。

Easy RDMA over Converged Ethernet.

URLGETPOSTPATCHPUTDELETE
/rest/v1/rpc/qos-roce-no-accept-from-interfaceNYNNN
/rest/v1/rpc/show-counters-qos-roceNYNNN
/rest/v1/rpc/clear-counters-qos-roceNYNNN
/rest/v1/rpc/qos-roce-bind-interfaceNYNNN
/rest/v1/rpc/qos-roce-no-bind-interfaceNYNNN
/rest/v1/rpc/qos-roce-publish-via-interfaceNYNNN
/rest/v1/rpc/qos-roce-no-publish-via-interfaceNYNNN
/rest/v1/rpc/show-qos-roce-allNYNNN
/rest/v1/rpc/show-qos-roce-summaryNYNNN
/rest/v1/running/roceYNYNN
/rest/v1/running/roce/roce-acceptYNYNN
/rest/v1/running/roce/roce-profiles/{name}YYYNY
GET HTTPS://{switch IP}/rest/v1/running/roce

response:

{
"roce-accept": {},
"roce-profiles": [
{
"name": "roce_lossless_5m_medium",
"mode": "lossless",
"bind-interfaces": [
"Ethernet4:4",
"Ethernet11:3",
......
"Ethernet24:3"
],
"cable-length": "CABLE_5m",
"incast-level": "medium",
"class-maps": [
"roce_lossless_5m_medium_200g_class_map"
],
"policy-maps": [
"roce_lossless_5m_medium_200g@queue-scheduler priority queue 6@queue-scheduler priority queue 7"
],
"wred-profiles": [
"roce_lossless_5m_medium_200g_ecn"
],
"buffer-profiles": [
"roce_lossless_5m_medium_200g_profile"
],
"diffserv-maps": [
"roce_lossless_diffserv_map"
]
}
]
}
PATCH HTTPS://{switch IP}/rest/v1/running/roce/roce-accept
{
"interfaces": ["Ethernet1", "Ethernet52"]
}
POST HTTPS://{switch IP}/rest/v1/running/roce/roce-profiles
{
"name": "roce_lossless",
"mode": "lossless"
}
+--rw roce
+--rw roce-accept
| +--rw interfaces*
+--rw roce-profiles
+--rw roce-profile* [name]
+--rw name
+--rw mode
+--rw publish-via*
+--rw bind-interfaces*
+--rw cable-length?
+--rw incast-level?
+--rw traffic-model?
+--ro class-maps*
+--ro policy-maps*
+--ro wred-profiles*
+--ro buffer-profiles*
+--ro diffserv-maps*

Tree Diagrams

+--rw roce
+--rw roce-accept
| +--rw interfaces*

Table of Properties

NameRequiredType/RangeDescription
roceMPath-only node, has no configurable value.
roce-acceptM(sub-property of roce)
Path-only node, has no configurable value.
interfacesOEthernet name(sub-property of roce-accept)
Accept or not RoCE configuration from specific port

Tree Diagrams

+--rw roce
+--rw roce-profiles
+--rw roce-profile* [name]
+--rw name
+--rw mode
+--rw publish-via*
+--rw bind-interfaces*
+--rw cable-length?
+--rw incast-level?
+--rw traffic-model?
+--ro class-maps*
+--ro policy-maps*
+--ro wred-profiles*
+--ro buffer-profiles*
+--ro diffserv-maps*

Table of Properties

NameRequiredType/RangeDescription
roceMPath-only node, has no configurable value.
roce-profilesM(sub-property of roce)
Path-only node, has no configurable value.
Easy RoCE top level container
nameMstring(sub-property of roce-profiles)
RoCE profile name; The name normally likes “roce_xxx” and it would add three parts if “cable-length”, “incast-level”, “traffic-model” in body.For example, the name will be “roce_lossless_5m_low_latency” if user configures those three parts in body.
modeM”lossless"
"lossy”(sub-property of roce-profiles)
Trans mode for RoCE profile.
publish-viaOEthernet name(sub-property of roce-profiles)
Publish or not current RoCE configurations via specific ports.
bind-interfacesOEthernet name(sub-property of roce-profiles)
Apply or not current RoCE configuration on specific ports.
cable-lengthO”CABLE_5m"
"CABLE_40m"
"CABLE_100m"
"CABLE_300m”(sub-property of roce-profiles)
Cable length on the link.
incast-levelO”low"
"medium"
"high”(sub-property of roce-profiles)
Traffic incast level on the link.The Incast phenomenon refers to a situation where multiple source nodes send data packets to a single destination node, causing these packets to converge on one or several intermediate nodes in the network. This results in those nodes or links experiencing excessive traffic pressure. We quantify three possible levels-low, medium, and high-as follows: low => 1:1, medium => 3:1, and high => 10:1. These ratios are then used to calculate the ratio of uplink to downlink ports on the switch, which helps determine the PFC (Priority-based Flow Control) dynamic threshold (dynamic_th). In cases where the actual convergence ratio does not match the quantified results, parameters should be selected based on the lower level.For example, a convergence ratio of 2:1 corresponds to low, while a ratio of 8:1 would correspond to medium.
traffic-modelO”throughput"
"latency"
"balance”(sub-property of roce-profiles)
Traffic model on the link.This parameter offers three options.According to the standard configuration manual, for throughput-sensitive services, it is recommended to set the ECN max_th (maximum threshold for Explicit Congestion Notification) to 10%; for latency-sensitive services, it is suggested to set the ECN max_th to 90%. Using the midpoint of these two values, (10% + 90%) / 2 = 50%, we quantify the traffic model into weights. Consequently, a weight of 0.2 is assigned for throughput-sensitive services and a weight of 1.8 for latency-sensitive services.
class-mapsROclass-map name(sub-property of roce-profiles)
Class-map that profile has bound.
policy-mapsROpolicy-map name(sub-property of roce-profiles)
Policy-map that profile has bound.
wred-profilesROwred-profile name(sub-property of roce-profiles)
Wred-profile that profile has bound.
buffer-profilesRObuffer-profile name(sub-property of roce-profiles)
Buffer-profile that profile has bound.
diffserv-mapsROdscp-tc-map name
dot1p-tc-map name(sub-property of roce-profiles)
Diffserv-map that profile has bound.

Tree Diagrams

+---x qos-roce-accept-from-interface
| +---w input
| | +---w interfaces
| +--ro output
| +--ro data?

Table of Properties

NameRequiredType/RangeDescription
qos-roce-accept-from-interfaceMPath-only node, has no configurable value.
Command “qos roce accept-from interface” means platform could receive roce configuration from a part of ethernet ports on the platform.
interfacesM”all”
Ethernet name range, eg. Ethernet1-Ethernet10
(sub-property of input)
Accept RoCE configuration from specific port.
dataRO(sub-property of output)

Tree Diagrams

+---x qos-roce-no-accept-from-interface
| +---w input
| | +---w interfaces
| +--ro output
| +--ro data?

Table of Properties

NameRequiredType/RangeDescription
qos-roce-no-accept-from-interfaceMPath-only node, has no configurable value.
Command “no qos roce accept-from interface” means platform could not receive roce configuration from a part of ethernet ports on the platform any more.
interfacesM”all”
Ethernet name range, eg. Ethernet1-Ethernet10
(sub-property of input)
Accept RoCE configuration from specific port.
dataRO(sub-property of output)

Tree Diagrams

+---x qos-roce-bind-interface
| +---w input
| | +---w name
| | +---w interfaces
| +--ro output
| +--ro data?

Table of Properties

NameRequiredType/RangeDescription
qos-roce-bind-interfaceMPath-only node, has no configurable value.
Command “bind interface” means the roce profile under current view would be bound to a part of ethernet ports on the platform.
nameMroce profile name(sub-property of input)
RoCE profile name; The name normally likes “roce_xxx”.
interfacesM”all”
Ethernet name range, eg. Ethernet1-Ethernet10
(sub-property of input)
Apply current RoCE configuration on specific ports.
dataRO(sub-property of output)

Tree Diagrams

+---x qos-roce-no-bind-interface
| +---w input
| | +---w name
| | +---w interfaces
| +--ro output
| +--ro data?

Table of Properties

NameRequiredType/RangeDescription
qos-roce-no-bind-interfaceMPath-only node, has no configurable value.
Command “bind interface all” means the roce profile under current view would not be bound to a part of ethernet ports on the platform any more.
nameMroce profile name(sub-property of input)
RoCE profile name; The name normally likes “roce_xxx”.
interfacesM”all”
Ethernet name range, eg. Ethernet1-Ethernet10
(sub-property of input)
Apply current RoCE configuration on specific ports.
dataRO(sub-property of output)

Tree Diagrams

+---x qos-roce-publish-via-interface
| +---w input
| | +---w name
| | +---w interfaces
| +--ro output
| +--ro data?

Table of Properties

NameRequiredType/RangeDescription
qos-roce-publish-via-interfaceMPath-only node, has no configurable value.
Command “publish-via interface” means platform would publish roce profile configuration to all the ethernet ports on the platform.
nameMroce profile name(sub-property of input)
RoCE profile name; The name normally likes “roce_xxx”.
interfacesM”all”
Ethernet name range, eg. Ethernet1-Ethernet10
(sub-property of input)
Publish or not current RoCE configurations via specific ports.
dataRO(sub-property of output)

Tree Diagrams

+---x qos-roce-no-publish-via-interface
| +---w input
| | +---w name
| | +---w interfaces
| +--ro output
| +--ro data?

Table of Properties

NameRequiredType/RangeDescription
qos-roce-no-publish-via-interfaceMPath-only node, has no configurable value.
Command “no publish-via interface” means platform would not publish roce profile configuration to all the ethernet ports on the platform.
nameMroce profile name(sub-property of input)
RoCE profile name; The name normally likes “roce_xxx”.
interfacesM”all”
Ethernet name range, eg. Ethernet1-Ethernet10
(sub-property of input)
Apply current RoCE configuration on specific ports.
dataRO(sub-property of output)

Tree Diagrams

+---x show-qos-roce-all
| +--ro output
| +--ro roce-profiles
| +--ro roce-profile* [name]
| +--ro name
| +--ro mode?
| +--ro cable-length?
| +--ro policy-maps
| +--ro policy-map* [name]
| +--ro name
| +--ro diffserv-map-type?
| +--ro bind-interfaces*
| +--ro congestion-control
| | +--ro congestion-mode?
| | +--ro enabled-tc*
| | +--ro min-threshold?
| | +--ro max-threshold?
| +--ro priority-flow-control
| | +--ro pfc-tc*
| | +--ro tx-status?
| | +--ro rx-status?
| +--ro dscp-tc-mapping
| | +--ro mapping* [dscp]
| | +--ro dscp
| | +--ro tc?
| +--ro dot1-tc-mapping
| | +--ro mapping* [dot1p]
| | +--ro dot1p
| | +--ro tc?
| +--ro queue-schedulers
| | +--ro queue-scheduler* [queue-id]
| | +--ro queue-id
| | +--ro algorithm?
| | +--ro weight?
| +--ro pfc-profiles
| +--ro pfc-profile* [name]
| +--ro name
| +--ro switch-priority*

Table of Properties

NameRequiredType/RangeDescription
show-qos-roce-allMPath-only node, has no configurable value.
Show all the RoCE profiles configured on the platform.
roce-profilesRO(sub-property of output)
Path-only node, has no configurable value.
nameROroce profile name(sub-property of roce-profiles)
modeRO”lossless"
"lossy”(sub-property of roce-profiles)
cable-lengthRO”CABLE_5m"
"CABLE_40m"
"CABLE_100m"
"CABLE_300m”(sub-property of roce-profiles)
policy-mapsRO(sub-property of roce-profiles)
Path-only node, has no configurable value.
nameRO”qos:qos/policy-maps/policy-map/name”(sub-property of policy-maps)
diffserv-map-typeRO”dscp"
"dot1p”(sub-property of policy-maps)
bind-interfacesROEthernet name(sub-property of policy-maps)
Bind status is a boolean which means roce profile is binded to ports or not.
congestion-controlRO(sub-property of policy-maps)
Path-only node, has no configurable value.
congestion-modeRO”ecn"
"drop”(sub-property of congestion-control)
enabled-tcRO0..7(sub-property of congestion-control)
min-thresholdROuint64(sub-property of congestion-control)
max-thresholdROuint64(sub-property of congestion-control)
priority-flow-controlRO(sub-property of policy-maps)
Path-only node, has no configurable value.
pfc-tcRO0..7(sub-property of priority-flow-control)
tx-statusRO”true"
"false”(sub-property of priority-flow-control)
rx-statusRO”true"
"false”(sub-property of priority-flow-control)
dscp-tc-mappingRO(sub-property of policy-maps)
Path-only node, has no configurable value.
Only applicable when diffserv-map-type = “dscp”.
mappingRO(sub-property of dscp-tc-mapping)
Path-only node, has no configurable value.
Mapping relationship between dscp value and traffic class
dscpRO0..63(sub-property of mapping)
The value of dscp
tcRO0..7(sub-property of mapping)
The value of traffic class
dot1-tc-mappingRO(sub-property of policy-maps)
Path-only node, has no configurable value.
Only applicable when diffserv-map-type = “dot1p”.
mappingRO(sub-property of dot1-tc-mapping)
Path-only node, has no configurable value.
Mapping relationship between dot1p value and traffic class
dot1pRO0..7(sub-property of mapping)
The value of dot1p
tcRO0..7(sub-property of mapping)
The value of traffic class
queue-schedulersRO(sub-property of policy-maps)
Path-only node, has no configurable value.
Only applicable when mode = “lossless”.
queue-idRO0..7(sub-property of queue-schedulers)
algorithmRO”STRICT"
"DWRR”(sub-property of queue-schedulers)
weightRO0..100(sub-property of queue-schedulers)
Only applicable when algorithm = “DWRR”.
pfc-profilesRO(sub-property of policy-maps)
Path-only node, has no configurable value.
nameRO”qos:qos/profiles/buffer-profiles/buffer-profile/name”(sub-property of pfc-profiles)
switch-priorityRO0..7(sub-property of pfc-profiles)

Tree Diagrams

+---x show-qos-roce-summary
| +--ro output
| +--ro roce-profiles
| +--ro roce-profile* [name]
| +--ro name
| +--ro mode?
| +--ro bind-status?

Table of Properties

NameRequiredType/RangeDescription
show-qos-roce-summaryMPath-only node, has no configurable value.
Show summary information of all the RoCE profiles configured on the platform.
roce-profilesRO(sub-property of output)
Path-only node, has no configurable value.
|

| name | RO | roce profile name | (sub-property of roce-profiles) | | mode | RO | “lossless” “lossy” | (sub-property of roce-profiles) | | bind-status | RO | “true” “false” | (sub-property of roce-profiles) Bind status is a boolean which means roce profile is binded to ports or not. |

Tree Diagrams

+---x show-counters-qos-roce
| +---w input
| | +---w interface-name
| | +---w queue-id
| +--ro output
| +--ro roce-states
| | +--ro interface-name?
| | +--ro queue-id?
| +--ro pfc-stats
| | +--ro receive-stats?
| | +--ro transmit-stats?
| | +--ro pg-stats
| | +--ro total-packets?
| | +--ro total-bytes?
| | +--ro drop-packets?
| | +--ro curr-occupancy?
| +--ro ecn-stats
| | +--ro ecn-counters?
| | +--ro ecn-buffer
| | +--ro shared-use-watermark?
| | +--ro total-use-watermark?
| | +--ro total-use-count?
| +--ro queue-stats
| +--ro counter-packets?
| +--ro counter-bytes?
| +--ro drop-packets?
| +--ro drop-bytes?
| +--ro counter-rate-packets?
| +--ro counter-rate-bytes?
| +--ro drop-rate-packets?
| +--ro drop-rate-bytes?
| +--ro occupancy-bytes?
| +--ro shared-occupancy-bytes?

Table of Properties

NameRequiredType/RangeDescription
show-counters-qos-roceMPath-only node, has no configurable value.
Show QoS RoCE counters
interface-nameMEthernet name(sub-property of input)
Interface name
queue-idM0..7(sub-property of input)
Queue id
roce-statesRO(sub-property of output)
Path-only node, has no configurable value.
interface-nameROEthernet name(sub-property of roce-states)
Ethernet port name
queue-idRO0..7(sub-property of roce-states)
Specfic traffic queue of port
pfc-statsRO(sub-property of output)
Path-only node, has no configurable value.
receive-statsROuint64(sub-property of pfc-stats)
Pause frame statistics that port has recevied.
transmit-statsROuint64(sub-property of pfc-stats)
Pause frame statistics that port has transmitted.
pg-statsRO(sub-property of pfc-stats)
Path-only node, has no configurable value.
total-packetsROuint64(sub-property of pg-stats)
The total number of packets received by this priority group since the last polling (in packets).
total-bytesROuint64(sub-property of pg-stats)
Counter/bytes: The total number of bytes received by this priority group since the last polling (in bytes).
drop-packetsROuint64(sub-property of pg-stats)
The number of packets dropped by this priority group due to queue overflow or policies (such as RED/PFCWD drop) since the last polling.
curr-occupancyROuint64(sub-property of pg-stats)
The current or peak occupancy level of the per PG buffer, in bytes.
ecn-statsRO(sub-property of output)
Path-only node, has no configurable value.
ecn-countersROuint64(sub-property of ecn-stats)
Statistics of packets which is marked by wred-ecn function.
ecn-bufferRO(sub-property of ecn-stats)
Path-only node, has no configurable value.
shared-use-watermarkROuint64(sub-property of ecn-buffer)
The maximum number of bytes occupied by this priority group in the shared buffer pool since the last water level reset.
total-use-watermarkROuint64(sub-property of ecn-buffer)
The maximum number of bytes occupied by the priority group in its private or total buffer.
total-use-countROuint64(sub-property of ecn-buffer)
The priority group accumulates (total) the number of bytes read or written from the dedicated buffer during the query cycle.
queue-statsRO(sub-property of output)
Path-only node, has no configurable value.
counter-packetsROuint64(sub-property of queue-stats)
The total number of successfully joined (or sent) messages in this queue since power on or reset.
counter-bytesROuint64(sub-property of queue-stats)
The corresponding cumulative number of bytes (including frame headers), which is the total number of bytes occupied by these messages.
drop-packetsROuint64(sub-property of queue-stats)
The total number of messages that have been discarded in the queue due to congestion, policies (such as WRED, PFC exceeding limits), and other reasons.
drop-bytesROuint64(sub-property of queue-stats)
The cumulative number of bytes corresponding to the discarded message.
counter-rate-packetsRO0.0..max(sub-property of queue-stats)
The number of successfully queued messages per second.
counter-rate-bytesRO0.0..max(sub-property of queue-stats)
The number of bytes successfully logged in per second.
drop-rate-packetsRO0.0..max(sub-property of queue-stats)
The number of messages discarded per second.
drop-rate-bytesRO0.0..max(sub-property of queue-stats)
The number of bytes discarded per second.
occupancy-bytesROuint64(sub-property of queue-stats)
Indicates the size of the local buffer currently in use for the queue (in bytes), which is equivalent to the total size of unprocessed messages in the queue. Buffer occupancy can be considered as buffer occupancy: the amount of data in the queue that has not yet left the queue
shared-occupancy-bytesROuint64(sub-property of queue-stats)
When the device uses a shared buffer pool, this field displays the number of bytes occupied by the queue in the shared pool. The shared buffer mechanism allows multiple queues to dynamically request larger memory to cope with sudden traffic

Tree Diagrams

+---x clear-counters-qos-roce
+--ro output
+--ro data?

Table of Properties

NameRequiredType/RangeDescription
clear-counters-qos-roceMPath-only node, has no configurable value.
Clear QoS RoCE counters
dataRO(sub-property of output)