# US 2013/0159548 A1 · Assisted traffic engineering for minimalistic connected object networks

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2013/0159548 A1
- Document ID: US20130159548A1
- Status: Published application
- Kind: A1
- Application number: 13/331,534
- Filed: 2011-12-20
- Published: 2013-06-20
- Earliest claimed: 2011-12-20
- Assignees: Cisco Technology, Inc.
- Inventors: Jean-Philippe Vasseur; Jonathan W. Hui
- Web page: https://patentgrep.com/patent/US20130159548A1

## CPC

- H04L 45/125: based on throughput or bandwidth
- H04L 45/02: Topology update or discovery
- H04L 45/03: by updating link state protocols
- H04L 47/125: by balancing the load, e.g. traffic engineering
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In one embodiment, a distributed intelligence agent (DIA), hosted on a border router that provides access for a computer network to a global computer network, determines a routing topology of the computer network, and also computes a traffic matrix for the computer network based on source and destination addresses of traffic traversing the DIA, the traffic matrix providing an estimate for an amount of traffic on each link of the routing topology. Accordingly, the DIA may determine one or more portions of the routing topology for which traffic engineering (TE) should be applied based on a threshold for traffic loads on the links, and may notify one or more nodes in the computer network to change its respective current next-hop in the routing topology to an alternate next-hop based on a TE solution computed by the DIA.

## Claims

### Claim 1

A method, comprising:
determining a routing topology of a computer network by a distributed intelligence agent (DIA) hosted on a border router that provides access for the computer network to a global computer network;
computing a traffic matrix for the computer network based on source and destination addresses of traffic traversing the DIA, the traffic matrix providing an estimate for an amount of traffic on each link of the routing topology;
determining one or more portions of the routing topology for which traffic engineering (TE) should be applied based on a threshold for traffic loads on the links; and
notifying one or more nodes in the computer network to change its respective current next-hop in the routing topology to an alternate next-hop based on a TE solution computed by the DIA.

### Claim 2 (depends on 1)

The method as in claim 1, further comprising:
receiving a notification at the DIA regarding traffic within the computer network not traversing the DIA.

### Claim 3 (depends on 1)

The method as in claim 1, wherein the traffic matrix is computed based on one of either all of the traffic or a sample of all of the traffic.

### Claim 4 (depends on 1)

The method as in claim 1, wherein the traffic matrix is computed based on packet sizes within the traffic.

### Claim 5 (depends on 1)

The method as in claim 1, wherein the traffic matrix is computed based on classes of service of the traffic.

### Claim 6 (depends on 1)

The method as in claim 1, wherein the estimate for the amount of traffic is based on one of either a long-term average or a corresponding amount per specific time periods.

### Claim 7 (depends on 1)

The method as in claim 1, wherein the threshold for traffic loads is a percentage of available link bandwidth.

### Claim 8 (depends on 7)

The method as in claim 7, further comprising:
determining dynamically varied available link bandwidth for individual links in the computer network.

### Claim 9 (depends on 1)

The method as in claim 1, further comprising:
determining the one or more portions of the routing topology for which TE should be applied also based on one or more explicit congestion notifications received from the nodes in the computer network.

### Claim 10 (depends on 9)

The method as in claim 9, wherein the explicit congestion notifications comprise a compressed address that indicates the relative location of the corresponding congestion.

### Claim 11 (depends on 1)

The method as in claim 1, further comprising:
computing the TE solution by the DIA based on known backup next-hops for nodes in the computer network, wherein the notifying one or more nodes in the computer network to change its respective current next-hop in the routing topology to the alternate next-hop including a specified alternate next-hop for each corresponding node.

### Claim 12 (depends on 1)

The method as in claim 1, further comprising:
computing the TE solution by the DIA without known backup next-hops for nodes in the computer network, wherein the notifying one or more nodes in the computer network to change its respective current next-hop in the routing topology to the alternate next-hop including a directive for each node to locally select its corresponding alternate next-hop.

