Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simple ping-pong mTCP app - slow ping (0.016 sec on a direct 10G connection) - mTCP not production-ready #306

Open
vitalif opened this issue Aug 5, 2020 · 0 comments

Comments

@vitalif
Copy link

vitalif commented Aug 5, 2020

Hi.
I managed to get mTCP up and running. To accomplish that I did the following:

  • I updated DPDK and removed lcore_config usage
  • I removed dpdk-iface-kmod and moved the IP configuration to the config (via a monkey-patch with hardcode by now)
  • Changed all RX_*THRESH and TX_*THRESH to 0 because sfc_efx DPDK driver doesn't support them
  • Added rx_drop_en = 1 because, again, sfc_efx needs it
  • Changed RSS key size to 40 bytes

Then I wrote a simple ping-pong app that basically sends 4096 byte packets and receives them back.
HOWEVER, the result is sad. Ping-pong time is 16 MILLIseconds on a direct 10G connection (Intel X520 <> Solarflare SFN7122F), with 100% CPU usage.
I suspect there's a usleep(16000) but I can't easily tell where it is :-).
I see mTCP lacks NODELAY, maybe that's the cause, MTU configuration is also lacking.
No idea if you're watching issues here, but maybe... maybe you'll see this one :)
Anyway I'm probably going to try F-Stack because mTCP seems more like a toy project than a production-ready library...

@vitalif vitalif changed the title Simple ping-pong mTCP app - slow ping (0.016 sec on a direct 10G connection) Simple ping-pong mTCP app - slow ping (0.016 sec on a direct 10G connection) - mTCP not production-ready Aug 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant