IP Library Granted Patent US 8,605,732
Granted Patent B2
US 8,605,732 · App. 13/027,973 · Granted Dec 10, 2013

Method of providing virtual router functionality

Inventors: David K Parker (Gloucestershire, GB); Denton Gentry (Fremont, CA)
Assignee: Extreme Networks, Inc.
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 8,605,732
App. No.
13/027,973
Granted
Dec 10, 2013
Kind
B2
Abstract

A method of presenting different virtual routers to different end users, classes of service, or packets is provided. An incoming packet is received having a VLAN field and at least one additional field. A key is formed from the VLAN field and at least one other packet field, and mapped into a virtual router identifier (VRID) using an indirection mapping process. The VRID identifies a particular virtual router configuration from a plurality of possible virtual router configurations. A networking device is configured to have the particular virtual router configuration identified by the VRID, and the packet is then forwarded by the configured device.

Claims (45)

1. A method in a network device for presenting different virtual routers to different end users within a common Virtual Local Area Network (VLAN), wherein the method comprises:

receiving an incoming packet having a VLAN field identifying the common VLAN and at least one additional packet field;

forming a key from the VLAN field and the at least one additional packet field;

mapping the key to a virtual router identifier (VRID), wherein the VRID specifies one virtual router configuration among a plurality of possible virtual router configurations;

configuring the networking device to present the one virtual router configuration specified by the VRID by selecting a routing table that characterizes the virtual router configuration specified by the VRID for use in routing the incoming packet; and

routing the incoming packet using the selected routing table that characterizes the virtual router configuration specified by the VRID, wherein the number of possible virtual routers presented to the different end users is increased by mapping multiple different key values into the same VRID through appropriate settings of index values for the networking device.

2. The method of claim 1 , further comprising masking the key using a key type determined responsive to one or more packet fields of the incoming packet.

3. The method claim 2 , wherein the key type is determined by inputting an ingress port field of the incoming packet to a lookup table.

4. The method of claim 2 , wherein the key type functions as a mask, by indicating which of any fields utilized in forming the key are to be wild-carded/ignored in subsequent processing, and which of any fields utilized in forming the key are to be used in the subsequent processing.

5. The method of claim 4 , wherein each of the fields utilized in forming the key can be independently wild-carded or not wild-carded.

6. The method of claim 1 , wherein the at least one additional packet field comprises a Virtual Metropolitan Network (VMAN) field, distinct from the VLAN field identifying the common VLAN.

7. The method of claim 1 , wherein the key formed from the VLAN field and the at least one additional packet field comprises a size in excess of the VLAN field and further allows the VLAN field to be used for virtual routing purposes, wherein a number of virtual routers that can be presented is limited by a memory's size used to perform packet searches to arrive at a routing decision, and further wherein the number of virtual routers that can be presented is not dependent upon the VLAN field's size.

8. The method of claim 7 , wherein the VLAN field is limited to 12 bits and identifies a maximum of 4K of different routing tables, and wherein the key formed from the VLAN field and the at least one additional packet field comprises a size in excess of the VLAN field.

9. The method of claim 7 , wherein the VLAN field is an extended VLAN field or a super VLAN field.

10. The method of claim 1 , wherein configuring the networking device to present the one virtual router configuration specified by the VRID by selecting the routing table that characterizes the virtual router configuration specified by the VRID for use in routing the incoming packet comprises:

accessing a table having a plurality of entries, each entry having a content value and an index value;

locating an entry having the content value that matches the key formed;

mapping the index value of the matching entry into the VRID using an associated data store element; and

selecting an entry in the associated data store element having an index value that matches the index value for the matching entry in the table, wherein the entry from the associated data store is, or contains, the VRID.

11. A networking device having a packet processor for executing one or more commands, instructions or state transitions to present different virtual routers to different end users within a common Virtual Local Area Network (VLAN), wherein executing the one or more commands, instructions or state transitions causes the networking device to further:

receive an incoming packet having a VLAN field identifying the common VLAN and at least one additional packet field;

form a key from the VLAN field and the at least one additional packet field;

map the key to a virtual router identifier (VRID), wherein the VRID specifies one virtual router configuration among a plurality of possible virtual router configurations;

configure the networking device to present the one virtual router configuration specified by the VRID by selecting a routing table that characterizes the virtual router configuration specified by the VRID for use in routing the incoming packet; and

route the incoming packet using the selected routing table that characterizes the virtual router configuration specified by the VRID, wherein the number of possible virtual routers presented to the different end users is increased by mapping multiple different key values into the same VRID through appropriate settings of index values for the networking device.

