Patent ID: 7644177

Claim:
In a network device comprising a routing processor and a forwarding engine, a method for operating the forwarding engine to handle multicast packets, said method comprising: receiving a multicast packet at said forwarding engine, said forwarding engine and said routing processor modularly distinct from one another and interacting via modification and monitoring of a multicast forwarding table; searching said multicast forwarding table comprising a plurality of entries each comprising a plurality of multicast operation flags, wherein the routing processor sets and clears selected ones of said multicast operation flags in said multicast forwarding table; identifying a matching entry in said multicast forwarding table based on an address of said multicast packet; selecting at the forwarding engine, without awareness of multicast protocol state, a disposition of said multicast packet based on examination of one or more of said multicast operation flags in said identified entry, wherein said selected disposition belongs to a group comprising forwarding said packet, preserving said packet if forwarding information is missing or incomplete in the forwarding table, and dropping said packet; and based on examination of one or more of said multicast operation flags, signaling the routing processor of receipt of said multicast packet at the forwarding engine, wherein signaling comprises creating an entry corresponding to an (S,G) address of said multicast packet and setting a signal present flag of said created entry; wherein said multicast operation flags indicate whether multicast packets matching said entry are accepted on a receiving interface, whether said multicast packets are forwarded on a particular interface, and whether the forwarding engine signals the routing processor of receipt of said multicast packet so that the routing processor can update said multicast forwarding table.