Commit Graph

91 Commits

Author SHA1 Message Date
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 9aa41409b3 Cleanup trace controller loop. Refactor for multiple control channels: openziti/fabric#469 2022-09-22 11:05:35 -04:00
Paul Lorenz aafa99ae6f Fix some linting issues. svcId -> serviceId 2022-09-15 17:34:44 -04:00
Paul Lorenz aa6124105d Update to usage v3. Adds circuit tags to usage. Fixes openziti/fabric#496 2022-09-15 17:34:33 -04:00
Paul Lorenz 4d05c59df0 Run gofmt -w -s 2022-08-22 14:17:43 -04:00
Paul Lorenz e0f5092a08 Use one port for ctrl channel to router and controllers. Allow syncing existing DB to raft. Fixes #471. Fixes openziti/fabric#479. 2022-08-22 12:09:07 -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 98160bb8b0 Merge pull request openziti/fabric#448 from openziti/link-events
Refactor events subsystem. Add link events. Fixes openziti/fabric#415
2022-07-19 10:59:27 -04:00
Paul Lorenz 7abe5d5605 Cleanup circuits for deleted routers. Fixes openziti/fabric#452 2022-07-18 15:03:35 -04:00
Paul Lorenz 77bce93e85 Refactor events subsystem. Add link events. Fixes openziti/fabric#415
Previously we often had two sets of events, one in the network
package, and then another in the events package. We now only
have one, in the events package. Events now have a public API,
 with minimal deps. There's an implementation package which has
the dependencies. This allows the network package to generate
events, without have a circular dependency on the events
implementation package.
2022-07-15 18:31:52 -04:00
Paul Lorenz 57bd46b285 Fix misleading error message. Fixes openziti/fabric#446 2022-07-14 15:30:34 -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 a731cd9aec Circuit failed events and rename terminator identity -> instanceId 2022-06-22 14:34:32 -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
Cam Otts 0c7ff2bd5e threaded a timout through fabric (#356)
* threaded a timout through fabric

* updated default timeout

* pr comments

* fix timing

* applied pr comments

* removed one more utc

* updated to time until and conditionally add deadline

* signed commit


* small proto change

* regenerate pb

* missed extra import
2022-05-12 14:32:18 -05:00
Paul Lorenz 374af45b6d Merge pull request openziti/fabric#386 from openziti/update-protobuf
Update to current protobuf library
2022-05-11 12:58:11 -04:00
Paul Lorenz 8dfdce7fab Update to current protobuf library 2022-05-10 14:54:00 -04:00
Paul Lorenz 2cdf3f469c Verify router instead of link when getting new link dial 2022-05-10 14:26:55 -04:00
Paul Lorenz 69bc2fb0cc Update to transport/v2 2022-05-10 11:58:41 -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 e21d41df05 Notify controller of invalid destinations in routes.
Allow xgress and links to be destinguished by ID suffix
If a link destination is missing, send a link fault
Add forget-link router debug agent op to allow testing invalid
destinations
2022-04-26 22:16:58 -04:00
Paul Lorenz 85a4d8484b Address review comments 2022-04-26 13:49:33 -04:00
Cam Otts 113c37024e Added heartbeat logging/metrics to control channel (#341)
* Added heartbeat logging/metrics to control channel

* pr comments

* misunderstood last pr comment

* moved channel closing to happen in either case
2022-04-06 11:10:58 -05:00
Paul Lorenz 8150358d6b Add service id to log message 2022-04-05 22:34:30 -04:00
Paul Lorenz 9a344da855 Update to use transport library 2022-03-31 10:36:28 -04:00
Paul Lorenz b35b532d25 Update to use storage library 2022-03-30 16:22:32 -04:00
Cam Otts 405492ce92 Route error codes (#335)
* Initial work on adding route error codes to route responses

* updated messaging

* Split out terminator incrementors
Added handling for Service Errors
Added initial steps at deleting misbehaving terminators

* Added test for destroying and settin gprecedence on terminators
Added handling for terminator errors in routing

* inverted error switch

* cleanup for pr

* PR comments

* refactored conditional printing to account for single node paths that don't have links

* added error log when route status

* added another misconfigured error

Co-authored-by: Paul Lorenz <paul.lorenz@netfoundry.io>
2022-03-23 12:51:49 -05: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
Paul Lorenz 291c2df0c5 Allow service name for fabric service requests 2022-03-01 12:01:40 -05:00
Paul Lorenz 5fc81fbf18 Update to use channel trace 2022-02-28 15:39:27 -05:00
Paul Lorenz 675b16ef98 Don't call message sends in control channel bind 2022-02-10 09:20:23 -05:00
Paul Lorenz 3cfea85bf7 Update links to use channel library 2022-01-31 15:52:10 -05:00
Paul Lorenz e9133f4a94 Update router side of control channel to use channel library 2022-01-28 12:38:26 -05:00
Paul Lorenz 84ae5576e1 Update to use channel library 2022-01-27 16:46:21 -05:00
Paul Lorenz 4f5e7b3591 check idle circuits against path 2022-01-24 13:07:14 -05:00
Paul Lorenz c425cc84a8 Move some events/metrics code from foundation to fabric 2022-01-20 17:22:50 -05:00
Paul Lorenz e781e3c713 Update control channel to new channel API 2022-01-19 08:15:33 -05:00
Paul Lorenz 3c098defb0 Add more router connect error logging (#300)
* Add more router connect error logging, fix cert validity check, handle multiple certs properly
2022-01-03 14:25:30 -05:00
Andrew Martinez ab4e649d61 adds router id and name to already connected error 2021-12-01 14:45:01 -05:00
Paul Lorenz ea1bac0b17 Add link implementation. Convert link to string from identity.TokenId 2021-11-30 14:05:21 -05:00
Paul Lorenz b9e87a1597 recieve handlers should never send as they may block forever if the underlying channel closes 2021-11-30 12:55:37 -05:00
Paul Lorenz 6ba7264ff3 Do additional cert chain and verify links with controller 2021-11-12 15:36:05 -05:00
Paul Lorenz 58e159236d Use string id instead of identity where we don't need certs 2021-09-03 14:10:28 -04:00
ziti-ci 23a9da54e7 Allow injecting context into path creation/establishment operations 2021-08-06 16:34:57 -04:00
Paul Lorenz 21c261fb19 Rename session -> circuit 2021-08-04 13:17:39 -04:00
Paul Lorenz bcd1c374e8 Rename circuit to path 2021-08-04 13:16:09 -04:00