port
interface/ethernet/switch/qos/port
Syscap: rbswitch and crs_prestera
Type: Directory
This sub-menu configures QoS settings for individual switch ports. It allows you to assign a QoS profile to ingress packets arriving on a specific port. If the port is configured as trusted, the assigned profile can be overridden by match rules based on packet header values.
By default, all ports are untrusted and receive the default QoS profile (Best-Effort, PCP=0, DSCP=0). In this default state, priority fields are cleared from egress packets.
| Flag | Name | Description |
|---|---|---|
| I | invalid | |
| R | running |
| Argument | Type | Description |
|---|---|---|
| profile (syscap=crs_prestera) | enum | QoS profile to assign to ingress packets by default. |
| map (syscap=crs_prestera) | enum | QoS Packet-to-Profile mapping. |
| trust-l2 (syscap=crs_prestera) | enum (ignore | trust | keep) { ignore:0, trust:1, keep:2 } | Trust Layer 2 header (PCP) for QoS mapping. |
| trust-l3 (syscap=crs_prestera) | enum (ignore | trust | keep) { ignore:0, trust:1, keep:2 } | Trust Layer 3 header (DSCP) for QoS mapping. |
| tx-manager (syscap=crs_prestera) | enum | QoS Tx Manager for egress traffic on this port. |
| pfc (syscap=!prestera-ac3) | enum | Priority Flow Control profile for ingress traffic on this port. |
| egress-rate-queue0 (syscap=switch-rate) | num | Egress rate limit for queue 0. |
| egress-rate-queue1 (syscap=switch-rate) | num | Egress rate limit for queue 1. |
| egress-rate-queue2 (syscap=switch-rate) | num | Egress rate limit for queue 2. |
| egress-rate-queue3 (syscap=switch-rate) | num | Egress rate limit for queue 3. |
| egress-rate-queue4 (syscap=switch-rate) | num | Egress rate limit for queue 4. |
| egress-rate-queue5 (syscap=switch-rate) | num | Egress rate limit for queue 5. |
| egress-rate-queue6 (syscap=switch-rate) | num | Egress rate limit for queue 6. |
| egress-rate-queue7 (syscap=switch-rate) | num | Egress rate limit for queue 7. |
Port Stats
[admin@Mikrotik] /interface/ethernet/switch/qos/port> print stats where name=ether2
name: ether2
tx-packet: 2 887
tx-byte: 3 938 897
drop-packet: 1 799
drop-byte: 2 526 144
tx-queue0-packet: 50
tx-queue1-packet: 1 871
tx-queue3-packet: 774
tx-queue5-packet: 192
tx-queue0-byte: 3 924
tx-queue1-byte: 2 468 585
tx-queue3-byte: 1 174 932
tx-queue5-byte: 291 456
drop-queue1-packet: 1 799
drop-queue1-byte: 2 526 144
Port Resources/Usage
Due to hardware limitations, some switch chip models may break traffic flow while accessing QoS port usage data. Use port usage for diagnostics/troubleshooting only. For monitoring, use QoS monitor or Port stats instead.
[admin@crs326] /interface/ethernet/switch/qos/port> print usage where name=ether2
name: ether2
packet-cap: 136
packet-use: 5
byte-cap: 35 840
byte-use: 9 472
queue0-packet-cap: 130
queue0-packet-use: 1
queue1-packet-cap: 5
queue1-packet-use: 4
queue3-packet-cap: 65
queue3-packet-use: 2
queue0-byte-cap: 24 576
queue0-byte-use: 256
queue1-byte-cap: 7 680
queue1-byte-use: 6 144
queue3-byte-cap: 14 080
queue3-byte-use: 3 072
Port PFC Stats (Previous Generations)
[admin@crs317] /interface/ethernet/switch/qos/port> print pfc interval=1 where running
name: sfp-sfpplus1 sfp-sfpplus2 ether1
pfc: roce disabled disabled
pfc-tx: 46
pfc-paused-tc: 3
pfc3-pause-threshold: 1 048 576
pfc3-resume-threshold: 10 240
pfc3-use: 1 075 200
Port PFC Stats (New Generations)
[admin@crs812] /interface/ethernet/switch/qos/port> print pfc interval=1 where pfc=roce
name: sfp56-5
pfc: roce
rx-pause: 287
tx-pause: 46
pfc3-use: 2 184 200
| Read-only Argument | Type | Description |
|---|---|---|
| name | string | Port name. |
| switch | enum | Switch chip name. |
| tx-packet | multi { counter: num } | The total number of packets transmitted via this port. |
| tx-bytes | multi { counter: num } | The total number of bytes transmitted via this port. |
| packet-use (syscap=!prestera-cpss) | num | Port's packet usage. The number of packets currently enqueued in all port's queues. |
| byte-use | num | Port's byte usage. The size of hardware buffers (in bytes) that are currently allocated for the enqueued packets. Since the buffers are allocated by blocks (usually - 256B each), the allocated buffer size can be bigger than the actual payload. |
| queue0-shared-packet-cap (syscap=prestera-bc2) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 0. |
| queue1-shared-packet-cap (syscap=prestera-bc2) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 1. |
| queue2-shared-packet-cap (syscap=prestera-bc2) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 2. |
| queue3-shared-packet-cap (syscap=prestera-bc2) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 3. |
| queue4-shared-packet-cap (syscap=prestera-bc2) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 4. |
| queue5-shared-packet-cap (syscap=prestera-bc2) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 5. |
| queue6-shared-packet-cap (syscap=prestera-bc2) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 6. |
| queue7-shared-packet-cap (syscap=prestera-bc2) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 7. |
| queue0-shared-byte-cap (syscap=!prestera-ac3) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 0. |
| queue1-shared-byte-cap (syscap=!prestera-ac3) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 1. |
| queue2-shared-byte-cap (syscap=!prestera-ac3) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 2. |
| queue3-shared-byte-cap (syscap=!prestera-ac3) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 3. |
| queue4-shared-byte-cap (syscap=!prestera-ac3) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 4. |
| queue5-shared-byte-cap (syscap=!prestera-ac3) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 5. |
| queue6-shared-byte-cap (syscap=!prestera-ac3) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 6. |
| queue7-shared-byte-cap (syscap=!prestera-ac3) | num | Shared queue capacity (individual queue capacity + shared buffers) for queue 7. |
| queue0-packet-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of packets that can be enqueued in queue 0. |
| queue1-packet-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of packets that can be enqueued in queue 1. |
| queue2-packet-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of packets that can be enqueued in queue 2. |
| queue3-packet-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of packets that can be enqueued in queue 3. |
| queue4-packet-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of packets that can be enqueued in queue 4. |
| queue5-packet-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of packets that can be enqueued in queue 5. |
| queue6-packet-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of packets that can be enqueued in queue 6. |
| queue7-packet-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of packets that can be enqueued in queue 7. |
| queue0-byte-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of bytes that can be enqueued in queue 0. |
| queue1-byte-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of bytes that can be enqueued in queue 1. |
| queue2-byte-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of bytes that can be enqueued in queue 2. |
| queue3-byte-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of bytes that can be enqueued in queue 3. |
| queue4-byte-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of bytes that can be enqueued in queue 4. |
| queue5-byte-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of bytes that can be enqueued in queue 5. |
| queue6-byte-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of bytes that can be enqueued in queue 6. |
| queue7-byte-cap (syscap=!prestera-cpss) | num | Individual queue capacity. The maximum number of bytes that can be enqueued in queue 7. |
| queue0-packet-use (syscap=!prestera-cpss) | num | Queue packet usage. The number of enqueued packets in queue 0. |
| queue1-packet-use (syscap=!prestera-cpss) | num | Queue packet usage. The number of enqueued packets in queue 1. |
| queue2-packet-use (syscap=!prestera-cpss) | num | Queue packet usage. The number of enqueued packets in queue 2. |
| queue3-packet-use (syscap=!prestera-cpss) | num | Queue packet usage. The number of enqueued packets in queue 3. |
| queue4-packet-use (syscap=!prestera-cpss) | num | Queue packet usage. The number of enqueued packets in queue 4. |
| queue5-packet-use (syscap=!prestera-cpss) | num | Queue packet usage. The number of enqueued packets in queue 5. |
| queue6-packet-use (syscap=!prestera-cpss) | num | Queue packet usage. The number of enqueued packets in queue 6. |
| queue7-packet-use (syscap=!prestera-cpss) | num | Queue packet usage. The number of enqueued packets in queue 7. |
| queue0-byte-use | num | Queue buffer usage (in bytes) for queue 0. |
| queue1-byte-use | num | Queue buffer usage (in bytes) for queue 1. |
| queue2-byte-use | num | Queue buffer usage (in bytes) for queue 2. |
| queue3-byte-use | num | Queue buffer usage (in bytes) for queue 3. |
| queue4-byte-use | num | Queue buffer usage (in bytes) for queue 4. |
| queue5-byte-use | num | Queue buffer usage (in bytes) for queue 5. |
| queue6-byte-use | num | Queue buffer usage (in bytes) for queue 6. |
| queue7-byte-use | num | Queue buffer usage (in bytes) for queue 7. |
| byte-max (syscap=prestera-bc2) | num | Maximum port buffer fill level (in bytes). Use the reset-counters command to reset values. |
| queue0-byte-max (syscap=!prestera-ac3) | num | Maximum queue buffer fill level (in bytes) for queue 0. |
| queue1-byte-max (syscap=!prestera-ac3) | num | Maximum queue buffer fill level (in bytes) for queue 1. |
| queue2-byte-max (syscap=!prestera-ac3) | num | Maximum queue buffer fill level (in bytes) for queue 2. |
| queue3-byte-max (syscap=!prestera-ac3) | num | Maximum queue buffer fill level (in bytes) for queue 3. |
| queue4-byte-max (syscap=!prestera-ac3) | num | Maximum queue buffer fill level (in bytes) for queue 4. |
| queue5-byte-max (syscap=!prestera-ac3) | num | Maximum queue buffer fill level (in bytes) for queue 5. |
| queue6-byte-max (syscap=!prestera-ac3) | num | Maximum queue buffer fill level (in bytes) for queue 6. |
| queue7-byte-max (syscap=!prestera-ac3) | num | Maximum queue buffer fill level (in bytes) for queue 7. |
| pfc0-pause-threshold (syscap=prestera-bc2) | num | Pause threshold of traffic class 0. |
| pfc1-pause-threshold (syscap=prestera-bc2) | num | Pause threshold of traffic class 1. |
| pfc2-pause-threshold (syscap=prestera-bc2) | num | Pause threshold of traffic class 2. |
| pfc3-pause-threshold (syscap=prestera-bc2) | num | Pause threshold of traffic class 3. |
| pfc4-pause-threshold (syscap=prestera-bc2) | num | Pause threshold of traffic class 4. |
| pfc5-pause-threshold (syscap=prestera-bc2) | num | Pause threshold of traffic class 5. |
| pfc6-pause-threshold (syscap=prestera-bc2) | num | Pause threshold of traffic class 6. |
| pfc7-pause-threshold (syscap=prestera-bc2) | num | Pause threshold of traffic class 7. |
| pfc0-resume-threshold (syscap=prestera-bc2) | num | Resume threshold of traffic class 0. |
| pfc1-resume-threshold (syscap=prestera-bc2) | num | Resume threshold of traffic class 1. |
| pfc2-resume-threshold (syscap=prestera-bc2) | num | Resume threshold of traffic class 2. |
| pfc3-resume-threshold (syscap=prestera-bc2) | num | Resume threshold of traffic class 3. |
| pfc4-resume-threshold (syscap=prestera-bc2) | num | Resume threshold of traffic class 4. |
| pfc5-resume-threshold (syscap=prestera-bc2) | num | Resume threshold of traffic class 5. |
| pfc6-resume-threshold (syscap=prestera-bc2) | num | Resume threshold of traffic class 6. |
| pfc7-resume-threshold (syscap=prestera-bc2) | num | Resume threshold of traffic class 7. |
| pfc0-use (syscap=!prestera-ac3) | num | Current buffer usage of traffic class 0 (in bytes). In other words, it is the total size of all queued packets on all ports that were received from this port. Only PFC-enabled traffic classes are displayed. |
| pfc1-use (syscap=!prestera-ac3) | num | Current buffer usage of traffic class 1 (in bytes). In other words, it is the total size of all queued packets on all ports that were received from this port. Only PFC-enabled traffic classes are displayed. |
| pfc2-use (syscap=!prestera-ac3) | num | Current buffer usage of traffic class 2 (in bytes). In other words, it is the total size of all queued packets on all ports that were received from this port. Only PFC-enabled traffic classes are displayed. |
| pfc3-use (syscap=!prestera-ac3) | num | Current buffer usage of traffic class 3 (in bytes). In other words, it is the total size of all queued packets on all ports that were received from this port. Only PFC-enabled traffic classes are displayed. |
| pfc4-use (syscap=!prestera-ac3) | num | Current buffer usage of traffic class 4 (in bytes). In other words, it is the total size of all queued packets on all ports that were received from this port. Only PFC-enabled traffic classes are displayed. |
| pfc5-use (syscap=!prestera-ac3) | num | Current buffer usage of traffic class 5 (in bytes). In other words, it is the total size of all queued packets on all ports that were received from this port. Only PFC-enabled traffic classes are displayed. |
| pfc6-use (syscap=!prestera-ac3) | num | Current buffer usage of traffic class 6 (in bytes). In other words, it is the total size of all queued packets on all ports that were received from this port. Only PFC-enabled traffic classes are displayed. |
| pfc7-use (syscap=!prestera-ac3) | num | Current buffer usage of traffic class 7 (in bytes). In other words, it is the total size of all queued packets on all ports that were received from this port. Only PFC-enabled traffic classes are displayed. |
| pfc-paused-tc (syscap=prestera-bc2) | multi { array-id, tc: num } | The list of traffic classes that should be paused. PFC pause frames (XOFF) are periodically sent with the listed timers set from this port. |
| pfc-unknown (syscap=prestera-bc2) | multi { counter: num } | Unknown PFC frame count. |
| pfc-rx (syscap=prestera-bc2) | multi { counter: num } | Received PFC frame count. |
| pfc-tx (syscap=prestera-bc2) | num | Transmitted PFC frame count. |
| rx-pause (syscap=prestera-cpss) | multi { counter: num } | Received pause frame count. |
| tx-pause (syscap=prestera-cpss) | multi { counter: num } | Transmitted pause frame count. |
| tx-queue0-packet | multi { counter: num } | The number of packets transmitted via this port from queue 0. |
| tx-queue0-byte | multi { counter: num } | The number of bytes transmitted via this port from queue 0. |
| tx-queue1-packet | multi { counter: num } | The number of packets transmitted via this port from queue 1. |
| tx-queue1-byte | multi { counter: num } | The number of bytes transmitted via this port from queue 1. |
| tx-queue2-packet | multi { counter: num } | The number of packets transmitted via this port from queue 2. |
| tx-queue2-byte | multi { counter: num } | The number of bytes transmitted via this port from queue 2. |
| tx-queue3-packet | multi { counter: num } | The number of packets transmitted via this port from queue 3. |
| tx-queue3-byte | multi { counter: num } | The number of bytes transmitted via this port from queue 3. |
| tx-queue4-packet | multi { counter: num } | The number of packets transmitted via this port from queue 4. |
| tx-queue4-byte | multi { counter: num } | The number of bytes transmitted via this port from queue 4. |
| tx-queue5-packet | multi { counter: num } | The number of packets transmitted via this port from queue 5. |
| tx-queue5-byte | multi { counter: num } | The number of bytes transmitted via this port from queue 5. |
| tx-queue6-packet | multi { counter: num } | The number of packets transmitted via this port from queue 6. |
| tx-queue6-byte | multi { counter: num } | The number of bytes transmitted via this port from queue 6. |
| tx-queue7-packet | multi { counter: num } | The number of packets transmitted via this port from queue 7. |
| tx-queue7-byte | multi { counter: num } | The number of bytes transmitted via this port from queue 7. |
| tx-drop-packet | multi { counter: num } | Total transmitted packets dropped. |
| tx-drop-byte | multi { counter: num } | Total transmitted bytes dropped. |
| tx-drop-queue0-packet | multi { counter: num } | The number of packets dropped from queue 0. |
| tx-drop-queue0-byte | multi { counter: num } | The number of bytes dropped from queue 0. |
| tx-drop-queue1-packet | multi { counter: num } | The number of packets dropped from queue 1. |
| tx-drop-queue1-byte | multi { counter: num } | The number of bytes dropped from queue 1. |
| tx-drop-queue2-packet | multi { counter: num } | The number of packets dropped from queue 2. |
| tx-drop-queue2-byte | multi { counter: num } | The number of bytes dropped from queue 2. |
| tx-drop-queue3-packet | multi { counter: num } | The number of packets dropped from queue 3. |
| tx-drop-queue3-byte | multi { counter: num } | The number of bytes dropped from queue 3. |
| tx-drop-queue4-packet | multi { counter: num } | The number of packets dropped from queue 4. |
| tx-drop-queue4-byte | multi { counter: num } | The number of bytes dropped from queue 4. |
| tx-drop-queue5-packet | multi { counter: num } | The number of packets dropped from queue 5. |
| tx-drop-queue5-byte | multi { counter: num } | The number of bytes dropped from queue 5. |
| tx-drop-queue6-packet | multi { counter: num } | The number of packets dropped from queue 6. |
| tx-drop-queue6-byte | multi { counter: num } | The number of bytes dropped from queue 6. |
| tx-drop-queue7-packet | multi { counter: num } | The number of packets dropped from queue 7. |
| tx-drop-queue7-byte | multi { counter: num } | The number of bytes dropped from queue 7. |