Commit Graph

267 Commits

Author SHA1 Message Date
Adrien Gallouët
eab4cdb1ad Update LICENSE
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-03-05 21:56:07 +00:00
Adrien Gallouët
bb60f5f15f Merge MTU probing with failover
This commit also fixes MTU probing in some corner cases.

Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-03-05 11:05:36 +00:00
Adrien Gallouët
adf3bf6710 Code cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-02-15 19:31:08 +00:00
Adrien Gallouët
bf75ac9cd9 One sec failover
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-02-15 19:29:00 +00:00
Adrien Gallouët
cef20db3c7 Correctly handle high latency paths
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-02-15 17:27:50 +00:00
Adrien Gallouët
40983ee4f1 Compute path->ok both sides
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-02-15 09:35:24 +00:00
Adrien Gallouët
9eac498d81 Rework failover with new proto
New proto totally destroy old failover.
This is a hack to improve the current situation waiting
for a better solution.

Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-02-10 21:14:20 +00:00
Adrien Gallouët
0b1793a93f Update mud->window when updating path->window
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-02-10 16:11:32 +00:00
Adrien Gallouët
5f86acee91 Fix build
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-02-09 16:17:07 +00:00
Adrien Gallouët
e47db2ea47 Use new proto (with static rate) and cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2019-02-09 15:58:29 +00:00
Adrien Gallouët
4030b4370b Code cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-12-02 15:56:18 +00:00
Adrien Gallouët
72019786eb Update path->window directly
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-12-02 09:32:33 +00:00
Adrien Gallouët
b732cb1b69 Skip down paths
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-12-02 08:27:41 +00:00
Adrien Gallouët
00c30c4fdf Remove mud->send_timeout
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-12-01 15:04:17 +00:00
Adrien Gallouët
1d4b06abda Boost boost 2018-12-01 15:01:41 +00:00
Adrien Gallouët
d74228e4a9 Be more aggressive about stats
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-12-01 11:22:49 +00:00
Adrien Gallouët
be5020cbae Rename mud_value to mud_stat
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-12-01 11:20:17 +00:00
Adrien Gallouët
6494b95700 Add a boost factor to estimate send.ratemax
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-12-01 11:17:39 +00:00
Adrien Gallouët
ff0c10b66c Send dt directly instead of sending lat/latmin
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-12-01 11:11:43 +00:00
Adrien Gallouët
79688de09e Use lowbw scheduler and clean old unused stuff
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-11-29 22:21:07 +00:00
Adrien Gallouët
b5289a8472 Re-estimate latmin when rate is low
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-11-09 17:57:11 +00:00
Adrien Gallouët
ff55d6a173 New scheduler and cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-11-08 17:40:38 +00:00
Adrien Gallouët
ccaac70a04 Simplify rate as MUD_STAT_TIMEOUT is const
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-11-05 11:14:43 +00:00
Adrien Gallouët
7f5c063ffb Allow bad use of mud_get_fd()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-10-21 08:37:53 +00:00
Adrien Gallouët
1e7e8722ee Compute map directly
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-10-18 08:15:31 +00:00
Adrien Gallouët
2dd31a5f96 Trust compilers and cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-10-09 16:55:42 +00:00
Adrien Gallouët
5b9b3d5709 Remove duplicated checks
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-08-16 12:58:46 +00:00
Adrien Gallouët
22e065e5cb Add mud_sync()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-06-15 10:05:42 +00:00
Adrien Gallouët
03be90b606 Update mud.h
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-06-05 13:56:15 +00:00
Adrien Gallouët
6ebda9368c Add mud_get_sync_elapsed_msec()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-06-03 18:00:17 +00:00
Adrien Gallouët
964672adb5 Be nice with old good path
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-05-05 19:34:52 +00:00
Adrien Gallouët
1988ee1d78 Rework internal proto
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-05-05 12:54:22 +00:00
Adrien Gallouët
3668a2f9af Don't send packets to DOWN paths
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-05-05 12:50:31 +00:00
Adrien Gallouët
db7f48890a Fix mud_update_map()
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-05-05 12:49:53 +00:00
Adrien Gallouët
c8d949733a Code cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-27 15:29:42 +00:00
Adrien Gallouët
81afe325f6 Update ratemax softly
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-26 20:20:28 +00:00
Adrien Gallouët
04fc9b2894 Force update when creating a new path
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-25 20:58:18 +00:00
Adrien Gallouët
d896f9ff3c Don't touch a path if we don't have to
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-25 20:54:33 +00:00
Adrien Gallouët
c8b07c6edb Code cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-25 20:52:39 +00:00
Adrien Gallouët
9f38b7b6e0 Compute a pseudo ratevar to help bw probing
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-25 09:10:01 +00:00
Adrien Gallouët
ba9bef6268 Add a new rate based scheduler
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-23 20:52:31 +00:00
Adrien Gallouët
b2e4bc1b8f Compute latency-smoothed maximum rate
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-21 12:25:52 +00:00
Adrien Gallouët
a7044db87c Compute rate
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-18 16:35:27 +00:00
Adrien Gallouët
8e2b35525c Remove MUD_EPOCH and compute durations modulo 2^48
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-18 09:54:52 +00:00
Adrien Gallouët
875533a65f Recover lost connection slightly faster
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-07 16:43:46 +00:00
Adrien Gallouët
1f25f12e4a Compute rttvar for the next voip scheduler
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-06 16:46:09 +00:00
Adrien Gallouët
7fde67f3d3 Code cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-06 10:11:00 +00:00
Adrien Gallouët
2f304c1afc Set state to MUD_UP by default
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-05 15:52:29 +00:00
Adrien Gallouët
e0d7494a71 Don't inline
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-05 09:07:28 +00:00
Adrien Gallouët
1e9bb89764 Code cleanup
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
2018-04-04 08:58:10 +00:00