# US 2013/0156032 A1 · Data structure-less distributed fabric multicast

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

- Number: US 2013/0156032 A1
- Document ID: US20130156032A1
- Status: Published application
- Kind: A1
- Application number: 13/692,701
- Filed: 2012-12-03
- Published: 2013-06-20
- Earliest claimed: 2010-02-09
- Assignees: Juniper Networks, Inc.
- Inventors: Alex BABAN; Jean-Marc FRAILONG; Kireeti KOMPELLA; Nitin KUMAR; Jamsheed WANIA; Murtuza ATTARWALA
- Web page: https://patentgrep.com/patent/US20130156032A1

## CPC

- H04L 45/16: Multipoint routing
- H04L 12/18: for broadcast or conference {, e.g. multicast}
- H04L 49/10: characterised by the switching fabric construction
- H04L 49/201: Multicast operation; Broadcast operation
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A network device receives a packet with a multicast nexthop identifier, and creates a mask that includes addresses of egress packet forwarding engines, of the network device, to which to provide the packet. The network device divides the mask into two portions, generates two copies of the packet, provides a first portion of the mask in a first copy of the packet, and provides a second portion of the mask in a second copy of the packet. The network device also forwards the first copy of the packet to an address of a first egress packet forwarding engine provided in the first portion of the mask, and forwards the second copy of the packet to an address of a second egress packet forwarding engine provided in the second portion of the mask.

## Claims

### Claim at position 1

1-25. (canceled)

### Claim 26

A method comprising:
identifying, by a particular component of a network device, a packet;
dividing, by the particular component of the network device, a mask, associated with the packet, into a first portion of the mask and a second portion of the mask;
providing, by the particular component of the network device, a first copy of the packet with the first portion of the mask; and
providing, by the particular component of the network device, a second copy of the packet with the second portion of the mask.

### Claim 27 (depends on 26)

The method of claim 26, further comprising:
creating the mask based on addresses of other components that are to be reached based on the packet.

### Claim 28 (depends on 26)

The method of claim 26,
where the mask identifies other components, of the network device, that are to be reached based on the packet, and
where the method further comprises:
forwarding the first copy of the packet to an address of a particular component, of the other components, that is identified in the first portion of the mask.

### Claim 29 (depends on 26)

The method of claim 26, further comprising:
selecting an index from the first portion of the mask;
removing the index from the first portion of the mask to create a new mask; and
forwarding, to another component associated with the index, the first copy of the packet with the new mask.

### Claim 30 (depends on 26)

The method of claim 26, where dividing the mask comprises:
determining that the mask can be divided based on the mask including more than one index, and
dividing the mask after determining that the mask can be divided.

### Claim 31 (depends on 26)

The method of claim 26, further comprising:
identifying another packet;
determining that another mask, associated with the other packet, cannot be divided; and
providing, after determining that the other mask cannot be divided, the other packet to a different component associated with a single index included in the other mask.

### Claim 32 (depends on 31)

The method of claim 31, further comprising:
removing the other mask from the other packet before providing the other packet to the different component.

### Claim 33 (depends on 26)

The method of claim 26, further comprising:
generating, based on the packet, the first copy of the packet and the second copy of the packet.

### Claim 34 (depends on 26)

The method of claim 26,
where the particular component includes an ingress component of the network device,
where the mask identifies other components, of the network device, that are to be reached based on the packet, and
where the other components include two or more egress components of the network device.

### Claim 35

A non-transitory computer readable medium storing instructions, the instructions comprising:
one or more instructions that, when executed by at least one processor of a network device, cause the at least one processor to:
identify a packet,
divide a mask, associated with the packet, into a first portion of the mask and a second portion of the mask,
provide a first copy of the packet with the first portion of the mask, and
provide a second copy of the packet with the second portion of the mask.

### Claim 36 (depends on 35)

The non-transitory computer readable medium of claim 35,
where the mask identifies components, of the network device, that are to be reached based on the packet, and
where the instructions further comprise:
one or more instructions that, when executed by the at least one processor, cause the at least one processor to:
create the mask based on addresses of the components.

### Claim 37 (depends on 35)

The non-transitory computer readable medium of claim 35,
where the mask identifies components, of the network device, that are to be reached based on the packet, and
where the instructions further comprise:
one or more instructions that, when executed by the at least one processor, cause the at least one processor to:
forward the first copy of the packet to a first address of a first component, of the components, that is identified in the first portion of the mask, and
forward the second copy of the packet to a second address of a second component, of the components, that is identified in the second portion of the mask.

### Claim 38 (depends on 35)

The non-transitory computer readable medium of claim 35, the instructions further comprising:
one or more instructions that, when executed by the at least one processor, cause the at least one processor to:
select an index from the first portion of the mask,
remove the index from the first portion of the mask to create a new mask, and
forward the first copy of the packet with the new mask.

### Claim 39 (depends on 35)

The non-transitory computer readable medium of claim 35, the instructions further comprising:
one or more instructions that, when executed by the at least one processor, cause the at least one processor to:
select an address from the first portion of the mask, and
forward the first copy of the packet to the address.

### Claim 40 (depends on 35)

The non-transitory computer readable medium of claim 35, where the one or more instructions to divide the mask comprise:
one or more instructions that, when executed by the at least one processor, cause the at least one processor to:
determine that the mask can be divided based on the mask including more than one index, and
divide the mask after determining that the mask can be divided.

### Claim 41

A device comprising:
one or more processors to:
determine that a mask, associated with a packet, can be divided,
divide the mask into a first portion of the mask and a second portion of the mask after determining that the mask can be divided,
provide a first copy of the packet with the first portion of the mask, and
provide a second copy of the packet with the second portion of the mask.

### Claim 42 (depends on 41)

The device of claim 41,
where the mask identifies two or more components, of the device, that are to be reached based on the packet, and
where, when determining whether the mask can be divided, the one or more processors are to:
determine that the mask includes multiple indices that correspond to the two or more components,
determine that the mask can be divided based on the mask including the multiple indices.

### Claim 43 (depends on 41)

The device of claim 41, where the one or more processors are further to:
determine that another mask, associated with another packet, cannot be divided, and
provide, after determining that the other mask cannot be divided, the other packet to a particular component associated with a single index included in the other mask.

### Claim 44 (depends on 43)

The device of claim 43, where the one or more processors are further to:
remove the other mask from the other packet before providing the other packet to the particular component.

### Claim 45 (depends on 43)

The device of claim 43, where, when determining that the other mask cannot be divided, the one or more processors are further to:
determine that the other mask includes only the single index, and
determine that the other mask cannot be divided based on the other mask including only the single index.
