IP Library › Granted Patent US 11,516,124
Granted Patent B2
US 11,516,124 · App. 17/214,163 · Granted Nov 29, 2022

Leveraging multicast listener discovery for discovering hosts

Inventors: Pascal Thubert (Roquefort les Pins, FR); Eric Levy-Abegnoli (Valbonne, FR); Patrick Wetterwald (Mouans Sartoux, FR)
Assignee: Cisco Technology, Inc.
H04L45/566H04L12/4641H04L45/02H04L45/72H04L49/201
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 11,516,124
App. No.
17/214,163
Granted
Nov 29, 2022
Kind
B2
Abstract

Techniques for leveraging MLD capabilities at edge nodes of network fabrics to receive SNMAs from silent hosts, and creating unicast addresses from the SNMAs for the silent nodes that are used as secondary matches in a network overlay if primary unicast address lookups fail. The edge nodes described herein may act as snoopers of MLD reports in order to identify the SNMAs of the silent hosts. The edge nodes then forge unicast addresses for the silent hosts that match with the least three bytes of the SNMAs. The forged unicast addresses are presented as unicast MAC/IP mappings in the fabric overlay. In situations where a primary IP address lookup fails, the look-up device performs a secondary lookup for a mapped address that has the last three bytes of the IP address. If a mapping is found, the lookup is sent as a unicast message to the matching MAC address.

Claims (81)

1. A method comprising:

sending, from a first edge node of a first network fabric, a Multicast Listener Discovery (MLD) query message to a host node in the first network fabric;

receiving, at the first edge node, an MLD report message indicating an Internet Protocol (IP) multicast address associated with the host node, wherein the IP multicast address has a matching address portion with an IP unicast address of the host node;

determining, at the first edge node and using the matching address portion, that the IP unicast address for the host node is not in a routing table associated with the first edge node;

based at least in part on the IP unicast address not being in the routing table, generating a forged IP unicast address for the host node, wherein the forged IP unicast address at least partly corresponds to the IP multicast address; and

sending the forged IP unicast address to at least one of a second edge node in a second network fabric or a mapping system associated with the first network fabric and the second network fabric such that the forged IP unicast address is used for communicating with the host node until the IP unicast address for the host node is determined.

2. The method of claim 1 , wherein at least three least-significant bytes of the forged IP unicast address correspond to at least three least-significant bytes of the IP multicast address.

3. The method of claim 1 , further comprising:

updating the routing table at the first edge node to indicate the IP multicast address for the host node;

receiving a packet from the host node, wherein the packet indicates the IP unicast address of the host node in a header of the packet; and

updating the routing table at the first edge node to indicate the IP unicast address of the host node.

4. The method of claim 1 , further comprising:

receiving, at the first edge node, a packet from the second edge node in the second network fabric;

identifying a destination address for the packet;

determining that the destination address does not have an entry in the routing table;

determining that the destination address at least partly corresponds to the forged IP unicast address; and

sending the packet to the host node.

5. The method of claim 1 , further comprising:

determining, at the first edge node, that the routing table does not include any entries that corresponds to the forged IP unicast address,

wherein generating the forged IP unicast address is performed responsive to determining that the routing table does not include any entries.

6. The method of claim 1 , further comprising:

receiving, at the mapping system, the forged IP unicast address from the first edge node;

updating, at the mapping system, a global mapping database indicating a route from the first edge node to the host node associated with the forged IP unicast address;

receiving, at the mapping system, a look-up message from the second edge node, the look-up message including a request for a route to send a data packets to the IP unicast address of the host node;

determining, using the global mapping database, that the forged IP unicast address at least partly corresponds to the IP unicast address; and

causing the data packets to be sent to the first edge node based at least in part on the first edge node servicing the host node.

7. The method of claim 1 , wherein the mapping system includes at least one of:

a Locator/ID Separation Protocol (LISP) Map-Server/Map Resolver (MSMR) server; or

an ethernet Virtual Private Network (eVPN) control-plane server.

8. A first edge node in a first network fabric, the first edge node comprising:

one or more processors; and

one or more non-transitory computer-readable media storing computer-executable instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

sending a Multicast Listener Discovery (MLD) query message to a host node in the first network fabric;

receiving, at the first edge node, an MLD report message indicating an Internet Protocol (IP) multicast address associated with the host node, wherein the IP multicast address has a matching address portion with an IP unicast address of the host node;

determining, at the first edge node and using the matching address portion, that the IP unicast address for the host node is not in a routing table associated with the first edge node;

