Skip to main content

There are two important routing entities to understand in GCP





  1. VPC native routing service


  2. GCP Cloud Router




VPC Native Routing Service



When VPC is created, GCP automatically deploys a routing service inside the VPC. This routing service or daemon is similar to what you see in any other public cloud such as AWS and Azure. It is a hidden service that performs the L3 routing between different subnets inside the same VPC.



GCP Cloud Router (GCR)



GCP Cloud Router is another service that is instantiated when GCP needs to connect to on-premise data centers or branches. GCP Cloud Router (CR) runs as a managed service.



CR is similar to a traditional router but it only provides control plane functionality. It learns routes from on-prem and supports eBGP. Notice OSPF is pretty much dead in the Cloud so no cloud provider supports OSPF.



The actual data plane is inside the GCP VM. That means every VM is doing host routing and all the route table lives inside the VM itself.



CR is google managed process. GCP will re-spin the cloud router. It is like a distributed router. GCP will bring that backup.



CR Routing Modes



Two routing mode are available





  1. Regional Routing
    Only learns in the specific region. For example, CR West only learns routes from the West region


  2. Global Routing
    Global routing allows picking all subnets in all regions. For example, subnets in the west and east. You deploy CR in a specific region and then it learns globally




Global vs Regional CR



In GCP LB is a regional construct. So if you are using LB, then it means use would use regional CR instead of Global CR.



Route Priority



Router Priority is controller via BGP attribute called MED. Standard MED is 1000. Local CR will have MED of 1000. Routes from other regions have a metric based on RTT added to the default MED value.

Routes from other regions are based on RTT - what is RTT -- Route Target?


Reply