400G Ethernet flow test system based on FPGA

Through the FPGA-based 400G Ethernet traffic testing system, the multi-module combination and efficient data transmission interface are used to solve the problem that the existing technology cannot realize small byte packet long-transmitting and precise traffic scheduling, and the high-performance processing and data transmission efficiency of 400G Ethernet are achieved.

CN119629093AActive Publication Date: 2025-03-14江苏信而泰智能装备有限公司

Patent Information

Application Number
CN202411737793.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-10
Publication Date
2025-03-14
Estimated Expiration
2043-07-10

AI Technical Summary

Technical Problem

The existing Ethernet traffic test device cannot realize small byte packet long-transmitting flow on high-speed ports, resulting in the inability to achieve accurate traffic scheduling, and the reference clock accuracy of the CPU system is not high, which cannot meet the high-performance needs of 400G Ethernet.

Method used

Using the FPGA-based 400G Ethernet traffic test system, through the combination of CPU module, sending FPGA module, statistical FPGA module and optical module, the PCIe and 400G communication interfaces are used to realize efficient data transmission, and independently process transmission and statistics traffic.

Benefits of technology

It realizes high-performance processing and precise scheduling of 400G Ethernet traffic, improves information processing capabilities and data transmission efficiency, and meets the high-performance needs of 400G Ethernet.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119629093A_ABST
    Figure CN119629093A_ABST
Patent Text Reader

Abstract

The invention relates to an FPGA-based 400G Ethernet flow test system, which relates to the technical field of data communication and comprises a CPU module, a sending FPGA module, a statistics FPGA module and an optical module. The sending FPGA and the statistical FPGA are connected with the CPU module through PCIe interfaces, and the statistical FPGA module and the optical module are connected with the sending FPGA module through 400G communication interfaces; the CPU module is used for sending a communication protocol message and a configuration message; the statistical FPGA receives the configuration message, generates configuration information according to the configuration message, and sends the configuration information to the sending FPGA module; and the sending FPGA receives and analyzes the communication protocol message, generates stream information according to the protocol message and the configuration information, and sends the stream information to the optical module, so that the optical module generates an optical signal according to the stream information, and sends the optical signal to the tested equipment. According to the invention, based on a CPU + FPGA architecture, double FPGA modules are established, independent processing of sending and statistics flow is realized, and the sending FPGA module and the statistics FPGA module are connected and communicated through a 400G communication interface, so that efficient transmission of information is realized.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the application filed on July 10, 2023, with application number 202310838902.1 and invention name “A 400G Ethernet traffic testing device based on FPGA”. Technical Field

[0002] The present application relates to the field of data communication technology, and in particular to a 400G Ethernet traffic testing system based on FPGA. Background Art

[0003] Ethernet traffic test devices are generally implemented through the CPU+DPDK+network card method. The CPU system is generally oriented to general computing. The current mainstream memory system is the DDR4 memory system, which has the disadvantages of large bandwidth but large access delay. Due to the different read and write access modes, there may be delay jitter during operation, and the reference clock accuracy is not high. It is impossible to implement long-term flow of small byte packets on high-speed ports, and it is impossible to achieve accurate traffic scheduling. Summary of the invention

[0004] In order to solve the above technical problems, the present application provides a 400G Ethernet traffic testing system based on FPGA.

[0005] The FPGA-based 400G Ethernet traffic test system provided in this application adopts the following technical solution:

[0006] A 400G Ethernet traffic test system based on FPGA, including a CPU module, a sending FPGA module, a statistical FPGA module and an optical module;

[0007] The sending FPGA and the statistics FPGA are both connected to the CPU module through a PCIe interface, and the statistics FPGA module and the optical module are both connected to the sending FPGA module through a 400G communication interface;

[0008] The CPU module is used to send communication protocol messages and configuration messages;

[0009] The statistical FPGA receives the configuration message, generates configuration information according to the configuration message, and sends the configuration information to the sending FPGA module;

[0010] The sending FPGA receives and parses the communication protocol message, generates flow information according to the protocol message and configuration information, and sends the flow information to the optical module, so that the optical module generates an optical signal according to the flow information and sends it to the device under test.

[0011] Optionally, the configuration information includes at least the sending traffic rate, the sending traffic frame number, the sending traffic frame length, the sending traffic byte number and the traffic sending mode.

[0012] Optionally, the sending FPGA and the statistical FPGA are also connected via a 100G communication interface;

[0013] The sending FPGA module is also used to receive the flow protocol message sent by the optical module, and transmit the flow protocol message to the statistical FPGA module through the 400G communication interface. The statistical FPGA module parses the flow protocol message to extract flow information, and sends the flow information to the sending FPGA module through the 100G communication interface. The sending FPGA module sends the flow information to the CPU module.

[0014] Optionally, the sending FPGA is also used to parse the traffic protocol message to generate port statistical information, and send the port statistical information to the statistical FPGA module through the 100G communication interface, and the statistical FPGA module sends the port statistical information to the CPU module.

[0015] Optionally, the port statistical information includes at least one or more of the received traffic rate, the received traffic frame number, the received traffic frame length, the received traffic byte number, the sent packet type statistics, the received protocol frame statistics, the received error frame statistics, and the received special frame statistics.

[0016] Optionally, it also includes a control FPGA module, and the control FPGA module is connected to the sending FPGA module, the statistical FPGA module and the optical module through an IIC communication interface.

[0017] Optionally, the sending FPGA module is externally mounted with multiple groups of first DDR4 particles, and the sending FPGA module is further used to parse the description information in the traffic protocol message and store the description information in the first DDR4 particles.

[0018] Optionally, the statistical FPGA is externally connected to a group of second DDR4 particles, and the statistical FPGA is further used to capture data statistical information in the port statistical information and store the data statistical information in the second DDR4 particles.

[0019] Optionally, an operation and maintenance management module is also included, and the operation and maintenance management module is used to control the resetting of the CPU module, control the power on and power off of the test device, and monitor the temperature and voltage of a specified position.

[0020] Optionally, the communication interface of the optical module is an optical transceiver in the form of a QSFP-DD interface.

[0021] The present application discloses an FPGA-based 400G Ethernet traffic testing system, in which a statistical FPGA receives the configuration message, generates configuration information according to the configuration message, and sends the configuration information to the FPGA module; a sending FPGA receives and parses a communication protocol message, generates flow information according to the protocol message and the configuration information, and sends the flow information to the optical module, so that the optical module generates an optical signal according to the flow information and sends it to the device under test, thereby realizing separate processing of sending and statistical traffic. Based on the CPU+FPGA architecture, a dual FPGA module is built, and the sending FPGA module and the statistical FPGA module are connected to communicate through a 400G communication interface to realize efficient transmission of information. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 It is a structural schematic diagram of a 400G Ethernet traffic testing system based on FPGA in an embodiment of the present application.

[0023] Explanation of the accompanying drawings: 1. CPU module; 2. Sending FPGA module; 3. Statistics FPGA module; 4. Optical module; 5. Control FPGA module; 6. First DDR particle; 7. Second DDR particle; 8. QDR particle; 9. Operation and maintenance management module. DETAILED DESCRIPTION

[0024] Various exemplary embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings. It should be noted that unless otherwise specifically stated, the relative arrangement of the parts and steps, the numerical expressions and the numerical values ​​set forth in these embodiments do not limit the scope of the present disclosure. In addition, the techniques, methods and devices known to those of ordinary skill in the relevant art may not be discussed in detail, but in appropriate cases, the techniques, methods and devices should be considered as part of the authorization specification. In all examples shown and discussed here, any specific value should be interpreted as being merely exemplary, rather than as a limitation. Therefore, other examples of the exemplary embodiments may have different values.

[0025] This application discloses a 400G Ethernet traffic test system based on FPGA. Figure 1 The device includes a CPU module 1, a sending FPGA module 2, a statistics FPGA module 3 and an optical module 4, wherein the sending FPGA and the statistics FPGA are connected to the CPU module 1 through a PCIe interface, and the statistics FPGA module 3 and the optical module 4 are connected to the sending FPGA module 2 through a 400G communication interface. The optical module 4 can be connected to an external device under test, convert the electrical signal sent by the sending FPGA module 2 into an optical signal and send it to the device under test, and can also convert the optical signal sent by the device under test into an electrical signal and send it to the sending FPGA module 2, so as to realize the data interaction between the test device of the present application and the external device under test.

[0026] In the embodiment of the present application, a control FPGA module 5 is also included. The control FPGA module 5 communicates with the sending FPGA module 2, the statistical FPGA module 3 and the optical module 4 through the IIC communication interface. The control FPGA module 5 can control the loading of the sending FPGA module 2 and the statistical FPGA module 3. Specifically, it can be loaded in the SelectMAP manner. The control FPGA module 5 is connected to the CPU module 1 through the PCIe interface. The control FPGA module 5 can monitor the chip status of the sending FPGA module 2 and the statistical FPGA module 3, and when the chip status of the sending FPGA module 2 or the statistical FPGA module 3 is abnormal, an alarm message is generated and sent to the CPU module 1, so that the CPU module 1 can act accordingly according to the alarm message. The above chip status can be reflected from the chip temperature and general processing information.

[0027] The control FPGA module 5 can monitor the status, control and read information of the optical module 4. Specifically, the control FPGA module 5 can monitor the optical power, operating temperature, operating voltage, interface status, in-position, interruption and other information of the optical module 4; the control FPGA module 5 can control the reset, working mode, control interface and the like of the optical module 4; all registers of the optical module 4 can be read at any time, and the control FPGA module 5 can read the registers to obtain the required information such as the status of the optical module 4 and the internal configuration information.

[0028] Different from traditional Ethernet traffic testing devices, this application is based on a CPU+FPGA architecture, is equipped with multiple FPGA modules, and performs efficient data transmission through a 400G interface between the sending FPGA module 2 and the statistical FPGA module 3, thereby achieving high-performance business processing and fast and accurate processing of 400G traffic transmission and reception and statistical parameters.

[0029] In the embodiment of the present application, the process of sending 400G traffic is as follows:

[0030] The CPU module 1 sends a configuration message to the statistics FPGA module 3 through the PCIe interface, and sends a communication protocol message to the sending FPGA module 2. After receiving the configuration message, the statistics FPGA module 3 can parse the configuration message and generate configuration information, and then send the configuration information to the sending FPGA module 2. The sending FPGA module 2 receives the protocol message and the configuration information, generates flow information according to the protocol message and the configuration information, and sends the flow information to the optical module 4, so that the optical module 4 generates an optical signal according to the flow information and sends it to the device under test.

[0031] In a specific example, the communication protocol message is an Ethernet general protocol message, and the communication protocol message may include standard test items such as RFC2544, RFC2889, and RFC3918, 4-7 layer application protocols: data protocols (HTTP, FTP, Unicast / Multicast RTSP, RAWTCP, VXLAN, OpenFlow, OVSDB), voice protocols (SIP, SIP overUDP), video protocols (RTSP / RTP, Multicast streaming, IGMPv2, IGMPv3, MLDv2), link or access protocols: ANCP, PPPoE, DHCP, L2TP, IGMPv1 / v2 / v3, MLDv1 / v2, DHCPv6 and PPPoEv6, 802.1x, LACP, routing or multicast protocols: BGP, IS-IS, OSPF, RIP, MPLS, IGMPv1 / v2 / v3, MLDv1 / v2, IGMP / MLD Querier, PIM-SM, encapsulation protocol: 802.1Q and 802.1Q-in-Q, transmission protocol: TCP, UDP, supported IP versions: IPv4 / IPv6, etc.

[0032] The configuration information includes basic information of the flow, which may include at least the sending flow rate, the number of sending flow frames, the sending flow frame length, the number of sending flow bytes, and the flow sending mode. The flow sending mode may include continuous sending, burst, scheduled sending, and step sending of the flow.

[0033] The sending FPGA module 2 can form flow information based on the protocol information obtained by parsing the protocol message and the received configuration information, and send it to the optical module 4 through the 400G communication interface.

[0034] In the embodiment of the present application, the 400G traffic receiving process is as follows:

[0035] The sending FPGA module 2 receives the traffic protocol message sent by the optical module 4, and transmits the traffic protocol message to the statistical FPGA module 3 through the 400G communication interface. The statistical FPGA module 3 parses the traffic protocol message to extract the traffic information, and sends the traffic information to the sending FPGA module 2 through the 100G communication interface. The sending FPGA module 2 then sends the traffic information to the CPU module 1.

