Firefly Open Source Community

Title: Unstable network connection in Android Nougat because of TCP offload enabled [Print This Page]

Author: systemservice    Time: 2/20/2019 00:23
Title: Unstable network connection in Android Nougat because of TCP offload enabled
Hello,

I think I'm experiencing similar networking problems as described here and other forums.

https://github.com/Fourdee/DietPi/issues/2028

It looks like different RK3399 devices are affected, for example: NanoPi M4, RockPro64, OrangePI and maybe others.

But what about Firefly-RK3399, is TCP offload enabled there, and if yes, how to disable it?
I think there is no ethtool available in Android Nougat, but maybe there is another way to disable it?

Thank you.
Arthur

Author: penguin    Time: 2/20/2019 17:42
Does this affect you in Android? Could you please tell us how to reproduce
the problem in Android?
Author: systemservice    Time: 2/22/2019 18:39
Last edited by systemservice In 2/22/2019 18:42 Editor

Yes, this happens in Android 7.1.2. I'm using more than 15 pieces of RK3399 devices for different projects.
If I google for "RK3399 network error" or something like that, then I see that NanoPi M4, RockPro64 and OrangePI seem to have an issue which was solved by "ethtool -K eth0 rx off tx off".
I have already build "ethtool" for Android and used it to disable TCP offloading as described in the forums, but it didn't solve the issue.

If I knew, that Firefly-RK3399 with Android7/8 is NOT affected, then I would probably switch to Firefly-RK3399.

Description:

All devices (more than 15) are used 24/7. They are downloading small HTTP content every minute, usually below 100KB, but sometimes about 10 MB.

Usually several times a week one of the devices gets OFFLINE suddenly, sometimes for 5 min., sometimes for 30 min, somtimes for longer than 1h. If you sum all devices this happens nearly every day and sometimes several times a day.

In dmesg-Log I see, that the device switches from 100Mbit link speed to 10Mbit, and than back to 100Mbit. It is offline during this time.
Log:
  1. [1487388.081884] rk_gmac-dwmac fe300000.ethernet eth0: Link is Up - 10Mbps/Half - flow control off
  2. # So, 17. Feb 2019 08:28:51
  3. [1488648.768330] rk_gmac-dwmac fe300000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
  4. # So, 17. Feb 2019 23:14:46
  5. [1541803.160657] rk_gmac-dwmac fe300000.ethernet eth0: Link is Up - 10Mbps/Full - flow control off
  6. # So, 17. Feb 2019 23:24:46
  7. [1542403.393871] rk_gmac-dwmac fe300000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
Copy the code


At all switch ports these devices are connected to, I/O errors are logged in the port statistics. The error counter increases, when the device is offline. Other clients connected to the same CISCO 100Mbit switch are not affected.

May Firefly-RK3399 have the same issue?


Author: penguin    Time: 2/28/2019 14:57
Can you use iperf for android to reproduce this error?




Welcome Firefly Open Source Community (https://bbs.t-firefly.com/) Powered by Discuz! X3.1