On 10/1/2021 4:07 PM, Stephen Hemminger wrote:
On Fri, 1 Oct 2021 15:36:18 +0100
Ferruh Yigit <ferruh.yi...@intel.com> wrote:
Other issues causing confusion is:
* maximum transmission unit (MTU) is payload of the Ethernet frame. And
'max_rx_pkt_len' is the size of the Ethernet frame. Difference is
Ethernet frame overhead, and this overhead may be different from
device to device based on what device supports, like VLAN and QinQ.
* 'max_rx_pkt_len' is only valid when application requested jumbo frame,
which adds additional confusion and some APIs and PMDs already
discards this documented behavior.
* For the jumbo frame enabled case, 'max_rx_pkt_len' is an mandatory
field, this adds configuration complexity for application.
One other issue which DPDK inherits from Linux and BSD is that
MTU (Maximum Transmission Unit) is overloaded to mean MRU (Maximum Receive
Unit).
On Linux, network devices are allowed to receive packets of any size they
want. MTU is used as a hint about "you need to accept at least MTU size
packets on receive". So MRU >= MTU.
In practice, and documentation, MRU and MTU are used synonymously.
Yes MTU is used to refer both MTU & MRU, same config value (MTU) is used
to configure both.
I don't know if there is a need to configure them separately, if there is we
can address it in another patch.