yggdrasil-network / yggdrasil-go

An experiment in scalable routing as an encrypted IPv6 overlay network

Home Page:https://yggdrasil-network.github.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Strange speed behavior after the first minute.

ufm opened this issue · comments

During testing of the previous issue, I encountered such strange behavior. The same two nodes. First, we perform a control test on the link-local address.

[  7][RX-C]  58.00-59.00  sec   476 MBytes  4.00 Gbits/sec                  
[  5][TX-C]  59.00-60.00  sec   738 MBytes  6.19 Gbits/sec    3   1.26 MBytes       
[  7][RX-C]  59.00-60.00  sec   419 MBytes  3.52 Gbits/sec                  
[  5][TX-C]  60.00-61.00  sec   742 MBytes  6.23 Gbits/sec  209    990 KBytes       
[  7][RX-C]  60.00-61.00  sec   516 MBytes  4.33 Gbits/sec                  
[  5][TX-C]  61.00-62.00  sec   761 MBytes  6.39 Gbits/sec   11   1.01 MBytes       
[  7][RX-C]  61.00-62.00  sec   517 MBytes  4.34 Gbits/sec                  
[  5][TX-C]  62.00-63.00  sec   791 MBytes  6.64 Gbits/sec    7   1.09 MBytes       

Nothing special is happening.
And now let's repeat the same test through yggdrasil.

[  5][TX-C]  58.00-59.00  sec   134 MBytes  1.12 Gbits/sec    0   3.14 MBytes       
[  7][RX-C]  58.00-59.00  sec   132 MBytes  1.11 Gbits/sec                  
[  5][TX-C]  59.00-60.00  sec   126 MBytes  1.06 Gbits/sec    0   3.14 MBytes       
[  7][RX-C]  59.00-60.00  sec   128 MBytes  1.07 Gbits/sec                  
[  5][TX-C]  60.00-61.00  sec  96.2 MBytes   807 Mbits/sec    0   3.14 MBytes       
[  7][RX-C]  60.00-61.00  sec  94.0 MBytes   788 Mbits/sec                  
[  5][TX-C]  61.00-62.00  sec  93.8 MBytes   786 Mbits/sec    0   3.14 MBytes       
[  7][RX-C]  61.00-62.00  sec  95.1 MBytes   798 Mbits/sec                  
[  5][TX-C]  62.00-63.00  sec  98.8 MBytes   828 Mbits/sec    0   3.14 MBytes       

The result is absolutely repeatable. Both on 0.5.4 and 0.5.4-5. The speed sharply drops exactly on the 60th second. I'll answer a possible question right away - the comparison was made through the same link-local through which the session between the nodes is established.
What else would you recommend checking to identify this issue? I currently don't have any ideas.

commented

The only thing I can think of here is that this coincides with session key rotation taking place after 60 seconds...

Will this be fixed? :)

commented

We have a suspicion of what is happening but so far I haven't been able to reproduce it.

I will try to have another look over the next couple days, otherwise it might be something we spend more time on or refactor after we've released some other fixes in 0.5.5.

Let me know if you need any assistance.