IP Library Granted Patent US 6,977,931
Granted Patent B1
US 6,977,931 · App. 09/688,582 · Granted Dec 20, 2005

Routing data

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 6,977,931
App. No.
09/688,582
Granted
Dec 20, 2005
Kind
B1
Abstract

A method is provided that comprises storing a first data structure containing costs associated with transmitting data between routers in a network. The method includes combining the first data structure with itself to determine a cost of transmitting the data. The method further comprises transmitting the data along a route based on the calculated cost.

Claims (58)

1. A method, comprising:

storing a first data structure containing costs associated with transmitting data between routers in a network;

combining the first data structure with itself to determine a cost of transmitting the data;

transmitting the data along a route based on the calculated cost; and

storing a second data structure defining router connections in the network,

wherein storing the second data structure comprises storing a matrix defining router connections,

wherein storing the first data structure comprises storing a matrix, wherein the costs are based on at least one of a distance, reliability, security, or expense of transmitting the data between routers in the network,

wherein combining the first data structure with itself calculates the cost of transmitting the data between a source router and destination router in the network for a given number of steps at minimal cost,

wherein the transmitting the data along the route further comprises determining the route between the source router and the destination router based on the cost matrix and the connection matrix.

2. The method of claim 1 , further including determining the second data structure.

3. The method of claim 1 , wherein transmitting the data comprises transmitting an IP data packet.

4. The method of claim 1 , further including determining the first data structure.

5. The method of claim 1 , wherein combining the first data structure with itself produces a resultant data structure that contains elements each representing a distance between a corresponding pair of routers in one hop, the method further comprising:

combining the resultant data structure with the first data structure to produce a second resultant data structure that contains elements each representing a distance between a corresponding pair of routers in two or fewer hops.

6. The method of claim 5 , further comprising:

combining the second resultant data structure with the first data structure to produce a third resultant data structure that contains elements each representing a distance between a corresponding pair of routers in three or fewer hops.

7. An apparatus, comprising:

an interface adapted to receive a data packet;

at least one storage device to store:

a first data structure defining router connections in a network; and

a second data structure that defines a cost associated with links between routers in the network; and

a controller adapted to:

combine the second data structure with itself at least once to determine a cost for transmitting the data packet; and

determine a route based on the first data structure and the determined cost for transmitting the data packet.

8. The apparatus of claim 7 , wherein the first data structure comprises a first matrix that defines the router connections in the network wherein the router connections comprise adjacent router connections.

9. The apparatus of claim 8 , wherein the second data structure comprises a second matrix that defines the cost associated with each link between adjacent routers as exponents.

10. The apparatus of claim 9 , wherein the cost of each link between a router and itself is defined as zero and the cost for each link from a router to a non-adjacent router is defined as infinity.

11. The apparatus of claim 10 , wherein the controller is adapted to combine the second matrix using the formula min 1 to k (D ik *D kj ), wherein k is the number of the routers and the second matrix is represented by D that has i rows and j columns.

12. The apparatus of claim 9 , wherein the costs are based on at least one of a distance, reliability, security, or expense of transmitting the data packet between the adjacent routers in the network.

13. The apparatus of claim 9 , wherein the controller is further adapted to combine the second matrix with itself a plurality of times until the cost of transmitting the data packet between a source router and destination router is minimum for a given number of steps.

14. The apparatus of claim 7 , wherein the controller is adapted to determine a direct connection between each link of the route based on the first data structure.

15. The apparatus of claim 7 , wherein the controller is further adapted to transmit the data packet along the route.

16. The apparatus of claim 7 , wherein the data packet is an IP data packet.

17. The apparatus of claim 7 , wherein the controller is adapted to produce, based on combining the second data structure with itself, a resultant data structure D 1 containing elements each representing a distance between a corresponding pair of routers in one hop, the controller adapted to further produce resultant data structures D m , where m is two and greater, based on combining the resultant data structure D m-1 with the second data structure, where D m contains elements that represent distances between corresponding pairs of routers in m or fewer hops.

18. The apparatus of claim 17 , wherein the controller is adapted to iteratively increment m until the controller has identified a resultant data structure D m that contains elements that represent minimum distances between corresponding pairs of routers.

19. An article comprising at least one machine-readable storage medium containing instructions for routing a data packet, the instructions when executed causing a controller to:

represent node connections in a network in a first matrix;

represent costs of transmitting the data packet among a plurality of nodes in a second matrix, the second matrix containing elements expressed as exponents each representing distances between corresponding pairs of nodes; and

determine a route to transmit the data packet based on the first matrix and the second matrix.

20. The article of claim 19 , wherein the instructions when executed cause the controller to transmit the data packet over the route.

21. The article of claim 19 , wherein the instructions when executed cause the controller to represent adjacent node connections in the first matrix.

22. The article of claim 19 , wherein the instructions when executed cause the controller to represent a cost between each node and itself as zero and each node to a non-adjacent node as infinity.

23. The article of claim 19 , wherein the instructions when executed cause the controller to represent the costs including at least one of a distance, reliability, security, or expense of transmitting the data packet between each of the plurality of nodes.

24. The article of claim 19 , wherein the instructions when executed cause the controller to combine the second matrix with itself a plurality of times until the costs of transmitting the data packet between a source node and destination node are minimum for a given number of steps.

25. The article of claim 19 , wherein the instructions when executed cause the controller to determine the route to transmit an IP data packet.

26. The article of claim 19 , wherein the instructions when executed cause the controller to:

combine the second matrix with itself to produce a first resultant matrix D 1 that contains elements representing distances between corresponding pairs of routers in one hop; and

produce additional resultant matrices D m , m being two and greater, by combining the resultant matrix D m-1 with the second matrix, each resultant matrix D m containing elements representing distances between corresponding pairs of routers in m or fewer hops.

27. An article comprising at least one machine-readable storage medium containing instructions for routing a data packet, the instructions when executed causing a controller to:

represent node connections in a network in a first matrix;

represent costs of transmitting the data packet among a plurality of nodes in a second matrix;

determine a route to transmit the data packet based on the first matrix and the second matrix; and

combine the second matrix using the formula min 1 to k (D ik *D kj ), wherein k is the number of the routers and the second matrix is represented by D that has i rows and j columns.

28. A data signal embodied in a carrier wave comprising instructions for routing a data packet to at least one of a plurality of network entities, the instructions when executed causing a controller to:

store a connection matrix indicating adjacent nodes in a network;

store a cost matrix expressing transmission costs as exponents; and

determine a route for transmitting the data packet based on the connection and cost matrices from a first node to a second node.

29. The data signal of claim 28 , wherein the instructions when executed cause the controller to transmit the packet data over the route.

Assignments (14)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063690/0359 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 48612/0598) Recorded May 18, 2023
From: GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT
To: AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC. (FORMER NAME OF AVAYA CLOUD INC.); HYPERQUALITY, INC.; HYPERQUALITY II, LLC; CAAS TECHNOLOGIES, LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 063691/0294 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063705/0023 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 4, 2023
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 063542/0662 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 3, 2023
From: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; KNOAHSOFT INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB [COLLATERAL AGENT]
Reel/Frame 063742/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 48612/FRAME 0582 Recorded Apr 26, 2023
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: AVAYA HOLDINGS CORP.; AVAYA INC.; AVAYA MANAGEMENT L.P.
Reel/Frame 063456/0428 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 57700/FRAME 0935 Recorded Apr 26, 2023
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: AVAYA HOLDINGS CORP.; AVAYA INC.; AVAYA MANAGEMENT L.P.
Reel/Frame 063458/0303 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 5, 2022
From: AVAYA INC.; INTELLISIST, INC.; AVAYA MANAGEMENT L.P.; AVAYA CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 061087/0386 →
SECURITY INTEREST Recorded Oct 4, 2021
From: AVAYA MANAGEMENT LP
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 057700/0935 →
SECURITY INTEREST Recorded Sep 25, 2020
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 053955/0436 →
SECURITY INTEREST Recorded Mar 15, 2019
From: AVAYA MANAGEMENT L.P.
To: CITIBANK, N.A.
Reel/Frame 048612/0582 →
SECURITY INTEREST Recorded Mar 15, 2019
From: AVAYA MANAGEMENT L.P.
To: GOLDMAN SACHS BANK USA
Reel/Frame 048612/0598 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 12, 2019
From: AVAYA HOLDINGS LIMITED
To: AVAYA MANAGEMENT L.P.
Reel/Frame 048577/0492 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2010
From: NORTEL NETWORKS LIMITED
To: AVAYA HOLDINGS LIMITED
Reel/Frame 023998/0799 →