# US 10,313,224 B2 · Seamless host mobility

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

- Number: US 10,313,224 B2
- Document ID: US10313224B2
- Status: Granted
- Kind: B2
- Application number: 15/263,556
- Filed: 2016-09-13
- Published: 2018-03-15
- Granted: 2019-06-04
- Earliest claimed: 2016-09-13
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Sathish Srinivasan; Vrishabha Sikand; Shyam N. Kapadia; Lukas Krattiger; Massimiliano Ardica
- Web page: https://patentgrep.com/patent/US10313224B2

## CPC

- H04L 12/4641: {Virtual LANs, VLANs, e.g. virtual private networks [VPN] (LAN interconnection over a bridge based backbone H04L12/462; encapsulation techniques H04L12/4633; routing of packets H04L45/00; packet switches H04L49/00; virtual private networks for security H04L63/0272)}
- H04L 45/021: Ensuring consistency of routing table updates, e.g. by using epoch numbers
- H04L 45/033: by updating distance vector protocols
- H04L 45/04: {Interdomain routing, e.g. hierarchical routing}
- H04L 45/48: Routing tree calculation
- H04L 45/66: {Layer 2 routing, e.g. in Ethernet based MAN's}
- H04L 61/103: across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
- H04L 2101/622: Layer-2 addresses, e.g. medium access control [MAC] addresses
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Presented herein are techniques to enable seamless mobility of hosts (endpoints) between disaggregated Ethernet virtual private network (EVPN) domains that are connected with one another by an external network (e.g., a Wide-Area Network (WAN)). In one example, a leaf node in the first domain, which was previously connected to a host, receives updated routing information for the host. The leaf node performs a local host verification process to confirm that the host has moved and, in response to confirming that that the host has moved, the first leaf node sends a targeted host announcement message to the host in the second domain.

## Claims

### Claim 1

A method comprising:
at a leaf node in a first Ethernet virtual private network (EVPN) domain connected to a second EVPN domain via an external network, each EVPN domain configured to perform traffic routing for hosts based on routing information including sequence numbers that are incremented when hosts move to indicate most up-to-date routing information, wherein the external network is not configured to directly carry the sequence numbers between the first EVPN domain and the second EVPN domain:
by the leaf node, in response to a host moving from the first EVPN domain to the second EVPN domain, receiving for the host updated routing information including an updated sequence number that is larger than a sequence number previously associated with the host when previously located in the first EVPN domain; and
by the leaf node, in response to the receiving, upon determining that the host has moved:
sending to the host in the second EVPN domain a targeted host announcement message configured to enable the second EVPN domain to establish routing information for the host in the second EVPN domain;
converting, using a subtraction operation, the updated sequence number to a converted sequence number able to be carried by the external network; and
sending the converted sequence number over the external network to a border leaf node of the second EVPN domain so that the border leaf node is able to extract and use the updated sequence number for traffic routing with respect to the host in order to avoid use of inconsistent and stale routing information in the second EVPN domain.

### Claim 2 (depends on 1)

The method of claim 1, wherein the updated routing information for the host further comprises updated Layer 2/3 routing information for the host.

### Claim 3 (depends on 2)

The method of claim 2 wherein:
the determining that the host has moved includes:
determining that the host was previously attached to the leaf node;
in response to determining that the host was previously attached to the leaf node, sending a host verification message to a local port via which the host was previously attached to the leaf node, wherein the host verification message includes a timeout period for receipt of a response; and
determining that a response to the host verification message to has not been received within the timeout period; and
the method further comprises, in response to determining that no response to the host verification message has been received within the timeout period, deleting the Layer 2/3 routing information previously associated with the host.

### Claim 4 (depends on 1)

The method of claim 1, wherein the targeted host announcement message sent from the leaf node in the first EVPN domain to the host in the second EVPN domain includes a destination media access control (MAC) address of the host and a source MAC address corresponding to an anycast gateway MAC address for all leaf nodes of the first EVPN domain.

### Claim 5 (depends on 1)

The method of claim 1, wherein in response to receiving the targeted host announcement message, the host sends a unicast response that includes a destination media access control (MAC) address of an anycast gateway MAC address for all leaf nodes of the first EVPN, domain, and wherein the method further comprises:
trapping the unicast response at a second leaf node in the second EVPN domain to which the host is connected.

### Claim 6 (depends on 1)

The method of claim 1, wherein sending the targeted host announcement message to the host in the second EVPN domain comprises:
sending a targeted Address Resolution Protocol (ARP) message to the host in the second EVPN domain.

### Claim 7 (depends on 1)

The method of claim 1, wherein sending the targeted host announcement message to the host in the second EVPN domain comprises:
sending a targeted Neighbor Discovery Protocol (NDP) message.

### Claim 8 (depends on 1)

The method of claim 1, wherein the converting includes converting the sequence number to a cost community attribute that is supported by the IP-Border Gate Protocol.

### Claim 9 (depends on 8)

The method of claim 8, wherein the converting further includes subtracting the sequence number from a base number that is a maximum value permitted for the cost community attribute.

### Claim 10

An apparatus comprising:
a plurality of network interface ports configured to enable network communications; and
a processor, coupled to the plurality of network interface ports, and configured to:
in response to a host moving from a first Ethernet virtual private network (EVPN) domain to a second EVPN domain connected to the first EVPN domain by an external network, each EVPN domain configured to perform traffic routing for host devices based on routing information including sequence numbers that are incremented when hosts move to indicate most up-to-date routing information, wherein the external network is not configured to directly carry the sequence numbers between the first EVPN domain and the second EVPN domain, receive for the host device updated routing information including an updated sequence number that is larger than a sequence number previously associated with the host device when previously located in the first EVPN domain; and
in response to the receiving for the host the updated routing information, upon determining that the host device has moved:
send to the host device in the second EVPN domain a targeted host announcement message configured to enable the second EVPN domain to establish routing information for the host device in the second EVPN domain;
convert, using a subtraction operation, the updated sequence number to a converted sequence number able to be carried by the external network; and
send the converted sequence number over the external network to a border leaf node of the second domain so that the border leaf node is able to extract and use the updated sequence number for traffic routing with respect to the host device in order to avoid use of inconsistent and stale routing information in the second EVPN domain.

### Claim 11 (depends on 10)

The apparatus of claim 10, wherein the updated routing information for the host further comprises updated Layer 2/3 routing information for the host.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein:
the processor is configured to perform the determining by:
determining that the host was previously attached to the leaf node;
in response to determining that the host was previously attached to the leaf node, sending a host verification message to a local port via which the host was previously attached to the leaf node, wherein the host verification message includes a timeout period for receipt of a response; and
determining that a response to the host verification message to has not been received within the timeout period; and
the processor is further configured to, in response to determining that no response to the host verification message has been received within the timeout period, delete Layer 2/3 routing information previously associated with the host.

### Claim 13 (depends on 10)

The apparatus of claim 10, wherein the targeted host announcement message sent from the apparatus in the first EVPN domain to the host in the second EVPN domain includes a destination media access control (MAC) address of the host and a source MAC address corresponding to an anycast gateway MAC address for all leaf nodes of the first EVPN domain.

### Claim 14 (depends on 10)

The apparatus of claim 10, wherein to send a targeted host announcement message to the host in the second EVPN domain, the processor is configured to send a targeted Address Resolution Protocol (ARP) message to the host in the second EVPN domain.

### Claim 15

One or more non-transitory computer readable storage media encoded with instructions that, when executed by a processor of a leaf node in a first Ethernet virtual private network (EVPN) domain connected to a second EVPN domain via an external network, each EVPN domain configured to perform traffic routing for hosts based on routing information including sequence numbers that are incremented when hosts move to indicate most up-to-date routing information, wherein the external network is not configured to directly carry the sequence numbers between the first EVPN domain and the second EVPN domain, cause the processor to:
in response to a host moving from the first EVPN domain to the second EVPN domain, receive for the host updated routing information including an updated sequence number that is larger than a sequence number previously associated with the host when previously located in the first EVPN domain; and
in response to receiving for the host the updated routing information, upon determining that the host has moved:
send to the host in the second EVPN domain a targeted host announcement message configured to enable the second EVPN domain to establish routing information for the host in the second EVPN domain;
convert, using a subtraction operation, the updated sequence number to a converted sequence number able to be carried by the external network; and
send the converted sequence number over the external network to a border leaf node of the second domain so that the border leaf node is able to extract and use the updated sequence number for traffic routing with respect to the host in order to avoid use of inconsistent and stale routing information in the second EVPN domain.

### Claim 16 (depends on 15)

The non-transitory computer readable storage media of claim 15, wherein the updated routing information for the host further comprises updated Layer 2/3 routing information for the host.

### Claim 17 (depends on 15)

The non-transitory computer readable storage media of claim 15, wherein the instructions operable to perform the determining that the host has moved include instructions operable to:
determine that the host was previously attached to the leaf node;
in response to determining that the host was previously attached to the leaf node, send a host verification message to a local port via which the host was previously attached to the leaf node, wherein the host verification message includes a timeout period for receipt of a response; and
determine that a response to the host verification message to has not been received within the timeout period; and
further comprising instructions operable to, in response to determining that no response to the host verification message has been received within the timeout period, delete, at the leaf node, Layer 2/3 routing information previously associated with the host while attached to the first leaf node.

### Claim 18 (depends on 15)

The non-transitory computer readable storage media of claim 15, wherein the targeted host announcement message sent from the leaf node in the first EVPN domain to the host in the second EVPN domain includes a destination media access control (MAC) address of the host and a source MAC address corresponding to an anycast gateway MAC address for all leaf nodes of the first EVPN domain.

### Claim 19 (depends on 15)

The non-transitory computer readable storage media of claim 15, wherein the instructions operable to send a host verification message to a local port via which the host was attached to the leaf node comprise instructions operable to:
send an Address Resolution Protocol (ARP) refresh to the local port to which the host was attached, wherein the ARP refresh includes a timeout period for receipt of an ARP response.

### Claim 20 (depends on 15)

The non-transitory computer readable storage media of claim 15, wherein the instructions operable to send the targeted host announcement message to the host in the second EVPN domain comprise instructions operable to:
send a targeted Address Resolution Protocol (ARP) message to the host in the second EVPN domain.
