IP Library Granted Patent US 9,967,191
Granted Patent B2
US 9,967,191 · App. 13/950,452 · Granted May 8, 2018

Receiver-signaled entropy labels for traffic forwarding in a computer network

Inventors: Dan Frost (Middlesex, GB); Stewart Frederick Bryant (Surrey, GB)
Assignee: Cisco Technology, Inc.
H04L47/125H04L45/50
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,967,191
App. No.
13/950,452
Granted
May 8, 2018
Kind
B2
Abstract

In one embodiment, a receiver device determines that it accepts flow entropy, and accordingly determines a set of entropy labels the receiver device is accepting. After transmitting the set of entropy labels from the receiver device to one or more sender devices, the receiver device may then receive packets from the one or more sender devices with selected particular entropy labels from the set of entropy labels. In another embodiment, a sender device receives from a receiver device a set of entropy labels the receiver device is accepting. As such, when determining a packet to forward to the receiver device with flow entropy, the sender device may select a particular entropy label from the set of entropy labels for that receiver device, and transmits the packet device to the receiver device with the selected particular entropy label.

Claims (52)

1. A method, comprising:

receiving, at a sender device from a receiver device, an advertisement, the advertisement including a set of entropy labels the receiver device is willing to process, wherein the sender device is an edge device in a core network and the set of entropy labels is sent to each edge router in the core network and the receiver device is an edge device in the core network, wherein the set of entropy labels are a set of random labels that facilitate load balancing in the core network by allowing the sender device to tag different flows with different entropy label values of the set of entropy label values, resulting in different label stacks for different flows;

receiving, at the sender device, a packet from a device in a local network to be forwarded to the receiver device with flow entropy;

in response to receiving the packet, selecting, by the sender device, a particular entropy label from the set of entropy labels in the advertisement for that receiver device to be inserted into the packet during forwarding, wherein the particular entropy label is one of the entropy labels that receiver is willing to process; and

transmitting the packet from the sender device to the receiver device with the selected particular entropy label.

2. The method as in claim 1 , wherein receiving the set of entropy labels comprises:

receiving the set of entropy labels via a routing protocol.

3. The method as in claim 1 , wherein receiving the set of entropy labels comprises:

receiving the set of entropy labels via configuration.

4. The method as in claim 1 , wherein the sender device and receiver device are ingress and egress provider edge (PE) devices, respectively.

5. The method as in claim 1 , wherein transmitting comprises:

forwarding the packet according to Multi-Protocol Label Switching (MPLS).

6. The method as in claim 1 , wherein the entropy label in the transmitted packet is an entry within a label stack.

7. A method, comprising:

determining, at a receiver device, that the receiver device accepts flow entropy;

determining, at the receiver device, a set of entropy labels the receiver device is willing to process;

transmitting an advertisement from the receiver device to one or more sender devices, the advertisement including the set of entropy labels the receiver device is willing to process, wherein the one or more sender devices are edge devices in a core network and the set of entropy labels are transmitted to each edge device in the core network, and the receiver device is an edge device in the core network, wherein the set of entropy labels are a set of random labels that facilitate load balancing in the core network by allowing the one or more sender devices to tag different flows with different entropy label values of the set of entropy label values, resulting in different label stacks for different flows; and

receiving, at the receiver device, packets from the one or more sender devices with selected particular entropy labels that are selected from the set of entropy labels included in the advertisement, wherein the packets are packets received at the sender devices from one or more devices in a local network.

8. The method as in claim 7 , wherein the set of entropy labels are specific per sender device.

9. The method as in claim 7 , wherein transmitting the set of entropy labels comprises:

advertising the set of entropy labels via a routing protocol.

10. The method as in claim 7 , wherein the transmitting the set of entropy labels comprises:

communicating the set of entropy labels within an operations, administration, and management (OAM) flow.

11. The method as in claim 7 , wherein the one or more sender devices and receiver device are ingress and egress provider edge (PE) devices, respectively.

12. The method as in claim 7 , wherein receiving comprises:

receiving the packets according to Multi-Protocol Label Switching (MPLS).

13. The method as in claim 7 , wherein the entropy label in the received packets is an entry within a label stack.

14. An apparatus, comprising:

one or more network interfaces to communicate with a 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:

receive, as a sender device from a receiver device, an advertisement, the advertisement including a set of entropy labels the receiver device is willing to process, wherein the sender device is an edge device in a core network and the set of entropy labels is sent to each edge router in the core network and the receiver device is an edge device in the core network, wherein the set of entropy labels are a set of random labels that facilitate load balancing in the core network by allowing the sender device to tag different flows with different entropy label values of the set of entropy label values, resulting in different label stacks for different flows;

receive a packet from a device in a local network to be forwarded to the receiver device with flow entropy;

in response to receiving the packet, select a particular entropy label from the set of entropy labels in the advertisement for that receiver device to be inserted into the packet during forwarding, wherein the particular entropy label is one of the entropy labels that receiver is willing to process; and

transmit the packet to the receiver device with the selected particular entropy label.

15. The apparatus as in claim 14 , wherein the process when executed to receive the set of entropy labels is further operable to:

receive the set of entropy labels via a routing protocol.

16. The apparatus as in claim 14 , wherein the process when executed to transmit is further operable to:

forward the packet according to Multi-Protocol Label Switching (MPLS).

17. An apparatus, comprising:

one or more network interfaces to communicate with a 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, as a receiver device, that the receiver device accepts flow entropy;

determine a set of entropy labels the receiver device is willing to process;

transmit an advertisement from the receiver device to one or more sender devices, the advertisement including the set of entropy labels the receiver device is willing to process, wherein the one or more sender devices are edge devices in the computer network and the set of entropy labels are transmitted to each edge device in the computer network, and the receiver device is an edge device in the core network, wherein the set of entropy labels are a set of random labels that facilitate load balancing in the core network by allowing the one or more sender devices to tag different flows with different entropy label values of the set of entropy label values, resulting in different label stacks for different flows; and

receive packets from the one or more sender devices with selected particular entropy labels that are selected from the set of entropy labels included in the advertisement, wherein the packets are packets received at the sender devices from one or more devices in a local network.

18. The apparatus as in claim 17 , wherein the set of entropy labels are specific per sender device.

19. The apparatus as in claim 17 , wherein the process when executed to transmit the set of entropy labels is further operable to:

advertise the set of entropy labels via a routing protocol.

20. The apparatus as in claim 17 , wherein the process when executed to receive is further operable to:

receive the packet according to Multi-Protocol Label Switching (MPLS).

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 25, 2013
From: FROST, DAN; BRYANT, STEWART FREDERICK
To: CISCO TECHNOLOGY, INC.
Reel/Frame 030874/0704 →
Continuity (1)
Related Publication 20150029849A1 · Jan 29, 2015