Commit Graph

2250 Commits

Author SHA1 Message Date
orignal
7aacc97351 initialize requests before reseeds 2024-05-07 11:58:17 -04:00
orignal
c49e17ad40 use timestamp to reset rng 2024-05-07 11:53:18 -04:00
orignal
296b721929 shared_ptr for NetdbRequests 2024-05-06 18:23:20 -04:00
orignal
d0cf385f4b memory pool for requested destination. Reduced request attaempts to 5 2024-05-05 11:24:44 -04:00
orignal
b91f5a7430 fixed race condition on stop 2024-05-03 20:38:57 -04:00
orignal
4d8431907d use std::sample for exploratory selection if C++17 2024-05-03 19:09:31 -04:00
orignal
b0cf5130a2 don't try another flloofill if request already exists 2024-05-03 13:34:11 -04:00
orignal
396aa6944d cache complete request for a while and not send the same request again 2024-05-03 13:00:30 -04:00
orignal
8a20d3219b don't build exploratory selection on each request 2024-05-03 08:54:55 -04:00
orignal
13a746162a reduce exploratory selection size 2024-05-02 21:38:51 -04:00
orignal
7e5370fbe5 check for excluded routers during exploratory 2024-05-02 19:55:53 -04:00
orignal
ec59308fad return up to 16 hash in expolatory reply 2024-05-02 19:16:48 -04:00
orignal
5ed76b997c log initial destination request 2024-05-02 13:17:15 -04:00
orignal
535fbdb4c9 don't check exporatory too often 2024-05-01 15:57:04 -04:00
orignal
034332a0ef changed minimal exploratory interval to 55 seconds. added variance 2024-05-01 14:10:34 -04:00
orignal
a1eac6f28e drop unsolicited database serach replies 2024-05-01 13:40:01 -04:00
orignal
ba22a940f1 30 seconds timeout for exploratory requests 2024-05-01 12:08:47 -04:00
orignal
8439f6dc57 don't reply with close than us only floodfills for lookup 2024-05-01 09:48:34 -04:00
orignal
a21bec0ed8 check if router if real only if tunnel build rate is low and router's profile is presented when handle exploratory request 2024-04-30 14:16:05 -04:00
orignal
5adbc2c3fe don't stop lookup if number of attempts < 3 2024-04-30 12:52:00 -04:00
orignal
cdfdfc9e24 don't manage netdb is transports are not running 2024-04-30 07:51:46 -04:00
orignal
62d279e1b0 don't return routers with 'f' cap to exploratory request 2024-04-29 15:05:47 -04:00
orignal
a1fcd8af39 don't accept too old RouterInfo 2024-04-29 10:07:47 -04:00
orignal
8c6c954ea2 enable previously disabled floodfill 2024-04-28 11:23:35 -04:00
orignal
77bb7432bc insert previously ecluded floodfill back when connected 2024-04-28 11:16:59 -04:00
orignal
720ffa8a31 move traverse thrugh profiles files to deleting thread 2024-04-28 08:05:19 -04:00
orignal
733a4a2869 moved save/delete profile disk oprations to separate threads 2024-04-27 16:00:43 -04:00
orignal
648a884a18 use copy of excluded peers 2024-04-27 08:38:43 -04:00
orignal
8fe989050e use share_ptr to store peers 2024-04-27 08:18:49 -04:00
orignal
bb6212ccc1 fixed typo 2024-04-26 18:11:05 -04:00
orignal
5f39f65540 mutex for request's excluded peers 2024-04-26 15:35:32 -04:00
orignal
146b3f52c0 check if pool is ready before sending next request 2024-04-26 13:48:44 -04:00
orignal
cc75ccd070 don't manage requests if exploratory pool is not ready. use monotonic timer and milliseconds 2024-04-26 12:43:48 -04:00
orignal
0ddc514221 don't send next request if requested destination is over 2024-04-25 18:52:10 -04:00
Vort
6592fab41c manage netDb requests more frequently 2024-04-24 16:44:24 +03:00
orignal
02895d4cf5 respond with confirmied router to exploratory lookup 2024-04-23 18:30:56 -04:00
orignal
8b7941c4ce fixed typo 2024-04-23 18:21:25 -04:00
orignal
de673464d1 don't try to connect directy by SSU2 to unnconfirmed router if direct NTCP2 is presented 2024-04-23 11:40:11 -04:00
orignal
6ce2c30522 build client tunnels through confimed routers only if low rate 2024-04-22 13:03:59 -04:00
orignal
c5a1e8cac8 give preference to direct connection 2024-04-19 19:12:29 -04:00
orignal
f67c38d8d2 fixed typo 2024-04-18 18:06:24 -04:00
orignal
1f1a3270f7 fixed IsPublished for ipv6 2024-04-15 09:26:30 -04:00
orignal
ffee29272f avoid two firewalled routers in the row 2024-04-14 20:09:06 -04:00
orignal
26fac94d05 delete unused varibale 2024-04-08 19:24:44 -04:00
orignal
9a30068ae5 don't compare OBEP hash twice to check if it's a fresh tunnel 2024-04-08 19:00:02 -04:00
Vort
b2e21a4f12 increase maximum stream resend attempts to 9 2024-04-08 12:35:50 +03:00
Vort
57e46ba0cf reset stream RTO if outbound tunnel was changed 2024-04-07 21:24:56 +03:00
Vort
df3dc1f574 change tunnels during stream resend attempts 5 and 6 2024-04-07 17:30:19 +03:00
r4sas
1b5f67e185
[FS] misc: bump year
Signed-off-by: r4sas <r4sas@i2pmail.org>
2024-04-06 20:38:58 +00:00
orignal
c49dd712de 2.51.0 2024-04-06 08:53:54 -04:00
orignal
4f1cb74f75 request choking delay if too many NACKs. Drop window size to 1 if choking delay received 2024-04-02 18:49:16 -04:00
orignal
75df8d3c7b drop ack Through to last packet if Number of NACKs exceeds 255 2024-04-02 11:30:38 -04:00
orignal
85be76b01a check if LeaseSet was submitted recently. Fixed typo 2024-04-01 08:41:58 -04:00
Vort
ac9d92c681 select maximum SSU2 queue size depending on RTT value 2024-03-26 10:18:56 +02:00
Vort
a703d31893 don't double initial RTO 2024-03-19 10:48:42 +02:00
Vort
4f8f3a386f restart stream resend timer after updating initial RTO 2024-03-19 09:21:57 +02:00
Vort
83f0b9c041 extract single RTT sample from stream ACK 2024-03-19 09:21:43 +02:00
Vort
cf77be0eeb add lower limit for stream RTO 2024-03-19 06:37:21 +02:00
Vort
e7ff15c573 exclude resent stream packets from RTT calculations 2024-03-16 20:55:49 +02:00
orignal
161ff3579b don't delete new session with same router hash from sessions-by-hash table 2024-03-15 20:12:47 -04:00
orignal
f2085ecc8d fixed warning 2024-03-15 19:17:25 -04:00
Vort
d74033dd2b tune RTT calculations 2024-03-15 09:06:33 +02:00
Vort
0236769134 lower SSU2 resend traffic spikes 2024-03-14 19:41:16 +02:00
orignal
530a078535 don't request temination if session was not established 2024-03-13 13:56:10 -04:00
Vort
08cc256c54 fix typo in message expiration check 2024-03-13 16:41:01 +02:00
orignal
6432963294
Merge pull request #2037 from vovasty/fs_ios_simulator_fix
fix HashedStorage::Init exceptions in ios simulator.
2024-03-11 14:55:16 -04:00
Vlad Solomenchuk
59beb5e4e4 fix TARGET_OS_SIMULATOR check 2024-03-11 11:29:41 -07:00
Vort
2d06c0cbe6 add expiration for messages in SSU2 send queue 2024-03-09 19:09:05 +02:00
Vlad Solomenchuk
51446f0324 fix FS::HashedStorage::Init exceptions in ios simulator. 2024-03-08 10:23:51 -08:00
orignal
66d0b7aec4 correct publication verification for encrypted LeaseSet 2024-03-07 10:25:10 -05:00
orignal
92b49fb969 clear excluded floodfills after successive publishing 2024-03-06 21:01:17 -05:00
orignal
17dd5c1285 publish encrypted leaset on floodfill closest to store hash 2024-03-06 18:36:01 -05:00
Vort
3ceb64db2e 1. Use EWMA for stream RTT estimation;
2. Drop window size by 10% instead of 50% in case of resend.

