Multicast forwarding methods and apparatuses across autonomous systems
US-2024275714-A1 · Aug 15, 2024 · US
US2016014018A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016014018-A1 |
| Application number | US-201514861838-A |
| Country | US |
| Kind code | A1 |
| Filing date | Sep 22, 2015 |
| Priority date | Mar 15, 2013 |
| Publication date | Jan 14, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A switching device supports a mixed mode of operation using both layer 2 and layer 3 multicast forwarding tables for multicast forwarding of packets. In the mixed mode of operation the switching device programs multicast forwarding entries in a corresponding layer 2 or layer 3 table depending on a type of protocol to be used for multicast forwarding. The switching device programs multicast forwarding entries in the layer 3 table for multicast packets forwarded using layer 3 routing protocols, and in the layer 2 table for multicast packets forwarded using layer 2 protocols. The switching device converts layer 3 multicast information to layer 2 multicast information before programming multicast forwarding entries in the corresponding layer 2 table.
Opening claim text (preview).
1 . In a switching device, a method comprising: receiving a request to program a multicast entry in a forwarding table for forwarding a data packet to multiple destinations, the forwarding table including a layer 2 table and a layer 3 table, the request associated with a multicast group address and a VLAN ID; identifying a protocol with which the request is associated, the protocol identified from among a plurality of protocols supported in the switching device; programming the multicast entry for the multicast group address associated with the request into the layer 3 table when the identified protocol requires forwarding across VLANs; and otherwise, programming the multicast entry for the multicast group address associated with the request into the layer 2 table. 2 . The method of claim 1 , further comprising: determining whether the identified protocol with which the request is associated requires forwarding across VLANs based on mapping the identified protocol to a corresponding one of the layer 2 and layer 3 tables. 3 . The method of claim 2 , wherein the mapping is encoded in a cache distribution table that maps each of the plurality of protocols supported in the switching device to the corresponding one of the layer 2 and layer 3 tables. 4 . The method of claim 1 , wherein programming the multicast entry into the layer 3 table includes: allocating a layer 3 index for insertion into the layer 3 table, the layer 3 index corresponding to the multicast group address; and programming table entries corresponding to the allocated layer 3 index for an egress VLAN and port lists associated with the request. 5 . The method of claim 1 , wherein programming the multicast entry into the layer 2 table includes: converting the multicast group address associated with the request into a layer 2 multicast group address, the converted layer 2 multicast group address composed of a multicast group MAC address and egress VLAN associated with the request; allocating a layer 2 index for insertion into the layer 2 table, the layer 2 index corresponding to the converted layer 2 multicast group address; and programming egress table entries corresponding to the allocated layer 2 index for ports in port lists associated with the request. 6 . The method of claim 5 , wherein programming the multicast entry into the layer 2 table further includes linking the multicast group address associated with the request with the converted layer 2 multicast group address. 7 . The method of claim 1 , wherein the identified protocol requires forwarding across VLANs when the identified protocol is any one of a PIM, MVR and Private VLAN protocols. 8 . The method of claim 1 , wherein the identified protocol does not require forwarding across VLANs when the identified protocol is a snooping protocol, the snooping protocol including any one of an IGMP and MLD snooping protocol. 9 . The method of claim 1 , wherein the multicast entry is programmed into the layer 2 table as a static entry. 10 . A computer system for Internet Protocol (IP) multicast forwarding, the computer system comprising: a hardware layer for programming layer 2 and layer 3 multicast tables for hardware forwarding of multicast data packets; protocol modules issuing requests to program entries in the multicast tables for a specified multicast group address and VLAN ID, the protocol modules implementing a plurality of protocols including layer 2 protocols and layer 3 protocols; and a processor in communication with the hardware layer and the protocol modules, wherein the processor is configurable to operate in a mixed mode enabling multicast hardware forwarding using both the layer 2 and layer 3 multicast tables, the processor managing requests to program the multicast entries including: determining whether a protocol associated with a request requires forwarding across VLANs, processing the request to program the layer 3 multicast table after determining that the associated protocol requires forwarding across VLANs, and otherwise, processing the request to program the layer 2 multicast table. 11 . The computer system of claim 10 , wherein managing requests to program the multicast entries includes: generating a database to support operating in the mixed mode; creating an IP multicast cache node in the database for each IP multicast group address and VLAN ID specified in the requests; storing in the database port lists and egress VLANs for the IP multicast cache node; encoding each IP multicast cache node with a cache mode based on determining whether the protocol associated with a request requires forwarding across VLANs, the cache mode indicating in which of the layer 2 and layer 3 tables the hardware layer should program the multicast entries for the IP multicast group address and VLAN ID specified in the requests; and for each IP multicast cache node in the database encoded with a cache mode indicating the layer 2 table, creating a MAC-VLAN node in the database based on a MAC address representing the IP multicast group address and an egress VLAN. 12 . The computer system of claim 11 , further comprising: for each IP multicast cache node in the database encoded with a cache mode indicating the layer 2 table, linking the IP multicast cache node to each created MAC-VLAN node. 13 . The computer system of claim 11 , further comprising: a cache distribution table in which: protocols requiring forwarding across VLANs are mapped to a layer 3 flag, and protocols not requiring forwarding across VLANs are mapped to a layer 2 flag; and wherein encoding each IP multicast cache node with the cache mode based on determining whether the protocol associated with a request requires forwarding across VLANs includes: matching the protocol associated with the request to one of the protocols in the cache distribution table, and setting the cache mode to the mapped layer 2 or layer 3 flag corresponding to the matching protocol in the cache distribution table. 14 . The computer system of claim 11 , further comprising: interfacing with the hardware layer to program the layer 2 and layer 3 multicast tables in accordance with the requests to program the multicast entries, wherein: for each IP multicast cache node in the database that is encoded with a cache mode indicating the layer 3 table, programming the layer 3 table in the hardware layer, including: allocating a layer 3 index for insertion into the layer 3 table, the layer 3 index corresponding to the IP multicast group address and VLAN ID of the IP multicast cache node, and programming table entries corresponding to the allocated layer 3 index for the egress VLANs and port lists stored in the database; and for each IP multicast cache node in the database that is encoded with a cache mode indicating the layer 2 table, programming the layer 2 table in the hardware layer based on the MAC-VLAN node including: converting the IP multicast group address associated with the request into a layer 2 multicast group address, the layer 2 multicast group address composed of the MAC address and the egress VLAN represented by the MAC-VLAN node; allocating a layer 2 index for insertion into the layer 2 table, the layer 2 index corresponding to the converted layer 2 multicast group address; and programming egress table entries corresponding to the allocated layer 2 index for the port lists stored in the database. 15 . The computer system of claim 12 , further comprising: interfacing with the hardware layer to program the layer 2 multicast tables in accordance with the requests to program the multicast entries,
Multipoint routing · CPC title
for broadcast or conference {, e.g. multicast} · CPC title
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) · CPC title
with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains · CPC title
Hybrid transport · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.