How to limit a LAN port bandwidth on AR750

Hello experts,
I try to capture packets between 2 LAN ports on AR750 by tcpdump.
As LAN ports are connected to hardware switch in SoC, I mirrored one LAN port to eth1.

Packets can be captured, the problem is both TF card and USB disk writting speed is only 10MB, and LAN speed is about 11MB, so tcpdump dropped some packets.

I wonder how to limit LAN port bandwidth to 8 or 9 MB/s ?

Packets were dropped might caused by other issue.

In general, it won’t drop packet, even if the speed on Ethernet is faster than USB or TF card.

You can use ethtool to set the Ethernet device’s speed.

Thanks help looking into this issue!
Ethtool doesn’t work here, because LAN ports not connected to cpu, they are SoC internal hardware switch interfaces.

Regarding “tcpdump dropped” packets I mean these packets are not saved to file due to file writing is slow than network speed. These file not dropped by switch, they are delivered to destination.

Does anyone known how to limit switch interface bandwidth?

If you’re looking for port traffic specifically - tcpdump has filters…

For example…

tcpdump "src port 22" and "dst host"

Thanks for your help!
Actually I want to capture all data, so shouldn’t set any filter.
I think the choice is either limiting LAN ports speed or speeding up TF/USB writing speed. Seems the latter one is impossible which limited by SoC chip speed.

If you have an old ethernet hub handy - all traffic goes to all ports on a hub… I keep an older hub in my drawer for this very reason.

Plug the uplink port to LAN1 of the router, and source/sink to downlink ports on the hub, and monitor device to one of the remaining downlink ports and capture the traffic there - and there, you can use wireshark directly to capture the packets.

(can do the same with a managed switch in many cases using port mirroring…)