Change is based on code by onon.
2024-03-06 15:06:04 +02:00
orignal
bb702700f7 don't check session for single tag 2024-03-06 07:17:59 -05:00
orignal
ff3fec9a00 remove tag immediately after use 2024-03-05 10:30:01 -05:00
orignal
3873e60cbb try to send database store reply directly to IBGW 2024-03-04 14:30:49 -05:00
orignal
2dbf094433 try to send lookup reply directly to IBGW 2024-03-04 13:34:57 -05:00
Vort
98543af92b fix high latency threshold 2024-03-04 13:41:50 +02:00
orignal
af0d853ccd some cleanup 2024-03-03 10:28:25 -05:00
orignal
20a5e19ea1 don't request banned router 2024-03-03 09:56:11 -05:00
orignal
f1058410fb don't request banned router 2024-03-03 07:42:39 -05:00
orignal
6ba42a0912 check if established peer test session has the same address type 2024-03-02 18:17:56 -05:00
orignal
1292ec67c0 check if remote router supports peer test 2024-03-02 18:02:55 -05:00
orignal
2f2f14e3a7 try publishing again after 5 seconds if no tunnels in the pool 2024-03-02 11:26:41 -05:00
orignal
edd9dd2c39 try to publish again after 5 seconds if destination is not ready 2024-03-02 10:57:01 -05:00
orignal
f8722f17c6 pick peer test session only if Charlie's address supports peer testing 2024-03-01 21:59:52 -05:00
orignal
38cc01e13d check own peer test cap for peer test msg 2 2024-03-01 14:33:11 -05:00
orignal
6ca266ff3b reject peer test msg 2 if peer testing is not supported 2024-03-01 14:03:13 -05:00
orignal
b9773c88e4 don't set test failed state to expiring tunnels 2024-03-01 12:45:21 -05:00
orignal
3311fe62bb fixed potential race condition with tunnel tests 2024-03-01 08:03:40 -05:00
Vort
e5f75eb61c log would_block error at info level 2024-02-29 16:12:51 +02:00
Vort
89f9bec49a derive SSU2 socket buffer size from bandwidth limit 2024-02-29 16:02:43 +02:00
Vort
f3c052ed0c write SSU2 socket buffer sizes to log 2024-02-29 10:27:52 +02:00
Vort
aa1de7fe94 enable non-blocking mode for UDP sockets 2024-02-28 18:55:28 +02:00
orignal
ca45fe73e9 never delete conneted router from netdb 2024-02-27 16:10:17 -05:00
orignal
a8af683643 renamed steady to monotonic 2024-02-27 12:33:07 -05:00
orignal
b86c83a068 encrypt tunnel tests for ElGamal-only destinations 2024-02-27 11:47:32 -05:00
orignal
6656ef3c8d correct clock for non-encrypted tunnel tests 2024-02-27 09:02:26 -05:00
orignal
6898d04a1d send tunnel test mesaage only if encrypted 2024-02-27 08:30:31 -05:00
Vort
3d03732555 add tunnel test message 2024-02-27 11:08:14 +02:00