Commit Graph

  • 7a5bb0690e Remove mud_sync() Adrien Gallouët 2019-03-09 15:03:47 +00:00
  • f67a5b4fed Don't wake up without paths Adrien Gallouët 2019-03-09 14:37:32 +00:00
  • eab4cdb1ad Update LICENSE Adrien Gallouët 2019-03-05 21:56:07 +00:00
  • bb60f5f15f Merge MTU probing with failover Adrien Gallouët 2019-03-05 11:05:36 +00:00
  • adf3bf6710 Code cleanup Adrien Gallouët 2019-02-15 19:31:08 +00:00
  • bf75ac9cd9 One sec failover Adrien Gallouët 2019-02-15 19:29:00 +00:00
  • cef20db3c7 Correctly handle high latency paths Adrien Gallouët 2019-02-15 10:23:58 +00:00
  • 40983ee4f1 Compute path->ok both sides Adrien Gallouët 2019-02-15 09:35:24 +00:00
  • 9eac498d81 Rework failover with new proto Adrien Gallouët 2019-02-10 21:14:20 +00:00
  • 0b1793a93f Update mud->window when updating path->window Adrien Gallouët 2019-02-10 16:11:32 +00:00
  • 5f86acee91 Fix build Adrien Gallouët 2019-02-09 16:17:07 +00:00
  • e47db2ea47 Use new proto (with static rate) and cleanup Adrien Gallouët 2019-02-09 15:58:29 +00:00
  • 4030b4370b Code cleanup Adrien Gallouët 2018-12-02 15:56:18 +00:00
  • 72019786eb Update path->window directly Adrien Gallouët 2018-12-02 08:45:01 +00:00
  • b732cb1b69 Skip down paths Adrien Gallouët 2018-12-02 08:27:41 +00:00
  • 00c30c4fdf Remove mud->send_timeout Adrien Gallouët 2018-12-01 15:04:17 +00:00
  • 1d4b06abda Boost boost Adrien Gallouët 2018-12-01 14:58:00 +00:00
  • d74228e4a9 Be more aggressive about stats Adrien Gallouët 2018-12-01 11:22:49 +00:00
  • be5020cbae Rename mud_value to mud_stat Adrien Gallouët 2018-12-01 11:20:17 +00:00
  • 6494b95700 Add a boost factor to estimate send.ratemax Adrien Gallouët 2018-12-01 11:17:39 +00:00
  • ff0c10b66c Send dt directly instead of sending lat/latmin Adrien Gallouët 2018-12-01 11:11:43 +00:00
  • 79688de09e Use lowbw scheduler and clean old unused stuff Adrien Gallouët 2018-11-29 22:21:07 +00:00
  • b5289a8472 Re-estimate latmin when rate is low Adrien Gallouët 2018-11-09 17:57:11 +00:00
  • ff55d6a173 New scheduler and cleanup Adrien Gallouët 2018-11-08 09:51:15 +00:00
  • ccaac70a04 Simplify rate as MUD_STAT_TIMEOUT is const Adrien Gallouët 2018-11-05 11:14:43 +00:00
  • 7f5c063ffb Allow bad use of mud_get_fd() Adrien Gallouët 2018-10-21 08:37:53 +00:00
  • 1e7e8722ee Compute map directly Adrien Gallouët 2018-10-18 08:07:20 +00:00
  • 2dd31a5f96 Trust compilers and cleanup Adrien Gallouët 2018-10-09 16:55:42 +00:00
  • 5b9b3d5709 Remove duplicated checks Adrien Gallouët 2018-08-16 12:58:46 +00:00
  • 22e065e5cb Add mud_sync() Adrien Gallouët 2018-06-15 10:05:42 +00:00
  • 03be90b606 Update mud.h Adrien Gallouët 2018-06-05 13:56:15 +00:00
  • 6ebda9368c Add mud_get_sync_elapsed_msec() Adrien Gallouët 2018-06-03 18:00:17 +00:00
  • 964672adb5 Be nice with old good path Adrien Gallouët 2018-05-05 19:34:52 +00:00
  • 1988ee1d78 Rework internal proto Adrien Gallouët 2018-05-05 12:54:22 +00:00
  • 3668a2f9af Don't send packets to DOWN paths Adrien Gallouët 2018-05-05 12:48:57 +00:00
  • db7f48890a Fix mud_update_map() Adrien Gallouët 2018-05-05 12:38:30 +00:00
  • c8d949733a Code cleanup Adrien Gallouët 2018-04-27 15:29:42 +00:00
  • 81afe325f6 Update ratemax softly Adrien Gallouët 2018-04-26 20:20:28 +00:00
  • 04fc9b2894 Force update when creating a new path Adrien Gallouët 2018-04-25 20:58:18 +00:00
  • d896f9ff3c Don't touch a path if we don't have to Adrien Gallouët 2018-04-25 20:54:33 +00:00
  • c8b07c6edb Code cleanup Adrien Gallouët 2018-04-25 20:52:39 +00:00
  • 9f38b7b6e0 Compute a pseudo ratevar to help bw probing Adrien Gallouët 2018-04-25 09:10:01 +00:00
  • ba9bef6268 Add a new rate based scheduler Adrien Gallouët 2018-04-23 20:52:31 +00:00
  • b2e4bc1b8f Compute latency-smoothed maximum rate Adrien Gallouët 2018-04-21 12:25:52 +00:00
  • a7044db87c Compute rate Adrien Gallouët 2018-04-18 16:35:27 +00:00
  • 8e2b35525c Remove MUD_EPOCH and compute durations modulo 2^48 Adrien Gallouët 2018-04-18 09:54:52 +00:00
  • 875533a65f Recover lost connection slightly faster Adrien Gallouët 2018-04-07 15:45:24 +00:00
  • 1f25f12e4a Compute rttvar for the next voip scheduler Adrien Gallouët 2018-04-06 16:24:24 +00:00
  • 7fde67f3d3 Code cleanup Adrien Gallouët 2018-04-06 10:11:00 +00:00
  • 2f304c1afc Set state to MUD_UP by default Adrien Gallouët 2018-04-05 15:52:29 +00:00
  • e0d7494a71 Don't inline Adrien Gallouët 2018-04-05 09:07:19 +00:00
  • 1e9bb89764 Code cleanup Adrien Gallouët 2018-04-04 08:58:10 +00:00
  • e7851fa29d Compute RTT for each internal packet Adrien Gallouët 2018-04-04 08:52:01 +00:00
  • 0c11ce5785 Add number of packets per path Adrien Gallouët 2018-04-02 09:30:36 +00:00
  • 6d5738b931 Don't try to send something without path Adrien Gallouët 2018-04-02 08:50:42 +00:00
  • dcfaca04a5 Limit number of paths Adrien Gallouët 2018-04-02 08:44:59 +00:00
  • c63c94d7c8 Simplify MTU setup and allow big packets Adrien Gallouët 2018-03-26 13:02:54 +00:00
  • 09acdee3e1 Code cleanup Adrien Gallouët 2018-03-25 14:48:50 +00:00
  • c2eb3e4095 Refuse truncated packets Adrien Gallouët 2018-03-25 14:22:40 +00:00
  • 54bac4fcf6 Don't produce/reply to bad pubkeys Adrien Gallouët 2018-03-19 22:28:03 +00:00
  • 9a626f2889 Reset mtu in all paths Adrien Gallouët 2018-03-17 13:48:04 +00:00
  • c6fbe52fbd Use binded port in local_addr Adrien Gallouët 2018-03-16 21:07:25 +00:00
  • a505e22844 Try to compute the size of ctrl Adrien Gallouët 2018-03-16 20:05:05 +00:00
  • 40be483e2b Code cleanup Adrien Gallouët 2018-03-16 08:12:33 +00:00
  • fd48ff08b9 Use LSB to mark mud packets Adrien Gallouët 2018-03-15 20:49:43 +00:00
  • 0c037c5831 Code cleanup Adrien Gallouët 2018-03-15 20:42:51 +00:00
  • 8b9fc86d12 Fix stats on links with latency > MUD_STAT_TIMEOUT Adrien Gallouët 2018-03-15 08:12:41 +00:00
  • 66b8a7323d Code cleanup Adrien Gallouët 2018-03-14 22:42:35 +00:00
  • 865c6aa640 Compute MTU only with usable paths Adrien Gallouët 2018-03-14 22:36:58 +00:00
  • 2c5eb574f9 Add a specific timer for mtu probing Adrien Gallouët 2018-03-14 18:47:43 +00:00
  • ef319d2153 Add mud_set_keyx_timeout() Adrien Gallouët 2018-03-14 06:54:38 +00:00
  • 467310bb4f Create ephemeral key at startup Adrien Gallouët 2018-03-14 06:49:44 +00:00
  • b787bad536 Store addr on errors Adrien Gallouët 2018-03-14 06:40:37 +00:00
  • 93d7d36b68 Hardening and fixes Adrien Gallouët 2018-03-13 18:32:14 +00:00
  • 87d9806a88 Clear errno if no path Adrien Gallouët 2018-03-12 14:59:59 +00:00
  • ae3f4ed9ac Count and store last time of bad mud_decrypt() Adrien Gallouët 2018-03-12 10:28:05 +00:00
  • b53248b6da Send ip and port to peers Adrien Gallouët 2018-03-10 15:31:41 +00:00
  • bb6b87bb54 Hardening Adrien Gallouët 2018-03-09 22:14:10 +00:00
  • cd4ad61d1c Always kiss your friends <3 + add it in the nonce Adrien Gallouët 2018-03-06 16:00:12 +00:00
  • b809bf0785 First draft of path mtu disc without icmp Adrien Gallouët 2018-03-04 15:14:18 +00:00
  • c583e207c8 Return ENOTSUP if aes256gcm is not supported Adrien Gallouët 2018-03-04 14:57:21 +00:00
  • 5aeb0a3cb2 Ask for a gnu99 compiler Adrien Gallouët 2018-02-27 09:28:16 +00:00
  • 5a62bd7faa Add mud_get_paths() to export all paths Adrien Gallouët 2018-02-26 23:57:39 +00:00
  • 81b279b060 Add up,backup and down states Adrien Gallouët 2018-02-24 15:26:38 +00:00
  • ac1ba977f4 Setup cmsg directly in mud_send_path() Adrien Gallouët 2018-02-24 14:54:44 +00:00
  • 7303dea98c Let's decrypt everything Adrien Gallouët 2018-02-20 19:30:16 +00:00
  • 1aded8ec29 Unset skip flag when adding a knwon path Adrien Gallouët 2018-02-17 20:21:45 +00:00
  • 53f8d31f77 Use size_t for mtu Adrien Gallouët 2018-02-16 15:57:03 +00:00
  • 7013d8e323 Cleanup Adrien Gallouët 2018-02-15 14:17:55 +00:00
  • 6e5e2dea64 Autoselect ipv4/ipv6 Adrien Gallouët 2018-02-15 14:10:28 +00:00
  • 219e17edb6 Ask for sockaddr directly Adrien Gallouët 2018-02-14 21:30:17 +00:00
  • 582eb29617 Use unsigned long in mud_set_x() Adrien Gallouët 2018-02-11 10:06:04 +00:00
  • d8ede46d8a Avoid useless copies and protect keys Adrien Gallouët 2018-02-06 18:09:52 +00:00
  • d4546ccae0 Add mud_del_path() Adrien Gallouët 2018-01-29 15:47:39 +00:00
  • 61e7a23a11 Rework mud->peer and remove mud_ipaddr Adrien Gallouët 2018-01-24 16:27:41 +00:00
  • 7c90d54b91 Add mud_add_path() Adrien Gallouët 2018-01-24 16:27:41 +00:00
  • a6555c8ab1 Format code Adrien Gallouët 2018-01-24 10:14:08 +00:00
  • 8d861c9682 Allow client to add the first path Adrien Gallouët 2018-01-23 23:04:03 +00:00
  • 368ab1b710 Add some checks in mud_set_path() Adrien Gallouët 2017-12-01 10:55:43 +00:00
  • 13cf44c813 Code cleanup Adrien Gallouët 2017-11-26 13:17:15 +00:00