Commit Graph

61 Commits

Author SHA1 Message Date
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 0e07f211be Add flags to create/update commands. allows some lightweight logic specialization (eg priveleged vs non-priveleged updates) 2022-07-29 10:53:39 -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 8f0150f242 Add host id to terminator. This will allow tracking usage to hosting entities. Fixes openziti/fabric#440 2022-07-15 23:13:01 -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 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
Cam Otts 45d49324c6 move terminator address to seperate field (#412)
* move terminator address to seperate field

* update circuit streaming to handle dedicated terminator address field

* Added circuit event terminator local address
2022-06-09 11:11:44 -05: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 18539faf87 Add dest type to routing so we don't need to overload ids 2022-04-27 11:20:02 -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 e2d29d3f07 Rework model for circuit inspections. Add inspect support back to mgmt channel 2022-04-19 10:38:23 -04:00
Cam Otts 4b7a4d1081 added circuit creation timespan (#349)
* added circuit creation timespan

* added creation timespan to event message
2022-04-06 11:14:43 -05: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
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
Paul Lorenz 291c2df0c5 Allow service name for fabric service requests 2022-03-01 12:01:40 -05: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 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 93ba2f460f Merge remote-tracking branch 'origin/main' into update-channel 2022-01-28 11:09:47 -05:00
Paul Lorenz 84ae5576e1 Update to use channel library 2022-01-27 16:46:21 -05:00
Andrew Martinez 08e658514a adds newListener and newAddress options for controller ip/hostname move
- ctrl section for fabric now supports newListener addresses, sent on
  router connect
- xweb bindPoints now support newAddress, sent as a header on every
  response
2022-01-27 10:17:53 -05:00
Paul Lorenz e781e3c713 Update control channel to new channel API 2022-01-19 08:15:33 -05:00
Paul Lorenz 6ba7264ff3 Do additional cert chain and verify links with controller 2021-11-12 15:36:05 -05:00
ziti-ci 23a9da54e7 Allow injecting context into path creation/establishment operations 2021-08-06 16:34:57 -04:00
Paul Lorenz f49e8bac5d Namespace protobufs with ziti 2021-08-05 15:39:53 -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
Michael Quigley bba019ecee Typo lint. 2021-06-03 13:48:25 -04:00
Michael Quigley fa9da87419 Refactor ctrl_pb.Dial to support both LinkId and RouterId. (#238) 2021-05-14 14:35:12 -04:00
Michael Quigley 152da46d01 Report idle sessions to controller. (#173) 2021-03-05 13:45:43 -05:00
Paul Lorenz 2b283dcdce Cleanup go-routines on shutdown. Allow Xtrl instances to contribute trace decoders 2021-02-17 20:22:14 -05:00
Michael Quigley 517d6dba8d Add 'ForwardFault to ctrl_pb.Fault. (#184) 2021-02-11 12:42:50 -05:00
Michael Quigley be69649bf1 Attempt encoding support in the route plumbing. Allows the route sender to more accurately handle unhappy scenarios. (#168) Fix for 'UpdateTerminatorRequestType' typo in protobufs. (#176). 2021-02-09 13:36:23 -05:00
Andrew Martinez 6a87ab7c30 Adds connected router version info to mgmt 2020-10-07 08:29:34 -04:00
Paul Lorenz 9f3182942e Add Xtensible Terminator Validation framework 2020-09-25 11:01:58 -04:00
Paul Lorenz 150f2a112a Add support for addressable terminators 2020-09-25 11:01:58 -04:00
Paul Lorenz 106843d210 Make it easier for clients to figure if/how metrics are grouped 2020-09-10 09:26:09 -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 c7ae352255 Fix xgress start race condition. Fixes GH-117 2020-08-11 09:19:47 -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 80704d3231 Update for fabric api changes. Add snapshot DB mgmt API. Fixes GH-99 2020-06-12 18:25:11 -04:00