dcmi_get_netdev_pkt_stats_info接口原型
函数原型
int dcmi_get_netdev_pkt_stats_info(int card_id, int device_id, int port_id, struct dcmi_network_pkt_stats_info *network_pkt_stats_info)
功能说明
查询NPU设备网口当前收发包数统计。
参数说明
参数名称 |
输入/输出 |
类型 |
描述 |
---|---|---|---|
card_id |
输入 |
int |
指定NPU管理单元的ID,当前实际支持的ID通过dcmi_get_card_list接口获取。 |
device_id |
输入 |
int |
指定设备编号,通过dcmi_get_device_id_in_card接口获取。 |
port_id |
输入 |
int |
NPU设备的网口端号,当前仅支持配置0。 |
network_pkt_stats_info |
输出 |
dcmi_network_pkt_stats_info |
struct dcmi_network_pkt_stats_info { unsigned long long mac_tx_mac_pause_num; MAC发送的pause帧总报文数 unsigned long long mac_rx_mac_pause_num; MAC接收的pause帧总报文数 unsigned long long mac_tx_pfc_pkt_num; MAC发送的PFC帧总报文数 unsigned long long mac_tx_pfc_pri0_pkt_num; MAC 0号调度队列发送的PFC帧总报文数 unsigned long long mac_tx_pfc_pri1_pkt_num; MAC 1号调度队列发送的PFC帧总报文数 unsigned long long mac_tx_pfc_pri2_pkt_num; MAC 2号调度队列发送的PFC帧总报文数 unsigned long long mac_tx_pfc_pri3_pkt_num; MAC 3号调度队列发送的PFC帧总报文数 unsigned long long mac_tx_pfc_pri4_pkt_num; MAC 4号调度队列发送的PFC帧总报文数 unsigned long long mac_tx_pfc_pri5_pkt_num; MAC 5号调度队列发送的PFC帧总报文数 unsigned long long mac_tx_pfc_pri6_pkt_num; MAC 6号调度队列发送的PFC帧总报文数 unsigned long long mac_tx_pfc_pri7_pkt_num; MAC 7号调度队列发送的PFC帧总报文数 unsigned long long mac_rx_pfc_pkt_num; MAC接收的PFC帧总报文数 unsigned long long mac_rx_pfc_pri0_pkt_num; MAC 0号调度队列接收的PFC帧总报文数 unsigned long long mac_rx_pfc_pri1_pkt_num; MAC 1号调度队列接收的PFC帧总报文数 unsigned long long mac_rx_pfc_pri2_pkt_num; MAC 2号调度队列接收的PFC帧总报文数 unsigned long long mac_rx_pfc_pri3_pkt_num; MAC 3号调度队列接收的PFC帧总报文数 unsigned long long mac_rx_pfc_pri4_pkt_num; MAC 4号调度队列接收的PFC帧总报文数 unsigned long long mac_rx_pfc_pri5_pkt_num; MAC 5号调度队列接收的PFC帧总报文数 unsigned long long mac_rx_pfc_pri6_pkt_num; MAC 6号调度队列接收的PFC帧总报文数 unsigned long long mac_rx_pfc_pri7_pkt_num; MAC 7号调度队列接收的PFC帧总报文数 unsigned long long mac_tx_total_pkt_num; MAC发送的总报文数 unsigned long long mac_tx_total_oct_num; MAC发送的总报文字节数 unsigned long long mac_tx_bad_pkt_num; MAC发送的坏包总报文数 unsigned long long mac_tx_bad_oct_num; MAC发送的坏包总报文字节数 unsigned long long mac_rx_total_pkt_num; MAC接收的总报文数 unsigned long long mac_rx_total_oct_num; MAC接收的总报文字节数 unsigned long long mac_rx_bad_pkt_num; MAC接收的坏包总报文数 unsigned long long mac_rx_bad_oct_num; MAC接收的坏包总报文字节数 unsigned long long mac_rx_fcs_err_pkt_num; MAC接收的存在FCS错误的报文数 unsigned long long roce_rx_rc_pkt_num; RoCEE接收的RC类型报文数 unsigned long long roce_rx_all_pkt_num; RoCEE接收的总报文数 unsigned long long roce_rx_err_pkt_num; RoCEE接收的坏包总报文数 unsigned long long roce_tx_rc_pkt_num; RoCEE发送的RC类型报文数 unsigned long long roce_tx_all_pkt_num; RoCEE发送的总报文数 unsigned long long roce_tx_err_pkt_num; RoCEE发送的坏包总报文数 unsigned long long roce_cqe_num; RoCEE任务完成的总元素个数 unsigned long long roce_rx_cnp_pkt_num; RoCEE接收的CNP类型报文数 unsigned long long roce_tx_cnp_pkt_num; RoCEE发送的CNP类型报文数 unsigned long long roce_err_ack_num; RoCEE接收的非预期ACK报文数,NPU做丢弃处理,不影响业务 unsigned long long roce_err_psn_num; RoCEE接收的PSN>预期PSN的报文,或重复PSN报文数。乱序或丢包,会触发重传 unsigned long long roce_verification_err_num; RoCEE接收的域段校验错误的报文数,如:icrc、报文长度、目的端口号等校验失败 unsigned long long roce_err_qp_status_num; RoCEE接收的QP连接状态异常产生的报文数 unsigned long long roce_new_pkt_rty_num; RoCEE发送的超次重传的数量统计 unsigned long long roce_ecn_db_num; RoCEE接收的存在ECN标记位的报文数 unsigned long long nic_tx_all_pkg_num; NIC发送的总报文数 unsigned long long nic_tx_all_oct_num; NIC发送的总报文字节数 unsigned long long nic_rx_all_pkg_num; NIC接收的总报文数 unsigned long long nic_rx_all_oct_num; NIC接收的总报文字节数 long tv_sec; 查询发生时的当前系统时间(单位s) long tv_usec; 查询发生时的当前系统时间(单位us) unsigned char reserved[64]; }; |
返回值
类型 |
描述 |
---|---|
int |
处理结果:
|
异常处理
无。
约束说明
Linux物理机 |
Linux物理机容器 |
|
---|---|---|
root用户 |
运行用户组(非root用户) |
root用户 |
N |
N |
NA |
调用示例
… int ret = 0; int card_id=0; int device_id=0; int port_id=0; struct dcmi_network_pkt_stats_info network_pkt_stats_info = {0}; ret = dcmi_get_netdev_pkt_stats_info (card_id, device_id, port_id, &network_pkt_stats_info); if (ret != 0){ //todo:记录日志 return ret; } …