Paul Lorenz
d62e3cb71f
Use cmap IterCB instead of IterBuffered where possible. Fixes #1902
2024-04-04 21:27:38 -04:00
Paul Lorenz
ad779ed118
Improve link mgmt backwards compatibility. Fixes #1900
...
* We're sending peer change messages to older routers that don't understand them.
* We should probably use the older controller link management code for routers without the link management stability fixes
* Includes a few minor cleanups
2024-04-04 19:07:24 -04:00
Paul Lorenz
fab81e4cd4
Add terminator chaos testing and fix issues found. Fixes #1794 Fixes #1369
2024-03-12 10:31:36 -04:00
Paul Lorenz
8423a8dd6a
Fix link management race conditions found by chaos testing. Fixes #1709
2024-01-29 17:23:51 -05:00
Paul Lorenz
c4abcae949
Link management fixes. Fixes #1692 Fixes #1693
2024-01-19 17:33:21 -05:00
Paul Lorenz
f3d67b7f49
Update fabric imports
2023-09-28 23:34:28 -04:00
Paul Lorenz
cdfd037da9
Move protobuf definitions to common
2023-08-10 19:38:48 -04:00
Paul Lorenz
f15b8bef23
Add some more config value validation and guardrails
2023-08-03 17:07:49 -04:00
Paul Lorenz
2ee9539f9c
Move link calculation to routers. Fixes #692 , fixes #749 , fixes openziti/fabric#343
2023-08-03 17:07:48 -04:00
Paul Lorenz
8149b69614
Add support for quiescing and dequiescing routers. Fixes openziti/fabric#538
...
Quiesce marks all terminators as failed and stores the previous state.
Dequiesce restores all terminators with failed state and stored previous
state to their previous state
2023-06-05 17:46:13 -04:00
Paul Lorenz
bc9bac6f0d
Add config support for link groups. Doesn't use group config yet.
2023-05-11 09:34:33 -04:00
Paul Lorenz
f0b83d0010
Track raft index in Db. Let's us start without rerunning all cmds at startup. Fixes #677 . Fixes openziti/fabric#582
2023-04-25 11:32:35 -04:00
Paul Lorenz
d1d0fe781b
Update for storage API changes.
2023-04-25 11:32:33 -04:00
Paul Lorenz
32da1861ca
Add router disable flag. Fixes openziti/fabric#651
2023-03-27 14:18:43 -04:00
Paul Lorenz
74de7e65ee
update CODEOWNERS to sig-core and update MM notifications
2022-11-30 12:22:14 -05:00
Paul Lorenz
4a1f234839
Add linter and update deps
2022-10-10 13:29:40 -04:00
Paul Lorenz
02539e9e16
Support multiple control channels. Fixes openziti/fabric#469
2022-09-29 12:06:41 -04:00
Paul Lorenz
519574497e
Update to channel v2
2022-09-26 17:00:34 -04:00
Paul Lorenz
858642bc38
Move UpdatedFields to fabric. Start moving model layer to generics
2022-07-27 11:33:24 -04:00
Paul Lorenz
7abe5d5605
Cleanup circuits for deleted routers. Fixes openziti/fabric#452
2022-07-18 15:03:35 -04:00
Paul Lorenz
3d49022f4a
Update for foundation changes
2022-07-01 14:29:12 -04:00
Paul Lorenz
b26fcf8909
Fix copyright
2022-06-29 16:59:46 -04:00
Paul Lorenz
a64c626cb4
Controller -> Manager for entity managers
2022-06-02 22:53:22 -04:00
Paul Lorenz
eaa75d48c6
Initial support for distributed model via RAFT
2022-06-02 22:49:55 -04:00
Andrew Martinez
6f867e34db
uses generic version of cmap
2022-05-27 09:47:15 -04:00
Paul Lorenz
1874ab5f27
Allow a new control channel to takeover even if the router is already connected
...
Add churn limiter so it can only happen so often
2022-04-28 14:55:14 -04:00
Paul Lorenz
b35b532d25
Update to use storage library
2022-03-30 16:22:32 -04:00
tburtchell
2f8a608c4c
Replacing link 'type' with 'protocol' and 'costTags' ( #336 )
...
* Replacing link 'type' with 'protocol' and 'costTags'
2022-03-22 09:06:02 -04:00
Paul Lorenz
2b7db10913
Allow routers more control over link management ( #318 )
...
* Allow routers more control over link management
2022-03-07 12:22:17 -05:00
Cam Otts
725afe13de
added allow traversal flag ( #326 )
...
* added allow traversal flag
* Added test to verify a single router connection that is marked untraversable fails path creating
* Updated default cost to be one step above the threshold to avoid overflow.
* Updated checks to only care about middle routers. Fixed relevant unit tests and added test with untraversable middle router.
* Refactor allowTraversal to be flipped to noTraversal
* default noTraversal to false
2022-03-02 10:33:04 -06:00
Cam Otts
be30ee8026
Added cost to routers and relevant persistence and path checking. ( #324 )
...
* Added cost to routers and relevant persistence and path checking.
* removed router cost from config
* changed cost to be required on update
* removed some import reorderings and added fingerprint to be required
* missed one line
2022-02-23 10:14:00 -06:00
Paul Lorenz
883312255f
address review comments
2022-02-17 15:47:47 -05:00
Paul Lorenz
5eaa60e236
Use RemoveCB to update cache atomically. Do uncached lookup when updating cache
2022-02-17 15:35:57 -05:00
Paul Lorenz
01fa63e716
Use updated store events. Fixes openziti/fabric#319
2022-02-17 10:41:38 -05:00
Paul Lorenz
84ae5576e1
Update to use channel library
2022-01-27 16:46:21 -05:00
Paul Lorenz
e781e3c713
Update control channel to new channel API
2022-01-19 08:15:33 -05:00
Paul Lorenz
00957fe8e6
Implement router update/patch
2021-11-30 14:26:07 -05:00
Paul Lorenz
3a50999365
Add cache of links by router
2021-11-23 08:24:24 -05:00
Paul Lorenz
51a4fe8ed9
Import route evaluation with more efficient data structure
2021-11-19 15:17:56 -05:00
Andrew Martinez
4d9ea4e504
update cache instead of clearing
2021-04-08 16:00:42 -04:00
Andrew Martinez
b9b624a0a0
add ability to clear the cached state of a router from bbolt
...
Will be used for enrollment extension where the fingerprint has been
updated
2021-04-08 16:00:41 -04:00
Andrew Martinez
a1df84e913
fixes openziti/fabric#133
...
- Adds version header to outgoing controller hellos and incomming router
hellos
2020-10-06 09:41:36 -04:00
Paul Lorenz
549260d650
Persist terminator precedence. Fix link cost use/scaling. Fix link re… ( #125 )
...
* Persist terminator precedence. Fix link cost use/scaling. Fix link removal related panic. Fix service cache clearing on terminator change.
Fixes GH-112
Fixes GH-121
Fixes GH-122
Fixes GH-123
Fixes GH-124
2020-09-01 15:58:46 -04:00
Paul Lorenz
ffbb4e4cc3
Add names to service and router. Add more store tests. Fixes GH-101
2020-06-18 17:05:39 -04:00
Paul Lorenz
373e20d8d1
Allow routers with nil fingerprints. Allows multi-step enrollment. Fixes GH-97
2020-06-02 16:49:46 -04:00
Michael Quigley
10e6a7ef93
netfoundry/ziti-fabric -> openziti/fabric
2020-05-26 17:14:16 -04:00
Paul Lorenz
e9575bb717
Integrate Xt into smartrouting/circuit creation. Includes several Xt cleanups ( #87 )
...
Integrate Xt into smart routing
For Xt:
* weights -> costs
* drop preferred precedence
* Allow larger cost ranges
* Add failure costs and common cost visitor
2020-04-30 14:50:07 -04:00
Paul Lorenz
df0d35e576
Sync terminators when routers connect so invalid terminators can be r… ( #86 )
...
* Sync terminators when routers connect so invalid terminators can be removed
2020-04-27 15:56:54 -04:00
Michael Quigley
da0025381e
Test fixes.
2020-04-01 14:49:42 -04:00
Michael Quigley
8ef0c5f6e1
Merge branch 'master' into p14_c1
2020-04-01 10:25:27 -04:00