IP Library Granted Patent US 10,567,271
Granted Patent B2
US 10,567,271 · App. 14/256,040 · Granted Feb 18, 2020

Topology-aware packet forwarding in a communication network

Inventor: Jeroen van Bemmel (Calgary, CA)
Assignee: Nokia Canada Inc.
H04L45/14H04L45/66H04L61/2503H04L61/6004H04W40/20H04L61/2038H04L61/609H04L61/6022H04L61/6068
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 10,567,271
App. No.
14/256,040
Granted
Feb 18, 2020
Kind
B2
Abstract

A method includes forwarding one or more packets from a first addressable computing element to at least a second addressable computing element based on a topology-aware address assigned to the second addressable computing element. The topology-aware address includes a set of identifiers representing one or more topology attributes associated with the second addressable computing element.

Claims (48)

1. A method comprising,

forwarding one or more packets from a first addressable computing element to at least a second addressable computing element based on a topology-aware address assigned to the second addressable computing element;

wherein the topology-aware address comprises a set of identifiers representing one or more topology attributes associated with the second addressable computing element;

wherein the first addressable computing element comprises a first virtual machine and the second addressable computing element comprises a second virtual machine;

wherein the topology-aware address comprises at least one indication used to control a number of different destination virtual machines having one or more specified physical topology attributes that the one or more packets are forwarded to, the number of different destination virtual machines being greater than one;

wherein the one or more specified physical topology attributes are defined relative to corresponding specified physical topology attributes of a locality of the first addressable computing element; and

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

2. The method of claim 1 , wherein the one or more packets from the first addressable computing element are also forwarded to one or more other addressable computing elements having at least one physical topology attribute in common with the second addressable computing element.

3. The method of claim 1 , wherein the set of identifiers representing the one or more physical topology attributes comprise one or more of a data center location identifier, a rack identifier, a server identifier, a socket identifier, a core identifier, and a hyper-thread identifier.

4. The method of claim 1 , further comprising applying a filter to the one or more packets to determine whether or not a match exists for the topology-aware address.

5. The method of claim 4 , wherein the filter determines whether or not a match exists in a decreasing order of locality for a hierarchy of different physical topology attributes.

6. The method of claim 4 , wherein the filter is applied by the second addressable computing element.

7. The method of claim 4 , wherein the filter is applied by a switch in the network.

8. The method of claim 4 , wherein the filter is applied by a virtual routing and switching module in the network.

9. The method of claim 8 , wherein the virtual routing and switching module replaces a topology-aware destination address with the address of a target server.

10. The method of claim 1 , wherein the topology-aware address comprises a topology-aware Media Access Control (MAC) address.

11. The method of claim 1 , wherein the topology-aware address comprises a topology-aware Internet Protocol (IP) address.

12. The method of claim 1 , wherein the topology-aware address comprises at least one bit that is configured to restrict forwarding of the one or more packets to at most n different destination addressable computing elements having a different given physical topology attribute relative to a corresponding physical topology attribute of the first addressable computing element, where n is greater than one.

13. The method of claim 1 , wherein the topology-aware address comprises at least one bit that is configured to ensure delivery of the one or more packets to at least one addressable computing element having a given specified physical topology attribute and to prevent delivery of the one or more packets to addressable computing elements not having the given specified physical topology attribute.

14. The method of claim 1 , wherein the first virtual machine is in a different data center location than the second virtual machine.

15. The method of claim 1 , wherein the first virtual machine is resident on the same server as the second virtual machine.

16. A non-transitory processor-readable storage medium having embodied therein executable program code that when executed performs the method of claim 1 .

17. An apparatus comprising:

a memory; and

a processor operatively coupled to the memory and configured to forward one or more packets from a first addressable computing element to at least a second addressable computing element based on a topology-aware address assigned to the second addressable computing element;

wherein the topology-aware address comprises a set of identifiers representing one or more topology attributes associated with the second addressable computing element;

wherein the first addressable computing element comprises a first virtual machine and the second addressable computing element comprises a second virtual machine; and

wherein the topology-aware address comprises at least one indication used to control a number of different destination virtual machines having one or more specified physical topology attributes that the one or more packets are forwarded to, the number of different destination virtual machines being greater than one; and

wherein the one or more specified physical topology attributes are defined relative to corresponding specified physical topology attributes of a locality of the first addressable computing element.

18. The apparatus of claim 17 , wherein the one or more packets from the first addressable computing element are also forwarded to one or more other addressable computing elements having at least one physical topology attribute in common with the second addressable computing element.

19. The apparatus of claim 17 , wherein the set of identifiers representing the one or more physical topology attributes comprise one or more of a data center location identifier, a rack identifier, a server identifier, a socket identifier, a core identifier, and a hyper-thread identifier.

20. A method comprising:

generating an instruction from an application program to instantiate an addressable computing element at a designated topological location in a computing system; and

providing the instruction to the computing system to instantiate the addressable computing element at the designated topological location;

wherein the application program is implemented using a first virtual machine;

wherein the addressable computing element comprises a second virtual machine; and

wherein the designated topological location comprises a location having one or more specified physical topology attributes defined relative to corresponding physical topology attributes of a locality of the first virtual machine; and

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

21. The method of claim 20 , wherein the instruction identifies a specific topological location in the computing system at which to instantiate the addressable computing element.

22. The method of claim 20 , wherein the instruction comprises a structured Media Access Control (MAC) address which serves as a parameter to an application programming interface call to start one or more virtual machine (VM) instances at the designated topological locations.

23. A network comprising:

a plurality of virtual machines; and

physical infrastructure upon which the plurality of virtual machines are instantiated;

wherein one or more packets are forwarded from a first virtual machine to at least a second virtual machine based on a topology-aware address assigned to the second virtual machine;

wherein the topology-aware address comprises a set of identifiers representing one or more specified physical topology attributes associated with the second virtual machine;

wherein the topology-aware address comprises at least one indication used to control a number of different destination virtual machines having one or more specified topology attributes that the one or more packets are forwarded to, the number of different destination virtual machines being greater than one; and

wherein the one or more specified physical topology attributes are defined relative to corresponding specified physical topology attributes of a locality of the first addressable computing element.

24. The network of claim 23 , wherein the set of identifiers representing the one or more physical topology attributes comprise one or more of a data center location identifier, a rack identifier, a server identifier, a socket identifier, a core identifier, and a hyper-thread identifier.

Assignments (4)
CERTIFICATE OF AMALGAMATION Recorded Dec 13, 2019
From: ALCATEL-LUCENT CANADA INC.; NOKIA SOLUTIONS AND NETWORKS CANADA INC.; NOKIA SOLUTIONS ET RESEAUX CANADA INC.
To: NOKIA CANADA INC.
Reel/Frame 051284/0913 →
RELEASE OF SECURITY INTEREST Recorded Aug 28, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT CANADA INC.
Reel/Frame 033655/0425 →
SECURITY INTEREST Recorded Aug 7, 2014
From: ALCATEL-LUCENT CANADA INC.
To: CREDIT SUISSE AG
Reel/Frame 033500/0326 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2014
From: VAN BEMMEL, JEROEN
To: ALCATEL-LUCENT CANADA INC.
Reel/Frame 032705/0925 →
Continuity (1)
Related Publication 20150304208A1 · Oct 22, 2015