dcmi_start_hccsping_mesh接口原型
函数原型
int dcmi_start_hccsping_mesh (int card_id, int device_id, int port_id, struct dcmi_hccsping_mesh_operate *hccsping_mesh)
功能说明
开启ping mesh常驻任务。
参数说明
参数名称 |
输入/输出 |
类型 |
描述 |
---|---|---|---|
card_id |
输入 |
int |
指定NPU管理单元ID,当前实际支持的ID通过dcmi_get_card_list接口获取。 |
device_id |
输入 |
int |
指定设备编号,通过dcmi_get_device_id_in_card接口获取。取值范围如下: NPU芯片:[0, device_id_max-1]。 |
port_id |
输入 |
int |
预留,NPU设备的网口端口号,当前仅支持配置0。 |
hccsping_mesh |
输入 |
struct dcmi_hccsping_mesh_operate * |
开启pingmesh常驻任务的相关信息,包含dst_addr_list、pkt_size、pkt_send_num、pkt_interval、task_interval、task_id、timeout。 struct dcmi_hccsping_mesh_operate { char dst_addr_list[IP_ADDR_LIST_LEN];//IPv4地址/sdid列表,二者选其一,以英文逗号分割 int pkt_size;//ping报文大小,取值范围[1792, 3000],单位Byte。 其中报文头大小为1024Byte,后续1025Byte~pkt_size字段进行正确性校验,每1024Byte的字段类型分布为:0xFF(256Byte)、0x00(256Byte)、0xAA(256Byte)、0x55(256Byte) int pkt_send_num;//ping报文发送数量,取值范围[1, 1000] int pkt_interval;//ping报文间隔,取值范围[0, 1000],单位ms int timeout;//预留,报文超时时间,timeout>=0 int task_interval;//常驻任务轮询间隔,取值范围[1, 60],单位s int task_id;//任务号,取值范围[0, 1] }; |
返回值说明
类型 |
描述 |
---|---|
int |
处理结果:
|
异常处理
无
约束说明
Linux物理机 |
Linux物理机容器 |
|
---|---|---|
root用户 |
运行用户组(非root用户) |
root用户 |
N |
N |
N |
调用示例
… int ret = 0; int card_id = 0; int device_id = 0; int port_id = 0; struct dcmi_hccsping_mesh_operate hccsping_mesh = { .dst_addr_list = "192.0.2.193,192.0.3.198,192.0.2.195", .pkt_size = 1792, .pkt_send_num = 4, .pkt_interval = 1, .timeout = 1, .task_interval = 1, .task_id = 0 }; ret = dcmi_start_hccsping_mesh (card_id, device_id, port_id, &hccsping_mesh); if (ret != 0){ //todo:记录日志 return ret; } …