based at least in part on the IP unicast address not being in the routing table, generating a forged IP unicast address for the host node, wherein the forged IP unicast address at least partly corresponds to the IP multicast address; and

sending the forged IP unicast address to at least one of a second edge node in a second network fabric or a mapping system associated with the first network fabric and the second network fabric such that the forged IP unicast address is used for communicating with the host node until the IP unicast address for the host node is determined.

9. The first edge node of claim 8 , wherein at least three least-significant bytes of the forged IP unicast address correspond to at least three least-significant bytes of the IP multicast address.

10. The first edge node of claim 8 , the operations further comprising:

updating the routing table to indicate the IP multicast address for the host node;

receiving a packet from the host node, wherein the packet indicates the IP unicast address of the host node in a header of the packet; and

at least one of updating the routing table to indicate the IP unicast address of the host node or sending an indication of the IP unicast address to the mapping system.

11. The first edge node of claim 8 , the operations further comprising:

receiving a packet from the second edge node in the second network fabric;

identifying a destination address for the packet;

determining that the destination address does not have an entry in the routing table;

determining that the destination address at least partly corresponds to the forged IP unicast address; and

sending the packet to the host node.

12. The first edge node of claim 8 , wherein the first edge node comprises one of a router or a switch.

13. The first edge node of claim 8 , the operations further comprising:

determining, that the routing table does not include any entries that corresponds to the forged IP unicast address,

wherein generating the forged IP unicast address is performed responsive to determining that the routing table does not include any entries.

14. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

sending, from a first edge node of a first network fabric, a Multicast Listener Discovery (MLD) query message to a host node in the first network fabric;

receiving, at the first edge node, an MLD report message indicating an Internet Protocol (IP) multicast address associated with the host node, wherein the IP multicast address has a matching address portion with an IP unicast address of the host node;

determining, at the first edge node and using the matching address portion, that the IP unicast address for the host node is not in a routing table associated with the first edge node;

based at least in part on the IP unicast address not being in the routing table, generating a forged IP unicast address for the host node, wherein the forged IP unicast address at least partly corresponds to the IP multicast address; and

sending the forged IP unicast address to at least one of a second edge node in a second network fabric or a mapping system associated with the first network fabric and the second network fabric such that the forged IP unicast address is used for communicating with the host node until the IP unicast address for the host node is determined.

15. The one or more non-transitory computer-readable media of claim 14 , wherein at least three least-significant bytes of the forged IP unicast address correspond to at least three least-significant bytes of the IP multicast address.

16. The one or more non-transitory computer-readable media of claim 14 , the operations further comprising:

updating the routing table at the first edge node to indicate the IP multicast address for the host node;

receiving a packet from the host node, wherein the packet indicates the IP unicast address of the host node in a header of the packet; and

updating the routing table at the first edge node to indicate the IP unicast address of the host node.

17. The one or more non-transitory computer-readable media of claim 14 , the operations further comprising:

receiving, at the first edge node, a packet from the second edge node in the second network fabric;

identifying a destination address for the packet;

determining that the destination address does not have an entry in the routing table;

determining that the destination address at least partly corresponds to the forged IP unicast address; and

sending the packet to the host node.

18. The one or more non-transitory computer-readable media of claim 14 , the operations further comprising:

determining, at the first edge node, that the routing table does not include any entries that corresponds to the forged IP unicast address,

wherein generating the forged IP unicast address is performed responsive to determining that the routing table does not include any entries.

19. The one or more non-transitory computer-readable media of claim 14 , the operations further comprising:

receiving, at the mapping system, the forged IP unicast address from the first edge node;

updating, at the mapping system, a global mapping database indicating a route from the first edge node to the host node associated with the forged IP unicast address;

receiving, at the mapping system, a look-up message from the second edge node, the look-up message including a request for a route to send a data packets to the IP unicast address of the host node;

determining, using the global mapping database, that the forged IP unicast address at least partly corresponds to the IP unicast address; and

causing the data packets to be sent to the first edge node based at least in part on the first edge node servicing the host node.

20. The one or more non-transitory computer-readable media of claim 14 , wherein the mapping system includes at least one of:

a Locator/ID Separation Protocol (LISP) Map-Server/Map Resolver (MSMR) server; or

an ethernet Virtual Private Network (eVPN) control-plane server.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2021
From: THUBERT, PASCAL; LEVY-ABEGNOLI, ERIC; WETTERWALD, PATRICK
To: CISCO TECHNOLOGY, INC.
Reel/Frame 055736/0715 →
Continuity (1)
Related Publication 20220311705A1 · Sep 29, 2022