Virtual routing and forwarding

Computer networking technology

In IP-based computer networks, virtual routing and forwarding (VRF) is a technology that allows multiple instances of a routing table to co-exist within the same router at the same time. One or more logical or physical interfaces may have a VRF and these VRFs do not share routes. Therefore, the packets are only forwarded between interfaces on the same VRF. VRFs are the TCP/IP layer 3 equivalent of a VLAN. Because the routing instances are independent, the same or overlapping IP addresses can be used without conflicting with each other. Network functionality is improved because network paths can be segmented without requiring multiple routers.[1]

Simple implementation

The simplest form of VRF implementation is VRF-Lite.[2] In this implementation, each router within the network participates in the virtual routing environment in a peer-based fashion. While simple to deploy and appropriate for small to medium enterprises and shared data centers, VRF Lite does not scale to the size required by global enterprises or large carriers, as there is the need to implement each VRF instance on every router, including intermediate routers. VRFs were initially introduced in combination with Multiprotocol Label Switching (MPLS), but VRF proved to be so useful that it eventually evolved to live independent of MPLS. This is the historical explanation of the term VRF Lite: usage of VRFs without MPLS.

Example of a global and VRF Routing table summary with different routes/routing protocol

Full implementation

The scaling limitations of VRF Lite are resolved by the implementation of IP VPNs. In this implementation, a core backbone network is responsible for the transmission of data across the wide area between VRF instances at each edge location. IP VPNs have been traditionally deployed by carriers to provide a shared wide-area backbone network for multiple customers. They are also appropriate in the large enterprise, multi-tenant and shared data center environments.

In a typical deployment, customer edge (CE) routers handle local routing in a traditional fashion and disseminate routing information into the provider edge (PE) where the routing tables are virtualized. The PE router then encapsulates the traffic, marks it to identify the VRF instance, and transmits it across the provider backbone network to the destination PE router. The destination PE router then decapsulates the traffic and forwards it to the CE router at the destination. The backbone network is completely transparent to the customer equipment, allowing multiple customers or user communities to use the common backbone network while maintaining end-to-end traffic separation.

Routes across the provider backbone network are maintained using an interior gateway protocol – typically iBGP. IBGP uses extended community attributes in a common routing table to differentiate the customers' routes with overlapping IP addresses.

IP VPN is most commonly deployed across an MPLS backbone as the inherent labeling of packets in MPLS lends itself to the identification of the customer VRF. Some IP VPN implementations (notably Nortel's IP-VPN Lite) use a simpler IP-in-IP encapsulation over a pure IP backbone, eliminating the need to maintain and support an MPLS environment.

See also

  • Layer 2 Forwarding Protocol

References

  1. ^ Cisco - Virtual Route Forwarding Design Guide
  2. ^ Configuring VRF-lite (PDF), Cisco Systems, retrieved 2020-12-30

External links

  • VRFs with multicore packet processors
  • VRF Route Leaking
  • Juniper documentation on configuring VPNs and VRFs
  • Nortel IPVPN and IPVPN Lite Configuration documentation
  • Virtual Routing And Forwarding (VRF), Avi Networks