Claims
- 1. A software application in a multi-processor data router in which a forwarding information base for the router is maintained, comprising:
a server module; and one or more client modules, each client module associated with one or more communication interfaces of the data router; characterized in that the server module sends to each client module only that portion of the forwarding information base specific to the communication interfaces associated with the client module.
- 2. The software application of claim 1 having one server module and multiple client modules.
- 3. The software application of claim 1 wherein the operating protocol followed is protocol independent multicast (PIM).
- 4. The software application of claim 1 wherein an assigned number of physical port interfaces on a line processor share a single block of forwarding information.
- 5. The software application of claim 1 wherein the portions of multicast forwarding information are periodically updated at their client modules by the server module.
- 6. The software application of claim 1 wherein the router is connected to and operates on the Internet network.
- 7. The software application of claim 1 wherein more than one portion of multicast forwarding information blocks distributed to a single client module are stored in a single forwarding table locally at the line processor.
- 8. The software application of claim 7 wherein individual ones of the physical interfaces access their assigned forwarding instructions from the local table according to need.
- 9. The software application of claim 1 further including a mechanism for asserting a drop state for unexpected multicast data packets arriving at any physical interface of an enabled line processor.
- 10. The software application of claim 1 further including a mechanism for creating forwarding state for unexpected multicast packets arriving at any of the physical interfaces of an enabled line processor.
- 11. The software application of claim 1 operating in protocol-independent multicasting sparse mode (PIM-SM), wherein a processor of the data router sends a request to a neighboring router to join a group, retrieving group and source information, and the server module then prepares and sends to an appropriate client module that portion of the forwarding information base associated with packets expected to be received at the associated communication interfaces as a result of joining the group.
- 12. The software application of claim 1 operating in protocol-independent multicasting dense mode (PIM-DM), wherein, each time an unexpected multicast packet is received at a communication interface associated with a client module, the client module communicates information about the packet to the server module, which identifies a portion of the forwarding information base pertinent to the packet, and then forwards that portion of the forwarding information base to the client module.
- 13. A method for processing multicast data packets in a multiple-processor data router comprising steps of:
(a) sending a request to an upstream router to join a multicast group, the request including an ingress interface for receiving the requested multicast data packets; (b) isolating and distributing a portion of a multicast forwarding information base to a client software module associated with the ingress interface expecting to receive the multicast data packets; (c) receiving the requested multicast data packets at the ingress interface; and (d) using the forwarded portion of the information base to process the received multicast data packets.
- 14. The method of claim 13 wherein in step (a) the metrics include one or more of network layer address information, circuit ID metrics, and physical port metrics.
- 15. The method of claim 13 wherein in step (b) the multicast forwarding information follows protocol independent multicast (PIM).
- 16. The method of claim 15 wherein in step (b) distribution is from a PIM server to one or more PIM clients.
- 17. A method for processing multicast data packets in a multiple-processor data router comprising steps of:
(a) receiving a first multicast data packet of a data flow for forwarding at a line interface of the router; (b) initiating and sending a request to a control processor of the router, the request containing source and group information for the received data packet and requesting forwarding information; (c) receiving the request at the control processor and consulting with a main routing table to build a forwarding information applicable to the data packet; (d) distributing the appropriate forwarding information to the requesting line interface; and (e) applying, at the line interface, the distributed information to forward the multicast data packet and subsequent data packets of the same flow.
- 18. The method of claim 17 wherein in step (b) the request is sent by a PIM client application to a PIM server application.
- 19. The method of claim 17 wherein in step (d) the distributed forwarding information is stored in a local table at the line processor.
- 20. The method of claim 19 wherein in step (d) the local table is updated periodically with new forwarding information.
- 21. A multicast-enabled data router, comprising:
a plurality of processors, individual ones operating as clients and associated with specific ones of multiple communication interfaces, and one functioning as a control processor having access to a forwarding information base; and a software application comprising a server module executing on the control processor, and one or more client modules executing on individual ones of the processors associated with specific communication interfaces; characterized in that the server module sends to each client module only that portion of the forwarding information base specific to the communication interfaces associated with the client modules.
- 22. The data router of claim 21 wherein the operating protocol followed is protocol independent multicast (PIM).
- 23. The data router of claim 21 wherein the portions of multicast forwarding information are periodically updated at their client modules by the server module.
- 24. The data router of claim 21 connected to and operating on the Internet network.
- 25. The data router of claim 21 further including a mechanism for asserting a drop state for unexpected multicast data packets arriving at any interface.
- 26. The data router of claim 21 further including a mechanism for creating a forwarding state for unexpected multicast packets arriving at any physical interfaces associated with a client module.
- 27. The data router of claim 21 operating in protocol-independent multicasting sparse mode (PIM-SM), wherein a processor of the data router sends a request to a neighboring router to join a group, retrieving group and source information, and the server module then prepares and sends to an appropriate client module that portion of the forwarding information base associated with packets expected to be received at the associated communication interfaces as a result of joining the group.
- 28. The data router of claim 21 operating in protocol-independent multicasting dense mode (PIM-DM), wherein, each time an unexpected multicast packet is received at a communication interface associated with a client module, the client module communicates information about the packet to the server module, which identifies a portion of the forwarding information base pertinent to the packet, and then forwards that portion of the forwarding information base to the client module.
- 29. A method for processing multicast packets, comprising the steps of:
(a) sending, by a server module to a client module, the server module executing on a control processor and the client module executing on a processor associated with an individual communication interface, a portion of a forwarding information base pertinent the communication interface; and (b) using, by the client module, the portion of the forwarding information base sent by the server module to process multicast packets received at the communication interface without requesting information from the original forwarding information base.
- 30. The method of claim 29 having one server module and multiple client modules.
- 31. The method of claim 29 wherein the operating protocol followed is protocol independent multicast (PIM).
- 32. The method of claim 29 wherein the portions of multicast forwarding information are periodically updated at their client modules by the server module.
- 33. The method of claim 29 wherein the method is performed in a router connected to and operating on the Internet network.
- 34. The method of claim 29 further including a mechanism for asserting a drop state for unexpected multicast data packets arriving at any enabled interface.
- 35. The method of claim 29 further including a mechanism for creating forwarding state for unexpected multicast packets arriving at any of the physical interfaces of an enabled line processor.
- 36. The method of claim 29 operating in protocol-independent multicasting sparse mode (PIM-SM), wherein a processor of the data router sends a request to a neighboring router to join a group, retrieving group and source information, and the server module then prepares and sends to an appropriate client module that portion of the forwarding information base associated with packets expected to be received at the associated communication interfaces as a result of joining the group.
- 37. The method of claim 29 operating in protocol-independent multicasting dense mode (PIM-DM), wherein, each time an unexpected multicast packet is received at a communication interface associated with a client module, the client module communicates information about the packet to the server module, which identifies a portion of the forwarding information base pertinent to the packet, and then forwards that portion of the forwarding information base to the client module.
CROSS-REFERENCE TO RELATED DOCUMENTS
[0001] The present invention is a continuation in part (CIP) to a U.S patent application Ser. No. 09/854,234 entitled “Apparatus and Methods for Efficient Multicasting of Data Packets” filed on May 10, 2001, which is a CIP to a U.S. patent application Ser. No. 09/800,678, entitled “An Improved System for Fabric Packet Control”, filed Mar. 6, 2001, which documents are incorporated herein in their entirety by reference.
Continuation in Parts (2)
|
Number |
Date |
Country |
Parent |
09854234 |
May 2001 |
US |
Child |
10104904 |
Mar 2002 |
US |
Parent |
09800678 |
Mar 2001 |
US |
Child |
09854234 |
May 2001 |
US |