Plan: secure-channel#335
Plan: secure-channel#335yusefnapora wants to merge 7 commits intotestground:masterfrom yusefnapora:plan/secure-channel
Conversation
also adds a teardown function to clean up
also removes calls to runenv.Abort & updates to return errors from test
also, emits separate read and write time metrics
|
A quick update on this - I've been trying to figure out what's causing "broken pipe" errors when running this test with noise. log output with broken pipeWhat's odd is that the tests were still completing, so I tried using blankhost to eliminate the possibility that a background stream was getting terminated. The errors are still present with blankhost though, and I discovered that with a large enough payload size (~ 100kb) it will reliably fail the test as well. log from failed test runThis seems like an actual bug in Noise, so now I'm investigating and trying to reproduce in an integration test outside of testground. |
|
I think that there are two separate issues related to the errors in the above comment. The stream reset / decryption errors from the failed test run I believe were caused by libp2p/go-libp2p-noise#37 and fixed in libp2p/go-libp2p-noise#38. I can now send any amount of data and complete the test. I'm still seeing "broken pipe" errors, but I believe I've figured out the cause of those as well. The pipe is actually being broken, because the initiator was making multiple connection attempts to the responder and killing one of them once the other succeeds. If I change the code that adds remote peer addrs to the peerstore and only add a single address, the broken pipe errors go away. |
This adds a
secure-channeltest plan, described in libp2p/go-libp2p-noise#32It just configures a libp2p
Hostusing the providedsecure_channelparam and does a transfer of random data (length set by thepayload_sizeparam) from one peer to another.Valid
secure_channelvalues aresecio,tls, andnoise.TODO: