IP Library Granted Patent US 7,684,354
Granted Patent B2
US 7,684,354 · App. 11/832,510 · Granted Mar 23, 2010

Method and system for analyzing the topology of a multiprotocol label switching (MPLS)/virtual private network (VPN) network

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,684,354
App. No.
11/832,510
Granted
Mar 23, 2010
Kind
B2
Abstract

In general, embodiments of the invention relates to a method for analyzing a topology of a multiprotocol label switching (MPLS)/Virtual Private Network (VPN) network. The method includes obtaining logical communication channel information for a plurality of virtual routing and forwarding (VRF) instances, wherein each of the plurality of VRF instances are located on one of a plurality of routers, wherein the logical communication channel information specifies a plurality of logical communication channels between the plurality of VRF instances, and wherein at least two VRF instances are located on one of the plurality of routers. The method further includes constructing an audit matrix representing the logical communication channel information, wherein the audit matrix specifies the topology of the MPLS/VPN network, analyzing the audit matrix to obtain an analysis result, and presenting the analysis result.

Claims (52)

1. A method for analyzing a topology of a multiprotocol label switching (MPLS)/Virtual Private Network (VPN) network comprising:

obtaining logical communication channel information for a plurality of virtual routing and forwarding (VRF) instances, wherein each of the plurality of VRF instances are located on one of a plurality of routers, wherein the logical communication channel information specifies a plurality of logical communication channels between the plurality of VRF instances, and wherein at least two VRF instances are located on one of the plurality of routers;

constructing, by a computer processor, an audit matrix representing the logical communication channel information, wherein the audit matrix specifies the topology of the MPLS/VPN network, wherein the audit matrix comprises a separate row for each of the plurality of VRF instances and a separate column for each of the plurality of VRF instances, and wherein constructing the audit matrix comprises:

for each of the plurality of logical communication channels in the logical channel information:

identifying two VRF instances of the plurality of VRF instances that can communicate via the logical communication channel,

identifying at least one entry located at the separate row and the separate column for the two VRF instances in the audit matrix, and

setting a value of the at least one entry, wherein the value specifies the logical communication channel between the two VRF instances;

analyzing, by the computer processor, the audit matrix according to the value set for each of the plurality of logical communication channels to obtain an analysis result, wherein analyzing the audit matrix comprises:

comparing the audit matrix with an intended matrix, wherein the intended matrix identifies an intended configuration of communication channels between the plurality of VRF instances,

reducing the audit matrix by swapping at least one row and at least one column of the audit matrix to obtain a reduced audit matrix,

identifying a plurality of disjoint subsets of the plurality of VRF instances from the reduced audit matrix, and

creating the analysis result, wherein the analysis result specifies a difference between the audit matrix and the intended matrix and comprises the plurality of disjoint subsets; and

presenting the analysis result.

2. The method of claim 1 , further comprising:

re-configuring at least one router using the analysis result.

3. The method of claim 1 , wherein analyzing the audit matrix comprises determining whether each VRF instance of the plurality of VRF instances comprises at least one logical communication channel with a second VRF instance, based on whether all entries in a row and a column associated with the same VRF instance are set to indicate that no communication channel exists.

4. The method of claim 1 , wherein the analysis result is presented as a directed graph.

5. The method of claim 1 , wherein presenting the analysis result comprises presenting a recommendation to modify at least a portion of the logical channel information based on the analysis result.

6. The method of claim 1 , wherein analyzing the audit matrix comprises determining whether the audit matrix is symmetric, wherein the analysis result indicates that each communication channel of the plurality of communication channels is bidirectional when the audit matrix is symmetric.

7. The method of claim 1 , wherein each entry in the audit matrix is represented by a single bit.

8. A system for analyzing a topology of a multiprotocol label switching (MPLS)/Virtual Private Network (VPN) network comprising:

a plurality of routers comprising logical channel information; and

a framework configured to:

obtain the logical channel information for a plurality of virtual routing and forwarding (VRF) instances on the plurality of routers, wherein the logical channel information specifies a plurality of logical communication channels between the plurality of VRF instances, and wherein at least two VRF instances are located on the same router;

construct an audit matrix representing the logical channel information, wherein the audit matrix specifies the topology of the MPLS/VPN network, wherein the audit matrix comprises a separate row for each of the plurality of VRF instances and a separate column for each of the plurality of VRF instances, and wherein constructing the audit matrix comprises:

for each of the plurality of logical communication channels in the logical channel information:

identifying two VRF instances of the plurality of VRF instances that can communicate via the logical communication channel,

identifying at least one entry located at the separate row and the separate column for the two VRF instances in the audit matrix, and

setting a value of the at least one entry, wherein the value specifies the logical communication channel between the two VRF instances;

analyze the audit matrix according to the value set for each of the plurality of logical communication channels to obtain an analysis result, wherein analyzing the audit matrix comprises:

comparing the audit matrix with an intended matrix, wherein the intended matrix identifies an intended configuration of communication channels between the plurality of VRF instances,

reducing the audit matrix by swapping at least one row and at least one column of the audit matrix to obtain a reduced audit matrix,

identifying a plurality of disjoint subsets of the plurality of VRF instances from the reduced audit matrix, and

creating the analysis result, wherein the analysis result specifies a difference between the audit matrix and the intended matrix and comprises the plurality of disjoint subsets; and

submit a modification to the logical channel information to modify at least one of the plurality of logical communication channels according to the analysis result.

9. The system of claim 8 , wherein submitting the modification comprises re-configuring at least one of the plurality of routers using the modification.

10. The system of claim 8 , wherein submitting a modification comprises generating an analysis report comprising the modification.

11. The system of claim 8 , wherein analyzing the audit matrix comprises determining whether the audit matrix is symmetric, wherein the analysis result indicates that each communication channel of the plurality of communication channels is bidirectional when the audit matrix is symmetric.

12. A computer readable storage medium comprising computer readable program code embodied therein for causing a computer system to:

obtain logical channel information for a plurality of virtual routing and forwarding (VRF) instances on a plurality of routers, wherein the logical channel information specifies a plurality of logical communication channels between the plurality of VRF instances, and wherein at least two VRF instances are located on the same router;

construct an audit matrix representing the logical channel information, wherein the audit matrix specifies a topology of a MPLS/VPN network, wherein the audit matrix comprises a separate row for each of the plurality of VRF instances and a separate column for each of the plurality of VRF instances, and wherein constructing the audit matrix comprises:

for each of the plurality of logical communication channels in the logical channel information:

identifying two VRF instances of the plurality of VRF instances that can communicate via the logical communication channel,

identifying at least one entry located at the separate row and the separate column for the two VRF instances in the audit matrix, and

setting a value of the at least one entry, wherein the value specifies the logical communication channel between the two VRF instances;

analyze the audit matrix according to the value set for each of the plurality of logical communication channels to obtain an analysis result, wherein analyzing the audit matrix comprises:

comparing the audit matrix with an intended matrix, wherein the intended matrix identifies an intended configuration of communication channels between the plurality of VRF instances,

reducing the audit matrix by swapping at least one row and at least one column of the audit matrix to obtain a reduced audit matrix,

identifying a plurality of disjoint subsets of the plurality of VRF instances from the reduced audit matrix, and

creating the analysis result, wherein the analysis result specifies a difference between the audit matrix and the intended matrix and comprises the plurality of disjoint subsets; and

submit a modification to the logical channel information to modify at least one of the plurality of logical communication channels according to the analysis result.

13. The computer readable storage medium of claim 12 , wherein instructions for submitting the modification comprises instructions for re-configuring at least one of the plurality of routers using the modification.

Assignments (8)
TERMINATION AND RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Sep 30, 2020
From: BLACK DIAMOND COMMERCIAL FINANCE, L.L.C. (AS SUCCESSOR BY ASSIGNMENT FROM CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH)
To: SPEEDCAST INTERNATIONAL LIMITED; SPEEDCAST LIMITED; GLOBECOMM SYSTEMS INC.; TELAURUS COMMUNICATIONS LLC; GLOBECOMM SERVICES MARYLAND LLC
Reel/Frame 054210/0475 →
SECURITY INTEREST Recorded Sep 18, 2020
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BLACK DIAMOND COMMERCIAL FINANCE L.L.C.
Reel/Frame 053817/0824 →
CORRECTIVE ASSIGNMENT TO CORRECT THE DOC DATE AND ASSIGNEE ADDRESS PREVIOUSLY RECORDED ON REEL 042951 FRAME 0283. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT OF ASSIGNOR'S INTEREST. Recorded Jan 7, 2020
From: HARRIS CORPORATION
To: SPEEDCAST INTERNATIONAL LIMITED
Reel/Frame 051502/0372 →
SECURITY INTEREST Recorded Jan 16, 2019
From: SPEEDCAST INTERNATIONAL LIMITED
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 048038/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2017
From: HARRIS CORPORATION
To: SPEEDCAST INTERNATIONAL LTD
Reel/Frame 042951/0283 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2016
From: SCHLUMBERGER TECHNOLOGY CORPORATION
To: HARRIS CORPORATION
Reel/Frame 039513/0819 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SECOND APPLICANT'S NAME PREVIOUSLY RECORDED AT REEL 019702, FRAME 0327. Recorded Sep 20, 2007
From: TAMBOISE, GUILLAUME; CAZENAVE, FREDERIK
To: SCHLUMBERGER TECHNOLOGY CORPORATION
Reel/Frame 019882/0856 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2007
From: TAMBOISE, GUILLAUME; CAZENAVA, FREDERIK
To: SCHLUMBERGER TECHNOLOGY CORPORATION
Reel/Frame 019702/0327 →