12. The networking device of claim 11 , wherein executing the one or more commands, instructions or state transitions further causes the networking device to:

mask the key using a key type determined responsive to one or more packet fields of the incoming packet.

13. The networking device of claim 12 , wherein the key type functions as a mask, by indicating which of any fields utilized in forming the key are to be wild-carded/ignored in subsequent processing, and which of any fields utilized in forming the key are to be used in the subsequent processing, and wherein each of the fields utilized in forming the key can be independently wild-carded or not wild-carded.

14. The networking device of claim 11 , wherein the at least one additional packet field comprises a Virtual Metropolitan Network (VMAN) field, distinct from the VLAN field identifying the common VLAN.

15. The networking device of claim 11 , wherein the key formed from the VLAN field and the at least one additional packet field comprises a size in excess of the VLAN field and further allows the VLAN field to be used for virtual routing purposes, wherein a number of virtual routers that can be presented is limited by a memory's size used to perform packet searches to arrive at a routing decision, and further wherein the number of the virtual routers that can be presented is not dependent upon the VLAN field's size.

16. The networking device of claim 11 , wherein executing the one or more commands, instructions or state transitions causes the networking device to configure the networking device comprises:

accessing a table having a plurality of entries, each entry having a content value and an index value;

locating an entry having the content value that matches the key formed;

mapping the index value of the matching entry into the VRID using an associated data store element; and

selecting an entry in the associated data store element having an index value that matches the index value for the matching entry in the table, wherein the entry from the associated data store is or contains the VRID.

17. The networking device of claim 16 , wherein the table is stored on a Content Addressable Memory (CAM), and wherein locating the entry having the content value that matches the key formed comprises searching the CAM for, and locating the entry in the CAM.

18. Non-transitory instructions of a networking device that, when executed by a processor, the non-transitory instructions cause the networking device to perform operations comprising:

receiving an incoming packet having a VLAN field identifying a common VLAN and at least one additional packet field;

forming a key from the VLAN field and the at least one additional packet field;

mapping the key to a virtual router identifier (VRID), wherein the VRID specifies one virtual router configuration among a plurality of possible virtual router configurations;

configuring the networking device to present the one virtual router configuration specified by the VRID by selecting a routing table that characterizes the virtual router configuration specified by the VRID for use in routing the incoming packet; and

routing the incoming packet using the selected routing table that characterizes the virtual router configuration specified by the VRID, wherein the number of possible virtual routers presented to different end users is increased by mapping multiple different key values into the same VRID through appropriate settings of index values for the networking device.

19. The non-transitory instructions of claim 18 , further comprising:

masking the key using a key type determined responsive to one or more packet fields of the incoming packet.

20. The non-transitory instructions of claim 19 , wherein the key type functions as a mask, by indicating which of any fields utilized in forming the key are to be wild-carded/ignored in subsequent processing, and which of any fields utilized in forming the key are to be used in the subsequent processing, and wherein each of the fields utilized in forming the key can be independently wild-carded or not wild-carded.

Assignments (10)
RELEASE OF PATENT AND TRADEMARK SECURITY INTEREST AT REEL/FRAME NO. 46050/0546 Recorded Jul 30, 2026
From: BANK OF MONTREAL, AS AGENT
To: EXTREME NETWORKS, INC.
Reel/Frame 076081/0088 →
SECURITY INTEREST Recorded Jul 29, 2026
From: EXTREME NETWORKS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 076078/0590 →
AMENDED SECURITY AGREEMENT Recorded Aug 18, 2023
From: EXTREME NETWORKS, INC.; AEROHIVE NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 064782/0971 →
SECURITY INTEREST Recorded May 1, 2018
From: EXTREME NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 046050/0546 →
RELEASE OF SECURITY INTEREST Recorded May 1, 2018
From: SILICON VALLEY BANK
To: EXTREME NETWORKS, INC.
Reel/Frame 046051/0775 →
THIRD AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Oct 31, 2017
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 044639/0300 →
SECOND AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Jul 14, 2017
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 043200/0614 →
AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Oct 31, 2016
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 040521/0762 →
SECURITY AGREEMENT Recorded Jul 27, 2015
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 036189/0284 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2011
From: PARKER, DAVID K.; GENTRY, DENTON
To: EXTREME NETWORKS, INC.
Reel/Frame 025820/0261 →
Continuity (1)
Related Publication 20120207169A1 · Aug 16, 2012