[0036] The sending module can also parse the received traffic protocol messages, generate port statistical information, and send the port statistical information to the statistical FPGA module 3 through the 100G communication interface. The statistical FPGA module 3 then sends the port statistical information to the CPU module 1.

[0037] The port statistics include at least one or more of the received traffic rate, received traffic frame number, received traffic frame length, received traffic byte number, sent packet type statistics, received protocol frame statistics, received error frame statistics, and received special frame statistics. The sent packet type may include the total number of IPv4 frames, the total number of IPv6 frames, the total number of IPv4 flow frames, and the total number of IPv6 flow frames.

[0038] In an embodiment of the present application, the sending FPGA module 2 is externally mounted with multiple groups of first DDR4 particles. When parsing the flow protocol message, the sending FPGA module 2 can obtain the description information in the flow protocol message and store the description information in the first DDR4 particle.

[0039] Specifically, the sending FPGA module 2 may be equipped with 3 groups of DDR4*5 particles, the capacity of a single DDR4 particle is 8Gbit, and the access rate is 2666MT / S.

[0040] The statistical FPGA module 3 is externally mounted with a group of second DDR4 particles. After receiving the port statistical information, the statistical FPGA can capture the data statistical information in the port statistical information and store the data statistical information in the second DDR4 particles.

[0041] The statistical FPGA module 3 also has an external QDR4 particle. The statistical FPGA can perform statistics on flow information, including but not limited to the flow information's sending flow rate, sending flow frame number, sending flow frame length, sending flow byte number, and flow sending mode.

[0042] In the embodiment of the present application, an operation and maintenance management module 9 is also included. The operation and maintenance management module 9 can control the reset, power-on and power-off of the test device of the present application, and is also used to perform temperature monitoring and voltage monitoring on the present application.

[0043] In a specific example, the present application includes a power supply module and a temperature sensor disposed at a specified position. The operation and maintenance management module 9 is connected to the power supply module, the temperature sensor and the CPU module 1, and can output a control signal to the CPU module 1 upon receiving a reset signal, so that the control signal acts on the reset pin of the CPU module 1 to achieve the reset of the CPU module 1. The operation and maintenance management module 9 can also output a power-on drive signal to the power supply module after receiving a power-on signal, so that the power supply module can power the test device. Correspondingly, after receiving a power-off signal, the operation and maintenance management module 9 outputs a power-off drive signal to the power supply module to achieve power-off.

[0044] The power supply module is also connected to a voltage detection module, which can output the voltage signals output by the power supply module to each module to the operation and maintenance management module 9. The operation and maintenance management module 9 can monitor each voltage and send an alarm signal when the voltage signal exceeds the voltage threshold to realize voltage monitoring.

[0045] The temperature sensor can be set as required. In the embodiment of the present application, temperature sensors may be provided on the CPU module 1, the sending FPGA module 2, the statistical FPGA module 3, the control FPGA module 5 and the optical module 4. The temperature sensor outputs the detected temperature signal to the operation and maintenance management module 9. The operation and maintenance management module 9 sends an alarm signal when any temperature signal exceeds the temperature threshold to realize temperature monitoring.

[0046] It should be noted that the PCIe interface bandwidth between the CPU module 1 and the control module is greater than or equal to 5 Gbps in both directions, and the PCIe interface bandwidth between the CPU module 1 and the statistical FPGA is greater than or equal to 128 Gbps in both directions, so as to meet the requirements of sending communication protocol messages and configuration messages, and sending traffic information and port statistical information.

[0047] A test device provided in the present application integrates 400Gbps, 200Gbps, 100Gbps and 50Gbps Ethernet test ports, and the test ports can be connected to different test equipment to improve the adaptability of the present application.

[0048] The present application discloses an FPGA-based 400G Ethernet traffic testing system, which is based on a CPU+FPGA infrastructure and is provided with a CPU module 1, a sending FPGA module 2, a statistical FPGA module 3, a control FPGA module 5 and an optical module 4. In the process of sending and receiving 400G traffic, separate processing of the receiving and sending traffic and the statistical traffic is achieved, and the sending FPGA module 2 and the statistical FPGA module 3 transmit unused data respectively through a 400G communication interface and a 100G communication interface, thereby achieving efficient data transmission, and improving the information processing capability of the present application as a whole.

