Routing Network Communications

This topic describes the internal network communication paths of the routing subsystem with other Elastic Runtime components.

HTTP Routing

The following table lists network communication paths for HTTP routing.

Source VM Destination VM Port Transport Layer Protocol App Layer Protocol Security and Authentication
diego_cell (local Route Emitter) nats 4222 TCP NATS Basic authentication
Load balancer router (Gorouter) 80 TCP HTTP None
Load balancer router (Gorouter) 443 TCP HTTPS TLS
router (Gorouter) nats 4222 TCP NATS Basic authentication
router (Gorouter) System components and app containers Varies TCP HTTP None

TCP Routing (Optional)

The following table lists network communication paths for TCP routing.

Source VM Destination VM Port Transport Layer Protocol App Layer Protocol Security and Authentication
cloud_controller cloud_controller (Routing API)* 443 TCP HTTPS TLS and OAuth 2.0
cloud_controller (Routing API) diego_database (Locket) 8891 TCP HTTPS Mutual TLS
cloud_controller (Routing API) mysql_proxy 3306 TCP MySQL MySQL authentication**
cloud_controller (Routing API) uaa 8443 TCP HTTPS TLS
diego_brain (global TCP Emitter) cloud_controller (Routing API) 3000 TCP HTTP OAuth 2.0
diego_brain (global TCP Emitter) uaa 8443 TCP HTTPS TLS
diego_cell (local Route Emitter) cloud_controller (Routing API) 3000 TCP HTTP OAuth 2.0
diego_cell (local Route Emitter) uaa 8443 TCP HTTPS TLS
Load balancer tcp_router 1024-65535 TCP N/A None
router (Gorouter) cloud_controller (Routing API) 3000 TCP HTTP OAuth 2.0
router (Gorouter) uaa 8443 TCP HTTPS TLS
tcp_router cloud_controller (Routing API) 3000 TCP HTTP OAuth 2.0
tcp_router uaa 8443 TCP HTTPS TLS

* This communication happens through a load balancer and Gorouter. Requests are received by Routing API on port 3000.

You can use this port range to configure the port in the ERT tile.

** MySQL authentication uses the MySQL native password method.

Consul Communications

ERT components call out to Consul for service discovery. For more information, see Consul Network Communications.

Create a pull request or raise an issue on the source for this page in GitHub