Commit Graph

150 Commits

Author SHA1 Message Date
Tim Beatham
d17dce3b1e Added clustering and clean up 2023-11-03 15:26:09 +00:00
Tim Beatham
e2c6db3a4f
Merge pull request #8 from tim-beatham/7-create-rotating-window-of-connections
Implemented clustering betweeen nodes
2023-11-03 15:25:30 +00:00
Tim Beatham
843caddf6b Implemented clustering betweeen nodes 2023-11-03 15:24:18 +00:00
Tim Beatham
8d8a13d6ff Build error forgot to add query.go 2023-11-01 13:17:58 +00:00
Tim Beatham
5183edc592
Merge pull request #6 from tim-beatham/5-ability-to-add-alias-and-description-to-services
Ability for each node to set their description describing what service they provide.
2023-11-01 11:58:52 +00:00
Tim Beatham
d462d95d6d Ability for each node to set their description describing what
service they provide.
2023-11-01 11:58:10 +00:00
Tim Beatham
8e50848043
Merge pull request #4 from tim-beatham/3-periodically-update-the-wg-configuration
Fixing an issue where packets are dropped each time
2023-11-01 10:42:56 +00:00
Tim Beatham
e63edea763 Fixing an issue where packets are dropped each time
we change wg configuration
2023-11-01 10:39:46 +00:00
Tim Beatham
a1caf2e8ae
Merge pull request #2 from tim-beatham/1-log-key-events-in-the-mesh
1 log key events in the mesh
2023-10-31 10:37:59 +00:00
Tim Beatham
aa3d40f82c Added JMESpath to query the state of specific
meshes.
2023-10-31 10:34:09 +00:00
Tim Beatham
e56780fdd4 Added ability to query the JSON data store 2023-10-30 19:02:28 +00:00
Tim Beatham
579426e32d Tidied up code, made changes for benchmarking. 2023-10-30 16:49:02 +00:00
Tim Beatham
928f6af9ac Modified build script 2023-10-30 13:17:47 +00:00
Tim Beatham
f70bd2f42d Added build.sh file 2023-10-28 22:35:56 +01:00
Tim Beatham
472718c9a3 Standardising filenames, interfacing out
for tests and modifying network device
manipulation
2023-10-28 16:38:25 +01:00
Tim Beatham
5757d81a81 Advertising routes into the mesh 2023-10-27 17:49:18 +01:00
Tim Beatham
4c6bbcffcd Interfacing out components for unit testing 2023-10-26 16:53:12 +01:00
Tim Beatham
f1cfd52a91 Cleaning up reposistory 2023-10-25 18:36:13 +01:00
Tim Beatham
c205be6748 Implemented the forwarding of packets between meshes 2023-10-25 18:34:38 +01:00
Tim Beatham
180f5e226c Ability to be in multiple meshes and refactored consensus 2023-10-24 16:00:46 +01:00
Tim Beatham
8e89281484 Tested with large number of nodes 2023-10-24 00:12:38 +01:00
Tim Beatham
ef2b57047d Bidirectional syncing 2023-10-23 18:13:08 +01:00
Tim Beatham
360f9d3c54 Few refactorings of managing the mesh and a graph
visualisation tool for seeing the state of a mesh.
2023-10-22 13:34:49 +01:00
Tim Beatham
c4dc984fc7 Added ability to detect if a node should be removed from the mesh. 2023-10-21 18:08:45 +01:00
Tim Beatham
976dbf2613 Automatically remove nodes from the mesh after a
certain threshold.
2023-10-20 17:35:02 +01:00
Tim Beatham
c200544cee Timer in go that syncs with random nodes in the mesh every
given time interval.
2023-10-20 12:41:06 +01:00
Tim Beatham
ec87afc235 Added sync 2023-10-10 20:14:40 +01:00
Tim Beatham
e729c5b181 CRDTs fully incorporated 2023-10-06 18:25:38 +01:00
Tim Beatham
47e260e310 Incorporated automerge 2023-10-06 11:52:51 +01:00
Tim Beatham
81e2d16316 Implementing CRDTs 2023-10-06 10:12:46 +01:00
Tim Beatham
923ca716ec Automerge changes 2023-10-05 17:48:54 +01:00
Tim Beatham
f191c4ff44 Added package changes 2023-10-04 17:17:53 +01:00
Tim Beatham
a069b89a9a Refactored client and server and interfaced out dependencies 2023-10-02 16:03:41 +01:00
Tim Beatham
52e5e3d33c JWT Authentication endpoint 2023-10-01 20:14:09 +01:00
Tim Beatham
94afd68460 Implemented JWT authentication 2023-10-01 19:01:35 +01:00
Tim Beatham
c819bec63d Interfaced problem out 2023-09-29 15:00:20 +01:00
Tim Beatham
a0c20e4d11 IPV6 SLAAC 2023-09-28 16:55:37 +01:00
Tim Beatham
ea2a073875 Added ability to set interface as up 2023-09-21 18:43:29 +01:00
Tim Beatham
6725a193aa Got it working with peer-to-peer network. Does not mark nodes as stale 2023-09-21 13:50:59 +01:00
Tim Beatham
d9dc0ba6b3 Added the gRPC proto file 2023-09-21 11:14:57 +01:00
Tim Beatham
91212e60cf Simple direct peer-to-peer communication 2023-09-20 19:05:29 +01:00
Tim Beatham
cfdf377567 Pseudo-random address allocation 2023-09-20 14:34:34 +01:00
Tim Beatham
dcf851a02e Ability to add peer to config 2023-09-19 23:50:44 +01:00
Tim Beatham
6e9ca4f31f Migrated to using grpc for handling rpc calls 2023-09-19 18:29:35 +01:00
Tim Beatham
86756903c7 Created join-mesh, list-meshes command 2023-09-19 13:45:49 +01:00
Tim Beatham
b679b7fb6e Added IPC handler to wgmesh 2023-09-18 17:00:43 +01:00
Tim Beatham
01238aca59 Incorporated gin server.
Each node communicates in the mesh
2023-09-18 15:52:28 +01:00
Tim Beatham
fa16480521 Commit 2023-09-18 12:59:28 +01:00
Tim Beatham
a7c05b7566 Testing wgctrl 2023-09-16 13:57:27 +01:00
Tim Beatham
56f365dab4 Initial commit 2023-09-16 12:38:28 +01:00