[0049] The above are all preferred embodiments of the present application, and the protection scope of the present application is not limited thereto. Therefore, any equivalent changes made according to the structure, shape, and principle of the present application should be included in the protection scope of the present application.

Claims

1. A 400G Ethernet traffic test system based on FPGA, characterized in that: It includes a CPU module (1), a sending FPGA module (2), a statistical FPGA module (3) and an optical module (4); The sending FPGA and the statistics FPGA are both connected to the CPU module (1) via a PCIe interface, and the statistics FPGA module (3) and the optical module (4) are both connected to the sending FPGA module (2) via a 400G communication interface; The CPU module (1) is used to send communication protocol messages and configuration messages; The statistical FPGA receives the configuration message, generates configuration information according to the configuration message, and sends the configuration information to the sending FPGA module (2); The sending FPGA receives and parses the communication protocol message, generates flow information according to the protocol message and configuration information, and sends the flow information to the optical module (4), so that the optical module (4) generates an optical signal according to the flow information and sends it to the device under test; The sending FPGA and the statistical FPGA are also connected via a 100G communication interface; The sending FPGA module (2) is also used to receive the flow protocol message sent by the optical module (4), and transparently transmit the flow protocol message to the statistical FPGA module (3) through the 400G communication interface; the statistical FPGA module (3) parses the flow protocol message to extract flow information, and sends the flow information to the sending FPGA module (2) through the 100G communication interface; the sending FPGA module (2) sends the flow information to the CPU module (1); The sending FPGA is also used to parse the traffic protocol message to generate port statistical information, and send the port statistical information to the statistical FPGA module (3) through the 100G communication interface, and the statistical FPGA module (3) sends the port statistical information to the CPU module (1); It also includes an operation and maintenance management module (9), which is used to control the resetting of the CPU module (1), control the power-on and power-off of the test device, and monitor the temperature and voltage of a specified position; The communication interface of the optical module (4) is an optical transceiver in the form of a QSFP-DD interface.

2. The FPGA-based 400G Ethernet traffic test system according to claim 1, characterized in that: The configuration information includes at least the sending traffic rate, the number of sending traffic frames, the sending traffic frame length, the number of sending traffic bytes and the traffic sending mode.

3. The FPGA-based 400G Ethernet traffic test system according to claim 1, characterized in that: The port statistical information includes at least one or more of the received traffic rate, the number of received traffic frames, the received traffic frame length, the number of received traffic bytes, the sent packet type statistics, the received protocol frame statistics, the received error frame statistics, and the received special frame statistics.

4. The FPGA-based 400G Ethernet traffic test system according to claim 1, characterized in that: It also comprises a control FPGA module (5), wherein the control FPGA module (5) is connected to the sending FPGA module (2), the statistical FPGA module (3) and the optical module (4) via an IIC communication interface.

5. The FPGA-based 400G Ethernet traffic test system according to claim 1, characterized in that: The sending FPGA module (2) is externally mounted with a plurality of first DDR4 particles. The sending FPGA module (2) is also used to parse the description information in the flow protocol message and store the description information in the first DDR4 particles.

6. The FPGA-based 400G Ethernet traffic test system according to claim 1, characterized in that: The statistical FPGA is externally mounted with a group of second DDR4 particles, and the statistical FPGA is also used to capture the data statistical information in the port statistical information and store the data statistical information in the second DDR4 particles.

Citation Information

Patent Citations

  • A broadband network access device

    CN101123581A

  • Packing system and method for 10-gigabit Ethernet test equipment

    CN104660462A

  • FPGA-based Ethernet service test apparatus and method

    CN108023787A

  • High-speed optical transceiver for infiniband and ethernet

    US20090022497A1

  • Test architecture with an FPGA based test board to simulate a DUT or end-point

    US20180196103A1

Cited By

  • Method for testing communication bandwidth of 10-gigabit network between FPGA (Field Programmable Gate Array) and CPU (Central Processing Unit) applied to radar system

    CN120956642A