Method and system for intelligently forwarding multicast packets
First Claim
1. A method for handling a control message in a Virtual Local Area Network (VLAN), the method comprising:
- receiving a control message at a layer 2 switch of said VLAN, said control message sent by a layer 3 router;
determining if the control message establishes shared source distribution trees or explicit source distribution trees;
updating a source-group data structure using information from the control message, the source-group data structure containing data regarding a multicast group, if the control message establishes shared source distribution trees;
adding an outgoing port index to said source-group data structure, said outgoing port index identifying a port that received the control message if the control message establishes shared source distribution trees;
deriving an explicit source lookup key from the control message if the control message establishes explicit source distribution trees;
retrieving an outgoing port index associated with an entry in a session data structure, said entry corresponding to said explicit source lookup key if the control message establishes explicit source distribution trees; and
updating an outgoing lookup table entry corresponding to said outgoing port index with information regarding designated devices in said multicast group indicated by the control message if the control message establishes explicit source distribution trees.
7 Assignments
0 Petitions
Accused Products
Abstract
A routing system utilizes a layer 2 switch interconnecting several routers to intelligently forward multicast packets throughout an internet exchange carrying multicast content. The layer 2 switch performs protocol snooping to extract a lookup key that is based on network layer protocol information. The lookup key is uniquely formulated to support either shared or explicit source distribution trees. The lookup key is used to query a forwarding memory that returns an outgoing port index. The outgoing port index points to one or more outgoing ports that are eligible to receive the multicast packet. The outgoing ports are also connected to the neighboring device(s) that are designated to receive the multicast packet. The routing system also supports real time maintenance and updating of the forwarding memory based on the periodic exchange of control messages. The routing system is configured to support PIM routers operating in PIM SM or PIM SSM modes. However, the routing system can also support other multicast protocols and/or standards.
-
Citations
25 Claims
-
1. A method for handling a control message in a Virtual Local Area Network (VLAN), the method comprising:
-
receiving a control message at a layer 2 switch of said VLAN, said control message sent by a layer 3 router; determining if the control message establishes shared source distribution trees or explicit source distribution trees; updating a source-group data structure using information from the control message, the source-group data structure containing data regarding a multicast group, if the control message establishes shared source distribution trees; adding an outgoing port index to said source-group data structure, said outgoing port index identifying a port that received the control message if the control message establishes shared source distribution trees; deriving an explicit source lookup key from the control message if the control message establishes explicit source distribution trees; retrieving an outgoing port index associated with an entry in a session data structure, said entry corresponding to said explicit source lookup key if the control message establishes explicit source distribution trees; and updating an outgoing lookup table entry corresponding to said outgoing port index with information regarding designated devices in said multicast group indicated by the control message if the control message establishes explicit source distribution trees. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An apparatus for handling a control message in a Virtual Local Area Network (VLAN), the apparatus comprising:
-
receiving a control message at a layer 2 switch of said VLAN, said control message sent by a layer 3 router; means for determining if the control message establishes shared source distribution trees or explicit source distribution trees; means for updating a source-group data structure using information from the control message, the source-group data structure containing data regarding a multicast group if the control message establishes shared source distribution trees; means for adding an outgoing port index to said source-group data structure, said outgoing port index identifying a port that received the control message, if the control message establishes shared source distribution trees; means for deriving an explicit source lookup key from the control message if the control message establishes explicit source distribution trees; means for retrieving an outgoing port index associated with an entry in a session data structure, said entry corresponding to said explicit source lookup key, if the control message establishes explicit source distribution trees; and means for updating an outgoing lookup table entry corresponding to said outgoing port index with information regarding designated devices in said multicast group indicated by the control message if the control message establishes explicit source distribution trees. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A program storage device readable by a machine, embodying a program of instructions executable by the machine to perform a method for handling a control message in a Virtual Local Area Network (VLAN), the method comprising:
-
receiving a control message at a layer 2 switch of said VLAN, said control message sent by a layer 3 router; determining if the control message establishes shared source distribution trees or explicit source distribution trees; updating a source-group data structure using information from the control message, the source-group data structure containing data regarding a multicast group if the control message establishes shared source distribution trees; adding an outgoing port index to said source-group table, said outgoing port index identifying a port that received the control message, if the control message establishes shared source distribution trees; deriving an explicit source lookup key from the control message if the control message establishes explicit source distribution trees; retrieving an outgoing port index associated with an entry in a session data structure, said entry corresponding to said explicit source lookup key, if the control message establishes explicit source distribution trees; and updating an outgoing lookup table entry corresponding to said outgoing port index with information regarding designated devices in said multicast group indicated by the control message if the control message establishes explicit source distribution trees.
-
-
20. A method for handling a control message in a Virtual Local Area Network (VLAN), the method comprising:
-
receiving a control message at a layer 2 switch of said VLAN, said control message sent by a layer 3 router; deriving a shared source lookup key from multicast group information in the control message; searching a forwarding data structure for a forwarding entry having a shared source lookup key matching the shared source lookup key; if a forwarding entry having a shared source lookup key matching the destination shared source lookup key is found, revising an associated outgoing port in the forwarding entry to match an incoming port for the control message; extracting multicast group information from the control message; updating a source-group data structure with the multicast group information; and adding an outgoing port index to the source-group table, the outgoing port index identifying a port that received the control message. - View Dependent Claims (21, 22, 23, 24, 25)
-
Specification