IP Library Granted Patent US 7,441,023
Granted Patent B2
US 7,441,023 · App. 10/949,415 · Granted Oct 21, 2008

Method and apparatus for modeling and analyzing MPLS and virtual private networks

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 7,441,023
App. No.
10/949,415
Granted
Oct 21, 2008
Kind
B2
Abstract

A method and apparatus for representing a network and performing operations on the represented network are disclosed. The method comprises the steps of creating at least one configuration non-specific object class associated with components of the network, creating at least one configuration non-specific representation of relationships among associated object classes, representing a behavior relationship among the object classes based on the representations of the relationships among the object classes and analyzing properties of the network based on the behavior relationships. In aspects of the invention, the represented network may be an MPLS network, a VPN or a combined MPLS-VPN.

Claims (71)

1. A method for representing a network and performing operations on the represented network, the method comprising the steps of:

creating at least one configuration non-specific object class associated with components of the network, wherein said objects are selected from the group consisting of: LSPTermination, LSPHop, LSPOutSegment, LSPInSegment and wherein the objects LSPOutSegment, LSPInSegment are subclasses of the LSPTermination object; and

creating at least one configuration non-specific representation of relationships among associated object classes, wherein the relationships among the object classes are selected from the group consisting of: PreviousHop/NextHop, SwitchedFrom/SwitchedTo, PreviousHop, FirstHop, NextHop, Connected PE;

representing a behavior relationship among the object classes based on the representations of the relationships among the object classes, wherein said behavior relationship is represented as a mapping of effects of at least one event in selected object classes to events in other selected object classes to allow propagation and elevation of events through relationships of the object classes to higher object class levels;

analyzing properties of the network based on the propagation and elevation of events between the object classes.

2. The method as recited in claim 1 , further comprising the step of:

dynamically determining instances of selected ones of the object classes from information provided with regard to the network components.

3. The method as recited in claim 2 , wherein said instances of selected ones of object classes are predetermined.

4. The method as recited in claim 1 , further comprising the step of:

dynamically determining instances of selected ones of the representations of relationships from information provided with regard to the network components.

5. The method as recited in claim 4 , wherein said instances of selected ones of the representations of relationships are predetermined.

6. The method as recited in claim 1 wherein the step of representing the behavior relationship comprises the step of:

propagating a property of an object class through at least one associated representation of a relationship among associated object classes, said propagation being indicated for each of the associated object classes.

7. The method as recited in claim 6 wherein the behavior relationship is selected from a group consisting of: impact, causality, performance and cost.

8. The method as recited in claim 1 , wherein the event is associated with an occurrence in at least one of said network components.

9. The method as recited in claim 1 , wherein the step of analysis is selected from the group consisting of: impact, root-cause, exception detection, provisioning, configuration, study, performance, costing, capacity planning, design, “what if” scenarios, planning and simulation.

10. The method as recited in claim 9 , further comprising the step of:

storing the results of the selected analysis.

11. The method as recited in claim 9 , further comprising the step of:

displaying the results of the selected analysis.

12. The method as recited in claim 1 , where the object classes are further selected from the group consisting of: RouteTarget, VRF, and VPN.

13. The method as recited in claim 12 , wherein the relationships among the object classes are further selected from the group consisting of: ImportedBy/Imports, ExportedBy/Exports, VPNPeer, HubsOf, SpokesOf, and SendsTo/ReceivesFrom.

14. An apparatus for representing a network and performing operations on the represented network, the apparatus comprising:

a processor in communication with a memory, the processor executing code for:

storing at least one configuration non-specific object class associated with components of the network, wherein said objects are selected from the group consisting of: LSPTermination, LSPHop, LSPOutSegment, LSPInSegment and wherein the objects LSPOutSegment, LSPInSegment are subclasses of the LSPTermination object; and

storing at least one configuration non-specific representation of relationships among associated object classes, wherein the relationships among the object classes are selected from the group consisting of: PreviousHop/NextHop, SwitchedFrom/SwitchedTo, PreviousHop, FirstHop, NextHop, Connected PE;

representing a behavior relationship among the object classes based on the representations of the relationships among the object classes, wherein said behavior relationship is represented as a mapping of effects of at least one event in selected object classes to events of other selected object classes to allow propagation and elevation of events through relationships of the object classes to higher object class levels;

analyzing properties of the network based on the propagation and elevation of events between the object classes.

15. The apparatus as recited in claim 14 , the processor further executing code for:

dynamically determining instances of selected ones of the object classes from information provided with regard to the network components.

16. The apparatus as recited in claim 15 , wherein said instances of selected ones of object classes are predetermined.

17. The apparatus as recited in claim 14 , the processor further executing code for:

dynamically determining instances of selected ones of the representations of relationships from information provided with regard to the network components.

