IP Library Granted Patent US 7,120,120
Granted Patent B2
US 7,120,120 · App. 10/077,251 · Granted Oct 10, 2006

Method and system for topology construction and path identification in a two-level routing domain operated according to a simple link state routing protocol

Assignee: Ipsum 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 7,120,120
App. No.
10/077,251
Granted
Oct 10, 2006
Kind
B2
Abstract

A method and system for extracting and building end-to-end route information in a two-level, multi-area Internet protocol (IP) autonomous system (AS) operated according to a simple link state routing protocol such as the Integrated System to Integrated System (IS-IS) protocol is disclosed. The method and system enables a user, such as a network administrator, to explicitly identify a full set of paths (links and routers) that a given IP packet would potentially traverse from its entry point in the area of the AS where it originates until its exit point in its intended destination or exit area.

Claims (87)

1. A method for constructing end-to-end paths between a specified origin and a specified destination in a two-level multi-area routing domain operated according to a simple link state routing protocol, comprising the steps of:

acquiring topology and routing information for each area in the routing domain;

identifying an origin area and an entry point in the origin area, wherein the origin area is a level one area;

retrieving a route entry in the origin area, the route entry being associated with a specified destination;

extracting a set of exit points from the origin area through which the route entry associated with the specified destination can be reached;

for each exit point associated with the route entry, determining a shortest path in the origin area between the entry point and the exit point;

determining whether the route entry is a null or default entry;

if the route entry is not a null or default entry, for each exit point associated with the route entry, calculating a cost of reaching the route entry through the exit point by adding a cost of the shortest path between the entry point and the exit point to a cost of reaching the route entry from the exit point;

if the route entry is a null or default entry:

selecting at least one exit point into a level two area, wherein each selected exit point corresponds to a shortest path having a minimum cost, and

calculating a cost of reaching the route entry through each selected exit point by adding a cost of the shortest path to a cost of reaching the route entry from the exit point; and

identifying at least one total path to the specified destination through an exit point, wherein each total path comprises a concatenation of a plurality of hops between the entry point and the specified destination.

2. The method of claim 1 wherein the exit points returned in the extracting step are a function of whether a route entry associated with the specified destination address is present in a route table that is associated with the level one area.

3. The method of claim 1 wherein the exit points returned in the extracting step are routers that advertised reachability for a route entry associated with the specified destination in a route table that is associated with the level one area.

4. The method of claim 1 wherein the exit points returned in the extracting step are routers that are connected to the level two area.

5. A computer-readable medium containing instructions thereon for instructing a computing device to perform the steps of:

acquiring topology and routing information for each area in a multi-area routing domain that is operated according to a link state routing protocol;

identifying an origin area in the routing domain and an entry point in the origin area, wherein the origin area is a level one area;

retrieving a route entry in the origin area, the route entry being associated with a specified destination;

extracting a set of exit points from the origin area through which the route entry associated with the specified destination can be reached;

for each exit point associated with the route entry, determining a shortest path in the origin area between the entry point and the exit point;

determining whether the route entry is a null or default entry;

if the route entry is not a null or default entry, for each exit point associated with the route entry, calculating a cost of reaching the route entry through the exit point by adding a cost of the shortest path between the entry point and the exit point to a cost of reaching the route entry from the exit point;

if the route entry is a null or default entry:

selecting at least one exit point into a level two area, wherein each selected exit point corresponds to a shortest path having a minimum cost, and

calculating a cost of reaching the route entry through each selected exit point by adding a cost of the shortest path to a cost of reaching the route entry from the exit point; and

identifying at least one total path to the specified destination through an exit point, wherein each total path comprises a concatenation of a plurality of hops between the entry point and the specified destination.

6. The method of claim 1 wherein identifying at least one total path to the specified destination through an exit point comprises:

retrieving a level two route entry in the level two area, the level two route entry being associated with a specified destination;

extracting a set of level two exit points from the level two area through which the level two route entry associated with the specified destination can be reached;

for each level two exit point associated with the level two route entry:

determining at least one shortest path in the level two area between the exit point and the level two exit point, and

calculating a total cost by adding a cost of a corresponding shortest path to a cost of reaching the level two route entry from the level two exit point;

eliminating level two exit points and shortest paths that do not correspond to a minimum cost from the set of level two exit points;

for each level two exit point through which the level two route entry is directly reachable, identifying a shortest path associated with the level two exit point, wherein the shortest path comprises a concatenation of a plurality of hops between the entry point and the specified destination;

eliminating, from the set of level two exit points, each level two exit point through which the route entry is directly reachable;

for each level two exit point remaining in the set of level two exit points:

identifying a level one area associated with the level two exit point,

retrieving a level one route entry in the level one area associated with the specified destination, and

determining at least one shortest path in the level one area between the level two exit point and the level one route entry; and

identifying at least one total path to the specified destination, wherein each total path comprises a concatenation of a shortest path in the origin area, a shortest path in the level two area, and a shortest path in the level one area.

7. The computer-readable medium of claim 5 wherein identifying at least one total path to the specified destination through an exit point comprises:

retrieving a level two route entry in the level two area, the level two route entry being associated with a specified destination;

extracting a set of level two exit points from the level two area through which the level two route entry associated with the specified destination can be reached;

for each level two exit point associated with the level two route entry:

determining at least one shortest path in the level two area between the exit point and the level two exit point, and

calculating a total cost by adding a cost of a corresponding shortest path to a cost of reaching the level two route entry from the level two exit point;

eliminating level two exit points and shortest paths that do not correspond to a minimum cost from the set of level two exit points;

for each level two exit point through which the level two route entry is directly reachable, identifying a shortest path associated with the level two exit point, wherein the shortest path comprises a concatenation of a plurality of hops between the entry point and the specified destination;

eliminating, from the set of level two exit points, each level two exit point through which the route entry is directly reachable;

for each level two exit point remaining in the set of level two exit points:

identifying a level one area associated with the level two exit point,

retrieving a level one route entry in the level one area associated with the specified destination, and

determining at least one shortest path in the level one area between the level two exit point and the level one route entry; and

identifying at least one total path to the specified destination, wherein each total path comprises a concatenation of a shortest path in the origin area, a shortest path in the level two area, and a shortest path in the level one area.

8. A method for constructing end-to-end paths between a specified origin and a specified destination in a two-level multi-area routing domain operated according to a simple link state routing protocol, comprising the steps of:

acquiring topology and routing information for each area in the routing domain;

identifying an origin area and an entry point in the origin area, wherein the origin area is a level two area;

retrieving a route entry in the origin area, the route entry being associated with a specified destination;

extracting a set of exit points from the origin area through which the route entry associated with the specified destination can be reached;

for each exit point associated with the route entry:

determining at least one shortest path in the origin area between the entry point and the exit point, and

calculating a total cost by adding a cost of a corresponding shortest path to a cost of reaching the route entry from the exit point;

eliminating exit points and shortest paths that do not correspond to a minimum total cost from the set of exit points;

for each exit point through which the route entry is directly reachable, identifying a shortest path associated with the exit point, wherein the shortest path comprises a concatenation of a plurality of hops between the entry point and the specified destination;

eliminating, from the set of exit points, each exit point through which the route entry is directly reachable;

for each exit point remaining in the set of exit points:

identifying a level one area associated with the exit point,

retrieving a level one route entry in the level one area associated with the specified destination, and

determining at least one shortest path in the level one area between the exit point and the level one route entry; and

identifying at least one minimum total cost path to the specified destination, wherein each minimum total cost path comprises a concatenation of a shortest path in the origin area and a shortest path in the level one area.

9. A computer-readable medium containing instructions thereon for instructing a computing device to perform the steps of:

acquiring topology and routing information for each area in a multi-area routing domain that is operated according to a link state routing protocol;

identifying an origin area in the routine domain and an entry point in the origin area, wherein the origin area is a level two area;

retrieving a route entry in the origin area, the route entry being associated with a specified destination;

extracting a set of exit points from the origin area through which the route entry associated with the specified destination can be reached;

for each exit point associated with the route entry:

determining at least one shortest path in the origin area between the entry point and the exit point, and

calculating a total cost by adding a cost of a corresponding shortest path to a cost of reaching the route entry from the exit point;

eliminating exit points and shortest paths that do not correspond to a minimum total cost from the set of exit points;

for each exit point through which the route entry is directly reachable, identifying a shortest path associated with the exit point, wherein the shortest path comprises a concatenation of a plurality of hops between the entry point and the specified destination;

eliminating, from the set of exit points, each exit point through which the route entry is directly reachable;

for each exit point remaining in the set of exit points:

identifying a level one area associated with the exit point,

retrieving a level one route entry in the level one area associated with the specified destination, and

determining at least one shortest path in the level one area between the exit point and the level one route entry; and

identifying at least one minimum total cost path to the specified destination, wherein each minimum total cost path comprises a concatenation of a shortest path in the origin area and a shortest path in the level one area.

Assignments (9)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2021
From: CIRCADENCE CORPORATION
To: SONS OF INNOVATION LLC
Reel/Frame 056106/0493 →
SECURITY INTEREST Recorded Dec 20, 2018
From: CIRCADENCE CORPORATION
To: RUNWAY GROWTH CREDIT FUND INC.
Reel/Frame 047973/0029 →
RELEASE OF SECURITY INTEREST Recorded Dec 11, 2015
From: AUGUSTINE FUND, LP; CAROL W. ASHER REVOCABLE TRUST; LAMPHERE, JTWRS, CHARLES AND SARAH; CRAIG ASHER REVOCABLE TRUST; DLWS PARTNERSHIP; DONALD L. ASHER REVOCABLE TRUST; GABRIEL ASHER 2011 SUSMAN TRUST; HENRY ASHER 2011 SUSMAN TRUST; HOPE E. ASHER REVOCABLE TRUST; MATARAZZO, JOSEPH; NANETTE O. LAMPHERE TRUST; ROBERT G. LAMPHERE TRUST DTD 5/13/93; SARAH ASHER 2011 SUSMAN TRUST; SHOFFNER, JOHN; WILLIAM ASHER 2011 SUSMAN TRUST; VAN VLISSINGEN PROFIT SHARING TRUST; DAVID L. ASHER REVOCABLE TRUST
To: CIRCADENCE CORPORATION
Reel/Frame 037269/0758 →
RELEASE OF SECURITY INTEREST Recorded Dec 9, 2015
From: VAN VLISSINGEN PROFIT SHARING TRUST; JTWRS, CHARLES AND SARAH LAMPHERE; C&S LAMPHERE INVESTMENTS, LLC; CRAIG ASHER REVOCABLE TRUST; CAROL W. ASHER REVOCABLE TRUST; DAVID L. ASHER REVOCABLE TRUST; DONALD L. ASHER REVOCABLE TRUST; GABRIEL ASHER 2011 SUSMAN TRUST; HENRY ASHER 2011 SUSMAN TRUST; HOPE E. KALINSKI REVOCABLE TRUST; SARAH ASHER 2011 SUSMAN TRUST; WILLIAM ASHER 2011 SUSMAN TRUST; SHOFFNER, JOHN; AUGUSTINE FUND, LP; SILVERLEAF CONSULTING, LLC; MATARAZZO, JOSEPH, DR.; HARLAN, JOHN; SAINTS CAPITAL IV, LP; HART, STEPHEN; PASQUALE, JUDY; MELTON, R. NEAL
To: CIRCADENCE CORPORATION
Reel/Frame 037247/0137 →
SECURITY INTEREST Recorded Feb 10, 2015
From: CIRCADENCE CORPORATION
To: VAN VLISSINGEN PROFIT SHARING TRUST; JTWRS, CHARLES AND SARAH LAMPHERE; C&S LAMPHERE INVESTMENTS, LLC; CRAIG ASHER REVOCABLE TRUST; CAROL W. ASHER REVOCABLE TRUST; DAVID L. ASHER REVOCABLE TRUST; DONALD L. ASHER REVOCABLE TRUST; GABRIEL ASHER 2011 SUSMAN TRUST; HENRY ASHER 2011 SUSMAN TRUST; HOPE E. KALINSKI REVOCABLE TRUST; SARAH ASHER 2011 SUSMAN TRUST; WILLIAM ASHER 2011 SUSMAN TRUST; SHOFFNER, JOHN; AUGUSTINE FUND, LP; SILVERLEAF CONSULTING, LLC; MATARAZZO, DR. JOSEPH, DR.; HARLAN, JOHN; SAINTS CAPITAL IV, LP; HART, STEPHEN; PASQUALE, JUDY; MELTON, R. NEAL
Reel/Frame 034927/0043 →
SECURITY AGREEMENT Recorded May 10, 2012
From: CIRCADENCE CORPORATION
To: DLWS PARTNERSHIP; AUGUSTINE FUND, LP; CAROL W. ASHER REVOCABLE TRUST; CHARLES AND SARAH LAMPHERE, JTWRS; CRAIG ASHER REVOCABLE TRUST; DONALD L. ASHER REVOCABLE TRUST; GABRIEL ASHER 2011 SUSMAN TRUST; HENRY ASHER 2011 SUSMAN TRUST; HOPE E. ASHER REVOCABLE TRUST; MATARAZZO, JOSEPH; NANETTE O. LAMPHERE TRUST; ROBERT G. LAMPHERE TRUST DTD 5/13/93; SARAH ASHER 2011 SUSMAN TRUST; SHOFFNER, JOHN; WILLIAM ASHER 2011 SUSMAN TRUST; VAN VLISSINGEN PROFIT SHARING TRUST; DAVID L. ASHER REVOCABLE TRUST
Reel/Frame 028192/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2009
From: IPTIVIA, INC.
To: CIRCADENCE CORPORATION
Reel/Frame 022878/0484 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2006
From: IPSUM NETWORKS, INC.
To: IPTIVIA, INC.
Reel/Frame 017379/0158 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2002
From: GUERIN, ROCH; RAJAN, RAJENDRAN
To: IPSUM NETWORKS, INC.
Reel/Frame 013494/0402 →
Continuity (2)
Continuation In Part 0999742000 · Nov 29, 2001
Related Publication 20030072270A1 · Apr 17, 2003