Method and apparatus for multicast switching using a centralized switching engine
First Claim
1. A method for operating a switch, the method comprising the steps of:
- forwarding a multicast frame received at the switch to a router;
performing route processing and forwarding operations for a packet encapsulated within the frame;
receiving multicast flow and additional information relating to the packet from the router, the information received in a multicast shortcut protocol (MSCP) from the router and received by a multicast shortcut client (MSC) process on the switch; and
implementing multicast shortcuts at the switch for subsequent multicast frames having the multicast flow using the information provided by the router.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique implements forwarding operation shortcuts at a switch for multicast data traffic routed between subnetworks of a computer network. A first multicast frame is forwarded from the switch to a router, which peforms route processing and forwarding operations for a packet encapsulated within the frame. During execution of the operations, the router provides multicast flow and additional information concerning the routed packet to the switch in accordance with a novel multicast shortcut control protocol. The information is used by the switch to implement a novel multicast shortcut for subsequent frames received at the switch having the multicast packet flow.
-
Citations
39 Claims
-
1. A method for operating a switch, the method comprising the steps of:
-
forwarding a multicast frame received at the switch to a router;
performing route processing and forwarding operations for a packet encapsulated within the frame;
receiving multicast flow and additional information relating to the packet from the router, the information received in a multicast shortcut protocol (MSCP) from the router and received by a multicast shortcut client (MSC) process on the switch; and
implementing multicast shortcuts at the switch for subsequent multicast frames having the multicast flow using the information provided by the router. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 38, 39)
the router executing a multicast shortcut server (MSS) process to transmit the information in a multicast shortcut control protocol (MSCP).
-
-
22. The method of claim 1 further comprising:
creating a shortcut control message (SCCM) by the router using the MSS, the SCCM containing an Internet protocol (IP) address of the router and a media access control (MAC) address of the router.
-
23. The method of claim 22 further comprising:
creating, at the router, by a multicast shortcut server (MSS) process a shortcut install type/length/value (TLV) structure defining the multicast flow at the MSS, the shortcut install TLV containing a source IP address (IP SA) of the packet, a destination group IP address (IP DA) of the packet, an incoming interface virtual local area network (VLAN) identifier (ID) of the packet and a list of outgoing interface VLAN IDs for receiving the packet.
-
24. The method of claim 23, further comprising:
appending the shortcut install TLV to the SCCM at the MSS for transmission to the MSC.
-
25. The method of claim 23, further comprising:
programming table structures in the switch using contents of the SCCM and TLV to establish a hardware shortcut at the switch for the multicast flow defined in the TLV.
-
26. The method of claim 23, further comprising:
-
allocating memory in a multicast expansion table (MET) of the switch; and
creating a return MET pointer to the allocated memory.
-
-
27. The method of claim 23 further comprising:
-
programming an entry of a layer 3 (L3) shortcut table in the switch with information contained within the SCCM; and
storing the return MET pointer in a predefined field of the L3 entry.
-
-
28. The method of claim 23, further comprising:
-
accessing in the switch a corresponding entry of a layer 2 (L2) forwarding table using information contained in the SCCM; and
asserting a shortcut bit of the accessed L2 entry.
-
-
29. The method of claim 28, further comprising:
-
creating, by the switch, a positive acknowledgment message at the MSC; and
responding to the SCCM transmitted by the MSS with the acknowledgment message.
-
-
30. The method of claim 1, further comprising:
accessing the switch hardware shortcut using a IP SA, IP DA and incoming VLAN ID of the subsequent frame.
-
31. The method of claim 1, further comprising:
implementing, in the switch, a reverse path forwarding (RPF) check in hardware by hashing the IP SA, IP DA and incoming VLAN ID of the subsequent frame.
-
32. The method of claim 31, further comprising:
terminating by the router, in response to receiving the positive acknowledgment, forwarding operations at the MSS for subsequent packets having the multicast flow.
-
33. The method of claim 21, further comprising:
-
creating, in the router, a multicast fast drop (MFD) message at the MSS, the MFD message instructing the switch to block multicast traffic having a specified multicast flow from reaching the router;
creating a MFD install TLV at the MSS, the MFD install TLV containing a source IP address of the packets to be blocked, a destination group IP address of the packets to be blocked and an incoming interface VLAN ID of the packets to be blocked; and
appending the MFD install TLV to the MFD message at the MSS for transmission to the MSC in the switch.
-
-
34. The method as in claim 33, further comprising:
eliminating by the switch, in response to receiving the MFD, a port-select signal used to direct the multicast traffic to the router.
-
38. A computer readable media, comprising:
instructions for execution on a processor for the practice of the method of claim 1 or claim 2 or claim 37.
-
39. Electromagnetic signals propagating on a computer network, comprising:
said electromagnetic signals carrying instructions for execution on a processor for the practice of the method of claim 1 or claim 2 or claim 37.
-
2. A method for implementing forwarding operation shortcuts at a switch for multicast frames routed between subnetworks of a computer network, the method comprising the steps of:
-
forwarding a multicast frame received at the switch to a router;
performing route processing and forwarding operations for a packet encapsulated within the frame;
providing multicast flow and additional information relating to the packet from the router to the switch, the router executing a multicast shortcut server (MSS) process transmitting using a multicast shortcut control protocol (MSCP) the information to a multicast shortcut client process (MSC) on the switch; and
implementing multicast shortcuts at the switch for subsequent multicast frames having the multicast flow using the information provided by the router. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
allocating memory in a multicast expansion table (MET) of the switch; and
creating a return MET pointer to the allocated memory.
-
-
8. The method of claim 7 wherein the step of programming further comprises the steps of:
-
programming an entry of a layer 3 (L3) shortcut table with information contained within the SCCM; and
storing the return MET pointer in a predefined field of the L3 entry.
-
-
9. The method of claim 8 wherein the step of programming further comprises the steps of:
-
accessing a corresponding entry of a layer 2 (L2) forwarding table using information contained in the SCCM; and
asserting a shortcut bit of the accessed L2 entry.
-
-
10. The method of claim 9 further comprising the steps of, after programming the table structures to establish the hardware shortcut at the switch for the multicast flow:
-
creating a positive acknowledgment message at the MSC; and
responding to the SCCM transmitted by the MSS with the acknowledgment message.
-
-
11. The method of claim 10 further comprising the step of accessing the hardware shortcut using the IP SA, IP DA and incoming VLAN ID of the packet.
-
12. The method of claim 11 further comprising the step of implementing a reverse path forwarding (RPF) check in hardware by hashing the IP SA, IP DA and incoming VLAN ID.
-
13. The method of claim 12 further comprising the step of, in response to receiving the positive acknowledgment, terminating forwarding operations at the MSS for subsequent packets having the multicast flow.
-
14. The method of claim 13 further comprising the steps of:
-
creating a multicast fast drop (MFD) message at the MSS, the MFD message instructing the switch to block multicast traffic having a specified multicast flow from reaching the router;
creating a MFD install TLV at the MSS, the MFD install TLV containing a source IP address of the packets to be blocked, a destination group IP address of the packets to be blocked and an incoming interface VLAN ID of the packets to be blocked; and
appending the MFD install TLV to the MFD message at the MSS for transmission to the MSC.
-
-
15. The method of claim 14 further comprising the steps of, in response to receiving the MFD message at the MSC:
-
locating an appropriate entry in the L3 table using contents of the MFD message;
accessing an entry of the L2 forwarding table associated with the L3 entry; and
reprogramming contents of an index field of the L3 entry to eliminate a port-select signal destined for the router.
-
-
16. Apparatus for implementing forwarding operation shortcuts at a switch for multicast frames routed between subnetworks of a computer network, the apparatus comprising:
-
a layer 2 (L2) forwarding engine adapted to render a decision to forward a multicast frame received at the switch to a router;
a route processor of the router adapted to perform route processing and forwarding operations for a packet encapsulated within the multicast frame;
a multicast shortcut server (MSS) executed by the route processor to provide multicast flow and additional information relating to the packet from the router to the switch in accordance with a multicast shortcut control protocol (MSCP); and
a multicast shortcut client (MSC) executed by a switch processor of the switch and cooperating with the MSS to implement multicast shortcuts at the switch for subsequent multicast frames having the multicast flow in accordance with the information provided by the router. - View Dependent Claims (17, 18, 19, 20)
-
-
35. A switch coupled to a router, comprising:
-
a forwarding engine to forward a multicast packet received at the switch to the router;
a route processor of the router to perform route processing and forwarding operations for the packet;
a multicast shortcut server (MSS) process of the router to provide multicast flow and additional information (hereinafter information) relating to the packet, and to transmit the information in a multicast shortcut protocol (MSCP) to the switch;
a multicast shortcut client (MSC) process in the switch to receive the information from the router; and
hardware in the switch to implement multicast shortcuts for subsequent multicast frames having the multicast flow using the information provided by the router.
-
-
36. A switch coupled to a router, comprising:
-
a forwarding engine to forward a multicast packet received at the switch to the router;
a route processor of the router to perform route processing and forwarding operations for the packet;
means for providing multicast flow and additional information (hereinafter information) relating to the packet by a multicast shortcut server (MSS) process of the router;
means for transmitting the information in a multicast shortcut protocol (MSCP) to the switch;
means for receiving the information from the router in a multicast shortcut client (MSC) process in the switch; and
means for implementing multicast shortcuts for subsequent multicast frames having the multicast flow using the information provided by the router.
-
-
37. A method for operating a switch coupled to a router, comprising:
-
forwarding a multicast packet received at the switch to the router;
performing, by the router, route processing and forwarding operations for the packet;
providing multicast flow and additional information (hereinafter information) relating to the packet by a multicast shortcut server (MSS) process of the router;
transmitting the information in a multicast shortcut protocol (MSCP) to the switch;
receiving the information from the router in a multicast shortcut client (MSC) process in the switch; and
implementing multicast shortcuts for subsequent multicast frames having the multicast flow using the information provided by the router.
-
Specification