### Claim 13 (depends on 1)

The method as in claim 1, further comprising:
applying a low-pass filter to traffic loads when determining the one or more portions of the routing topology for which TE should be applied based on the threshold for traffic loads on the links.

### Claim 14 (depends on 1)

The method as in claim 1, further comprising:
determining the one or more portions of the routing topology for which TE should be applied also based on meeting one or more service level agreements (SLAs).

### Claim 15

An apparatus, comprising:
one or more network interfaces to communicate with and provide access between a computer network and a global computer network;
a processor coupled to the network interfaces and adapted to execute one or more processes; and
a memory configured to store a process executable by the processor, the process when executed operable to:
determine a routing topology of the computer network;
compute a traffic matrix for the computer network based on source and destination addresses of traffic traversing the apparatus, the traffic matrix providing an estimate for an amount of traffic on each link of the routing topology;
determine one or more portions of the routing topology for which traffic engineering (TE) should be applied based on a threshold for traffic loads on the links;
compute a TE solution; and
notify one or more nodes in the computer network to change its respective current next-hop in the routing topology to an alternate next-hop based on the computed TE solution.

### Claim 16 (depends on 15)

The apparatus as in claim 15, wherein the process when executed is further operable to:
receive a notification regarding traffic within the computer network not traversing the apparatus.

### Claim 17 (depends on 15)

The apparatus as in claim 15, wherein the process when executed is further operable to compute the traffic matrix based on one of either all of the traffic or a sample of all of the traffic.

### Claim 18 (depends on 15)

The apparatus as in claim 15, wherein the process when executed is further operable to compute the traffic matrix based on at least one of either packet sizes within the traffic or classes of service of the traffic.

### Claim 19 (depends on 15)

The apparatus as in claim 15, wherein the estimate for the amount of traffic is based on one of either a long-term average or a corresponding amount per specific time periods.

### Claim 20 (depends on 15)

The apparatus as in claim 15, wherein the threshold for traffic loads is a percentage of available link bandwidth, and wherein the process when executed is further operable to determine dynamically varied available link bandwidth for individual links in the computer network.

### Claim 21 (depends on 15)

The apparatus as in claim 15, wherein the process when executed is further operable to:
determine the one or more portions of the routing topology for which TE should be applied also based on one or more explicit congestion notifications received from the nodes in the computer network, wherein the explicit congestion notifications comprise a compressed address that indicates the relative location of the corresponding congestion.

### Claim 22 (depends on 15)

The apparatus as in claim 15, wherein the process when executed is further operable to one of either:
compute the TE solution based on known backup next-hops for nodes in the computer network, wherein the notifying one or more nodes in the computer network to change its respective current next-hop in the routing topology to the alternate next-hop including a specified alternate next-hop for each corresponding node; or
compute the TE solution without known backup next-hops for nodes in the computer network, wherein the notifying one or more nodes in the computer network to change its respective current next-hop in the routing topology to the alternate next-hop including a directive for each node to locally select its corresponding alternate next-hop.

### Claim 23

A tangible, non-transitory, computer-readable media having software encoded thereon, the software, when executed by a processor on a distributed intelligence agent (DIA) hosted on a border router that provides access for a computer network to a global computer network, operable to:
determine a routing topology of the computer network;
compute a traffic matrix for the computer network based on source and destination addresses of traffic traversing the DIA, the traffic matrix providing an estimate for an amount of traffic on each link of the routing topology;
determine one or more portions of the routing topology for which traffic engineering (TE) should be applied based on a threshold for traffic loads on the links;
compute a TE solution; and
notify one or more nodes in the computer network to change its respective current next-hop in the routing topology to an alternate next-hop based on the computed TE solution.

### Claim 24 (depends on 23)

The computer-readable media as in claim 23, wherein the software when executed is further operable to:
receive a notification regarding traffic within the computer network not traversing the DIA.
