IP Library Granted Patent US 12689583
Granted Patent B2
US 12689583 · App. 18/325,431 · Granted Jul 21, 2026

Virtual router function sharding for scalable multi-tenant routing

Inventors: Mohammed Hawari (Montigny-le-Bretonneux, FR); Jerome Tollet (Paris, FR); Benoit Ganne (Malakoff, FR); Arthur de Kerhor (Paris, FR)
Assignee: Cisco Technology, Inc.
H04L45/586H04L12/4633H04L45/66H04L45/745
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12689583
App. No.
18/325,431
Granted
Jul 21, 2026
Kind
B2
Abstract

Proposed herein at techniques for scalable network traffic steering in a multi-tenant network. In one aspect, a method includes receiving, at an ingress of a multi-tenant network, a data packet, the data packet including a Virtual Network Identifier (VNI) identifying a corresponding tenant for the data packet in the multi-tenant network, and determining, at the ingress, a corresponding cluster of routers for processing the data packet based on the VNI, wherein the corresponding cluster of routers is one of a plurality of clusters of routers in the multi-tenant network. The method further includes forwarding the data packet to a router in the corresponding cluster of routers for processing.

Claims (49)

1 . A method comprising:

receiving, at an ingress of a multi-tenant network, a data packet, the data packet including a Virtual Network Identifier (VNI) identifying a corresponding tenant for the data packet in the multi-tenant network;

determining, at the ingress, a corresponding cluster of routers for processing the data packet by:

parsing an encapsulation header of the data packet to identify the VNI;

determining, using a stateless algorithmic method applied to the VNI, a shard index associated with the VNI, wherein the stateless algorithmic method is one of a modulo operation or bitmasking of bits of the VNI; and

mapping the shard index to an identifier of the corresponding cluster of routers associated with the VNI, wherein the corresponding cluster of routers is one of a plurality of clusters of routers in the multi-tenant network; and

forwarding the data packet to a router in the corresponding cluster of routers for processing.

2 . The method of claim 1 , wherein the ingress is a virtualized network function layer configured to parse the data packet for determining the VNI in the data packet.

3 . The method of claim 1 , wherein the ingress is any router in the multi-tenant network.

4 . The method of claim 1 , wherein the identifier of the corresponding cluster of routers is a Virtual IP (VIP) address of the corresponding cluster of routers.

5 . The method of claim 1 , wherein the router is in a same Layer 2 domain as remaining routers in the corresponding cluster of routers, and

forwarding the data packet to the router comprises:

altering a Media Access Control (MAC) address in the data packet to reach the router; or

forwarding the data packet to the router using an encapsulation protocol.

6 . The method of claim 1 , wherein a control plane of each router in a given cluster of the plurality of clusters of routers receives route updates for VNIs associated with the given cluster of the plurality of clusters of routers.

7 . A network element of a multi-tenant network, comprising:

one or more memories having computer-readable instructions stored therein; and

one or more processors configured to execute the computer-readable instructions to:

receive a data packet, the data packet including a Virtual Network Identifier (VNI) identifying a corresponding tenant for the data packet in the multi-tenant network;

determine a corresponding cluster of routers for processing the data packet by:

parsing an encapsulation header of the data packet to identify the VNI;

determining, using a stateless algorithmic method applied to the VNI, a shard index associated with the VNI, wherein the stateless algorithmic method is one of a modulo operation or bitmasking of bits of the VNI; and

mapping the shard index to an identifier of the corresponding cluster of routers associated with the VNI, wherein the corresponding cluster of routers is one of a plurality of clusters of routers in the multi-tenant network; and

forward the data packet to a router in the corresponding cluster of routers for processing.

8 . The network element of claim 7 , wherein the network element is a virtualized network function layer configured to parse the data packet for determining the VNI in the data packet.

9 . The network element of claim 7 , wherein the network element is any router in the multi-tenant network.

10 . The network element of claim 7 , wherein the identifier of the corresponding cluster of routers is a Virtual IP (VIP) address of the corresponding cluster of routers.

11 . The network element of claim 7 , wherein the router is in a same Layer 2 domain as remaining routers in the corresponding cluster of routers, and

the one or more processors are configured to execute the computer-readable instructions to forward the data packet to the router by:

altering a Media Access Control (MAC) address in the data packet to reach the router; or

forwarding the data packet to the router using an encapsulation protocol.

12 . The network element of claim 7 , wherein a control plane of each router in a given cluster of the plurality of clusters of routers receives route updates for VNIs associated with the given cluster of the plurality of clusters of routers.

13 . One or more non-transitory computer-readable media comprising computer-readable instructions, which when executed by one or more processors at an ingress of a multi-tenant network, cause the ingress to:

receive a data packet, the data packet including a Virtual Network Identifier (VNI) identifying a corresponding tenant for the data packet in the multi-tenant network;

determine a corresponding cluster of routers for processing the data packet by:

parsing an encapsulation header of the data packet to identify the VNI;

determining, using a stateless algorithmic method applied to the VNI, a shard index associated with the VNI, wherein the stateless algorithmic method is one of a modulo operation or bitmasking of bits of the VNI; and

mapping the shard index to an identifier of the corresponding cluster of routers associated with the VNI, wherein the corresponding cluster of routers is one of a plurality of clusters of routers in the multi-tenant network; and

forward the data packet to a router in the corresponding cluster of routers for processing.

14 . The one or more non-transitory computer-readable media of claim 13 , wherein the ingress is a virtualized network function layer configured to parse the data packet for determining the VNI in the data packet.

15 . The one or more non-transitory computer-readable media of claim 13 , wherein the ingress is any router in the multi-tenant network.

16 . The one or more non-transitory computer-readable media of claim 13 , wherein the identifier of the corresponding cluster of routers is a Virtual IP (VIP) address of the corresponding cluster of routers.

17 . The one or more non-transitory computer-readable media of claim 13 , wherein the router is in a same Layer 2 domain as remaining routers in the corresponding cluster of routers, and

the execution of the computer-readable instructions cause the ingress to forward the data packet to the router by:

altering a Media Access Control (MAC) address in the data packet to reach the router; or

forwarding the data packet to the router using an encapsulation protocol.

18 . The method of claim 1 , wherein a control plane of each router in a given cluster of the plurality of clusters subscribes to receiving route updates for VNIs having shard indices mapped to the given cluster.

19 . The network element of claim 7 , wherein a control plane of each router in a given cluster of the plurality of clusters subscribes to receiving route updates for VNIs having shard indices mapped to the given cluster.

20 . The one or more non-transitory computer-readable media of claim 13 , wherein a control plane of each router in a given cluster of the plurality of clusters subscribes to receiving route updates for VNIs having shard indices mapped to the given cluster.