Enroute High Level Goals

  • Deep Value and High Performance: Enroute is built on cloud-native high performance and feature rich Envoy Proxy (written in C++).
  • Consistent Policy: Enforce consistent policy across Kubernetes Native microservices or Standalone services running outside Kubernetes
  • Extensible: Use Filters/Plugins to add custom functionality and control traffic on the fly.

Feature List

Kubernetes Ingress Controller or Standalone Gateway for use without Kubernetes

  • Run [Any]Where: Any Cloud, Any Platform, Any Service
  • Kubernetes Native Ingress Controller: Use CRDs to configure Layer-7 policies for your services
  • Standalone: Use simple REST APIs or enroutectl to configure standalone gateway
  • Horizontal Scale-Out: Infinitely scalable fabric, add more gateways to configure multiple stateless gateways with same config.
  • High Performance: Enroute’s run time is built on high performance Envoy Proxy written in C++
  • Extensible Plugin/Filters: Easily control traffic on the fly for Standalone and Kubernetes Ingress by attaching global or route-level plugins/filters.
  • Load Balancing Algorithms: - Round Robin, Least Request, Random, Ring Hash
  • Traffic Management: - Circuit Breakers, Automatic Retries
  • Health Checks: HTTP, TCP, gRPC, Custom
  • Service Discovery: Discover cloud services or integrate with external service discovery based mesh like consul.
  • Serverless*: AWS Lambda Support
  • WebSockets: Use or upgrade connections to use web sockets
  • Native gRPC: Load balance to gRPC services with all applicable traffic management features
  • Security and Authentication: JWT Validation*, OAuth OIDC*
  • Distributed Tracing: Zipkin
  • TLS Termination: Cipher selection, Multiple Cert Support, ECDSA, RSA
  • Observability: Prometheus, Grafana
  • Progressive Delivery: Canary Releases, Header Based Routing*, Traffic Shadowing
  • Rate Limiting: Global Rate Limits, Per-User different rate limits for Authenticated/Un-Authenticated Users
  • Forward Proxy: Connect to an intermediate HTTP Proxy before connecting to an upstream.
  • OpenAPI Support: Ingest OpenAPI Spec in Standalone and Kubernetes Ingress
  • enroutectl CLI: Simplified CLI configuration support
  • Protocol Support: TCP, HTTP/1.0, HTTP/1.1, HTTP/2, gRPC, WebSockets
  • Custom Request Filters: Support for additional custom filters to meet use-cases
  • Extend using Lua, Wasm, Golang: Easily customize your data path runtime using Lua, Wasm* or Golang