本帖最后由 mallocsizeofint 于 2022-6-14 10:01 编辑
我在尝试在DPU上通过DOCA Flow (SDK1.3)收发包。 I am trying to transmit & receive packets on DPU using DOCA Flow(SDK1.3) API. (doca_flow_init, doca_flow_port_start)
将rte_eth_rx_burst所得到的所有包输出成pcap文件,使用wireshark打开,如图所示。 All packets received by rte_eth_rx_burst are formatted to .pcap file, which is displayed with wireshark, as the figure shows.
无论我是否通过rte_eth_tx_burst发包,这些LLDP和DHCP包都能被物理端口(p0/p1)或者representor收到。 These LLDP and DHCP packets can always be received by both physical interface (p0/p1) or representor, independent to whether rte_eth_tx_burst is called or not. 我的问题是,(网口间拓扑暂时不重要) My QUESTIONS are: (Topologies are not important right now)
(1)在DPDK初始化mlx5网口后,LLDP包为何还能被发送?被谁发送的? After mlx5 NICs initialized by DPDK, why can these LLDP packets be sent? By WHO (on-dpu OvS control plane)?
(2)LLDP和DHCP似乎都在执行链路发现协议,APP对于这些包是否有做出回应的义务? Both LLDP and DHCP are trying to establish LINK DISCOVERY dialogues. Is APP (DOCA Flow Application) responsible in replying to these packets?
感谢任何讨论! Any discussion is welcomed!
- struct doca_flow_cfg flow_cfg = {
- .queues = 1,
- .resource = {
- .nb_counters = 0,
- .nb_meters = 0,
- },
- .mode_args = "switch",
- .aging = 0,
- .nr_shared_resources = {0},
- .queue_depth = 64,
- .cb = NULL
- };
复制代码 |