# US 11,863,348 B2 · Message handling between domains

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

- Number: US 11,863,348 B2
- Document ID: US11863348B2
- Status: Granted
- Kind: B2
- Application number: 17/368,595
- Filed: 2021-07-06
- Published: 2023-01-12
- Granted: 2024-01-02
- Earliest claimed: 2021-07-06
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Pascal Thubert; Amine Choukir; Domenico Ficara; Eric M. Levy-Abegnoli; Bhavik Fajalia; Gokul Bhoothanathan Kailasanatha Subramania
- Web page: https://patentgrep.com/patent/US11863348B2

## CPC

- H04L 12/4633: {Interconnection of networks using encapsulation techniques, e.g. tunneling}
- H04L 12/4616: {LAN interconnection over a LAN backbone}
- 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 67/563: Data redirection of data network streams
- H04L 45/04: {Interdomain routing, e.g. hierarchical routing}
- H04L 61/5007: Internet protocol [IP] addresses
- H04L 61/5092: by self-assignment, e.g. picking addresses at random and testing if they are already in use
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method includes receiving, at a home controller of a home domain and from a first device in the home domain, a first message concerning a user device that is anchored to the home domain and that has roamed from the home domain to a visitor domain. The method also includes, in response to determining that the first device is a router, opening a tunnel between the home controller and a visitor controller of the visitor domain and communicating the first message to the user device through the tunnel. The method further includes receiving, at the home controller and from a second device in the home domain, a second message concerning the user device and in response to determining that the second device is not a router, communicating, to the second device, a proxy response to the second message.

## Claims

### Claim 1

A method comprising:
receiving, at a home controller of a home domain and from a first device in the home domain, a first message concerning a user device that is anchored to the home domain and that has roamed from the home domain to a visited domain;
determining, by the home controller, that the first device is a router;
in response to the home controller determining that the first device is a router:
opening a tunnel between the home controller and a visited controller of the visited domain; and
communicating the first message to the user device in the visited domain through the tunnel and the visited controller;
receiving, at the home controller, a second message broadcasted by a second device in the home domain, wherein the second message concerns the user device;
determining, by the home controller, that the second device is not a router; and
in response to the home controller determining that the second device is not a router:
generating, at the home controller, a response to the second message; and
communicating, from the home controller to the second device, the response to the second message as a proxy for the user device in the visited domain.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
receiving, at the home controller and from the second device, a third message comprising a home domain address of the user device; and
ignoring the third message.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
receiving, through the tunnel and from the user device, a response to the first message; and
communicating the response to the first message.

### Claim 4 (depends on 1)

The method of claim 1, further comprising anchoring the user device to the home domain by storing a home domain address and a global address of the user device in a table.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
receiving, from the first device, a third message for a second user device that is anchored to the visited domain and that has roamed from the visited domain to the home domain; and
blocking the third message.

### Claim 6 (depends on 1)

The method of claim 1, wherein the response to the second message prevents the second device from taking one of a global address or a home domain address of the user device.

### Claim 7 (depends on 1)

The method of claim 1, wherein the response to the second message indicates to the second device that the user device is reachable in the home domain.

### Claim 8 (depends on 1)

The method of claim 1, wherein the response to the second message defends a link local address of the user device so that the link local address is not overwritten in the home domain.

### Claim 9

A home controller comprising:
a memory; and
a hardware processor communicatively coupled to the memory, the hardware processor configured to:
receive, from a first device in a home domain, a first message concerning a user device that is anchored to the home domain and that has roamed from the home domain to a visited domain;
determine that the first device is a router;
in response to determining that the first device is a router:
open a tunnel between the home controller and a visited controller of the visited domain; and
communicate the first message to the user device in the visited domain through the tunnel and the visited controller;
receive a second message broadcasted by a second device in the home domain, wherein the second message concerns the user device;
determine that the second device is not a router; and
in response to determining that the second device is not a router:
generate a response to the second message; and
communicate, to the second device, the response to the second message as a proxy for the user device in the visited domain.

### Claim 10 (depends on 9)

The home controller of claim 9, the hardware processor further configured to:
receive, from the second device, a third message comprising a home domain address of the user device; and
ignore the third message.

### Claim 11 (depends on 9)

The home controller of claim 9, the hardware processor further configured to:
receive, through the tunnel and from the user device, a response to the first message; and
communicate the response to the first message.

### Claim 12 (depends on 9)

The home controller of claim 9, the hardware processor further configured to anchor the user device to the home domain by storing a home domain address and a global address of the user device in a table.

### Claim 13 (depends on 9)

The home controller of claim 9, the hardware processor further configured to:
receive, from the first device, a third message for a second user device that is anchored to the visited domain and that has roamed from the visited domain to the home domain; and
block the third message.

### Claim 14 (depends on 9)

The home controller of claim 9, wherein the response to the second message prevents the second device from taking one of a global address or a home domain address of the user device.

### Claim 15 (depends on 9)

The home controller of claim 9, wherein the response to the second message indicates to the second device that the user device is reachable in the home domain.

### Claim 16 (depends on 9)

The home controller of claim 9, wherein the response to the second message defends a link local address of the user device so that the link local address is not overwritten in the home domain.

### Claim 17

A method comprising:
in a first device roaming in a visited domain, receiving a first message from a second device in a home domain; and
communicating, to the second device, a response to the first message, wherein the first message and the response are communicated through a tunnel between a controller in the visited domain and a controller in the home domain, wherein the tunnel is opened by the controller in the home domain in response to the controller in the home domain determining that the second device is a router, and wherein the controller in the home domain generates a response to a second message as a proxy for the first device in response to the controller in the home domain determining that a third device that broadcasted the second message in the home domain is not a router.
