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

network performance is spotty #1241

Closed
whyrusleeping opened this issue May 18, 2015 · 8 comments
Closed

network performance is spotty #1241

whyrusleeping opened this issue May 18, 2015 · 8 comments
Assignees
Labels
kind/bug A bug in existing code (including security flaws) topic/libp2p Topic libp2p

Comments

@whyrusleeping
Copy link
Member

I put some timers around stream writes and did some testing, the results arent good. Writes will randomly take up to 3 seconds (rare occasion), and in the 800ms -> 1200ms range more frequently. The tests I ran were over wifi LAN, and 'ipfs ping' the peer in question reported an average latency of 2.3ms.

@whyrusleeping whyrusleeping added kind/bug A bug in existing code (including security flaws) topic/libp2p Topic libp2p labels May 18, 2015
@jbenet jbenet self-assigned this May 18, 2015
@jbenet jbenet mentioned this issue May 19, 2015
52 tasks
@whyrusleeping
Copy link
Member Author

@jbenet part of this issue i think is that msgio writes the length and the message separately, triggering two separate syscalls. This is made worse by the fact that #1065 hasnt yet merged.

@whyrusleeping whyrusleeping mentioned this issue May 26, 2015
49 tasks
@whyrusleeping whyrusleeping mentioned this issue Jun 2, 2015
58 tasks
@whyrusleeping
Copy link
Member Author

i think i found the root cause. tcp over wifi is the worst. just dont do it.

@whyrusleeping
Copy link
Member Author

preliminary tests show that QUIC deals with packet loss much better than tcp (http://www.connectify.me/blog/taking-google-quic-for-a-test-drive/ <- from 2013). So i'm hoping that we will see some good perf improvements when we finally get that.

@jbenet
Copy link
Member

jbenet commented Jun 3, 2015

@whyrusleeping yeah and because we use one tcp connection, we get the worst of all possible worlds because one drop will back up everything (this is called head-of-line blocking). QUIC fixes this.

We may want to write libutp bindings sooner.

@whyrusleeping
Copy link
Member Author

oh yeah, i forgot about that too... super shitty. i was debating asking the QUIC team what another dev could do to help the cause and hacking on that.

@jbenet
Copy link
Member

jbenet commented Jun 3, 2015

i saw an extraction, we could try to make bindings for it

@whyrusleeping whyrusleeping mentioned this issue Jun 9, 2015
50 tasks
@whyrusleeping
Copy link
Member Author

closing issue, we have utp, and performance appears to have improved even over tcp

@jbenet
Copy link
Member

jbenet commented Jan 13, 2016

We should add utp to the bootstrap addrs (when we allow multiple addrs per
bootstrap node)
On Fri, Jan 1, 2016 at 22:56 Jeromy Johnson [email protected]
wrote:

Closed #1241 #1241.


Reply to this email directly or view it on GitHub
#1241 (comment).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug A bug in existing code (including security flaws) topic/libp2p Topic libp2p
Projects
None yet
Development

No branches or pull requests

2 participants