Processing Data in a Distributed Routing System

20230300071 · 2023-09-21

    Inventors

    Cpc classification

    International classification

    Abstract

    A distributed routing system is provided for use in a communication network. The distributed routing system comprises a plurality of forwarding modules and a plurality of fabric modules. At least one counter located at at least one respective fabric module is configured to receive data relating to the number of packets being forwarded via physical and/or logical interfaces associated with at least two of the plurality of forwarding modules.

    Claims

    1. A distributed routing system for use in a communication network comprising a plurality of forwarding modules and a plurality of fabric modules, and wherein at least one counter located at at least one respective fabric module is configured to receive data relating to number of packets being forwarded via physical and/or logical interfaces associated with at least two of the plurality of forwarding modules.

    2. The distributed routing system of claim 1, wherein the at least one counter located at at least one respective fabric module is configured to receive data relating to the number of packets being forwarded via all physical and/or logical interfaces associated with said at least two of the plurality of forwarding modules.

    3. The distributed routing system of claim 1, wherein each of the plurality of forwarding modules and the plurality of fabric modules is a separate physical device.

    4. The distributed routing system of claim 1, wherein a CPU associated with at least one counter located at a respective fabric module is configured to remotely retrieve the data relating to number of packets being forwarded via physical and/or logical interfaces associated with said at least two forwarding modules.

    5. The distributed routing system of claim 1, wherein the data relating to number of packets being forwarded via physical and/or logical interfaces associated with said at least two forwarding modules, is exported to a counter engine of a fabric switches associated with a respective fabric module, as a data plane packet.

    6. The distributed routing system of claim 1, wherein said at least one fabric module is further configured to execute a counter collection application for retrieving counter values from a counter engine located at said at least one fabric module.

    7. The distributed routing system of claim 6, wherein said data relating to the number of packets being forwarded via physical and/or logical interfaces associated with said at least two forwarding modules is processed at said at least one fabric module separately from processing the counter values retrieved from the counter engine located at said at least one fabric module.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0034] The accompanying drawing, which is incorporated herein and constitute a part of this specification, illustrates an embodiment of the disclosure and, together with the description, serve to explain the principles of the embodiments disclosed herein.

    [0035] FIG. 1 illustrates a schematic view of a part of a distributed routing system construed in accordance with an embodiment of the present invention.

    DESCRIPTION OF EXEMPLARY EMBODIMENTS

    [0036] Some of the specific details and values in the following detailed description refer to certain examples of the disclosure. However, this description is provided only by way of example and is not intended to limit the scope of the invention in any way. As will be appreciated by those skilled in the art, the claimed distributed routing system may be implemented by using other devices that are known in the art per se. The scope of the invention can be summarized by referring to the appended claims.

    [0037] As discussed above, the typical prior art solution for implementing traffic telemetry is, to configure the packet processors associated with the forwarding devices (forwarders) so as to maintain a counter for each physical and logical interface. In order to comply with this task, the forwarding engine applications must collect, on a (short) periodical basis, the current value of the counters from the packet processors. However, such a packet processor may support thousands of logical interfaces (LIFs) and may maintain hundreds of counters for each LIF. With that many interfaces and counters, the collection process becomes a very cumbersome task and extremely CPU intensive. In view of the fact that the forwarding engine application includes several CPU intensive functions, where supporting the counter collection function is only one of them, the inventors found that the CPU performance of the forwarding device could be improved by reducing its CPU processing load, thereby enabling improved performance monitoring statistics collection (PM collection) from nodes located within the distributed routing system. To do that, the solution provided by the present invention proposes to offload the counter collection task from the CPUs of the forwarding devices to a software logic that runs on a fabric device (a fabric module). When a distributed routing system includes multiple fabric devices, each fabric device may be configured to collect the counters’ values of different groups of forwarding devices.

    [0038] FIG. 1 illustrates a schematic view of a part of a distributed routing system 100 which comprises a plurality of forwarding devices (110.sub.1, 110.sub.2...110.sub.n) (forwarding modules) and a plurality of fabric devices (120.sub.1, 120.sub.2 ...120.sub.k) (fabric modules) . Packet processors (130.sub.1, 130.sub.2...130.sub.n) that reside on respective forwarding devices maintain counters (140.sub.1, 140.sub.2...140.sub.n) as part of respective on-chip blocks, which are configured to count the number of packets being forwarded via a physical or a logical interface with which that counter is associated. These counters are referred to herein as counter engines. The essentially same on-chip blocks mutatis mutandis may be located as part of the fabric switches (150.sub.1, 150.sub.2...150.sub.k) residing on respective fabric devices (120.sub.1, 120.sub.2...120.sub.k) or the data received from the forwarding devices (110.sub.1, 110.sub.2...110.sub.n) may be conveyed to and collected by a processor configured to collect the data received from these forwarding devices. The local CPUs (160.sub.1, 160.sub.2...160.sub.k) that reside on the fabric devices (120.sub.1, 120.sub.2...120.sub.k) run counter collection logics that are configured to remotely retrieve current values of the counter engines (140.sub.1, 140.sub.2...140.sub.n) located on forwarding devices packet processors (130.sub.1, 130.sub.2...130.sub.n) . Remote access to retrieve data from the packet processors’ counter engines (140.sub.1, 140.sub.2...140.sub.n) can be performed by using any one of various methods that are known in the art per se, such as for example a remote direct memory access (RDMA) or by exporting counter values of the packet processor to the counter engines of the fabric switches (150.sub.1, 150.sub.2...150.sub.k) as a data plane packet. In addition, the local CPUs (160.sub.1, 160.sub.2...160.sub.k) that reside on the fabric devices may run a counter collection logic that is configured to retrieve (read) the counters’ values from the counter engines (170.sub.1, 170.sub.2...170.sub.k) located at the respective local fabric switches (150.sub.1, 150.sub.2...150.sub.k).

    [0039] After receiving the information at the fabric devices, it is processed and used for whatever tasks it is needed, such as for performance monitoring statistics collection from nodes comprised in the distributed routing system.

    [0040] The present invention has been described using detailed descriptions of embodiments thereof that are provided by way of example and are not intended to limit the scope of the invention in any way. The described embodiments comprise different features, not all of which are required in all embodiments of the invention. Some embodiments of the present invention utilize only some of the features or possible combinations of the features. Variations of embodiments of the present invention that are described and embodiments of the present invention comprising different combinations of features noted in the described embodiments will occur to persons of the art. The scope of the invention is limited only by the following claims.