18. The apparatus as recited in claim 17 , wherein said instances of selected ones of the representations of relationships are predetermined.

19. The apparatus as recited in claim 14 , the processor further executing code for:

propagating a property of an object class through at least one associated representation of a relationship among associated object classes, said propagation being indicated for each of the associated object classes.

20. The apparatus as recited in claim 19 wherein the behavior relationship is selected from a group consisting of: impact, causality, performance and cost.

21. The apparatus as recited in claim 14 , wherein the event is associated with an occurrence in at least one of said network components.

22. The apparatus as recited in claim 14 , the processor further executing code for:

performing an analysis is selected from the group consisting of: impact, root-cause, exception detection, provisioning, configuration, study, performance, costing, capacity planning, design, “what if” scenarios, planning and simulation.

23. The apparatus as recited in claim 22 , the processor further executing code for:

storing the results of the selected analysis.

24. The apparatus as recited in claim 23 , the processor further executing code for:

displaying the results of the selected analysis.

25. The apparatus as recited in claim 14 , where the object classes are further selected from the group consisting of: RouteTarget, VRF, and VPN.

26. The apparatus as recited in claim 25 , wherein the relationships among the object classes are further selected from the group consisting of: ImportedBy/Imports, ExportedBy/Exports, VPNPeer, HubsOf, SpokesOf, and SendsTo/ReceivesFrom.

27. The apparatus as recited in claim 14 , further comprising:

An I/O device in communication with the processor and the memory.

28. The apparatus as recited in claim 14 , wherein the code is stored in the memory.

29. A computer read-able storage medium containing code for representing a network and performing operations on the represented network, the code providing instructions to a computer system for executing the steps of:

storing at least one configuration non-specific object class associated with components of the network, wherein said objects are selected from the group consisting of: LSPTermination, LSPHop, LSPOutSegment, LSPInSegment and wherein the objects LSPOutSegment, LSPInSegment are subclasses of the LSPTermination object; and

storing at least one configuration non-specific representation of relationships among associated object classes, wherein the relationships among the object classes are selected from the group consisting of: PreviousHop/NextHop, SwitchedFrom/SwitchedTo, PreviousHop, FirstHop, NextHop, Connected PE;

representing a behavior relationship among the object classes based on the representations of the relationships among the object classes, wherein said behavior relationship is represented as a mapping of effects of at least one event in selected object classes to events of other selected object classes to allow propagation and elevation of events through relationships of the object classes to higher object class levels;

analyzing properties of the network based on the propagation and elevation of events between the object classes.

30. A computer-readable storage medium as recited in claim 29 , the processor further executing code for:

dynamically determining instances of selected ones of the object classes from information provided with regard to the network components.

31. A computer-readable storage medium as recited in claim 30 , wherein said instances of selected ones of object classes are predetermined.

32. A computer-readable storage medium as recited in claim 29 , the processor further executing code for:

dynamically determining instances of selected ones of the representations of relationships from information provided with regard to the network components.

33. A computer-readable storage medium as recited in claim 32 , wherein said instances of selected ones of the representations of relationships are predetermined.

34. A computer-readable storage medium as recited in claim 29 wherein the step of representing the behavior relationship comprises the step of:

propagating a property of an object class through at least one associated representation of a relationship among object classes.

35. A computer-readable storage medium as recited in claim 34 wherein the behavior relationship is selected from a group consisting of: impact, causality, performance and cost.

36. A computer-readable storage medium as recited in claim 29 , wherein the event is associated with an occurrence in at least one of said network components.

37. A computer-readable storage medium as recited in claim 29 , wherein code further providing instructions to a computing system for executing the step of: performing an analysis is selected from the group consisting of: impact, root-cause, exception detection, provisioning, configuration, study, performance, costing, capacity planning, design, “what if” scenarios, planning and simulation.

38. A computer-readable storage medium as recited in claim 37 , wherein the code further providing instructions to a computing system for executing the steps of:

storing the results of the selected analysis.

39. A computer-readable storage medium as recited in claim 38 , wherein the code further providing instructions to a computing system for executing the steps of:

displaying the results of the selected analysis.

40. A computer-readable storage medium as recited in claim 29 , where the object classes are further selected from the group consisting of: RouteTarget, VRF, and VPN.

41. A computer-readable storage medium as recited in claim 40 , wherein the relationships among the object classes are further selected from the group consisting of: ImportedBy/Imports, ExportedBy/Exports, VPNPeer, HubsOf, SpokesOf, and SendsTo/ReceivesFrom.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 10/962,301 PREVIOUSLY RECORDED ON REEL 015918 FRAME 0565. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER DOCUMENT. Recorded Apr 29, 2020
From: SYSTEM MANAGEMENT ARTS INCORPORATED
To: EMC CORPORATION
Reel/Frame 052522/0656 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →