IP Library Granted Patent US 9,832,105
Granted Patent B2
US 9,832,105 · App. 14/694,869 · Granted Nov 28, 2017

Method and apparatus for identifying different routing paths between networks

Inventors: Al Burgio (Morgan Hill, CA); Joseph B. Gillman (Phoenix, AZ); William B. Norton (Palo Alto, CA); Thomas Brian Madej (Hamilton, CA)
Assignee: CONSOLE CONNECT INC.
H04L45/22H04L45/08
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,832,105
App. No.
14/694,869
Granted
Nov 28, 2017
Kind
B2
Abstract

A method and apparatus for analyzing IP data flows for the determination of an alternate routing path for network traffic between a known first network and a destination within an unknown second network on the Internet. An initial path between the first network and the destination exists. The IP address of the destination is determined and looked up in an Internet database. An alternative route to the destination is determined based on information from the Internet database in order to avoid an interconnecting transit network.

Claims (42)

1. A computer-implemented method for identifying alternate routing paths for network traffic between a known first network and a destination within an unknown second network on the Internet, the method comprising:

collecting, by a processor of a computer, network traffic data from one or more network devices by way of at least one of a network tap and a port mirror;

determining, by the processor, an initial routing path from the network traffic data, the initial routing path between the first network and the destination within the unknown second network crosses at least one interconnecting transit network;

the method further comprising:

a. obtaining, at the processor, destination IP address information for the destination within the unknown second network from the network traffic data;

b. the processor linking the network traffic data to a third-party Internet database to determine an identity of the second network; and

c. the processor using the identity of the second network to identify a second routing path comprising a peer connection between the first network and the second network wherein the peer connection and the second routing path differs from the initial routing path and bypasses the at least one interconnecting transit network.

2. The method of claim 1 , wherein the peer connection is across a distributed Internet exchange platform (DIXP).

3. The method of claim 1 , wherein the peer connection is across an Internet exchange point (IXP).

4. The method of claim 1 , wherein the peer connection is a direct connection.

5. The method of claim 1 , further comprising:

obtaining, at the processor, source IP address information; and

using the source IP address information to identify the peer connection.

6. The method of claim 1 , further comprising the processor using a network map of interconnections among networks on the Internet to identify the second routing path comprising the peer connection.

7. The method of claim 1 , further comprising:

establishing the peer connection between the first network and the second network.

8. The method of claim 1 , further comprising:

obtaining flow data representing traffic flow patterns between the first network and the second network across at least one interconnecting transit network; and

extracting the destination IP address information from the flow data.

9. A system for identifying different routing paths for autonomous networks, comprising:

a. physical infrastructure operable to provide a peer connection between a first autonomous network (AN) and a second AN over a routing path that differs from an initial routing path between the first AN and the second AN, the initial path traversing at least one interconnecting transit network:

b. at least one database operable to maintain destination internet protocol (IP) addresses correlated to a set of ANs and routing information for the set of ANs;

c. a processing module communicatively coupled to the at least one database, having a processor, memory unit, and executable code and operable to:

i. receive and aggregate network traffic data from one or more network devices;

ii. link the network traffic to the at least one database;

iii. receive a destination IP address for network traffic;

iv. compare the destination IP address to information in the at least one database to determine an identity of the second AN; and

v. determine the peer connection and routing path to the second AN based on the identity of the second AN and the routing information.

10. The system of claim 9 wherein the processing module further comprises an Artificial Intelligence (AI) module communicatively coupled to the collection module and a database of the at least one database, the AI module operable to:

a. receive flow data from the collection module;

b. generate the routing information for the set of ANs by applying an AI algorithm to the flow data;

c. provision the routing information to the database.

11. The system of claim 10 further programmed to rank peer connections in the routing information, with information from at least one of the flow data and the database, the route information with respect to at least one metric comprising at least one of geographical proximity, traffic volumes, latency and jitter.

12. The system of claim 11 wherein the database further comprises at least one of a Internet registry database, an IP address to geographical information database, and an IXP membership database.

13. The system of claim 9 further comprising a suggestion module further operable to provide at least one of a report for manual review and a signal to other application.

14. The system of claim 9 wherein the physical infrastructure comprises a distributed Internet exchange platform (DIXP).

15. The system of claim 9 wherein the physical infrastructure comprises an Internet exchange point (IXP).

16. The system of claim 9 further programmed to receive the routing path from the processing module and to establish the peer connection implementing the routing path between the first AN and the second AN via the physical infrastructure.

17. The system of claim 9 , further comprising a collection module having a network interface card (NIC) and executable code operable to capture flow data and extract the destination IP address for network traffic described by the flow data.

18. The system of claim 17 wherein the collection module may be further operable to capture flow data by at least one of a flow protocol and raw traffic data from at least one of a network tap and a port mirror.

19. The system of claim 18 further comprising a network device operable to implement a flow protocol to sample traffic data delivered by the network device, to generate flow data, and to provide the flow data to the collection module.

20. The system of claim 17 wherein the collection module further comprises an application programming interface (API), the API configured to enable flow data to be uploaded to the collection module from a user of the system.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 044157 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 21, 2017
From: CONSOLE CONNECT INC.
To: HONG KONG TELECOMMUNICATIONS (HKT) LIMITED
Reel/Frame 044568/0687 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 16, 2017
From: CONSOLE CONNECT INC.
To: HONG KONG TELECOMMUNICATIONS (HKT) LIMITED
Reel/Frame 044157/0001 →
SECURITY INTEREST Recorded Mar 1, 2017
From: CONSOLE CONNECT INC.
To: TRIPLEPOINT CAPITAL LLC
Reel/Frame 041422/0272 →
CHANGE OF NAME Recorded Jun 9, 2016
From: IIX, INC.
To: CONSOLE CONNECT INC.
Reel/Frame 038948/0827 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2016
From: BURGIO, AL; GILLMAN, JOSEPH B.; NORTON, WILLIAM B.; MADEJ, THOMAS BRIAN
To: IIX, INC.
Reel/Frame 037718/0915 →
Continuity (2)
Provisional Application 62007565 · Jun 4, 2014
Related Publication 20150358228A1 · Dec 10, 2015