了解 DPDK pktgen 的目标寻址
Understanding DPDK pktgen's destination addressing
我有两个 Emulab 服务器,都配置为 DPDK。一个(称之为客户端)运行 pktgen;另一个(称之为服务器)运行 l2fwd。
在客户端,我在 pktgen 输出中看到以下内容:
Src/Dest Port : 1234 / 5678
Pkt Type:VLAN ID : IPv4 / TCP:0001
Dst IP Address : 192.168.1.1
Src IP Address : 192.168.0.1/24
Dst MAC Address : 00:00:00:00:00:00
Src MAC Address : a0:36:9f:08:1c:28
根据l2fwd的输出,服务器正在接收来自客户端的数据包。
我想我遗漏了一些有关这里寻址工作原理的信息;服务器启用 DPDK 的接口不应该有 IP 地址(我从来没有给它分配过 IP 地址)。客户端的数据包似乎没有 Dst MAC。
服务器如何获取这些数据包?客户端只是向网络广播吗? IP地址不应该是FF:FF:FF:FF:FF:FF吗?
回答您的问题:
the server's DPDK-enabled interface should not have an IP address (I never assigned it one)
不,不应该。但是 l2fwd 代表 OSI 第 2 层转发,即交换。切换不需要任何 IP 即可工作。
The client seems not to have a Dst MAC for its packets.
从输出来看,目标 MAC 全为零。
您可以使用 set mac <portlist> <mac>
CLI 命令更改它。
How is the server getting these packets? Is the client just broadcasting to the network? Shouldn't the IP address be FF:FF:FF:FF:FF:FF, then?
我想,在您的情况下,它是服务器上的 unknown unicast
+ 混杂模式。中间的交换机在其 MAC table 中没有地址 00:00:00:00:00:00
,因此它正在向所有端口(源和 VLAN 内除外)泛洪未知单播。
服务器收到这个帧是因为它把端口设置成混杂模式,所以网卡接受所有的帧,而不只是发往网卡的MAC.
希望这能回答您的问题。
我有两个 Emulab 服务器,都配置为 DPDK。一个(称之为客户端)运行 pktgen;另一个(称之为服务器)运行 l2fwd。
在客户端,我在 pktgen 输出中看到以下内容:
Src/Dest Port : 1234 / 5678
Pkt Type:VLAN ID : IPv4 / TCP:0001
Dst IP Address : 192.168.1.1
Src IP Address : 192.168.0.1/24
Dst MAC Address : 00:00:00:00:00:00
Src MAC Address : a0:36:9f:08:1c:28
根据l2fwd的输出,服务器正在接收来自客户端的数据包。
我想我遗漏了一些有关这里寻址工作原理的信息;服务器启用 DPDK 的接口不应该有 IP 地址(我从来没有给它分配过 IP 地址)。客户端的数据包似乎没有 Dst MAC。
服务器如何获取这些数据包?客户端只是向网络广播吗? IP地址不应该是FF:FF:FF:FF:FF:FF吗?
回答您的问题:
the server's DPDK-enabled interface should not have an IP address (I never assigned it one)
不,不应该。但是 l2fwd 代表 OSI 第 2 层转发,即交换。切换不需要任何 IP 即可工作。
The client seems not to have a Dst MAC for its packets.
从输出来看,目标 MAC 全为零。
您可以使用 set mac <portlist> <mac>
CLI 命令更改它。
How is the server getting these packets? Is the client just broadcasting to the network? Shouldn't the IP address be FF:FF:FF:FF:FF:FF, then?
我想,在您的情况下,它是服务器上的 unknown unicast
+ 混杂模式。中间的交换机在其 MAC table 中没有地址 00:00:00:00:00:00
,因此它正在向所有端口(源和 VLAN 内除外)泛洪未知单播。
服务器收到这个帧是因为它把端口设置成混杂模式,所以网卡接受所有的帧,而不只是发往网卡的MAC.
希望这能回答您的问题。