IP Library Granted Patent US 9,942,095
Granted Patent B2
US 9,942,095 · App. 15/606,656 · Granted Apr 10, 2018

Methods and apparatus for selecting a master virtual processor within a switch fabric element

Inventors: Gunes Aybay (Cupertino, CA); Pradeep Sindhu (Los Altos, CA); Anjan Venkatramani (Los Altos, CA)
Assignee: Juniper Networks, Inc.
H04L41/082G06F13/4022H04L12/28H04L41/12H04L45/563G06F2213/0058H04L1/00
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 9,942,095
App. No.
15/606,656
Granted
Apr 10, 2018
Kind
B2
Abstract

In some embodiments, an apparatus comprises a processing module, disposed within a first switch fabric element, configured to detect a second switch fabric element having a routing module when the second switch fabric element is operatively coupled to the first switch fabric element. The processing module is configured to define a virtual processing module configured to be operatively coupled to the second switch fabric element. The virtual processing module is configured to receive a request from the second switch fabric element for forwarding information and the virtual processing module is configured to send the forwarding information to the routing module.

Claims (49)

1. A method, comprising:

detecting, at a first switch fabric element with at least one hardware processor configured to execute a processing module, a second switch fabric element when the second switch fabric element is newly connected to the first switch fabric element;

instantiating a virtual processing module locally within the first switch fabric element, the virtual processing module configured to control the second switch fabric element;

receiving at the virtual processing module, a request for forwarding information to a routing module of the second switch fabric element such that, the routing module of the second switch fabric element forwards a data packed based on the forwarding information; and

selecting the virtual processing module as a master virtual processor of the first switch fabric element based on at least two of the followings: (1) a number of master virtual processors currently being operated by the processing module, (2) a historic reliability of the processing module, (3) a historic reliability of the first switch fabric element, or (4) an age of the first switch fabric element.

2. The method of claim 1 , further comprising:

receiving a request from the first switch fabric element for forwarding information; and

sending the forwarding information to a routing module of the first switch fabric element in response to the request from the first switch fabric element.

3. The method of claim 1 , further comprising:

detecting, at the virtual processing module a third switch fabric element having a routing module,

defining, at the processing module, a second virtual processing module operatively coupled to the routing module of the third switch fabric element.

4. The method of claim 1 , wherein the first switch fabric element includes a routing module operatively coupled to the processing module, the method further comprising:

receiving, at the routing module, data from the routing module of the second switch fabric element.

5. The method of claim 1 , wherein the processing module and the virtual processing module are configured based on a first software configuration at a first time, the method further comprising:

receiving, at the processing module, a configuration file to configure the processing module based on a second software configuration at a second time, after the first time; and

configuring the virtual processing module based on the second software configuration at a third time, after the second time.

6. The method of claim 1 , wherein the first switch fabric element is an aggregation switch and the second switch fabric element is an access switch.

7. The method of claim 1 , wherein the selecting includes selecting the virtual processing module as a master virtual processor of the first switch fabric element based on at least three of (1) the number of master virtual processors currently being operated by the processing module, (2) the historic reliability of the processing module, (3) the historic reliability of the first switch fabric element, or (4) the age of the first switch fabric element.

8. A method, comprising:

configuring a first switch fabric element to be included within a switch fabric, the first switch fabric element includes at least one hardware processor configured to execute a processing module having a first software configuration;

detecting, at the first switch fabric element, a second switch fabric element when the second switch fabric element is added to the switch fabric;

coupling a virtual processing module to the second switch fabric element at a first time, the virtual processing module configured based on the first software configuration and being disposed within the first switch fabric element;

receiving a configuration file to execute a self-configuration of the processing module based on a second software configuration; and

selecting the virtual processing module as a maser virtual processor of the first switch fabric element based on at least two of the followings: (1) a number of master virtual processors currently being operated by the processing module, (2) a historic reliability of the processing module, (3) a historic reliability of the first switch fabric element, or (4) an age of the first switch fabric element.

9. The method of claim 8 , further comprising:

detecting, at the processing module, a third switch fabric element; and

operatively coupling, at the processing module and at a third time after the second time, a virtual processing module having the second software configuration and being disposed within the first switch fabric element, to the third switch fabric element.

10. The method of claim 8 , further comprising:

receiving, at the virtual processing module, a request for forwarding information from a routing module disposed within the second switch fabric element.

11. The method of claim 8 , wherein the second switch fabric element is operatively coupled to the first switch fabric element.

12. The method of claim 8 , further comprising:

defining, at the processing module, the virtual processing module in response to detecting the first switch fabric element.

13. The method of claim 8 , wherein the selecting further includes selecting the virtual processing module as a master virtual processor of the first switch fabric element based on at least three of (1) the number of master virtual processors currently being operated by the processing module, (2) the historic reliability of the processing module, (3) the historic reliability of the first switch fabric element, or (4) the age of the first switch fabric element.

14. A method, comprising:

configuring a first switch fabric portion of a switch fabric, the first switch fabric portion includes configured according to a first software configuration;

detecting, at the first switch fabric portion, a second switch fabric portion of the switch fabric when the second switch fabric portion is added to the switch fabric;

coupling a virtual processing module to the second switch fabric element at a first time, the virtual processing module configured based on the first software configuration and being disposed within the first switch fabric portion;

receiving a configuration file to execute a self-configuration of the first switch fabric portion based on a second software configuration; and

selecting the virtual processing module as a maser virtual processor of the first switch fabric portion based on at least two of the followings: (1) a number of master virtual processors currently being operated by the first switch fabric portion, (2) a historic reliability of the first switch fabric portion, (3) a historic reliability of the first switch fabric element, or (4) an age of the first switch fabric element.

15. The method of claim 14 , further comprising:

detecting a third switch fabric portion of the switch fabric; and

coupling, at a third time after the second time, a virtual processing module having the second software configuration and being disposed within the first switch fabric portion, to the third switch fabric portion.

16. The method of claim 14 , further comprising:

receiving, at the virtual processing module, a request for forwarding information from a routing module disposed within the second switch fabric portion.

17. The method of claim 14 , wherein the second switch fabric portion is operatively coupled to the first switch fabric portion.

18. The method of claim 14 , further comprising:

defining the virtual processing module in response to detecting the first switch fabric portion.

19. The method of claim 14 , wherein the selecting further includes selecting the virtual processing module as a master virtual processor of the first switch fabric portion based on at least three of (1) the number of master virtual processors currently being operated by the first switch fabric portion, (2) the historic reliability of the first switch fabric portion, (3) the historic reliability of the first switch fabric portion, or (4) the age of the first switch fabric portion.

20. The method of claim 14 , wherein the first switch fabric portion is a first switch fabric element, the second switch fabric portion is a second switch fabric element.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2017
From: AYBAY, GUNES; SINDHU, PRADEEP; VENKATRAMANI, ANJAN
To: JUNIPER NETWORKS, INC.
Reel/Frame 042577/0785 →
Continuity (3)
Continuation 14603901 · Jan 23, 2015
Continuation 12951706 · Nov 22, 2010
Related Publication 20170272312A1 · Sep 21, 2017