Method and apparatus for performing per-port IP multicast pruning
First Claim
1. A method of forwarding packets received by a switch, the switch including a plurality of ports, the switch coupled to a plurality of end-stations, one or more of the plurality of end-stations being part of a virtual local area network (VLAN), the method comprising:
- maintaining a mapping of Internet Protocol (IP) multicast groups to one or more of the plurality of ports;
causing at least one member of an IP multicast group on each LAN segment of the VLAN to respond to a group membership query message with a group membership report by suppressing the forwarding of group membership reports onto the VLAN;
receiving an IP multicast packet;
forwarding the IP multicast packet to each of the one or more end-stations in the VLAN if a destination address associated with the IP multicast packet is an all-systems multicast group;
forwarding the IP multicast packet to only those of the plurality of ports that are coupled to IP multicast routers if the IP multicast packet is a group membership report or if the destination address is one that is not known by the switch; and
forwarding the IP multicast packet to one or more end-stations of the plurality of end-stations if the destination address is one that is known by the switch to be an IP multicast address subscribed to by the one or more end-stations.
16 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for performing per-port Internet Protocol (IP) multicast pruning, proxying of IP multicast group membership reports, and generating pseudo membership queries for determining IP multicast group membership are provided. A switch may implement per-port IP multicast pruning by establishing a mapping of IP multicast groups to its ports. The mapping is based upon membership reports received from each end-station participating in an IP multicast group. Based upon the mapping, the switch forwards IP multicast packets only to those of the end-stations that are participating in the IP multicast group addressed. Once per-port IP multicast pruning is implemented, multicast routers must process membership reports from all end-stations participating in an IP multicast group. To reduce this burden, a switch may act as a proxy device. The switch receives a membership report identifying an IP multicast group. If the membership report is the first received for the IP multicast group after a membership query, then the switch forwards the membership report. However, if the membership report is not the first received, then the switch discards the membership report. To allow IP multicast group membership determination when no querier is present, a switch determines if another device is currently acting as a querier for a switched network. If not, the switch sends a membership query on one or more of its ports. Responsive to the membership query, an end-station transmits a membership report to the switch. The switch records the IP multicast group membership indicated in the membership report.
-
Citations
11 Claims
-
1. A method of forwarding packets received by a switch, the switch including a plurality of ports, the switch coupled to a plurality of end-stations, one or more of the plurality of end-stations being part of a virtual local area network (VLAN), the method comprising:
-
maintaining a mapping of Internet Protocol (IP) multicast groups to one or more of the plurality of ports;
causing at least one member of an IP multicast group on each LAN segment of the VLAN to respond to a group membership query message with a group membership report by suppressing the forwarding of group membership reports onto the VLAN;
receiving an IP multicast packet;
forwarding the IP multicast packet to each of the one or more end-stations in the VLAN if a destination address associated with the IP multicast packet is an all-systems multicast group;
forwarding the IP multicast packet to only those of the plurality of ports that are coupled to IP multicast routers if the IP multicast packet is a group membership report or if the destination address is one that is not known by the switch; and
forwarding the IP multicast packet to one or more end-stations of the plurality of end-stations if the destination address is one that is known by the switch to be an IP multicast address subscribed to by the one or more end-stations. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of forwarding packets received by a switch, the switch coupled to a querying device and a plurality of end-stations via a plurality of local area network (LAN) segments that are on physically different segments yet in the same broadcast domain, the method comprising:
-
maintaining a mapping of Internet Protocol (IP) multicast groups to one or more of the plurality of LAN segments by causing at least one of the plurality of end-stations that is a member of an IP multicast group on each of the plurality of LAN segments to respond to a group membership query from the querying device by suppressing the forwarding of group membership reports received on the plurality LAN segments to the other LAN segments, creating a table including multicast destination information for each IP multicast group represented by the plurality of end-stations, the table based upon information specified in the group membership reports and the particular ports on which the group membership reports are received;
receiving an IP multicast message for a particular IP multicast group; and
based upon the table, forwarding the IP multicast message onto those of the plurality of LAN segments that include one or more end-stations that are members of the particular IP multicast group. - View Dependent Claims (7)
-
-
8. A machine-readable medium having stored thereon data representing sequences of instructions, the sequences of instructions which, when executed by a processor, cause the processor to:
-
maintain a mapping of Internet Protocol (IP) multicast groups to one or more of a plurality of ports;
cause at least one member of an IP multicast group on each LAN segment of a VLAN to respond to a group membership query message with a group membership report by suppressing the forwarding of group membership reports onto the VLAN;
receive an IP multicast packet;
forward the IP multicast packet to each of one or more end-stations of a plurality of end-stations that are associated with the same virtual local area network (VLAN) if a destination address associated with the IP multicast packet is an all-systems multicast group;
forward the IP multicast packet to only those of the plurality of ports that are coupled to IP multicast routers if the IP multicast packet is a group membership report or if the destination address is one that is not known; and
forward the IP multicast packet to one or more end-stations of the plurality of end-stations if the destination address is one that is known to be an IP multicast address subscribed to by the one or more end-stations.
-
-
9. A machine-readable medium having stored thereon data representing sequences of instructions, the sequences of instructions which, when executed by a processor, cause the processor to perform the steps of:
-
maintaining a mapping of Internet Protocol (IP) multicast groups to one or more of a plurality of local area network (LAN) segments by causing at least one of a plurality of end-stations that is a member of an IP multicast group on each of the plurality of LAN segments to respond to a group membership query from a querying device by suppressing the forwarding of the group membership reports received on the plurality of LAN segments to the other LAN segments, creating a table including multicast destination information for each IP multicast group represented by the plurality of end-stations, the table based upon information specified in the group membership reports and the particular ports on which the group membership reports are received;
receiving an IP multicast message for a particular IP multicast group; and
based upon the table, forwarding the IP multicast message onto those of the plurality of LAN segments that include one or more end-stations that are members of the particular IP multicast group.
-
-
10. A network device comprising:
-
a processor; and
a memory coupled to said processor, said memory having stored therein sequences of instructions which, when executed by said processor, cause said processor to maintain a mapping of Internet Protocol (IP) multicast groups to one or more of a plurality of ports;
cause at least one member of an IP multicast group on each LAN segment of a VLAN to respond to a group membership query message with a group membership report by suppressing the forwarding of group membership reports onto the VLAN;
receive an IP multicast packet;
forward the IP multicast packet to each of one or more end-stations of a plurality of end-stations that are associated with the same virtual local area network (VLAN) if a destination address associated with the IP multicast packet is an all-systems multicast group;
forward the IP multicast packet to only those of the plurality of ports that are coupled to IP multicast routers if the IP multicast packet is a group membership report or if the destination address is one that is not known; and
forward the IP multicast packet to one or more end-stations of the plurality of end-stations if the destination address is one that is known to be an IP multicast address subscribed to by the one or more end-stations.
-
-
11. A network device comprising:
-
a processor; and
a memory coupled to said processor, said memory having stored therein sequences of instructions which, when executed by said processor, cause said processor to maintain a mapping of Internet Protocol (IP) multicast groups to a plurality of local area network (LAN) segments on physically different segments vet in the same broadcast domain by causing at least one of a plurality of end-stations that is a member of an IP multicast group on each of the plurality of LAN segments to respond to a group membership query from a querying device by suppressing the forwarding of the group membership reports received on the plurality of LAN segments to the other LAN segments, creating a table including multicast destination information for each IP multicast group represented by the plurality of end-stations, the table based upon information specified in the group membership reports and the particular ports on which the group membership reports are received;
receive an IP multicast message for a particular IP multicast group; and
based upon the table, forward the IP multicast message onto those of the plurality of LAN segments that include one or more end-stations that are members of the particular IP multicast group.
-
Specification