# US 11,909,542 B2 · EVPN PIM neighborship

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

- Number: US 11,909,542 B2
- Document ID: US11909542B2
- Status: Granted
- Kind: B2
- Application number: 17/667,266
- Filed: 2022-02-08
- Published: 2023-08-10
- Granted: 2024-02-20
- Earliest claimed: 2022-02-08
- Assignees: Arista Networks, Inc.
- Applicants: Arista Networks, Inc.
- Inventors: Bharathram Pattabhiraman; Suresh Nalagatla; Saravanan Balasubramanian; Prashant Srinivas
- Web page: https://patentgrep.com/patent/US11909542B2

## CPC

- H04L 12/18: for broadcast or conference {, e.g. multicast}
- H04L 12/1886: {with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains}
- 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/02: Topology update or discovery
- H04L 45/16: Multipoint routing
- H04L 12/185: {with management of multicast group membership}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Protocol-Independent Multicast (PIM) uses PIM hello messages to maintain neighborship information. PIM may be implemented in an Ethernet VPN (EVPN) providing Optimized Inter-Subnet Multicast (OISM). Techniques are disclosed for improving PIM neighborship efficiency and speed in an EVPN. An Inclusive Multicast Ethernet Tag (IMET) may be used to set PIM neighborship instead of using PIM hello messages and TCP may be used to determine if the neighbor is disconnected instead of tracking PIM timers.

## Claims

### Claim 1

A computer-implemented method, comprising:
receiving, by a computer device, a first message from a gateway device over a network connection, the first message including first neighbor information and one or more flags indicating that the first neighbor information is used to establish protocol-independent multicast neighborship;
modifying, by the computer device, a protocol-independent multicast neighbor table based on the first neighbor information; and
sending, by the computer device, a second message to the gateway device over the network connection, the second message including second neighbor information and the one or more flags indicating that the second neighbor information is used to establish protocol-independent multicast neighborship.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the modifying of the protocol-independent multicast neighbor table includes adding a protocol-independent multicast domain of the gateway device as a neighbor of the computer device.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, further comprising:
receiving, by the computer device, a third message from the gateway device over the network connection, the third message including a flag indicating that there are no protocol-independent multicast devices in a protocol-independent multicast domain of the gateway device; and
modifying, by the computer device, the protocol-independent multicast neighbor table to remove the gateway device as a neighbor.

### Claim 4 (depends on 1)

The computer system of claim 1, wherein protocol-independent multicast hello messages are not sent to the gateway device until a later message is received from the gateway device having one or more flags indicating that neighbor information of the later message is not used to establish protocol-independent multicast neighborship.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, further comprising:
receiving, by the computer device, a fourth message from the gateway device over the network connection, the fourth message having a flag indicating that neighbor information of the fourth message is not used to establish protocol-independent multicast neighborship; and
sending a protocol-independent multicast hello message to the gateway device in response to receiving the fourth message.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, further comprising:
modifying, by the computer device, a media access control virtual route forwarding table based on the first neighbor information.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein the first message is an inclusive multicast Ethernet tag message, wherein the network connection uses Transmission Control Protocol connection, and wherein the one or more flags include a Provider Edge Gateway flag and an Optimized Inter-Subnet Multicast flag.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein the computer device and the gateway device are both provider edge gateways.

### Claim 9 (depends on 1)

The computer-implemented method of claim 1, wherein the network connection is in an Ethernet virtual private network.

### Claim 10

A computer system, comprising:
one or more processors; and
one or more machine-readable medium coupled to the one or more processors and storing computer program code comprising sets of instructions executable by the one or more processors to:
receive a first message from a gateway device over a network connection, the first message including first neighbor information and one or more flags indicating that the first neighbor information is used to establish protocol-independent multicast neighborship;
modify a protocol-independent multicast neighbor table based on the first neighbor information; and
send a second message to the gateway device over the network connection, the second message including second neighbor information and the one or more flags indicating that the second neighbor information is used to establish protocol-independent multicast neighborship.

### Claim 11 (depends on 10)

The computer system of claim 10, wherein the modifying of the protocol-independent multicast neighbor table includes adding a protocol-independent multicast domain of the gateway device as a neighbor.

### Claim 12 (depends on 10)

The computer system of claim 10, wherein the computer program code further comprises sets of instructions executable by the one or more processors to:
receive a third message from the gateway device over the network connection, the third message including second neighbor information and a flag indicating that there are no protocol-independent multicast devices in a protocol-independent multicast domain of the gateway device; and
modify the protocol-independent multicast neighbor table to remove the gateway device as a neighbor of the computer system.

### Claim 13 (depends on 10)

The computer system of claim 10, wherein protocol-independent multicast hello messages are not sent to the gateway device until a later message is received from the gateway device having one or more flags indicating that neighbor information of the later message is not used to establish protocol-independent multicast neighborship.

### Claim 14 (depends on 10)

The computer system of claim 10, wherein the computer program code further comprises sets of instructions executable by the one or more processors to:
receive a fourth message from the gateway device having a flag indicating that neighbor information of the fourth message is not used to establish protocol-independent multicast neighborship; and
send a protocol-independent multicast hello message to the gateway device in response to receiving the fourth message.

### Claim 15 (depends on 10)

The computer system of claim 10, wherein the computer program code further comprises sets of instructions executable by the one or more processors to:
modify a media access control virtual route forwarding table based on the first neighbor information.

### Claim 16

One or more non-transitory computer-readable medium storing computer program code comprising sets of instructions to:
receive a first message from a gateway device over a network connection, the first message including first neighbor information and one or more flags indicating that the first neighbor information is used to establish protocol-independent multicast neighborship;
modify a protocol-independent multicast neighbor table based on the first neighbor information; and
send a second message to the gateway device over the network connection, the second message including second neighbor information and the one or more flags indicating that the second neighbor information is used to establish protocol-independent multicast neighborship.

### Claim 17 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein the modifying of the protocol-independent multicast neighbor table includes adding a protocol-independent multicast domain of the gateway device as a neighbor.

### Claim 18 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein the computer program code further comprises sets of instructions to:
receive a third message from the gateway device over the network connection, the third message including second neighbor information and a flag indicating that there are no protocol-independent multicast devices in a protocol-independent multicast domain of the gateway device; and
modify the protocol-independent multicast neighbor table to remove the gateway device as a neighbor.

### Claim 19 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein protocol-independent multicast hello messages are not sent to the gateway device until a later message is received from the gateway device having one or more flags indicating that neighbor information of the later message is not used to establish protocol-independent multicast neighborship.

### Claim 20 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein the computer program code further comprises sets of instructions to:
receive a fourth message from the gateway device having a flag indicating that neighbor information of the fourth message is not used to establish protocol-independent multicast neighborship; and
send a protocol-independent multicast hello message to the gateway device in response to receiving the fourth message.
